:root{--purple-700:#491A6C;--purple-600:#7927C2;--purple-500:#9134D8;--purple-100:#F5ECFC;--purple-050:#FAF7FE;--yellow-500:#F2BD1D;--yellow-100:#FDF3D2;--orange-500:#F24E29;--orange-100:#FDE4DC;--green-500:#2EAD61;--green-100:#E2F4EA;--amber-500:#E08A00;--amber-100:#FBEFD6;--red-500:#EB4201;--red-100:#FCE1D6;--blue-500:#2563EB;--blue-100:#DBEAFE;--ink-900:#1E0A3C;--ink-700:#45356A;--ink-500:#6B5C8A;--ink-300:#9B8FB5;--border:#ECE6F4;--border-strong:#DDD3EC;--surface:#FFFFFF;--page:#FAF7FE;--page-tint:#F5ECFC;--surface-card:var(--surface);--surface-page:var(--page);--surface-tint:var(--page-tint);--surface-sunken:#F3EEFA;--color-primary:var(--purple-500);--color-primary-hover:var(--purple-600);--color-primary-tint:var(--purple-100);--color-primary-deep:var(--purple-700);--color-secondary:var(--yellow-500);--color-accent:var(--orange-500);--text-strong:var(--ink-900);--text-body:var(--ink-700);--text-muted:var(--ink-500);--text-faint:var(--ink-300);--text-on-primary:#FFFFFF;--border-hairline:var(--border);--border-card:var(--border);--status-ok-fg:var(--green-500);--status-ok-bg:var(--green-100);--status-warn-fg:var(--amber-500);--status-warn-bg:var(--amber-100);--status-risk-fg:var(--red-500);--status-risk-bg:var(--red-100);--band-prospect:var(--ink-500);--band-demo:var(--yellow-500);--band-active:var(--green-500);--band-impl:var(--purple-500);--font-sans:var(--font-rubik),"Rubik",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:var(--font-sans);--fs-display:34px;--fs-h1:26px;--fs-h2:21px;--fs-h3:17px;--fs-body:15px;--fs-sm:13.5px;--fs-xs:12px;--fs-micro:10.5px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.08;--lh-snug:1.25;--lh-body:1.5;--ls-tight:-0.02em;--ls-snug:-0.01em;--ls-label:0.08em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--radius-pill:999px;--shadow-card:0 2px 8px rgba(123,47,190,0.06);--shadow-raised:0 6px 20px rgba(123,47,190,0.10);--shadow-pop:0 12px 34px rgba(73,26,108,0.16);--shadow-glow:0 6px 18px rgba(145,52,216,0.34);--shadow-sheet:0 -8px 30px rgba(73,26,108,0.14);--ring:0 0 0 3px rgba(145,52,216,0.22);--tab-bar-h:64px;--hit-min:44px;--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--primary:var(--purple-500);--primary-d:var(--purple-600);--primary-soft:var(--purple-100);--secondary:var(--yellow-500);--accent-warm:var(--orange-500);--ink:var(--ink-900);--ink-2:var(--ink-700);--ink-3:var(--ink-500);--bg:var(--page);--grey:var(--surface-sunken);--line:var(--border);--ok:var(--green-500);--okbg:var(--green-100);--warn:var(--amber-500);--warnbg:var(--amber-100);--flag:var(--red-500);--flagbg:var(--red-100);--radius:var(--radius-xl);--shadow-soft:var(--shadow-card);--shadow-md:var(--shadow-raised);--shadow-brand:var(--shadow-glow)}[data-theme=dark]{--page:#130726;--purple-050:#130726;--surface:#1E1033;--surface-page:#130726;--surface-card:#1E1033;--surface-sunken:#2A1844;--surface-tint:#190B2F;--page-tint:#190B2F;--border:rgba(255,255,255,0.10);--border-strong:rgba(255,255,255,0.18);--border-hairline:rgba(255,255,255,0.10);--border-card:rgba(255,255,255,0.10);--ink-900:#F6F1FC;--ink-700:#DBD0EE;--ink-500:#AC9DCA;--ink-300:#80719F;--text-strong:#F6F1FC;--text-body:#DBD0EE;--text-muted:#AC9DCA;--text-faint:#80719F;--purple-100:rgba(157,68,226,0.22);--yellow-100:rgba(242,189,29,0.16);--orange-100:rgba(242,78,41,0.18);--green-100:rgba(46,173,97,0.18);--amber-100:rgba(224,138,0,0.18);--red-100:rgba(235,66,1,0.18);--color-primary-tint:rgba(157,68,226,0.22);--shadow-card:0 2px 10px rgba(0,0,0,0.45);--shadow-raised:0 12px 30px rgba(0,0,0,0.55);--shadow-pop:0 18px 44px rgba(0,0,0,0.6);--shadow-glow:0 8px 24px rgba(157,68,226,0.55);--shadow-sheet:0 -10px 36px rgba(0,0,0,0.55);--ring:0 0 0 3px rgba(185,104,240,0.4);--bg:var(--page);--grey:var(--surface-sunken);--line:var(--border);--okbg:var(--green-100);--warnbg:var(--amber-100);--flagbg:var(--red-100);--shadow-soft:var(--shadow-card);--shadow-md:var(--shadow-raised);--shadow-brand:var(--shadow-glow)}*,:after,:before{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-strong);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0;letter-spacing:var(--ls-tight);line-height:var(--lh-tight)}p{margin:0}::selection{background:var(--purple-100);color:var(--purple-700)}.shell{max-width:1080px;margin:0 auto;padding:0 20px 80px}.topbar{gap:16px;padding:16px 0 20px;border-bottom:1px solid var(--border);margin-bottom:24px}.topbar,.topbar .brand{display:flex;align-items:center}.topbar .brand{gap:10px;font-weight:var(--fw-bold);font-size:18px;color:var(--ink-900);text-decoration:none;flex-shrink:0}.topbar .brand img{width:32px;height:32px}.topbar .brand .wordmark{color:var(--ink-900)}.topbar .brand .wordmark span{color:var(--purple-500)}.searchbar{flex:1 1;display:flex}.searchbar input{flex:1 1;border:1.5px solid var(--border);border-radius:var(--radius-pill);padding:10px 18px;font:inherit;font-size:var(--fs-sm);background:var(--surface-card);color:var(--text-strong);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.searchbar input:focus{outline:none;border-color:var(--purple-500);box-shadow:var(--ring)}h1{font-size:var(--fs-h1);margin:6px 0 4px}h1,h2{color:var(--text-strong)}h2{font-size:var(--fs-h2);margin:28px 0 12px;letter-spacing:var(--ls-snug)}.sub{margin:0 0 18px}.meta,.sub{font-size:var(--fs-sm)}.meta,.overline,.sub{color:var(--text-muted)}.overline{font-size:var(--fs-micro);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label);text-transform:uppercase}.appgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:12px;gap:12px}.tile{background:var(--surface-card);border:1px solid var(--border-card);border-radius:var(--radius-xl);padding:var(--sp-5);box-shadow:var(--shadow-card);transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-raised)}.tile:active{transform:scale(.97)}.tile .icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px;background:var(--purple-100);margin-bottom:12px}.tile .name{font-weight:var(--fw-semibold);font-size:var(--fs-body);color:var(--text-strong)}.tile .desc{color:var(--text-muted);font-size:var(--fs-xs);margin-top:4px;line-height:1.4}.tile .owner{margin-top:10px;font-size:11px;color:var(--purple-500);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em}.card{background:var(--surface-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--sp-5)}.statrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px;margin:18px 0}.stat{text-align:left}.stat .n{font-size:30px;font-weight:var(--fw-bold);color:var(--purple-500);letter-spacing:var(--ls-tight);line-height:1}.stat .l{font-size:var(--fs-xs);color:var(--text-muted);margin-top:4px;font-weight:var(--fw-medium)}.hero-card{background:linear-gradient(135deg,#9D44E2,#7927C2 52%,#491A6C);border-radius:var(--radius-2xl);padding:var(--sp-5);box-shadow:0 16px 32px -10px rgba(123,47,190,.5);color:#fff;position:relative;overflow:hidden}[data-theme=dark] .hero-card{box-shadow:0 16px 40px -10px rgba(157,68,226,.65)}.hero-card .hero-overline{font-size:var(--fs-micro);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label);text-transform:uppercase;opacity:.85;margin-bottom:8px}.hero-card .hero-n{font-size:40px;font-weight:var(--fw-bold);letter-spacing:-.03em;line-height:1}.hero-card .hero-sub{font-size:15.5px;opacity:.85;margin-top:6px}.list{display:flex;flex-direction:column;gap:8px}.rowitem{display:flex;align-items:center;gap:14px;background:var(--surface-card);border:1px solid var(--border-card);border-radius:var(--radius-md);padding:13px 16px;transition:border-color var(--dur-fast) var(--ease-out)}.rowitem:hover{border-color:var(--purple-500)}.rowitem .grow{flex:1 1;min-width:0}.rowitem .t{font-weight:var(--fw-semibold);font-size:14.5px;color:var(--text-strong)}.rowitem .s{color:var(--text-muted);font-size:var(--fs-xs);margin-top:2px}.chip{display:inline-flex;align-items:center;border-radius:var(--radius-pill);padding:3px 10px;font-size:11.5px;font-weight:var(--fw-semibold);background:var(--surface-sunken);color:var(--text-body);white-space:nowrap}.chip.udise{background:var(--purple-100);color:var(--purple-600);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chip.ok{background:var(--green-100);color:var(--green-500)}.chip.warn{background:var(--amber-100);color:var(--amber-500)}.chip.flag{background:var(--red-100);color:var(--red-500)}.kind{width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.kind.visit{background:var(--purple-100)}.kind.demo{background:var(--amber-100)}.kind.task{background:var(--green-100)}.school-head{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}.btn,.school-head{align-items:center}.btn{display:inline-flex;justify-content:center;gap:6px;background:var(--purple-500);color:var(--text-on-primary);border:none;border-radius:var(--radius-pill);padding:12px 22px;font:inherit;font-weight:var(--fw-semibold);font-size:var(--fs-sm);cursor:pointer;box-shadow:var(--shadow-glow);min-height:var(--hit-min);transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.btn:hover{background:var(--purple-600)}.btn:active{transform:scale(.97)}.empty{color:var(--text-muted);font-size:var(--fs-sm);padding:24px}.empty,.stub{text-align:center}.stub{margin-top:40px}.stub .big{font-size:44px}.form{display:flex;flex-direction:column;gap:8px;max-width:560px}.form label{font-size:var(--fs-xs);font-weight:var(--fw-medium);margin-top:8px;color:var(--text-body)}.field{border:1.5px solid var(--border);border-radius:var(--radius-md);padding:11px 14px;font:inherit;font-size:var(--fs-sm);background:var(--surface-card);color:var(--text-strong);width:100%;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.field:focus{outline:none;border-color:var(--purple-500);box-shadow:var(--ring)}.two{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:540px){.two{grid-template-columns:1fr}}.form .btn{margin-top:14px}.inline-form{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}.dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);overflow:hidden}.dropitem{display:flex;justify-content:space-between;gap:10px;width:100%;padding:11px 14px;border:none;background:none;font:inherit;font-size:var(--fs-sm);text-align:left;cursor:pointer;color:var(--text-strong);transition:background var(--dur-fast)}.dropitem:hover{background:var(--purple-100)}.dropnote{padding:9px 14px;font-size:var(--fs-xs);color:var(--text-muted);border-top:1px solid var(--border)}@media (max-width:768px){.field,.searchbar input,input,select,textarea{font-size:16px}canvas,img,video{max-width:100%}}.break-anywhere{overflow-wrap:anywhere;word-break:break-word}[role=button]:active:not(:disabled),button:active:not(:disabled){transform:scale(.97)}[role=button],button{transition:transform var(--dur-fast) var(--ease-spring)}@keyframes fx-enter{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}.fx-enter{animation:fx-enter var(--dur-base) var(--ease-spring) both}@keyframes fx-leave{to{opacity:0;transform:translateX(24px)}}.fx-leave{animation:fx-leave var(--dur-base) var(--ease-out) both;pointer-events:none}@keyframes fx-pop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1);opacity:1}}.fx-pop{animation:fx-pop var(--dur-base) var(--ease-spring) both}@keyframes fx-glow-breathe{0%,to{box-shadow:var(--shadow-glow)}50%{box-shadow:0 8px 26px rgba(145,52,216,.5)}}.fx-glow{animation:fx-glow-breathe 2.4s var(--ease-out) infinite}@keyframes fx-check-draw{0%{stroke-dashoffset:48}to{stroke-dashoffset:0}}.fx-progress{transition:width var(--dur-slow) var(--ease-spring)}@media (prefers-reduced-motion:reduce){[role=button]:active:not(:disabled),button:active:not(:disabled){transform:none}.fx-enter,.fx-glow,.fx-leave,.fx-pop{animation:none}.fx-progress{transition:none}}:root{--font:var(--font-sans);--sunken:var(--surface-sunken);--green:var(--green-500);--amber:var(--amber-500);--red:var(--red-500);--shadow:var(--shadow-card);--r-field:11px;--r-card:14px;--r-pill:999px;--r-btn:11px;--field-h:44px;--m-tap:44px;--gutter:16px}.m-only{display:none}@media (max-width:768px){.m-only{display:block}.d-only{display:none!important}}.k-field,.k-search,.k-select{display:flex;align-items:center;gap:9px;width:100%;min-height:var(--field-h);border:1px solid var(--border);border-radius:var(--r-field);background:var(--surface);padding:0 13px;font-family:var(--font);font-size:15px;color:var(--ink-900);box-shadow:var(--shadow)}.k-field::placeholder,.k-search input::placeholder{color:var(--ink-300)}.k-field:focus,.k-search:focus-within,.k-select:focus{outline:none;border-color:var(--purple-500);box-shadow:0 0 0 3px rgba(145,52,216,.18)}.k-search input{border:none;outline:none;background:none;font-family:var(--font);font-size:16px;flex:1 1;color:var(--ink-900);min-width:0}.k-search{box-sizing:border-box;border-radius:var(--radius-md);background:var(--surface-card)}.k-field{font-size:16px}.k-select{justify-content:space-between;color:var(--ink-300)}.k-select.filled{color:var(--ink-900)}.k-search .ic,.k-select .cv{color:var(--ink-300);flex:0 0 auto}.k-label{font-size:12.5px;font-weight:600;color:var(--ink-700);margin-bottom:6px;display:block}.k-label .req{color:var(--red)}.k-field-wrap{margin-bottom:12px}.k-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--field-h);padding:0 20px;border:none;border-radius:var(--r-btn);background:var(--purple-500);color:#fff;font-family:var(--font);font-weight:600;font-size:15px;cursor:pointer;box-shadow:0 2px 6px rgba(145,52,216,.22);transition:background .12s}.k-btn:active{background:var(--purple-600)}.k-btn.block{width:100%}.k-btn-sec{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--field-h);padding:0 18px;border:1px solid var(--border);border-radius:var(--r-btn);background:var(--surface);color:var(--ink-700);font-family:var(--font);font-weight:600;font-size:15px;cursor:pointer}.k-btn-sec:active{background:var(--sunken)}.k-btn-tint{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--field-h);padding:0 18px;border:1px solid #e4d3f7;border-radius:var(--r-btn);background:var(--purple-100);color:var(--purple-700);font-family:var(--font);font-weight:600;font-size:15px;cursor:pointer}.k-chip{flex:0 0 auto;font-size:12.5px;font-weight:600;color:var(--ink-500);padding:7px 13px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--border)}.k-chip.on{background:var(--purple-500);color:#fff;border-color:var(--purple-500)}.k-chips{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.k-chips::-webkit-scrollbar{display:none}.k-searchrow{display:flex;align-items:center;gap:8px}.k-filtericon{flex:0 0 auto;position:relative;width:var(--field-h);height:var(--field-h);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--ink-700);cursor:pointer}.k-filtericon.on{color:var(--purple-700);background:var(--purple-100);border-color:color-mix(in srgb,var(--purple-500) 22%,transparent)}.k-filterdot{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:var(--r-pill);background:var(--purple-500);color:#fff;font-size:10.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--surface)}.k-clearrow{padding:8px 16px 0}.k-desknote{display:none}@media (max-width:768px){.k-desknote{display:flex;align-items:flex-start;gap:10px;margin:12px 16px;padding:12px 14px;background:var(--purple-100);border:1px solid color-mix(in srgb,var(--purple-500) 14%,transparent);border-radius:14px}.k-desknote svg{flex:0 0 auto;width:20px;height:20px;color:var(--purple-600);margin-top:1px}.k-desknote b{display:block;font-size:13px;color:var(--ink-900)}.k-desknote span{font-size:12.5px;color:var(--ink-500);line-height:1.4}}.k-dock{display:none}@media (max-width:768px){.k-dock{display:inline-flex;align-items:center;gap:6px;position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:44;border-radius:999px;padding:6px 8px;background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,.42));-webkit-backdrop-filter:blur(22px) saturate(185%);backdrop-filter:blur(22px) saturate(185%);border:1px solid rgba(255,255,255,.65);box-shadow:0 14px 34px -12px rgba(30,10,60,.32),0 3px 10px -4px rgba(30,10,60,.12),inset 0 1px 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(145,52,216,.07)}.k-dock-btn{width:42px;height:42px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:var(--ink-700);background:none;border:none;cursor:pointer;text-decoration:none;transition:transform var(--dur-fast,.12s) var(--ease-out,ease),color var(--dur-fast,.12s) ease}.k-dock-btn svg{width:23px;height:23px}.k-dock-btn.on{color:var(--purple-500)}.k-dock-btn:active{transform:scale(.9)}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.k-dock{background:rgba(255,255,255,.96)}}}.k-facet{padding:10px 0;border-top:1px solid var(--border)}.k-facet:first-of-type{border-top:none}.k-facet-title{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-300);margin-bottom:9px}.k-facet-search{width:100%;height:38px;border:1px solid var(--border);border-radius:var(--r-md,10px);padding:0 12px;margin-bottom:9px;font-size:16px;font-family:var(--font);color:var(--ink-900);background:var(--surface)}.k-facet-search:focus{outline:none;border-color:var(--purple-500);box-shadow:0 0 0 3px rgba(145,52,216,.15)}.k-facet-chips{display:flex;flex-wrap:wrap;gap:7px}.k-fchip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink-700);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);padding:7px 12px;font-family:var(--font);cursor:pointer}.k-fchip.on{color:#fff;background:var(--purple-500);border-color:var(--purple-500)}.k-fcount{font-size:11px;font-weight:700;opacity:.65}.k-fchip.on .k-fcount{opacity:.85}.k-facet-more{margin-top:8px;font-size:11.5px;color:var(--ink-300)}.k-pill{display:inline-flex;align-items:center;font-size:10.5px;font-weight:600;padding:3px 9px;border-radius:var(--r-pill);white-space:nowrap;flex-shrink:0}.k-health{font-size:14px;font-weight:700;color:var(--ink-700);flex-shrink:0}.k-health.red{color:var(--red)}.k-health.green{color:var(--green)}.k-health.amber{color:var(--amber)}.k-pill.stage{background:var(--purple-100);color:var(--purple-600)}.k-pill.red{background:var(--red-100);color:var(--red)}.k-pill.amber{background:var(--amber-100);color:var(--amber)}.k-pill.green{background:var(--green-100);color:var(--green)}.k-seg{display:flex;border-bottom:1px solid var(--border)}.k-seg .sb{flex:1 1;text-align:center;font-size:13.5px;font-weight:600;color:var(--ink-500);padding:11px 4px 12px;position:relative;white-space:nowrap;background:none;border:none;font-family:var(--font);cursor:pointer}.k-seg .sb.on{color:var(--ink-900)}.k-seg .sb.on:after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:-1px;width:56%;max-width:80px;height:2.5px;background:var(--purple-500);border-radius:3px}.k-hero{margin:12px 16px 4px;background:linear-gradient(145deg,#9D44E2,#7927C2,#491A6C);color:#fff;border-radius:18px;padding:18px;position:relative;overflow:hidden;box-shadow:0 12px 30px -10px rgba(123,47,190,.5)}.k-hero .ov{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.85}.k-hero .hl{font-size:19px;font-weight:700;line-height:1.22;margin:6px 0 4px}.k-hero .sub{font-size:13px;opacity:.9;line-height:1.45;color:inherit}.k-hero .cta{display:inline-flex;align-items:center;gap:7px;margin-top:13px;background:#fff;color:var(--purple-700);font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:999px;text-decoration:none}.k-greet{gap:11px;padding:6px 16px 2px}.k-greet,.k-greet .mk{display:flex;align-items:center}.k-greet .mk{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#9D44E2,#7927C2);justify-content:center;flex:0 0 auto}.k-greet .hi{font-size:21px;font-weight:700;letter-spacing:-.02em;flex:1 1;min-width:0}.k-greet .hi span{color:var(--purple-500)}.k-statstrip{display:flex;gap:8px;padding:10px 16px 4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.k-statstrip::-webkit-scrollbar{display:none}.k-stat-chip{flex:0 0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:9px 13px;box-shadow:var(--shadow);min-width:74px;text-align:center}.k-stat-n{font-size:19px;font-weight:700;line-height:1;color:var(--ink-900)}.k-stat-n.red{color:var(--red)}.k-stat-n.green{color:var(--green)}.k-stat-n.purple{color:var(--purple-500)}.k-stat-k{font-size:11px;color:var(--ink-500);margin-top:3px;font-weight:500}.k-types{display:flex;gap:8px}.k-type{flex:1 1;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r-field);padding:11px 8px;text-align:center;box-shadow:var(--shadow);cursor:pointer}.k-type.on{border-color:var(--purple-500);background:var(--purple-100)}.k-type .tn{font-size:13px;font-weight:600}.k-type.on .tn{color:var(--purple-600)}.k-type .td{font-size:10.5px;color:var(--ink-500);margin-top:2px}.k-ov{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-300);padding:16px var(--gutter) 7px;display:flex;justify-content:space-between;align-items:center}.k-ov a{color:var(--purple-500);font-size:11.5px;font-weight:600;text-transform:none;letter-spacing:0}.k-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);margin:0 var(--gutter);overflow:hidden;box-shadow:var(--shadow)}.k-row{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--border);text-decoration:none;color:inherit}.k-row:last-child{border-bottom:none}.k-av{width:36px;height:36px;border-radius:10px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700}.k-av.s{background:var(--purple-100);color:var(--purple-600)}.k-av.g{background:var(--green-100);color:var(--green)}.k-av.a{background:var(--amber-100);color:var(--amber)}.k-av.r{background:var(--red-100);color:var(--red)}.k-av.round{border-radius:50%}.k-rb{flex:1 1;min-width:0}.k-rt{font-size:14.5px;font-weight:600}.k-rs,.k-rt{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k-rs{font-size:12px;color:var(--ink-500);margin-top:1px}.k-rr{display:flex;align-items:center;gap:9px;flex:0 0 auto}.k-when{font-size:11px}.k-chev,.k-when{color:var(--ink-300)}.k-chev{flex:0 0 auto}.k-fab{position:fixed;right:18px;bottom:calc(20px + env(safe-area-inset-bottom));width:54px;height:54px;border-radius:var(--r-pill);background:var(--purple-500);box-shadow:0 8px 20px rgba(145,52,216,.4);display:flex;align-items:center;justify-content:center;z-index:44;border:none;cursor:pointer}.k-results{margin-top:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-field);box-shadow:var(--shadow-pop,0 12px 34px rgba(73,26,108,.16));overflow:hidden;max-height:300px;overflow-y:auto;-webkit-overflow-scrolling:touch}.k-opt{display:flex;align-items:center;gap:11px;padding:11px 14px;background:none;border:none;border-bottom:1px solid var(--border);width:100%;text-align:left;font-family:var(--font);cursor:pointer;color:var(--ink-900)}.k-opt:last-child{border-bottom:none}.k-opt.create{color:var(--purple-600);font-weight:600}.k-opt .oi{width:30px;height:30px;border-radius:8px;background:var(--purple-100);color:var(--purple-600);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:0 0 auto}.k-opt .ot{font-size:14.5px;font-weight:600}.k-opt .os{font-size:12px;color:var(--ink-500)}.k-opt .om{margin-left:auto;font-size:11px;color:var(--ink-300);flex:0 0 auto}.k-backdrop{position:fixed;inset:0;background:rgba(30,10,60,.34);z-index:50}.k-sheet{position:fixed;left:0;right:0;bottom:0;z-index:51;background:var(--surface);border-radius:20px 20px 0 0;box-shadow:var(--shadow-pop,0 -8px 30px rgba(73,26,108,.18));padding:8px 16px calc(16px + env(safe-area-inset-bottom));max-height:88vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.k-grab{width:38px;height:4px;border-radius:999px;background:var(--border);margin:6px auto 12px}.k-sheet-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.k-sheet-t{font-size:18px;font-weight:700}.k-sheet-x{width:var(--m-tap);height:var(--m-tap);display:flex;align-items:center;justify-content:center;color:var(--ink-500);border:none;background:none;cursor:pointer}.k-sheet-sub{font-size:13px;color:var(--ink-500);margin-bottom:12px}.k-screen{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.k-hdr{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--page) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 16px 10px;border-bottom:1px solid var(--border)}.k-hdr-row{display:flex;align-items:center;gap:10px}.k-title{font-size:22px;font-weight:700;letter-spacing:-.02em;flex:1 1;min-width:0}.k-pagetitle{gap:9px;flex:1 1;min-width:0}.k-pagetitle,.k-pagetitle-ic{display:inline-flex;align-items:center}.k-pagetitle-ic{flex:0 0 auto;width:30px;height:30px;border-radius:9px;justify-content:center;background:var(--purple-100);color:var(--purple-600)}.k-pagetitle-ic svg{width:18px;height:18px}.k-iconbtn{width:40px;height:40px;border-radius:999px;color:var(--ink-500);background:none;border:none;cursor:pointer}.k-home,.k-iconbtn{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.k-home{width:32px;height:32px;margin-left:-4px;border-radius:999px}.k-home img{display:block;width:24px;height:24px}.k-home:active{background:var(--sunken)}.k-actions{display:flex;align-items:center;gap:4px}.k-actbtn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:var(--m-tap);min-height:var(--m-tap);padding:4px 8px;border:none;background:none;cursor:pointer;color:var(--purple-600);font-family:var(--font);text-decoration:none;border-radius:var(--r-btn)}.k-actbtn:active{background:var(--purple-100)}.k-actbtn svg{display:block}.k-actbtn .lbl{font-size:11px;font-weight:600;line-height:1;color:var(--ink-700)}@media (prefers-reduced-motion:no-preference){@keyframes k-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.k-stagger>*{animation:k-rise .5s cubic-bezier(.22,1,.36,1) both}.k-stagger>:first-child{animation-delay:.03s}.k-stagger>:nth-child(2){animation-delay:.07s}.k-stagger>:nth-child(3){animation-delay:.11s}.k-stagger>:nth-child(4){animation-delay:.15s}.k-stagger>:nth-child(5){animation-delay:.19s}.k-stagger>:nth-child(6){animation-delay:.23s}.k-stagger>:nth-child(n+7){animation-delay:.27s}}.k-row{transition:background var(--dur-fast,.12s) ease}.k-opt:active,.k-row:active{background:var(--sunken)}.k-chip{transition:transform .1s ease,background var(--dur-fast,.12s) ease}.k-chip:active{transform:scale(.96)}.k-btn,.k-btn-sec,.k-btn-tint,.k-type{transition:transform .1s ease,background var(--dur-fast,.12s) ease,border-color var(--dur-fast,.12s) ease}.k-btn-sec:active,.k-btn-tint:active,.k-btn:active{transform:scale(.975)}.k-type:active{transform:scale(.98)}.k-fab{transition:transform .12s cubic-bezier(.34,1.56,.64,1),background var(--dur-fast,.12s) ease}.k-fab:active{transform:scale(.9)}.k-iconbtn{transition:background var(--dur-fast,.12s) ease}.k-iconbtn:active{background:var(--sunken)}.k-seg .sb{transition:color var(--dur-fast,.12s) ease}.k-health,.k-hero .hl,.k-stat-n,.k-when{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.k-hero:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(140px 90px at 82% 8%,rgba(255,255,255,.2),transparent 70%)}.k-hero>*{position:relative}@keyframes k-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.k-skel{background:linear-gradient(90deg,var(--sunken) 25%,color-mix(in srgb,var(--sunken) 60%,#fff) 37%,var(--sunken) 63%);background-size:400% 100%;animation:k-shimmer 1.4s ease infinite;border-radius:8px}.k-ring{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:0 0 auto;position:relative;background:conic-gradient(var(--rc,var(--purple-500)) calc(var(--v,50)*1%),var(--sunken) 0)}.k-ring:before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--surface)}.k-ring span{position:relative;z-index:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.k-swipe{position:relative;overflow:hidden}.k-swipe-action{position:absolute;top:0;right:0;bottom:0;width:84px;border:none;cursor:pointer;background:var(--green);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-family:var(--font);font-size:12px;font-weight:700}.k-swipe-fg{position:relative;background:var(--surface);touch-action:pan-y;will-change:transform}.shell_body__RPuSB{display:flex;min-height:100dvh;background:var(--surface-page)}.shell_main__IbKKX{flex:1 1;margin-left:56px;padding:32px;max-width:100%;overflow-y:auto}@media (max-width:768px){.shell_main__IbKKX{margin-left:0;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(92px + env(safe-area-inset-bottom))}}