/* Keep browser chrome gestures outside the app's scrolling surface. */
html,body{overscroll-behavior:none}
.tendril{animation:none!important;will-change:auto}
.tentacle-side{height:103svh;bottom:-9svh}
.tentacle-side--right{height:110svh;bottom:-18svh}
@media(max-width:760px){
 html,body{position:fixed;inset:0;width:100%;height:100%;overflow:hidden}
 .app-shell{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}
 .site-header{flex:0 0 auto;width:100%;min-height:60px;height:auto;padding:10px 12px;gap:8px;flex-wrap:nowrap}
 .brand{font-size:17px;letter-spacing:1px;gap:8px;flex-shrink:0}
 .brand-mark{width:29px;height:29px}.brand-mark svg{width:23px;height:23px}
 .brand small,.site-header .nav-active{display:none}
 .site-header nav{margin-left:auto;gap:5px;align-self:center;order:initial;width:auto;justify-content:flex-end}
 .site-header nav .nav-cards{font-size:0;min-width:32px;min-height:38px;display:flex;align-items:center;justify-content:center;gap:3px}
 .site-header nav .tiny-count{font-size:9px}
 .session-reset{min-width:32px;min-height:38px;padding:7px}.session-reset span{display:none}
 .music-control{margin-left:0}.music-toggle{min-width:34px;min-height:38px;padding:8px}.music-toggle>span{display:none}
 .about-button{margin-left:0;flex-shrink:0;width:28px}
 main,.in-game main{flex:1;min-height:0;width:100%;max-width:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:none;scrollbar-gutter:stable;padding:10px 12px max(12px,env(safe-area-inset-bottom));scroll-behavior:auto;-webkit-overflow-scrolling:touch}
 .ambient,.tentacle-field{height:100svh;bottom:auto}
 .tentacle-side{width:290px;left:-153px;opacity:.58;bottom:-8svh;height:98svh;filter:drop-shadow(4px 5px 5px #0008)}
 .tentacle-side--right{left:auto;right:-156px;bottom:-18svh;height:103svh;opacity:.54}
 .category-bar{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:0;margin-bottom:8px;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
 .category-bar button{min-width:0;min-height:42px;padding:6px 3px;font-size:10px;gap:4px;background:#0d1c27bf;white-space:normal}
 .category-bar button svg{width:15px;height:15px;flex-shrink:0}
 .mobile-expansions{margin-bottom:6px}.mobile-expansions>button{padding:8px 10px;min-height:38px;font-size:11px}.mobile-expansions span{font-size:10px}
 .workspace{display:flex;flex-direction:column;gap:6px}.workspace>*{width:100%;min-width:0}
 .filter-panel{padding:0 10px;border:0;border-radius:6px;box-shadow:none;min-height:0}
 .filter-panel .panel-head,.filter-summary,.quiet-note{display:none}
 .mobile-filter-toggle{padding:8px 0;min-height:38px;font-size:11px}
 .filter-panel .filter-section{padding:10px 0}.filter-panel .cost-section{padding:10px 0;margin-top:0}
 .filter-panel .field-note{margin:6px 0 9px}.tag-list{gap:6px}.tag-list button{font-size:11px;padding:8px;min-height:36px}
 .reveal-panel{padding:8px 4px 10px;border:0;border-radius:0;background:transparent;box-shadow:none;min-height:0;overflow:hidden}
 .reveal-heading{justify-content:center}.reveal-heading>.eyebrow{display:none}.live-label{font-size:7px;letter-spacing:.6px}
 .card-stage{height:clamp(150px,calc(100svh - 395px),300px);margin:6px 0;flex-shrink:0}
 .actual-card{max-height:100%;max-width:min(250px,85vw);object-fit:contain}
 .card-display,.card-image-button{max-height:100%;height:100%}.card-image-button{display:flex;align-items:center;justify-content:center}
 .oracle-back{height:100%;max-height:280px;width:auto;aspect-ratio:215/309}
 .back-inner{padding:10px;gap:6px}.back-title{font-size:clamp(16px,4vw,23px)}.oracle-eye svg{height:54px;width:54px}.oracle-eye:before{width:65px;height:65px}.back-subtitle{font-size:7px}.back-ornament{font-size:13px}
 .ritual-circle{width:190px;height:190px;max-width:65vw;max-height:100%;aspect-ratio:1}.stage-symbol{display:none}
 .result-copy{min-height:0}.result-copy .eyebrow{font-size:8px}.result-copy h2{font-size:25px;line-height:1.1;margin:5px 0}.result-copy p,.draw-caption{display:none}
 .result-detail{font-size:9px;justify-content:center}.result-status{margin-top:7px;gap:5px;font-size:10px}.result-status select{font-size:11px;min-height:34px;padding:6px;max-width:100%}
 .draw-button{margin-top:9px;padding:11px 14px;min-height:44px;font-size:13px;max-width:380px}
 .zoom-hint{font-size:10px;padding:6px 9px;white-space:nowrap}
 .collection-column{display:none}
 .ledger-section{margin-top:12px;padding:16px 10px;border:0;box-shadow:none}.ledger-header h2{font-size:27px}.ledger-header .recover-all{min-height:40px}
 .ledger-search>input,.ledger-search>select,.manual-exclusion select{font-size:16px}
 .intro{min-height:0;padding:17px 12px;margin:0 0 10px;background:transparent;border:0;box-shadow:none}
 .intro .eldritch-title{font-size:clamp(24px,6.5vw,32px);line-height:1.3;margin:9px 0}.intro p{font-size:11px}
 .session-gate{margin:0 auto;padding:17px 12px;border:0;border-radius:0;box-shadow:none;background:transparent}
 .start-sigil{width:44px;height:44px;margin-bottom:12px}.start-sigil svg{width:25px}
 .session-gate h2{font-size:29px;margin:9px 0}.session-gate p{font-size:12px;line-height:1.6}
 .session-gate .start-game{margin-top:16px}.continue-game{min-height:44px;padding:11px 14px;margin-top:9px}
 footer{padding:16px 0;gap:10px}dialog{max-height:calc(100svh - 24px);overscroll-behavior:none}.zoom-scroll{overscroll-behavior:contain}
}
@media(max-width:380px){.brand-mark{display:none}.brand{font-size:16px}.site-header{gap:5px}.site-header .brand{margin-right:0}}
