:root{color-scheme:light;--bg:#f7f3eb;--panel:#fffdf8;--panel2:#f6efe3;--panel3:#eee3d2;--line:#ded3c3;--text:#20242a;--muted:#6d747b;--gold:#9d6b16;--gold2:#c4933f;--green:#087f56;--red:#bb3542;--blue:#1b69bd;--shadow:0 12px 30px #26384a14;--radius:20px;--font-scale:1;font-family:Tahoma,"Segoe UI",Arial,sans-serif}
html[data-theme="light"]{color-scheme:light;--bg:#f7f3eb;--panel:#fffdf8;--panel2:#f6efe3;--panel3:#eee3d2;--line:#ded3c3;--text:#20242a;--muted:#6d747b;--gold:#9d6b16;--gold2:#c4933f;--green:#087f56;--red:#bb3542;--blue:#1b69bd;--shadow:0 12px 30px #26384a14}
html[data-theme="dark"]{color-scheme:dark;--bg:#0d1115;--panel:#14191e;--panel2:#1b2229;--panel3:#232c35;--line:#34404a;--text:#f5f1e8;--muted:#abb3ba;--gold:#e2b45b;--gold2:#c8943e;--green:#58d7a0;--red:#ff7883;--blue:#79b7ff;--shadow:0 14px 35px #05090b55}
@media(prefers-color-scheme:dark){html:not([data-theme]){color-scheme:dark;--bg:#0d1115;--panel:#14191e;--panel2:#1b2229;--panel3:#232c35;--line:#34404a;--text:#f5f1e8;--muted:#abb3ba;--gold:#e2b45b;--gold2:#c8943e;--green:#58d7a0;--red:#ff7883;--blue:#79b7ff;--shadow:0 14px 35px #05090b55}}
*{box-sizing:border-box}html{font-size:calc(16px * var(--font-scale));scroll-behavior:smooth}body{margin:0;min-height:100dvh;background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--gold) 13%,transparent) 0,transparent 28%),var(--bg);color:var(--text)}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{max-width:100%}[hidden]{display:none!important}#application{max-width:760px;min-height:100dvh;margin:auto;padding:calc(env(safe-area-inset-top) + 16px) 16px calc(env(safe-area-inset-bottom) + 96px)}.login-shell{min-height:calc(100dvh - 116px);display:grid;align-content:center;gap:18px}.brand-lockup{text-align:center}.brand-lockup img{width:84px;height:84px}.brand-lockup h1{margin:9px 0 3px;font-size:1.7rem}.brand-lockup p,.muted{margin:5px 0;color:var(--muted);font-size:.78rem;line-height:1.9}.surface,.login-card,.data-card,.install-note,.menu-card{padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(155deg,var(--panel2),var(--panel));box-shadow:var(--shadow)}.login-card h2{margin:0 0 13px;font-size:1.05rem}.form-field{display:grid;gap:7px;margin:12px 0}.form-field>span{color:var(--muted);font-size:.72rem}.form-field input,.form-field textarea,.form-field select,.composer textarea,.composer input,.inline-form input,.inline-form textarea,.inline-form select,.search-input{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--text);outline:0}.form-field textarea,.inline-form textarea,.composer textarea{min-height:88px;resize:vertical}.form-field input:focus,.form-field textarea:focus,.form-field select:focus,.composer textarea:focus,.search-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 16%,transparent)}.primary-button,.outline-button,.status-button,.danger-button,.ghost-button{min-height:42px;border-radius:12px;cursor:pointer;transition:.16s ease}.primary-button{padding:0 15px;border:0;background:linear-gradient(125deg,#efd08a,#c4933f);color:#191309;font-weight:700}.outline-button,.status-button,.ghost-button{padding:0 12px;border:1px solid var(--line);background:var(--panel2);color:var(--text)}.danger-button{padding:0 12px;border:1px solid color-mix(in srgb,var(--red) 45%,var(--line));background:color-mix(in srgb,var(--red) 12%,var(--panel));color:var(--red)}.ghost-button{background:transparent}.primary-button:disabled,.outline-button:disabled,.status-button:disabled{opacity:.55;cursor:not-allowed}.login-error,.empty,.status-text{text-align:center;color:var(--muted);font-size:.78rem;line-height:1.9}.login-error{color:var(--red)}.install-note{font-size:.72rem;line-height:1.9;color:var(--muted)}.install-note strong{display:block;color:var(--gold)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px;position:relative;z-index:2}.top-brand{display:flex;align-items:center;gap:10px;min-width:0}.top-brand img{width:44px;height:44px;flex:0 0 auto}.top-brand strong,.top-brand span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-brand span{margin-top:3px;color:var(--muted);font-size:.67rem}.header-actions{display:flex;gap:7px}.icon-button{position:relative;width:42px;height:42px;border:1px solid var(--line);border-radius:13px;background:var(--panel);color:var(--text);font-size:1.05rem;cursor:pointer}.notification-dot{position:absolute;top:4px;right:3px;min-width:16px;padding:2px 4px;border-radius:9px;background:var(--red);color:#fff;font-size:.58rem}.connection-strip{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px;padding:8px 10px;border:1px solid #6d4932;border-radius:12px;background:#382719;color:#ffd49d;font-size:.7rem}.update-strip{border-color:#6e6037;background:#332b18;color:#ffe0a0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:9px;margin:18px 0 10px}.section-heading h2{margin:0;font-size:1rem}.section-heading small{color:var(--muted)}.welcome-panel{padding:18px;border:1px solid color-mix(in srgb,var(--gold) 50%,var(--line));border-radius:21px;background:linear-gradient(140deg,color-mix(in srgb,var(--gold) 12%,var(--panel3)),var(--panel) 70%)}.welcome-panel small{color:color-mix(in srgb,var(--gold) 75%,var(--text))}.welcome-panel h2{margin:7px 0;font-size:1.34rem}.welcome-panel p{margin:0;color:var(--muted);font-size:.72rem}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:13px}.metric{display:grid;gap:7px;padding:13px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.metric span{font-size:.7rem;color:var(--muted)}.metric strong{font-size:1.2rem;color:var(--gold)}.quick-grid,.more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.quick-action,.menu-card{display:flex;align-items:center;gap:10px;text-align:right;cursor:pointer}.quick-action{min-height:72px;padding:12px;border:1px solid var(--line);border-radius:15px;background:var(--panel)}.quick-action .glyph,.menu-card .glyph{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:12px;background:color-mix(in srgb,var(--gold) 14%,var(--panel3));color:var(--gold);font-size:1.05rem}.quick-action strong,.menu-card strong{display:block;font-size:.79rem}.quick-action small,.menu-card small{display:block;margin-top:3px;color:var(--muted);font-size:.62rem;line-height:1.6}.card-stack{display:grid;gap:10px}.data-card{padding:13px}.data-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.data-card-header h3{margin:0;font-size:.82rem;line-height:1.7}.data-card-header p,.data-card p{margin:6px 0 0;font-size:.7rem;line-height:1.8;color:var(--muted)}.time-pill,.status-pill,.badge{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:5px 9px;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));border-radius:9px;color:var(--gold);font-size:.64rem;white-space:nowrap}.status-pill.green,.badge.green{color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,var(--line))}.status-pill.red,.badge.red{color:var(--red);border-color:color-mix(in srgb,var(--red) 45%,var(--line))}.status-pill.blue,.badge.blue{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 45%,var(--line))}.card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.status-button{min-height:34px;font-size:.68rem}.status-button.active{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 18%,var(--panel2));color:var(--gold)}.schedule-toolbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px}.schedule-toolbar strong{text-align:center;color:var(--gold);font-size:.72rem}.notification-card{position:relative}.notification-card.unread{border-color:color-mix(in srgb,var(--gold) 50%,var(--line))}.notification-card.unread:before{position:absolute;top:15px;left:13px;width:7px;height:7px;border-radius:50%;background:var(--gold);content:""}.notification-card small,.social-meta{font-size:.62rem;color:var(--muted)}.composer,.inline-form{display:grid;gap:8px}.composer{margin-bottom:13px}.social-post .post-caption{white-space:pre-wrap;word-break:break-word}.post-media{width:100%;max-height:360px;margin-top:9px;border-radius:13px;object-fit:cover;background:var(--bg)}.story-row{display:flex;gap:9px;overflow:auto;padding:2px 0 8px;scrollbar-width:none}.story-row::-webkit-scrollbar{display:none}.story-chip{display:grid;justify-items:center;gap:5px;min-width:62px;border:0;background:transparent;color:var(--text);font-size:.62rem;cursor:pointer}.story-chip img,.avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);background:var(--panel3)}.avatar.small{width:34px;height:34px;border-width:1px}.message-row{display:flex;gap:9px;align-items:center;cursor:pointer}.message-content{min-width:0;flex:1}.message-content p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation{display:grid;gap:8px}.bubble{max-width:82%;padding:9px 11px;border-radius:15px;background:var(--panel3);font-size:.73rem;line-height:1.8}.bubble.mine{justify-self:start;background:color-mix(in srgb,var(--gold) 18%,var(--panel3));border:1px solid color-mix(in srgb,var(--gold) 35%,var(--line))}.bubble.theirs{justify-self:end}.bubble small{display:block;margin-top:4px;color:var(--muted);font-size:.58rem}.bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:20;display:grid;grid-template-columns:repeat(5,1fr);gap:3px;max-width:760px;margin:auto;padding:7px 8px calc(env(safe-area-inset-bottom) + 8px);border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 93%,transparent);backdrop-filter:blur(18px)}.bottom-nav button{display:grid;justify-items:center;gap:3px;min-height:48px;padding:4px;border:0;border-radius:11px;background:transparent;color:var(--muted);font-size:.62rem;cursor:pointer}.bottom-nav button span{font-size:1.05rem}.bottom-nav button.active{color:var(--gold);background:color-mix(in srgb,var(--gold) 10%,var(--panel2))}.list-link{width:100%;text-align:right}.profile-actions{display:grid;gap:8px}.profile-avatar{width:74px;height:74px;border-radius:22px;object-fit:cover;border:1px solid var(--line);background:var(--panel3)}.toolbar-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.toolbar-row .search-input{flex:1;min-width:170px}.progress-track{height:7px;margin-top:9px;border-radius:8px;background:var(--bg);overflow:hidden}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,var(--gold2),var(--gold));border-radius:8px}.file-row{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px 0;border-top:1px dashed var(--line)}.file-row:first-child{border-top:0}.price{font-size:.79rem;color:var(--gold)}.cart-summary{position:sticky;bottom:76px;z-index:4}.empty{padding:22px 14px}.loading{padding:48px 12px;text-align:center;color:var(--muted);font-size:.76rem}.loading:before{content:"";display:block;width:26px;height:26px;margin:0 auto 10px;border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:fixed;right:16px;bottom:92px;left:16px;z-index:60;max-width:620px;margin:auto;padding:11px 13px;border:1px solid var(--line);border-radius:13px;background:var(--panel3);color:var(--text);box-shadow:var(--shadow);font-size:.72rem;text-align:center}.section-note{margin-top:8px;color:var(--muted);font-size:.66rem;line-height:1.8}.split{display:grid;grid-template-columns:1fr 1fr;gap:8px}.divider{height:1px;margin:12px 0;background:var(--line)}.link{color:var(--gold);text-decoration:underline;text-underline-offset:3px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(min-width:761px){#application{padding-right:25px;padding-left:25px}.bottom-nav{right:auto;left:50%;width:760px;transform:translateX(-50%);border-radius:17px 17px 0 0}}@media(max-width:430px){#application{padding-right:12px;padding-left:12px}.quick-grid,.more-grid{grid-template-columns:1fr 1fr}.schedule-toolbar{gap:4px}.schedule-toolbar .outline-button{padding:0 8px}.data-card-header{gap:7px}}@media(max-width:350px){.quick-grid,.more-grid,.stats-grid{grid-template-columns:1fr}.bottom-nav button{font-size:.56rem}}

.online-stage{display:grid;gap:10px}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;min-height:180px}.video-grid video,.video-grid audio{width:100%;border-radius:14px;background:#000}.online-controls{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.online-status{text-align:center;color:var(--muted);font-size:.72rem}
.status-stack{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.renewal-history{display:grid;gap:8px;margin-top:12px}.renewal-row{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 86%,transparent)}.renewal-row>div{display:grid;gap:3px}.renewal-row small{color:var(--muted)}

/* V18.6.1 online classroom */
.online-entry-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 13px;border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 16%,var(--panel2)),var(--panel2));color:var(--gold);font:inherit;font-size:.69rem;cursor:pointer;white-space:normal;text-align:center;line-height:1.5;flex:1 1 150px}.online-entry-button span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:color-mix(in srgb,var(--gold) 18%,transparent);font-size:.72rem}.online-entry-button strong{font-size:inherit}.online-room-card{display:grid;gap:12px}.online-health{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);font-size:.67rem;line-height:1.8}.online-health strong{font-size:.74rem}.online-health span{color:var(--muted)}.online-health.ok{border-color:color-mix(in srgb,var(--green) 45%,var(--line))}.online-health.ok strong{color:var(--green)}.online-health.danger{border-color:color-mix(in srgb,var(--red) 50%,var(--line));background:color-mix(in srgb,var(--red) 7%,var(--panel))}.online-health.danger strong{color:var(--red)}.online-video-grid{grid-template-columns:minmax(0,2fr) minmax(180px,.8fr);align-items:stretch}.online-video-panel{position:relative;min-height:220px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at center,#132530,#020508);box-shadow:inset 0 0 40px rgba(0,0,0,.25)}.online-video-panel.local{min-height:220px}.online-video-panel video{display:block;width:100%;height:100%;min-height:220px;object-fit:cover;background:#000}.online-video-panel .video-placeholder{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:6px;padding:20px;color:var(--muted);text-align:center}.online-video-panel .video-placeholder[hidden]{display:none}.online-video-panel .video-placeholder span{font-size:2rem;color:var(--gold)}.online-video-panel .video-placeholder strong{font-size:.82rem;color:var(--text)}.online-video-panel .video-placeholder small{font-size:.62rem;line-height:1.7}.online-audio-bin{position:absolute;width:1px;height:1px;overflow:hidden;opacity:.01}.online-status-box{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--muted);text-align:center;font-size:.7rem;line-height:1.8}.online-status-box[data-tone="success"]{border-color:color-mix(in srgb,var(--green) 40%,var(--line));color:var(--green)}.online-status-box[data-tone="pending"]{border-color:color-mix(in srgb,var(--gold) 45%,var(--line));color:var(--gold)}.online-status-box[data-tone="danger"]{border-color:color-mix(in srgb,var(--red) 45%,var(--line));color:var(--red)}.online-primary-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:8px}.online-test-button,.online-join-button{min-height:46px}.online-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.online-control{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:7px 10px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--text);font:inherit;font-size:.67rem;cursor:pointer}.online-control span{font-size:.9rem}.online-control.is-off{opacity:.68;color:var(--red);border-color:color-mix(in srgb,var(--red) 40%,var(--line))}.online-control.danger{color:var(--red);border-color:color-mix(in srgb,var(--red) 42%,var(--line))}.online-control.complete{color:var(--green);border-color:color-mix(in srgb,var(--green) 42%,var(--line))}.online-control:disabled{opacity:.42;cursor:not-allowed}.online-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.online-help-grid>div{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.online-help-grid strong{font-size:.7rem;color:var(--gold)}.online-help-grid span{font-size:.62rem;line-height:1.8;color:var(--muted)}
@media(max-width:620px){.online-entry-button{width:100%;flex-basis:100%;min-height:42px}.online-video-grid{grid-template-columns:1fr}.online-video-panel{min-height:46vh}.online-video-panel.local{min-height:160px;max-height:220px}.online-video-panel.local video{min-height:160px;max-height:220px}.online-primary-actions{grid-template-columns:1fr}.online-controls{grid-template-columns:1fr 1fr}.online-help-grid{grid-template-columns:1fr}.online-room-card{padding-bottom:4px}}
@media(max-width:360px){.online-controls{grid-template-columns:1fr}.online-entry-button{font-size:.64rem}}

/* V18.6.2 proprietary WebRTC */
.online-controls{grid-template-columns:repeat(5,minmax(0,1fr))}.online-video-panel>video{position:absolute;inset:0;z-index:1}.online-video-panel>.video-placeholder{z-index:2}.online-video-panel>.video-placeholder[hidden]{display:none}@media(max-width:760px){.online-controls{grid-template-columns:1fr 1fr}}@media(max-width:360px){.online-controls{grid-template-columns:1fr}}


/* V18.7.0 OTP + password login */
.auth-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;border:1px solid var(--line);border-radius:15px;background:var(--panel);box-shadow:var(--shadow)}.auth-mode-switch button{min-height:42px;border:0;border-radius:11px;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;cursor:pointer}.auth-mode-switch button.active{background:linear-gradient(125deg,color-mix(in srgb,var(--gold) 24%,var(--panel3)),var(--panel2));color:var(--gold);font-weight:700}.auth-card-stack{display:grid;gap:2px}.auth-hint{margin:0 0 4px;color:var(--muted);font-size:.69rem;line-height:1.9}.auth-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.otp-code-input{text-align:center!important;letter-spacing:.45em;font-size:1.25rem!important;font-weight:700}.auth-debug{margin:4px 0;padding:8px 10px;border:1px dashed color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--gold) 8%,var(--panel));color:var(--gold);text-align:center;font-size:.7rem;line-height:1.8}.auth-debug b{direction:ltr;display:inline-block;letter-spacing:.12em}.login-card>.primary-button{width:100%;margin-top:4px}@media(max-width:360px){.auth-secondary-actions{grid-template-columns:1fr}.otp-code-input{letter-spacing:.3em}}

/* V18.7.1 system theme + remembered device */
.remember-device{display:flex;align-items:center;gap:9px;margin:7px 0 3px;color:var(--muted);font-size:.71rem;line-height:1.8;cursor:pointer}.remember-device input{width:18px;height:18px;accent-color:var(--gold);flex:0 0 auto}.theme-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}.theme-choice button{min-height:42px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);color:var(--text);font:inherit;font-size:.7rem;cursor:pointer}.theme-choice button.active{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,var(--panel));color:var(--gold);font-weight:700}.theme-explain{margin:0;color:var(--muted);font-size:.67rem;line-height:1.9}@media(max-width:360px){.theme-choice{grid-template-columns:1fr}}
