/* Detail dialog / bottom sheet */
.md-ov{position:fixed;inset:0;z-index:45;display:flex;align-items:center;justify-content:center;padding:max(20px,env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) max(20px,env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));background:rgba(3,6,12,.74);backdrop-filter:blur(8px);opacity:0;transition:opacity .25s}
.md-ov.on{opacity:1}
.md{position:relative;display:flex;flex-direction:column;width:min(740px,100%);max-height:min(88vh,880px);max-height:min(88dvh,880px);background:radial-gradient(640px circle at 100% 0,rgba(255,196,0,.10),transparent 60%),var(--panel);border:1px solid var(--line2);border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.6);transform:translateY(24px) scale(.98);transition:transform .32s cubic-bezier(.2,.8,.2,1);overflow:hidden}
.md-ov.on .md{transform:none}
.md-sc{overflow-y:auto;overscroll-behavior:contain;padding:32px 32px 28px;min-height:0}
.md-x{position:absolute;top:14px;right:14px;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid var(--line2);background:var(--bg2);color:var(--ink);font-size:24px;line-height:1;cursor:pointer;transition:border-color .2s,rotate .3s}
.md-x:hover{border-color:var(--gold);rotate:90deg}
.md-grab{display:none}
.md-head{display:flex;gap:18px;align-items:center;margin:0 48px 20px 0}
.md-ic{flex:none;width:66px;height:66px;border-radius:16px;display:grid;place-items:center;background:rgba(255,196,0,.08);border:1px solid rgba(255,196,0,.32)}
.md-ic svg{width:40px;height:40px}
.md-ic svg *{fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.md-ic svg .s{stroke:var(--steel);opacity:.7}
.md-ic .num{font:700 22px var(--f-mono);color:var(--gold)}
.md h3{margin:8px 0 0;font:700 clamp(22px,3vw,32px)/1.12 var(--f-display);font-stretch:75%;text-transform:uppercase;text-wrap:balance}
.md-lead{margin:0 0 22px;max-width:62ch;font-size:16.5px;line-height:1.6;color:var(--ink)}
.md-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}
.md-cols.one{grid-template-columns:1fr}
.md-box{min-width:0;border:1px solid var(--line);border-radius:14px;padding:18px;background:rgba(7,12,20,.45)}
.md h4{margin:0 0 12px;font:500 11px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.md ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.md li{display:flex;gap:10px;font-size:15px;line-height:1.45}
.md li::before{content:"";flex:none;width:8px;height:8px;margin-top:6px;background:var(--gold);clip-path:polygon(50% 0,100% 100%,0 100%)}
.md-cta{display:flex;flex-wrap:wrap;gap:10px}
.md-cta .btn{padding:13px 18px;font-size:14px}
@media (max-width:640px){
  .md-ov{align-items:flex-end;padding:0}
  .md{width:100%;max-height:92vh;max-height:92dvh;border-radius:22px 22px 0 0;border-bottom:0;transform:translateY(100%)}
  .md-grab{display:block;flex:none;width:46px;height:5px;margin:10px auto 2px;border-radius:3px;background:var(--line2)}
  .md-sc{padding:14px 18px calc(22px + env(safe-area-inset-bottom,0px))}
  .md-x{top:10px;right:10px;width:38px;height:38px}
  .md-head{gap:14px;margin-right:40px}.md-ic{width:54px;height:54px}.md-ic svg{width:32px;height:32px}
  .md-cols{grid-template-columns:1fr}
  .md-cta .btn{flex:1 1 100%;justify-content:center}
}
