﻿:root{--ink:#17211e;--muted:#6e7b76;--green:#176b5b;--green2:#e9f4f0;--line:#dde5e1;--bg:#f4f6f4;--red:#b23b3b;--amber:#b56c13}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 "Segoe UI","Microsoft YaHei",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 3vw;gap:35px;position:sticky;top:0;z-index:5}.brand{font-size:20px;font-weight:800;display:block}header small{color:var(--muted)}nav{display:flex;align-self:stretch;margin-left:auto}nav button{border:0;background:transparent;padding:0 18px;color:var(--muted);border-bottom:3px solid transparent}nav button.active{color:var(--green);font-weight:700;border-color:var(--green)}.online{color:var(--muted);font-size:13px}.online i{display:inline-block;width:8px;height:8px;background:#31a570;border-radius:50%}main{max-width:1240px;margin:auto;padding:36px 28px 70px}.view{display:none}.view.active{display:block}.hero{text-align:center;margin:18px 0 28px}.hero p,.section-head p{color:var(--green);font-weight:700;margin:0}.hero h1,.section-head h1{font-size:30px;margin:5px 0}.hero span,.title p{color:var(--muted)}.entry-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 28px #193a2f12;padding:24px;display:grid;grid-template-columns:1fr 2fr 1fr;gap:18px;max-width:980px;margin:auto}.entry-card label{font-weight:700}.entry-card label span,.entry-card em{float:right;color:#9aa39f;font-size:12px;font-style:normal}.entry-card em{color:var(--green)}input,textarea,select{width:100%;border:1px solid #cad5d0;border-radius:8px;padding:10px 12px;margin-top:6px;background:#fff;color:var(--ink)}input:focus,textarea:focus,select:focus{outline:3px solid #176b5b22;border-color:var(--green)}.wide{grid-column:span 2}.entry-card small{display:block;color:var(--muted);font-weight:400;margin-top:5px}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px}.primary,.ghost,.danger,.filters button,.period button,.upload{border-radius:8px;padding:10px 17px;border:1px solid var(--line);background:#fff}.primary{background:var(--green);color:#fff;border-color:var(--green);font-weight:700}.primary b{margin-left:16px;opacity:.6}.ghost{color:var(--muted)}.danger{background:#fff2f1;color:var(--red);border:1px solid #f0c7c4}.text{border:0;background:none;color:var(--green)}.recent{max-width:980px;margin:30px auto}.title,.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.title h2{margin:0;font-size:18px}.recent-row{display:grid;grid-template-columns:110px 1fr 100px 150px;gap:15px;background:#fff;border-bottom:1px solid var(--line);padding:13px 16px}.recent-row:first-child{border-radius:10px 10px 0 0}.recent-row:last-child{border-radius:0 0 10px 10px;border:0}.muted{color:var(--muted)}.period,.filters{display:flex;align-items:center;gap:9px;margin:20px 0}.period button.active{background:var(--green2);border-color:#aad2c5;color:var(--green);font-weight:700}.period input,.filters input{width:auto;margin:0}.period b,.filters b{color:var(--muted);font-weight:400}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:22px 0}.kpis article,.panel{background:#fff;border:1px solid var(--line);border-radius:12px}.kpis article{padding:18px}.kpis span{color:var(--muted)}.kpis strong{font-size:30px;display:block;margin-top:7px}.panel{padding:20px;margin:18px 0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th{text-align:left;color:var(--muted);font-size:12px;background:#f7f9f8}th,td{padding:12px;border-bottom:1px solid var(--line)}.badge{padding:4px 8px;border-radius:20px;background:#fff2dc;color:var(--amber);white-space:nowrap}.status{padding:3px 8px;border-radius:20px;background:var(--green2);color:var(--green)}.status.off{background:#eee;color:#777}.row-actions button{border:0;background:none;color:var(--green);padding:2px 6px}.row-actions .delete{color:var(--red)}.trend-panel{margin-top:18px}.bar-row{display:grid;grid-template-columns:90px 1fr 150px;align-items:center;gap:12px;margin:12px 0}.bar{height:10px;border-radius:8px;background:#e8eeeb;overflow:hidden}.bar i{display:block;height:100%;background:var(--green);border-radius:8px}.notice{padding:13px 16px;background:#eaf4f0;color:#286b5d;border-radius:8px}.upload{background:var(--green);color:#fff}.upload input{display:none}.merge{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.merge h2{width:100%;margin:0}.merge p{width:100%;margin:0;color:var(--muted)}.merge select{width:250px;margin:0}.hidden{display:none!important}.empty{text-align:center;padding:35px;color:var(--muted)}#toast{position:fixed;right:25px;bottom:25px;background:#1c2925;color:#fff;padding:12px 18px;border-radius:9px;opacity:0;transform:translateY(10px);transition:.2s;z-index:20}#toast.show{opacity:1;transform:none}.modal{position:fixed;inset:0;background:#10181588;display:grid;place-items:center;z-index:10}.modal>div{background:#fff;border-radius:14px;padding:24px;width:min(420px,90vw)}.modal h3{margin-top:0}.modal footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}@media(max-width:850px){header{height:auto;flex-wrap:wrap;padding:15px}header small,.online{display:none}nav{width:100%;order:2;overflow:auto}nav button{padding:10px;white-space:nowrap}main{padding:22px 14px}.entry-card{grid-template-columns:1fr}.wide{grid-column:auto}.kpis{grid-template-columns:1fr 1fr}.recent-row{grid-template-columns:90px 1fr 70px}.recent-row span:last-child{display:none}.section-head{align-items:flex-start}.filters{flex-wrap:wrap}}

#login form{display:grid;gap:12px}.user-form{display:flex;gap:10px;align-items:center}.user-form input,.user-form select{margin:0}@media(max-width:850px){.user-form{flex-wrap:wrap}}
