:root{--portal-purple:#7828c8;--portal-purple-2:#7c3aed;--portal-purple-deep:#5b21b6;--portal-bg:#f4f0fb;--portal-bg-2:#faf8ff;--portal-ink:#0f172a;--portal-muted:#64748b;--portal-border:#e8e5f2;--portal-sheet-shadow:0 14px 40px #4c1d9514;color:var(--portal-ink);background:linear-gradient(180deg, var(--portal-bg) 0%, var(--portal-bg-2) 45%, #f8fafc 100%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.45}*{box-sizing:border-box}body{background:0 0;min-height:100vh;margin:0}#root{width:100%;min-height:100vh}.portal-shell{background:#f5f3ff;flex-direction:row;align-items:stretch;width:100%;max-width:100vw;height:100vh;min-height:100vh;display:flex;overflow:hidden}.portal-sidebar{color:#fff;z-index:30;background:radial-gradient(120% 70% at 0 100%,#a78bfa38,#0000 55%),linear-gradient(#4c1d95 0%,#5b21b6 42%,#6d28d9 100%);flex-direction:column;flex:0 0 248px;align-self:flex-start;gap:1rem;width:248px;max-width:248px;height:100vh;padding:1.15rem .95rem 1rem;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:10px 0 30px #4c1d9529}.portal-brand{border-bottom:1px solid #ffffff24;align-items:center;gap:.7rem;padding:.2rem .4rem .95rem;display:flex}.portal-brand-logo{object-fit:contain;background:#ffffff24;border-radius:.5rem;flex-shrink:0;width:2.2rem;height:2.2rem}.portal-brand-copy{gap:.08rem;min-width:0;line-height:1.15;display:grid}.portal-brand-eyebrow{letter-spacing:.12em;text-transform:uppercase;opacity:.8;font-size:.62rem;font-weight:700}.portal-brand-title{letter-spacing:-.01em;font-size:.98rem;font-weight:800}.portal-nav{flex-direction:column;flex:auto;gap:.35rem;min-height:0;display:flex}.portal-nav-link{color:#ffffffd1;border:1px solid #0000;border-radius:.9rem;align-items:center;gap:.7rem;min-height:2.55rem;padding:.55rem .85rem;font-size:.92rem;font-weight:650;text-decoration:none;transition:background .15s,color .15s;display:flex}.portal-nav-icon{opacity:.95;justify-content:center;width:1.25rem;display:inline-flex}.portal-nav-link:hover{color:#fff;background:#ffffff1a}.portal-nav-link.active{color:#fff;background:#ffffff2e;box-shadow:inset 0 0 0 1px #ffffff14}.portal-nav-group{flex-direction:column;gap:.2rem;display:flex}.portal-nav-parent{cursor:pointer;width:100%;font:inherit;text-align:left;background:0 0}.portal-nav-label{flex:auto}.portal-nav-chevron{opacity:.75;flex:none;transition:transform .15s}.portal-nav-group.open .portal-nav-chevron{transform:rotate(180deg)}.portal-nav-sub{border-left:1px solid #ffffff29;flex-direction:column;gap:.15rem;margin-left:.55rem;padding:.15rem 0 .25rem .55rem;display:flex}.portal-nav-sublink{color:#ffffffc7;min-height:2.2rem;padding:.4rem .75rem;font-size:.86rem;font-weight:600}.portal-nav-sublink.active{background:#ffffff29}.portal-sidebar-foot{border-top:1px solid #ffffff24;gap:.75rem;margin-top:auto;padding-top:.85rem;display:grid}.portal-help{color:#ffffffe0;align-items:center;gap:.55rem;padding:.35rem .4rem;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-flex}.portal-help:hover{color:#fff;text-decoration:underline}.portal-user-chip{align-items:center;gap:.65rem;padding:.35rem .4rem;display:flex}.portal-avatar{color:#fff;background:linear-gradient(135deg,#a78bfa,#7c3aed);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:2.35rem;height:2.35rem;font-size:.95rem;font-weight:800;display:inline-flex}.portal-avatar.sm{width:2.15rem;height:2.15rem;font-size:.85rem}.portal-user-meta{gap:.1rem;min-width:0;display:grid}.portal-user-meta strong{font-size:.82rem;font-weight:700}.portal-user-meta span{opacity:.8;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.portal-logout{color:#fff;width:100%;height:2.25rem;font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff47;border-radius:.75rem;justify-content:center;align-items:center;gap:.45rem;padding:0 .85rem;font-size:.84rem;font-weight:700;display:inline-flex}.portal-logout:hover{background:#ffffff29}.portal-workspace{flex-direction:column;flex:auto;min-width:0;height:100vh;min-height:0;display:flex;overflow:hidden}.portal-tophead{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem .35rem;display:flex}.portal-greeting{letter-spacing:-.02em;color:#1e1b4b;margin:0;font-size:1.55rem;font-weight:800}.portal-greeting-sub{color:#64748b;margin:.35rem 0 0;font-size:.92rem}.portal-tophead-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.portal-bell{color:#5b21b6;cursor:pointer;background:#fff;border:1px solid #e9e4ff;border-radius:999px;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;display:inline-flex;position:relative}.portal-bell-dot{background:#ef4444;border-radius:999px;width:.45rem;height:.45rem;position:absolute;top:.45rem;right:.5rem}.portal-top-user{background:#fff;border:1px solid #e9e4ff;border-radius:999px;align-items:center;gap:.55rem;padding:.3rem .65rem .3rem .35rem;display:flex}.portal-top-user strong{color:#1e1b4b;font-size:.82rem;display:block}.portal-top-user span{color:#64748b;font-size:.7rem;display:block}.portal-main{flex:auto;width:auto;min-width:0;min-height:0;overflow:auto}.shell{flex-direction:column;width:100%;max-width:100vw;min-height:100vh;display:flex;overflow-x:hidden}.shell-main{flex:auto;width:auto;min-width:0;overflow-x:auto}.page{box-sizing:border-box;text-align:left;width:100%;max-width:100%;margin:0;padding:1.35rem 1.35rem 3rem}.page-content{max-width:56rem;margin-left:auto;margin-right:auto}.page-narrow{max-width:28rem;margin-left:auto;margin-right:auto}.page-wide{max-width:none}.page-head{margin-bottom:1.15rem}.page-head .eyebrow{color:var(--portal-purple)}.page-head h1{letter-spacing:-.02em;color:#1e1b4b;margin:.15rem 0 .35rem;font-size:1.65rem}.desk-tabs{background:#fff;border:1px solid #e2e8f0;border-radius:.85rem;gap:.35rem;margin-bottom:1rem;padding:.25rem;display:inline-flex}.desk-tab{color:#475569;height:2.25rem;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.65rem;padding:0 .9rem;font-size:.88rem;font-weight:650}.desk-tab:hover{color:#1e293b}.desk-tab.active{color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed)}.section-title{margin:0 0 .75rem;font-size:1rem}.home-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.home-card{color:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:1.1rem;text-decoration:none;display:block;box-shadow:0 8px 30px #0f172a0d}.home-card h2{margin:.35rem 0 .4rem;font-size:1.15rem}.home-card:hover{border-color:#c7d2fe}.support-actions{flex-wrap:wrap;gap:.6rem;margin-bottom:1rem;display:flex}.support-card{margin-bottom:1rem}.support-list{color:#334155;gap:.55rem;margin:0;padding-left:1.1rem;font-size:.92rem;display:grid}.faq-list{gap:.55rem;display:grid}.faq-item{background:#fff;border:1px solid #e2e8f0;border-radius:.85rem;padding:.75rem .9rem}.faq-item summary{cursor:pointer;color:#1e293b;font-weight:650}.faq-item p{color:#475569;margin:.55rem 0 0;font-size:.9rem}.btn-block{width:100%}.btn-sm{height:2rem;padding:0 .75rem;font-size:.8rem}.kpi-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin-bottom:1rem;display:grid}.kpi{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:.95rem;padding:.75rem .85rem}.kpi span{text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-size:.7rem;display:block}.kpi strong{font-size:1.35rem}.filter-row{grid-template-columns:minmax(12rem,1.4fr) minmax(9rem,12rem) minmax(8rem,10rem) auto;align-items:end;gap:.75rem .85rem;margin-bottom:1rem;display:grid}.filter-row-2{grid-template-columns:minmax(14rem,1.6fr) minmax(11rem,14rem) auto}.filter-row .btn{justify-self:start;width:auto;min-width:6.5rem;height:2.5rem}.kpi-row-niche{grid-template-columns:repeat(6,minmax(0,1fr))}.kpi-btn{text-align:left;cursor:pointer;font:inherit;gap:.15rem;transition:border-color .15s,box-shadow .15s;display:grid}.kpi-btn:hover{border-color:#c4b5fd}.kpi-btn.active{border-color:var(--portal-purple-2);box-shadow:0 0 0 3px #7c3aed24}.table-empty{justify-items:start;gap:.35rem;padding:1.25rem .25rem;display:grid}.table-empty .btn{margin-top:.35rem}.status-draft{color:#475569;background:#f1f5f9}.admin-table-wrap{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:1.05rem;overflow:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.9rem}.admin-table th,.admin-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.75rem .9rem}.admin-table th{text-transform:uppercase;letter-spacing:.06em;color:#64748b;white-space:nowrap;background:#f8fafc;font-size:.72rem}.admin-table td.col-actions{white-space:nowrap;vertical-align:middle;width:1%}.strong{font-weight:650}.pill{color:#334155;background:#f1f5f9;border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:650;display:inline-flex}.status-submitted,.status-change_requested,.status-pending{color:#92400e;background:#fffbeb}.status-approved{color:#047857;background:#ecfdf5}.status-needs_fix{color:#3730a3;background:#eef2ff}.status-rejected{color:#b91c1c;background:#fef2f2}.admin-review-grid{grid-template-columns:1.4fr 1fr;align-items:stretch;gap:.85rem;display:grid}.admin-review-grid>.card{height:100%}.detail-list{gap:.65rem;margin:0;display:grid}.detail-row{grid-template-columns:8.5rem 1fr;align-items:baseline;gap:.75rem;margin:0;font-size:.92rem;display:grid}.detail-row dt{color:#64748b;margin:0;font-size:.8rem;font-weight:600}.detail-row dd{color:#0f172a;margin:0;font-weight:550}.course-chip-list{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.course-chip{color:#3730a3;background:#eef2ff;border-radius:999px;align-items:center;padding:.25rem .65rem;font-size:.8rem;font-weight:650;display:inline-flex}.section-title-row{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.15rem;display:flex}.section-title-row .section-title{margin:0}.course-card{flex-direction:column;gap:.75rem;display:flex}.course-roster{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.course-roster-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .8rem;display:flex}.course-roster-main{flex-wrap:wrap;align-items:center;gap:.45rem;min-width:0;display:flex}.course-roster-name{color:#0f172a;font-size:.95rem;font-weight:700}.course-empty{gap:.25rem;padding:.35rem 0;display:grid}.detail-card-foot{margin-top:auto;padding-top:.85rem}.admin-review-grid textarea{width:100%;font:inherit;resize:vertical;border:1px solid #e2e8f0;border-radius:.65rem;padding:.65rem .7rem}.cell-text{min-width:6rem;padding:.45rem .5rem}@media (width<=960px){.kpi-row,.kpi-row-niche{grid-template-columns:repeat(2,1fr)}.filter-row{grid-template-columns:1fr 1fr}.filter-row-2{grid-template-columns:1fr}.filter-row label:first-child{grid-column:1/-1}.filter-row .btn{grid-column:1/-1;justify-self:stretch;width:100%}.admin-review-grid{grid-template-columns:1fr}.table-actions{flex-wrap:wrap}.home-grid{grid-template-columns:1fr}.portal-shell{flex-direction:column;height:auto;min-height:100vh;overflow:visible}.portal-sidebar{flex:none;width:100%;max-width:none;height:auto;position:sticky;top:0;overflow:visible}.portal-workspace{height:auto;overflow:visible}.portal-main{overflow:visible}.portal-nav{flex-direction:row;align-items:flex-start;overflow-x:auto}.portal-nav-link{white-space:nowrap;flex:none}.portal-nav-group{flex:none}.portal-nav-sub{border-left:0;margin-left:0;padding-left:0}.portal-sidebar-foot{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.portal-logout{width:auto}.portal-tophead{flex-direction:column}.portal-greeting{font-size:1.3rem}}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--portal-purple);margin:0;font-size:.7rem;font-weight:700}h1{letter-spacing:-.02em;color:#1e1b4b;margin:.35rem 0 .25rem;font-size:1.75rem}.muted{color:var(--portal-muted);margin:0}.small{font-size:.85rem}.hero{margin-bottom:1.25rem}.topbar{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.card{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:1.05rem;gap:.85rem;padding:1.15rem;display:grid}.portal-sheet{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:1.1rem;overflow:hidden}.portal-sheet-pad{padding:1.15rem 1.2rem}.portal-banner{background:linear-gradient(135deg, var(--portal-purple) 0%, var(--portal-purple-2) 55%, var(--portal-purple-deep) 100%);color:#fff;border-radius:1rem;margin-bottom:1rem;padding:1.15rem 1.25rem;box-shadow:0 12px 28px #6d28d938}.portal-banner-kicker{letter-spacing:.12em;text-transform:uppercase;opacity:.85;margin:0;font-size:.68rem;font-weight:700}.portal-banner-title{letter-spacing:-.02em;margin:.25rem 0 0;font-size:1.55rem;font-weight:800;line-height:1.15}.portal-banner-meta{opacity:.95;margin:.4rem 0 0;font-size:.9rem;font-weight:600}.portal-banner-help{opacity:.82;margin:.35rem 0 0;font-size:.8rem;line-height:1.4}.portal-banner-split{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.portal-banner-btn{background:#ffffff1f;border:1px solid #fff6;border-radius:.7rem;flex-shrink:0;align-items:center;height:2.25rem;padding:0 .9rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex;color:#fff!important}.portal-banner-btn:hover{background:#ffffff38;color:#fff!important}.header-fields{grid-template-columns:1fr 1fr;margin-bottom:1rem}.header-fields .span-2{grid-column:1/-1}label{color:#475569;gap:.35rem;font-size:.75rem;font-weight:600;display:grid}input,select{height:2.35rem;font:inherit;color:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:.65rem;padding:0 .7rem}input:disabled,select:disabled{color:#64748b;background:#f1f5f9}input:focus,select:focus{border-color:#818cf8;outline:2px solid #4f46e540}.btn{height:2.5rem;font:inherit;cursor:pointer;box-sizing:border-box;vertical-align:middle;border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;padding:0 1rem;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}a.btn,a.btn:hover,a.btn:focus,a.btn:visited,a.btn:active{color:inherit;text-decoration:none!important}a.btn-primary,a.btn-primary:hover,a.btn-primary:focus,a.btn-primary:visited,a.btn-primary:active{color:#fff!important}a.btn-ghost,a.btn-ghost:hover,a.btn-ghost:focus,a.btn-ghost:visited,a.btn-ghost:active{color:#334155!important}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:#fff;background:linear-gradient(135deg, var(--portal-purple), var(--portal-purple-2));box-shadow:0 8px 18px #6d28d938}.btn-ghost{color:#334155;background:#fff;border-color:#e2e8f0}.btn-warn{color:#92400e;background:#fffbeb;border-color:#fcd34d}.btn-danger{color:#b91c1c;background:#fff;border-color:#fecaca}.btn-danger:hover:not(:disabled){background:#fef2f2;border-color:#f87171}.row-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.row-actions.end{justify-content:flex-end}.row-actions.page-actions{margin-top:1rem}.table-actions{flex-wrap:nowrap;align-items:center;gap:.4rem;margin:0;display:inline-flex}.table-actions .btn-sm{white-space:nowrap;border-radius:.55rem;height:1.9rem;padding:0 .65rem;font-size:.78rem}.banner{border-radius:.85rem;margin-bottom:.85rem;padding:.75rem .9rem;font-size:.9rem}.banner-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.banner-ok{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.banner-warn{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.banner-info{color:#3730a3;background:#eef2ff;border:1px solid #c7d2fe}.sheet-wrap{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:1.05rem;overflow:hidden}.sheet-toolbar,.sheet-footer{color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .75rem;font-size:.78rem;display:flex}.sheet-footer{border-top:1px solid #e2e8f0;border-bottom:0}.sheet-scroll{overflow-x:auto}.sheet{border-collapse:collapse;width:max-content;min-width:100%;font-size:.75rem}.sheet th,.sheet td{vertical-align:middle;border:1px solid #e2e8f0;padding:0}.sheet thead th{text-align:left;color:#4c1d95;white-space:nowrap;background:#f5f3ff;padding:.45rem .5rem;font-weight:700}.sheet .group-row th{text-align:center;color:#5b21b6;background:#ede9fe}.sheet .group-row th:nth-child(3){color:#4c1d95;background:#ddd6fe}.sheet td input,.sheet td select{background:0 0;border:0;border-radius:0;width:100%;min-width:6.5rem;height:2.1rem}.sheet td input:focus,.sheet td select:focus{outline:2px solid var(--portal-purple-2);outline-offset:-2px;background:#fff}.sticky-col{z-index:2;background:#f8fafc;min-width:2.5rem;position:sticky;left:0;text-align:center!important;padding:.35rem!important}.icon-btn{color:#94a3b8;cursor:pointer;background:0 0;border:0;width:2rem;height:2rem;font-size:1.1rem}.icon-btn:hover{color:#dc2626;background:#fef2f2}@media (width<=720px){.header-fields{grid-template-columns:1fr}.header-fields .span-2{grid-column:auto}}.auth-stage{align-items:stretch;width:100%;min-height:100vh;font-family:Segoe UI,system-ui,-apple-system,sans-serif;display:flex;position:relative;overflow:hidden}.auth-stage-bg{background:url(/auth-bg.jpg) 0/cover no-repeat;animation:1.1s ease-out both auth-bg-in;position:absolute;inset:0;transform:scale(1.04)}.auth-stage-scrim{background:linear-gradient(105deg,#1e104494 0%,#4c1d9585 42%,#0f172aad 100%),linear-gradient(#0f172a33 0%,#0f172a8c 100%);position:absolute;inset:0}.auth-stage-inner{z-index:1;flex-direction:column;gap:1.5rem;width:100%;max-width:1120px;margin:0 auto;padding:1.25rem 1.25rem 2.5rem;display:flex;position:relative}.auth-brand{align-items:center;gap:.65rem;animation:.55s ease-out both auth-rise;display:flex}.auth-brand-logo{object-fit:contain;background:#fffffff5;border-radius:.65rem;width:2.75rem;height:2.75rem;padding:.2rem;box-shadow:0 8px 24px #0f172a2e}.auth-brand-name{color:#1a365d;letter-spacing:-.01em;background:#fffffff5;border-radius:.75rem;align-items:center;padding:.4rem .85rem;font-size:.95rem;font-weight:800;display:inline-flex;box-shadow:0 8px 24px #0f172a2e}.auth-brand-pill{color:#6d28d9;letter-spacing:-.01em;background:#fffffff5;border-radius:.75rem;align-items:center;padding:.45rem .9rem;font-size:.95rem;font-weight:800;display:inline-flex;box-shadow:0 8px 24px #0f172a2e}.auth-panel{gap:1rem;width:min(100%,26.5rem);margin-left:auto;animation:.7s ease-out 80ms both auth-rise;display:grid}.auth-heading h1{color:#fff;letter-spacing:-.02em;text-shadow:0 2px 18px #0f172a59;margin:0 0 .35rem;font-size:clamp(1.55rem,3vw,2rem);line-height:1.2}.auth-heading p{color:#f8fafce0;margin:0;font-size:.95rem;line-height:1.45}.auth-card{background:#fff;border-radius:1.35rem;padding:1.35rem 1.35rem 1.2rem;animation:.75s ease-out .14s both auth-rise;box-shadow:0 24px 60px #0f172a47}.auth-card-head h2{color:#0f172a;letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.35rem}.auth-card-head p{color:#64748b;margin:0 0 1rem;font-size:.9rem;line-height:1.4}.auth-form{gap:.85rem;display:grid}.auth-label{color:#334155;gap:.35rem;font-size:.82rem;font-weight:700;display:grid}.auth-field{background:#eef2ff;border:1px solid #0000;border-radius:.85rem;align-items:center;gap:.45rem;min-height:2.85rem;padding:.15rem .7rem;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.auth-field:focus-within{background:#fff;border-color:#a78bfa;box-shadow:0 0 0 3px #7c3aed26}.auth-field-icon{color:#64748b;flex:none;display:inline-flex}.auth-field input{min-width:0;font:inherit;color:#0f172a;outline:none;flex:auto;font-weight:500;box-shadow:none!important;background:0 0!important;border:0!important;padding:.65rem 0!important}.auth-otp-input{letter-spacing:.28em;text-align:center;font-weight:700!important}.auth-field-action{color:#4f46e5;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:.25rem .1rem;font-size:.82rem;font-weight:700}.auth-field-action:hover{color:#6d28d9}.auth-row-end{justify-content:flex-end;margin-top:-.35rem;display:flex}.auth-text-link{color:#6d28d9;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.88rem;font-weight:700;text-decoration:none}.auth-text-link:hover{color:#5b21b6;text-decoration:underline}.auth-submit{color:#fff;width:100%;min-height:2.85rem;font:inherit;cursor:pointer;background:linear-gradient(105deg,#7c3aed 0%,#6d28d9 100%);border:0;border-radius:.9rem;margin-top:.25rem;padding:.75rem 1rem;font-size:.98rem;font-weight:750;transition:transform .12s,filter .12s;box-shadow:0 12px 28px #6d28d947}.auth-submit:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.auth-submit:disabled{opacity:.65;cursor:not-allowed;box-shadow:none}.auth-footer,.auth-hint{text-align:center;color:#64748b;margin:1rem 0 0;font-size:.88rem}.auth-footer-row{justify-content:space-between;gap:.75rem;margin-top:.85rem;display:flex}.auth-alert{color:#b91c1c;background:#fef2f2;border-radius:.75rem;margin:0 0 .85rem;padding:.7rem .85rem;font-size:.88rem;font-weight:600}.auth-alert-info{color:#3730a3;background:#eef2ff}@keyframes auth-bg-in{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1.04)}}@keyframes auth-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.auth-stage-inner{padding:1rem 1rem 2rem}.auth-panel{width:100%;margin-left:0}.auth-heading h1{font-size:1.45rem}.auth-card{border-radius:1.15rem;padding:1.15rem}}.profile-page{gap:1rem;max-width:40rem;margin-left:auto;margin-right:auto;display:grid}.niches-page{gap:1rem;display:grid}.niches-details{gap:1rem}.niches-details-head h2{color:#1e1b4b;margin:0 0 .25rem;font-size:1.15rem;font-weight:800}.niches-details-head p{color:var(--portal-muted);margin:0;font-size:.9rem}.niches-details-grid{grid-template-columns:1fr 1fr;gap:1rem 1.15rem;display:grid}.niches-note-field{grid-column:1/-1}.niches-details .enroll-input-wrap input{padding-left:.9rem}.niches-actions{margin-top:.25rem}.niches-actions .enroll-btn-primary{min-width:11rem}@media (width<=720px){.niches-details-grid{grid-template-columns:1fr}}.profile-sheet{background:#fff;border:1px solid #e8e5f2;border-radius:1.15rem;overflow:hidden;box-shadow:0 14px 40px #4c1d9514}.profile-course-card{color:#fff;background:linear-gradient(135deg,#6d28d9 0%,#7c3aed 55%,#5b21b6 100%);border-radius:.95rem;gap:.35rem;margin:1rem 1rem 0;padding:1.15rem 1.2rem 1.05rem;display:grid}.profile-course-kicker{letter-spacing:.12em;text-transform:uppercase;opacity:.85;margin:0;font-size:.68rem;font-weight:700}.profile-course-title{letter-spacing:-.02em;margin:0;font-size:1.55rem;font-weight:800;line-height:1.15}.profile-course-meta{word-break:break-word;opacity:.95;margin:.15rem 0 0;font-size:.92rem;font-weight:600}.profile-course-help{opacity:.82;margin:.35rem 0 0;font-size:.8rem;line-height:1.4}.profile-form-block{gap:1.1rem;padding:1.25rem 1.25rem 1.35rem;display:grid}.profile-form-head h2{letter-spacing:-.01em;color:#1e1b4b;margin:0 0 .3rem;font-size:1.2rem;font-weight:800}.profile-form-head p{color:#64748b;margin:0;font-size:.9rem;line-height:1.45}.profile-form-fields{gap:1.15rem;display:grid}.enroll-field{gap:.4rem;display:grid}.enroll-field-label-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.enroll-label{color:#1e293b;font-size:.88rem;font-weight:700;display:inline}.enroll-req{color:#dc2626;font-weight:800}.enroll-chip{letter-spacing:.02em;border-radius:999px;align-items:center;height:1.35rem;padding:0 .5rem;font-size:.68rem;font-weight:700;display:inline-flex}.enroll-chip-ok{color:#047857;background:#ecfdf5}.enroll-chip-warn{color:#c2410c;background:#fff7ed}.enroll-input-wrap{align-items:center;display:flex;position:relative}.enroll-input-icon{color:#94a3b8;pointer-events:none;display:inline-flex;position:absolute;left:.85rem}.enroll-input-wrap input{color:#0f172a;background:#fff;border:1.5px solid #e2e8f0;border-radius:.7rem;width:100%;height:2.75rem;padding:0 .9rem 0 2.65rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.enroll-input-wrap input:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 3px #7c3aed26}.enroll-input-wrap.is-locked input{color:#334155;background:#f8fafc;border-color:#e2e8f0}.enroll-help{color:#64748b;margin:0;font-size:.78rem;line-height:1.4}.enroll-pending{color:#c2410c;margin:0;font-size:.8rem}.enroll-inline-form{gap:.55rem;display:grid}.enroll-field-actions{flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:.15rem;display:flex}.enroll-btn-primary{color:#fff;background:linear-gradient(135deg,#6d28d9,#7c3aed);border:none;border-radius:.7rem;min-height:2.45rem;padding:0 1.15rem;font-weight:700;box-shadow:0 8px 18px #6d28d938}.enroll-btn-primary:hover:not(:disabled){filter:brightness(1.05)}.enroll-link-btn{color:#6d28d9;font:inherit;text-underline-offset:.15em;cursor:pointer;background:0 0;border:0;align-self:start;margin-top:.1rem;padding:0;font-size:.84rem;font-weight:700;text-decoration:underline}.enroll-link-btn:hover{color:#5b21b6}.profile-sheet-foot{text-align:center;color:#94a3b8;margin:.35rem 0 0;font-size:.75rem}@media (width<=720px){.profile-page{max-width:100%}.profile-course-card{margin:.75rem .75rem 0}.profile-form-block{padding:1rem .85rem 1.15rem}.enroll-btn-primary{width:100%}}.auth-enroll{background:radial-gradient(80% 50% at 100% 0%, #7c3aed1a, transparent 55%), linear-gradient(180deg, var(--portal-bg) 0%, var(--portal-bg-2) 50%, #f8fafc 100%);flex-direction:column;min-height:100vh;display:flex}.auth-enroll-topbar{background:linear-gradient(135deg, var(--portal-purple) 0%, var(--portal-purple-2) 55%, var(--portal-purple-deep) 100%);color:#fff;box-shadow:0 10px 28px #4c1d9547}.auth-enroll-topbar-inner{align-items:center;gap:.7rem;width:100%;max-width:40rem;margin:0 auto;padding:.75rem 1.25rem;display:flex}.auth-enroll-logo{object-fit:contain;background:#ffffff1f;border-radius:.45rem;width:2.15rem;height:2.15rem}.auth-enroll-brand{gap:.05rem;line-height:1.15;display:grid}.auth-enroll-eyebrow{letter-spacing:.12em;text-transform:uppercase;opacity:.85;font-size:.65rem;font-weight:700}.auth-enroll-brand strong{font-size:.98rem;font-weight:800}.auth-enroll-body{flex:1;align-content:start;gap:1rem;width:100%;max-width:28rem;margin:0 auto;padding:1.5rem 1rem 2.5rem;display:grid}.auth-enroll-intro h1{letter-spacing:-.02em;color:#1e1b4b;margin:0 0 .35rem;font-size:1.55rem;font-weight:800}.auth-enroll-intro p{color:var(--portal-muted);margin:0;font-size:.92rem;line-height:1.45}.auth-enroll .auth-card{border:1px solid var(--portal-border);width:100%;box-shadow:var(--portal-sheet-shadow);border-radius:1.15rem}.auth-enroll .auth-btn-primary{background:linear-gradient(135deg, var(--portal-purple), var(--portal-purple-2));box-shadow:0 8px 18px #6d28d938}.auth-enroll-foot{text-align:center;color:#94a3b8;margin:.25rem 0 0;font-size:.75rem}.profile-dash{gap:.75rem;max-width:56rem;margin:0 auto;padding-top:.25rem;display:grid}.profile-hero{background:linear-gradient(135deg,#efe7ff 0%,#f5f0ff 55%,#ebe4ff 100%);border:1px solid #e4dbff;border-radius:1.15rem;justify-content:space-between;gap:1rem;padding:1.2rem 1.3rem;display:flex;position:relative;overflow:hidden}.profile-hero-main{z-index:1;align-items:center;gap:1rem;min-width:0;display:flex}.profile-hero-avatar{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:4.25rem;height:4.25rem;font-size:1.6rem;font-weight:800;display:inline-flex;box-shadow:0 10px 24px #6d28d947}.profile-hero-name-row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.profile-hero-name-row h2{color:#1e1b4b;margin:0;font-size:1.35rem}.profile-hero-email{color:#64748b;margin:.2rem 0 .55rem;font-size:.9rem}.profile-hero-stats{color:#475569;flex-wrap:wrap;gap:.85rem 1.15rem;font-size:.82rem;display:flex}.profile-hero-stats strong{color:#1e1b4b;margin-right:.25rem}.profile-hero-active{align-items:center;gap:.3rem;display:inline-flex}.profile-hero-active i{background:#22c55e;border-radius:999px;width:.45rem;height:.45rem;display:inline-block}.profile-hero-art{opacity:.35;letter-spacing:.04em;color:#6d28d9;align-self:center;padding-right:.5rem;font-size:.85rem;font-weight:800}.profile-sections{gap:.9rem;display:grid}.dash-card{background:#fff;border:1px solid #ebe6f8;border-radius:1.05rem;gap:.85rem;padding:1.05rem 1.15rem;display:grid;box-shadow:0 10px 28px #4c1d950d}.dash-card-head{align-items:center;gap:.6rem;display:flex}.dash-card-icon{color:#6d28d9;background:#f3e8ff;border-radius:.65rem;justify-content:center;align-items:center;width:2rem;height:2rem;display:inline-flex}.dash-card-head h3{color:#1e1b4b;margin:0;font-size:1.02rem}.dash-tip{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.75rem;padding:.7rem .85rem;font-size:.84rem;line-height:1.4}.dash-fields{gap:.95rem;display:grid}.dash-fields.two{grid-template-columns:1fr 1fr}.dash-field{gap:.4rem;display:grid}.dash-field-label-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.dash-field-label{color:#334155;font-size:.84rem;font-weight:700}.dash-chip{border-radius:999px;align-items:center;height:1.35rem;padding:0 .5rem;font-size:.68rem;font-weight:700;display:inline-flex}.dash-chip.ok{color:#047857;background:#ecfdf5}.dash-chip.warn{color:#c2410c;background:#fff7ed}.dash-chip.student{color:#5b21b6;background:#ede9fe}.dash-field-form{gap:.55rem;display:grid}.dash-field-actions{flex-wrap:wrap;gap:.5rem;display:flex}.dash-save{color:#fff;background:linear-gradient(135deg,#6d28d9,#7c3aed);border:0;border-radius:.7rem;align-items:center;gap:.4rem;height:2.35rem;padding:0 1rem;font-weight:700;display:inline-flex;box-shadow:0 8px 18px #6d28d938}.dash-request{color:#6d28d9;height:2rem;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #c4b5fd;border-radius:.6rem;align-self:start;padding:0 .8rem;font-size:.8rem;font-weight:700}.dash-request:hover{background:#f5f3ff}.profile-sync-bar{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:.9rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;padding:.85rem 1rem;font-size:.82rem;font-weight:600;display:flex}.profile-sync-bar>span:first-child{align-items:center;gap:.45rem;display:inline-flex}.profile-sync-time{color:#065f46;font-weight:650}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=720px){.dash-fields.two{grid-template-columns:1fr}.profile-hero{flex-direction:column}.profile-hero-art{display:none}}.niches-status-card{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:1rem;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.15rem;display:flex}.niches-status-title{color:#1e1b4b;margin:.15rem 0 .25rem;font-size:1.25rem}.row-between{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.niches-page{gap:1rem;padding-bottom:5.5rem;display:grid}.niches-topmeta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.85rem 1.25rem;margin-top:-.35rem;display:flex}.niches-save-pill{color:#047857;align-items:center;gap:.4rem;font-size:.82rem;font-weight:650;display:inline-flex}.niches-save-pill i{background:#22c55e;border-radius:999px;width:.45rem;height:.45rem;display:inline-block}.niches-save-pill i.is-err{background:#ef4444}.niches-save-pill:has(i.is-err){color:#b91c1c}.niches-progress-mini{color:#5b21b6;text-align:right;gap:.3rem;min-width:9.5rem;font-size:.78rem;font-weight:650;display:grid}.niches-progress-track{background:#ede9fe;border-radius:999px;height:.4rem;overflow:hidden}.niches-progress-fill{background:linear-gradient(90deg,#7c3aed,#6d28d9);border-radius:999px;height:100%}.niches-guide-grid{grid-template-columns:1.6fr 1fr;gap:.9rem;display:grid}.niches-howto h2,.niches-tips h2,.niches-info h2,.niches-sheet-head h2{color:#1e1b4b;margin:0 0 .85rem;font-size:1.05rem}.niches-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.niches-steps li{justify-items:start;gap:.55rem;display:grid}.niches-step-num{color:#fff;background:linear-gradient(135deg,#6d28d9,#7c3aed);border-radius:999px;justify-content:center;align-items:center;width:1.85rem;height:1.85rem;font-size:.85rem;font-weight:800;display:inline-flex}.niches-steps strong{color:#1e1b4b;font-size:.88rem;display:block}.niches-steps p{color:#64748b;margin:.15rem 0 0;font-size:.78rem;line-height:1.35}.niches-tips ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.niches-tips li{color:#334155;padding-left:1.55rem;font-size:.86rem;line-height:1.35;position:relative}.niches-tips li:before{content:"✓";color:#6d28d9;background:#ede9fe;border-radius:999px;justify-content:center;align-items:center;width:1.15rem;height:1.15rem;font-size:.7rem;font-weight:800;display:inline-flex;position:absolute;top:0;left:0}.niches-info-grid{grid-template-columns:1fr 1fr 1.2fr;gap:.9rem 1rem;display:grid}.niches-info-grid-2{grid-template-columns:1fr 1.4fr}.niches-note{width:100%;min-height:5.2rem;font:inherit;resize:vertical;background:#fff;border:1.5px solid #e2e8f0;border-radius:.7rem;padding:.7rem .85rem}.niches-note:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 3px #7c3aed26}.niches-lock{opacity:.55;pointer-events:none;font-size:.75rem;position:absolute;right:.75rem}.niches-sheet{padding-top:.25rem}.niches-sheet-head{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1rem .65rem;display:flex}.niches-sheet-head p{margin:.2rem 0 0}.niches-example-btn{border-color:#c4b5fd;color:#6d28d9!important}.niches-sheet-footer{justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.niches-team-picks-banner{color:#5b21b6;background:#f5f3ff;border-color:#c4b5fd}.sheet tbody tr.niche-team-selected td,.sheet tbody tr.niche-team-selected .sticky-col{background:#faf5ff}.niche-team-dot{vertical-align:middle;background:#7c3aed;border-radius:999px;width:.45rem;height:.45rem;margin-left:.35rem;display:inline-block}.niche-team-label{color:#fff;letter-spacing:.02em;background:#7c3aed;border-radius:999px;margin-bottom:.25rem;padding:.1rem .4rem;font-size:.62rem;font-weight:750;display:inline-flex}.niches-add-btn{color:#6d28d9;background:#fff;border:1.5px solid #c4b5fd;font-weight:700}.niches-add-btn:hover:not(:disabled){background:#f5f3ff}.niches-actionbar{z-index:20;border:1px solid var(--portal-border);background:#fff;border-radius:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding:.85rem 1rem;display:flex;position:sticky;bottom:.75rem;box-shadow:0 12px 32px #4c1d951f}.niches-actionbar-status{color:#047857;align-items:center;gap:.45rem;margin:0;font-size:.84rem;font-weight:600;display:inline-flex}.niches-check{color:#16a34a;background:#dcfce7;border-radius:999px;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;font-size:.75rem;font-weight:800;display:inline-flex}.niches-actionbar-right{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.niches-submit{border-radius:.75rem;min-height:2.55rem;padding:0 1.2rem}@media (width<=960px){.niches-guide-grid,.niches-info-grid,.niches-steps{grid-template-columns:1fr}}.niches-page-focus{gap:.85rem}.niches-info-compact{padding:.85rem 1rem}.niches-docs{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:.95rem;overflow:hidden}.niches-docs>summary{cursor:pointer;color:#5b21b6;padding:.8rem 1rem;font-size:.9rem;font-weight:700;list-style:none}.niches-docs>summary::-webkit-details-marker{display:none}.niches-docs>summary:after{content:"▾";float:right;opacity:.7}.niches-docs[open]>summary:after{content:"▴"}.niches-docs .niches-guide-grid{margin:0;padding:0 .85rem .85rem}.niches-docs .dash-card{box-shadow:none}.profile-dash-v2{max-width:64rem}.profile-hero-v2{align-items:center}.profile-completion{z-index:1;text-align:right;min-width:11rem}.profile-completion-top{color:#5b21b6;justify-content:space-between;gap:.75rem;margin-bottom:.35rem;font-size:.78rem;font-weight:700;display:flex}.profile-completion-track{background:#6d28d926;border-radius:999px;height:.45rem;overflow:hidden}.profile-completion-fill{background:linear-gradient(90deg,#7c3aed,#6d28d9);height:100%}.profile-grid-2x2{grid-template-columns:1fr 1fr;align-items:start;gap:.75rem;display:grid}.pf-card{align-content:start;align-self:start;gap:.55rem;height:fit-content;padding:.85rem 1rem .9rem}.pf-card-wide{grid-column:1/-1}.pf-card .dash-card-head{margin:0}.pf-card .dash-card-head h3{margin:0;font-size:.98rem}.pf-card-fields{gap:.55rem;display:grid}.pf-field{gap:.28rem;display:grid}.pf-field-top{justify-content:space-between;align-items:center;gap:.5rem;min-height:0;display:flex}.pf-field-top label{color:#334155;margin:0;font-size:.8rem;font-weight:700;line-height:1.2}.pf-field-row{align-items:center;gap:.45rem;display:flex}.pf-field-row .enroll-input-wrap{flex:1;min-width:0;margin:0}.pf-field-row .enroll-input-wrap input,.pf-field-row .enroll-input-wrap select{height:2.5rem;min-height:2.5rem}.pf-inline-btn{white-space:nowrap;flex-shrink:0}.pf-reason{height:2.2rem;font:inherit;border:1.5px solid #e2e8f0;border-radius:.65rem;padding:0 .75rem}.dash-request.pf-inline-btn{height:2.35rem;padding:0 .85rem}@media (width<=900px){.profile-grid-2x2{grid-template-columns:1fr}.pf-field-row{flex-wrap:wrap}.pf-inline-btn{width:100%}}.card-panel{border:1px solid var(--portal-border);box-shadow:var(--portal-sheet-shadow);background:#fff;border-radius:1.1rem;margin-bottom:1.15rem;padding:1.25rem 1.35rem}.announce-compose-head .eyebrow{margin:0 0 .25rem}.announce-compose-head h2{color:#1e1b4b;margin:0 0 .35rem;font-size:1.15rem}.announce-form{gap:.9rem;margin-top:1rem;display:grid}.announce-audience-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.admin-ws .announce-admin{gap:1.25rem;display:grid}.admin-ws .announce-compose-card{background:#fff;border:1px solid #e6eaf0;border-radius:14px;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.admin-ws .announce-compose-form{flex-direction:column;margin:0;display:flex}.admin-ws .announce-compose-fields{gap:1.1rem;padding:1.25rem 1.35rem 1.15rem;display:grid}.admin-ws .announce-field{gap:.4rem;display:grid}.admin-ws .announce-field>span{color:#475569;font-size:.78rem;font-weight:650}.admin-ws .announce-field input,.admin-ws .announce-field textarea{box-sizing:border-box;width:100%;font:inherit;color:#0f172a;background:#fff;border:1px solid #d8dee8;border-radius:10px;height:auto;min-height:2.6rem;padding:.7rem .85rem;font-size:.9rem;line-height:1.4}.admin-ws .announce-field textarea{resize:vertical;min-height:7.5rem}.admin-ws .announce-field input:focus,.admin-ws .announce-field textarea:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 3px #7c3aed1f}.admin-ws .announce-audience-fieldset{border:0;gap:.75rem;margin:0;padding:0;display:grid}.admin-ws .announce-audience-fieldset>legend{color:#475569;margin-bottom:.15rem;padding:0;font-size:.78rem;font-weight:650}.admin-ws .announce-seg{background:#f4f6f9;border:1px solid #dfe5ee;border-radius:10px;grid-template-columns:1fr 1fr;gap:.2rem;width:min(100%,22rem);padding:.25rem;display:inline-grid}.admin-ws .announce-seg button{color:#64748b;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:2.25rem;font-size:.84rem;font-weight:650}.admin-ws .announce-seg button.active{color:#0f172a;background:#fff;box-shadow:0 1px 2px #0f172a14}.admin-ws .announce-batch-picker{gap:0;display:grid}.admin-ws .announce-batch-picker-head{justify-content:flex-end;margin-bottom:.55rem;display:flex}.admin-ws .announce-select-all{cursor:pointer;color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.75rem .9rem;display:flex}.admin-ws .announce-select-all.selected{color:#5b21b6;background:#f5f0ff;border-color:#c4b5fd}.admin-ws .announce-select-all input{accent-color:#7c3aed;flex-shrink:0;width:1rem;height:1rem;min-height:0;margin:0}.admin-ws .announce-select-all span{gap:.1rem;min-width:0;display:grid}.admin-ws .announce-select-all strong{font-size:.88rem;font-weight:700}.admin-ws .announce-select-all em{color:#64748b;font-size:.74rem;font-style:normal;font-weight:500}.admin-ws .announce-select-all.selected em{color:#7c3aed}.admin-ws .announce-batch-picker .assign-course-grid{flex-wrap:wrap;gap:.5rem;max-height:12rem;padding:.15rem;display:flex;overflow-y:auto}.admin-ws .announce-batch-picker .assign-course-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .75rem;font-size:.8rem;font-weight:650;display:inline-flex}.admin-ws .announce-batch-picker .assign-course-chip.selected{color:#5b21b6;background:#f5f0ff;border-color:#c4b5fd}.admin-ws .announce-batch-picker .assign-course-chip input{accent-color:#7c3aed;width:.9rem;height:.9rem;min-height:0}.admin-ws .announce-compose-foot{background:#fbfcfd;border-top:1px solid #eef1f5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.35rem;display:flex}.admin-ws .announce-compose-hint{color:#64748b;max-width:28rem;margin:0;font-size:.78rem;line-height:1.4}.admin-ws .announce-history-head{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.75rem;display:flex}.admin-ws .announce-history-head h2{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:1.05rem;font-weight:750}.admin-ws .announce-history-head span{color:#94a3b8;font-size:.78rem;font-weight:650}.admin-ws .announce-row-title{color:#0f172a;font-size:.9rem;display:block}.admin-ws .announce-row-body{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;max-width:28rem;margin-top:.2rem;font-size:.75rem;display:block;overflow:hidden}.admin-ws .announce-row-date{color:#64748b;white-space:nowrap;font-size:.78rem}@media (width<=720px){.admin-ws .announce-seg{width:100%}.admin-ws .announce-compose-foot{align-items:stretch}.admin-ws .announce-compose-foot .ac-btn{width:100%}}.announce-form-actions{justify-content:flex-end;display:flex}.announce-preview{white-space:nowrap;text-overflow:ellipsis;max-width:28rem;overflow:hidden}.announce-empty{text-align:center;background:#faf8ff;border:1px dashed #ddd6fe;border-radius:1rem;padding:1.5rem}@media (width<=720px){.announce-audience-row{grid-template-columns:1fr}}.announce-form .field{color:#475569;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:600;display:flex}.announce-form .field input,.announce-form .field select,.announce-form .field textarea{font-weight:500;font:inherit;color:#0f172a;background:#fff;border:1.5px solid #e2e8f0;border-radius:.75rem;padding:.65rem .8rem}.announce-form .field textarea{resize:vertical;min-height:6rem}.ann-page{gap:.9rem;max-width:72rem;margin:0 auto;display:grid}.ann-page-toolbar{justify-content:flex-end;display:flex}.ann-search{color:#64748b;background:#fff;border:1px solid #e8e5f2;border-radius:999px;align-items:center;gap:.55rem;width:min(100%,22rem);padding:.55rem .95rem;display:flex;box-shadow:0 6px 18px #0f172a0a}.ann-search input{width:100%;font:inherit;color:#0f172a;background:0 0;border:0;outline:none}.ann-split{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);align-items:start;gap:1rem;display:grid}.ann-feed{background:#fff;border:1px solid #ebe6f8;border-radius:1.2rem;min-height:28rem;padding:1.2rem 1rem 1.4rem;box-shadow:0 12px 30px #4c1d950d}.ann-feed-head{text-align:center;margin-bottom:.75rem}.ann-feed-head h2{color:#1e1b4b;margin:0;font-size:1.35rem}.ann-feed-head p{color:#64748b;margin:.25rem 0 0;font-size:.9rem}.ann-rail{padding:.25rem 0 .5rem;position:relative}.ann-group+.ann-group{margin-top:.35rem}.ann-group-label{z-index:2;justify-content:center;margin:.35rem 0 .55rem;display:flex;position:relative}.ann-group-label span{color:#64748b;letter-spacing:.02em;background:#f1f5f9;border-radius:999px;padding:.28rem .75rem;font-size:.72rem;font-weight:700}.ann-rail-list{margin:0;padding:0;list-style:none;position:relative}.ann-rail-list:before{content:"";background:#e8e5f2;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.ann-rail-item{grid-template-columns:1fr 1fr;align-items:start;gap:1.4rem;padding:.55rem 0 .85rem;display:grid;position:relative}.ann-rail-dot{z-index:2;background:#7c3aed;border:2px solid #fff;border-radius:999px;width:.72rem;height:.72rem;position:absolute;top:1.35rem;left:50%;transform:translate(-50%);box-shadow:0 0 0 2px #ddd6fe}.ann-rail-card{text-align:left;cursor:pointer;color:inherit;font:inherit;background:#fff;border:1px solid #ebe6f8;border-radius:.95rem;padding:.9rem 1rem .85rem;transition:border-color .15s,box-shadow .15s;position:relative;box-shadow:0 8px 20px #0f172a0a}.ann-rail-card:hover{border-color:#d8d0f5}.ann-rail-item.is-active .ann-rail-card{border-color:#8b5cf6;box-shadow:0 10px 24px #6d28d91f}.ann-rail-item.side-left .ann-rail-card{grid-column:1;margin-right:.15rem}.ann-rail-item.side-right .ann-rail-card{grid-column:2;margin-left:.15rem}.ann-rail-item.side-left .ann-rail-chevron{right:-.15rem}.ann-rail-item.side-right .ann-rail-chevron{left:-.15rem;transform:rotate(180deg)}.ann-rail-card-top{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.ann-rail-card h3{color:#1e1b4b;margin:0;font-size:.98rem}.ann-rail-card>p{color:#64748b;margin:.4rem 0 .55rem;font-size:.82rem;line-height:1.45}.ann-rail-meta{color:#94a3b8;flex-wrap:wrap;gap:.35rem .65rem;font-size:.72rem;display:flex}.ann-rail-chevron{color:#fff;background:#7c3aed;border-radius:999px;justify-content:center;align-items:center;width:1.4rem;height:1.4rem;margin-top:-.7rem;font-size:1.1rem;line-height:1;display:inline-flex;position:absolute;top:50%;box-shadow:0 6px 14px #6d28d940}.ann-badge-new{color:#c2410c;letter-spacing:.02em;background:#ffedd5;border-radius:999px;flex-shrink:0;align-items:center;padding:.15rem .5rem;font-size:.68rem;font-weight:800;display:inline-flex}.ann-detail{min-height:28rem;position:sticky;top:.75rem}.ann-detail-card,.ann-detail-empty{background:#fff;border:1px solid #ebe6f8;border-radius:1.2rem;min-height:28rem;padding:1.35rem 1.4rem;box-shadow:0 12px 30px #4c1d950d}.ann-detail-empty{text-align:center;color:#475569;place-content:center;justify-items:center;gap:.35rem;display:grid}.ann-detail-empty p{max-width:16rem}.ann-detail-icon{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;display:inline-flex;box-shadow:0 10px 22px #6d28d940}.ann-detail-head{align-items:flex-start;gap:.85rem;margin-bottom:1.1rem;display:flex}.ann-detail-title-row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.ann-detail-titles h3{color:#1e1b4b;margin:0;font-size:1.25rem}.ann-detail-meta{color:#94a3b8;margin:.35rem 0 0;font-size:.82rem}.ann-detail-body{white-space:pre-wrap;color:#334155;font-size:.95rem;line-height:1.65}.ann-detail-sign{color:#64748b;border-top:1px solid #f1f5f9;margin-top:1.4rem;padding-top:1rem;font-size:.9rem;font-style:italic}@media (width<=1100px){.ann-split{grid-template-columns:1fr}.ann-detail{position:static}.ann-rail-item{grid-template-columns:1fr;padding-left:1.4rem}.ann-rail-list:before{left:.35rem;transform:none}.ann-rail-dot{left:.35rem;transform:translate(-50%)}.ann-rail-item.side-left .ann-rail-card,.ann-rail-item.side-right .ann-rail-card{grid-column:1;margin:0}.ann-rail-chevron{display:none}}@media (width<=640px){.ann-page-toolbar{justify-content:stretch}.ann-search{width:100%}}.profile-hero-avatar-wrap{flex-shrink:0;position:relative}.profile-hero-avatar-edit{color:#6d28d9;background:#fff;border:1.5px solid #ddd6fe;border-radius:999px;justify-content:center;align-items:center;width:1.45rem;height:1.45rem;display:inline-flex;position:absolute;bottom:0;right:0;box-shadow:0 4px 10px #4c1d951f}.profile-completion-panel{z-index:1;align-items:center;gap:1.1rem;display:flex}.profile-hero-v2 .profile-completion{text-align:left;min-width:12.5rem}.profile-completion-list{gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.profile-completion-list li{color:#64748b;align-items:center;gap:.45rem;font-size:.75rem;font-weight:650;display:flex}.profile-completion-list li.is-done{color:#047857}.profile-completion-check{background:#fff;border:1.5px solid #cbd5e1;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1rem;height:1rem;display:inline-flex}.profile-completion-list li.is-done .profile-completion-check{color:#fff;background:#10b981;border-color:#34d399}.profile-hero-illust{opacity:.95;flex-direction:column;align-items:center;gap:.2rem;display:flex}.profile-hero-tagline{color:#6d28d9;white-space:nowrap;font-family:Segoe Script,Brush Script MT,Apple Chancery,cursive;font-size:.78rem;font-weight:600}.profile-trust-bar{background:linear-gradient(135deg,#f3e8ff 0%,#efe7ff 55%,#faf5ff 100%);border:1px solid #e9d5ff;border-radius:1.05rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.profile-trust-copy{align-items:flex-start;gap:.8rem;min-width:0;display:flex}.profile-trust-icon{color:#6d28d9;background:#fff;border:1px solid #ddd6fe;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;display:inline-flex}.profile-trust-copy strong{color:#1e1b4b;margin-bottom:.15rem;font-size:.92rem;display:block}.profile-trust-copy p{color:#64748b;max-width:38rem;margin:0;font-size:.82rem;line-height:1.45}.profile-trust-script{color:#7c3aed;white-space:nowrap;flex-shrink:0;padding-right:.25rem;font-family:Segoe Script,Brush Script MT,Apple Chancery,cursive;font-size:1.05rem}@media (width<=900px){.profile-hero-v2{flex-direction:column;align-items:stretch}.profile-completion-panel{justify-content:space-between}.profile-trust-bar{flex-direction:column;align-items:flex-start}.profile-trust-script{align-self:flex-end}}@media (width<=640px){.profile-hero-illust{display:none}}.enroll-input-wrap select{width:100%;height:2.75rem;min-height:2.75rem;font:inherit;color:#0f172a;appearance:none;background:#fff;border:1.5px solid #e2e8f0;border-radius:.7rem;outline:none;padding:0 .9rem 0 2.65rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.enroll-input-wrap select:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26}.assign-admin-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.assign-admin-head h2,.assign-admin-head h3{color:#1e1b4b;margin:.15rem 0}.assign-form .field{color:#475569;flex-direction:column;gap:.35rem;margin-bottom:.9rem;font-size:.82rem;font-weight:600;display:flex}.assign-form .field input,.assign-form .field select,.assign-form .field textarea{font-weight:500;font:inherit;color:#0f172a;background:#fff;border:1.5px solid #e2e8f0;border-radius:.75rem;padding:.65rem .8rem}.assign-courses{border:1px solid #ebe6f8;border-radius:1rem;margin:0 0 1rem;padding:.9rem 1rem 1rem}.assign-courses legend{color:#1e1b4b;padding:0 .35rem;font-weight:700}.assign-course-grid,.assign-check-list{flex-wrap:wrap;gap:.5rem;margin-top:.55rem;display:flex}.assign-course-chip{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .7rem;font-size:.82rem;font-weight:600;display:inline-flex}.assign-fields-builder{gap:.75rem;margin-bottom:1rem;display:grid}.assign-field-row{grid-template-columns:1.4fr 1fr auto 1.4fr auto;align-items:center;gap:.5rem;display:grid}.assign-req-toggle{color:#64748b;white-space:nowrap;align-items:center;gap:.3rem;font-size:.78rem;display:inline-flex}.assign-card-grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.9rem;display:grid}.assign-card{background:#fff;border:1px solid #ebe6f8;border-radius:1.1rem;gap:.55rem;padding:1.1rem 1.15rem;display:grid;box-shadow:0 10px 28px #4c1d950d}.assign-card h3{color:#1e1b4b;margin:0;font-size:1.05rem}.assign-card-top{justify-content:space-between;gap:.5rem;display:flex}.assign-card-course{color:#64748b;margin:0;font-size:.84rem}.assign-card-actions{margin-top:.35rem}.assign-detail-desc{color:#475569;line-height:1.5}.assign-html{color:#334155;margin-bottom:1rem;line-height:1.6}.assign-html h2{color:#0f172a;margin:0 0 .65rem;font-size:1.35rem}.assign-html h3{color:#0f172a;margin:.85rem 0 .45rem;font-size:1.1rem}.assign-html p{margin:0 0 .75rem}.assign-html a{color:#6d28d9;font-weight:600}.assign-html ul,.assign-html ol{margin:0 0 .75rem;padding-left:1.25rem}.assign-iframe{background:#fff;border:1px solid #e2e8f0;border-radius:.9rem;width:100%;min-height:28rem;margin-bottom:1rem}@media (width<=900px){.assign-field-row{grid-template-columns:1fr}}.ccc-page{max-width:72rem}.ccc-course-grid{grid-template-columns:repeat(auto-fill,minmax(16.5rem,1fr));gap:1rem;display:grid}.ccc-course-card,.ccc-module-card,.ccc-panel,.ccc-empty{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 8px 30px #0f172a0d}.ccc-course-card{flex-direction:column;gap:.85rem;padding:1.1rem 1.15rem 1.2rem;display:flex}.ccc-course-card h3,.ccc-module-card h3,.ccc-panel h3{color:#1e1b4b;margin:.1rem 0 0}.ccc-course-card-top,.ccc-module-card-top,.ccc-panel-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.ccc-kicker{letter-spacing:.08em;text-transform:uppercase;color:#6366f1;margin:0;font-size:.7rem;font-weight:700}.ccc-stats{grid-template-columns:1fr 1fr;gap:.55rem;margin:0;display:grid}.ccc-stats div{background:#f8fafc;border-radius:.7rem;padding:.55rem .65rem}.ccc-stats dt{text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-size:.68rem}.ccc-stats dd{color:#0f172a;margin:.15rem 0 0;font-weight:700}.ccc-pill{border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.ccc-pill.ok{color:#047857;background:#ecfdf5}.ccc-pill.off{color:#64748b;background:#f1f5f9}.ccc-empty{text-align:center;border-style:dashed;padding:1.5rem}.ccc-control{max-width:78rem}.ccc-control-head{margin-bottom:1rem}.ccc-back{color:#6366f1;margin-bottom:.55rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}.ccc-layout{grid-template-columns:13.5rem 1fr;align-items:start;gap:1rem;display:grid}.ccc-side{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;flex-direction:column;gap:.2rem;padding:.45rem;display:flex;position:sticky;top:1rem}.ccc-side-item{text-align:left;width:100%;font:inherit;color:#334155;cursor:pointer;background:0 0;border:0;border-radius:.7rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.65rem .75rem;font-weight:600;display:flex}.ccc-side-item:hover{background:#f8fafc}.ccc-side-item.active{color:#3730a3;background:linear-gradient(135deg,#eef2ff,#f5f3ff)}.ccc-dot{border-radius:999px;width:.5rem;height:.5rem}.ccc-dot.on{background:#10b981}.ccc-dot.off{background:#cbd5e1}.ccc-module-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.85rem;display:grid}.ccc-module-card{text-align:left;cursor:pointer;font:inherit;color:inherit;padding:1rem 1.05rem}.ccc-module-card.disabled{opacity:.72}.ccc-module-card p{color:#64748b;margin:.45rem 0 .65rem;font-size:.9rem;line-height:1.45}.ccc-panel{padding:1.15rem 1.2rem 1.3rem}.ccc-panel-head{margin-bottom:1rem}.ccc-inline-form{background:#fafaff;border:1px solid #eef2ff;border-radius:.9rem;margin-bottom:1rem;padding:1rem}.ccc-inline-form h4{color:#1e1b4b;margin:0 0 .75rem}.ccc-actions{flex-wrap:wrap;gap:.5rem;display:flex}.ccc-list{flex-direction:column;gap:.55rem;display:flex}.ccc-list-row{background:#fff;border:1px solid #e2e8f0;border-radius:.85rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem .9rem;display:flex}.ccc-row-actions{flex-wrap:wrap;gap:.35rem;display:flex}.ccc-toggle{color:#475569;align-items:center;gap:.45rem;font-size:.85rem;font-weight:600;display:inline-flex}.btn.danger{color:#b91c1c}@media (width<=900px){.ccc-layout{grid-template-columns:1fr}.ccc-side{flex-flow:wrap;position:static}.ccc-list-row{flex-direction:column;align-items:flex-start}}.profile-pro{gap:.85rem;max-width:58rem;margin:0 auto;padding-top:.15rem;display:grid}.profile-pro-hero{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;grid-template-columns:minmax(0,1.4fr) minmax(14rem,.8fr);align-items:start;gap:1.25rem;padding:1.15rem 1.25rem;display:grid}.profile-pro-identity{align-items:flex-start;gap:1rem;min-width:0;display:flex}.profile-pro-avatar{color:#fff;background:#4f46e5;border-radius:.9rem;flex-shrink:0;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;font-size:1.25rem;font-weight:700;display:inline-flex}.profile-pro-name-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.profile-pro-name-row h2{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:1.25rem;font-weight:700}.profile-pro-badge{letter-spacing:.04em;text-transform:uppercase;color:#4338ca;background:#eef2ff;border:1px solid #e0e7ff;border-radius:999px;padding:.18rem .5rem;font-size:.68rem;font-weight:700}.profile-pro-email{color:#64748b;margin:.2rem 0 .7rem;font-size:.88rem}.profile-pro-meta{flex-wrap:wrap;gap:.65rem 1.15rem;margin:0;display:flex}.profile-pro-meta div{gap:.1rem;display:grid}.profile-pro-meta dt{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;font-size:.68rem;font-weight:650}.profile-pro-meta dd{color:#1e293b;margin:0;font-size:.9rem;font-weight:600}.profile-pro-meta dd.is-active{color:#047857}.profile-pro-progress{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;padding:.85rem .95rem}.profile-pro-progress-top{color:#475569;justify-content:space-between;gap:.5rem;margin-bottom:.4rem;font-size:.78rem;font-weight:650;display:flex}.profile-pro-progress-top strong{color:#0f172a}.profile-pro-progress-track{background:#e2e8f0;border-radius:999px;height:.35rem;margin-bottom:.65rem;overflow:hidden}.profile-pro-progress-fill{background:#4f46e5;height:100%}.profile-pro-progress-list{gap:.28rem;margin:0;padding:0;list-style:none;display:grid}.profile-pro-progress-list li{color:#64748b;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.profile-pro-progress-list li.is-done{color:#0f172a;font-weight:600}.profile-pro-progress-list li span{text-align:center;color:#94a3b8;width:.9rem;font-size:.72rem}.profile-pro-progress-list li.is-done span{color:#059669}.profile-pro-grid{grid-template-columns:1fr 1fr;align-items:start;gap:.75rem;display:grid}.profile-pro-card{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;align-content:start;gap:.7rem;height:fit-content;padding:.95rem 1.05rem 1rem;display:grid}.profile-pro-card.is-wide{grid-column:1/-1}.profile-pro-card-head h3{letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin:0;font-size:.82rem;font-weight:700}.profile-pro .pf-card-fields{gap:.65rem}.profile-pro .pf-field{gap:.3rem}.profile-pro .pf-field-top label{color:#334155;font-size:.8rem}.profile-pro .dash-chip{border-radius:.4rem;padding:.15rem .45rem;font-size:.68rem;font-weight:650}.profile-pro .dash-chip.ok{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.profile-pro .dash-save{box-shadow:none;background:#4f46e5;border-color:#4f46e5;border-radius:.65rem;height:2.4rem;font-size:.82rem}.profile-pro .dash-save:hover{background:#4338ca}.profile-pro .dash-request{color:#4338ca;background:#fff;border-color:#c7d2fe;border-radius:.65rem;height:2.4rem;font-size:.8rem}.profile-pro .dash-request:hover{background:#eef2ff}.profile-pro .enroll-input-wrap input,.profile-pro .enroll-input-wrap select{border-color:#e2e8f0;border-radius:.65rem;height:2.45rem;min-height:2.45rem}.profile-pro .enroll-input-wrap input:focus,.profile-pro .enroll-input-wrap select:focus{border-color:#818cf8;box-shadow:0 0 0 3px #6366f11f}.profile-pro-note{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;padding:.85rem 1rem}.profile-pro-note p{color:#64748b;margin:0;font-size:.84rem;line-height:1.5}@media (width<=900px){.profile-pro-hero,.profile-pro-grid{grid-template-columns:1fr}}.ws-shell{color:#0f172a;background:#f5f6f8;width:100%;height:100vh;min-height:100vh;display:flex;overflow:hidden}.ws-sidebar{z-index:20;background:#fff;border-right:1px solid #e8ecf1;flex-direction:column;flex:0 0 250px;gap:.85rem;width:250px;padding:1.1rem .95rem 1rem;display:flex}.ws-brand{align-items:center;gap:.65rem;padding:.15rem .35rem .35rem;display:flex}.ws-brand-mark{object-fit:contain;border-radius:.55rem;width:2rem;height:2rem}.ws-brand-name{letter-spacing:-.03em;color:#111827;font-size:1.15rem;font-weight:800}.ws-nav-label{letter-spacing:.1em;text-transform:uppercase;color:#94a3b8;margin:.35rem 0 0;padding:0 .55rem;font-size:.68rem;font-weight:700}.ws-nav{flex-direction:column;gap:.25rem;display:flex}.ws-nav-link{color:#475569;background:0 0;border:0;border-radius:.85rem;align-items:center;gap:.65rem;min-height:2.45rem;padding:.45rem .7rem;font-size:.92rem;font-weight:650;text-decoration:none;display:flex}.ws-nav-link:hover{color:#0f172a;background:#f1f5f9}.ws-nav-link.active{color:#6d28d9;background:#f3e8ff}.ws-nav-icon{justify-content:center;width:1.2rem;display:inline-flex}.ws-nav-text{flex:auto}.ws-nav-badge,.ws-nav-tag{border-radius:999px;padding:.12rem .45rem;font-size:.68rem;font-weight:750}.ws-nav-badge{color:#fff;text-align:center;background:#6d28d9;min-width:1.25rem}.ws-nav-tag{color:#6d28d9;background:#ede9fe}.ws-ibrain-card{background:linear-gradient(160deg,#f5f3ff 0%,#eef2ff 100%);border:1px solid #e9e5ff;border-radius:1rem;gap:.3rem;margin-top:.35rem;padding:.9rem;display:grid}.ws-ibrain-kicker{letter-spacing:.06em;text-transform:uppercase;color:#7c3aed;margin:0;font-size:.68rem;font-weight:700}.ws-ibrain-card strong{color:#1e1b4b;font-size:.95rem}.ws-ibrain-card p{color:#64748b;margin:0;font-size:.78rem;line-height:1.4}.ws-ibrain-cta{color:#6d28d9;margin-top:.35rem;font-size:.82rem;font-weight:750;text-decoration:none}.ws-ibrain-cta:hover{text-decoration:underline}.ws-sidebar-foot{border-top:1px solid #eef2f7;gap:.35rem;margin-top:auto;padding-top:.75rem;display:grid}.ws-logout{color:#64748b;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.75rem;padding:.45rem .7rem;font-size:.82rem;font-weight:650}.ws-logout:hover{color:#0f172a;background:#f8fafc}.ws-main{flex-direction:column;flex:auto;min-width:0;display:flex;overflow:hidden}.ws-topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd1;border-bottom:1px solid #e8ecf1;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.35rem;display:flex}.ws-search{color:#94a3b8;background:#fff;border:1px solid #e2e8f0;border-radius:999px;flex:auto;align-items:center;gap:.55rem;max-width:36rem;min-height:2.55rem;padding:0 .85rem;display:flex}.ws-search input{font:inherit;color:#0f172a;background:0 0;border:0;outline:none;flex:auto;min-width:0;font-size:.9rem}.ws-search kbd{color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.4rem;padding:.12rem .35rem;font-size:.68rem;font-weight:700}.ws-top-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.ws-bell{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;justify-content:center;align-items:center;width:2.45rem;height:2.45rem;display:inline-flex;position:relative}.ws-bell-dot{background:#ef4444;border-radius:999px;width:.45rem;height:.45rem;position:absolute;top:.45rem;right:.5rem}.ws-user{background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:.55rem;padding:.2rem .55rem .2rem .2rem;display:flex}.ws-avatar{color:#fff;background:#6d28d9;border-radius:999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.85rem;font-weight:750;display:inline-flex}.ws-user-meta{padding-right:.25rem;line-height:1.15;display:grid}.ws-user-meta strong{color:#0f172a;font-size:.82rem}.ws-user-meta span{color:#64748b;font-size:.7rem;font-weight:600}.ws-content{flex:auto;padding:1.15rem 1.35rem 2rem;overflow:auto}.ws-page-head{margin-bottom:1rem}.ws-page-head h1{letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.45rem}.ws-page-head p{color:#64748b;margin:0;font-size:.92rem}.ws-home,.ws-page{gap:1.1rem;max-width:72rem;display:grid}.ws-home-greeting{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.ws-home-greeting h1{letter-spacing:-.03em;margin:0 0 .25rem;font-size:1.65rem}.ws-home-greeting p{color:#64748b;margin:0}.ws-home-date{color:#94a3b8;white-space:nowrap;font-size:.85rem;font-weight:650}.ws-hero{color:#fff;background:radial-gradient(80% 120% at 100% 0,#a78bfa59,#0000 55%),linear-gradient(135deg,#5b21b6 0%,#7c3aed 55%,#6366f1 100%);border-radius:1.35rem;grid-template-columns:minmax(0,1.4fr) minmax(11rem,.7fr);align-items:stretch;gap:1rem;padding:1.35rem 1.4rem;display:grid;box-shadow:0 18px 40px #5b21b638}.ws-hero-eyebrow,.ws-cal-kicker{letter-spacing:.08em;text-transform:uppercase;opacity:.85;margin:0 0 .35rem;font-size:.7rem;font-weight:750}.ws-hero-copy h2{letter-spacing:-.03em;margin:0 0 .35rem;font-size:1.7rem}.ws-hero-sub{opacity:.9;margin:0 0 .75rem}.ws-hero-meta{opacity:.92;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem;font-size:.84rem;font-weight:650;display:flex}.ws-hero-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.ws-btn-primary{color:#5b21b6;background:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:2.55rem;padding:.55rem 1.05rem;font-size:.9rem;font-weight:750;text-decoration:none;display:inline-flex;box-shadow:0 8px 20px #0f172a1f}.ws-btn-primary.sm{color:#fff;min-height:2.15rem;box-shadow:none;background:#6d28d9;padding:.4rem .85rem;font-size:.82rem}.ws-btn-primary.sm:hover{filter:brightness(1.05)}.ws-btn-text{color:#ffffffeb;font-size:.88rem;font-weight:700;text-decoration:none}.ws-panel .ws-btn-text,.ws-course-foot a,.ws-section-head a,.ws-feed a{color:#6d28d9}.ws-hero-stats{opacity:.88;flex-wrap:wrap;gap:.85rem;font-size:.8rem;font-weight:650;display:flex}.ws-hero-card{aspect-ratio:.72;color:#4c1d95;background:linear-gradient(160deg,#ddd6fe 0%,#c4b5fd 45%,#a78bfa 100%);border-radius:1.1rem;align-content:end;place-self:center end;gap:.2rem;width:min(100%,12.5rem);padding:1rem;display:grid;transform:rotate(4deg);box-shadow:0 16px 30px #4c1d9540}.ws-hero-card-label{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:750}.ws-hero-card strong{font-size:1.15rem;line-height:1.15}.ws-hero-card span{font-size:.78rem;font-weight:650}.ws-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.ws-quick-card{color:inherit;background:#fff;border:1px solid #e8ecf1;border-radius:1rem;gap:.2rem;padding:.95rem 1rem;text-decoration:none;display:grid;box-shadow:0 8px 24px #0f172a0a}.ws-quick-card strong{font-size:.95rem}.ws-quick-card>span:last-child{color:#64748b;font-size:.78rem}.ws-quick-icon{border-radius:.7rem;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;margin-bottom:.25rem;display:inline-flex}.ws-quick-card.tone-purple .ws-quick-icon{color:#7c3aed;background:#f3e8ff}.ws-quick-card.tone-sky .ws-quick-icon{color:#0284c7;background:#e0f2fe}.ws-quick-card.tone-amber .ws-quick-icon{color:#d97706;background:#fef3c7}.ws-quick-card.tone-emerald .ws-quick-icon{color:#059669;background:#d1fae5}.ws-section,.ws-panel{gap:.75rem;display:grid}.ws-panel{background:#fff;border:1px solid #e8ecf1;border-radius:1.15rem;padding:1rem 1.05rem;box-shadow:0 8px 24px #0f172a0a}.ws-section-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.ws-section-head h2{letter-spacing:-.02em;margin:0;font-size:1.05rem}.ws-section-head a{font-size:.84rem;font-weight:700;text-decoration:none}.ws-course-card{background:#fff;border:1px solid #e8ecf1;border-radius:1.15rem;display:grid;overflow:hidden;box-shadow:0 8px 24px #0f172a0a}.ws-course-banner{color:#fff;letter-spacing:-.02em;justify-content:space-between;align-items:flex-start;min-height:5.5rem;padding:.9rem 1rem;font-weight:800;display:flex}.ws-course-banner em{background:#fff3;border-radius:999px;padding:.15rem .45rem;font-size:.68rem;font-style:normal;font-weight:750}.ws-course-card.tone-purple .ws-course-banner{background:linear-gradient(135deg,#6d28d9,#4c1d95)}.ws-course-card.tone-teal .ws-course-banner{background:linear-gradient(135deg,#0d9488,#0f766e)}.ws-course-card.tone-rose .ws-course-banner{background:linear-gradient(135deg,#e11d48,#be123c)}.ws-course-body{gap:.35rem;padding:.95rem 1rem 1rem;display:grid}.ws-course-cat{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;margin:0;font-size:.68rem;font-weight:750}.ws-course-body h3{margin:0;font-size:1.05rem}.ws-course-desc{color:#64748b;margin:0;font-size:.84rem;line-height:1.4}.ws-course-stats{color:#64748b;flex-wrap:wrap;gap:.75rem;margin-top:.25rem;font-size:.78rem;font-weight:650;display:flex}.ws-course-foot{justify-content:space-between;align-items:center;gap:.75rem;margin-top:.55rem;display:flex}.ws-course-foot a:first-child{font-size:.84rem;font-weight:700;text-decoration:none}.ws-bottom-grid{grid-template-columns:minmax(0,1.35fr) minmax(14rem,.75fr);align-items:start;gap:.85rem;display:grid}.ws-feed{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.ws-feed li{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;gap:.85rem;padding:.65rem 0;display:flex}.ws-feed li:first-child{border-top:0;padding-top:0}.ws-feed strong{font-size:.9rem;display:block}.ws-feed p{color:#64748b;margin:.15rem 0;font-size:.8rem}.ws-feed-time{color:#94a3b8;font-size:.72rem;font-weight:650}.ws-feed a{white-space:nowrap;flex-shrink:0;font-size:.8rem;font-weight:750;text-decoration:none}.ws-calendar{position:relative}.ws-cal-badge{color:#6d28d9;background:#f3e8ff;border-radius:999px;padding:.2rem .5rem;font-size:.68rem;font-weight:750;position:absolute;top:1rem;right:1rem}.ws-cal-date{text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;width:3.6rem;margin:.35rem 0 .75rem;padding:.45rem .35rem}.ws-cal-date span{color:#94a3b8;letter-spacing:.06em;font-size:.68rem;font-weight:750;display:block}.ws-cal-date strong{color:#0f172a;font-size:1.25rem}.ws-calendar h3{margin:0 0 .35rem;font-size:1rem}.ws-calendar p{color:#64748b;margin:0 0 .85rem;font-size:.86rem}.ws-empty{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:1rem;padding:1.25rem}.ws-empty p{color:#64748b;margin:0;font-size:.88rem}.ws-learning-grid{gap:.85rem;display:grid}.ws-learning-highlight{color:inherit;background:linear-gradient(135deg,#f5f3ff,#eef2ff);border:1px solid #e9e5ff;border-radius:1.15rem;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.2rem;text-decoration:none;display:flex}.ws-learning-highlight h2{margin:.15rem 0 .25rem;font-size:1.15rem}.ws-learning-highlight p{color:#64748b;margin:0;font-size:.88rem}.ws-assign-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.ws-assign-list li{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:.85rem;padding:.75rem 0;display:flex}.ws-assign-list li:first-child{border-top:0;padding-top:0}.ws-assign-list strong{font-size:.92rem;display:block}.ws-assign-list p{color:#64748b;margin:.15rem 0 0;font-size:.8rem}.ws-ibrain-hero{background:#fff;border:1px solid #e8ecf1;border-radius:1.25rem;grid-template-columns:minmax(0,1.2fr) minmax(14rem,.8fr);gap:1rem;padding:1.35rem;display:grid}.ws-ibrain-hero h2{letter-spacing:-.02em;margin:0 0 .45rem;font-size:1.45rem}.ws-ibrain-hero>div>p{color:#64748b;max-width:36rem;margin:0 0 1rem}.ws-ibrain-hero .ws-btn-text{color:#6d28d9}.ws-ibrain-panel{background:linear-gradient(160deg,#f5f3ff,#eef2ff);border:1px solid #e9e5ff;border-radius:1.1rem;align-content:start;gap:.55rem;padding:1rem;display:grid}.ws-ibrain-panel strong{color:#5b21b6;font-size:1.05rem}.ws-ibrain-panel>span{color:#64748b;font-size:.82rem}.ws-ibrain-bubble{color:#334155;background:#fff;border-radius:.85rem;padding:.7rem .8rem;font-size:.84rem;box-shadow:0 4px 12px #0f172a0d}.ws-ibrain-bubble.reply{color:#fff;background:#6d28d9}@media (width<=1100px){.ws-quick-grid,.ws-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-bottom-grid,.ws-hero,.ws-ibrain-hero{grid-template-columns:1fr}.ws-hero-card{justify-self:start;transform:none}}@media (width<=860px){.ws-shell{flex-direction:column;height:auto;min-height:100vh;overflow:visible}.ws-sidebar{border-bottom:1px solid #e8ecf1;border-right:0;flex:none;width:100%}.ws-nav{flex-direction:row;overflow-x:auto}.ws-ibrain-card,.ws-sidebar-foot{display:none}.ws-topbar{flex-wrap:wrap}.ws-search{order:3;width:100%;max-width:none}.ws-quick-grid,.ws-course-grid{grid-template-columns:1fr}}.ann-workspace{width:100%;max-width:78rem;margin:0 auto}.ann-workspace-grid{grid-template-columns:minmax(0,1.15fr) minmax(20rem,.95fr);align-items:start;gap:1rem;display:grid}.ann-timeline-pane,.ann-detail-pane{background:#fff;border:1px solid #e8ecf1;border-radius:1.35rem;min-height:32rem;box-shadow:0 12px 32px #0f172a0d}.ann-timeline-pane{padding:1.25rem 1rem 1.5rem}.ann-timeline-head{text-align:center;margin-bottom:1rem;padding:0 .75rem}.ann-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#7c3aed;margin:0 0 .35rem;font-size:.7rem;font-weight:750}.ann-timeline-head h1{letter-spacing:-.03em;color:#0f172a;margin:0;font-size:1.55rem}.ann-timeline-head p{color:#64748b;margin:.3rem 0 0;font-size:.9rem}.ann-timeline{padding:.25rem 0 .5rem;position:relative}.ann-timeline:before{content:"";background:linear-gradient(#e9d5ff,#e2e8f0 30%,#e2e8f0);width:2px;position:absolute;top:.4rem;bottom:.4rem;left:50%;transform:translate(-50%)}.ann-day-group{gap:.85rem;margin-bottom:.85rem;display:grid}.ann-node{grid-template-columns:1fr 1fr;align-items:start;gap:0;min-height:4.5rem;display:grid;position:relative}.ann-node.side-left .ann-card{grid-column:1;justify-self:end;width:min(100%,19.5rem);margin-right:1.35rem}.ann-node.side-right .ann-card{grid-column:2;justify-self:start;width:min(100%,19.5rem);margin-left:1.35rem}.ann-axis{z-index:2;pointer-events:none;justify-items:center;gap:.35rem;display:grid;position:absolute;top:1.15rem;left:50%;transform:translate(-50%)}.ann-axis-dot{background:#fff;border:3px solid #a78bfa;border-radius:999px;width:.85rem;height:.85rem;box-shadow:0 0 0 4px #a78bfa2e}.ann-node.is-active .ann-axis-dot{background:#6d28d9;border-color:#6d28d9;box-shadow:0 0 0 5px #6d28d92e}.ann-axis-date{color:#64748b;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:.12rem .45rem;font-size:.68rem;font-weight:750}.ann-card{text-align:left;cursor:pointer;font:inherit;color:inherit;background:#fff;border:1px solid #e8ecf1;border-radius:1rem;align-items:flex-start;gap:.7rem;padding:.85rem .9rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;box-shadow:0 8px 22px #0f172a0a}.ann-card:hover{border-color:#ddd6fe;transform:translateY(-1px);box-shadow:0 12px 28px #4c1d9514}.ann-node.is-active .ann-card{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf626,0 14px 30px #4c1d951a}.ann-card-icon{border-radius:.7rem;flex-shrink:0;justify-content:center;align-items:center;width:2.15rem;height:2.15rem;display:inline-flex}.ann-card-icon.tone-class{color:#7c3aed;background:#f3e8ff}.ann-card-icon.tone-assignment{color:#0284c7;background:#e0f2fe}.ann-card-icon.tone-calendar{color:#0d9488;background:#ecfeff}.ann-card-icon.tone-support{color:#d97706;background:#fef3c7}.ann-card-icon.tone-welcome{color:#db2777;background:#fce7f3}.ann-card-icon.tone-general{color:#64748b;background:#f1f5f9}.ann-card-copy{gap:.25rem;min-width:0;display:grid}.ann-card-top{align-items:flex-start;gap:.4rem;display:flex}.ann-card-top h3{letter-spacing:-.015em;flex:auto;margin:0;font-size:.92rem;line-height:1.25}.ann-card-copy>p{color:#64748b;margin:0;font-size:.8rem;line-height:1.4}.ann-card-meta{color:#94a3b8;flex-wrap:wrap;gap:.35rem .65rem;font-size:.72rem;font-weight:650;display:flex}.ann-pill{letter-spacing:.04em;text-transform:uppercase;color:#6d28d9;background:#f3e8ff;border-radius:999px;flex-shrink:0;padding:.15rem .4rem;font-size:.62rem;font-weight:800}.ann-empty{text-align:center;color:#64748b;padding:2rem 1rem}.ann-empty strong{color:#0f172a;margin-bottom:.3rem;display:block}.ann-detail-pane{align-content:start;gap:.9rem;padding:1rem 1.05rem 1.15rem;display:grid;position:sticky;top:.5rem}.ann-detail-tools{gap:.7rem;display:grid}.ann-workspace .ann-search{color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:.5rem;width:100%;min-height:2.55rem;padding:0 .85rem;display:flex}.ann-workspace .ann-search input{width:100%;font:inherit;color:#0f172a;background:0 0;border:0;outline:none;font-size:.88rem}.ann-filters{flex-wrap:wrap;gap:.4rem;display:flex}.ann-filters button{color:#475569;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:.35rem .7rem;font-size:.78rem;font-weight:700}.ann-filters button.is-active{color:#fff;background:#6d28d9;border-color:#6d28d9}.ann-detail-empty{text-align:center;color:#64748b;justify-items:center;gap:.35rem;padding:3rem 1rem;display:grid}.ann-detail-empty-icon{color:#7c3aed;background:#f3e8ff;border-radius:1rem;justify-content:center;align-items:center;width:3rem;height:3rem;margin-bottom:.35rem;display:inline-flex}.ann-detail-empty strong{color:#0f172a}.ann-detail{gap:.7rem;display:grid}.ann-detail-bar{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.ann-detail-tag{color:#6d28d9;background:#f3e8ff;border-radius:999px;padding:.28rem .65rem;font-size:.72rem;font-weight:750}.ann-detail-nav{gap:.3rem;display:inline-flex}.ann-detail-nav button{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:.65rem;width:2rem;height:2rem;font-size:1.1rem;line-height:1}.ann-detail-nav button:disabled{opacity:.4;cursor:not-allowed}.ann-detail h2{letter-spacing:-.03em;margin:0;font-size:1.35rem;line-height:1.25}.ann-detail-meta{color:#94a3b8;margin:0;font-size:.82rem;font-weight:650}.ann-detail-body{color:#334155;white-space:pre-wrap;margin:.15rem 0;font-size:.95rem;line-height:1.6}.ann-detail-cta{color:#fff;background:linear-gradient(135deg,#5b21b6,#7c3aed 55%,#6366f1);border-radius:1rem;align-items:center;gap:.75rem;padding:.9rem 1rem;display:flex;box-shadow:0 14px 30px #5b21b638}.ann-detail-cta-icon{background:#ffffff2e;border-radius:.8rem;flex-shrink:0;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;display:inline-flex}.ann-detail-cta strong{margin-bottom:.15rem;font-size:.92rem;display:block}.ann-detail-cta p{opacity:.9;margin:0;font-size:.8rem;line-height:1.35}.ann-detail-actions{flex-wrap:wrap;gap:.55rem;display:flex}.ann-btn-primary,.ann-btn-ghost{min-height:2.45rem;font:inherit;cursor:pointer;border-radius:.85rem;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.88rem;font-weight:750;text-decoration:none;display:inline-flex}.ann-btn-primary{color:#fff;background:#6d28d9;border:0}.ann-btn-primary:hover{filter:brightness(1.05)}.ann-btn-ghost{color:#5b21b6;background:#fff;border:1px solid #ddd6fe}.ann-btn-ghost:disabled{opacity:.55;cursor:default}.ann-more{border-top:1px solid #f1f5f9;gap:.55rem;margin-top:.35rem;padding-top:.85rem;display:grid}.ann-more>p{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;margin:0;font-size:.72rem;font-weight:750}.ann-more-list{gap:.4rem;display:grid}.ann-more-list button{text-align:left;width:100%;font:inherit;cursor:pointer;background:#f8fafc;border:1px solid #eef2f7;border-radius:.85rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.ann-more-list strong{color:#0f172a;font-size:.84rem}.ann-more-list span{color:#94a3b8;white-space:nowrap;font-size:.72rem;font-weight:700}@media (width<=980px){.ann-workspace-grid{grid-template-columns:1fr}.ann-detail-pane{position:static}.ann-timeline:before{left:1rem}.ann-node{grid-template-columns:1fr;padding-left:2.4rem}.ann-node.side-left .ann-card,.ann-node.side-right .ann-card{grid-column:1;justify-self:stretch;width:100%;margin:0}.ann-axis{left:1rem}.ann-axis-date{display:none}}.admin-ws{--ac-purple:#6366f1;--ac-purple-deep:#4f46e5;--ac-purple-soft:#f3e8ff;--ac-purple-ring:#6366f129;--ac-ink:#0f172a;--ac-muted:#64748b;--ac-line:#f1f5f9;--ac-bg:#f8fafc;--ac-surface:#fff;--ac-ok:#16a34a;--ac-ok-bg:#dcfce7;--ac-off:#dc2626;--ac-off-bg:#fee2e2;--ac-radius:1rem;--ac-shadow:0 4px 20px #0f172a0a;background:var(--ac-bg)}.admin-ws .ws-sidebar{background:#fff;border-right:1px solid #e2e8f0;flex:0 0 250px;width:250px;display:flex!important}.admin-ws .ws-brand-name{letter-spacing:-.03em;color:#0f172a;font-size:1.35rem;font-weight:800}.admin-ws .ws-brand-dot{color:#7c3aed}.admin-ws .ws-nav-label{letter-spacing:.08em;color:#94a3b8;margin-top:.5rem;font-size:.65rem;font-weight:700}.admin-ws .ws-nav-link{color:#475569;border-radius:12px;font-weight:600}.admin-ws .ws-nav-link.active{color:#7c3aed;background:#f3e8ff}.admin-ws .ws-nav{min-height:0;overflow-y:auto}.admin-ws .ws-page-head{display:none}.ac-side-brand-card{margin-top:1rem;padding:.75rem .25rem}.ac-side-brand-card strong{color:#0f172a;font-size:1.15rem;font-weight:800;display:block}.ac-side-brand-card p{color:#94a3b8;margin:.2rem 0 0;font-size:.72rem;font-weight:500;line-height:1.3}.ac-main{background:var(--ac-bg);flex-direction:column;min-width:0;display:flex}.ac-topbar{z-index:15;background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.75rem;display:flex;position:sticky;top:0}.ac-search{color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;flex:auto;align-items:center;gap:.6rem;max-width:24rem;min-height:2.5rem;padding:0 .9rem;display:flex}.ac-search input{font:inherit;color:var(--ac-ink);background:0 0;border:0;outline:none;flex:auto;min-width:0;font-size:.88rem}.ac-search kbd{color:#94a3b8;background:#fff;border:1px solid #e2e8f0;border-radius:.4rem;padding:.15rem .4rem;font-size:.68rem;font-weight:700}.ac-topbar-right{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.ac-icon-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;place-items:center;width:2.5rem;height:2.5rem;display:grid;position:relative}.ac-dot{background:#ef4444;border-radius:9999px;width:.5rem;height:.5rem;position:absolute;top:.5rem;right:.55rem;box-shadow:0 0 0 2px #fff}.ac-user-chip{font:inherit;color:var(--ac-ink);cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;align-items:center;gap:.55rem;padding:.25rem .75rem .25rem .25rem;display:flex}.ac-user-meta-column{flex-direction:column;align-items:flex-start;line-height:1.1;display:flex}.ac-user-title{color:#0f172a;font-size:.85rem;font-weight:800}.ac-user-sub{color:#94a3b8;font-size:.7rem;font-weight:500}.ac-user-chip svg{color:#94a3b8;flex-shrink:0;margin-left:.2rem}.ac-avatar{color:#fff;background:#7c3aed;border-radius:9999px;place-items:center;width:2rem;height:2rem;font-size:.85rem;font-weight:800;display:grid}.ac-content{width:100%;max-width:1240px;margin:0 auto;padding:1.5rem 1.75rem 3rem}.ac-page-head{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;display:flex}.ac-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#7c3aed;margin:0 0 .35rem;font-size:.68rem;font-weight:800}.ac-page-head h1{letter-spacing:-.03em;color:#0f172a;margin:0;font-size:2.1rem;font-weight:800}.ac-subtitle{color:#64748b;margin:.35rem 0 0;font-size:.92rem}.ac-kpi-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem;margin-bottom:1.35rem;display:grid}.ac-kpi{box-shadow:var(--ac-shadow);background:#fff;border:1px solid #f1f5f9;border-radius:1.1rem;flex-direction:column;justify-content:space-between;padding:1.25rem 1.35rem;display:flex}.ac-kpi-top-row{align-items:center;gap:.85rem;margin-bottom:.75rem;display:flex}.ac-kpi-circle-icon{border-radius:9999px;flex-shrink:0;place-items:center;width:2.75rem;height:2.75rem;display:grid}.ac-kpi-circle-icon.purple{color:#7c3aed;background:#f3e8ff}.ac-kpi-circle-icon.blue{color:#2563eb;background:#dbeafe}.ac-kpi-circle-icon.green{color:#16a34a;background:#dcfce7}.ac-kpi-circle-icon.soft-blue{color:#4f46e5;background:#e0e7ff}.ac-kpi-big-val{color:#0f172a;letter-spacing:-.04em;font-size:1.95rem;font-weight:800;line-height:1}.ac-kpi-bottom-info{flex-direction:column;gap:.25rem;display:flex}.ac-kpi-label{color:#64748b;font-size:.82rem;font-weight:600}.ac-tag-badge{align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.ac-tag-badge.positive{color:#16a34a}.ac-tag-badge.neutral{color:#64748b}.ac-toolbar{box-shadow:var(--ac-shadow);background:#fff;border:1px solid #f1f5f9;border-radius:1.1rem;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.35rem;padding:.65rem .85rem;display:flex}.ac-toolbar-search{color:#94a3b8;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;flex:auto;align-items:center;gap:.6rem;min-height:2.5rem;padding:0 .9rem;display:flex}.ac-toolbar-search input{font:inherit;color:#0f172a;background:0 0;border:0;outline:none;flex:auto;font-size:.88rem}.ac-clean-select-pill{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;align-items:center;gap:.35rem;min-height:2.5rem;padding:0 .9rem;font-size:.85rem;font-weight:600;display:flex}.ac-clean-select-pill select{font:inherit;color:#0f172a;cursor:pointer;background:0 0;border:0;outline:none;font-weight:600}.ac-clean-select-pill.sort svg{color:#64748b;flex-shrink:0}.ac-btn-purple{color:#fff;min-height:2.5rem;font:inherit;cursor:pointer;background:#7c3aed;border:0;border-radius:9999px;flex-shrink:0;align-items:center;gap:.4rem;padding:0 1.25rem;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 4px 14px #7c3aed40}.ac-btn-purple:hover{background:#6d28d9}.ac-btn{min-height:2.45rem;font:inherit;cursor:pointer;box-sizing:border-box;white-space:nowrap;border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;gap:.35rem;padding:0 1rem;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.ac-btn:disabled{opacity:.45;cursor:not-allowed}.ac-btn-primary{background:var(--ac-purple,#7c3aed);border-color:var(--ac-purple,#7c3aed);color:#fff}.ac-btn-primary:hover:not(:disabled){background:var(--ac-purple-deep,#6d28d9)}.ac-btn-ghost{color:#475569;background:#fff;border-color:#e2e8f0}.ac-btn-ghost:hover:not(:disabled){color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.ac-btn-sm{border-radius:.65rem;min-height:2.05rem;padding:0 .75rem;font-size:.8rem}a.ac-btn:visited{color:inherit}a.ac-btn-primary:visited,a.ac-btn-primary:hover{color:#fff}a.ac-btn-ghost:visited{color:#475569}.ac-banner{border-radius:.85rem;margin-bottom:.9rem;padding:.75rem .95rem;font-size:.9rem;font-weight:600}.ac-banner.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.ac-banner.ok{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.ac-empty{text-align:center;color:var(--ac-muted);padding:2.75rem 1.25rem}.ac-empty h3,.ac-empty h2{color:var(--ac-ink);margin:0 0 .35rem;font-size:1.05rem}.ac-empty p{margin:0;font-size:.88rem}.ac-pill{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.35rem;min-height:1.55rem;padding:.15rem .6rem;font-size:.72rem;font-weight:800;display:inline-flex}.ac-pill:before{content:"";background:currentColor;border-radius:999px;flex-shrink:0;width:.4rem;height:.4rem}.ac-pill.on{background:var(--ac-ok-bg);color:var(--ac-ok);border-color:#a7f3d0}.ac-pill.off{background:var(--ac-off-bg);color:var(--ac-off);border-color:#fecaca}.ac-pill.neutral{color:#64748b;border-color:var(--ac-line);background:#f8fafc}.ac-pill.neutral:before{display:none}.ac-course-icon{background:var(--ac-purple-soft);color:#7c3aed;border-radius:.7rem;flex-shrink:0;place-items:center;width:2.35rem;height:2.35rem;font-size:.82rem;font-weight:800;line-height:1;display:grid}.ac-course-cell strong{color:var(--ac-ink);font-size:.9rem;font-weight:750;display:block}.ac-course-cell>div span{color:#94a3b8;margin-top:.1rem;font-size:.75rem;display:block}.ac-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.ac-pager{align-items:center;gap:.35rem;display:flex}.ac-pager button{color:#334155;min-width:2rem;height:2rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:.55rem;font-weight:700}.ac-pager button.active{color:#fff;background:#7c3aed;border-color:#7c3aed}.ac-pager button:disabled{opacity:.4;cursor:not-allowed}.ac-table-foot{border-top:1px solid var(--ac-line);color:var(--ac-muted);background:#fbfcfe;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;font-size:.82rem;display:flex}.ac-kpi>span{color:#94a3b8;font-size:.78rem;font-weight:700}.ac-kpi>strong{letter-spacing:-.03em;color:var(--ac-ink);font-size:1.65rem;font-weight:800;line-height:1.1}.ac-kpi>em{color:var(--ac-ok);font-size:.75rem;font-style:normal;font-weight:700}.ac-kpi>em.flat{color:#94a3b8}.ac-kpi.active{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed24}.ac-toolbar select{min-height:2.5rem;font:inherit;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:999px;min-width:8.5rem;padding:0 .85rem;font-size:.85rem;font-weight:600}.ac-toolbar-search input{height:auto!important;min-height:0!important;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.ac-table-card{box-shadow:var(--ac-shadow);background:#fff;border:1px solid #f1f5f9;border-radius:1.1rem;overflow:hidden}.ac-table{border-collapse:collapse;width:100%;font-size:.88rem}.ac-table th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:#64748b;background:#fff;border-bottom:1px solid #f1f5f9;padding:1rem 1.25rem;font-size:.72rem;font-weight:800}.ac-table td{color:#334155;vertical-align:middle;border-bottom:1px solid #f8fafc;padding:1.1rem 1.25rem}.ac-table tbody tr:hover td{background:#fafafa}.ac-course-cell{align-items:center;gap:.85rem;display:flex}.ac-course-badge-icon{border-radius:.75rem;flex-shrink:0;place-items:center;width:2.6rem;height:2.6rem;display:grid}.ac-course-title{color:#0f172a;font-size:.92rem;font-weight:800}.ac-ihub-synced{color:#94a3b8;align-items:center;gap:.35rem;margin-top:.15rem;font-size:.75rem;font-weight:500;display:flex}.ac-dot-green{background:#16a34a;border-radius:9999px;width:.4rem;height:.4rem;display:inline-block}.ac-student-cell{align-items:center;gap:.75rem;display:flex}.ac-count-val{color:#0f172a;min-width:2.2rem;font-size:.9rem;font-weight:800}.ac-progress-bar-wrap{background:#f1f5f9;border-radius:9999px;width:6.5rem;height:.45rem;overflow:hidden}.ac-progress-bar-fill{background:#7c3aed;border-radius:9999px;height:100%}.ac-pct-label{color:#94a3b8;font-size:.75rem;font-weight:600}.ac-stat-cell strong{color:#0f172a;font-size:.9rem;font-weight:800;display:block}.ac-stat-cell span{color:#94a3b8;font-size:.75rem;font-weight:500;display:block}.ac-support-pill{border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-size:.78rem;font-weight:700;display:inline-flex}.ac-support-pill i{border-radius:9999px;width:.4rem;height:.4rem;display:inline-block}.ac-support-pill.on{color:#15803d;background:#dcfce7}.ac-support-pill.on i{background:#16a34a}.ac-support-pill.off{color:#b91c1c;background:#fee2e2}.ac-support-pill.off i{background:#dc2626}.ac-status-text{font-size:.82rem;font-weight:700}.ac-status-text.active{color:#16a34a}.ac-status-text.inactive{color:#94a3b8}.ac-actions-cell{align-items:center;gap:.45rem;display:flex}.ac-btn-manage-soft{color:#7c3aed;background:#f3e8ff;border-radius:.6rem;justify-content:center;align-items:center;min-height:2.1rem;padding:0 1.1rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.ac-btn-manage-soft:hover{background:#ede9fe}.ac-btn-more-dots{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:.6rem;place-items:center;width:2.1rem;height:2.1rem;display:grid}.ac-btn-more-dots:hover{color:#0f172a;background:#f8fafc}.ac-dropdown-menu{z-index:50;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;flex-direction:column;gap:.15rem;min-width:11.5rem;margin-top:.35rem;padding:.4rem;display:flex;position:absolute;top:100%;right:0;box-shadow:0 10px 25px #0f172a1f}.ac-dropdown-item{color:#334155;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.5rem;align-items:center;gap:.55rem;width:100%;padding:.5rem .75rem;font-size:.82rem;font-weight:600;text-decoration:none;display:flex}.ac-dropdown-item:hover{color:#7c3aed;background:#f3e8ff}.ac-dropdown-item svg{color:#7c3aed;flex-shrink:0}.ac-table-foot{color:#64748b;background:#fff;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:.9rem 1.1rem;font-size:.82rem;display:flex}.ac-pagination{align-items:center;gap:.4rem;display:flex}.ac-pagination button{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;min-width:2rem;height:2rem;font-weight:700}.ac-pagination button.active{color:#7c3aed;background:#f3e8ff;border-color:#d8b4fe}.ac-per-page{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;align-items:center;gap:.35rem;margin-left:.5rem;padding:.25rem .6rem;font-size:.82rem;font-weight:600;display:flex}.admin-ws .ac-page>.assign-admin-head,.admin-ws .page:not(.ccc-page)>.assign-admin-head{display:none}.admin-ws .assign-fields-builder .assign-admin-head{display:flex}.admin-ws .page,.admin-ws .page-content,.admin-ws .page-wide{max-width:none;margin:0;padding:0}.admin-ws select,.admin-ws input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=submit]):not([type=button]){box-sizing:border-box;height:auto;min-height:2.5rem;line-height:1.35}.admin-ws textarea{box-sizing:border-box;height:auto;min-height:6rem;line-height:1.45}.admin-ws .ac-toolbar-search input,.admin-ws .ac-search input{height:auto!important;min-height:0!important;box-shadow:none!important;border:0!important;padding:0!important}.admin-ws .field select,.admin-ws .filter-row select,.admin-ws .announce-form select,.admin-ws .assign-form select{padding-right:2rem}.ccc-back-pill{color:#7c3aed;background:#f3e8ff;border-radius:9999px;align-items:center;gap:.35rem;margin-bottom:.65rem;padding:.35rem .85rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.ccc-back-pill:hover{color:#6d28d9;background:#ede9fe}.ccc-head-meta{align-items:center;gap:.5rem;margin-top:.35rem;display:flex}.ccc-badge-info{color:#64748b;background:#f1f5f9;border-radius:.4rem;align-items:center;padding:.2rem .6rem;font-size:.78rem;font-weight:600;display:inline-flex}.ccc-module-icon-box{border-radius:.75rem;flex-shrink:0;place-items:center;width:2.6rem;height:2.6rem;display:grid}.ccc-module-card-title{color:#0f172a!important;margin:.75rem 0 .25rem!important;font-size:1.05rem!important;font-weight:800!important}.ccc-module-card-desc{color:#64748b;margin:0 0 1rem;font-size:.82rem;line-height:1.4}.ccc-module-card-foot{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:auto;padding-top:.65rem;font-size:.78rem;display:flex}.ccc-module-card-foot strong{color:#0f172a;font-weight:700}.ccc-manage-link{color:#7c3aed;opacity:0;font-weight:700;transition:opacity .15s}.ccc-module-card:hover .ccc-manage-link{opacity:1}.ccc-module-card{transition:transform .15s,box-shadow .15s}.ccc-module-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #7c3aed14}@media (width<=1100px){.ac-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.ac-topbar{flex-wrap:wrap;padding:.75rem 1rem}.ac-search{order:3;width:100%;max-width:none}.ac-kpi-row{grid-template-columns:1fr}.ac-content{padding:1rem 1rem 2rem}.ac-table-card{overflow-x:auto}.ac-side-card{display:none}}.courses-heading{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.courses-heading h1,.courses-control h1{letter-spacing:-.04em;color:#0f172a;margin:.3rem 0;font-size:1.8rem}.courses-heading p:not(.ac-eyebrow){color:#64748b;margin:.45rem 0 0}.courses-summary{background:#fff;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin:1.4rem 0;display:grid}.courses-summary>div{border-right:1px solid #e2e8f0;flex-direction:column;gap:.3rem;padding:1rem 1.4rem;display:flex}.courses-summary>div:last-child{border:0}.courses-summary span{color:#64748b;font-size:.8rem}.courses-summary strong{color:#0f172a;font-variant-numeric:tabular-nums;font-size:1.6rem}.courses-directory{background:#fff;border:1px solid #e2e8f0;border-radius:14px;min-width:0}.courses-filters{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;align-items:flex-end;gap:.8rem;padding:1rem;display:flex}.courses-filters label{color:#475569;flex-direction:column;gap:.4rem;font-size:.75rem;font-weight:600;display:flex}.courses-filters .courses-search{flex:220px}.courses-filters input,.courses-filters select{background:#fff;width:100%;min-width:0;height:2.6rem;font-size:.85rem;font-weight:400}.courses-table-scroll{border-radius:0;overflow-x:auto}.courses-workspace .ac-table th{background:#f8fafc;padding:.9rem 1rem;font-size:.68rem}.courses-workspace .ac-table td{border-bottom:1px solid #f1f5f9;padding:1rem}.courses-workspace .ac-table .courses-number{text-align:right;font-variant-numeric:tabular-nums}.courses-name{color:#1e293b;font-weight:650;text-decoration:none}.courses-name:hover{color:#6d28d9;text-decoration:underline}.courses-secondary{color:#64748b;margin-top:.3rem;font-size:.75rem;display:block}.courses-pagination{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.courses-source{color:#64748b;margin:.8rem 0 0;font-size:.75rem}.courses-workspace .ac-table-foot{border-radius:0 0 14px 14px;flex-wrap:wrap;gap:1rem}.courses-sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.courses-workspace :focus-visible,.courses-control :focus-visible{outline-offset:3px;outline:3px solid #8b5cf6}.courses-control{width:100%;max-width:none}.courses-control .ccc-control-head{margin-bottom:1.25rem}.courses-control .ccc-control-head .eyebrow{margin:.8rem 0 .25rem}.courses-control .ccc-head-meta{margin-top:.6rem}.courses-control .ccc-layout{flex-direction:column;gap:1.2rem;display:flex}.courses-control .ccc-side{border-radius:12px;flex-direction:row;gap:.25rem;width:100%;padding:.35rem;display:flex;position:static;overflow-x:auto}.courses-control .ccc-side-item{border-radius:8px;flex:none;gap:.7rem;width:auto;padding:.7rem 1rem;font-size:.88rem}.courses-control .ccc-main{width:100%;min-width:0}.courses-control .ccc-module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.courses-control .ccc-module-card{text-align:left;min-height:0;padding:1.15rem}.courses-control .ccc-module-card-title{font-size:1.1rem}.courses-control .ccc-module-card-desc{font-size:.88rem;line-height:1.55}.courses-control .ccc-module-card-foot{flex-wrap:wrap;gap:.75rem;font-size:.8rem}.courses-control .ccc-pill.off{color:#64748b;background:#f1f5f9}.courses-future{color:#64748b;border-top:1px solid #e2e8f0;margin-top:1.3rem;padding:1rem 0;font-size:.85rem}.courses-future summary{cursor:pointer;font-weight:600}.courses-future p{margin:.6rem 0 0}@media (width<=1100px){.courses-control .ccc-module-grid{grid-template-columns:1fr}}@media (width<=600px){.courses-heading{flex-direction:column;align-items:flex-start;gap:.8rem}.courses-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.courses-summary>div{border-bottom:1px solid #e2e8f0;padding:.85rem}.courses-summary>div:nth-child(2){border-right:0}.courses-summary>div:nth-child(3){border-bottom:0}.courses-filters label{flex:120px}.courses-control .ccc-panel-head,.courses-control .ccc-list-row{flex-wrap:wrap;gap:1rem}.courses-workspace .ac-table{min-width:780px}.courses-heading h1,.courses-control h1{font-size:1.55rem}}.courses-workspace{--course-accent:#7c3aed}.courses-heading{padding:.4rem 0 .8rem}.courses-heading h1{font-size:2rem;font-weight:780}.courses-workspace .ac-btn{color:#7134d6;min-height:2.5rem;font:inherit;white-space:nowrap;cursor:pointer;background:#f3edff;border:1px solid #e5ddf7;border-radius:11px;justify-content:center;align-items:center;gap:.45rem;padding:.7rem 1rem;font-size:.82rem;font-weight:650;text-decoration:none;transition:background .15s,box-shadow .15s;display:inline-flex}.courses-workspace .ac-btn:hover{background:#eae0fc;box-shadow:0 3px 9px #6432bd12}.courses-workspace .ac-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.courses-workspace .ac-btn-ghost{color:#475569;background:#fff;border-color:#e2e8f0}.courses-workspace .ac-btn-ghost:hover{box-shadow:none;color:#0f172a;background:#f8fafc}.courses-workspace .ac-btn-primary{color:#fff;background:#7c3aed;border-color:#7c3aed}.courses-workspace .ac-btn-primary:hover{color:#fff;background:#6d28d9}.courses-heading>.ac-btn,.courses-heading>.ac-btn:link,.courses-heading>.ac-btn:visited,.courses-heading>.ac-btn:hover,.courses-heading>.ac-btn:active{color:#fff;background:#7c3aed;border-color:#7c3aed;box-shadow:0 5px 15px #7c3aed24}.courses-heading>.ac-btn:hover{background:#6d28d9}.courses-summary{background:0 0;border:0;gap:1rem;margin:.7rem 0 1.5rem}.courses-summary>.courses-metric{background:linear-gradient(135deg,#fff 60%,var(--tone-soft));border:1px solid #e9e6f0;border-radius:18px;gap:.65rem;padding:1.2rem 1.3rem;position:relative;overflow:hidden;box-shadow:0 5px 20px #24204405}.courses-summary>.courses-metric:last-child{border:1px solid #e9e6f0}.courses-metric-top{align-items:center;gap:.7rem;display:flex}.courses-summary .courses-metric-icon{background:var(--tone-soft);width:2.6rem;height:2.6rem;color:var(--tone);border-radius:12px;place-items:center;display:grid}.courses-summary .courses-metric-label{color:#526077;font-size:.8rem;font-weight:650}.courses-summary strong{letter-spacing:-.045em;font-size:2rem;line-height:1.15}.courses-summary .courses-metric-caption{color:#718096;font-size:.72rem}.courses-directory{border-color:#e8e5ef;border-radius:18px;box-shadow:0 8px 28px #25203f05}.courses-directory-heading{justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.35rem .4rem;display:flex}.courses-directory-heading h2{color:#202a3e;letter-spacing:-.02em;align-items:center;gap:.6rem;margin:0;font-size:1rem;display:flex}.courses-directory-heading h2 span{color:#793ad3;background:#f0e9ff;border-radius:7px;padding:.2rem .5rem;font-size:.72rem}.courses-directory-heading p{color:#718096;margin:.4rem 0;font-size:.78rem}.courses-source-badge{color:#64748b;background:#f7f8fb;border:1px solid #e9ecf2;border-radius:8px;padding:.4rem .65rem;font-size:.72rem}.courses-filters{gap:.8rem;padding:1rem 1.35rem 1.25rem}.courses-filters label{color:#68768b;gap:.45rem;font-size:.7rem}.courses-filters input,.courses-filters select{color:#344054;background:#f9fafc;border-color:#e4e8f0;border-radius:10px;height:2.65rem;padding:0 .8rem}.courses-filters input:focus,.courses-filters select:focus{background:#fff;border-color:#a78bfa}.courses-workspace .ac-table th{color:#7a879b;letter-spacing:.07em;background:#f8f9fc;padding:.85rem 1.3rem;font-size:.64rem}.courses-workspace .ac-table td{padding:1rem 1.3rem;font-size:.83rem}.courses-workspace .ac-table tbody tr:hover td{background:#fcfaff}.courses-identity{align-items:center;gap:.8rem;min-width:150px;display:flex}.courses-batch-icon{width:2.6rem;height:2.6rem;color:var(--tone);background:var(--tone-soft);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.courses-reference{color:#8a95a7;margin-top:.3rem;font-size:.7rem;display:block}.courses-workspace .ac-pill{white-space:nowrap;border-radius:7px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.courses-workspace .ac-pill:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.courses-workspace .ac-pill.on{color:#138462;background:#eaf9f2}.courses-workspace .ac-pill.neutral{color:#778398;background:#f2f4f8}.courses-workspace .ac-table-foot{color:#718096;border-top:1px solid #eef0f5;justify-content:space-between;align-items:center;padding:1rem 1.3rem;font-size:.75rem;display:flex}.courses-pagination .ac-btn{color:#475569;background:#fff;border-color:#e4e7ee;min-height:2rem;padding:.45rem .7rem;font-size:.72rem}.courses-control .ccc-control-head{background:linear-gradient(120deg,#fff,#f6f0ff);border:1px solid #e7def7;border-radius:18px;padding:1.3rem 1.5rem}.courses-control .ccc-side{box-shadow:0 3px 12px #35245506}.courses-control .ccc-side-item.active{color:#fff;background:#7c3aed;box-shadow:0 3px 9px #7c3aed24}.courses-control .ccc-module-card{border-radius:18px;box-shadow:0 5px 20px #30205006}.courses-control .ccc-manage-link{opacity:1}@media (width<=1050px){.courses-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.courses-summary{gap:.6rem}.courses-summary>.courses-metric{padding:.9rem}.courses-summary strong{font-size:1.6rem}.courses-metric-top{flex-wrap:wrap}.courses-directory-heading{flex-direction:column;align-items:flex-start}.courses-source-badge{display:none}.courses-heading h1{font-size:1.65rem}}@media (prefers-reduced-motion:reduce){.courses-workspace .ac-btn,.courses-control .ccc-module-card{transition:none;transform:none}}.students-workspace{--course-accent:#7c3aed}.students-summary{background:0 0;border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:0 0 1.5rem;display:grid}.students-summary>.students-metric{background:linear-gradient(135deg, #fff 60%, var(--tone-soft));border:1px solid #e9e6f0;border-radius:18px;flex-direction:column;gap:.65rem;padding:1.2rem 1.3rem;display:flex;position:relative;overflow:hidden;box-shadow:0 5px 20px #24204405}.students-metric-top{align-items:center;gap:.7rem;display:flex}.students-metric-icon{background:var(--tone-soft);width:2.6rem;height:2.6rem;color:var(--tone);border-radius:12px;place-items:center;display:grid}.students-metric-label{color:#526077;font-size:.8rem;font-weight:650}.students-summary strong{letter-spacing:-.045em;color:#0f172a;font-variant-numeric:tabular-nums;font-size:2rem;line-height:1.15}.students-metric-caption{color:#718096;font-size:.72rem}.students-directory{background:#fff;border:1px solid #e8e5ef;border-radius:18px;min-width:0;box-shadow:0 8px 28px #25203f05}.students-directory-heading{justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.35rem .4rem;display:flex}.students-directory-heading h2{color:#202a3e;letter-spacing:-.02em;align-items:center;gap:.6rem;margin:0;font-size:1rem;display:flex}.students-directory-heading h2 span{color:#793ad3;background:#f0e9ff;border-radius:7px;padding:.2rem .5rem;font-size:.72rem}.students-directory-heading p{color:#718096;margin:.4rem 0;font-size:.78rem}.students-filters{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;align-items:flex-end;gap:.8rem;padding:1rem 1.35rem 1.25rem;display:flex}.students-filters label{color:#68768b;flex-direction:column;gap:.45rem;font-size:.7rem;font-weight:600;display:flex}.students-filters .students-search{flex:220px}.students-filters input,.students-filters select{color:#344054;width:100%;min-width:0;height:2.65rem;font-size:.85rem;font-weight:400;font:inherit;background:#f9fafc;border:1px solid #e4e8f0;border-radius:10px;padding:0 .8rem}.students-filters input:focus,.students-filters select:focus{background:#fff;border-color:#a78bfa;outline:none;box-shadow:0 0 0 3px #7c3aed1f}.students-table-scroll{overflow-x:auto}.students-workspace .ac-table th{color:#7a879b;letter-spacing:.07em;background:#f8f9fc;padding:.85rem 1.3rem;font-size:.64rem}.students-workspace .ac-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:1rem 1.3rem;font-size:.83rem}.students-workspace .ac-table tbody tr:hover td{background:#fcfaff}.students-identity{align-items:center;gap:.8rem;min-width:11rem;display:flex}.students-avatar{width:2.55rem;height:2.55rem;color:var(--tone);background:var(--tone-soft);border-radius:11px;flex-shrink:0;place-items:center;font-size:.72rem;font-weight:750;display:grid}.students-name{color:#1e293b;font-weight:650;text-decoration:none}.students-name:hover{color:#6d28d9;text-decoration:underline}.ac-student-link,.nr-student-link{color:inherit;text-decoration:none}.ac-student-link:hover strong,.nr-student-link:hover{color:#6d28d9;text-decoration:underline}.students-secondary{color:#8a95a7;margin-top:.2rem;font-size:.72rem;display:block}.students-contact{gap:.15rem;display:grid}.students-batch-pill{color:#5b21b6;white-space:nowrap;text-overflow:ellipsis;background:#f4f0fc;border-radius:7px;align-items:center;max-width:12rem;padding:.28rem .55rem;font-size:.74rem;font-weight:650;display:inline-flex;overflow:hidden}.students-niche-label{color:#334155;font-weight:650}.students-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.students-workspace .ac-btn{color:#475569;min-height:2.1rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:9px;justify-content:center;align-items:center;gap:.35rem;padding:.45rem .75rem;font-size:.76rem;font-weight:650;text-decoration:none;display:inline-flex}.students-workspace .ac-btn:hover{color:#0f172a;background:#f8fafc}.students-workspace .ac-btn:disabled{opacity:.45;cursor:not-allowed}.students-workspace .ac-btn-sm{min-height:2rem;padding:.35rem .65rem}.students-danger{color:#b91c1c!important;border-color:#fecaca!important}.students-danger:hover{background:#fef2f2!important}.students-workspace .ac-pill{white-space:nowrap;border-radius:7px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.students-workspace .ac-pill:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.students-workspace .ac-pill.on{color:#138462;background:#eaf9f2}.students-workspace .ac-pill.off{color:#b91c1c;background:#fef2f2}.students-workspace .ac-table-foot{color:#718096;border-top:1px solid #eef0f5;border-radius:0 0 18px 18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.3rem;font-size:.75rem;display:flex}.students-pagination{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.students-sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1050px){.students-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.students-workspace .ac-table{min-width:820px}}@media (width<=600px){.students-summary{gap:.6rem}.students-summary>.students-metric{padding:.9rem}.students-summary strong{font-size:1.6rem}.students-filters label{flex:120px}}.student-show-page{--tone:#7c3aed;--tone-soft:#f3edff}.ssd-hero{background:linear-gradient(135deg,#fff 55%,#f7f2ff);border:1px solid #e8e5ef;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:1.25rem;margin-bottom:1.35rem;padding:1.25rem 1.4rem;display:flex;box-shadow:0 8px 28px #25203f05}.ssd-back{color:#7c3aed;margin-bottom:.85rem;font-size:.78rem;font-weight:650;text-decoration:none;display:inline-flex}.ssd-back:hover{text-decoration:underline}.ssd-identity{align-items:flex-start;gap:1rem;display:flex}.ssd-avatar{width:3.4rem;height:3.4rem;color:var(--tone);background:var(--tone-soft);border-radius:14px;flex-shrink:0;place-items:center;font-size:.95rem;font-weight:780;display:grid}.ssd-identity h1{letter-spacing:-.035em;color:#0f172a;margin:.15rem 0 0;font-size:1.65rem}.ssd-email{color:#64748b;margin:.25rem 0 0;font-size:.9rem}.ssd-hero-meta{flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.7rem;display:flex}.ssd-batch-chip{color:#5b21b6;background:#f4f0fc;border-radius:7px;padding:.28rem .55rem;font-size:.72rem;font-weight:650;display:inline-flex}.ssd-meta-muted{color:#94a3b8;font-size:.72rem;font-weight:550}.ssd-hero-actions{flex-wrap:wrap;flex-shrink:0;gap:.5rem;display:flex}.student-show-page .ac-btn{color:#475569;min-height:2.35rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;padding:.5rem .9rem;font-size:.8rem;font-weight:650;text-decoration:none;display:inline-flex}.student-show-page .ac-btn:hover{color:#0f172a;background:#f8fafc}.student-show-page .ac-btn:disabled{opacity:.45;cursor:not-allowed}.student-show-page .ac-btn-sm{min-height:2rem;padding:.35rem .7rem;font-size:.74rem}.student-show-page .ac-btn-primary{color:#fff;background:#7c3aed;border-color:#7c3aed}.student-show-page .ac-btn-primary:hover{color:#fff;background:#6d28d9}.ssd-danger{color:#b91c1c!important;border-color:#fecaca!important}.ssd-danger:hover{background:#fef2f2!important}.ssd-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:1rem;display:grid}.ssd-side-stack{gap:1rem;display:grid}.ssd-card{background:#fff;border:1px solid #e8e5ef;border-radius:18px;padding:1.2rem 1.3rem 1.3rem;box-shadow:0 8px 28px #25203f05}.ssd-card-head{margin-bottom:1rem}.ssd-card-head-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.ssd-card-head h2{letter-spacing:-.02em;color:#0f172a;margin:0;font-size:1.05rem}.ssd-card-head p{color:#718096;margin:.3rem 0 0;font-size:.78rem}.ssd-section+.ssd-section{border-top:1px solid #eef0f5;margin-top:1.15rem;padding-top:1.05rem}.ssd-section h3{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;margin:0 0 .7rem;font-size:.68rem;font-weight:750}.ssd-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:0;display:grid}.ssd-field{gap:.2rem;min-width:0;display:grid}.ssd-field dt{color:#94a3b8;font-size:.7rem;font-weight:650}.ssd-field dd{color:#1e293b;word-break:break-word;margin:0;font-size:.88rem;font-weight:550}.ssd-field a{color:#6d28d9;font-weight:650;text-decoration:none}.ssd-field a:hover{text-decoration:underline}.ssd-batch-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.ssd-batch-row{background:#fafbfc;border:1px solid #eef0f5;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem .9rem;display:flex}.ssd-batch-row>div{flex-wrap:wrap;align-items:center;gap:.45rem;min-width:0;display:flex}.ssd-batch-row strong{color:#0f172a;font-size:.88rem}.ssd-primary-tag{color:#6d28d9;background:#f3e8ff;border-radius:999px;padding:.18rem .45rem;font-size:.68rem;font-weight:700;display:inline-flex}.ssd-empty{padding:.85rem .15rem}.ssd-empty p{color:#334155;margin:0;font-size:.88rem;font-weight:600}.ssd-empty span{color:#94a3b8;margin-top:.25rem;font-size:.78rem;display:block}.ssd-card-foot{border-top:1px solid #eef0f5;margin-top:1rem;padding-top:1rem}.student-show-page .ac-pill{white-space:nowrap;border-radius:7px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.student-show-page .ac-pill:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.student-show-page .ac-pill.on{color:#138462;background:#eaf9f2}.student-show-page .ac-pill.off{color:#b91c1c;background:#fef2f2}.student-show-page .ac-pill.neutral{color:#778398;background:#f2f4f8}.tone-0{--tone:#7c3aed;--tone-soft:#f3edff}.tone-1{--tone:#2563eb;--tone-soft:#edf4ff}.tone-2{--tone:#059669;--tone-soft:#ecfdf5}.tone-3{--tone:#c55c16;--tone-soft:#fff5eb}@media (width<=980px){.ssd-grid{grid-template-columns:1fr}.ssd-hero{flex-direction:column}}@media (width<=640px){.ssd-fields{grid-template-columns:1fr}.ssd-identity{flex-direction:column}}.niche-review-page{--tone:#7c3aed;--tone-soft:#f3edff}.nr-hero{background:linear-gradient(135deg,#fff 55%,#f7f2ff);border:1px solid #e8e5ef;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:1.25rem;margin-bottom:1.35rem;padding:1.25rem 1.4rem;display:flex;box-shadow:0 8px 28px #25203f05}.nr-back{color:#7c3aed;margin-bottom:.85rem;font-size:.78rem;font-weight:650;text-decoration:none;display:inline-flex}.nr-back:hover{text-decoration:underline}.nr-identity{align-items:flex-start;gap:1rem;display:flex}.nr-avatar{width:3.4rem;height:3.4rem;color:var(--tone);background:var(--tone-soft);border-radius:14px;flex-shrink:0;place-items:center;font-size:.95rem;font-weight:780;display:grid}.nr-identity h1{letter-spacing:-.035em;color:#0f172a;margin:.15rem 0 0;font-size:1.65rem}.nr-email{color:#64748b;margin:.25rem 0 0;font-size:.9rem}.nr-hero-meta{flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.7rem;display:flex}.nr-meta-muted{color:#94a3b8;font-size:.72rem;font-weight:550}.nr-meta-selected{color:#6d28d9;background:#f3e8ff;border-radius:7px;align-items:center;padding:.28rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.nr-select-hint{background:#f8fafc;border:1px solid #eef0f5;border-radius:10px;padding:.75rem .85rem}.nr-select-hint p{color:#64748b;margin:0;font-size:.78rem;line-height:1.45}.nr-sheet-tools{flex-shrink:0;align-items:center;gap:.55rem;display:flex}.nr-check-col{width:3.2rem;text-align:center!important}.nr-sticky-sr{z-index:2;background:#fff;min-width:2.6rem;position:sticky;left:3.2rem;box-shadow:1px 0 #eef0f5}.nr-sheet thead .nr-sticky-sr{z-index:3;background:#f8f9fc}.nr-sheet .nr-group-row .nr-sticky-sr{background:#f3e8ff}.nr-row-check{cursor:pointer;place-items:center;margin:0;display:grid}.nr-row-check input{accent-color:#7c3aed;cursor:pointer;width:1rem;height:1rem;min-height:0}.nr-sheet tbody tr.is-selected td,.nr-sheet tbody tr.is-selected .nr-sticky,.nr-sheet tbody tr.is-selected .nr-sticky-sr{background:#faf5ff}.nr-picked-tag{color:#fff;letter-spacing:.02em;vertical-align:middle;background:#7c3aed;border-radius:999px;margin-right:.4rem;padding:.12rem .4rem;font-size:.62rem;font-weight:750;display:inline-flex}.niche-review-page .ac-btn-ghost{color:#475569;background:#fff;border-color:#e2e8f0}.niche-review-page .ac-btn-sm{min-height:2rem;padding:.35rem .7rem;font-size:.74rem}.nr-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem;margin-bottom:1rem;display:grid}.nr-card{background:#fff;border:1px solid #e8e5ef;border-radius:18px;padding:1.2rem 1.3rem 1.3rem;box-shadow:0 8px 28px #25203f05}.nr-card-head{margin-bottom:1rem}.nr-card-head-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.nr-card-head h2{letter-spacing:-.02em;color:#0f172a;align-items:center;gap:.5rem;margin:0;font-size:1.05rem;display:flex}.nr-card-head h2 span{color:#793ad3;background:#f0e9ff;border-radius:7px;padding:.18rem .45rem;font-size:.7rem;font-weight:700}.nr-card-head p{color:#718096;margin:.3rem 0 0;font-size:.78rem}.nr-note-block{background:#f8fafc;border:1px solid #eef0f5;border-radius:12px;padding:.9rem 1rem}.nr-note-block+.nr-note-block{margin-top:.7rem}.nr-note-block.warn{background:#fffbeb;border-color:#fde68a}.nr-note-block.muted{background:#faf5ff;border-color:#eddfff}.nr-note-block span{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin-bottom:.35rem;font-size:.68rem;font-weight:750;display:block}.nr-note-block p{color:#1e293b;white-space:pre-wrap;margin:0;font-size:.9rem;line-height:1.5}.nr-decision{gap:.9rem;display:grid}.nr-field{gap:.4rem;display:grid}.nr-field>span{color:#64748b;font-size:.72rem;font-weight:650}.nr-field select,.nr-field textarea{color:#0f172a;width:100%;font:inherit;background:#f9fafc;border:1px solid #e4e8f0;border-radius:10px;padding:.7rem .85rem;font-size:.88rem}.nr-field select{min-height:2.65rem}.nr-field textarea{resize:vertical;min-height:7rem;line-height:1.45}.nr-field select:focus,.nr-field textarea:focus{background:#fff;border-color:#a78bfa;outline:none;box-shadow:0 0 0 3px #7c3aed1f}.nr-save{width:100%;margin-top:.25rem}.niche-review-page .ac-btn{color:#475569;min-height:2.45rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;padding:.55rem 1rem;font-size:.84rem;font-weight:650;text-decoration:none;display:inline-flex}.niche-review-page .ac-btn-primary{color:#fff;background:#7c3aed;border-color:#7c3aed}.niche-review-page .ac-btn-primary:hover{color:#fff;background:#6d28d9}.niche-review-page .ac-btn:disabled{opacity:.45;cursor:not-allowed}.nr-sheet-card{padding-bottom:.85rem}.nr-sheet-scroll{border:1px solid #eef0f5;border-radius:12px;margin:0 0 .35rem;overflow-x:auto}.nr-sheet{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:.78rem}.nr-sheet th,.nr-sheet td{text-align:left;vertical-align:top;border-bottom:1px solid #eef0f5;border-right:1px solid #f1f5f9;padding:0}.nr-sheet thead th{color:#64748b;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#f8f9fc;padding:.7rem .75rem;font-size:.64rem;font-weight:750}.nr-group-row th{color:#6d28d9;letter-spacing:.06em;text-transform:uppercase;background:#f3e8ff;padding:.55rem .75rem;font-size:.68rem}.nr-group-row th:nth-child(3){color:#5b21b6;background:#ede9fe}.nr-sticky{z-index:2;background:#fff;min-width:3rem;position:sticky;left:0;box-shadow:1px 0 #eef0f5}.nr-sheet thead .nr-sticky{z-index:3;background:#f8f9fc}.nr-sheet .nr-group-row .nr-sticky{background:#f3e8ff}.nr-cell{color:#1e293b;white-space:pre-wrap;word-break:break-word;min-width:7rem;max-width:14rem;padding:.65rem .75rem;line-height:1.35}.nr-empty{padding:.5rem 0 .85rem}.nr-empty p{color:#64748b;margin:0;font-size:.88rem}.niche-review-page .ac-pill{white-space:nowrap;border-radius:7px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.niche-review-page .ac-pill:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.niche-review-page .ac-pill.on{color:#138462;background:#eaf9f2}.niche-review-page .ac-pill.off{color:#b91c1c;background:#fef2f2}.niche-review-page .ac-pill.warn{color:#b45309;background:#fffbeb}.niche-review-page .ac-pill.neutral{color:#778398;background:#f2f4f8}@media (width<=900px){.nr-grid{grid-template-columns:1fr}}@media (width<=640px){.nr-identity{flex-direction:column}}.course-studio .ccc-control-head{background:#fff;border:1px solid #e8ebf1;border-radius:14px;margin-bottom:.85rem;padding:.85rem 1.15rem;display:flex;box-shadow:0 3px 15px #16294d04}.course-studio .ccc-control-head>div{grid-template-columns:auto 1fr;align-items:center;gap:.15rem 1rem;width:100%;display:grid}.course-studio .ccc-back-pill{color:#6d28d9;background:#f4f0fc;border-radius:999px;grid-row:1/4;padding:.55rem .75rem;font-size:.78rem;font-weight:650;text-decoration:none}.course-studio .ccc-control-head .eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;grid-column:2;margin:0;font-size:.62rem;font-weight:700}.course-studio .ccc-control-head h1{letter-spacing:-.02em;color:#17243a;grid-column:2;margin:0;font-size:1.2rem}.course-studio .ccc-head-meta{color:#8490a2;grid-column:2;margin:.1rem 0 0;font-size:.74rem}.course-studio .ccc-batch-stack{gap:.9rem;max-width:48rem;display:grid}.course-studio .ccc-layout{grid-template-columns:205px minmax(0,1fr);align-items:start;gap:1.1rem;display:grid}.course-studio .ccc-side{border:1px solid #e7eaf0;border-radius:16px;flex-direction:column;gap:.4rem;padding:.75rem;display:flex;overflow:visible}.studio-nav-label{letter-spacing:.12em;color:#98a2b3;padding:.45rem .5rem .75rem;font-size:.6rem;font-weight:750}.course-studio .ccc-side-item{border-radius:10px;justify-content:flex-start;align-items:center;gap:.65rem;width:100%;padding:.75rem .65rem;font-size:.78rem;display:flex}.course-studio .ccc-side-item.active{color:#7139cc;box-shadow:none;background:#f0e8ff}.studio-nav-icon{flex-shrink:0;place-items:center;width:19px;height:19px;display:grid}.studio-nav-icon svg{width:18px;height:18px}.course-studio .ccc-side-item .ccc-dot{width:5px;height:5px;margin-left:auto}.studio-overview-title{padding:.8rem .2rem 1.1rem}.studio-overview-title h2{letter-spacing:-.035em;color:#17243a;margin:.35rem 0;font-size:1.35rem}.studio-overview-title>p:last-child{color:#79879b;margin:.45rem 0;font-size:.84rem}.course-studio .ccc-panel{background:#fff;border:1px solid #e6e9f1;border-radius:18px;padding:1.35rem 1.45rem 1.5rem;box-shadow:0 6px 22px #19244704}.course-studio .ccc-panel-head{border-bottom:1px solid #eef0f5;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding-bottom:1.05rem;display:flex}.course-studio .ccc-panel-head h3{color:#19253c;letter-spacing:-.025em;margin:0;font-size:1.2rem;font-weight:780}.course-studio .ccc-panel-head p{color:#7b879b;margin:.4rem 0 0;font-size:.8rem;line-height:1.4}.course-studio .ccc-toggle{color:#637086;white-space:nowrap;background:#f7f9fc;border:1px solid #edf0f4;border-radius:999px;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem .85rem;font-size:.72rem;font-weight:650;display:inline-flex}.course-studio input[type=checkbox]{appearance:auto;accent-color:#7c3aed;width:16px;height:16px;margin:0}.course-studio .studio-toolbar{flex-wrap:wrap;align-items:center;gap:.9rem;margin-bottom:1.15rem;display:flex}.course-studio .studio-toolbar-note{color:#8490a2;max-width:22rem;margin:0;font-size:.78rem;line-height:1.4}.course-studio .studio-section .ccc-list{gap:.75rem}.course-studio .studio-empty{text-align:center;background:linear-gradient(#fbfcfe 0%,#f6f8fc 100%);border:1px dashed #d9dee8;border-radius:14px;justify-items:center;gap:.55rem;padding:2.4rem 1.5rem;display:grid}.course-studio .studio-empty-icon{color:#7c3aed;background:#f3e8ff;border-radius:12px;place-items:center;width:3.1rem;height:3.1rem;margin-bottom:.15rem;display:grid}.course-studio .studio-empty-icon svg{width:26px;height:26px}.course-studio .studio-empty h4{color:#24314a;letter-spacing:-.02em;margin:0;font-size:.98rem}.course-studio .studio-empty p{color:#8490a2;max-width:26rem;margin:0;font-size:.8rem;line-height:1.55}.course-studio .studio-empty .btn-primary{margin-top:.55rem}.studio-compose-layout{grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);align-items:start;gap:1.25rem;display:grid}.course-studio .studio-compose{background:#fff;border:0;margin:0;padding:0}.studio-form-title{align-items:center;gap:.7rem;margin-bottom:.6rem;display:flex}.studio-compose-icon{color:#587dde;background:#edf3ff;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.studio-compose-icon svg{width:20px;height:20px}.studio-form-title h4{color:#24314a;margin:0;font-size:.92rem}.studio-form-title p{color:#8490a2;margin:.25rem 0 0;font-size:.72rem}.course-studio .field{color:#536078;gap:.45rem;font-size:.76rem}.course-studio .field input,.course-studio .field textarea,.course-studio .field select{box-sizing:border-box;color:#26334a;background:#fcfcfe;border:1px solid #dfe5ee;border-radius:10px;width:100%;padding:.75rem;font-size:.82rem;box-shadow:0 1px 2px #17243a03}.course-studio .field input,.course-studio .field select{min-height:42px}.course-studio .field textarea{resize:vertical;min-height:160px}.course-studio .field input:focus,.course-studio .field textarea:focus{background:#fff;border-color:#a78bfa}.course-studio .btn-primary{color:#fff;background:#7c3aed;border:1px solid #7c3aed;border-radius:10px;padding:.7rem 1rem;font-size:.8rem;text-decoration:none;box-shadow:0 4px 10px #7c3aed20}.studio-publish-note{color:#8a95a6;margin:.5rem 0 0;font-size:.68rem;line-height:1.5}.studio-preview{background:#f6f7fb;border:1px solid #eceef5;border-radius:14px;padding:1rem}.studio-preview-label{letter-spacing:.1em;color:#8b95a8;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.85rem;font-size:.6rem;font-weight:650;display:flex}.studio-preview-label span{letter-spacing:0;background:#fff;border:1px solid #e4e7ee;border-radius:5px;padding:.2rem .4rem;font-size:.6rem}.studio-preview article{background:#fff;border:1px solid #e9eaf1;border-radius:12px;padding:1rem;box-shadow:0 4px 12px #1a254807}.studio-preview-author{align-items:center;gap:.5rem;display:flex}.studio-preview-author>span{color:#fff;background:#7c3aed;border-radius:9px;place-items:center;width:29px;height:29px;font-size:.7rem;font-weight:750;display:grid}.studio-preview-author strong{font-size:.73rem;display:block}.studio-preview-author small{color:#939bac;margin-top:.15rem;font-size:.6rem;display:block}.studio-preview h4{overflow-wrap:anywhere;margin:1rem 0 .5rem;font-size:.9rem}.studio-preview-body{color:#7b8698;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.77rem;line-height:1.65}.studio-audience{color:#637087;flex-direction:column;gap:.3rem;padding:.85rem .2rem 0;font-size:.72rem;display:flex}.studio-audience strong{color:#929aab;font-size:.65rem}.studio-audience small{color:#919bad;font-size:.65rem}.studio-history-heading{border-top:1px solid #edf0f5;justify-content:space-between;align-items:center;margin:1.8rem 0 .8rem;padding-top:1rem;display:flex}.studio-history-heading h4{margin:0;font-size:.85rem}.studio-history-heading span{color:#8b95a6;font-size:.7rem}.studio-empty{text-align:center;background:#fafbfe;border:1px dashed #e1e6f0;border-radius:12px;padding:1.6rem 1rem}.studio-empty>span{color:#9c83d7;display:inline-block}.studio-empty svg{width:24px;height:24px}.studio-empty h4{color:#55627a;margin:.65rem 0 .35rem;font-size:.84rem}.studio-empty p{color:#8994a5;max-width:340px;margin:auto;font-size:.74rem;line-height:1.6}@media (width<=1200px){.studio-compose-layout,.course-studio .ccc-module-grid{grid-template-columns:1fr}}@media (width<=760px){.course-studio .ccc-layout{grid-template-columns:1fr}.course-studio .ccc-side{flex-direction:row;overflow-x:auto}.studio-nav-label{display:none}.course-studio .ccc-side-item{width:auto}.course-studio .ccc-control-head>div{grid-template-columns:1fr}.course-studio .ccc-back-pill{grid-row:auto;width:fit-content}.course-studio .ccc-control-head .eyebrow,.course-studio .ccc-control-head h1,.course-studio .ccc-head-meta{grid-column:1}}.assignment-batch-context{background:#f8f5ff;border:1px solid #e6ddf9;border-radius:12px;gap:.65rem;padding:1rem 1.15rem;display:grid}.assignment-batch-row{align-items:flex-start;gap:.85rem;display:flex}.assignment-batch-check{color:#7c3aed;background:#ece3ff;border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.assignment-batch-caption{color:#8a77a8;font-size:.68rem;font-weight:650;display:block}.assignment-batch-context strong{color:#493469;font-size:.9rem;line-height:1.3;display:block}.assignment-batch-context p{color:#8c819b;margin:.25rem 0 0;font-size:.75rem;line-height:1.45}.admin-ws .assign-form{background:#fff;border:1px solid #f1f5f9;border-radius:1.1rem;flex-direction:column;gap:.95rem;padding:1.35rem 1.5rem 1.5rem;display:flex;box-shadow:0 4px 20px #0f172a0a}.admin-ws .assign-form .field{flex-direction:column;gap:.4rem;min-width:0;margin-bottom:0;display:flex}.admin-ws .assign-form .field>span,.admin-ws .assign-form .field>label{color:#334155;font-size:.82rem;font-weight:700}.admin-ws .assign-form select,.admin-ws .assign-form input[type=text],.admin-ws .assign-form input[type=url],.admin-ws .assign-form input[type=search],.admin-ws .assign-form textarea{box-sizing:border-box;width:100%;max-width:100%;height:auto;min-height:2.65rem;font:inherit;color:#0f172a;background-color:#fff;border:1px solid #cbd5e1;border-radius:.75rem;outline:none;padding:.55rem .9rem;font-size:.88rem;font-weight:600;line-height:1.35;transition:border-color .15s,box-shadow .15s}.admin-ws .assign-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right .85rem center;background-repeat:no-repeat;background-size:12px;padding-right:2.1rem}.admin-ws .assign-form textarea{resize:vertical;min-height:7rem;font-weight:500}.admin-ws .assign-form select:focus,.admin-ws .assign-form input:focus,.admin-ws .assign-form textarea:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.admin-ws .assign-form .announce-audience-row{gap:.85rem;margin:0}.admin-ws .assign-form .assign-courses{margin:0}.admin-ws .assign-editor-bar{justify-content:flex-end;margin-bottom:.85rem;display:flex}.ac-info-callout{color:#5b21b6;background:#f4f0ff;border:1px solid #e2d7fe;border-radius:.85rem;align-items:center;gap:.65rem;margin:0;padding:.85rem 1.1rem;font-size:.84rem;font-weight:600;display:flex}.ac-info-callout svg{color:#7c3aed;flex-shrink:0}.assign-form-actions{border-top:1px solid #f1f5f9;justify-content:flex-end;align-items:center;gap:.65rem;margin-top:.25rem;padding-top:1rem;display:flex}.assign-editor-page .assign-editor-top{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.15rem;display:flex}.assign-editor-page .assign-editor-top h1{letter-spacing:-.03em;color:#0f172a;margin:.2rem 0 0;font-size:1.65rem}.admin-ws .assign-form.assign-form-modern{box-shadow:none;background:0 0;border:0;gap:0;padding:0}.assign-block{background:#fff;border:1px solid #e8ecf1;border-radius:1rem;margin-bottom:.85rem;padding:1.15rem 1.25rem 1.25rem;box-shadow:0 4px 16px #0f172a08}.assign-block-head{margin-bottom:.9rem}.assign-block-head-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.assign-block-head h2{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:.95rem;font-weight:780}.assign-block-head p{color:#64748b;margin:.25rem 0 0;font-size:.78rem}.assign-selected-count{color:#7c3aed;background:#f3e8ff;border-radius:999px;flex-shrink:0;padding:.3rem .65rem;font-size:.72rem;font-weight:700}.assign-type-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;display:grid}.assign-type-card{text-align:left;cursor:pointer;font:inherit;color:inherit;background:#fbfcfe;border:1px solid #e5e9f0;border-radius:.95rem;justify-items:start;gap:.3rem;min-height:6.5rem;padding:.9rem .85rem;transition:border-color .15s,box-shadow .15s,background .15s,transform .15s;display:grid}.assign-type-card:hover{background:#fff;border-color:#c4b5fd;transform:translateY(-1px)}.assign-type-card.active{background:linear-gradient(#faf5ff 0%,#f5f0ff 100%);border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.assign-type-icon{color:#7c3aed;background:#ede9fe;border-radius:.6rem;place-items:center;width:2rem;height:2rem;margin-bottom:.15rem;display:grid}.assign-type-card.active .assign-type-icon{color:#fff;background:#7c3aed}.assign-type-card-label{color:#1e293b;font-size:.84rem;font-weight:750}.assign-type-card-blurb{color:#64748b;font-size:.7rem;line-height:1.35}.assign-basics-row{grid-template-columns:minmax(0,1.6fr) minmax(11rem,.7fr);align-items:end;gap:.9rem;display:grid}.assign-status-toggle{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.8rem;grid-template-columns:1fr 1fr;gap:.35rem;min-height:2.65rem;padding:.3rem;display:grid}.assign-status-toggle button{color:#64748b;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.6rem;font-size:.82rem;font-weight:700}.assign-status-toggle button.active{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0f172a14}.assign-batch-search{color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.75rem;align-items:center;gap:.55rem;min-height:2.55rem;margin-bottom:.75rem;padding:0 .85rem;display:flex}.assign-batch-search input{font:inherit;color:#0f172a;outline:none;flex:1;font-size:.88rem;font-weight:500;box-shadow:none!important;background:0 0!important;border:0!important;height:auto!important;min-height:0!important;padding:0!important}.admin-ws .assign-form .assign-course-grid{flex-wrap:wrap;gap:.5rem;max-height:12rem;padding:.15rem;display:flex;overflow-y:auto}.admin-ws .assign-form .assign-course-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .75rem;font-size:.8rem;font-weight:650;display:inline-flex}.admin-ws .assign-form .assign-course-chip.selected{color:#5b21b6;background:#f5f0ff;border-color:#c4b5fd}.admin-ws .assign-form .assign-course-chip input{accent-color:#7c3aed;width:.9rem;height:.9rem;min-height:0}.assign-empty-hint{color:#94a3b8;margin:.35rem 0;font-size:.8rem}@media (width<=980px){.assign-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.assign-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assign-basics-row{grid-template-columns:1fr}.assign-editor-page .assign-editor-top{flex-direction:column}}.admin-ws .field-hint{color:#94a3b8;margin-top:.35rem;font-size:.75rem;font-weight:500;display:block}.rte{background:#fff;border:1px solid #cbd5e1;border-radius:.85rem;overflow:hidden}.rte-toolbar{background:#f8fafc;border-bottom:1px solid #eef0f5;flex-wrap:wrap;gap:.35rem;padding:.55rem .65rem;display:flex}.rte-toolbar button{color:#334155;min-height:1.9rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:.45rem;padding:0 .55rem;font-size:.75rem;font-weight:700}.rte-toolbar button:hover{color:#6d28d9;border-color:#c4b5fd}.rte-sep{background:#e2e8f0;align-self:stretch;width:1px;margin:0 .15rem}.rte-editor{color:#0f172a;outline:none;min-height:12rem;padding:.9rem 1rem;font-size:.92rem;line-height:1.55}.rte-editor:empty:before{content:attr(data-placeholder);color:#94a3b8}.rte-editor h2{margin:0 0 .55rem;font-size:1.25rem}.rte-editor h3{margin:0 0 .45rem;font-size:1.05rem}.rte-editor p{margin:0 0 .65rem}.rte-editor a{color:#6d28d9}.rte-editor ul,.rte-editor ol{margin:0 0 .65rem;padding-left:1.25rem}.rte-required{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.rte:focus-within{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.nq-page{flex-direction:column;gap:1rem;display:flex}.nq-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.15rem;display:flex}.nq-topbar-copy{color:#64748b;margin:0;font-size:.8rem}.nq-page .students-summary>button.students-metric{font:inherit;text-align:left;cursor:pointer;width:100%}.nq-metric-click:hover{border-color:#d4c8ef}.nq-metric-active{box-shadow:0 0 0 3px #7c3aed1f;border-color:#7c3aed!important}.nq-team-panel{background:#fff;border:1px solid #e8e5ef;border-radius:18px;overflow:hidden;box-shadow:0 8px 28px #25203f05}.nq-team-panel-head{justify-content:space-between;align-items:center;padding:.95rem 1.2rem .55rem;display:flex}.nq-team-panel-head h2{color:#202a3e;letter-spacing:-.02em;margin:0;font-size:.95rem}.nq-team-link{color:#7c3aed;font-size:.78rem;font-weight:650;text-decoration:none}.nq-team-link:hover{text-decoration:underline}.nq-team-table-wrap{overflow-x:auto}.nq-team-table{border-collapse:collapse;width:100%;font-size:.82rem}.nq-team-table th,.nq-team-table td{text-align:left;white-space:nowrap;border-top:1px solid #eef0f5;padding:.7rem 1.2rem}.nq-team-table th{text-transform:uppercase;letter-spacing:.04em;color:#8a95a7;background:#fbfafe;border-top:0;font-size:.7rem;font-weight:650}.nq-team-table td{color:#334155;font-variant-numeric:tabular-nums}.nq-team-name{align-items:center;gap:.55rem;display:flex}.nq-team-name span{color:#7c3aed;background:#f3edff;border-radius:999px;place-items:center;width:1.7rem;height:1.7rem;font-size:.72rem;font-weight:750;display:grid}.nq-team-name strong{color:#0f172a;font-size:.84rem}.nq-left{color:#7c3aed}.nq-directory{margin-top:.15rem}.nq-assign-bar{background:#fbfafe;border-bottom:1px solid #eef0f5;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem 1.35rem;display:flex}.nq-assign-bar select{background:#fff;border:1px solid #e4e7ee;border-radius:8px;min-height:2rem;padding:.35rem .55rem;font-size:.8rem}.nq-count-input{border:1px solid #e4e7ee;border-radius:8px;width:4.25rem;min-height:2rem;padding:.35rem .5rem;font-size:.8rem}.nq-split-check{color:#526077;align-items:center;gap:.3rem;font-size:.78rem;display:inline-flex}.nq-split-bar{background:#f8fafc}@media (width<=900px){.nq-page .students-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.nq-page .students-summary{grid-template-columns:1fr}}.team-workspace .team-panel{background:#fff;border:1px solid #e8e8ef;border-radius:1rem;overflow:visible;box-shadow:0 1px 2px #0f172a08}.team-panel-toolbar{border-bottom:1px solid #eef0f4;flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem 1.15rem;display:flex}.team-search{flex:16rem;min-width:12rem;position:relative}.team-search svg{color:#94a3b8;pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.team-search input{width:100%;min-height:2.45rem;font:inherit;color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.7rem;padding:.55rem .85rem .55rem 2.35rem;font-size:.88rem}.team-search input:focus{background:#fff;border-color:#c4b5fd;outline:none;box-shadow:0 0 0 3px #7c3aed1f}.team-filter{min-height:2.45rem;font:inherit;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:.7rem;padding:.45rem .85rem;font-size:.85rem}.team-add-btn{white-space:nowrap;margin-left:auto}.team-table-wrap{overflow:visible}.team-table th{letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;background:#fafbfc;font-size:.72rem}.team-table td{vertical-align:middle;overflow:visible}.team-table tbody tr{position:relative}.team-name-cell{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.team-name-cell strong{color:#0f172a;font-weight:700}.team-email{color:#64748b;font-size:.86rem}.team-role{border-radius:999px;align-items:center;padding:.28rem .65rem;font-size:.74rem;font-weight:700;display:inline-flex}.team-role.admin{color:#047857;background:#ecfdf5}.team-role.reviewer{color:#4338ca;background:#eef2ff}.team-queue-cell{color:#334155;gap:.12rem;font-size:.84rem;display:grid}.team-col-action{text-align:center;width:3.5rem}.team-action{justify-content:center;display:inline-flex;position:relative}.team-action-btn{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:.55rem;width:2.1rem;height:2.1rem;font-size:1.25rem;line-height:1}.team-action-btn:hover,.team-action-btn[aria-expanded=true]{color:#0f172a;background:#f1f5f9}.team-menu{z-index:80;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;min-width:10.5rem;padding:.35rem;position:absolute;top:auto;bottom:calc(100% + .3rem);right:0;box-shadow:0 12px 32px #0f172a24}.team-menu button{text-align:left;width:100%;font:inherit;color:#334155;cursor:pointer;background:0 0;border:0;border-radius:.5rem;padding:.55rem .7rem;font-size:.84rem;display:block}.team-menu button:hover:not(:disabled){background:#f8fafc}.team-menu button.danger{color:#b91c1c}.team-menu button.danger:hover:not(:disabled){background:#fef2f2}.team-menu button:disabled{opacity:.4;cursor:not-allowed}.team-row-blocked td{opacity:.78}.team-foot{color:#94a3b8;border-top:1px solid #eef0f4;justify-content:flex-end;padding:.85rem 1.15rem;font-size:.8rem;display:flex}.team-temp-pass code{letter-spacing:.02em;font-weight:700}.team-modal-backdrop{z-index:80;background:#0f172a73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.team-modal{background:#fff;border-radius:1rem;width:min(32rem,100%);overflow:hidden;box-shadow:0 24px 64px #0f172a38}.team-modal-head{border-bottom:1px solid #eef0f4;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;display:flex}.team-modal-head h2{letter-spacing:.04em;text-transform:uppercase;color:#0f172a;margin:0;font-size:.95rem;font-weight:800}.team-modal-close{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:.5rem;width:2rem;height:2rem;font-size:1.4rem;line-height:1}.team-modal-close:hover{color:#0f172a;background:#f1f5f9}.team-modal-form{gap:.9rem;padding:1.2rem 1.25rem 1.25rem;display:grid}.team-modal-form label{color:#64748b;gap:.4rem;font-size:.78rem;font-weight:650;display:grid}.team-modal-form input,.team-modal-form select{min-height:2.55rem;font:inherit;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:.65rem;padding:.6rem .8rem;font-size:.9rem}.team-modal-form input:focus,.team-modal-form select:focus{border-color:#c4b5fd;outline:none;box-shadow:0 0 0 3px #7c3aed1f}.team-modal-note{color:#6b7280;background:#faf5ff;border-radius:.65rem;margin:0;padding:.75rem .85rem;font-size:.8rem;line-height:1.45}.team-modal-actions{justify-content:flex-end;gap:.65rem;margin-top:.25rem;display:flex}@media (width<=720px){.team-add-btn{width:100%;margin-left:0}}.dash-page{gap:1.15rem;display:grid}.dash-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.dash-kpi{color:inherit;background:#fff;border:1px solid #e8e8ef;border-radius:1rem;gap:.35rem;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s,transform .15s;display:grid;box-shadow:0 1px 2px #0f172a08}.dash-kpi:hover{border-color:#c7d2fe;transform:translateY(-1px)}.dash-kpi-label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700}.dash-kpi strong{letter-spacing:-.03em;color:#0f172a;font-size:1.85rem;line-height:1.1}.dash-kpi em{color:#94a3b8;font-size:.78rem;font-style:normal}.dash-kpi.tone-a{background:linear-gradient(#fff 0%,#f8fafc 100%)}.dash-kpi.tone-b{background:linear-gradient(#fff 0%,#eef2ff 100%)}.dash-kpi.tone-c{background:linear-gradient(#fff 0%,#ecfdf5 100%)}.dash-kpi.tone-d{background:linear-gradient(#fff 0%,#fff7ed 100%)}.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.dash-panel{background:#fff;border:1px solid #e8e8ef;border-radius:1rem;min-height:22rem;padding:1rem 1.1rem 1.15rem;box-shadow:0 1px 2px #0f172a08}.dash-panel-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.dash-panel-head h2{color:#0f172a;margin:0;font-size:1rem;font-weight:750}.dash-panel-head p{color:#64748b;margin:.25rem 0 0;font-size:.8rem}.dash-link{color:#4f46e5;white-space:nowrap;font-size:.8rem;font-weight:650;text-decoration:none}.dash-link:hover{text-decoration:underline}.dash-chart{width:100%;min-height:260px}.dash-empty{color:#94a3b8;place-items:center;min-height:260px;font-size:.9rem;display:grid}.dash-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem .75rem;margin:.35rem 0 0;padding:0;list-style:none;display:grid}.dash-legend li{color:#64748b;align-items:center;gap:.4rem;font-size:.75rem;display:flex}.dash-legend li span{border-radius:999px;flex-shrink:0;width:.55rem;height:.55rem}.dash-legend strong{color:#0f172a;font-variant-numeric:tabular-nums;margin-left:auto}.dash-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.dash-shortcut{color:inherit;background:#fff;border:1px solid #e8e8ef;border-radius:1rem;gap:.25rem;padding:1rem 1.1rem;text-decoration:none;display:grid}.dash-shortcut:hover{background:#fafafe;border-color:#c7d2fe}.dash-shortcut strong{color:#0f172a;font-size:.92rem}.dash-shortcut span{color:#64748b;font-size:.78rem}@media (width<=1100px){.dash-kpis,.dash-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.dash-grid{grid-template-columns:1fr}.dash-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.dash-kpis,.dash-shortcuts{grid-template-columns:1fr}}.dash-section-label{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:.15rem 0 0;font-size:.72rem;font-weight:750}.dash-modules{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.dash-modules-4{grid-template-columns:repeat(4,minmax(0,1fr))}.dash-panel-span{grid-column:1/-1;min-height:auto}.dash-ihub-row-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:.85rem;display:grid}.dash-ihub-row-grid .dash-ihub-health,.dash-ihub-row-grid .dash-ihub-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;flex-direction:column;align-items:flex-start;gap:.35rem;margin:0;padding:.85rem 1rem}@media (width<=900px){.dash-ihub-row-grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.dash-ihub-row-grid,.dash-modules-4{grid-template-columns:1fr}}.dash-module{color:inherit;background:#fff;border:1px solid #e8e8ef;border-radius:.9rem;gap:.2rem;padding:.9rem 1rem;text-decoration:none;display:grid}.dash-module:hover{background:#fafafe;border-color:#c7d2fe}.dash-module-label{color:#64748b;text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;font-weight:700}.dash-module strong{color:#0f172a;letter-spacing:-.02em;font-size:1.35rem}.dash-module em{color:#94a3b8;font-size:.75rem;font-style:normal}.dash-ihub{gap:.75rem;padding-top:.5rem;display:grid}.dash-ihub-health{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.dash-ihub-health span{color:#64748b;font-size:.8rem;font-weight:650}.dash-ihub-health strong{text-transform:capitalize;font-size:.95rem}.dash-ihub-health.healthy{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.dash-ihub-health.degraded{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.dash-ihub-health.unknown{color:#475569}.dash-ihub-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:1rem;padding:.35rem 0;font-size:.86rem;display:flex}.dash-ihub-row span{color:#64748b}.dash-ihub-row strong{color:#0f172a;font-weight:700}.dash-niche-banner{color:inherit;background:linear-gradient(#fff 0%,#eef2ff 100%);border:1px solid #e0e7ff;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem;text-decoration:none;display:flex}.dash-niche-banner strong{color:#312e81;font-size:.95rem;display:block}.dash-niche-banner p{color:#64748b;margin:.25rem 0 0;font-size:.82rem}.dash-niche-banner>span{color:#4f46e5;white-space:nowrap;font-size:.85rem;font-weight:700}@media (width<=1100px){.dash-modules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.dash-modules{grid-template-columns:1fr}.dash-niche-banner{flex-direction:column;align-items:flex-start}}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.sk-bone{background:linear-gradient(90deg,#eef0f5 0%,#f7f8fb 45%,#eef0f5 90%) 0 0/200% 100%;border-radius:8px;animation:1.15s ease-in-out infinite sk-shimmer;display:block}.sk-block{flex-direction:column;gap:.75rem;display:flex}.sk-page{flex-direction:column;gap:1.15rem;display:flex}.sk-line{width:100%;height:.85rem}.sk-line.sk-sm{height:.65rem}.sk-line.sk-lg{border-radius:10px;height:1.35rem}.sk-w-30{width:30%}.sk-w-35{width:35%}.sk-w-40{width:40%}.sk-w-45{width:45%}.sk-w-50{width:50%}.sk-w-55{width:55%}.sk-w-60{width:60%}.sk-w-70{width:70%}.sk-circle,.sk-avatar{border-radius:999px;flex-shrink:0;width:2.4rem;height:2.4rem}.sk-avatar{width:3.4rem;height:3.4rem}.sk-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.sk-metric{background:#fff;border:1px solid #e9e6f0;border-radius:18px;flex-direction:column;gap:.65rem;padding:1.15rem 1.2rem;display:flex}.sk-metric-top{align-items:center;gap:.65rem;display:flex}.sk-table-wrap{background:#fff;border:1px solid #e8e5ef;border-radius:18px;gap:.55rem;padding:.85rem 1rem 1rem}.sk-table-head,.sk-table-row{grid-template-columns:1.4fr repeat(4,minmax(0,1fr));align-items:center;gap:.75rem;padding:.55rem .35rem;display:grid}.sk-table-head{border-bottom:1px solid #eef0f5;margin-bottom:.15rem}.sk-table-row+.sk-table-row{border-top:1px solid #f3f4f8}.sk-cards{gap:.75rem}.sk-card{background:#fff;border:1px solid #e8e5ef;border-radius:14px;flex-direction:column;gap:.55rem;padding:1rem 1.1rem;display:flex}.sk-detail-hero{background:#fff;border:1px solid #e8e5ef;border-radius:18px;align-items:center;gap:.9rem;padding:1.1rem 1.2rem;display:flex}.sk-detail-hero-text{flex-direction:column;flex:1;gap:.45rem;min-width:0;display:flex}.sk-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.sk-inline{gap:.55rem;padding:1rem}@media (width<=900px){.sk-metrics,.sk-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-table-head,.sk-table-row{grid-template-columns:1.2fr 1fr 1fr}.sk-table-head>:nth-child(n+4),.sk-table-row>:nth-child(n+4){display:none}}@media (width<=600px){.sk-metrics,.sk-detail-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.sk-bone{animation:none}}.spatial-mesh,.glass-panel,.ws-member-glow,.ws-shell:before,.ws-shell:after,.ws-sidebar:before,.ws-main:before,.auth-premium-aside:before,.auth-premium-aside:after,.auth-premium-orb,.auth-premium .auth-card:before,.auth-premium .auth-submit:before,.auth-premium .auth-submit:after{content:none!important;filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;background:0 0!important;animation:none!important;display:none!important}.rw-auth{background:radial-gradient(900px 420px at 12% -10%, #6d12f514, transparent 60%), radial-gradient(700px 380px at 100% 110%, #1fa97a12, transparent 55%), var(--chalk);place-items:center;min-height:100vh;padding:32px 18px;display:grid}.rw-auth-frame{background:var(--chalk-raised);border:1px solid var(--hairline);border-radius:var(--radius-2xl);width:min(920px,100%);box-shadow:var(--shadow-editorial);grid-template-columns:220px 1fr;display:grid;overflow:hidden}.rw-pass-stub{background:var(--ink);color:#f7f5f2;padding:28px 22px;position:relative}.rw-pass-stub:after{content:"";background:radial-gradient(circle at 0 12px, transparent 7px, var(--ink) 8px) 0 0 / 20px 24px repeat-y;width:20px;position:absolute;top:0;bottom:0;right:-10px}.rw-pass-stub-inner{flex-direction:column;gap:10px;height:100%;display:flex}.rw-pass-stub img{background:#fff;border-radius:8px}.rw-pass-stub .mono-label{color:#f7f5f28c;margin-top:18px}.rw-pass-stub strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:22px}.rw-pass-code{font-family:var(--font-mono);letter-spacing:.14em;color:#f7f5f2b3;margin-top:auto;font-size:12px}.rw-pass-barcode{opacity:.85;background:repeating-linear-gradient(90deg,#f7f5f2 0 2px,#0000 2px 5px,#f7f5f2 5px 7px,#0000 7px 9px,#f7f5f2 9px 10px,#0000 10px 14px);border-radius:4px;height:42px;margin-top:16px}.rw-pass-body{padding:36px 40px 28px}.rw-pass-brand{align-items:center;gap:10px;margin-bottom:28px;display:flex}.rw-pass-brand img{border-radius:8px}.rw-pass-brand strong{letter-spacing:-.02em;font-size:15px;display:block}.rw-pass-brand .mono-label{margin-top:2px;display:block}.rw-pass-intro h1{margin:0 0 8px;font-size:clamp(26px,3vw,32px)}.rw-pass-intro p{color:var(--muted);margin:0 0 22px;font-size:14px;line-height:1.55}.rw-pass-foot{text-align:center;color:var(--muted-2);margin-top:22px;font-size:12px}.rw-auth .auth-card{box-shadow:none;background:0 0;border:0;padding:0}.rw-auth .auth-card-head h2{margin:0 0 4px;font-size:16px}.rw-auth .auth-card-head p{color:var(--muted);margin:0 0 16px;font-size:13px}.rw-auth .auth-form{flex-direction:column;gap:14px;display:flex}.rw-auth .auth-label{color:var(--ink-soft);flex-direction:column;gap:6px;font-size:12px;font-weight:500;display:flex}.rw-auth .auth-field{background:var(--chalk);border:1px solid var(--hairline);height:46px;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border-radius:14px;align-items:center;gap:8px;padding:0 14px;display:flex}.rw-auth .auth-field input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:14px}.rw-auth .auth-field input::placeholder{color:var(--muted-2)}.rw-auth .auth-field-icon{color:var(--muted-2);flex-shrink:0;display:flex}.rw-auth .auth-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rw-auth .auth-field:focus-within .auth-field-icon{color:var(--accent)}.rw-auth .auth-field-action{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:500}.rw-auth .auth-field-action:hover{color:var(--ink)}.rw-auth .auth-submit{background:var(--accent);color:#fff;cursor:pointer;height:46px;transition:background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.rw-auth .auth-submit:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.rw-auth .auth-submit:disabled{opacity:.55;cursor:not-allowed;transform:none}.rw-auth .auth-submit .btn-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite soft-spin}.rw-auth .auth-text-link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:500}.rw-auth .auth-text-link:hover{color:var(--accent-hover)}.rw-auth .auth-footer,.rw-auth .auth-hint{color:var(--muted);text-align:center;margin-top:14px;font-size:13px}.rw-auth .auth-footer-row,.rw-auth .auth-row-end{justify-content:space-between;gap:12px;margin-top:4px;display:flex}.rw-auth .auth-row-end{justify-content:flex-end}.rw-auth .auth-alert{background:var(--danger-bg);color:var(--danger);border-radius:12px;margin-bottom:12px;padding:10px 12px;font-size:13px}.rw-auth .auth-alert-info{background:var(--accent-soft);color:var(--accent-deep)}.otp-cells{justify-content:space-between;gap:8px;display:flex}.otp-cell{text-align:center;width:48px;height:56px;font-family:var(--font-mono);border:1px solid var(--hairline);background:var(--chalk);color:var(--ink);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border-radius:14px;font-size:22px;font-weight:600}.otp-cell:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.otp-cell.is-filled{border-color:var(--accent);background:var(--accent-soft)}@media (width<=780px){.rw-auth-frame{grid-template-columns:1fr}.rw-pass-stub{display:none}.rw-pass-body{padding:28px 22px 22px}}.rw-shell{background:var(--chalk);min-height:100vh;padding-bottom:calc(var(--dock-h) + 28px);flex-direction:column;display:flex}.rw-command{z-index:40;height:var(--command-h);background:color-mix(in srgb, var(--chalk) 88%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--hairline);align-items:center;gap:16px;padding:0 clamp(16px,3vw,28px);display:flex;position:sticky;top:0}.rw-brand{flex-shrink:0;align-items:center;gap:10px;display:flex}.rw-brand img{border-radius:8px;width:28px;height:28px}.rw-brand-copy strong{letter-spacing:-.02em;font-size:14px;display:block}.rw-brand-copy .mono-label{margin-top:1px;font-size:10px;display:block}.rw-search{background:var(--chalk-raised);border:1px solid var(--hairline);border-radius:var(--radius-pill);max-width:480px;height:42px;color:var(--muted);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);flex:1;align-items:center;gap:8px;margin:0 auto;padding:0 14px;display:flex}.rw-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);color:var(--ink)}.rw-search input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:14px}.rw-search input::placeholder{color:var(--muted-2)}.rw-search kbd{font-family:var(--font-mono);color:var(--muted-2);border:1px solid var(--hairline);background:var(--chalk-sunken);border-radius:6px;padding:2px 5px;font-size:10px}.rw-command-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.rw-chip{border-radius:var(--radius-pill);border:1px solid var(--hairline);background:var(--chalk-raised);height:36px;color:var(--ink-soft);transition:border-color var(--dur-fast) var(--ease-out);align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:500;display:inline-flex}.rw-chip:hover{border-color:var(--accent);color:var(--accent)}.rw-chip svg{width:14px;height:14px}.rw-bell{width:40px;height:40px;color:var(--ink-soft);transition:background var(--dur-fast) var(--ease-out);border:1px solid #0000;border-radius:12px;place-items:center;display:grid;position:relative}.rw-bell:hover{background:var(--chalk-sunken)}.rw-bell-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 2px var(--chalk);border-radius:50%;position:absolute;top:9px;right:10px}.rw-user{border-radius:var(--radius-pill);border:1px solid var(--hairline);background:var(--chalk-raised);align-items:center;gap:8px;padding:4px 10px 4px 4px;display:flex}.rw-avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-deep);font-size:11px;font-weight:700;font-family:var(--font-mono);border-radius:50%;place-items:center;display:grid}.rw-user-meta{flex-direction:column;line-height:1.15;display:flex}.rw-user-meta strong{font-size:12px;font-weight:600}.rw-user-meta .mono-label{font-size:9px}.rw-logout{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;place-items:center;display:grid}.rw-logout:hover{background:var(--chalk-sunken);color:var(--ink)}.rw-stage{flex:1;width:100%}.rw-stage-inner{width:min(var(--content-max), calc(100% - 32px));margin:0 auto;padding:28px 0 16px}.rw-page-head{margin-bottom:22px}.rw-page-head h1{margin:4px 0 6px;font-size:clamp(28px,3.4vw,36px)}.rw-page-head p:last-child{color:var(--muted);max-width:48ch;font-size:14px}.rw-dock{z-index:50;pointer-events:none;justify-content:center;padding:0 12px;display:flex;position:fixed;bottom:18px;left:0;right:0}.rw-dock-rail{pointer-events:auto;background:color-mix(in srgb, var(--chalk-raised) 92%, #fff);border:1px solid var(--hairline);box-shadow:var(--shadow-dock);border-radius:28px;align-items:stretch;gap:2px;padding:8px;display:flex}.rw-dock-item{min-width:72px;height:58px;color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);background:0 0;border:0;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 10px;text-decoration:none;display:flex;position:relative}.rw-dock-item:hover{background:var(--chalk-sunken);color:var(--ink)}.rw-dock-item.is-active{color:var(--accent);background:var(--accent-soft)}.rw-dock-item:disabled{opacity:.45;cursor:not-allowed}.rw-dock-icon{place-items:center;width:24px;height:24px;display:grid;position:relative}.rw-dock-gem{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 3px var(--accent-glow);animation:gem-pulse 2.4s var(--ease-out) infinite;border-radius:50%;position:absolute;top:-2px;right:-4px}.rw-dock-label{letter-spacing:.01em;font-size:10px;font-weight:600}.rw-dock-badge{background:var(--ink);color:#fff;min-width:16px;height:16px;font-family:var(--font-mono);border-radius:999px;place-items:center;padding:0 4px;font-size:9px;font-weight:600;display:grid;position:absolute;top:6px;right:10px}.rw-btn-primary{background:var(--accent);color:#fff;cursor:pointer;height:44px;transition:background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:0;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.rw-btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.rw-btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none}.rw-btn-primary.sm{border-radius:12px;height:36px;padding:0 14px;font-size:13px}.rw-btn-ghost{border:1px solid var(--hairline);height:44px;color:var(--ink-soft);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border-radius:14px;align-items:center;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.rw-btn-ghost:hover{border-color:var(--ink);background:var(--chalk-raised)}.rw-muted{color:var(--muted);font-size:13px}.rw-empty{border:1px dashed var(--hairline-strong);border-radius:var(--radius-xl);background:var(--chalk-raised);text-align:center;padding:36px 24px}.rw-empty strong{margin-bottom:6px;font-size:16px;display:block}.rw-empty p{color:var(--muted);font-size:14px}.rw-panel{background:var(--chalk-raised);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);padding:22px}.rw-section-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px;display:flex}.rw-section-head h2{font-size:22px}.rw-hello{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:26px;display:flex}.rw-hello h1{margin:6px 0 4px;font-size:clamp(30px,4vw,40px)}.rw-hello-sub{color:var(--muted);font-size:15px}.rw-hello-stat{border-radius:var(--radius-lg);background:var(--chalk-raised);border:1px solid var(--hairline);text-align:right;min-width:96px;padding:14px 16px}.rw-hello-stat strong{letter-spacing:-.04em;margin-top:2px;font-size:28px;display:block}.rw-runway{margin-bottom:28px}.rw-runway-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.rw-runway-live{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mint);align-items:center;gap:6px;font-size:11px;font-weight:500;display:inline-flex}.rw-live-pip{background:var(--mint);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #1fa97a2e}.rw-runway-strip{grid-template-columns:1.45fr 1fr 1fr 1fr;gap:12px;display:grid}.rw-gate{border-radius:var(--radius-xl);border:1px solid var(--hairline);background:var(--chalk-raised);text-align:left;cursor:pointer;min-height:180px;color:inherit;box-shadow:var(--shadow-xs);transition:transform var(--dur-med) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-med) var(--ease-out);flex-direction:column;align-items:flex-start;gap:8px;padding:20px;display:flex;position:relative}.rw-gate:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--hairline));box-shadow:var(--shadow-editorial);transform:translateY(-4px)}.rw-gate:disabled{opacity:.7;cursor:wait;transform:none}.rw-gate strong{letter-spacing:-.03em;font-size:20px;line-height:1.2}.rw-gate p{color:var(--muted);flex:1;font-size:13px;line-height:1.45}.rw-gate-cta{font-family:var(--font-mono);letter-spacing:.04em;color:var(--accent);margin-top:auto;font-size:11px;font-weight:500}.rw-gate-hero{background:linear-gradient(160deg, var(--accent-soft) 0%, var(--chalk-raised) 55%), var(--chalk-raised);border-color:color-mix(in srgb, var(--accent) 25%, var(--hairline))}.rw-gate-hero strong{font-size:24px}.rw-gate-ai{background:linear-gradient(165deg, #0b0f1908, transparent 50%), var(--chalk-raised)}.rw-bento{grid-template-rows:auto auto;grid-template-columns:1.4fr 1fr 1fr;gap:14px;margin-bottom:28px;display:grid}.rw-tile{background:var(--chalk-raised);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);flex-direction:column;gap:10px;min-height:180px;padding:22px;display:flex}.rw-tile-hero{background:radial-gradient(500px 240px at 100% 0%, #6d12f51a, transparent 60%), var(--chalk-raised);grid-row:span 2;min-height:360px;padding:26px}.rw-tile-hero h2{max-width:14ch;font-size:clamp(26px,3vw,34px)}.rw-tile h3{font-size:18px}.rw-tile-lead{color:var(--muted);max-width:36ch;font-size:14px}.rw-tile-muted{color:var(--muted);flex:1;font-size:13px;line-height:1.5}.rw-tile-metrics{grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0 8px;display:grid}.rw-tile-metrics>div{background:var(--chalk);border:1px solid var(--hairline);border-radius:14px;padding:12px}.rw-tile-metrics strong{letter-spacing:-.03em;margin-top:4px;font-size:18px;display:block}.rw-tile-actions{flex-wrap:wrap;gap:10px;margin-top:auto;display:flex}.rw-tile-link{font-family:var(--font-mono);letter-spacing:.04em;color:var(--accent);margin-top:auto;font-size:11px;font-weight:500}.rw-tile-mint{background:linear-gradient(165deg, var(--mint-soft), var(--chalk-raised) 60%)}.rw-fleet{flex-direction:column;flex:1;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rw-fleet button{border:1px solid var(--hairline);background:var(--chalk);cursor:pointer;text-align:left;width:100%;transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.rw-fleet button:hover{border-color:var(--accent);transform:translate(2px)}.rw-fleet strong{font-size:13px;font-weight:600}.rw-fleet span{font-family:var(--font-mono);color:var(--accent);font-size:10px}.rw-pulse{flex-direction:column;flex:1;gap:12px;margin:0;padding:0;list-style:none;display:flex}.rw-pulse li{border-bottom:1px solid var(--hairline);padding-bottom:10px}.rw-pulse li:last-child{border-bottom:0;padding-bottom:0}.rw-pulse strong{margin:2px 0;font-size:13px;display:block}.rw-pulse p{color:var(--muted);font-size:12px;line-height:1.4}.rw-home-foot{color:var(--muted-2);justify-content:space-between;gap:12px;padding:8px 2px 24px;font-size:12px;display:flex}.rw-course-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.rw-course-card{background:var(--chalk-raised);border:1px solid var(--hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);transition:transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out);overflow:hidden}.rw-course-card:hover{box-shadow:var(--shadow-editorial);transform:translateY(-3px)}.rw-course-banner{background:linear-gradient(145deg, var(--accent-soft), var(--chalk) 70%);border-bottom:1px solid var(--hairline);min-height:120px;padding:20px;position:relative}.rw-course-banner strong{letter-spacing:-.03em;max-width:90%;margin-top:6px;font-size:20px;display:block}.rw-course-banner>span{color:var(--accent);font-size:18px;position:absolute;top:18px;right:18px}.rw-course-body{flex-direction:column;gap:12px;padding:18px 20px 20px;display:flex}.rw-course-desc{color:var(--muted);font-size:13px}.rw-course-stats{gap:16px;display:flex}.rw-course-stats span{flex-direction:column;gap:2px;font-size:14px;font-weight:600;display:flex}.rw-course-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:4px;display:flex}.rw-course-foot a{color:var(--muted);font-size:13px;font-weight:500}.rw-course-foot a:hover{color:var(--accent)}.rw-assign-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.rw-assign-list li{border-radius:var(--radius-lg);border:1px solid var(--hairline);background:var(--chalk);justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.rw-assign-list strong{margin:2px 0 4px;font-size:15px;display:block}.rw-assign-list p{color:var(--muted);margin-bottom:8px;font-size:13px}.rw-status-pill{height:22px;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 8px;font-size:10px;font-weight:500;display:inline-flex}.rw-status-pill.tone-ok{background:var(--mint-soft);color:var(--mint)}.rw-status-pill.tone-warn{background:var(--warning-bg);color:var(--warning)}.rw-status-pill.tone-open{background:var(--accent-soft);color:var(--accent-deep)}.ws-empty{border:1px dashed var(--hairline-strong);border-radius:var(--radius-xl);background:var(--chalk-raised);text-align:center;padding:36px 24px}.ws-empty strong{margin-bottom:6px;display:block}.ws-empty p{color:var(--muted);font-size:14px}.ws-panel{background:var(--chalk-raised);border:1px solid var(--hairline);border-radius:var(--radius-xl);padding:22px}.ws-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ws-section-head h2{font-size:20px}.ws-section-head a{color:var(--accent);font-size:13px;font-weight:500}.ws-btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.ws-btn-primary.sm{height:34px;padding:0 12px}.ws-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.ws-btn-primary:disabled{opacity:.55;cursor:not-allowed}.ws-btn-text{color:var(--accent);font-size:14px;font-weight:500}.ws-course-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.ws-course-card{background:var(--chalk-raised);border:1px solid var(--hairline);border-radius:var(--radius-xl);overflow:hidden}.ws-course-banner{background:linear-gradient(145deg, var(--accent-soft), var(--chalk));border-bottom:1px solid var(--hairline);min-height:100px;padding:18px}.ws-course-body{padding:16px 18px 18px}.ws-course-desc{color:var(--muted);margin:6px 0 12px;font-size:13px}.ws-course-stats{color:var(--muted);gap:14px;margin-bottom:12px;font-size:12px;display:flex}.ws-course-foot{justify-content:space-between;align-items:center;gap:10px;display:flex}.ws-assign-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.ws-assign-list li{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--chalk);justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.ws-status-pill{height:22px;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 8px;font-size:10px;display:inline-flex}.ws-status-pill.tone-ok{background:var(--mint-soft);color:var(--mint)}.ws-status-pill.tone-warn{background:var(--warning-bg);color:var(--warning)}.ws-status-pill.tone-open{background:var(--accent-soft);color:var(--accent-deep)}.muted{color:var(--muted)}.ws-shell:not(.admin-ws) .ws-sidebar,.ws-sidebar-backdrop{display:none!important}@media (width<=1100px){.rw-runway-strip,.rw-bento{grid-template-columns:1fr 1fr}.rw-tile-hero{grid-area:auto/span 2;min-height:280px}}@media (width<=920px){.rw-user-meta,.rw-chip span{display:none}.rw-search{max-width:none}}@media (width<=720px){.rw-command{gap:10px;padding:0 12px}.rw-brand-copy,.rw-search kbd,.rw-logout{display:none}.rw-hello{flex-direction:column;align-items:flex-start}.rw-runway-strip,.rw-bento{grid-template-columns:1fr}.rw-tile-hero{grid-column:auto}.rw-dock{bottom:10px}.rw-dock-rail{border-radius:22px;justify-content:space-between;width:100%;max-width:520px;padding:6px;overflow-x:auto}.rw-dock-item{flex:1;min-width:56px;height:52px;padding:4px 6px}.rw-dock-label{font-size:9px}.rw-assign-list li,.rw-course-foot{flex-direction:column;align-items:stretch}.rw-shell{padding-bottom:calc(var(--dock-h) + 16px)}}@media (prefers-reduced-motion:reduce){.rw-gate:hover,.rw-course-card:hover,.rw-fleet button:hover,.rw-auth .auth-submit:hover:not(:disabled),.rw-btn-primary:hover:not(:disabled){transform:none}.rw-dock-gem{animation:none}}.st-shell{--st-sidebar-w:var(--st-sidebar);background:var(--chalk);min-height:100dvh;color:var(--ink);align-items:stretch;display:flex}.st-shell.is-collapsed{--st-sidebar-w:var(--st-sidebar-collapsed)}#isk-btn,.rw-dock{display:none!important}.st-sidebar{flex:0 0 var(--st-sidebar-w);width:var(--st-sidebar-w);background:color-mix(in srgb, var(--chalk-raised) 86%, #fff);border-right:1px solid var(--hairline);z-index:40;flex-direction:column;gap:8px;height:100dvh;padding:18px 14px 16px;display:flex;position:sticky;top:0}.st-brand{color:inherit;align-items:center;gap:10px;padding:4px 10px 14px;display:flex}.st-brand img{object-fit:contain;border-radius:8px;width:32px;height:32px}.st-brand-name{letter-spacing:-.04em;color:var(--ink);font-size:18px;font-weight:800}.st-brand-name em{color:var(--accent);font-style:normal}.st-shell.is-collapsed .st-brand-name,.st-shell.is-collapsed .st-nav-label,.st-shell.is-collapsed .st-nav-badge,.st-shell.is-collapsed .st-side-user-meta,.st-shell.is-collapsed .st-side-logout span{display:none}.st-shell.is-collapsed .st-brand,.st-shell.is-collapsed .st-nav-link,.st-shell.is-collapsed .st-side-user{justify-content:center;padding-left:0;padding-right:0}.st-nav{flex-direction:column;flex:auto;gap:4px;min-height:0;display:flex;overflow:auto}.st-nav-link{min-height:40px;color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:0 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.st-nav-link svg{flex:none;width:18px;height:18px}.st-nav-link:hover{background:color-mix(in srgb, var(--accent-soft) 55%, transparent);color:var(--ink-soft)}.st-nav-link.is-active{background:var(--accent-soft);color:var(--accent);font-weight:600}.st-nav-label{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.st-nav-badge{background:var(--accent);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;display:grid}.st-sidebar-foot{border-top:1px solid var(--hairline);gap:6px;margin-top:auto;padding-top:12px;display:grid}.st-side-user{color:inherit;transition:background var(--dur-fast) var(--ease-out);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.st-side-user:hover{background:var(--chalk-sunken)}.st-avatar{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-deep);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.st-side-user-meta{min-width:0;line-height:1.2;display:grid}.st-side-user-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.st-side-user-meta span{color:var(--muted);font-size:11px}.st-side-logout{min-height:36px;color:var(--muted);font:inherit;cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:0 10px;font-size:13px;font-weight:500;display:flex}.st-side-logout:hover{background:var(--chalk-sunken);color:var(--ink)}.st-workspace{flex-direction:column;flex:auto;min-width:0;min-height:100dvh;display:flex}.st-topbar{z-index:30;height:var(--st-topbar);background:color-mix(in srgb, var(--chalk) 88%, transparent);-webkit-backdrop-filter:blur(12px);align-items:center;gap:12px;padding:0 22px;display:flex;position:sticky;top:0}.st-icon-btn{width:36px;height:36px;color:var(--muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.st-icon-btn:hover{background:var(--chalk-sunken);color:var(--ink)}.st-search{border:1px solid var(--hairline);max-width:640px;height:40px;color:var(--muted-2);box-shadow:var(--shadow-xs);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#fff;border-radius:12px;flex:auto;align-items:center;gap:10px;margin:0 auto;padding:0 14px;display:flex}.st-search:focus-within{border-color:color-mix(in srgb, var(--accent) 45%, var(--hairline));box-shadow:0 0 0 3px var(--accent-soft);color:var(--ink)}.st-search input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:14px}.st-search input::placeholder{color:var(--muted-2)}.st-search kbd{font-family:var(--font-mono);color:var(--muted-2);border:1px solid var(--hairline);background:var(--chalk);border-radius:6px;padding:1px 6px;font-size:11px}.st-top-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.st-bell{position:relative}.st-bell-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 2px var(--chalk);border-radius:50%;position:absolute;top:8px;right:8px}.st-ibrain-trigger{color:var(--accent);display:none}.st-chip{border:1px solid var(--hairline);height:32px;color:var(--ink-soft);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:#fff;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.st-chip:hover{border-color:var(--accent);color:var(--accent)}.st-main{flex:auto;min-width:0;padding:8px 32px 28px;overflow:auto}.st-page-head{margin:8px 0 22px}.st-page-head h1{margin:0 0 6px;font-size:clamp(26px,3vw,32px)}.st-page-head p{color:var(--muted);max-width:52ch;margin:0;font-size:14px}.st-page{flex-direction:column;gap:18px;max-width:920px;display:flex}.st-foot{color:var(--muted-2);justify-content:space-between;gap:12px;padding:28px 2px 8px;font-size:12px;display:flex}.st-ibrain{flex:0 0 var(--st-ibrain);width:var(--st-ibrain);z-index:35;background:#fff;border-left:1px solid #eceff3;flex-direction:column;height:100dvh;padding:18px 20px 16px;display:none;position:sticky;top:0}.st-shell.is-ibrain-open .st-ibrain{display:flex}.st-shell:not(.is-ibrain-open) .st-ibrain-trigger{display:grid}.st-ibrain-head{align-items:center;gap:8px;min-height:32px;margin-bottom:4px;display:flex}.st-ibrain-mark{color:#7c3aed;place-items:center;width:20px;height:20px;display:grid}.st-ibrain-head strong{letter-spacing:-.02em;color:#0f172a;flex:1;font-size:15px;font-weight:700}.st-ibrain-body{flex-direction:column;flex:auto;min-height:0;padding:8px 0 0;display:flex;overflow:hidden}.st-ibrain-top{flex:auto;min-height:0;padding-right:2px;overflow:auto}.st-ibrain-hero-icon{color:#7c3aed;background:#f3e8ff;border-radius:14px;place-items:center;width:52px;height:52px;margin:20px 0 18px;display:grid}.st-ibrain-copy h2{letter-spacing:-.035em;color:#0f172a;margin:0;font-size:22px;font-weight:700;line-height:1.22}.st-ibrain-copy p{color:#64748b;margin:10px 0 0;font-size:14px;font-weight:450}.st-ibrain-chips{gap:10px;margin:22px 0 12px;display:grid}.st-ibrain-chip{color:#0f172a;min-height:44px;font:inherit;text-align:left;cursor:pointer;box-shadow:none;background:#fff;border:1px solid #e8ecf1;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;transition:border-color .15s,background .15s;display:flex}.st-ibrain-chip:hover{color:#5b21b6;background:#faf5ff;border-color:#d8b4fe;transform:none}.st-ibrain-chip span{color:#94a3b8;font-size:16px;font-weight:400;line-height:1}.st-ibrain-foot{flex:none;margin-top:auto;padding-top:8px}.st-ibrain-ask{background:#fff;border:1px solid #e8ecf1;border-radius:16px;align-items:center;gap:8px;min-height:50px;padding:6px 6px 6px 16px;display:flex;box-shadow:0 1px 2px #0f172a08}.st-ibrain-ask:focus-within{border-color:#c4b5fd;box-shadow:0 0 0 3px #7c3aed1a}.st-ibrain-ask input{color:#0f172a;background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:13.5px}.st-ibrain-ask input::placeholder{color:#94a3b8}.st-ibrain-send{color:#7c3aed;cursor:pointer;background:#ede9fe;border:0;border-radius:11px;place-items:center;width:36px;height:36px;transition:background .15s,color .15s;display:grid}.st-ibrain-send:hover:not(:disabled){color:#fff;background:#7c3aed}.st-ibrain-send:disabled{opacity:.5;cursor:not-allowed}.st-ibrain-meta{color:#94a3b8;letter-spacing:.01em;margin:12px 0 0;font-size:11px}.st-ibrain-support{color:#64748b;border-top:1px solid #eceff3;align-items:center;gap:8px;margin-top:12px;padding-top:12px;font-size:12px;font-weight:500;text-decoration:none;transition:color .15s;display:flex}.st-ibrain-support:hover{color:#7c3aed}.st-ibrain-status{color:#64748b;margin:8px 0 0;font-size:12px}.st-scrim{display:none}.st-home{flex-direction:column;gap:28px;max-width:920px;display:flex}.st-hello h1{letter-spacing:-.035em;margin:0 0 6px;font-size:clamp(28px,3.6vw,36px)}.st-hello p{color:var(--muted);margin:0;font-size:15px}.st-hero{color:#fff;background:radial-gradient(520px 240px at 92% 20%,#ffffff2e,#0000 55%),linear-gradient(118deg,#6d12f5 0%,#6a3bff 42%,#4f7cff 100%);border-radius:16px;min-height:220px;padding:28px 28px 24px;position:relative;overflow:hidden;box-shadow:0 16px 40px #6d12f52e}.st-hero-art{pointer-events:none;position:absolute;inset:0}.st-hero-art i{border:1px solid #ffffff2e;border-radius:50%;position:absolute}.st-hero-art i:first-child{background:radial-gradient(circle at 30% 30%,#ffffff29,#0000 60%);width:220px;height:220px;top:-70px;right:-40px}.st-hero-art i:nth-child(2){background:radial-gradient(circle at 70% 40%,#ffffff1f,#0000 62%);width:140px;height:140px;bottom:-50px;right:70px}.st-hero-art i:nth-child(3){background:#ffffff14;width:72px;height:72px;top:54px;right:36px}.st-hero-top{letter-spacing:.12em;text-transform:uppercase;opacity:.82;justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:600;display:flex;position:relative}.st-hero h2{letter-spacing:-.035em;color:#fff;max-width:14ch;margin:18px 0 22px;font-size:clamp(26px,3.2vw,36px);line-height:1.12;position:relative}.st-hero-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex;position:relative}.st-hero-cta{height:42px;color:var(--accent);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#fff;border:0;border-radius:12px;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:650;display:inline-flex;box-shadow:0 8px 20px #0f172a1f}.st-hero-cta:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 24px #0f172a29}.st-hero-cta:disabled{opacity:.7;cursor:wait}.st-hero-meta{opacity:.88;font-size:13px;font-weight:500}.st-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.st-section-head h2{letter-spacing:-.02em;font-size:18px}.st-section-head a{color:var(--accent);transition:opacity var(--dur-fast) var(--ease-out);font-size:13px;font-weight:600}.st-section-head a:hover{opacity:.75}.st-card{border:1px solid var(--hairline);box-shadow:var(--shadow-xs);background:#fff;border-radius:12px;overflow:hidden}.st-learn-list,.st-radar-list{margin:0;padding:0;list-style:none}.st-learn-list li+li,.st-radar-list li+li{border-top:1px solid var(--hairline)}.st-learn-row,.st-radar-row{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:0;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}.st-learn-row:hover,.st-radar-row:hover{background:color-mix(in srgb, var(--accent-soft) 45%, #fff)}.st-learn-mark{letter-spacing:.04em;border-radius:10px;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:11px;font-weight:800;display:grid}.st-learn-mark.tone-purple{background:var(--accent-soft);color:var(--accent)}.st-learn-mark.tone-teal{color:#1b8a72;background:#e4f4f0}.st-learn-mark.tone-sky{color:#2b6cb0;background:#e7f1fe}.st-learn-copy{flex:auto;min-width:0}.st-learn-copy strong,.st-radar-copy strong{letter-spacing:-.01em;font-size:14px;font-weight:650;display:block}.st-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);margin-bottom:2px;font-size:11px;font-weight:650;display:block}.st-learn-copy p,.st-radar-copy p{color:var(--muted);margin:2px 0 0;font-size:13px}.st-chev{color:var(--muted-2);flex-shrink:0}.st-radar-icon{background:var(--chalk);width:36px;height:36px;color:var(--muted);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.st-radar-action{color:var(--accent);white-space:nowrap;margin-left:auto;font-size:13px;font-weight:600}.st-empty{text-align:center;color:var(--muted);padding:28px 20px}.st-empty strong{color:var(--ink);margin-bottom:4px;display:block}.rw-page{flex-direction:column;gap:16px;display:flex}.rw-panel,.ws-panel{border:1px solid var(--hairline);box-shadow:var(--shadow-xs);background:#fff;border-radius:12px;padding:20px}.rw-empty,.ws-empty{border:1px dashed var(--hairline-strong);text-align:center;background:#fff;border-radius:12px;padding:36px 24px}.rw-empty strong,.ws-empty strong{margin-bottom:6px;display:block}.rw-empty p,.ws-empty p{color:var(--muted);font-size:14px}.st-placeholder{border:1px solid var(--hairline);box-shadow:var(--shadow-xs);background:#fff;border-radius:12px;gap:8px;max-width:40rem;padding:28px 24px;display:grid}.st-placeholder h2{margin:0;font-size:22px}.st-placeholder p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.st-placeholder-actions{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.st-btn{cursor:pointer;height:40px;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.st-btn-primary{background:var(--accent);color:#fff}.st-btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.st-btn-ghost{border-color:var(--hairline);color:var(--ink-soft);background:#fff}.st-btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.st-auth{background:radial-gradient(900px 420px at 12% -10%, #6d12f512, transparent 60%), radial-gradient(700px 380px at 100% 110%, #4f7cff14, transparent 55%), var(--chalk);place-items:center;min-height:100vh;padding:32px 18px;display:grid}.st-auth-card{border:1px solid var(--hairline);width:min(440px,100%);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:32px 32px 24px}.st-auth-brand{align-items:center;gap:10px;margin-bottom:24px;display:flex}.st-auth-brand img{border-radius:8px;width:32px;height:32px}.st-auth-brand strong{letter-spacing:-.03em;font-size:16px;display:block}.st-auth-brand span{color:var(--muted);font-size:12px;display:block}.st-auth-intro h1{margin:0 0 8px;font-size:clamp(24px,3vw,28px)}.st-auth-intro p{color:var(--muted);margin:0 0 22px;font-size:14px;line-height:1.55}.st-auth-foot{text-align:center;color:var(--muted-2);margin-top:22px;font-size:12px}.st-auth .auth-card{box-shadow:none;background:0 0;border:0;padding:0}.st-auth .auth-card-head h2{margin:0 0 4px;font-size:16px}.st-auth .auth-card-head p{color:var(--muted);margin:0 0 16px;font-size:13px}.st-auth .auth-form{flex-direction:column;gap:14px;display:flex}.st-auth .auth-label{color:var(--ink-soft);flex-direction:column;gap:6px;font-size:12px;font-weight:500;display:flex}.st-auth .auth-field{background:var(--chalk);border:1px solid var(--hairline);height:46px;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border-radius:10px;align-items:center;gap:8px;padding:0 14px;display:flex}.st-auth .auth-field input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:14px}.st-auth .auth-field input::placeholder{color:var(--muted-2)}.st-auth .auth-field-icon{color:var(--muted-2);flex-shrink:0;display:flex}.st-auth .auth-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.st-auth .auth-field:focus-within .auth-field-icon{color:var(--accent)}.st-auth .auth-field-action{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:500}.st-auth .auth-field-action:hover{color:var(--ink)}.st-auth .auth-submit{background:var(--accent);color:#fff;cursor:pointer;height:46px;transition:background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.st-auth .auth-submit:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.st-auth .auth-submit:disabled{opacity:.55;cursor:not-allowed;transform:none}.st-auth .auth-submit .btn-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite soft-spin}.st-auth .auth-text-link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:500}.st-auth .auth-text-link:hover{color:var(--accent-hover)}.st-auth .auth-footer,.st-auth .auth-hint{color:var(--muted);text-align:center;margin-top:14px;font-size:13px}.st-auth .auth-footer-row,.st-auth .auth-row-end{justify-content:space-between;gap:12px;margin-top:4px;display:flex}.st-auth .auth-row-end{justify-content:flex-end}.st-auth .auth-alert{background:var(--danger-bg);color:var(--danger);border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:13px}.st-auth .auth-alert-info{background:var(--accent-soft);color:var(--accent-deep)}@media (width<=1120px){.st-ibrain{border-left:1px solid var(--hairline);width:min(380px,92vw);box-shadow:var(--shadow-md);transition:transform .18s var(--ease-out);z-index:36;display:flex;position:fixed;top:0;right:0;transform:translate(110%)}.st-shell.is-ibrain-open .st-ibrain{transform:translate(0)}.st-ibrain-trigger{display:grid}.st-shell.is-ibrain-open .st-scrim{z-index:34;cursor:pointer;background:#0b0f1947;border:0;display:block;position:fixed;inset:0}}@media (width<=780px){.st-sidebar{border-right:1px solid var(--hairline);width:min(280px,86vw);box-shadow:var(--shadow-md);transition:transform .18s var(--ease-out);background:#fff;position:fixed;top:0;left:0;transform:translate(-110%)}.st-shell.is-nav-open .st-sidebar{transform:translate(0)}.st-shell.is-collapsed .st-brand-name,.st-shell.is-collapsed .st-nav-label,.st-shell.is-collapsed .st-nav-badge,.st-shell.is-collapsed .st-side-user-meta,.st-shell.is-collapsed .st-side-logout span{display:initial}.st-shell.is-collapsed .st-brand,.st-shell.is-collapsed .st-nav-link,.st-shell.is-collapsed .st-side-user{justify-content:flex-start;padding-left:12px;padding-right:12px}.st-shell.is-nav-open .st-scrim,.st-shell.is-ibrain-open .st-scrim{z-index:34;background:#0b0f1947;border:0;display:block;position:fixed;inset:0}.st-topbar{padding:0 12px}.st-search kbd,.st-chip span{display:none}.st-main{padding:8px 16px 24px}.st-hero{min-height:200px;padding:22px 18px 20px}.st-hello h1{font-size:26px}.st-learn-row,.st-radar-row{padding:12px}.st-radar-action{font-size:12px}}@media (prefers-reduced-motion:reduce){.st-hero-cta:hover:not(:disabled),.st-ibrain-chip:hover,.st-btn-primary:hover,.st-auth .auth-submit:hover:not(:disabled){transform:none}.st-sidebar,.st-ibrain{transition:none}}.st-nav-secondary{border-top:1px solid var(--hairline,#e8e6f0);flex-direction:column;gap:2px;margin-top:4px;padding:8px 10px 4px;display:flex}.st-nav-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#6b6680);margin:6px 10px 4px;font-size:11px}.st-nav-link-secondary{opacity:.92}.st-learn-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.st-learn-card{border:1px solid var(--hairline,#e8e6f0);background:#fff;border-radius:16px;overflow:hidden}.st-learn-card-body{padding:16px 16px 18px}.st-learn-card-body strong{margin:4px 0 8px;font-size:17px;display:block}.st-learn-card-meta{color:var(--muted,#6b6680);margin:0;font-size:13px}.st-muted{color:var(--muted,#6b6680);font-size:13px}.st-health-layout{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.st-health-score{letter-spacing:-.03em;font-size:36px}.st-contract{color:var(--muted,#6b6680);font-size:13px}.st-contract ul{margin:8px 0 0;padding-left:18px}.st-ssm-extras{border-top:1px solid var(--hairline,#e8e6f0);gap:12px;margin-top:16px;padding-top:16px;display:grid}.st-bottom-nav,.st-more-sheet{display:none}@media (width<=780px){.st-shell{padding-bottom:64px}.st-bottom-nav{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--hairline,#e8e6f0);height:58px;padding:4px 2px calc(4px + env(safe-area-inset-bottom,0px));background:#fffffff5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.st-bottom-link{color:var(--muted,#6b6680);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:10px;text-decoration:none;display:flex}.st-bottom-link.is-active{color:#6d28d9;font-weight:600}.st-more-sheet{z-index:39;transition:transform .18s var(--ease-out,ease);pointer-events:none;display:block;position:fixed;bottom:58px;left:0;right:0;transform:translateY(110%)}.st-more-sheet.is-open{pointer-events:auto;transform:translateY(0)}.st-more-sheet-inner{border:1px solid var(--hairline,#e8e6f0);box-shadow:var(--shadow-md,0 12px 40px #140c2824);background:#fff;border-radius:16px;flex-direction:column;gap:4px;margin:0 10px 10px;padding:14px;display:flex}.st-more-link{color:inherit;border-radius:12px;align-items:center;gap:10px;padding:12px 10px;text-decoration:none;display:flex}.st-more-link.is-active,.st-more-link:hover{color:#6d28d9;background:#f5f1ff}.st-shell.is-more-open .st-scrim{z-index:38;background:#0b0f1947;border:0;display:block;position:fixed;inset:0}.st-main{padding-bottom:28px}}@media (prefers-reduced-motion:reduce){.st-more-sheet{transition:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--chalk:#f7f5f2;--chalk-raised:#fffcfa;--chalk-sunken:#efebe6;--ink:#0b0f19;--ink-soft:#2a303c;--muted:#6b655e;--muted-2:#9a9288;--hairline:#e7e2dc;--hairline-strong:#d9d2c8;--accent:#6d12f5;--accent-hover:#5b0fd0;--accent-deep:#4c0db0;--accent-soft:#f1e8ff;--accent-glow:#6d12f538;--mint:#1fa97a;--mint-soft:#e6f7f0;--danger:#c62828;--danger-bg:#fdecec;--warning:#c47a12;--warning-bg:#fff6e8;--brand-purple:var(--accent);--brand-purple-hover:var(--accent-hover);--brand-purple-deep:var(--accent-deep);--brand-purple-soft:var(--accent-soft);--brand-purple-muted:var(--accent-soft);--surface-0:var(--chalk);--surface-1:var(--chalk-raised);--surface-2:var(--chalk-sunken);--surface-3:var(--chalk-sunken);--line:var(--hairline);--line-strong:var(--hairline-strong);--success:var(--mint);--success-bg:var(--mint-soft);--shadow-editorial:0 1px 1px #0b0f1908, 0 12px 32px #0b0f190f;--shadow-dock:0 8px 28px #0b0f191f, 0 2px 6px #0b0f190f;--shadow-xs:0 1px 2px #0b0f190a;--shadow-sm:0 2px 8px #0b0f190d;--shadow-md:var(--shadow-editorial);--radius-sm:8px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-pill:999px;--ease-out:cubic-bezier(.2, .8, .2, 1);--dur-fast:.15s;--dur-med:.18s;--dur-slow:.22s;--font-display:"Inter", "Segoe UI", system-ui, sans-serif;--font-body:"Inter", "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--st-sidebar:232px;--st-sidebar-collapsed:76px;--st-ibrain:328px;--st-topbar:64px;--content-max:920px;font-family:var(--font-body);color:var(--ink);background:var(--chalk);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}body{background:var(--chalk);color:var(--ink);margin:0}h1,h2,h3,h4,.display{font-family:var(--font-display);letter-spacing:-.028em;color:var(--ink);margin:0;font-weight:600}p{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft);color:var(--ink)}.mono-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-spin{to{transform:rotate(360deg)}}@keyframes gem-pulse{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 6px #0000}}.ui-stagger>*{animation:rise-in var(--dur-slow) var(--ease-out) both}.ui-stagger>:first-child{animation-delay:20ms}.ui-stagger>:nth-child(2){animation-delay:45ms}.ui-stagger>:nth-child(3){animation-delay:70ms}.ui-stagger>:nth-child(4){animation-delay:95ms}.ui-stagger>:nth-child(5){animation-delay:.12s}.ui-stagger>:nth-child(6){animation-delay:.145s}.ui-stagger>:nth-child(7){animation-delay:.17s}.ui-stagger>:nth-child(8){animation-delay:.195s}@media (prefers-reduced-motion:reduce){.ui-stagger>*{animation:none}}
