.brand-lockup{display:inline-flex;align-items:center;justify-content:center;--color-green: #72d054;--color-inner: transparent;--color-flake: #062d42;--color-text: #062d42;--brand-text-scale: 1;--logo-box: 42px}.brand-lockup.compact{--logo-box: 42px}.brand-lockup.compact.mode-c{--logo-box: 52px}.brand-lockup.login{--logo-box: 72px}.brand-lockup.login.mode-c{--logo-box: 88px}.brand-lockup.hero{--logo-box: 168px}.brand-lockup.hero.mode-c{--logo-box: 215px}.brand-lockup.compact .brand-lockup__logo,.brand-lockup.hero .brand-lockup__logo,.brand-lockup.login .brand-lockup__logo{width:var(--logo-box);height:var(--logo-box);flex-shrink:0}.brand-lockup__logo svg.logo-svg-classic,.brand-lockup__logo svg.logo-svg-c{width:100%;height:100%;overflow:visible;display:block}.brand-lockup.mode-round .logo-svg-c,.brand-lockup.mode-c .logo-svg-classic{display:none}.brand-lockup.mode-c .logo-svg-c{display:block}.brand-text{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;overflow:hidden;max-width:0;margin-left:0;opacity:0;pointer-events:none}.brand-lockup .brand-name{font-size:calc(var(--logo-box, 42px) * .4 * var(--brand-text-scale, 1));font-weight:700;line-height:1.05;letter-spacing:-.02em}.brand-lockup .brand-tag{font-size:calc(var(--logo-box, 42px) * .274 * var(--brand-text-scale, 1));font-weight:400;line-height:1.1;letter-spacing:.06em}.brand-name,.brand-tag{white-space:nowrap;color:var(--color-text);font-family:var(--font, system-ui, -apple-system, "Segoe UI", sans-serif);opacity:0;transform:translateY(22px);filter:blur(10px)}.brand-lockup.show-text .brand-text{max-width:calc(var(--logo-box, 42px) * 3.1 * var(--brand-text-scale, 1));margin-left:calc(var(--logo-box, 42px) * .12);opacity:1;pointer-events:auto;transition:max-width 1.15s cubic-bezier(.22,1,.36,1),margin-left 1.15s cubic-bezier(.22,1,.36,1),opacity .7s ease}.brand-lockup.mode-c.show-text .brand-text{max-width:calc(var(--logo-box, 42px) * 2.35 * var(--brand-text-scale, 1));margin-left:calc(var(--logo-box, 42px) * -.05 * var(--brand-text-scale, 1));align-items:center}.brand-lockup.mode-c.compact.show-text .brand-text,.brand-lockup.mode-c.login.show-text .brand-text{max-width:calc(var(--logo-box, 42px) * 2.35 * var(--brand-text-scale, 1));margin-left:calc(var(--logo-box, 42px) * -.05 * var(--brand-text-scale, 1))}.brand-lockup.login.show-text .brand-text{max-width:calc(var(--logo-box, 42px) * 2.5 * var(--brand-text-scale, 1));margin-left:calc(var(--logo-box, 42px) * .08)}.brand-lockup.hero.show-text .brand-text{max-width:calc(var(--logo-box, 42px) * 2.6 * var(--brand-text-scale, 1));margin-left:calc(var(--logo-box, 42px) * .1)}.brand-lockup.mode-c.hero.show-text .brand-text{max-width:calc(var(--logo-box, 42px) * 2.4 * var(--brand-text-scale, 1));margin-left:0;align-items:center}.brand-lockup.is-static .brand-name,.brand-lockup.is-static .brand-tag,.brand-lockup.is-static.show-text .brand-name,.brand-lockup.is-static.show-text .brand-tag{animation:none;opacity:1;transform:none;filter:none}.brand-lockup.show-text .brand-name{animation:brand-reveal-text 1.15s cubic-bezier(.22,1,.36,1) forwards}.brand-lockup.show-text .brand-tag{animation:brand-reveal-text 1.15s cubic-bezier(.22,1,.36,1) .35s forwards}@keyframes brand-reveal-text{to{opacity:1;transform:translateY(0);filter:blur(0)}}.logo-green{stroke:var(--color-green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:transparent;stroke-dasharray:1;stroke-dashoffset:1}.logo-white{opacity:0;transform:scale(0);transform-box:fill-box;transform-origin:60px 64.07px}.logo-inner{fill:var(--color-inner, transparent)}.logo-flake,.logo-flake-c{opacity:0;stroke:var(--color-flake)}.logo-flake line,.logo-flake-c line{stroke-dasharray:30;stroke-dashoffset:30}.logo-c-ring{fill:none;stroke:var(--color-green);stroke-width:10.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}.brand-lockup__logo.is-static .logo-green{stroke-dashoffset:0;fill:var(--color-green);stroke-opacity:0}.brand-lockup__logo.is-static .logo-white{opacity:1;transform:scale(1)}.brand-lockup__logo.is-static .logo-flake,.brand-lockup__logo.is-static .logo-flake-c{opacity:1}.brand-lockup__logo.is-static .logo-flake line,.brand-lockup__logo.is-static .logo-flake-c line,.brand-lockup__logo.is-static .logo-c-ring{stroke-dashoffset:0}@keyframes brand-draw-outline{to{stroke-dashoffset:0}}@keyframes brand-fill-green{to{fill:var(--color-green);stroke-opacity:0}}@keyframes brand-pop-circle{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes brand-fade-flake{0%{opacity:0}to{opacity:1}}@keyframes brand-draw-flake{to{stroke-dashoffset:0}}.brand-lockup__logo.play-logo:not(.is-static) .logo-green{animation:brand-draw-outline 1.1s cubic-bezier(.4,0,.2,1) forwards,brand-fill-green .35s ease .85s forwards}.brand-lockup__logo.play-logo:not(.is-static) .logo-white{animation:brand-pop-circle .55s cubic-bezier(.34,1.35,.64,1) .55s forwards}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake{animation:brand-fade-flake .2s ease 1.05s forwards}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake line{animation:brand-draw-flake .4s cubic-bezier(.4,0,.2,1) forwards}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm:nth-child(1){--arm-delay: 1.05s}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm:nth-child(2){--arm-delay: 1.11s}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm:nth-child(3){--arm-delay: 1.17s}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm:nth-child(4){--arm-delay: 1.23s}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm:nth-child(5){--arm-delay: 1.29s}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm:nth-child(6){--arm-delay: 1.35s}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm line:nth-child(1){animation-delay:var(--arm-delay)}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm line:nth-child(2){animation-delay:calc(var(--arm-delay) + .06s)}.brand-lockup__logo.play-logo:not(.is-static) .logo-flake .arm line:nth-child(3){animation-delay:calc(var(--arm-delay) + .11s)}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-c-ring{animation:brand-draw-outline 1.05s cubic-bezier(.4,0,.2,1) forwards}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c{animation:brand-fade-flake .15s ease .95s forwards}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c line{animation:brand-draw-flake .38s cubic-bezier(.4,0,.2,1) forwards}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm:nth-child(1){--arm-delay: .98s}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm:nth-child(2){--arm-delay: 1.04s}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm:nth-child(3){--arm-delay: 1.1s}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm:nth-child(4){--arm-delay: 1.16s}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm:nth-child(5){--arm-delay: 1.22s}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm:nth-child(6){--arm-delay: 1.28s}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm line:nth-child(1){animation-delay:var(--arm-delay)}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm line:nth-child(2){animation-delay:calc(var(--arm-delay) + .06s)}.brand-lockup.mode-c .brand-lockup__logo.play-logo:not(.is-static) .logo-flake-c .arm line:nth-child(3){animation-delay:calc(var(--arm-delay) + .11s)}.brand-lockup__logo.play-logo[class*=logo-anim-]:not(.logo-anim-draw):not(.is-static) .logo-green{animation:none;stroke-dashoffset:0;fill:var(--color-green);stroke-opacity:0}.brand-lockup__logo.play-logo[class*=logo-anim-]:not(.logo-anim-draw):not(.is-static) .logo-white{animation:none;opacity:1;transform:scale(1)}.brand-lockup__logo.play-logo[class*=logo-anim-]:not(.logo-anim-draw):not(.is-static) .logo-flake,.brand-lockup__logo.play-logo[class*=logo-anim-]:not(.logo-anim-draw):not(.is-static) .logo-flake-c{animation:none;opacity:1}.brand-lockup__logo.play-logo[class*=logo-anim-]:not(.logo-anim-draw):not(.is-static) .logo-flake line,.brand-lockup__logo.play-logo[class*=logo-anim-]:not(.logo-anim-draw):not(.is-static) .logo-flake-c line,.brand-lockup__logo.play-logo[class*=logo-anim-]:not(.logo-anim-draw):not(.is-static) .logo-c-ring{animation:none;stroke-dashoffset:0}.brand-lockup__logo.play-logo.logo-anim-pop:not(.is-static){animation:brand-wrap-pop .9s cubic-bezier(.34,1.56,.64,1) forwards}.brand-lockup__logo.play-logo.logo-anim-spin:not(.is-static){animation:brand-wrap-spin 1.15s cubic-bezier(.22,1,.36,1) forwards}.brand-lockup__logo.play-logo.logo-anim-drop:not(.is-static){animation:brand-wrap-drop 1.1s cubic-bezier(.34,1.45,.64,1) forwards}@keyframes brand-wrap-pop{0%{transform:scale(.35);opacity:0}to{transform:scale(1);opacity:1}}@keyframes brand-wrap-spin{0%{transform:scale(.45) rotate(-140deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes brand-wrap-drop{0%{transform:translateY(-72px);opacity:0}70%{transform:translateY(6px);opacity:1}to{transform:translateY(0);opacity:1}}.brand-lockup.anim-slide .brand-name,.brand-lockup.anim-slide .brand-tag{filter:none;transform:translate(42px)}.brand-lockup.mode-c.anim-slide .brand-name,.brand-lockup.mode-c.anim-slide .brand-tag{transform:translate(32px)}.brand-lockup.anim-slide.show-text .brand-name,.brand-lockup.anim-slide.show-text .brand-tag{animation:brand-slide-text-in 1.2s cubic-bezier(.22,1,.36,1) forwards}.brand-lockup.anim-slide.show-text .brand-tag{animation-delay:.28s}@keyframes brand-slide-text-in{to{opacity:1;transform:translate(0)}}.brand-lockup.anim-fade .brand-name,.brand-lockup.anim-fade .brand-tag{filter:none;transform:none}.brand-lockup.anim-fade.show-text .brand-name,.brand-lockup.anim-fade.show-text .brand-tag{animation:brand-fade-text-in 1.2s ease forwards}.brand-lockup.anim-fade.show-text .brand-tag{animation-delay:.35s}@keyframes brand-fade-text-in{to{opacity:1}}.brand-lockup.anim-spring .brand-name,.brand-lockup.anim-spring .brand-tag{filter:none;transform:scale(.88)}.brand-lockup.anim-spring.show-text .brand-name,.brand-lockup.anim-spring.show-text .brand-tag{animation:brand-spring-text-in 1.1s cubic-bezier(.34,1.56,.64,1) forwards}.brand-lockup.anim-spring.show-text .brand-tag{animation-delay:.22s}@keyframes brand-spring-text-in{to{opacity:1;transform:scale(1)}}.brand-lockup.anim-type .brand-name .char,.brand-lockup.anim-type .brand-tag .char{opacity:0}.brand-lockup.anim-type.show-text .brand-name,.brand-lockup.anim-type.show-text .brand-tag{animation:none;opacity:1;transform:none;filter:none}.brand-lockup.anim-type.show-text .brand-name .char,.brand-lockup.anim-type.show-text .brand-tag .char{animation:brand-char-in .08s ease forwards}@keyframes brand-char-in{to{opacity:1}}.brand-lockup.anim-reveal .brand-text{clip-path:inset(0 100% 0 0)}.brand-lockup.anim-reveal .brand-name,.brand-lockup.anim-reveal .brand-tag{filter:none;transform:translate(-12px);opacity:1}.brand-lockup.anim-reveal.show-text .brand-text{clip-path:inset(0 0 0 0);transition:clip-path 1.35s cubic-bezier(.77,0,.175,1),max-width 1.35s cubic-bezier(.77,0,.175,1),margin-left 1.35s cubic-bezier(.77,0,.175,1),opacity .6s ease}.brand-lockup.anim-reveal.show-text .brand-name{animation:brand-reveal-shift 1.35s cubic-bezier(.77,0,.175,1) forwards}.brand-lockup.anim-reveal.show-text .brand-tag{animation:brand-reveal-shift 1.35s cubic-bezier(.77,0,.175,1) .15s forwards}@keyframes brand-reveal-shift{to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){.brand-lockup__logo.play-logo .logo-green,.brand-lockup__logo.play-logo .logo-white,.brand-lockup__logo.play-logo .logo-flake,.brand-lockup__logo.play-logo .logo-flake line,.brand-lockup__logo.play-logo .logo-flake-c,.brand-lockup__logo.play-logo .logo-flake-c line,.brand-lockup__logo.play-logo .logo-c-ring{animation:none!important;opacity:1;stroke-dashoffset:0;transform:none}.brand-lockup__logo.play-logo .logo-green{fill:var(--color-green);stroke-opacity:0}.brand-lockup.show-text .brand-name,.brand-lockup.show-text .brand-tag{animation:none!important;opacity:1;transform:none;filter:none}}:root,html[data-theme=dark]{--bg-0: #0b1220;--bg-1: #121c2e;--bg-2: #1a2740;--panel: rgba(18, 28, 46, .82);--panel-solid: #152238;--line: rgba(148, 173, 210, .16);--text: #e8eef8;--muted: #93a4bd;--accent: #3ecfbf;--accent-2: #5b8cff;--brand-green: #72d44c;--brand-green-dark: #59b838;--warn: #f0b429;--danger: #ff6b7a;--ok: #4ade80;--shadow: 0 18px 50px rgba(3, 8, 18, .45);--radius: 14px;--nav-w: 268px;--font: "DM Sans", system-ui, sans-serif;--display: "DM Sans", system-ui, sans-serif;--input-bg: rgba(8, 14, 26, .55);--nav-bg: linear-gradient(180deg, rgba(14, 22, 38, .95), rgba(11, 18, 32, .88));--body-bg: radial-gradient(1200px 600px at 10% -10%, rgba(62, 207, 191, .16), transparent 55%), radial-gradient(900px 500px at 90% 0%, rgba(91, 140, 255, .18), transparent 50%), linear-gradient(165deg, var(--bg-0), #0e1730 45%, #101a2f);--noise-opacity: .35;--hover-bg: rgba(255, 255, 255, .04);--comment-bg: rgba(255, 255, 255, .03);--snowflake-core: #fff;--snowflake-edge: rgba(200, 230, 255, .75);--snowflake-glow: rgba(255, 255, 255, .35);--chart-problems: #3ecfbf;--chart-changes: #5b8cff}html[data-theme=light]{--bg-0: #eef3f8;--bg-1: #f7fafc;--bg-2: #ffffff;--panel: rgba(255, 255, 255, .88);--panel-solid: #ffffff;--line: rgba(30, 55, 90, .12);--text: #152033;--muted: #5b6b82;--accent: #0f9d8e;--accent-2: #3a6ff7;--brand-green: #66c940;--brand-green-dark: #4fa82e;--brand-blue: #062d42;--warn: #c4841d;--danger: #d6455a;--ok: #1f9d55;--shadow: 0 14px 40px rgba(25, 45, 80, .1);--input-bg: rgba(238, 243, 248, .9);--nav-bg: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(245, 249, 252, .94));--body-bg: radial-gradient(1000px 500px at 8% -8%, rgba(15, 157, 142, .12), transparent 55%), radial-gradient(900px 480px at 92% 0%, rgba(58, 111, 247, .12), transparent 50%), linear-gradient(165deg, #e8eef6, #f4f7fb 50%, #eef3f8);--noise-opacity: .18;--hover-bg: rgba(20, 40, 70, .04);--comment-bg: rgba(20, 40, 70, .03);--snowflake-core: #ffffff;--snowflake-edge: rgba(42, 82, 145, .9);--snowflake-glow: rgba(58, 111, 247, .42);--chart-problems: #0f9d8e;--chart-changes: #3a6ff7}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);color:var(--text);background:var(--body-bg);background-attachment:fixed;transition:color .2s ease,background .2s ease}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:var(--noise-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.45'/%3E%3C/svg%3E");mix-blend-mode:soft-light;z-index:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:var(--nav-w) 1fr;min-height:100%}.nav{position:sticky;top:0;height:100vh;padding:1.25rem .9rem;border-right:1px solid var(--line);background:var(--nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;gap:1rem;animation:slideIn .45s ease-out}.brand{display:flex;align-items:center;gap:0;padding:.35rem .55rem .85rem;color:inherit;text-decoration:none;border-radius:12px;transition:background .15s ease;overflow:hidden}.brand:hover{background:#7fa9ff14}.brand-mark,.brand h1,.brand p{display:none}.nav-section{margin-top:.35rem}.nav-label{padding:.45rem .7rem;color:var(--muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.nav-collapse{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;cursor:pointer;text-align:left}.nav-collapse:hover{color:var(--text)}.nav-chevron{transition:transform .2s ease;font-size:.85rem}.nav-collapse:not(.open) .nav-chevron{transform:rotate(-90deg)}.nav a{display:flex;align-items:center;gap:.55rem;padding:.55rem .75rem;border-radius:10px;color:var(--muted);transition:background .18s ease,color .18s ease,transform .18s ease}.nav a:hover{background:var(--hover-bg);color:var(--text);transform:translate(2px)}.nav a.active{background:linear-gradient(90deg,#3ecfbf2e,#5b8cff14);color:var(--text);box-shadow:inset 0 0 0 1px #3ecfbf38}.nav-link-text{flex:1;min-width:0}.nav-badge{min-width:1.35rem;height:1.35rem;padding:0 .35rem;margin-left:auto;border-radius:999px;display:inline-grid;place-items:center;font-size:.72rem;font-weight:600;background:#72d44c33;color:var(--brand-green);flex-shrink:0}.app-content{display:flex;flex-direction:column;min-width:0;min-height:100%}.app-header{--header-control-height: 34px;position:sticky;top:0;z-index:40;display:flex;justify-content:flex-end;align-items:center;gap:.55rem;padding:.85rem 1.6rem .65rem;flex-shrink:0;background:color-mix(in srgb,var(--bg-0) 84%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}html[data-theme=light] .app-header{background:color-mix(in srgb,var(--bg-1) 90%,transparent)}.theme-toggle-round{display:inline-grid;place-items:center;width:var(--header-control-height);height:var(--header-control-height);padding:0;flex-shrink:0;border-radius:50%;border:1px solid var(--line);background:#ffffff0a;color:var(--muted);transition:transform .15s ease,background .15s ease,border-color .15s ease,color .15s ease}.theme-toggle-round:hover{transform:translateY(-1px);color:var(--text);background:#ffffff12;border-color:#3ecfbf47}html[data-theme=light] .theme-toggle-round{background:var(--bg-2);color:#3d4f66}html[data-theme=light] .theme-toggle-round:hover{color:#152033;background:var(--hover-bg)}.theme-toggle-round svg{width:16px;height:16px}.user-menu{position:relative}.user-menu-trigger{display:inline-flex;align-items:center;gap:.45rem;max-width:min(280px,42vw);height:var(--header-control-height);padding:0 .85rem;border-radius:999px;border:1px solid var(--line);background:#ffffff0a;color:var(--text);font-size:.88rem;font-weight:600;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.user-menu-trigger:hover,.user-menu-trigger.open{transform:translateY(-1px);background:#ffffff12;border-color:#5b8cff47;box-shadow:0 6px 18px #0308121f}html[data-theme=light] .user-menu-trigger{background:var(--bg-2)}html[data-theme=light] .user-menu-trigger:hover,html[data-theme=light] .user-menu-trigger.open{background:var(--hover-bg)}.user-menu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-chevron{color:var(--muted);font-size:.72rem;margin-left:.1rem}.user-menu-dropdown{position:absolute;top:calc(100% + .45rem);right:0;min-width:190px;padding:.35rem;border-radius:14px;border:1px solid var(--line);background:var(--panel-solid);box-shadow:var(--shadow);z-index:30}.user-menu-meta{padding:.45rem .75rem .55rem;border-bottom:1px solid var(--line);margin-bottom:.25rem}.user-menu-role{display:block;font-size:.78rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--accent)}.user-menu-item{display:block;width:100%;padding:.62rem .75rem;border:none;border-radius:10px;background:transparent;color:var(--text);font-size:.88rem;text-align:left;transition:background .12s ease}.user-menu-item:hover{background:var(--hover-bg)}.user-menu-item.danger{color:var(--danger)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:1.5rem;background:#040a148c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:min(420px,100%);padding:1.25rem 1.35rem}.main{min-width:0;padding:.85rem 1.6rem 2.5rem;animation:fadeUp .4s ease-out}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.topbar h2{margin:0;font-family:var(--display);font-size:1.85rem;letter-spacing:-.03em;font-weight:600}.topbar .subtitle{margin:.25rem 0 0;color:var(--muted);font-size:.95rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.9rem;margin-bottom:1.1rem}.stat{padding:1rem 1.1rem;position:relative;overflow:hidden}.stat:after{content:"";position:absolute;right:-20px;top:-20px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,rgba(62,207,191,.18),transparent 70%)}.stat .label{color:var(--muted);font-size:.8rem}.stat .value{margin-top:.35rem;font-family:var(--display);font-size:2rem;font-weight:600}.stat-meta{margin-top:.35rem;font-size:.82rem;color:var(--muted)}.stat-item-ref{font-size:clamp(1.15rem,2.2vw,1.65rem);line-height:1.15}.stat-item-ref a{color:inherit;text-decoration:none;transition:color .15s ease}.stat-item-ref a:hover{color:var(--accent)}.dashboard-chart{margin-bottom:1.1rem;padding:.7rem .95rem .55rem;overflow:visible}.dashboard-chart-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.dashboard-chart-heading{min-width:0}.dashboard-chart-title{margin:0;font-size:.82rem;font-weight:600;letter-spacing:.01em}.dashboard-chart-subtitle{margin:.12rem 0 0;font-size:.68rem;color:var(--muted)}.dashboard-chart-legend{display:flex;flex-wrap:wrap;gap:.55rem;font-size:.68rem;color:var(--muted)}.dashboard-chart-legend-item{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .45rem;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel-solid) 88%,transparent)}.dashboard-chart-legend-dot{width:.42rem;height:.42rem;border-radius:50%;flex-shrink:0}.dashboard-chart-legend-item.problems .dashboard-chart-legend-dot{background:var(--chart-problems);box-shadow:0 0 6px color-mix(in srgb,var(--chart-problems) 45%,transparent)}.dashboard-chart-legend-item.changes .dashboard-chart-legend-dot{background:var(--chart-changes)}.dashboard-chart-stage{width:100%}.dashboard-chart-svg{display:block;width:100%;height:auto}.dashboard-chart-bg{stroke:var(--line);stroke-width:.75}.dashboard-chart-grid{stroke:var(--line);stroke-width:.75;opacity:.55}.dashboard-chart-axis-label{fill:var(--muted);font-size:8.5px;font-weight:500;font-family:var(--font)}.dashboard-chart-axis-label.axis-x{font-size:8px}.dashboard-chart-area{stroke:none}.dashboard-chart-line{stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.dashboard-chart-line.problems{stroke:var(--chart-problems);stroke-width:2}.dashboard-chart-line.changes{stroke:var(--chart-changes);stroke-width:1.75;opacity:.92}.dashboard-chart-dot{stroke:var(--panel-solid);stroke-width:1.5}.dashboard-chart-dot.problems{fill:var(--chart-problems)}.dashboard-chart-dot.changes{fill:var(--chart-changes)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.75rem .9rem;border-bottom:1px solid var(--line);font-size:.92rem}th{color:var(--muted);font-weight:500;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}tr:hover td{background:#ffffff06}.badge{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:999px;font-size:.75rem;border:1px solid var(--line);background:#ffffff0a}.badge.ok{color:var(--ok);border-color:#4ade8059}.badge.warn{color:var(--warn);border-color:#f0b42959}.badge.danger{color:var(--danger);border-color:#ff6b7a59}.badge.info{color:#8ec5ff;border-color:#5b8cff59}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--line);background:#ffffff0a;color:var(--text);border-radius:999px;padding:.52rem 1.15rem;font-size:.88rem;font-weight:600;line-height:1.2;white-space:nowrap;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease,filter .15s ease}.btn:hover{transform:translateY(-1px);background:#ffffff12;border-color:#94add247;box-shadow:0 6px 18px #0308121f}.btn:active{transform:translateY(0)}.btn.primary{background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark));border-color:transparent;color:#0d1a12;box-shadow:0 8px 22px #72d44c47,0 2px 6px #0308121f}.btn.primary:hover{filter:brightness(1.05);box-shadow:0 10px 28px #72d44c5c,0 4px 10px #03081224}.btn.primary:disabled{opacity:.6;cursor:not-allowed;transform:none;filter:none}html[data-theme=light] .btn{background:var(--bg-2);border-color:#1e375a24;box-shadow:0 2px 8px #192d500f}html[data-theme=light] .btn:hover{background:var(--hover-bg);border-color:#0f9d8e3d;box-shadow:0 6px 16px #192d501a}html[data-theme=light] .btn.primary{background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark));color:#0d1a12;border-color:transparent;box-shadow:0 8px 22px #66c94052}html[data-theme=light] .btn.primary:hover{filter:brightness(1.04);box-shadow:0 10px 28px #66c94066}html[data-theme=light] .btn.primary:disabled{opacity:.65;filter:none}.btn.danger{color:var(--danger);border-color:#ff6b7a59;background:#ff6b7a14}.btn.danger:hover{background:#ff6b7a24;border-color:#ff6b7a7a;box-shadow:0 6px 18px #ff6b7a1f}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none}.btn.ghost:hover{background:var(--hover-bg);border-color:var(--line);box-shadow:none}.toolbar,.list-toolbar{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:.9rem}.list-toolbar .search-input{flex:1 1 240px;max-width:420px}.list-toolbar-actions{margin-left:auto;display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}.field label{font-size:.8rem;color:var(--muted)}.field-label-block{display:block;font-size:.8rem;color:var(--muted);margin-bottom:.35rem}.trigger-checklist{display:grid;gap:.45rem}.field label .range-value{float:right;font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.range-input{width:100%;margin-top:.35rem;accent-color:var(--accent)}.field input,.field select,.field textarea,.tile input,.tile select,.search-input{width:100%;border-radius:10px;border:1px solid var(--line);background:var(--input-bg);padding:.65rem .75rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.search-input{min-width:240px;width:auto}.field input:focus,.field select:focus,.field textarea:focus,.tile input:focus,.tile select:focus,.search-input:focus{border-color:#3ecfbf8c;box-shadow:0 0 0 3px #3ecfbf1f}.field textarea{min-height:120px;resize:vertical;line-height:1.45}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem}.form-grid .span-2{grid-column:span 2}.section-card{padding:1.1rem 1.2rem;margin-bottom:1rem}.section-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.section-card-header h3,.section-card h3{margin:0;font-family:var(--display);font-size:1.15rem;font-weight:600}.section-card>h3{margin-bottom:.85rem}.btn-add{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.42rem 1rem .42rem .42rem;border:1px solid rgba(114,212,76,.42);background:linear-gradient(135deg,#72d44c38,#59b83829);color:#fff;font-size:.84rem;font-weight:600;font-family:inherit;text-decoration:none;white-space:nowrap;box-shadow:0 4px 14px #0308121f;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,filter .15s ease}.btn-add:disabled{opacity:.55;cursor:not-allowed;transform:none;filter:none}.btn-add:hover{transform:translateY(-1px);border-color:#72d44c94;box-shadow:0 8px 22px #72d44c38;color:#fff}.btn-add-accent{border-color:#72d44c6b;background:linear-gradient(135deg,#72d44c38,#59b83829)}.btn-add-accent:hover{border-color:#72d44c94;box-shadow:0 8px 22px #72d44c38;color:#fff}.btn-add-icon{display:inline-grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:50%;background:linear-gradient(135deg,var(--brand-green),var(--brand-green-dark));color:#fff;font-size:1.05rem;line-height:1;font-weight:700;flex-shrink:0}html[data-theme=light] .btn-add,html[data-theme=light] .btn-add-accent{color:var(--brand-blue);background:linear-gradient(135deg,#66c9402e,#4fa82e1f);border-color:#4fa82e52;box-shadow:0 4px 14px #192d5014}html[data-theme=light] .btn-add:hover,html[data-theme=light] .btn-add-accent:hover{color:var(--brand-blue);background:linear-gradient(135deg,#66c9403d,#4fa82e29);border-color:#4fa82e6b;box-shadow:0 8px 22px #66c9402e}.muted{color:var(--muted)}.error{color:var(--danger);font-size:.9rem}.ok-text{color:var(--ok)}.login-page{position:relative;z-index:1;min-height:100%;display:grid;place-items:center;padding:2rem;overflow:hidden}.snowfall{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.snowflake{position:absolute;top:-12px;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--snowflake-core),var(--snowflake-edge));box-shadow:0 0 6px var(--snowflake-glow);animation-name:snowfall-fall;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform}html[data-theme=light] .snowflake{border:1px solid rgba(42,82,145,.28);box-shadow:0 0 10px #3a6ff761,0 0 3px #2a529138}html[data-theme=light] .login-page .snowflake{border:1px solid rgba(42,82,145,.28)}@keyframes snowfall-fall{0%{transform:translate3d(0,-10vh,0)}to{transform:translate3d(var(--drift, 20px),110vh,0)}}.login-card{position:relative;z-index:1;width:min(420px,100%);padding:2rem 1.75rem;animation:fadeUp .5s ease-out}.login-card .login-brand{display:flex;justify-content:center;margin-bottom:1rem;overflow:hidden}.brand-signin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9500;display:grid;place-items:center;padding:2rem}.brand-signin-overlay__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080e1a6b;backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}html[data-theme=light] .brand-signin-overlay__backdrop{background:#eef3f88c}.brand-signin-overlay__stage{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;animation:brand-signin-rise .6s cubic-bezier(.22,1,.36,1)}.brand-signin-overlay__stage .brand-lockup.hero{--logo-box: 220px;flex-direction:row;align-items:center;justify-content:center}.brand-signin-overlay__stage .brand-lockup.hero.mode-c{--logo-box: 268px}.brand-signin-overlay__stage .brand-lockup.hero.show-text .brand-text{max-width:calc(var(--logo-box) * 3.4 * var(--brand-text-scale, 1));margin-left:calc(var(--logo-box) * .12);align-items:flex-start;overflow:visible}.brand-signin-overlay__stage .brand-lockup.mode-c.hero.show-text .brand-text{max-width:calc(var(--logo-box) * 2.6 * var(--brand-text-scale, 1));margin-left:calc(var(--logo-box) * -.04);align-items:center;overflow:visible}.brand-signin-overlay.is-leaving{animation:brand-signin-fade-out .68s ease forwards;pointer-events:none}@keyframes brand-signin-rise{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes brand-signin-fade-out{0%{opacity:1}to{opacity:0}}.settings-shell{display:grid;grid-template-columns:200px minmax(0,1fr);gap:1.25rem;align-items:start}.settings-tabs{display:flex;flex-direction:column;gap:.35rem;position:sticky;top:1rem}.settings-tabs button{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:10px;padding:.75rem .9rem;text-align:left;font:500 .92rem/1.2 var(--font);cursor:pointer;transition:background .15s ease,border-color .15s ease}.settings-tabs button:hover{background:#7fa9ff14}.settings-tabs button.active{border-color:#72d05473;background:#72d0541f}.settings-panel{display:grid;gap:1rem;max-width:820px}.color-grid{display:grid;gap:.75rem}.inner-color-field{display:grid;gap:.35rem}.inner-color-toggle{margin:0;font-size:.85rem}.color-field{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.92rem}.color-field input[type=color]{width:52px;height:34px;padding:2px;border:1px solid var(--border);border-radius:8px;background:var(--panel);cursor:pointer}.brand-preview-stage{display:flex;align-items:center;justify-content:center;min-height:220px;padding:1.5rem;border-radius:14px;background:#7fa9ff0f;border:1px dashed var(--border);overflow:hidden}.brand-preview-stage .brand-lockup{transform:scale(2.25);transform-origin:center}@media(max-width:860px){.settings-shell{grid-template-columns:1fr}.settings-tabs{position:static;flex-direction:row;flex-wrap:wrap}}.login-card h2{margin:0 0 .35rem;font-family:var(--display);font-size:1.7rem}.html-preview{border:1px solid var(--line);border-radius:10px 10px 0 0;padding:.85rem;background:var(--comment-bg);overflow:auto;font-size:.9rem;box-sizing:border-box}.html-preview-empty{display:flex;align-items:flex-start}.html-preview *{max-width:100%}.html-field-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.html-field--fill{margin-bottom:.75rem}.html-field-body{position:relative}.html-field-body .field textarea{border-radius:10px 10px 0 0;margin-bottom:0}.problem-form-actions{margin-top:.25rem;margin-bottom:0}.html-resize-handle{height:10px;margin-top:-1px;border:1px solid var(--line);border-top:none;border-radius:0 0 10px 10px;background:var(--comment-bg);cursor:ns-resize;position:relative;touch-action:none}.html-resize-handle:after{content:"";position:absolute;left:50%;top:50%;width:36px;height:3px;border-radius:999px;transform:translate(-50%,-50%);background:color-mix(in srgb,var(--muted) 55%,transparent)}.check-row{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;line-height:1.35}.check-row input[type=checkbox]{margin-top:.2rem;width:1.05rem;height:1.05rem;flex-shrink:0;cursor:pointer}.blizzard-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none}.blizzard-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.blizzard-banner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;max-width:min(32rem,calc(100vw - 2.5rem));padding:1.1rem 1.5rem 1.25rem;border-radius:16px;text-align:center;color:#f4fffc;background:#0c182ad1;border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 50px #00000059,0 0 0 1px #3ecfbf1f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:blizzard-banner-in .55s ease-out;pointer-events:auto;font:inherit;cursor:default;-moz-appearance:none;appearance:none;-webkit-appearance:none}.blizzard-banner.is-clickable{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.blizzard-banner.is-clickable:hover{border-color:#8ef0e48c;box-shadow:0 18px 50px #0006,0 0 0 1px #3ecfbf47;transform:translate(-50%,-50%) scale(1.02)}.blizzard-banner.is-clickable:focus-visible{outline:2px solid #8ef0e4;outline-offset:3px}.blizzard-banner:disabled{cursor:default;opacity:.95}.blizzard-banner-number{font-family:var(--display, "DM Sans", sans-serif);font-size:clamp(1.35rem,3.2vw,1.85rem);font-weight:700;letter-spacing:.04em;margin-bottom:.35rem;color:#8ef0e4}.blizzard-banner-title{font-size:clamp(.95rem,2.2vw,1.15rem);line-height:1.35;color:#f4fffceb;word-break:break-word}.blizzard-banner-hint{margin-top:.65rem;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:#f4fffc8c}@keyframes blizzard-banner-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 14px)) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.btn.ghost.active-toggle{border-color:var(--accent, #4f8cff);color:var(--accent, #4f8cff)}.col-check{width:2.25rem;text-align:center;vertical-align:middle}.col-actions{width:1%;white-space:nowrap;text-align:right;vertical-align:middle}.row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:.25rem}.btn.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;min-width:2rem;padding:0;gap:0;border-radius:8px;font-size:0;line-height:0}.btn.btn-icon svg{display:block;flex-shrink:0}.btn.btn-icon.danger{color:var(--danger);border-color:#ff6b7a59;background:#ff6b7a14}.btn.btn-icon.danger:hover{background:#ff6b7a24;border-color:#ff6b7a7a;box-shadow:0 6px 18px #ff6b7a1f}.col-check input[type=checkbox]{width:1rem;height:1rem;cursor:pointer}tr.row-selected td{background:color-mix(in srgb,var(--accent, #4f8cff) 12%,transparent)}tr.row-unread td{font-weight:600}tr.row-clickable{cursor:pointer}tr.row-clickable:hover td{background:var(--hover-bg)}tr.row-clickable.row-selected:hover td{background:color-mix(in srgb,var(--accent, #4f8cff) 16%,transparent)}tr.row-clickable:focus-visible{outline:none}tr.row-clickable:focus-visible td{box-shadow:inset 0 0 0 2px #3ecfbf73}.token-box{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;word-break:break-all;padding:.75rem;border-radius:10px;background:var(--input-bg);border:1px solid var(--line)}.token-reveal{display:flex;align-items:stretch;border-radius:10px;border:1px solid var(--line);background:var(--input-bg);overflow:hidden}.token-reveal-input{flex:1;min-width:0;border:none;background:transparent;padding:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;color:var(--text);outline:none}.token-reveal-copy{flex-shrink:0;border:none;border-left:1px solid var(--line);background:#ffffff0a;color:var(--text);padding:0 1rem;font-size:.82rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,color .15s ease}.token-reveal-copy:hover{background:#72d44c24;color:var(--brand-green)}html[data-theme=light] .token-reveal-copy{background:var(--bg-2)}html[data-theme=light] .token-reveal-copy:hover{background:#66c94024;color:var(--brand-green-dark)}.empty{padding:2rem;text-align:center;color:var(--muted)}.tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.tab{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:.45rem .85rem;transition:background .15s ease,color .15s ease,border-color .15s ease}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-color:#3ecfbf73;background:linear-gradient(90deg,#3ecfbf29,#5b8cff14)}.tab-count{min-width:1.35rem;height:1.35rem;padding:0 .35rem;border-radius:999px;display:inline-grid;place-items:center;font-size:.72rem;font-weight:600;background:var(--hover-bg);color:var(--muted)}.tab-count.has{background:#3ecfbf33;color:var(--accent)}.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.tile{padding:.85rem .95rem}.tile-label{color:var(--muted);font-size:.75rem;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.04em}.tile input,.tile select{padding:.45rem .55rem}.comment-feed{display:flex;flex-direction:column;gap:.65rem}.comment-card{border:1px solid var(--line);border-radius:12px;background:var(--comment-bg);padding:.85rem .95rem}.comment-card header{display:flex;justify-content:flex-end;gap:.75rem;margin-bottom:.35rem;font-size:.85rem}.comment-meta{display:inline-flex;align-items:baseline;gap:.55rem}.comment-card p{margin:0;white-space:pre-wrap;line-height:1.45}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.nav{position:relative;height:auto}.stats,.grid-2,.form-grid,.tile-grid{grid-template-columns:1fr 1fr}.form-grid .span-2{grid-column:span 1}}@media(max-width:640px){.stats,.grid-2,.form-grid,.tile-grid{grid-template-columns:1fr}}
