html,body{height:100%;overflow:hidden}
.modal-layer[hidden],[data-panel][hidden]{display:none!important}
.modal-layer{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:72px 32px 80px;background:#0008}
.modal-frame{width:min(1080px,100%);max-height:100%;display:flex;flex-direction:column;min-height:0;border:1px solid var(--rule);border-top:2px solid var(--accent);background:var(--paper);color:var(--ink);box-shadow:8px 8px 0 #ccff0010}
.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 12px 8px 24px;flex:none;border-bottom:1px solid var(--rule);min-height:56px}
.modal-heading h2{margin:0;font:700 12px/1.3 GBLMono,'Courier New',monospace;letter-spacing:.13em}
#modal-close{display:grid;place-items:center;width:40px;height:40px;padding:0;flex:none;border:0;background:transparent;color:var(--muted);cursor:pointer;font:700 24px/1 GBLMono,'Courier New',monospace}
#modal-close:hover{color:var(--accent)}
.modal-scroll{overflow:auto;overscroll-behavior:contain;min-height:0}
.modal-page.ledger-page{padding:0;min-height:0;background:var(--paper);color:var(--ink);font-size:13px}
.modal-page .ledger-main{padding:24px;max-width:none;margin:0}
.modal-page .title-block{display:none}
.modal-page .vault-layout.no-wallet{max-width:none;width:min(100%,520px);margin:auto}
.modal-page .release-line{border-top:0;padding-top:0}
.modal-page .vault-layout{gap:32px}
.modal-page .balance strong{font-size:48px}
.modal-page .mechanism{margin-top:24px;max-width:none}
.modal-page .concept{max-width:none}
.modal-page .concept-lead{font-size:28px;margin:0 0 24px}
.modal-page .concept section{padding:20px 0}
.modal-page .concept section p{font-size:13px}
.modal-page .concept .last-goblin h2{font-size:32px}
.modal-page .ledger-totals{padding-top:0;border-top:0}
.modal-page #empty-wall{padding:32px 0}
.modal-layer[data-view=docs] .modal-frame{width:min(760px,100%)}
.modal-layer[data-view=jxxt] .modal-frame:has(.vault-layout.no-wallet){width:min(680px,100%)}
.modal-layer[data-view=goblin] .modal-frame{width:min(512px,100%)}
.goblin-panel img{display:block;width:100%;height:auto;max-height:calc(100dvh -210px);aspect-ratio:1;object-fit:contain;background:#ccff00}
.trailer-panel{padding:12px;background:#080a08}
.trailer-panel video{display:block;width:100%;height:auto;aspect-ratio:16/9;max-height:calc(78dvh - 100px);background:#080a08;object-fit:contain}
.panel-open .global-header{visibility:visible}
:root[data-theme=light] .modal-layer{background:#30281777}
:root[data-theme=light] .modal-frame{box-shadow:8px 8px 0 #ccff0018}
@media(max-width:600px){.modal-layer{padding:calc(var(--header-height) + 8px + env(safe-area-inset-top,0px)) 0 48px;align-items:flex-end}.modal-heading{padding-left:16px;min-height:52px}.modal-heading h2{font-size:11px}.modal-page .ledger-main{padding:20px 16px}.modal-page .vault-layout{gap:24px}.modal-page .concept-lead{font-size:24px}.modal-page .balance strong{font-size:40px}.modal-page .concept .last-goblin h2{font-size:28px}.modal-frame{max-height:min(78dvh,100%);border-radius:18px 18px 0 0;overflow:hidden;box-shadow:none;animation:mobile-sheet-in 300ms cubic-bezier(.22,1,.36,1)}:root[data-theme=light] .modal-frame{box-shadow:none}.modal-page .ledger-totals{gap:16px}.modal-page .ledger-totals p span{font-size:17px}}

@keyframes mobile-sheet-in{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}
@media(max-width:600px) and (prefers-reduced-motion:reduce){.modal-frame{animation:none}}
