/* Generated shared MIT design, with opaque content. */
/* Original MIT design. One token owner; installed system fonts and Tabler only. */
:root {
 color-scheme:light; font-family:system-ui,"Segoe UI","Microsoft YaHei",sans-serif; font-size:17px; line-height:1.65;
 --bg:#F6F8FA; --panel:#FFFFFF; --panel-soft:#EDF2F5; --input:#FFFFFF;
 --input-line:#738996; --ink:#172127; --muted:#52626B; --line:#D4DFE5; --accent:#156E60; --accent-ink:#FFFFFF; --accent-soft:#E5F3EF;
 --warning:#80500C; --warning-bg:#FFF3D9; --danger:#A3323D; --danger-bg:#FFF0F1; --focus:#8D4E00;
 --glass:rgba(250,253,255,.86); --glass-edge:rgba(255,255,255,.95); --shadow:0 12px 36px #1721270C;
 --radius:22px; --radius-small:14px; --blur:20px; --dock-height:0px; --dock-space:0px; --keyboard-inset:0px;
 --soft:var(--panel-soft); --text:var(--ink); --text-secondary:var(--muted); --border:var(--line); --surface:var(--panel);
 background:var(--bg); color:var(--ink); font-variant-numeric:tabular-nums;
}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){
 color-scheme:dark; --bg:#101316; --panel:#1B2025; --panel-soft:#252E35; --input:#1B2025;
 --input-line:#8C9DA6; --ink:#F1F5F7; --muted:#B4C0C7; --line:#43535E; --accent:#8EDAC8; --accent-ink:#102B25; --accent-soft:#203D35;
 --warning:#F1CE8F; --warning-bg:#392D1C; --danger:#FFB8C0; --danger-bg:#3C252B; --focus:#F5CE8B;
 --glass:rgba(23,29,34,.90); --glass-edge:rgba(189,211,223,.20); --shadow:0 12px 36px #0004;
}}
:root[data-theme=dark]{
 color-scheme:dark; --bg:#101316; --panel:#1B2025; --panel-soft:#252E35; --input:#1B2025;
 --input-line:#8C9DA6; --ink:#F1F5F7; --muted:#B4C0C7; --line:#43535E; --accent:#8EDAC8; --accent-ink:#102B25; --accent-soft:#203D35;
 --warning:#F1CE8F; --warning-bg:#392D1C; --danger:#FFB8C0; --danger-bg:#3C252B; --focus:#F5CE8B;
 --glass:rgba(23,29,34,.90); --glass-edge:rgba(189,211,223,.20); --shadow:0 12px 36px #0004;
}
:root[data-text-size=large]{font-size:20px}

/* Opaque readable foundation, shared by local, cloud and administration pages. */
*{box-sizing:border-box}
body{margin:0;color:var(--ink);background:var(--bg);min-height:100svh}
main{margin-inline:auto;min-width:0;overflow-wrap:anywhere}
h1,h2,h3,p{margin:0}h1{font-size:1.8rem;line-height:1.3;letter-spacing:-.025em}h2{font-size:1.3rem;line-height:1.4}h3{font-size:1.05rem;line-height:1.5}
p+p{margin-top:.75em}a{color:var(--accent);text-underline-offset:.2em}img{max-width:100%}
svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
button,input,select,textarea{font:inherit;max-width:100%;min-width:0;border-radius:var(--radius-small)}
button,.button-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;min-width:48px;padding:10px 16px;background:var(--panel-soft);color:var(--ink);border:1px solid var(--line);text-decoration:none;font-weight:550;cursor:pointer;touch-action:manipulation}
button:disabled{cursor:default;color:var(--muted);opacity:.66}button:hover:enabled{border-color:var(--accent)}
button:active:enabled{transform:translateY(1px)}button.primary,.primary,.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:650}
input,textarea,select{padding:12px;min-height:48px;border:1px solid var(--input-line,var(--line));background:var(--input);color:var(--ink)}
/* Preserve the established 22px thumb geometry and pan-y gesture contract.
   Native themed range thumbs differ in touch hit-testing and snap position. */
