/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.relative{position:relative}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}}:root{--bg:#222831;--surface:#2d3441;--surface-2:#363e4c;--surface-3:#3f4858;--line:#ffffff12;--line-strong:#ffffff24;--fg:#eef1f6;--fg-2:#b4bccb;--muted:#8591a4;--accent:#49d487;--accent-2:#2fb8a6;--accent-ink:#0d2619;--accent-soft:#49d48724;--warn:#f2b64b;--warn-soft:#f2b64b24;--danger:#f0646e;--danger-soft:#f0646e24;--info:#6ea8ff;--info-soft:#6ea8ff24;--violet:#a78bfa;--violet-soft:#a78bfa29;--shadow:0 14px 36px #00000061;--shadow-sm:0 4px 14px #00000040;--display:"Manrope",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--body:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--r:16px;--r-sm:11px;--gap:20px;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#eef1f6;--surface:#fff;--surface-2:#f2f5f9;--surface-3:#e6ebf2;--line:#10182814;--line-strong:#10182829;--fg:#141a25;--fg-2:#3e4a5e;--muted:#6b7689;--accent:#149c57;--accent-2:#1c9d8e;--accent-ink:#fff;--accent-soft:#149c571f;--warn:#c0800a;--warn-soft:#c0800a1f;--danger:#d63c48;--danger-soft:#d63c481f;--info:#2a68d8;--info-soft:#2a68d81f;--violet:#7452ee;--violet-soft:#7452ee1f;--shadow:0 12px 30px #1018281f;--shadow-sm:0 3px 10px #10182814;color-scheme:light}}:root[data-theme=light]{--bg:#eef1f6;--surface:#fff;--surface-2:#f2f5f9;--surface-3:#e6ebf2;--line:#10182814;--line-strong:#10182829;--fg:#141a25;--fg-2:#3e4a5e;--muted:#6b7689;--accent:#149c57;--accent-2:#1c9d8e;--accent-ink:#fff;--accent-soft:#149c571f;--warn:#c0800a;--warn-soft:#c0800a1f;--danger:#d63c48;--danger-soft:#d63c481f;--info:#2a68d8;--info-soft:#2a68d81f;--violet:#7452ee;--violet-soft:#7452ee1f;--shadow:0 12px 30px #1018281f;--shadow-sm:0 3px 10px #10182814;color-scheme:light}*{box-sizing:border-box}body,html{height:100%}body{background:var(--bg);color:var(--fg);font:14px/1.5 var(--body);-webkit-font-smoothing:antialiased;margin:0;transition:background .25s,color .25s}h1,h2,h3,h4{font-family:var(--display);text-wrap:balance;letter-spacing:-.01em;margin:0}button{cursor:pointer;background:0 0;border:0}button,input,select,textarea{font:inherit;color:inherit}svg{display:block}.num{font-variant-numeric:tabular-nums}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}[hidden],body.role-secretary .fin-only,body:not(.role-secretary) .sec-only{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page{animation:pageIn .32s cubic-bezier(.2,.7,.2,1)}@keyframes pageIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.modal-card,.page,.toast{animation:none}}.btn{border-radius:var(--r-sm);height:42px;font-weight:700;font-family:var(--display);letter-spacing:.01em;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;transition:transform .15s,box-shadow .2s,background .2s,border-color .2s,filter .15s;display:inline-flex}.btn svg{flex:none;width:17px;height:17px}.btn:active{transform:translateY(1px)scale(.99)}.btn-primary{background:linear-gradient(180deg,var(--accent),var(--accent))}@supports (color:color-mix(in lab,red,red)){.btn-primary{background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 82%,var(--accent-2)))}}.btn-primary{color:var(--accent-ink);box-shadow:inset 0 1px #ffffff40,0 8px 22px #49d48747}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff40,0 10px 26px #49d4875c}.btn-ghost{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--fg)}.btn-ghost:hover{background:var(--surface-3);border-color:var(--line-strong);transform:translateY(-1px)}.btn-outline{border:1.5px solid var(--accent);color:var(--accent);background:0 0}.btn-outline:hover{background:var(--accent-soft)}.btn-danger{background:var(--danger-soft);color:var(--danger);border:1px solid #0000}.btn-danger:hover{border-color:var(--danger)}.btn-sm{border-radius:9px;height:34px;padding:0 12px;font-size:13px}.btn-sm svg{width:15px;height:15px}.btn-xs{border-radius:8px;height:28px;padding:0 10px;font-size:12px}.btn-block{width:100%}.btn[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none!important;transform:none!important}.icon-btn{background:var(--surface);border:1px solid var(--line-strong);width:40px;height:40px;color:var(--fg-2);border-radius:11px;place-items:center;transition:background .15s,transform .15s;display:grid;position:relative}.icon-btn:hover{background:var(--surface-2);transform:translateY(-1px)}.icon-btn svg{width:18px;height:18px}.icon-btn .pip{background:var(--danger);border:2px solid var(--surface);border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:9px}.seg{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--muted);border-radius:8px;padding:6px 11px;font-size:12px;font-weight:600;transition:background .15s,color .15s}.seg button:hover{color:var(--fg)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:var(--shadow-sm)}.lang{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.lang button{color:var(--muted);border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700}.lang button[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:var(--shadow-sm)}.theme-toggle{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;flex:none;width:60px;height:32px;position:relative}.theme-toggle i{background:var(--fg);width:24px;height:24px;color:var(--bg);border-radius:50%;place-items:center;transition:transform .25s cubic-bezier(.2,.7,.2,1);display:grid;position:absolute;top:3px;left:3px}.theme-toggle i svg{width:14px;height:14px}:root[data-theme=light] .theme-toggle i{transform:translate(28px)}.theme-toggle .s{color:var(--muted);position:absolute;top:8px}.theme-toggle .s,.theme-toggle .s svg{width:16px;height:16px}.theme-toggle .s.l{left:7px}.theme-toggle .s.r{right:7px}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field label{color:var(--fg-2);font-size:12px;font-weight:600}.input{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-sm);align-items:center;gap:10px;height:44px;padding:0 12px;transition:border-color .2s,box-shadow .2s;display:flex}.input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input input,.input select{width:100%;min-width:0;height:100%;font:inherit;color:var(--fg);background:0 0;border:0;outline:0;flex:1}.input select{cursor:pointer}.input select option{background:var(--surface)}.input svg{width:18px;height:18px;color:var(--muted);flex:none}.input.sm{height:38px}textarea.ta{resize:vertical;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-sm);outline:0;width:100%;min-height:96px;padding:10px 12px;line-height:1.5}textarea.ta:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.check{color:var(--fg-2);cursor:pointer;align-items:center;gap:9px;font-size:13px;display:flex}.check input{width:16px;height:16px;accent-color:var(--accent)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.form-grid .full{grid-column:1/-1}@media (max-width:640px){.form-grid{grid-template-columns:1fr}}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.link{color:var(--accent);font-size:13px;font-weight:600;text-decoration:none}.hint{color:var(--muted);font-size:12px}#login{grid-template-columns:1.1fr 1fr;min-height:100dvh;display:grid}.brand-pane{background:radial-gradient(820px 520px at 18% 8%,#49d48738,transparent 60%),radial-gradient(620px 420px at 92% 92%,#6ea8ff2e,transparent 60%),var(--surface);padding-block:40px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.brand-pane .inner{max-width:540px;margin-left:clamp(0px,4vw,56px)}.logo{align-items:center;gap:12px;display:flex}.logo-mark{background:linear-gradient(135deg,var(--accent),var(--accent-2));width:42px;height:42px;color:var(--accent-ink);border-radius:13px;place-items:center;font-size:19px;display:grid;box-shadow:0 8px 20px #49d4874d}.logo-mark,.logo-name{font-family:var(--display);font-weight:800}.logo-name{letter-spacing:-.02em;font-size:18px}.logo-sub{color:var(--fg-2);font-size:12px}.brand-pane h1{margin-top:52px;font-size:clamp(30px,4vw,46px);font-weight:800;line-height:1.08}.brand-pane h1 em{color:var(--accent);font-style:normal}.brand-pane p{color:var(--fg-2);max-width:46ch;margin-top:16px;font-size:15px}.brand-stats{flex-wrap:wrap;gap:30px;margin-top:40px;display:flex}.brand-stats b{font-family:var(--display);font-size:28px;font-weight:800;display:block}.brand-foot,.brand-stats span{color:var(--muted);font-size:12px}.quote{border-left:3px solid var(--accent);background:var(--surface-2);margin-top:40px;padding:16px 18px}@supports (color:color-mix(in lab,red,red)){.quote{background:color-mix(in srgb,var(--surface-2) 70%,transparent)}}.quote{border-radius:0 12px 12px 0;max-width:46ch}.quote b{font-family:var(--display);font-size:17px;font-weight:700;line-height:1.35;display:block}.quote span{color:var(--muted);margin-top:6px;font-size:12px;display:block}.login-pane{padding-block:40px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));place-items:center;display:grid}.login-card{width:100%;max-width:430px}.login-card h2{font-size:28px;font-weight:800}.login-card .lead{color:var(--muted);margin:6px 0 26px}.login-card .field{margin-bottom:16px}.role-tabs{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:24px;padding:4px;display:grid}.role-tabs button{color:var(--fg-2);border-radius:9px;padding:9px 4px;font-size:13px;font-weight:600;transition:background .2s,color .2s}.role-tabs button[aria-selected=true]{background:var(--surface);color:var(--fg);box-shadow:var(--shadow-sm)}.login-foot{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:24px;font-size:12px;display:flex}#app{grid-template-columns:252px 1fr;min-height:100dvh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:4px;height:100dvh;padding:20px 14px;display:flex;position:sticky;top:0;overflow:auto}.sidebar .logo{padding:2px 8px 16px}.firm{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);text-align:left;align-items:center;gap:10px;width:100%;margin:0 0 14px;padding:10px;display:flex}.firm .av{width:30px;height:30px;font-weight:800;font-family:var(--display);color:#fff;background:linear-gradient(135deg,#6ea8ff,#a78bfa);border-radius:9px;place-items:center;font-size:13px;display:grid}.firm b{font-size:13px;display:block}.firm span{color:var(--muted);font-size:11px}.firm svg{width:16px;height:16px;color:var(--muted);margin-left:auto}.nav-group{padding:14px 8px 6px}.nav a,.nav button{width:100%;color:var(--fg-2);text-align:left;border-radius:10px;align-items:center;gap:11px;padding:9px 10px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav a:hover,.nav button:hover{background:var(--surface-2);color:var(--fg)}.nav a[aria-current=page],.nav button[aria-current=page]{background:var(--surface-2);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line-strong);font-weight:600}.nav svg{opacity:.85;flex:none;width:18px;height:18px}.badge{background:var(--surface-2);border:1px solid var(--line);color:var(--fg-2);border-radius:999px;margin-left:auto;padding:2px 7px;font-size:11px;font-weight:700}.badge.warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.badge.danger{background:var(--danger-soft);color:var(--danger);border-color:#0000}.badge.ok{background:var(--accent-soft);color:var(--accent);border-color:#0000}.sidebar .me{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding:12px 8px 0;display:flex}.avatar{color:#fff;background:linear-gradient(135deg,#f2b64b,#f0646e);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:grid;position:relative}.avatar.sm{width:26px;height:26px;font-size:10px}.avatar.online:after{content:"";background:var(--accent);border:2px solid var(--surface);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.me b{font-size:13px;display:block}.me span{color:var(--muted);font-size:11px}.main{flex-direction:column;min-width:0;display:flex}.topbar{top:env(safe-area-inset-top,0);z-index:5;padding-block:14px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:var(--bg);align-items:center;gap:12px;display:flex;position:sticky}@supports (color:color-mix(in lab,red,red)){.topbar{background:color-mix(in srgb,var(--bg) 86%,transparent)}}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.topbar h2{font-size:19px;font-weight:800}.topbar .sub{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%}.search{background:var(--surface);border:1px solid var(--line-strong);width:270px;height:40px;color:var(--muted);border-radius:11px;align-items:center;gap:8px;margin-left:auto;padding:0 12px;display:flex}.search input{min-width:0;color:var(--fg);background:0 0;border:0;outline:0;flex:1}.search kbd{font:11px var(--body);border:1px solid var(--line);border-radius:5px;padding:1px 5px}.content{padding-block:24px 110px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));flex:1}@media (min-width:900px){.content{padding-bottom:48px;padding-left:28px;padding-right:28px}.search{margin-left:auto}.topbar .spacer{flex:1}}.grid{gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);min-width:0;padding:22px;box-shadow:inset 0 1px #ffffff08}.card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.card-head h3{font-size:15px;font-weight:700}.card-head p{color:var(--muted);margin:3px 0 0;font-size:12px}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-9{grid-column:span 9}.span-12{grid-column:span 12}@media (max-width:1180px){.span-3,.span-4,.span-5{grid-column:span 6}.span-6,.span-7,.span-8,.span-9{grid-column:span 12}}@media (max-width:640px){.span-3,.span-4,.span-5{grid-column:span 12}}.section-gap{height:4px}.kpi .eyebrow{justify-content:space-between;align-items:center;display:flex}.kpi .ico{background:var(--surface-2);width:30px;height:30px;color:var(--fg-2);border-radius:9px;place-items:center;display:grid}.kpi .ico svg{width:15px;height:15px}.kpi .val{font-family:var(--display);letter-spacing:-.02em;margin-top:12px;font-size:32px;font-weight:800;line-height:1.1}.kpi .foot{color:var(--muted);flex-wrap:wrap;gap:8px;margin-top:8px;font-size:12px;display:flex}.delta,.kpi .foot{align-items:center}.delta{border-radius:999px;gap:3px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.delta.up{background:var(--accent-soft);color:var(--accent)}.delta.down{background:var(--danger-soft);color:var(--danger)}.delta svg{width:11px;height:11px}.spark{width:100%;height:38px}.meter,.spark{margin-top:12px}.meter{align-items:flex-end;gap:3px;height:22px;display:flex}.meter i{background:var(--surface-3);border-radius:2px;flex:1;min-width:2px;transition:height .4s cubic-bezier(.2,.7,.2,1)}.meter i.on{background:var(--m,var(--accent))}.chart-wrap{width:100%;position:relative}.chart-wrap svg{width:100%;height:auto}.tip{pointer-events:none;background:var(--surface-2);border:1px solid var(--line-strong);box-shadow:var(--shadow);white-space:nowrap;opacity:0;z-index:2;border-radius:10px;padding:9px 11px;font-size:12px;transition:opacity .12s;position:absolute;transform:translate(-50%,-112%)}.tip b{font-family:var(--display);font-size:14px;display:block}.legend{color:var(--fg-2);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12px;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.chart-stats{flex-wrap:wrap;gap:30px;margin:4px 0 16px;display:flex}.chart-stats b{font-family:var(--display);font-size:22px;font-weight:800;display:block}.chart-stats span{color:var(--muted);font-size:12px}.ring-wrap{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.ring-legend{flex-direction:column;flex:1;gap:9px;min-width:150px;font-size:13px;display:flex}.ring-legend div{align-items:center;gap:8px;display:flex}.ring-legend i{border-radius:3px;flex:none;width:10px;height:10px}.ring-legend b{font-family:var(--display);margin-left:auto}.gauge-wrap{align-items:center}.gauge-wrap,.list{flex-direction:column;display:flex}.list>*{border-top:1px solid var(--line);align-items:center;gap:12px;padding:12px 0;display:flex}.list>:first-child{border-top:0;padding-top:0}.list .t b{font-size:13px;font-weight:600;display:block}.list .t span{color:var(--muted);font-size:12px}.list .t{flex:1;min-width:0}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill.ok{background:var(--accent-soft);color:var(--accent)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.danger{background:var(--danger-soft);color:var(--danger)}.pill.info{background:var(--info-soft);color:var(--info)}.pill.violet{background:var(--violet-soft);color:var(--violet)}.pill.muted{background:var(--surface-2);color:var(--muted)}.pill.plain:before{display:none}.alert{border-radius:var(--r-sm);background:var(--warn-soft);border:1px solid #0000;align-items:flex-start;gap:12px;padding:13px;text-decoration:none;display:flex}.alert.danger{background:var(--danger-soft)}.alert.info{background:var(--info-soft)}.alert.ok{background:var(--accent-soft)}.alert .ai{background:var(--surface);width:32px;height:32px;color:var(--warn);border-radius:9px;flex:none;place-items:center;display:grid}.alert.danger .ai{color:var(--danger)}.alert.info .ai{color:var(--info)}.alert.ok .ai{color:var(--accent)}.alert .ai svg{width:16px;height:16px}.alert b{font-size:13px;display:block}.alert span{color:var(--fg-2);font-size:12px}.stack{flex-direction:column;gap:12px;display:flex}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 10px;font-size:11px;font-weight:600}td,th{border-bottom:1px solid var(--line)}td{vertical-align:middle;padding:13px 10px}tr:last-child td{border-bottom:0}tbody tr{cursor:pointer;transition:background .12s}tbody tr:hover td{background:var(--surface-2)}.table-wrap{margin:0 -22px;padding:0 22px;overflow-x:auto}.avs{display:flex}.avs .avatar{border:2px solid var(--surface);margin-left:-8px}.avs .avatar:first-child{margin-left:0}.progress{background:var(--surface-2);border-radius:999px;min-width:90px;height:6px;overflow:hidden}.progress i{background:var(--accent);border-radius:999px;height:100%;display:block}.segbar{background:var(--surface-2);border-radius:999px;gap:2px;height:10px;display:flex;overflow:hidden}.segbar i{height:100%;display:block}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.tabs{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.tabs button{white-space:nowrap;background:var(--surface);border:1px solid var(--line-strong);color:var(--fg-2);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s}.tabs button:hover{color:var(--fg)}.tabs button[aria-pressed=true]{background:var(--fg);color:var(--bg);border-color:var(--fg)}.tabs .n{opacity:.7;margin-left:6px}.period{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.period .input{height:36px;padding:0 10px}.period .input input{font-size:13px}.order-card{cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px 20px;transition:border-color .15s,transform .15s,box-shadow .15s;display:grid}.order-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.order-card .id{font-family:var(--display);color:var(--muted);width:60px;font-size:13px;font-weight:800}.order-card h4{font-size:15px;font-weight:700}.order-card .meta{color:var(--muted);flex-wrap:wrap;gap:14px;margin-top:5px;font-size:12px;display:flex}.order-card .meta span{align-items:center;gap:5px;display:inline-flex}.order-card .meta svg{width:13px;height:13px}.order-card .right{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.order-card .sum{font-family:var(--display);font-size:16px;font-weight:800}@media (max-width:640px){.order-card{grid-template-columns:1fr auto}.order-card .id{display:none}}.empty{text-align:center;color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--r);padding:36px}.map{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:linear-gradient(var(--line) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/40px 40px,radial-gradient(300px 120px at 40% 60%,var(--info-soft),transparent 70%),var(--surface-2);height:200px;position:relative;overflow:hidden}.map .road{background:var(--surface-3);border-radius:5px;height:10px;position:absolute}.map .pin{color:var(--danger);filter:drop-shadow(0 4px 8px #0006);position:absolute;top:46%;left:52%;transform:translate(-50%,-100%)}.map .pin svg{width:34px;height:34px}.map .addr{background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-sm);border-radius:9px;padding:6px 10px;font-size:12px;position:absolute;bottom:12px;left:12px}.slots{flex-wrap:wrap;gap:8px;display:flex}.slot{border:1px solid var(--line-strong);background:var(--surface-2);border-radius:9px;align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:600;transition:border-color .15s,background .15s;display:inline-flex}.slot.ok{color:var(--accent);border-color:#49d48759}.slot.busy{color:var(--danger);opacity:.8;text-decoration:line-through}.slot.sel{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.slot i{background:currentColor;border-radius:50%;width:7px;height:7px}.svc-pick{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.svc-opt{text-align:left;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface-2);flex-direction:column;gap:3px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.svc-opt.sel,.svc-opt:hover{border-color:var(--accent)}.svc-opt.sel{background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.svc-opt b{font-size:13px}.svc-opt span{color:var(--muted);font-size:12px}.svc-line{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.svc-line:first-child{border-top:0;padding-top:0}.svc-line .inputs{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.svc-line .inputs .input{width:120px;height:36px;padding:0 10px}.svc-line .inputs .input input{font-size:13px}.svc-line .inputs label{color:var(--muted);flex-direction:column;gap:3px;font-size:11px;display:flex}.svc-line .tot{font-family:var(--display);white-space:nowrap;font-size:15px;font-weight:800}.team-pick{flex-direction:column;gap:8px;display:flex}.tp{border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface-2);cursor:pointer;align-items:center;gap:12px;padding:10px 12px;transition:border-color .15s;display:flex}.tp:hover{border-color:var(--line-strong)}.tp.sel{border-color:var(--accent);background:var(--accent-soft)}.tp.busy{opacity:.7;cursor:not-allowed}.tp .t{flex:1;min-width:0}.tp .t b{font-size:13px;display:block}.tp .t span{color:var(--muted);font-size:12px}.tp input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent)}.tp .mini{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tp .mini .input{width:auto;min-width:112px;height:32px;padding:0 6px 0 10px}.tp .mini .input input,.tp .mini .input select{font:600 12px/1 var(--body);color:var(--fg);padding:0}.tp .mini .input input{text-align:right;width:56px}.drop{border:1.5px dashed var(--line-strong);border-radius:var(--r-sm);text-align:center;color:var(--muted);background:var(--surface-2);padding:22px;font-size:13px}.drop b{color:var(--fg);margin-bottom:4px;display:block}.files{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.file{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:8px;align-items:center;gap:7px;padding:6px 10px;font-size:12px;display:inline-flex}.file svg{width:14px;height:14px;color:var(--muted)}.file.bad{border-color:var(--danger);color:var(--danger)}.summary{position:sticky;top:84px}.kv{grid-template-columns:1fr auto;gap:9px 16px;font-size:13px;display:grid}.kv span{color:var(--muted)}.kv b{text-align:right;font-weight:600}.kv .total{border-top:1px solid var(--line);font-family:var(--display);grid-column:span 2;justify-content:space-between;margin-top:4px;padding-top:10px;font-size:16px;font-weight:800;display:flex}.steps{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.steps span{color:var(--muted);background:var(--surface);border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.steps span i{background:var(--surface-2);border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;font-style:normal;display:grid}.steps span.on{color:var(--fg)}.steps span.on i{background:var(--accent);color:var(--accent-ink)}.back{color:var(--muted);align-items:center;gap:6px;margin-bottom:14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.back svg{width:16px;height:16px}.timeline{padding-left:32px;position:relative}.timeline:before{content:"";background:var(--line-strong);width:2px;position:absolute;top:8px;bottom:8px;left:11px}.step{padding:0 0 22px;position:relative}.step:last-child{padding-bottom:0}.step .k{background:var(--surface-2);border:2px solid var(--line-strong);border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:1px;left:-32px}.step .k svg{width:12px;height:12px}.step.done .k{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.step.now .k{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.step.now .k:after{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px;animation:pulse 1.6s infinite}@keyframes pulse{50%{opacity:.5}}.step.stop .k{background:var(--danger);border-color:var(--danger);color:#fff}.step .k-title{font-size:14px;font-weight:700}.step .k-sub{color:var(--muted);margin-top:3px;font-size:12px}.step .k-time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.step .k-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.photos{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.photos div{background:linear-gradient(135deg,var(--surface-2),var(--surface-3));border:1px solid var(--line);border-radius:7px;width:58px;height:46px}.timer{font-family:var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:36px;font-weight:800}.team-row{border-top:1px solid var(--line);align-items:center;gap:10px;padding:11px 0;display:flex}.team-row:first-of-type{border-top:0;padding-top:0}.team-row b{font-size:13px;display:block}.team-row span{color:var(--muted);font-size:12px}.team-row .t{flex:1;min-width:0}.geo{align-items:center;gap:5px;font-size:11px;font-weight:600;display:inline-flex}.geo svg{width:12px;height:12px}.geo.ok{color:var(--accent)}.geo.warn{color:var(--warn)}.svc-groups{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.svc-item{border-top:1px solid var(--line);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:12px 0;display:grid}.svc-item .acts{grid-column:2/4;justify-self:end;margin-top:-2px}.svc-item:first-of-type{border-top:0;padding-top:0}.svc-item .ic{background:var(--surface-2);width:36px;height:36px;color:var(--fg-2);border-radius:10px;flex:none;place-items:center;display:grid}.svc-item .ic svg{width:17px;height:17px}.svc-item .t{min-width:0}.svc-item .t b{font-size:13px;display:block}.svc-item .t span{color:var(--muted);font-size:12px}.svc-item .acts{gap:4px;display:flex}.svc-item .acts button{width:30px;height:30px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.svc-item .acts button:hover{background:var(--surface-2);color:var(--fg)}.svc-item .acts svg{width:15px;height:15px}.price-tag{font-family:var(--display);white-space:nowrap;font-size:13px;font-weight:800}.comp-list{flex-direction:column;gap:8px;display:flex}.comp{grid-template-columns:1fr 130px 90px 32px;align-items:center;gap:8px;display:grid}.comp .input{height:36px;padding:0 10px}.comp .input input,.comp .input select{font-size:13px}.comp .x{width:32px;height:32px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.comp .x:hover{background:var(--danger-soft);color:var(--danger)}.comp .x svg{width:15px;height:15px}@media (max-width:640px){.comp{grid-template-columns:1fr 1fr}.comp .x{justify-self:end}}.cal{margin:0 -22px;padding:0 22px;overflow-x:auto}.cal-grid{grid-template-columns:160px repeat(10,1fr);min-width:860px;font-size:12px;display:grid}.cal-grid>div{border-bottom:1px solid var(--line);min-height:48px;padding:8px 6px}.cal-grid .hh{color:var(--muted);text-align:center;border-bottom:1px solid var(--line-strong);min-height:0;font-weight:600}.cal-grid .wk{border-right:1px solid var(--line);align-items:center;gap:8px;font-weight:600;display:flex}.cal-grid .cell{position:relative}.blk{white-space:nowrap;text-overflow:ellipsis;border-radius:7px;padding:4px 8px;font-size:11px;font-weight:600;position:absolute;top:6px;bottom:6px;left:3px;overflow:hidden}.blk.ok{background:var(--accent-soft);color:var(--accent);border:1px solid #49d4874d}.blk.info{background:var(--info-soft);color:var(--info);border:1px solid #6ea8ff4d}.blk.off{background:var(--surface-2);color:var(--muted);border:1px dashed var(--line-strong)}.blk.warn{background:var(--warn-soft);color:var(--warn);border:1px solid #f2b64b4d}.worker{align-items:center;gap:14px;display:flex}.worker .avatar{width:48px;height:48px;font-size:15px}.worker b{font-size:15px;font-family:var(--display);display:block}.worker span{color:var(--muted);font-size:12px}.worker .t{flex:1;min-width:0}.worker-stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;padding-top:16px;display:grid}.worker-stats b{font-family:var(--display);font-size:17px;font-weight:800;display:block}.worker-stats span{color:var(--muted);font-size:11px}.modal{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0e148c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--line-strong);width:100%;max-width:620px;max-height:calc(100% - 32px);box-shadow:var(--shadow);border-radius:18px;padding:24px;animation:modalIn .25s cubic-bezier(.2,.7,.2,1);overflow:auto}@keyframes modalIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}.modal-card h3{margin-bottom:4px;font-size:18px}.modal-foot{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.bottom-nav{display:none}@media (max-width:899px){#app{grid-template-columns:1fr}.search,.sidebar,.topbar .lang{display:none}.bottom-nav{z-index:20;background:var(--surface);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.bottom-nav{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.bottom-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:8px max(8px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}.bottom-nav a,.bottom-nav button{color:var(--muted);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:4px 0;font-size:10.5px;font-weight:600;text-decoration:none;display:flex;position:relative}.bottom-nav a svg,.bottom-nav button svg{width:22px;height:22px;transition:transform .2s}.bottom-nav a[aria-current=page],.bottom-nav button[aria-current=page]{color:var(--accent)}.bottom-nav a[aria-current=page] svg,.bottom-nav button[aria-current=page] svg{transform:translateY(-2px)}.bottom-nav a .pip,.bottom-nav button .pip{background:var(--danger);color:#fff;border-radius:999px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:grid;position:absolute;top:4px;left:calc(50% + 8px)}#login{grid-template-columns:1fr}.brand-pane{padding-block:28px 22px}.brand-pane h1{margin-top:22px;font-size:28px}.brand-foot,.brand-pane p{display:none}.quote{margin-top:18px}.login-pane{padding-block:26px}.summary{position:static}}.toast{left:50%;bottom:calc(90px + env(safe-area-inset-bottom,0px));background:var(--surface-2);border:1px solid var(--line-strong);box-shadow:var(--shadow);z-index:50;border-radius:11px;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:11px 15px;font-size:13px;animation:toastIn .25s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;transform:translate(-50%)}@media (min-width:900px){.toast{bottom:24px}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.toast .dot{background:var(--accent)}.leaflet-container{border-radius:var(--r-sm);z-index:0;background:var(--surface-2);width:100%;height:260px}.leaflet-container,.suggest{border:1px solid var(--line-strong)}.suggest{background:var(--surface);border-radius:var(--r-sm);box-shadow:var(--shadow);z-index:30;max-height:220px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.suggest button{text-align:left;border-top:1px solid var(--line);width:100%;padding:9px 12px;font-size:13px;display:block}.suggest button:first-child{border-top:0}.suggest button:hover{background:var(--surface-2)}.err{color:var(--danger);margin-top:6px;font-size:12px}.spinner{border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(1turn)}}.btn,a.btn,a.icon-btn,a.link{text-decoration:none}.card.span-4 button.card,button.card{font:inherit;color:inherit}.file button{color:var(--muted);place-items:center;margin-left:2px;display:inline-grid}.legal{background:var(--bg);min-height:100vh;padding-block:40px 64px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.legal-inner{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);max-width:760px;margin:0 auto;padding:32px clamp(18px,4vw,40px)}.legal h1{margin:10px 0 18px;font-size:30px;font-weight:800}.legal h2{margin:26px 0 8px;font-size:17px;font-weight:700}.legal li,.legal p{color:var(--fg-2);max-width:68ch;font-size:14.5px;line-height:1.65}.legal ul{margin:6px 0;padding-left:20px}.legal address{color:var(--fg);font-style:normal;line-height:1.7}.legal a{color:var(--accent)}.legal-foot{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:36px;padding-top:16px;font-size:13px;display:flex}.legal-links{gap:14px;font-size:12px;display:flex}.legal-links a{color:var(--muted);text-decoration:none}.legal-links a:hover{color:var(--fg)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}