:root{--green: #2C4A32;--green-deep: #21382A;--green-night: #18291F;--green-soft: #E3EBE2;--gold: #C9A85C;--gold-t: #CDAF69;--gold-ink: #79632D;--frost: #EEF2EC;--card: #FFFFFF;--ink: #1E2B22;--mist: #4E5D52;--line: #D9E1D8;--ok: #2E6B3C;--ok-bg: #E3EFE5;--warn: #8A5A12;--warn-bg: #F7ECD5;--bad: #9A2F16;--bad-bg: #F6E1D9;--info: #1E4C86;--info-bg: #E3ECF8;--f-body: "Jost", "Futura", "Century Gothic", system-ui, sans-serif;--f-display: "Cormorant Garamond", "Garamond", Georgia, serif;--r: 12px;color-scheme:light}*{box-sizing:border-box}html,body{margin:0}body{background:var(--frost);color:var(--ink);font:400 15px/1.55 var(--f-body);-webkit-font-smoothing:antialiased}a{color:var(--green)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}h1,h2,h3{margin:0;line-height:1.15}h1{font:600 2.2rem var(--f-display)}h2{font-size:1.05rem;font-weight:600}h3{font-size:.95rem;font-weight:600}p{margin:0}.muted{color:var(--mist)}.small{font-size:.82rem}.num{font-variant-numeric:tabular-nums}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.shell{display:flex;min-height:100vh}.side{width:236px;flex:none;background:var(--green);color:#dce4dd;display:flex;flex-direction:column;padding:24px 14px;gap:22px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;flex-direction:column;gap:2px;padding:0 10px;text-decoration:none}.brand b{font:600 2rem/1 var(--f-display);color:var(--gold)}.brand span{font-size:.66rem;letter-spacing:.28em;color:#e3d3a8}.brand i{display:block;width:34px;height:1px;background:var(--gold);margin-top:8px}.nav{display:flex;flex-direction:column;gap:2px}.nav a{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border-radius:9px;color:#dce4dd;text-decoration:none;font-size:.95rem}.nav a:hover{background:#ffffff0f}.nav a.active{background:#c9a85c2e;color:#fff;font-weight:500}.nav a svg{width:18px;height:18px;flex:none;opacity:.85}.nav .count{margin-left:auto;font-size:.72rem;background:var(--gold);color:var(--green-night);border-radius:99px;padding:1px 7px;font-weight:600}.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid rgba(227,211,168,.25);border-radius:10px;font-size:.82rem}.side-foot .who{color:#fff;font-weight:500}.side-foot button{background:none;border:0;color:var(--gold-t);padding:0;text-align:left;cursor:pointer;text-decoration:underline}.main{flex:1;min-width:0;padding:28px 32px 56px;display:flex;flex-direction:column;gap:22px}.topbar{display:none}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px}.page-head p{margin-top:4px}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}@media (max-width: 900px){.shell{flex-direction:column}.side{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;width:auto;height:auto}.side.open{display:flex}.topbar{display:flex;align-items:center;justify-content:space-between;background:var(--green);padding:12px 16px;position:sticky;top:0;z-index:40}.topbar .brand b{font-size:1.5rem}.topbar button{background:none;border:1px solid var(--gold);color:var(--gold-t);border-radius:8px;padding:8px 12px;min-height:40px}.main{padding:18px 16px 48px}h1{font-size:1.8rem}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;display:flex;flex-direction:column;gap:14px;min-width:0}.card-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.card.dark{background:var(--green);border-color:var(--green);color:#f3efe2}.grid{display:grid;gap:16px}.g-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.g-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.g-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.g-wide{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}@media (max-width: 1100px){.g-wide{grid-template-columns:1fr}}.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;display:flex;flex-direction:column;gap:4px;text-decoration:none;color:inherit}a.stat:hover{border-color:var(--gold)}.stat .label{font-size:.8rem;color:var(--mist)}.stat .value{font-size:1.7rem;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.stat .note{font-size:.78rem;color:var(--mist)}.stat .note.up{color:var(--ok)}.stat .note.down{color:var(--bad)}.stat .note.warn{color:var(--warn)}.stat.locked .value{color:var(--mist);font-size:1rem;font-weight:400;padding:8px 0}.badge{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:600;letter-spacing:.02em;padding:3px 9px;border-radius:99px;white-space:nowrap;background:var(--green-soft);color:var(--green)}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.bad{background:var(--bad-bg);color:var(--bad)}.badge.info{background:var(--info-bg);color:var(--info)}.badge.gold{background:#f1ebd8;color:#6b5320}.badge.grey{background:#eceeea;color:var(--mist)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:9px;border:1px solid var(--green);background:var(--green);color:#fff;font-weight:500;font-size:.92rem;cursor:pointer;text-decoration:none;white-space:nowrap}.btn:hover{background:var(--green-deep)}.btn.ghost{background:transparent;color:var(--green)}.btn.ghost:hover{background:var(--green-soft)}.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--green-night)}.btn.danger{background:transparent;color:var(--bad);border-color:#d9a897}.btn.small{min-height:34px;padding:0 12px;font-size:.84rem}.btn:disabled{opacity:.55;cursor:default}.btn.block{width:100%}.linkbtn{background:none;border:0;padding:0;color:var(--green);text-decoration:underline;cursor:pointer;font-size:inherit}.table-wrap{overflow-x:auto;margin:0 -4px}table{width:100%;border-collapse:collapse;font-size:.9rem}th{text-align:left;font-weight:500;font-size:.76rem;color:var(--mist);letter-spacing:.03em;text-transform:uppercase;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:10px;border-bottom:1px solid #EEF1EC;vertical-align:top}tr:last-child td{border-bottom:0}td.r,th.r{text-align:right}tr.click{cursor:pointer}tr.click:hover td{background:#f7f9f6}.list{display:flex;flex-direction:column}.row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #EEF1EC;min-width:0}.row:last-child{border-bottom:0}.row .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.row .t{font-weight:500}.row .s{font-size:.8rem;color:var(--mist)}.dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--mist)}.tag{flex:0 0 auto;min-width:82px;text-align:center;font-size:.7rem;font-weight:600;letter-spacing:.04em;padding:4px 8px;border-radius:6px}.empty{padding:26px 10px;text-align:center;color:var(--mist);font-size:.9rem}.loading{padding:26px;color:var(--mist)}.error{background:var(--bad-bg);color:var(--bad);border-radius:9px;padding:10px 14px;font-size:.9rem}.notice{background:var(--warn-bg);color:var(--warn);border-radius:9px;padding:10px 14px;font-size:.9rem}.success{background:var(--ok-bg);color:var(--ok);border-radius:9px;padding:10px 14px;font-size:.9rem}.form{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.form .full{grid-column:1 / -1}label.f{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:500;color:var(--mist)}label.f input,label.f select,label.f textarea,.input{border:1px solid #C9CEC6;border-radius:9px;padding:10px 12px;min-height:44px;background:#fff;color:var(--ink);font-size:.95rem;font-weight:400;width:100%}label.f textarea{min-height:90px;resize:vertical}label.f input:focus,label.f select:focus,label.f textarea:focus,.input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px #2c4a321f}label.check{display:flex;align-items:center;gap:10px;font-size:.95rem;min-height:40px;cursor:pointer}label.check input{width:20px;height:20px;accent-color:var(--green)}.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.filters .input{width:auto;min-width:160px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}.seg button{border:0;background:none;padding:8px 14px;min-height:38px;cursor:pointer;font-size:.86rem;color:var(--mist)}.seg button.on{background:var(--green);color:#fff}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e18128c;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;overflow-y:auto}.modal{background:#fff;border-radius:14px;width:min(640px,100%);padding:24px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 60px #00000040}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.modal-head button{border:0;background:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--mist);width:40px;height:40px}.bars{display:grid;gap:10px;align-items:end;height:200px;border-bottom:1px solid var(--line);padding-top:8px}.bars .col{display:flex;align-items:flex-end;justify-content:center;gap:3px;height:100%;position:relative}.bars .bar{width:38%;max-width:22px;border-radius:4px 4px 0 0;min-height:2px}.bars .bar.a{background:var(--green)}.bars .bar.b{background:var(--gold)}.bars .col.future .bar{opacity:.35}.bar-labels{display:grid;gap:10px;margin-top:-6px}.bar-labels div{text-align:center;font-size:.74rem;color:var(--mist)}.legend{display:flex;gap:14px;font-size:.78rem;color:var(--mist)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:2px;display:inline-block}.progress{height:8px;border-radius:4px;background:#00000014;overflow:hidden}.progress>div{height:100%;background:var(--green);border-radius:4px}.card.dark .progress{background:#ffffff26}.card.dark .progress>div{background:var(--gold)}.big{font:600 3.6rem/1 var(--f-display);color:var(--gold)}.pcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column}.pcard:hover{border-color:var(--gold)}.pcard .ph{height:104px;background:linear-gradient(135deg,#dce4da,#c9d4c6);display:flex;align-items:flex-end;padding:10px 12px}.pcard .ph span{font:600 1.25rem var(--f-display);color:var(--green)}.pcard .body{padding:14px;display:flex;flex-direction:column;gap:6px}.kv{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:6px 16px;font-size:.9rem}.kv dt{color:var(--mist)}.kv dd{margin:0}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto}.tabs button{border:0;background:none;padding:10px 14px;cursor:pointer;color:var(--mist);border-bottom:2px solid transparent;white-space:nowrap;font-size:.92rem}.tabs button.on{color:var(--green);border-bottom-color:var(--gold);font-weight:500}.login{min-height:100vh;background:var(--green);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:56px;padding:48px 20px}.login .pitch{flex:1 1 320px;max-width:420px;color:#dce4dd;display:flex;flex-direction:column;gap:16px}.login .mark{display:flex;align-items:center;gap:14px}.login .mark b{font:600 4rem/1 var(--f-display);color:var(--gold)}.login .mark i{width:1px;height:52px;background:var(--gold)}.login .mark span{display:flex;flex-direction:column;color:var(--gold)}.login .mark span em{font:600 1.6rem var(--f-display);letter-spacing:.14em;font-style:normal}.login .mark span small{font-size:.64rem;letter-spacing:.3em}.login h1{color:#f3efe2;font-size:2.6rem}.login form{flex:0 1 400px;background:#fff;border-radius:16px;padding:34px;display:flex;flex-direction:column;gap:16px}.code-input{letter-spacing:.5em;text-align:center;font-size:1.4rem!important;font-variant-numeric:tabular-nums}.phone{max-width:520px;margin:0 auto;min-height:100vh;background:var(--frost)}.phone-head{background:var(--green);color:#f3efe2;padding:22px 18px 18px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;z-index:10}.phone-head .top{display:flex;justify-content:space-between;align-items:center}.phone-head .day{display:flex;gap:8px;margin-top:10px}.phone-head .day button{flex:1;border:1px solid rgba(201,168,92,.5);background:none;color:#e3d3a8;border-radius:8px;min-height:38px;font-size:.82rem}.phone-head .day button.on{background:var(--gold);color:var(--green-night);border-color:var(--gold);font-weight:600}.phone-body{padding:14px;display:flex;flex-direction:column;gap:14px}.job{background:#fff;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--line)}.job.now{border:2px solid var(--green)}.job .addr{font-size:.86rem;color:var(--mist)}.job .code{background:var(--green-soft);border-radius:10px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center}.job .code b{font-size:1.4rem;letter-spacing:.18em;font-variant-numeric:tabular-nums}.job .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.job .btn{min-height:50px;font-size:1rem}.thumbs{display:flex;gap:8px;flex-wrap:wrap}.thumbs img{width:64px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