input[type=range]{width:100%;min-width:0;height:48px;min-height:48px;margin:0;padding:0;cursor:pointer;accent-color:var(--accent);appearance:none;background:transparent;border:0;border-radius:0;touch-action:pan-y}
input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:6px;background:linear-gradient(to right,var(--accent) var(--range-progress,0%),var(--line) var(--range-progress,0%))}
input[type=range]::-webkit-slider-thumb{appearance:none;width:22px;height:22px;border-radius:50%;border:3px solid var(--panel);background:var(--accent);margin-top:-8px;box-shadow:0 0 0 1px var(--accent)}
input[type=range]::-moz-range-track{height:6px;border-radius:6px;background:var(--line)}
input[type=range]::-moz-range-progress{height:6px;background:var(--accent)}
input[type=range]:disabled{opacity:.38;cursor:default}
input[type=range]:disabled::-webkit-slider-thumb{width:14px;height:14px;margin-top:-4px;border-color:var(--line);background:var(--muted);box-shadow:none}
input[type=checkbox],input[type=radio]{accent-color:var(--accent);min-height:24px;width:24px;height:24px}
textarea{resize:vertical;line-height:1.7}label{line-height:1.6}fieldset{min-width:0;border:0;padding:0;margin:18px 0}legend{font-weight:650;margin-bottom:10px}
summary{min-height:48px;cursor:pointer;padding-block:10px;line-height:1.6}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.card,.setting-card{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:none;min-width:0}
.eyebrow{font-size:.85rem;line-height:1.6;color:var(--muted);font-weight:600;letter-spacing:.04em}.accent{color:var(--accent)}
.field-help,.help,.muted,.optional{color:var(--muted);font-size:.875rem;line-height:1.65}.field-help{margin-block:8px}
.quiet-button,.quiet,.secondary{background:var(--panel-soft);color:var(--ink)}.icon-button{width:48px;height:48px;padding:10px;flex:none;background:transparent;border-color:transparent}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}
/* Glass is a progressive enhancement of opaque navigation, never of content. */
@supports(backdrop-filter:blur(1px)){
 :root:where(:not([data-visual-mode=opaque]):not([data-visual-mode=simple])) :is(.playback-bar,.bottom-tabs,.account-tabs,.safety-tabs){background:var(--glass);border-color:var(--glass-edge);backdrop-filter:blur(var(--blur)) saturate(1.15);box-shadow:var(--shadow),inset 0 1px 0 var(--glass-edge)}
}
:root[data-visual-mode=opaque] :is(.playback-bar,.bottom-tabs,.account-tabs,.safety-tabs),:root[data-visual-mode=simple] :is(.playback-bar,.bottom-tabs,.account-tabs,.safety-tabs){background:var(--panel);backdrop-filter:none;box-shadow:none}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){:root :is(.playback-bar,.bottom-tabs,.account-tabs,.safety-tabs){background:var(--panel);backdrop-filter:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
:root[data-reduced-motion=true] *,:root[data-visual-mode=simple] *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
@media(forced-colors:active){:root{--bg:Canvas;--panel:Canvas;--ink:CanvasText;--muted:CanvasText;--line:ButtonText;--accent:LinkText;--accent-ink:Canvas;--panel-soft:Canvas;--input:Canvas;--focus:Highlight}:root :is(.playback-bar,.bottom-tabs,.account-tabs,.safety-tabs){background:Canvas;backdrop-filter:none;border:1px solid ButtonText;box-shadow:none}button{border:1px solid ButtonText}}
.visual-preferences{margin-block:20px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.visual-preferences select{width:100%;margin-block:6px}.visual-preferences label{display:block}

input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}

/* Cloud shell ownership. Content, credentials and legal text remain opaque. */
body{padding:0}.page-header,.admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.page-header>div,.admin-header>div{min-width:0;flex:1}.page-header p,.admin-header p{margin-top:8px}
.protection-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;font-size:.875rem}.protection-links a{display:inline-flex;align-items:center;min-height:48px}
body[data-surface=account] input,body[data-surface=account-security] input,body[data-surface=community-verify] input{width:100%}.button-link{border-radius:var(--radius-small)}.check{display:flex;align-items:flex-start;gap:12px;min-height:48px}.check input[type=checkbox]{flex:0 0 24px;width:24px;height:24px;min-height:24px;margin-top:4px}
main,.admin-shell{max-width:960px;margin:0 auto;padding:32px 24px calc(var(--dock-space) + 36px)}
body[data-surface=account] main,body[data-surface=account-security] main,body[data-surface=community-verify] main{max-width:580px;margin:24px auto;padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--panel)}
header>p{color:var(--muted)}.back-link{display:inline-flex;align-items:center;min-height:48px}.badge{display:inline-flex;padding:6px 12px;border:1px solid var(--line);border-radius:20px;font-size:.85rem;line-height:1.6;color:var(--muted)}
.bottom-tabs{position:fixed;bottom:calc(10px + var(--keyboard-inset));left:50%;transform:translateX(-50%);width:min(calc(100% - 24px),812px);display:flex;gap:6px;padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px));background:var(--panel);border:1px solid var(--line);border-radius:26px;z-index:10}.bottom-tabs button{flex:1;min-height:48px;background:transparent;border-color:transparent;color:var(--muted);border-radius:18px}.bottom-tabs [aria-current=page]{background:var(--panel-soft);color:var(--accent)}
.account-tabs,.safety-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:22px 0;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:20px}.account-tabs button,.safety-tabs button{flex:1;min-width:90px;background:transparent;color:var(--muted);border-color:transparent;border-radius:14px;padding:10px}.account-tabs [aria-current=page],.safety-tabs [aria-pressed=true]{background:var(--panel-soft);color:var(--accent)}
.toolbar,.admin-nav,.security-nav,.actions{display:flex;gap:10px;flex-wrap:wrap;margin-block:16px}.admin-shell .card{margin-block:20px}.review-list article{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:18px;padding:20px;margin-block:16px}.review-list article p{white-space:pre-wrap;overflow-wrap:anywhere}.review-list article button{margin:6px 8px 0 0}
.admin-shell .stat-label,.admin-footer{color:var(--muted)}body .btn{min-height:48px;border-radius:14px;white-space:normal;font:inherit;color:var(--ink);background:var(--panel-soft);border:1px solid var(--line)}
.policy-text,.safety-content,.legal-copy{background:var(--panel);color:var(--ink);border:1px solid var(--line);padding:24px;border-radius:22px;line-height:1.8}.policy-text h2,.legal-copy h2{margin-top:24px}.policy-text p,.legal-copy p{margin-block:12px}.draft-label{display:block;padding:14px 18px;border-left:4px solid var(--warning);background:var(--warning-bg);color:var(--warning);margin-block:20px}
.safety-content label{display:block;margin:18px 0 5px}.safety-content input,.safety-content textarea,.safety-content select{width:100%}.safety-content .check{display:flex;gap:12px;align-items:flex-start}.safety-content .check input{width:24px;flex:none;margin-top:4px}.safety-content form>button{margin-top:20px}.case-list{display:grid;gap:12px;padding:0;list-style:none}.case-list>li{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:16px}.case-list button{margin:6px 8px 0 0}.case-reference{font:1rem/1.8 ui-monospace,monospace;overflow-wrap:anywhere;background:var(--panel-soft);padding:14px;border-radius:12px}.safety-status{margin-block:18px;padding:16px;background:var(--panel-soft);border-radius:16px;overflow-wrap:anywhere}.safety-status:empty{display:none}
@media(max-width:600px){main,.admin-shell{padding-top:22px;padding-inline:16px}.page-header,.admin-header{flex-wrap:wrap}body[data-surface=account] main,body[data-surface=account-security] main,body[data-surface=community-verify] main{margin:12px;padding:22px 18px}.policy-text,.safety-content,.legal-copy{padding:20px 16px}.safety-tabs{gap:4px}.safety-tabs button{flex-basis:calc(50% - 8px);min-width:0}}

