@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer reset{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,dl,dd,ul,figure{margin:0}ul{padding:0;list-style:none}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}table{border-collapse:collapse}}@layer tokens{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font:"Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "Cascadia Code", "SF Mono", Consolas, monospace;--bg:oklch(96.6% .006 95);--surface:oklch(100% 0 0);--surface-2:oklch(97.2% .005 95);--surface-3:oklch(94.2% .007 95);--ink:oklch(21% .03 262);--ink-2:oklch(36% .025 262);--muted:oklch(53% .018 262);--line:oklch(91.5% .007 95);--line-strong:oklch(85% .01 95);--brand:oklch(52% .11 172);--brand-strong:oklch(44% .1 172);--brand-ink:oklch(99% 0 0);--brand-soft:color-mix(in oklch, var(--brand) 13%, transparent);--mint:oklch(86% .13 168);--blue:oklch(60% .15 255);--primary:var(--ink);--primary-ink:oklch(99% 0 0);--green:oklch(55% .13 150);--amber:oklch(68% .14 70);--red:oklch(57% .19 25);--grey:oklch(60% .01 262);--teal-bg:oklch(94.5% .045 172);--teal:oklch(55% .11 172);--teal-ink:oklch(30% .06 172);--amber-bg:oklch(95.2% .055 82);--amber-s:oklch(70% .14 70);--amber-ink:oklch(36% .08 60);--violet-bg:oklch(94.2% .04 290);--violet:oklch(56% .16 290);--violet-ink:oklch(31% .1 290);--sky-bg:oklch(95% .033 235);--sky:oklch(60% .12 240);--sky-ink:oklch(32% .08 245);--rose-bg:oklch(95% .035 15);--rose:oklch(60% .16 15);--rose-ink:oklch(35% .1 15);--lime-bg:oklch(95.5% .06 128);--lime:oklch(62% .15 135);--lime-ink:oklch(32% .07 140);--side-bg:oklch(20% .035 262);--side-ink:oklch(87% .02 262);--side-muted:oklch(64% .03 262);--radius:22px;--radius-md:16px;--radius-sm:12px;--shadow:0 1px 1px oklch(20% .03 262/.04), 0 10px 30px -18px oklch(20% .03 262/.22);--shadow-lg:0 30px 70px -28px oklch(15% .04 262/.45);--ring:0 0 0 4px color-mix(in oklch, var(--brand) 24%, transparent);--ease:cubic-bezier(.2, .8, .2, 1);--spring:cubic-bezier(.34, 1.56, .64, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:oklch(15.5% .018 262);--surface:oklch(20% .022 262);--surface-2:oklch(23% .024 262);--surface-3:oklch(27% .026 262);--ink:oklch(95% .008 262);--ink-2:oklch(84% .014 262);--muted:oklch(68% .02 262);--line:oklch(28% .024 262);--line-strong:oklch(35% .027 262);--brand:oklch(76% .13 172);--brand-strong:oklch(82% .13 172);--brand-ink:oklch(18% .04 172);--primary:oklch(86% .13 168);--primary-ink:oklch(18% .04 172);--teal-bg:oklch(29% .05 172);--teal:oklch(76% .13 172);--teal-ink:oklch(92% .05 172);--amber-bg:oklch(30% .05 70);--amber-s:oklch(80% .14 75);--amber-ink:oklch(93% .05 85);--violet-bg:oklch(29% .06 290);--violet:oklch(76% .13 290);--violet-ink:oklch(93% .04 290);--sky-bg:oklch(29% .05 240);--sky:oklch(78% .1 240);--sky-ink:oklch(93% .03 240);--rose-bg:oklch(30% .06 15);--rose:oklch(76% .13 15);--rose-ink:oklch(93% .03 15);--lime-bg:oklch(30% .06 135);--lime:oklch(80% .15 135);--lime-ink:oklch(94% .05 130);--side-bg:oklch(12.5% .02 262);--shadow:0 1px 1px oklch(0% 0 0/.35), 0 12px 32px -18px oklch(0% 0 0/.7)}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:oklch(15.5% .018 262);--surface:oklch(20% .022 262);--surface-2:oklch(23% .024 262);--surface-3:oklch(27% .026 262);--ink:oklch(95% .008 262);--ink-2:oklch(84% .014 262);--muted:oklch(68% .02 262);--line:oklch(28% .024 262);--line-strong:oklch(35% .027 262);--brand:oklch(76% .13 172);--brand-strong:oklch(82% .13 172);--brand-ink:oklch(18% .04 172);--primary:oklch(86% .13 168);--primary-ink:oklch(18% .04 172);--teal-bg:oklch(29% .05 172);--teal:oklch(76% .13 172);--teal-ink:oklch(92% .05 172);--amber-bg:oklch(30% .05 70);--amber-s:oklch(80% .14 75);--amber-ink:oklch(93% .05 85);--violet-bg:oklch(29% .06 290);--violet:oklch(76% .13 290);--violet-ink:oklch(93% .04 290);--sky-bg:oklch(29% .05 240);--sky:oklch(78% .1 240);--sky-ink:oklch(93% .03 240);--rose-bg:oklch(30% .06 15);--rose:oklch(76% .13 15);--rose-ink:oklch(93% .03 15);--lime-bg:oklch(30% .06 135);--lime:oklch(80% .15 135);--lime-ink:oklch(94% .05 130);--side-bg:oklch(12.5% .02 262);--shadow:0 1px 1px oklch(0% 0 0/.35), 0 12px 32px -18px oklch(0% 0 0/.7)}:root{--accent:#e57a1f;--side-tint:#2b2d33;--doc-accent:var(--accent)}@supports (color:oklch(from red l c h)){:root{--brand:oklch(from var(--accent) min(l, .56) min(c, .17) h);--brand-strong:oklch(from var(--accent) min(l, .48) min(c, .15) h);--mint:oklch(from var(--accent) max(l, .78) min(c, .16) h);--on-mint:oklch(from var(--accent) .22 min(c, .06) h);--side-bg:oklch(from var(--side-tint) .22 min(c, .03) h);--side-ink:oklch(from var(--side-tint) .9 min(c, .015) h);--side-muted:oklch(from var(--side-tint) .68 min(c, .025) h);--doc-accent:oklch(from var(--accent) min(l, .62) c h);--brand-bg:oklch(from var(--accent) .95 min(c, .045) h);--brand-tile:oklch(from var(--accent) min(l, .62) min(c, .15) h);--brand-tile-ink:oklch(from var(--accent) .32 min(c, .08) h);--primary:var(--brand);--primary-ink:oklch(99% 0 0)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--brand:oklch(from var(--accent) max(l, .76) min(c, .15) h);--brand-strong:oklch(from var(--accent) max(l, .82) min(c, .14) h);--brand-ink:oklch(from var(--accent) .2 .04 h);--primary:oklch(from var(--accent) max(l, .8) min(c, .15) h);--primary-ink:oklch(from var(--accent) .2 .05 h);--side-bg:oklch(from var(--side-tint) .13 min(c, .02) h);--brand-bg:oklch(from var(--accent) .29 min(c, .06) h);--brand-tile:oklch(from var(--accent) max(l, .76) min(c, .14) h);--brand-tile-ink:oklch(from var(--accent) .93 min(c, .05) h)}}:root[data-theme=dark]{--brand:oklch(from var(--accent) max(l, .76) min(c, .15) h);--brand-strong:oklch(from var(--accent) max(l, .82) min(c, .14) h);--brand-ink:oklch(from var(--accent) .2 .04 h);--primary:oklch(from var(--accent) max(l, .8) min(c, .15) h);--primary-ink:oklch(from var(--accent) .2 .05 h);--side-bg:oklch(from var(--side-tint) .13 min(c, .02) h);--brand-bg:oklch(from var(--accent) .29 min(c, .06) h);--brand-tile:oklch(from var(--accent) max(l, .76) min(c, .14) h);--brand-tile-ink:oklch(from var(--accent) .93 min(c, .05) h)}}@supports not (color:oklch(from red l c h)){:root{--mint:var(--accent);--on-mint:#1d1d1f}}}@layer base{html{-webkit-text-size-adjust:100%}body{font:14.5px/1.5 var(--font);font-feature-settings:"cv11", "ss01", "ss03";background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:var(--brand);font-weight:550;text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}h1{letter-spacing:-.035em;font-size:clamp(1.6rem,1.15rem + 1.4vw,2.3rem);font-weight:760;line-height:1.08}h2{letter-spacing:-.015em;font-size:1.02rem;font-weight:680}h3{margin-bottom:6px;font-size:.9rem;font-weight:650}:focus-visible{box-shadow:var(--ring);border-radius:10px;outline:none}::selection{background:color-mix(in oklch, var(--brand) 25%, transparent)}code,.mono{font-family:var(--mono);font-size:.9em}kbd{font:600 11px var(--mono);border:1px solid var(--line-strong);background:var(--surface-2);color:var(--muted);border-radius:7px;padding:2px 7px}}@layer layout{.shell{grid-template-columns:264px 1fr;min-height:100dvh;display:grid}.sidebar{background:radial-gradient(300px 220px at 10% 0%, color-mix(in oklch, var(--mint) 22%, transparent), transparent 70%), radial-gradient(260px 240px at 100% 100%, color-mix(in oklch, var(--blue) 18%, transparent), transparent 70%), var(--side-bg);height:calc(100dvh - 24px);color:var(--side-ink);box-shadow:var(--shadow-lg);scrollbar-width:none;border-radius:28px;flex-direction:column;gap:18px;margin:12px 0 12px 12px;padding:20px 14px 22px;display:flex;position:sticky;top:12px;overflow-y:auto}.brand{color:inherit;align-items:center;gap:11px;padding:4px 8px;display:flex}.brand strong{letter-spacing:-.02em;color:oklch(98% 0 0);font-weight:750;display:block}.brand small{color:var(--side-muted);font-size:11.5px}.brand:hover{text-decoration:none}.nav-group{gap:3px;margin-bottom:12px;display:grid}.nav-title{letter-spacing:.1em;text-transform:uppercase;color:var(--side-muted);padding:6px 12px;font-size:10.5px;font-weight:700}.sidebar nav a{color:var(--side-ink);transition:background .2s, color .2s, transform .2s var(--spring);border-radius:999px;align-items:center;gap:12px;padding:9px 12px;font-weight:560;display:flex}.sidebar nav a svg{opacity:.8}.sidebar nav a:hover{background:oklch(100% 0 0/.07);text-decoration:none;transform:translate(2px)}.sidebar nav a.on{background:var(--mint);color:var(--on-mint,oklch(20% .05 172))}.sidebar nav a.on svg{opacity:1}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;background:color-mix(in oklch, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(160%)blur(14px);backdrop-filter:saturate(160%)blur(14px);align-items:center;gap:12px;padding:14px clamp(16px,3vw,34px) 10px;display:flex;position:sticky;top:0}.spacer{flex:1}.content{view-transition-name:content;width:100%;max-width:1380px;margin:0 auto;padding:8px clamp(16px,3vw,34px) 40px}.scrim{display:none}@media (width<=960px){.shell{grid-template-columns:1fr}.sidebar{z-index:50;width:276px;height:auto;transition:transform .3s var(--ease);margin:0;position:fixed;inset:10px auto 10px 10px;transform:translate(calc(-100% - 20px))}.nav-open .sidebar{transform:none}.nav-open .scrim{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:oklch(15% .03 262/.4);display:block;position:fixed;inset:0}.search-btn span,.user-btn .who{display:none}}}@layer components{.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 24px;margin:6px 0 24px;display:flex}.page-header .back{margin-bottom:8px;font-size:13px}.page-header p{margin-top:6px;font-size:15px}.page-header h1{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.title-with-avatar{align-items:center;gap:14px;display:inline-flex}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card,.tile{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;padding:20px 22px}.card{margin-bottom:18px}.card-head,.tile-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.card-foot{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:16px;margin-bottom:18px;display:grid}.span-2{grid-column:span 2}.row-2{grid-row:span 2}@media (width<=1180px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.bento{grid-template-columns:1fr}.span-2{grid-column:auto}.row-2{grid-row:auto}}.stats{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:18px;display:grid}.stats.compact{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.stat{--t-bg:var(--surface);--t-strong:var(--brand);--t-ink:var(--ink);background:var(--t-bg);color:var(--t-ink);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .25s var(--spring), box-shadow .25s;flex-direction:column;gap:2px;padding:18px 20px;display:flex;position:relative;overflow:hidden}.stat:hover{transform:translateY(-2px)}.stat.red{--t-bg:var(--rose-bg);--t-ink:var(--rose-ink);--t-strong:var(--rose)}.stat.green{--t-bg:var(--lime-bg);--t-ink:var(--lime-ink);--t-strong:var(--lime)}.tone-teal{--t-bg:var(--teal-bg);--t-ink:var(--teal-ink);--t-strong:var(--teal)}.tone-brand{--t-bg:var(--brand-bg,var(--teal-bg));--t-ink:var(--brand-tile-ink,var(--teal-ink));--t-strong:var(--brand-tile,var(--teal))}.tone-amber{--t-bg:var(--amber-bg);--t-ink:var(--amber-ink);--t-strong:var(--amber-s)}.tone-violet{--t-bg:var(--violet-bg);--t-ink:var(--violet-ink);--t-strong:var(--violet)}.tone-sky{--t-bg:var(--sky-bg);--t-ink:var(--sky-ink);--t-strong:var(--sky)}.tone-rose,.tone-red{--t-bg:var(--rose-bg);--t-ink:var(--rose-ink);--t-strong:var(--rose)}.tone-lime,.tone-green{--t-bg:var(--lime-bg);--t-ink:var(--lime-ink);--t-strong:var(--lime)}.tile[class*=tone-]{background:var(--t-bg);color:var(--t-ink)}.stats.compact .stat{box-shadow:none;background:var(--surface-2)}.stats.compact .stat:hover{transform:none}.stat-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.stat-label{opacity:.82;font-size:13px;font-weight:650}.stat-icon{background:color-mix(in oklch, var(--t-strong,var(--brand)) 22%, transparent);width:36px;height:36px;color:var(--t-strong,var(--brand));border-radius:12px;place-items:center;display:grid}.stat-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(1.45rem,1.1rem + 1vw,2rem);font-weight:780;line-height:1.1}.stat-sub{opacity:.78;margin-top:2px;font-size:13px}.stat.hero .stat-value{font-size:clamp(2rem,1.4rem + 1.8vw,3rem)}.stats.compact .stat-value{font-size:1.35rem}.chart-wrap{margin-top:auto;padding-top:14px}.chart{width:100%;height:auto;overflow:visible}.grid-line{stroke:color-mix(in oklch, var(--t-ink,var(--ink)) 12%, transparent);stroke-dasharray:3 5}.bar-soft{fill:color-mix(in oklch, var(--t-strong,var(--brand)) 30%, transparent)}.bar-strong{fill:var(--t-strong,var(--brand))}.bar-val{fill:currentColor;text-anchor:middle;opacity:.75;font-size:11px;font-weight:700}.axis{fill:currentColor;text-anchor:middle;opacity:.7;font-size:11.5px;font-weight:600}.legend{opacity:.85;gap:16px;margin-top:4px;font-size:12.5px;font-weight:600;display:flex}.dot{vertical-align:-1px;border-radius:4px;width:10px;height:10px;margin-right:6px;display:inline-block}.dot.soft{background:color-mix(in oklch, var(--t-strong,var(--brand)) 30%, transparent)}.dot.strong{background:var(--t-strong,var(--brand))}.sparkline{width:100%;height:34px;margin-top:8px}.spark-line{fill:none;stroke:var(--t-strong,var(--brand));stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.spark-fill{fill:color-mix(in oklch, var(--t-strong,var(--brand)) 14%, transparent);stroke:none}.meter{background:color-mix(in oklch, var(--t-strong,var(--brand)) 20%, transparent);border-radius:999px;height:10px;margin-top:12px;overflow:hidden}.meter-fill{border-radius:inherit;background:var(--t-strong,var(--brand));height:100%;transition:width .8s var(--ease)}.share-bars{gap:14px;display:grid}.share-head{justify-content:space-between;gap:10px;font-size:13.5px;display:flex}.share-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:620;overflow:hidden}.share-track{background:var(--surface-3);border-radius:999px;height:8px;margin:6px 0 2px;overflow:hidden}.share-fill{border-radius:inherit;background:linear-gradient(90deg, var(--teal), var(--violet));height:100%}.feed{gap:2px;display:grid}.feed li{border-radius:14px;align-items:center;gap:12px;margin:0 -8px;padding:9px 8px;transition:background .15s;display:flex}.feed li.clickable{cursor:pointer}.feed li.clickable:hover{background:var(--surface-2)}.feed-main{flex:1;min-width:0;display:grid}.feed-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:620;overflow:hidden}.feed-side{justify-items:end;gap:3px;font-weight:650;display:grid}.pos{color:var(--green)}.todo{gap:8px;display:grid}.todo li{background:color-mix(in oklch, var(--surface) 70%, transparent);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;font-weight:580;display:flex}.todo li a{font-size:18px;text-decoration:none}.all-clear{opacity:.85;padding:8px 0;font-weight:600}.pill-btn{background:var(--t-strong,var(--brand));color:oklch(99% 0 0);cursor:pointer;border:0;border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:650}.avatar-chip{letter-spacing:-.02em;background:var(--t-bg);color:var(--t-strong);border-radius:34%;flex:none;place-items:center;font-weight:750;display:inline-grid}.who-cell{align-items:center;gap:11px;min-width:0;display:inline-flex}.who-text{min-width:0;display:grid}.who-text strong{font-weight:620}.btn{border:1px solid var(--line-strong);background:var(--surface);height:40px;color:var(--ink);cursor:pointer;white-space:nowrap;transition:background .15s, border-color .15s, transform .2s var(--spring), box-shadow .2s;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:13.5px;font-weight:650;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2);text-decoration:none;transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--primary);color:var(--primary-ink);box-shadow:0 8px 20px -10px color-mix(in oklch, var(--primary) 80%, transparent);border-color:#0000}.btn.primary:hover:not(:disabled){background:color-mix(in oklch, var(--primary) 88%, var(--brand))}.btn.danger{color:var(--red);border-color:color-mix(in oklch, var(--red) 35%, var(--line))}.btn.danger:hover:not(:disabled){background:color-mix(in oklch, var(--red) 8%, var(--surface))}.btn.ghost{color:var(--brand);background:0 0;border-color:#0000;height:34px;padding:0 12px}.btn.ghost:hover:not(:disabled){background:var(--brand-soft)}.icon-btn{cursor:pointer;width:40px;height:40px;color:var(--muted);background:0 0;border:0;border-radius:999px;place-items:center;font-size:20px;display:grid}.icon-btn:hover:not(:disabled){background:var(--surface);color:var(--ink)}.icon-btn:disabled{opacity:.3}.menu-btn{display:none}@media (width<=960px){.menu-btn{display:grid}}.link{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:6px 0;font-weight:600}.row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}.search-btn{background:var(--surface);min-width:min(420px,50vw);height:44px;color:var(--muted);cursor:pointer;box-shadow:var(--shadow);border:0;border-radius:999px;align-items:center;gap:10px;padding:0 8px 0 16px;display:flex}.search-btn span{text-align:left;flex:1;font-size:13.5px}.search-btn:hover{color:var(--ink-2)}@media (width<=960px){.search-btn{min-width:0}}.theme-btn{background:var(--surface);box-shadow:var(--shadow);font-size:17px}.user-menu{position:relative}.user-btn{background:var(--surface);box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:10px;padding:4px 14px 4px 4px;display:flex}.user-btn .who{text-align:left;line-height:1.2}.user-btn .who strong{font-size:13px;display:block}.user-btn .who small{color:var(--muted);font-size:11.5px}.avatar{width:36px;height:36px;color:var(--on-mint,oklch(20% .05 172));background:var(--mint);border-radius:50%;place-items:center;font-weight:750;display:grid}.menu{z-index:30;background:var(--surface);min-width:230px;box-shadow:var(--shadow-lg);animation:pop .2s var(--spring);border-radius:18px;padding:8px;position:absolute;top:calc(100% + 8px);right:0}.menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;padding:9px 12px;font-weight:550;display:block}.menu button:hover{background:var(--surface-2)}.menu-email{color:var(--muted);border-bottom:1px solid var(--line);margin-bottom:4px;padding:8px 12px;font-size:12px}.badge{--c:var(--grey);white-space:nowrap;color:color-mix(in oklch, var(--c) 80%, var(--ink));background:color-mix(in oklch, var(--c) 15%, transparent);border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 8px;font-size:12px;font-weight:650;display:inline-flex}.badge:before{content:"";background:var(--c);border-radius:50%;width:6px;height:6px}.badge.green{--c:var(--green)}.badge.amber{--c:var(--amber)}.badge.red{--c:var(--red)}.badge.blue{--c:var(--blue)}.chip{background:var(--surface-3);color:var(--muted);vertical-align:1px;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:10.5px;font-weight:700}.table-wrap{margin:0 -10px;padding:0 10px;overflow-x:auto}table{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}th{text-align:left;color:var(--muted);white-space:nowrap;border-bottom:1px solid var(--line);padding:8px 12px;font-size:12px;font-weight:650}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px}tbody tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer}tr.clickable td{transition:background .15s}tr.clickable:hover td{background:var(--surface-2)}tr.clickable:hover td:first-child{border-radius:14px 0 0 14px}tr.clickable:hover td:last-child{border-radius:0 14px 14px 0}tr.strong td,tfoot td{border-top:1px solid var(--line-strong);font-weight:700}tr.voided td,li.voided{opacity:.5;text-decoration:line-through;text-decoration-thickness:1px}td.num,th.num,.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.indent{color:var(--ink-2);padding-left:30px}.statement{margin:0;padding:0}.statement tr:not(.strong) td{border-bottom-color:color-mix(in oklch, var(--line) 55%, transparent)}.filters{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.filters .field{flex:0 280px;min-width:180px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px 16px;margin-bottom:14px;display:grid}.form-grid .wide{grid-column:1/-1}.form-grid.boxed{border-radius:var(--radius-md);background:var(--surface-2);padding:16px}.field{align-content:start;gap:6px;display:grid}.field label{color:var(--ink-2);font-size:12.5px;font-weight:650}.field input:not([type=checkbox]):not([type=file]),.field select,.field textarea,.line-row input:not([type=checkbox]),.line-row select,.palette input{background:var(--surface-2);border:1px solid #0000;border-radius:14px;width:100%;min-height:42px;padding:9px 14px;transition:border-color .15s,box-shadow .15s,background .15s}:is(.field input:not([type=checkbox]):not([type=file]),.field select,.field textarea,.line-row input:not([type=checkbox]),.line-row select,.palette input):hover{background:var(--surface-3)}:is(.field input:not([type=checkbox]):not([type=file]),.field select,.field textarea,.line-row input:not([type=checkbox]),.line-row select,.palette input):focus{background:var(--surface);border-color:var(--brand);box-shadow:var(--ring);outline:none}.card .field input:not([type=checkbox]):not([type=file]),.card .field select,.card .field textarea{background:var(--surface-2)}.field textarea{resize:vertical;min-height:80px}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--red)}.field-error{color:var(--red);font-size:12px;font-weight:550}.hint{color:var(--muted);font-size:12px}.readout{font-variant-numeric:tabular-nums;letter-spacing:-.02em;align-items:center;min-height:42px;font-size:1.25rem;font-weight:780;display:flex}.check{align-items:flex-start;gap:10px;padding:6px 0;display:flex}.check input{width:18px;height:18px;accent-color:var(--brand);margin-top:2px}.check label{font-weight:560}.checks{border-radius:var(--radius-md);background:var(--surface-2);gap:2px;padding:10px 14px;display:grid}.line-editor{border-radius:var(--radius-md);background:var(--surface-2);gap:8px;margin:4px 0 16px;padding:16px;display:grid}.line-editor .line-row input:not([type=checkbox]),.line-editor .line-row select{background:var(--surface)}.line-head,.line-row{grid-template-columns:minmax(160px,3fr) 70px 110px 80px 50px 40px;align-items:center;gap:8px;display:grid}.line-head.three,.line-row.three{grid-template-columns:minmax(180px,2fr) minmax(120px,2fr) 130px 40px}.line-head.four,.line-row.four{grid-template-columns:minmax(180px,2fr) minmax(100px,1.5fr) 110px 110px 40px}.line-head.quote,.line-row.quote{grid-template-columns:minmax(160px,2.4fr) minmax(120px,1.6fr) 70px 120px 50px 40px}.line-head.stage,.line-row.stage{grid-template-columns:minmax(180px,3fr) 90px 130px 150px 40px}.line-head{color:var(--muted);font-size:12px;font-weight:650}@media (width<=720px){.line-head{display:none}.line-row,.line-row.three,.line-row.four,.line-row.quote,.line-row.stage{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;padding-bottom:10px}:is(.line-row,.line-row.three,.line-row.four,.line-row.quote,.line-row.stage)>:first-child{grid-column:1/-1}}.balance-check{font-variant-numeric:tabular-nums;font-weight:650}.balance-check.ok{color:var(--green)}.balance-check.bad{color:var(--amber)}.error-note{background:var(--rose-bg);color:var(--rose-ink);border-radius:14px;margin:8px 0;padding:11px 14px;font-size:13.5px;font-weight:550}.ok-note{background:var(--lime-bg);color:var(--lime-ink);border-radius:14px;padding:12px 14px;font-weight:550}.banner{border-radius:18px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-weight:580;display:flex}.banner.amber{background:var(--amber-bg);color:var(--amber-ink)}.banner.grey{background:var(--surface-3);color:var(--ink-2)}.banner.green{background:var(--lime-bg);color:var(--lime-ink)}.pick-list{border:1px solid var(--line);border-radius:14px;gap:2px;max-height:260px;padding:8px 10px;display:grid;overflow:auto}.pre-line{white-space:pre-line}.mt-m{margin-top:14px}.linklike{all:unset;color:var(--brand);cursor:pointer;font-weight:600;text-decoration:underline}.linklike:focus-visible{outline:2px solid var(--brand)}.warn-text{color:color-mix(in oklch, var(--amber) 80%, var(--ink));font-weight:600}.ok-text{color:var(--green);font-weight:600}.empty{text-align:center;color:var(--muted);padding:36px 16px;font-weight:500}.empty.big{padding:90px 16px}.empty.big h1{margin-bottom:10px}.skeleton{gap:14px;padding:12px 0;display:grid}.sk-row{align-items:center;gap:12px;display:flex}.sk{background:var(--surface-3);border-radius:999px;height:12px;display:block;position:relative;overflow:hidden}.sk:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in oklch, var(--surface) 70%, transparent), transparent);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.sk-avatar{border-radius:12px;flex:none;width:34px;height:34px}.sk-num{width:70px;margin-left:auto}.sk-tile{background:var(--surface);min-height:150px;position:relative;overflow:hidden}.sk-tile:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in oklch, var(--surface-3) 80%, transparent), transparent);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.sk-tile.row-2{min-height:316px}.boot{place-items:center;min-height:100dvh;display:grid}.more{justify-content:center;padding-top:14px;display:flex}.toasts{z-index:100;gap:8px;display:grid;position:fixed;bottom:20px;right:20px}.toast{max-width:420px;box-shadow:var(--shadow-lg);background:color-mix(in oklch, var(--side-bg) 94%, transparent);color:oklch(97% 0 0);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:toast-in .35s var(--spring);border-radius:18px;padding:12px 18px;font-weight:600}.toast.error{background:color-mix(in oklch, var(--red) 92%, black)}dialog{color:var(--ink);background:0 0;border:0;padding:0}.modal{background:var(--surface);width:min(580px,100vw - 24px);max-height:calc(100dvh - 32px);box-shadow:var(--shadow-lg);border-radius:28px;flex-direction:column;display:flex;overflow:hidden}.modal.wide{width:min(900px,100vw - 24px)}.modal::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:oklch(15% .03 262/.38)}.modal[open]{animation:pop .3s var(--spring)}.modal-head{justify-content:space-between;align-items:center;padding:20px 20px 6px 26px;display:flex}.modal-head h2{letter-spacing:-.02em;font-size:1.2rem;font-weight:750}.modal-body{align-content:start;gap:10px;padding:8px 26px 18px;display:grid;overflow-y:auto}.modal-foot{background:var(--surface-2);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.palette{background:var(--surface);width:min(660px,100vw - 24px);box-shadow:var(--shadow-lg);border-radius:26px;margin-top:12vh;overflow:hidden}.palette::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:oklch(15% .03 262/.32)}.palette[open]{animation:pop .25s var(--spring)}.palette input{font-size:16.5px;border:0!important;border-bottom:1px solid var(--line)!important;min-height:60px!important;box-shadow:none!important;background:var(--surface)!important;border-radius:0!important;padding:0 22px!important}.palette ul{max-height:50vh;padding:8px;overflow-y:auto}.palette li{cursor:pointer;border-radius:14px;grid-template-columns:84px 1fr auto;align-items:center;gap:10px;padding:11px 14px;display:grid}.palette li.on{background:var(--teal-bg);color:var(--teal-ink)}.pal-group{text-transform:uppercase;letter-spacing:.06em;opacity:.65;font-size:11px;font-weight:700}.pal-title{font-weight:640}.pal-hint{opacity:.7;font-size:12.5px}.pal-empty{color:var(--muted);justify-content:center;display:flex!important}.pal-foot{color:var(--muted);background:var(--surface-2);align-items:center;gap:6px;padding:10px 16px;font-size:12px;display:flex}.tabs{background:var(--surface);box-shadow:var(--shadow);border-radius:999px;flex-wrap:wrap;gap:4px;margin-bottom:18px;padding:5px;display:inline-flex}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 16px;font-weight:650;transition:background .2s,color .2s}.tabs button:hover{color:var(--ink)}.tabs button.on{background:var(--ink);color:var(--surface)}details.more-menu{display:inline-block;position:relative}details.more-menu summary{cursor:pointer;color:var(--brand);border-radius:999px;padding:7px 12px;font-weight:650;list-style:none}details.more-menu summary::-webkit-details-marker{display:none}details.more-menu summary:hover{background:var(--brand-soft)}details.more-menu>div{z-index:10;background:var(--surface);min-width:220px;box-shadow:var(--shadow-lg);border-radius:18px;padding:8px;position:absolute;top:100%;right:0}details.more-menu>div button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;padding:9px 12px;display:block}details.more-menu>div button:hover{background:var(--surface-2)}dl.details{grid-template-columns:max-content 1fr;gap:10px 20px;font-size:13.5px;display:grid}dl.details dt{color:var(--muted);font-weight:550}dl.details dd{min-width:0;font-weight:520}.ledger-list{gap:2px;display:grid}.ledger-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.ledger-list li:last-child{border-bottom:0}.attention{gap:6px;display:grid}.attention li{background:var(--amber-bg);color:var(--amber-ink);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;font-weight:580;display:flex}.checklist{gap:8px;margin:16px 0;display:grid}.checklist li{color:var(--ink-2);padding-left:28px;position:relative}.checklist li:before{content:"✓";background:var(--teal-bg);width:20px;height:20px;color:var(--teal);border-radius:8px;place-items:center;font-size:12px;font-weight:800;display:grid;position:absolute;top:0;left:0}.thread{gap:10px;display:grid}.thread li{border-radius:18px;max-width:min(720px,94%);padding:12px 16px}.thread .from-customer{background:var(--surface-2);border-bottom-left-radius:6px;justify-self:start}.thread .from-staff{background:var(--brand-soft);border-bottom-right-radius:6px;justify-self:end}.thread .internal{background:var(--amber-bg);color:var(--amber-ink);border-bottom-right-radius:6px;justify-self:end}.thread-head{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-bottom:4px;display:flex}.thread-head strong{font-size:13px}.brand{flex-direction:column;align-items:stretch;gap:6px;padding:2px 4px 6px}.brand small{padding-left:4px}.brand-chip{background:oklch(98.5% .003 90);border-radius:16px;place-items:center;padding:10px 14px;display:grid;box-shadow:inset 0 0 0 1px oklch(100% 0 0/.6),0 6px 18px -10px oklch(0% 0 0/.5)}.brand-logo{max-width:100%;height:auto;display:block}.brand-chip .brand-logo{max-height:58px}.auth-brand{flex-direction:column;align-items:flex-start;gap:4px}.auth-logo{max-width:220px;max-height:64px}.theme-picker{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px;display:grid}.swatch{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:flex;position:relative}.swatch:hover{background:var(--surface-2)}.swatch.on{border-color:var(--brand);box-shadow:var(--ring)}.swatch:disabled{opacity:.55;cursor:not-allowed}.swatch-chip{border-radius:9px;flex:none;place-items:center;width:30px;height:30px;display:grid}.swatch-chip span{border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 2px oklch(100% 0 0/.25)}.swatch-label{font-size:13px;font-weight:640;line-height:1.2;display:grid}.swatch-label small{color:var(--muted);font-size:11px;font-weight:500}.swatch-input{opacity:0;cursor:pointer;position:absolute;inset:0}.brand-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:24px;display:grid}.brand-grid h3{margin-bottom:8px}@media (width<=900px){.brand-grid{grid-template-columns:1fr}}.logo-previews{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.logo-previews .logo-on{border:1px solid var(--line);border-radius:14px;place-items:center;height:92px;padding:12px;display:grid}.logo-previews .logo-on img{max-width:100%;max-height:64px}.logo-previews .light{background:#fff}.logo-previews .dark{background:var(--side-bg)}.suggest{border:1px dashed var(--line-strong);color:var(--ink-2);font:inherit;cursor:pointer;text-align:left;background:0 0;border-radius:999px;align-items:center;gap:8px;margin:10px 0 0;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex}.suggest:hover{background:var(--surface-2)}.suggest .dot{border-radius:50%;width:14px;height:14px;margin:0}.doc-styles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0 14px;display:grid}.doc-style{border:1px solid var(--line-strong);background:var(--surface-2);cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:16px;justify-items:start;gap:4px;padding:10px;display:grid}.doc-style:hover{background:var(--surface-3)}.doc-style.on{border-color:var(--brand);box-shadow:var(--ring);background:var(--surface)}.doc-thumb{border-radius:6px;width:100%;height:auto;margin-bottom:4px;box-shadow:0 1px 2px oklch(0% 0 0/.12),0 6px 16px -10px oklch(0% 0 0/.35)}.doc-options{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:6px;display:flex}.doc-options .check{padding:0}.colour-field{align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.colour-field input[type=color]{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:10px;width:40px;height:32px;padding:2px}.json{font:12px/1.5 var(--mono);background:var(--surface-2);border-radius:14px;max-height:50vh;padding:14px;overflow:auto}.sticky-save{background:color-mix(in oklch, var(--surface) 82%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-lg);border-radius:999px;justify-content:flex-end;padding:10px;display:flex;position:sticky;bottom:14px}.qr{background:#fff;border-radius:18px;margin:6px auto;padding:10px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:16px;display:grid}.grid-2>.card{margin-bottom:0}.stack{align-content:start;gap:16px;display:grid}.stack>.card{margin-bottom:0}}@layer pages{.auth-page{background:radial-gradient(700px 500px at 12% 8%, color-mix(in oklch, var(--mint) 35%, transparent), transparent 60%), radial-gradient(700px 520px at 92% 90%, color-mix(in oklch, var(--violet) 30%, transparent), transparent 60%), radial-gradient(500px 400px at 80% 10%, color-mix(in oklch, var(--amber-s) 22%, transparent), transparent 60%), var(--side-bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{background:color-mix(in oklch, var(--surface) 95%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:min(430px,100%);box-shadow:var(--shadow-lg);animation:pop .45s var(--spring);border-radius:32px;gap:14px;padding:34px;display:grid}.auth-card .stack{gap:12px}.auth-card h1{font-size:2rem}.auth-brand{align-items:center;gap:11px;margin-bottom:8px;display:flex}.auth-brand strong{display:block}.auth-brand span{color:var(--muted);font-size:12px}.invoice-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:18px;display:grid}.invoice-layout .side{position:sticky;top:84px}@media (width<=1100px){.invoice-layout{grid-template-columns:1fr}.invoice-layout .side{position:static}}.paper{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:oklch(22% .03 262);border-radius:var(--radius);box-shadow:var(--shadow-lg);--muted:oklch(50% .02 262);--line:oklch(91% .008 262);background:#fff;padding:clamp(22px,4vw,48px);font-size:13.5px}.paper-head{border-bottom:3px solid var(--doc-accent);justify-content:space-between;gap:20px;margin-bottom:18px;padding-bottom:18px;display:flex}.paper-head h2{font-size:1.25rem;font-weight:750}.doc-title{letter-spacing:.06em;color:var(--doc-accent);font-size:1.4rem;font-weight:820}.bill-to{margin-bottom:18px}.doc-lines{border-collapse:collapse}.doc-lines th{color:oklch(50% .02 262);border-color:oklch(88% .01 262)}.doc-lines td{border-color:oklch(93% .006 262)}.doc-lines th:not(:first-child){text-align:right}.doc-totals{border-collapse:collapse;width:min(380px,100%);margin:14px 0 0 auto}.doc-totals td{border:0;padding:6px 10px}.doc-totals tr.strong td{border-top:1px solid oklch(85% .01 262)}.pay-to{background:color-mix(in oklch, var(--doc-accent) 9%, white);border-radius:16px;gap:2px;margin-top:22px;padding:14px 16px;display:grid}.right{text-align:right}}@layer utilities{.muted{color:var(--muted)}.small{font-size:12.5px}.nowrap{white-space:nowrap}.pre{white-space:pre-line}.clamp{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}[hidden]{display:none!important}}@layer print{@media print{@page{size:A4;margin:14mm}body{background:#fff}.sidebar,.topbar,.page-header,.banner,.side,.toasts,.scrim{display:none!important}.shell{display:block}.content{max-width:none;padding:0}.invoice-layout{display:block}.paper{box-shadow:none;padding:0}}}@keyframes pop{0%{opacity:0;transform:translateY(10px)scale(.97)}}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)scale(.96)}}@keyframes shimmer{to{transform:translate(100%)}}.bento>*{animation:rise .5s var(--ease) both}.bento>:nth-child(2){animation-delay:40ms}.bento>:nth-child(3){animation-delay:80ms}.bento>:nth-child(4){animation-delay:.12s}.bento>:nth-child(5){animation-delay:.16s}.bento>:nth-child(6){animation-delay:.2s}.bento>:nth-child(n+7){animation-delay:.24s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}::view-transition-old(content){animation:vt-out .14s var(--ease) both}::view-transition-new(content){animation:vt-in .26s var(--ease) both}@keyframes vt-out{to{opacity:0;transform:translateY(-4px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
