@import"https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400;1,6..72,500&display=swap";.sb-nav[data-v-ed92d21a]{flex:1;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4) var(--sp-3)}.sb-section[data-v-ed92d21a]{display:flex;flex-direction:column;gap:2px}.sb-section-label[data-v-ed92d21a]{margin:var(--sp-2) 0 0;padding:var(--sp-2) var(--sp-2) var(--sp-1);font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}.sb-link[data-v-ed92d21a]{position:relative;display:flex;align-items:center;gap:var(--sp-3);padding:10px 14px;border-radius:var(--r-sm);color:var(--ink-2);font-family:var(--font-ui);font-weight:500;font-size:var(--fs-body-sm);text-decoration:none;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.sb-link[data-v-ed92d21a]:hover{background:var(--bg-raised);color:var(--ink)}.sb-link[data-v-ed92d21a]:focus-visible{outline:2px solid var(--campus-navy);outline-offset:-2px}.sb-link.is-active[data-v-ed92d21a]{background:var(--campus-navy-soft);color:var(--campus-navy);font-weight:600}.sb-link.is-active[data-v-ed92d21a]:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--campus-navy);border-radius:var(--r-pill)}.sb-link.is-active .sb-icon[data-v-ed92d21a]{color:var(--campus-blue);opacity:1}.sb-icon[data-v-ed92d21a]{flex-shrink:0;opacity:.85}.sb-label[data-v-ed92d21a]{flex:1;white-space:nowrap}.sb-soon[data-v-ed92d21a]{color:var(--ink-muted);font-size:11px;font-weight:600}.org-switch[data-v-ca288923]{max-width:240px;padding:var(--sp-1) var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--r-input);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-body-sm)}.embassy-shell[data-v-b295bc11] .cds-nav{display:flex;flex-direction:column;padding:0}.embassy-shell[data-v-b295bc11] .cds-main{background:var(--bg-canvas)}.page[data-v-b295bc11]{padding:var(--sp-6)}@media (max-width: 640px){.page[data-v-b295bc11]{padding:var(--sp-4)}}.no-access[data-v-b295bc11]{max-width:560px}.no-access h1[data-v-b295bc11]{margin:0 0 var(--sp-3);font-family:var(--font-display);color:var(--ink)}.no-access p[data-v-b295bc11]{margin:0;color:var(--ink-2)}.banner[data-v-b295bc11]{margin:0 0 var(--sp-5);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-input);background:var(--info-soft);color:var(--ink-2);font-size:var(--fs-body-sm)}.banner.banner--error[data-v-b295bc11]{background:var(--danger-soft);color:var(--danger)}.confirm-dialog .confirm-body[data-v-f91ed1e9]{font-size:var(--fs-body-sm);color:var(--ink-2);margin-bottom:var(--sp-4);white-space:pre-line}.admin-btn-primary.is-danger[data-v-f91ed1e9]{background:var(--danger);border-color:var(--danger)}.admin-btn-primary.is-danger[data-v-f91ed1e9]:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 85%,black)}@font-face{font-family:Open Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/open-sans-BEhAMRCF.woff2) format("woff2")}@font-face{font-family:Open Sans;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/open-sans-400-italic-BzgLZFzQ.woff2) format("woff2")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/schibsted-grotesk-DxefFeRw.woff2) format("woff2")}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/chakra-petch-400-B4bAsm6z.woff2) format("woff2")}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/chakra-petch-500-BWsfsDOT.woff2) format("woff2")}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/chakra-petch-600-BA8AzLCM.woff2) format("woff2")}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/chakra-petch-700-BVfRasCZ.woff2) format("woff2")}:root{color-scheme:light;--campus-navy: #234e70;--campus-navy-hover: #1b3e5a;--campus-navy-press: #15324a;--campus-navy-deep: #16344c;--campus-navy-soft: rgba(35, 78, 112, .07);--campus-navy-line: rgba(35, 78, 112, .18);--campus-gold: #bc8638;--campus-gold-hover: #a8742b;--campus-gold-soft: rgba(188, 134, 56, .12);--bg-canvas: #faf6ee;--bg-raised: #f4eee1;--surface: #ffffff;--surface-alt: #f7f2e8;--surface-hover: #fbf8f2;--line: #e8e0d0;--line-strong: #d9cfba;--bg-input: #eef4fa;--line-input: #c8d0da;--ink: #211f1a;--ink-2: #57534a;--ink-muted: #8e887c;--ink-on-accent: #ffffff;--paper: #faf6ee;--paper-2: #c9d4de;--paper-muted: #8aa0b0;--campus-blue: var(--campus-navy);--campus-blue-hover: var(--campus-navy-hover);--campus-blue-press: var(--campus-navy-press);--campus-blue-soft: var(--campus-navy-soft);--campus-blue-glow: var(--campus-navy-soft);--bg-black: var(--campus-navy-deep);--bg-base: var(--bg-canvas);--bg-offwhite: var(--bg-raised);--bg-paper: var(--bg-canvas);--surface-2: var(--surface-alt);--surface-3: var(--surface-hover);--surface-light: var(--surface);--line-light: var(--line);--fg-on-dark: var(--paper);--fg-on-dark-2: var(--paper-2);--fg-on-dark-muted: var(--paper-muted);--fg-on-light: var(--ink);--fg-on-light-2: var(--ink-2);--fg-on-light-muted: var(--ink-muted);--app-canvas: #f9fafb;--app-raised: #eef1f5;--app-surface: #ffffff;--app-line: #dde3ea;--app-line-strong: #c5ced7;--app-ink: #1b2530;--app-ink-2: #4a5560;--app-ink-muted: #5f6b78;--success: #2e7d52;--success-soft: #e6f1ea;--warning: #b3781f;--warning-soft: #f6ecdb;--danger: #b23b2e;--danger-soft: #f6e4e1;--info: #234e70;--info-soft: #e6edf3;--r-sm: 8px;--r-input: 10px;--r-card: 14px;--r-lg: 20px;--r-pill: 999px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--sp-9: 96px;--sp-10: 128px;--shadow-sm: 0 1px 2px rgba(45, 34, 12, .05);--shadow-card: 0 1px 2px rgba(45, 34, 12, .05), 0 14px 32px -12px rgba(45, 34, 12, .14);--shadow-hover: 0 2px 4px rgba(45, 34, 12, .06), 0 22px 44px -16px rgba(45, 34, 12, .2);--shadow-pop: 0 20px 48px -16px rgba(45, 34, 12, .22);--shadow-glow: 0 1px 2px rgba(45, 34, 12, .05), 0 14px 32px -12px rgba(45, 34, 12, .14);--ease: cubic-bezier(.22, .61, .36, 1);--dur-fast: .14s;--dur: .24s;--dur-slow: .48s;--lh-tight: 1.04;--lh-snug: 1.2;--display-weight: 500;--font-display: "Newsreader", Georgia, "Times New Roman", serif;--font-ui: "Schibsted Grotesk", system-ui, sans-serif;--font-body: "Open Sans", system-ui, sans-serif;--font-mono: "Chakra Petch", ui-monospace, monospace;--fs-eyebrow: 13px;--ls-fs-eyebrow: .14em;--fs-body-sm: 14px;--fs-body: 16px;--fs-body-lg: 18px;--fs-h4: 22px;--fs-h3: 28px;--fs-h2: 40px;--fs-h1: 52px;--fs-display: 64px;--ls-fs-display: -.01em;--fs-display-xl: 84px}:root[data-theme=dark]{color-scheme:dark;--campus-navy: #7fb0dc;--campus-navy-hover: #9cc3e6;--campus-navy-press: #b5d3ee;--campus-navy-soft: rgba(127, 176, 220, .14);--campus-navy-line: rgba(127, 176, 220, .32);--campus-gold: #d6a35a;--campus-gold-hover: #e0b574;--campus-gold-soft: rgba(214, 163, 90, .16);--bg-canvas: #0b0b0c;--bg-raised: #121214;--surface: #18181b;--surface-alt: #121214;--surface-hover: #202024;--line: #2a2a2f;--line-strong: #3a3a41;--bg-input: #1b2330;--line-input: #4a5566;--ink: #ededef;--ink-2: #b9b9bf;--ink-muted: #8f8f97;--ink-on-accent: #0b0b0c;--app-canvas: #0b0b0c;--app-raised: #121214;--app-surface: #18181b;--app-line: #2a2a2f;--app-line-strong: #3a3a41;--app-ink: #ededef;--app-ink-2: #b9b9bf;--app-ink-muted: #8f8f97;--success: #5fbf8a;--success-soft: #173325;--warning: #e0a84a;--warning-soft: #3a2c14;--danger: #ef7d6f;--danger-soft: #3d1d19;--info: #7fb0dc;--info-soft: #172a3b;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-card: 0 1px 2px rgba(0, 0, 0, .35), 0 14px 32px -12px rgba(0, 0, 0, .5);--shadow-hover: 0 2px 4px rgba(0, 0, 0, .4), 0 22px 44px -16px rgba(0, 0, 0, .6);--shadow-pop: 0 20px 48px -16px rgba(0, 0, 0, .65);--shadow-glow: 0 1px 2px rgba(0, 0, 0, .35), 0 14px 32px -12px rgba(0, 0, 0, .5)}.cf-btn[data-v-1f93799c]{font:inherit;font-family:var(--font-ui, system-ui);font-weight:600;font-size:.9rem;padding:10px 18px;border-radius:var(--r-pill, 999px);cursor:pointer;border:1px solid transparent}.cf-btn[data-v-1f93799c]:disabled{opacity:.6;cursor:not-allowed}.cf-primary[data-v-1f93799c]{background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff)}.cf-primary[data-v-1f93799c]:hover:not(:disabled){background:var(--campus-navy-hover, #1b3e5a)}.cf-ghost[data-v-1f93799c]{background:transparent;color:var(--ink, #211f1a);border-color:var(--line-strong, #d9cfba)}.cf-ghost[data-v-1f93799c]:hover:not(:disabled){border-color:var(--campus-navy, #234e70)}.cf-icon-btn[data-v-d5a853d3]{display:inline-grid;place-items:center;padding:0;width:38px;height:38px;border:0;background:transparent;border-radius:8px;color:var(--app-ink-2, #4a5560);cursor:pointer;font-size:1rem}.cf-icon-btn[data-v-d5a853d3]:hover:not(:disabled){background:var(--app-raised, #eef1f5)}.cf-icon-btn[data-v-d5a853d3]:disabled{opacity:.6;cursor:not-allowed}.cf-badge[data-v-0f87c773]{display:inline-block;font-family:var(--font-ui, system-ui);font-size:.74rem;font-weight:600;padding:3px 10px;border-radius:var(--r-pill, 999px)}.cf-success[data-v-0f87c773]{background:var(--success-soft, #e6f1ea);color:var(--success, #2e7d52)}.cf-warning[data-v-0f87c773]{background:var(--warning-soft, #f6ecdb);color:var(--warning, #b3781f)}.cf-danger[data-v-0f87c773]{background:var(--danger-soft, #f6e4e1);color:var(--danger, #b23b2e)}.cf-info[data-v-0f87c773]{background:var(--info-soft, #e6edf3);color:var(--info, #234e70)}.cf-neutral[data-v-0f87c773]{background:var(--app-raised, #eef1f5);color:var(--app-ink-2, #4a5560)}.cf-card[data-v-ba6cf9bc]{background:var(--surface, #fff);border:1px solid var(--app-line, var(--line, #dde3ea));border-radius:var(--r-card, 14px);box-shadow:var(--shadow-card, 0 1px 2px rgba(20,30,45,.05));overflow:hidden}.cf-card-head[data-v-ba6cf9bc]{padding:14px 18px;border-bottom:1px solid var(--app-line, var(--line, #dde3ea))}.cf-card-title[data-v-ba6cf9bc]{margin:0;font-family:var(--font-ui, system-ui);font-weight:600;font-size:1rem;color:var(--app-ink, var(--ink, #1b2530))}.cf-padded[data-v-ba6cf9bc]{padding:0}.cf-menu[data-v-75e16d3e]{background:var(--surface, #fff);border:1px solid var(--app-line, #dde3ea);border-radius:14px;box-shadow:var(--shadow-pop, 0 12px 34px rgba(20, 30, 45, .24));padding:12px;z-index:50;min-width:240px}.cf-menu-item[data-v-d224307f]{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;border:0;background:transparent;padding:10px 6px;border-bottom:1px solid var(--app-line, #dde3ea);cursor:pointer;color:var(--app-ink, #1b2530)}.cf-menu-item b[data-v-d224307f]{font-size:.9rem;color:var(--app-ink, #1b2530)}.cf-menu-item span[data-v-d224307f]{font-size:.76rem;color:var(--app-ink-muted, #5f6b78)}.cf-menu-item.cf-menu-item--danger[data-v-d224307f]{color:var(--danger, #b23b2e);font-weight:600}.cf-field[data-v-af19d0fe]{display:flex;flex-direction:column;gap:6px}.cf-label[data-v-af19d0fe]{font-family:var(--font-ui, system-ui);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2, #57534a);font-weight:600}.cf-req[data-v-af19d0fe]{color:var(--danger, #b23b2e)}.cf-hint[data-v-af19d0fe]{font-size:.78rem;color:var(--ink-muted, #8e887c);margin:0}.cf-error[data-v-af19d0fe]{font-size:.78rem;color:var(--danger, #b23b2e);margin:0}.cf-input[data-v-6521f991]{width:100%;box-sizing:border-box;font:inherit;padding:9px 12px;border-radius:var(--r-input, 10px);border:1px solid var(--line-input, #c8d0da);background:var(--bg-input, #eef4fa);color:var(--ink, #211f1a)}.cf-input[data-v-6521f991]:focus{outline:none;border-color:var(--campus-navy, #234e70);box-shadow:0 0 0 1px var(--campus-navy, #234e70)}.cf-input[aria-invalid=true][data-v-6521f991]{border-color:var(--danger, #b23b2e)}.cf-input[data-v-6521f991]:disabled{opacity:.6;cursor:not-allowed}.cf-password[data-v-2c685bb0]{position:relative}.cf-input[data-v-2c685bb0]{width:100%;box-sizing:border-box;font:inherit;padding:9px 44px 9px 12px;border-radius:var(--r-input, 10px);border:1px solid var(--line-input, #c8d0da);background:var(--bg-input, #eef4fa);color:var(--ink, #211f1a)}.cf-input[data-v-2c685bb0]:focus{outline:none;border-color:var(--campus-navy, #234e70);box-shadow:0 0 0 1px var(--campus-navy, #234e70)}.cf-input[aria-invalid=true][data-v-2c685bb0]{border-color:var(--danger, #b23b2e)}.cf-input[data-v-2c685bb0]:disabled{opacity:.6;cursor:not-allowed}.cf-reveal[data-v-2c685bb0]{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--ink-2, #57534a);cursor:pointer}.cf-reveal svg[data-v-2c685bb0]{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cf-reveal[data-v-2c685bb0]:hover:not(:disabled){color:var(--ink, #211f1a)}.cf-reveal[data-v-2c685bb0]:focus-visible{outline:2px solid var(--campus-navy, #234e70);outline-offset:1px}.cf-reveal[data-v-2c685bb0]:disabled{opacity:.6;cursor:not-allowed}.cf-select[data-v-b9642302]{width:100%;font:inherit;padding:9px 12px;border-radius:var(--r-input, 10px);border:1px solid var(--line-input, #c8d0da);background:var(--bg-input, #eef4fa);color:var(--ink, #211f1a)}.cf-select[data-v-b9642302]:focus{outline:none;border-color:var(--campus-navy, #234e70);box-shadow:0 0 0 1px var(--campus-navy, #234e70)}.cf-select[aria-invalid=true][data-v-b9642302]{border-color:var(--danger, #b23b2e)}.cf-flag[data-v-094b1314]{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;color:var(--ink, #211f1a);cursor:pointer}.cf-flag input[data-v-094b1314]{accent-color:var(--campus-navy, #234e70);width:16px;height:16px}.cf-form[data-v-9bd5fc86]{background:var(--surface, #fff);border:1px solid var(--line, #e8e0d0);border-radius:var(--r-card, 14px);padding:var(--sp-6, 32px);box-shadow:var(--shadow-card, 0 1px 2px rgba(45,34,12,.05))}.cf-form-title[data-v-9bd5fc86]{font-family:var(--font-ui, system-ui);font-weight:600;margin:0 0 var(--sp-5, 24px);color:var(--ink, #211f1a)}.cf-grid[data-v-9bd5fc86]{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5, 24px)}.cf-grid[data-v-9bd5fc86]>.cf-full{grid-column:1 / -1}@media (max-width: 560px){.cf-grid[data-v-9bd5fc86]{grid-template-columns:1fr}}.cf-api-error[data-v-9bd5fc86]{color:var(--danger, #b23b2e);font-size:.85rem;margin:var(--sp-4, 16px) 0 0}.cf-actions[data-v-9bd5fc86]{display:flex;justify-content:flex-end;gap:var(--sp-3, 12px);margin-top:var(--sp-5, 24px);padding-top:var(--sp-5, 24px);border-top:1px solid var(--line, #e8e0d0)}.cf-btn[data-v-9bd5fc86]{font:inherit;font-family:var(--font-ui, system-ui);font-weight:600;padding:9px 18px;border-radius:var(--r-pill, 999px);cursor:pointer;border:1px solid transparent}.cf-primary[data-v-9bd5fc86]{background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff)}.cf-primary[data-v-9bd5fc86]:disabled{opacity:.6;cursor:not-allowed}.cf-ghost[data-v-9bd5fc86]{background:transparent;color:var(--ink, #211f1a);border-color:var(--line-strong, #d9cfba)}.cf-filters[data-v-36c064c4]{background:var(--surface, #fff);border:1px solid var(--line, #e8e0d0);border-radius:var(--r-card, 14px);padding:var(--sp-5, 24px)}.cf-filters-head[data-v-36c064c4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-3, 12px)}.cf-filters-title[data-v-36c064c4]{font-family:var(--font-ui, system-ui);font-weight:600;font-size:.9rem;color:var(--ink, #211f1a)}.cf-clear[data-v-36c064c4]{border:0;background:transparent;color:var(--campus-navy, #234e70);font:inherit;font-size:.82rem;cursor:pointer}.cf-filter[data-v-69636513]{padding:var(--sp-4, 16px) 0;border-top:1px solid var(--line, #e8e0d0)}.cf-filter[data-v-69636513]:first-child{border-top:0;padding-top:0}.cf-filter-label[data-v-69636513]{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-ui, system-ui);font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink, #211f1a);font-weight:600;margin-bottom:var(--sp-2, 8px)}.cf-filter-count[data-v-69636513]{color:var(--ink-muted, #8e887c);font-weight:500}.cf-filter-body[data-v-69636513] input[type=text],.cf-filter-body[data-v-69636513] select{width:100%;font:inherit;padding:7px 10px;border-radius:var(--r-sm, 8px);border:1px solid var(--line, #e8e0d0);background:var(--surface, #fff);color:var(--ink, #211f1a)}.cf-filter-body[data-v-69636513] input[type=text]:focus,.cf-filter-body[data-v-69636513] select:focus{outline:2px solid var(--campus-navy, #234e70);outline-offset:1px;border-color:var(--line, #e8e0d0)}.cf-logo[data-v-b5edf8a4]{display:inline-block;height:32px;line-height:0}.cf-logo[data-v-b5edf8a4] svg{height:100%;width:auto;fill:currentColor}.cds-theme-ico[data-v-83093a5f]{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.cds-theme-ico .cds-theme-ico-fill[data-v-83093a5f]{fill:currentColor;stroke:none}.cds-theme-choices[data-v-e4082634]{border:0;margin:0;padding:0;display:grid;gap:2px;min-width:180px}.cds-theme-legend[data-v-e4082634]{font-family:var(--font-ui, system-ui);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--app-ink-muted, #5f6b78);margin:0 0 8px;padding:0}.cds-theme-opt[data-v-e4082634]{position:relative;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;cursor:pointer;font-family:var(--font-ui, system-ui);font-size:.9rem;color:var(--app-ink, #1b2530)}.cds-theme-opt input[data-v-e4082634]{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;cursor:pointer}.cds-theme-opt[data-v-e4082634]:hover{background:var(--app-canvas, #f9fafb)}.cds-theme-opt[data-v-e4082634]:has(input:checked){color:var(--campus-navy, #234e70);font-weight:600;background:var(--app-canvas, #f9fafb)}.cds-theme-opt[data-v-e4082634]:has(input:focus-visible){outline:2px solid var(--campus-navy, #234e70);outline-offset:1px}.cds-shell-ico[data-v-4611c1b6]{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.cds-row[data-v-ff1cc511]{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;margin:0;border:0;border-radius:10px;background:transparent;cursor:pointer;text-align:left;font-family:var(--font-ui, system-ui);font-size:.9rem;font-weight:500;color:var(--app-ink, #1b2530);transition:background var(--dur-fast, .14s) var(--ease, ease)}.cds-row .cds-row-label[data-v-ff1cc511]{flex:1;min-width:0}.cds-row[data-v-ff1cc511]:hover{background:var(--app-canvas, #f9fafb)}.cds-row[data-v-ff1cc511]:focus-visible{outline:2px solid var(--campus-navy, #234e70);outline-offset:1px}.cds-row[data-tone=danger][data-v-ff1cc511]{color:var(--danger, #b23b2e)}.cds-row[data-tone=danger][data-v-ff1cc511]:hover{background:var(--danger-soft, #f6e4e1)}.cds-row[data-size=lg][data-v-ff1cc511]{gap:12px;padding:10px 12px;border-radius:8px;font-size:.95rem}.cds-row[data-size=lg][data-tone=default][data-v-ff1cc511]{color:var(--app-ink-2, #4a5560)}.cds-topbar[data-v-564ffa12]{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--surface, #fff);border-bottom:1px solid var(--app-line, #dde3ea);padding:10px 20px;position:relative}.cds-left[data-v-564ffa12]{display:flex;align-items:center;gap:16px;min-width:0}.cds-lockup[data-v-564ffa12]{display:inline-flex;align-items:center;color:var(--app-ink, #1b2530)}.cds-lockup .cds-pennant[data-v-564ffa12]{height:30px;width:auto;flex-shrink:0}.cds-rule[data-v-564ffa12]{width:1px;height:28px;background:var(--app-line-strong, #c5ced7);margin:0 14px}.cds-nm-icon[data-v-564ffa12]{width:28px;height:28px;margin-right:10px;flex-shrink:0}.cds-nm[data-v-564ffa12]{font-family:var(--font-ui, system-ui);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cds-inst[data-v-564ffa12]{display:flex;align-items:center;gap:10px;padding:5px 14px 5px 6px;border:1px solid var(--app-line, #dde3ea);border-radius:999px;font-family:var(--font-ui, system-ui);font-size:.92rem;color:var(--app-ink, #1b2530);white-space:nowrap}.cds-inst .cds-inst-logo[data-v-564ffa12]{width:22px;height:22px;border-radius:6px;background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff);display:grid;place-items:center;font-size:11px;font-weight:700;object-fit:cover}.cds-right[data-v-564ffa12]{display:flex;align-items:center;gap:6px}.cds-actions[data-v-564ffa12]{display:flex;align-items:center;gap:8px;margin-right:10px}.cds-ico[data-v-564ffa12]{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.cds-switcher-ico[data-v-564ffa12]{fill:currentColor;stroke:none}.cds-search[data-v-564ffa12]{position:relative;margin-right:10px}.cds-search .cds-search-ico[data-v-564ffa12]{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--app-ink-muted, #5f6b78);pointer-events:none}.cds-search input[data-v-564ffa12]{width:230px;border:1px solid var(--app-line, #dde3ea);background:var(--app-canvas, #f9fafb);border-radius:999px;padding:8px 14px 8px 38px;font:inherit;font-size:.9rem;color:var(--app-ink, #1b2530)}.cds-search input[data-v-564ffa12]::placeholder{color:var(--app-ink-muted, #5f6b78)}.cds-notif[data-v-564ffa12]{position:relative}.cds-notif .cds-dot[data-v-564ffa12]{position:absolute;top:8px;right:9px;width:7px;height:7px;border-radius:999px;background:var(--danger, #b23b2e);box-shadow:0 0 0 2px var(--surface, #fff)}.cds-guest[data-v-564ffa12]{display:inline-flex;align-items:stretch;margin-left:6px}.cds-guest .cds-auth[data-v-564ffa12],.cds-guest .cds-auth-more[data-v-564ffa12]{border:0;cursor:pointer;background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff);font-family:var(--font-ui, system-ui);font-weight:600;font-size:.86rem}.cds-guest .cds-auth[data-v-564ffa12]:focus-visible,.cds-guest .cds-auth-more[data-v-564ffa12]:focus-visible{outline:2px solid var(--campus-navy, #234e70);outline-offset:2px}.cds-guest .cds-auth[data-v-564ffa12]{border-radius:999px 0 0 999px;padding:7px 12px 7px 14px}.cds-guest .cds-auth-more[data-v-564ffa12]{display:inline-flex;align-items:center;border-radius:0 999px 999px 0;padding:0 8px;border-left:1px solid color-mix(in srgb,var(--ink-on-accent, #fff) 35%,transparent)}.cds-guest .cds-auth-more .cds-caret[data-v-564ffa12]{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.cds-avatar[data-v-564ffa12]{width:34px;height:34px;border-radius:999px;background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff);border:0;font-family:var(--font-ui, system-ui);font-weight:600;font-size:.82rem;cursor:pointer;margin-left:6px;overflow:hidden;padding:0}.cds-avatar img[data-v-564ffa12]{width:100%;height:100%;object-fit:cover}.cds-pop-apps[data-v-564ffa12]{position:absolute;top:58px;right:60px}.cds-pop-notif[data-v-564ffa12]{position:absolute;top:58px;right:170px}.cds-pop-acct[data-v-564ffa12]{position:absolute;top:58px;right:12px}.cds-pop-theme[data-v-564ffa12]{position:absolute;top:58px;right:96px;min-width:0}.cds-pop-h[data-v-564ffa12]{font-family:var(--font-ui, system-ui);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--app-ink-muted, #5f6b78);margin:0 0 10px}.cds-tiles[data-v-564ffa12]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cds-tile[data-v-564ffa12]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;border:1px solid transparent;border-radius:12px;background:transparent;cursor:pointer;font-family:var(--font-ui, system-ui);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem;color:var(--app-ink, #1b2530);transition:background var(--dur-fast, .14s) var(--ease, ease),border-color var(--dur-fast, .14s) var(--ease, ease)}.cds-tile[data-v-564ffa12]:hover,.cds-tile[data-v-564ffa12]:focus-visible{border-color:var(--app-line, #dde3ea);background:var(--app-canvas, #f9fafb)}.cds-tile[data-v-564ffa12]:focus-visible{outline:2px solid var(--campus-navy, #234e70);outline-offset:2px}.cds-tile[aria-current=true][data-v-564ffa12]{color:var(--campus-navy, #234e70)}.cds-tile-icon[data-v-564ffa12]{width:44px;height:44px}.cds-pop-acct.cds-acct[data-v-564ffa12]{padding:6px;min-width:264px}.cds-pop-acct.cds-acct .cds-acct-group[data-v-564ffa12]{margin:0 -6px;padding:6px}.cds-pop-acct.cds-acct .cds-acct-group+.cds-acct-group[data-v-564ffa12]{border-top:1px solid var(--app-line, #dde3ea)}.cds-pop-acct.cds-acct .cds-acct-head[data-v-564ffa12]{display:flex;align-items:center;gap:12px;padding:8px 16px 12px}.cds-pop-acct.cds-acct .cds-acct-who[data-v-564ffa12]{min-width:0}.cds-pop-acct.cds-acct .cds-acct-app[data-v-564ffa12]{display:grid;gap:6px;padding:10px 12px}.cds-acct-avatar[data-v-564ffa12]{flex-shrink:0;width:36px;height:36px;border-radius:999px;overflow:hidden;display:grid;place-items:center;background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff);font-family:var(--font-ui, system-ui);font-weight:600;font-size:.82rem}.cds-acct-avatar img[data-v-564ffa12]{width:100%;height:100%;object-fit:cover}.cds-an[data-v-564ffa12]{font-family:var(--font-ui, system-ui);font-weight:600}.cds-ae[data-v-564ffa12]{font-size:.78rem;color:var(--app-ink-muted, #5f6b78);font-family:var(--font-mono, monospace);overflow-wrap:anywhere}.cds-empty[data-v-564ffa12]{font-size:.85rem;color:var(--app-ink-muted, #5f6b78)}.cds-notifs[data-v-564ffa12]{list-style:none;margin:0;padding:0;display:grid;gap:10px;min-width:260px}.cds-notifs li[data-v-564ffa12]{display:grid;gap:2px;font-size:.85rem;color:var(--app-ink, #1b2530)}.cds-notifs time[data-v-564ffa12]{font-size:.75rem;color:var(--app-ink-muted, #5f6b78)}.cds-topbar[data-mobile][data-v-564ffa12]{gap:8px;padding:8px 10px}.cds-topbar[data-mobile] .cds-left[data-v-564ffa12]{gap:4px}.cds-topbar[data-mobile] .cds-lockup[data-v-564ffa12]{min-width:0}.cds-topbar[data-mobile] .cds-nm-icon[data-v-564ffa12]{width:26px;height:26px;margin-right:8px}.cds-topbar[data-mobile] .cds-right[data-v-564ffa12]{gap:2px}.cds-topbar[data-mobile] .cds-pop-apps[data-v-564ffa12],.cds-topbar[data-mobile] .cds-pop-notif[data-v-564ffa12]{top:52px;right:8px;max-width:calc(100vw - 16px)}.cds-panel[data-v-d39fc746]{background:var(--surface, #fff);border-left:1px solid var(--app-line, #dde3ea);display:flex;flex-direction:column;overflow:auto}.cds-panel-head[data-v-d39fc746]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--app-line, #dde3ea)}.cds-panel-title[data-v-d39fc746]{font-family:var(--font-ui, system-ui);font-weight:600;font-size:.9rem;color:var(--app-ink, #1b2530)}.cds-panel-toggle[data-v-d39fc746]{border:0;background:transparent;cursor:pointer;font-size:1.1rem;color:var(--app-ink-muted, #5f6b78)}.cds-panel-body[data-v-d39fc746]{padding:14px}.cds-drawer[data-v-5db81195]{display:contents}.cds-drawer[data-mobile][data-v-5db81195]{position:fixed;inset:0 auto 0 0;z-index:81;width:min(100%,360px);display:flex;flex-direction:column;overflow:hidden;background:var(--surface, #fff);color:var(--app-ink, #1b2530);box-shadow:var(--shadow-pop, 0 20px 48px -16px rgba(20, 30, 45, .24));transform:translate(-100%);visibility:hidden;transition:transform var(--dur, .24s) var(--ease, ease),visibility 0s linear var(--dur, .24s)}.cds-drawer[data-mobile][data-open][data-v-5db81195]{transform:none;visibility:visible;transition:transform var(--dur, .24s) var(--ease, ease)}.cds-scrim[data-v-5db81195]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0f172073;opacity:0;pointer-events:none;transition:opacity var(--dur, .24s) var(--ease, ease)}.cds-scrim[data-open][data-v-5db81195]{opacity:1;pointer-events:auto}@media (max-width: 480px){.cds-drawer[data-mobile][data-v-5db81195]{width:100%}}@media (prefers-reduced-motion: reduce){.cds-drawer[data-mobile][data-v-5db81195],.cds-drawer[data-mobile][data-open][data-v-5db81195],.cds-scrim[data-v-5db81195]{transition:none}}.cds-drawer-scroll[data-v-5db81195]{display:contents}.cds-drawer[data-mobile] .cds-drawer-scroll[data-v-5db81195]{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.cds-drawer-head[data-v-5db81195]{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:10px 12px 10px 16px;background:var(--surface, #fff);border-bottom:1px solid var(--app-line, #dde3ea)}.cds-drawer-head .cds-drawer-logo[data-v-5db81195]{height:28px;width:auto;color:var(--app-ink, #1b2530)}.cds-ico[data-v-5db81195]{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.cds-drawer-id[data-v-5db81195]{display:grid;gap:12px;padding:16px;border-bottom:1px solid var(--app-line, #dde3ea)}.cds-drawer-user[data-v-5db81195]{display:flex;align-items:center;gap:12px;min-width:0}.cds-drawer-user .cds-drawer-who[data-v-5db81195]{flex:1;min-width:0}.cds-drawer-user .cds-an[data-v-5db81195]{font-family:var(--font-ui, system-ui);font-weight:600}.cds-drawer-user .cds-ae[data-v-5db81195]{font-size:.78rem;color:var(--app-ink-muted, #5f6b78);font-family:var(--font-mono, monospace);overflow-wrap:anywhere}.cds-drawer-user .cds-drawer-settings[data-v-5db81195]{flex-shrink:0}.cds-drawer-avatar[data-v-5db81195]{flex-shrink:0;width:40px;height:40px;border-radius:999px;overflow:hidden;display:grid;place-items:center;background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff);font-family:var(--font-ui, system-ui);font-weight:600;font-size:.9rem}.cds-drawer-avatar img[data-v-5db81195]{width:100%;height:100%;object-fit:cover}.cds-drawer-auth[data-v-5db81195]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cds-drawer-auth button[data-v-5db81195]{border-radius:999px;padding:9px 14px;cursor:pointer;font-family:var(--font-ui, system-ui);font-weight:600;font-size:.9rem}.cds-drawer-auth button[data-v-5db81195]:focus-visible{outline:2px solid var(--campus-navy, #234e70);outline-offset:2px}.cds-drawer-auth .cds-drawer-signin[data-v-5db81195]{border:0;background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff)}.cds-drawer-auth .cds-drawer-signup[data-v-5db81195]{border:1px solid var(--app-line-strong, #c5ced7);background:transparent;color:var(--app-ink, #1b2530)}.cds-inst[data-v-5db81195]{display:flex;align-items:center;gap:10px;justify-self:start;padding:5px 14px 5px 6px;border:1px solid var(--app-line, #dde3ea);border-radius:999px;font-family:var(--font-ui, system-ui);font-size:.92rem;color:var(--app-ink, #1b2530)}.cds-inst .cds-inst-logo[data-v-5db81195]{width:22px;height:22px;border-radius:6px;background:var(--campus-navy, #234e70);color:var(--ink-on-accent, #fff);display:grid;place-items:center;font-size:11px;font-weight:700;object-fit:cover}.cds-search[data-v-5db81195]{position:relative;margin:14px 16px 0}.cds-search .cds-search-ico[data-v-5db81195]{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--app-ink-muted, #5f6b78);pointer-events:none}.cds-search input[data-v-5db81195]{box-sizing:border-box;width:100%;border:1px solid var(--app-line, #dde3ea);background:var(--app-canvas, #f9fafb);border-radius:999px;padding:9px 14px 9px 38px;font:inherit;font-size:.95rem;color:var(--app-ink, #1b2530)}.cds-search input[data-v-5db81195]::placeholder{color:var(--app-ink-muted, #5f6b78)}.cds-drawer-actions[data-v-5db81195]{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:14px 16px;border-bottom:1px solid var(--app-line, #dde3ea)}.cds-drawer-actions[data-v-5db81195]:empty{display:none}.cds-drawer-more[data-v-5db81195]{padding:8px 16px 16px}.cds-drawer-more .cds-acct-app[data-v-5db81195]{display:grid;gap:6px;padding:10px 0}.cds-drawer-end[data-v-5db81195]{flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--app-line, #dde3ea);background:var(--surface, #fff)}.cds-drawer-end .cds-drawer-signout[data-v-5db81195]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:1px solid var(--app-line-strong, #c5ced7);border-radius:999px;padding:9px 14px;background:transparent;color:var(--danger, #b23b2e);cursor:pointer;font-family:var(--font-ui, system-ui);font-weight:600;font-size:.9rem;transition:background var(--dur-fast, .14s) var(--ease, ease)}.cds-drawer-end .cds-drawer-signout .cds-shell-ico[data-v-5db81195]{width:18px;height:18px}.cds-drawer-end .cds-drawer-signout[data-v-5db81195]:hover{background:var(--danger-soft, #f6e4e1)}.cds-drawer-end .cds-drawer-signout[data-v-5db81195]:focus-visible{outline:2px solid var(--campus-navy, #234e70);outline-offset:2px}.cds-shell{display:flex;flex-direction:column;height:100%;--nav-w: 222px;--panel-w: 304px;background:var(--app-canvas, #f9fafb);color:var(--app-ink, #1b2530);font-family:var(--font-body, system-ui, sans-serif);position:relative}.cds-body{display:grid;flex:1;min-height:0}.cds-body[data-layout=one]{grid-template-columns:var(--nav-w) 1fr}.cds-body[data-layout=two]{grid-template-columns:var(--nav-w) 1fr var(--panel-w)}.cds-body[data-layout=two][data-panel=collapsed]{grid-template-columns:var(--nav-w) 1fr}.cds-body[data-layout=focus]{grid-template-columns:1fr}.cds-nav{background:var(--surface, #fff);border-right:1px solid var(--app-line, #dde3ea);overflow:auto;padding:14px 10px}.cds-main{overflow:auto;min-width:0}.cds-reveal{position:absolute;right:0;top:64px;background:var(--surface, #fff);border:1px solid var(--app-line, #dde3ea);border-right:0;border-radius:8px 0 0 8px;padding:8px 6px;cursor:pointer;color:var(--app-ink-2, #4a5560)}@media (max-width: 1120px){.cds-body[data-layout=two]{grid-template-columns:var(--nav-w) 1fr}.cds-panel{display:none}}.cds-shell[data-mobile] .cds-body[data-layout][data-panel]{grid-template-columns:1fr}.cds-shell[data-mobile] .cds-nav{flex:none;overflow:visible;border-right:0}.cds-crumbs[data-v-62bad072]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px;border-bottom:1px solid var(--app-line, #dde3ea);background:var(--app-canvas, #f9fafb)}.cds-crumbs-trail[data-v-62bad072]{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;min-width:0}.cds-crumbs-item[data-v-62bad072]{display:inline-flex;align-items:center;gap:6px;min-width:0}.cds-crumb[data-v-62bad072]{font-family:var(--font-ui, system-ui);font-size:13px;font-weight:500;color:var(--app-ink-2, #4a5560)}.cds-crumb--link[data-v-62bad072]{text-decoration:none;transition:color .15s ease}.cds-crumb--link[data-v-62bad072]:hover{color:var(--app-ink, #1b2530)}.cds-crumb--current[data-v-62bad072]{color:var(--app-ink, #1b2530);overflow-wrap:anywhere}.cds-crumbs-sep[data-v-62bad072]{font-size:12px;color:var(--app-ink-muted, #5f6b78);opacity:.6;-webkit-user-select:none;user-select:none}.cds-crumbs-actions[data-v-62bad072]{display:flex;align-items:center;gap:16px;flex-shrink:0}@media (max-width: 640px){.cds-crumbs[data-v-62bad072]{padding:10px 16px;gap:12px}}:root{--bg-raised: var(--app-raised);--surface-alt: var(--app-canvas);--surface-hover: var(--app-canvas);--line: var(--app-line);--line-strong: var(--app-line-strong);--ink: var(--app-ink);--ink-2: var(--app-ink-2);--ink-muted: var(--app-ink-muted)}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}html,body{margin:0;background:var(--app-canvas);color:var(--ink-2);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--campus-navy)}.admin-view{animation:admin-fade-in var(--dur-slow) var(--ease) both}@keyframes admin-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.admin-view-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-3)}.admin-view-title{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--display-weight);color:var(--ink);margin:0 0 4px;letter-spacing:var(--ls-fs-display)}.admin-view-sub{font-family:var(--font-ui);font-size:var(--fs-body-sm);color:var(--ink-muted);margin:0}.admin-btn-primary{display:inline-flex;align-items:center;gap:var(--sp-2);padding:9px 16px;background:var(--campus-blue);color:var(--ink-on-accent);border:none;border-radius:var(--r-sm);font-family:var(--font-ui);font-size:var(--fs-body-sm);font-weight:600;text-decoration:none;cursor:pointer;transition:background var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.admin-btn-primary:hover{background:var(--campus-navy-hover);box-shadow:var(--shadow-hover);color:var(--ink-on-accent)!important}.admin-btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.admin-filters{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap}.admin-input,.admin-select{background:var(--surface);border:1px solid var(--line);color:var(--ink);font-family:var(--font-ui);font-size:var(--fs-body-sm);padding:8px 12px;border-radius:var(--r-input);outline:none;transition:border-color var(--dur-fast) var(--ease)}.admin-input:focus,.admin-select:focus{border-color:var(--campus-blue)}.admin-input{min-width:200px}.admin-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}.admin-table-wrap{border:1px solid var(--line);border-radius:var(--r-card);overflow-x:auto;background:var(--surface);box-shadow:var(--shadow-card)}.admin-table{width:100%;border-collapse:collapse}.admin-table thead tr{background:var(--surface);border-bottom:1px solid var(--line)}.admin-table th{padding:10px 16px;text-align:left;font-family:var(--font-ui);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.admin-table th:first-child{padding-left:24px}.admin-table th:last-child{padding-right:24px}.admin-table .num{text-align:right;font-variant-numeric:tabular-nums}.admin-row{border-bottom:1px solid var(--line);cursor:pointer;transition:background var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}@media (prefers-reduced-motion: no-preference){.admin-row{animation:admin-row-in var(--dur) var(--ease) both}}.admin-row:last-child{border-bottom:none}.admin-row:hover{background:var(--surface-hover);box-shadow:inset 2px 0 0 var(--campus-navy)}.admin-row.admin-row--static{cursor:default}.admin-row.admin-row--static:hover{background:transparent;box-shadow:none}@keyframes admin-row-in{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.admin-table td{padding:12px 16px;font-family:var(--font-ui);font-size:var(--fs-body-sm);color:var(--ink)}.admin-table td:first-child{padding-left:24px}.admin-table td:last-child{padding-right:24px}.admin-cell-muted{color:var(--ink-muted)}.admin-cell-empty{text-align:center;color:var(--ink-muted);padding:var(--sp-7)!important}.admin-form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--sp-6);box-shadow:var(--shadow-card)}.admin-form-section{margin-bottom:var(--sp-6);padding-left:var(--sp-4);border-left:2px solid var(--campus-navy-line)}.admin-form-section-title{font-family:var(--font-display);font-size:var(--fs-body-lg);font-weight:600;color:var(--ink);margin:0 0 var(--sp-4);letter-spacing:.02em}.admin-form-section--ruled{padding-left:0;border-left:0}.admin-form-section--ruled .admin-form-section-title{display:flex;align-items:center;gap:var(--sp-3)}.admin-form-section--ruled .admin-form-section-title:after{content:"";flex:1;height:1px;background:var(--line)}.admin-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-4)}@media (max-width: 720px){.admin-form-grid{grid-template-columns:1fr}}.admin-form-field-full{grid-column:1 / -1}.admin-form-field label{display:block;font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--ink-2);margin-bottom:var(--sp-1);letter-spacing:.04em;text-transform:uppercase}.admin-form-field input,.admin-form-field select,.admin-form-field textarea{width:100%;background:var(--bg-input);border:1px solid var(--line-input);color:var(--ink);font-family:var(--font-ui);font-size:var(--fs-body-sm);padding:9px 12px;border-radius:var(--r-input);outline:none;transition:border-color var(--dur-fast) var(--ease)}.admin-form-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}.admin-form-field input:focus,.admin-form-field select:focus,.admin-form-field textarea:focus{border-color:var(--campus-blue)}.admin-form-field textarea{min-height:88px;resize:vertical}.admin-form-error{display:block;font-size:12px;color:var(--danger);margin-top:4px}.admin-api-error{margin-top:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);background:var(--danger-soft);border:1px solid color-mix(in srgb,var(--danger) 25%,transparent);font-family:var(--font-ui);font-size:var(--fs-body-sm);color:var(--danger)}.admin-section-note{margin:0 0 var(--sp-3);max-width:72ch;font-size:var(--fs-body-sm);color:var(--ink-2)}.admin-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3)}.admin-action-row .admin-action-hint{font-size:12px;color:var(--ink-muted)}.admin-outcome{display:flex;gap:var(--sp-3);align-items:flex-start;margin-top:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);font-size:var(--fs-body-sm);color:var(--ink)}.admin-outcome>svg{flex-shrink:0;margin-top:2px;color:var(--ink-muted)}.admin-outcome p{margin:2px 0 0;color:var(--ink-2)}.admin-outcome a{display:inline-block;margin-top:var(--sp-2);font-weight:600;color:var(--campus-blue);text-underline-offset:3px}.admin-outcome.is-ok{border-color:color-mix(in srgb,var(--success) 40%,var(--line))}.admin-outcome.is-ok>svg{color:var(--success)}.admin-outcome.is-warn{border-color:color-mix(in srgb,var(--warning) 45%,var(--line));background:color-mix(in srgb,var(--warning) 5%,var(--surface))}.admin-outcome.is-warn>svg{color:var(--warning)}.admin-form-actions{display:flex;justify-content:flex-end;gap:var(--sp-3);margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line)}.admin-btn-ghost{display:inline-flex;align-items:center;gap:var(--sp-2);padding:9px 16px;background:transparent;border:1px solid var(--campus-navy);color:var(--campus-navy);border-radius:var(--r-sm);font-family:var(--font-ui);font-size:var(--fs-body-sm);font-weight:600;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.admin-btn-ghost:hover{border-color:var(--campus-navy-hover);color:var(--campus-navy-hover)}.admin-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.admin-btn-ghost:disabled:hover{border-color:var(--campus-navy);color:var(--campus-navy)}.admin-btn-ghost.danger,.admin-btn-ghost.danger:hover{border-color:var(--danger);color:var(--danger)}.admin-badge{display:inline-block;padding:3px 8px;border-radius:var(--r-pill);font-family:var(--font-ui);font-size:12px;font-weight:600}.admin-badge-active{background:var(--success-soft);color:var(--success)}.admin-badge-inactive{background:color-mix(in srgb,var(--ink-muted) 12%,transparent);color:var(--ink-muted)}.admin-check{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-ui);font-size:var(--fs-body-sm);color:var(--ink-2);cursor:pointer}.admin-state-msg{font-family:var(--font-ui);font-size:var(--fs-body-sm);color:var(--ink-muted);padding:var(--sp-3) 0}.admin-state-msg-error{color:var(--danger)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--ink) 50%,transparent);display:flex;align-items:center;justify-content:center;z-index:50;padding:var(--sp-4)}.modal-backdrop.confirm-backdrop{z-index:60}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--sp-5);width:100%;max-width:520px;max-height:85vh;overflow-y:auto}.modal-title{font-family:var(--font-display);font-size:var(--fs-h4);font-weight:600;color:var(--ink);margin-bottom:var(--sp-2)}.modal-note{font-size:var(--fs-body-sm);color:var(--ink-muted);margin-bottom:var(--sp-4)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--sp-3)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ep-rail__mark{display:grid;place-items:center;width:64px;height:64px;border-radius:var(--r-input);border:1px solid var(--line);overflow:hidden;background:var(--surface)}.ep-rail__mark img{width:100%;height:100%;object-fit:cover}.ep-rail__mark.ep-rail__mark--contain img{object-fit:contain}.ep-rail__mark.ep-rail__mark--mono{background:var(--campus-navy-soft);border-color:var(--campus-navy-line);color:var(--campus-navy);font-family:var(--font-display);font-size:26px;font-weight:600}.ep-rail__mark.ep-rail__mark--round{border-radius:50%}.ep-rail__name{margin:var(--sp-4) 0 var(--sp-1);font-size:var(--fs-h3);line-height:1.15;text-wrap:balance;overflow-wrap:anywhere}.ep-rail__sub{margin:0 0 var(--sp-3);font-size:var(--fs-body-sm);color:var(--ink-2);overflow-wrap:anywhere}.ep-rail__sub a{color:inherit;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}.ep-rail__sub a:hover{color:var(--campus-navy);text-decoration-color:currentColor}.ep-rail__badges{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-4)}.ep-rail__facts{margin:0;border-top:1px solid var(--line)}@media (min-width: 480px) and (max-width: 960px){.ep-rail__facts{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--sp-5)}}.ep-rail__facts>div{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--line)}.ep-rail__facts dt{flex-shrink:0;font-size:var(--fs-body-sm);color:var(--ink-2)}.ep-rail__facts dd{margin:0;min-width:0;font-size:var(--fs-body-sm);font-weight:600;color:var(--ink);text-align:right;overflow-wrap:anywhere}.ep-rail__facts dd a{color:var(--campus-navy);text-decoration:none}.ep-rail__facts dd a:hover{text-decoration:underline;text-underline-offset:3px}.ep-rail__actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-4)}.ep-rail__foot{margin:var(--sp-4) 0 0;font-size:var(--fs-body-sm);color:var(--ink-2)}.ep-btn{display:inline-flex;align-items:center;gap:var(--sp-2);text-decoration:none}.ep-confirm{margin-top:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--bg-canvas);border:1px solid var(--line);border-radius:var(--r-input);font-size:var(--fs-body-sm);color:var(--ink)}.ep-confirm p{margin:0}.ep-confirm .ep-confirm__actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-3);justify-content:flex-end}.ep-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--r-pill);font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--ink);background:var(--bg-raised);white-space:nowrap}.ep-badge .ep-badge__dot{width:7px;height:7px;border-radius:50%;background:var(--ink-muted)}.ep-badge.ep-badge--ok{background:var(--success-soft)}.ep-badge.ep-badge--ok .ep-badge__dot{background:var(--success)}.ep-badge.ep-badge--warn{background:var(--warning-soft)}.ep-badge.ep-badge--warn .ep-badge__dot{background:var(--warning)}.ep-badge.ep-badge--danger{background:var(--danger-soft)}.ep-badge.ep-badge--danger .ep-badge__dot{background:var(--danger)}.ep-badge.ep-badge--navy{background:var(--campus-navy-soft)}.ep-badge.ep-badge--navy .ep-badge__dot{background:var(--campus-navy)}.ep-badge.ep-badge--gold{background:var(--campus-gold-soft)}.ep-badge.ep-badge--gold .ep-badge__dot{background:var(--campus-gold)}.ep-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:var(--sp-5);margin-bottom:var(--sp-4);font-family:var(--font-ui)}@media (max-width: 640px){.ep-card{padding:var(--sp-4)}}.ep-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-4)}.ep-card__head .ep-card__title{margin:0}.ep-card__title{margin:0 0 var(--sp-4);font-family:var(--font-display);font-size:var(--fs-h4);font-weight:600;color:var(--ink)}.ep-card__note{margin:0 0 var(--sp-4);max-width:68ch;font-size:var(--fs-body-sm);color:var(--ink-2)}.ep-card__note:last-child{margin-bottom:0}.ep-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:0 var(--sp-4);align-items:start}.ep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:var(--sp-4) var(--sp-5);margin:0}.ep-grid>div{display:flex;flex-direction:column;gap:4px;min-width:0}.ep-grid dd{margin:0}.ep-grid .ep-grid__full{grid-column:1 / -1}.ep-grid .ep-value{font-size:var(--fs-body);color:var(--ink);overflow-wrap:anywhere}.ep-grid .ep-value--text{white-space:pre-line;color:var(--ink-2);max-width:72ch}.ep-grid a.ep-value{color:var(--campus-navy);text-decoration:none}.ep-grid a.ep-value:hover{text-decoration:underline;text-underline-offset:3px}.ep-rows{margin:0}.ep-rows>div{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--line)}.ep-rows>div:last-child{border-bottom:none}.ep-rows dt{font-size:var(--fs-body-sm);color:var(--ink-2)}.ep-rows dd{margin:0;min-width:0;font-size:var(--fs-body-sm);font-weight:600;color:var(--ink);text-align:right;overflow-wrap:anywhere}.ep-flags{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:var(--sp-2) var(--sp-5);margin:0;padding:0;list-style:none}.ep-flags li{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-body-sm);color:var(--ink-2)}.ep-flags li svg{flex-shrink:0;color:var(--line-strong)}.ep-flags li.ep-flags__on{color:var(--ink);font-weight:600}.ep-flags li.ep-flags__on svg{color:var(--success)}.ep-muted{color:var(--ink-2);font-size:var(--fs-body-sm)}.ep-card .admin-table-wrap{border:none;border-radius:0;background:transparent;box-shadow:none}.ep-card .admin-table-wrap .admin-table thead tr{background:transparent}.ep-card .admin-table-wrap .admin-table th:first-child,.ep-card .admin-table-wrap .admin-table td:first-child{padding-left:0}.ep-card .admin-table-wrap .admin-table th:last-child,.ep-card .admin-table-wrap .admin-table td:last-child{padding-right:0}