.legal-copy{max-width:75ch;margin-inline:auto}
/* Authentication is a quiet form, using the same type and controls as player. */
body[data-surface=account] main{max-width:480px;border:0;box-shadow:none;border-radius:0;background:transparent;padding:28px 24px;margin:24px auto}
body[data-surface=account] header .eyebrow{font-size:.8rem;margin:24px 0 6px}body[data-surface=account] header h1{font-size:1.65rem;font-weight:650;line-height:1.4;letter-spacing:-.025em;margin:0 0 10px}body[data-surface=account] header>p:last-child{font-size:.9rem;margin:0 0 26px}
body[data-surface=account] .account-tabs{border:0;box-shadow:none;background:transparent;border-bottom:1px solid var(--line);border-radius:0;margin:20px 0 24px;padding:0;gap:22px;flex-wrap:nowrap}body[data-surface=account] .account-tabs button{flex:0 1 auto;min-width:0;padding:10px 2px;border-radius:0;border:0;border-bottom:2px solid transparent;background:transparent;font-size:.9rem}body[data-surface=account] .account-tabs [aria-current=page]{border-bottom-color:var(--accent);background:transparent}
body[data-surface=account] #visual-effects-settings{display:none}body[data-surface=account] #account-status:empty{display:none}body[data-surface=account] form label{font-size:.9rem}body[data-surface=account] form>.primary{margin-top:22px}body[data-surface=account] .back-link{font-size:.85rem;text-decoration:none}
@media(max-width:600px){body[data-surface=account] main{margin:0 auto;padding:18px 26px 32px}}

