/* Shared responsive layer for dashboard, vault, ledger, library and authentication. */
main,.content,.view,.panel,.account-card,.metric,.form-grid>label{min-width:0}
textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #74b9e5;outline-offset:3px}
dialog:not(#cinema){max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}.dialog-close{min-width:44px;min-height:44px;line-height:1;position:sticky;top:0;z-index:3;background:#fff;border-radius:9px}dialog form{min-width:0}.form-grid label,.secret-row{min-width:0}.secret-row pre{max-width:100%;overflow-wrap:anywhere}.table-scroll{overscroll-behavior-x:contain}body:has(dialog[open]){overflow:hidden}
@media(max-width:900px){
.sidebar{display:none}main{margin-left:0}main>header{height:auto;min-height:64px;padding:10px 20px;gap:12px;position:sticky;top:0;z-index:10;background:#ffffffef;backdrop-filter:blur(12px)}.breadcrumb{display:none}.top-navigation-mobile{display:block;font-size:16px;min-height:44px;max-width:240px;width:100%;border:1px solid #dfeaf1;border-radius:9px;background:white;padding:9px 12px;color:#315d79}.header-right{gap:10px}.header-right>span:first-child{display:none}.content{padding:24px 20px}.page-heading{align-items:flex-start}.page-heading>div{min-width:0}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-grid,.activity-grid{grid-template-columns:1fr}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric strong{font-size:clamp(22px,3.5vw,32px);white-space:normal;overflow-wrap:anywhere}.filters{display:flex;flex-wrap:wrap;gap:10px;max-width:100%}.toolbar{gap:14px;flex-wrap:wrap}.filters input,.filters select{min-height:44px;max-width:100%;font-size:16px}.tabs button,.quiet,.primary,.file-download,.card-actions select{min-height:44px}.secret-tabs{display:flex;gap:6px}.extra-fields summary{padding:8px 0;min-height:44px}.secret-label button{min-height:44px;padding:8px 12px}.panel-head{flex-wrap:wrap}#map{height:360px}section[id]{scroll-margin-top:88px}
}
@media(max-width:600px){
main>header{padding:8px 16px;padding-top:max(8px,env(safe-area-inset-top));min-height:62px}.top-navigation-mobile{max-width:calc(100vw - 94px)}.content{padding:20px 14px calc(24px + env(safe-area-inset-bottom))}.page-heading{display:block;margin:4px 0 22px}.page-heading h1{font-size:25px}.page-heading .primary{margin-top:16px;width:100%}.eyebrow{font-size:10px;letter-spacing:1.5px}.page-heading p{font-size:14px}.toolbar{display:flex;flex-direction:column;align-items:stretch;margin-bottom:18px}.toolbar>.filters,.toolbar>.tabs{width:100%}.tabs{display:flex;max-width:100%;gap:3px;padding:4px}.tabs button{flex:1;padding:9px 5px;font-size:13px;white-space:nowrap}.filters>label:not(.sr-only){width:100%;font-size:12px;color:#6c899a}.filters>select,.filters>input{flex:1 1 135px;min-width:0;padding:10px;border:1px solid #dfeaf1;border-radius:8px;background:#fff}.metrics{gap:10px}.metric{padding:16px 12px;min-height:158px}.metric strong{font-size:clamp(20px,5.7vw,29px);letter-spacing:-.6px;margin:12px 0}.metric small{font-size:11px;line-height:1.5}.metric-label{font-size:12px;gap:5px}.metric>div:not(:first-child){line-height:1.5;font-size:11px}.panel-head{padding:18px 16px 12px;gap:12px}.panel-head p{line-height:1.6}.panel-head h2{line-height:1.4}.map-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.map-actions button{font-size:13px}#open-cinema{color:#267fad;background:#eaf5fc}.chart{padding:0 6px;height:220px}.chart-footer{padding:8px 16px 16px;line-height:1.5}.chart-footer>span:last-child{display:none}#map{height:clamp(280px,48svh,420px)}.map-footer{gap:12px;padding:14px;font-size:11px}.sales,.activity-list{padding:0 16px 12px}.sale{gap:9px}.sale-amount{font-size:13px;flex-shrink:0}.sale strong,.activity-row strong{font-size:13px;overflow-wrap:anywhere}.activity-state{font-size:11px;max-width:80px;white-space:normal}.activity-row{gap:9px}.account-grid{grid-template-columns:1fr;gap:14px}.account-card{padding:20px}.account-card .card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.card-actions button,.card-actions a,.card-actions select{width:100%;text-align:center;min-width:0}.account-top{margin-bottom:12px}.account-card p,.library-note{overflow-wrap:anywhere}.subtle{line-height:1.7}.notice{padding:12px;font-size:13px;overflow-wrap:anywhere}
/* Ledger and shops become readable records; headings remain available to assistive technology. */
.table-scroll:has(.mobile-records){overflow:visible}.mobile-records{display:block;white-space:normal}.mobile-records thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.mobile-records tbody{display:block;padding:0 14px 14px}.mobile-records tr{display:block;margin-top:12px;padding:12px;border:1px solid #e4edf4;border-radius:12px;background:#fff}.mobile-records td{display:flow-root;padding:9px 0;border:0;text-align:right;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.mobile-records td::before{content:attr(data-label);float:left;font-size:11px;color:#869caa;text-align:left;margin-right:12px;max-width:45%}.mobile-records td:first-child{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:10px;padding-bottom:12px;border-bottom:1px solid #edf3f7;margin-bottom:4px}.mobile-records td:first-child::before{display:none}.mobile-records td[colspan]{display:block;text-align:center;border:0}.mobile-records td[colspan]::before{display:none}.mobile-records .status{display:inline-block;white-space:normal;text-align:right}.mobile-records td small{font-size:11px}.mobile-records td>div{min-width:0}
dialog:not(#cinema){width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:20px 18px;margin:auto;border-radius:14px}dialog h2{font-size:22px;line-height:1.3}dialog p{font-size:13px;overflow-wrap:anywhere}dialog input,dialog select,dialog textarea,.auth-card input{font-size:16px!important;min-height:46px;max-width:100%;box-sizing:border-box}.form-grid{grid-template-columns:1fr;gap:0}.extra-fields{padding:12px}.secret-label{align-items:center}.secret-label small{font-size:12px}.secret-row pre{font-size:15px}.totp-code{font-size:30px;letter-spacing:5px;overflow-wrap:anywhere}dialog .primary{width:100%;min-height:46px}.auth-body{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:20px 0}.auth-card{width:calc(100% - 28px);padding:26px 20px}.auth-card h1{font-size:24px}.auth-card button{min-height:48px}.auth-error{overflow-wrap:anywhere}
}
/* Mobile cinema: useful map height, no overlapping panels, scrollable details and reachable controls. */
@media(max-width:899px){
#cinema{padding:14px;padding-top:max(14px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom));overflow:auto;height:100dvh;overscroll-behavior:contain}#cinema-stage:fullscreen,#cinema-stage:-webkit-full-screen{padding:14px;padding-top:max(14px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}.cinema-header{height:auto;min-height:0;padding:0 0 16px;background:transparent;flex-direction:column;align-items:stretch;gap:14px;margin-bottom:16px}.cinema-header h2{font-size:23px;margin:7px 0}.cinema-header p{font-size:12px}.cinema-actions{display:grid;grid-template-columns:1fr 1fr;max-width:none;width:100%;gap:8px}.cinema-actions .quiet{min-height:44px;padding:10px 8px;font-size:12px}.studio-metrics{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 6px;gap:18px 8px;margin-bottom:16px;border-radius:13px}.studio-metrics>.studio-revenue{grid-column:1/-1;border-bottom:1px solid #e9f0f5;padding-bottom:15px}.studio-metrics>div{padding:0 10px;border:0;min-width:0}.studio-metrics strong{font-size:27px;overflow-wrap:anywhere;letter-spacing:-.6px}.studio-revenue strong{font-size:34px}.studio-metrics span{font-size:11px;white-space:normal;line-height:1.5}.studio-body{height:auto;display:block;min-height:0}.studio-world{height:54svh;min-height:320px;max-height:560px}#cinema-map{min-height:0;flex:1}.studio-map-head{top:12px;left:12px;right:12px;gap:8px}.studio-map-head>span{font-size:9px;padding:10px 8px;letter-spacing:1px}.studio-map-head .quiet{min-height:44px;padding:8px;font-size:11px}.cinema-legend{gap:10px 16px;padding:12px;font-size:10px;white-space:normal;flex-wrap:wrap}.studio-rail{display:grid;grid-template-columns:1fr;gap:14px;margin-top:16px}.studio-feed,.studio-now{padding:18px;max-height:none;overflow:visible}.studio-now{order:-1}#cinema-activity,#cinema-events{max-height:320px;overflow:auto;overscroll-behavior:contain}.studio-section-title h3{font-size:15px}.cinema-event strong,.cinema-activity strong{font-size:13px}.cinema-event p,.cinema-activity p{font-size:12px;overflow-wrap:anywhere}.cinema-footer{position:static;display:flex;flex-direction:column;gap:8px;margin:0;padding:16px 2px 0;font-size:11px;line-height:1.6;letter-spacing:0}.cinema-footer span{font-size:11px;line-height:1.6}.checkout-summary{font-size:12px}.map-popup{max-width:220px}.map-notice{left:12px;right:12px;font-size:11px}
}
@media(min-width:601px) and (max-width:899px){.cinema-actions{grid-template-columns:repeat(4,1fr)}.studio-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-metrics>.studio-revenue{grid-column:auto;border:0;padding-bottom:0}.studio-rail{grid-template-columns:1fr 1fr}.studio-now{order:0}}
@media(max-width:360px){.content{padding-inline:10px}.metric{padding-inline:10px}.metric strong{font-size:20px}.studio-revenue strong{font-size:29px}.tabs button{font-size:12px}.cinema-actions .quiet{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mobile-logout{display:none}@media(max-width:900px){.mobile-logout{display:inline-flex;align-items:center;font-size:12px;white-space:nowrap}.header-right .avatar{display:none}.top-navigation-mobile{max-width:calc(100vw - 130px)}.header-right{flex-shrink:0}}
