#nav details{position:relative}
#nav summary{cursor:pointer;color:var(--dim);list-style:none;border-bottom:1px solid transparent;padding-bottom:1px}
#nav summary::-webkit-details-marker{display:none}
#nav details[open] summary,#nav summary:hover{color:var(--accent);border-bottom-color:var(--accent)}
.export-menu{position:absolute;top:1.65rem;left:-.65rem;min-width:10.5rem;padding:.45rem;background:#11161d;border:1px solid #303845;border-radius:9px;box-shadow:0 14px 38px rgba(0,0,0,.4)}
.export-menu button{display:block;width:100%;padding:.62rem .7rem;border:0;border-radius:6px;background:transparent;color:var(--fg);font:inherit;text-align:left;cursor:pointer;white-space:nowrap}
.export-menu button:hover,.export-menu button:focus-visible{background:#202630;color:var(--accent);outline:none}
.export-menu small{display:block;margin-top:.15rem;color:var(--dim);font-size:.64rem}

#deckExportStatus{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:rgba(5,7,9,.78);backdrop-filter:blur(5px)}
#deckExportStatus[hidden]{display:none}
.deck-export-card{width:min(28rem,calc(100vw - 2rem));padding:1.4rem 1.5rem;background:#11161d;border:1px solid #303845;border-radius:12px;box-shadow:0 20px 70px rgba(0,0,0,.5);font-family:var(--sans)}
.deck-export-card strong{display:block;margin-bottom:.65rem;color:var(--fg);font-size:1rem}
.deck-export-card p{color:var(--dim);font:.78rem/1.6 var(--mono)}
.deck-export-track{height:3px;margin-top:1rem;overflow:hidden;background:#29313c;border-radius:99px}
.deck-export-track span{display:block;width:0;height:100%;background:var(--accent);transition:width .18s ease}
.deck-export-card button{margin-top:1rem;padding:.45rem .7rem;border:1px solid #3a4452;border-radius:6px;background:transparent;color:var(--dim);cursor:pointer}
.deck-export-card button:hover{color:var(--fg);border-color:#59677a}

#printDeck{display:none}
.deck-export-frame #nav,.deck-export-frame #hud,.deck-export-frame #help,.deck-export-frame #bar{display:none!important}
.deck-export-media{height:62%;display:grid;place-items:center;border:1px solid var(--rule);border-radius:12px;background:#07090b;color:var(--dim);font:1.05rem var(--mono);letter-spacing:.08em}

@media print{
  @page{size:13.333in 7.5in;margin:0}
  body.deck-export-print{width:auto;height:auto;overflow:visible!important;background:var(--bg)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body.deck-export-print #stage,body.deck-export-print #nav,body.deck-export-print #hud,body.deck-export-print #help,body.deck-export-print #bar,body.deck-export-print #deckExportStatus,body.deck-export-print #script,body.deck-export-print #pres{display:none!important}
  body.deck-export-print #printDeck{display:block!important}
  .print-slide{position:relative;display:flex;flex-direction:column;justify-content:center;width:13.333in;height:7.5in;padding:.45in 1.2in;overflow:hidden;background:var(--bg);color:var(--fg);break-after:page;page-break-after:always}
  .print-slide:last-child{break-after:auto;page-break-after:auto}
  .print-slide .visual{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .print-slide .visual-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,13,16,.96) 0%,rgba(11,13,16,.7) 38%,rgba(11,13,16,.08) 72%)}
  .print-slide .visual-copy{position:relative;z-index:1;max-width:52%}
  .print-slide .visual-caption{position:absolute;right:.3in;bottom:.25in;z-index:1;color:rgba(232,234,237,.55);font-size:9pt;letter-spacing:.08em}
  .print-slide .dag{height:4.1in}
  .print-slide .prompt{max-height:5.7in}
  .print-slide .deck-export-media{height:4.3in}
}
