/* Jari glass material system. CSS adaptation, not Apple's native renderer. */
:root{
 --lg-surface:rgba(250,253,255,.76);--lg-solid:#f8fbfd;--lg-content:rgba(255,255,255,.88);
 --lg-edge:rgba(255,255,255,.92);--lg-stroke:rgba(81,109,123,.18);--lg-text:#162d35;--lg-muted:#536872;
 --lg-shadow:0 12px 36px rgba(37,63,79,.10),0 2px 6px rgba(37,63,79,.06),inset 0 1px 0 rgba(255,255,255,.95);
 --lg-accent:#166b75;--lg-selected:rgba(71,156,169,.15);--lg-input:rgba(255,255,255,.8);
 --ground:#edf2f6;--panel:#f8fbfd;--stage:#fbfdfe;--ink:var(--lg-text);--ink-2:#435c67;--ink-3:var(--lg-muted);--line:var(--lg-stroke);--line-soft:rgba(81,109,123,.12);
 --accent:var(--lg-accent);--glass:var(--lg-surface);--glass-line:var(--lg-edge);--glass-lip:rgba(255,255,255,.9);
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){
 --lg-surface:rgba(28,42,52,.84);--lg-solid:#1c2b35;--lg-content:rgba(27,42,52,.94);--lg-edge:rgba(212,236,250,.2);--lg-stroke:rgba(185,214,233,.22);--lg-text:#edf7fb;--lg-muted:#b5c8d3;--lg-shadow:0 12px 36px #0005,inset 0 1px 0 #ffffff1f;--lg-accent:#83d8e3;--lg-selected:#65c1d12b;--lg-input:#132530dd;
 --ground:#111d26;--panel:#1c2b35;--stage:#16252e;--ink-2:#c0d3dd;
}}
:root[data-theme="dark"]{--lg-surface:rgba(28,42,52,.84);--lg-solid:#1c2b35;--lg-content:rgba(27,42,52,.94);--lg-edge:rgba(212,236,250,.2);--lg-stroke:rgba(185,214,233,.22);--lg-text:#edf7fb;--lg-muted:#b5c8d3;--lg-shadow:0 12px 36px #0005,inset 0 1px 0 #ffffff1f;--lg-accent:#83d8e3;--lg-selected:#65c1d12b;--lg-input:#132530dd;--ground:#111d26;--panel:#1c2b35;--stage:#16252e;--ink-2:#c0d3dd}
/* Jari identity: mist, teal, ink-green and restrained gold. */
:root{--lg-surface:rgba(248,250,249,.78);--lg-solid:#f8faf9;--lg-content:rgba(255,255,255,.9);--lg-text:#14211e;--lg-muted:#566962;--lg-accent:#10736e;--lg-selected:rgba(16,115,110,.12);--lg-stroke:rgba(50,78,68,.2);--ground:#e8ecea;--panel:#f8faf9;--stage:#fafcfb;--ink-2:#465851;--line-soft:rgba(50,78,68,.12);--jari-gold:#be8d30}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--lg-surface:rgba(20,34,29,.85);--lg-solid:#15221d;--lg-content:rgba(20,32,27,.95);--lg-text:#f2f5f3;--lg-muted:#b7c8c0;--lg-accent:#87cfc3;--lg-selected:#77c9b92b;--lg-input:#101d18dd;--lg-edge:#d6eee022;--lg-stroke:#b8d2c438;--ground:#0b1210;--panel:#15221d;--stage:#101a16;--ink-2:#cad8d0;--jari-gold:#e4b659}}
:root[data-theme="dark"]{--lg-surface:rgba(20,34,29,.85);--lg-solid:#15221d;--lg-content:rgba(20,32,27,.95);--lg-text:#f2f5f3;--lg-muted:#b7c8c0;--lg-accent:#87cfc3;--lg-selected:#77c9b92b;--lg-input:#101d18dd;--lg-edge:#d6eee022;--lg-stroke:#b8d2c438;--ground:#0b1210;--panel:#15221d;--stage:#101a16;--ink-2:#cad8d0;--jari-gold:#e4b659}
body{color:var(--lg-text);background:radial-gradient(ellipse at 12% 0%,#10736e0b,transparent 48%),radial-gradient(ellipse at 92% 80%,#c2994306,transparent 50%),var(--ground);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Apple SD Gothic Neo",system-ui,sans-serif}
.sheet{background:transparent}
.topbar,.tabs,.toolbar,.pop,.modal,.authbox,.top,.library-entry-actions .library-actions[open]{background:var(--lg-surface);border-color:var(--lg-edge);box-shadow:var(--lg-shadow);-webkit-backdrop-filter:blur(24px) saturate(145%);backdrop-filter:blur(24px) saturate(145%)}
.topbar{border-bottom:1px solid var(--lg-stroke)}
.toolbar{border-bottom:1px solid var(--lg-stroke);gap:8px}
.tabs{border-radius:32px;padding:7px;box-shadow:0 14px 38px #24435024,inset 0 1px 1px var(--lg-edge)}
/* The dock overlays content; clearance belongs inside scrollable content,
   not in a full-width reserved strip outside the viewport. */
@media screen{
 .app>main{margin-bottom:0}
 .app{--dock-clearance:calc(108px + env(safe-area-inset-bottom,0px))}
 .app .sheet{padding-bottom:var(--dock-clearance);scroll-padding-bottom:var(--dock-clearance)}
 #view-community{padding-bottom:0!important}
 #view-rosters,#view-admin{padding-bottom:var(--dock-clearance)!important;scroll-padding-bottom:var(--dock-clearance)}
 /* Seat controls must remain reachable without scrolling the stage. */
 #view-chart{padding-bottom:var(--dock-clearance);box-sizing:border-box}
 .tabs{isolation:isolate}
}
.tabs button{border-radius:23px;color:var(--lg-muted);transition:color .2s ease,background-color .2s ease}
.tabs button[aria-selected="true"]{color:var(--lg-accent)}
.tab-glide,#tabGlide{background:var(--lg-selected);border:1px solid var(--lg-edge);box-shadow:inset 0 1px 2px var(--lg-edge)}
.box,.library-card,.acard,article{background:var(--lg-content);border:1px solid var(--lg-stroke);border-radius:24px;box-shadow:0 4px 18px #29475908,inset 0 1px 0 var(--lg-edge)}
.box{padding:22px}.box h2{letter-spacing:.055em;color:var(--lg-muted)}.box .sub,.hint,.library-card .lm,.pophead .pe{color:var(--lg-muted)}
.library-card{border-radius:23px;padding:20px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.library-card:hover{border-color:var(--lg-accent);box-shadow:0 10px 25px #29475915,inset 0 1px 0 var(--lg-edge)}
.library-entry-actions .library-actions summary{background:var(--lg-surface);color:var(--lg-text);border:1px solid var(--lg-edge);box-shadow:0 2px 8px #29475912;border-radius:50%}
.btn,.btn.sm,.authform button,.top nav button{border-radius:999px;border:1px solid var(--lg-stroke);background:var(--lg-input);box-shadow:inset 0 1px 0 var(--lg-edge),0 2px 4px #29475908;color:var(--lg-text);transition:background-color .18s ease,box-shadow .18s ease,border-color .18s ease}
.btn{min-height:38px;padding:8px 16px}.btn.sm{min-height:32px;padding:5px 12px}
.btn:hover:not(:disabled){background:var(--lg-selected);border-color:var(--lg-accent)}
.btn.primary,.authform .primary{background:#10736e;color:#fff;border-color:#10736e;box-shadow:inset 0 1px 0 #ffffff40,0 4px 12px #10736e26}
.pro-badge,.plan-badge{border-color:var(--jari-gold)}
.btn.danger{color:var(--st-a,#ac3026);background:var(--lg-input)}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),textarea,select{border:1px solid var(--lg-stroke);border-radius:13px;background:var(--lg-input);color:var(--lg-text);box-shadow:inset 0 1px 3px #23394a08}
input::placeholder,textarea::placeholder{color:var(--lg-muted);opacity:.85}
:where(button,input,select,textarea,summary,a):focus-visible{outline:3px solid var(--lg-accent);outline-offset:3px}
.pop{border-radius:23px;padding:9px}.pop button{border-radius:13px;color:var(--lg-text)}
.modal{border-radius:28px;border:1px solid var(--lg-edge)}.modal header,.modal footer{border-color:var(--lg-stroke)}
.modal header{padding:22px 24px 16px}.modal .body{padding:20px 24px}.modal footer{padding:16px 24px}
.modal header h3{font-size:19px;letter-spacing:-.025em}.modal header p{color:var(--lg-muted)}
.authbox{border-radius:28px;border:1px solid var(--lg-edge)}.authcard{color:var(--lg-text)}
.authmark h1{color:var(--lg-text)}.authtabs{background:var(--lg-selected);border-radius:999px;padding:4px}.authtabs button{border-radius:999px}.authtabs button[aria-selected="true"]{background:var(--lg-content);color:var(--lg-text);box-shadow:0 2px 8px #23394a12}
#stage,.stage{background:var(--stage);border-color:var(--lg-stroke);border-radius:24px}
/* Content stays opaque; no per-seat backdrop filters or geometry changes. */
.card,.orchestra-card{box-shadow:0 2px 5px #183b4b16,inset 0 1px 0 #ffffff80;border-radius:13px}
table{color:var(--lg-text)}th{color:var(--lg-muted)}td{border-color:var(--lg-stroke)}
body>header:not(.topbar){background:var(--lg-surface);color:var(--lg-text);border-bottom:1px solid var(--lg-stroke)}
body>main:not(.app){color:var(--lg-text)}#drawing{background:var(--stage);border-radius:20px}
@media(max-width:600px){.box{padding:16px;border-radius:21px}.library-card{padding:17px}.modal{border-radius:24px}.modal header,.modal .body,.modal footer{padding:16px}.btn{min-height:40px}.tabs{padding:6px;max-width:calc(100vw - 16px)}.topbar,.toolbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}
@media(prefers-reduced-motion:reduce){.tabs button,.btn,.library-card,.library-actions{transition:none!important}}
@media(max-width:600px){.tabs{overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{min-width:44px;flex:1 0 44px}.tabs button .tl{font-size:10px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.topbar,.tabs,.toolbar,.pop,.modal,.authbox,.top,.library-entry-actions .library-actions[open]{background:var(--lg-solid);-webkit-backdrop-filter:none;backdrop-filter:none}.box,.library-card,article{background:var(--lg-solid);border-color:var(--lg-muted)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.topbar,.tabs,.toolbar,.pop,.modal,.authbox,.top{background:var(--lg-solid)}}
@media print{body{background:white!important;color:black!important}.box,.card,.orchestra-card,.modal,article,#stage,#drawing{box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body>header{background:white!important}}
