:root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-rounded:ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--text:#1d1d1f;--ink:#1d1d1f;--ink-muted:#6e6e73;--ink-faint:#aeaeb2;--accent:#1d1d1f;--accent-secondary:#d70015;--accent-secondary-soft:#d700151f;--status-new:#0047f1;--status-in-progress:#7a1fb8;--status-waiting:#c96a00;--status-done:#008a45;--status-urgent:#d41c8a;--scene-bg:linear-gradient(#fff 1px, transparent 1px), linear-gradient(90deg, #fff 1px, transparent 1px), radial-gradient(ellipse 95% 75% at 100% 100%, #00000006, transparent 52%), linear-gradient(180deg, #fff 0%, #f5f5f7 80%, #f5f5f7 100%);--scene-bg-size:16px 16px, 16px 16px, auto, auto;--surface:#fff;--surface-muted:#fafafa;--tray:#f5f5f7;--line:#00000014;--line-strong:#0000001f;--field-bg:#fff;--glass-fill:#ffffff9e;--glass-fill-strong:#ffffffd6;--glass-blur:12px;--glass-saturate:saturate(165%);--glass-border:#ffffffb8;--glass-shadow:0 12px 40px #00000012, 0 2px 6px #0000000a;--glass-rim:inset 0 1px 0 #ffffff94;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-glass:22px;--chart-1:#0047f1;--chart-2:#7a1fb8;--chart-3:#008a45;--chart-4:#c96a00;--chart-5:#d41c8a;--chart-6:#00a0b0}@media (prefers-color-scheme:dark){:root:not([data-color-scheme=light]){--text:#f5f5f7;--ink:#f5f5f7;--ink-muted:#a1a1a6;--ink-faint:#636366;--accent:#f5f5f7;--accent-secondary:#ff453a;--accent-secondary-soft:#ff453a33;--status-new:#4d9fff;--status-in-progress:#b56eff;--status-waiting:#f0a52e;--status-done:#2ed573;--status-urgent:#ff6eb4;--scene-bg:linear-gradient(#ffffff0d 1px, transparent 1px), linear-gradient(90deg, #ffffff0d 1px, transparent 1px);--scene-bg-size:16px 16px;--surface:#1c1c1e;--surface-muted:#2c2c2e;--tray:#242426;--line:#ffffff1a;--line-strong:#ffffff29;--field-bg:#2c2c2e;--glass-fill:#2c2c2e80;--glass-fill-strong:#3a3a3cd6;--glass-border:transparent;--glass-shadow:0 14px 44px #0006, 0 2px 6px #00000038;--glass-rim:inset 0 1px 0 #ffffff17;--chart-1:#4d9fff;--chart-2:#b56eff;--chart-3:#2ed573;--chart-4:#f0a52e;--chart-5:#ff6eb4;--chart-6:#3ad4e0}}*{box-sizing:border-box}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:var(--text);background:#f5f5f7;background-image:var(--scene-bg);background-size:var(--scene-bg-size);letter-spacing:-.011em;background-attachment:fixed;min-height:100vh;margin:0;font-size:15px;line-height:1.4}@media (prefers-color-scheme:dark){body:not([data-color-scheme=light] *){background:#000}}h1,h2,h3,.nav__brand,.stat__value,.panel__title{font-family:var(--font-rounded);letter-spacing:-.022em}.glass-panel{background:var(--glass-fill);-webkit-backdrop-filter:blur(var(--glass-blur)) var(--glass-saturate);border:1px solid var(--glass-border);border-radius:var(--radius-glass);box-shadow:var(--glass-shadow), var(--glass-rim)}.login{z-index:1;flex-direction:column;min-height:100vh;padding:24px;display:flex;position:relative}.login__shell{flex:1;justify-content:center;align-items:center;width:100%;display:flex}.login__stack{width:100%;max-width:360px;position:relative}.login__hello{z-index:1;pointer-events:auto;width:min(92vw,720px);height:clamp(110px,20vw,190px);margin:0;position:fixed;top:clamp(72px,11vh,118px);left:50%;transform:translate(-50%)}.login__hello canvas{width:100%;height:100%;display:block}.login__title{font-family:var(--font-sans);letter-spacing:-.022em;margin:0;font-size:21px}.login__title-main{font-weight:600}.login__title-sub{color:var(--ink-muted);font-weight:400}.login__card{z-index:2;flex-direction:column;gap:15px;width:100%;max-width:360px;padding:30px;display:flex;position:relative}.login__card.is-morphing{transition:height .42s cubic-bezier(.32,.72,0,1);overflow:hidden}.login__heading{margin:-12px 0 5px;padding:12px 0;font-size:24px;font-weight:700;line-height:1.08}.login__heading-roll{white-space:pre;grid-template:"heading";display:inline-grid;position:relative}.login__heading-old,.login__heading-new{grid-area:heading}.login__heading-old{pointer-events:none}.login__heading-new{display:inline-flex}.login__heading-char{display:inline-block}.login__heading-roll.is-active .login__heading-old{animation:.28s cubic-bezier(.32,.72,0,1) both login-heading-old-out}.login__heading-roll.is-active .login__heading-char{animation:.34s cubic-bezier(.32,.72,0,1) both login-heading-char-in;animation-delay:calc(var(--slot-index) * 16ms);transform-origin:50% 70%;will-change:opacity, transform}@keyframes login-heading-old-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-.42em)}}@keyframes login-heading-char-in{0%{opacity:0;transform:translateY(.42em)}to{opacity:1;transform:translateY(0)}}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-muted);letter-spacing:.02em;font-size:12px;font-weight:600}.field__control{position:relative}.field input{border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--field-bg);width:100%;color:var(--text);outline:none;padding:11px 13px;font-size:15px}.field__control input{padding-right:42px}.field input::placeholder{color:var(--ink-faint);opacity:1}.field input:focus{border-color:var(--accent)}.field.is-invalid input,.field.is-invalid input:focus{border-color:var(--accent-secondary)}@keyframes login-field-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.field.is-shaking{animation:.42s login-field-shake}.password-reveal{appearance:none;border-radius:var(--radius-sm);width:28px;height:28px;color:var(--ink-muted);cursor:pointer;opacity:0;filter:blur(5px);pointer-events:none;background:0 0;border:none;place-items:center;transition:opacity .18s,filter .18s,transform .18s cubic-bezier(.32,.72,0,1),color .12s,background .12s;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)scale(.92)}.password-reveal.is-visible{opacity:1;filter:blur();pointer-events:auto;transform:translateY(-50%)scale(1)}.password-reveal:hover{color:var(--ink);background:#0000000d}.password-reveal:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.login__password-field{transform-origin:50% 0;will-change:opacity, transform, filter}.login__card.is-password-exiting .login__password-field{pointer-events:none;animation:.42s cubic-bezier(.32,.72,0,1) both login-password-cell-exit}.login__card.is-password-entering .login__password-field{animation:.42s cubic-bezier(.32,.72,0,1) both login-password-cell-enter}@keyframes login-password-cell-exit{0%{opacity:1;filter:blur();transform:translateY(0)scaleY(1)}to{opacity:0;filter:blur(1.5px);transform:translateY(-9px)scaleY(.78)}}@keyframes login-password-cell-enter{0%{opacity:0;filter:blur(1.5px);transform:translateY(-9px)scaleY(.78)}to{opacity:1;filter:blur();transform:translateY(0)scaleY(1)}}.login__bottom-controls{will-change:margin-top;flex-direction:column;gap:15px;margin-top:15px;display:flex}.login__card.is-morphing>.login__bottom-controls{pointer-events:none}.login__card.is-password-exiting>.login__bottom-controls{animation:.42s cubic-bezier(.32,.72,0,1) both login-bottom-controls-glide}.login__card.is-password-entering>.login__bottom-controls{animation:.42s cubic-bezier(.32,.72,0,1) both login-bottom-controls-return}@keyframes login-bottom-controls-glide{0%{margin-top:15px}to{margin-top:-41px}}@keyframes login-bottom-controls-return{0%{margin-top:-41px}to{margin-top:15px}}.btn{appearance:none;border-radius:var(--radius-md);font-family:var(--font-rounded);cursor:pointer;background:var(--accent);color:var(--surface);border:none;padding:11px 16px;font-size:15px;font-weight:600;transition:opacity .15s;overflow:hidden}.btn:hover{opacity:.88}.btn:disabled{opacity:.5;cursor:default}.login__error{color:var(--accent-secondary);margin:0;font-size:13px}.login__notice{color:var(--status-done);margin:0;font-size:13px}.login__actions{justify-content:center;min-height:20px;display:flex}.link-button{appearance:none;color:var(--accent);cursor:pointer;font-family:var(--font-rounded);background:0 0;border:none;padding:0;font-size:15px;font-weight:600;overflow:hidden}.link-button:hover{opacity:.88}.atmosphere{pointer-events:none;z-index:0;opacity:.68;position:fixed;inset:0}.atmosphere canvas{width:100%;height:100%;display:block}.app{z-index:1;grid-template-columns:232px 1fr;min-height:100vh;display:grid;position:relative}.nav{flex-direction:column;align-self:start;gap:4px;height:100vh;margin:12px;padding:18px 14px;display:flex;position:sticky;top:0}.nav__brand{align-items:center;gap:9px;padding:6px 10px 16px;font-size:18px;font-weight:700;display:flex}.nav__brand-mark{background:linear-gradient(135deg, var(--status-new), var(--accent-secondary));border-radius:7px;width:22px;height:22px}.nav__item{border-radius:var(--radius-md);color:var(--ink-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:9px 11px;font-size:14px;font-weight:500;display:flex}.nav__item:hover{background:var(--glass-fill);color:var(--text)}.nav__item.is-active{background:var(--glass-fill-strong);color:var(--text);font-weight:600}.nav__spacer{flex:1}.nav__foot{color:var(--ink-faint);flex-direction:column;gap:8px;padding:10px;font-size:12px;display:flex}.nav__signout{border:1px solid var(--line-strong);color:var(--ink-muted);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:8px;font-size:13px}.main{min-width:0;padding:18px 22px 60px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.topbar__title{margin:0;font-size:24px;font-weight:700}.topbar__controls{align-items:center;gap:8px;display:flex}.seg{border-radius:999px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.seg button.is-active{background:var(--accent);color:var(--surface)}.icon-btn{border:1px solid var(--line-strong);background:var(--glass-fill);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:999px;place-items:center;display:grid}.grid{grid-template-columns:repeat(12,1fr);gap:14px;display:grid}.panel{grid-column:span 12;padding:18px}.panel--6{grid-column:span 6}.panel--4{grid-column:span 4}.panel--3{grid-column:span 3}.panel--8{grid-column:span 8}@media (width<=900px){.app{grid-template-columns:1fr}.nav{flex-flow:wrap;height:auto;position:static}.nav__spacer,.nav__foot{display:none}.panel--6,.panel--4,.panel--3,.panel--8{grid-column:span 12}}.panel__title{color:var(--ink-muted);letter-spacing:.01em;margin:0 0 14px;font-size:14px;font-weight:600}.stat__value{font-size:30px;font-weight:700;line-height:1}.stat__label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:6px;font-size:12px}.stat__sub{color:var(--ink-faint);margin-top:2px;font-size:12px}.barlist{flex-direction:column;gap:9px;display:flex}.barlist__row{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.barlist__label{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.barlist__track{background:var(--tray);border-radius:999px;grid-column:1/-1;height:7px;overflow:hidden}.barlist__fill{background:var(--chart-1);border-radius:999px;height:100%}.barlist__val{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.funnel{flex-direction:column;gap:8px;display:flex}.funnel__row{flex-direction:column;gap:4px;display:flex}.funnel__head{justify-content:space-between;font-size:13px;display:flex}.funnel__bar{border-radius:var(--radius-sm);background:var(--chart-1);color:#fff;align-items:center;min-width:2px;height:30px;padding:0 10px;font-size:12px;font-weight:600;display:flex}.funnel__drop{color:var(--accent-secondary);font-size:11px}.empty{color:var(--ink-faint);padding:8px 0;font-size:13px}.loading{color:var(--ink-muted);text-align:center;padding:40px;font-size:14px}.legend{color:var(--ink-muted);flex-wrap:wrap;gap:12px;margin-top:12px;font-size:12px;display:flex}.legend__dot{vertical-align:middle;border-radius:3px;width:9px;height:9px;margin-right:5px;display:inline-block}.kv{border-bottom:1px solid var(--line);justify-content:space-between;padding:7px 0;font-size:13px;display:flex}.kv:last-child{border-bottom:none}.kv__v{font-variant-numeric:tabular-nums;font-weight:600}
