:root{--bg: #070707;--bg-soft: #111111;--surface: rgba(17, 17, 17, .82);--surface-strong: rgba(24, 24, 24, .94);--surface-soft: rgba(255, 204, 0, .05);--ink: #f6e7a6;--ink-soft: #d9c987;--muted: #a79557;--line: rgba(255, 204, 0, .14);--gold: #f5c400;--gold-soft: #ffdd66;--red: #b20e10;--red-bright: #d81c1c;--white: #fff8d6;--shadow: 0 26px 80px rgba(0, 0, 0, .45);--glow: 0 0 34px rgba(245, 196, 0, .16);font-family:Trebuchet MS,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--ink);background:radial-gradient(circle at 18% 12%,rgba(178,14,16,.22),transparent 18%),radial-gradient(circle at 80% 18%,rgba(245,196,0,.1),transparent 20%),radial-gradient(circle at 50% 100%,rgba(178,14,16,.12),transparent 26%),linear-gradient(180deg,#050505,#0d0d0d 46%,#040404);overflow-x:hidden}body:before,body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}body:before{background:radial-gradient(circle at 22% 80%,rgba(255,140,0,.08),transparent 14%),radial-gradient(circle at 74% 72%,rgba(255,204,0,.06),transparent 16%);filter:blur(18px);animation:emberPulse 10s ease-in-out infinite alternate}body:after{background:linear-gradient(transparent 0%,rgba(255,204,0,.02) 40%,transparent 100%);opacity:.7}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}a{color:var(--white);text-decoration:none}.app-shell,.login-shell,.portal-shell{position:relative;z-index:1;max-width:1320px;margin:0 auto;padding:32px 22px 70px}.app-loading{min-height:100vh;display:grid;place-items:center;color:var(--gold-soft);font-size:1.05rem;letter-spacing:.12em;text-transform:uppercase}.app-error,.form-error{padding:12px 14px;border-radius:16px;border:1px solid rgba(216,28,28,.34);background:#b20e102e;color:#ffb4b4;box-shadow:0 0 24px #b20e101f}.app-error{margin-bottom:18px}.app-error-overlay{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:20;min-width:260px;max-width:480px;margin:0;box-shadow:0 8px 32px #00000080}.eyebrow,.section-label,.brand-kicker{margin:0 0 8px;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}.brand-mark{display:inline-flex;align-items:center;gap:14px;margin-bottom:10px}.brand-mark.is-compact{margin-bottom:14px}.brand-copy{display:grid;gap:2px}.brand-copy strong{color:var(--gold);font-size:clamp(1.35rem,2.4vw,2.15rem);letter-spacing:0;text-transform:uppercase;text-shadow:0 0 18px rgba(245,196,0,.16)}.brand-mark.is-compact .brand-copy strong{font-size:1.05rem;line-height:1.08}.brand-seal{position:relative;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;filter:drop-shadow(0 0 18px rgba(216,28,28,.2))}.brand-mark.is-compact .brand-seal{width:48px;height:48px}.seal-ring,.seal-core,.seal-strike{position:absolute;display:block}.seal-ring{top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid rgba(245,196,0,.6);box-shadow:inset 0 0 16px #f5c4002e,0 0 16px #f5c40014}.seal-core{width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ff5252 0%,var(--red-bright) 38%,#5e0506 100%);box-shadow:0 0 18px #d81c1c38;animation:sealGlow 4.2s ease-in-out infinite}.seal-strike{width:22px;height:6px;border-radius:999px;background:linear-gradient(90deg,transparent,var(--gold),transparent);top:30px}.seal-left{left:2px;transform:rotate(-24deg)}.seal-right{right:2px;transform:rotate(24deg)}.login-hero,.portal-top,.current-belt-card,.product-card,.catalog-card,.guardian-card,.stat-card,.demo-card,.roadmap-card,.category-card{background:linear-gradient(180deg,rgba(255,204,0,.05),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.02),transparent 100%),var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow),inset 0 1px #ffffff08;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.login-hero{display:grid;grid-template-columns:1.25fr .9fr;gap:22px;align-items:stretch}.login-copy,.login-card,.product-card,.catalog-card,.guardian-card,.category-card{padding:26px}.login-copy{position:relative;overflow:hidden}.login-copy:after,.portal-top:after,.current-belt-card:after{content:"";position:absolute;inset:auto -60px -60px auto;width:180px;height:180px;background:radial-gradient(circle,rgba(178,14,16,.26),transparent 68%);filter:blur(12px);pointer-events:none}.login-copy h1,.portal-top h1{margin:10px 0 14px;font-size:clamp(2.7rem,4vw,5rem);line-height:.92;text-transform:uppercase;letter-spacing:.04em;color:var(--gold-soft)}.login-copy p,.portal-top p,.current-belt-card p,.catalog-card p,.category-card p,.guardian-card p{color:var(--ink-soft)}.login-card{display:grid;gap:14px;align-content:start;background:linear-gradient(180deg,rgba(216,28,28,.05),transparent 20%),var(--surface-strong)}.login-card h2,.product-card h2,.catalog-card h2,.category-card h2,.guardian-card h2{margin:0 0 10px;color:var(--gold-soft)}.login-card label,.product-card label{display:grid;gap:8px}.login-card input,.product-card input,.product-card select,.product-card textarea,.inline-form select,.search-input{width:100%;border-radius:16px;border:1px solid rgba(255,204,0,.14);background:#00000057;color:var(--white);padding:12px 14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.password-field{position:relative}.password-field input{padding-right:84px}.password-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%);border-radius:10px;border:1px solid rgba(255,204,0,.16);background:#ffcc0014;color:var(--gold-soft);padding:6px 10px;cursor:pointer;font-size:.78rem}.demo-helper{margin:12px 0 0;color:var(--muted);font-size:.84rem}.login-card input:focus,.product-card input:focus,.product-card select:focus,.product-card textarea:focus,.search-input:focus{border-color:#ffcc006b;box-shadow:0 0 0 3px #ffcc0014}.primary-button,.secondary-button,.ghost-button,.demo-card,.tab-button,.user-row{cursor:pointer}.primary-button,.secondary-button,.ghost-button,.tab-button{border-radius:16px;padding:12px 18px;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease,border-color .15s ease}.primary-button{border:1px solid rgba(255,204,0,.2);color:#170b00;background:linear-gradient(135deg,var(--gold-soft),var(--gold));box-shadow:0 12px 34px #f5c40029}.secondary-button{border:1px solid rgba(255,204,0,.14);background:#ffcc0012;color:var(--gold-soft)}.ghost-button{border:1px solid rgba(255,204,0,.14);background:#ffffff03;color:var(--ink)}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.demo-card:hover,.tab-button:hover,.user-row:hover{transform:translateY(-1px);box-shadow:var(--glow)}.primary-button:disabled,.secondary-button:disabled{opacity:.6;cursor:wait;transform:none;box-shadow:none}.demo-grid,.stats-row,.admin-grid,.overview-grid,.users-layout,.admin-split,.content-forms,.catalog-grid,.student-grid,.guardian-grid,.roadmap-row,.category-columns{display:grid;gap:18px}.demo-grid{margin-top:22px;grid-template-columns:repeat(3,minmax(0,1fr))}.demo-card{display:grid;gap:6px;text-align:left;padding:18px;border:1px solid var(--line);border-radius:22px;background:#101010b8;color:var(--ink)}.portal-top{position:relative;padding:26px 30px;display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:22px;overflow:hidden}.stats-row{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.tab-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.tab-button{border:1px solid rgba(255,204,0,.14);background:#101010c2;color:var(--ink-soft)}.tab-button.is-active{background:linear-gradient(135deg,#fc03,#b20e104d);border-color:#ffcc0047;color:var(--gold-soft);box-shadow:var(--glow)}.stat-card{padding:18px}.stat-card strong{display:block;font-size:2rem;color:var(--gold-soft)}.stat-card span,.muted{color:var(--muted)}.admin-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:20px;align-items:start}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.full-span{grid-column:1 / -1}.overview-list,.belt-overview-stack,.user-list,.guardian-checks,.belt-library{display:grid;gap:12px}.overview-row,.belt-overview-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;background:#ffcc000a;border:1px solid var(--line)}.belt-overview-row span,.overview-row span{display:block}.belt-mini{width:64px}.belt-mini.large{width:90px}.users-layout{grid-template-columns:minmax(300px,.84fr) minmax(0,1.16fr);align-items:start}.users-sidebar{position:sticky;top:20px}.search-input{margin:14px 0}.user-row{display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;width:100%;padding:14px;border-radius:18px;border:1px solid transparent;background:#ffcc000a;color:var(--ink)}.user-row.is-active{border-color:#ffcc003d;background:linear-gradient(135deg,#ffcc001a,#b20e1029),#ffcc000a}.role-pill{padding:8px 12px;border-radius:999px;background:#ffcc001f;color:var(--gold-soft);border:1px solid rgba(255,204,0,.18)}.stack-form,.content-forms{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.guardian-picker{display:grid;gap:10px}.check-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#ffcc000a;border:1px solid var(--line)}.check-row input{width:auto;accent-color:var(--gold)}.form-actions{display:flex;gap:12px}.admin-split{grid-template-columns:minmax(330px,.9fr) minmax(0,1.1fr);align-items:start}.content-layout{grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr)}.student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-admin-card{padding:18px;border-radius:22px;background:#ffcc000a;border:1px solid var(--line)}.student-admin-head,.card-head,.technique-top,.belt-hero{display:flex;justify-content:space-between;gap:16px;align-items:start}.inline-form{display:flex;gap:12px;align-items:center;margin-top:14px}.catalog-grid,.category-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.belt-hero{margin-bottom:18px}.belt-preview,.belt-spotlight{width:min(100%,260px);filter:drop-shadow(0 0 18px rgba(255,204,0,.14))}.belt-thumb{width:80px;filter:drop-shadow(0 0 12px rgba(255,204,0,.12))}.belt-thumb.large{width:120px}.belt-roadmap{height:56px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(255,204,0,.12))}.technique-stack,.resource-stack{display:grid;gap:12px}.technique-card{padding:16px;border-radius:20px;background:linear-gradient(180deg,rgba(255,204,0,.04),transparent 40%),#0000003d;border:1px solid rgba(255,204,0,.1)}.technique-top span{padding:6px 10px;border-radius:999px;background:#ffcc001f;color:var(--gold-soft);border:1px solid rgba(255,204,0,.12);font-size:.9rem}.resource-pill{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:999px;background:linear-gradient(135deg,#ffcc001a,#b20e1029);border:1px solid rgba(255,204,0,.12);color:var(--white)}.resource-stack.compact{gap:8px}.catalog-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-card.compact{padding:18px}.sub-technique p{margin:8px 0}.current-belt-card{position:relative;overflow:hidden;padding:26px 30px;margin-bottom:22px;display:flex;justify-content:space-between;gap:16px;align-items:center}.grade-line{margin:0 0 10px;color:var(--gold-soft);letter-spacing:.12em;text-transform:uppercase}.roadmap-row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:22px}.roadmap-row.compact{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.roadmap-card,.roadmap-mini{position:relative;overflow:hidden;padding:18px;text-align:center}.roadmap-card strong,.roadmap-mini strong{display:block;margin:10px 0 4px}.roadmap-card span,.roadmap-mini span{color:var(--muted)}.status-completed{background:linear-gradient(180deg,rgba(255,204,0,.05),transparent 36%),#121212c7}.status-current{background:radial-gradient(circle at top,rgba(245,196,0,.16),transparent 44%),#121212d6;box-shadow:var(--shadow),0 0 34px #f5c40014}.status-next,.status-upcoming{background:linear-gradient(180deg,rgba(178,14,16,.08),transparent 36%),#121212c7}.status-current:before,.roadmap-card:before,.category-card:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;border:1px solid transparent;background:linear-gradient(135deg,#fc03,#b20e1024) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.brand-logo-wrap{width:72px;min-width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,204,0,.14),transparent 48%),#0006;border:1px solid rgba(255,204,0,.16);box-shadow:inset 0 1px #ffffff0a,0 0 22px #f5c40014}.brand-logo{width:92%;height:92%;object-fit:contain;border-radius:50%}.workspace-shell{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;padding:22px}.workspace-sidebar,.workspace-card,.metric-card,.workspace-drawer{background:linear-gradient(180deg,rgba(255,204,0,.04),transparent 18%),linear-gradient(180deg,rgba(255,255,255,.02),transparent 100%),var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow),inset 0 1px #ffffff08;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.workspace-sidebar{position:sticky;top:22px;height:calc(100vh - 44px);padding:24px 20px;display:grid;grid-template-rows:auto 1fr auto;gap:18px}.workspace-side-copy h1,.workspace-header h2{margin:8px 0 10px;font-size:clamp(2rem,2.5vw,3rem);color:var(--gold-soft);text-transform:uppercase;letter-spacing:.06em}.workspace-side-copy p,.workspace-header p,.workspace-side-note p,.drawer-note p,.empty-state p,.mini-highlight span{color:var(--ink-soft)}.workspace-nav,.workspace-sidebar-bottom,.workspace-body,.workspace-grid,.workspace-metrics,.workspace-header-actions,.quick-actions-grid,.entity-list,.detail-grid,.tag-row,.table-like,.plan-grid,.stack-list,.workspace-main,.workspace-split,.belt-timeline,.highlights-grid{display:grid;gap:16px}.workspace-nav{align-content:start;overflow:auto;padding-right:4px}.workspace-nav-item{width:100%;text-align:left;padding:14px 16px;border-radius:20px;border:1px solid transparent;background:#ffcc000a;color:var(--ink);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease}.workspace-nav-item strong,.workspace-nav-item span{display:block}.workspace-nav-item span{margin-top:6px;color:var(--muted);font-size:.9rem}.workspace-nav-item.is-active,.workspace-nav-item:hover{transform:translateY(-1px);border-color:#fc03;background:linear-gradient(135deg,#ffcc0024,#b20e102e),#ffcc000d;box-shadow:var(--glow)}.workspace-side-note,.drawer-note,.mini-highlight,.info-tile,.belt-step,.plan-card,.entity-row,.quick-action-card,.stack-row,.alert-row,.table-row,.workspace-callout,.period-pill{border-radius:20px;border:1px solid rgba(255,204,0,.1);background:#ffcc000a}.workspace-main{gap:20px;min-width:0}.workspace-header,.workspace-card,.workspace-drawer{padding:24px}.workspace-header{display:flex;justify-content:space-between;gap:18px;align-items:start;border-radius:28px;border:1px solid var(--line);background:radial-gradient(circle at top right,rgba(178,14,16,.2),transparent 28%),linear-gradient(180deg,rgba(255,204,0,.06),transparent 18%),var(--surface);box-shadow:var(--shadow)}.workspace-header-actions{grid-template-columns:minmax(260px,1fr) auto auto;align-items:center}.workspace-search{min-width:260px}.workspace-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card{padding:18px}.metric-card span{color:var(--muted);display:block;margin-bottom:10px}.metric-card strong{font-size:1.85rem;color:var(--gold-soft)}.tone-red strong{color:#ff8585}.tone-muted strong{color:#d8d8d8}.tone-money strong{color:#9be59b}.workspace-grid,.workspace-grid.two-columns,.workspace-split{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-card.full-span,.hero-card{grid-column:1 / -1}.quick-actions-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-action-card,.entity-row{width:100%;text-align:left;padding:16px;color:var(--ink)}.quick-action-card strong,.quick-action-card span,.entity-row strong,.entity-row span,.stack-row strong,.stack-row span,.table-row strong,.table-row span,.info-tile span,.info-tile strong,.belt-step strong,.belt-step span,.workspace-side-note strong{display:block}.entity-row,.stack-row,.table-row,.alert-row{display:flex;justify-content:space-between;gap:14px;align-items:center}.workspace-callout{padding:14px 16px;display:grid;gap:6px}.workspace-callout strong{color:var(--gold-soft)}.workspace-callout span{color:var(--ink-soft);font-size:.92rem}.quick-periods{display:flex;flex-wrap:wrap;gap:8px}.period-pill{border-radius:999px;padding:8px 12px;color:var(--ink-soft);background:#ffcc000f;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.period-pill:hover{transform:translateY(-1px);border-color:#ffcc003d}.period-pill.is-active{color:var(--gold-soft);border-color:#ffcc0047;background:linear-gradient(135deg,#ffcc0024,#b20e1024);box-shadow:var(--glow)}.entity-row:hover,.quick-action-card:hover{transform:translateY(-1px);box-shadow:var(--glow)}.entity-row.is-active{border-color:#ffcc003d;background:linear-gradient(135deg,#ffcc001f,#b20e1029),#ffcc000d}.entity-row-end,.stack-row-end,.detail-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.info-tile,.mini-highlight,.belt-step,.plan-card,.drawer-note{padding:16px}.info-tile span,.mini-highlight span{margin-bottom:6px;color:var(--muted)}.money-panel{margin-top:18px;padding:18px;border-radius:22px;border:1px solid rgba(255,204,0,.12);background:linear-gradient(135deg,#ffcc000f,#b20e1014)}.money-panel>div:first-child span{display:block;color:var(--muted)}.money-panel>div:first-child strong{display:block;font-size:1.8rem;color:var(--gold-soft);margin-bottom:16px}.tag-pill,.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,204,0,.14);background:#ffcc0014;color:var(--gold-soft)}.status-high,.status-pending,.status-active-debtor,.status-inactive-debt{color:#ffb3b3;border-color:#ff606040;background:#b20e102e}.status-advanced,.status-confirmed,.status-paid,.status-active,.status-present{color:#b9f5b9;border-color:#86de8638;background:#285e283d}.status-late,.status-medium,.status-low-stock,.status-review,.status-group-incomplete,.status-incomplete{color:#f6d27f;border-color:#f6d27f38;background:#64480938}.status-inactive,.status-inactive-debtor,.status-absent{color:#d9d9d9;border-color:#ffffff24;background:#ffffff0f}.inline-section{margin-top:18px}.belt-timeline{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:10px}.belt-step.is-current{background:radial-gradient(circle at top,rgba(255,204,0,.16),transparent 42%),#ffcc000d;border-color:#fc03}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.plan-assignment-layout{align-items:start}.plan-assignment-main{position:relative}.plan-assignment-hero,.student-selection-grid,.plan-assignment-list{display:grid;gap:12px}.plan-assignment-hero{grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0}.plan-assignment-hero .mini-highlight{padding:14px;border-radius:12px;border:1px solid rgba(255,204,0,.14);background:#ffcc0008}.plan-assignment-hero .mini-highlight p{margin:6px 0 0;color:var(--ink-soft);font-size:.86rem}.plan-student-picker{display:grid;gap:12px;border-radius:14px;border:1px solid rgba(255,204,0,.14);background:#ffcc0005;padding:16px}.plan-picker-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid rgba(255,204,0,.1)}.student-selection-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.student-check-card{display:flex;gap:10px;align-items:flex-start;border-radius:12px;border:1px solid rgba(200,200,200,.2);background:#ffffff80;padding:12px;cursor:pointer;transition:all .15s ease}.student-check-card input{margin-top:2px}.student-check-card strong,.student-check-card span{display:block}.student-check-card span{margin-top:4px;color:var(--ink-soft);font-size:.84rem}.student-check-card.is-selected{border-color:#ffcc0059;background:#ffcc0014;box-shadow:var(--glow)}.student-check-card.is-blocked{opacity:.65;cursor:not-allowed;background:#c8c8c81a}.student-check-card.is-blocked input{cursor:not-allowed}.student-check-card.is-blocked{opacity:.7}.plan-assignment-warnings{border-color:#ff606047;background:#b20e1033}.plan-assignment-warnings .stack-list{gap:8px}.plan-assignment-warnings span{color:#ffd1d1;font-size:.9rem}.plan-assignment-list{gap:10px}.plan-assignment-row{display:grid;grid-template-columns:1.2fr 1fr 1.5fr .9fr auto;gap:12px;align-items:center;border-radius:16px;border:1px solid rgba(255,204,0,.12);background:#ffcc0008;padding:14px}.plan-assignment-row strong,.plan-assignment-row span{display:block}.plan-assignment-row span{margin-top:4px;color:var(--ink-soft);font-size:.84rem}.table-row{padding:14px 16px;flex-wrap:wrap}.workspace-drawer{position:fixed;top:22px;right:22px;z-index:5;width:min(400px,calc(100vw - 44px));max-height:calc(100vh - 44px);overflow:auto}.workspace-drawer-head{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:18px}.empty-state{padding:20px;border-radius:20px;border:1px dashed rgba(255,204,0,.18);background:#ffcc0008}.empty-state.is-compact{padding:16px}@keyframes emberPulse{0%{opacity:.36;transform:scale(1)}to{opacity:.74;transform:scale(1.08)}}@keyframes sealGlow{0%,to{transform:scale(1);box-shadow:0 0 16px #d81c1c29}50%{transform:scale(1.06);box-shadow:0 0 24px #d81c1c52}}@media (max-width: 1080px){.admin-grid,.overview-grid,.users-layout,.admin-split,.content-layout,.catalog-grid.compact,.catalog-grid,.category-columns,.stats-row,.demo-grid,.student-grid,.form-grid,.plan-assignment-hero,.plan-assignment-row{grid-template-columns:1fr}.users-sidebar{position:static}}@media (max-width: 820px){.login-hero,.portal-top,.current-belt-card,.belt-hero{grid-template-columns:1fr;flex-direction:column}.portal-top,.current-belt-card{align-items:stretch}.inline-form,.form-actions{flex-direction:column;align-items:stretch}.brand-copy strong{font-size:1.65rem}}@media (max-width: 1280px){.workspace-shell{grid-template-columns:260px minmax(0,1fr)}.workspace-metrics,.quick-actions-grid,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1100px){.workspace-shell{grid-template-columns:1fr}.workspace-sidebar,.workspace-drawer{position:static;height:auto;max-width:none;width:auto;max-height:none;overflow:visible}.workspace-grid,.workspace-grid.two-columns,.workspace-split,.workspace-metrics,.workspace-header-actions,.quick-actions-grid,.detail-grid{grid-template-columns:1fr}}.workspace-nav-item{display:flex;gap:12px;align-items:flex-start}.nav-icon{flex-shrink:0;width:20px;height:20px;margin-top:2px;display:grid;place-items:center;color:var(--muted);transition:color .15s ease}.nav-icon svg{width:16px;height:16px}.workspace-nav-item.is-active .nav-icon,.workspace-nav-item:hover .nav-icon{color:var(--gold-soft)}.nav-item-copy{flex:1;min-width:0}.nav-item-top{display:flex;align-items:center;gap:8px}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 5px;border-radius:999px;background:#ffcc0024;border:1px solid rgba(255,204,0,.18);color:var(--gold-soft);font-size:.7rem;font-weight:700}.search-input-wrap{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;color:var(--muted);pointer-events:none;flex-shrink:0}.search-input-wrap .search-input{padding-left:36px}.video-embed{position:relative;width:100%;padding-top:56.25%;border-radius:18px;overflow:hidden;background:#000}.video-embed iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none}.video-native{width:100%;max-height:420px;border-radius:18px;background:#000;display:block}.resource-external-link{display:inline-flex;align-items:center;gap:6px;color:var(--gold-soft);text-decoration:underline;text-underline-offset:3px}.resource-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.resource-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:12px;border:1px solid rgba(255,204,0,.16);background:#ffcc000f;color:var(--gold-soft);text-decoration:none;font-size:.88rem;transition:border-color .15s ease,background .15s ease,transform .15s ease;cursor:pointer;width:100%;text-align:left}.resource-pill:hover{border-color:#ffcc0057;background:#ffcc001f;transform:translateY(-1px)}.resource-ext-icon{margin-left:auto;opacity:.6;font-size:.8rem}.resource-action{margin-left:auto;font-size:.77rem;color:var(--muted);white-space:nowrap}.resource-pill-play{border-color:#f5c40038;background:#f5c40014}.resource-pill-play:hover{border-color:#f5c40070;background:#f5c40026}.resource-video{display:flex;flex-direction:column;gap:0}.resource-video-body{padding:14px 0 4px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.student-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:4px}.student-progress-panel{background:linear-gradient(180deg,rgba(255,204,0,.04),transparent 18%),var(--surface);border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;gap:14px}.progress-track{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.progress-track.compact{margin-top:14px}.progress-node{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:700;border:2px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--muted);overflow:hidden;transition:transform .2s ease}.progress-track.compact .progress-node{width:30px;height:30px;font-size:.65rem}.progress-node.status-completed{background:#285e2899;border-color:#86de8666;color:#b9f5b9}.progress-node.status-current{background:radial-gradient(circle,#ffcc0038,#b20e102e);border-color:#ffcc0080;color:var(--gold-soft);box-shadow:0 0 14px #f5c40038;transform:scale(1.08)}.progress-node.status-next{border-color:#fc03;color:var(--ink-soft)}.progress-node-img{width:100%;height:100%;object-fit:cover}.progress-label{font-size:.82rem;color:var(--muted);margin:0}.category-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0}.category-tab{display:flex;flex-direction:column;padding:10px 16px;border-radius:16px;border:1px solid rgba(255,204,0,.12);background:#ffcc000a;color:var(--ink-soft);cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease,color .15s ease;text-align:left;min-width:110px}.category-tab:hover{border-color:#ffcc003d;background:#ffcc0014;transform:translateY(-1px)}.category-tab.is-active{border-color:#fc06;background:linear-gradient(135deg,#ffcc0024,#b20e101f),#ffcc000d;color:var(--gold-soft);box-shadow:var(--glow)}.category-tab.status-completed{border-color:#86de862e}.category-tab.status-completed.is-active{border-color:#86de865c;background:#285e283d;color:#b9f5b9}.category-tab.status-upcoming{opacity:.45;cursor:not-allowed}.cat-tab-name{font-weight:600;font-size:.88rem;display:block}.cat-tab-grade{font-size:.72rem;color:var(--muted);display:block;margin-top:2px}.category-tab.is-active .cat-tab-grade{color:var(--gold)}.category-panel{background:linear-gradient(180deg,rgba(255,204,0,.04),transparent 18%),var(--surface);border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.category-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.category-panel-head h2{margin:6px 0 8px;color:var(--gold-soft)}.category-panel-actions{display:flex;flex-direction:column;gap:12px;align-items:flex-end;flex-shrink:0}.locked-notice{padding:20px;border-radius:18px;border:1px dashed rgba(255,204,0,.18);background:#ffcc0008;color:var(--muted)}.technique-grid{display:grid;gap:10px}.technique-card-v2{border-radius:18px;border:1px solid rgba(255,204,0,.1);background:#ffcc0008;overflow:hidden;transition:border-color .15s ease}.technique-card-v2.is-open{border-color:#ffcc0038;background:linear-gradient(180deg,rgba(255,204,0,.06),transparent 30%),#ffcc0008}.technique-card-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;text-align:left;color:var(--ink);background:none;border:none;cursor:pointer;transition:background .15s ease}.technique-card-trigger:hover{background:#ffcc000a}.technique-trigger-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.technique-trigger-info strong{display:block}.technique-toggle{font-size:.7rem;color:var(--muted);flex-shrink:0}.technique-card-body{padding:0 18px 18px;border-top:1px solid rgba(255,204,0,.08);animation:slideDown .18s ease}.technique-card-body p{margin:14px 0 12px;color:var(--ink-soft);font-size:.9rem}.difficulty-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;border:1px solid rgba(255,204,0,.14);background:#ffcc000f;color:var(--muted);font-size:.72rem;white-space:nowrap}.difficulty-pill.difficulty-basica{border-color:#86de8652;background:#285e2838;color:#b9f5b9}.difficulty-pill.difficulty-media{border-color:#ffcc0052;background:#ffcc001f;color:var(--gold-soft)}.difficulty-pill.difficulty-alta{border-color:#ff78785c;background:#b20e1038;color:#ffb3b3}.techniques-admin{display:flex;flex-direction:column;gap:22px}.techniques-admin-belts{display:flex;flex-wrap:wrap;gap:10px}.belt-chip{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;border:1px solid rgba(255,204,0,.12);background:#ffcc000a;color:var(--ink-soft);cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease,transform .15s ease}.belt-chip:hover{border-color:#ffcc003d;background:#ffcc0014;transform:translateY(-1px)}.belt-chip.is-active{border-color:#fc06;background:linear-gradient(135deg,#ffcc0024,#b20e101f),#ffcc000d;color:var(--gold-soft);box-shadow:var(--glow)}.belt-chip-img{width:30px;height:30px;border-radius:50%;object-fit:cover;flex-shrink:0}.belt-chip-dot{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#ffcc001f;color:var(--gold-soft);font-size:.7rem;font-weight:600;flex-shrink:0}.belt-chip-text{display:flex;flex-direction:column;line-height:1.2}.belt-chip-text strong{font-size:.9rem}.belt-chip-text span{font-size:.72rem;color:var(--muted);margin-top:2px}.belt-chip.is-active .belt-chip-text span{color:var(--gold)}.techniques-admin-body{display:flex;flex-direction:column;gap:18px}.techniques-admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}.techniques-admin-head h3{margin:4px 0 0;color:var(--gold-soft)}.techniques-admin-desc{margin:8px 0 0;color:var(--muted);font-size:.88rem;max-width:540px}.techniques-admin-form{padding:18px;border-radius:18px;border:1px dashed rgba(255,204,0,.22);background:#ffcc000a}.techniques-admin-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.techniques-admin-toolbar .search-input{flex:1 1 240px;min-width:200px}.difficulty-filter{display:inline-flex;gap:6px;flex-wrap:wrap}.difficulty-chip{padding:6px 12px;border-radius:999px;border:1px solid rgba(255,204,0,.14);background:#ffcc000a;color:var(--ink-soft);font-size:.78rem;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.difficulty-chip:hover{border-color:#ffcc0047;color:var(--ink)}.difficulty-chip.is-active{border-color:#ffcc006b;background:#ffcc001f;color:var(--gold-soft)}.difficulty-chip.difficulty-basica.is-active{border-color:#86de866b;background:#285e2842;color:#b9f5b9}.difficulty-chip.difficulty-alta.is-active{border-color:#ff78786b;background:#b20e103d;color:#ffb3b3}.technique-order{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:28px;padding:0 8px;border-radius:10px;background:#ffcc0014;color:var(--gold-soft);font-size:.78rem;font-weight:600}.technique-resource-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.technique-resource-list li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid rgba(255,204,0,.08);background:#ffcc0008;font-size:.85rem}.content-note-card{margin-top:-6px}.content-actions-row{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.content-actions-row .secondary-button,.content-actions-row .danger-button{padding:8px 12px;border-radius:12px;font-size:.8rem}.inline-edit-form{margin:8px 0 14px;padding:14px;border-radius:14px;border:1px solid rgba(255,204,0,.14);background:#ffcc000a}.technique-resource-title{flex:1;min-width:0;color:var(--ink-soft)}.link-soft{color:var(--gold-soft);text-decoration:none;font-size:.8rem}.link-soft:hover{text-decoration:underline}@media (max-width: 720px){.techniques-admin-head{flex-direction:column;align-items:stretch}.techniques-admin-toolbar .search-input{flex-basis:100%}}.resources-technique-picker{display:flex;flex-wrap:wrap;gap:8px}.technique-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;border:1px solid rgba(255,204,0,.12);background:#ffcc0008;color:var(--ink-soft);cursor:pointer;font-size:.85rem;transition:border-color .15s ease,background .15s ease,color .15s ease}.technique-pill:hover{border-color:#ffcc003d;color:var(--ink)}.technique-pill.is-active{border-color:#fc06;background:#ffcc001a;color:var(--gold-soft)}.technique-pill-order{font-size:.72rem;color:var(--muted);font-weight:600}.technique-pill.is-active .technique-pill-order{color:var(--gold)}.technique-pill-title{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technique-pill-count{min-width:22px;padding:0 6px;border-radius:999px;background:#ffcc001a;color:var(--gold-soft);font-size:.7rem;text-align:center}.resource-source-toggle{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px}.resource-source-card{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:16px;border:1px dashed rgba(255,204,0,.18);background:#ffcc0008}.resource-source-card.is-filled{border-style:solid;border-color:#ffcc005c;background:#ffcc000f}.resource-source-card input{width:100%}.resource-source-or{align-self:center;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.form-hint{margin:-4px 0 0;color:#ffb3b3}.difficulty-chip.resource-kind-video.is-active{border-color:#78b4ff6b;background:#28508c47;color:#cfe2ff}.difficulty-chip.resource-kind-pdf.is-active{border-color:#ffa0786b;background:#a050283d;color:#ffd9bf}.difficulty-chip.resource-kind-archivo.is-active{border-color:#c8c8c852;background:#78787838;color:#e0e0e0}.difficulty-pill.resource-kind-video{border-color:#78b4ff52;background:#28508c38;color:#cfe2ff}.difficulty-pill.resource-kind-pdf{border-color:#ffa07852;background:#a0502833;color:#ffd9bf}.difficulty-pill.resource-kind-archivo{border-color:#c8c8c842;background:#78787833;color:#e0e0e0}.resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.resource-card{display:flex;gap:12px;padding:14px;border-radius:16px;border:1px solid rgba(255,204,0,.1);background:#ffcc0008;transition:border-color .15s ease,transform .15s ease}.resource-card:hover{border-color:#ffcc003d;transform:translateY(-1px)}.resource-card-icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;background:#ffcc0014;color:var(--gold-soft);flex-shrink:0}.resource-card.resource-kind-video .resource-card-icon{background:#28508c38;color:#cfe2ff}.resource-card.resource-kind-pdf .resource-card-icon{background:#a0502838;color:#ffd9bf}.resource-card.resource-kind-archivo .resource-card-icon{background:#78787838;color:#e0e0e0}.resource-card-body{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.resource-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.resource-card-head strong{font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-order-tag{font-size:.7rem;color:var(--muted);font-weight:600}.resource-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media (max-width: 720px){.resource-source-toggle{grid-template-columns:1fr}.resource-source-or{text-align:center}}.child-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:4px 0}.child-tab{display:flex;flex-direction:column;padding:12px 20px;border-radius:18px;border:1px solid rgba(255,204,0,.12);background:#ffcc000a;color:var(--ink-soft);cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease;text-align:left}.child-tab:hover{border-color:#ffcc003d;background:#ffcc0014;transform:translateY(-1px)}.child-tab.is-active{border-color:#fc06;background:linear-gradient(135deg,#ffcc0024,#b20e101f),#ffcc000d;color:var(--gold-soft);box-shadow:var(--glow)}.child-tab strong{display:block;font-size:.95rem}.child-tab span{display:block;font-size:.78rem;color:var(--muted);margin-top:3px}.child-tab.is-active span{color:var(--gold)}.child-panel{display:grid;gap:18px}.child-summary-card{padding:26px!important}.panel-sub-tabs{display:flex;gap:8px;flex-wrap:wrap}.panel-sub-tab{padding:9px 18px;border-radius:14px;border:1px solid rgba(255,204,0,.12);background:#ffcc000a;color:var(--ink-soft);cursor:pointer;font-size:.88rem;transition:border-color .15s ease,background .15s ease,color .15s ease}.panel-sub-tab:hover{border-color:#ffcc003d;color:var(--ink)}.panel-sub-tab.is-active{border-color:#fc06;background:#ffcc001a;color:var(--gold-soft)}.belt-step-img{width:36px;height:36px;border-radius:50%;object-fit:cover;margin-bottom:6px}.muted-sm{font-size:.8rem;color:var(--muted);margin:4px 0 0}.search-wrap,.search-wrap .search-input{width:100%}@media (max-width: 820px){.student-summary{grid-template-columns:1fr}.category-tabs,.child-tabs{gap:6px}.category-tab,.child-tab{min-width:unset;flex:1 1 auto}.category-panel-head{flex-direction:column}.category-panel-actions{align-items:flex-start}}.ws-shell{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr)}.ws-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(255,204,0,.03),transparent 30%),#0a0a0aeb;border-right:1px solid rgba(255,204,0,.1);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}.ws-sidebar-brand{flex-shrink:0;padding:22px 20px 16px;border-bottom:1px solid rgba(255,204,0,.07)}.ws-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 10px;display:flex;flex-direction:column;gap:2px;scrollbar-width:thin;scrollbar-color:rgba(255,204,0,.12) transparent}.ws-nav-group-btn{width:100%;display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;border:1px solid transparent;background:transparent;color:var(--ink-soft);text-align:left;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.ws-nav-group-btn:hover{background:#ffcc000f;color:var(--ink)}.ws-nav-group-btn.is-current{background:linear-gradient(135deg,#ffcc0024,#b20e101a);border-color:#fc03;color:var(--gold-soft)}.ws-nav-group{border-radius:14px;transition:background .15s ease}.ws-nav-group.has-active{background:#ffcc0008}.ws-nav-group-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-radius:14px;border:1px solid transparent;background:transparent;color:var(--ink-soft);font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.ws-nav-group-header:hover{background:#ffcc000d;color:var(--ink)}.ws-nav-group.has-active .ws-nav-group-header{color:var(--gold-soft)}.ws-nav-group-label{display:flex;align-items:center;gap:10px}.ws-chevron{width:10px;height:10px;color:var(--muted);flex-shrink:0;transition:transform .2s ease}.ws-nav-group.is-open .ws-chevron{transform:rotate(180deg)}.ws-nav-group-items{overflow:hidden;max-height:0;transition:max-height .28s cubic-bezier(.4,0,.2,1)}.ws-nav-group.is-open .ws-nav-group-items{max-height:600px}.ws-nav-group-items>div{display:flex;flex-direction:column;padding:4px 6px 10px 26px;gap:3px}.ws-nav-item{display:flex;flex-direction:column;padding:9px 12px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--ink-soft);text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .12s ease}.ws-nav-item:hover{background:#ffcc000d;color:var(--ink);transform:translate(2px)}.ws-nav-item.is-active{background:linear-gradient(135deg,#ffcc001f,#b20e1014);border-color:#ffcc002e;color:var(--gold-soft)}.ws-nav-item-label{display:block;font-size:.84rem;font-weight:600}.ws-nav-item-desc{display:block;font-size:.72rem;color:var(--muted);margin-top:2px;line-height:1.3}.ws-nav-item.is-active .ws-nav-item-desc{color:var(--gold);opacity:.7}.ws-group-icon{flex-shrink:0;width:16px;height:16px;display:grid;place-items:center;opacity:.75}.ws-group-icon svg{width:14px;height:14px}.nav-alert-dot{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:17px;padding:0 5px;border-radius:999px;background:#b20e10b3;border:1px solid rgba(255,100,100,.3);color:#ffb3b3;font-size:.68rem;font-weight:700;line-height:1}.ws-sidebar-foot{flex-shrink:0;padding:14px 14px 18px;border-top:1px solid rgba(255,204,0,.07);display:flex;flex-direction:column;gap:10px}.ws-user-card{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;border:1px solid rgba(255,204,0,.08);background:#ffcc0008}.ws-user-avatar{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffcc004d,#b20e1066);border:1px solid rgba(255,204,0,.18);display:grid;place-items:center;font-weight:700;font-size:.85rem;color:var(--gold-soft)}.ws-user-info{min-width:0}.ws-user-info strong{display:block;font-size:.83rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-user-info span{display:block;font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-logout-btn{width:100%;font-size:.82rem;padding:9px 14px}.ws-main{min-width:0;display:flex;flex-direction:column;min-height:100vh;background:transparent}.ws-topbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 28px;border-bottom:1px solid rgba(255,204,0,.08);background:linear-gradient(180deg,#050505f5,#080808f0);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-wrap:wrap}.ws-topbar-left{display:flex;align-items:center;gap:14px;min-width:0}.ws-topbar-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ws-menu-toggle{display:none;width:36px;height:36px;border-radius:10px;border:1px solid rgba(255,204,0,.12);background:#ffcc000a;color:var(--ink);cursor:pointer;place-items:center}.ws-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.84rem}.ws-breadcrumb-group{color:var(--muted)}.ws-breadcrumb-sep{color:var(--muted);opacity:.5;font-size:.9rem}.ws-breadcrumb-current{color:var(--gold-soft);font-weight:600}.ws-command-trigger{display:inline-flex;align-items:center;gap:8px;border-radius:12px;border:1px solid rgba(255,204,0,.16);background:#ffcc000f;color:var(--ink-soft);padding:8px 10px;font-size:.78rem;cursor:pointer}.ws-command-trigger kbd{border-radius:8px;border:1px solid rgba(255,204,0,.2);background:#00000059;color:var(--gold-soft);padding:1px 6px;font-size:.7rem}.ws-command-trigger:hover{border-color:#ffcc004d;color:var(--ink)}.ws-topbar-search{position:relative;display:flex;align-items:center}.ws-search-icon{position:absolute;left:11px;color:var(--muted);pointer-events:none}.ws-search-input{width:280px;padding:9px 36px 9px 34px;border-radius:14px;border:1px solid rgba(255,204,0,.14);background:#00000057;color:var(--white);font:inherit;font-size:.86rem;outline:none;transition:border-color .16s ease,box-shadow .16s ease,width .24s ease}.ws-search-input:focus{border-color:#ffcc005c;box-shadow:0 0 0 3px #ffcc0012;width:340px}.ws-search-input::placeholder{color:var(--muted)}.ws-search-clear{position:absolute;right:10px;width:18px;height:18px;border-radius:50%;border:none;background:#ffffff14;color:var(--muted);font-size:.85rem;display:grid;place-items:center;cursor:pointer;line-height:1}.ws-search-clear:hover{background:#ffffff29;color:var(--ink)}.ws-page-head{padding:24px 28px 0}.ws-page-title{margin:0 0 6px;font-size:clamp(1.5rem,2.2vw,2.2rem);color:var(--gold-soft);text-transform:uppercase;letter-spacing:.06em}.ws-page-desc{margin:0;font-size:.88rem;color:var(--ink-soft)}.ws-module-hero{margin-top:14px;padding:14px;border-radius:18px;border:1px solid rgba(255,204,0,.14);background:linear-gradient(135deg,#ffcc0017,#b20e1014),#ffcc000a;display:grid;gap:10px}.ws-module-hero strong{color:var(--gold-soft)}.ws-module-focus{margin:0 0 4px;color:var(--ink-soft);font-size:.86rem}.ws-module-flow{display:flex;flex-wrap:wrap;gap:8px}.ws-module-step{border-radius:999px;border:1px solid rgba(255,204,0,.16);background:#ffcc0012;color:var(--ink-soft);font-size:.76rem;padding:5px 10px}.ws-recents{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ws-recents-label{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ws-recent-chip{border-radius:999px;border:1px solid rgba(255,204,0,.14);background:#ffcc000d;color:var(--ink-soft);padding:6px 12px;font-size:.8rem;cursor:pointer}.ws-recent-chip:hover{border-color:#ffcc003d;color:var(--ink)}.ws-recent-chip.is-active{border-color:#ffcc005c;background:linear-gradient(135deg,#ffcc0024,#b20e101a);color:var(--gold-soft)}.ws-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 28px 0}.ws-content{flex:1;padding:20px 28px 40px}.ws-content .workspace-grid{gap:16px}.ws-split-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:0;height:calc(100vh - 220px);min-height:480px;border-radius:22px;border:1px solid var(--line);overflow:hidden;background:linear-gradient(180deg,rgba(255,204,0,.03),transparent 20%),var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ws-split-list{border-right:1px solid rgba(255,204,0,.08);display:flex;flex-direction:column;min-height:0}.ws-split-list-head{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid rgba(255,204,0,.07);gap:10px}.ws-split-count{margin:0;font-size:.78rem;color:var(--muted)}.ws-split-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px;scrollbar-width:thin;scrollbar-color:rgba(255,204,0,.1) transparent}.ws-split-detail{overflow-y:auto;padding:20px;scrollbar-width:thin;scrollbar-color:rgba(255,204,0,.1) transparent}.ws-split-scroll .entity-list{gap:4px}.ws-split-scroll .entity-row{padding:12px 14px;border-radius:14px}.ws-split-detail .workspace-card{border:none;box-shadow:none;background:transparent;padding:4px 0}.ws-content label,.workspace-drawer label{display:grid;gap:7px}.ws-content label>span,.workspace-drawer label>span,.guardian-picker>span,.ws-content .guardian-picker>span{display:block;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ws-content input:not([type=checkbox]),.ws-content select,.ws-content textarea,.workspace-drawer input:not([type=checkbox]),.workspace-drawer select,.workspace-drawer textarea{width:100%;padding:11px 14px;border-radius:13px;border:1px solid rgba(255,204,0,.15);background:#050505b3;color:var(--white);font:inherit;font-size:.87rem;outline:none;transition:border-color .16s ease,box-shadow .16s ease;-moz-appearance:none;appearance:none;-webkit-appearance:none}.ws-content select,.workspace-drawer select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:11px;padding-right:38px;cursor:pointer}.ws-content input:not([type=checkbox]):focus,.ws-content select:focus,.ws-content textarea:focus,.workspace-drawer input:not([type=checkbox]):focus,.workspace-drawer select:focus,.workspace-drawer textarea:focus{border-color:#ffcc006b;box-shadow:0 0 0 3px #ffcc0012}.ws-content input::placeholder,.ws-content textarea::placeholder,.workspace-drawer input::placeholder,.workspace-drawer textarea::placeholder{color:var(--muted);opacity:.7}.ws-content input[type=date],.workspace-drawer input[type=date]{color-scheme:dark}.ws-content textarea,.workspace-drawer textarea{resize:vertical;min-height:90px;line-height:1.5}.panel-sub-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid rgba(255,204,0,.1);padding-bottom:0}.panel-sub-tab{padding:10px 22px;border-radius:12px 12px 0 0;border:1px solid transparent;border-bottom:none;background:transparent;color:var(--ink-soft);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease;position:relative;bottom:-1px;letter-spacing:.02em}.panel-sub-tab:hover{background:#ffcc000d;color:var(--ink)}.panel-sub-tab.is-active{background:#ffcc0014;border-color:#ffcc0024;border-bottom-color:var(--bg);color:var(--gold-soft)}.ws-nav{padding:14px 10px 12px;gap:3px}.ws-nav-group-header,.ws-nav-group-btn{padding:12px 14px}.ws-nav-item{padding:10px 14px}.ws-shell{grid-template-columns:255px minmax(0,1fr)}.ws-page-head{padding:28px 32px 0}.ws-metrics{padding:20px 32px 0}.ws-content{padding:24px 32px 48px}.ws-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:8;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ws-command{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:start center;padding:10vh 20px 20px}.ws-command-overlay{position:absolute;top:0;right:0;bottom:0;left:0;border:none;background:#0000009e}.ws-command-card{position:relative;width:min(760px,100%);max-height:min(78vh,640px);overflow:hidden;border-radius:20px;border:1px solid rgba(255,204,0,.2);background:linear-gradient(180deg,rgba(255,204,0,.06),transparent 18%),#080808f5;box-shadow:0 32px 80px #0009;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ws-command-head{display:flex;align-items:center;gap:10px;padding:14px;border-bottom:1px solid rgba(255,204,0,.1)}.ws-command-input{flex:1;min-width:0;border:none;background:transparent;color:var(--white);outline:none;font:inherit;font-size:.95rem}.ws-command-close{border-radius:8px;border:1px solid rgba(255,204,0,.16);background:#ffcc000f;color:var(--gold-soft);padding:5px 8px;font-size:.74rem;cursor:pointer}.ws-command-list{overflow-y:auto;max-height:calc(min(78vh,640px) - 64px);padding:10px;display:grid;gap:8px}.ws-command-item{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:14px;border-radius:12px;border:1px solid rgba(255,204,0,.1);background:#ffcc000a;color:var(--ink);padding:12px;cursor:pointer}.ws-command-item:hover{border-color:#ffcc0047;background:#ffcc0014}.ws-command-item strong{display:block}.ws-command-item span{display:block;color:var(--muted);font-size:.8rem}.ws-command-kind{border-radius:999px;border:1px solid rgba(255,204,0,.16);background:#ffcc0014;color:var(--gold-soft);padding:5px 8px;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.ws-command-empty{margin:0;padding:18px;text-align:center;color:var(--muted)}.preview-count-field{display:flex;gap:8px;flex-wrap:wrap}.preview-count-btn{flex:1 1 auto;padding:10px 14px;border-radius:14px;border:1px solid rgba(255,204,0,.16);background:#ffcc000d;color:var(--ink-soft);font:inherit;font-size:.86rem;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .12s ease}.preview-count-btn:hover{border-color:#ffcc0047;color:var(--ink);transform:translateY(-1px)}.preview-count-btn.is-active{border-color:#ffcc0080;background:linear-gradient(135deg,#fc03,#b20e1024);color:var(--gold-soft);box-shadow:var(--glow)}.preview-count-hint{display:block;margin-top:6px;font-size:.78rem;color:var(--muted)}.belt-preview-selector{display:grid;gap:12px}.belt-preview-label{display:flex;align-items:center;justify-content:space-between;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.belt-preview-clear{border:1px solid rgba(216,28,28,.3);background:#d81c1c1a;color:#ffb3b3;border-radius:999px;padding:4px 10px;font-size:.72rem;cursor:pointer;transition:background .14s ease,border-color .14s ease}.belt-preview-clear:hover{background:#d81c1c33;border-color:#d81c1c80}.belt-preview-empty{margin:0;color:var(--muted);font-size:.84rem}.belt-preview-track{display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap;padding:14px;border-radius:18px;border:1px solid rgba(255,204,0,.1);background:#ffcc0008}.belt-preview-arrow{align-self:center;margin-top:-18px;color:var(--muted);font-size:.9rem;flex-shrink:0}.belt-preview-node{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 10px 8px;border-radius:16px;border:1px solid transparent;background:transparent;color:var(--ink);font:inherit;text-align:center;min-width:80px;max-width:100px;transition:border-color .15s ease,background .15s ease,transform .13s ease}.belt-preview-node strong{display:block;font-size:.78rem;line-height:1.2;color:var(--ink)}.belt-preview-node span{display:block;font-size:.66rem;color:var(--muted)}.belt-preview-node.is-current{border-color:#ffcc004d;background:linear-gradient(180deg,#ffcc001a,#ffcc000a)}.belt-preview-node.is-current strong{color:var(--gold-soft)}.belt-preview-node.is-current span{color:var(--gold)}.belt-preview-node.is-next{cursor:pointer;border-color:#ffffff12;background:#ffffff08}.belt-preview-node.is-next:hover{border-color:#ffcc0042;background:#ffcc0012;transform:translateY(-2px)}.belt-preview-node.is-next.is-visible{border-color:#86de864d;background:#285e2833}.belt-preview-node.is-next.is-visible strong{color:#b9f5b9}.belt-preview-node.is-next.is-visible span{color:#b9f5b999}.belt-preview-node.is-next.is-limit{border-color:#86de8680;box-shadow:0 0 14px #86de8624}.belt-preview-node-inner{position:relative;width:42px;height:42px;border-radius:50%;border:2px solid rgba(255,255,255,.1);background:#0000004d;display:grid;place-items:center;overflow:hidden;flex-shrink:0}.belt-preview-node.is-current .belt-preview-node-inner{border-color:#fc06}.belt-preview-node.is-next.is-visible .belt-preview-node-inner{border-color:#86de8666}.belt-preview-node-img{width:100%;height:100%;object-fit:cover}.belt-preview-node-dot{font-size:.75rem;font-weight:700;color:var(--muted)}.belt-preview-node.is-current .belt-preview-node-dot{color:var(--gold-soft)}.belt-preview-node.is-next.is-visible .belt-preview-node-dot{color:#b9f5b9}.belt-preview-check{position:absolute;bottom:-2px;right:-2px;width:16px;height:16px;border-radius:50%;background:#285e28e6;border:1px solid rgba(134,222,134,.5);color:#b9f5b9;font-size:.55rem;display:grid;place-items:center}.belt-step.is-current{border-color:#ffcc004d;background:linear-gradient(180deg,#ffcc001a,#ffcc0008)}.belt-step.is-preview{border-color:#86de8638;background:#285e281f}.belt-step-dot{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#ffcc001a;color:var(--gold-soft);font-size:.72rem;font-weight:700;flex-shrink:0}.belt-step-badge{margin-left:auto;padding:3px 8px;border-radius:999px;border:1px solid rgba(255,204,0,.24);background:#ffcc001a;color:var(--gold-soft);font-size:.66rem;font-weight:600;white-space:nowrap}.belt-step-badge.is-preview{border-color:#86de8647;background:#285e2833;color:#b9f5b9}@media (max-width: 600px){.belt-preview-track{gap:4px}.belt-preview-node{min-width:66px;max-width:80px;padding:8px 6px}}.login-shell-auth .login-copy h1{max-width:14ch}.login-shell-auth .login-card{border:1px solid rgba(255,204,0,.2)}.portal-shell-student .portal-top{background:radial-gradient(circle at 85% 8%,rgba(255,204,0,.12),transparent 28%),linear-gradient(180deg,rgba(255,204,0,.06),transparent 26%),var(--surface)}.portal-shell-guardian .portal-top{background:radial-gradient(circle at 85% 8%,rgba(120,180,255,.12),transparent 28%),linear-gradient(180deg,rgba(255,204,0,.04),transparent 26%),var(--surface)}.portal-shell-guardian .guardian-overview-card{border-color:#78b4ff33;background:#78b4ff14}.ws-theme-dashboard .ws-page-head,.ws-theme-reports .ws-page-head{position:relative}.ws-theme-dashboard .ws-page-head:after,.ws-theme-reports .ws-page-head:after,.ws-theme-alerts .ws-page-head:after,.ws-theme-billing .ws-page-head:after,.ws-theme-attendance .ws-page-head:after,.ws-theme-products .ws-page-head:after,.ws-theme-settings .ws-page-head:after,.ws-theme-audit .ws-page-head:after,.ws-theme-content .ws-page-head:after,.ws-theme-academy .ws-page-head:after,.ws-theme-members .ws-page-head:after,.ws-theme-tutors .ws-page-head:after,.ws-theme-families .ws-page-head:after,.ws-theme-plans .ws-page-head:after,.ws-theme-arrears .ws-page-head:after{content:"";position:absolute;right:26px;top:16px;width:150px;height:90px;border-radius:26px;pointer-events:none;filter:blur(.6px)}.ws-theme-dashboard .ws-page-head:after,.ws-theme-reports .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(255,204,0,.22),transparent 70%)}.ws-theme-tutors .ws-page-head:after,.ws-theme-families .ws-page-head:after,.ws-theme-members .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(120,180,255,.22),transparent 70%)}.ws-theme-academy .ws-page-head:after,.ws-theme-content .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(134,222,134,.24),transparent 70%)}.ws-theme-attendance .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(94,208,214,.24),transparent 70%)}.ws-theme-plans .ws-page-head:after,.ws-theme-billing .ws-page-head:after,.ws-theme-arrears .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(255,160,120,.24),transparent 70%)}.ws-theme-products .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(216,168,255,.24),transparent 70%)}.ws-theme-alerts .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(255,120,120,.26),transparent 70%)}.ws-theme-settings .ws-page-head:after,.ws-theme-audit .ws-page-head:after{background:radial-gradient(circle at 50% 50%,rgba(210,210,210,.18),transparent 70%)}.ws-theme-tutors .ws-module-hero,.ws-theme-families .ws-module-hero,.ws-theme-members .ws-module-hero{border-color:#78b4ff3d;background:linear-gradient(135deg,#78b4ff24,#78b4ff0a)}.ws-theme-academy .ws-module-hero,.ws-theme-content .ws-module-hero,.ws-theme-attendance .ws-module-hero{border-color:#86de8638;background:linear-gradient(135deg,#86de8624,#86de860a)}.ws-theme-plans .ws-module-hero,.ws-theme-billing .ws-module-hero,.ws-theme-arrears .ws-module-hero,.ws-theme-products .ws-module-hero{border-color:#ffa0783d;background:linear-gradient(135deg,#ffa07824,#ffa0780a)}.ws-theme-alerts .ws-module-hero{border-color:#ff787852;background:linear-gradient(135deg,#ff787833,#ff78780f)}.ws-theme-settings .ws-module-hero,.ws-theme-audit .ws-module-hero,.ws-theme-reports .ws-module-hero{border-color:#d2d2d233;background:linear-gradient(135deg,#d2d2d224,#d2d2d20a)}.student-actions-row{margin:14px 0 6px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.student-action-card,.guardian-overview-card{border-radius:18px;border:1px solid rgba(255,204,0,.12);background:#ffcc000a;padding:14px;display:grid;gap:5px}.student-action-card strong,.guardian-overview-card strong{color:var(--gold-soft)}.student-action-card span,.guardian-overview-card span{color:var(--ink-soft);font-size:.86rem}.progress-legend{display:flex;gap:10px;flex-wrap:wrap}.progress-legend span{display:inline-flex;align-items:center;gap:6px;font-size:.77rem;color:var(--muted)}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.legend-dot.is-completed{background:#86de86db}.legend-dot.is-current{background:#ffcc00db}.legend-dot.is-next{background:#ffffff59}.guardian-overview-strip{margin:10px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.danger-button{border-color:#d81c1c5c;color:#ffb4b4;background:linear-gradient(135deg,#d81c1c24,#82080840)}.danger-button:hover{box-shadow:0 0 20px #d81c1c33}.compact-tabs{margin-bottom:14px}.compact-tabs .panel-sub-tab{padding:8px 14px;font-size:.8rem}.summary-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.summary-kpi{border-radius:14px;border:1px solid rgba(255,204,0,.12);background:#ffcc000a;padding:12px;display:grid;gap:6px}.summary-kpi span{color:var(--muted);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.summary-kpi strong{color:var(--gold-soft);font-size:1.08rem}.ws-user-role{margin-top:3px;display:inline-flex;width:fit-content;padding:2px 8px;border-radius:999px;border:1px solid rgba(255,204,0,.16);background:#ffcc000f;color:var(--gold-soft);font-size:.68rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}@media (max-width: 1300px){.ws-shell{grid-template-columns:210px minmax(0,1fr)}.ws-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-search-input{width:220px}.ws-search-input:focus{width:260px}}@media (max-width: 1024px){.ws-split-layout{grid-template-columns:280px minmax(0,1fr)}}@media (max-width: 900px){.ws-shell{grid-template-columns:1fr}.ws-sidebar{position:fixed;top:0;left:0;z-index:10;width:260px;height:100vh;transform:translate(-100%);transition:transform .28s cubic-bezier(.32,0,.12,1)}.ws-shell.sidebar-is-open .ws-sidebar{transform:translate(0)}.ws-shell.sidebar-is-open .ws-overlay{display:block}.ws-menu-toggle{display:grid}.ws-topbar{gap:10px}.ws-topbar-right{width:100%}.ws-command-trigger{margin-left:auto}.ws-topbar-search{flex:1}.ws-search-input,.ws-search-input:focus{width:100%}.ws-split-layout{grid-template-columns:1fr;grid-template-rows:300px minmax(0,1fr);height:auto;min-height:unset}.ws-split-list{border-right:none;border-bottom:1px solid rgba(255,204,0,.08)}.ws-page-head,.ws-metrics,.ws-content{padding-left:18px;padding-right:18px}.ws-page-head:after{display:none}.ws-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-kpi-grid{grid-template-columns:1fr}}@media (max-width: 600px){.ws-metrics{grid-template-columns:1fr 1fr;gap:8px}.ws-topbar{padding:10px 14px}.ws-page-head,.ws-content{padding-left:14px;padding-right:14px}.ws-page-title{font-size:1.4rem}.student-actions-row{grid-template-columns:1fr}.ws-command{padding-top:7vh}}.toast-stack{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:9999;max-width:min(360px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;text-align:left;padding:12px 16px;border-radius:10px;border:1px solid var(--line);background:#111111f5;color:var(--ink);font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:2px;box-shadow:0 12px 32px #00000073;animation:toast-in .16s ease-out}.toast strong{color:var(--gold);font-size:.85rem}.toast span{font-size:.9rem;line-height:1.35}.toast-success{border-color:#78c87866}.toast-success strong{color:#9be39b}.toast-danger{border-color:#dc50508c}.toast-danger strong{color:#ff9c9c}.toast-warn{border-color:#f5c4008c}.toast-info{border-color:var(--line)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.empty-state{padding:28px;border-radius:14px;border:1px dashed var(--line);background:#ffffff05;color:var(--ink);display:flex;flex-direction:column;gap:8px;align-items:flex-start}.empty-state strong{color:var(--gold);font-size:1rem}.empty-state p{margin:0;opacity:.75;font-size:.9rem}.tab-switch{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#ffffff05}.tab-switch button{background:transparent;color:var(--ink);border:none;padding:6px 14px;font-size:.85rem;cursor:pointer;opacity:.7}.tab-switch button.is-active{background:var(--gold);color:#1a1a1a;opacity:1;font-weight:600}.row-actions{display:inline-flex;gap:6px}.row-actions button{padding:4px 10px;font-size:.78rem;border-radius:6px}.metric-grid.four-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-tile{background:#ffffff08;border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.metric-tile span{font-size:.78rem;opacity:.7}.metric-tile strong{font-size:1.1rem;color:var(--gold)}.metric-tile strong.is-warning{color:#f0b400}.metric-tile strong.is-danger{color:#ff6b6b}.kpi-card{background:linear-gradient(135deg,#d4af3714,#0000)}.alert-row{position:relative;padding-left:14px}.alert-row:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:4px;border-radius:3px;background:#ffffff26}.alert-row.is-high:before{background:#ff6b6b}.alert-row.is-medium:before{background:#f0b400}.alert-row.is-low:before{background:#4ea1ff}.alert-row.is-info:before{background:#ffffff4d}@media (max-width: 720px){.metric-grid.four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}.attendance-shell{display:flex;flex-direction:column;gap:18px}.attendance-overview-card{background:linear-gradient(135deg,#5ed0d61f,#ffcc0014),var(--surface)}.attendance-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.attendance-kpi{border:1px solid rgba(255,204,0,.14);border-radius:12px;background:#00000038;padding:12px;display:grid;gap:4px}.attendance-kpi span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.attendance-kpi strong{font-size:1.3rem;color:var(--gold-soft)}.attendance-kpi small{font-size:.74rem;color:var(--ink-soft)}.attendance-kpi-note strong{color:#8ee9ff}.phase2-note{border:1px dashed rgba(255,204,0,.4);background:#ffcc000f;border-radius:12px;padding:12px 16px;color:var(--ink-soft);font-size:13px;line-height:1.45}.phase2-note strong{color:var(--gold)}.compliance-table{width:100%;border-collapse:collapse;font-size:13px}.compliance-table th,.compliance-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line)}.compliance-table th{font-weight:600;color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.05em}.compliance-table tbody tr:hover{background:#ffffff05}.compliance-pct{font-variant-numeric:tabular-nums;font-weight:600}.compliance-pct.is-good{color:#46c98b}.compliance-pct.is-warn{color:#fbbf24}.compliance-pct.is-bad{color:#ef4444}.program-view{display:flex;flex-direction:column;gap:18px}.workspace-grid.two-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}@media (max-width: 1100px){.workspace-grid.two-columns{grid-template-columns:1fr}}.color-picker{display:flex;gap:8px;align-items:center;padding:6px 0}.color-dot{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .15s,border-color .15s}.color-dot:hover{transform:scale(1.1)}.color-dot.is-active{border-color:var(--ink);box-shadow:0 0 0 2px var(--gold)}.weekly-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:16px}.weekly-col{display:flex;flex-direction:column;background:#ffffff05;border:1px solid var(--line);border-radius:10px;overflow:hidden;min-height:280px}.weekly-col-head{padding:8px 6px;text-align:center;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#00000040;border-bottom:1px solid var(--line)}.weekly-col-body{position:relative;flex:1;padding:4px}.weekly-slot{position:absolute;left:4px;right:4px;border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12px;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:2px;align-items:flex-start;text-align:left;transition:transform .15s,box-shadow .15s,filter .15s;overflow:hidden}.weekly-slot:hover{transform:translateY(-1px);filter:brightness(1.1);box-shadow:var(--shadow)}.weekly-slot.is-active{box-shadow:0 0 0 2px var(--gold),var(--shadow)}.weekly-slot strong{font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.weekly-slot span{font-size:11px;color:var(--ink-soft);font-variant-numeric:tabular-nums}.schedule-form{display:flex;flex-direction:column;gap:12px;padding:16px;background:#ffffff05;border:1px solid var(--line);border-radius:10px;margin:12px 0}.form-grid.four-columns{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:10px}@media (max-width: 720px){.form-grid.four-columns{grid-template-columns:1fr 1fr}}.form-end-action{display:flex;align-items:flex-end;justify-content:flex-end}.stack-list{display:flex;flex-direction:column;gap:6px}.stack-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;background:#ffffff05;border:1px solid var(--line);border-radius:8px;font-size:13px}.stack-row>div{display:flex;flex-direction:column;gap:2px}.stack-row strong{font-weight:600;color:var(--ink)}.stack-row span{font-size:12px;color:var(--ink-soft)}.enrollment-add{display:flex;gap:8px;margin:12px 0}.enrollment-add select{flex:1}.ghost-button.danger{border-color:#ef444466;color:#ef4444}.ghost-button.danger:hover{background:#ef444414;border-color:#ef444499}.ghost-button.small,.primary-button.small{padding:4px 10px;font-size:12px}.muted-sm{font-size:12px;color:var(--ink-soft);margin:4px 0 0}.section-label{text-transform:uppercase;font-size:10px;letter-spacing:.08em;color:var(--muted);margin:0 0 4px;font-weight:600}.group-create-form{margin:12px 0;padding:16px;background:#ffffff05;border:1px solid var(--line);border-radius:10px}@media (max-width: 1100px){.attendance-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 680px){.attendance-overview-grid{grid-template-columns:1fr}}.attendance-today{display:flex;flex-direction:column;gap:18px}.attendance-today-hero{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:linear-gradient(135deg,#ffcc0014,#ffcc0005);border:1px solid var(--line);border-radius:14px}.attendance-today-hero h2{margin:4px 0 0;font-size:22px;color:var(--ink)}.attendance-today-summary{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.attendance-today-summary strong{font-size:28px;color:var(--gold);font-variant-numeric:tabular-nums;line-height:1}.attendance-today-summary span{font-size:12px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em}.class-cards{display:flex;flex-direction:column;gap:12px}.class-card{--accent: var(--gold);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;overflow:hidden;transition:box-shadow .15s,transform .15s}.class-card:hover{box-shadow:var(--shadow)}.class-card.is-open{box-shadow:0 0 0 1px var(--accent),var(--shadow)}.class-card-head{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:18px;width:100%;padding:16px 20px;background:none;border:0;cursor:pointer;text-align:left;color:var(--ink)}.class-card-head:hover{background:#ffffff05}.class-card-time{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 0;border-radius:10px;background:#00000040;border:1px solid var(--line)}.class-card-time strong{font-size:20px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;line-height:1}.class-card-time span{font-size:11px;color:var(--ink-soft);margin-top:4px;font-variant-numeric:tabular-nums}.class-card-info h4{margin:0 0 4px;font-size:16px;color:var(--ink)}.class-card-info p{margin:0;font-size:12px;color:var(--ink-soft)}.class-card-cta{padding:8px 14px;background:#ffcc0014;border:1px solid rgba(255,204,0,.25);border-radius:999px;color:var(--gold);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.class-card.is-open .class-card-cta{background:#b20e101a;border-color:#b20e104d;color:#fb6b6d}.class-card-body{padding:0 20px 20px;border-top:1px solid var(--line)}.attendance-roster{display:flex;flex-direction:column;gap:8px;padding:16px 0}.roster-row{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:8px 12px;background:#ffffff05;border:1px solid var(--line);border-radius:10px}.roster-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#fc03,#ffcc000d);border:1px solid rgba(255,204,0,.3);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.roster-name{font-size:14px;font-weight:500;color:var(--ink)}.roster-controls{display:flex;gap:4px;flex-wrap:wrap}.status-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;background:#ffffff05;border:1px solid var(--line);border-radius:8px;color:var(--ink-soft);cursor:pointer;font-size:12px;font-weight:500;transition:background .15s,border-color .15s,color .15s}.status-btn:hover{background:#ffffff0d;color:var(--ink)}.status-btn-icon{font-size:13px;font-weight:700}.status-btn-label{font-size:11px}.status-btn.status-present.is-active{background:#46c98b26;border-color:#46c98b80;color:#46c98b}.status-btn.status-late.is-active{background:#fbbf2426;border-color:#fbbf2480;color:#fbbf24}.status-btn.status-absent.is-active{background:#ef444426;border-color:#ef444480;color:#ef4444}.status-btn.status-justified.is-active{background:#4ea1ff26;border-color:#4ea1ff80;color:#4ea1ff}.class-card-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;border-top:1px dashed var(--line)}.roster-counts{display:flex;gap:6px;flex-wrap:wrap}.count-chip{padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid var(--line)}.count-chip.count-present{background:#46c98b1a;border-color:#46c98b4d;color:#46c98b}.count-chip.count-late{background:#fbbf241a;border-color:#fbbf244d;color:#fbbf24}.count-chip.count-absent{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.count-chip.count-justified{background:#4ea1ff1a;border-color:#4ea1ff4d;color:#4ea1ff}.manual-attendance{background:var(--surface);border:1px dashed var(--line);border-radius:12px;padding:0 20px}.manual-attendance>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:14px 0;cursor:pointer;color:var(--ink-soft);font-size:13px;font-weight:500}.manual-attendance>summary::-webkit-details-marker{display:none}.manual-attendance-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#ffcc001a;color:var(--gold);font-weight:700}.manual-attendance[open]{border-style:solid;padding-bottom:16px}.manual-attendance[open]>summary{color:var(--ink);border-bottom:1px solid var(--line);margin-bottom:12px}.member-picker{display:flex;flex-direction:column;gap:10px;margin:8px 0 14px}.member-picker-search{display:flex;gap:8px}.member-picker-search input{flex:1}.member-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:#ffffff05;border:1px solid var(--line);border-radius:10px}.member-suggestion{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;background:#0003;border:1px solid var(--line);border-radius:999px;cursor:pointer;font-size:12px;color:var(--ink-soft);transition:background .15s,border-color .15s,color .15s}.member-suggestion:hover{background:#ffffff0d;color:var(--ink)}.member-suggestion.is-selected{background:#ffcc0026;border-color:#ffcc0080;color:var(--gold)}.member-suggestion-avatar{width:22px;height:22px;border-radius:50%;background:#ffcc002e;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--gold)}.member-suggestion-more{align-self:center;padding-left:6px}.member-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0;min-height:40px}.member-chip{display:inline-flex;align-items:center;gap:6px;padding:4px;background:#ffcc0014;border:1px solid rgba(255,204,0,.25);border-radius:999px;font-size:12px;color:var(--ink)}.member-chip-avatar{width:22px;height:22px;border-radius:50%;background:#ffcc0040;color:var(--gold);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.member-chip-name{padding:0 4px}.member-chip-remove{width:22px;height:22px;border-radius:50%;border:0;background:#b20e1026;color:#fb6b6d;font-size:14px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.member-chip-remove:hover{background:#b20e104d}@media (max-width: 720px){.class-card-head{grid-template-columns:70px 1fr;gap:12px}.class-card-cta{grid-column:1 / -1;justify-self:end}.roster-row{grid-template-columns:32px 1fr}.roster-controls{grid-column:1 / -1}}.group-rail{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 16px;border-bottom:1px dashed var(--line);margin-bottom:12px}.group-rail-chip{--accent: var(--gold);display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#ffffff05;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;color:var(--ink-soft);cursor:pointer;font-size:13px;transition:background .15s,color .15s,transform .15s}.group-rail-chip:hover{background:#ffffff0d;color:var(--ink);transform:translateY(-1px)}.group-rail-chip.is-active{background:#ffcc0014;color:var(--ink);box-shadow:0 0 0 1px var(--accent)}.group-rail-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.group-rail-name{font-weight:600}.group-rail-meta{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;padding-left:6px;border-left:1px solid var(--line)}:root{--display-font: "Palatino Linotype", "Book Antiqua", Palatino, serif}.login-shell-auth,.portal-frame{position:relative;z-index:1;max-width:1440px;margin:0 auto;padding:28px 24px 80px}.auth-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);gap:24px;align-items:stretch}.auth-story-panel,.auth-entry-panel,.portal-hero-v2,.portal-panel-v2,.portal-stat-card,.auth-story-card,.auth-demo-card,.family-member-card,.portal-highlight-card{background:linear-gradient(180deg,rgba(255,204,0,.05),transparent 24%),linear-gradient(180deg,rgba(255,255,255,.02),transparent 100%),var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow),inset 0 1px #ffffff08;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-story-panel,.auth-entry-panel{padding:30px}.auth-story-panel{display:grid;align-content:space-between;gap:22px;min-height:720px;background:radial-gradient(circle at top right,rgba(178,14,16,.26),transparent 30%),radial-gradient(circle at bottom left,rgba(255,204,0,.08),transparent 24%),linear-gradient(180deg,rgba(255,204,0,.05),transparent 24%),var(--surface-strong)}.auth-story-panel h1,.portal-hero-copy h1,.portal-panel-v2 h2{font-family:var(--display-font);letter-spacing:.02em}.auth-story-panel h1{margin:10px 0 0;font-size:clamp(3rem,5vw,5.2rem);line-height:.96;color:var(--gold-soft)}.auth-story-copy,.auth-form-copy,.portal-panel-head-v2 p,.portal-highlight-card p,.portal-stat-card small,.portal-belt-copy small{color:var(--ink-soft)}.auth-story-grid,.auth-demo-grid,.portal-stat-grid,.portal-highlight-grid,.progress-summary-list,.family-member-list,.portal-payment-list,.portal-body-v2,.portal-child-stack{display:grid;gap:14px}.auth-story-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-story-card{padding:18px}.auth-story-card strong{display:block;color:var(--white);font-size:.96rem;line-height:1.45}.auth-entry-panel{display:grid;gap:18px;align-content:start}.auth-entry-card{padding:0;background:transparent;border:none;box-shadow:none}.auth-demo-panel{display:grid;gap:14px}.auth-demo-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.auth-demo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-demo-card{padding:18px;text-align:left;color:var(--ink);display:grid;gap:7px;align-content:start}.auth-demo-card strong,.auth-demo-card span{display:block;overflow-wrap:anywhere}.auth-demo-card .section-label{margin-bottom:0}.auth-demo-card p{margin:2px 0 0;color:var(--ink-soft);font-size:.9rem}.portal-frame{display:grid;gap:22px}.portal-hero-v2,.portal-panel-v2{padding:26px 28px}.portal-hero-v2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:20px;background:radial-gradient(circle at top right,rgba(178,14,16,.22),transparent 28%),linear-gradient(180deg,rgba(255,204,0,.06),transparent 20%),var(--surface)}.portal-hero-main,.portal-hero-side,.portal-belt-card,.portal-panel-head-v2,.portal-panel-actions-v2{display:grid;gap:16px}.portal-hero-copy h1{margin:0;font-size:clamp(2.5rem,4vw,4.4rem);color:var(--gold-soft);line-height:.95}.portal-hero-copy p{margin:0;max-width:62ch;color:var(--ink-soft)}.portal-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-stat-card{padding:16px;display:grid;gap:5px}.portal-stat-card span{color:var(--muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.portal-stat-card strong{color:var(--gold-soft);font-size:1.5rem}.portal-stat-card.is-soft strong{color:#99e3ca}.portal-logout{justify-self:end}.portal-body-v2{grid-template-columns:minmax(300px,340px) minmax(0,1fr);align-items:start}.portal-sidebar-v2{display:grid;gap:18px;position:sticky;top:22px}.portal-main-v2{display:grid;gap:18px;min-width:0}.portal-panel-v2{display:grid;gap:16px}.portal-panel-head-v2{grid-template-columns:minmax(0,1fr) auto;align-items:start}.portal-panel-head-v2 h2{margin:0;font-size:clamp(1.45rem,2vw,2.2rem);color:var(--gold-soft)}.portal-belt-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:18px;border-radius:22px;background:#ffffff08;border:1px solid rgba(255,204,0,.12)}.portal-belt-copy strong{display:inline-flex;margin-bottom:8px;padding:8px 12px;border-radius:999px;background:#ffcc001a;color:var(--gold-soft)}.portal-belt-copy span,.progress-summary-item span,.family-member-card span{display:block}.portal-belt-image{width:104px;height:104px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(245,196,0,.15))}.portal-belt-image.compact{width:72px;height:72px}.progress-summary-list{grid-template-columns:1fr}.progress-summary-item{padding:14px 16px;border-radius:18px;background:#ffffff08;border:1px solid rgba(255,204,0,.12)}.progress-summary-item strong{display:block;margin-top:6px;color:var(--white)}.portal-roadmap{margin-top:4px}.portal-highlight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-highlight-card{padding:18px}.portal-highlight-card span{display:block;margin-bottom:8px;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.portal-highlight-card strong{color:var(--gold-soft);font-size:1.3rem}.portal-highlight-card.is-selected{border-color:#ffcc004d;background:linear-gradient(135deg,#ffcc001f,#b20e1024),var(--surface)}.portal-payment-list{grid-template-columns:1fr}.portal-payment-card{display:flex;justify-content:space-between;gap:16px;align-items:start;padding:16px 18px;border-radius:20px;background:#ffffff08;border:1px solid rgba(255,204,0,.12)}.portal-payment-card strong,.portal-payment-card span,.portal-payment-card small{display:block}.portal-payment-card strong{color:var(--gold-soft)}.portal-payment-card span,.portal-payment-card small{color:var(--ink-soft)}.portal-tabs{margin-top:0}.portal-technique-grid{gap:14px}.portal-search{min-width:240px}.portal-notice{padding:18px}.family-member-list{grid-template-columns:1fr}.family-member-card{width:100%;padding:16px;text-align:left;color:var(--ink);cursor:pointer}.family-member-card.is-active{border-color:#ffcc004d;background:linear-gradient(135deg,#ffcc001f,#b20e1024),var(--surface)}.family-member-card small{display:block;margin-top:8px;color:var(--ink-soft)}@media (max-width: 1180px){.auth-stage,.portal-hero-v2,.portal-body-v2{grid-template-columns:1fr}.portal-sidebar-v2{position:static}}@media (max-width: 860px){.auth-story-grid,.auth-demo-grid,.portal-stat-grid,.portal-highlight-grid,.portal-panel-head-v2,.portal-belt-card{grid-template-columns:1fr}.portal-logout{justify-self:start}}.finance-shell{display:flex;flex-direction:column;gap:18px}.finance-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.9fr);gap:18px;align-items:start}.finance-hero-copy{margin:10px 0 0;max-width:58ch}.finance-hero-stats,.finance-step-grid,.finance-preview-grid,.finance-plan-grid,.finance-assignment-board,.finance-history-list,.finance-main-stack,.finance-callout-grid,.finance-tutor-list,.finance-student-grid,.finance-assignment-meta{display:grid;gap:12px}.finance-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-stat,.finance-step-card,.finance-assignment-card,.finance-history-card,.finance-plan-card,.finance-inline-summary,.finance-form-section,.finance-tutor-row,.finance-student-card{border-radius:20px;border:1px solid rgba(255,204,0,.12);background:#ffffff08}.finance-stat{padding:16px;display:grid;gap:6px}.finance-stat span{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.finance-stat strong{font-size:1.35rem;color:var(--gold-soft)}.finance-stat--warn strong{color:#f7bf41}.finance-stat--ok strong{color:#8be3b1}.finance-grid{display:grid;gap:18px}.finance-grid--sidebar{grid-template-columns:minmax(280px,320px) minmax(0,1fr);align-items:start}.finance-sidebar-card{position:sticky;top:20px}.finance-search{margin-bottom:12px}.finance-tutor-row{width:100%;padding:14px 16px;text-align:left;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:start}.finance-tutor-row strong,.finance-tutor-row span,.finance-row-side small{display:block}.finance-tutor-row span,.finance-row-side small{color:var(--ink-soft)}.finance-row-side{display:grid;gap:8px;justify-items:end}.finance-tutor-row.is-active,.finance-tutor-row:hover,.finance-student-card:hover{border-color:#ffcc004d;background:linear-gradient(135deg,#ffcc001f,#b20e101f),#ffffff08}.finance-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-step-card{padding:18px}.finance-step-card p,.finance-inline-note,.finance-inline-summary span,.finance-section-head p,.finance-detail-line span{color:var(--ink-soft)}.finance-step-number,.finance-step-index{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gold-soft),var(--gold));color:#231400;font-weight:700;margin-bottom:12px}.finance-assignment-card,.finance-history-card,.finance-plan-card,.finance-form-section,.finance-inline-summary{padding:18px}.finance-assignment-head,.finance-section-head,.finance-action-strip{display:flex;justify-content:space-between;gap:16px;align-items:start}.finance-assignment-head strong,.finance-section-head strong,.finance-inline-summary strong,.finance-detail-line strong{color:var(--ink)}.finance-detail-line,.finance-inline-summary{display:grid;gap:4px}.finance-callout{margin-top:16px;padding:16px 18px;border-radius:20px;border:1px solid rgba(255,204,0,.12);background:#ffffff08}.finance-callout--warn{border-color:#fbbf2447;background:#fbbf2414}.finance-callout--ok{border-color:#46c98b47;background:#46c98b14}.finance-callout--soft{background:#ffcc000f}.finance-concept-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.concept-pill{padding:6px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text-secondary, #aaa);font-size:.8rem;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.concept-pill:hover{border-color:#fc06;color:var(--text, #fff)}.concept-pill.is-active{border-color:#fc0;background:#ffcc0024;color:#fc0}.finance-history-badge{font-size:.72rem;padding:3px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.12);color:var(--text-secondary, #888);white-space:nowrap}.is-warn{color:#fbbf24}.metric-tile.is-danger strong{color:#ef4444}.billing-enrollment-notice{padding:14px 16px;border-radius:12px;border:1px solid rgba(251,191,36,.4);background:#fbbf2414;display:flex;flex-direction:column;gap:8px}.billing-enrollment-notice strong{color:#fbbf24;font-size:.88rem}.billing-enrollment-notice p{margin:0;font-size:.82rem;color:var(--ink-soft, #c8bba0);line-height:1.45}.billing-enrollment-notice .secondary-button{align-self:flex-start;padding:7px 14px;font-size:.8rem}.status-pending-enrollment{color:#fbbf24;border-color:#fbbf244d;background:#fbbf241a}.finance-list{margin:10px 0 0;padding-left:18px;display:grid;gap:6px}.finance-student-grid,.finance-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-student-card{padding:14px;display:grid;grid-template-columns:18px 1fr;gap:12px;align-items:start}.finance-student-card input{margin-top:3px;accent-color:var(--gold)}.finance-student-card.is-selected{border-color:#ffcc005c;background:#ffcc0014}.finance-student-card.is-blocked{opacity:.55}.finance-form-section{display:grid;gap:14px}.finance-action-strip{margin-top:18px;align-items:end}.finance-action-reason{flex:1}.finance-plan-meta{display:grid;gap:10px;margin:12px 0}.finance-main-stack{min-width:0}.billing-shell{display:flex;flex-direction:column;gap:16px;min-height:0}.billing-stats-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.billing-stat{padding:14px 18px;border-radius:14px;background:#ffffff09;border:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;gap:6px}.billing-stat span{font-size:.72rem;color:var(--ink-soft, #aaa);text-transform:uppercase;letter-spacing:.04em}.billing-stat strong{font-size:1.05rem;font-weight:700;color:var(--ink, #f4ead0)}.billing-stat--alert strong{color:#fbbf24}.billing-body{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px;align-items:start;min-height:0}.billing-sidebar{position:sticky;top:20px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 140px);overflow:hidden}.billing-sidebar-head{display:flex;justify-content:space-between;align-items:center}.billing-sidebar-head strong{font-size:.85rem;color:var(--ink-soft, #aaa)}.billing-account-list{display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1}.billing-account-row{width:100%;padding:11px 14px;border-radius:10px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;display:flex;justify-content:space-between;gap:8px;align-items:center;transition:background .13s,border-color .13s;color:var(--ink, #f4ead0)}.billing-account-row:hover{background:#ffffff0a;border-color:#ffffff14}.billing-account-row.is-active{background:#ffcc0017;border-color:#ffcc004d}.billing-account-row.has-debt .billing-account-row-name strong{color:var(--ink, #f4ead0)}.billing-account-row-name{display:flex;flex-direction:column;gap:2px;min-width:0}.billing-account-row-name strong{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink, #f4ead0)}.billing-account-row-name span{font-size:.72rem;color:var(--ink-soft, #c8bba0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-account-row-amounts{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.debt-amount{font-size:.82rem;font-weight:700;color:#fbbf24}.ok-badge{font-size:.7rem;color:#4ade80;font-weight:600}.billing-main{display:flex;flex-direction:column;gap:14px;min-width:0}.billing-empty-state{min-height:260px;display:flex;align-items:center;justify-content:center}.billing-snapshot{display:flex;flex-direction:column;gap:16px}.billing-snapshot-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.billing-snapshot-header h3{margin:2px 0 4px}.billing-members{font-size:.8rem;color:var(--ink-soft, #aaa)}.billing-snapshot-badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.billing-mode-tag{font-size:.7rem;padding:2px 8px;border-radius:10px;border:1px solid rgba(255,255,255,.1);color:var(--ink-soft, #aaa)}.billing-balance-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#ffffff0f;border-radius:12px;overflow:hidden}.billing-balance-cell{padding:14px 16px;background:#ffffff05;display:flex;flex-direction:column;gap:4px}.billing-balance-cell--total{background:#ffcc000f}.billing-balance-cell span{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft, #aaa)}.billing-balance-cell strong{font-size:1.05rem;font-weight:700}.billing-balance-cell small{font-size:.7rem}.billing-state-note{font-size:.82rem;line-height:1.5;padding:10px 14px;border-radius:10px;background:#ffffff08;border-left:3px solid rgba(255,204,0,.3)}.billing-state-note strong{margin-right:6px}.billing-tab-card{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}.billing-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.07)}.billing-tab{padding:12px 20px;font-size:.82rem;font-weight:500;color:var(--ink-soft, #aaa);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .13s,border-color .13s;margin-bottom:-1px}.billing-tab:hover{color:var(--ink, #f4ead0)}.billing-tab.is-active{color:#fc0;border-bottom-color:#fc0}.billing-tab--danger.is-active{color:#ef4444;border-bottom-color:#ef4444}.billing-pay-form{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.billing-concept-row,.billing-period-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.billing-concept-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft, #aaa);white-space:nowrap;min-width:56px}.billing-concept-hint{font-size:.8rem;color:var(--ink-soft, #aaa);padding:8px 12px;border-radius:8px;background:#ffffff08}.billing-concept-hint.is-warn{color:#fbbf24;background:#fbbf2412}.billing-fields-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.billing-history{padding:16px 24px;display:flex;flex-direction:column;gap:10px}.billing-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 14px;border-radius:10px;background:#ffffff06;border:1px solid rgba(255,255,255,.05)}.billing-history-left{display:flex;flex-direction:column;gap:3px}.billing-history-left strong{font-size:.95rem}.billing-history-left span{font-size:.78rem;color:var(--ink-soft, #aaa)}.billing-history-left small{font-size:.72rem;color:var(--ink-soft, #aaa)}.billing-history-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:.78rem;color:var(--ink-soft, #aaa)}.billing-void-btn{margin-top:2px;padding:3px 9px;border-radius:6px;border:1px solid rgba(239,68,68,.35);background:#ef444412;color:#ef4444;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .13s,border-color .13s}.billing-void-btn:hover{background:#ef444429;border-color:#ef44448c}.billing-void-btn:disabled{opacity:.5;cursor:wait}.billing-history-row.is-voided{opacity:.45}.billing-history-note{grid-column:1 / -1;font-size:.75rem;color:var(--ink-soft, #aaa);font-style:italic;margin:0;padding-top:4px;border-top:1px solid rgba(255,255,255,.05)}.billing-details-grid{padding:20px 24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.billing-actions-area{padding:20px 24px;display:flex;flex-direction:column;gap:14px}.billing-actions-warning{font-size:.8rem;color:var(--ink-soft, #aaa);padding:10px 14px;border-radius:8px;background:#ef444412;border-left:3px solid rgba(239,68,68,.4);line-height:1.5}.billing-actions-buttons{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 1200px){.billing-stats-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.billing-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.billing-body{grid-template-columns:1fr}.billing-sidebar{position:static;max-height:320px}.billing-balance-row,.billing-stats-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-fields-row{grid-template-columns:1fr}}@media (max-width: 600px){.billing-stats-bar,.billing-balance-row,.billing-details-grid{grid-template-columns:1fr 1fr}}@media (max-width: 1180px){.finance-hero,.finance-grid--sidebar{grid-template-columns:1fr}.finance-sidebar-card{position:static}}@media (max-width: 760px){.finance-hero-stats,.finance-step-grid,.finance-student-grid,.finance-plan-grid{grid-template-columns:1fr}.finance-assignment-head,.finance-section-head,.finance-action-strip,.finance-tutor-row{flex-direction:column}}:root{--bg: #090b0d;--bg-soft: #11161a;--surface: rgba(18, 22, 25, .9);--surface-strong: rgba(24, 28, 32, .96);--surface-soft: rgba(255, 204, 0, .055);--ink: #f4ead0;--ink-soft: #d7ccb2;--muted: #9f9888;--line: rgba(244, 214, 146, .15);--gold: #e8b82e;--gold-soft: #f3d36c;--red: #b73a32;--red-bright: #dd5148;--white: #fff8e6;--success: #7ed9a8;--info: #89c7ff;--warning: #f3c35f;--shadow: 0 18px 48px rgba(0, 0, 0, .34);--glow: 0 0 0 1px rgba(243, 211, 108, .22), 0 16px 38px rgba(0, 0, 0, .28);--radius-card: 18px;--radius-control: 12px;--page-pad: clamp(14px, 2.3vw, 32px)}html{font-size:16px}body{background:linear-gradient(180deg,#0b0d0f,#111417 42%,#08090b);line-height:1.5}body:before,body:after{display:none}button,input,textarea,select{min-width:0}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid rgba(137,199,255,.86);outline-offset:3px}.app-shell,.login-shell,.portal-shell,.login-shell-auth,.portal-frame{width:min(100%,1440px);padding-left:var(--page-pad);padding-right:var(--page-pad)}.primary-button,.secondary-button,.ghost-button,.danger-button,.tab-button,.panel-sub-tab,.ws-command-trigger,.ws-menu-toggle,.ws-recent-chip,.period-pill{min-height:42px;border-radius:var(--radius-control);font-weight:700}.primary-button{border-color:#f3d36c57;background:linear-gradient(135deg,#f2d36f,#d69a20);color:#211603}.secondary-button,.ghost-button,.tab-button,.panel-sub-tab,.ws-command-trigger{background:#ffffff09}.danger-button,.ghost-button.danger,.ghost-button.danger-button{border-color:#dd51485c;color:#ffb0aa}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.danger-button:hover,.tab-button:hover,.panel-sub-tab:hover,.ws-command-trigger:hover,.entity-row:hover,.quick-action-card:hover,.finance-tutor-row:hover,.finance-student-card:hover,.auth-demo-card:hover,.family-member-card:hover{transform:translateY(-1px);box-shadow:var(--glow)}.login-hero,.portal-top,.current-belt-card,.product-card,.catalog-card,.guardian-card,.stat-card,.demo-card,.roadmap-card,.category-card,.workspace-card,.metric-card,.workspace-drawer,.auth-story-panel,.auth-entry-panel,.portal-hero-v2,.portal-panel-v2,.portal-stat-card,.auth-story-card,.auth-demo-card,.family-member-card,.portal-highlight-card,.finance-stat,.finance-step-card,.finance-assignment-card,.finance-history-card,.finance-plan-card,.finance-inline-summary,.finance-form-section,.finance-tutor-row,.finance-student-card,.info-tile,.stack-row,.alert-row,.quick-action-card,.entity-row,.summary-kpi,.metric-tile,.workspace-callout,.drawer-note{border-radius:var(--radius-card);border-color:var(--line);background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 110px),#121619db;box-shadow:0 1px #ffffff09,var(--shadow)}.workspace-card,.auth-story-panel,.auth-entry-panel,.portal-hero-v2,.portal-panel-v2{padding:clamp(18px,2vw,26px)}.section-label,.eyebrow,.brand-kicker{letter-spacing:.14em;color:#b8ad95}.brand-copy strong,.workspace-side-copy h1,.workspace-header h2,.ws-page-title,.auth-story-panel h1,.portal-hero-copy h1,.portal-panel-head-v2 h2,.finance-stat strong{letter-spacing:0}.ws-shell{grid-template-columns:minmax(236px,260px) minmax(0,1fr)}.ws-sidebar{background:#0b0e10f5;border-right-color:#f4d6921f}.ws-nav{padding:12px;gap:6px}.ws-nav-group-btn,.ws-nav-group-header,.ws-nav-item{min-height:44px;border-radius:12px}.ws-nav-item-desc{color:#a9a08c}.ws-topbar{padding:12px var(--page-pad);background:#090b0deb}.ws-topbar-left,.ws-topbar-right{min-width:0}.ws-page-head,.ws-metrics,.ws-content{padding-left:var(--page-pad);padding-right:var(--page-pad)}.ws-content{padding-bottom:clamp(36px,5vw,64px)}.ws-page-title{text-transform:none;font-size:clamp(1.65rem,2vw,2.35rem)}.ws-module-hero{grid-template-columns:minmax(0,.7fr) minmax(260px,1fr);align-items:center;padding:16px 18px;background:#ffffff09}.ws-module-flow{justify-content:flex-end}.ws-module-step,.tag-pill,.status-pill,.period-pill,.role-pill{border-radius:999px;white-space:normal}.ws-metrics,.metric-grid.four-columns,.attendance-overview-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.workspace-grid,.quick-actions-grid,.highlights-grid,.detail-grid,.summary-kpi-grid,.finance-hero-stats,.finance-step-grid,.finance-student-grid,.finance-plan-grid,.portal-stat-grid,.portal-highlight-grid,.auth-story-grid,.auth-demo-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}.ws-split-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr);border-radius:var(--radius-card);height:min(760px,calc(100vh - 220px))}.ws-split-detail{padding:clamp(16px,2vw,24px)}.entity-row,.finance-tutor-row,.stack-row,.table-row,.portal-payment-card,.class-card-head{min-width:0}.entity-row,.finance-tutor-row,.stack-row,.portal-payment-card{align-items:flex-start}.entity-row>div,.finance-tutor-row>div,.stack-row>div,.portal-payment-card>div{min-width:0}.entity-row strong,.entity-row span,.stack-row strong,.stack-row span,.finance-tutor-row strong,.finance-tutor-row span,.portal-payment-card strong,.portal-payment-card span,.portal-payment-card small,.table-row strong,.table-row span{overflow-wrap:anywhere}.table-like{overflow-x:auto;padding-bottom:4px}.table-row{min-width:min(760px,100%)}.form-grid,.form-grid.four-columns,.content-layout,.admin-split,.users-layout,.finance-hero,.finance-grid--sidebar,.portal-hero-v2,.portal-body-v2,.auth-stage{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.form-actions,.finance-action-strip,.content-actions-row,.student-actions-row,.auth-demo-head,.card-head,.finance-assignment-head,.finance-section-head,.class-card-footer{flex-wrap:wrap}.form-actions>*,.finance-action-strip .form-actions,.content-actions-row>*,.student-actions-row>*{min-width:min(100%,180px)}.ws-content input:not([type=checkbox]),.ws-content select,.ws-content textarea,.workspace-drawer input:not([type=checkbox]),.workspace-drawer select,.workspace-drawer textarea,.login-card input,.product-card input,.product-card select,.product-card textarea,.inline-form select,.search-input{min-height:44px;border-radius:var(--radius-control);background-color:#03050794}.finance-hero{align-items:stretch}.finance-sidebar-card{top:76px}.finance-tutor-list,.entity-list,.stack-list,.finance-history-list,.finance-assignment-board{gap:10px}.finance-row-side,.entity-row-end,.stack-row-end{min-width:fit-content}.finance-callout--warn,.finance-stat--warn,.metric-tile strong.is-warning,.status-pending,.status-overdue,.status-active-debtor{color:var(--warning)}.finance-callout--ok,.finance-stat--ok,.status-active,.status-paid,.status-confirmed,.status-present{color:var(--success)}.status-review,.status-advanced,.status-justified{color:var(--info)}.auth-stage{min-height:calc(100vh - 56px)}.auth-story-panel{min-height:auto;align-content:center}.auth-entry-panel{align-self:center}.portal-frame{gap:clamp(16px,2vw,24px)}.portal-sidebar-v2{top:80px}.portal-panel-actions-v2{justify-items:end}.weekly-grid{grid-template-columns:repeat(7,minmax(132px,1fr));overflow-x:auto;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:rgba(243,211,108,.28) transparent}.weekly-slot{min-height:42px}.member-picker-search,.inline-form{flex-wrap:wrap}.member-picker-search input,.inline-form select,.inline-form input{min-width:min(100%,220px)}.workspace-drawer{width:min(100vw - 24px,680px)}@media (max-width: 1100px){.ws-module-hero{grid-template-columns:1fr}.ws-module-flow{justify-content:flex-start}.finance-sidebar-card,.portal-sidebar-v2,.users-sidebar{position:static}}@media (max-width: 900px){.ws-shell{grid-template-columns:1fr}.ws-sidebar{width:min(84vw,300px)}.ws-topbar{align-items:stretch}.ws-topbar-left,.ws-topbar-right{width:100%}.ws-breadcrumb{min-width:0;flex:1}.ws-breadcrumb-group,.ws-breadcrumb-current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-command-trigger{margin-left:0}.ws-split-layout{grid-template-columns:1fr;grid-template-rows:minmax(240px,36vh) auto;height:auto}.ws-split-detail{overflow:visible}}@media (max-width: 680px){:root{--page-pad: 14px}.login-shell-auth,.portal-frame{padding-top:14px;padding-bottom:44px}.ws-topbar{position:sticky;padding-top:10px;padding-bottom:10px}.ws-topbar-left{gap:10px}.ws-command-trigger span,.ws-command-trigger kbd,.ws-breadcrumb-group,.ws-breadcrumb-sep{display:none}.ws-command-trigger:after{content:"Acciones"}.ws-page-head{padding-top:18px}.ws-metrics{grid-template-columns:1fr}.panel-sub-tabs{overflow-x:auto;padding-bottom:8px;margin-bottom:16px;scrollbar-width:none}.panel-sub-tabs::-webkit-scrollbar{display:none}.panel-sub-tab{flex:0 0 auto;border-radius:999px;border:1px solid rgba(255,204,0,.14);bottom:0}.panel-sub-tab.is-active{border-color:#f3d36c57}.card-head,.finance-assignment-head,.finance-section-head,.finance-action-strip,.portal-payment-card,.auth-demo-head,.class-card-footer{display:grid;grid-template-columns:1fr}.form-actions,.finance-action-strip .form-actions,.content-actions-row,.student-actions-row{display:grid;grid-template-columns:1fr;width:100%}.form-actions>*,.finance-action-strip .form-actions>*,.content-actions-row>*,.student-actions-row>*{width:100%}.portal-hero-v2,.portal-panel-v2,.workspace-card,.auth-story-panel,.auth-entry-panel{padding:16px}.auth-entry-panel{order:-1}.auth-story-panel{gap:16px}.auth-story-panel h1,.portal-hero-copy h1{font-size:clamp(2.1rem,13vw,3rem);line-height:1}.portal-belt-image{width:82px;height:82px}.roster-row,.class-card-head{grid-template-columns:36px minmax(0,1fr)}.roster-controls,.class-card-cta{grid-column:1 / -1}.workspace-drawer{width:calc(100vw - 16px)}}@media (max-width: 420px){.ws-page-title{font-size:1.45rem}.metric-tile,.finance-stat,.portal-stat-card,.summary-kpi{padding:12px}.brand-mark{gap:10px}.brand-mark.is-compact .brand-seal{width:42px;height:42px}.brand-mark.is-compact .brand-copy strong{font-size:1.2rem}}.commercial-summary,.store-line-item,.store-total-pill{border-radius:var(--radius-card);border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 100%),#ffffff09}.commercial-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.95fr);gap:16px;align-items:center;padding:16px;margin-bottom:16px}.commercial-summary.compact{grid-template-columns:1fr;margin-bottom:0}.commercial-summary strong,.store-line-summary strong,.store-total-pill strong{color:var(--gold-soft)}.commercial-summary p,.store-line-summary small,.plan-card small{margin:6px 0 0;color:var(--ink-soft)}.commercial-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.commercial-summary-grid>div{padding:12px;border-radius:14px;border:1px solid rgba(255,204,0,.11);background:#00000029}.commercial-summary-grid span,.store-total-pill span,.store-line-summary span{display:block;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.commercial-risk-high{border-color:#dd514857;background:linear-gradient(135deg,#dd51481f,#ffffff08),#ffffff09}.commercial-risk-medium{border-color:#f3c35f52;background:linear-gradient(135deg,#f3c35f1a,#ffffff08),#ffffff09}.commercial-risk-ok{border-color:#7ed9a847}.store-shell{display:grid;gap:18px}.store-main-grid{align-items:start}.store-sale-card{position:sticky;top:76px}.store-line-item{display:grid;gap:12px;padding:14px}.store-line-item.has-warning{border-color:#dd514857}.store-line-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.store-line-summary small{flex-basis:100%}.store-total-pill{min-height:42px;display:inline-flex;align-items:center;gap:12px;padding:8px 14px;margin-left:auto}.store-product-grid .plan-card{display:grid;gap:6px}.status-out-of-stock{color:#ff9b92}.status-reserved{color:var(--info)}@media (max-width: 1100px){.store-sale-card{position:static}}@media (max-width: 680px){.commercial-summary,.commercial-summary-grid{grid-template-columns:1fr}.store-line-summary,.store-total-pill{width:100%}}.public-site{position:relative;z-index:1;width:min(100%,1180px);margin:0 auto;padding:22px var(--page-pad) 72px}.public-nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:18px}.public-nav nav,.dojo-hero-actions,.dojo-hero-note{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.public-nav nav a{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;color:var(--ink-soft);font-weight:700}.public-nav nav a:hover{color:var(--white);background:#ffffff0b}.public-nav .nav-access{border:1px solid rgba(243,211,108,.28);color:var(--gold-soft)}.dojo-hero{min-height:620px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr);gap:40px;align-items:center;padding:46px 0 58px;border-bottom:1px solid rgba(244,214,146,.12)}.dojo-hero-copy{display:grid;gap:22px;align-content:center}.dojo-hero h1,.dojo-section h2,.dojo-platform-strip h2,.auth-login-brand h1{margin:0;font-family:var(--display-font);letter-spacing:0;color:var(--white)}.dojo-hero h1{max-width:10ch;font-size:5rem;line-height:.92}.dojo-hero p,.dojo-section p,.dojo-pillar p,.dojo-class-row span,.dojo-platform-strip p,.auth-login-brand p{color:var(--ink-soft)}.dojo-hero-copy>p:not(.section-label){max-width:650px;margin:0;font-size:1.18rem}.dojo-hero-visual{position:relative;min-height:480px;display:grid;place-items:center;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 38%),repeating-linear-gradient(90deg,rgba(243,211,108,.07) 0 1px,transparent 1px 84px),linear-gradient(180deg,#4a14127a,#0c0e10f5);border:1px solid rgba(244,214,146,.16);box-shadow:var(--shadow)}.dojo-hero-visual:before{content:"";position:absolute;top:18px;right:18px;bottom:18px;left:18px;border:1px solid rgba(244,214,146,.13);border-radius:22px}.dojo-emblem-frame{position:relative;z-index:1;width:min(72%,320px);aspect-ratio:1;display:grid;place-items:center;padding:18px;border-radius:50%;background:#04050694;border:1px solid rgba(243,211,108,.26);box-shadow:0 18px 48px #00000061}.dojo-emblem-frame img{width:100%;height:100%;object-fit:contain;border-radius:50%}.dojo-hero-note{position:absolute;z-index:1;left:24px;right:24px;bottom:24px;justify-content:center}.dojo-hero-note span{min-height:34px;display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#06080ab8;border:1px solid rgba(244,214,146,.14);color:var(--white);font-weight:700}.dojo-section{display:grid;gap:26px;padding:62px 0 0}.dojo-intro{grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);align-items:start}.dojo-section h2,.dojo-platform-strip h2{font-size:2.55rem;line-height:1.02}.dojo-section p{margin:0;font-size:1.05rem}.dojo-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:28px}.dojo-pillar{min-height:230px;display:grid;align-content:start;gap:14px;padding:22px;border-radius:var(--radius-card);border:1px solid rgba(244,214,146,.13);background:#ffffff09}.dojo-pillar>span{width:38px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--red-bright),var(--gold-soft))}.dojo-pillar h3,.dojo-class-row strong{margin:0;color:var(--white)}.dojo-pillar p{margin:0}.dojo-classes{grid-template-columns:minmax(0,.78fr) minmax(360px,1fr);align-items:start}.dojo-section-head,.dojo-class-list{display:grid;gap:10px}.dojo-class-row{display:grid;grid-template-columns:minmax(170px,.44fr) minmax(0,1fr);gap:16px;align-items:center;min-height:76px;padding:16px 18px;border-radius:var(--radius-card);border:1px solid rgba(244,214,146,.13);background:#0a0c0ebd}.dojo-platform-strip{margin-top:64px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:28px;border-radius:24px;border:1px solid rgba(243,211,108,.22);background:linear-gradient(90deg,#b73a3229,#f3d36c14),#ffffff09}.dojo-platform-strip p{margin:10px 0 0}.login-shell-clean{width:min(100%,1120px);min-height:100vh;display:grid;align-items:center;padding-top:28px}.auth-login-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,.72fr);gap:22px;align-items:stretch}.auth-login-brand,.auth-entry-panel-clean{border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 140px),#0a0c0ee0;box-shadow:var(--shadow)}.auth-login-brand{min-height:480px;display:grid;align-content:center;gap:20px;padding:32px}.auth-login-brand h1{max-width:10ch;font-size:4rem;line-height:.96}.auth-login-brand p{max-width:460px;margin:0;font-size:1.03rem}.auth-back-link{width:fit-content}.auth-entry-panel-clean{display:grid;align-content:center;padding:30px}.auth-entry-panel-clean .login-card{gap:16px;border:0}.auth-entry-panel-clean h2{font-size:2rem}.auth-entry-panel-clean .primary-button{margin-top:4px}.auth-inline-error{margin:0;border-radius:12px}@media (max-width: 920px){.public-nav{align-items:flex-start;flex-direction:column}.dojo-hero,.dojo-intro,.dojo-classes,.auth-login-layout,.dojo-platform-strip{grid-template-columns:1fr}.dojo-hero{min-height:auto;padding-top:30px}.dojo-hero h1{font-size:3.45rem}.dojo-hero-visual{min-height:380px}.dojo-pillars{grid-template-columns:1fr}.auth-login-brand{min-height:auto}}@media (max-width: 560px){.public-site{padding-top:14px}.public-nav nav{width:100%}.public-nav nav a{flex:1 1 auto}.dojo-hero h1,.auth-login-brand h1{font-size:2.75rem}.dojo-section h2,.dojo-platform-strip h2{font-size:2rem}.dojo-hero-actions,.dojo-platform-strip{display:grid;grid-template-columns:1fr}.dojo-class-row{grid-template-columns:1fr;gap:6px}.auth-login-brand,.auth-entry-panel-clean,.dojo-platform-strip{padding:18px}}
