:root{--bg: #0b0b0c;--card: #161618;--card2: #1f1f22;--line: #2a2a2e;--text: #f4f4f5;--muted: #8e8e93;--accent: #3e6ae1;--ok: #2fb36d;--bad: #e5484d;--warn: #f2a43a;--royal: #c9a24a;color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){--bg: #f2f2f4;--card: #ffffff;--card2: #f4f4f6;--line: #e3e3e8;--text: #111113;--muted: #6e6e73;color-scheme:light}}:root[data-theme=light]{--bg: #f2f2f4;--card: #ffffff;--card2: #f4f4f6;--line: #e3e3e8;--text: #111113;--muted: #6e6e73;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg);color:var(--text)}body{min-height:100dvh}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}input{font:inherit;color:var(--text)}.app{max-width:560px;margin:0 auto;padding:env(safe-area-inset-top) 16px calc(160px + env(safe-area-inset-bottom))}body:before{content:"";position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top);background:var(--bg);z-index:40}.brand-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0 4px}.brand-mark{display:flex;align-items:center;gap:10px}.brand-mark img.r{width:34px;height:34px;border-radius:8px}.brand-mark img.word{height:16px}.brand-mark .one{font-weight:700;font-size:15px;color:#e11d2a;letter-spacing:.02em}@media(prefers-color-scheme:dark){.brand-mark img.word{filter:invert(1) hue-rotate(180deg)}}.today-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 0}.today-strip button{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px;text-align:left;color:var(--text)}.today-strip b{display:block;font-size:20px;font-variant-numeric:tabular-nums}.today-strip span{font-size:12px;color:var(--muted)}.punch-btns{display:flex;gap:8px}.punch-btns button:disabled{opacity:.45}.muted{color:var(--muted)}.small{font-size:13px}.tiny{font-size:12px}.late{color:var(--bad)}.demo-bar{position:sticky;top:0;z-index:5;margin:0 -16px;padding:6px 16px;background:var(--warn);color:#000;font-size:12px;font-weight:600;text-align:center}.login{min-height:100dvh;display:grid;place-content:center;text-align:center;gap:8px;padding:24px}.brand{font-size:28px;font-weight:600;letter-spacing:-.02em}.home-head{display:flex;justify-content:space-between;align-items:center;padding:10px 0 12px}.home-head h1{margin:4px 0 0;font-size:28px;font-weight:600;letter-spacing:-.02em}.avatar{width:42px;height:42px;border-radius:50%;background:var(--card);display:grid;place-items:center;color:var(--muted)}.hero{background:linear-gradient(160deg,var(--card2),var(--card));border-radius:22px;padding:20px;cursor:pointer;border:1px solid var(--line)}.hero-top{display:flex;justify-content:space-between;align-items:center}.hero-title{font-size:22px;font-weight:600;margin:16px 0 6px;letter-spacing:-.01em;line-height:1.2}.hero-sub{color:var(--muted);font-size:14px}.hero-actions{display:flex;gap:22px;margin-top:20px}.eta{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.eta.late{color:var(--bad);font-weight:600}.rb{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:var(--text)}.rb-icon{width:52px;height:52px;border-radius:50%;background:var(--card2);border:1px solid var(--line);display:grid;place-items:center}.rb-label{font-size:12px;color:var(--muted)}.rb:disabled{opacity:.4}.lvl{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--card2);color:var(--muted);border:1px solid var(--line);white-space:nowrap}.lvl.royal{color:#1a1305;background:var(--royal);border-color:var(--royal)}.lvl.key{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.queued{margin-top:12px;font-size:13px;color:var(--warn);display:flex;gap:6px;align-items:center}.section{font-size:15px;font-weight:600;margin:28px 0 8px;display:flex;gap:8px}.empty{color:var(--muted);font-size:14px;margin:4px 0}.row{width:100%;display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line);text-align:left}.row-icon{width:40px;height:40px;border-radius:12px;background:var(--card);display:grid;place-items:center;color:var(--muted);flex:none}.row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.row-title{font-size:15px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-sub{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none}.bar{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:8px;padding:12px 0;background:var(--bg)}.bar-title{flex:1;font-weight:600;font-variant-numeric:tabular-nums}.icon-btn{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;margin-left:-8px}.card{background:var(--card);border-radius:20px;padding:18px;margin-top:12px;border:1px solid var(--line)}.title{font-size:22px;font-weight:600;margin:6px 0 8px;letter-spacing:-.01em;line-height:1.2}.sub{color:var(--muted);font-size:14px;line-height:1.5}.eq-title{font-size:17px;font-weight:600}.fault{margin-top:10px;padding:10px 12px;background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn);border-radius:12px;font-size:13px;display:flex;gap:6px;align-items:center}.label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:20px 0 10px;display:flex;gap:6px}.cap-row{display:flex;gap:8px}.capture{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:12px;background:var(--card2);border:1px dashed var(--line);font-size:14px}.capture.has{border-style:solid;border-color:color-mix(in srgb,var(--ok) 60%,transparent)}.count{background:var(--ok);color:#fff;font-size:11px;border-radius:999px;padding:1px 7px}.thumbs{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.thumb{position:relative;width:64px;height:64px;border-radius:10px;overflow:hidden;background:var(--card2)}.thumb img,.thumb video{width:100%;height:100%;object-fit:cover}.thumb.pending{opacity:.6}.thumb-badge{position:absolute;right:3px;bottom:3px;background:var(--warn);color:#000;border-radius:6px;padding:1px 3px;display:grid}.progress{height:4px;background:var(--card2);border-radius:4px;overflow:hidden;margin-bottom:4px}.progress span{display:block;height:100%;background:var(--ok);transition:width .3s}.step{padding:14px 0;border-bottom:1px solid var(--line)}.step:last-of-type{border-bottom:0}.step-text{font-size:15px;line-height:1.4}.step.pass .step-text{color:var(--muted)}.tags{display:flex;gap:6px;margin-top:6px}.tag{font-size:11px;padding:2px 7px;border-radius:6px;background:var(--card2);color:var(--muted)}.tag.crit{color:var(--bad);background:color-mix(in srgb,var(--bad) 12%,transparent)}.tag.safe{color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.reading{display:flex;align-items:center;gap:10px;margin-top:10px}.reading input{width:120px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--card2);font-size:16px}.reading input.bad{border-color:var(--bad);color:var(--bad)}.step-actions{display:flex;gap:8px;margin-top:10px;align-items:center;flex-wrap:wrap}.chip{padding:8px 14px;border-radius:999px;border:1px solid var(--line);font-size:14px}.chip.on{background:var(--text);color:var(--bg);border-color:var(--text)}.chip.on.pass{background:var(--ok);border-color:var(--ok);color:#fff}.chip.on.fail{background:var(--bad);border-color:var(--bad);color:#fff}.chip.big{display:block;width:100%;text-align:left;margin-bottom:8px;padding:12px 16px;border-radius:12px}.dl{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.dl:last-child{border-bottom:0}.dl-main{flex:1;min-width:0}.dl-title{font-weight:500}.dl-caps{display:flex;flex-direction:column;gap:6px}.field{width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--line);background:var(--card2);margin-bottom:8px;font-size:16px}.sig{position:relative;height:160px;border-radius:14px;background:#fff;overflow:hidden;touch-action:none}.sig canvas{width:100%;height:100%;display:block}.sig-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#9a9a9f;font-size:14px;pointer-events:none}.sig-clear{position:absolute;right:10px;top:8px;color:#3e6ae1}.footer{position:fixed;left:0;right:0;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--bg) 30%);display:flex;flex-direction:column;align-items:center;gap:6px;max-width:560px;margin:0 auto}.primary{background:var(--accent);color:#fff;font-weight:600;padding:15px 22px;border-radius:14px;font-size:16px}.primary.wide{width:100%}.primary.blocked{background:var(--card2);color:var(--text);border:1px solid var(--line)}.primary:disabled{opacity:.45}.link{color:var(--accent);padding:8px;font-size:14px}.done{width:100%;padding:15px;border-radius:14px;background:color-mix(in srgb,var(--ok) 14%,var(--card));color:var(--ok);display:flex;gap:8px;justify-content:center;font-weight:600}.done.fail{background:color-mix(in srgb,var(--bad) 14%,var(--card));color:var(--bad)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:20;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:560px;background:var(--card);border-radius:22px 22px 0 0;padding:10px 18px calc(18px + env(safe-area-inset-bottom));max-height:85dvh;overflow:auto}.sheet-grip{width:40px;height:5px;border-radius:3px;background:var(--line);margin:0 auto 12px}.sheet h3{margin:4px 0 8px;font-size:19px}.gaps{padding-left:18px;margin:12px 0 18px;line-height:1.6}.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translate(-50%);background:var(--text);color:var(--bg);padding:10px 16px;border-radius:12px;font-size:14px;z-index:30;max-width:calc(100% - 32px)}.role-line{margin:-10px 0 14px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.stats>div,.stats>button{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;font:inherit;color:inherit}.stats>button{cursor:pointer}.stats>button.on{border-color:var(--accent, #2f6fed);box-shadow:0 0 0 1px var(--accent, #2f6fed) inset}.stats b{font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}.stats span{font-size:11px;color:var(--muted)}.stats span:first-letter{text-transform:uppercase}.stats .late b{color:var(--bad)}.lvl.urgent{color:#fff;background:var(--bad);border-color:var(--bad)}.row-sub.warn{color:var(--warn)}.wide-btn{width:100%;justify-content:center;margin-top:14px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.toggle{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:12px;margin:4px 0 12px;font-size:14px}.toggle .dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);flex:none}.toggle.on{border-color:var(--bad)}.toggle.on .dot{background:var(--bad);border-color:var(--bad)}.chip .hint{display:block;font-size:12px;opacity:.7;margin-top:2px}.field.bad{border-color:var(--bad)}.field.check{border-color:#e0a100;background:#e0a10014}.pick{display:block;width:100%;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);font-size:14px}.bill{margin-top:8px}.bill-img{width:100%;max-height:50dvh;object-fit:contain;border-radius:12px;background:var(--card2)}.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:12px 0;font-size:14px}.kv dt{color:var(--muted)}.kv dd{margin:0}.visits{margin-top:14px;display:flex;flex-direction:column;gap:6px;font-size:13px;border-top:1px solid var(--line);padding-top:12px}.cust-login{max-width:380px;margin:0 auto;gap:12px;text-align:left}.cust-login .brand{font-size:32px}.big-input{font-size:20px;letter-spacing:.02em}.big-input.code{letter-spacing:.5em;text-align:center;font-variant-numeric:tabular-nums}.linkish{padding:0;text-align:left}.machines{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.machine{display:flex;flex-direction:column;gap:6px;text-align:left;padding:14px;border-radius:16px;background:var(--card);border:1px solid var(--line);min-width:0}.m-name{font-weight:600;font-size:15px;line-height:1.25}.pill{align-self:flex-start;font-size:11px;padding:3px 8px;border-radius:999px;background:var(--card2);color:var(--muted)}.pill.ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent)}.track{width:100%;text-align:left;padding:14px;border-radius:16px;background:var(--card);border:1px solid var(--line);margin-bottom:8px;display:flex;flex-direction:column;gap:8px}.track-top{display:flex;justify-content:space-between;gap:8px}.track-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.track-bar span{height:4px;border-radius:2px;background:var(--card2)}.track-bar span.on{background:var(--accent)}.danger{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--card))}.danger b{color:var(--bad)}.check{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.4}.check input{width:22px;height:22px;margin-top:1px;accent-color:var(--ok);flex:none}textarea.field{resize:vertical;font:inherit}.timeline{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:14px}.timeline li{display:flex;flex-direction:column;padding-left:26px;position:relative;color:var(--muted)}.timeline li.on{color:var(--text);font-weight:500}.tl-dot{position:absolute;left:0;top:3px;width:14px;height:14px;border-radius:50%;border:2px solid var(--line)}.timeline li.on .tl-dot{background:var(--accent);border-color:var(--accent)}.eq-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}a.chip.big{text-decoration:none;color:var(--text)}.tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:4px;padding:8px 16px calc(8px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);z-index:6}.tabbar button{flex:1;max-width:160px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--muted);padding:4px}.tabbar button.on{color:var(--accent)}a.row{text-decoration:none;color:var(--text)}.two-stat{grid-template-columns:1fr 1fr}.two-stat span{order:-1}.two-stat b{font-size:20px}.qty{display:flex;align-items:center;gap:10px}.qty button{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);font-size:18px}.statement .st-head{display:flex;justify-content:space-between;gap:16px;margin:12px 0}.table-wrap{overflow-x:auto}.st-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.st-table th,.st-table td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.st-table .num{text-align:right}.st-table .total td{font-weight:600;border-top:2px solid var(--text)}@media print{.no-print,.demo-bar,.toast,.tabbar{display:none!important}body,.app{background:#fff!important;color:#000!important}.st-table th,.st-table td{border-color:#bbb;color:#000}}@media(max-width:520px){.st-table th:nth-child(3),.st-table td:nth-child(3){display:none}.st-table th,.st-table td{padding:8px 4px;font-size:12px}}.segment{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:3px;margin-bottom:14px}.segment button{padding:9px;border-radius:9px;font-size:14px;color:var(--muted)}.segment button.on{background:var(--card2);color:var(--text);font-weight:600}.kvrow{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;text-decoration:none;color:var(--text)}.kvrow span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.brief{white-space:pre-wrap;line-height:1.5;font-size:15px}.note{background:var(--card2);padding:8px 10px;border-radius:10px}.lvl.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}.tag{font-size:11px;font-weight:700;color:var(--text);letter-spacing:.02em}.timeline.compact{gap:8px;margin-top:6px}.thumb .tiny{position:absolute;inset:auto 0 0 0;background:#0009;color:#fff;padding:2px 4px}.mini-seg{display:flex;gap:2px;background:var(--line);border-radius:8px;padding:2px}.mini-seg button{border:0;background:none;padding:4px 8px;border-radius:6px;font-size:12px;color:inherit}.mini-seg button.on{background:var(--card);font-weight:600}.kpi-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.kpi-main .big{display:block;font-size:24px;margin:2px 0}.progress{height:6px;background:var(--line);border-radius:3px;margin-top:6px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent,#1f6feb)}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.kpi-grid div{display:flex;flex-direction:column}.kpi-grid b{font-size:16px}.kpi-grid span{font-size:11px;opacity:.7;line-height:1.2}@media(max-width:420px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:8px 0}.wide-btn{width:100%;justify-content:center;margin:8px 0}.st-table.team tr{cursor:pointer}.qty{display:flex;align-items:center;gap:8px}.qty button{width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:none;font-size:18px;color:inherit}.brief{white-space:pre-wrap}.chip{text-decoration:none}.stepper{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:14px}.stepper div{display:flex;flex-direction:column;gap:6px;font-size:10.5px;color:var(--muted);line-height:1.2}.stepper div span{height:4px;border-radius:2px;background:var(--card2)}.stepper div.on{color:var(--text)}.stepper div.on span{background:var(--accent)}.card.next{border-width:1.5px}.card.next.key{border-color:var(--accent)}.card.next.ok{border-color:color-mix(in srgb,var(--ok) 60%,transparent)}.next-title{font-size:18px;font-weight:600}.next-text{color:var(--muted);margin:4px 0 12px}.report{padding:10px 0;border-bottom:1px solid var(--line)}.report:last-of-type{border-bottom:0}.report-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}.report-k{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:8px}.report p{margin:2px 0 0}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.photo-grid a{position:relative;display:block;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--card2)}.photo-grid img{width:100%;height:100%;object-fit:cover}.photo-grid span{position:absolute;left:4px;bottom:4px;font-size:10px;background:#0009;color:#fff;padding:1px 6px;border-radius:6px}.estimate .est-line{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px;border-bottom:1px solid var(--line)}.estimate .est-line b{white-space:nowrap;font-weight:500}.est-total{display:flex;justify-content:space-between;padding:4px 0;font-size:14px;color:var(--muted)}.est-total.big{color:var(--text);font-size:18px;padding:8px 0 14px}.danger-btn{background:var(--bad)}.day-strip{display:flex;gap:6px;overflow-x:auto;padding:4px 0 10px;scrollbar-width:none}.day{flex:0 0 52px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;border-radius:12px;border:1px solid var(--line);background:var(--card2);color:var(--text)}.day span{font-size:11px;color:var(--muted)}.day b{font-size:17px}.day.on{background:var(--accent);border-color:var(--accent);color:#fff}.day.on span{color:#fff}.day:disabled{opacity:.35}.time-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.time{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--card);font-size:17px;font-weight:600;color:var(--text)}.time .tiny{font-weight:400;color:var(--muted)}.time:disabled{opacity:.4}.stars{display:flex;gap:6px;justify-content:center;margin:8px 0 14px}.stars button{font-size:36px;color:var(--line);line-height:1}.stars button.on{color:var(--warn)}.thread{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow-y:auto;padding:2px}.upd{display:flex;flex-direction:column;font-size:13px;color:var(--muted);padding:2px 0 2px 10px;border-left:2px solid var(--line)}.upd time,.bubble time{font-size:10.5px;opacity:.7;margin-top:2px}.bubble{align-self:flex-start;max-width:82%;display:flex;flex-direction:column;background:var(--card2);padding:8px 12px;border-radius:14px 14px 14px 4px;font-size:14px}.bubble.mine{align-self:flex-end;background:var(--accent);color:#fff;border-radius:14px 14px 4px}.bubble img{max-width:100%;border-radius:8px;margin-top:6px}.composer{display:flex;gap:6px;align-items:center;margin-top:10px}.composer .field{margin:0;flex:1}.composer .primary{padding:12px 14px;font-size:14px}.composer .capture{padding:10px}.mode-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mode-pick button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border-radius:14px;border:1.5px solid var(--line);background:var(--card2);text-align:left;color:var(--text)}.mode-pick button span{font-size:12px;color:var(--muted)}.mode-pick button.on{border-color:var(--accent)}.job .card{margin-top:10px}.fab{position:fixed;right:max(16px,calc(50% - 264px));bottom:calc(92px + env(safe-area-inset-bottom));z-index:15;width:58px;height:58px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;box-shadow:0 6px 18px #00000047}.asst-head{display:flex;justify-content:space-between;align-items:center}.asst-log{display:flex;flex-direction:column;gap:8px;max-height:46dvh;overflow-y:auto;margin:6px 0 10px}.asst-ai{display:flex;flex-direction:column;gap:8px}.pcard{border:1.5px solid var(--accent);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:3px;background:var(--card2)}.pcard.done{border-color:color-mix(in srgb,var(--ok) 60%,transparent)}.pcard.cancelled{opacity:.55;border-color:var(--line)}.pcard-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.pcard-actions .primary{padding:10px 18px;font-size:15px}.ok-text{color:var(--ok)}.asst-cap{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}.rec{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 6px;border-radius:14px;border:1px solid var(--line);background:var(--card2);font-size:13px;color:var(--text)}.rec:disabled{opacity:.4}.rec.on{grid-column:span 1;border-color:var(--bad);color:var(--bad)}.rec-dot{width:12px;height:12px;border-radius:50%;background:var(--bad);animation:blink 1s infinite}@keyframes blink{50%{opacity:.2}}.row.appr{cursor:pointer;align-items:flex-start}.row.appr input{width:22px;height:22px;margin-top:2px;accent-color:var(--accent);flex:none}.row.appr.on{background:color-mix(in srgb,var(--accent) 8%,transparent)}.row-sub.wrap{white-space:normal}.appr-bar{padding-right:76px!important;position:sticky;bottom:calc(80px + env(safe-area-inset-bottom));display:flex;gap:8px;align-items:center;padding:10px;margin-top:8px;background:var(--card);border:1px solid var(--line);border-radius:14px;z-index:5}.appr-bar .primary{padding:11px 16px;font-size:15px}.card.punch{margin-top:4px}.punch-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.punch-row .primary{padding:13px 20px}.punch-row .primary.out{background:var(--card2);color:var(--text);border:1px solid var(--line)}.punch-foot{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.warn-text{color:var(--warn)}.myleave{margin-top:10px}.date-mini{width:auto;margin:0;padding:8px 10px;font-size:14px}.bill-img{width:100%;max-height:45dvh;object-fit:contain;border-radius:12px;background:var(--card2)}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 14px}@media(min-width:560px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}.tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:16px 14px 14px;min-height:118px;border-radius:20px;background:var(--card);border:1px solid var(--line);color:var(--text);cursor:pointer;box-shadow:0 1px #00000005,0 6px 18px -12px color-mix(in srgb,var(--hue) 60%,transparent);transition:transform .12s ease}.tile:active{transform:scale(.97)}.tile-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;margin-bottom:6px;background:color-mix(in srgb,var(--hue) 14%,var(--card))}.tile-label{font-weight:650;font-size:16px}.tile-hint{font-size:12px;color:var(--muted);line-height:1.3}.tile-badge{position:absolute;top:12px;right:12px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:var(--hue);color:#fff;font-size:12px;font-weight:700}.dash-strip{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 4px;padding:14px;border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,#5b5bd6 16%,var(--card)),var(--card));border:1px solid var(--line);color:var(--text);text-align:left;cursor:pointer}.dash-strip.loading{display:block;cursor:default}.dash-strip>div{display:flex;flex-direction:column;gap:2px;min-width:0}.dash-strip b{font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.dash-list{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:10px 0}.dash-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);font-size:14px}.dash-row:last-child{border-bottom:none}.dash-val{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.dash-val b{font-variant-numeric:tabular-nums}.section-head{position:sticky;top:env(safe-area-inset-top);z-index:5;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:10px 0 12px;margin:0 0 6px;background:var(--bg)}.section-head .back{width:40px;height:40px;border-radius:50%;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;color:var(--text)}.section-title{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:650;font-size:18px}.center{text-align:center}.rich-li{padding-left:2px;margin:3px 0}.rich-p+.rich-p,.rich-li+.rich-p{margin-top:6px}.pay-btn{margin-top:2px;padding:6px 14px;border-radius:999px;border:0;background:var(--accent, #0a7);color:#fff;font-weight:600;font-size:13px;cursor:pointer}.pay-btn:disabled{opacity:.5;cursor:default}.plan-nudge{margin:8px 0 4px;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--warn) 15%,transparent)}.agent-item{border-top:1px solid var(--line, #e5e7eb)}.agent-item.help{background:color-mix(in srgb,#e11d48 6%,transparent)}.agent-head{display:flex;width:100%;gap:8px;align-items:center;justify-content:space-between;text-align:left;background:none;border:0;padding:10px 0;color:inherit;font:inherit}.agent-head .lvl{white-space:normal;text-align:right;max-width:45%}.agent-body{padding:0 0 12px;display:grid;gap:8px}.by-sales .row.on{background:color-mix(in srgb,var(--accent, #2f6fed) 8%,transparent)}.appr-changes,.appr-reason,.appr-lines{display:grid;gap:2px;margin-top:4px;font-size:13px}.appr-changes span{font-weight:600}.appr-changes .up{color:#b45309}.appr-changes .down{color:#15803d}.appr-reason span{color:var(--muted, #6b7280);font-style:italic}.appr-lines span{font-variant-numeric:tabular-nums}.appr-lines .link{background:none;border:0;padding:0;color:var(--accent, #2f6fed);font:inherit;text-align:left}.tabs-scroll{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:12px 0;padding-bottom:2px}.tabs-scroll::-webkit-scrollbar{display:none}.tabs-scroll button{flex:0 0 auto;border:1px solid var(--line, #e5e7eb);background:var(--card, #fff);color:inherit;border-radius:999px;padding:8px 14px;font:inherit;font-size:14px}.tabs-scroll button.on{background:var(--ink, #111);color:#fff;border-color:transparent}.statement .row-side{text-align:right}@media print{.app>*:not(main),.tabs-scroll,.chips,.fab,header{display:none!important}}.plate{--steel: #262d34;--steel-hi: #313941;--plate-ink: #eef1f3;--plate-muted: #9aa4ad;--rumooz: #d9262e;margin:10px -4px 0;padding:14px 16px 6px;border-radius:18px;color:var(--plate-ink);background:repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px),linear-gradient(180deg,var(--steel-hi),var(--steel));box-shadow:inset 0 1px #ffffff14,inset 0 -1px #00000059}.plate-top{display:flex;align-items:center;justify-content:space-between}.plate-mark{display:flex;align-items:center;gap:9px}.plate-mark img{width:30px;height:30px;border-radius:7px}.plate-mark .word{font-family:Archivo,system-ui,sans-serif;font-stretch:75%;font-weight:700;font-size:17px;letter-spacing:.01em}.plate-mark .one{font-family:Archivo,system-ui,sans-serif;font-stretch:75%;font-weight:800;font-size:17px;color:var(--rumooz);letter-spacing:.01em}.plate-me{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--plate-ink);background:#ffffff12;border:1px solid rgba(255,255,255,.1)}.plate-date{margin:18px 0 2px;font-size:13px;color:var(--plate-muted)}.plate-hello{margin:0 0 14px;font-family:Archivo,system-ui,sans-serif;font-stretch:78%;font-weight:700;font-size:34px;line-height:1.02;letter-spacing:-.005em}.plate-next{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.1)}.plate-next li+li{border-top:1px solid rgba(255,255,255,.07)}.plate-next button{width:100%;display:flex;align-items:baseline;gap:10px;padding:12px 0;text-align:left;color:var(--plate-ink)}.plate-next b{min-width:1.6ch;font-family:Archivo,system-ui,sans-serif;font-stretch:75%;font-weight:800;font-size:24px;color:#ff4a50;font-variant-numeric:tabular-nums;line-height:1}.plate-next span{flex:1;font-size:15px}.plate-next svg{align-self:center;opacity:.5}.plate-next button:active{opacity:.7}.plate-next button:focus-visible,.plate-me:focus-visible{outline:2px solid #ff4a50;outline-offset:2px;border-radius:6px}.home .tiles{gap:10px;margin-top:14px}.home .tile{min-height:0;padding:14px 12px 12px;border-radius:14px;box-shadow:none;gap:2px}.home .tile-icon{width:38px;height:38px;border-radius:10px;margin-bottom:8px}.home .tile-label{font-size:15px}.home .tile-hint{font-size:12px}.home .tile-badge{top:10px;right:10px;background:#d9262e}.home-tip{margin:6px 4px 0;font-size:13px;line-height:1.45;color:var(--muted);max-width:46ch}@media(prefers-reduced-motion:reduce){.tile{transition:none}}.two>*{min-width:0}.two input[type=date]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:44px}.signin{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.signin-plate{padding:calc(env(safe-area-inset-top) + 56px) 28px 36px;color:#eef1f3;background:repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px),linear-gradient(180deg,#313941,#232a31);box-shadow:inset 0 -1px #00000059}.signin-plate img{width:56px;height:56px;border-radius:13px;display:block}.signin-plate h1{margin:22px 0 10px;font-family:Archivo,system-ui,sans-serif;font-stretch:75%;font-weight:800;font-size:44px;line-height:.95;letter-spacing:-.005em}.signin-plate h1 b{color:#ff4a50;font-weight:800}.signin-plate p{margin:0;max-width:30ch;font-size:16px;line-height:1.45;color:#aeb7bf}.signin-body{flex:1;width:100%;max-width:460px;margin:0 auto;padding:32px 28px calc(env(safe-area-inset-bottom) + 32px);display:flex;flex-direction:column;gap:14px}.signin-lead{margin:0;font-size:16px;line-height:1.5;color:var(--text)}.signin-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:54px;border-radius:12px;background:var(--text);color:var(--bg);font-weight:600;font-size:17px}.signin-btn svg{background:#fff;padding:2px;border-radius:2px;width:22px;height:22px}.signin-btn:active{opacity:.85}.signin-btn:focus-visible{outline:3px solid #ff4a50;outline-offset:3px}.signin-note{margin:4px 0 0;font-size:14px;color:var(--muted)}.signin-fine{margin:auto 0 0;padding-top:24px;font-size:12px;line-height:1.5;color:var(--muted);max-width:40ch}.board{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 14px}.board-cell{--tone: var(--accent);text-align:left;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 11px 9px;display:flex;flex-direction:column;gap:2px;color:var(--text);position:relative;overflow:hidden;min-height:64px}.board-cell:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--tone);opacity:.85}.board-cell b{font-size:24px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums}.board-cell span{font-size:11.5px;color:var(--muted);line-height:1.25}.board-cell.bad{--tone: var(--bad)}.board-cell.bad:not(.zero) b{color:var(--bad)}.board-cell.warn{--tone: var(--warn)}.board-cell.warn:not(.zero) b{color:var(--warn)}.board-cell.good{--tone: var(--ok)}.board-cell.info{--tone: var(--accent)}.board-cell.mute{--tone: var(--muted)}.board-cell.zero b{color:var(--muted);opacity:.6}.board-cell.on{border-color:var(--tone);background:color-mix(in srgb,var(--tone) 12%,var(--card))}.link-btn{margin-left:auto;background:none;border:0;color:var(--accent);font-size:13px;font-weight:500;padding:0 0 0 10px}h2.section:has(.link-btn){display:flex;align-items:baseline;gap:6px}.load{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.load-row{display:grid;grid-template-columns:minmax(0,9.5em) 1fr auto;gap:10px;align-items:center;background:none;border:0;border-radius:10px;padding:7px 6px;color:var(--text);text-align:left}.load-row.on{background:color-mix(in srgb,var(--accent) 12%,transparent)}.load-name{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.load-bar{height:6px;border-radius:3px;background:var(--card2);overflow:hidden}.load-bar i{display:block;height:100%;background:var(--accent);border-radius:3px}.load-n{font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.load-n em{font-style:normal;color:var(--bad);font-size:12px}.trail{list-style:none;display:flex;padding:0;margin:10px 0 12px;gap:0}.trail li{flex:1;font-size:11px;color:var(--muted);display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;position:relative}.trail li i{width:12px;height:12px;border-radius:50%;background:var(--card2);border:2px solid var(--line);z-index:1}.trail li+li:before{content:"";position:absolute;top:6px;right:50%;width:100%;height:2px;background:var(--line)}.trail li.done i{background:var(--ok);border-color:var(--ok)}.trail li.done+li:before,.trail li.done+li.now:before{background:var(--ok)}.trail li.now{color:var(--text);font-weight:600}.trail li.now i{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 25%,transparent)}.stage-dot.s-0{color:var(--accent)}.stage-dot.s-1{color:var(--warn)}.stage-dot.s-2{color:#a78bfa}.stage-dot.s-3{color:var(--ok)}.asst-cap.small-cap{margin-top:8px}.asst-cap.small-cap .rec{padding:6px 10px;font-size:13px}.coll-tot{margin:10px 0 12px}.coll-tot div{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.coll-tot b{font-size:18px}.row.static{cursor:default}.row.static .row-sub.warn{white-space:normal}.dboard{position:relative;left:50%;transform:translate(-50%);width:calc(100vw - 24px);max-width:1600px;margin-top:8px}.dboard.dragging{user-select:none;-webkit-user-select:none}.dboard-days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:none}.dday{flex:none;display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:14px;background:var(--card);border:1px solid var(--line);color:var(--text);font-size:15px;font-weight:500;min-height:46px}.dday b{font-size:12px;background:var(--card2);color:var(--muted);border-radius:999px;padding:2px 8px}.dday.on{background:var(--accent);border-color:var(--accent);color:#fff}.dday.on b{background:#ffffff40;color:#fff}.dday.drop{outline:3px dashed var(--accent);outline-offset:2px;transform:scale(1.06)}.dboard-cols{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.dcol{flex:0 0 min(300px,84vw);scroll-snap-align:start;background:var(--card2);border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;max-height:calc(100dvh - 230px);transition:border-color .15s,box-shadow .15s}.dcol.warn{border-color:color-mix(in srgb,var(--warn) 45%,var(--line))}.dcol.mute{opacity:.85}.dcol.over{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}.dcol header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:12px 14px 8px}.dcol header b{font-size:16px}.dcol header span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dcol-body{overflow-y:auto;padding:4px 10px 12px;display:flex;flex-direction:column;gap:8px;min-height:90px}.dcol-empty{color:var(--muted);font-size:13px;text-align:center;padding:18px 0;margin:0;border:1px dashed var(--line);border-radius:12px}.dcard{display:flex;align-items:stretch;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}.dcard.ghosted{opacity:.3}.dhandle{flex:none;width:34px;display:grid;place-items:center;color:var(--muted);font-size:18px;letter-spacing:-3px;cursor:grab;touch-action:none;background:color-mix(in srgb,var(--card2) 70%,transparent);border-right:1px solid var(--line)}.dhandle:active{cursor:grabbing;color:var(--accent)}.dcard-body{flex:1;min-width:0}.dfloat{position:fixed;z-index:50;pointer-events:none;box-shadow:0 18px 40px #00000059;transform:rotate(1.5deg) scale(1.03);border-color:var(--accent)}.dslot{height:6px;border-radius:6px;background:var(--accent);margin:2px 0;animation:dslot .6s ease-in-out infinite alternate}@keyframes dslot{0%{opacity:.45}to{opacity:1}}.pcard{width:100%;text-align:left;display:flex;flex-direction:column;gap:3px;padding:10px 12px;color:var(--text);background:none;border:0}.pcard-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:18px}.pcard-top .lvl{font-size:10px;padding:2px 7px}.pcard-title{font-weight:600;font-size:15px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pcard-sub{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-icon.seq{font-weight:700;font-size:16px;color:var(--accent)}@media(min-width:900px){.dcol{flex-basis:280px}.dcol-body{max-height:none}}.mchart svg{width:100%;height:auto;display:block;margin-top:6px}.mchart .axis{stroke:var(--line);stroke-width:1}.mchart .bar.a{fill:var(--accent)}.mchart .bar.b{fill:#249a8a}.mchart .tmark{stroke:var(--text);stroke-width:2;stroke-linecap:round;opacity:.75}.mchart g.on .bar{stroke:var(--text);stroke-width:1}.mchart .mlabel{font-size:9px;fill:var(--muted)}.mchart-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted);margin-top:4px}.mchart-legend span{display:inline-flex;align-items:center;gap:5px}.sw{width:10px;height:10px;border-radius:3px;display:inline-block}.sw.a{background:var(--accent)}.sw.b{background:#249a8a}.sw.t{height:2px;background:var(--text);border-radius:1px}.sw.g1,.agebar .g1{background:#f2c98f}.sw.g2,.agebar .g2{background:#f2a43a}.sw.g3,.agebar .g3{background:#e0702e}.sw.g4,.agebar .g4{background:#c23a2b}.debtor{padding:10px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.debtor-top{display:flex;justify-content:space-between;gap:10px;font-size:14px}.debtor-top b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.debtor-top em{font-style:normal}.agebar{display:flex;gap:2px;height:8px;border-radius:4px;overflow:hidden}.agebar span{display:block;min-width:3px}.dir-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}@media(min-width:640px){.dir-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}.dir-tile{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}.dir-tile b{font-size:20px;font-variant-numeric:tabular-nums}.mchart .mline{stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.mchart .mline.a{stroke:var(--accent)}.mchart .mline.b{stroke:#249a8a}.mchart .mline.ly{stroke:var(--muted);stroke-dasharray:4 3}.mchart .mline.od{stroke:#c23a2b}.sw.ly{height:2px;background:var(--muted);border-radius:1px}.hbars{display:flex;flex-direction:column;gap:9px;margin-top:6px}.hbar-top{display:flex;justify-content:space-between;gap:10px;font-size:13px}.hbar-top span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.hbar-top b{white-space:nowrap;font-variant-numeric:tabular-nums}.hbar-top em{font-style:normal;font-weight:400;font-size:12px}.hbar-track{height:7px;border-radius:4px;background:var(--card2);overflow:hidden;margin-top:3px}.hbar-track i{display:block;height:100%;border-radius:4px}.hbar-track i.a{background:var(--accent)}.hbar-track i.b{background:#249a8a}.agebar.big{height:14px;border-radius:7px;margin:8px 0 4px}.agebar .b{background:#249a8a}.report-text h4{margin:12px 0 4px;font-size:14px}.report-text p{margin:0 0 6px;font-size:14px;line-height:1.45}.todo{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:10px}.todo li{display:flex;gap:10px;align-items:flex-start;font-size:14px}.todo .pill{flex:none;font-size:11px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);margin-top:1px}.mchart .mdot.a{fill:var(--accent)}.mchart .mdot.b{fill:#249a8a}.mchart .mdot.ly{fill:var(--muted)}.dir-note .link{padding-left:0}ul.plain{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-direction:column;gap:8px}ul.plain li{overflow-wrap:anywhere}
