:root{color:#f8fafc;background:#0f1420;font-family:Inter,ui-sans-serif,system-ui}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.app-frame{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.app-sidebar{background:#171d2b;border-right:1px solid #293246;flex-direction:column;gap:20px;padding:28px;display:flex}.brand{color:#a99cff;font-size:1.3rem;font-weight:800}.app-sidebar nav{flex-direction:column;gap:8px;display:flex}.app-sidebar nav a{border-radius:9px;padding:10px 12px}.app-sidebar nav a:hover{background:#252d40}.app-content{width:100%;max-width:1400px;padding:52px}h1{max-width:900px;font-size:clamp(2rem,4vw,3.6rem)}.eyebrow{color:#a99cff;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.page-state{background:#171d2b;border:1px solid #293246;border-radius:16px;padding:28px}.page-state p{color:#aab3c5}.auth-page{place-items:center;min-height:100vh;display:grid}.auth-page form{background:#171d2b;border-radius:18px;gap:18px;width:min(420px,90vw);padding:40px;display:grid}.auth-page label{gap:7px;display:grid}.auth-page input{color:#fff;background:#0f1420;border:1px solid #39445a;border-radius:8px;padding:11px}.auth-page button{color:#fff;background:#7c68e8;border:0;border-radius:9px;padding:12px;font-weight:700}.auth-page button:disabled{opacity:.65;cursor:wait}.admin-access-state{align-content:center;gap:16px;width:min(640px,100% - 32px);min-height:100vh;margin:0 auto;display:grid}.admin-alert{border:1px solid;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.admin-alert-error{color:#ffc0ca;background:#2c1720;border-color:#793548}.admin-alert-warning{color:#f0dca9;background:#2c2413;border-color:#7c6224}.admin-alert strong,.admin-alert p{margin:0;display:block}.admin-alert p{color:inherit;margin-top:4px;line-height:1.5}.admin-alert-icon{border:1px solid;border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;font-weight:900;display:grid}.auth-error:empty{display:none}.admin-access-actions{gap:10px;display:flex}.admin-stack{gap:24px;display:grid}.admin-page-header,.admin-panel-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.admin-page-header h1,.admin-panel h2,.admin-panel p{margin-top:0}.admin-lead,.admin-panel-heading p,.admin-empty p{color:#aab3c5;line-height:1.6}.admin-count,.admin-status{color:#dbe4f5;white-space:nowrap;border:1px solid #46536d;border-radius:999px;align-items:center;width:fit-content;min-height:28px;padding:4px 10px;font-size:.82rem;font-weight:800;display:inline-flex}.admin-panel{background:#171d2b;border:1px solid #293246;border-radius:16px;min-width:0;padding:24px}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.admin-form-grid label{color:#dbe4f5;gap:7px;font-weight:700;display:grid}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea{color:#f8fafc;width:100%;min-height:42px;font:inherit;background:#0f1420;border:1px solid #46536d;border-radius:9px;padding:9px 11px}.admin-form-grid input:focus-visible,.admin-form-grid select:focus-visible,.admin-form-grid textarea:focus-visible{outline-offset:2px;outline:2px solid #a99cff}.admin-optional{color:#aab3c5;font-size:.85rem;font-weight:500}.admin-form-action{align-items:flex-end;display:flex}.admin-form-span{grid-column:1/-1}.admin-list-filters,.admin-row-actions{align-items:flex-end;gap:12px;display:flex}.admin-list-filters{margin-bottom:18px}.admin-list-filters>*{flex:1 1 0}.admin-row-actions{flex-wrap:wrap}.admin-form-grid textarea{resize:vertical;line-height:1.5}.admin-field-help{color:#aab3c5;font-size:.82rem;font-weight:500;line-height:1.5}.admin-reference-hub{justify-content:space-between;align-items:center;gap:24px;display:flex}.admin-reference-hub h2{margin-bottom:6px}.admin-reference-hub p{color:#aab3c5;margin-bottom:0}.admin-reference-hub .admin-primary-button{flex:none;align-items:center;display:inline-flex}.admin-reference-index{color:#a99cff;letter-spacing:.1em;margin-bottom:7px;font-size:.72rem;font-weight:900;display:block}.admin-reference-empty,.admin-reference-table{margin-top:20px}.admin-table code{color:#c8bcff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.84rem}.admin-primary-button,.admin-secondary-button,.admin-danger-button{min-height:40px;font:inherit;cursor:pointer;border-radius:9px;padding:9px 14px;font-weight:800}.admin-primary-button{color:#fff;background:#7c68e8;border:1px solid #7c68e8}.admin-secondary-button{color:#f8fafc;background:0 0;border:1px solid #46536d}.admin-danger-button{color:#ffc0ca;background:#2c1720;border:1px solid #793548}.admin-primary-button:disabled,.admin-secondary-button:disabled,.admin-danger-button:disabled{opacity:.65;cursor:wait}.admin-notice{color:#a9f0cc;background:#132d24;border:1px solid #247c56;border-radius:10px;padding:12px 14px}.admin-empty{text-align:center;border:1px dashed #46536d;border-radius:12px;padding:24px}.admin-table-wrap{max-width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:760px}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid #293246;padding:14px 12px}.admin-table th{color:#aab3c5;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}.admin-table td>span,.admin-table td>strong{margin-bottom:5px;display:block}.admin-status-active{color:#a9f0cc;background:#132d24;border-color:#247c56}.admin-status-grace{color:#ffe09b;background:#302810;border-color:#866a2e}.admin-status-expired,.admin-status-cancelled,.admin-status-missing{color:#ffc0ca;background:#2c1720;border-color:#793548}@media (max-width:760px){.app-frame{grid-template-columns:1fr}.app-sidebar{border-bottom:1px solid #293246;border-right:0}.app-content{padding:28px 18px}.admin-page-header,.admin-panel-heading{flex-direction:column}.admin-form-grid{grid-template-columns:1fr}.admin-reference-hub{flex-direction:column;align-items:flex-start}}.admin-access-actions a,.admin-access-actions button{color:#f8fafc;font:inherit;cursor:pointer;background:#20283a;border:1px solid #4f5c74;border-radius:9px;padding:10px 14px;font-weight:700}.curricula-page-header{justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:32px;display:flex}.curricula-page-header h1{margin:8px 0 10px;font-size:clamp(2rem,3.3vw,3.25rem);line-height:1.05}.curricula-page-intro{color:#aab3c5;max-width:730px;margin:0;font-size:1.02rem;line-height:1.65}.curricula-scope-pill{color:#c8bcff;letter-spacing:.04em;text-transform:uppercase;background:#211d35;border:1px solid #4b426f;border-radius:999px;flex:none;margin-top:24px;padding:9px 13px;font-size:.78rem;font-weight:800}.curricula-workspace{grid-template-columns:minmax(280px,340px) minmax(0,1fr);align-items:start;gap:18px;display:grid;position:relative}.curricula-alert{border:1px solid;border-radius:11px;grid-column:1/-1;padding:12px 15px;font-size:.9rem;font-weight:650}.curricula-alert-error{color:#ffb4c1;background:#2a1720;border-color:#6f3344}.curricula-alert-success{color:#8fe0bc;background:#14271f;border-color:#245c4a}.curricula-library,.curricula-detail-panel{background:#171d2b;border:1px solid #293246;border-radius:18px;box-shadow:0 18px 50px #0206172e}.curricula-library{position:sticky;top:24px;overflow:hidden}.curricula-section-heading{justify-content:space-between;align-items:center;padding:22px 22px 16px;display:flex}.curricula-section-heading h2{margin:5px 0 0;font-size:1.15rem}.curricula-kicker{color:#989fb0;letter-spacing:.09em;text-transform:uppercase;font-size:.7rem;font-weight:800}.curricula-version-list{gap:7px;max-height:430px;padding:0 12px 16px;display:grid;overflow:auto}.curricula-version-card{color:#dce2ee;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;gap:7px;width:100%;padding:14px;transition:all .14s;display:grid}.curricula-version-card:hover{background:#20283a}.curricula-version-card.is-selected{background:linear-gradient(135deg,#272343,#20283a);border-color:#6f5fd3;box-shadow:inset 3px 0 #9a88ff}.curricula-version-card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.curricula-version-card strong{color:#f8fafc;font-size:.92rem}.curricula-version-card>span:not(.curricula-version-card-top){color:#b6bece;font-size:.8rem}.curricula-version-card small{color:#7f899e;font-size:.73rem}.curricula-status,.curricula-node-visibility{letter-spacing:.025em;border-radius:999px;align-items:center;width:max-content;padding:4px 8px;font-size:.67rem;font-weight:800;display:inline-flex}.curricula-status.is-draft,.curricula-node-visibility{color:#f0ca82;background:#3a3020}.curricula-status.is-published,.curricula-node-visibility.is-live{color:#88d7b5;background:#18352d}.curricula-status.is-archived{color:#9ea8bb;background:#2a3040}.curricula-empty-compact{color:#8e98aa;text-align:center;padding:24px 14px;font-size:.85rem}.curricula-create-panel{border-top:1px solid #293246}.curricula-create-panel summary{color:#c8bcff;cursor:pointer;padding:17px 22px;font-size:.84rem;font-weight:750;list-style-position:inside}.curricula-create-panel[open] summary{border-bottom:1px solid #293246}.curricula-form{gap:13px;padding:18px 22px 22px;display:grid}.curricula-form label{color:#acb5c7;gap:7px;font-size:.75rem;font-weight:700;display:grid}.curricula-form input,.curricula-form select{color:#f8fafc;width:100%;min-width:0;font:inherit;background:#101622;border:1px solid #3b465c;border-radius:9px;outline:none;padding:10px 11px}.curricula-form input:focus,.curricula-form select:focus{border-color:#8c7aec;box-shadow:0 0 0 3px #8c7aec21}.curricula-form-row{grid-template-columns:minmax(0,1.4fr) minmax(75px,.6fr);gap:10px;display:grid}.curricula-form-row.is-wide{grid-template-columns:minmax(200px,1.5fr) minmax(140px,1fr) 90px}.curricula-button{color:#eef2f8;cursor:pointer;background:#222a3c;border:1px solid #46526a;border-radius:9px;min-height:38px;padding:8px 13px;font-weight:750}.curricula-button:hover:not(:disabled){background:#2a3449;border-color:#6c7891}.curricula-button.is-primary{color:#fff;background:#725fda;border-color:#7867dc}.curricula-button.is-primary:hover:not(:disabled){background:#816ee8}.curricula-button.is-quiet{background:0 0}.curricula-button:disabled,.curricula-node-actions button:disabled{opacity:.48;cursor:not-allowed}.curricula-detail-panel{min-height:620px;overflow:hidden}.curricula-detail-header{background:radial-gradient(circle at 88% 5%,#7c68e821,#0000 34%);border-bottom:1px solid #293246;justify-content:space-between;align-items:flex-start;gap:24px;padding:26px 28px;display:flex}.curricula-detail-header h2{margin:10px 0 5px;font-size:1.55rem}.curricula-detail-header p{color:#8893a7;margin:0;font-size:.82rem}.curricula-detail-meta,.curricula-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.curricula-detail-meta>span:not(.curricula-status){color:#aab3c5;font-size:.76rem}.curricula-tree-toolbar{justify-content:space-between;align-items:center;padding:17px 28px 12px;display:flex}.curricula-tree-toolbar strong{font-size:.92rem}.curricula-tree-toolbar span{color:#778298;font-size:.73rem}.curricula-tree{padding:4px 20px 28px}.curricula-tree-branch{position:relative}.curricula-tree-children{border-left:1px solid #343e52;margin-left:26px;padding-left:18px;position:relative}.curricula-tree-children>.curricula-tree-branch:before{content:"";border-top:1px solid #343e52;width:16px;position:absolute;top:25px;left:-18px}.curricula-node-row{border:1px solid #0000;border-radius:11px;grid-template-columns:12px minmax(190px,1fr) auto auto;align-items:center;gap:12px;min-height:52px;margin:4px 0;padding:8px 10px;display:grid}.curricula-node-row:hover{background:#1c2333;border-color:#303a4f}.curricula-node-mark{background:#a99cff;border:2px solid #171d2b;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 2px #7568c6}.curricula-node-mark.is-unit{background:#60a5fa;box-shadow:0 0 0 2px #356596}.curricula-node-mark.is-topic{background:#34d399;box-shadow:0 0 0 2px #28725c}.curricula-node-mark.is-outcome{background:#fbbf24;box-shadow:0 0 0 2px #86681f}.curricula-node-copy{justify-content:space-between;align-items:center;gap:20px;min-width:0;display:flex}.curricula-node-copy>span:first-child{gap:3px;min-width:0;display:grid}.curricula-node-copy strong{color:#edf1f8;text-overflow:ellipsis;white-space:nowrap;font-size:.87rem;overflow:hidden}.curricula-node-copy small,.curricula-node-meta{color:#778298;font-size:.69rem}.curricula-node-actions{opacity:0;align-items:center;gap:3px;transition:opacity .12s;display:flex}.curricula-node-row:hover .curricula-node-actions,.curricula-node-actions:focus-within{opacity:1}.curricula-node-actions button{color:#bdb3f3;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:5px 7px;font-size:.7rem;font-weight:700}.curricula-node-actions button:hover{background:#2a3146}.curricula-node-actions button.is-danger{color:#fda4af}.curricula-node-actions button.is-danger:hover{background:#be185d29}.curricula-empty-tree,.curricula-empty-detail{color:#8994a8;text-align:center;place-items:center;gap:8px;min-height:260px;display:grid}.curricula-empty-tree strong,.curricula-empty-detail strong{color:#dce2ee}.curricula-empty-tree span,.curricula-empty-detail span{font-size:.85rem}.curricula-editor-panel{background:#1d1b2d;border:1px solid #50457c;border-radius:14px;margin:0 20px 22px;box-shadow:0 16px 44px #0206174d}.curricula-editor-heading{justify-content:space-between;align-items:flex-start;padding:18px 22px 0;display:flex}.curricula-editor-heading h3{margin:4px 0 0;font-size:1.05rem}.curricula-editor-heading>button{color:#9da7ba;cursor:pointer;background:0 0;border:0;font-size:1.5rem}.curricula-parent-note{color:#9fa9bb;margin:10px 22px 0;font-size:.78rem}.curricula-editor-actions{justify-content:flex-end;gap:8px;display:flex}.curricula-loading{color:#aab3c5;background:#171d2b;border:1px solid #293246;border-radius:18px;place-items:center;min-height:420px;display:grid}@media (max-width:800px){.app-frame{grid-template-columns:1fr}.app-sidebar{display:none}.app-content{padding:24px}.dashboard-grid{grid-template-columns:1fr}.curricula-page-header{display:block}.curricula-scope-pill{margin-top:16px;display:inline-flex}.curricula-workspace{grid-template-columns:1fr}.curricula-library{position:static}.curricula-detail-header{display:grid}.curricula-tree-toolbar span,.curricula-node-meta,.curricula-node-visibility{display:none}.curricula-node-row{grid-template-columns:12px minmax(140px,1fr) auto}.curricula-node-actions{opacity:1}.curricula-form-row.is-wide{grid-template-columns:1fr}}.admin-list-search{flex-direction:column;gap:6px;max-width:360px;margin-bottom:12px;font-weight:600;display:flex}.admin-list-search input{border:1px solid var(--border,#d0d5dd);font:inherit;border-radius:8px;padding:8px 10px;font-weight:400}.admin-list-search select{color:#f8fafc;min-height:42px;font:inherit;background:#0f1420;border:1px solid #46536d;border-radius:9px;padding:9px 11px}.admin-list-pagination{justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;display:flex}.admin-list-pagination span{color:var(--muted,#667085)}.admin-list-pagination button{border:1px solid var(--border,#d0d5dd);cursor:pointer;background:0 0;border-radius:8px;padding:6px 12px}.admin-list-pagination button:disabled{opacity:.5;cursor:default}
