@font-face{font-family:Lexend;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/630e0b819503bca7-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lexend;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6eed223b32d97b82-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lexend;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/793968fa3513f5d6-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lexend;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/630e0b819503bca7-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lexend;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6eed223b32d97b82-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lexend;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/793968fa3513f5d6-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lexend;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/630e0b819503bca7-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lexend;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6eed223b32d97b82-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lexend;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/793968fa3513f5d6-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lexend;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/630e0b819503bca7-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lexend;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6eed223b32d97b82-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lexend;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/793968fa3513f5d6-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lexend Fallback;src:local("Arial");ascent-override:90.98%;descent-override:22.74%;line-gap-override:0.00%;size-adjust:109.91%}.__className_cf7370{font-family:Lexend,Lexend Fallback;font-style:normal}.__variable_cf7370{--font-lexend:"Lexend","Lexend Fallback"}:root{--color-nav:#2d0241;--color-bg:#f5f8fa;--color-surface:#ffffff;--color-surface-inset:#eaf0f6;--color-border:#cbd6e2;--color-border-subtle:#e3eaf1;--color-text:#33475b;--color-text-secondary:#516f90;--color-text-muted:#7c98b6;--color-nav-text:#d3c2e0;--color-nav-text-dim:#b3a0c6;--color-primary:#e8563d;--color-primary-tint:#fdeeea;--color-hover-wash:#f0f4f8;--color-interactive:#00a4bd;--color-interactive-hover:#007a8c;--color-success:#00bda5;--color-success-bg:#d0f5ef;--color-success-text:#00756b;--color-warning:#f2a640;--color-warning-bg:#fdf3e3;--color-warning-text:#8a5d00;--color-info-bg:#d6f2f7;--color-status-amber:#f5c26b;--color-status-amber-text:#9a6b15;--color-status-red:#e8563d;--color-status-red-text:#c0392b;--color-accent-purple:#4f46c7;--color-accent-purple-bg:#e4e2f9;--radius:3px;--admin-nav-h:52px;--admin-sidebar-w:240px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px}*,:after,:before{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--color-bg);color:var(--color-text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--color-interactive);text-decoration:none}a:hover{color:var(--color-interactive-hover)}h1,h2,h3,h4{margin:0;font-weight:600;color:var(--color-text)}h1{font-size:24px}h2{font-size:18px}h3{font-size:15px}p{margin:0}img{max-width:100%}button{font-family:inherit;font-size:inherit;cursor:pointer}.container{max-width:1080px;margin:0 auto;padding:var(--space-6) var(--space-5)}.stack{flex-direction:column;gap:var(--space-4)}.row,.stack{display:flex}.row{align-items:center;gap:var(--space-3)}.grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.muted{color:var(--color-text-muted)}.secondary{color:var(--color-text-secondary)}.spacer{flex:1 1}.nav{height:var(--admin-nav-h);background:var(--color-nav);gap:var(--space-3);padding:0 var(--space-4);color:#fff}.nav,.nav-brand{display:flex;align-items:center}.nav-brand{text-decoration:none}.brand-mark-row{padding-bottom:4px}.brand-mark-row,.nav-logo{display:flex;justify-content:center}.nav-logo{width:22px;height:22px;border-radius:var(--radius);background:var(--color-primary);color:#fff;font-weight:700;font-size:14px;align-items:center;margin-right:var(--space-4)}.nav-right{margin-left:auto;gap:var(--space-3);color:var(--color-nav-text);font-size:13px}.nav-avatar,.nav-right{display:flex;align-items:center}.nav-avatar{width:28px;height:28px;border-radius:50%;background:var(--color-interactive);color:#fff;justify-content:center;font-weight:600;font-size:12px}.ws-switcher{position:relative}.ws-switcher-trigger{display:inline-flex;align-items:center;gap:var(--space-2);max-width:220px;padding:5px 10px;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);background:rgba(255,255,255,.06);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .14s ease-out,border-color .14s ease-out}.ws-switcher-trigger:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28)}.ws-switcher-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-switcher-chevron{flex-shrink:0;color:var(--color-nav-text)}.ws-switcher-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:260px;max-width:320px;padding:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 12px rgba(45,62,80,.16);color:var(--color-text);animation:ws-switcher-in .14s ease-out}@keyframes ws-switcher-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ws-switcher-section-label{padding:6px 10px 4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.ws-switcher-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px 10px;border:0;border-radius:var(--radius);background:none;color:var(--color-text);font:inherit;font-size:13px;text-align:left;cursor:pointer;transition:background .12s ease-out}.ws-switcher-item:hover{background:var(--color-surface-inset);color:var(--color-text)}.ws-switcher-item:disabled{cursor:default;opacity:.7}.ws-switcher-item.is-active{background:var(--color-surface-inset)}.ws-switcher-item-body{display:flex;flex-direction:column;min-width:0;flex:1 1}.ws-switcher-item-name{font-weight:600}.ws-switcher-item-name,.ws-switcher-item-slug{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-switcher-item-slug{font-size:12px;color:var(--color-text-muted)}.ws-switcher-check{flex-shrink:0;color:var(--color-interactive)}.ws-switcher-divider{height:1px;margin:var(--space-1) 4px;background:var(--color-border)}.ws-switcher-create{color:var(--color-interactive);font-weight:600}.ws-switcher-create:hover{color:var(--color-interactive-hover)}.ws-switcher-plus{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:16px;line-height:1}.ws-switcher-spinner{flex-shrink:0;width:14px;height:14px;border:2px solid var(--color-border);border-top-color:var(--color-interactive);border-radius:50%;animation:ws-switcher-spin .6s linear infinite}@keyframes ws-switcher-spin{to{transform:rotate(1turn)}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-5)}.card-title{font-size:15px;font-weight:600;margin-bottom:var(--space-1)}.card-desc{color:var(--color-text-secondary);font-size:13px;margin-bottom:var(--space-4)}.stat-card .stat-value{font-size:28px;font-weight:700;color:var(--color-text)}.stat-card .stat-label{color:var(--color-text-secondary);font-size:13px;margin-top:var(--space-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius);border:1px solid transparent;font-weight:600;font-size:14px;line-height:1;text-decoration:none;white-space:nowrap}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{filter:brightness(.95);color:#fff}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover{background:var(--color-surface-inset);color:var(--color-text)}.btn-tertiary{background:transparent;color:var(--color-interactive);padding:0 var(--space-2)}.btn-sm{height:28px;font-size:13px;padding:0 var(--space-3)}.btn:disabled{opacity:.5;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:13px;font-weight:600;color:var(--color-text)}.help{font-size:12px;color:var(--color-text-muted)}.input{height:36px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:14px;width:100%}.input:focus{outline:none;border-color:var(--color-interactive);box-shadow:0 0 0 2px var(--color-info-bg)}.input-prefix{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;background:var(--color-surface)}.input-prefix>span{padding:0 var(--space-3);background:var(--color-surface-inset);color:var(--color-text-secondary);font-size:13px;height:36px;display:flex;align-items:center;border-right:1px solid var(--color-border)}.input-prefix>input{border:none;height:36px;padding:0 var(--space-3);flex:1 1;font-size:14px;color:var(--color-text);outline:none}.table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.table th{text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);background:var(--color-bg)}.table td,.table th{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.table td{font-size:14px}.table tr:last-child td{border-bottom:none}.table-wrap{overflow-x:auto}.tag{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;padding:2px 8px;border-radius:100px;background:var(--color-surface-inset);color:var(--color-text-secondary)}.tag-success{background:var(--color-success-bg);color:var(--color-success-text)}.tag-info{background:var(--color-info-bg);color:var(--color-interactive-hover)}.tag-warning{background:#fdf3e0;color:#a5641b}.tag-purple{background:var(--color-accent-purple-bg);color:var(--color-accent-purple)}.tag-danger{background:#fde3e4;color:#c0343b}.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.checklist li{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius)}.check-dot,.checklist li{display:flex;align-items:center}.check-dot{width:20px;height:20px;border-radius:50%;border:2px solid var(--color-border);flex-shrink:0;justify-content:center;font-size:12px;color:#fff}.check-dot.done{background:var(--color-success);border-color:var(--color-success)}.settings-shell{display:grid;grid-template-columns:240px 1fr;grid-gap:var(--space-6);gap:var(--space-6);align-items:start}.settings-nav{display:flex;flex-direction:column;gap:2px;position:-webkit-sticky;position:sticky;top:var(--space-5)}.settings-nav a{padding:8px 12px;border-radius:var(--radius);color:var(--color-text-secondary);font-weight:500}.settings-nav a.active,.settings-nav a:hover{background:var(--color-surface-inset);color:var(--color-text)}.settings-nav a.active{font-weight:600}.settings-nav-group{margin-top:var(--space-4);padding:var(--space-3) 12px var(--space-1);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.settings-content{max-width:760px;display:flex;flex-direction:column;gap:var(--space-5)}@media (max-width:720px){.settings-shell{grid-template-columns:1fr}}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.auth-card{width:100%;max-width:380px}.brand-mark{width:32px;height:32px;border-radius:var(--radius);background:var(--color-primary);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4)}.error-text{color:#c0343b;font-size:13px}.breadcrumb{color:var(--color-text-secondary);font-size:13px;margin-bottom:var(--space-4)}.divider{height:1px;background:var(--color-border);border:none;margin:var(--space-2) 0}.btn-danger{background:#fde3e4;color:#c0343b;border-color:#f5c6c9}.btn-danger:hover{background:#f8ced1;color:#c0343b}.tabs{display:flex;gap:var(--space-4);border-bottom:1px solid var(--color-border)}.tab{padding:var(--space-2) 0;font-size:13px;font-weight:500;color:var(--color-text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px}.tab.active{color:var(--color-text);font-weight:600;border-bottom-color:var(--color-primary)}button.tab{background:none;border:none;border-bottom:2px solid transparent}.row-actions{display:flex;gap:var(--space-2);justify-content:flex-end;opacity:0;transition:opacity .1s ease}.table tbody tr:focus-within .row-actions,.table tbody tr:hover .row-actions{opacity:1}.empty-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:var(--space-4)}.empty-grid,.overview-grid{display:grid;gap:var(--space-4)}.overview-grid{grid-template-columns:1fr 1fr 320px;grid-gap:var(--space-4);align-items:start}@media (max-width:900px){.overview-grid{grid-template-columns:1fr}}.outline-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.outline-list li{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius)}.outline-index{width:20px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;color:var(--color-text-secondary);font-size:13px}.outline-title{font-weight:500}.danger-zone{border-color:#f5c6c9}.modal-overlay{position:fixed;inset:0;background:rgba(45,2,65,.35);display:flex;align-items:flex-start;justify-content:center;padding:var(--space-6) var(--space-5);z-index:50;overflow-y:auto}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-5);width:100%;max-width:460px;margin-top:8vh;box-shadow:0 8px 24px rgba(45,2,65,.2)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rp-legend{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary)}.rp-swatch{width:10px;height:10px;border-radius:2px;display:inline-block}.rp-meter{height:6px;background:var(--color-surface-inset);border-radius:3px;overflow:hidden;margin-bottom:4px}.rp-meter-fill{height:100%;background:var(--color-accent-purple);border-radius:3px;transition:width .4s ease-out}.rp-meter-working{background-image:linear-gradient(115deg,rgba(255,255,255,.28) 25%,transparent 0,transparent 50%,rgba(255,255,255,.28) 0,rgba(255,255,255,.28) 75%,transparent 0);background-size:18px 18px;animation:rp-meter-stripe .9s linear infinite}@keyframes rp-meter-stripe{to{background-position:18px 0}}.ai-lesson-detail{margin-top:2px;font-size:12px}.ai-lesson-detail>summary{color:var(--color-interactive);cursor:pointer;list-style:none}.ai-lesson-detail>summary::-webkit-details-marker{display:none}.ai-lesson-detail>summary:before{content:"\25B8  "}.ai-lesson-detail[open]>summary:before{content:"\25BE  "}.ai-lesson-detail>p{margin:4px 0 0;color:var(--color-text-secondary);overflow-wrap:anywhere}.ai-elapsed{margin-left:5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.7}.ai-tag-queued{color:var(--color-text-muted);opacity:.65}.ai-row-settled>td{animation:ai-row-settle 1.2s ease-out 1}@keyframes ai-row-settle{0%{background:var(--color-accent-purple-bg)}to{background:transparent}}.btn.is-working:disabled{opacity:1;cursor:progress}@media (prefers-reduced-motion:reduce){.rp-meter-fill{transition:none}.ai-row-settled>td{animation:none}.rp-meter-working{animation:none;background-image:none}}.ed-chip-spinner{display:inline-block;vertical-align:-1px;width:9px;height:9px;margin-right:5px;border-radius:50%;border:1.5px solid var(--color-border);border-top-color:var(--color-accent-purple);animation:hl-chip-spin .8s linear infinite}.ed-chip-busy{display:inline-flex;align-items:center}@keyframes hl-chip-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ed-chip-spinner{animation:none}}.rp-record-grid{display:grid;grid-template-columns:320px 1fr 320px;grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.rp-rail{display:flex;flex-direction:column;gap:var(--space-4);position:-webkit-sticky;position:sticky;top:var(--space-5)}@media (max-width:1080px){.rp-record-grid{grid-template-columns:1fr}.rp-rail{position:static}}.rp-avatar{width:48px;height:48px;border-radius:50%;background:var(--color-interactive);color:#fff;display:grid;place-items:center;font-size:16px;font-weight:600;flex:none}.rp-card-head{padding:14px 20px;border-bottom:1px solid var(--color-surface-inset);font-size:14px;font-weight:600}.rp-tabs{display:flex;border-bottom:1px solid var(--color-border);padding:0 20px}.rp-tab{padding:14px 16px;font-size:14px;color:var(--color-text-secondary)}.rp-tab.active{font-weight:600;color:var(--color-interactive);box-shadow:inset 0 -2px 0 var(--color-interactive)}.rp-day-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:8px 0 12px}.rp-event{display:flex;gap:14px}.rp-event-marker{display:flex;flex-direction:column;align-items:center;flex:none}.rp-event-chip{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700}.rp-event-line{width:1px;flex:1 1;background:var(--color-surface-inset);margin-top:4px;min-height:12px}.rp-event-body{flex:1 1;border:1px solid var(--color-border);border-radius:var(--radius);padding:12px 16px;margin-bottom:14px}.rp-assoc-row{padding:12px 20px;border-bottom:1px solid var(--color-surface-inset)}.rp-assoc-row:last-child{border-bottom:none}.lx-controls{display:flex;flex-direction:column;gap:var(--space-3)}.lx-controls[data-pending]{opacity:.6;pointer-events:none}.lx-tabs{gap:var(--space-3);flex-wrap:wrap}.lx-tab-wrap{display:inline-flex;align-items:center}button.tab.lx-tab{background:none;border:none;border-bottom:2px solid transparent;font:inherit;cursor:pointer}.lx-add-view{color:var(--color-interactive)}.lx-tab-del{background:none;border:none;color:var(--color-text-muted);font-size:11px;cursor:pointer;padding:0 2px;margin-left:2px;line-height:1}.lx-tab-del:hover{color:#c0343b}.lx-filterbar{flex-wrap:wrap}.lx-filterbar,.lx-search{display:flex;align-items:center;gap:var(--space-2)}.lx-search{height:32px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text-muted);min-width:220px}.lx-search:focus-within{border-color:var(--color-interactive);box-shadow:0 0 0 2px var(--color-info-bg)}.lx-search-input{border:none;outline:none;font:inherit;font-size:14px;color:var(--color-text);background:transparent;width:100%}.lx-select{height:32px;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:13px;cursor:pointer;max-width:200px}.lx-select:focus{outline:none;border-color:var(--color-interactive);box-shadow:0 0 0 2px var(--color-info-bg)}.lx-menu{position:relative}.lx-menu-panel{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:180px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 16px rgba(45,2,65,.14);padding:var(--space-2)}.lx-menu-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);padding:var(--space-1) var(--space-2) var(--space-2)}.lx-menu-item{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius);font-size:13px;cursor:pointer}.lx-menu-item:hover{background:var(--color-surface-inset)}.lx-menu-item input{accent-color:var(--color-interactive)}.lx-chips{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.lx-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;padding:3px 8px;border-radius:var(--radius);background:var(--color-surface-inset);color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer}.lx-chip:hover{background:#dce6f0;color:var(--color-text)}.lx-chip span{font-size:10px}.lx-chip-clear{background:none;border:none;color:var(--color-interactive);font-size:12px;font-weight:500;cursor:pointer;padding:3px 4px}.lx-sort{color:inherit;display:inline-flex;align-items:center;font:inherit;text-decoration:none;white-space:nowrap}.lx-sort:hover{color:var(--color-text)}.lx-table th{white-space:nowrap}.lx-name-cell{display:flex;align-items:center;gap:10px}.lx-avatar{width:26px;height:26px;border-radius:50%;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:600;flex:none}.lx-check-cell{width:32px}.lx-check{accent-color:var(--color-interactive);width:15px;height:15px;cursor:pointer;vertical-align:middle}.lx-selectall{font-size:13px;background:var(--color-surface-inset);color:var(--color-text-secondary)}.lx-bulkbar,.lx-selectall{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:8px var(--space-3);border-radius:var(--radius);border:1px solid var(--color-border)}.lx-bulkbar{background:var(--color-surface)}.lx-bulkbar[data-pending]{opacity:.6;pointer-events:none}.lx-bulkbar-count{font-size:13px;white-space:nowrap;margin-right:var(--space-2)}.lx-bulkpanel{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-3);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface-inset)}.lx-bulkpanel-label{font-size:13px;font-weight:500}.lx-bulkresult{font-size:13px;padding:8px var(--space-3);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface-inset);color:var(--color-text-secondary)}.lx-bulkresult-error{border-color:#e8563d;color:#e8563d}.lx-skiplist{margin:6px 0 0;padding-left:18px;font-size:13px}.lx-skipcount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;color:var(--color-text)}.lx-linkbtn{background:none;border:none;color:var(--color-interactive);font:inherit;font-size:13px;font-weight:500;cursor:pointer;padding:2px 4px}.lx-linkbtn:hover{text-decoration:underline}.lx-pagination{display:flex;align-items:center;gap:var(--space-2);font-size:13px;color:var(--color-text-secondary);flex-wrap:wrap}.lx-pagination[data-pending]{opacity:.6}.lx-page-btn,.lx-page-num{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:4px 10px;font:inherit;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.lx-page-btn:disabled{opacity:.5;cursor:not-allowed}.lx-page-num.active{font-weight:600;border-color:var(--color-border)}.lx-page-btn:not(:disabled):hover,.lx-page-num.active,.lx-page-num:not(.active):hover{background:var(--color-surface-inset);color:var(--color-text)}.lx-page-gap{padding:4px 6px;color:var(--color-text-muted)}.lx-page-size{margin-left:var(--space-2)}.lx-page-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.docs-content{max-width:920px;display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.docs-code{border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;background:#2d0241}.docs-code-bar{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 4px 12px;background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.08)}.docs-code-lang{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-nav-text)}.docs-code-copy{font-size:12px;font-weight:600;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:3px 10px;cursor:pointer}.docs-code-copy:hover{background:rgba(255,255,255,.18)}.docs-pre{margin:0;padding:var(--space-4);overflow-x:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;color:#f3ecf8;white-space:pre;-moz-tab-size:2;tab-size:2}.docs-pre code{font-family:inherit;color:inherit}.docs-pre-plain{background:var(--color-bg);color:var(--color-text);font-size:12px}.docs-op,.docs-pre-plain{border:1px solid var(--color-border);border-radius:var(--radius)}.docs-op{background:var(--color-surface);overflow:hidden}.docs-op[open]{border-color:var(--color-interactive)}.docs-op-summary{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;list-style:none;min-width:0}.docs-op-summary::-webkit-details-marker{display:none}.docs-op-summary:hover{background:var(--color-surface-inset)}.docs-method{flex-shrink:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:700;letter-spacing:.02em;padding:3px 8px;border-radius:var(--radius);color:#fff;min-width:58px;text-align:center}.docs-method-get{background:#00a4bd}.docs-method-post{background:#00bda5}.docs-method-put{background:#4f46c7}.docs-method-patch{background:#a5641b}.docs-method-delete{background:#c0343b}.docs-op-path{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--color-text)}.docs-op-path,.docs-op-title{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.docs-op-title{color:var(--color-text-secondary);flex:1 1;min-width:0}.docs-op-badges{flex-shrink:0}.docs-op-body{padding:var(--space-4);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-4)}.docs-op-section h4{margin:0 0 var(--space-2);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.docs-kv{display:grid;grid-template-columns:max-content 1fr;grid-gap:6px var(--space-4);gap:6px var(--space-4);font-size:13px;align-items:start}.docs-kv-key{font-weight:600;color:var(--color-text-secondary)}.docs-schema{margin-bottom:var(--space-3)}.docs-schema-head{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:6px;flex-wrap:wrap}.docs-schema-name{font-size:13px;font-weight:600;color:var(--color-accent-purple)}.docs-schema-desc{font-size:12px}.docs-schema-meta{color:var(--color-text-muted);font-style:italic}.docs-steps{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.docs-steps>li{display:block}.docs-steps>li>*+*{margin-top:var(--space-2)}.docs-step-body>:is(p,ul,ol,pre,table,figure,blockquote,details,div){margin-top:var(--space-2)}.docs-step-body>:first-child{margin-top:0}.docs-step-title{display:flex;align-items:center;gap:var(--space-2);font-weight:600;font-size:15px}.docs-step-num{width:24px;height:24px;border-radius:50%;background:var(--color-primary);color:#fff;font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.docs-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:var(--space-2);font-size:14px}.docs-list li{line-height:1.5}.docs-toc-list{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.docs-toc-list a{font-size:13px;text-transform:capitalize}.docs-flow{list-style:none;margin:var(--space-2) 0 var(--space-4);padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.docs-flow>li{display:grid;grid-template-columns:160px 1fr;grid-gap:var(--space-4);gap:var(--space-4);align-items:start;padding-bottom:var(--space-3);border-bottom:1px solid var(--color-surface-inset)}.docs-flow>li:last-child{border-bottom:none;padding-bottom:0}.docs-flow-actor{font-weight:600;font-size:13px;color:var(--color-interactive-hover)}.docs-flow-what{font-size:14px;color:var(--color-text-secondary)}.docs-seq{overflow-x:auto}@media (max-width:720px){.docs-flow>li{grid-template-columns:1fr;gap:4px}}.dash-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-gap:var(--space-4);gap:var(--space-4);align-items:start}@media (max-width:1080px){.dash-grid{grid-template-columns:1fr}}.dash-card{padding:0;overflow:hidden}.dash-card-head{padding:14px 20px;border-bottom:1px solid var(--color-surface-inset);font-size:15px;font-weight:600}.dash-card-head,.dash-row{display:flex;align-items:center;gap:var(--space-3)}.dash-row{padding:12px 20px;font-size:14px}.dash-row+.dash-row{border-top:1px solid var(--color-surface-inset)}.dash-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stat-card .stat-delta{display:flex;align-items:center;gap:6px;margin-top:var(--space-2);font-size:12px}.container:has(.em-page){max-width:1280px}.settings-content:has(.em-page){max-width:none;min-width:0}.em-page{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.em-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;overflow-wrap:anywhere}.em-card-head{justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.em-card-head,.em-note{display:flex;align-items:flex-start}.em-note{gap:var(--space-2);padding:8px var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);font-size:13px;background:var(--color-surface-inset);color:var(--color-text-secondary)}.em-note-ok{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success-text)}.em-note-err{background:#fde3e4;border-color:#f5c6c9;color:#c0343b}.em-note-warn{background:var(--color-warning-bg);border-color:var(--color-warning);color:var(--color-warning-text)}.em-note-icon{flex:none;font-weight:700;line-height:1.5}.em-copy{flex:none;height:24px;padding:0 8px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text-secondary);font:inherit;font-size:11px;font-weight:600;cursor:pointer;transition:background .12s ease-out,color .12s ease-out}.em-copy:hover{background:var(--color-surface-inset);color:var(--color-text)}.em-copy:focus-visible,.em-rail:focus-within,.em-tpl:focus-visible{outline:2px solid var(--color-interactive);outline-offset:1px}.em-copy.is-copied{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success-text)}.em-hero{display:flex;flex-direction:column;gap:6px;padding:var(--space-4);border:1px solid var(--color-border);border-left:3px solid var(--color-interactive);border-radius:var(--radius);background:var(--color-surface-inset)}.em-hero-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.em-hero-from{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px;font-weight:600;color:var(--color-text);overflow-wrap:anywhere}.em-hero.is-sandbox{border-left-color:var(--color-warning)}.em-rails{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.em-rail{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;transition:border-color .12s ease-out,box-shadow .12s ease-out}.em-rail:hover{border-color:var(--color-interactive)}.em-rail.is-active{border-color:var(--color-success);background:linear-gradient(var(--color-success),var(--color-success)) no-repeat top /100% 3px,var(--color-surface)}.em-rail.is-selected:not(.is-active){border-color:var(--color-warning);background:linear-gradient(var(--color-warning),var(--color-warning)) no-repeat top /100% 3px,var(--color-surface)}.em-rail[aria-disabled=true]{cursor:not-allowed;opacity:.7}.em-rail-top{justify-content:space-between}.em-rail-title,.em-rail-top{display:flex;align-items:center;gap:var(--space-2)}.em-rail-title{font-size:13px;font-weight:600;color:var(--color-text)}.em-rail-title input{accent-color:var(--color-interactive);flex:none}.em-rail-desc{font-size:12px;color:var(--color-text-muted);flex:1 1}.em-rail-from{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--color-text-secondary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:4px 6px;overflow-wrap:anywhere}.em-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.em-step{display:grid;grid-template-columns:26px 1fr;grid-gap:var(--space-3);gap:var(--space-3);padding-bottom:var(--space-4);position:relative}.em-step:last-child{padding-bottom:0}.em-step:not(:last-child):before{content:"";position:absolute;left:12px;top:26px;bottom:4px;width:2px;background:var(--color-border)}.em-step.is-done:not(:last-child):before{background:var(--color-success)}.em-step-dot{width:26px;height:26px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);display:grid;place-items:center;font-size:12px;font-weight:700;z-index:1}.em-step.is-done .em-step-dot{background:var(--color-success);border-color:var(--color-success);color:#fff}.em-step.is-current .em-step-dot{border-color:var(--color-interactive);color:var(--color-interactive-hover)}.em-step.is-failed .em-step-dot{background:#fde3e4;border-color:#c0343b;color:#c0343b}.em-step-body{flex-direction:column;min-width:0;padding-top:3px}.em-step-body,.em-step-title{display:flex;gap:var(--space-2)}.em-step-title{align-items:center;flex-wrap:wrap;font-size:13px;font-weight:600}.em-step.is-todo .em-step-body .help,.em-step.is-todo .em-step-title{color:var(--color-text-muted)}.em-dns td,.em-dns th{vertical-align:top;padding:var(--space-2) var(--space-3)}.em-dns-value{display:flex;align-items:flex-start;gap:var(--space-2);min-width:0}.em-dns-value code{font-size:11.5px;line-height:1.5;overflow-wrap:anywhere;max-width:44ch;display:inline-block}.em-dns-type,.em-dns-value code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.em-dns-type{font-size:11px;font-weight:700;letter-spacing:.02em}.em-studio{display:grid;grid-template-columns:210px minmax(0,1fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:start}.em-tpl-list{list-style:none;margin:0;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}.em-tpl,.em-tpl-list{display:flex;flex-direction:column;gap:2px}.em-tpl{width:100%;text-align:left;padding:8px 10px;border:none;border-radius:var(--radius);background:none;font:inherit;color:var(--color-text-secondary);cursor:pointer}.em-tpl:hover{background:var(--color-surface-inset);color:var(--color-text)}.em-tpl.is-current{background:var(--color-surface);color:var(--color-text);box-shadow:inset 2px 0 0 var(--color-primary);font-weight:600}.em-tpl-name{font-size:13px}.em-tpl-edited{font-size:11px;color:var(--color-interactive-hover);font-weight:600}.em-detail{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(300px,1.05fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:start;min-width:0}.em-slot-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.em-counter{font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.em-counter.is-near{color:var(--color-warning-text);font-weight:600}.em-counter.is-full{color:#c0343b;font-weight:600}.em-textarea{height:auto;min-height:62px;padding:8px var(--space-3);line-height:1.5;resize:vertical}.em-locked{border:1px dashed var(--color-border);border-radius:var(--radius);padding:var(--space-3);background:var(--color-bg);gap:6px}.em-locked,.em-locked-list{display:flex;flex-direction:column}.em-locked-list{margin:0;padding-left:16px;font-size:12px;color:var(--color-text-muted);gap:2px}.em-preview{flex-direction:column;min-width:0;position:-webkit-sticky;position:sticky;top:var(--space-5)}.em-preview,.em-preview-head{display:flex;gap:var(--space-2)}.em-preview-head{align-items:center;justify-content:space-between;flex-wrap:wrap}.em-preview-meta{display:grid;grid-template-columns:max-content minmax(0,1fr);grid-gap:2px var(--space-2);gap:2px var(--space-2);font-size:12px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;background:var(--color-surface-inset)}.em-preview-meta dt{color:var(--color-text-muted);font-weight:600}.em-preview-meta dd{margin:0;color:var(--color-text);overflow-wrap:anywhere}.em-preview-stage{border:1px solid var(--color-border);border-radius:0 0 var(--radius) var(--radius);background:#f4f6f8;overflow:hidden;position:relative}.em-preview-stage[data-busy=true]{opacity:.55;transition:opacity .12s ease-out}.em-preview-stage iframe{border:0;display:block;transform-origin:top left;background:#f4f6f8}.em-device{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.em-device button{border:0;background:var(--color-surface);color:var(--color-text-secondary);font:inherit;font-size:12px;font-weight:600;padding:3px 10px;cursor:pointer}.em-device button+button{border-left:1px solid var(--color-border)}.em-device button[aria-pressed=true]{background:var(--color-surface-inset);color:var(--color-text)}.em-device button:focus-visible{outline:2px solid var(--color-interactive);outline-offset:-2px}@media (max-width:1220px){.em-detail{grid-template-columns:minmax(0,1fr)}.em-preview{position:static}}@media (max-width:940px){.em-studio{grid-template-columns:minmax(0,1fr)}.em-tpl-list{flex-direction:row;flex-wrap:wrap}.em-tpl{width:auto}}@media (prefers-reduced-motion:reduce){.em-copy,.em-preview-stage,.em-rail{transition:none}}.admin-shell{display:grid;grid-template-columns:var(--admin-sidebar-w) minmax(0,1fr);min-height:calc(100vh - var(--admin-nav-h))}.admin-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border-subtle)}.admin-sidebar-nav{position:-webkit-sticky;position:sticky;top:0;max-height:calc(100vh - var(--admin-nav-h));overflow-y:auto;padding:6px 0 var(--space-4);display:flex;flex-direction:column}.nav-group-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:14px var(--space-4) 6px;background:none;border:none;color:var(--color-text-muted);text-align:left}.nav-group-label{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.nav-group-toggle:hover .nav-group-label{color:var(--color-text-secondary)}.nav-group-chevron{flex:none;color:#b0c1d4;transition:transform .15s ease}.nav-group-toggle[aria-expanded=false] .nav-group-chevron{transform:rotate(-90deg)}.nav-group-dot{width:5px;height:5px;border-radius:50%;background:var(--color-primary);flex:none}.nav-group-items{display:flex;flex-direction:column}.nav-group-items.is-collapsed{display:none}.nav-item{position:relative;display:flex;align-items:center;gap:10px;padding:7px 10px;margin:1px var(--space-2);border-radius:4px;color:var(--color-text-secondary);font-size:13.5px;font-weight:400}.nav-item:hover{background:var(--color-hover-wash);color:var(--color-text)}.nav-item-icon{flex:none;color:var(--color-text-muted)}.nav-item:hover .nav-item-icon{color:var(--color-text-secondary)}.nav-item-label{line-height:1}.nav-item.active{background:var(--color-primary-tint);color:var(--color-text);font-weight:600}.nav-item.active .nav-item-icon{color:var(--color-primary)}.nav-item.active:before{content:"";position:absolute;left:-8px;top:5px;bottom:5px;width:3px;border-radius:0 2px 2px 0;background:var(--color-primary)}.nav-search{display:flex;align-items:center;gap:var(--space-2);width:240px;height:30px;padding:0 10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:4px;color:var(--color-nav-text-dim);font-size:13px;text-align:left;transition:background .14s ease-out}.nav-search:hover{background:rgba(255,255,255,.16);color:#fff}.nav-search-icon{flex:none}.nav-search-label{flex:1 1}.nav-kbd{font-family:inherit;font-size:10.5px;padding:1px 5px;border:1px solid rgba(255,255,255,.25);border-radius:3px;color:inherit}.nav-icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:none;border:1px solid rgba(255,255,255,.2);color:var(--color-nav-text);font-weight:600;font-size:13px}.nav-icon-btn:hover{background:rgba(255,255,255,.1);color:#fff}.nav-workspace{display:flex;align-items:center;padding-left:14px;margin-left:2px;border-left:1px solid rgba(255,255,255,.15)}.nav-workspace-name{color:var(--color-nav-text);font-size:13px}.nav-avatar{width:30px;height:30px}@media (max-width:900px){:root{--admin-sidebar-w:56px}.admin-shell{grid-template-columns:56px minmax(0,1fr)}.admin-sidebar-nav{position:static;max-height:none;overflow:visible;padding:10px 0;align-items:center}.admin-sidebar .nav-group{display:flex;flex-direction:column;align-items:center;width:100%}.admin-sidebar .nav-group-toggle{display:none}.admin-sidebar .nav-group+.nav-group:before{content:"";display:block;width:24px;height:1px;margin:6px 0;background:var(--color-border-subtle)}.admin-sidebar .nav-group-items,.admin-sidebar .nav-group-items.is-collapsed{display:flex;align-items:center;gap:2px}.admin-sidebar .nav-item{width:36px;height:36px;padding:0;margin:1px 0;justify-content:center;border-radius:5px}.admin-sidebar .nav-item.active:before{left:-10px;top:6px;bottom:6px}.admin-sidebar .nav-item-label{position:absolute;left:46px;top:50%;transform:translateY(-50%);z-index:5;padding:5px 10px;border-radius:4px;background:var(--color-nav);color:#fff;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 2px 8px rgba(51,71,91,.3);visibility:hidden;opacity:0;pointer-events:none;transition:opacity .12s ease-out}.admin-sidebar .nav-item-label:before{content:"";position:absolute;left:-4px;top:50%;width:8px;height:8px;background:var(--color-nav);transform:translateY(-50%) rotate(45deg)}.admin-sidebar .nav-item:focus-visible .nav-item-label,.admin-sidebar .nav-item:hover .nav-item-label{visibility:visible;opacity:1}.nav-search{width:auto}.nav-search-label,.nav-workspace{display:none}}.cp-overlay{position:fixed;inset:0;z-index:200;background:rgba(51,71,91,.48);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;justify-content:center;align-items:flex-start;padding:110px var(--space-4) var(--space-4)}.cp{width:100%;max-width:640px;max-height:calc(100vh - 140px);background:var(--color-surface);border-radius:6px;box-shadow:0 24px 64px rgba(20,30,40,.35);display:flex;flex-direction:column;overflow:hidden}.cp-input-row{display:flex;align-items:center;gap:10px;padding:14px var(--space-4);border-bottom:1px solid #eaf0f6}.cp-input-icon{flex:none;color:var(--color-text-muted)}.cp-input{flex:1 1;min-width:0;border:none;padding:0;font-family:inherit;font-size:15px;color:var(--color-text);background:transparent}.cp-input:focus{outline:none}.cp-input::placeholder{color:var(--color-text-muted)}.cp-kbd{flex:none;font-size:10.5px;color:var(--color-text-muted);border:1px solid var(--color-border-subtle);border-radius:3px;padding:2px 6px}.cp-list{padding:0 0 var(--space-1);overflow-y:auto;min-height:0}.cp-list,.cp-list ul{list-style:none;margin:0}.cp-list ul{padding:0}.cp-section{padding:12px var(--space-4) 5px;color:var(--color-text-muted);font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.cp-item{position:relative;display:flex;align-items:center;gap:11px;padding:8px var(--space-4);cursor:pointer;color:var(--color-text)}.cp-item:hover{background:var(--color-bg)}.cp-item[aria-selected=true]{background:var(--color-hover-wash)}.cp-item[aria-selected=true]:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;border-radius:0 2px 2px 0;background:var(--color-primary)}.cp-item-icon{flex:none;color:var(--color-text-secondary)}.cp-item-action .cp-item-icon{color:var(--color-status-amber-text)}.cp-item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.cp-item-label{font-size:13.5px;font-weight:500}.cp-item-hint{color:var(--color-text-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cp-item-page .cp-item-text{flex-direction:row;align-items:baseline;gap:8px}.cp-item-page .cp-item-label{flex:none}.cp-item-enter{margin-left:auto;flex:none;font-size:11px;color:var(--color-text-muted);border:1px solid var(--color-border-subtle);border-radius:3px;padding:1px 6px;visibility:hidden}.cp-item[aria-selected=true] .cp-item-enter{visibility:visible}.cp-chip{flex:none;width:84px;text-align:center;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px}.cp-chip-course{background:#e5f5f8;color:#007a8c}.cp-chip-program{background:var(--color-accent-purple-bg);color:var(--color-accent-purple)}.cp-chip-learner{background:var(--color-success-bg);color:var(--color-success-text)}.cp-chip-organization{background:#fdf3e1;color:var(--color-status-amber-text)}.cp-empty{padding:var(--space-4);font-size:13px}.cp-empty,.cp-foot{color:var(--color-text-muted)}.cp-foot{display:flex;gap:var(--space-4);padding:9px var(--space-4);border-top:1px solid #eaf0f6;background:#fafcfd;font-size:11.5px}.cp-foot strong{color:var(--color-text-secondary);font-weight:700}.sh-search{display:flex;align-items:center;gap:var(--space-2);height:38px;max-width:520px;padding:0 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-muted)}.sh-search-icon{flex:none}.sh-search input{flex:1 1;min-width:0;border:none;background:transparent;font-family:inherit;font-size:13.5px;color:var(--color-text)}.sh-search input:focus{outline:none}.sh-search:focus-within{border-color:var(--color-interactive)}.sh-group-label{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-muted)}.sh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:14px;gap:14px}.sh-card{display:flex;flex-direction:column;gap:6px;min-height:112px;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:4px;color:var(--color-text);transition:border-color .14s ease-out,box-shadow .14s ease-out}.sh-card:hover{color:var(--color-text);border-color:#b0c1d4;box-shadow:0 1px 6px rgba(51,71,91,.08)}.sh-card-head{display:flex;align-items:center;gap:9px}.sh-card-icon{flex:none;color:var(--color-text-secondary)}.sh-card-title{font-size:14px;font-weight:600}.sh-card-desc{font-size:12.5px;line-height:1.45}.sh-card-desc,.sh-status{color:var(--color-text-muted)}.sh-status{margin-top:auto;padding-top:var(--space-2);display:flex;align-items:center;gap:7px;font-size:12px;font-weight:500}.sh-dot{width:7px;height:7px;border-radius:50%;flex:none}.sh-status.success{color:var(--color-success-text)}.sh-status.success .sh-dot{background:var(--color-success)}.sh-status.warning{color:var(--color-status-amber-text)}.sh-status.warning .sh-dot{background:var(--color-status-amber)}.sh-status.danger{color:var(--color-status-red-text)}.sh-status.danger .sh-dot{background:var(--color-status-red)}.sh-status.neutral .sh-dot{display:none}.settings-nav-all{padding:8px 12px;border-radius:var(--radius);color:var(--color-text-secondary);font-weight:500}.settings-nav-all.active,.settings-nav-all:hover{background:var(--color-surface-inset);color:var(--color-text)}.settings-nav .nav-item{margin:1px 0;padding:7px 10px;color:var(--color-text-secondary);font-weight:400}.settings-nav .nav-item:hover{background:var(--color-hover-wash);color:var(--color-text)}.settings-nav .nav-item.active{background:var(--color-primary-tint);color:var(--color-text);font-weight:600}.settings-nav .nav-item.active:before{left:-8px}.settings-nav-group{letter-spacing:.09em}@media (max-width:640px){.cp-overlay{padding-top:8vh}.cp-chip{width:68px}}@media (prefers-reduced-motion:reduce){.nav-group-chevron,.nav-item-label,.nav-search,.sh-card{transition:none}}.pgm-head{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.pgm-head h1{font-size:24px;line-height:32px;font-weight:600;margin:0}.pgm-head-spacer{flex:1 1}.pgm-save{font-size:13px;color:var(--color-text-muted)}.pgm-grid{display:grid;grid-template-columns:300px minmax(0,1fr) 320px;grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.pgm-col{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}@media (max-width:1200px){.pgm-grid{grid-template-columns:minmax(0,1fr)}}.pgm-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.pgm-list-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.pgm-list-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.pgm-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.pgm-row:last-child{border-bottom:none}.pgm-list-foot{padding:var(--space-3) var(--space-4);font-size:12px;color:var(--color-text-muted)}.pgm-row-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.pgm-row-off{opacity:.55}.pgm-meter{flex:1 1;min-width:80px;height:6px;border-radius:3px;background:var(--color-surface-inset);overflow:hidden}.pgm-meter-fill{height:100%;background:var(--color-interactive)}.pgm-frac{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:13px;color:var(--color-text-secondary);white-space:nowrap}.pgm-scrim{position:fixed;inset:0;background:rgba(45,2,65,.35);z-index:50;border:0;padding:0;cursor:default}.pgm-panel{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);z-index:51;display:flex;flex-direction:column;background:var(--color-surface);border-left:1px solid var(--color-border);box-shadow:-8px 0 24px rgba(45,2,65,.2)}.pgm-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.pgm-panel-body{flex:1 1;overflow:auto;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.pgm-panel-foot{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border)}.pgm-candidates{border:1px solid var(--color-border);border-radius:var(--radius);max-height:320px;overflow:auto}.pgm-candidate{display:flex;align-items:center;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-3);border:0;border-bottom:1px solid var(--color-border);background:var(--color-surface);font:inherit;color:inherit;cursor:pointer}.pgm-candidate:last-child{border-bottom:none}.pgm-candidate:hover:not(:disabled){background:var(--color-surface-inset)}.pgm-candidate:disabled{cursor:not-allowed;opacity:.6}.pgm-candidate[aria-pressed=true]{background:var(--color-info-bg)}.pgm-avatar{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:600;background:var(--color-surface-inset);color:var(--color-text-secondary)}