/* Compact reading surfaces; body text and touch targets keep their useful size. */
body[data-surface=forum] main{max-width:1060px;padding-top:20px;padding-bottom:36px}
body[data-surface=forum] .page-header{margin-bottom:8px;gap:16px}body[data-surface=forum] .page-header .eyebrow{margin:0;font-size:.8rem}body[data-surface=forum] .page-header h1{font-size:1.65rem;line-height:1.35;margin:0}body[data-surface=forum] #forum-site-status{font-size:.85rem;margin:10px 0;color:var(--muted)}body[data-surface=forum] main>.help{font-size:.85rem;margin:8px 0 16px;max-width:72ch}
.forum-top-nav{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:8px 0 16px}.forum-top-nav button{min-height:44px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);padding:8px 2px}.forum-top-nav [aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}
body[data-surface=account] main,body[data-surface=account-security] main,body[data-surface=community-verify] main{margin:12px auto;padding:20px 24px 36px;border:0;border-radius:0;background:transparent;box-shadow:none}
body[data-surface=account-security] main{max-width:760px}body[data-surface=community-verify] main{max-width:640px}
body[data-surface=account] header .eyebrow{margin:12px 0 4px}body[data-surface=account] header>p:last-child{margin-bottom:14px}body[data-surface=account] .account-tabs{margin:12px 0 16px}body[data-surface=account] form>.primary{margin-top:16px}
body[data-surface=account] .help,body[data-surface=account-security] .help{font-size:.85rem;line-height:1.6;margin:6px 0 12px}body[data-surface=account] .optional-profile{border:0;background:transparent;padding:0;margin:10px 0}body[data-surface=account] .optional-profile summary{min-height:44px;display:flex;align-items:center;color:var(--muted);font-size:.85rem;cursor:pointer}body[data-surface=account] .optional-profile summary::before{content:'＋';margin-right:6px}body[data-surface=account] .optional-profile[open] summary::before{content:'−'}
body[data-surface=account-security] header h1,body[data-surface=community-verify] h1{font-size:1.65rem;line-height:1.4;margin:8px 0}body[data-surface=account-security] section{margin:20px 0;padding:16px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}body[data-surface=account-security] h2{font-size:1.1rem;margin:0 0 10px}body[data-surface=account-security] details{margin:12px 0}body[data-surface=account-security] .session-list>li{padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}body[data-surface=account-security] #visual-effects-settings,body[data-surface=community-verify] #visual-effects-settings{display:none}
@media(max-width:600px){body[data-surface=account] main,body[data-surface=account-security] main,body[data-surface=community-verify] main{margin:0 auto;padding:12px 20px 28px}body[data-surface=forum] main{padding:16px 18px 28px}.forum-top-nav{margin-bottom:12px}}
