:root{--font-sans:"Be Vietnam Pro", "Noto Sans", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif;--font-serif:var(--font-sans);--font-mono:var(--font-sans);--bg-canvas:#f8f7f3;--bg-surface:#fff;--bg-surface-elevated:#fff;--bg-subtle:#f2f1f5;--bg-muted:#e9e7ee;--bg-warm-tint:#f4f3f6;--text-primary:#1d1b26;--text-secondary:#3d3a48;--text-muted:#5a5766;--text-inverse:#fff;--border-subtle:#e4e2ea;--border-default:#d3cfdc;--border-strong:#8e8a9c;--ink-violet:#4b2e83;--ink-violet-soft:#efeaf8;--ink-violet-line:#c9bce3;--seal:#b3261e;--pencil:#57544b;--marker:#fff1b8;--marker-border:#d8c37a;--missing-bg:#efeef2;--missing-text:#5a5766;--color-cobalt:var(--ink-violet);--color-oxblood:#9b1c2c;--color-moss:#2f5d3a;--color-gold:#8a5300;--color-graphite:#5a5766;--track-vincore-bg:#f5f1fb;--track-vincore-border:#c9bce3;--track-vincore-text:#4b2e83;--track-core-bg:#fff;--track-core-border:#d3cfdc;--track-core-text:#1d1b26;--track-elective-bg:#f2f1f5;--track-elective-border:#d3cfdc;--track-elective-text:#3d3a48;--track-capstone-bg:#eef4ef;--track-capstone-border:#bcd6c2;--track-capstone-text:#2f5d3a;--primary-50:#f5f1fb;--primary-100:#efeaf8;--primary-500:#5b3d99;--primary-600:#4b2e83;--primary-700:#3c2370;--critical-bg:#f9e9eb;--critical-border:#ecc5cb;--critical-text:#9b1c2c;--critical-solid:#9b1c2c;--error-bg:#f9e9eb;--error-border:#ecc5cb;--error-text:#9b1c2c;--error-solid:#9b1c2c;--warning-bg:#fbf1dc;--warning-border:#ecd4a4;--warning-text:#8a5300;--warning-solid:#8a5300;--success-bg:#e6f0e8;--success-border:#bcd6c2;--success-text:#2f5d3a;--success-solid:#2f5d3a;--info-bg:#eef1f6;--info-border:#c9d2e0;--info-text:#34486b;--info-solid:#34486b;--ai-bg:#efeaf8;--ai-border:#c9bce3;--ai-text:#4b2e83;--ai-solid:#4b2e83;--diff-add-bg:#fff1b8;--diff-add-border:#d8c37a;--diff-add-text:#1d1b26;--diff-remove-bg:#f2f1f5;--diff-remove-border:#d3cfdc;--diff-remove-text:#5a5766;--shadow-sm:0 1px 2px 0 #1d1b260d;--shadow-md:4px 4px 0 0 #e4e2ea;--shadow-lg:6px 6px 0 0 #e4e2ea;--ease-out:cubic-bezier(.2, .7, .2, 1);--text-title:1.3125rem;--text-block:1.0625rem;--text-body:.90625rem;--text-control:.875rem;--text-small:.8125rem;--text-min:.78125rem;--leading-body:1.5;--leading-tight:1.3;--weight-strong:600;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-control:4px;--radius-surface:6px;--radius-round:999px;--control-sm:32px;--control-md:36px;--control-lg:44px;--gutter:24px;--gutter-narrow:16px;--focus-color:var(--ink-violet);--focus-width:2px;--focus-offset:2px;--dur-fast:.15s;--dur-base:.22s;--dur-slow:.42s;--dur-max:.9s;--scrim:#1d1b267a;--shadow-object:4px 4px 0 0 var(--border-subtle);--shadow-overlay:0 16px 40px #1d1b262e, 6px 6px 0 0 #4b2e8324;--z-overlay:50}.font-serif{font-family:var(--font-sans);letter-spacing:-.012em}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-sans);background-color:var(--bg-canvas);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}:focus-visible{outline:var(--focus-width) solid var(--focus-color);outline-offset:var(--focus-offset);border-radius:2px}h1,h2,h3,h4{text-wrap:balance}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-canvas)}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.font-mono{font-family:var(--font-sans);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.token-i{color:#1d1b26;background-color:#fff;border:1px solid #8e8a9c}.token-r{color:#4b2e83;background-color:#efeaf8;border:1px solid #c9bce3}.token-m{color:#fff;background-color:#4b2e83;border:1px solid #4b2e83}.am-seal{text-align:center;white-space:normal;border-radius:50%;flex:none;place-items:center;font-weight:700;line-height:1.05;display:inline-grid}.am-seal--binding{color:var(--seal);border:2px solid var(--seal);box-shadow:inset 0 0 0 2px var(--bg-surface), inset 0 0 0 3px var(--seal);transform:rotate(-8deg)}.am-seal--conditional,.am-seal--advisory,.am-seal--unknown{color:var(--ink-violet);border:1.5px dashed var(--ink-violet)}.am-seal--unknown{color:var(--text-muted);border-color:var(--border-strong)}.am-seal--stamp{animation:am-stamp .42s var(--ease-out) both}.am-pencil{color:var(--text-primary);background:var(--marker);border-bottom:1.5px dashed var(--pencil);padding:0 3px;font-style:italic;font-weight:600}.am-pencil-frame{background:var(--marker);outline:1.5px dashed var(--pencil);outline-offset:-1.5px}.am-struck{text-decoration:line-through;-webkit-text-decoration-color:var(--text-muted);text-decoration-color:var(--text-muted);color:var(--text-muted)}.am-mark{white-space:nowrap;border-radius:4px;align-items:center;gap:5px;width:fit-content;font-weight:600;display:inline-flex}.am-mark--missing{outline:1px dashed var(--border-strong);outline-offset:-1px}.am-register{border-left:2px solid var(--ink-violet-line)}.am-fade-in{animation:am-fade-in .22s var(--ease-out) both}.am-slide-in{animation:am-slide-in .24s var(--ease-out) both}.am-draw{stroke-dasharray:var(--am-len,400);stroke-dashoffset:var(--am-len,400);animation:am-draw .55s var(--ease-out) forwards}.am-grow-x{transform-origin:0;animation:am-grow-x .9s var(--ease-out) both}.st-chip{border:1px solid var(--border-strong);white-space:nowrap;background:var(--bg-surface);color:var(--text-primary);font-variant-numeric:tabular-nums;border-radius:4px;align-items:center;gap:6px;padding:1px 8px;font-size:.8125rem;display:inline-flex}.st-chip--staged{border:2px dotted var(--border-strong);color:var(--text-muted);background:var(--bg-subtle)}.st-state{white-space:nowrap;border-radius:4px;align-items:center;gap:6px;width:fit-content;padding:1px 8px;font-size:.8125rem;font-weight:600;display:inline-flex}.st-state--ok{color:var(--success-text);background:var(--success-bg)}.st-state--wait{color:var(--ink-violet);background:var(--bg-surface);outline:1.5px dashed var(--ink-violet);outline-offset:-1.5px}.st-state--review{color:var(--warning-text);background:var(--warning-bg)}.st-state--bad{color:var(--critical-text);background:var(--critical-bg)}.st-state--missing{color:var(--missing-text);background:var(--missing-bg);outline:1px dashed var(--border-strong);outline-offset:-1px}.st-state--neutral{color:var(--text-primary);background:var(--bg-subtle)}.st-state--staged{color:var(--text-muted);background:var(--bg-subtle);outline:2px dotted var(--border-strong);outline-offset:-2px}.st-object{background:var(--bg-surface);border:1px solid var(--border-strong);box-shadow:4px 4px 0 var(--border-subtle);align-content:start;gap:14px;min-width:0;padding:18px;display:grid}.st-card{background:var(--bg-surface);border:1px solid var(--border-subtle);align-content:start;gap:12px;min-width:0;padding:16px;display:grid}.st-block-h{color:var(--text-muted);font-size:.8125rem;font-weight:600}.st-title{letter-spacing:-.015em;margin:0;font-size:1.3125rem;font-weight:600;line-height:1.3}.st-title:focus{outline:none}.st-lede{color:var(--text-muted);max-width:70ch;font-size:.875rem}.st-link{color:var(--ink-violet);text-underline-offset:3px;cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.st-rail{background:var(--ink-violet-soft);border-bottom:1px solid var(--ink-violet-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 20px;padding:12px 24px;display:grid}.st-rail ol{flex-wrap:wrap;gap:4px 18px;margin:0;padding:0;list-style:none;display:flex}.st-rail li{color:var(--text-muted);align-items:center;gap:7px;font-size:.84375rem;display:inline-flex}.st-rail li[data-state=done],.st-rail li[data-state=current],.st-rail li[data-state=warning]{color:var(--text-primary)}.st-rail li[data-state=current]{font-weight:600}.st-rail__dot{border:1px solid var(--border-strong);background:var(--bg-surface);width:21px;height:21px;color:var(--text-primary);border-radius:50%;place-items:center;font-size:.75rem;font-weight:600;display:inline-grid}.st-rail li[data-state=done] .st-rail__dot{background:var(--success-solid);border-color:var(--success-solid);color:#fff}.st-rail li[data-state=current] .st-rail__dot{background:var(--ink-violet);border-color:var(--ink-violet);color:#fff}.st-rail li[data-state=warning] .st-rail__dot{background:var(--warning-bg);border-color:var(--warning-solid);color:var(--warning-text)}.st-rail__next{justify-items:end;gap:4px;display:grid}.st-rail__next small{color:var(--text-muted);text-align:right;max-width:40ch;font-size:.78125rem}.st-blocked{background:var(--bg-subtle);border-left:3px solid var(--border-strong);align-items:flex-start;gap:8px;padding:8px 12px;font-size:.8125rem;display:flex}.st-dims{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.st-dim{border:1px solid var(--border-subtle);background:var(--bg-canvas);align-content:start;gap:6px;padding:12px;display:grid}.st-dim__h{color:var(--text-muted);font-size:.78125rem;font-weight:600}.st-lineage{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.st-lineage__node{border:1px solid var(--border-strong);background:var(--bg-surface);border-radius:4px;padding:3px 10px;font-size:.875rem;font-weight:600}.st-lineage__node--new{border-color:var(--ink-violet);color:var(--ink-violet);background:var(--ink-violet-soft)}.st-lineage__arrow{background:var(--ink-violet);transform-origin:0;width:56px;height:2px;animation:am-grow-x .45s var(--ease-out) both}.st-stages{gap:6px;margin:0;padding:0;list-style:none;display:grid}.st-stages li{grid-template-columns:9.5em minmax(0,1fr);align-items:baseline;gap:2px 10px;font-size:.84375rem;display:grid}.st-gloss{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);gap:10px;padding:14px 24px 16px;display:grid}.st-gloss dl{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:8px 16px;margin:0;display:grid}.st-gloss dt{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.st-gloss dd{color:var(--text-muted);margin:0;font-size:.84375rem}.st-choice{text-align:left;border:1px solid var(--border-strong);background:var(--bg-surface);cursor:pointer;border-radius:4px;gap:8px;padding:18px;transition:border-color .15s,box-shadow .15s;display:grid}.st-choice:hover{border-color:var(--ink-violet);box-shadow:4px 4px 0 var(--ink-violet-soft)}.st-choice b{color:var(--ink-violet);font-size:1.0625rem}.st-how{counter-reset:how;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.st-how li{counter-increment:how;border-top:2px solid var(--ink-violet-line);align-content:start;gap:4px;padding-top:8px;font-size:.84375rem;display:grid}.st-how li:before{content:counter(how);color:var(--ink-violet);font-weight:700}.st-how li[data-gate=true]{border-top-color:var(--ink-violet);border-top-width:3px}.st-how li span{color:var(--text-muted);font-size:.78125rem}.st-queue{border-left:2px solid var(--ink-violet-line);margin:0;padding:0;list-style:none}.st-queue>li{border-bottom:1px solid var(--border-subtle);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 16px;padding:12px 14px;display:grid}.st-checklist{gap:6px;margin:0;padding:0;list-style:none;display:grid}.st-checklist li{align-items:baseline;gap:8px;font-size:.875rem;display:flex}.st-checklist li[data-met=false]{font-weight:600}.st-pinned{background:var(--bg-subtle);gap:6px;padding:8px 12px;font-size:.84375rem;display:grid}.st-steps{gap:2px;margin:0;padding:0;list-style:none;display:grid}.st-steps button{text-align:left;border:0;border-left:2px solid var(--border-subtle);cursor:pointer;width:100%;color:var(--text-primary);background:0 0;grid-template-columns:1.8em minmax(0,1fr);align-items:center;gap:2px 8px;padding:7px 8px;font-size:.875rem;display:grid}.st-steps button[aria-current=step]{border-left-color:var(--ink-violet);background:var(--ink-violet-soft);font-weight:600}.st-steps__dot{border:1px solid var(--border-strong);background:var(--bg-surface);border-radius:50%;grid-row:span 2;place-items:center;width:1.6em;height:1.6em;font-size:.75rem;font-weight:600;display:inline-grid}.st-steps button[data-state=done] .st-steps__dot{background:var(--success-solid);border-color:var(--success-solid);color:#fff}.st-steps button[data-state=warn] .st-steps__dot{background:var(--missing-bg);border:1.5px dashed var(--border-strong)}.st-steps button[aria-current=step] .st-steps__dot{background:var(--ink-violet);border-color:var(--ink-violet);color:#fff}.st-steps__note{color:var(--text-muted);grid-column:2;font-size:.78125rem;font-weight:400}@media (max-width:860px){.st-rail,.st-dims{grid-template-columns:minmax(0,1fr)}.st-rail__next{justify-items:start}.st-rail__next small{text-align:left}.st-how{grid-template-columns:repeat(2,minmax(0,1fr))}.st-queue>li,.st-gloss dl,.st-stages li{grid-template-columns:minmax(0,1fr)}}.ui-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ui-btn,.st-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-md);border-radius:var(--radius-control);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:var(--text-control);font-weight:var(--weight-strong);line-height:var(--leading-tight);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);padding:0 14px;text-decoration:none;display:inline-flex}.ui-btn>svg{flex:none}.ui-btn:hover:not(:disabled):not([aria-disabled=true]),.st-btn:hover:not(:disabled){border-color:var(--ink-violet)}.ui-btn--primary,.st-btn--primary{background:var(--ink-violet);border-color:var(--ink-violet);color:var(--text-inverse)}.ui-btn--primary:hover:not(:disabled):not([aria-disabled=true]),.st-btn--primary:hover:not(:disabled){background:var(--primary-700);border-color:var(--primary-700)}.ui-btn--secondary{background:var(--bg-surface)}.ui-btn--outline{background:0 0}.ui-btn--ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.ui-btn--ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--bg-subtle);color:var(--text-primary);border-color:#0000}.ui-btn--quiet,.st-btn--quiet{color:var(--text-muted);text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline}.ui-btn--quiet:hover:not(:disabled):not([aria-disabled=true]){color:var(--text-primary);border-color:#0000}.ui-btn--danger{background:var(--critical-bg);border-color:var(--critical-solid);color:var(--critical-text)}.ui-btn--danger:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--critical-solid);background:#f3d9dd}.ui-btn--success{background:var(--success-bg);border-color:var(--success-solid);color:var(--success-text)}.ui-btn--success:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--success-solid);background:#d6e7da}.ui-btn--sm,.st-btn--sm{min-height:var(--control-sm);font-size:var(--text-small);gap:6px;padding:0 10px}.ui-btn--lg{min-height:var(--control-lg);font-size:var(--text-body);gap:10px;padding:0 18px}.ui-btn--icon{width:var(--control-md);padding:0}.ui-btn--icon.ui-btn--sm{width:var(--control-sm)}.ui-btn--icon.ui-btn--lg{width:var(--control-lg)}.ui-btn:disabled,.ui-btn[aria-disabled=true],.st-btn:disabled{cursor:not-allowed;background:var(--bg-subtle);color:var(--text-muted);border-color:var(--border-subtle);text-decoration:none}.ui-btn[aria-busy=true]{cursor:progress}.ui-btn--ghost:disabled,.ui-btn--quiet:disabled{background:0 0;border-color:#0000}.ui-spinner,.st-spin{border:2px solid var(--ink-violet-line);border-top-color:var(--ink-violet);border-radius:50%;flex:none;width:.9em;height:.9em;animation:.9s linear infinite ui-spin;display:inline-block}.ui-btn--primary .ui-spinner{border-color:#fff #fff6 #fff6}.ui-alert,.st-notice{gap:var(--space-1) var(--space-3);border-left:3px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-control);line-height:var(--leading-body);grid-template-columns:auto minmax(0,1fr);align-items:start;padding:10px 14px;display:grid}.st-notice{grid-template-columns:minmax(0,1fr);gap:6px}.ui-alert--plain{grid-template-columns:minmax(0,1fr)}.ui-alert__icon{grid-row:span 3;margin-top:3px;display:inline-flex}.ui-alert__title,.st-notice__head{font-weight:var(--weight-strong);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.ui-alert__body{color:var(--text-secondary);overflow-wrap:anywhere;min-width:0}.ui-alert__actions{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;align-items:center;display:flex}.ui-alert--info{border-left-color:var(--info-solid);background:var(--info-bg)}.ui-alert--info .ui-alert__icon,.ui-alert--info .ui-alert__title{color:var(--info-text)}.ui-alert--warning,.st-notice--review{border-left-color:var(--warning-solid);background:var(--warning-bg)}.ui-alert--warning .ui-alert__icon,.ui-alert--warning .ui-alert__title{color:var(--warning-text)}.ui-alert--error,.st-notice--bad{border-left-color:var(--critical-solid);background:var(--critical-bg)}.ui-alert--error .ui-alert__icon,.ui-alert--error .ui-alert__title{color:var(--critical-text)}.ui-alert--success,.st-notice--ok{border-left-color:var(--success-solid);background:var(--success-bg)}.ui-alert--success .ui-alert__icon,.ui-alert--success .ui-alert__title{color:var(--success-text)}.ui-alert--ai,.st-notice--violet{border-left-color:var(--ink-violet);background:var(--ink-violet-soft)}.ui-alert--ai .ui-alert__icon,.ui-alert--ai .ui-alert__title{color:var(--ink-violet)}.ui-alert--staged,.st-notice--staged{border:2px dotted var(--border-strong);background:var(--bg-subtle)}.ui-alert--staged .ui-alert__icon,.ui-alert--neutral .ui-alert__icon{color:var(--text-muted)}.ui-alert--plain .ui-alert__title,.ui-alert--plain .ui-alert__body{grid-column:1}.ui-tabs{border-bottom:1px solid var(--border-subtle);scrollbar-width:thin;align-items:stretch;gap:2px;display:flex;overflow:auto hidden}.ui-tab{align-items:center;gap:var(--space-2);min-height:var(--control-lg);color:var(--text-secondary);font:inherit;font-size:var(--text-control);font-weight:500;line-height:var(--leading-tight);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:0 14px;display:inline-flex}.ui-tab:hover{color:var(--text-primary);background:var(--bg-subtle)}.ui-tab[aria-selected=true]{color:var(--ink-violet);font-weight:var(--weight-strong);border-bottom-color:var(--ink-violet);background:0 0}.ui-tab:focus-visible{outline-offset:-3px}.ui-tab__badge{border-radius:var(--radius-round);background:var(--bg-muted);min-width:1.6em;color:var(--text-secondary);font-size:var(--text-min);font-weight:var(--weight-strong);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 6px;line-height:1.5;display:inline-flex}.ui-tab[aria-selected=true] .ui-tab__badge{background:var(--primary-100);color:var(--primary-700)}.ui-tab__badge--warning{background:var(--warning-bg)!important;color:var(--warning-text)!important}.ui-tab__badge--critical{outline:1px solid var(--critical-border);background:var(--critical-bg)!important;color:var(--critical-text)!important}.ui-tabpanel:focus-visible{outline-offset:4px}.ui-scrim{z-index:var(--z-overlay);background:var(--scrim);animation:ui-fade var(--dur-base) var(--ease-out) both;display:flex;position:fixed;inset:0}.ui-scrim--center{padding:var(--space-4);justify-content:center;align-items:center}.ui-scrim--end{justify-content:flex-end}.ui-dialog{width:100%;max-height:calc(100dvh - 2 * var(--space-4));background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-surface);box-shadow:var(--shadow-overlay);animation:ui-rise var(--dur-base) var(--ease-out) both;flex-direction:column;display:flex;overflow:hidden}.ui-dialog:focus{outline:none}.ui-dialog--drawer{border-width:0 0 0 1px;border-radius:0;height:100%;max-height:none;animation-name:ui-slide}.ui-dialog__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);display:flex}.ui-dialog--drawer .ui-dialog__head{background:var(--bg-canvas)}.ui-dialog__title{font-size:var(--text-block);font-weight:var(--weight-strong);line-height:var(--leading-tight);color:var(--text-primary);margin:0}.ui-dialog__desc{margin-top:var(--space-1);font-size:var(--text-small);color:var(--text-muted)}.ui-dialog__body{min-height:0;padding:var(--space-5);flex:1;overflow-y:auto}.ui-dialog--drawer .ui-dialog__body{flex-direction:column;gap:18px;display:flex}.ui-dialog__foot{justify-content:flex-end;align-items:center;gap:var(--space-2) 10px;padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-subtle);background:var(--bg-canvas);flex-wrap:wrap;display:flex}.ui-dialog__close{color:var(--text-muted);margin:-6px -8px 0 0}.ui-empty{justify-items:center;gap:var(--space-3);padding:40px var(--space-6);text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-surface);background:var(--bg-subtle);display:grid}.ui-empty__icon{border:1px solid var(--border-default);background:var(--bg-surface);width:52px;height:52px;color:var(--text-muted);border-radius:50%;place-items:center;display:grid}.ui-empty__title{font-size:var(--text-body);font-weight:var(--weight-strong);color:var(--text-primary);margin:0}.ui-empty__desc{max-width:46ch;font-size:var(--text-small);color:var(--text-muted);line-height:var(--leading-body);margin:0}.ui-loading{width:100%;padding:var(--space-4) 0;gap:10px;display:grid}.ui-skeleton{border-radius:var(--radius-control);background:var(--bg-muted);height:16px;animation:ui-pulse 1.5s var(--ease-out) infinite alternate}.ui-skeleton--block{background:var(--bg-surface);border:1px solid var(--border-subtle);animation:none}.ui-workspace-skeleton{gap:var(--space-5);padding:var(--gutter);display:grid}.ui-workspace-skeleton__cols{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (max-width:860px){.ui-workspace-skeleton__cols{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.ui-scrim--center{align-items:flex-end;padding:0}.ui-scrim--center .ui-dialog{border-radius:var(--radius-surface) var(--radius-surface) 0 0;border-width:1px 0 0;max-height:92dvh;animation-name:ui-sheet}.ui-dialog__head,.ui-dialog__foot{padding-left:var(--space-4);padding-right:var(--space-4)}.ui-dialog__body{padding:var(--space-4)}.ui-workspace-skeleton{padding:var(--gutter-narrow)}}.ui-skip-link{left:var(--space-4);z-index:calc(var(--z-overlay) + 10);padding:var(--space-2) var(--space-4);background:var(--ink-violet);color:var(--text-inverse);font-weight:var(--weight-strong);border-radius:var(--radius-control);position:absolute;top:-100px}.ui-skip-link:focus{top:var(--space-2)}.st-shell{background:var(--bg-canvas);flex-direction:column;min-height:100vh;display:flex}.st-header{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle)}.st-topbar{align-items:center;gap:var(--space-2) var(--space-4);min-height:52px;padding:var(--space-2) var(--gutter);border-bottom:1px solid var(--border-subtle);display:flex}.st-brand{align-items:center;gap:var(--space-2);color:var(--ink-violet);flex:none;display:inline-flex}.st-brand__mark{border-radius:var(--radius-control);background:var(--ink-violet);width:26px;height:26px;color:var(--text-inverse);font-weight:700;font-size:var(--text-control);box-shadow:2px 2px 0 var(--ink-violet-line);place-items:center;display:inline-grid}.st-brand__name{letter-spacing:-.02em;font-size:1rem;font-weight:700}.st-crumbs{min-width:0;font-size:var(--text-small);color:var(--text-muted);flex:200px}.st-crumbs ol{align-items:center;gap:6px;min-width:0;list-style:none;display:flex}.st-crumbs li{align-items:center;gap:6px;min-width:0;display:inline-flex}.st-crumbs a{color:var(--text-muted);text-underline-offset:3px;transition:text-decoration-color var(--dur-fast);-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.st-crumbs a:hover{color:var(--text-primary);text-decoration-color:currentColor}.st-crumbs [aria-current=page] span{color:var(--text-primary);font-weight:var(--weight-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.st-topbar__tools{align-items:center;gap:var(--space-2);flex:none;display:flex}.st-synced{font-size:var(--text-min);color:var(--text-muted);font-variant-numeric:tabular-nums}.st-context{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-6);padding:var(--space-4) var(--gutter);flex-wrap:wrap;display:flex}.st-context__id{flex:320px;gap:2px;min-width:0;display:grid}.st-context__title{font-size:var(--text-title);font-weight:var(--weight-strong);letter-spacing:-.015em;line-height:var(--leading-tight);margin:0}.st-context__code{color:var(--ink-violet);font-variant-numeric:tabular-nums;font-weight:500}.st-context__meta{font-size:var(--text-small);color:var(--text-muted);flex-wrap:wrap;gap:2px 0;display:flex}.st-context__meta span:not(:last-child):after{content:"·";color:var(--border-strong);margin:0 8px}.st-context__states{flex-wrap:wrap;align-items:center;gap:6px;list-style:none;display:flex}.st-chip--rev{border-color:var(--ink-violet);color:var(--ink-violet);background:var(--ink-violet-soft)}.st-tabbar{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);padding:0 calc(var(--gutter) - 14px);z-index:5;position:sticky;top:0}.st-tabbar .ui-tabs{border-bottom:0}.st-main{width:100%;max-width:1600px;padding:var(--gutter);gap:var(--space-4);flex:1;align-content:start;margin:0 auto;display:grid}.st-main:focus,#main:focus{outline:none}.st-main--narrow{max-width:820px;padding-top:var(--space-12)}.st-panel{gap:var(--space-4);align-content:start;min-width:0;display:grid}.st-panel:focus{outline:none}.st-panel:focus-visible{outline:var(--focus-width) solid var(--focus-color);outline-offset:6px}.st-master-detail{gap:var(--space-5);grid-template-columns:minmax(0,38fr) minmax(0,62fr);align-items:start;display:grid}@media (max-width:860px){.st-master-detail{grid-template-columns:minmax(0,1fr)}}.st-status{gap:var(--space-4);display:grid}.st-status__aside{align-items:center;gap:var(--space-2);font-size:var(--text-small);color:var(--text-muted);display:flex}.st-status__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (max-width:560px){.st-topbar,.st-context{padding-left:var(--gutter-narrow);padding-right:var(--gutter-narrow)}.st-tabbar{padding:0 2px}.st-main{padding:var(--gutter-narrow)}.st-main--narrow{padding-top:var(--space-6)}.st-brand__name{display:none}.st-rail{padding-left:var(--gutter-narrow);padding-right:var(--gutter-narrow)}}.gs-stepper{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);padding:var(--space-3) var(--gutter);z-index:5;position:sticky;top:0}.gs-stepper ol{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));max-width:1600px;margin:0 auto;list-style:none;display:grid}.gs-step{align-items:center;gap:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-surface);background:var(--bg-canvas);width:100%;color:var(--text-primary);text-align:left;font:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);padding:10px 12px;display:flex}.gs-step:hover{border-color:var(--ink-violet-line);background:var(--bg-surface)}.gs-step[aria-current=step]{border-color:var(--ink-violet);background:var(--ink-violet-soft);box-shadow:3px 3px 0 var(--ink-violet-line)}.gs-step__marker{border:1.5px solid var(--border-strong);background:var(--bg-surface);width:26px;height:26px;font-size:var(--text-small);font-weight:var(--weight-strong);color:var(--text-secondary);border-radius:50%;flex:none;place-items:center;display:inline-grid}.gs-step[data-state=done] .gs-step__marker{background:var(--success-solid);border-color:var(--success-solid);color:#fff}.gs-step[data-state=attention] .gs-step__marker{background:var(--warning-bg);border-color:var(--warning-solid);color:var(--warning-text)}.gs-step[data-state=optional] .gs-step__marker{border-style:dashed}.gs-step[aria-current=step] .gs-step__marker{background:var(--ink-violet);border-color:var(--ink-violet);color:#fff}.gs-step__text{min-width:0;line-height:var(--leading-tight);display:grid}.gs-step__label{font-weight:var(--weight-strong);font-size:var(--text-control)}.gs-step__summary{font-size:var(--text-min);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gs-main{max-width:1280px}.gs-section{gap:var(--space-4);align-content:start;min-width:0;display:grid}.gs-head{justify-content:space-between;align-items:flex-end;gap:var(--space-3) var(--space-6);flex-wrap:wrap;display:flex}.gs-head__text{gap:var(--space-1);min-width:0;max-width:78ch;display:grid}.gs-head__title{font-size:var(--text-title);font-weight:var(--weight-strong);line-height:var(--leading-tight);letter-spacing:-.015em}.gs-head__title:focus{outline:none}.gs-head__lede{font-size:var(--text-body);color:var(--text-muted)}.gs-head__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.gs-row{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.gs-row--end{justify-content:flex-end}.gs-hint{font-size:var(--text-small);color:var(--text-muted)}.gs-hint--bad{color:var(--critical-text)}.gs-back,.gs-toggle{font-size:var(--text-small);justify-self:start}.gs-summary{gap:var(--space-3);padding:var(--space-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-surface);display:grid}.gs-summary__tiles{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.gs-tile{padding:var(--space-3) var(--space-4);border-radius:var(--radius-surface);background:var(--bg-canvas);border-left:3px solid var(--border-strong);gap:2px;display:grid}.gs-tile[data-tone=bad]{border-left-color:var(--critical-solid)}.gs-tile[data-tone=review]{border-left-color:var(--warning-solid)}.gs-tile__value{font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:700;line-height:1.1}.gs-tile__label{font-size:var(--text-small);color:var(--text-muted)}.gs-segment{border:1px solid var(--border-strong);border-radius:var(--radius-control);display:inline-flex;overflow:hidden}.gs-segment button{min-height:var(--control-sm);background:var(--bg-surface);font:inherit;font-size:var(--text-small);font-weight:var(--weight-strong);color:var(--text-secondary);cursor:pointer;border:0;padding:0 14px}.gs-segment button+button{border-left:1px solid var(--border-strong)}.gs-segment button[aria-pressed=true]{background:var(--ink-violet);color:#fff}.gs-split{gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(320px,400px);align-items:start;display:grid}.gs-split--single{grid-template-columns:minmax(0,1fr)}.gs-split__main{min-width:0;overflow-x:auto}.gs-panel{gap:var(--space-3);max-height:calc(100vh - 110px);padding:var(--space-5);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-surface);box-shadow:var(--shadow-object);display:grid;position:sticky;top:88px;overflow-y:auto}.gs-panel__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.gs-panel__kicker{font-size:var(--text-small);font-weight:var(--weight-strong);color:var(--ink-violet);font-variant-numeric:tabular-nums}.gs-panel__title{font-size:var(--text-block);font-weight:var(--weight-strong);line-height:var(--leading-tight)}.gs-field-label{font-size:var(--text-small);font-weight:var(--weight-strong);color:var(--text-secondary);margin-bottom:4px;display:block}.gs-optional{color:var(--text-muted);font-weight:400}.gs-textarea,.gs-search input,.gs-newcourse input{width:100%;font:inherit;font-size:var(--text-body);color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-control);line-height:var(--leading-body);padding:8px 10px}.gs-textarea{resize:vertical;min-height:96px}.gs-textarea:focus-visible,.gs-search input:focus-visible,.gs-newcourse input:focus-visible{outline:var(--focus-width) solid var(--focus-color);outline-offset:1px}.gs-details{border-top:1px solid var(--border-subtle);padding-top:var(--space-2);font-size:var(--text-small)}.gs-details summary{cursor:pointer;font-weight:var(--weight-strong);color:var(--text-secondary);padding:4px 0}.gs-details ul{margin-top:var(--space-2);gap:6px;list-style:none;display:grid}.gs-history{gap:var(--space-2);border-top:1px solid var(--border-subtle);padding-top:var(--space-3);display:grid}.gs-history h4{font-size:var(--text-small);font-weight:var(--weight-strong);color:var(--text-secondary)}.gs-history ul{gap:var(--space-3);list-style:none;display:grid}.gs-history p{font-size:var(--text-small)}.gs-catalog{gap:var(--space-2);display:grid}.gs-search{align-items:center;gap:var(--space-2);color:var(--text-muted);display:flex;position:relative}.gs-search svg{position:absolute;left:10px}.gs-search input{padding-left:32px}.gs-chips{flex-wrap:wrap;gap:6px;list-style:none;display:flex}.gs-chip{border-radius:var(--radius-round);background:var(--ink-violet-soft);border:1px solid var(--ink-violet-line);font-size:var(--text-small);align-items:center;gap:6px;padding:2px 4px 2px 8px;display:inline-flex}.gs-chip button{width:20px;height:20px;color:var(--ink-violet);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.gs-chip button:hover{background:var(--bg-surface)}.gs-results{border:1px solid var(--border-subtle);border-radius:var(--radius-control);max-height:260px;list-style:none;display:grid;overflow-y:auto}.gs-results li+li{border-top:1px solid var(--border-subtle)}.gs-result{gap:var(--space-2);cursor:pointer;font-size:var(--text-small);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:8px 10px;display:grid}.gs-result:hover{background:var(--bg-subtle)}.gs-result__main{min-width:0;display:grid}.gs-result__main small{color:var(--text-muted);font-size:var(--text-min);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gs-newcourse{gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-control);background:var(--bg-canvas);display:grid}.gs-newcourse__grid{gap:var(--space-2);grid-template-columns:1fr 2fr 70px;display:grid}.gs-queue{gap:var(--space-3);display:grid}.gs-queue ul{gap:var(--space-2);list-style:none;display:grid}.gs-queue__item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-left:3px solid var(--ink-violet-line);border-radius:var(--radius-surface);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto auto;display:grid}.gs-queue__item:hover{border-color:var(--ink-violet);box-shadow:var(--shadow-object)}.gs-queue__icon{background:var(--ink-violet-soft);width:32px;height:32px;color:var(--ink-violet);border-radius:50%;place-items:center;display:inline-grid}.gs-queue__main{gap:2px;min-width:0;display:grid}.gs-queue__title{font-weight:var(--weight-strong);font-size:var(--text-control)}.gs-queue__detail{font-size:var(--text-small);color:var(--text-secondary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.gs-queue__chevron{color:var(--text-muted)}.gs-export{gap:var(--space-3);max-width:760px;display:grid}.gs-export__card{gap:var(--space-4);padding:var(--space-6);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-surface);box-shadow:var(--shadow-object);display:flex}.gs-export__icon{color:var(--ink-violet);flex:none}.gs-export__body{gap:var(--space-3);min-width:0;display:grid}.gs-export__title{font-weight:var(--weight-strong);font-size:var(--text-block)}.gs-export__list{font-size:var(--text-small);color:var(--text-secondary);gap:4px;padding-left:18px;display:grid}@media (max-width:1100px){.gs-split{grid-template-columns:minmax(0,1fr)}.gs-panel{order:-1;max-height:none;position:static}}@media (max-width:860px){.gs-stepper{padding:var(--space-2) var(--gutter-narrow)}.gs-stepper ol{scrollbar-width:thin;padding-bottom:2px;display:flex;overflow-x:auto}.gs-stepper li{flex:none}.gs-step{padding:8px 10px}.gs-step__summary{display:none}.gs-summary__tiles{grid-template-columns:minmax(0,1fr)}.gs-queue__item{grid-template-columns:auto minmax(0,1fr)}.gs-queue__item .st-state{grid-column:2;justify-self:start}.gs-queue__chevron{display:none}.gs-export__card{padding:var(--space-4);flex-direction:column}.gs-newcourse__grid{grid-template-columns:minmax(0,1fr)}}@keyframes am-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes am-slide-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:none}}@keyframes am-stamp{0%{opacity:0;transform:rotate(-20deg)scale(1.6)}70%{opacity:1;transform:rotate(-6deg)scale(.94)}to{opacity:1;transform:rotate(-8deg)scale(1)}}@keyframes am-draw{to{stroke-dashoffset:0}}@keyframes am-grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-pulse{0%{opacity:.55}to{opacity:1}}@keyframes ui-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ui-slide{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes ui-sheet{0%{transform:translateY(24px)}to{transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.am-draw{stroke-dashoffset:0}}.st-decision-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 20px;display:grid}.st-confirm{background:var(--bg-surface);border:1px solid var(--ink-violet);box-shadow:4px 4px 0 var(--ink-violet-soft);gap:10px;padding:16px 18px;display:grid}@media (max-width:860px){.st-decision-row{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.st-nd-grid{grid-template-columns:minmax(0,1fr)!important}}.st-table .st-state{white-space:normal}@media (max-width:560px){.st-hide-narrow{display:none!important}}.si{background:var(--bg-canvas);grid-template-columns:minmax(0,11fr) minmax(0,10fr);min-height:100vh;display:grid}.si:focus{outline:none}.si-panel{gap:var(--space-12);flex-direction:column;padding:clamp(24px,4.5vw,64px);display:flex}.si-brand{color:var(--ink-violet);letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.0625rem;font-weight:700;display:inline-flex}.si-copy{gap:var(--space-5);max-width:37rem;margin:auto 0;display:grid}.si-title{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(1.875rem,1.1rem + 2.3vw,2.875rem);font-weight:700;line-height:1.3}.si-title__pencil{color:var(--pencil);font-style:italic;font-weight:500;display:block}.si-title__ink{color:var(--ink-violet);display:block}.si-lede{max-width:62ch;color:var(--text-secondary);margin:0;font-size:1.0625rem;line-height:1.6}.si-actions{gap:var(--space-3);padding-top:var(--space-2);flex-wrap:wrap;display:flex}.si-btn{min-height:44px;padding:0 22px;font-size:.9375rem;font-weight:600}.si-note{font-size:var(--text-small);color:var(--text-muted);min-height:1.5em;margin:0}.si-foot{font-size:var(--text-small);color:var(--text-muted);border-top:1px solid var(--border-subtle);padding-top:var(--space-4);margin:0}.si-desk{place-content:center;justify-items:end;gap:var(--space-5);background:var(--primary-700);grid-template-columns:min(100%,620px);padding:clamp(24px,5vw,72px);display:grid;position:relative}.si-plate{gap:var(--space-8);width:100%;margin:0;display:grid}.si-sheet{background:var(--bg-surface);border:1px solid #2a1850;padding:18px 18px 34px;position:relative;box-shadow:10px 10px #2a1850}.si-sheet__head{justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-small);color:var(--text-muted);margin-bottom:var(--space-4);display:flex}.si-swap{position:relative}.si-rev{color:var(--ink-violet);font-variant-numeric:tabular-nums;font-weight:700}.si-swap__old{background:var(--bg-surface);opacity:0;animation:.2s linear 2.4s both si-hide;position:absolute;inset:0}.si-swap__new{animation:si-tick .45s var(--ease-out) 2.4s backwards;display:inline-block}.si-sheet__grid{--u:clamp(8px, 1.45vh, 13px);grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;display:grid}.si-col{flex-direction:column;gap:5px;min-width:0;display:flex}.si-col__total .si-swap__old{padding-top:6px}.si-col__total{border-top:1px dashed var(--border-default);text-align:center;font-size:var(--text-min);color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:auto;padding-top:6px;font-weight:600}.si-flow{height:64px;margin:0;padding:0;list-style:none;position:relative}.si-flow:before{content:"";background:#ece6f740;height:2px;position:absolute;top:13px;left:14px;right:14px}.si-flow:after{content:"";transform-origin:0;background:#ece6f7;height:2px;animation:2.9s cubic-bezier(.4,0,.3,1) .1s backwards am-grow-x;position:absolute;top:13px;left:14px;right:14px}.si-flow__step{top:0;left:calc(14px + var(--k) * (100% - 28px) / 3);z-index:1;text-align:center;width:max-content;max-width:30%;font-size:var(--text-small);color:#ece6f7;animation:si-step .35s var(--ease-out) backwards;justify-items:center;gap:8px;line-height:1.35;display:grid;position:absolute;transform:translate(-50%)}.si-flow__label{white-space:pre-line}.si-flow__n{width:28px;height:28px;color:var(--primary-700);font-weight:700;font-size:var(--text-small);box-shadow:0 0 0 4px var(--primary-700);background:#ece6f7;border-radius:50%;place-items:center;display:grid}.si-flow__step--1{text-align:left;justify-items:start;animation-delay:.1s;left:0;transform:none}.si-flow__step--2{animation-delay:1.05s}.si-flow__step--3{animation-delay:2.4s}.si-flow__step--4{text-align:right;justify-items:end;animation-delay:2.8s;left:auto;right:0;transform:none}.si-flow__step--4 .si-flow__n{color:#5c1410;background:#f4a7a1}@keyframes si-step{0%{color:#ece6f773}}.si-flow__step .si-flow__n{animation:si-dot .35s var(--ease-out) backwards;animation-delay:inherit}@keyframes si-dot{0%{background:var(--primary-700);color:#ece6f799;box-shadow:0 0 0 4px var(--primary-700), inset 0 0 0 2px #ece6f773}}.si-col__h{font-size:var(--text-min);color:var(--text-muted);text-align:center;border-bottom:1.5px solid var(--text-primary);margin-bottom:2px;padding-bottom:4px;font-weight:600}.si-block{height:calc(var(--cr) * var(--u,10px) + 2px);border:1.5px solid var(--text-primary);background:var(--track-core-bg);font-size:var(--text-min);color:var(--text-secondary);font-variant-numeric:tabular-nums;transform-origin:top;animation:si-lay .42s var(--ease-out) calc(var(--i) * 26ms + .12s) backwards;place-items:center;font-weight:600;display:grid;position:relative}.si-block--vincore{background:var(--track-vincore-bg);border-color:var(--ink-violet);color:var(--ink-violet)}.si-block--capstone{background:var(--track-capstone-bg);border-color:var(--success-text);color:var(--success-text)}.si-block__pencil,.si-block--pending{color:var(--text-primary);background:var(--marker);border:1.5px dashed var(--pencil);font-style:italic}.si-block--pending{animation-delay:1.35s}.si-block--approving{border-color:var(--ink-violet);background:var(--ink-violet-soft);color:var(--ink-violet);animation-delay:1.05s}.si-block__pencil{opacity:0;place-items:center;animation:.35s linear 2.4s both si-hide;display:grid;position:absolute;inset:-1.5px}.si-block__ink{animation:si-tick .45s var(--ease-out) 2.4s backwards}.si-block__label,.si-block__pencil,.si-block__ink{text-align:center;padding:0 2px;font-size:.75rem;line-height:1.2}.si-seal{background:var(--bg-surface);width:68px;height:68px;animation:am-stamp .42s var(--ease-out) 2.8s both;font-size:.75rem;position:absolute;bottom:-26px;right:-18px}.si-legend{gap:var(--space-3) var(--space-6);font-size:var(--text-small);color:#ece6f7;flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.si-legend li{align-items:center;gap:var(--space-2);display:inline-flex}.si-key{flex:none;width:22px;height:14px}.si-key--ink{background:var(--bg-surface);border:1.5px solid var(--bg-surface);box-shadow:inset 0 0 0 2px var(--ink-violet-line)}.si-key--pencil{background:var(--marker);border:1.5px dashed var(--marker-border)}.si-key--seal{width:16px;height:16px;box-shadow:inset 0 0 0 2px var(--primary-700), inset 0 0 0 3px #f4a7a1;border:2px solid #f4a7a1;border-radius:50%}@keyframes si-lay{0%{opacity:0;transform:scaleY(.2)}}@keyframes si-hide{0%{opacity:1}to{opacity:0}}@keyframes si-tick{0%{opacity:0;transform:translateY(5px)}}@media (max-width:960px){.si{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.si-panel{gap:var(--space-8);padding:var(--space-6) var(--gutter-narrow,16px) var(--space-8)}.si-copy{margin:0}.si-foot{display:none}.si-desk{padding:var(--space-8) var(--gutter-narrow,16px) var(--space-12);align-content:start}}@media (max-width:560px){.si-sheet{padding:12px 10px 40px;box-shadow:6px 6px #2a1850}.si-sheet__grid{--u:7px;gap:3px}.si-col__total{font-size:.6875rem}.si-flow{gap:var(--space-4) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));height:auto;display:grid}.si-flow__step,.si-flow__step--1,.si-flow__step--4{text-align:left;justify-items:start;width:auto;max-width:none;position:static;transform:none}.si-motif--cap,.si-motif--pencil,.si-flow:before,.si-flow:after{display:none}.si-block__cr,.si-block__label,.si-block__pencil,.si-block__ink{font-size:0}.si-seal{width:52px;height:52px;font-size:.625rem;bottom:-22px;right:-6px}.si-actions .si-btn{flex:140px}}.si-title__pencil,.si-title__ink{clip-path:inset(-.4em -.3em);animation:.9s cubic-bezier(.6,0,.3,1) .15s backwards si-write}.si-title__ink{animation-duration:.75s;animation-delay:.85s}.si-lede,.si-actions,.si-note{animation:ui-rise .5s var(--ease-out) 1.25s backwards}.si-actions{animation-delay:1.35s}.si-note{animation-delay:1.45s}.si-btn{transition:transform .12s var(--ease-out), box-shadow .18s var(--ease-out), background-color .18s, border-color .18s}.si-btn:hover:not(:disabled){box-shadow:3px 3px 0 0 var(--ink-violet-line);transform:translate(-2px,-2px)}.si-btn:active:not(:disabled){box-shadow:0 0 0 0 var(--ink-violet-line);transform:translate(0)}.si-desk{--tx:0;--ty:0;overflow:hidden}.si-papers__inner{gap:var(--space-5);transform:perspective(1400px) rotateX(calc(var(--ty) * -5deg)) rotateY(calc(var(--tx) * 7deg));transition:transform .5s var(--ease-out);display:grid}.si-sheet{box-shadow:calc(10px - var(--tx) * 8px) calc(10px - var(--ty) * 8px) 0 0 #2a1850;transition:box-shadow .5s var(--ease-out);animation:si-sheet-in .6s var(--ease-out) backwards}.si-cards{gap:var(--space-5);grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;display:grid}.si-card{background:var(--bg-surface);animation:si-card-in .5s var(--ease-out) 1.05s backwards;border:1px solid #2a1850;gap:10px;padding:14px 14px 16px;display:grid;position:relative;box-shadow:6px 6px #2a1850}.si-card--course{transform:rotate(-1.2deg)}.si-card--matrix{animation-delay:1.3s;transform:rotate(.8deg)}.si-card--course:after{content:"";background:var(--marker);border:1.5px dashed var(--pencil);mix-blend-mode:multiply;opacity:0;pointer-events:none;animation:.35s linear 2.4s both si-hide;position:absolute;inset:-1px}.si-card__head{justify-content:space-between;gap:var(--space-2);font-size:var(--text-small);color:var(--text-primary);font-weight:600;display:flex}.si-card__head b{color:var(--ink-violet);font-variant-numeric:tabular-nums}.si-clos{gap:6px;margin:0;padding:0;list-style:none;display:grid}.si-clos li{font-size:var(--text-min);color:var(--text-secondary);grid-template-columns:auto minmax(0,1fr);gap:8px;line-height:1.35;display:grid}.si-clos b{color:var(--ink-violet);font-weight:700}.si-clip{fill:none;stroke:#8e8a9c;stroke-width:1.6px;stroke-linecap:round;width:12px;height:30px;position:absolute;top:-14px;left:18px}.si-matrix{grid-template-columns:auto repeat(var(--plos), minmax(0, 1fr));place-items:center;gap:6px 4px;display:grid}.si-matrix__h{color:var(--text-muted);white-space:nowrap;font-size:.6875rem;font-weight:600}.si-matrix__row{color:var(--ink-violet);justify-self:start}.si-cell{border:1.5px solid var(--border-default);border-radius:50%;width:14px;height:14px;position:relative}.si-cell--on{background:var(--ink-violet);border-color:var(--ink-violet);animation:si-pop .3s cubic-bezier(.3, 1.6, .5, 1) calc(1.5s + var(--i) * 45ms) backwards}.si-cell--proposed:after{content:"";background:var(--marker);border:1.5px dashed var(--pencil);opacity:0;border-radius:50%;animation:.35s linear 2.4s both si-hide;position:absolute;inset:-4px}.si-motifs{pointer-events:none;color:#ece6f72b;position:absolute;inset:0}.si-motif{transform:translate(calc(var(--tx) * var(--d) * -1px), calc(var(--ty) * var(--d) * -1px)) rotate(var(--r));transition:transform .6s var(--ease-out);position:absolute}.si-motif--cap{--d:14;--r:-12deg;width:130px;top:3%;left:-22px}.si-motif--notebook{--d:18;--r:11deg;width:118px;top:5%;right:-30px}.si-motif--book{--d:10;--r:5deg;width:200px;bottom:-14px;left:3%}.si-motif--pencil{--d:22;--r:-28deg;width:210px;bottom:13%;right:-34px}.si-plate,.si-replay{z-index:1;position:relative}.si-panel{position:relative;overflow:hidden}.si-panel>:not(.si-sketches){z-index:1;position:relative}.si-sketches{pointer-events:none;position:absolute;inset:0}.si-sketch{fill:none;stroke:var(--ink-violet-line);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;position:absolute}.si-sketch *{stroke-dasharray:1;animation:1.4s ease-out .3s backwards si-sketch}.si-sketch__accent{stroke:var(--ink-violet);opacity:.55}.si-sketch__pencil{stroke:var(--marker-border);stroke-width:3px}.si-sketch--books{width:clamp(120px,12vw,170px);top:36px;right:clamp(16px,4vw,56px);transform:rotate(-4deg)}.si-sketch--checklist{width:clamp(100px,9vw,140px);bottom:112px;right:clamp(20px,5vw,72px);transform:rotate(6deg)}.si-sketch--checklist *{animation-delay:.9s}@keyframes si-sketch{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@media (max-width:960px){.si-sketch--checklist{display:none}.si-sketch--books{width:96px;top:14px}}@media (max-width:560px){.si-sketches{display:none}.si-cards{grid-template-columns:minmax(0,1fr)}.si-card--course,.si-card--matrix{transform:none}}.si-block--approving{overflow:visible}.si-check{width:18px;height:18px;animation:.4s cubic-bezier(.3,1.6,.5,1) 2.45s backwards si-pop;position:absolute;top:-8px;right:-8px}.si-check circle{fill:var(--ink-violet)}.si-check path{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;animation:.3s ease-out 2.7s backwards si-stroke}.si-block--pending{animation:si-lay .42s var(--ease-out) 1.35s backwards, si-nudge 1.4s ease-in-out 3.4s 2}.si-seal:after{content:"";border:2px solid var(--seal);opacity:0;animation:si-ripple .7s var(--ease-out) 3.05s;pointer-events:none;border-radius:50%;position:absolute;inset:-4px}.si-legend li{animation:si-tick .4s var(--ease-out) backwards}.si-legend li:first-child{animation-delay:.5s}.si-legend li:nth-child(2){animation-delay:1.15s}.si-legend li:nth-child(3){animation-delay:2.95s}.si-replay{min-height:32px;font:inherit;font-size:var(--text-small);color:#ece6f7;border-radius:var(--radius-control);cursor:pointer;background:0 0;border:1px solid #ece6f759;align-items:center;gap:6px;padding:0 10px;transition:border-color .18s,background-color .18s;display:inline-flex}.si-replay:hover{background:#ece6f714;border-color:#ece6f7}.si-plate{transition:opacity .45s ease-in,transform .45s ease-in}.si-plate--leaving{opacity:0;transform:translateY(-8px)}.si-replay:focus-visible{outline-offset:2px;outline:2px solid #fff}@keyframes si-write{0%{clip-path:inset(-.4em 100% -.4em -.3em)}}@keyframes si-card-in{0%{opacity:0;translate:0 16px}}@keyframes si-sheet-in{0%{opacity:0;transform:perspective(1400px)translateY(14px)rotateX(6deg)}}@keyframes si-pop{0%{opacity:0;transform:scale(.2)}}@keyframes si-stroke{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes si-nudge{0%,to{box-shadow:0 0 #d8c37a00}50%{box-shadow:0 0 0 4px #d8c37a8c}}@keyframes si-ripple{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}@media (prefers-reduced-motion:reduce){.si *,.si-sheet{transition:none!important;animation:none!important}.si-papers__inner,.si-motif{transform:none!important}.si-replay{display:none}}.si-callback{place-content:center;justify-items:start;gap:var(--space-4);min-height:100vh;padding:var(--space-6) var(--gutter-narrow,16px);background:var(--bg-canvas);display:grid}.si-callback h1{font-size:var(--text-title);margin:0}.si-callback p{color:var(--text-secondary);max-width:46ch;margin:0}.lib{gap:var(--space-4);display:grid}.lib__head{align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.lib__title{font-size:var(--text-block);font-weight:var(--weight-strong);flex:auto;margin:0}.lib__create{gap:var(--space-2);flex-wrap:wrap;display:flex}.lib__tools{gap:var(--space-2);flex-wrap:wrap;width:100%;display:flex}.lib__search{flex:240px;align-items:center;max-width:380px;display:flex;position:relative}.lib__search svg{color:var(--text-muted);pointer-events:none;position:absolute;left:10px}.lib__search input,.lib__sort select,.lib__rename input{width:100%;min-height:var(--control-md);font:inherit;font-size:var(--text-control);color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-control);padding:0 10px}.lib__search input{padding-left:30px}.lib__sort select{width:auto;padding-right:28px}.lib__tabs{gap:var(--space-1);border-bottom:1px solid var(--border-subtle);display:flex;overflow-x:auto}.lib__tab{align-items:center;gap:var(--space-2);font:inherit;font-size:var(--text-control);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;display:inline-flex}.lib__tab[aria-selected=true]{color:var(--ink-violet);border-bottom-color:var(--ink-violet);font-weight:var(--weight-strong)}.lib__tab:hover{color:var(--text-primary)}.lib__count{background:var(--bg-subtle);min-width:20px;font-size:var(--text-min);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;padding:0 6px}.lib__tab[aria-selected=true] .lib__count{background:var(--ink-violet-soft);color:var(--ink-violet)}.lib__notice{font-size:var(--text-small);color:var(--success-text);margin:0}.lib__empty{padding:var(--space-4) 0;color:var(--text-muted);font-size:var(--text-body);margin:0}.lib__list{margin:0;padding:0;list-style:none;display:grid}.lib__row{align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--border-subtle);grid-template-columns:minmax(0,1fr) auto;display:grid}.lib__row:first-child{border-top:0}.lib__row[aria-busy=true]{opacity:.6}.lib__main{gap:6px;min-width:0;display:grid}.lib__name{font-weight:var(--weight-strong);color:var(--text-primary);overflow-wrap:anywhere;text-decoration:none}a.lib__name:hover{color:var(--ink-violet);text-underline-offset:3px;text-decoration:underline}.lib__meta{font-size:var(--text-small);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.lib__code{font-weight:var(--weight-strong);color:var(--text-secondary)}.lib__actions,.lib__confirm{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.lib__confirm span{font-size:var(--text-small);color:var(--text-secondary)}.lib__danger{color:var(--error-text);border-color:var(--error-border)}.lib__danger:hover:not(:disabled){border-color:var(--error-text)}.lib__rename{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.lib__rename input{flex:220px}.lib__menu{position:relative}.lib__menu-toggle{padding:0 8px}.lib__menu-list{z-index:20;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-control);min-width:180px;box-shadow:var(--shadow-md);margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);right:0}.lib__menu-item{align-items:center;gap:var(--space-2);width:100%;font:inherit;font-size:var(--text-control);color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:8px 10px;display:flex}.lib__menu-item:hover,.lib__menu-item:focus-visible{background:var(--ink-violet-soft);color:var(--ink-violet)}.lib__menu-item--danger{color:var(--error-text)}.lib__menu-item--danger:hover{background:var(--error-bg);color:var(--error-text)}@media (max-width:560px){.lib__row{grid-template-columns:minmax(0,1fr)}.lib__actions,.lib__confirm{justify-content:flex-start}}.hist{z-index:60;justify-content:flex-end;display:flex;position:fixed;inset:0}.hist__scrim{cursor:default;background:#1d1b2652;border:0;padding:0;animation:.2s ease-out ui-fade;position:absolute;inset:0}.hist__panel{align-content:start;gap:var(--space-4);width:min(100%,460px);height:100%;padding:var(--space-5) var(--space-5) var(--space-8);background:var(--bg-canvas);border-left:1px solid var(--border-default);animation:ui-slide .24s var(--ease-out);display:grid;position:relative;overflow-y:auto;box-shadow:-8px 0 24px #1d1b261f}.hist__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.hist__head h2{font-size:var(--text-block);color:var(--ink-violet);align-items:center;gap:8px;margin:0;display:inline-flex}.hist__head h2:focus{outline:none}.hist__lede{font-size:var(--text-small);color:var(--text-muted);margin:0}.hist__empty{color:var(--text-muted);margin:0}.hist__list{margin:0;padding:0 0 0 4px;list-style:none;display:grid;position:relative}.hist__list:before{content:"";background:var(--border-subtle);width:2px;position:absolute;top:8px;bottom:8px;left:11px}.hist__item{gap:var(--space-3);padding:var(--space-2) 0 var(--space-3);grid-template-columns:16px minmax(0,1fr);display:grid;position:relative}.hist__dot{background:var(--bg-canvas);border:2px solid var(--ink-violet-line);z-index:1;border-radius:50%;width:10px;height:10px;margin:5px 0 0 3px;position:relative}.hist__item--open .hist__dot{border-color:var(--ink-violet);background:var(--ink-violet)}.hist__mark{color:var(--seal);z-index:1;background:var(--bg-canvas);margin-top:2px;position:relative}.hist__item--version .hist__body b{color:var(--seal)}.hist__body{gap:4px;min-width:0;display:grid}.hist__body b{font-size:var(--text-body);font-weight:var(--weight-strong)}.hist__now{background:var(--ink-violet-soft);color:var(--ink-violet);font-size:var(--text-min);font-weight:var(--weight-strong);border-radius:999px;margin-left:8px;padding:0 6px}.hist__meta{font-size:var(--text-small);color:var(--text-muted)}.hist__note{font-size:var(--text-small);color:var(--text-secondary);overflow-wrap:anywhere}.hist__actions{gap:var(--space-2);flex-wrap:wrap;margin-top:4px;display:flex}.hist__diff{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-control);font-size:var(--text-small);gap:6px;margin:6px 0 0;padding:10px 12px;list-style:none;display:grid}.hist__diff-kind{min-width:34px;font-weight:var(--weight-strong);display:inline-block}.hist__diff li[data-change=added] .hist__diff-kind{color:var(--success-text)}.hist__diff li[data-change=removed] .hist__diff-kind{color:var(--error-text)}.hist__diff li[data-change=changed] .hist__diff-kind{color:var(--warning-text)}@media (prefers-reduced-motion:reduce){.hist__panel,.hist__scrim{animation:none}}.ov{gap:var(--space-3);max-width:760px;margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px dashed var(--border-default);display:grid}.ov__title{font-size:var(--text-block);color:var(--seal);align-items:center;gap:8px;margin:0;display:inline-flex}.ov__card{justify-items:start;gap:var(--space-3);padding:var(--space-5) var(--space-6);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-surface);box-shadow:var(--shadow-object);display:grid}.ov__card--official{border-color:var(--success-border)}.ov__lede{color:var(--text-secondary);margin:0;line-height:1.55}.ov__by{color:var(--text-muted)}.ov__form{gap:var(--space-3);display:grid}.ov__form label{font-size:var(--text-small);font-weight:var(--weight-strong);color:var(--text-secondary);gap:6px;display:grid}.ov__form input,.ov__form textarea{font:inherit;font-weight:400;font-size:var(--text-body);border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--bg-surface);color:var(--text-primary);padding:8px 10px}.ov__list{margin:0;padding:0;list-style:none;display:grid}.ov__list li{align-items:center;gap:var(--space-3);border-top:1px solid var(--border-subtle);grid-template-columns:auto minmax(0,1fr) auto;padding:10px 0;display:grid}.ov__num{font-weight:var(--weight-strong);color:var(--text-primary)}.ov__meta{font-size:var(--text-small);color:var(--text-muted);min-width:0}.ov__dl{gap:var(--space-2);display:flex}@media (max-width:560px){.ov__list li{grid-template-columns:minmax(0,1fr)}}.acct{gap:var(--space-5);width:100%;max-width:760px;margin:0 auto;padding:32px 24px 56px;display:grid}.acct__id{align-items:center;gap:var(--space-4);display:flex}.acct__avatar{background:var(--ink-violet);color:#fff;width:56px;height:56px;box-shadow:3px 3px 0 var(--ink-violet-line);border-radius:50%;flex:none;place-items:center;font-size:1.375rem;font-weight:700;display:grid}.acct__name{font-size:var(--text-title);margin:0}.acct__email{color:var(--text-muted);overflow-wrap:anywhere;margin:2px 0 0}.acct__stats{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.acct__stats li{padding:var(--space-3) var(--space-4);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-control);gap:2px;display:grid}.acct__stats b{font-variant-numeric:tabular-nums;color:var(--ink-violet);font-size:1.5rem}.acct__stats span{font-size:var(--text-small);color:var(--text-muted)}.acct__facts{font-size:var(--text-body);grid-template-columns:max-content minmax(0,1fr);gap:8px 20px;margin:0;display:grid}.acct__facts dt{color:var(--text-muted)}.acct__facts dd{margin:0}.acct__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}@media (max-width:560px){.acct__stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.home{background:var(--bg-canvas);isolation:isolate;flex-direction:column;min-height:100vh;display:flex;position:relative;overflow-x:clip}.home:before{content:"";z-index:-2;pointer-events:none;background-image:radial-gradient(var(--border-default) 1px, transparent 1.3px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000008c,#0000 560px);mask-image:linear-gradient(#0000008c,#0000 560px)}.home-backdrop{width:100%;height:640px;color:var(--ink-violet-line);opacity:.5;z-index:-1;pointer-events:none;position:absolute;top:0;left:0}.home-bar{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border-subtle);background:#ffffffdb;position:sticky;top:0}.home-bar__in{flex-wrap:wrap;align-items:center;gap:8px 14px;max-width:1180px;margin:0 auto;padding:10px 24px;display:flex}.home-brand{color:var(--ink-violet);letter-spacing:-.02em;align-items:center;gap:8px;font-size:1.0625rem;font-weight:700;display:inline-flex}.home-brand__mark{width:24px;height:24px;color:var(--ink-violet)}.home-bar__tag{font-size:var(--text-small);color:var(--text-muted);border-left:1px solid var(--border-default);padding-left:14px}.home-user{border:1px solid var(--border-default);border-radius:var(--radius-round);background:var(--bg-surface);min-height:34px;color:var(--text-primary);font-size:var(--text-small);align-items:center;gap:8px;padding:2px 12px 2px 3px;font-weight:600;text-decoration:none;transition:border-color .15s,background-color .15s;display:inline-flex}.home-user:hover{border-color:var(--ink-violet);background:var(--ink-violet-soft)}.home-user:focus-visible{outline:2px solid var(--ink-violet);outline-offset:2px}.home-user__avatar{background:var(--ink-violet);color:#fff;width:28px;height:28px;font-size:var(--text-min);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.home-main{flex:1;align-content:start;gap:22px;width:100%;max-width:1180px;margin:0 auto;padding:28px 24px 40px;display:grid}.home .st-card{border-radius:var(--radius-surface)}.home-rise{animation:ui-rise .5s var(--ease-out) backwards;animation-delay:calc(var(--d,0) * 80ms)}.home-hero{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-surface);box-shadow:var(--shadow-md);gap:20px;padding:28px 32px;display:grid;position:relative;overflow:hidden}.home-hero:before{content:"";background:linear-gradient(var(--ink-violet), var(--ink-violet-line));width:4px;position:absolute;inset:0 auto 0 0}.home-hero__sketch{width:min(330px,40%);height:auto;max-height:calc(100% - 24px);color:var(--ink-violet-line);pointer-events:none;position:absolute;top:50%;right:16px;transform:translateY(-50%)}.home-hero__copy{gap:6px;max-width:40rem;display:grid;position:relative}.home-hero__eyebrow{font-size:var(--text-small);color:var(--text-muted);align-items:center;gap:8px;font-weight:600;display:inline-flex}.home-hero__eyebrow:before{content:"";background:var(--ink-violet);width:18px;height:2px}.home-hero__title{letter-spacing:-.02em;color:var(--text-primary);text-wrap:balance;margin:0;font-size:clamp(1.5rem,1.1rem + 1.4vw,2rem);font-weight:700;line-height:1.3}.home-hero__lede{color:var(--text-secondary);max-width:60ch;margin:0;font-size:.9375rem}.home-stats{grid-template-columns:repeat(3,minmax(0,190px));gap:12px;margin:0;display:grid;position:relative}.home-stat{background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-control);gap:4px;padding:10px 14px;display:grid}.home-stat dt{font-size:var(--text-small);color:var(--text-muted);align-items:center;gap:6px;display:flex}.home-stat dd{color:var(--text-primary);font-variant-numeric:tabular-nums;margin:0;font-size:1.625rem;font-weight:700;line-height:1.3}.home-stat[data-accent]{background:var(--ink-violet-soft);border-color:var(--ink-violet-line)}.home-stat[data-accent] dt,.home-stat[data-accent] dd{color:var(--ink-violet)}@media (max-width:760px){.home-hero{padding:22px 20px}.home-hero__sketch{opacity:.45;width:220px;right:-30px}.home-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:480px){.home-stats{grid-template-columns:minmax(0,1fr)}}.home-draw *{stroke-dasharray:1;animation:1.1s ease-out .2s backwards si-sketch}.home-fade{animation:.6s ease-out .9s backwards ui-fade}.home-sketch__ink{stroke:var(--ink-violet);opacity:.6}.home-sketch__cols,.home-sketch__pencil{stroke-linecap:butt;transform-box:fill-box;transform-origin:bottom;animation:home-grow .5s var(--ease-out) backwards;animation-delay:calc(.3s + var(--i) * 80ms)}.home-sketch__pencil{stroke:var(--marker-border)}.home-sketch__marker{fill:var(--marker);stroke:var(--marker-border)}.home-route{stroke:var(--ink-violet);opacity:.45;animation:.6s ease-out .9s backwards ui-fade}@keyframes home-grow{0%{transform:scaleY(0)}}@keyframes home-shimmer{to{background-position:-200% 0}}.home-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);align-items:start;gap:22px;display:grid}@media (max-width:900px){.home-grid{grid-template-columns:minmax(0,1fr)}}.home-card-h{align-items:center;gap:10px;display:flex}.home-card-h h2{font-size:var(--text-block);margin:0;font-weight:600}.home-card-h__icon{background:var(--ink-violet-soft);width:30px;height:30px;color:var(--ink-violet);border-radius:8px;place-items:center;display:inline-grid}.home-count{border-radius:var(--radius-round);background:var(--ink-violet);color:#fff;min-width:24px;height:22px;font-size:var(--text-min);place-items:center;padding:0 7px;font-weight:700;display:inline-grid}.home-queue__list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.home-queue__list>li{border:1px solid var(--border-subtle);border-left:3px solid var(--ink-violet-line);border-radius:var(--radius-control);background:var(--bg-surface);animation:am-slide-in .4s var(--ease-out) backwards;animation-delay:calc(.2s + var(--i) * 60ms);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 14px;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:grid}.home-queue__list>li:first-child{border-left-color:var(--ink-violet);background:linear-gradient(90deg, var(--ink-violet-soft), var(--bg-surface) 55%)}.home-queue__list>li:hover{box-shadow:3px 3px 0 var(--ink-violet-soft)}.home-queue__n{border:1px solid var(--ink-violet-line);background:var(--bg-surface);width:26px;height:26px;color:var(--ink-violet);font-weight:700;font-size:var(--text-min);border-radius:50%;align-self:start;place-items:center;display:inline-grid}.home-go{white-space:nowrap;justify-content:center;align-items:center;gap:6px;display:inline-flex}.home-go svg{transition:transform .15s var(--ease-out)}.home-go:hover svg{transform:translate(3px)}@media (max-width:640px){.home-queue__list>li{grid-template-columns:auto minmax(0,1fr)}.home-go{grid-column:1/-1}}.home-clear{color:var(--text-muted);align-items:center;gap:14px;padding:6px 2px;font-size:.875rem;display:flex}.home-clear p{margin:0}.home-clear__art{width:80px;color:var(--ink-violet-line);flex:none}.home-side{align-content:start;gap:10px;display:grid}.home-section-h{font-size:var(--text-small);color:var(--text-muted);font-weight:600}.home-choices{gap:12px;display:grid}.home-choices--large{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.home-choice{text-align:left;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-surface);cursor:pointer;font:inherit;color:inherit;transition:border-color .18s, box-shadow .18s, transform .18s var(--ease-out);align-content:start;gap:6px;padding:16px 84px 16px 18px;display:grid;position:relative;overflow:hidden}.home-choice:hover{border-color:var(--ink-violet);box-shadow:5px 5px 0 var(--ink-violet-soft);transform:translate(-2px,-2px)}.home-choice:active{box-shadow:2px 2px 0 var(--ink-violet-soft);transform:none}.home-choice:focus-visible{outline:2px solid var(--ink-violet);outline-offset:2px}.home-choice b{color:var(--ink-violet);font-size:1.0625rem}.home-choice__kicker{font-size:var(--text-min);color:var(--text-muted);font-weight:600}.home-choice__text{font-size:var(--text-small);color:var(--text-muted)}.home-choice__go{border-top:1px dashed var(--border-default);font-size:var(--text-small);color:var(--ink-violet);align-items:center;gap:6px;margin-top:4px;padding-top:8px;font-weight:600;display:inline-flex}.home-choice__arrow{transition:transform .18s var(--ease-out)}.home-choice:hover .home-choice__arrow{transform:translate(4px)}.home-choice__art{width:56px;height:56px;color:var(--border-strong);transition:transform .3s var(--ease-out), color .2s;position:absolute;top:14px;right:14px}.home-choice__art svg{width:100%;height:100%}.home-choice:hover .home-choice__art{color:var(--ink-violet-line);transform:rotate(-6deg)scale(1.06)}.home-choices--large .home-choice{min-height:190px;padding:22px 108px 22px 24px}.home-choices--large .home-choice__art{width:76px;height:76px;top:20px;right:20px}.home-choices--large .home-choice b{font-size:1.1875rem}.home-how summary{cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.home-how summary::-webkit-details-marker{display:none}.home-how summary:after{content:"+";color:var(--ink-violet);transition:transform .2s var(--ease-out);margin-left:auto;font-size:1.125rem;line-height:1}.home-how[open] summary:after{transform:rotate(45deg)}.home-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:4px 0 0;padding:0;list-style:none;display:grid;position:relative}.home-steps:before{content:"";background:repeating-linear-gradient(90deg, var(--ink-violet-line) 0 6px, transparent 6px 11px);height:2px;position:absolute;top:15px;left:15px;right:15px}.home-steps li{animation:ui-rise .4s var(--ease-out) backwards;animation-delay:calc(var(--i) * 70ms);align-content:start;gap:4px;font-size:.84375rem;display:grid;position:relative}.home-steps li>span:not(.home-steps__dot){color:var(--text-muted);font-size:var(--text-min)}.home-steps__dot{background:var(--bg-surface);border:1.5px solid var(--ink-violet-line);width:30px;height:30px;color:var(--ink-violet);font-weight:700;font-size:var(--text-small);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.home-steps li[data-gate=true] .home-steps__dot{background:var(--ink-violet);border-color:var(--ink-violet);color:#fff;box-shadow:0 0 0 4px var(--ink-violet-soft)}@media (max-width:760px){.home-steps{grid-template-columns:minmax(0,1fr)}.home-steps:before{background:repeating-linear-gradient(180deg, var(--ink-violet-line) 0 6px, transparent 6px 11px);width:2px;height:auto;inset:15px auto 15px 14px}.home-steps li{grid-template-columns:auto minmax(0,1fr);column-gap:12px}.home-steps__dot{grid-row:span 2;margin:0}}.home-skeleton{gap:18px;display:grid}.home-skeleton>span:not(.ui-sr-only),.nd-import__skeleton{border-radius:var(--radius-surface);border:1px solid var(--border-subtle);background:linear-gradient(90deg, var(--bg-subtle), var(--bg-surface), var(--bg-subtle));background-size:200% 100%;animation:1.2s linear infinite home-shimmer;display:block}.home-foot{font-size:var(--text-min);color:var(--text-muted);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:8px 24px 28px;display:flex}.home-foot__rule{width:160px;color:var(--ink-violet-line)}.nd-group{border:1px solid var(--border-subtle);border-radius:var(--radius-surface);background:var(--bg-surface);gap:12px;min-width:0;margin:0;padding:14px 16px 16px;display:grid}.nd-group legend{font-size:var(--text-small);color:var(--ink-violet);margin-left:-6px;padding:0 6px;font-weight:600}.nd-fields{gap:12px;display:grid}.nd-fields--3{grid-template-columns:repeat(3,minmax(0,1fr))}.nd-field{align-content:start;gap:5px;min-width:0;display:grid}.nd-field--wide{grid-column:span 2}.nd-field__label{font-size:var(--text-small);color:var(--text-secondary);font-weight:600}@media (max-width:640px){.nd-fields--3{grid-template-columns:minmax(0,1fr)}.nd-field--wide{grid-column:auto}}.nd-input{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--bg-surface);width:100%;min-height:36px;color:var(--text-primary);font:inherit;font-size:var(--text-control);padding:7px 10px;transition:border-color .15s,box-shadow .15s}.nd-input:hover{border-color:var(--text-muted)}.nd-input:focus{border-color:var(--ink-violet);box-shadow:0 0 0 3px var(--ink-violet-soft);outline:none}.nd-input[aria-invalid=true]{border-color:var(--critical-solid)}textarea.nd-input{resize:vertical;line-height:1.5}.nd-input--code{color:var(--ink-violet);font-weight:600}.nd-input--num{width:76px}.nd-input--sm{width:auto;min-height:32px;padding:4px 8px}.nd-error{color:var(--critical-text);font-size:var(--text-small)}.nd-hint{font-size:var(--text-small);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.nd-inline{font-size:var(--text-small);color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.nd-icon-btn{border-radius:var(--radius-control);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.nd-icon-btn:hover{background:var(--bg-subtle);color:var(--text-primary)}.nd-icon-btn:focus-visible{outline:2px solid var(--ink-violet);outline-offset:1px}.nd-foot{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:14px;display:flex}.nd{grid-template-columns:minmax(0,232px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.nd-rail{gap:14px;display:grid;position:sticky;top:0}.nd-progress{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-canvas);gap:6px;padding:10px 12px;display:grid}.nd-progress__row{font-size:var(--text-small);color:var(--text-muted);justify-content:space-between;display:flex}.nd-progress__row b{color:var(--ink-violet)}.nd-progress__bar{border-radius:var(--radius-round);background:var(--bg-muted);height:6px;overflow:hidden}.nd-progress__bar span{background:var(--ink-violet);border-radius:inherit;height:100%;transition:width .4s var(--ease-out);display:block}.nd-rail__staged{font-size:var(--text-min);color:var(--pencil);border:1.5px dashed var(--border-strong);border-radius:var(--radius-control);background:var(--bg-subtle);align-items:flex-start;gap:8px;margin:0;padding:10px 12px;display:flex}.nd-rail__staged svg{flex:none;margin-top:2px}@media (max-width:760px){.nd-rail{position:static}}.nd-body{min-width:0;animation:am-slide-in .3s var(--ease-out);flex-direction:column;gap:18px;display:flex}.nd-section{flex-direction:column;gap:14px;display:flex}.nd-head{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.nd-head__n{background:var(--ink-violet-soft);width:32px;height:32px;color:var(--ink-violet);border-radius:8px;flex:none;place-items:center;font-weight:700;display:grid}.nd-head h3{font-size:var(--text-block);margin:0;font-weight:600}.nd-head p{font-size:var(--text-small);color:var(--text-muted);margin:2px 0 0}.nd-plos{gap:10px;margin:0;padding:0;list-style:none;display:grid}.nd-plo{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);animation:ui-rise .25s var(--ease-out);grid-template-columns:110px minmax(0,1fr) auto;align-items:start;gap:8px;padding:10px;transition:box-shadow .15s,border-color .15s;display:grid}.nd-plo:focus-within{border-color:var(--ink-violet-line);box-shadow:3px 3px 0 var(--ink-violet-soft)}.nd-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nd-tally{font-size:var(--text-small);color:var(--text-muted);border-radius:var(--radius-round);background:var(--bg-subtle);padding:4px 10px}.nd-tally b{color:var(--text-primary)}.nd-tally[data-over]{background:var(--warning-bg);color:var(--warning-text)}.nd-strip{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-canvas);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:end;gap:8px;margin:0;padding:10px 12px 8px;list-style:none;display:grid}.nd-strip li{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;min-width:0;height:80px;display:flex}.nd-strip__bar{background:var(--ink-violet-line);width:min(100%,28px);transition:height .35s var(--ease-out);border-radius:3px 3px 0 0}.nd-strip li:hover .nd-strip__bar{background:var(--ink-violet)}.nd-strip__bar[data-empty]{border:1px dashed var(--border-strong);background:0 0;border-bottom:0}.nd-strip__label{font-size:var(--text-min);color:var(--text-muted);white-space:nowrap;gap:3px;display:flex}.nd-strip__label b{color:var(--text-primary);font-variant-numeric:tabular-nums}@media (max-width:560px){.nd-strip__label{flex-direction:column;align-items:center;gap:0}}.nd-import{border:1px solid var(--ink-violet-line);border-radius:var(--radius-surface);background:linear-gradient(180deg, var(--primary-50), var(--bg-surface) 70%);box-shadow:4px 4px 0 var(--ink-violet-soft);animation:ui-rise .25s var(--ease-out);gap:10px;padding:14px;display:grid}.nd-import__head{align-items:flex-start;gap:10px;display:flex}.nd-import__head p{margin:2px 0 0}.nd-import__icon{background:var(--ink-violet);color:#fff;border-radius:8px;flex:none;place-items:center;width:32px;height:32px;display:grid}.nd-search{color:var(--text-muted);align-items:center;display:flex;position:relative}.nd-search svg{pointer-events:none;position:absolute;left:10px}.nd-search input{border:1px solid var(--border-strong);border-radius:var(--radius-control);width:100%;min-height:38px;font:inherit;font-size:var(--text-control);background:var(--bg-surface);color:var(--text-primary);padding:6px 10px 6px 34px}.nd-search input:focus{border-color:var(--ink-violet);box-shadow:0 0 0 3px var(--ink-violet-soft);outline:none}.nd-import__list{gap:6px;max-height:300px;margin:0;padding:0 2px 0 0;list-style:none;display:grid;overflow-y:auto}.nd-import__skeleton{border-radius:var(--radius-control);height:50px}.nd-import__item{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;transition:border-color .15s,background-color .15s;display:grid;position:relative}.nd-import__item:hover{border-color:var(--ink-violet-line)}.nd-import__item[data-on]{border-color:var(--ink-violet);background:var(--ink-violet-soft)}.nd-import__item[data-disabled]{cursor:default;background:var(--bg-subtle)}.nd-import__item input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.nd-import__item:has(input:focus-visible){outline:2px solid var(--ink-violet);outline-offset:1px}.nd-import__check{border:1.5px solid var(--border-strong);color:#0000;background:var(--bg-surface);border-radius:4px;place-items:center;width:18px;height:18px;transition:background-color .15s,border-color .15s,color .15s;display:grid}.nd-import__item[data-on] .nd-import__check{background:var(--ink-violet);border-color:var(--ink-violet);color:#fff}.nd-import__item[data-disabled] .nd-import__check{background:var(--border-strong);border-color:var(--border-strong);color:#fff}.nd-import__main{min-width:0;font-size:var(--text-small);gap:2px;display:grid}.nd-import__main small{color:var(--text-muted);font-size:var(--text-min);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nd-code{color:var(--ink-violet);font-weight:700}.nd-import__have{font-size:var(--text-min);color:var(--text-muted);font-weight:600}.nd-import__foot{border-top:1px solid var(--ink-violet-line);flex-wrap:wrap;align-items:center;gap:8px;padding-top:10px;display:flex}.nd-note{border-left:3px solid var(--success-solid);border-radius:0 var(--radius-control) var(--radius-control) 0;background:var(--success-bg);color:var(--success-text);font-size:var(--text-small);animation:ui-rise .3s var(--ease-out);margin:0;padding:8px 12px}.nd-courses{gap:12px;margin:0;padding:0;list-style:none;display:grid}.nd-course{border:1px solid var(--border-subtle);border-left:3px solid var(--border-strong);border-radius:var(--radius-surface);background:var(--bg-surface);animation:ui-rise .3s var(--ease-out);gap:10px;padding:12px 14px 14px;transition:box-shadow .15s,border-color .15s;display:grid}.nd-course:focus-within{box-shadow:4px 4px 0 var(--ink-violet-soft);border-color:var(--ink-violet-line)}.nd-course[data-catalog=official]{border-left-color:var(--ink-violet)}.nd-course[data-catalog=proposed]{border-left:3px dashed var(--marker-border)}.nd-course__top{align-items:center;gap:8px;display:flex}.nd-course__n{background:var(--bg-subtle);width:24px;height:24px;font-size:var(--text-min);color:var(--text-secondary);border-radius:50%;place-items:center;font-weight:700;display:grid}.nd-course__src{border-radius:var(--radius-round);background:var(--bg-subtle);font-size:var(--text-min);color:var(--pencil);align-items:center;gap:5px;padding:2px 8px;font-weight:600;display:inline-flex}.nd-course__src[data-status=official]{color:var(--ink-violet);background:var(--ink-violet-soft)}.nd-course__src[data-status=proposed]{color:var(--text-primary);background:var(--marker)}.nd-course__fields{grid-template-columns:124px minmax(0,1fr) auto 140px;align-items:center;gap:8px;display:grid}@media (max-width:640px){.nd-course__fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.nd-course__fields>:nth-child(2){grid-column:1/-1}}.nd-course__block{border-top:1px dashed var(--border-subtle);gap:6px;padding-top:10px;display:grid}.nd-course__row{justify-content:space-between;align-items:center;gap:8px;display:flex}.nd-course__label{font-size:var(--text-small);color:var(--text-secondary);font-weight:600}.nd-pills{flex-wrap:wrap;gap:6px;display:flex}.nd-pill{border:1px solid var(--border-strong);border-radius:var(--radius-round);background:var(--bg-surface);min-height:28px;font:inherit;font-size:var(--text-small);color:var(--text-secondary);cursor:pointer;padding:0 10px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s}.nd-pill:hover{border-color:var(--ink-violet);color:var(--ink-violet)}.nd-pill:focus-visible{outline:2px solid var(--ink-violet);outline-offset:1px}.nd-pill[aria-pressed=true]{background:var(--ink-violet);border-color:var(--ink-violet);color:#fff}.nd-pill[aria-pressed=true]:before{content:"✓ "}.nd-suggest{border:1px dashed var(--ink-violet);border-radius:var(--radius-round);color:var(--ink-violet);font:inherit;font-size:var(--text-min);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.nd-suggest:hover{background:var(--ink-violet-soft)}.nd-clo{grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.nd-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.nd-stat{border:1px solid var(--border-subtle);border-top:3px solid var(--ink-violet-line);border-radius:var(--radius-control);background:var(--bg-canvas);align-content:start;gap:2px;padding:12px 14px;display:grid}.nd-stat span{font-size:var(--text-small);color:var(--text-muted)}.nd-stat b{color:var(--text-primary);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:1.375rem}.nd-stat small{font-size:var(--text-min);color:var(--text-muted)}.nd-conditions{border:1px solid var(--border-subtle);border-radius:var(--radius-surface);background:var(--bg-canvas);gap:8px;padding:14px 16px;display:grid}.rx{flex-direction:column;gap:18px;display:flex}.rx-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.rx-flow li{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-canvas);animation:ui-rise .35s var(--ease-out) backwards;animation-delay:calc(var(--k) * 80ms);align-items:flex-start;gap:10px;padding:10px 12px;display:flex;position:relative}.rx-flow li>span:last-child{font-size:var(--text-small);gap:2px;min-width:0;display:grid}.rx-flow small{color:var(--text-muted);font-size:var(--text-min)}.rx-flow__icon{background:var(--ink-violet-soft);width:28px;height:28px;color:var(--ink-violet);border-radius:50%;flex:none;place-items:center;display:grid}.rx-flow li[data-gate]{border-color:var(--ink-violet-line);background:var(--bg-surface)}.rx-flow li[data-gate] .rx-flow__icon{background:var(--ink-violet);color:#fff}.rx-flow li+li:before{content:"";background:var(--ink-violet-line);width:10px;height:2px;position:absolute;top:50%;left:-11px}@media (max-width:560px){.rx-flow{grid-template-columns:minmax(0,1fr)}.rx-flow li+li:before{display:none}}.rx-fields{grid-template-columns:minmax(0,1fr) 210px;align-items:end;gap:12px;display:grid}@media (max-width:560px){.rx-fields{grid-template-columns:minmax(0,1fr)}}.rx-req{color:var(--critical-text)}.rx-drop{text-align:center;border:2px dashed var(--border-strong);border-radius:var(--radius-surface);background:repeating-linear-gradient(-45deg, var(--bg-surface) 0 10px, var(--bg-canvas) 10px 20px);transition:border-color .15s, background-color .15s, transform .15s var(--ease-out);justify-items:center;gap:6px;padding:26px 20px;display:grid}.rx-drop[data-dragging]{border-color:var(--ink-violet);background:var(--ink-violet-soft);transform:scale(1.01)}.rx-drop[data-filled]{padding:18px 20px}.rx-drop__art{background:var(--ink-violet-soft);width:52px;height:52px;color:var(--ink-violet);transition:transform .25s var(--ease-out);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.rx-drop:hover .rx-drop__art{transform:translateY(-2px)}.rx-drop[data-dragging] .rx-drop__art{transform:translateY(-5px)}.rx-drop__types{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:4px;display:flex}.rx-drop__types>span:not(.gs-hint){border:1px solid var(--border-default);border-radius:var(--radius-round);background:var(--bg-surface);font-size:var(--text-min);color:var(--text-secondary);padding:1px 8px;font-weight:700}.rx-files{gap:8px;display:grid}.rx-files__head{font-size:var(--text-small);color:var(--text-muted);justify-content:space-between;gap:10px;display:flex}.rx-files ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rx-file{border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-surface);animation:am-slide-in .25s var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 8px 8px 10px;display:grid}.rx-file[data-bad]{border-color:var(--critical-border);background:var(--critical-bg)}.rx-file__icon{background:var(--ink-violet-soft);width:34px;height:34px;color:var(--ink-violet);border-radius:6px;place-items:center;display:grid}.rx-file__main{gap:1px;min-width:0;display:grid}.rx-file__name{font-weight:600;font-size:var(--text-small);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rx-file__main small{font-size:var(--text-min);color:var(--text-muted)}.rx-file[data-bad] small{color:var(--critical-text)}.rx-file__ok{color:var(--success-solid)}.rx-note{border:1px solid var(--warning-border);border-left:3px solid var(--warning-solid);border-radius:var(--radius-control);background:var(--warning-bg);color:var(--warning-text);font-size:var(--text-small);animation:ui-rise .25s var(--ease-out);align-items:flex-start;gap:8px;padding:9px 12px;display:flex}.rx-note svg{flex:none;margin-top:2px}
