.esm-wrap{max-width:1180px;margin:30px auto;padding:0 18px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033}
.esm-hero,.esm-detail-hero{border-radius:24px;padding:34px;background:linear-gradient(135deg,#102a43,#173f5f);color:#fff;box-shadow:0 18px 45px rgba(16,42,67,.18)}
.esm-badge{display:inline-block;background:rgba(255,255,255,.13);padding:7px 12px;border-radius:999px;font-weight:700;margin-bottom:12px}
.esm-hero h1,.esm-detail-hero h1{margin:0 0 10px;font-size:clamp(28px,4vw,44px)}
.esm-hero p,.esm-detail-hero p{margin:0;max-width:850px;line-height:1.7;opacity:.92}
.esm-filter{margin:20px 0;padding:18px;border:1px solid #e4eaf1;border-radius:18px;background:#fff;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}
.esm-field label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}.esm-field select,.esm-field input{width:100%;padding:12px;border:1px solid #d8e0ea;border-radius:10px;background:#fff}
.esm-btn{display:inline-block;border:0;background:#0d6efd;color:#fff;padding:12px 17px;border-radius:10px;font-weight:800;text-decoration:none;cursor:pointer}
.esm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.esm-card{display:flex;gap:14px;padding:19px;border:1px solid #e4eaf1;border-radius:18px;background:#fff;text-decoration:none;color:inherit;transition:.2s;box-shadow:0 8px 25px rgba(20,35,55,.05)}
.esm-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(20,35,55,.10)}
.esm-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#edf6ff;color:#0866c6;font-size:21px;font-weight:900;flex:none}
.esm-card h2{font-size:17px;margin:7px 0}.esm-card p{font-size:13px;color:#64748b;line-height:1.55;margin:0 0 9px}.esm-link{font-size:13px;font-weight:800;color:#075eaa}
.esm-chip{display:inline-block;font-size:11px;font-weight:800;background:#eef4f8;color:#31546c;padding:5px 8px;border-radius:999px}
.esm-empty{padding:30px;text-align:center;border:1px dashed #ccd6e1;border-radius:16px}
.esm-back{display:inline-block;margin-bottom:12px;text-decoration:none;font-weight:800;color:#145c8c}
.esm-source{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.16);font-size:13px}
.esm-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:18px}.esm-panel{padding:22px;border:1px solid #e4eaf1;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(20,35,55,.04)}.esm-wide{grid-column:1/-1}
.esm-panel h2{margin:0 0 12px;font-size:19px}.esm-panel h3{font-size:14px;margin-top:18px}.esm-panel p{line-height:1.7;color:#475569}
.esm-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.esm-doc{padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #e5eaf0}.esm-doc strong{display:block;font-size:10px;text-transform:uppercase;color:#64748b;margin-bottom:4px}.esm-doc span{font-weight:800}.esm-doc small{display:block;margin-top:4px;color:#64748b}.esm-doc.mandatory{border-left:4px solid #0d6efd}.esm-doc.conditional{border-left:4px solid #f59e0b}
.esm-note{margin-top:14px;padding:12px;border-radius:10px;background:#fff8e6;color:#73530b;font-size:13px}
@media(max-width:850px){.esm-filter,.esm-grid,.esm-detail-grid{grid-template-columns:1fr}.esm-wide{grid-column:auto}.esm-docs{grid-template-columns:1fr}}
