:root{--bg: #f5f4ed;--panel: #ffffff;--ink: #312e2a;--muted: #626b60;--line: #dedfd4;--line-strong: #ccd3c7;--green: #0b352e;--soft: #ecebdf;--asparagus: #759870;--flax: #efdf81;--brand: #0b352e;--brand-2: #759870;--brand-soft: #e9f0e4;--warn: #967022;--warn-soft: #f9f3d3;--err: #af5347;--err-soft: #faeee9;--ok: #315a36;--ok-soft: #e9f0e4;--radius: 12px;--shadow: 0 4px 20px rgba(11, 53, 46, .03);font-family:Manrope,Segoe UI,system-ui,-apple-system,sans-serif;font-size:15px;color:var(--ink);background:var(--bg)}:root.text-lg{font-size:17px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;background:var(--bg)}button,input,select,textarea{font:inherit;color:inherit}:focus{outline:none}:focus-visible{outline:2px solid var(--brand-2);outline-offset:2px}.nav-btn:focus-visible,.nav-cta:focus-visible,.nav-search:focus-visible{outline-color:#fff}.layout{display:grid;grid-template-columns:280px 1fr;height:100%}.sidebar{background:var(--brand);color:#e8f1ec;display:flex;flex-direction:column;padding:18px 12px;gap:4px}.brand{font-weight:700;font-size:17px;padding:4px 10px 18px;letter-spacing:.2px;display:flex;justify-content:center}.brand-logo{display:block;max-height:64px;max-width:100%;object-fit:contain}.sidebar .brand-logo{filter:brightness(0) invert(1)}.login-brand .brand-logo{max-height:88px}.nav-btn{background:transparent;border:0;color:inherit;text-align:left;padding:9px 12px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:9px;min-height:32px}.nav-btn:hover{background:#ffffff14}.nav-btn.active{background:#ffffff29;font-weight:600}.sidebar .spacer{flex:1}.nav-cta{background:#fff;color:var(--brand);border:0;border-radius:8px;padding:11px 12px;margin:0 0 10px;font-size:15px;font-weight:700;cursor:pointer;text-align:center;box-shadow:0 1px 3px #00000040}.nav-cta:hover{background:#eef5f1}.nav-cta.active{outline:2px solid rgba(255,255,255,.6);outline-offset:2px}.nav-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.nav-group{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.nav-group-title{font-size:13px;text-transform:uppercase;letter-spacing:.6px;opacity:.6;padding:6px 12px 2px}.who{font-size:13px;opacity:.85;padding:8px 12px;border-top:1px solid rgba(255,255,255,.15)}.who b{display:block;font-size:13px}.main{overflow:auto;padding:22px 28px 40px}.page-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.page-head h1{font-size:21px;margin:0;font-weight:650}.page-head .grow{flex:1}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px;margin-bottom:14px}.card h2{font-size:15px;margin:0 0 12px;font-weight:650}.card h3{font-size:14px;margin:14px 0 8px;font-weight:600}.btn{border:1px solid var(--line-strong);background:#fff;padding:7px 13px;border-radius:6px;cursor:pointer;white-space:nowrap;min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:4px}a.btn{text-decoration:none;color:inherit}.btn:hover{background:#f1f3f0}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.btn.primary:hover{background:var(--brand-2)}.btn.danger{color:var(--err);border-color:#e7b9b5}.btn.small{padding:3px 8px;font-size:13px;min-height:32px}.btn.link{border:0;background:none;color:var(--brand);padding:2px 4px;min-height:auto}.btn.link:hover{text-decoration:underline;background:none}.btn-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}label.field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}label.field>span{font-weight:500}input,select,textarea{border:1px solid var(--line-strong);border-radius:6px;padding:6px 8px;background:#fff;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid rgba(45,122,85,.35);border-color:var(--brand-2)}input.bad,select.bad{border-color:var(--err);background:var(--err-soft)}input[type=checkbox]{width:16px;height:16px}.grid{display:grid;gap:12px}.grid>*{min-width:0}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.check{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink)}.dash-grid{display:grid;grid-template-columns:1fr 380px;gap:16px;align-items:start}.dash-main{min-width:0}.dash-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:0;min-width:0}.dash-side .card{margin-bottom:0}table.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{text-align:left;font-weight:600;color:var(--muted);font-size:13px;padding:7px 8px;border-bottom:1px solid var(--line-strong);background:#fafbf9;position:sticky;top:0}.tbl td{padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl tr:hover td{background:#fafcfa}.tbl td.num,.tbl th.num{text-align:right;font-variant-numeric:tabular-nums}.tbl td.num{white-space:nowrap}.tbl tfoot td{font-weight:700;border-top:2px solid var(--line-strong);background:#fafbf9}.tbl input,.tbl select{width:100%;padding:4px 6px}.tbl .err-row td{background:var(--err-soft)}.coef-bar{display:flex;align-items:center;gap:12px;margin:0 0 12px;flex-wrap:wrap}.coef-bar select,.coef-bar input{width:110px}.coef-custom{display:inline-flex;gap:4px;align-items:center}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg, #f3f4f1);padding:24px}.login-card{width:100%;max-width:440px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:26px 28px}.login-brand{font-size:22px;font-weight:700;color:var(--brand);margin-bottom:16px}.login-brand small{display:block;font-size:13px;font-weight:400;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:14px}.stat{text-align:left;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow);color:inherit;font:inherit}.stat.click{cursor:pointer}.stat.click:hover{border-color:var(--brand-2)}.stat small{display:block;color:var(--muted);font-size:13px}.stat b{display:block;font-size:24px;margin-top:4px;font-variant-numeric:tabular-nums}.stat em{display:block;font-style:normal;font-size:13px;color:var(--muted)}.badge.role{background:var(--brand-soft);color:var(--brand)}.mono{font-family:Consolas,monospace}.combo{position:relative}.combo-list{position:fixed;z-index:60;overflow-y:auto;background:#fff;border:1px solid var(--line-strong);border-radius:6px;box-shadow:0 6px 20px #0000002e;padding:4px 0}.combo-item{padding:6px 10px;cursor:pointer;font-size:13.5px}.combo-item.on,.combo-item:hover{background:var(--brand-soft)}.combo-item.add{border-top:1px solid var(--line);color:var(--brand);font-weight:600}.combo-empty{padding:6px 10px;color:var(--muted);font-size:13px}.tbl-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.scroll-x{overflow-x:auto;max-width:100%}.row-actions{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.tbl td.wrap-any{overflow-wrap:anywhere}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:13px;font-weight:600;background:#eef0ed;color:var(--muted)}.badge.draft{background:#eef0ed;color:#58615b}.badge.pending{background:var(--warn-soft);color:#8a5a00}.badge.approved{background:var(--ok-soft);color:var(--ok)}.approvals-item{display:block;width:100%;text-align:left;padding:8px 10px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;color:var(--ink);font-size:13.5px}.approvals-item:hover{background:var(--brand-soft)}.approvals-item.active{background:var(--brand-soft);border-color:var(--brand)}.approvals-item small{display:block;opacity:.75;font-weight:400}.badge.issued{background:#e3edf8;color:#1f4f86}.badge.sent{background:var(--brand-soft);color:var(--brand)}.badge.contract{background:var(--ok-soft);color:var(--ok)}.badge.rejected{background:var(--err-soft);color:var(--err)}.alert{border-radius:var(--radius);padding:10px 14px;margin-bottom:14px;font-size:13.5px;border:1px solid}.alert.warn{background:var(--warn-soft);border-color:#f0d49a;color:#6d4700}.alert.err{background:var(--err-soft);border-color:#f0bdb8;color:#7c1b15;white-space:pre-line}.alert.ok{background:var(--ok-soft);border-color:#b8dfc4;color:#16562b}.alert.info{background:#eef4fb;border-color:#c8daf0;color:#22446e}.steps{display:flex;gap:6px;margin-bottom:16px}.step{flex:1;border:1px solid var(--line);background:#fff;border-radius:6px;padding:8px 12px;cursor:pointer;text-align:left;color:var(--muted)}.step b{display:block;color:var(--ink);font-size:13.5px}.step.active{border-color:var(--brand);box-shadow:inset 0 -3px 0 var(--brand)}.step .dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--err);margin-left:6px;vertical-align:middle}.step.done b:after{content:" ✓";color:var(--ok)}.org-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.org-card{border:1px solid var(--line);border-radius:var(--radius);padding:12px;cursor:pointer;background:#fff;text-align:left}.org-card:hover{border-color:var(--brand-2)}.org-card.sel{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.org-card .series{font-size:13px;color:var(--muted);margin-top:4px}.variants{display:flex;gap:8px;flex-wrap:wrap}.variant{border:1px solid var(--line-strong);background:#fff;padding:8px 14px;border-radius:6px;cursor:pointer}.variant.sel{background:var(--brand);color:#fff;border-color:var(--brand)}.totals{display:flex;gap:22px;justify-content:flex-end;padding:12px 4px 0;flex-wrap:wrap}.totals div{text-align:right}.totals small{display:block;color:var(--muted);font-size:13px}.totals b{font-size:16px;font-variant-numeric:tabular-nums}.totals .big b{font-size:20px;color:var(--brand)}.words{color:var(--muted);font-size:13px;text-align:right;margin-top:4px}.qc{list-style:none;padding:0;margin:0}.qc li{padding:5px 0;display:flex;gap:8px;font-size:13.5px;border-bottom:1px dashed var(--line)}.qc li .i{width:18px;font-weight:700}.qc li.ok .i{color:var(--ok)}.qc li.bad .i{color:var(--err)}.qc li small{color:var(--muted);margin-left:auto;text-align:right;max-width:55%;overflow-wrap:anywhere}.modal-back{position:fixed;inset:0;background:#0f191459;display:flex;align-items:center;justify-content:center;z-index:50}.modal{background:#fff;border-radius:10px;padding:20px 22px;width:min(560px,92vw);max-height:90vh;overflow:auto;box-shadow:0 10px 40px #0003}.modal h2{margin:0 0 14px;font-size:17px}.modal .btn-row{justify-content:flex-end;margin-top:16px}.toasts{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;z-index:60}.toast{background:#22302a;color:#fff;padding:10px 14px;border-radius:8px;max-width:420px;box-shadow:var(--shadow);font-size:13.5px;white-space:pre-line}.toast.err{background:var(--err)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line-strong);margin-bottom:14px}.tab{border:0;background:none;padding:9px 14px;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tab.active{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.muted{color:var(--muted)}.mono{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.empty{text-align:center;color:var(--muted);padding:30px}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:34px 20px;color:var(--muted)}.empty-state svg{color:var(--line-strong);margin-bottom:4px}.empty-state b{color:var(--ink);font-size:14.5px}.empty-state p{margin:0;max-width:380px;font-size:13px}.empty-state .btn{margin-top:6px}.nav-icon{flex:none;opacity:.85}.busy{position:fixed;inset:0;background:#ffffff8c;display:flex;align-items:center;justify-content:center;z-index:70;font-weight:600;color:var(--brand);font-size:15px}.busy .box{background:#fff;border:1px solid var(--line);padding:16px 22px;border-radius:10px;box-shadow:var(--shadow)}.hbars{display:flex;flex-direction:column;gap:7px}.hbar{display:grid;grid-template-columns:minmax(90px,30%) 1fr minmax(110px,auto);gap:10px;align-items:center;font-size:13px}.hbar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-track{display:block;height:14px;background:#eef1ee;border-radius:4px;overflow:hidden}.hbar-fill{display:block;height:100%;background:var(--brand-2);border-radius:4px}.hbar-value{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.hbar-value em{color:var(--muted);font-style:normal;font-size:13px}.vbars{display:flex;gap:6px;align-items:flex-end;height:190px}.vbar{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;height:100%}.vbar-val{font-size:13px;color:var(--muted);height:15px}.vbar-track{flex:1;width:100%;display:flex;align-items:flex-end}.vbar-fill{display:block;width:100%;background:var(--brand-2);border-radius:4px 4px 0 0}.vbar-label{font-size:13px;color:var(--muted);margin-top:4px}.funnel{display:flex;flex-wrap:wrap;gap:8px}.funnel-step{flex:1 1 110px;background:#f3f6f3;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.funnel-step small{display:block;color:var(--muted);font-size:13px}.funnel-step b{font-size:20px}label.inline{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;object-fit:cover;flex:none;background:#ffffff38;color:#fff;font-weight:700}.card .avatar{background:#2f7d4a}.who-row{display:flex;align-items:center;gap:10px}.who-row b{display:block;font-size:13px}.shift-card{border-left:5px solid #b8bdb5}.shift-card.on{border-left-color:#2f7d4a}.shift-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.shift-main{flex:1}.shift-btn{min-width:150px;font-size:18px;font-weight:700;padding:14px 22px;color:#fff;border:0}.shift-btn.start{background:#2f7d4a}.shift-btn.stop{background:#b3372c}h3.sub{font-size:13px;text-transform:uppercase;letter-spacing:.4px;color:#6b736b;margin:14px 0 4px}.nav-search{display:flex;align-items:center;justify-content:space-between;gap:6px;background:#ffffff1a;border:0;color:inherit;border-radius:8px;padding:8px 12px;margin:0 0 10px;font-size:13.5px;cursor:pointer;text-align:left}.nav-search:hover{background:#ffffff2e}.nav-search kbd{font-size:13px;opacity:.7;border:1px solid rgba(255,255,255,.35);border-radius:4px;padding:1px 5px;font-family:inherit}.search-back{align-items:flex-start;padding-top:12vh}.search-box{width:min(640px,94vw);padding:14px}.search-input{width:100%;font-size:16px;padding:10px 12px;box-sizing:border-box}.search-list{margin-top:10px;max-height:50vh;overflow:auto}.search-hit{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:6px;cursor:pointer}.search-hit.on{background:#e8f2ec}.search-hit .badge{flex:none;margin-top:2px}.nav-burger{display:none;position:fixed;top:12px;left:12px;z-index:45;width:40px;height:40px;border-radius:8px;border:0;background:var(--brand);color:#fff;font-size:18px;cursor:pointer}.nav-backdrop{display:none}@media(max-width:1100px){.layout{grid-template-columns:180px 1fr}.sidebar{padding:14px 8px}.main{padding:16px 16px 32px}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr 260px}}@media(max-width:800px){.layout{grid-template-columns:1fr}.nav-burger{display:flex;align-items:center;justify-content:center}.sidebar{position:fixed;inset:0 40% 0 0;z-index:44;width:auto;max-width:300px;transform:translate(-100%);transition:transform .15s ease-out;box-shadow:2px 0 16px #00000040}.sidebar.open{transform:translate(0)}.nav-backdrop{display:block;position:fixed;inset:0;background:#0a0f0c66;z-index:43}.main{padding:56px 14px 32px}.g2,.g3,.g4,.dash-grid{grid-template-columns:1fr}.dash-side{display:contents}.dash-side>.shift-card{order:-1}.steps{flex-direction:column}.totals{justify-content:flex-start}.stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.nav-search kbd{display:none}.tabs{overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{flex:none;white-space:nowrap;padding:9px 10px}select{max-width:100%}.btn-row>select,.btn-row>input{flex:1 1 0;width:auto;min-width:0}input,select,textarea{font-size:16px}}@media(max-width:800px){.tbl-wrap{max-width:100%}.main table.tbl{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.tbl-wrap table.tbl{display:table;overflow:visible}.main table.tbl th:first-child,.main table.tbl td:first-child{position:sticky;left:0;background:#fff;box-shadow:1px 0 0 var(--line);z-index:1}.main table.tbl th:first-child{background:#fafbf9;z-index:2}.main table.tbl th{position:static}}.stage-summary{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.stage-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid transparent;background:#eef0ed;color:#58615b}button.stage-pill{cursor:pointer}button.stage-pill.sel{border-color:var(--brand)}.stage-pill.called,.stage-pill.meeting{background:#e3edf8;color:#1f4f86}.stage-pill.proposal,.stage-pill.negotiation{background:var(--warn-soft);color:#8a5a00}.stage-pill.won,.stage-pill.paid{background:var(--ok-soft);color:var(--ok)}.stage-pill.lost{background:var(--err-soft);color:var(--err)}.stage-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 6px}.stage-step{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius);border:1px solid var(--line-strong);background:#fff;color:var(--ink);cursor:pointer;font-size:14px}.stage-step span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#eef0ed;font-size:12px;font-weight:700}.stage-step.done{background:var(--brand-soft);border-color:var(--brand-soft);color:var(--brand)}.stage-step.cur{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.stage-step.cur span{background:#ffffff40}.stage-step.won.cur,.stage-step.paid.cur{background:var(--ok);border-color:var(--ok)}.stage-step:disabled{cursor:default}.stage-sep{color:var(--muted)}.history{margin-bottom:14px}.history-form{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.history-form .grow{flex:1;min-width:180px}.history-list{list-style:none;margin:0 0 8px;padding:0;border:1px solid var(--line);border-radius:var(--radius);max-height:260px;overflow:auto}.history-list li{display:flex;align-items:baseline;gap:10px;padding:7px 10px;border-bottom:1px solid var(--line);font-size:14px}.history-list li:last-child{border-bottom:0}.history-list li.stage{background:#fafbf9;font-size:13px}.ev-date{color:var(--muted);white-space:nowrap;min-width:78px}.ev-kind{white-space:nowrap;font-weight:600;font-size:12px;padding:1px 8px;border-radius:999px;background:#eef0ed;color:#58615b}.ev-kind.call{background:#e3edf8;color:#1f4f86}.ev-kind.meeting{background:var(--brand-soft);color:var(--brand)}.ev-kind.note{background:var(--warn-soft);color:#8a5a00}.ev-text{flex:1}.ev-del{padding:0 8px}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/manrope-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/manrope-latin.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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}h1,h2,h3{color:var(--green)}h1{letter-spacing:-.8px}.layout{grid-template-columns:240px minmax(0,1fr)}.sidebar{background:var(--green);color:#ecebdf;padding:26px 16px 18px;gap:6px}.brand{padding:0 8px 26px}.brand-logo{max-height:58px}.nav-group-title{font-size:11px;letter-spacing:1.6px;font-weight:700;color:#9fb09b;opacity:1;padding:10px 14px 4px}.nav-btn{color:#c8d4c5;border-radius:8px;padding:11px 14px;font-weight:600;min-height:42px}.nav-btn:hover{background:#ffffff12;color:#fff}.nav-btn.active{background:var(--flax);color:var(--green);font-weight:700}.nav-btn.active .nav-icon{opacity:1}.nav-btn:focus-visible{outline-color:var(--flax)}.who{border-top:1px solid rgba(255,255,255,.14);padding:16px 8px 4px;margin-top:6px;opacity:1;font-size:13px}.who-row b{color:#fff;font-size:14px}.who-role{display:block;color:#b6c4b1;font-size:12px;margin-top:2px}.who-ver{display:block;color:#8fa18b;font-size:11px;margin-top:2px}.sidebar .avatar{background:var(--asparagus);color:#fff}.main{padding:0;display:flex;flex-direction:column;min-width:0}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;height:76px;padding:0 38px;background:#faf9f3;border-bottom:1px solid var(--line);flex:none}.topbar .grow{flex:1}.crumb{font-size:12px;letter-spacing:.3px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crumb span{margin:0 4px;opacity:.6}.crumb strong{color:var(--ink);font-weight:700;font-size:14px;letter-spacing:0}.top-search{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);cursor:pointer;font-size:13px}.top-search:hover{border-color:var(--asparagus);color:var(--ink)}.top-search kbd{font-family:inherit;font-size:11px;border:1px solid var(--line);border-radius:4px;padding:1px 5px;color:var(--muted)}.sync{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#4b7147;white-space:nowrap}.sync i{width:8px;height:8px;border-radius:50%;background:var(--asparagus);box-shadow:0 0 0 3px #75987033}.top-avatar{border:0;background:none;padding:0;cursor:pointer;border-radius:50%}.top-avatar .avatar{background:var(--soft);color:var(--green)}.content{padding:30px 38px 48px;width:100%;max-width:1650px;margin:0 auto}.topbar .nav-burger{position:static;display:none;width:40px;height:40px;background:var(--green);border-radius:8px}.page-head{margin-bottom:22px;gap:12px}.page-head h1{font-size:30px;font-weight:800;letter-spacing:-1px;color:var(--green);line-height:1.2}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.2px;font-weight:800;color:var(--asparagus)}.card{border-radius:14px;border-color:var(--line);box-shadow:0 4px 20px #0b352e08;padding:22px 24px;margin-bottom:18px}.card h2{font-size:18px;font-weight:700;letter-spacing:-.3px;margin-bottom:16px}.card h3{color:var(--green)}.btn{min-height:42px;padding:9px 16px;border-radius:8px;border-color:var(--line);background:#fff;color:var(--ink);font-weight:600;font-size:14px;gap:8px}.btn:hover{background:#f7f6ef;border-color:#cfd2c4}.btn.primary{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}.btn.primary:hover{background:#134a40}.btn.danger{background:#faeeea;border-color:#faeeea;color:var(--err)}.btn.danger:hover{background:#f5e0d9}.btn.small{min-height:32px;padding:5px 11px;font-size:13px;border-radius:7px}.btn.ghost{background:transparent;border-color:transparent}.btn.full{width:100%}.btn.link{color:var(--green);font-weight:600}label.field{gap:7px;font-size:13px;color:#4b5b48}label.field>span{font-weight:600}input,select,textarea{border:1px solid #ccd3c7;border-radius:7px;padding:10px 12px;min-height:42px;background:#fff;color:var(--ink)}textarea{min-height:84px}input[type=checkbox],input[type=radio]{min-height:0;accent-color:var(--green)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--asparagus);box-shadow:0 0 0 3px #7598702e}.tbl input,.tbl select{min-height:34px;padding:5px 8px}.tbl-wrap{border-radius:12px;border-color:var(--line)}table.tbl{font-size:14px}.tbl th{background:var(--soft);color:var(--green);font-size:12px;font-weight:700;padding:13px;border-bottom:1px solid var(--line)}.tbl td{padding:13px;border-bottom-color:#e5e6dc}.tbl tr:hover td{background:#f5f5ec}.tbl tfoot td{background:var(--soft);border-top-color:var(--line)}.card>table.tbl{margin:0 -2px}.badge,.stage-pill,.ev-kind{border-radius:7px;font-size:12px;font-weight:700;padding:4px 8px;background:var(--soft);color:var(--muted)}.badge.approved,.badge.contract,.badge.sent,.stage-pill.won,.stage-pill.paid,.ev-kind.meeting{background:#e9f0e4;color:#315a36}.badge.pending,.stage-pill.proposal,.stage-pill.negotiation,.ev-kind.note{background:#f7efc2;color:#665619}.badge.rejected,.stage-pill.lost{background:#faeae4;color:#ad574c}.badge.issued,.stage-pill.called,.stage-pill.meeting,.ev-kind.call{background:#e7eef5;color:#487898}.badge.role{background:var(--soft);color:var(--green)}.alert{border-radius:12px;padding:13px 16px;font-size:14px;line-height:1.5}.alert.warn{background:#f9f3d3;border-color:var(--flax);color:#625321}.alert.ok{background:#eef4ea;border-color:#cddcc6;color:#2f5530}.alert.info{background:#eef3f6;border-color:#cfdde7;color:#2e5670}.alert.err{background:#faeee9;border-color:#efcfc6;color:#8c3b30}.tabs{border-bottom:0;gap:6px;flex-wrap:wrap;margin-bottom:18px}.tab{border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 14px;color:var(--muted);font-size:13px;font-weight:600;margin:0}.tab:hover{color:var(--ink);border-color:#cfd2c4}.tab.active{background:var(--green);border-color:var(--green);color:#fff}.stage-step{border-radius:8px;border-color:var(--line);min-height:40px;font-weight:600}.stage-step.done{background:#e9f0e4;border-color:#e9f0e4;color:#315a36}.stage-step.cur{background:var(--green);border-color:var(--green)}.stage-step.won.cur,.stage-step.paid.cur{background:var(--asparagus);border-color:var(--asparagus)}.stage-step.lost.cur{background:var(--err);border-color:var(--err)}button.stage-pill.sel{border-color:var(--green)}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px}.stat{border-radius:12px;border:1px solid var(--line);border-top:3px solid var(--asparagus);padding:20px 20px 18px;box-shadow:0 4px 20px #0b352e08}.stat:nth-child(2){border-top-color:var(--flax)}.stat:nth-child(4){border-top-color:var(--ink)}.stat small{font-size:12px;font-weight:600;color:#525f50}.stat b{font-size:clamp(21px,2vw,30px);letter-spacing:-1px;margin-top:14px;font-weight:700;color:var(--green)}.stat em{font-size:12px;margin-top:8px;line-height:1.5}.stats>.stat:first-child{background:var(--green);border-color:var(--green);color:#d3dfcd}.stats>.stat:first-child small,.stats>.stat:first-child em{color:#d3dfcd}.stats>.stat:first-child b{color:var(--flax)}.stat.click:hover{border-color:var(--asparagus)}.stats>.stat.click:first-child:hover{border-color:var(--flax)}.brand-banner{position:relative;overflow:hidden;isolation:isolate;min-height:170px;border-radius:14px;margin-bottom:24px;padding:28px 34px;background:var(--green);color:#ecebdf;display:flex;align-items:center}.brand-banner:after{content:"";position:absolute;inset:0 0 0 38%;z-index:-1;background:linear-gradient(90deg,var(--green) 0%,rgba(11,53,46,.4) 35%,rgba(11,53,46,0) 100%),url(/brand-botanical.jpg) center 48% / cover}.brand-banner .eyebrow{color:var(--flax);font-size:10px;letter-spacing:2.6px;margin-bottom:12px}.brand-banner h1{color:#fff;font-size:29px;line-height:1.2;letter-spacing:-.8px;margin:0;max-width:460px}.brand-banner p{color:#d0dccc;margin:10px 0 0;font-size:13px;line-height:1.6;max-width:360px}.modal-back:not(.search-back){justify-content:flex-end;align-items:stretch;background:#0a241e57;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-back:not(.search-back) .modal{width:min(600px,100%);max-height:none;height:100%;border-radius:0;background:var(--bg);padding:0;display:flex;flex-direction:column;box-shadow:-15px 0 60px #102a2524;animation:drawer-in .18s ease-out}@keyframes drawer-in{0%{transform:translate(40px);opacity:.4}to{transform:none;opacity:1}}.modal-head{display:flex;align-items:center;gap:12px;padding:22px 26px 16px;border-bottom:1px solid var(--line)}.modal-head h2{flex:1;margin:0;font-size:21px;letter-spacing:-.4px}.modal-x{border:0;background:#fff;border:1px solid var(--line);width:36px;height:36px;border-radius:8px;font-size:20px;line-height:1;cursor:pointer;color:var(--muted)}.modal-x:hover{color:var(--ink);border-color:#cfd2c4}.modal-body{flex:1;overflow:auto;padding:20px 26px}.modal .btn-row.modal-actions{margin:0;padding:14px 26px;border-top:1px solid var(--line);background:#faf9f3;justify-content:flex-end}.modal.search-box{border-radius:14px}.steps .step{border-radius:10px;border-color:var(--line)}.step.active{border-color:var(--green);box-shadow:inset 0 -3px 0 var(--green)}.org-card{border-radius:12px}.org-card.sel{border-color:var(--green);background:#eef3ea;box-shadow:inset 0 0 0 1px var(--green)}.variant.sel{background:var(--green);border-color:var(--green)}.totals .big b{color:var(--green)}.hbar-fill,.vbar-fill{background:var(--asparagus)}.hbar-track{background:var(--soft)}.funnel-step{background:#faf9f3;border-radius:10px}.combo-item.on,.combo-item:hover,.approvals-item:hover,.approvals-item.active{background:#eef3ea}.approvals-item.active{border-color:var(--green)}.shift-card.on{border-left-color:var(--asparagus)}.shift-btn.start{background:var(--green);color:#fff}.shift-btn.stop{background:var(--err);color:#fff}.toast{background:var(--green);border-radius:10px}.empty-state svg{color:var(--asparagus)}.empty-state b,.busy{color:var(--green)}.login{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1.05fr 1fr;background:var(--soft)}.login-hero{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;padding:56px 9%;background:var(--green);color:#fff}.login-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--green) 0%,rgba(11,53,46,.8) 37%,rgba(11,53,46,0) 75%),url(/brand-botanical.jpg) center / cover}.login-logo{display:flex;flex-direction:column;gap:4px}.login-logo .brand-logo{max-height:64px;max-width:250px;filter:brightness(0) invert(1)}.login-logo small{color:var(--flax);font-size:10px;letter-spacing:2.4px;text-transform:uppercase;font-weight:800}.login-wordmark{font-size:26px;font-weight:800;letter-spacing:1px}.login-hero h1{color:#fff;font-size:clamp(36px,4vw,58px);line-height:1.12;letter-spacing:-2px;margin:64px 0 0}.login-hero h1 span{display:block;color:var(--flax)}.login-hero p{color:#d7e2d3;margin:22px 0 0;line-height:1.7;max-width:360px}.login-side{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 12%}.login-box{width:100%;max-width:440px;background:#fbfaf5;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 18px 45px #173c3312}.login-box h2{font-size:22px;margin:0 0 12px}.login-box-head{display:flex;align-items:center;justify-content:space-between;color:var(--green)}.login-lead{color:var(--muted);font-size:14px;line-height:1.6;margin:0 0 22px}.google-btn{display:flex;align-items:center;gap:12px;width:100%;min-height:54px;padding:0 18px;border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:700;font-size:14px;cursor:pointer}.google-btn:hover{background:#134a40}.google-btn svg{background:#fff;border-radius:50%;padding:2px;width:24px;height:24px;flex:none}.google-btn .google-arrow{margin-left:auto;font-size:18px}.login-rule{display:flex;align-items:center;gap:9px;margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.login-help{margin:20px 0 0;max-width:440px;text-align:center;font-size:13px;color:var(--muted);line-height:1.6}@media(min-width:1500px){.content{padding-top:38px}}@media(max-width:1100px){.layout{grid-template-columns:200px minmax(0,1fr)}.sidebar{padding:22px 10px 14px}.topbar{padding:0 24px}.content{padding:24px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sync{display:none}}@media(max-width:800px){.layout{grid-template-columns:1fr}.topbar{height:62px;padding:0 14px;gap:10px}.topbar .nav-burger{display:flex}.top-search span,.top-search kbd{display:none}.top-search{width:40px;padding:0;justify-content:center}.content{padding:20px 14px 32px}.main{padding:0}.page-head h1{font-size:24px}.card{padding:18px 16px;border-radius:13px}.stats{gap:10px}.stat{padding:15px 13px}.stat b{font-size:22px;margin-top:10px}.brand-banner{padding:22px 20px;min-height:150px}.brand-banner:after{inset:0;background:linear-gradient(90deg,var(--green) 0%,rgba(11,53,46,.86) 55%,rgba(11,53,46,.45) 100%),url(/brand-botanical.jpg) 70% 48% / cover}.brand-banner h1{font-size:23px}.sidebar{padding-top:22px}.modal-back:not(.search-back) .modal{width:100%}.modal-head,.modal-body{padding-left:16px;padding-right:16px}.modal .btn-row.modal-actions{padding:12px 16px}.login{grid-template-columns:1fr}.login-hero{padding:36px 24px 44px;min-height:380px}.login-hero h1{font-size:34px;margin-top:40px;letter-spacing:-1.2px}.login-side{padding:0 16px 34px;margin-top:-28px}.login-box{padding:24px}.main table.tbl th:first-child{background:var(--soft)}}.install-hero{display:flex;gap:14px;align-items:center;margin-bottom:16px}.install-hero img{border-radius:14px;flex:none;box-shadow:0 4px 14px #0b352e2e}.install-hero b{font-size:17px;color:var(--green)}.install-hero p{margin:4px 0 0}.install-steps{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:10px}.install-step{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;line-height:1.45}.install-step svg{vertical-align:-4px;color:var(--green)}.install-n{flex:none;width:26px;height:26px;border-radius:50%;background:var(--green);color:var(--flax);font-weight:700;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.install-note{font-size:13px}.top-ai{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 14px;border:0;border-radius:8px;background:var(--green);color:var(--flax);font-weight:700;font-size:14px;cursor:pointer}.top-ai:hover{filter:brightness(1.15)}.ai-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:13px}.ai-list{display:flex;flex-direction:column;gap:12px}.ai-empty p{margin:0 0 14px;color:var(--muted);line-height:1.5}.ai-suggest,.ai-links{display:flex;flex-wrap:wrap;gap:8px}.ai-links{margin-top:6px}.ai-chip{border:1px solid var(--line);background:#fff;color:var(--green);border-radius:999px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;text-align:left}.ai-chip:hover{border-color:var(--asparagus);background:#eef3ea}.ai-msg{display:flex;flex-direction:column;align-items:flex-start;max-width:100%}.ai-msg.user{align-items:flex-end}.ai-bubble{padding:10px 14px;border-radius:14px;line-height:1.5;max-width:92%;overflow-wrap:anywhere;background:#fff;border:1px solid var(--line)}.ai-msg.user .ai-bubble{background:var(--green);color:#fff;border-color:var(--green);white-space:pre-wrap}.ai-msg.err .ai-bubble{background:var(--err-soft);border-color:#f0bdb8;color:#7c1b15}.ai-action{margin-top:8px;width:min(100%,440px);background:#fff;border:1px solid var(--asparagus);border-left:4px solid var(--asparagus);border-radius:10px;padding:12px 14px}.ai-action dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:8px 0 0;font-size:13.5px}.ai-action dt{color:var(--muted)}.ai-action dd{margin:0;overflow-wrap:anywhere}.ai-action .btn-row{justify-content:flex-end;margin-top:10px}.ai-action p{margin:8px 0 0;font-size:13.5px}.ai-action.done{border-color:var(--asparagus);background:#f3f7f0}.ai-action.declined{opacity:.6;border-left-color:var(--line)}.ai-ok{color:var(--green);font-weight:700}.ai-bad{color:#7c1b15}.ai-form{display:flex;gap:10px;align-items:flex-end;width:100%}.ai-form textarea{flex:1;resize:none;min-height:44px;font:inherit}@media(max-width:800px){.top-ai{padding:0 11px}.top-ai-label{display:none}}
