:root{--bg:#f1f5f7;--surface:#fff;--sunk:#e6ecef;--line:#d3dce1;--ink:#12222d;--muted:#566875;--accent:#0a6a94;--accent-ink:#fff;--accent-soft:#ddeef5;--brand:#f2b705;--good:#1d7a4e;--good-soft:#dcf0e5;--warn:#8a5a00;--warn-soft:#fbebc8;--bad:#b3261e;--bad-soft:#fadcd9;--display:"Barlow Condensed", "Arial Narrow", Arial, sans-serif;--body:"Barlow", "Segoe UI", system-ui, sans-serif;--r:8px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e171d;--surface:#17232b;--sunk:#1f2e38;--line:#2c3e4a;--ink:#e8eff3;--muted:#9badb9;--accent:#58b7de;--accent-ink:#06202c;--accent-soft:#173646;--brand:#f2b705;--good:#6fd0a0;--good-soft:#173a2a;--warn:#f0c465;--warn-soft:#3d3113;--bad:#ff9a92;--bad-soft:#45201d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0e171d;--surface:#17232b;--sunk:#1f2e38;--line:#2c3e4a;--ink:#e8eff3;--muted:#9badb9;--accent:#58b7de;--accent-ink:#06202c;--accent-soft:#173646;--brand:#f2b705;--good:#6fd0a0;--good-soft:#173a2a;--warn:#f0c465;--warn-soft:#3d3113;--bad:#ff9a92;--bad-soft:#45201d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.45}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface);position:fixed;inset:0 0 auto}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{max-width:1040px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin-inline:auto}.bar{top:env(safe-area-inset-top,0px);z-index:5;background:var(--surface);border-bottom:1px solid var(--line);position:sticky}.bar .wrap{align-items:center;gap:12px;padding-block:10px;display:flex}.logo{font-family:var(--display);letter-spacing:.02em;border-left:5px solid var(--brand);background:0 0;border-top:0;border-bottom:0;border-right:0;padding-left:10px;font-size:22px;font-weight:700;line-height:1}.bar .sp{flex:1}.me{color:var(--muted);align-items:center;gap:8px;font-size:14px;display:flex}.note .wrap{padding-block:7px}main.wrap{flex-direction:column;gap:18px;padding-block:20px 48px;display:flex}h1{font-family:var(--display);text-wrap:balance;margin:0;font-size:32px;font-weight:700;line-height:1.1}h2{font-family:var(--display);letter-spacing:.02em;margin:0;font-size:20px;font-weight:600}.sub{color:var(--muted);margin:0}.label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px;font-weight:600}.tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tools input{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);flex:220px;min-width:0;padding:9px 12px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:500}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn{background:var(--accent);color:var(--accent-ink);border-radius:var(--r);border:0;padding:9px 16px;font-weight:600}.btn.ghost{color:var(--accent);border:1px solid var(--line);background:0 0}.cards{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;display:grid}.card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.card:hover{border-color:var(--accent)}.card .top{justify-content:space-between;align-items:center;gap:8px;display:flex}.card .name{font-family:var(--display);font-size:22px;font-weight:600;line-height:1.15}.card .where{color:var(--muted);font-size:14px}.card .next{flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:14px;display:flex}.unread{background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.pill{white-space:nowrap;background:var(--sunk);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.pill.good{background:var(--good-soft);color:var(--good)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.info{background:var(--accent-soft);color:var(--accent)}.prog{background:var(--sunk);border-radius:3px;height:6px;overflow:hidden}.prog i{background:var(--accent);height:100%;display:block}.num{font-variant-numeric:tabular-nums}.empty{color:var(--muted);padding:24px 0}.back{color:var(--accent);background:0 0;border:0;align-self:flex-start;padding:0;font-weight:600}.phead{flex-direction:column;gap:6px;display:flex}.phead .row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:2px;display:flex;overflow-x:auto}.tab{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;padding:10px 14px;font-weight:600}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--brand)}.panel{flex-direction:column;gap:14px;display:flex}.box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}dl{grid-template-columns:minmax(96px,auto) 1fr;gap:8px 14px;margin:0;display:grid}dt{color:var(--muted);font-size:14px}dd{overflow-wrap:anywhere;min-width:0;margin:0}.people{flex-wrap:wrap;gap:8px;display:flex}.person{align-items:center;gap:8px;font-size:14px;display:flex}.av{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.list{flex-direction:column;display:flex}.item{border-top:1px solid var(--line);align-items:center;gap:12px;min-width:0;padding:11px 0;display:flex}.item:first-child{border-top:0}.item .grow{flex:1;min-width:0}.item .t{overflow-wrap:anywhere;font-weight:500}.item .m{color:var(--muted);font-size:14px}button.item{text-align:left;background:0 0;border-bottom:0;border-left:0;border-right:0;width:100%}.headrow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.chat{flex-direction:column;gap:12px;display:flex}.msg{gap:10px;max-width:640px;display:flex}.msg.mine{flex-direction:row-reverse;align-self:flex-end}.bub{background:var(--sunk);overflow-wrap:anywhere;border-radius:12px;min-width:0;padding:8px 12px}.msg.mine .bub{background:var(--accent-soft)}.bub .who{color:var(--muted);font-size:12px;font-weight:600}.bub b{color:var(--accent);font-weight:600}.compose{gap:8px;display:flex}.compose input,.compose textarea{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);resize:vertical;flex:1;min-width:0;padding:10px 12px}.photo{border:1px solid var(--line);background:repeating-linear-gradient(45deg, var(--sunk) 0 8px, var(--surface) 8px 16px);width:92px;height:68px;color:var(--muted);border-radius:6px;place-items:center;font-size:11px;display:grid}.photos{flex-wrap:wrap;gap:8px;display:flex}.compose.wrapc{flex-wrap:wrap}.compose.wrapc input{flex:220px}.compose.wrapc .amt{flex:0 140px}select{font:inherit;color:inherit}.compose select{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);flex:200px;min-width:0;padding:10px 12px}.item.wrapi{flex-wrap:wrap}.item.wrapi .grow{flex:220px}.seg{border:1px solid var(--line);border-radius:999px;display:flex;overflow:hidden}.seg button{background:var(--surface);color:var(--muted);border:0;padding:6px 12px;font-size:13px;font-weight:600}.bar .wrap{flex-wrap:wrap}@media (width<=520px){.me{display:none}}.scroll{overflow-x:auto}table.fin{border-collapse:collapse;width:100%;min-width:460px}table.fin th,table.fin td{text-align:right;border-top:1px solid var(--line);white-space:nowrap;padding:10px 8px}table.fin th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-top:0;font-size:12px}table.fin th:first-child,table.fin td:first-child{text-align:left;padding-left:0}table.fin tr:last-child td{font-weight:600}dl.fig{grid-template-columns:1fr auto}dl.fig dd{text-align:right;font-variant-numeric:tabular-nums}.stack{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.stack textarea{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);resize:vertical;width:100%;padding:10px 12px}.stack .label{margin-bottom:6px}.rows{flex-direction:column;align-items:flex-start;gap:8px;width:100%;display:flex}.attrow{flex-wrap:wrap;gap:8px;width:100%;display:flex}.attrow select{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);padding:9px 10px}.attrow .who{flex:180px;min-width:0}.chip.att{color:var(--muted)}.chip.att.on{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}.photo{cursor:pointer;padding:0}.bub .photo{width:180px;max-width:100%;height:130px}.lightbox{z-index:30;background:#080e12db;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lightbox .big{aspect-ratio:4/3;background:repeating-linear-gradient(45deg, var(--sunk) 0 14px, var(--surface) 14px 28px);width:min(560px,100%);color:var(--ink);text-align:center;border-radius:8px;place-items:center;padding:16px;display:grid}.rev{font-family:var(--display);border:2px solid var(--ink);border-radius:4px;flex:none;place-items:center;width:34px;height:34px;font-size:20px;font-weight:700;display:grid}.old .t,.old .rev{opacity:.55;text-decoration:line-through}.check{border:2px solid var(--line);background:var(--surface);width:26px;height:26px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;padding:0;font-size:14px;display:grid}.check.on{background:var(--good);border-color:var(--good);color:var(--surface)}.toast{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);border-radius:var(--r);z-index:20;max-width:calc(100% - 32px);padding:10px 16px;font-size:14px;position:fixed;transform:translate(-50%)}:root{--bg:#eef2f7;--surface:#fff;--sunk:#e4eaf2;--line:#d5dde8;--ink:#0f284b;--muted:#56657a;--accent:#1f66b8;--accent-ink:#fff;--accent-soft:#e1edfa;--brand:#ffc332;--on-brand:#0f284b;--navy:#0f284b;--navy-2:#1e508c;--on-navy:#f3f7fc;--on-navy-muted:#a9bcd6;--navy-line:#ffffff24;--shadow:15, 40, 75;--display:"Poppins", "Segoe UI", system-ui, sans-serif;--body:"Lato", "Segoe UI", system-ui, sans-serif;--r:12px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#081425;--surface:#0f2038;--sunk:#172c4a;--line:#24395a;--ink:#eaf1fa;--muted:#9db0c9;--accent:#6db0f2;--accent-ink:#06182e;--accent-soft:#16365c;--navy:#0b1d38;--navy-2:#173e70;--shadow:0, 0, 0}}:root[data-theme=dark]{--bg:#081425;--surface:#0f2038;--sunk:#172c4a;--line:#24395a;--ink:#eaf1fa;--muted:#9db0c9;--accent:#6db0f2;--accent-ink:#06182e;--accent-soft:#16365c;--navy:#0b1d38;--navy-2:#173e70;--shadow:0, 0, 0}body{font-family:var(--body);background:var(--bg);color:var(--ink)}body:before{background:var(--navy)}h1,h2,.card .name,.logo,.tab,.btn,.chip,.seg button,.label,.pill,.unread,.back,.rev,.av{font-family:var(--display)}h1{letter-spacing:-.01em;font-size:clamp(26px,5vw,38px);font-weight:700}h2{letter-spacing:0;font-size:17px;font-weight:600}.label{letter-spacing:.09em;font-size:11px}main.wrap{gap:20px}.bar{background:var(--navy);box-shadow:0 10px 24px -14px rgba(var(--shadow), .7);border-bottom:0}.logo{color:var(--on-navy);letter-spacing:.16em;text-transform:uppercase;border:0;align-items:center;gap:12px;padding:0;font-size:12px;font-weight:600;display:flex}.logo img{width:auto;height:30px;display:block}.logo span{border-left:1px solid var(--navy-line);padding-left:12px;line-height:30px}.me{color:var(--on-navy-muted)}.seg{border-color:var(--navy-line);background:#ffffff12;padding:3px}.seg button{color:var(--on-navy-muted);background:0 0;border-radius:999px}.seg button[aria-pressed=true]{background:var(--brand);color:var(--on-brand)}.note{background:var(--sunk);color:var(--muted);font-size:13px}@media (width<=440px){.logo span{display:none}}.hero{color:var(--on-navy);background:radial-gradient(120% 150% at 100% 0%, var(--navy-2) 0%, var(--navy) 60%);box-shadow:0 26px 48px -30px rgba(var(--shadow), .7);border-radius:22px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 28px;padding:clamp(20px,4vw,34px);display:flex;position:relative;overflow:hidden}.hero.proj{align-items:center}.hero h1{color:var(--on-navy)}.htext{flex-direction:column;flex:260px;gap:6px;min-width:0;display:flex;position:relative}.eyebrow{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--brand);font-size:12px;font-weight:600}.hsub{color:var(--on-navy-muted);margin:0}.hchips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.rotor{width:270px;height:270px;fill:var(--on-navy);opacity:.07;pointer-events:none;animation:48s linear infinite spin;position:absolute;top:-56px;right:-46px}.stats{flex-wrap:wrap;gap:10px;width:100%;display:flex;position:relative}.stat{border:1px solid var(--navy-line);background:#ffffff12;border-radius:14px;flex-direction:column;flex:130px;gap:4px;padding:12px 14px;display:flex}.stat b{font-family:var(--display);font-size:30px;font-weight:700;line-height:1}.stat span{color:var(--on-navy-muted);font-size:13px}.ring{flex:none;place-items:center;width:58px;height:58px;display:grid;position:relative}.ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:4px}.ring .track{stroke:var(--sunk)}.ring .arc{stroke:var(--accent);stroke-linecap:round;animation:.9s cubic-bezier(.2,.7,.2,1) both draw}.ring b{font-family:var(--display);font-size:14px;font-weight:700;position:relative}.ring small{opacity:.7;font-size:9px;font-weight:600}.ring.big{width:104px;height:104px}.ring.big b{font-size:26px}.ring.big small{font-size:13px}.hero .ring .track{stroke:var(--navy-line)}.hero .ring .arc{stroke:var(--brand)}@media (width<=440px){.ring.big{width:84px;height:84px}.ring.big b{font-size:21px}}.cards{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px}.card{box-shadow:0 1px 2px rgba(var(--shadow), .05), 0 14px 28px -22px rgba(var(--shadow), .45);animation:.45s both rise;animation-delay:calc(var(--i,0) * 70ms);border-radius:18px;gap:14px;padding:18px;transition:transform .18s,box-shadow .18s,border-color .18s}.card:hover{border-color:var(--accent);box-shadow:0 20px 36px -22px rgba(var(--shadow), .6);transform:translateY(-3px)}.cards.still .card{animation:none}.chead{justify-content:space-between;align-items:center;gap:12px;display:flex}.ctext{flex-direction:column;gap:4px;min-width:0;display:flex}.card .name{font-size:19px;font-weight:600;line-height:1.2}.card .next{border-top:1px solid var(--line);align-items:center;padding-top:12px}.box{box-shadow:0 1px 2px rgba(var(--shadow), .05);border-radius:16px;padding:18px}.tabs{border:1px solid var(--line);background:var(--surface);border-radius:999px;gap:4px;padding:4px}.tab{border:0;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500}.tab[aria-selected=true]{background:var(--ink);color:var(--bg)}.btn{border-radius:999px;padding:10px 18px;font-size:14px;transition:transform .12s,filter .12s}.btn:hover{filter:brightness(1.08)}.btn:active{transform:scale(.97)}.btn.small{padding:7px 14px;font-size:13px}.btn.gold{background:var(--brand);color:var(--on-brand);position:relative}.back{font-size:14px}.pill{letter-spacing:.02em;padding:3px 10px;font-size:11px}.unread{background:var(--brand);color:var(--on-brand)}.av{background:var(--navy-2);color:var(--on-navy)}.tools input,.compose input,.compose textarea,.compose select,.stack textarea,.attrow select{border-radius:12px}.prog{border-radius:99px;height:8px}.prog i{background:linear-gradient(90deg, var(--accent), var(--brand));border-radius:99px}.rev{border-color:var(--accent);color:var(--accent);border-radius:8px;font-size:16px}.bub{border-radius:16px 16px 16px 4px}.msg.mine .bub{background:var(--accent);color:var(--accent-ink);border-radius:16px 16px 4px}.msg.mine .bub .who,.msg.mine .bub b{color:inherit;opacity:.85}.toast{border-radius:999px;padding:10px 18px}.hbtns{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex;position:relative}.btn.glass{color:var(--on-navy);border:1px solid var(--navy-line);background:#ffffff1a}.box>.btn{align-self:flex-start}.kpis{flex-wrap:wrap;gap:10px;display:flex}.kpi{background:var(--sunk);border-radius:12px;flex-direction:column;flex:110px;gap:2px;padding:10px 12px;display:flex}.kpi b{font-family:var(--display);font-size:22px;line-height:1.1}.kpi span{color:var(--muted);font-size:12px}.check.no{background:var(--bad-soft);border-color:var(--bad);color:var(--bad);font-weight:700}.gallery{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.gallery figure{flex-direction:column;gap:6px;min-width:0;margin:0;display:flex}.gallery .photo{aspect-ratio:4/3;border-radius:12px;width:100%;height:auto}.gallery figcaption{color:var(--muted);font-size:12px}.lightbox[hidden],.toast[hidden]{display:none}@keyframes draw{0%{stroke-dasharray:0 100}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.rotor,.card,.ring .arc{animation:none}.card,.btn{transition:none}}body{-webkit-text-size-adjust:100%;margin:0}#root{min-height:100dvh}.card{cursor:pointer;font:inherit;color:inherit}table.fin td .m{font-size:13px;font-weight:400}.hero.signin{width:100%;max-width:520px;margin-inline:auto}.hero.signin .stack{margin-top:8px}.hero.signin input{border:1px solid var(--navy-line);width:100%;color:var(--on-navy);background:#ffffff1a;border-radius:12px;padding:12px 14px;font-size:16px}.hero.signin input::placeholder{color:var(--on-navy-muted)}button.me{background:0 0;border:0}.btn:disabled{opacity:.6;cursor:default}@media (width<=520px){button.me{display:flex}}button.check{cursor:pointer}button.check:disabled{cursor:default}.box>.compose{margin-top:12px}.datefield{flex-direction:column;display:flex}.datefield input{border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:9px 12px}.compose.wide{width:100%}.chips.full{flex-basis:100%}.hero.signin form.stack{margin-top:18px}.pick{cursor:pointer;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.pick[aria-disabled=true]{opacity:.6;cursor:default}.pick input{opacity:0;cursor:inherit;font-size:0;position:absolute;inset:0}.pgrid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;margin-top:12px;display:grid}.pgrid:empty{display:none}.pgrid figure{min-width:0;margin:0}.pgrid button{border:1px solid var(--line);background:var(--sunk);cursor:zoom-in;aspect-ratio:4/3;border-radius:12px;width:100%;padding:0;display:block;overflow:hidden}.pgrid img{object-fit:cover;width:100%;height:100%;display:block}.pgrid figcaption{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;font-size:12px}.lightbox{cursor:zoom-out}.lightbox img{object-fit:contain;border-radius:8px;max-width:100%;max-height:100%}.item .full{flex-basis:100%}.item.old .pgrid{opacity:.6}.chat{max-height:60vh;margin-bottom:12px;overflow-y:auto}.compose.wrapc input[type=date]{flex:0 160px}.acts{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;margin-top:4px;font-size:13px;display:flex}.acts button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:13px;font-weight:600;text-decoration:underline}.acts button:hover{color:var(--ink)}.grow>.compose,.bub>.compose{width:100%}.eform{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;width:100%;margin-top:10px;display:grid}.eform label{flex-direction:column;gap:4px;min-width:0;display:flex}.eform .wide{grid-column:1/-1}.eform input,.eform select,.eform textarea{border:1px solid var(--line);background:var(--bg);resize:vertical;border-radius:12px;width:100%;padding:10px 12px;font-size:16px}.eform .hbtns,.box>.hbtns{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.item .eform{flex-basis:100%;margin-top:0}.hchips{align-items:center}table.fin td .acts{margin-top:2px}
