.theme-menu[data-v-1140386b]{display:flex;align-items:center;gap:8px;color:var(--muted)}.theme-label[data-v-1140386b]{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.select-wrap[data-v-1140386b]{position:relative}.theme-select[data-v-1140386b]{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--surface-chip);border:1px solid var(--surface-chip-border);border-radius:999px;padding:6px 28px 6px 12px;font-size:.84rem;color:var(--fg);font-weight:500;transition:background .2s ease,border .2s ease,box-shadow .2s ease}.theme-select[data-v-1140386b]:hover{background:var(--surface-chip-hover)}.theme-select[data-v-1140386b]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.select-indicator[data-v-1140386b]{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:.72rem;color:var(--muted);pointer-events:none}.site-header[data-v-0b85e418]{position:relative;padding:14px 24px 10px;background:linear-gradient(135deg,var(--header-grad-a),var(--header-grad-b));border-bottom:1px solid var(--header-border);box-shadow:var(--header-shadow)}.topbar[data-v-0b85e418]{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1400px;margin:0 auto}.brand-nav[data-v-0b85e418]{display:flex;align-items:center;gap:clamp(28px,4vw,48px)}.brand[data-v-0b85e418]{display:inline-flex;align-items:baseline;gap:0;font-family:Atkinson Hyperlegible Next,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:-.06em;text-rendering:optimizeLegibility;text-decoration:none}.brand[data-v-0b85e418]:focus{outline:none}.brand[data-v-0b85e418]:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:8px}.part[data-v-0b85e418]{display:inline-block;text-transform:lowercase;line-height:1.05}.part-uni[data-v-0b85e418]{font-weight:800;color:var(--brand-uni)}.part-metrics[data-v-0b85e418]{font-weight:300;color:var(--brand-metrics)}.part-uk[data-v-0b85e418]{font-weight:200;color:var(--brand-uk);text-transform:none}.primary-nav[data-v-0b85e418]{display:flex;align-items:center;gap:18px}.nav-link[data-v-0b85e418]{border:none;background:transparent;color:var(--header-link);font-weight:600;padding:8px 10px;border-radius:10px;text-decoration:none}.nav-link.router-link-active[data-v-0b85e418]{background:var(--header-link-active-bg);color:var(--header-link-active)}.nav-link[data-v-0b85e418]:hover{background:var(--header-link-hover-bg);color:var(--header-link-hover)}.nav-link.disabled[data-v-0b85e418]{opacity:.55;cursor:not-allowed}.theme-wrap[data-v-0b85e418]{margin-left:auto;padding-left:12px;border-left:1px solid var(--header-border)}@media (max-width: 820px){.brand-nav[data-v-0b85e418]{gap:26px}.primary-nav[data-v-0b85e418]{gap:10px}.nav-link[data-v-0b85e418]{padding:6px 8px;font-size:.9rem}}@media (max-width: 640px){.site-header[data-v-0b85e418]{padding:12px 14px 8px}.brand[data-v-0b85e418]{font-size:clamp(1.4rem,5vw,2rem)}.primary-nav[data-v-0b85e418]{display:none}}main[data-v-bf7b7eed]{position:relative;z-index:0}.collapsible-panel[data-v-ca8fcf3f]{background:var(--panel-bg, var(--surface-panel));border:1px solid var(--panel-border, var(--surface-panel-border));border-radius:22px;box-shadow:var(--panel-shadow, var(--surface-panel-shadow));overflow:hidden;transition:border-color .2s ease,box-shadow .25s ease}.collapsible-panel.open[data-v-ca8fcf3f]{box-shadow:var(--panel-shadow-open, 0 28px 48px rgba(8,12,24,.22))}.collapsible-panel.disabled[data-v-ca8fcf3f]{opacity:.6;pointer-events:none}.panel-toggle[data-v-ca8fcf3f]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;--panel-toggle-padding-y: 12px;padding:var(--panel-toggle-padding-y) 20px;background:transparent;border:none;cursor:pointer;text-align:left;color:inherit;position:relative;min-height:64px}.panel-toggle[data-v-ca8fcf3f]:focus-visible{outline:2px solid var(--focus, var(--accent));outline-offset:4px;border-radius:18px}.panel-header[data-v-ca8fcf3f]{display:flex;align-items:center;gap:16px;min-width:0}.panel-icon[data-v-ca8fcf3f]{flex:0 0 auto;width:44px;height:44px;border-radius:14px;background:var(--panel-icon-bg, rgba(255,255,255,.16));display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--panel-icon-border, rgba(255,255,255,.12))}.panel-icon img[data-v-ca8fcf3f]{width:26px;height:26px;object-fit:contain;display:block}.collapsible-panel.has-icon .panel-toggle[data-v-ca8fcf3f]{--panel-toggle-padding-y: 12px;align-items:stretch}.collapsible-panel.has-icon .panel-header[data-v-ca8fcf3f]{align-items:stretch}.collapsible-panel.has-icon .panel-text[data-v-ca8fcf3f]{justify-content:center}.collapsible-panel.has-icon .panel-icon[data-v-ca8fcf3f]{width:64px;height:calc(64px + (var(--panel-toggle-padding-y) * 2));margin-top:calc(var(--panel-toggle-padding-y) * -1);margin-bottom:calc(var(--panel-toggle-padding-y) * -1);border-radius:0;background:none;box-shadow:none;display:flex;align-items:center;justify-content:center;overflow:hidden}.collapsible-panel.has-icon .panel-icon img[data-v-ca8fcf3f]{width:64px;height:64px;object-fit:contain}.panel-text[data-v-ca8fcf3f]{display:flex;flex-direction:column;gap:4px;min-width:0}.panel-title[data-v-ca8fcf3f]{font-size:1.05rem;font-weight:600;letter-spacing:.01em}.panel-summary[data-v-ca8fcf3f]{font-size:.9rem;color:var(--fg-muted);line-height:1.3;display:flex;flex-wrap:wrap;gap:6px}.panel-meta[data-v-ca8fcf3f]{margin-left:auto;font-size:.82rem;color:var(--muted)}.chevron-wrap[data-v-ca8fcf3f]{flex:0 0 auto;display:grid;place-items:center;width:38px;height:38px;border-radius:999px;background:#94a3b82e;box-shadow:inset 0 0 0 1px #ffffff14;color:var(--fg-soft);transition:background .2s ease,box-shadow .2s ease,transform .2s ease,color .2s ease}.panel-toggle:hover .chevron-wrap[data-v-ca8fcf3f],.panel-toggle:focus-visible .chevron-wrap[data-v-ca8fcf3f]{background:#94a3b842;box-shadow:inset 0 0 0 1px #ffffff1f,0 14px 26px #0f172a3d}.collapsible-panel.open .chevron-wrap[data-v-ca8fcf3f]{background:var(--accent-soft);box-shadow:inset 0 0 0 1px #0ea5e952,0 16px 30px #0ea5e93d;color:#f8fafc}.chevron[data-v-ca8fcf3f]{width:20px;height:20px;transition:transform .2s ease}.collapsible-panel.open .chevron[data-v-ca8fcf3f]{transform:rotate(180deg)}.panel-preview[data-v-ca8fcf3f]{padding:0 20px 18px;font-size:.9rem;color:var(--fg-muted)}.panel-body[data-v-ca8fcf3f]{padding:0 20px 22px;display:grid;gap:16px}.panel-expand-enter-active[data-v-ca8fcf3f],.panel-expand-leave-active[data-v-ca8fcf3f]{transition:max-height .24s ease,opacity .2s ease}.panel-expand-enter-from[data-v-ca8fcf3f],.panel-expand-leave-to[data-v-ca8fcf3f]{max-height:0;opacity:0}.panel-expand-enter-to[data-v-ca8fcf3f],.panel-expand-leave-from[data-v-ca8fcf3f]{max-height:800px;opacity:1}@media (max-width: 720px){.panel-toggle[data-v-ca8fcf3f]{padding:16px;gap:12px}.panel-icon[data-v-ca8fcf3f]{width:38px;height:38px}.panel-title[data-v-ca8fcf3f]{font-size:1rem}.panel-summary[data-v-ca8fcf3f]{font-size:.85rem}.panel-body[data-v-ca8fcf3f]{padding:0 16px 18px}}.collapsible-panel.variant-menu[data-v-ca8fcf3f]{background:var(--panel-bg, var(--surface-panel));border-color:var(--panel-border, var(--surface-panel-border));box-shadow:var(--panel-shadow, var(--surface-panel-shadow));-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);overflow:hidden}.collapsible-panel.variant-menu .panel-toggle[data-v-ca8fcf3f]{--panel-toggle-padding-y: 12px;padding:var(--panel-toggle-padding-y) 26px;border-radius:20px;background:transparent;border:none;box-shadow:none;overflow:hidden;align-items:stretch}.collapsible-panel.variant-menu .panel-toggle[data-v-ca8fcf3f]:after{display:none}.collapsible-panel.variant-menu .panel-header[data-v-ca8fcf3f]{gap:20px;align-items:stretch}.collapsible-panel.variant-menu .panel-text[data-v-ca8fcf3f]{justify-content:center}.collapsible-panel.variant-menu .panel-icon[data-v-ca8fcf3f]{flex:0 0 auto;width:64px;height:calc(64px + (var(--panel-toggle-padding-y) * 2));margin-top:calc(var(--panel-toggle-padding-y) * -1);margin-bottom:calc(var(--panel-toggle-padding-y) * -1);border-radius:0;background:none;box-shadow:none;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.collapsible-panel.variant-menu .panel-icon[data-v-ca8fcf3f]:after{display:none}.collapsible-panel.variant-menu .panel-icon img[data-v-ca8fcf3f]{width:64px;height:64px;object-fit:contain}.collapsible-panel.variant-menu .panel-text[data-v-ca8fcf3f]{gap:6px}.collapsible-panel.variant-menu .panel-title[data-v-ca8fcf3f]{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;font-weight:600;color:var(--filters-label)}.collapsible-panel.variant-menu .panel-summary[data-v-ca8fcf3f]{font-size:1.14rem;font-weight:600;color:var(--fg-strong);flex-wrap:nowrap}.collapsible-panel.variant-menu .panel-summary span[data-v-ca8fcf3f]{display:block}.collapsible-panel.variant-menu .panel-meta[data-v-ca8fcf3f]{color:var(--fg-muted)}.collapsible-panel.variant-menu .chevron-wrap[data-v-ca8fcf3f]{width:40px;height:40px;border-radius:999px;background:var(--control-tab-chevron-bg);box-shadow:var(--control-tab-chevron-shadow);transition:background .2s ease,box-shadow .2s ease}.collapsible-panel.variant-menu .chevron[data-v-ca8fcf3f]{width:18px;height:18px;color:var(--fg-strong)}.collapsible-panel.variant-menu:hover .chevron-wrap[data-v-ca8fcf3f]{background:var(--control-tab-chevron-active-bg);box-shadow:var(--control-tab-chevron-active-shadow)}.collapsible-panel.variant-menu.open[data-v-ca8fcf3f],.collapsible-panel.variant-menu.open .panel-toggle[data-v-ca8fcf3f]{box-shadow:var(--control-tab-panel-shadow)}@media (max-width: 720px){.collapsible-panel.has-icon .panel-toggle[data-v-ca8fcf3f]{--panel-toggle-padding-y: 10px;min-height:60px}.collapsible-panel.has-icon .panel-icon[data-v-ca8fcf3f]{width:60px}.collapsible-panel.has-icon .panel-icon img[data-v-ca8fcf3f]{width:60px;height:60px}.collapsible-panel.variant-menu .panel-toggle[data-v-ca8fcf3f]{--panel-toggle-padding-y: 10px;padding:var(--panel-toggle-padding-y) 20px}.collapsible-panel.variant-menu .panel-summary[data-v-ca8fcf3f]{font-size:1.02rem}.collapsible-panel.variant-menu .chevron-wrap[data-v-ca8fcf3f]{width:34px;height:34px}}.filter-rail[data-v-8748df35]{display:flex;flex-direction:column;gap:18px;padding:18px 22px 24px;border-radius:28px;background:var(--filters-surface);border:1px solid var(--filters-border);box-shadow:var(--filters-shadow);width:min(100%,1040px);margin:clamp(18px,3vw,28px) auto}.control-tab-list[data-v-8748df35]{display:flex;gap:14px;width:100%;align-items:stretch}.control-tab-button[data-v-8748df35]{position:relative;flex:1 1 0;display:flex;align-items:stretch;gap:0;padding:0;border-radius:20px;border:1px solid var(--control-tab-border);background:var(--control-tab-bg);box-shadow:var(--control-tab-shadow);cursor:pointer;text-align:left;color:inherit;transition:transform .18s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease;min-width:0;overflow:hidden;height:72px}.control-tab-button[data-v-8748df35]:hover{transform:translateY(-2px);box-shadow:var(--control-tab-shadow)}.control-tab-button[data-v-8748df35]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.control-tab-button.active[data-v-8748df35]{border-color:var(--control-tab-active-border);background:var(--control-tab-active-bg);box-shadow:var(--control-tab-shadow)}.control-tab-button .tab-icon[data-v-8748df35]{flex:0 0 auto;display:flex;align-items:stretch;justify-content:center;border-radius:20px 0 0 20px;overflow:hidden;width:72px;background:var(--control-tab-icon-bg);box-shadow:inset 0 0 0 1px var(--control-tab-icon-border)}.control-tab-button .tab-icon img[data-v-8748df35]{height:100%;width:100%;object-fit:contain;display:block}.control-tab-button .tab-body[data-v-8748df35]{flex:1 1 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;min-width:0}.control-tab-button .tab-text[data-v-8748df35]{display:flex;flex-direction:column;gap:6px;min-width:0}.control-tab-button .tab-title[data-v-8748df35]{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--filters-label);font-weight:600}.control-tab-button .tab-summary[data-v-8748df35]{font-size:1.08rem;font-weight:600;color:var(--fg-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.control-tab-button.active .tab-summary[data-v-8748df35]{color:var(--fg-strong)}.control-tab-button .tab-chevron[data-v-8748df35]{flex:0 0 auto;width:36px;height:36px;border-radius:999px;display:grid;place-items:center;background:var(--control-tab-chevron-bg);box-shadow:var(--control-tab-chevron-shadow)}.control-tab-button .tab-chevron svg[data-v-8748df35]{width:18px;height:18px;transition:transform .2s ease}.control-tab-button.active .tab-chevron[data-v-8748df35]{background:var(--control-tab-chevron-active-bg);box-shadow:var(--control-tab-chevron-active-shadow)}.control-tab-button.active .tab-chevron svg[data-v-8748df35]{transform:rotate(180deg)}.filter-panel[data-v-8748df35]{border-radius:22px;border:1px solid var(--control-tab-panel-border);background:var(--control-tab-panel-bg);box-shadow:var(--control-tab-panel-shadow);padding:20px 22px 26px;display:flex;flex-direction:column;gap:18px}.filters-heading h3[data-v-8748df35]{margin:0;font-size:.95rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.filters-heading p[data-v-8748df35]{margin:4px 0 0;font-size:.85rem;color:var(--fg-muted)}.chip-group[data-v-8748df35]{display:flex;flex-wrap:wrap;gap:10px}.chip-row[data-v-8748df35]{display:flex;gap:8px}.chip-row.wrap[data-v-8748df35]{flex-wrap:wrap}.chip[data-v-8748df35]{border-radius:999px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);color:inherit;padding:8px 14px;font-size:.85rem;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer}.chip[data-v-8748df35]:hover{transform:translateY(-1px);box-shadow:var(--chip-shadow-hover)}.chip.layered[data-v-8748df35]{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:220px;text-align:left}.chip.layered .chip-main[data-v-8748df35]{font-weight:600}.chip.layered .chip-sub[data-v-8748df35]{font-size:.78rem;color:var(--fg-muted)}.chip.compact[data-v-8748df35]{font-size:.82rem;padding:6px 12px}.chip.level[data-v-8748df35]{font-weight:600}.chip.level[data-v-8748df35]{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;background:var(--control-tab-icon-bg);border-color:var(--control-tab-icon-border);box-shadow:inset 0 0 0 1px var(--control-tab-panel-border);color:var(--fg-muted)}.chip.level.active[data-v-8748df35]{background:var(--control-tab-active-bg);border-color:var(--accent);color:var(--fg-strong);box-shadow:inset 0 0 0 1px var(--accent-soft)}.chip.subject[data-v-8748df35]{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.chip.subject .chip-label[data-v-8748df35]{font-weight:600}.chip.subject .chip-sub[data-v-8748df35]{font-size:.78rem;color:var(--surface-chip-muted)}.chip.subject .chip-code[data-v-8748df35]{font-size:.78rem;color:var(--fg-muted)}.filter-rail .chip-label[data-v-8748df35]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-clamp:2}.chip.active[data-v-8748df35],.chip[aria-pressed=true][data-v-8748df35]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.filter-group[data-v-8748df35]{border:1px solid var(--surface-chip-border);border-radius:18px;background:var(--surface-chip);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;overflow:hidden}.filter-group.active[data-v-8748df35]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.group-toggle[data-v-8748df35]{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;background:none;border:none;text-align:left;color:inherit;cursor:pointer}.group-text[data-v-8748df35]{flex:1 1 auto;display:flex;flex-direction:column;gap:6px}.group-title-row[data-v-8748df35]{display:flex;align-items:center;gap:10px}.group-title[data-v-8748df35]{font-size:.9rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.group-summary[data-v-8748df35]{margin:0;font-size:.82rem;color:var(--fg-muted)}.group-pill[data-v-8748df35]{padding:2px 8px;border-radius:999px;background:var(--filters-chip);border:1px solid var(--filters-chip-border);color:var(--filters-label);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.group-icon[data-v-8748df35]{flex:0 0 auto;font-size:1rem;color:var(--fg-muted);transition:transform .2s ease}.filter-group.open .group-icon[data-v-8748df35]{transform:rotate(180deg)}.group-body[data-v-8748df35]{padding:0 16px 16px;display:flex;flex-direction:column;gap:12px}.cluster[data-v-8748df35]{display:flex;flex-direction:column;gap:12px}.cluster h4[data-v-8748df35]{margin:0;font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--fg-muted)}.course-groups[data-v-8748df35]{display:flex;flex-direction:column;gap:16px}.course-group[data-v-8748df35]{display:flex;flex-direction:column;gap:10px}.course-group .group-title[data-v-8748df35]{font-size:.88rem;font-weight:600;color:var(--fg-muted)}.level-toggle[data-v-8748df35]{display:flex;flex-wrap:wrap;gap:10px}.subject-row[data-v-8748df35]{margin-top:4px}.reset-button[data-v-8748df35]{align-self:flex-start;margin-top:8px}.group-collapse-enter-active[data-v-8748df35],.group-collapse-leave-active[data-v-8748df35]{transition:opacity .18s ease,transform .18s ease}.group-collapse-enter-from[data-v-8748df35],.group-collapse-leave-to[data-v-8748df35]{opacity:0;transform:translateY(-6px)}.filter-panel-enter-active[data-v-8748df35],.filter-panel-leave-active[data-v-8748df35]{transition:height .26s ease,padding .26s ease,opacity .24s ease}.filter-panel-enter-from[data-v-8748df35],.filter-panel-leave-to[data-v-8748df35]{opacity:0}.filter-panel-enter-to[data-v-8748df35],.filter-panel-leave-from[data-v-8748df35]{opacity:1}@media (max-width: 980px){.filter-rail[data-v-8748df35]{padding:16px 18px 22px}.control-tab-list[data-v-8748df35]{gap:12px}.control-tab-button .tab-body[data-v-8748df35]{padding:12px 16px;gap:14px}.control-tab-button .tab-summary[data-v-8748df35]{font-size:1rem}}@media (max-width: 720px){.filter-rail[data-v-8748df35]{padding:14px 16px 18px;gap:14px}.control-tab-list[data-v-8748df35]{gap:10px;flex-wrap:wrap}.control-tab-button[data-v-8748df35]{flex:1 1 240px;height:64px}.control-tab-button .tab-icon[data-v-8748df35]{width:60px}.control-tab-button .tab-body[data-v-8748df35]{padding:10px 14px;gap:12px}.control-tab-button .tab-title[data-v-8748df35]{font-size:.74rem;letter-spacing:.12em}.control-tab-button .tab-summary[data-v-8748df35]{font-size:.95rem}.control-tab-button .tab-chevron[data-v-8748df35]{width:34px;height:34px}.filter-panel[data-v-8748df35]{padding:18px 16px 22px}}@media (max-width: 600px){.control-tab-list[data-v-8748df35]{gap:8px}.control-tab-button[data-v-8748df35]{height:58px}.control-tab-button .tab-icon[data-v-8748df35]{width:52px}.control-tab-button .tab-body[data-v-8748df35]{padding:9px 12px;gap:10px}.control-tab-button .tab-title[data-v-8748df35]{font-size:.7rem;letter-spacing:.1em}.control-tab-button .tab-summary[data-v-8748df35]{font-size:.88rem;line-height:1.2;white-space:normal;overflow:visible}.control-tab-button .tab-chevron[data-v-8748df35]{width:32px;height:32px}}@media (max-width: 520px){.control-tab-button[data-v-8748df35]{height:52px}.control-tab-button .tab-icon[data-v-8748df35]{width:44px}.control-tab-button .tab-body[data-v-8748df35]{padding:8px 10px;gap:8px}.control-tab-button .tab-summary[data-v-8748df35]{display:none}.control-tab-button .tab-title[data-v-8748df35]{font-size:.68rem}.control-tab-button .tab-chevron[data-v-8748df35]{width:30px;height:30px}}@media (max-width: 460px){.control-tab-list[data-v-8748df35]{gap:6px}.control-tab-button[data-v-8748df35]{flex:1 1 0;height:46px}.control-tab-button .tab-icon[data-v-8748df35]{width:38px}.control-tab-button .tab-body[data-v-8748df35]{padding:7px}.control-tab-button .tab-text[data-v-8748df35]{position:absolute;left:0;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.control-tab-button .tab-chevron[data-v-8748df35]{display:none}}.searchbar[data-v-76192358]{position:relative;background:var(--search-bg);border:1px solid var(--search-border);border-radius:14px;padding:8px 12px;display:flex;align-items:center;gap:8px;box-shadow:var(--search-shadow);width:100%}.icon[data-v-76192358]{width:18px;height:18px;color:var(--muted)}.field[data-v-76192358]{flex:1;border:none;outline:none;background:transparent;color:var(--fg);font-size:1rem}.field[data-v-76192358]::placeholder{color:var(--muted)}.results[data-v-76192358]{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--surface-panel);border:1px solid var(--surface-panel-border);border-radius:12px;box-shadow:var(--surface-panel-shadow);padding:6px;display:grid;gap:4px;z-index:10}.result[data-v-76192358]{border-radius:10px}.result-button[data-v-76192358]{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;color:inherit;font:inherit;text-align:left;padding:8px 10px;border-radius:10px;cursor:pointer}.result-button[data-v-76192358]:hover,.result-button[data-v-76192358]:focus-visible,.result.active .result-button[data-v-76192358]{background:var(--surface-chip-hover);outline:none}.group[data-v-76192358]{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);min-width:92px}.label[data-v-76192358]{font-weight:600;flex:1}.about-wrapper[data-v-08b7432f]{display:grid;gap:18px;font-size:.95rem;color:var(--fg)}.about-section[data-v-08b7432f]{display:flex;flex-direction:column;gap:10px}.about-section h3[data-v-08b7432f]{margin:0;font-size:1rem;font-weight:600}.about-section p[data-v-08b7432f]{margin:0;line-height:1.5;color:var(--fg-muted)}.about-section code[data-v-08b7432f]{font-family:JetBrains Mono,Fira Code,monospace;font-size:.85rem;color:var(--accent)}.legal[data-v-08b7432f]{border-top:1px solid var(--border);padding-top:12px}.links[data-v-08b7432f]{display:flex;gap:10px;align-items:center;font-size:.9rem}.link[data-v-08b7432f]{color:var(--accent);text-decoration:none}.link[data-v-08b7432f]:hover{text-decoration:underline}.uk-map[data-v-79e169ca]{display:flex;flex-direction:column;gap:6px;align-items:flex-start;width:100%;height:100%}.map-shell[data-v-79e169ca]{position:relative;width:100%;height:100%;border-radius:20px;overflow:hidden;background:var(--map-shell-bg);box-shadow:var(--map-shell-shadow)}.leaflet-map[data-v-79e169ca]{width:100%;height:100%}.leaflet-container[data-v-79e169ca]{background:var(--map-canvas-bg)!important}.map-fallback[data-v-79e169ca]{display:flex;width:100%;height:100%;align-items:center;justify-content:space-between;gap:12px;padding:14px;background:var(--map-canvas-bg);color:var(--map-caption)}.fallback-map[data-v-79e169ca]{flex:1;max-width:60%;height:100%}.fallback-outline[data-v-79e169ca]{fill:#94a3b833;stroke:#64748b99;stroke-width:3}.fallback-marker[data-v-79e169ca]{fill:var(--accent, #3b82f6);stroke:#0f172a66;stroke-width:1.5}.fallback-list[data-v-79e169ca]{flex:1;display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0;font-size:.82rem}.fallback-dot[data-v-79e169ca]{display:inline-block;width:10px;height:10px;border-radius:999px;margin-right:6px}.fallback-name[data-v-79e169ca]{color:var(--fg)}.map-error[data-v-79e169ca]{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:var(--map-error);font-size:.8rem}.map-caption[data-v-79e169ca]{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--map-caption)}[data-v-79e169ca] .uk-map-tooltip{background:var(--card-strong);color:var(--fg);border-radius:10px;border:1px solid var(--border);box-shadow:var(--shadow-soft);padding:6px 10px;font-size:.78rem;line-height:1.25;white-space:pre-line}[data-v-79e169ca] .uk-map-tooltip:before{display:none}[data-v-79e169ca] .leaflet-interactive{cursor:pointer}.view.tiers[data-v-04b29068]{display:flex;flex-direction:column;gap:18px;padding:0 1rem 4rem}.top-search-area[data-v-04b29068]{width:min(100%,1040px);max-width:1040px;margin:clamp(36px,8vw,80px) auto clamp(28px,6vw,56px);padding:0 12px;display:flex}.top-search-area[data-v-04b29068] .searchbar{flex:1 1 auto;background:var(--card);border-color:var(--border);box-shadow:var(--shadow-soft);width:100%}.top-search-area[data-v-04b29068] .searchbar .field{color:var(--fg-soft);font-weight:500}.top-search-area[data-v-04b29068] .searchbar .field::placeholder{color:var(--fg-muted)}.glass-block[data-v-04b29068]{background:var(--surface-panel);border:1px solid var(--surface-panel-border);border-radius:24px;box-shadow:var(--surface-panel-shadow)}.glass-block.variant-menu[data-v-04b29068]{background:transparent;border:none;box-shadow:none}.control-rail[data-v-04b29068]{display:flex;flex-direction:column;gap:18px;padding:18px 22px 24px;border-radius:28px;background:var(--filters-surface);border:1px solid var(--filters-border);box-shadow:var(--filters-shadow)}.control-tab-list[data-v-04b29068]{display:flex;gap:14px;width:100%;align-items:stretch}.control-tab-button[data-v-04b29068]{position:relative;flex:1 1 0;display:flex;align-items:stretch;gap:0;padding:0;border-radius:20px;border:1px solid var(--control-tab-border);background:var(--control-tab-bg);box-shadow:var(--control-tab-shadow);cursor:pointer;text-align:left;color:inherit;transition:transform .18s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease;min-width:0;overflow:hidden;height:72px}.control-tab-button[data-v-04b29068]:hover{transform:translateY(-2px);box-shadow:var(--control-tab-shadow)}.control-tab-button[data-v-04b29068]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.control-tab-button.active[data-v-04b29068]{border-color:var(--control-tab-active-border);background:var(--control-tab-active-bg);box-shadow:var(--control-tab-shadow)}.control-tab-button .tab-icon[data-v-04b29068]{flex:0 0 auto;display:flex;align-items:stretch;justify-content:center;border-radius:20px 0 0 20px;overflow:hidden;width:72px;background:var(--control-tab-icon-bg);box-shadow:inset 0 0 0 1px var(--control-tab-icon-border)}.control-tab-button .tab-icon img[data-v-04b29068]{height:100%;width:100%;object-fit:contain;display:block}.control-tab-button .tab-body[data-v-04b29068]{flex:1 1 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;min-width:0}.control-tab-button .tab-text[data-v-04b29068]{display:flex;flex-direction:column;gap:6px;min-width:0}.control-tab-button .tab-title[data-v-04b29068]{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--filters-label);font-weight:600}.control-tab-button .tab-summary[data-v-04b29068]{font-size:1.08rem;font-weight:600;color:var(--fg-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.control-tab-button.active .tab-summary[data-v-04b29068]{color:var(--fg-strong)}.control-tab-button .tab-chevron[data-v-04b29068]{flex:0 0 auto;width:36px;height:36px;border-radius:999px;display:grid;place-items:center;background:var(--control-tab-chevron-bg);box-shadow:var(--control-tab-chevron-shadow)}.control-tab-button .tab-chevron svg[data-v-04b29068]{width:18px;height:18px;transition:transform .2s ease}.control-tab-button.active .tab-chevron[data-v-04b29068]{background:var(--control-tab-chevron-active-bg);box-shadow:var(--control-tab-chevron-active-shadow)}.control-tab-button.active .tab-chevron svg[data-v-04b29068]{transform:rotate(180deg)}.control-tab-panel[data-v-04b29068]{border-radius:22px;border:1px solid var(--control-tab-panel-border);background:var(--control-tab-panel-bg);box-shadow:var(--control-tab-panel-shadow);padding:20px 22px 26px;display:flex;flex-direction:column;gap:18px}.control-panel-enter-active[data-v-04b29068],.control-panel-leave-active[data-v-04b29068]{transition:height .26s ease,padding .26s ease,opacity .24s ease}.control-panel-enter-from[data-v-04b29068],.control-panel-leave-to[data-v-04b29068]{opacity:0}.control-panel-enter-to[data-v-04b29068],.control-panel-leave-from[data-v-04b29068]{opacity:1}.selection-summary[data-v-04b29068]{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px;align-items:stretch;padding:20px 22px}.summary-map[data-v-04b29068]{position:relative;background:var(--map-shell-bg);border-radius:20px;border:1px solid var(--map-shell-border, rgba(26,54,87,.16));box-shadow:var(--map-shell-shadow);padding:14px}.summary-map[data-v-04b29068] .uk-map{width:100%;height:240px}.summary-stats[data-v-04b29068]{display:flex;flex-direction:column;gap:16px}.stats-grid[data-v-04b29068]{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card[data-v-04b29068]{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;background:var(--stat-card-bg);border:1px solid var(--stat-card-border);box-shadow:var(--stat-card-shadow)}.stat-visual[data-v-04b29068]{flex:0 0 auto}.donut[data-v-04b29068]{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--stat-chart-rest);position:relative}.donut .dot[data-v-04b29068]{width:30px;height:30px;border-radius:50%;background:var(--surface-panel);box-shadow:inset 0 0 0 1px var(--stat-card-border)}.stat-text[data-v-04b29068]{display:flex;flex-direction:column;gap:4px}.stat-value[data-v-04b29068]{font-size:clamp(1.1rem,2.4vw,1.5rem);font-weight:700;color:var(--stat-value)}.stat-label[data-v-04b29068]{font-size:.9rem;color:var(--stat-label)}.stat-hint[data-v-04b29068]{font-size:.78rem;color:var(--stat-hint)}.active-card[data-v-04b29068]{display:flex;gap:16px;align-items:flex-start;padding:6px 0}.active-icon[data-v-04b29068]{flex:0 0 auto;width:52px;height:52px;border-radius:16px;background:var(--control-tab-icon-bg);display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--control-tab-icon-border)}.active-icon img[data-v-04b29068]{width:30px;height:30px;display:block}.active-copy h4[data-v-04b29068]{margin:0 0 6px;font-size:1rem;font-weight:600}.active-copy p[data-v-04b29068]{margin:0;color:var(--fg-muted);line-height:1.5}.option-grid[data-v-04b29068]{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.option-tile[data-v-04b29068]{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:18px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);text-align:left;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease}.option-tile[data-v-04b29068]:hover{transform:translateY(-2px);box-shadow:var(--chip-shadow-hover)}.option-tile.active[data-v-04b29068]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.option-tile.planned[data-v-04b29068]{opacity:.65}.option-tile img[data-v-04b29068]{width:28px;height:28px}.option-tile .label[data-v-04b29068]{font-weight:600}.option-tile .note[data-v-04b29068]{font-size:.85rem;color:var(--fg-muted);line-height:1.4}.option-tile .status[data-v-04b29068]{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.option-row[data-v-04b29068]{display:flex;flex-wrap:wrap;gap:12px}.option-pill[data-v-04b29068]{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);min-width:200px;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease;text-align:left}.option-pill[data-v-04b29068]:hover{transform:translateY(-1px);box-shadow:var(--chip-shadow-hover)}.option-pill .label[data-v-04b29068]{font-weight:600}.option-pill .note[data-v-04b29068]{font-size:.82rem;color:var(--fg-muted)}.option-pill .status[data-v-04b29068]{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.option-pill.active[data-v-04b29068]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.option-pill.planned[data-v-04b29068]{opacity:.65}.visual-title-card[data-v-04b29068]{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 22px}.visual-title-card h2[data-v-04b29068]{margin:0;font-size:clamp(1.4rem,3vw,1.8rem)}.visual-title-card p[data-v-04b29068]{margin:6px 0 0;color:var(--fg-muted);max-width:68ch}.visual-title-card .title-actions[data-v-04b29068]{display:flex;gap:10px;align-items:center}.visual-title-card .toggle-icon-button[data-v-04b29068]{align-self:flex-start;width:38px;height:38px;border-radius:999px;border:none;display:grid;place-items:center;background:var(--control-tab-chevron-bg);box-shadow:var(--control-tab-chevron-shadow);color:var(--fg-muted);cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.visual-title-card .toggle-icon-button[data-v-04b29068]:hover{background:var(--control-tab-chevron-active-bg);box-shadow:var(--control-tab-chevron-active-shadow)}.visual-title-card .toggle-icon-button[data-v-04b29068]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.visual-title-card .toggle-icon-button svg[data-v-04b29068]{width:20px;height:20px;transition:transform .2s ease}.visual-title-card .toggle-icon-button[aria-expanded=true] svg[data-v-04b29068]{transform:rotate(180deg)}.visual-title-card .export-button[data-v-04b29068]{align-self:flex-start;border-radius:999px;border:1px solid var(--ghost-border);background:var(--ghost-bg);color:inherit;padding:6px 14px;font-size:.82rem;cursor:pointer;transition:background .2s ease,transform .12s ease}.visual-title-card .export-button[data-v-04b29068]:hover{background:var(--ghost-hover);transform:translateY(-1px)}.visual-shell[data-v-04b29068]{padding:22px}.placeholder-card[data-v-04b29068]{padding:18px;border-radius:18px;border:1px dashed var(--border);background:#ffffff0a;text-align:left;display:flex;flex-direction:column;gap:8px}.placeholder-card h3[data-v-04b29068]{margin:0;font-size:1.1rem}.placeholder-card .footnote[data-v-04b29068]{font-size:.85rem;color:var(--fg-muted)}.tier-grid[data-v-04b29068]{display:grid;gap:16px}.tier-row[data-v-04b29068]{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:stretch}.tier-label[data-v-04b29068]{display:grid;place-items:center;font-weight:900;color:#fff;border-radius:16px;min-height:72px}.tier-content[data-v-04b29068]{padding:12px;border-radius:16px;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.chips[data-v-04b29068]{display:flex;flex-wrap:wrap;gap:8px}.chip[data-v-04b29068]{border-radius:12px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);color:var(--fg);transition:transform .18s ease,box-shadow .18s ease;padding:6px 12px}.chip[data-v-04b29068]:hover{transform:translateY(-1px);box-shadow:var(--chip-shadow-hover)}.tier-divider[data-v-04b29068]{grid-column:1 / -1;height:2px;background:var(--tier-divider)}.footnotes-preview[data-v-04b29068]{display:block;font-size:.9rem;color:var(--fg-muted);line-height:1.5}.footnote-list[data-v-04b29068]{margin:0;padding:0 0 0 1.1rem;display:flex;flex-direction:column;gap:10px;font-size:.9rem;color:var(--fg-muted)}.ghost[data-v-04b29068]{border-radius:999px;border:1px solid var(--ghost-border);background:var(--ghost-bg);color:inherit;padding:6px 18px;font-size:.82rem;transition:background .2s ease,transform .12s ease}.ghost[data-v-04b29068]:hover{background:var(--ghost-hover);transform:translateY(-1px)}@media (max-width: 980px){.control-rail[data-v-04b29068]{padding:16px 18px 22px}.control-tab-list[data-v-04b29068]{gap:12px}.control-tab-button .tab-body[data-v-04b29068]{padding:12px 16px;gap:14px}.control-tab-button .tab-summary[data-v-04b29068]{font-size:1rem}.selection-summary[data-v-04b29068]{grid-template-columns:1fr;padding:18px 18px 20px}.summary-map[data-v-04b29068] .uk-map{height:220px}}@media (max-width: 720px){.control-rail[data-v-04b29068]{padding:14px 16px 18px;gap:14px}.control-tab-list[data-v-04b29068]{gap:10px}.control-tab-button[data-v-04b29068]{height:64px}.control-tab-button .tab-icon[data-v-04b29068]{width:60px}.control-tab-button .tab-body[data-v-04b29068]{padding:10px 14px;gap:12px}.control-tab-button .tab-title[data-v-04b29068]{font-size:.74rem;letter-spacing:.12em}.control-tab-button .tab-summary[data-v-04b29068]{font-size:.95rem}.control-tab-button .tab-chevron[data-v-04b29068]{width:34px;height:34px}.control-tab-panel[data-v-04b29068]{padding:18px 16px 22px}.selection-summary[data-v-04b29068]{padding:16px;gap:16px}.summary-map[data-v-04b29068] .uk-map{height:200px}.visual-shell[data-v-04b29068]{padding:18px}.tier-row[data-v-04b29068]{grid-template-columns:56px 1fr}.tier-label[data-v-04b29068]{min-height:60px;font-size:1.1rem}.option-pill[data-v-04b29068]{min-width:160px}.option-grid[data-v-04b29068]{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}@media (max-width: 600px){.control-tab-list[data-v-04b29068]{gap:8px}.control-tab-button[data-v-04b29068]{height:58px}.control-tab-button .tab-icon[data-v-04b29068]{width:52px}.control-tab-button .tab-body[data-v-04b29068]{padding:9px 12px;gap:10px}.control-tab-button .tab-title[data-v-04b29068]{font-size:.7rem;letter-spacing:.1em}.control-tab-button .tab-summary[data-v-04b29068]{font-size:.88rem;line-height:1.2;white-space:normal;overflow:visible}.control-tab-button .tab-chevron[data-v-04b29068]{width:32px;height:32px}}@media (max-width: 520px){.control-tab-button[data-v-04b29068]{height:52px}.control-tab-button .tab-icon[data-v-04b29068]{width:44px}.control-tab-button .tab-body[data-v-04b29068]{padding:8px 10px;gap:8px}.control-tab-button .tab-summary[data-v-04b29068]{display:none}.control-tab-button .tab-title[data-v-04b29068]{font-size:.68rem}.control-tab-button .tab-chevron[data-v-04b29068]{width:30px;height:30px}}@media (max-width: 460px){.control-tab-list[data-v-04b29068]{gap:6px}.control-tab-button[data-v-04b29068]{flex:1 1 0;height:46px}.control-tab-button .tab-icon[data-v-04b29068]{width:38px}.control-tab-button .tab-body[data-v-04b29068]{padding:7px}.control-tab-button .tab-text[data-v-04b29068]{position:absolute;left:0;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.control-tab-button .tab-chevron[data-v-04b29068]{display:none}}.institution-panel[data-v-af844c2b]{position:relative;display:flex;flex-direction:column;gap:18px;background:var(--surface-panel);border:1px solid var(--surface-panel-border);padding:clamp(18px,4vw,28px);border-radius:24px;box-shadow:var(--surface-panel-shadow);overflow:hidden}.institution-panel[data-v-af844c2b]:after{content:"";position:absolute;inset:-40% -20% auto -20%;height:60%;background:var(--surface-panel-glow);pointer-events:none}.panel-top[data-v-af844c2b]{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,.95fr);gap:clamp(18px,4vw,42px);align-items:stretch;z-index:1}.identity[data-v-af844c2b]{display:flex;flex-direction:column;gap:12px}.tagline[data-v-af844c2b]{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tagline-color)}.short-name[data-v-af844c2b]{font-size:clamp(2rem,4vw,2.8rem);font-weight:700;letter-spacing:.02em}.full-name[data-v-af844c2b]{font-size:clamp(1rem,2.2vw,1.25rem);color:var(--fg-muted);max-width:34ch}.meta-row[data-v-af844c2b]{display:flex;flex-wrap:wrap;gap:8px}.meta-chip[data-v-af844c2b]{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--meta-chip-bg);border:1px solid var(--meta-chip-border);color:var(--meta-chip-text)}.group-chips[data-v-af844c2b]{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.group-chip[data-v-af844c2b]{border:1px solid var(--group-chip-border);background:var(--group-chip-bg);border-radius:12px;padding:6px 12px;font-size:.82rem;color:var(--group-chip-text);cursor:default}.group-chip[data-type=network][data-v-af844c2b]{border-color:var(--group-chip-network-border);background:var(--group-chip-network-bg)}.group-chip[data-type=heritage][data-v-af844c2b]{border-color:var(--group-chip-heritage-border);background:var(--group-chip-heritage-bg)}.map-wrapper[data-v-af844c2b]{display:flex;justify-content:center;align-items:stretch}.map-frame[data-v-af844c2b]{width:100%;max-width:420px;aspect-ratio:1 / 1}.map-wrapper[data-v-af844c2b] .uk-map,.map-wrapper[data-v-af844c2b] .map-shell{width:100%;height:100%}.map-wrapper[data-v-af844c2b] .leaflet-map{height:100%}.panel-stats[data-v-af844c2b]{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.stat[data-v-af844c2b]{background:var(--stat-bg);border:1px solid var(--stat-border);border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}.stat-value[data-v-af844c2b]{font-size:clamp(1.2rem,2.8vw,1.6rem);font-weight:600;color:var(--stat-value)}.stat-label[data-v-af844c2b]{font-size:.85rem;color:var(--stat-label)}.stat-hint[data-v-af844c2b]{font-size:.75rem;color:var(--stat-hint)}@media (max-width: 860px){.panel-top[data-v-af844c2b]{grid-template-columns:1fr}.map-wrapper[data-v-af844c2b]{justify-content:flex-start}.map-frame[data-v-af844c2b]{max-width:100%}}@media (max-width: 620px){.institution-panel[data-v-af844c2b]{padding:16px;border-radius:20px}.meta-chip[data-v-af844c2b]{font-size:.72rem}.group-chip[data-v-af844c2b]{font-size:.78rem}}.subject-panel[data-v-97dea446]{position:relative;display:flex;flex-direction:column;gap:16px;background:var(--subject-panel-bg);border:1px solid var(--subject-panel-border);padding:clamp(18px,3vw,26px);border-radius:20px;box-shadow:var(--subject-panel-shadow);overflow:hidden}.subject-panel[data-v-97dea446]:before{content:"";position:absolute;left:-10%;right:-10%;top:-22%;height:48%;background:var(--subject-panel-glow);pointer-events:none}.subject-head[data-v-97dea446]{display:flex;align-items:flex-start;gap:16px;z-index:1}.grade-pill[data-v-97dea446]{min-width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-weight:700;font-size:1.35rem;background:var(--surface-chip-active);color:var(--fg-inverse)}.titles[data-v-97dea446]{display:flex;flex-direction:column;gap:6px}.titles h2[data-v-97dea446]{margin:0;font-size:clamp(1.4rem,3.6vw,2rem);font-weight:600;letter-spacing:.01em}.eyebrow[data-v-97dea446]{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--tagline-color)}.subtitle[data-v-97dea446]{font-size:.9rem;color:var(--fg-muted)}.code[data-v-97dea446]{margin-left:auto;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--subject-code-text);border:1px solid var(--subject-code-border);border-radius:12px;padding:6px 10px}.meta-row[data-v-97dea446]{display:flex;flex-wrap:wrap;gap:10px;z-index:1}.meta-chip[data-v-97dea446]{background:var(--meta-chip-bg);border:1px solid var(--meta-chip-border);border-radius:12px;padding:6px 10px;font-size:.82rem;color:var(--meta-chip-text)}.meta-chip strong[data-v-97dea446]{color:var(--fg-strong);font-weight:600}.note[data-v-97dea446]{font-size:.82rem;color:var(--note-text);padding:8px 12px;border-left:3px solid var(--note-border);background:var(--note-bg);border-radius:10px}.stat-grid[data-v-97dea446]{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}.stat-card[data-v-97dea446]{background:var(--stat-bg);border:1px solid var(--stat-border);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}.stat-value[data-v-97dea446]{font-size:clamp(1.2rem,2.8vw,1.6rem);font-weight:600;color:var(--stat-value)}.stat-label[data-v-97dea446]{font-size:.85rem;color:var(--stat-label)}.stat-hint[data-v-97dea446]{font-size:.75rem;color:var(--stat-hint)}.placeholder[data-v-97dea446]{position:relative;z-index:1;font-size:.85rem;line-height:1.5;color:var(--stat-label)}[data-grade=S] .grade-pill[data-v-97dea446]{background:linear-gradient(135deg,#87d7ff66,#55afff4d)}[data-grade=A] .grade-pill[data-v-97dea446]{background:linear-gradient(135deg,#94ffd659,#62dab247)}[data-grade=B] .grade-pill[data-v-97dea446]{background:linear-gradient(135deg,#ffde9659,#ffbe7847)}[data-grade=C] .grade-pill[data-v-97dea446]{background:linear-gradient(135deg,#ffc29659,#ffa07847)}[data-grade=D] .grade-pill[data-v-97dea446]{background:linear-gradient(135deg,#ffa49e59,#ff787847)}[data-grade=F] .grade-pill[data-v-97dea446]{background:linear-gradient(135deg,#a2a2a259,#78787847)}@media (max-width: 720px){.subject-head[data-v-97dea446]{flex-direction:column;align-items:flex-start}.code[data-v-97dea446]{margin-left:0}}.view.course[data-v-ae9a1106]{display:flex;flex-direction:column;gap:clamp(20px,3vw,30px);padding:0 1rem 4rem}.glass-block[data-v-ae9a1106]{background:var(--surface-panel);border:1px solid var(--surface-panel-border);border-radius:24px;box-shadow:var(--surface-panel-shadow)}.glass-block.variant-menu[data-v-ae9a1106]{background:transparent;border:none;box-shadow:none}.top-search-area[data-v-ae9a1106]{max-width:1040px;margin:clamp(32px,7vw,72px) auto clamp(24px,5vw,52px);padding:0 12px}.top-search-area[data-v-ae9a1106] .searchbar{background:var(--card);border-color:var(--border);box-shadow:var(--shadow-soft);width:100%}.top-search-area[data-v-ae9a1106] .searchbar .field{color:var(--fg-soft);font-weight:500}.top-search-area[data-v-ae9a1106] .searchbar .field::placeholder{color:var(--fg-muted)}.loading[data-v-ae9a1106]{color:var(--loading-color);font-size:.92rem;padding:1rem 0;text-align:center}.active-card[data-v-ae9a1106]{display:flex;gap:16px;align-items:flex-start;padding:6px 0}.active-icon[data-v-ae9a1106]{flex:0 0 auto;width:52px;height:52px;border-radius:16px;background:#ffffff24;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #ffffff1f}.active-icon img[data-v-ae9a1106]{width:30px;height:30px;display:block}.active-copy h4[data-v-ae9a1106]{margin:0 0 6px;font-size:1rem;font-weight:600}.active-copy p[data-v-ae9a1106]{margin:0;color:var(--fg-muted);line-height:1.5}.option-grid[data-v-ae9a1106]{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.option-tile[data-v-ae9a1106]{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:18px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);text-align:left;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease}.option-tile[data-v-ae9a1106]:hover{transform:translateY(-2px);box-shadow:var(--chip-shadow-hover)}.option-tile.active[data-v-ae9a1106]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.option-tile.planned[data-v-ae9a1106]{opacity:.65}.option-tile img[data-v-ae9a1106]{width:28px;height:28px}.option-tile .label[data-v-ae9a1106]{font-weight:600}.option-tile .note[data-v-ae9a1106]{font-size:.85rem;color:var(--fg-muted);line-height:1.4}.option-tile .status[data-v-ae9a1106]{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.option-row[data-v-ae9a1106]{display:flex;flex-wrap:wrap;gap:12px}.option-pill[data-v-ae9a1106]{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);min-width:200px;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease;text-align:left}.option-pill[data-v-ae9a1106]:hover{transform:translateY(-1px);box-shadow:var(--chip-shadow-hover)}.option-pill.active[data-v-ae9a1106]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.option-pill.planned[data-v-ae9a1106]{opacity:.65}.option-pill .label[data-v-ae9a1106]{font-weight:600}.option-pill .note[data-v-ae9a1106]{font-size:.82rem;color:var(--fg-muted)}.option-pill .status[data-v-ae9a1106]{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.visual-title-card[data-v-ae9a1106]{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 22px}.visual-title-card h2[data-v-ae9a1106]{margin:0;font-size:clamp(1.4rem,3vw,1.9rem)}.visual-title-card p[data-v-ae9a1106]{margin:6px 0 0;color:var(--fg-muted);max-width:68ch}.visual-title-card .toggle-icon-button[data-v-ae9a1106]{align-self:flex-start;width:38px;height:38px;border-radius:999px;border:none;display:grid;place-items:center;background:#94a3b82e;box-shadow:inset 0 0 0 1px #ffffff14,0 12px 24px #0f172a38;color:var(--fg-soft);cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.visual-title-card .toggle-icon-button[data-v-ae9a1106]:hover{background:#94a3b842;box-shadow:inset 0 0 0 1px #ffffff1f,0 16px 28px #0f172a42}.visual-title-card .toggle-icon-button[data-v-ae9a1106]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.visual-title-card .toggle-icon-button svg[data-v-ae9a1106]{width:20px;height:20px;transition:transform .2s ease}.visual-title-card .toggle-icon-button[aria-expanded=true] svg[data-v-ae9a1106]{transform:rotate(180deg)}.course-panel[data-v-ae9a1106]{position:relative;display:grid;grid-template-columns:minmax(160px,.3fr) minmax(220px,.34fr) minmax(320px,1fr);column-gap:clamp(26px,5vw,60px);padding:clamp(18px,2.8vw,24px);overflow:hidden}.left[data-v-ae9a1106]{display:flex;align-items:flex-start;justify-content:center}.big-grade[data-v-ae9a1106]{position:sticky;top:clamp(12px,2vw,16px);width:clamp(96px,18vw,140px);height:clamp(96px,18vw,140px);display:grid;place-items:center;border-radius:28px;font-size:clamp(42px,6vw,62px);font-weight:700;color:var(--fg-inverse);box-shadow:var(--subject-panel-shadow)}.mid[data-v-ae9a1106]{display:flex;flex-direction:column;gap:clamp(12px,2vw,18px)}.theme-row[data-v-ae9a1106]{position:relative;display:grid;grid-template-columns:clamp(40px,4.8vw,52px) 1fr;align-items:center;gap:clamp(10px,1.4vw,14px);padding:clamp(10px,1.5vw,14px);color:var(--fg-inverse)}.theme-row .g[data-v-ae9a1106]{font-weight:900;font-size:clamp(18px,2.8vw,22px)}.theme-row .label[data-v-ae9a1106]{font-weight:500;font-size:clamp(.85rem,1.6vw,1rem);letter-spacing:.01em}.right[data-v-ae9a1106]{position:relative}.q-col[data-v-ae9a1106]{display:flex;flex-direction:column;gap:clamp(16px,2vw,22px)}.q-group[data-v-ae9a1106]{display:flex;flex-direction:column;gap:4px;position:relative}.q-row[data-v-ae9a1106]{display:grid;grid-template-columns:clamp(34px,4vw,44px) 1fr auto;align-items:center;padding:clamp(6px,1vw,10px) clamp(10px,1.4vw,14px);border-radius:14px;box-sizing:border-box;color:var(--fg-inverse)}.q-row .label[data-v-ae9a1106]{font-weight:300;opacity:.92;font-size:clamp(.82rem,1.4vw,.95rem);line-height:1.3}.q-row .pct[data-v-ae9a1106]{padding-left:clamp(6px,.9vw,10px);font-weight:300;opacity:.88;font-size:clamp(.78rem,1.3vw,.9rem)}.wires[data-v-ae9a1106]{position:absolute;left:0;top:0;pointer-events:none;z-index:0}.placeholder-card[data-v-ae9a1106]{padding:22px;display:flex;flex-direction:column;gap:10px}.placeholder-card h3[data-v-ae9a1106]{margin:0;font-size:1.1rem}.placeholder-card .footnote[data-v-ae9a1106]{font-size:.85rem;color:var(--fg-muted)}.empty-state[data-v-ae9a1106]{padding:12px 16px;font-weight:300;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.empty-state .title[data-v-ae9a1106]{font-weight:500}.empty-state .hint[data-v-ae9a1106]{opacity:.8}.empty-state .code[data-v-ae9a1106]{opacity:.65;font-size:.9em}.empty-state .actions[data-v-ae9a1106]{display:flex;gap:.5rem;align-items:center}.ghost[data-v-ae9a1106]{border-radius:999px;border:1px solid var(--ghost-border);background:var(--ghost-bg);color:inherit;padding:6px 18px;font-size:.82rem;transition:background .2s ease,transform .12s ease}.ghost[data-v-ae9a1106]:hover{background:var(--ghost-hover);transform:translateY(-1px)}@media (max-width: 1180px){.course-panel[data-v-ae9a1106]{grid-template-columns:minmax(140px,.3fr) minmax(200px,.34fr) minmax(280px,1fr);column-gap:clamp(22px,5vw,52px)}}@media (max-width: 980px){.course-panel[data-v-ae9a1106]{grid-template-columns:minmax(120px,.3fr) minmax(190px,.34fr) minmax(240px,1fr);padding:clamp(16px,2.5vw,22px);column-gap:clamp(18px,5vw,40px)}}@media (max-width: 820px){.course-panel[data-v-ae9a1106]{grid-template-columns:minmax(110px,.3fr) minmax(170px,.34fr) minmax(210px,1fr);column-gap:clamp(16px,4.5vw,32px);padding:16px}}@media (max-width: 700px){.course-panel[data-v-ae9a1106]{grid-template-columns:minmax(100px,.32fr) minmax(150px,.34fr) minmax(180px,1fr);column-gap:16px;padding:14px}.theme-row[data-v-ae9a1106]{padding:9px 10px}.theme-row .label[data-v-ae9a1106]{font-size:.82rem}.q-row[data-v-ae9a1106]{padding:6px 9px}}@media (max-width: 620px){.course-panel[data-v-ae9a1106]{grid-template-columns:minmax(92px,.3fr) minmax(136px,.34fr) minmax(160px,1fr);column-gap:12px;padding:12px}.big-grade[data-v-ae9a1106]{width:clamp(84px,20vw,120px);height:clamp(84px,20vw,120px);font-size:clamp(36px,7vw,54px)}.theme-row .label[data-v-ae9a1106]{font-size:.78rem}.q-row[data-v-ae9a1106]{grid-template-columns:28px 1fr auto;padding:6px 8px}.q-row .label[data-v-ae9a1106]{font-size:.78rem}}@media (max-width: 540px){.course-panel[data-v-ae9a1106]{grid-template-columns:minmax(84px,.3fr) minmax(120px,.34fr) minmax(150px,1fr);column-gap:10px;padding:12px}.q-row[data-v-ae9a1106]{grid-template-columns:26px 1fr auto}.q-row .label[data-v-ae9a1106],.q-row .pct[data-v-ae9a1106]{font-size:.75rem}.visual-title-card[data-v-ae9a1106]{flex-direction:column;align-items:flex-start}}@media (max-width: 720px){.option-pill[data-v-ae9a1106]{min-width:160px}.option-grid[data-v-ae9a1106]{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}.view.provider-tiers[data-v-d436acdd]{display:flex;flex-direction:column;gap:clamp(20px,3vw,30px);padding:0 1rem 4rem}.glass-block[data-v-d436acdd]{background:var(--surface-panel);border:1px solid var(--surface-panel-border);border-radius:24px;box-shadow:var(--surface-panel-shadow)}.glass-block.variant-menu[data-v-d436acdd]{background:transparent;border:none;box-shadow:none}.top-search-area[data-v-d436acdd]{width:min(100%,1040px);max-width:1040px;margin:clamp(32px,7vw,72px) auto clamp(24px,5vw,52px);padding:0 12px;display:flex}.top-search-area[data-v-d436acdd] .searchbar{flex:1 1 auto;background:var(--card);border-color:var(--border);box-shadow:var(--shadow-soft);width:100%}.top-search-area[data-v-d436acdd] .searchbar .field{color:var(--fg-soft);font-weight:500}.top-search-area[data-v-d436acdd] .searchbar .field::placeholder{color:var(--fg-muted)}.loading[data-v-d436acdd]{color:var(--loading-color);font-size:.92rem;padding:1rem 0;text-align:center}.control-rail[data-v-d436acdd]{display:flex;flex-direction:column;gap:18px;padding:18px 22px 24px;border-radius:28px;background:var(--filters-surface);border:1px solid var(--filters-border);box-shadow:var(--filters-shadow);width:min(100%,1040px);margin:0 auto}.control-tab-list[data-v-d436acdd]{display:flex;gap:14px;width:100%;align-items:stretch}.control-tab-button[data-v-d436acdd]{position:relative;flex:1 1 0;display:flex;align-items:stretch;gap:0;padding:0;border-radius:20px;border:1px solid var(--control-tab-border);background:var(--control-tab-bg);box-shadow:var(--control-tab-shadow);cursor:pointer;text-align:left;color:inherit;transition:transform .18s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease;min-width:0;overflow:hidden;height:72px}.control-tab-button[data-v-d436acdd]:hover{transform:translateY(-2px);box-shadow:var(--control-tab-shadow)}.control-tab-button[data-v-d436acdd]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.control-tab-button.active[data-v-d436acdd]{border-color:var(--control-tab-active-border);background:var(--control-tab-active-bg);box-shadow:var(--control-tab-shadow)}.control-tab-button .tab-icon[data-v-d436acdd]{flex:0 0 auto;display:flex;align-items:stretch;justify-content:center;border-radius:20px 0 0 20px;overflow:hidden;width:72px;background:var(--control-tab-icon-bg);box-shadow:inset 0 0 0 1px var(--control-tab-icon-border)}.control-tab-button .tab-icon img[data-v-d436acdd]{height:100%;width:100%;object-fit:contain;display:block}.control-tab-button .tab-body[data-v-d436acdd]{flex:1 1 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;min-width:0}.control-tab-button .tab-text[data-v-d436acdd]{display:flex;flex-direction:column;gap:6px;min-width:0}.control-tab-button .tab-title[data-v-d436acdd]{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--filters-label);font-weight:600}.control-tab-button .tab-summary[data-v-d436acdd]{font-size:1.08rem;font-weight:600;color:var(--fg-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.control-tab-button.active .tab-summary[data-v-d436acdd]{color:var(--fg-strong)}.control-tab-button .tab-chevron[data-v-d436acdd]{flex:0 0 auto;width:36px;height:36px;border-radius:999px;display:grid;place-items:center;background:var(--control-tab-chevron-bg);box-shadow:var(--control-tab-chevron-shadow)}.control-tab-button .tab-chevron svg[data-v-d436acdd]{width:18px;height:18px;transition:transform .2s ease}.control-tab-button.active .tab-chevron[data-v-d436acdd]{background:var(--control-tab-chevron-active-bg);box-shadow:var(--control-tab-chevron-active-shadow)}.control-tab-button.active .tab-chevron svg[data-v-d436acdd]{transform:rotate(180deg)}.control-tab-panel[data-v-d436acdd]{border-radius:22px;border:1px solid var(--control-tab-panel-border);background:var(--control-tab-panel-bg);box-shadow:var(--control-tab-panel-shadow);padding:20px 22px 26px;display:flex;flex-direction:column;gap:18px}.control-panel-enter-active[data-v-d436acdd],.control-panel-leave-active[data-v-d436acdd]{transition:height .26s ease,padding .26s ease,opacity .24s ease}.control-panel-enter-from[data-v-d436acdd],.control-panel-leave-to[data-v-d436acdd]{opacity:0}.control-panel-enter-to[data-v-d436acdd],.control-panel-leave-from[data-v-d436acdd]{opacity:1}.active-card[data-v-d436acdd]{display:flex;gap:16px;align-items:flex-start;padding:6px 0}.active-icon[data-v-d436acdd]{flex:0 0 auto;width:52px;height:52px;border-radius:16px;background:var(--control-tab-icon-bg);display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--control-tab-icon-border)}.active-icon img[data-v-d436acdd]{width:30px;height:30px;display:block}.active-copy h4[data-v-d436acdd]{margin:0 0 6px;font-size:1rem;font-weight:600}.active-copy p[data-v-d436acdd]{margin:0;color:var(--fg-muted);line-height:1.5}.option-grid[data-v-d436acdd]{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.option-tile[data-v-d436acdd]{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:18px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);text-align:left;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease}.option-tile[data-v-d436acdd]:hover{transform:translateY(-2px);box-shadow:var(--chip-shadow-hover)}.option-tile.active[data-v-d436acdd]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.option-tile.planned[data-v-d436acdd]{opacity:.65}.option-tile img[data-v-d436acdd]{width:28px;height:28px}.option-tile .label[data-v-d436acdd]{font-weight:600}.option-tile .note[data-v-d436acdd]{font-size:.85rem;color:var(--fg-muted);line-height:1.4}.option-tile .status[data-v-d436acdd]{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.option-row[data-v-d436acdd]{display:flex;flex-wrap:wrap;gap:12px}.option-pill[data-v-d436acdd]{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);min-width:200px;transition:transform .16s ease,box-shadow .2s ease,border-color .2s ease;text-align:left}.option-pill[data-v-d436acdd]:hover{transform:translateY(-1px);box-shadow:var(--chip-shadow-hover)}.option-pill.active[data-v-d436acdd]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.option-pill.planned[data-v-d436acdd]{opacity:.65}.option-pill .label[data-v-d436acdd]{font-weight:600}.option-pill .note[data-v-d436acdd]{font-size:.82rem;color:var(--fg-muted)}.option-pill .status[data-v-d436acdd]{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.visual-title-card[data-v-d436acdd]{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 22px}.visual-title-card h2[data-v-d436acdd]{margin:0;font-size:clamp(1.4rem,3vw,1.8rem)}.visual-title-card p[data-v-d436acdd]{margin:6px 0 0;color:var(--fg-muted);max-width:68ch}.visual-title-card .title-actions[data-v-d436acdd]{display:flex;gap:10px;align-items:center}.visual-title-card .toggle-icon-button[data-v-d436acdd]{align-self:flex-start;width:38px;height:38px;border-radius:999px;border:none;display:grid;place-items:center;background:var(--control-tab-chevron-bg);box-shadow:var(--control-tab-chevron-shadow);color:var(--fg-muted);cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.visual-title-card .toggle-icon-button[data-v-d436acdd]:hover{background:var(--control-tab-chevron-active-bg);box-shadow:var(--control-tab-chevron-active-shadow)}.visual-title-card .toggle-icon-button[data-v-d436acdd]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.visual-title-card .toggle-icon-button svg[data-v-d436acdd]{width:20px;height:20px;transition:transform .2s ease}.visual-title-card .toggle-icon-button[aria-expanded=true] svg[data-v-d436acdd]{transform:rotate(180deg)}.visual-title-card .export-button[data-v-d436acdd]{align-self:flex-start;border-radius:999px;border:1px solid var(--ghost-border);background:var(--ghost-bg);color:inherit;padding:6px 14px;font-size:.82rem;cursor:pointer;transition:background .2s ease,transform .12s ease}.visual-title-card .export-button[data-v-d436acdd]:hover{background:var(--ghost-hover);transform:translateY(-1px)}.tier-grid[data-v-d436acdd]{display:grid;gap:16px;padding:22px}.tier-row[data-v-d436acdd]{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:stretch}.tier-label[data-v-d436acdd]{display:grid;place-items:center;font-weight:900;color:#fff;border-radius:16px;min-height:72px}.tier-content[data-v-d436acdd]{padding:12px;border-radius:16px;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.chips[data-v-d436acdd]{display:flex;flex-wrap:wrap;gap:8px}.chip[data-v-d436acdd]{border-radius:12px;border:1px solid var(--surface-chip-border);background:var(--surface-chip);color:var(--fg);transition:transform .18s ease,box-shadow .18s ease;padding:6px 12px}.chip[data-v-d436acdd]:hover{transform:translateY(-1px);box-shadow:var(--chip-shadow-hover)}.chip-count[data-v-d436acdd]{margin-left:.5ch;padding:2px 6px;border-radius:10px;background:var(--meta-chip-bg);color:var(--meta-chip-text);border:1px solid var(--meta-chip-border);font-size:.72rem}.tier-divider[data-v-d436acdd]{grid-column:1 / -1;height:2px;background:var(--tier-divider)}.placeholder-card[data-v-d436acdd]{padding:22px;display:flex;flex-direction:column;gap:10px}.placeholder-card h3[data-v-d436acdd]{margin:0;font-size:1.1rem}.placeholder-card .footnote[data-v-d436acdd]{font-size:.85rem;color:var(--fg-muted)}.ghost[data-v-d436acdd]{border-radius:999px;border:1px solid var(--ghost-border);background:var(--ghost-bg);color:inherit;padding:6px 18px;font-size:.82rem;transition:background .2s ease,transform .12s ease}.ghost[data-v-d436acdd]:hover{background:var(--ghost-hover);transform:translateY(-1px)}@media (max-width: 980px){.control-rail[data-v-d436acdd]{padding:16px 18px 22px}.control-tab-list[data-v-d436acdd]{gap:12px}.control-tab-button .tab-body[data-v-d436acdd]{padding:12px 16px;gap:14px}.control-tab-button .tab-summary[data-v-d436acdd]{font-size:1rem}.tier-row[data-v-d436acdd]{grid-template-columns:60px 1fr}.visual-title-card[data-v-d436acdd]{flex-direction:column;align-items:flex-start}}@media (max-width: 720px){.control-rail[data-v-d436acdd]{padding:14px 16px 18px;gap:14px}.control-tab-list[data-v-d436acdd]{gap:10px}.control-tab-button[data-v-d436acdd]{height:64px}.control-tab-button .tab-icon[data-v-d436acdd]{width:60px}.control-tab-button .tab-body[data-v-d436acdd]{padding:10px 14px;gap:12px}.control-tab-button .tab-title[data-v-d436acdd]{font-size:.74rem;letter-spacing:.12em}.control-tab-button .tab-summary[data-v-d436acdd]{font-size:.95rem}.control-tab-button .tab-chevron[data-v-d436acdd]{width:34px;height:34px}.control-tab-panel[data-v-d436acdd]{padding:18px 16px 22px}.option-pill[data-v-d436acdd]{min-width:160px}.option-grid[data-v-d436acdd]{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.tier-grid[data-v-d436acdd]{padding:18px}.tier-label[data-v-d436acdd]{min-height:60px;font-size:1.1rem}}@media (max-width: 600px){.control-tab-list[data-v-d436acdd]{gap:8px}.control-tab-button[data-v-d436acdd]{height:58px}.control-tab-button .tab-icon[data-v-d436acdd]{width:52px}.control-tab-button .tab-body[data-v-d436acdd]{padding:9px 12px;gap:10px}.control-tab-button .tab-title[data-v-d436acdd]{font-size:.7rem;letter-spacing:.1em}.control-tab-button .tab-summary[data-v-d436acdd]{font-size:.88rem;line-height:1.2;white-space:normal;overflow:visible}.control-tab-button .tab-chevron[data-v-d436acdd]{width:32px;height:32px}.tier-grid[data-v-d436acdd]{padding:16px}.tier-row[data-v-d436acdd]{grid-template-columns:50px 1fr}.tier-label[data-v-d436acdd]{min-height:54px;font-size:1rem}}@media (max-width: 520px){.control-tab-button[data-v-d436acdd]{height:52px}.control-tab-button .tab-icon[data-v-d436acdd]{width:44px}.control-tab-button .tab-body[data-v-d436acdd]{padding:8px 10px;gap:8px}.control-tab-button .tab-summary[data-v-d436acdd]{display:none}.control-tab-button .tab-title[data-v-d436acdd]{font-size:.68rem}.control-tab-button .tab-chevron[data-v-d436acdd]{width:30px;height:30px}}@media (max-width: 460px){.control-tab-list[data-v-d436acdd]{gap:6px}.control-tab-button[data-v-d436acdd]{flex:1 1 0;height:46px}.control-tab-button .tab-icon[data-v-d436acdd]{width:38px}.control-tab-button .tab-body[data-v-d436acdd]{padding:7px}.control-tab-button .tab-text[data-v-d436acdd]{position:absolute;left:0;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.control-tab-button .tab-chevron[data-v-d436acdd]{display:none}}.tier-summary[data-v-691e4257]{position:relative;display:block;padding:clamp(18px,2.8vw,28px);border-radius:26px;background:var(--surface-panel);border:1px solid var(--surface-panel-border);box-shadow:var(--surface-panel-shadow)}.summary-layout[data-v-691e4257]{display:grid;gap:clamp(18px,3vw,32px);grid-template-columns:minmax(320px,1.1fr) minmax(260px,.9fr);align-items:stretch}.summary-column[data-v-691e4257]{display:flex;flex-direction:column;gap:clamp(18px,2vw,26px)}.summary-head[data-v-691e4257]{display:flex;flex-direction:column;gap:16px}.switch-slot[data-v-691e4257]{align-self:flex-start}.identity[data-v-691e4257]{display:flex;flex-direction:column;gap:10px}.eyebrow[data-v-691e4257]{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tagline-color)}.identity h1[data-v-691e4257]{margin:0;font-size:clamp(2rem,4vw,2.8rem);font-weight:700;letter-spacing:.02em}.subtitle[data-v-691e4257]{margin:0;font-size:.95rem;color:var(--fg-muted);max-width:48ch}.filters-slot[data-v-691e4257] .filter-bar{margin:0;padding:18px 18px 16px;background:var(--filters-surface);border-radius:20px;border:1px solid var(--filters-border);box-shadow:var(--filters-shadow)}.filters-slot[data-v-691e4257] .filter-buttons{margin-left:0;justify-content:flex-start}.filters-slot[data-v-691e4257] .filter-label{color:var(--filters-label)}.filters-slot[data-v-691e4257] .filter-button{background:var(--filters-chip);border-color:var(--filters-chip-border)}.filters-slot[data-v-691e4257] .filter-button .btn-label{color:var(--filters-chip-label)}.filters-slot[data-v-691e4257] .filter-button.active{background:var(--filters-chip-active);border-color:var(--filters-chip-active-border);box-shadow:var(--filters-chip-active-shadow)}.filters-slot[data-v-691e4257] .filter-reset{border-color:var(--filters-reset-border);color:var(--filters-reset-text)}.filters-slot[data-v-691e4257] .filter-reset:hover{background:var(--filters-reset-hover);color:var(--filters-reset-text-hover)}.filters-slot[data-v-691e4257] .filter-hint{color:var(--filters-hint)}.filters-fallback[data-v-691e4257]{display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:20px;background:var(--filters-surface);border:1px solid var(--filters-border);box-shadow:var(--filters-shadow)}.filters-label[data-v-691e4257]{display:flex;align-items:center;gap:10px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--filters-label)}.filters-label svg[data-v-691e4257]{width:18px;height:18px}.filter-tags[data-v-691e4257]{display:flex;flex-wrap:wrap;gap:10px}.tag[data-v-691e4257]{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:16px;background:var(--filters-chip);border:1px solid var(--filters-chip-border);min-width:160px}.tag-label[data-v-691e4257]{font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--filters-chip-label)}.tag-value[data-v-691e4257]{font-size:.95rem;font-weight:600;color:var(--fg)}.summary-stats[data-v-691e4257]{padding:4px 0}.stats-grid[data-v-691e4257]{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat[data-v-691e4257]{display:flex;gap:16px;align-items:center;padding:14px 16px;border-radius:18px;background:var(--stat-card-bg);border:1px solid var(--stat-card-border);box-shadow:var(--stat-card-shadow)}.stat-visual[data-v-691e4257]{flex:0 0 auto}.donut[data-v-691e4257]{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--stat-chart-rest)}.donut-cap[data-v-691e4257]{width:34px;height:34px;border-radius:50%;background:var(--surface-panel);box-shadow:inset 0 0 0 1px var(--stat-card-border)}.stat-text[data-v-691e4257]{display:flex;flex-direction:column;gap:4px}.stat-value[data-v-691e4257]{font-size:clamp(1.1rem,2.4vw,1.5rem);font-weight:700;color:var(--stat-value)}.stat-label[data-v-691e4257]{font-size:.9rem;color:var(--stat-label)}.stat-hint[data-v-691e4257]{font-size:.75rem;color:var(--stat-hint)}.summary-map[data-v-691e4257]{display:flex;align-items:center;justify-content:flex-end}.map-frame[data-v-691e4257]{width:100%;max-width:360px;aspect-ratio:4 / 3}.summary-map[data-v-691e4257] .uk-map,.summary-map[data-v-691e4257] .map-shell{width:100%;height:100%}.summary-map[data-v-691e4257] .leaflet-map{height:100%}@media (max-width: 600px){.stats-grid[data-v-691e4257]{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (max-width: 900px){.summary-layout[data-v-691e4257]{grid-template-columns:1fr}.summary-map[data-v-691e4257]{justify-content:stretch}.map-frame[data-v-691e4257]{max-width:none}.summary-map[data-v-691e4257] .leaflet-map{height:100%}}@media (min-width: 1300px){.map-frame[data-v-691e4257]{max-width:420px}}.info-boxes[data-v-879ce936]{margin:38px 0}.grid[data-v-879ce936]{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.box[data-v-879ce936]{position:relative;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:18px;padding:16px 18px 18px;box-shadow:var(--shadow-soft);cursor:pointer;transition:box-shadow .25s ease,transform .2s ease,border-color .25s ease;display:flex;gap:16px;align-items:flex-start}.box[data-v-879ce936]:hover{transform:translateY(-3px);box-shadow:var(--shadow-strong)}.icon[data-v-879ce936]{flex:0 0 auto;width:48px;height:48px;border-radius:14px;background:var(--card-strong);display:grid;place-items:center;box-shadow:var(--shadow-soft);border:1px solid var(--border-strong)}.icon img[data-v-879ce936]{width:28px;height:28px;display:block}.copy[data-v-879ce936]{display:flex;flex-direction:column;gap:8px}.box h3[data-v-879ce936]{margin:0;font-size:1.05rem}.box p[data-v-879ce936]{margin:0;color:var(--fg-muted);font-size:.9rem;line-height:1.4}.box .cta[data-v-879ce936]{margin-top:auto;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:600}.box.link[data-v-879ce936]{background:linear-gradient(140deg,var(--card),var(--card-soft))}@media (max-width: 900px){.grid[data-v-879ce936]{grid-template-columns:1fr}}.view.courses-tiers[data-v-9a00757b]{display:block;padding:0 1rem 4rem}.top-search-area[data-v-9a00757b]{max-width:1040px;margin:clamp(36px,8vw,80px) auto clamp(28px,6vw,56px);padding:0 12px}.top-search-area[data-v-9a00757b] .searchbar{background:var(--card);border-color:var(--border);box-shadow:var(--shadow-soft)}.export-bar[data-v-9a00757b]{max-width:1040px;margin:0 auto;padding:0 12px;display:flex;justify-content:flex-end}.export-button[data-v-9a00757b]{border-radius:999px;border:1px solid var(--ghost-border);background:var(--ghost-bg);color:inherit;padding:6px 14px;font-size:.82rem;cursor:pointer;transition:background .2s ease,transform .12s ease}.export-button[data-v-9a00757b]:hover{background:var(--ghost-hover);transform:translateY(-1px)}.tier-grid[data-v-9a00757b]{display:grid;gap:16px;margin-top:clamp(28px,5vw,52px)}.tier-row[data-v-9a00757b]{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:stretch}.tier-label[data-v-9a00757b]{display:grid;place-items:center;font-weight:900;color:#fff;border-radius:16px;min-height:72px}.tier-content[data-v-9a00757b]{padding:10px}.chips[data-v-9a00757b]{display:flex;flex-wrap:wrap;gap:8px}.chip[data-v-9a00757b]{border:none}.subject-chip[data-v-9a00757b]{border:1px solid var(--surface-chip-border)}.subject-chip .chip-count[data-v-9a00757b]{margin-left:.5ch;padding:2px 6px;border-radius:10px;background:var(--meta-chip-bg);color:var(--meta-chip-text);border:1px solid var(--meta-chip-border);font-size:.72rem}.tier-divider[data-v-9a00757b]{grid-column:1 / -1;height:2px;background:var(--tier-divider)}.view.subject-tiers[data-v-7cc36cea]{display:flex;flex-direction:column;gap:clamp(20px,3vw,30px);padding:0 1rem 4rem}.top-search-area[data-v-7cc36cea]{max-width:1040px;margin:clamp(36px,8vw,80px) auto clamp(28px,6vw,56px);padding:0 12px}.top-search-area[data-v-7cc36cea] .searchbar{background:var(--card);border-color:var(--border);box-shadow:var(--shadow-soft)}.export-bar[data-v-7cc36cea]{max-width:1040px;margin:0 auto;padding:0 12px;display:flex;justify-content:flex-end}.export-button[data-v-7cc36cea]{border-radius:999px;border:1px solid var(--ghost-border);background:var(--ghost-bg);color:inherit;padding:6px 14px;font-size:.82rem;cursor:pointer;transition:background .2s ease,transform .12s ease}.export-button[data-v-7cc36cea]:hover{background:var(--ghost-hover);transform:translateY(-1px)}.tier-grid[data-v-7cc36cea]{display:grid;gap:16px}.tier-row[data-v-7cc36cea]{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:stretch}.tier-label[data-v-7cc36cea]{display:grid;place-items:center;font-weight:900;color:#fff;border-radius:16px;min-height:72px}.tier-content[data-v-7cc36cea]{padding:10px}.chips[data-v-7cc36cea]{display:flex;flex-wrap:wrap;gap:8px}.chip[data-v-7cc36cea]{border:none}.chip .chip-count[data-v-7cc36cea]{margin-left:.5ch;padding:2px 6px;border-radius:10px;background:var(--meta-chip-bg);color:var(--meta-chip-text);border:1px solid var(--meta-chip-border);font-size:.72rem}.tier-divider[data-v-7cc36cea]{grid-column:1 / -1;height:2px;background:var(--tier-divider)}.crime-page[data-v-30e35031]{display:flex;flex-direction:column;gap:12px;padding:0 clamp(16px,4vw,48px) 64px}.top-search-area[data-v-30e35031]{max-width:1040px;margin:clamp(36px,8vw,72px) auto clamp(24px,5vw,44px);padding:0 12px;align-self:stretch}.top-search-area[data-v-30e35031] .searchbar{background:var(--card);border-color:var(--border);box-shadow:var(--shadow-soft)}.header[data-v-30e35031]{display:flex;align-items:flex-end;gap:16px;justify-content:space-between;flex-wrap:wrap}.header h1[data-v-30e35031]{font-size:1.25rem;margin:0}.controls[data-v-30e35031]{display:flex;gap:12px;align-items:center}.controls label[data-v-30e35031]{display:flex;gap:8px;align-items:center;font-size:.9rem}.controls .toggle[data-v-30e35031]{gap:6px}.map-wrap[data-v-30e35031]{position:relative;height:70vh;border-radius:18px;overflow:hidden;background:var(--map-shell-bg);box-shadow:var(--map-shell-shadow)}.leaflet-map[data-v-30e35031]{width:100%;height:100%}.loading-overlay[data-v-30e35031]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;background:color-mix(in oklab,var(--bg) 30%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.spinner[data-v-30e35031]{width:28px;height:28px;border-radius:50%;border:3px solid color-mix(in oklab,var(--fg) 20%,transparent);border-top-color:var(--fg);animation:spin-30e35031 1s linear infinite}.loading-text[data-v-30e35031]{font-size:.9rem;color:var(--muted)}.chips[data-v-30e35031]{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.chip[data-v-30e35031]{background:var(--card);color:var(--fg);border:1px solid var(--border);border-radius:999px;padding:4px 10px;font-size:.85rem}.chip strong[data-v-30e35031]{font-weight:700}@keyframes spin-30e35031{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.map-error[data-v-30e35031]{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:var(--map-error);font-size:.9rem}.legend[data-v-30e35031]{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--muted)}.legend-label[data-v-30e35031]{min-width:46px;text-align:center}.swatches[data-v-30e35031]{display:flex;gap:4px;align-items:center}.legend .swatch[data-v-30e35031]{width:22px;height:10px;border-radius:4px}.view.legal[data-v-3323fefb],.panel[data-v-3323fefb],.view.legal[data-v-2ff95acb],.panel[data-v-2ff95acb],.view.legal[data-v-4e48a054]{padding:16px}.panel[data-v-4e48a054]{padding:16px;max-width:720px;margin:0 auto}.intro[data-v-4e48a054]{margin:0 0 16px;color:var(--text-muted, #666)}.contact-form[data-v-4e48a054]{display:grid;gap:12px}.row[data-v-4e48a054]{display:grid;gap:6px}.row label[data-v-4e48a054]{font-weight:600}input[type=text][data-v-4e48a054],input[type=email][data-v-4e48a054],textarea[data-v-4e48a054]{padding:10px 12px;border-radius:8px;border:1px solid rgba(0,0,0,.12);background:#ffffffe6;color:#111}input[data-v-4e48a054]::placeholder,textarea[data-v-4e48a054]::placeholder{color:#00000073}@media (prefers-color-scheme: dark){input[type=text][data-v-4e48a054],input[type=email][data-v-4e48a054],textarea[data-v-4e48a054]{background:#00000059;border-color:#ffffff38;color:#f2f2f2}input[data-v-4e48a054]::placeholder,textarea[data-v-4e48a054]::placeholder{color:#ffffff8c}}textarea[data-v-4e48a054]{resize:vertical}.err[data-v-4e48a054]{color:#b00020}.hp[data-v-4e48a054]{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.actions[data-v-4e48a054]{display:flex;align-items:center;gap:12px;margin-top:4px}.btn[data-v-4e48a054]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 14px;border-radius:999px;border:none;background:#0057e7;color:#fff;font-weight:600;cursor:pointer}.btn[disabled][data-v-4e48a054]{opacity:.6;cursor:not-allowed}.alert[data-v-4e48a054]{padding:10px 12px;border-radius:8px;margin:8px 0 12px}.alert.success[data-v-4e48a054]{background:#e6f7ec;color:#135f2a}.alert.error[data-v-4e48a054]{background:#fdecec;color:#8a1414}.note[data-v-4e48a054]{font-size:12px;color:#666}.about[data-v-afb69d88]{display:grid;gap:32px;padding-top:32px}.hero[data-v-afb69d88]{padding:clamp(24px,3vw,32px);border-radius:26px}.hero h1[data-v-afb69d88]{margin:0 0 16px;font-size:clamp(2.1rem,4vw,2.8rem)}.hero p[data-v-afb69d88]{margin:0 0 12px;color:var(--fg-muted);font-size:.98rem;line-height:1.6}.grid[data-v-afb69d88]{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card[data-v-afb69d88]{padding:clamp(20px,2.4vw,26px);border-radius:20px;display:flex;flex-direction:column;gap:12px}.card h2[data-v-afb69d88]{margin:0;font-size:1.1rem}.card ul[data-v-afb69d88]{margin:0;padding-left:18px;color:var(--fg-muted);font-size:.9rem;line-height:1.5}.card li[data-v-afb69d88]{margin:.35rem 0}.card p[data-v-afb69d88]{margin:0;color:var(--fg-muted);font-size:.9rem;line-height:1.5}.links[data-v-afb69d88]{display:flex;flex-wrap:wrap;gap:12px}.link[data-v-afb69d88]{color:var(--accent);text-decoration:none;font-weight:600}.link[data-v-afb69d88]:hover{text-decoration:underline}:root{color-scheme:light;--bg: #f6f8fd;--bg-alt: #e8eef9;--bg-gradient: linear-gradient(180deg, #f7f9fd 0%, #e8eef9 100%);--fg: #182134;--fg-strong: #111827;--fg-muted: rgba(24,33,52,.68);--fg-soft: rgba(24,33,52,.52);--fg-subtle: rgba(24,33,52,.4);--fg-inverse: #ffffff;--muted: var(--fg-muted);--accent: #2f81ff;--accent-soft: rgba(47,129,255,.18);--accent-strong: rgba(47,129,255,.65);--accent-ring: rgba(47,129,255,.25);--accent-contrast: #0b1c3d;--border: rgba(26,54,87,.18);--border-strong: rgba(26,54,87,.3);--border-soft: rgba(26,54,87,.1);--card: rgba(255,255,255,.82);--card-strong: rgba(255,255,255,.92);--card-soft: rgba(255,255,255,.7);--surface-panel: linear-gradient(140deg, rgba(255,255,255,.95), rgba(239,245,255,.9));--surface-panel-border: rgba(26,54,87,.14);--surface-panel-shadow: 0 24px 46px rgba(15,23,42,.14);--surface-panel-glow: radial-gradient(circle at top left, rgba(143,191,255,.35), transparent 65%);--subject-panel-bg: linear-gradient(140deg, rgba(250,252,255,.95), rgba(224,233,250,.9));--subject-panel-border: rgba(26,54,87,.16);--subject-panel-shadow: 0 24px 46px rgba(15,23,42,.12);--subject-panel-glow: radial-gradient(circle at top left, rgba(255,214,180,.35), transparent 70%);--surface-chip: rgba(255,255,255,.78);--surface-chip-hover: rgba(255,255,255,.92);--surface-chip-border: rgba(26,54,87,.16);--surface-chip-muted: rgba(24,33,52,.48);--surface-chip-active: rgba(47,129,255,.18);--surface-chip-active-border: rgba(47,129,255,.45);--ghost-bg: rgba(47,129,255,.12);--ghost-border: rgba(47,129,255,.35);--ghost-hover: rgba(47,129,255,.18);--ghost-strong-bg: rgba(47,129,255,.28);--overlay: rgba(13,23,42,.12);--shadow-soft: 0 12px 24px rgba(15,23,42,.08), 0 6px 12px rgba(15,23,42,.04);--shadow-strong: 0 24px 40px rgba(15,23,42,.12);--shadow-ring: 0 0 0 4px var(--accent-ring) inset;--filter-bar-bg: linear-gradient(135deg, rgba(245,249,255,.9), rgba(233,240,255,.86));--filter-bar-border: rgba(26,54,87,.14);--filter-bar-shadow: 0 18px 28px rgba(15,23,42,.12);--filter-hint: rgba(24,33,52,.55);--filter-overlay: rgba(13,23,42,.12);--filter-panel-bg: rgba(248,250,255,.95);--filter-panel-border: rgba(26,54,87,.16);--filter-panel-shadow: 0 24px 46px rgba(15,23,42,.14);--filter-panel-divider: rgba(26,54,87,.12);--filters-surface: linear-gradient(135deg, rgba(247,249,255,.92), rgba(235,242,255,.88));--filters-border: rgba(26,54,87,.12);--filters-shadow: 0 18px 28px rgba(15,23,42,.12);--filters-label: rgba(24,33,52,.55);--filters-chip: rgba(255,255,255,.9);--filters-chip-border: rgba(26,54,87,.12);--filters-chip-label: rgba(24,33,52,.55);--filters-chip-active: rgba(47,129,255,.18);--filters-chip-active-border: rgba(47,129,255,.42);--filters-chip-active-shadow: inset 0 0 0 1px rgba(47,129,255,.25);--filters-reset-border: rgba(26,54,87,.2);--filters-reset-text: rgba(24,33,52,.58);--filters-reset-text-hover: rgba(24,33,52,.82);--filters-reset-hover: rgba(233,240,255,.65);--filters-hint: rgba(24,33,52,.55);--stat-card-bg: rgba(255,255,255,.88);--stat-card-border: rgba(26,54,87,.16);--stat-card-shadow: 0 20px 30px rgba(15,23,42,.12);--stat-chart: rgba(47,129,255,.75);--stat-chart-rest: rgba(233,239,255,.8);--control-tab-bg: rgba(255,255,255,.88);--control-tab-border: rgba(26,54,87,.16);--control-tab-shadow: 0 18px 32px rgba(15,23,42,.12);--control-tab-active-bg: rgba(47,129,255,.18);--control-tab-active-border: rgba(47,129,255,.45);--control-tab-icon-bg: linear-gradient(160deg, rgba(233,241,255,.96), rgba(215,229,255,.9));--control-tab-icon-border: rgba(26,54,87,.12);--control-tab-chevron-bg: rgba(233,240,255,.78);--control-tab-chevron-active-bg: rgba(47,129,255,.24);--control-tab-chevron-shadow: inset 0 0 0 1px rgba(255,255,255,.45);--control-tab-chevron-active-shadow: inset 0 0 0 1px rgba(47,129,255,.45), 0 12px 24px rgba(47,129,255,.28);--control-tab-panel-bg: rgba(248,250,255,.96);--control-tab-panel-border: rgba(26,54,87,.14);--control-tab-panel-shadow: 0 28px 44px rgba(15,23,42,.15);--tagline-color: rgba(24,33,52,.6);--meta-chip-bg: rgba(233,240,255,.8);--meta-chip-border: rgba(26,54,87,.18);--meta-chip-text: rgba(24,33,52,.78);--group-chip-bg: rgba(233,239,255,.72);--group-chip-border: rgba(26,54,87,.16);--group-chip-text: rgba(24,33,52,.85);--group-chip-network-bg: rgba(243,223,252,.72);--group-chip-network-border: rgba(181,116,224,.35);--group-chip-heritage-bg: rgba(216,236,255,.72);--group-chip-heritage-border: rgba(116,172,230,.35);--stat-bg: rgba(255,255,255,.82);--stat-border: rgba(26,54,87,.18);--stat-value: #111827;--stat-label: rgba(24,33,52,.68);--stat-hint: rgba(24,33,52,.55);--subject-code-border: rgba(26,54,87,.22);--subject-code-text: rgba(24,33,52,.6);--note-bg: rgba(255,214,153,.18);--note-border: rgba(239,152,38,.4);--note-text: rgba(101,62,21,.72);--map-shell-bg: radial-gradient(circle at 15% 15%, rgba(163,196,255,.24), transparent 60%), rgba(236,242,255,.92);--map-shell-shadow: 0 18px 28px rgba(15,23,42,.12);--map-caption: rgba(24,33,52,.65);--map-error: rgba(24,33,52,.55);--map-canvas-bg: linear-gradient(135deg, #e5edff, #d8e4ff);--tier-divider: linear-gradient(90deg, transparent, rgba(26,54,87,.18), transparent);--chip-shadow-hover: 0 8px 18px rgba(15,23,42,.14);--loading-color: rgba(24,33,52,.68);--empty-hint: rgba(24,33,52,.6);--table-head-border: rgba(26,54,87,.25);--table-row-border: rgba(26,54,87,.14);--table-text: rgba(24,33,52,.85);--table-muted: rgba(24,33,52,.65);--hr-separator: linear-gradient(90deg, transparent, rgba(26,54,87,.25), transparent);--dropcap-shadow: 0 2px 8px rgba(15,23,42,.18);--brand-uni: #c7782a;--brand-metrics: #1d2d45;--brand-uk: #2f81ff}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0b0e13;--bg-alt: #0f1520;--bg-gradient: linear-gradient(180deg, #0b0e13 0%, #0f1520 100%);--fg: #e6e7eb;--fg-strong: #ffffff;--fg-muted: rgba(255,255,255,.72);--fg-soft: rgba(255,255,255,.55);--fg-subtle: rgba(255,255,255,.45);--fg-inverse: #0b0e13;--muted: var(--fg-muted);--accent: #63b3ff;--accent-soft: rgba(99,179,255,.18);--accent-strong: rgba(99,179,255,.65);--accent-ring: rgba(99,179,255,.15);--accent-contrast: #0b1120;--border: rgba(255,255,255,.18);--border-strong: rgba(255,255,255,.28);--border-soft: rgba(255,255,255,.08);--card: rgba(255,255,255,.06);--card-strong: rgba(255,255,255,.1);--card-soft: rgba(255,255,255,.08);--surface-panel: linear-gradient(135deg, rgba(18,28,48,.78), rgba(12,20,34,.62));--surface-panel-border: rgba(255,255,255,.08);--surface-panel-shadow: 0 28px 48px rgba(8,12,24,.4);--surface-panel-glow: radial-gradient(circle at top left, rgba(108,173,255,.35), transparent 65%);--subject-panel-bg: linear-gradient(135deg, rgba(40,52,92,.82), rgba(18,24,42,.72));--subject-panel-border: rgba(255,255,255,.1);--subject-panel-shadow: 0 22px 42px rgba(6,10,20,.45);--subject-panel-glow: radial-gradient(circle at top left, rgba(255,185,126,.32), transparent 70%);--surface-chip: rgba(255,255,255,.04);--surface-chip-hover: rgba(255,255,255,.09);--surface-chip-border: rgba(255,255,255,.05);--surface-chip-muted: rgba(255,255,255,.65);--surface-chip-active: rgba(99,179,255,.18);--surface-chip-active-border: rgba(99,179,255,.45);--ghost-bg: rgba(255,255,255,.08);--ghost-border: rgba(255,255,255,.12);--ghost-hover: rgba(255,255,255,.14);--ghost-strong-bg: rgba(255,255,255,.18);--overlay: rgba(8,11,16,.25);--shadow-soft: 0 10px 30px rgba(0,0,0,.35), 0 6px 18px rgba(0,0,0,.4);--shadow-strong: 0 28px 48px rgba(8,12,24,.4);--shadow-ring: 0 0 0 4px rgba(99,179,255,.12) inset;--filter-bar-bg: linear-gradient(135deg, rgba(10,14,20,.92), rgba(18,24,36,.82));--filter-bar-border: rgba(255,255,255,.08);--filter-bar-shadow: 0 18px 30px rgba(0,0,0,.35);--filter-hint: rgba(255,255,255,.45);--filter-overlay: rgba(8,11,16,.25);--filter-panel-bg: rgba(14,20,30,.9);--filter-panel-border: rgba(255,255,255,.12);--filter-panel-shadow: 0 24px 48px rgba(0,0,0,.45);--filter-panel-divider: rgba(255,255,255,.08);--filters-surface: linear-gradient(135deg, rgba(14,20,32,.9), rgba(10,16,26,.85));--filters-border: rgba(255,255,255,.08);--filters-shadow: 0 24px 46px rgba(0,0,0,.38);--filters-label: rgba(255,255,255,.5);--filters-chip: rgba(255,255,255,.06);--filters-chip-border: rgba(255,255,255,.08);--filters-chip-label: rgba(255,255,255,.65);--filters-chip-active: rgba(99,179,255,.22);--filters-chip-active-border: rgba(99,179,255,.4);--filters-chip-active-shadow: inset 0 0 0 1px rgba(99,179,255,.28);--control-tab-bg: rgba(14,20,32,.92);--control-tab-border: rgba(255,255,255,.08);--control-tab-shadow: 0 22px 40px rgba(0,0,0,.45);--control-tab-active-bg: rgba(99,179,255,.22);--control-tab-active-border: rgba(99,179,255,.45);--control-tab-icon-bg: linear-gradient(150deg, rgba(26,38,64,.95), rgba(12,22,38,.82));--control-tab-icon-border: rgba(255,255,255,.08);--control-tab-chevron-bg: rgba(36,48,72,.7);--control-tab-chevron-active-bg: rgba(99,179,255,.26);--control-tab-chevron-shadow: inset 0 0 0 1px rgba(255,255,255,.12);--control-tab-chevron-active-shadow: inset 0 0 0 1px rgba(99,179,255,.4), 0 12px 24px rgba(99,179,255,.32);--control-tab-panel-bg: rgba(14,20,32,.9);--control-tab-panel-border: rgba(255,255,255,.12);--control-tab-panel-shadow: 0 26px 48px rgba(0,0,0,.5);--filters-reset-border: rgba(255,255,255,.12);--filters-reset-text: rgba(255,255,255,.65);--filters-reset-text-hover: rgba(255,255,255,.85);--filters-reset-hover: rgba(99,179,255,.15);--filters-hint: rgba(255,255,255,.55);--stat-card-bg: rgba(18,26,40,.82);--stat-card-border: rgba(255,255,255,.08);--stat-card-shadow: 0 26px 42px rgba(0,0,0,.45);--stat-chart: rgba(99,179,255,.78);--stat-chart-rest: rgba(255,255,255,.08);--tagline-color: rgba(255,255,255,.55);--meta-chip-bg: rgba(255,255,255,.08);--meta-chip-border: rgba(255,255,255,.08);--meta-chip-text: rgba(255,255,255,.8);--group-chip-bg: rgba(255,255,255,.08);--group-chip-border: rgba(255,255,255,.14);--group-chip-text: rgba(255,255,255,.85);--group-chip-network-bg: rgba(255,155,235,.12);--group-chip-network-border: rgba(255,155,235,.28);--group-chip-heritage-bg: rgba(134,206,255,.16);--group-chip-heritage-border: rgba(134,206,255,.3);--stat-bg: rgba(255,255,255,.06);--stat-border: rgba(255,255,255,.08);--stat-value: rgba(255,255,255,.95);--stat-label: rgba(255,255,255,.7);--stat-hint: rgba(255,255,255,.55);--subject-code-border: rgba(255,255,255,.16);--subject-code-text: rgba(255,255,255,.55);--note-bg: rgba(255,214,153,.1);--note-border: rgba(255,214,153,.65);--note-text: rgba(255,255,255,.78);--map-shell-bg: radial-gradient(circle at 15% 15%, rgba(148,163,255,.18), transparent 60%), rgba(8,12,20,.65);--map-shell-shadow: 0 18px 36px rgba(8,12,24,.45);--map-caption: rgba(255,255,255,.7);--map-error: rgba(255,255,255,.55);--map-canvas-bg: linear-gradient(135deg, #0f172a, #0b1120);--tier-divider: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);--chip-shadow-hover: 0 8px 18px rgba(8,12,24,.35);--loading-color: rgba(255,255,255,.65);--empty-hint: rgba(255,255,255,.75);--table-head-border: rgba(255,255,255,.25);--table-row-border: rgba(255,255,255,.18);--table-text: rgba(235,238,243,.82);--table-muted: rgba(235,238,243,.7);--hr-separator: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);--dropcap-shadow: 0 2px 8px rgba(0,0,0,.2);--brand-uni: #f3cba5;--brand-metrics: rgba(255,255,255,.96);--brand-uk: #63b3ff}}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--bg: #0b0e13;--bg-alt: #0f1520;--bg-gradient: linear-gradient(180deg, #0b0e13 0%, #0f1520 100%);--fg: #e6e7eb;--fg-strong: #ffffff;--fg-muted: rgba(255,255,255,.72);--fg-soft: rgba(255,255,255,.55);--fg-subtle: rgba(255,255,255,.45);--fg-inverse: #0b0e13;--muted: var(--fg-muted);--accent: #63b3ff;--accent-soft: rgba(99,179,255,.18);--accent-strong: rgba(99,179,255,.65);--accent-ring: rgba(99,179,255,.15);--accent-contrast: #0b1120;--border: rgba(255,255,255,.18);--border-strong: rgba(255,255,255,.28);--border-soft: rgba(255,255,255,.08);--card: rgba(255,255,255,.06);--card-strong: rgba(255,255,255,.1);--card-soft: rgba(255,255,255,.08);--surface-panel: linear-gradient(135deg, rgba(18,28,48,.78), rgba(12,20,34,.62));--surface-panel-border: rgba(255,255,255,.08);--surface-panel-shadow: 0 28px 48px rgba(8,12,24,.4);--surface-panel-glow: radial-gradient(circle at top left, rgba(108,173,255,.35), transparent 65%);--subject-panel-bg: linear-gradient(135deg, rgba(40,52,92,.82), rgba(18,24,42,.72));--subject-panel-border: rgba(255,255,255,.1);--subject-panel-shadow: 0 22px 42px rgba(6,10,20,.45);--subject-panel-glow: radial-gradient(circle at top left, rgba(255,185,126,.32), transparent 70%);--surface-chip: rgba(255,255,255,.04);--surface-chip-hover: rgba(255,255,255,.09);--surface-chip-border: rgba(255,255,255,.05);--surface-chip-muted: rgba(255,255,255,.65);--surface-chip-active: rgba(99,179,255,.18);--surface-chip-active-border: rgba(99,179,255,.45);--ghost-bg: rgba(255,255,255,.08);--ghost-border: rgba(255,255,255,.12);--ghost-hover: rgba(255,255,255,.14);--ghost-strong-bg: rgba(255,255,255,.18);--overlay: rgba(8,11,16,.25);--shadow-soft: 0 10px 30px rgba(0,0,0,.35), 0 6px 18px rgba(0,0,0,.4);--shadow-strong: 0 28px 48px rgba(8,12,24,.4);--shadow-ring: 0 0 0 4px rgba(99,179,255,.12) inset;--filter-bar-bg: linear-gradient(135deg, rgba(10,14,20,.92), rgba(18,24,36,.82));--filter-bar-border: rgba(255,255,255,.08);--filter-bar-shadow: 0 18px 30px rgba(0,0,0,.35);--filter-hint: rgba(255,255,255,.45);--filter-overlay: rgba(8,11,16,.25);--filter-panel-bg: rgba(14,20,30,.9);--filter-panel-border: rgba(255,255,255,.12);--filter-panel-shadow: 0 24px 48px rgba(0,0,0,.45);--filter-panel-divider: rgba(255,255,255,.08);--tagline-color: rgba(255,255,255,.55);--meta-chip-bg: rgba(255,255,255,.08);--meta-chip-border: rgba(255,255,255,.08);--meta-chip-text: rgba(255,255,255,.8);--group-chip-bg: rgba(255,255,255,.08);--group-chip-border: rgba(255,255,255,.14);--group-chip-text: rgba(255,255,255,.85);--group-chip-network-bg: rgba(255,155,235,.12);--group-chip-network-border: rgba(255,155,235,.28);--group-chip-heritage-bg: rgba(134,206,255,.16);--group-chip-heritage-border: rgba(134,206,255,.3);--stat-bg: rgba(255,255,255,.06);--stat-border: rgba(255,255,255,.08);--stat-value: rgba(255,255,255,.95);--stat-label: rgba(255,255,255,.7);--stat-hint: rgba(255,255,255,.55);--subject-code-border: rgba(255,255,255,.16);--subject-code-text: rgba(255,255,255,.55);--note-bg: rgba(255,214,153,.1);--note-border: rgba(255,214,153,.65);--note-text: rgba(255,255,255,.78);--map-shell-bg: radial-gradient(circle at 15% 15%, rgba(148,163,255,.18), transparent 60%), rgba(8,12,20,.65);--map-shell-shadow: 0 18px 36px rgba(8,12,24,.45);--map-caption: rgba(255,255,255,.7);--map-error: rgba(255,255,255,.55);--map-canvas-bg: linear-gradient(135deg, #0f172a, #0b1120);--tier-divider: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);--chip-shadow-hover: 0 8px 18px rgba(8,12,24,.35);--loading-color: rgba(255,255,255,.65);--empty-hint: rgba(255,255,255,.75);--table-head-border: rgba(255,255,255,.25);--table-row-border: rgba(255,255,255,.18);--table-text: rgba(235,238,243,.82);--table-muted: rgba(235,238,243,.7);--hr-separator: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);--dropcap-shadow: 0 2px 8px rgba(0,0,0,.2);--brand-uni: #f3cba5;--brand-metrics: rgba(255,255,255,.96);--brand-uk: #63b3ff}html,body,#app{height:100%}html,body{background:var(--bg-gradient);color:var(--fg)}body{margin:0;color:var(--fg);font-family:Atkinson Hyperlegible Next,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji";font-kerning:normal;text-rendering:optimizeLegibility;font-weight:300;transition:background .4s ease,color .3s ease}.glass{background:var(--card);backdrop-filter:saturate(120%) blur(12px);-webkit-backdrop-filter:saturate(120%) blur(12px);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.glass-strong{background:var(--card-strong)}.rounded{border-radius:16px}.rounded-lg{border-radius:24px}.lozenge{border-radius:999px;padding:.4rem .9rem}.muted{color:var(--muted)}.topbar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem}.topbar .pill{background:var(--surface-chip);color:var(--fg);border:1px solid var(--surface-chip-border);text-decoration:none}.topbar .pill:hover{background:var(--surface-chip-hover);box-shadow:var(--chip-shadow-hover)}.tier-grid{display:grid;gap:16px}.tier-row{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:stretch}.tier-label{display:grid;place-items:center;color:#fff;font-weight:700;font-size:26px;border-radius:16px;min-height:72px;height:auto}.tier-content{position:relative;overflow:hidden}.tier-divider{height:2px;background:var(--tier-divider);margin:2px 0 0}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--surface-chip-border);background:var(--surface-chip);color:var(--fg);padding:.35rem .7rem;border-radius:999px;cursor:pointer;transition:transform .1s ease,background .2s ease,box-shadow .2s ease}.chip:hover{background:var(--surface-chip-hover);transform:translateY(-1px);box-shadow:var(--chip-shadow-hover)}.course-panel{display:grid;grid-template-columns:200px 420px 1fr;gap:16px;align-items:center}.big-grade{width:140px;min-height:180px;display:grid;place-items:center;font-size:64px;font-weight:900;color:var(--fg-inverse)}.row-glass{padding:6px 10px;margin-bottom:8px;border-radius:12px;color:var(--fg-inverse);font-weight:600;display:grid;grid-template-columns:38px 1fr auto;align-items:center}.row-glass .g{font-weight:800}.row-glass .pct{font-variant-numeric:tabular-nums}h1{margin:.5rem 1rem 1rem;font-size:clamp(22px,3vw,28px);letter-spacing:.2px;font-weight:300}.view{padding:.5rem 1rem 1rem}main{max-width:1200px;margin:0 auto}@media (min-width: 1600px){main{max-width:1320px}}:root{--header-grad-a: rgba(59, 130, 246, .14);--header-grad-b: rgba(244, 114, 182, .1);--header-border: var(--border);--header-shadow: 0 1px 0 rgba(0,0,0,.06), 0 10px 30px rgba(0,0,0,.04) inset;--header-link: var(--fg);--header-link-hover: var(--fg);--header-link-hover-bg: var(--surface-chip-hover);--header-link-active: var(--accent);--header-link-active-bg: color-mix(in oklab, var(--accent) 18%, transparent);--search-bg: var(--surface-chip);--search-border: var(--surface-chip-border);--search-shadow: var(--chip-shadow-hover)}[data-theme=dark]:root{--header-grad-a: rgba(59, 130, 246, .14);--header-grad-b: rgba(236, 72, 153, .12)}
