:root{color:#f8fafc;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--card:#121f35db;--card-border:#94a3b847;--muted:#94a3b8;--muted-strong:#cbd5e1;--blue:#38bdf8;--purple:#a78bfa;--green:#34d399;--indigo:#6366f1;--pink:#fb7185;--cyan:#22d3ee;--chart-tick:#cbd5e1;--chart-grid:#94a3b829;--chart-cursor:#94a3b814;--chart-missing-fill:#0f172a;--chart-missing-stroke:#94a3b8;--chart-active-stroke:#f8fafc;--chart-previous-year:#7c3aed;background:#12233d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background-color:#263c72;min-width:320px}button,input{font:inherit}button{border:0}.app-shell{width:min(100%,1920px);margin:0 auto;padding:clamp(20px,2.6vw,52px)}.hero{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;margin-bottom:18px;display:grid}.hero__badge,.status-bar__item{align-items:center;gap:10px;display:inline-flex}.hero__badge{color:#bae6fd;letter-spacing:.02em;background:#082f4975;border:1px solid #38bdf83d;border-radius:999px;width:fit-content;padding:10px 14px;font-size:clamp(14px,1vw,18px);font-weight:700}.hero h1{letter-spacing:-.065em;margin:18px 0 10px;font-size:clamp(42px,5.2vw,92px);line-height:.94}.hero p{max-width:1080px;color:var(--muted-strong);margin:0;font-size:clamp(18px,1.45vw,29px);line-height:1.35}.hero__controls{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:14px;display:flex}.dashboard-actions{justify-content:flex-end;margin:-4px 0 18px;display:flex}.period-control{color:var(--muted-strong);text-transform:uppercase;letter-spacing:.08em;gap:8px;font-size:15px;font-weight:700;display:grid}.period-control input,.refresh-button{border:1px solid var(--card-border);color:#f8fafc;background:#0f172adb;border-radius:18px;min-height:58px;box-shadow:0 18px 48px #0206173d}.period-control input{outline:none;width:170px;padding:0 18px;font-size:24px;font-weight:800}.refresh-button{cursor:pointer;justify-content:center;align-items:center;gap:12px;padding:0 22px;font-size:18px;font-weight:800;transition:transform .2s,border-color .2s,background .2s;display:inline-flex}.refresh-button:hover:not(:disabled){background:#0e749033;border-color:#38bdf86b;transform:translateY(-2px)}.refresh-button:disabled{cursor:wait;opacity:.72}.range-panel{border:1px solid var(--card-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#182842c7;border-radius:26px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin:18px 0;padding:16px 18px;display:flex;box-shadow:0 20px 60px #0206172e}.range-panel__summary{flex-wrap:wrap;align-items:end;gap:clamp(26px,3vw,58px);display:flex}.range-panel span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:clamp(13px,.9vw,16px);font-weight:850;display:block}.range-panel strong{color:#f8fafc;letter-spacing:-.04em;font-size:clamp(22px,1.7vw,34px);line-height:1.05;display:block}.range-panel__dates strong{color:var(--muted-strong);letter-spacing:-.035em;font-size:clamp(18px,1.28vw,26px)}.range-tabs{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.range-tab{min-height:48px;color:var(--muted-strong);cursor:pointer;background:#0814274d;border:1px solid #94a3b82e;border-radius:16px;padding:0 18px;font-size:clamp(14px,.95vw,18px);font-weight:850;transition:transform .18s,border-color .18s,background .18s,color .18s}.range-tab:hover{color:#fff;border-color:#38bdf861;transform:translateY(-1px)}.range-tab--active{color:#fff;background:linear-gradient(135deg,#38bdf847,#a78bfa3d);border-color:#38bdf88a;box-shadow:0 14px 34px #0ea5e929}.status-bar{border:1px solid var(--card-border);color:var(--muted-strong);background:#182842b8;border-radius:22px;flex-wrap:wrap;justify-content:space-between;gap:16px;margin:20px 0 24px;padding:14px 18px;font-size:clamp(15px,1vw,19px);font-weight:750;display:flex}.status-bar--error{color:#fecaca;border-color:#f8717157}.error-box{color:#fecaca;background:#7f1d1d42;border:1px solid #f871715c;border-radius:22px;gap:4px;margin-bottom:22px;padding:18px 20px;font-size:17px;display:grid}.error-box strong{color:#fff;font-size:20px}.stats-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.stat-card,.panel,.kcp-panel{border:1px solid var(--card-border);background:var(--card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 22px 64px #02061742,inset 0 1px #ffffff08}.stat-card{background:linear-gradient(135deg, var(--card-from,#0f172ac7), var(--card-to,#1e293b85)), radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 68%);border-radius:30px;flex-direction:column;gap:0;min-height:184px;padding:22px;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:radial-gradient(circle at 100% 0%, var(--accent), transparent 58%);opacity:.14;pointer-events:none;position:absolute;inset:0}.stat-card--interactive{cursor:pointer}.stat-card--interactive:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 72%, #fff);outline-offset:4px}.stat-card--interactive:hover{transform:translateY(-2px)}.stat-card--blue{--accent:var(--blue);--card-from:#0d3452b3;--card-to:#0f172ab8}.stat-card--purple{--accent:var(--purple);--card-from:#2f2a5ca8;--card-to:#0f172ab8}.stat-card--green{--accent:var(--green);--card-from:#0c4845a3;--card-to:#0f172ab8}.stat-card--indigo{--accent:var(--indigo);--card-from:#312e81a3;--card-to:#0f172ab8}.stat-card--pink{--accent:var(--pink);--card-from:#472444a3;--card-to:#0f172ab8}.stat-card--cyan{--accent:var(--cyan);--card-from:#093d56a8;--card-to:#0f172ab8}.stat-card__icon{z-index:1;color:#fff;background:color-mix(in srgb, var(--accent) 24%, transparent);border:1px solid color-mix(in srgb, var(--accent) 34%, transparent);border-radius:20px;place-items:center;width:58px;height:58px;display:grid;position:relative}.stat-card__body{z-index:1;min-width:0;margin-top:clamp(28px,2.2vw,44px);position:relative}.stat-card__title,.stat-card__caption{z-index:1;margin:0;position:relative}.stat-card__title{color:var(--muted-strong);font-size:clamp(16px,1.05vw,20px);font-weight:800}.stat-card__value{z-index:1;letter-spacing:-.06em;margin:7px 0 6px;font-size:clamp(34px,3.1vw,62px);font-weight:950;line-height:.94;position:relative}.stat-card__value span{color:var(--muted);letter-spacing:-.03em;margin-left:6px;font-size:.46em}.stat-card__caption{color:var(--muted);font-size:clamp(13px,.9vw,17px);line-height:1.32}.dashboard-dialog-backdrop{z-index:100000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172a7a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dashboard-dialog{z-index:1;border:1px solid var(--card-border);background:var(--card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:30px;width:min(1120px,100%);min-height:min(420px,100vh - 48px);max-height:calc(100vh - 48px);position:relative;overflow:hidden;box-shadow:0 34px 90px #02061757,inset 0 1px #ffffff0f}.dashboard-dialog__close{z-index:1;border:1px solid color-mix(in srgb, var(--blue) 22%, var(--card-border));width:44px;height:44px;color:var(--text);background:color-mix(in srgb, var(--card) 88%, transparent);cursor:pointer;border-radius:16px;place-items:center;display:grid;position:absolute;top:18px;right:18px}.dashboard-dialog__close:focus-visible{outline:3px solid color-mix(in srgb, var(--blue) 70%, #fff);outline-offset:3px}.dashboard-dialog__close:hover{color:#fff;background:color-mix(in srgb, var(--blue) 34%, var(--card))}.dashboard-dialog__content{min-height:inherit;max-height:calc(100vh - 48px);padding:72px 26px 26px;overflow:auto}.dashboard-dialog-report{gap:18px;display:grid}.dashboard-dialog-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.dashboard-dialog-metric,.dashboard-dialog-section,.dashboard-dialog__list-item{border:1px solid color-mix(in srgb, var(--blue) 18%, var(--card-border));background:color-mix(in srgb, var(--theme-soft,#0814273d) 72%, transparent)}.dashboard-dialog-metric{border-radius:20px;gap:5px;min-height:104px;padding:16px;display:grid}.dashboard-dialog-metric span,.dashboard-dialog-section h3,.dashboard-dialog-row span,.dashboard-dialog__list-item{color:var(--muted-strong);font-weight:850}.dashboard-dialog-metric span,.dashboard-dialog-section h3{letter-spacing:.06em;text-transform:uppercase;font-size:13px}.dashboard-dialog-metric strong{color:var(--theme-text,#f8fafc);font-size:clamp(30px,2.4vw,48px);font-weight:950;line-height:.96}.dashboard-dialog-metric small,.dashboard-dialog-row small,.dashboard-dialog-empty{color:var(--muted);font-size:13px;font-weight:760;line-height:1.3}.dashboard-dialog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dashboard-dialog-section{border-radius:22px;min-width:0;padding:16px}.dashboard-dialog-section h3{margin:0 0 10px}.dashboard-dialog-rows,.dashboard-dialog__list{gap:8px;display:grid}.dashboard-dialog-row{border-top:1px solid #94a3b824;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:10px 0;display:grid}.dashboard-dialog-row:first-child{border-top:0;padding-top:0}.dashboard-dialog-row span{gap:3px;min-width:0;line-height:1.22;display:grid}.dashboard-dialog-row strong{color:var(--theme-text,#f8fafc);white-space:nowrap;font-size:18px;font-weight:950}.dashboard-dialog__list{max-width:560px}.dashboard-dialog__list-item{border-radius:18px;padding:14px 16px;font-size:18px}.kcp-panel{background:linear-gradient(135deg,#0d3452ad,#0f172abd),radial-gradient(circle at 100% 0,#34d3992e,#0000 56%);border-radius:30px;gap:16px;margin-bottom:18px;padding:22px 24px;display:grid}.kcp-panel__meta{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:18px;display:flex}.kcp-panel__header{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:18px;display:flex}.kcp-panel__header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.kcp-panel h2{letter-spacing:-.04em;margin:0;font-size:clamp(24px,1.8vw,36px);line-height:1}.kcp-panel p{color:var(--muted);margin:6px 0 0;font-size:clamp(14px,1vw,18px);font-weight:720}.kcp-panel__header-actions>strong{color:#fff;letter-spacing:-.04em;font-size:clamp(30px,2.8vw,54px);font-weight:950;line-height:.95}.kcp-panel__toggle{min-height:36px;color:var(--muted-strong);cursor:pointer;font:inherit;background:#0f172a38;border:1px solid #94a3b847;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:850;display:inline-flex}.kcp-panel__toggle svg{transition:transform .18s}.kcp-panel--expanded .kcp-panel__toggle svg{transform:rotate(180deg)}.kcp-panel__toggle:disabled{cursor:default;opacity:.52}.kcp-panel__track{background:#0814276b;border:1px solid #5b7eab6b;border-radius:999px;height:clamp(22px,1.8vw,34px);position:relative;overflow:visible;box-shadow:inset 0 0 0 1px #ffffff12}.kcp-panel__fill{border-radius:inherit;background:linear-gradient(90deg, var(--blue), var(--green));min-width:8px;transition:width .35s;position:absolute;inset:0 auto 0 0;box-shadow:0 0 28px #34d39947}.kcp-panel__current-marker{z-index:2;border:2px solid color-mix(in srgb, var(--green) 70%, #fff);background:color-mix(in srgb, var(--theme-surface-strong,#fff) 92%, transparent);min-width:74px;height:calc(100% - 6px);color:var(--theme-text,#142033);pointer-events:none;text-align:center;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:clamp(12px,.78vw,15px);font-weight:950;line-height:1;display:inline-flex;position:absolute;top:50%;transform:translate(calc(-100% - 2px),-50%);box-shadow:0 8px 20px #1f4e7929,0 0 0 2px #ffffff4d}.kcp-panel__current-marker:after{border-right:2px solid color-mix(in srgb, var(--green) 70%, #fff);border-bottom:2px solid color-mix(in srgb, var(--green) 70%, #fff);background:inherit;content:"";width:10px;height:10px;position:absolute;bottom:-7px;right:14px;transform:rotate(45deg)}.kcp-panel__ruler{border-top:1px solid color-mix(in srgb, var(--blue) 32%, var(--card-border));height:54px;margin-top:-4px;position:relative}.kcp-panel__ruler-mark{color:var(--muted);white-space:nowrap;justify-items:center;gap:4px;font-size:clamp(9px,.62vw,11px);font-style:normal;font-weight:850;line-height:1;display:grid;position:absolute;top:0;transform:translate(-50%)}.kcp-panel__ruler-mark:first-child{transform:translate(0)}.kcp-panel__ruler-mark i{background:color-mix(in srgb, var(--blue) 42%, var(--muted));border-radius:999px;width:1px;height:12px}.kcp-panel__ruler-mark b{color:var(--muted-strong);font:inherit;transform-origin:top;display:block;transform:rotate(-90deg)translate(-16px)}.kcp-panel__meta span{color:var(--muted);text-transform:uppercase;gap:3px;font-size:clamp(12px,.84vw,15px);font-weight:850;display:grid}.kcp-panel__meta strong{color:var(--muted-strong);text-transform:none;font-size:clamp(18px,1.3vw,26px);font-weight:950}.kcp-panel__details{gap:10px;padding-top:4px;display:grid}.kcp-panel__details-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.kcp-panel__details-toolbar>span{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:850}.kcp-panel__search{flex:260px;max-width:420px}.kcp-panel__search input{width:100%;min-height:38px;color:var(--muted-strong);font:inherit;background:#08142738;border:1px solid #94a3b82e;border-radius:999px;outline:none;padding:0 14px;font-size:13px;font-weight:820}.kcp-panel__search input::placeholder{color:var(--muted)}.kcp-panel__sort{background:#08142738;border:1px solid #94a3b82e;border-radius:999px;flex-wrap:wrap;gap:6px;padding:4px;display:flex}.kcp-panel__sort-button{min-height:30px;color:var(--muted);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:0 11px;font-size:12px;font-weight:850}.kcp-panel__sort-button--active{color:#fff;background:color-mix(in srgb, var(--blue) 64%, var(--green));box-shadow:0 10px 24px #1f5f9f38}.kcp-panel__direction-list{scrollbar-gutter:stable;gap:10px;max-height:min(54vh,620px);padding-right:6px;display:grid;overflow:auto}.kcp-panel__direction-list::-webkit-scrollbar{width:10px}.kcp-panel__direction-list::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--blue) 55%, var(--muted));background-clip:content-box;border:3px solid #0000;border-radius:999px}.kcp-panel__empty{min-height:132px;color:var(--muted);background:#0f172a29;border:1px dashed #94a3b83d;border-radius:20px;place-items:center;font-size:15px;font-weight:850;display:grid}.kcp-panel__direction{background:#0f172a33;border:1px solid #94a3b829;border-radius:20px;grid-template-columns:minmax(240px,1.1fr) minmax(220px,1fr) minmax(260px,.95fr);align-items:center;gap:16px;padding:14px;display:grid}.kcp-panel__direction-main{min-width:0}.kcp-panel__direction-main span{overflow-wrap:anywhere;color:var(--muted-strong);font-size:clamp(15px,.96vw,18px);font-weight:900;display:block}.kcp-panel__direction-main small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:760;display:block}.kcp-panel__direction-progress{grid-template-columns:minmax(120px,1fr) auto;align-items:center;gap:12px;display:grid}.kcp-panel__direction-progress strong{min-width:58px;color:var(--muted-strong);text-align:right;font-size:18px;font-weight:950}.kcp-panel__direction-track{background:linear-gradient(90deg,#1f5f9f1f,#16806f1a),#08142747;border:1px solid #5b7eab7a;border-radius:999px;height:13px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.kcp-panel__direction-track span{border-radius:inherit;background:linear-gradient(90deg, var(--blue), var(--green));min-width:5px;position:absolute;inset:0 auto 0 0}.kcp-panel__direction-numbers{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.kcp-panel__direction-numbers span{min-width:0;color:var(--muted);text-transform:uppercase;gap:2px;font-size:11px;font-weight:850;display:grid}.kcp-panel__direction-numbers strong{overflow-wrap:anywhere;color:var(--muted-strong);text-transform:none;font-size:16px;font-weight:950}.dashboard-grid{gap:18px;margin-bottom:18px;display:grid}.dashboard-grid--top{grid-template-columns:minmax(0,1.55fr) minmax(390px,.95fr)}.dashboard-grid--middle,.dashboard-grid--bottom{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{background:linear-gradient(#0f1d34f0,#0b192eeb);border-radius:32px;padding:24px;overflow:hidden}.panel__header{justify-content:space-between;align-items:start;gap:18px;margin-bottom:16px;display:flex}.panel h2{letter-spacing:-.04em;margin:0;font-size:clamp(22px,1.8vw,34px);line-height:1.05}.panel p{color:var(--muted);margin:7px 0 0;font-size:clamp(14px,1vw,18px)}.panel__action{flex:none}.chart-switch{min-height:32px;color:var(--muted-strong);cursor:pointer;letter-spacing:0;white-space:nowrap;grid-template-columns:auto 42px;align-items:center;gap:10px;font-size:13px;font-weight:800;display:inline-grid}.chart-switch input{opacity:0;pointer-events:none;position:absolute}.chart-switch__track{background:#0f172a38;border:1px solid #94a3b85c;border-radius:999px;width:42px;height:24px;transition:background .16s,border-color .16s;position:relative}.chart-switch__track:after{background:var(--muted-strong);content:"";border-radius:50%;width:16px;height:16px;transition:transform .16s,background .16s;position:absolute;top:3px;left:3px}.chart-switch input:checked+.chart-switch__track{background:#7c3aed3d;border-color:#7c3aedb8}.chart-switch input:checked+.chart-switch__track:after{background:var(--chart-previous-year);transform:translate(18px)}.chart-switch:focus-within .chart-switch__track{outline-offset:2px;outline:3px solid #38bdf847}.chart-switch--disabled{cursor:not-allowed;opacity:.55}.page-tabs{border:1px solid var(--card-border);background:#0f172a94;border-radius:18px;align-items:center;gap:8px;min-height:58px;padding:6px;display:inline-flex}.page-tab{min-height:44px;color:var(--muted-strong);cursor:pointer;background:0 0;border-radius:13px;padding:0 16px;font-size:15px;font-weight:850}.page-tab--active{color:#fff;background:#38bdf833}.chart{width:100%}.chart--large{height:clamp(340px,29vw,520px)}.chart--medium{height:clamp(270px,22vw,390px)}.chart--donut{min-width:230px;height:clamp(230px,18vw,340px);position:relative}.donut-layout{grid-template-columns:minmax(220px,.9fr) minmax(0,1fr);align-items:center;gap:12px;display:grid}.donut-stack{gap:20px;display:grid}.donut-visuals{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.donut-visuals .donut-section:only-child{justify-self:center;width:100%;max-width:420px}.donut-section{justify-items:center;gap:8px;min-width:0;display:grid}.donut-section+.donut-section{border-top:0;padding-top:0}.donut-section__label{color:var(--muted-strong);text-align:center;font-size:14px;font-weight:850}.donut-section__year{background:color-mix(in srgb, var(--theme-surface-strong,#fff) 84%, transparent);pointer-events:none;text-align:center;border:1px solid #94a3b82e;border-radius:14px;justify-content:center;width:clamp(90px,7.8vw,128px);padding:8px 12px;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 28px #1f4e791a,inset 0 1px #ffffffc7}.donut-section__year strong{color:var(--theme-text,#142033);font-size:clamp(13px,.95vw,17px);font-weight:950;line-height:1.05}.donut-legend{gap:8px;display:grid}.donut-legend__header,.donut-legend__row{grid-template-columns:minmax(0,1fr) minmax(100px,.42fr);align-items:center;gap:10px;display:grid}.donut-legend--compare .donut-legend__header,.donut-legend--compare .donut-legend__row{grid-template-columns:minmax(0,1.15fr) minmax(96px,.55fr) minmax(96px,.55fr)}.donut-legend__header{color:var(--muted);text-transform:uppercase;padding:0 12px;font-size:12px;font-weight:850}.donut-legend__header span:not(:first-child){text-align:right}.donut-legend__row{background:#08142724;border:1px solid #94a3b81f;border-radius:16px;min-height:58px;padding:10px 12px}.donut-legend__name{min-width:0;color:var(--muted-strong);grid-template-columns:12px minmax(0,1fr);align-items:center;gap:10px;font-size:clamp(13px,.92vw,17px);font-weight:850;line-height:1.18;display:grid}.donut-legend__name span:last-child{overflow-wrap:anywhere}.donut-legend__metric{min-width:0;color:var(--muted);justify-items:end;gap:2px;font-size:clamp(12px,.82vw,15px);font-weight:750;line-height:1.1;display:grid}.donut-legend__metric strong{color:var(--donut-color,#fff);font-size:clamp(16px,1.08vw,21px);font-weight:950}.legend-list{gap:12px;display:grid}.legend-list__item{min-height:42px;color:var(--muted-strong);grid-template-columns:14px 1fr auto;align-items:center;gap:10px;font-size:clamp(14px,1vw,18px);font-weight:760;display:grid}.legend-list__dot{border-radius:999px;width:12px;height:12px}.legend-list__item strong{color:#fff;font-size:1.05em}.table-list{gap:10px;display:grid}.table-list__row{background:#0814274d;border:1px solid #94a3b824;border-radius:18px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:grid}.table-list__rank{color:#bae6fd;background:#38bdf824;border-radius:12px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.table-list__text{gap:3px;min-width:0;display:grid}.table-list__name{min-width:0;color:var(--muted-strong);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(15px,1.04vw,20px);font-weight:760;line-height:1.18;display:-webkit-box;overflow:hidden}.table-list__caption{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(12px,.84vw,16px);font-weight:720;overflow:hidden}.table-list__empty{color:var(--muted);text-align:center;border:1px dashed #94a3b83d;border-radius:18px;padding:18px;font-size:clamp(15px,1vw,19px);font-weight:760}.table-list strong{letter-spacing:-.035em;font-size:clamp(17px,1.2vw,24px)}.summary-card{align-items:center;gap:18px;min-height:178px;display:flex}.summary-card>svg{color:#bae6fd;background:#38bdf81f;border:1px solid #38bdf838;border-radius:24px;flex:none;width:76px;height:76px;padding:18px}.summary-card--accent>svg{color:#e9d5ff;background:#a78bfa1f;border-color:#a78bfa38}.summary-card span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:16px;font-weight:850;display:block}.summary-card strong{letter-spacing:-.06em;margin:4px 0;font-size:clamp(36px,3.4vw,64px);line-height:.96;display:block}.summary-card p{color:var(--muted-strong);margin:0;font-size:clamp(16px,1.15vw,22px);line-height:1.26}.specialties-page{gap:18px;display:grid}.report-page{gap:22px;width:min(100%,1880px);margin:0 auto;display:grid}.report-hero-panel{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);align-items:stretch;gap:18px;display:grid}.report-cover{border:1px solid color-mix(in srgb, var(--blue) 22%, var(--card-border));background:linear-gradient(135deg, color-mix(in srgb, var(--blue) 10%, transparent), transparent 45%), radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--blue) 12%, transparent), transparent 62%), color-mix(in srgb, var(--theme-surface-strong,#0f172adb) 58%, transparent);border-radius:32px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;min-height:260px;padding:30px;display:grid}.report-cover__icon{border:1px solid color-mix(in srgb, var(--blue) 32%, var(--card-border));background:color-mix(in srgb, var(--blue) 16%, transparent);width:74px;height:74px;color:var(--blue);border-radius:24px;place-items:center;display:grid}.report-cover span,.report-section__heading p,.report-metric span,.report-graduation__card span,.report-table-total span{color:var(--muted)}.report-cover span{text-transform:uppercase;font-size:13px;font-weight:850}.report-cover h2,.report-cover p{grid-column:2}.report-cover h2,.report-section__heading h2{color:var(--theme-text,#f8fafc);letter-spacing:-.04em;margin:0;font-size:clamp(28px,2.35vw,52px);font-weight:950;line-height:1}.report-cover p,.report-section__heading p{color:var(--muted-strong);margin:8px 0 0;font-size:clamp(15px,1vw,19px);font-weight:720;line-height:1.35}.report-metrics{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.report-metrics--summary{grid-template-columns:repeat(4,minmax(0,1fr))}.report-metrics--hero{grid-template-columns:1fr;height:100%}.report-metrics--admission{grid-template-columns:repeat(3,minmax(0,1fr))}.report-metric,.report-graduation__card{border:1px solid var(--card-border);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--report-accent,var(--blue)) 15%, transparent), transparent 62%), color-mix(in srgb, var(--theme-surface-strong,#0f172adb) 74%, transparent);border-radius:24px;box-shadow:0 18px 46px #0206171f,inset 0 1px #ffffff1a}.report-metric{isolation:isolate;border-color:color-mix(in srgb, var(--report-accent,var(--blue)) 32%, var(--card-border));background:linear-gradient(90deg, color-mix(in srgb, var(--report-accent,var(--blue)) 18%, transparent), transparent 36%), radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--report-accent,var(--blue)) 18%, transparent), transparent 62%), linear-gradient(145deg, var(--metric-base), color-mix(in srgb, var(--theme-surface-strong,#0f172adb) 78%, transparent));gap:5px;min-height:126px;padding:18px;display:grid;position:relative;overflow:hidden}.report-metrics--hero .report-metric{align-content:end;min-height:260px;padding:30px}.report-metrics--hero .report-metric strong{font-size:clamp(54px,4.5vw,92px)}.report-metrics--hero .report-metric p{font-size:clamp(16px,1vw,20px)}.report-metric:before{content:"";background:linear-gradient(180deg, var(--report-accent,var(--blue)), color-mix(in srgb, var(--report-accent,var(--blue)) 42%, #fff));width:5px;box-shadow:0 0 24px color-mix(in srgb, var(--report-accent,var(--blue)) 38%, transparent);z-index:-1;border-radius:0 999px 999px 0;position:absolute;inset:16px auto 16px 0}.report-metric__icon{border:1px solid color-mix(in srgb, var(--report-accent,var(--blue)) 28%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--report-accent,var(--blue)) 32%, transparent), transparent), color-mix(in srgb, var(--metric-base) 72%, transparent);width:42px;height:42px;color:color-mix(in srgb, var(--report-accent,var(--blue)) 78%, var(--theme-text,#f8fafc));border-radius:14px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:16px;right:16px;box-shadow:inset 0 1px #ffffff1f}.report-metric--blue{--report-accent:var(--blue);--metric-base:color-mix(in srgb, var(--blue) 9%, var(--theme-surface-strong,#0f172adb))}.report-metric--green{--report-accent:var(--green);--metric-base:color-mix(in srgb, var(--green) 11%, var(--theme-surface-strong,#0f172adb))}.report-metric--purple{--report-accent:var(--purple);--metric-base:color-mix(in srgb, var(--purple) 10%, var(--theme-surface-strong,#0f172adb))}.report-metric--cyan{--report-accent:var(--cyan);--metric-base:color-mix(in srgb, var(--cyan) 10%, var(--theme-surface-strong,#0f172adb))}.report-metric--soft{--report-accent:var(--muted);--metric-base:var(--theme-surface-strong,#0f172adb)}.report-metric strong{color:var(--theme-text,#f8fafc);letter-spacing:-.04em;font-size:clamp(28px,2.3vw,46px);font-weight:950;line-height:1}.report-metric p{color:color-mix(in srgb, var(--report-accent,var(--blue)) 26%, var(--muted-strong));margin:0;font-size:14px;font-weight:720;line-height:1.25}.report-clickable{cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.report-clickable:hover{border-color:color-mix(in srgb, var(--blue) 34%, var(--card-border));transform:translateY(-2px);box-shadow:0 22px 58px #02061729,inset 0 1px #ffffff1a}.report-clickable:focus-visible,.report-panel-action:focus-visible,.report-table-total:focus-visible,.report-graduation-legend__item:focus-visible,.report-detail-popover__close:focus-visible{outline:3px solid color-mix(in srgb, var(--blue) 70%, #fff);outline-offset:3px}.report-section{gap:18px;display:grid}.report-section--primary{border:1px solid color-mix(in srgb, var(--blue) 22%, var(--card-border));background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--green) 12%, transparent), transparent 62%), color-mix(in srgb, var(--theme-surface-strong,#0f172adb) 60%, transparent);border-radius:32px;gap:22px;padding:24px}.report-section__heading{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:14px;display:grid}.report-section__heading>svg{border:1px solid color-mix(in srgb, var(--blue) 24%, var(--card-border));width:48px;height:48px;color:var(--blue);background:color-mix(in srgb, var(--blue) 12%, transparent);border-radius:16px;padding:10px}.report-section--compact{border:1px solid color-mix(in srgb, var(--cyan) 18%, var(--card-border));background:color-mix(in srgb, var(--theme-surface-strong,#0f172adb) 48%, transparent);border-radius:32px;padding:22px}.report-admission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.report-admission-panel,.report-plan-panel{gap:16px;display:grid}.report-panel-action,.report-table-total{border:1px solid color-mix(in srgb, var(--blue) 24%, var(--card-border));background:color-mix(in srgb, var(--blue) 12%, transparent);color:var(--theme-text,#f8fafc);cursor:pointer;border-radius:18px}.report-panel-action{min-width:112px;padding:10px 16px;font-size:28px;font-weight:950;line-height:1}.report-mini-bars{gap:10px;display:grid}.report-mini-bar{border:1px solid color-mix(in srgb, var(--cyan) 16%, var(--card-border));background:color-mix(in srgb, var(--theme-soft,#0814273d) 62%, transparent);border-radius:18px;gap:8px;padding:12px;display:grid}.report-mini-bar__header,.report-plan-summary,.report-plan-card span,.report-context-card span{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.report-mini-bar__header span,.report-plan-card span,.report-context-card span,.report-placeholder-card span{color:var(--muted-strong);font-weight:850}.report-mini-bar__header strong,.report-plan-summary strong,.report-plan-card strong,.report-context-card strong{color:var(--theme-text,#f8fafc);font-weight:950}.report-mini-bar__track,.report-plan-card__track{background:color-mix(in srgb, var(--theme-soft,#0814273d) 78%, transparent);border-radius:999px;height:12px;overflow:hidden}.report-mini-bar__track span,.report-plan-card__track span{border-radius:inherit;background:linear-gradient(90deg, var(--blue), var(--cyan));height:100%;display:block}.report-mini-bar small,.report-plan-card small,.report-context-card p{color:var(--muted);font-size:13px;font-weight:760;line-height:1.25}.report-plan-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.report-plan-card,.report-context-card,.report-placeholder-card{border:1px solid color-mix(in srgb, var(--green) 18%, var(--card-border));background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--green) 10%, transparent), transparent 60%), color-mix(in srgb, var(--theme-soft,#0814273d) 66%, transparent);border-radius:22px;gap:10px;min-width:0;padding:16px;display:grid}.report-plan-card strong,.report-context-card strong{font-size:clamp(28px,2.2vw,42px);line-height:1}.report-plan-summary{border:1px solid color-mix(in srgb, var(--green) 20%, var(--card-border));background:color-mix(in srgb, var(--green) 8%, transparent);color:var(--muted-strong);border-radius:18px;padding:12px 16px;font-weight:850}.report-context-grid,.report-placeholder-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.report-placeholder-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-placeholder-card{border-color:color-mix(in srgb, var(--purple) 20%, var(--card-border));background:color-mix(in srgb, var(--purple) 8%, transparent);color:var(--purple);grid-template-columns:28px minmax(0,1fr);align-items:center}.report-graduation__card strong,.report-table-total strong{color:var(--theme-text,#f8fafc);font-weight:950}.report-tables-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.report-table-panel{min-width:0}.report-table-total{justify-items:end;gap:3px;padding:10px 14px;display:grid}.report-table-total strong{font-size:28px;line-height:1}.report-table-wrap{max-height:540px;overflow:auto}.report-table{border-collapse:separate;border-spacing:0 8px;width:100%}.report-table th{z-index:1;background:color-mix(in srgb, var(--theme-surface-strong,#0f1d34f5) 96%, transparent);color:var(--muted);text-align:right;text-transform:uppercase;padding:0 10px 6px;font-size:12px;font-weight:900;position:sticky;top:0}.report-table th:first-child,.report-table td:first-child{text-align:left}.report-table td:first-child span,.report-table td:first-child small{display:block}.report-table td:first-child small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:760}.report-table td{background:color-mix(in srgb, var(--theme-soft,#0814273d) 62%, transparent);color:var(--muted-strong);text-align:right;border-top:1px solid #94a3b824;border-bottom:1px solid #94a3b824;padding:12px 10px;font-size:14px;font-weight:800;line-height:1.2}.report-table td:first-child{border-left:1px solid #94a3b824;border-radius:16px 0 0 16px;width:48%}.report-table td:last-child{color:var(--theme-text,#f8fafc);border-right:1px solid #94a3b824;border-radius:0 16px 16px 0;font-size:16px;font-weight:950}.report-table__clickable-row{cursor:pointer}.report-table__clickable-row:hover td,.report-table__clickable-row:focus-visible td{border-color:color-mix(in srgb, var(--blue) 28%, var(--card-border));background:color-mix(in srgb, var(--blue) 10%, var(--theme-soft,#0814273d))}.report-graduation-chart{grid-template-columns:minmax(420px,.86fr) minmax(0,1.14fr);align-items:stretch;gap:18px;display:grid}.report-graduation-guide{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.report-graduation-guide__item{--guide-color:var(--green);border:1px solid color-mix(in srgb, var(--guide-color) 30%, var(--card-border));background:linear-gradient(90deg, color-mix(in srgb, var(--guide-color) 14%, transparent), transparent 78%), color-mix(in srgb, var(--theme-surface-strong,#0f172adb) 68%, transparent);border-radius:20px;gap:5px;min-width:0;padding:16px 18px 16px 22px;display:grid;position:relative}.report-graduation-guide__item:before{content:"";background:var(--guide-color);border-radius:0 999px 999px 0;width:5px;position:absolute;inset:14px auto 14px 0}.report-graduation-guide__item--summer{--guide-color:var(--green)}.report-graduation-guide__item--winter{--guide-color:var(--purple)}.report-graduation-guide__item span,.report-graduation-guide__item small{color:var(--muted);font-size:13px;font-weight:900;line-height:1.25}.report-graduation-guide__item strong{color:var(--theme-text,#f8fafc);font-size:clamp(18px,1.35vw,24px);font-weight:950;line-height:1.12}.report-graduation-donut-panel,.report-graduation-levels{border:1px solid color-mix(in srgb, var(--cyan) 24%, var(--card-border));background:radial-gradient(circle at 90% 10%, color-mix(in srgb, var(--cyan) 12%, transparent), transparent 58%), color-mix(in srgb, var(--theme-surface-strong,#0f172adb) 66%, transparent);border-radius:28px;min-width:0;box-shadow:0 18px 46px #0206171f,inset 0 1px #ffffff1a}.report-graduation-donut-panel{grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:center;gap:24px;padding:26px;display:grid}.report-graduation-donut{aspect-ratio:1;background:conic-gradient(var(--green) 0 var(--summer-share), var(--purple) var(--summer-share) 100%);width:min(320px,100%);box-shadow:0 24px 54px color-mix(in srgb, var(--cyan) 18%, transparent);border-radius:50%;place-items:center;display:grid;position:relative}.report-graduation-donut:before{content:"";background:radial-gradient(circle at 30% 20%, #ffffff24, transparent 42%), color-mix(in srgb, var(--theme-surface-strong,#0f172af5) 92%, transparent);border-radius:50%;position:absolute;inset:18px}.report-graduation-donut>div{z-index:1;justify-items:center;gap:6px;display:grid;position:relative}.report-graduation-donut span,.report-graduation-levels header span,.report-graduation-legend__item span{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:900}.report-graduation-donut strong{color:var(--theme-text,#f8fafc);font-size:clamp(44px,3.6vw,70px);font-weight:950;line-height:.95}.report-graduation-legend{gap:12px;display:grid}.report-graduation-legend__item{border:1px solid color-mix(in srgb, var(--legend-color) 24%, var(--card-border));background:color-mix(in srgb, var(--legend-color) 10%, transparent);color:inherit;cursor:pointer;text-align:left;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3px 12px;padding:14px 14px 14px 18px;display:grid;position:relative}.report-graduation-legend__item:before{content:"";background:var(--legend-color);border-radius:0 999px 999px 0;width:4px;position:absolute;inset:14px auto 14px 0}.report-graduation-legend__item--summer{--legend-color:var(--green)}.report-graduation-legend__item--winter{--legend-color:var(--purple)}.report-graduation-legend__item strong{color:var(--theme-text,#f8fafc);font-size:24px;font-weight:950;line-height:1}.report-graduation-legend__item small{color:color-mix(in srgb, var(--legend-color) 36%, var(--muted-strong));grid-column:1/-1;font-size:13px;font-weight:850}.report-graduation-levels{gap:18px;padding:26px;display:grid}.report-graduation-levels header{gap:4px;display:grid}.report-graduation-levels header strong{color:var(--theme-text,#f8fafc);font-size:clamp(22px,1.7vw,34px);font-weight:950;line-height:1.05}.report-graduation-levels header p{max-width:720px;color:var(--muted);margin:2px 0 0;font-size:13px;font-weight:760;line-height:1.35}.report-graduation-levels__list{gap:16px;display:grid}.report-graduation-level{gap:11px;display:grid}.report-graduation-level__header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.report-graduation-level__header span{color:var(--muted-strong);font-size:16px;font-weight:850}.report-graduation-level__header strong{color:var(--theme-text,#f8fafc);font-size:28px;font-weight:950;line-height:1}.report-graduation-level__track{border:1px solid color-mix(in srgb, var(--cyan) 18%, var(--card-border));background:color-mix(in srgb, var(--theme-soft,#0814273d) 66%, transparent);border-radius:999px;height:28px;display:flex;overflow:hidden}.report-graduation-level__bar{min-width:2px;display:block}.report-graduation-level__bar--summer{background:linear-gradient(90deg, color-mix(in srgb, var(--green) 66%, #fff), var(--green))}.report-graduation-level__bar--winter{background:linear-gradient(90deg, var(--purple), color-mix(in srgb, var(--purple) 72%, var(--cyan)))}.report-graduation-level__season-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.report-graduation-level__season{--season-color:var(--green);border:1px solid color-mix(in srgb, var(--season-color) 26%, var(--card-border));background:color-mix(in srgb, var(--season-color) 10%, transparent);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 8px;padding:10px 12px;display:grid}.report-graduation-level__season--summer{--season-color:var(--green)}.report-graduation-level__season--winter{--season-color:var(--purple)}.report-graduation-level__season small,.report-graduation-level__season em,.report-graduation-level__plan-row span{color:var(--muted);font-size:12px;font-style:normal;font-weight:850;line-height:1.2}.report-graduation-level__season small{text-transform:uppercase}.report-graduation-level__season strong{color:var(--theme-text,#f8fafc);font-size:18px;font-weight:950;line-height:1}.report-graduation-level__season em{color:color-mix(in srgb, var(--season-color) 42%, var(--muted-strong));grid-column:1/-1}.report-graduation-level__plan-row{background:color-mix(in srgb, var(--theme-soft,#0814273d) 72%, transparent);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px;padding:9px 10px;display:flex}.report-graduation-level__plan-row span{margin-right:auto}.report-graduation-level__plan-row strong{color:var(--muted-strong);background:#94a3b81a;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:900;line-height:1.1}.report-loading{gap:12px;display:grid}.report-loading span{background:#94a3b82e;border-radius:999px;height:30px;display:block}.report-detail-popover{z-index:45;border:1px solid color-mix(in srgb, var(--blue) 28%, var(--card-border));background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--blue) 12%, transparent), transparent 62%), color-mix(in srgb, var(--theme-surface-strong,#0f172af5) 96%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:28px;gap:16px;width:min(440px,100vw - 32px);max-height:calc(100vh - 124px);padding:22px;display:grid;position:fixed;top:98px;right:24px;overflow:auto;box-shadow:0 30px 82px #02061757,inset 0 1px #ffffff1a}.report-detail-popover__close{border:1px solid color-mix(in srgb, var(--blue) 24%, var(--card-border));width:40px;height:40px;color:var(--theme-text,#f8fafc);background:color-mix(in srgb, var(--theme-soft,#0814273d) 76%, transparent);cursor:pointer;border-radius:14px;place-items:center;display:grid;position:absolute;top:14px;right:14px}.report-detail-popover header{gap:7px;padding-right:42px;display:grid}.report-detail-popover header span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.report-detail-popover h2{color:var(--theme-text,#f8fafc);margin:0;font-size:clamp(22px,1.8vw,32px);font-weight:950;line-height:1.08}.report-detail-popover header strong{color:var(--blue);font-size:clamp(34px,3vw,52px);font-weight:950;line-height:.94}.report-detail-popover header p{color:var(--muted-strong);margin:0;font-size:14px;font-weight:720;line-height:1.35}.report-detail-list{gap:8px;display:grid}.report-detail-list__row{background:color-mix(in srgb, var(--theme-soft,#0814273d) 72%, transparent);border:1px solid #94a3b824;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;display:grid}.report-detail-list__row--clickable{cursor:pointer;transition:border-color .16s,transform .16s,background .16s}.report-detail-list__row--clickable:hover,.report-detail-list__row--clickable:focus-visible{border-color:color-mix(in srgb, var(--blue) 52%, var(--card-border));background:color-mix(in srgb, var(--blue-soft) 58%, var(--theme-soft,#0814273d));outline:none;transform:translateY(-1px)}.report-detail-list__row span{color:var(--muted-strong);font-weight:850;line-height:1.24;display:block}.report-detail-list__row small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:720;line-height:1.3;display:block}.report-detail-list__row strong{color:var(--theme-text,#f8fafc);white-space:nowrap;font-size:18px;font-weight:950}.report-detail-empty{border:1px dashed color-mix(in srgb, var(--blue) 24%, var(--card-border));color:var(--muted-strong);border-radius:18px;padding:18px;font-weight:760;line-height:1.35}.specialties-toolbar{grid-template-columns:minmax(0,1fr) minmax(220px,.28fr);align-items:center;gap:12px;display:grid}.specialties-search,.specialties-select{border:1px solid var(--card-border);min-height:54px;color:var(--muted-strong);background:#0f172a9e;border-radius:18px;box-shadow:0 16px 42px #0206172e}.specialties-search{grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;padding:0 16px;display:grid}.specialties-search input,.specialties-select{outline:none;width:100%;font-size:16px;font-weight:760}.specialties-search input{color:inherit;background:0 0;border:0}.specialties-search input::placeholder{color:var(--muted)}.specialties-select{padding:0 14px}.specialties-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.specialties-summary span{min-height:76px;color:var(--muted);text-transform:uppercase;background:#0814273d;border:1px solid #94a3b824;border-radius:18px;gap:2px;padding:12px;font-size:12px;font-weight:850;display:grid}.specialties-summary strong{color:#fff;font-size:24px;line-height:1}.specialties-panel{overflow:hidden}.specialties-table-wrap{max-height:min(68vh,820px);overflow:auto}.specialties-table{border-collapse:separate;border-spacing:0 8px;width:100%}.specialties-table th{z-index:1;color:var(--muted);text-align:left;text-transform:uppercase;background:#0f1d34f5;padding:0 12px 6px;font-size:12px;font-weight:900;position:sticky;top:0}.specialties-table td{color:var(--muted-strong);background:#0814273d;border-top:1px solid #94a3b824;border-bottom:1px solid #94a3b824;padding:14px 12px;font-size:15px;font-weight:760;line-height:1.24}.specialties-table td:first-child{color:#fff;white-space:nowrap;border-left:1px solid #94a3b824;border-radius:16px 0 0 16px;width:140px;font-weight:900}.specialties-table td:last-child{width:180px;color:var(--muted);white-space:nowrap;border-right:1px solid #94a3b824;border-radius:0 16px 16px 0}.chart-tooltip{color:#f8fafc;background:#0f172af5;border:1px solid #94a3b847;border-radius:18px;min-width:170px;padding:14px 16px;box-shadow:0 18px 48px #02061770}.chart-tooltip__label{color:#e2e8f0;margin-bottom:8px;font-size:17px;font-weight:850}.chart-tooltip__item{color:#f8fafc;justify-content:space-between;align-items:center;gap:18px;font-size:18px;font-weight:760;display:flex}.chart-tooltip__item strong{color:#fff;font-size:19px;font-weight:950}.chart-tooltip__item--muted,.chart-tooltip__item--muted strong{color:#cbd5e1}.chart-tooltip__note{color:#cbd5e1;margin-top:8px;font-size:13px;font-weight:700}.recharts-default-tooltip,.recharts-tooltip-wrapper,.recharts-tooltip-label,.recharts-tooltip-item,.recharts-tooltip-item-name,.recharts-tooltip-item-value,.recharts-tooltip-item-separator{color:#f8fafc!important}.bar-value-label{fill:var(--theme-text,#f8fafc);font-size:14px;font-weight:800}.bar-value-label--previous{fill:var(--chart-previous-year)}.bar-year-label{letter-spacing:0;pointer-events:none;font-size:13px;font-weight:950}.bar-year-label--current{fill:#ffffffdb}.bar-year-label--previous{fill:#0f172ab8}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=2100px){.app-shell{max-width:2300px}.stat-card{min-height:220px}.chart--large{height:620px}.chart--medium{height:460px}}@media (width<=1450px){.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-hero-panel,.report-graduation-chart{grid-template-columns:1fr}.report-context-grid,.report-metrics--summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid--top,.dashboard-grid--middle{grid-template-columns:1fr}.donut-layout{grid-template-columns:minmax(220px,.55fr) minmax(0,1fr)}.kcp-panel__direction{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr)}.kcp-panel__direction-numbers{grid-column:1/-1}}@media (width<=1100px){.dashboard-grid--bottom,.report-admission-grid,.report-graduation-guide,.report-metrics--admission,.report-metrics--summary,.report-plan-cards,.report-graduation-level__season-row{grid-template-columns:1fr}.report-detail-popover{width:auto;max-height:min(560px,100vh - 32px);inset:auto 16px 16px}}@media (width<=780px){.app-shell{padding:18px}.hero{grid-template-columns:1fr;align-items:start}.hero__content,.hero__controls{justify-content:stretch;min-width:0}.hero h1{overflow-wrap:anywhere}.range-panel,.range-panel__summary,.range-tabs{justify-content:stretch;align-items:stretch}.range-panel__summary,.range-tabs{width:100%}.range-tab{flex:calc(50% - 10px)}.period-control,.period-control input,.refresh-button{width:100%}.page-tabs{flex-wrap:wrap;width:100%}.page-tab{flex:calc(50% - 8px)}.stats-grid,.report-cover,.report-section__heading{grid-template-columns:1fr}.report-cover{min-height:0;padding:24px}.report-cover h2,.report-cover p{grid-column:1}.report-metrics--hero .report-metric{min-height:180px;padding:24px}.report-metrics,.report-tables-grid,.report-graduation-chart,.report-context-grid,.report-placeholder-grid{grid-template-columns:1fr}.dashboard-dialog{width:100%}.dashboard-dialog-metrics,.dashboard-dialog-grid,.report-graduation-donut-panel,.specialties-toolbar,.specialties-summary,.donut-layout{grid-template-columns:1fr}.chart--large,.chart--medium{height:320px}.summary-card{align-items:flex-start}.kcp-panel__header,.kcp-panel__meta{flex-direction:column;align-items:flex-start}.kcp-panel__header-actions{flex-direction:column-reverse;align-items:flex-start}.kcp-panel__direction,.kcp-panel__direction-numbers{grid-template-columns:1fr}.kcp-panel__sort{border-radius:18px;width:100%}.kcp-panel__search{flex-basis:100%;width:100%;max-width:none}.kcp-panel__sort-button{flex:calc(50% - 6px)}.panel__header{flex-direction:column;align-items:stretch}.panel__action{align-self:flex-start}}@media (width<=520px){.donut-visuals{grid-template-columns:1fr}.chart--donut{min-width:210px;height:220px}.donut-legend--compare .donut-legend__header,.donut-legend--compare .donut-legend__row{grid-template-columns:minmax(0,1fr) minmax(78px,.45fr) minmax(78px,.45fr)}.donut-legend__row{padding-inline:10px}}.range-panel__tools{place-items:start end;gap:12px;display:grid}.calendar-control{background:#0814274d;border:1px solid #38bdf82e;border-radius:22px;justify-items:stretch;gap:8px;min-width:min(100%,440px);padding:12px;display:grid}.calendar-control__topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-control__topline>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:clamp(12px,.78vw,15px);font-weight:900}.calendar-control small{color:var(--muted);font-size:clamp(12px,.78vw,14px);line-height:1.25;display:block}.calendar-control--static{border-color:color-mix(in srgb, var(--green) 28%, #38bdf82e);background:linear-gradient(135deg, color-mix(in srgb, var(--green) 12%, transparent), transparent 54%), #0814274d;gap:10px}.calendar-control--static>strong{color:var(--theme-text,#f8fafc);letter-spacing:-.04em;font-size:clamp(22px,1.55vw,32px);font-weight:950;line-height:1;display:block}.calendar-reset{color:var(--muted-strong);cursor:pointer;background:#0f172ab8;border:1px solid #94a3b829;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:13px;font-weight:800;display:inline-flex}.calendar-reset:hover{color:#fff;border-color:#38bdf857}.dashboard-calendar-wrapper,.dashboard-calendar-wrapper>div{width:100%}.calendar-button{color:#fff;cursor:pointer;text-align:left;background:linear-gradient(135deg,#38bdf82e,#a78bfa24);border:1px solid #38bdf84d;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;min-height:54px;padding:0 16px;font-size:clamp(17px,1.1vw,22px);font-weight:900;display:grid;box-shadow:inset 0 1px #ffffff0f,0 14px 34px #0ea5e91a}.calendar-button:hover:not(:disabled){border-color:#38bdf894;transform:translateY(-1px)}.calendar-button:disabled{cursor:wait;opacity:.68}.dashboard-calendar.react-datepicker{color:#f8fafc;background:#0f172afa;border:1px solid #94a3b83d;border-radius:24px;font-family:inherit;overflow:hidden;box-shadow:0 30px 80px #00000057}.dashboard-calendar .react-datepicker__header{color:#fff;background:linear-gradient(135deg,#0e749070,#581c874d);border-bottom:1px solid #94a3b82e}.dashboard-calendar .react-datepicker__current-month,.dashboard-calendar .react-datepicker-time__header,.dashboard-calendar .react-datepicker-year-header{color:#fff;font-size:18px;font-weight:900}.dashboard-calendar .react-datepicker__day-name,.dashboard-calendar .react-datepicker__day,.dashboard-calendar .react-datepicker__time-name,.dashboard-calendar .react-datepicker__month-text,.dashboard-calendar .react-datepicker__quarter-text,.dashboard-calendar .react-datepicker__year-text,.dashboard-calendar .react-datepicker__week-number{color:var(--muted-strong);border-radius:12px;font-weight:800}.dashboard-calendar .react-datepicker__day-name,.dashboard-calendar .react-datepicker__day,.dashboard-calendar .react-datepicker__week-number{width:2.25rem;margin:.16rem;line-height:2.25rem}.dashboard-calendar .react-datepicker__month-text,.dashboard-calendar .react-datepicker__year-text{width:5.4rem;margin:.24rem;padding:.8rem .2rem}.dashboard-calendar .react-datepicker__day:hover,.dashboard-calendar .react-datepicker__month-text:hover,.dashboard-calendar .react-datepicker__year-text:hover{color:#fff;background:#38bdf82e}.dashboard-calendar .react-datepicker__day--keyboard-selected,.dashboard-calendar .react-datepicker__day--selected,.dashboard-calendar .react-datepicker__month-text--keyboard-selected,.dashboard-calendar .react-datepicker__month-text--selected,.dashboard-calendar .react-datepicker__year-text--keyboard-selected,.dashboard-calendar .react-datepicker__year-text--selected{color:#fff;background:linear-gradient(135deg,#38bdf8,#8b5cf6)}.dashboard-calendar .react-datepicker__day--outside-month{color:#94a3b861}.dashboard-calendar .react-datepicker__navigation-icon:before{border-color:#e0f2fe}.dashboard-calendar .react-datepicker__triangle{display:none}@media (width<=1180px){.range-panel__tools{justify-items:stretch;width:100%}.calendar-control{width:100%}}.range-panel{z-index:100;position:relative}.range-panel__tools,.calendar-control,.dashboard-calendar-wrapper{z-index:120;position:relative}.status-bar,.stats-grid,.dashboard-grid{z-index:1;position:relative}.react-datepicker-popper,.dashboard-calendar-popper{z-index:99999!important}.dashboard-calendar-popper[data-placement^=bottom]{padding-top:10px}.dashboard-calendar-popper[data-placement^=top]{padding-bottom:10px}.dashboard-calendar.react-datepicker{background:linear-gradient(145deg,#0f172afc,#111827fc);border-color:#38bdf857;border-radius:28px;min-width:360px;box-shadow:0 34px 90px #00000094,0 0 0 1px #ffffff08,0 0 60px #38bdf821}.dashboard-calendar .react-datepicker__month-container{float:none}.dashboard-calendar .react-datepicker__header{padding:18px 16px 12px}.dashboard-calendar .react-datepicker__current-month,.dashboard-calendar .react-datepicker-year-header{text-transform:capitalize}.dashboard-calendar .react-datepicker__day-names{margin-top:12px}.dashboard-calendar .react-datepicker__day-name{color:#bfdbfe;text-transform:lowercase}.dashboard-calendar .react-datepicker__week-number{color:#93c5fd}.dashboard-calendar .react-datepicker__navigation{top:19px}.dashboard-calendar .react-datepicker__navigation--previous{left:18px}.dashboard-calendar .react-datepicker__navigation--next{right:18px}.dashboard-calendar .react-datepicker__day--today,.dashboard-calendar .react-datepicker__month-text--today,.dashboard-calendar .react-datepicker__year-text--today{color:#e0f2fe;border:1px solid #38bdf86b}.dashboard-calendar .react-datepicker__day--disabled,.dashboard-calendar .react-datepicker__month-text--disabled,.dashboard-calendar .react-datepicker__year-text--disabled{color:#94a3b83d}.dashboard-calendar .react-datepicker__month-text,.dashboard-calendar .react-datepicker__year-text{text-transform:capitalize}@media (width<=780px){.dashboard-calendar.react-datepicker{min-width:min(92vw,360px)}}.period-menu{z-index:30;justify-content:flex-end;display:flex;position:relative}.period-menu__button{color:#f8fafc;cursor:pointer;background:#02061747;border:1px solid #38bdf83d;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:58px;padding:0 20px;font-size:clamp(16px,1.04vw,20px);font-weight:900;transition:transform .18s,border-color .18s,background .18s;display:inline-grid;box-shadow:0 18px 48px #02061738}.period-menu__button:hover,.period-menu__button--open{background:linear-gradient(135deg,#38bdf838,#a78bfa2e);border-color:#38bdf88f;transform:translateY(-1px)}.period-menu__button--open svg:last-child{transform:rotate(180deg)}.period-menu__panel{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);z-index:90;background:radial-gradient(circle at 92% 0,#a78bfa2e,#0000 24rem),#0f172afa;border:1px solid #38bdf842;border-radius:28px;gap:14px;width:min(720px,100vw - 48px);padding:18px;display:grid;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 36px 110px #00000075}.period-menu__panel:before{content:"";background:#0f172afa;border-top:1px solid #38bdf842;border-left:1px solid #38bdf842;width:16px;height:16px;position:absolute;top:-8px;right:38px;transform:rotate(45deg)}.period-menu__header{z-index:1;justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.period-menu__header span,.period-menu__current span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:clamp(12px,.82vw,15px);font-weight:900;display:block}.period-menu__header strong{color:#fff;letter-spacing:-.04em;font-size:clamp(24px,1.7vw,34px);line-height:1;display:block}.period-menu__close{min-height:42px;color:var(--muted-strong);cursor:pointer;background:#02061747;border:1px solid #94a3b82e;border-radius:999px;padding:0 15px;font-size:14px;font-weight:900}.period-menu__close:hover{color:#fff;border-color:#38bdf861}.range-tabs--in-menu{grid-template-columns:repeat(auto-fit,minmax(94px,1fr));justify-content:stretch;gap:10px;display:grid}.range-tabs--in-menu .range-tab{min-height:54px;padding:0 12px}.period-menu__current,.period-menu__hint{background:#02061733;border:1px solid #94a3b824;border-radius:20px;padding:14px 16px}.period-menu__current strong{color:var(--muted-strong);letter-spacing:-.03em;font-size:clamp(18px,1.24vw,25px);line-height:1.12;display:block}.period-menu__hint{color:var(--muted-strong);font-size:clamp(15px,1vw,18px);font-weight:720;line-height:1.35}.period-menu .calendar-control{width:100%;min-width:0}.dashboard-calendar-popper{z-index:150}@media (width<=980px){.period-menu,.period-menu__button{width:100%}.period-menu{gap:12px;display:grid}.period-menu__panel{width:100%;position:static}.period-menu__panel:before{display:none}.range-tabs--in-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}.campaign-year-control{z-index:1;background:linear-gradient(135deg,#38bdf81a,#02061738);border:1px solid #38bdf82e;border-radius:22px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px;display:grid;position:relative}.campaign-year-control__text{gap:5px;min-width:0;display:grid}.campaign-year-control__text span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:clamp(12px,.82vw,15px);font-weight:900;display:block}.campaign-year-control__text strong{color:#fff;letter-spacing:-.055em;font-size:clamp(32px,2.2vw,44px);line-height:.95;display:block}.campaign-year-control__text small{color:var(--muted);font-size:clamp(12px,.82vw,15px);line-height:1.35;display:block}.campaign-year-control__actions{gap:10px;display:flex}.campaign-year-control__button{color:#f8fafc;cursor:pointer;background:#02061747;border:1px solid #94a3b82e;border-radius:18px;place-items:center;width:52px;height:52px;font-size:32px;font-weight:900;line-height:1;transition:transform .18s,border-color .18s,background .18s;display:grid}.campaign-year-control__button:hover:not(:disabled){background:#0e749038;border-color:#38bdf870;transform:translateY(-1px)}.refresh-button:disabled,.period-menu__button:disabled,.range-tab:disabled,.calendar-reset:disabled,.campaign-year-control__button:disabled{cursor:wait;opacity:.58;transform:none}.period-menu__button:disabled:hover,.range-tab:disabled:hover,.calendar-reset:disabled:hover,.campaign-year-control__button:disabled:hover{color:var(--muted-strong);background:#02061738;border-color:#94a3b82e}.range-tab--active:disabled,.period-menu__button--open:disabled{color:#fff;background:linear-gradient(135deg,#38bdf847,#a78bfa3d);border-color:#38bdf88a}@media (width<=780px){.campaign-year-control{grid-template-columns:1fr}.campaign-year-control__actions{width:100%}.campaign-year-control__button{flex:1 1 0}}.hero h1{margin-top:0}.chart[aria-busy=true],.donut-layout[aria-busy=true]{min-height:clamp(270px,22vw,390px)}.chart-loading,.table-loading__row{background:linear-gradient(135deg,#0f172ab8,#1e293b6b);border:1px solid #94a3b824;position:relative;overflow:hidden}.chart-loading:after,.table-loading__row:after,.table-loading__rank:after,.table-loading__text span:after,.table-loading__text small:after,.table-loading__row strong:after,.chart-loading__ring:after,.chart-loading__legend span:after{content:"";background:linear-gradient(90deg,#0000,#ffffff24,#0000);animation:1.25s ease-in-out infinite loading-shimmer;position:absolute;inset:0;transform:translate(-120%)}.chart-loading{width:100%;height:100%;min-height:inherit;border-radius:24px}.chart-loading__grid{opacity:.72;background-image:linear-gradient(#94a3b81c 1px,#0000 1px),linear-gradient(90deg,#94a3b81c 1px,#0000 1px);background-size:100% 25%,16.66% 100%;border-radius:18px;position:absolute;inset:18px}.chart-loading--bar .chart-loading__bars{justify-content:space-around;align-items:flex-end;gap:clamp(10px,1vw,18px);display:flex;position:absolute;inset:42px 36px 28px}.chart-loading--bar .chart-loading__bars span{background:linear-gradient(#38bdf8b8,#38bdf838);border-radius:18px 18px 0 0;flex:1 1 0;min-width:26px;max-width:78px;animation:1.15s ease-in-out infinite loading-pulse;box-shadow:0 0 30px #38bdf81f}.chart-loading--bar .chart-loading__bars span:nth-child(2n){background:linear-gradient(#a78bfab8,#a78bfa38);animation-delay:.14s}.chart-loading--bar .chart-loading__bars span:nth-child(3n){background:linear-gradient(#34d399ad,#34d3992e);animation-delay:.26s}.chart-loading--area .chart-loading__line,.chart-loading--area .chart-loading__glow{border-radius:999px;position:absolute;left:6%;right:6%}.chart-loading--area .chart-loading__line{clip-path:polygon(0 88%,10% 54%,22% 62%,34% 30%,48% 48%,62% 18%,78% 38%,100% 12%,100% 100%,0 100%);background:#38bdf8c7;height:6px;animation:1.2s ease-in-out infinite loading-pulse;bottom:36%;box-shadow:0 0 32px #38bdf83d}.chart-loading--area .chart-loading__glow{clip-path:polygon(0 80%,10% 48%,22% 56%,34% 24%,48% 42%,62% 12%,78% 32%,100% 6%,100% 100%,0 100%);background:linear-gradient(#38bdf82e,#38bdf805);height:42%;bottom:16%}.chart-loading--donut{grid-template-columns:minmax(180px,.9fr) minmax(0,1fr);align-items:center;gap:24px;min-height:clamp(230px,18vw,340px);padding:24px;display:grid}.chart-loading__ring{aspect-ratio:1;background:conic-gradient(#38bdf8d1,#a78bfa80,#38bdf847);border-radius:50%;width:min(100%,260px);margin:0 auto;animation:1.18s ease-in-out infinite loading-pulse;position:relative}.chart-loading__ring:before{content:"";z-index:1;background:#0f172a;border-radius:50%;position:absolute;inset:22%}.chart-loading__legend{gap:16px;display:grid}.chart-loading__legend span,.table-loading__rank,.table-loading__text span,.table-loading__text small,.table-loading__row strong{background:#94a3b829;border-radius:999px;display:block;position:relative;overflow:hidden}.chart-loading__legend span{width:100%;max-width:260px;height:22px}.chart-loading__legend span:nth-child(2){max-width:220px}.chart-loading__legend span:nth-child(3){max-width:180px}.table-loading{gap:10px;display:grid}.table-loading__row{border-radius:18px;grid-template-columns:42px minmax(0,1fr) 76px;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:grid}.table-loading__rank{border-radius:12px;width:34px;height:34px}.table-loading__text{gap:8px;display:grid}.table-loading__text span{width:min(100%,300px);height:17px}.table-loading__text small{width:min(72%,220px);height:12px}.table-loading__row strong{justify-self:end;width:64px;height:24px}@keyframes loading-shimmer{to{transform:translate(120%)}}@keyframes loading-pulse{0%,to{opacity:.55}50%{opacity:1}}@media (width<=900px){.chart-loading--donut{grid-template-columns:1fr}}.donut-layout[aria-busy=true]{display:block}.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--in-range,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-start,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-end,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-single{color:#fff}.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--in-range{background:#38bdf82e;border-radius:0;box-shadow:inset 0 0 0 1px #38bdf81a}.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-start,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-end,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-single{background:linear-gradient(135deg,#38bdf8,#8b5cf6);font-weight:900}.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-start{border-radius:12px 0 0 12px}.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-end{border-radius:0 12px 12px 0}.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-single{border-radius:12px}.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-start:hover,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-end:hover,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-single:hover,.dashboard-calendar .react-datepicker__day.dashboard-calendar__day--in-range:hover{color:#fff}.dashboard-footer{justify-content:flex-end;margin-top:8px;padding:6px 2px 0;display:flex}.theme-switcher{min-height:30px;color:var(--muted);opacity:.58;background:#02061729;border:1px solid #94a3b829;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;transition:opacity .18s,border-color .18s,background .18s;display:inline-flex}.theme-switcher:hover,.theme-switcher:focus-within{opacity:1;background:#0206173d;border-color:#94a3b84d}.theme-switcher select{max-width:138px;color:inherit;cursor:pointer;background:0 0;border:0;outline:0;font-size:12px;font-weight:800}.theme-switcher option{color:#111827;background:#fff}html[data-theme=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--card:#ffffffdb;--card-border:#1f4e791f;--muted:#687386;--muted-strong:#334155;--blue:#1f5f9f;--purple:#6574a8;--green:#16806f;--indigo:#5458a6;--pink:#9b5560;--cyan:#2f7f9f;--theme-text:#142033;--theme-surface:#ffffffc7;--theme-surface-strong:#fffffff5;--theme-soft:#eef5fcdb;--theme-border:#1f4e7921;--theme-shadow:0 22px 70px #1f4e791a;--theme-chart-tick:#64748b;--theme-chart-grid:#1f4e791c;--chart-tick:#64748b;--chart-grid:#1f4e791c;--chart-cursor:#1f5f9f14;--chart-missing-fill:#fff;--chart-missing-stroke:#94a3b8;--chart-active-stroke:#fff}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--card:#1c1c1ec7;--card-border:#ffffff1a;--muted:#98989d;--muted-strong:#d1d1d6;--blue:#0a84ff;--purple:#bf5af2;--green:#30d158;--indigo:#5e5ce6;--pink:#ff375f;--cyan:#64d2ff;--theme-text:#f5f5f7;--theme-surface:#1c1c1ec7;--theme-surface-strong:#2c2c2eeb;--theme-soft:#2c2c2eb3;--theme-border:#ffffff1f;--theme-shadow:0 22px 70px #00000061;--theme-chart-tick:#c7c7cc;--theme-chart-grid:#ffffff1f;--chart-tick:#c7c7cc;--chart-grid:#ffffff1f;--chart-cursor:#ffffff14;--chart-missing-fill:#1c1c1e;--chart-missing-stroke:#8e8e93;--chart-active-stroke:#f5f5f7}html[data-theme=light] body{color:var(--theme-text);background:radial-gradient(circle at 16% 8%,#bfdbfe99,#0000 34rem),radial-gradient(circle at 84% 4%,#e0f2feb8,#0000 32rem),radial-gradient(circle at 56% 100%,#dbeafea3,#0000 42rem),linear-gradient(135deg,#fdfbfb 0%,#f5f7fa 42%,#e7f0fd 100%)}html[data-theme=dark] body{color:var(--theme-text);background:radial-gradient(circle at 18% 8%,#0a84ff2e,#0000 34rem),radial-gradient(circle at 86% 2%,#bf5af224,#0000 32rem),linear-gradient(#000 0%,#111114 52%,#1c1c1e 100%)}html:is([data-theme=light],[data-theme=dark]) .app-shell,html:is([data-theme=light],[data-theme=dark]) .hero h1,html:is([data-theme=light],[data-theme=dark]) .panel h2,html:is([data-theme=light],[data-theme=dark]) .kcp-panel h2,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__header-actions>strong,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__meta strong,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__direction-main span,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__direction-progress strong,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__direction-numbers strong,html:is([data-theme=light],[data-theme=dark]) .stat-card__value,html:is([data-theme=light],[data-theme=dark]) .table-list strong,html:is([data-theme=light],[data-theme=dark]) .legend-list__item strong{color:var(--theme-text)}html[data-theme=light] .hero h1{color:#10233f;text-shadow:0 1px #ffffffb8}html[data-theme=dark] .hero h1{color:#f5f5f7}html:is([data-theme=light],[data-theme=dark]) .refresh-button,html:is([data-theme=light],[data-theme=dark]) .page-tabs,html:is([data-theme=light],[data-theme=dark]) .range-panel,html:is([data-theme=light],[data-theme=dark]) .status-bar,html:is([data-theme=light],[data-theme=dark]) .panel,html:is([data-theme=light],[data-theme=dark]) .kcp-panel,html:is([data-theme=light],[data-theme=dark]) .stat-card,html:is([data-theme=light],[data-theme=dark]) .period-menu__button,html:is([data-theme=light],[data-theme=dark]) .period-menu__panel,html:is([data-theme=light],[data-theme=dark]) .period-menu__panel:before,html:is([data-theme=light],[data-theme=dark]) .calendar-control,html:is([data-theme=light],[data-theme=dark]) .period-menu__current,html:is([data-theme=light],[data-theme=dark]) .period-menu__hint,html:is([data-theme=light],[data-theme=dark]) .campaign-year-control,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar.react-datepicker{border-color:var(--theme-border);background:var(--theme-surface);box-shadow:var(--theme-shadow);-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%)}html:is([data-theme=light],[data-theme=dark]) .panel,html:is([data-theme=light],[data-theme=dark]) .kcp-panel,html:is([data-theme=light],[data-theme=dark]) .status-bar,html:is([data-theme=light],[data-theme=dark]) .range-panel,html:is([data-theme=light],[data-theme=dark]) .period-menu__panel,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar.react-datepicker{background:linear-gradient(180deg, var(--theme-surface-strong), var(--theme-surface))}html[data-theme=light] .range-panel,html[data-theme=light] .status-bar,html[data-theme=light] .panel,html[data-theme=light] .kcp-panel,html[data-theme=light] .period-menu__panel{background:linear-gradient(#fffffff0,#f7fbffd1),linear-gradient(135deg,#ffffffb8,#e8f1fc66)}html[data-theme=light] .range-panel{box-shadow:0 18px 54px #1f4e791f,inset 0 1px #ffffffdb}html:is([data-theme=light],[data-theme=dark]) .kcp-panel{background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--green) 16%, transparent), transparent 56%), linear-gradient(135deg, color-mix(in srgb, var(--blue) 10%, var(--theme-surface-strong)), var(--theme-surface))}html:is([data-theme=light],[data-theme=dark]) .kcp-panel__track{border-color:color-mix(in srgb, var(--blue) 30%, var(--theme-border));background:color-mix(in srgb, var(--theme-soft) 72%, transparent)}html:is([data-theme=light],[data-theme=dark]) .kcp-panel__toggle,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__search input,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__sort,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__direction,html:is([data-theme=light],[data-theme=dark]) .kcp-panel__empty{border-color:var(--theme-border);background:color-mix(in srgb, var(--theme-soft) 62%, transparent)}html:is([data-theme=light],[data-theme=dark]) .kcp-panel__sort-button--active{color:#fff}html:is([data-theme=light],[data-theme=dark]) .kcp-panel__direction-track{border-color:color-mix(in srgb, var(--blue) 34%, var(--theme-border));background:linear-gradient(90deg, color-mix(in srgb, var(--blue) 12%, transparent), color-mix(in srgb, var(--green) 10%, transparent)), color-mix(in srgb, var(--theme-soft) 82%, transparent)}html:is([data-theme=light],[data-theme=dark]) .stat-card{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 11%, var(--theme-surface-strong)), var(--theme-surface))}html[data-theme=light] .stat-card{border-color:color-mix(in srgb, var(--accent) 18%, #1f4e791a);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 62%), linear-gradient(145deg, color-mix(in srgb, var(--accent) 8%, #fff), #f8fbffe0);box-shadow:0 18px 48px #1f4e791a,inset 0 1px #ffffffc7}html:is([data-theme=light],[data-theme=dark]) .stat-card:before{opacity:.36;filter:blur(2px)}html[data-theme=light] .stat-card:before{opacity:.24}html:is([data-theme=light],[data-theme=dark]) .refresh-button,html:is([data-theme=light],[data-theme=dark]) .page-tab,html:is([data-theme=light],[data-theme=dark]) .period-menu__button,html:is([data-theme=light],[data-theme=dark]) .period-menu__close,html:is([data-theme=light],[data-theme=dark]) .campaign-year-control__button,html:is([data-theme=light],[data-theme=dark]) .calendar-reset,html:is([data-theme=light],[data-theme=dark]) .range-tab,html:is([data-theme=light],[data-theme=dark]) .calendar-button{border-color:var(--theme-border);background:var(--theme-soft);color:var(--theme-text);box-shadow:none}html[data-theme=light] .refresh-button{color:#fff;background:linear-gradient(135deg,#1f5f9f,#2f7f9f);border-color:#1f5f9f2e;box-shadow:0 18px 42px #1f5f9f38}html[data-theme=light] .refresh-button:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#174f88,#28738f);border-color:#1f5f9f52}html[data-theme=light] .period-menu__button,html[data-theme=light] .calendar-button{background:linear-gradient(#fffffff5,#e8f1fccc),linear-gradient(135deg,#1f5f9f14,#2f7f9f0a);border-color:#1f5f9f2e;box-shadow:inset 0 1px #ffffffd6,0 10px 24px #1f4e7914}html:is([data-theme=light],[data-theme=dark]) .range-tab--active,html:is([data-theme=light],[data-theme=dark]) .page-tab--active,html:is([data-theme=light],[data-theme=dark]) .period-menu__button:hover,html:is([data-theme=light],[data-theme=dark]) .period-menu__button--open,html:is([data-theme=light],[data-theme=dark]) .refresh-button:hover:not(:disabled),html:is([data-theme=light],[data-theme=dark]) .calendar-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--blue) 42%, var(--theme-border));background:color-mix(in srgb, var(--blue) 12%, var(--theme-surface-strong));color:var(--theme-text)}html[data-theme=light] .range-tab--active,html[data-theme=light] .period-menu__button--open,html[data-theme=light] .period-menu__button:hover,html[data-theme=light] .calendar-button:hover:not(:disabled){color:#10233f;background:linear-gradient(135deg,#1f5f9f24,#2f7f9f1a),#ffffffeb;border-color:#1f5f9f52}html:is([data-theme=light],[data-theme=dark]) .range-tab--active{box-shadow:0 10px 26px color-mix(in srgb, var(--blue) 14%, transparent)}html:is([data-theme=light],[data-theme=dark]) .table-list__row,html:is([data-theme=light],[data-theme=dark]) .specialties-summary span,html:is([data-theme=light],[data-theme=dark]) .specialties-table td,html:is([data-theme=light],[data-theme=dark]) .table-loading__row,html:is([data-theme=light],[data-theme=dark]) .chart-loading,html:is([data-theme=light],[data-theme=dark]) .table-list__empty{border-color:var(--theme-border);background:var(--theme-soft)}html:is([data-theme=light],[data-theme=dark]) .donut-legend__row{border-color:var(--theme-border);background:color-mix(in srgb, var(--theme-soft) 58%, transparent)}html[data-theme=light] .donut-legend__row{background:linear-gradient(#f8fbff9e,#eef5fc61),#ffffff57;border-color:#1f4e7914}html[data-theme=dark] .donut-legend__row{background:#ffffff0e;border-color:#ffffff1a}html[data-theme=light] .table-list__row,html[data-theme=light] .specialties-summary span,html[data-theme=light] .specialties-table td,html[data-theme=light] .table-loading__row,html[data-theme=light] .chart-loading,html[data-theme=light] .table-list__empty,html[data-theme=light] .specialties-search,html[data-theme=light] .specialties-select,html[data-theme=light] .period-menu__current,html[data-theme=light] .calendar-control,html[data-theme=light] .campaign-year-control{background:linear-gradient(#ffffffbd,#eff6ff94),#ffffffb8;border-color:#1f4e791a}html:is([data-theme=light],[data-theme=dark]) .table-list__rank{color:var(--blue);background:color-mix(in srgb, var(--blue) 12%, transparent)}html:is([data-theme=light],[data-theme=dark]) .specialties-search,html:is([data-theme=light],[data-theme=dark]) .specialties-select{border-color:var(--theme-border);background:var(--theme-soft);color:var(--theme-text)}html:is([data-theme=light],[data-theme=dark]) .specialties-summary strong,html:is([data-theme=light],[data-theme=dark]) .specialties-table td:first-child{color:var(--theme-text)}html:is([data-theme=light],[data-theme=dark]) .specialties-table th{background:var(--theme-surface-strong)}html:is([data-theme=light],[data-theme=dark]) .chart-tooltip{border-color:var(--theme-border);background:var(--theme-surface-strong);color:var(--theme-text);box-shadow:var(--theme-shadow)}html[data-theme=light] .chart-tooltip{background:#fffffff5;box-shadow:0 18px 54px #1f4e7929}html:is([data-theme=light],[data-theme=dark]) .chart-tooltip__label,html:is([data-theme=light],[data-theme=dark]) .chart-tooltip__item,html:is([data-theme=light],[data-theme=dark]) .chart-tooltip__item strong,html:is([data-theme=light],[data-theme=dark]) .recharts-tooltip-label,html:is([data-theme=light],[data-theme=dark]) .recharts-tooltip-item,html:is([data-theme=light],[data-theme=dark]) .recharts-tooltip-item-name,html:is([data-theme=light],[data-theme=dark]) .recharts-tooltip-item-value,html:is([data-theme=light],[data-theme=dark]) .recharts-tooltip-item-separator{color:var(--theme-text)!important}html:is([data-theme=light],[data-theme=dark]) .recharts-cartesian-axis-tick-value,html:is([data-theme=light],[data-theme=dark]) .recharts-text{fill:var(--theme-chart-tick)!important}html:is([data-theme=light],[data-theme=dark]) .recharts-cartesian-grid line{stroke:var(--theme-chart-grid)!important}html:is([data-theme=light],[data-theme=dark]) .legend-list__item,html:is([data-theme=light],[data-theme=dark]) .table-list__name,html:is([data-theme=light],[data-theme=dark]) .summary-card p{color:var(--muted-strong)}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__header{border-color:var(--theme-border);background:color-mix(in srgb, var(--blue) 9%, var(--theme-surface-strong))}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__current-month,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker-time__header,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker-year-header,html:is([data-theme=light],[data-theme=dark]) .period-menu__header strong,html:is([data-theme=light],[data-theme=dark]) .campaign-year-control__text strong{color:var(--theme-text)}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day-name,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__time-name,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__month-text,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__quarter-text,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__year-text,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__week-number{color:var(--muted-strong)}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day-name,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__week-number{color:var(--muted)}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day:hover,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__month-text:hover,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__year-text:hover{background:color-mix(in srgb, var(--blue) 12%, transparent);color:var(--theme-text)}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day--keyboard-selected,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day--selected,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__month-text--keyboard-selected,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__month-text--selected,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__year-text--keyboard-selected,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__year-text--selected,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-start,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-end,html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day.dashboard-calendar__day--range-single{background:linear-gradient(135deg, var(--blue), var(--purple));color:#fff}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__day.dashboard-calendar__day--in-range{background:color-mix(in srgb, var(--blue) 14%, transparent);color:var(--theme-text)}html:is([data-theme=light],[data-theme=dark]) .dashboard-calendar .react-datepicker__navigation-icon:before{border-color:var(--theme-text)}html[data-theme=light] .chart-loading__ring:before{background:#fff}html[data-theme=dark] .chart-loading__ring:before{background:#1c1c1e}html:is([data-theme=light],[data-theme=dark]) .chart-loading:after,html:is([data-theme=light],[data-theme=dark]) .table-loading__row:after,html:is([data-theme=light],[data-theme=dark]) .stat-card[aria-busy=true]:after{background:linear-gradient(90deg,#0000,#ffffff52,#0000)}html:is([data-theme=light],[data-theme=dark]) .theme-switcher{border-color:var(--theme-border);background:var(--theme-surface);color:var(--muted);box-shadow:none}html[data-theme=dark] .theme-switcher option{color:#f5f5f7;background:#1c1c1e}@media (width<=780px){.dashboard-footer{justify-content:center}}.campus-plan{border:1px solid var(--card-border);background:var(--card);border-radius:30px;grid-template-rows:auto minmax(0,1fr);height:max(620px,100vh - 270px);min-height:620px;display:grid;overflow:hidden;box-shadow:0 22px 64px #02061742}.campus-plan:fullscreen{border:0;border-radius:0;height:100vh}.campus-plan__toolbar{z-index:2;border-bottom:1px solid var(--card-border);background:#0f1d34f0;justify-content:flex-end;align-items:center;gap:16px;padding:12px 16px;display:flex;position:relative}.campus-plan__controls{align-items:center;gap:6px;display:flex}.campus-plan__controls button,.campus-plan__controls a{width:40px;height:40px;color:var(--muted-strong);cursor:pointer;background:#08142757;border:1px solid #94a3b82e;border-radius:12px;place-items:center;text-decoration:none;transition:border-color .16s,background .16s,color .16s,transform .16s;display:grid}.campus-plan__controls button:hover,.campus-plan__controls a:hover{border-color:color-mix(in srgb, var(--blue) 48%, var(--card-border));color:#fff;background:color-mix(in srgb, var(--blue) 16%, transparent);transform:translateY(-1px)}.campus-plan__controls .campus-plan__tool--active{border-color:color-mix(in srgb, var(--blue) 62%, var(--card-border));color:#fff;background:color-mix(in srgb, var(--blue) 28%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 12%, transparent)}.campus-plan__zoom{min-width:66px;color:var(--muted-strong);text-align:center;font-size:14px;font-weight:900}.campus-plan__divider{background:var(--card-border);width:1px;height:26px;margin:0 3px}.campus-plan__viewer{cursor:grab;overscroll-behavior:contain;scrollbar-color:color-mix(in srgb, var(--blue) 52%, var(--muted)) transparent;scrollbar-width:thin;touch-action:none;-webkit-user-select:none;user-select:none;background-color:#07101fb8;background-image:radial-gradient(circle,#94a3b830 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:18px 18px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-width:0;min-height:0;position:relative;overflow:auto}.campus-plan__viewer--dragging{cursor:grabbing}.campus-plan__viewer--drawing{cursor:crosshair}.campus-plan__drawing-tools{z-index:4;border:1px solid var(--card-border);width:fit-content;min-height:46px;color:var(--muted-strong);cursor:default;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f1d34f0;border-radius:15px;align-items:center;gap:8px;margin:14px 0 -60px 14px;padding:7px 9px 7px 12px;display:flex;position:sticky;top:14px;left:14px;box-shadow:0 14px 38px #02061747}.campus-plan__drawing-tools>span:first-child{white-space:nowrap;font-size:12px;font-weight:850}.campus-plan__colors{gap:5px;display:flex}.campus-plan__colors button{outline:1px solid color-mix(in srgb, var(--draw-color) 42%, var(--card-border));background:var(--draw-color);cursor:pointer;border:3px solid #ffffffd1;border-radius:50%;width:24px;height:24px;padding:0}.campus-plan__colors .campus-plan__color--active{outline:3px solid color-mix(in srgb, var(--draw-color) 46%, transparent);transform:scale(1.08)}.campus-plan__drawing-divider{background:var(--card-border);width:1px;height:25px}.campus-plan__drawing-tools>button{border:1px solid var(--card-border);width:32px;height:32px;color:var(--muted-strong);cursor:pointer;background:#08142757;border-radius:10px;place-items:center;padding:0;display:grid}.campus-plan__drawing-tools>button:hover:not(:disabled){color:#fff;background:color-mix(in srgb, var(--blue) 16%, transparent)}.campus-plan__drawing-tools>button:disabled{cursor:default;opacity:.38}.campus-plan__stage{justify-content:center;align-items:center;width:max-content;min-width:100%;min-height:100%;padding:24px;display:flex}.campus-plan__page{background:#fff;flex:none;line-height:0;position:relative;overflow:hidden;box-shadow:0 18px 54px #00000057}.campus-plan__image{opacity:0;pointer-events:none;max-width:none;transition:opacity .18s;display:block}.campus-plan__image--ready{opacity:1}.campus-plan__drawing-layer{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.campus-plan__message{color:var(--muted-strong);text-align:center;place-items:center;padding:24px;font-size:18px;font-weight:800;display:grid;position:absolute;inset:0}.campus-plan__message--error{color:#fecaca}html:is([data-theme=light],[data-theme=dark]) .campus-plan{border-color:var(--theme-border);background:var(--theme-surface);box-shadow:var(--theme-shadow)}html:is([data-theme=light],[data-theme=dark]) .campus-plan__toolbar{border-color:var(--theme-border);background:var(--theme-surface-strong)}html:is([data-theme=light],[data-theme=dark]) .campus-plan__drawing-tools{border-color:var(--theme-border);color:var(--theme-text);background:var(--theme-surface-strong)}html:is([data-theme=light],[data-theme=dark]) .campus-plan__controls button,html:is([data-theme=light],[data-theme=dark]) .campus-plan__controls a{border-color:var(--theme-border);color:var(--theme-text);background:var(--theme-soft)}html[data-theme=light] .campus-plan__viewer{background-color:#e2ebf6eb;background-image:radial-gradient(circle,#1f4e7924 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:18px 18px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}@media (width<=800px){.campus-plan{border-radius:22px;height:calc(100vh - 220px);min-height:560px}.campus-plan__toolbar{flex-direction:column;align-items:stretch}.campus-plan__controls{justify-content:center}.campus-plan__drawing-tools{max-width:calc(100vw - 64px);overflow-x:auto}.campus-plan__controls button,.campus-plan__controls a{width:38px;height:38px}.campus-plan__stage{padding:16px}}@media (width<=520px){.campus-plan__divider,.campus-plan__controls button:nth-of-type(5){display:none}}.campus-map{grid-template-columns:minmax(0,1fr) minmax(280px,.28fr);gap:16px;min-height:680px;display:grid}.campus-map:fullscreen{background:var(--theme-bg,#081427);grid-template-columns:minmax(0,1fr) 320px;width:100vw;height:100vh;padding:16px}.campus-map__surface,.campus-map__list{border:1px solid var(--card-border);background:var(--card);box-shadow:0 22px 64px #02061738}.campus-map__surface{border-radius:24px;min-height:680px;position:relative;overflow:hidden}.campus-map__canvas{background:#d7e4ef;min-width:0;min-height:0;position:absolute;inset:0}.campus-map__canvas ymaps{font-family:inherit}.campus-map__state{z-index:4;color:var(--muted-strong);text-align:center;background:linear-gradient(#0f1d34db,#07101feb),radial-gradient(circle at 50% 24%,#38bdf833,#0000 42%);align-content:center;justify-items:center;gap:8px;padding:24px;display:grid;position:absolute;inset:0}.campus-map__state strong{color:#fff;font-size:clamp(22px,2vw,34px);font-weight:950;line-height:1.05}.campus-map__state span{max-width:560px;color:var(--muted-strong);font-size:15px;font-weight:760;line-height:1.45}.campus-map__state button{color:#fff;cursor:pointer;min-height:42px;font:inherit;background:#1f5f9f;border:1px solid #ffffff2e;border-radius:12px;margin-top:8px;padding:0 16px;font-size:14px;font-weight:850;transition:background .16s,transform .16s}.campus-map__state button:hover{background:#16806f;transform:translateY(-1px)}.campus-map__state--loading{pointer-events:none}.campus-map__tools{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border:1px solid #0f172a1a;border-radius:16px;gap:7px;padding:8px;display:grid;position:absolute;top:14px;right:14px;box-shadow:0 16px 42px #0f172a29}.campus-map__tools button{color:#1f4e79;cursor:pointer;background:#f1f5f9e0;border:1px solid #1f4e7924;border-radius:12px;place-items:center;width:40px;height:40px;transition:background .16s,color .16s,transform .16s;display:grid}.campus-map__tools button:hover{color:#fff;background:#1f5f9f;transform:translateY(-1px)}.campus-map__tilt-down{transform:rotate(180deg)}.campus-map__flag{color:#142033;cursor:pointer;filter:drop-shadow(0 12px 18px #0f172a3d);background:0 0;border:0;grid-template-columns:40px auto;align-items:center;gap:8px;min-width:160px;padding:0;display:grid;position:relative;transform:translate(-20px,-100%)}.campus-map__flag-pin{background:var(--flag-accent);width:34px;height:34px;box-shadow:0 10px 22px color-mix(in srgb, var(--flag-accent) 34%, transparent);border:4px solid #ffffffeb;border-radius:50% 50% 50% 0;position:relative;transform:rotate(-45deg)}.campus-map__flag-pin:before{content:"";background:#fff;border-radius:50%;width:10px;height:10px;position:absolute;top:8px;left:8px}.campus-map__flag-pin:after{content:none}.campus-map__flag-label{text-align:left;background:#fffffff0;border:1px solid #ffffffd1;border-radius:12px;gap:2px;max-width:190px;margin-bottom:0;padding:9px 11px;display:grid;position:relative;box-shadow:0 10px 28px #0f172a29}.campus-map__flag-label strong{overflow-wrap:anywhere;font-size:13px;font-weight:950;line-height:1.06}.campus-map__flag-label small{color:#64748b;font-size:11px;font-weight:820}.campus-map__list{background:linear-gradient(#0f1d34f0,#0b192eeb);border-radius:24px;align-content:start;gap:9px;padding:12px;display:grid}.campus-map__list button{min-height:64px;color:var(--muted-strong);cursor:pointer;text-align:left;background:#0814273d;border:1px solid #94a3b829;border-radius:16px;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:11px;padding:10px;transition:border-color .16s,background .16s,transform .16s;display:grid}.campus-map__list button:hover{border-color:color-mix(in srgb, var(--flag-accent,var(--blue)) 46%, var(--card-border));background:color-mix(in srgb, var(--flag-accent,var(--blue)) 13%, #0814273d);transform:translateY(-1px)}.campus-map__list-icon{border:1px solid color-mix(in srgb, var(--flag-accent) 38%, transparent);width:42px;height:42px;color:color-mix(in srgb, var(--flag-accent) 72%, #fff);background:color-mix(in srgb, var(--flag-accent) 14%, transparent);border-radius:14px;place-items:center;display:grid}.campus-map__list span:not(.campus-map__list-icon){gap:3px;min-width:0;display:grid}.campus-map__list strong{color:#fff;font-size:15px;font-weight:920;line-height:1.1}.campus-map__list small{color:var(--muted);font-size:12px;font-weight:780}html:is([data-theme=light],[data-theme=dark]) .campus-map__surface,html:is([data-theme=light],[data-theme=dark]) .campus-map__list{border-color:var(--theme-border);background:var(--theme-surface);box-shadow:var(--theme-shadow)}html[data-theme=light] .campus-map__list{background:var(--theme-surface-strong)}html[data-theme=light] .campus-map__list button{color:var(--theme-text);background:var(--theme-soft)}html[data-theme=light] .campus-map__list strong{color:var(--theme-text)}@media (width<=1100px){.campus-map{grid-template-columns:1fr}.campus-map__list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.campus-map,.campus-map__surface{min-height:620px}.campus-map__tools{grid-template-columns:repeat(2,40px);right:10px}.campus-map__list{grid-template-columns:1fr}}
