@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/space-grotesk-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#EEF0F4;--surface:#fff;--ink:#14213A;--rail:#14213A;--rail-ink:#fff;--rail-soft:rgba(255,255,255,.62);--rail-line:rgba(255,255,255,.12);--line:#E2E6EE;--line2:#CDD3DF;--soft:#F7F8FA;--brand:#3551D1;--brand2:#22337E;--tint:#E7EBFB;--tintink:#22337E;--muted:#7A879E;--sec:#3A4763;--faint:#AEB6C6;--eyebrow:#5e6c87;--amber-bg:#FBEECF;--amber-line:#E9C77E;--amber-ink:#A86412;--green-bg:#E3F3EC;--green-line:#b6e0cb;--green-ink:#1B7A52;--impl-bg:#F4F7FF;--impl-line:#DCE4FB;--impl-chip:#DCE4FB;--impl-ink:#22337E;--addon-bg:#EAF6F0;--addon-line:#C5E6D6;--addon-chip:#D5EEE1;--addon-ink:#1B7A52;--sh-card:0 1px 2px rgba(20,33,58,.06);--sh-pop:0 8px 24px -12px rgba(20,33,58,.18);--sh-brand:0 6px 16px -8px rgba(53,81,209,.45)}:root[data-theme=wss]{--bg:#EEF0F4;--surface:#fff;--ink:#1A1A1A;--rail:#1A1A1A;--rail-ink:#fff;--rail-soft:rgba(255,255,255,.62);--rail-line:rgba(255,255,255,.12);--line:#E2E6EE;--line2:#CDD3DF;--soft:#F7F8FA;--brand:#D50012;--brand2:#980611;--tint:#FCE3E5;--tintink:#980611;--muted:#7A879E;--sec:#3A4763;--faint:#AEB6C6;--eyebrow:#E59AA2;--impl-bg:#F4F7FF;--impl-line:#DCE4FB;--impl-chip:#DCE4FB;--impl-ink:#22337E;--addon-bg:#EAF6F0;--addon-line:#C5E6D6;--addon-chip:#D5EEE1;--addon-ink:#1B7A52;--sh-brand:0 6px 16px -8px rgba(213,0,18,.42)}:root[data-theme=dark]{--bg:#0E1320;--surface:#1B2536;--ink:#E7ECF5;--rail:#080B12;--rail-ink:#E7ECF5;--rail-soft:rgba(231,236,245,.55);--rail-line:rgba(255,255,255,.08);--line:#2C3748;--line2:#3C4A5E;--soft:#141C2A;--brand:#FF4A59;--brand2:#D50012;--tint:#2B161B;--tintink:#FF9CA3;--muted:#8B95AB;--sec:#AEB8CC;--faint:#586079;--eyebrow:#FF9CA3;--amber-bg:#2E2410;--amber-line:#5C4A1E;--amber-ink:#E8C07A;--green-bg:#112A20;--green-line:#1F5240;--green-ink:#6FD3A6;--impl-bg:#16203A;--impl-line:#243558;--impl-chip:#243558;--impl-ink:#9FB4F0;--addon-bg:#102A20;--addon-line:#1F5240;--addon-chip:#173A2C;--addon-ink:#6FD3A6;--sh-card:0 1px 2px rgba(0,0,0,.4);--sh-pop:0 14px 36px -10px rgba(0,0,0,.7);--sh-brand:0 6px 16px -8px rgba(255,74,89,.4)}:root[data-theme=summer]{--bg:#FFF4E2;--surface:#FFFDF8;--ink:#3A2C1C;--rail:#13897B;--rail-ink:#fff;--rail-soft:rgba(255,255,255,.72);--rail-line:rgba(255,255,255,.16);--line:#F0E2C9;--line2:#E4D3B2;--soft:#FFF8EC;--brand:#F26A33;--brand2:#C94E1E;--tint:#FFE3D2;--tintink:#B0441A;--muted:#A78B62;--sec:#6E5A3E;--faint:#C9B48F;--eyebrow:#B98A3A;--amber-bg:#FFEFC9;--amber-line:#F0CE82;--amber-ink:#B5751A;--green-bg:#DBF3E6;--green-line:#A7E0C2;--green-ink:#1F8A5B;--impl-bg:#E6F4F2;--impl-line:#B8E2DC;--impl-chip:#CCEBE6;--impl-ink:#13897B;--addon-bg:#DBF3E6;--addon-line:#A7E0C2;--addon-chip:#C3ECD4;--addon-ink:#1F8A5B;--sh-brand:0 6px 16px -8px rgba(242,106,51,.42)}:root[data-theme=newyear]{--bg:#EDF3EE;--surface:#fff;--ink:#15352A;--rail:#0E3B2A;--rail-ink:#F4F0E0;--rail-soft:rgba(244,240,224,.62);--rail-line:rgba(244,240,224,.14);--line:#D7E6DD;--line2:#BFD6CA;--soft:#F2F8F4;--brand:#C8102E;--brand2:#8E0B20;--tint:#FBE0E2;--tintink:#8E0B20;--muted:#6E8A7E;--sec:#3C5C50;--faint:#A8C2B6;--eyebrow:#C39A2E;--amber-bg:#FBEFCF;--amber-line:#E3C36A;--amber-ink:#9A6E12;--green-bg:#E0F0E6;--green-line:#BADCC6;--green-ink:#1B7A52;--impl-bg:#EAF0EC;--impl-line:#C9DDD0;--impl-chip:#D4E6DA;--impl-ink:#1B6B49;--addon-bg:#FBE0E2;--addon-line:#EFC0C5;--addon-chip:#F5D2D6;--addon-ink:#8E0B20;--sh-brand:0 6px 16px -8px rgba(200,16,46,.4)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}.sg{font-family:Space Grotesk,Inter,sans-serif;letter-spacing:-.01em}[data-app] *{font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line2);border-radius:8px;border:3px solid var(--bg)}button{font-family:inherit;cursor:pointer}input{font-family:inherit}h1,h2,h3{margin:0}.svgi{flex:none}.spacer{flex:1}.flexrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.app{display:flex;min-height:100vh}.rail{width:248px;flex:none;background:var(--rail);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.rail-logo{padding:20px 18px 16px;margin-bottom:6px;border-bottom:1px solid var(--rail-line)}.rail-wss{width:160px;max-width:100%}.rail-wss svg{display:block;width:100%;height:auto}.rail-mark{width:34px;height:34px;border-radius:9px;background:linear-gradient(150deg,#5a73e8,#2c3fa8);display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 4px 12px -4px #3551d199;color:#fff}.rail-title{font-size:15px;font-weight:600;letter-spacing:-.01em}.rail-sub{font-size:11px;color:var(--rail-soft);letter-spacing:.02em;margin-top:11px}.rail-eyebrow{font-size:10px;font-weight:600;letter-spacing:.14em;color:var(--eyebrow);padding:14px 20px 8px}.rail-nav{flex:1;overflow-y:auto;padding:0 12px;display:flex;flex-direction:column;gap:2px}.nav-row{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:9px;cursor:pointer;font-size:13.5px;color:var(--faint);transition:.12s}.nav-row:hover{background:#ffffff0d;color:#fff}.nav-row.on{background:#ffffff14;color:#fff}.nav-chip{width:23px;height:23px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex:none;background:#ffffff12;color:var(--faint)}.nav-row.on .nav-chip{background:var(--brand);color:#fff}.rail-bottom{padding:12px;border-top:1px solid rgba(255,255,255,.07)}.rail-bottom .nav-row{color:#fff}.theme-switch{position:relative}.theme-dots{display:inline-flex;gap:3px}.theme-dots span{width:13px;height:13px;border-radius:4px;box-shadow:inset 0 0 0 1px #0000001f}.theme-dots.sm span{width:11px;height:11px;border-radius:3px}.theme-pop{position:absolute;left:8px;right:8px;bottom:calc(100% + 6px);background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:var(--sh-pop);padding:6px;z-index:60}.theme-pop-h{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:6px 9px 7px}.theme-opt{display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:9px 10px;border-radius:10px;border:1px solid transparent;background:none;cursor:pointer;color:var(--ink)}.theme-opt:hover{background:var(--soft)}.theme-opt.on{background:var(--tint);border-color:var(--brand)}.theme-opt .theme-name{display:flex;flex-direction:column;min-width:0;flex:1}.theme-opt .theme-name b{font-size:12.5px;color:var(--ink);font-weight:600}.theme-opt .theme-name small{font-size:10.5px;color:var(--muted)}.theme-opt .theme-check{color:var(--brand);flex:none}.dot-unsaved{width:7px;height:7px;border-radius:50%;background:var(--amber-line);box-shadow:0 0 0 3px #e9c77e2e;flex:none}.shell{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:60px;flex:none;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.crumb{font-size:13px;color:var(--muted)}.crumb b{color:var(--ink);font-weight:600}.crumb .sep{color:var(--line2);margin:0 6px}.topbar-r{display:flex;align-items:center;gap:12px;white-space:nowrap}.seg{display:flex;background:var(--bg);border-radius:9px;padding:3px}.seg button{display:flex;align-items:center;gap:6px;border:none;background:transparent;color:var(--muted);font-size:13px;font-weight:600;padding:7px 13px;border-radius:7px}.seg button.on{background:var(--surface);color:var(--brand);box-shadow:var(--sh-card)}.body{flex:1;display:flex;gap:28px;padding:30px 32px 60px;align-items:flex-start;width:100%;max-width:1800px;margin-inline:auto}.main{flex:1;min-width:0;max-width:1200px}.summary{width:332px;flex:none;position:sticky;top:90px}.btn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 16px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--sec);font-size:13px;font-weight:600}.btn:hover{border-color:var(--line2)}.btn.primary{border:none;background:var(--brand);color:#fff;box-shadow:var(--sh-brand)}.btn.primary:hover{background:var(--brand2)}.btn.ghost{border:none;background:transparent}.btn.amber{border:1px solid var(--amber-line);color:var(--amber-ink);background:var(--surface)}.btn.sm{height:32px;padding:0 12px;font-size:12.5px;border-radius:9px}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.iconbtn{width:38px;height:38px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--muted);display:flex;align-items:center;justify-content:center}.iconbtn:hover{border-color:var(--amber-line);color:var(--amber-ink)}.iconbtn.sm{width:30px;height:30px;border-radius:8px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--brand);text-transform:uppercase}.page-h h1{font-size:25px;font-weight:700;margin:8px 0 6px}.page-h p{font-size:14px;color:var(--sec);margin:0 0 22px;max-width:620px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-card);margin-bottom:18px;overflow:hidden}.card-h{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}.card-h .t{font-size:15px;font-weight:600}.card-h .s{font-size:12px;color:var(--muted);margin-top:2px}.card-b{padding:20px}.opts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.opt{display:flex;gap:12px;align-items:center;padding:13px 14px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);cursor:pointer}.opt.on{border-color:var(--brand);background:var(--tint)}.opt .ic{width:34px;height:34px;border-radius:9px;background:var(--bg);color:var(--sec);display:flex;align-items:center;justify-content:center;flex:none}.opt.on .ic{background:var(--brand);color:#fff}.opt .t b{font-size:14px;font-weight:600;display:block}.opt .t small{font-size:12px;color:var(--muted)}.crow{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid var(--line);cursor:pointer}.crow:last-child{border-bottom:none}.cbox{width:21px;height:21px;border-radius:6px;flex:none;border:1.5px solid var(--line2);background:var(--surface);display:flex;align-items:center;justify-content:center;color:#fff}.crow.on .cbox,.cbox.on{border-color:var(--brand);background:var(--brand)}.crow .nm{flex:1;font-size:14px;font-weight:500;min-width:0}.crow .nm small{display:block;color:var(--muted);font-size:12px;font-weight:400}.chip{background:var(--soft);color:var(--sec);font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:7px;white-space:nowrap}.chip.b{background:var(--tint);color:var(--tintink)}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.switch .tr{width:42px;height:24px;border-radius:12px;position:relative;background:var(--line2);flex:none;transition:.15s}.switch .kn{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px #14213a40;transition:.15s}.switch.on .tr{background:var(--brand)}.switch.on .kn{left:21px}.switch .lbl{font-size:13px;font-weight:600;color:var(--sec)}.stepper{display:inline-flex;align-items:center;border:1px solid var(--line2);border-radius:10px;overflow:hidden;width:fit-content}.stepper button{width:36px;height:38px;border:none;background:var(--soft);font-size:19px;color:var(--sec)}.stepper input{width:56px;height:38px;text-align:center;font-size:15px;font-weight:600;font-family:Space Grotesk;border:none;border-left:1px solid var(--line);border-right:1px solid var(--line)}.stepper input:focus{outline:none}.field{display:flex;flex-direction:column;gap:7px}.field>label{font-size:12.5px;font-weight:600;color:var(--sec)}.ninp{height:40px;border:1px solid var(--line2);border-radius:10px;padding:0 13px;font-size:14px;font-weight:600;font-family:Space Grotesk;color:var(--ink);background:var(--surface);width:100%}.ninp:focus{outline:none;border-color:var(--brand)}.ninp.edited{border:1.5px solid var(--amber-line);color:var(--amber-ink);background:var(--amber-bg)}.tinp{height:40px;border:1px solid var(--line2);border-radius:10px;padding:0 13px;font-size:14px;color:var(--ink);background:var(--surface);width:100%}.tinp:focus{outline:none;border-color:var(--brand)}.stage{margin-bottom:22px}.stage-droppable{outline:2px dashed var(--line2);outline-offset:4px;border-radius:10px}.drop-hint{color:var(--muted);font-size:12.5px;font-style:italic;padding:14px 6px}.stage-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.stage-chip{background:var(--rail);color:#fff;font-size:11px;font-weight:600;padding:4px 10px;border-radius:7px;white-space:nowrap}.stage-chip.lic{background:var(--brand)}.stage-name{font-size:13.5px;font-weight:600;border:1px solid transparent;border-radius:7px;background:transparent;flex:1;min-width:0;padding:4px 6px;color:var(--ink)}.stage-name:hover{border-color:var(--line)}.stage-name:focus{outline:none;border-color:var(--brand);background:var(--surface)}.stage-tot{font-size:13px;color:var(--sec);font-weight:600;white-space:nowrap}.etbl{width:100%;border-collapse:collapse;font-size:13px}.etbl th{text-align:left;color:var(--muted);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;padding:6px 0}.etbl th.num{text-align:right}.etbl td{padding:9px 0;border-top:1px solid var(--line);vertical-align:middle}.etbl td.num{text-align:right}.etbl tr.client td{background:var(--soft);color:var(--muted)}.etbl tr.client td:first-child{padding-left:12px}.etbl tr.desc td{color:var(--muted);font-style:italic}.etbl tr.sub td{padding-left:18px;color:var(--sec);font-size:12.5px}.etbl tfoot td{border-top:2px solid var(--line2);padding:11px 0;font-weight:700}.cellnum{font-family:Space Grotesk;font-weight:600}.cellname{display:inline-block;min-width:60px;white-space:normal;word-break:break-word;border:none;background:transparent;font-size:13px;color:inherit;padding:1px 3px;border-radius:5px;outline:none}.cellname:focus{background:var(--surface);box-shadow:0 0 0 2px #3551d12e}.cellinp{width:120px;height:32px;border:1px solid var(--line2);border-radius:8px;padding:0 9px;font-size:13px;font-weight:600;font-family:Space Grotesk;text-align:right;background:var(--surface);color:var(--ink)}.cellinp:focus{outline:none;border-color:var(--brand)}.cellinp.edited{border:1.5px solid var(--amber-line);color:var(--amber-ink);background:var(--amber-bg)}.cellinp.days{width:70px}.drag{color:#fff;background:var(--brand);cursor:grab;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;box-shadow:var(--sh-brand)}.drag:hover{background:var(--brand2)}.drag:active{cursor:grabbing}.etbl tr.dragging{opacity:.4}.badge{display:inline-block;background:var(--amber-bg);color:var(--amber-ink);font-size:10px;font-weight:600;padding:2px 7px;border-radius:7px;margin-left:7px;white-space:nowrap}.sum{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-pop);overflow:hidden}.sum-h{padding:16px 18px 14px}.sum-top{display:flex;align-items:center;justify-content:space-between}.sum-eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--muted)}.sum-dep{display:flex;align-items:center;gap:5px;background:var(--tint);color:var(--tintink);font-size:11px;font-weight:600;padding:4px 9px;border-radius:7px}.sum-card{margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.sum-card.hl{border:1.5px solid var(--brand);background:var(--tint)}.sum-card .l{font-size:11.5px;font-weight:600;color:var(--sec)}.sum-card.hl .l{color:var(--tintink)}.sum-card .v{font-size:27px;font-weight:700;margin-top:4px}.sum-card.hl .v{color:var(--tintink)}.sum-card .n{font-size:11.5px;color:var(--muted);margin-top:3px}.sum-card.hl .n{color:var(--brand)}.sum-rows{padding:4px 18px 14px}.sum-row{display:flex;align-items:baseline;justify-content:space-between;padding:9px 0;border-top:1px solid var(--line)}.sum-row.dash{border-top:1px dashed var(--line)}.sum-row .l{font-size:12.5px;color:var(--sec)}.sum-row .v{font-size:14px;font-weight:600}.sum-grid{padding:14px 18px 18px;background:var(--soft);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12px}.sum-stat .v{font-size:18px;font-weight:700}.sum-stat .l{font-size:11px;color:var(--muted);margin-top:2px}.sum-foot{text-align:center;font-size:11px;color:var(--faint);margin-top:12px}.panel{display:flex;align-items:center;justify-content:space-between;border-radius:11px;padding:12px 16px;gap:12px;margin-bottom:16px}.panel.amber{background:var(--amber-bg);border:1px solid var(--amber-line)}.panel.green{background:var(--green-bg);border:1px solid var(--green-line)}.panel .m{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600}.panel.amber .m{color:var(--amber-ink)}.panel.green .m{color:var(--green-ink)}.tag{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;padding:7px 12px;border-radius:9px}.tag.dirty{background:var(--amber-bg);color:var(--amber-ink)}.tag.clean{background:var(--green-bg);color:var(--green-ink)}.toasts{position:fixed;right:20px;bottom:20px;z-index:200;display:flex;flex-direction:column;gap:10px}.toast{display:flex;align-items:center;gap:9px;background:var(--rail);color:var(--rail-ink);padding:12px 16px;border-radius:11px;box-shadow:var(--sh-pop);font-size:13px;font-weight:600;animation:tin .2s}.toast.ok{background:var(--green-ink)}.toast.err{background:#b23b34}@keyframes tin{0%{opacity:0;transform:translateY(8px)}}.ovl{position:fixed;top:0;right:0;bottom:0;left:0;background:#14213a80;z-index:150;display:grid;place-items:center;padding:20px}.modal{background:var(--surface);border-radius:16px;box-shadow:var(--sh-pop);max-width:420px;width:100%;padding:24px}.atabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.atabs button{height:36px;padding:0 14px;border:1px solid var(--line);background:var(--surface);border-radius:9px;font-size:13px;font-weight:600;color:var(--muted)}.atabs button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.editbar{display:flex;gap:8px;align-items:center;margin-bottom:8px}.procbar .tinp{flex:1 1 0;min-width:0}.proc-preview{flex:1 1 0;min-width:0;align-self:stretch;border:1px dashed var(--line2);border-radius:9px;padding:8px 11px;background:var(--soft);font-size:12.5px;line-height:1.4;overflow:auto}.proc-preview .pp-head{color:var(--ink)}.proc-preview .pp-title{font-weight:700}.proc-preview .pp-sub{padding-left:16px;color:var(--slate)}.proc-preview .pp-empty{color:var(--muted);font-style:italic}.proc-cols{display:flex;gap:8px;padding:0 2px 6px;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:700}.proc-cols span:nth-child(1){flex:1 1 0;margin-left:22px}.proc-cols span:nth-child(2){flex:1 1 0}.proc-cols span:nth-child(3){flex:0 0 74px}.miniinp{height:36px;border:1px solid var(--line2);border-radius:9px;padding:0 11px;font-size:13px;font-family:inherit;width:100%;background:var(--surface)}.miniinp:focus{outline:none;border-color:var(--brand)}.miniinp.sg{font-family:Space Grotesk;font-weight:600;text-align:right}.dtbl{width:100%;border-collapse:collapse;font-size:13px}.dtbl th{text-align:left;color:var(--muted);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;padding:8px}.dtbl th.num{text-align:right}.dtbl td{padding:6px 8px;border-top:1px solid var(--line)}.dtbl td.num .miniinp{text-align:right}.draglist .dli{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;margin-bottom:6px;background:var(--surface);font-size:13px;cursor:grab}.draglist .dli.anchor{background:var(--tint);color:var(--tintink);font-weight:600;border-color:#d3dbf6}.draglist .dli.dragging{opacity:.4}.hint{font-size:12px;color:var(--muted)}.hscroll{scrollbar-width:thin}.hscroll::-webkit-scrollbar{height:12px}.hscroll::-webkit-scrollbar-thumb{background:var(--line2);border-radius:8px;border:3px solid #fff}.hscroll::-webkit-scrollbar-track{background:var(--soft);border-radius:8px}.hint a{color:var(--brand);text-decoration:none;font-weight:600}.hint a:hover{text-decoration:underline}.est-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.est-toolbar .tinp{flex:1;min-width:200px}.est-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}.est-card{margin:0}.est-card-new{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:200px;border:1px solid var(--impl-line);border-radius:14px;background:var(--impl-bg);color:var(--ink);cursor:pointer;box-shadow:var(--sh-card);transition:.12s;font-family:inherit;text-align:center;padding:20px}.est-card-new:hover{border-color:var(--brand);background:var(--impl-chip)}.est-card-new .ic{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:14px;background:var(--tint);color:var(--brand);margin-bottom:4px}.est-card-new .t{font-size:18px;font-weight:700;color:var(--ink)}.est-card-new .s{font-size:13px;color:var(--muted);max-width:210px;line-height:1.35}.est-card-new.disabled{cursor:default;opacity:.5;pointer-events:none}.proc-selchips{display:flex;flex-wrap:wrap;gap:9px}.selchip{display:inline-flex;align-items:center;font-size:14.5px;font-weight:600;padding:9px 15px;border-radius:11px;line-height:1.3}.selchip.mod{background:var(--tint);color:var(--tintink)}.selchip.intg{background:var(--soft);color:var(--sec);border:1px solid var(--line)}.est-card--impl{background:var(--impl-bg);border-color:var(--impl-line)}.est-card--addon{background:var(--addon-bg);border-color:var(--addon-line)}.chip.kind.impl{background:var(--impl-chip);color:var(--impl-ink)}.chip.kind.addon{background:var(--addon-chip);color:var(--addon-ink)}.est-card .card-b{display:flex;flex-direction:column;height:100%}.est-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px}.est-card-name{font-size:16px;font-weight:700;color:var(--ink);line-height:1.3}.est-card-cust{font-size:13px;color:var(--muted);margin-bottom:12px}.est-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.est-chips .chip{display:inline-flex;align-items:center;gap:5px}.est-total{font-size:24px;font-weight:700;color:var(--ink);margin-bottom:2px}.est-total-tag{font-size:12px;font-weight:600;color:var(--muted)}.est-totals{margin-bottom:2px}.est-total-2{font-size:16px;font-weight:700;color:var(--sec);margin-top:0}.est-when{font-size:12px;color:var(--faint);margin-bottom:14px;margin-top:auto}.est-author{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--sec);margin:-9px 0 14px}.est-author .svgi{color:var(--muted)}.est-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);padding-top:14px}.drift-card{padding:14px 18px;margin-bottom:18px;border:1px solid var(--amber-line);background:var(--surface)}.drift-head{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;flex-wrap:wrap}.drift-title{display:flex;align-items:center;gap:7px;font-size:14.5px;font-weight:700;color:var(--ink)}.drift-title .svgi{color:var(--amber-ink)}.drift-sub{font-size:12.5px;color:var(--sec);margin-top:3px}.drift-sec-h{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:2px 0}.drift-list{margin-top:12px;border-top:1px solid var(--line);padding-top:6px}.drift-row{display:flex;align-items:center;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}.drift-row:last-child{border-bottom:none}.drift-lbl{flex:1;min-width:0;color:var(--ink)}.drift-vals{display:inline-flex;align-items:center;gap:8px;flex:none;white-space:nowrap}.drift-was{color:var(--muted);text-decoration:line-through}.drift-arrow{color:var(--faint)}.drift-now{color:var(--brand2);font-weight:700}.est-empty{text-align:center;color:var(--muted);font-size:14px;padding:60px 0}.est-empty a{color:var(--brand);font-weight:600;text-decoration:none}.est-empty a:hover{text-decoration:underline}.est-recent-wrap{margin-bottom:20px}.est-recent{display:flex;gap:12px;flex-wrap:wrap}.est-recent-card{flex:1;min-width:200px;max-width:280px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-card);padding:12px 14px;cursor:pointer;transition:.12s}.est-recent-card:hover{border-color:var(--brand);box-shadow:var(--sh-pop)}.est-recent-name{font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.est-recent-meta{font-size:16px;font-weight:700;color:var(--ink);margin-top:4px}.est-recent-when{font-size:11.5px;color:var(--faint);margin-top:2px}.est-card.selectable{cursor:pointer}.est-card.selectable:hover{border-color:var(--line2)}.est-card.sel{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand),var(--sh-card)}.crumb .lnk{color:var(--brand);cursor:pointer;font-weight:600}.crumb .lnk:hover{text-decoration:underline}.wiz-crumb{display:flex;align-items:center;gap:10px;min-width:0}.wiz-crumb .lnk{display:inline-flex;align-items:center;gap:4px;flex:none}.wiz-name{font-size:18px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-row.locked{opacity:.4;cursor:default}.nav-row.locked:hover{background:transparent;color:var(--faint)}select.tinp{height:40px;background:var(--surface);cursor:pointer}.mtop,.nav-backdrop{display:none}@media (max-width:1000px){.body{flex-direction:column;gap:18px;padding:22px 20px 60px}.summary{width:100%;position:static;top:auto}.main{max-width:none}}@media (max-width:760px){.mtop{display:flex;align-items:center;gap:12px;height:52px;padding:0 14px;background:var(--rail);color:#fff;position:sticky;top:0;z-index:90}.mtop-burger{width:38px;height:38px;flex:none;border:none;background:#ffffff24;color:#fff;border-radius:9px;font-size:17px;display:flex;align-items:center;justify-content:center;cursor:pointer}.mtop-title{font-size:14px;font-weight:600;letter-spacing:-.01em;color:#fff}.app{flex-direction:column}.rail{position:fixed;left:0;top:0;height:100dvh;width:84vw;max-width:300px;z-index:100;transform:translate(-100%);transition:transform .22s ease;box-shadow:var(--sh-pop)}.rail.open{transform:none}.nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000006b;z-index:99}.shell{width:100%}.topbar{height:auto;min-height:52px;padding:10px 14px;flex-wrap:wrap;gap:8px;position:static}.topbar-r{flex-wrap:wrap;gap:8px;white-space:normal}.topbar-r .btn{font-size:12.5px;padding:8px 11px}.seg button{padding:7px 11px;font-size:12.5px}.wiz-crumb{flex-wrap:wrap;gap:7px}.body{padding:16px 14px 72px;gap:16px}.grid2,.grid3,.est-grid{grid-template-columns:1fr}.hscroll{-webkit-overflow-scrolling:touch}.card-b{padding:14px}.etbl{font-size:12px}.etbl th,.etbl td{padding:6px}.cellinp{width:92px;height:30px}.cellinp.days{width:54px}}@media (max-width:760px){.crow{flex-wrap:wrap;row-gap:9px}.crow .nm{flex:1 1 58%;min-width:150px}.crow .chip{white-space:normal}.crow .stepper{margin-left:auto}}@media (max-width:760px){.opts{grid-template-columns:1fr}.opt{flex-wrap:wrap;row-gap:6px}.opt .t{flex:1 1 60%;min-width:0}.opt .chip{white-space:normal}}@media (max-width:760px){[data-admin] .topbar{flex-direction:column;align-items:stretch;gap:8px}[data-admin] .topbar-r{width:100%;flex-wrap:wrap}[data-admin] .topbar-r .tag{width:100%;justify-content:center}[data-admin] .topbar-r .btn{flex:1 1 auto;justify-content:center}.atabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -14px 14px;padding:0 14px 6px}.atabs button{flex:0 0 auto}}
