:root{--navy:#1d2c3a;--green:#168d75;--bg:#f7f5f0;--line:#dfe4e2;--text:#18232d;--muted:#68766f}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;overflow-x:hidden}.loading{padding:80px;text-align:center}.wb{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.wb aside{height:100vh;position:sticky;top:0;background:var(--navy);color:#fff;display:flex;flex-direction:column;overflow:auto}.logo{height:74px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid #ffffff18}.logo b,.mark{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:var(--green);color:white}.logo span{font-weight:700}.wb nav{padding:14px 10px}.wb nav a{display:flex;align-items:center;gap:12px;min-height:43px;padding:9px 12px;color:#d6dee5;text-decoration:none;border-radius:8px;font-size:14px}.wb nav a i{font-style:normal;width:23px;text-align:center}.wb nav a:hover,.wb nav a.on{background:#ffffff12;color:#fff}.wb nav a.on{box-shadow:inset 3px 0 #29bea0}.user{margin-top:auto;padding:18px 20px;border-top:1px solid #ffffff18;display:grid;gap:11px}.user a{color:#d6dee5;text-decoration:none;font-size:13px}.wb main{min-width:0;padding:36px clamp(20px,4vw,54px);max-width:1500px;width:100%}.wb header{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.wb header p{margin:0;color:#16866f;font-size:12px;font-weight:700}.wb header h1{margin:6px 0;font-size:28px}.wb header span{color:#697680;font-size:14px}.wb header em{font-style:normal;color:#27715f;font-size:12px;border:1px solid #c9dfd8;background:#f2faf7;padding:8px 12px;border-radius:8px}.tools{display:flex;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--line);padding:14px;border-radius:10px;margin-bottom:16px}.tools label{display:flex;align-items:center;gap:8px;flex:1;font-size:13px}.tools input{max-width:420px;flex:1;border:1px solid #ccd5d3;border-radius:7px;padding:10px}button,.actions a,.import{border:0;border-radius:7px;background:var(--green);color:#fff;padding:10px 14px;min-height:40px;cursor:pointer;text-decoration:none;font-size:13px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:15px}.cards article,.summary article{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;box-shadow:0 5px 18px #17362e0a}.card-head{display:flex;gap:12px;align-items:center;border-bottom:1px solid #edf0ef;padding-bottom:13px}.card-head>b{font-size:24px}.card-head h2{font-size:16px;margin:0 0 5px}.card-head small{color:#728078}.cards dl{margin:12px 0}.cards dl>div{display:grid;grid-template-columns:100px 1fr;gap:10px;padding:6px 0;font-size:13px}.cards dt{color:#76837c}.cards dd{margin:0;word-break:break-word;white-space:pre-wrap}.actions{display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid #edf0ef;padding-top:12px}.actions button,.actions a{background:#eef5f3;color:#176d5a;padding:7px 10px;min-height:36px}.actions .red{background:#fff0ed;color:#a44236}.empty{text-align:center;background:#fff;border:1px dashed #cbd6d2;border-radius:10px;padding:70px 20px;color:var(--muted)}.modal{position:fixed;inset:0;background:#15251f88;z-index:60;display:grid;place-items:center;padding:20px}.modal form{background:#fff;border-radius:12px;width:min(620px,100%);padding:24px}.modal h2{margin-top:0}.modal label,.login-card label{display:grid;gap:7px;margin:14px 0;font-weight:600;font-size:13px}.modal input,.modal textarea,.login-card input{border:1px solid #c7d2ce;border-radius:7px;padding:11px;font:inherit}.modal form>div{display:flex;justify-content:flex-end;gap:8px}.modal button:first-child{background:#fff;color:#334;border:1px solid #ccd5d2}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kpis article{background:#fff;border:1px solid var(--line);border-top:3px solid var(--green);border-radius:9px;padding:19px}.kpis span,.kpis small,.kpis b{display:block}.kpis span{font-size:13px}.kpis b{font-size:23px;margin:12px 0}.kpis small{font-size:11px;color:#748078}.summary{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:16px}.summary h2{font-size:16px;margin-top:0}.summary p{font-size:13px;color:#58665f}.summary a{color:#157a65;font-weight:700;text-decoration:none;font-size:13px}.summary button,.summary .import{display:inline-block;margin:8px 8px 0 0}.toast{position:fixed;right:24px;top:20px;background:#17362f;color:#fff;padding:11px 16px;border-radius:8px;z-index:50}.login-bg{min-height:100vh;display:grid;place-items:center;background:#edf1f4;padding:20px}.login-card{width:min(430px,100%);background:#fff;border:1px solid #d7dee5;border-top:4px solid var(--navy);padding:38px;box-shadow:0 16px 45px #1d2c3915}.login-card .mark{margin:auto;width:50px;height:50px}.login-card h1{text-align:center;font-size:26px}.login-card>p,.login-card>small{display:block;text-align:center;color:#66747d;line-height:1.7}.login-card button{width:100%}.eyebrow{font-size:10px;letter-spacing:.15em}#msg{min-height:42px;padding-top:14px;text-align:center;font-size:13px}*:focus-visible{outline:3px solid #48bba4;outline-offset:2px}@media(max-width:760px){.wb{grid-template-columns:58px minmax(0,1fr)}.logo{padding:0 10px}.logo span,.wb nav a span,.user{display:none}.wb nav{padding:10px 6px}.wb nav a{padding:9px;justify-content:center}.wb nav a i{font-size:20px}.wb main{padding:22px 14px}.wb header{align-items:flex-start}.wb header h1{font-size:23px}.wb header em{font-size:0;padding:8px}.tools{display:grid}.tools label{display:grid}.cards,.summary,.kpis{grid-template-columns:1fr}.cards dl>div{grid-template-columns:88px 1fr}.modal{padding:8px}.modal form{max-height:92vh;overflow:auto}}
