:root{--bg:#f3f5f2;--ink:#182b24;--muted:#738178;--line:#e2e8e1;--green:#205b41;--lime:#d7ec9a;--white:#fff;--warn:#966321}*{box-sizing:border-box}body{margin:0;font:14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg)}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:28px;letter-spacing:-.8px;margin-bottom:0}h2{font-size:23px;letter-spacing:-.5px;font-weight:600;margin-bottom:10px}h3{font-size:16px;margin-bottom:4px}.muted{color:var(--muted);font-size:13px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--muted);margin-bottom:8px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;transition:.15s}button:disabled{opacity:.5;cursor:wait}input,select,textarea{border:1px solid var(--line);border-radius:8px;padding:11px 12px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #205b4110}textarea{width:100%;resize:vertical;line-height:1.7}label{display:block;font-size:12px;font-weight:600;margin:18px 0}label input,label select{display:block;width:100%;margin-top:6px}small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:6px}.primary{background:var(--green);color:#fff;padding:12px 20px;border-radius:8px;font-weight:600}.primary:hover{background:#15432e}.secondary{padding:12px 16px;border:1px solid var(--line);background:var(--white);border-radius:8px;margin-top:10px}.link{background:none;color:var(--green);padding:5px 0;text-align:left;font-weight:600}aside{position:fixed;top:0;left:0;bottom:0;width:245px;padding:32px 22px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;font-size:22px;font-weight:700;margin-bottom:46px}.brand small{font-size:9px;letter-spacing:1.1px;margin:0}.brandmark{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--green);color:var(--lime);font-size:22px;font-weight:700}.nav{display:flex;width:100%;gap:12px;align-items:center;padding:13px 12px;margin:5px 0;border-radius:8px;background:none;color:#728176;text-align:left}.nav.active{background:#edf3e9;color:var(--green);font-weight:650}.sidebar-foot{margin-top:auto;font-size:11px}.dot-text:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#c4bba5;margin-right:7px}.dot-text.ok:before{background:#62964a}.sidebar-foot .link{margin-top:20px}.content{margin-left:245px;padding:34px 40px;max-width:1700px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:32px}.header-actions{display:flex;gap:20px;align-items:center}.header-actions select{font-size:12px;font-weight:600}.intro{display:flex;align-items:center;justify-content:space-between;margin:12px 0 24px}.intro h2{font-size:26px}.badge{font-size:10px;font-weight:700;letter-spacing:.4px;white-space:nowrap;border-radius:20px;padding:6px 10px;background:#e7f0df;color:#37673e}.badge.neutral{background:#f1f3ef;color:#788476}.badge.warn{background:#fff1d8;color:var(--warn)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metrics article{padding:22px;background:var(--white);border:1px solid var(--line);border-radius:12px}.metrics span{font-size:12px;color:var(--muted)}.metrics strong{display:block;font-size:35px;letter-spacing:-1px;font-weight:600;margin:9px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:22px}.card h2{margin-top:18px}.card-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}.card-head p{margin-bottom:0}.card-head input{font-size:12px;width:260px}.form-card{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.rule-note{padding:18px;background:#f3f6ee;border-radius:9px;font-size:12px;margin:16px 0 24px}.rule-note p{margin:6px 0 0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px;text-align:left}th{font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--muted);font-weight:600;padding:12px 10px;background:#f8f9f6;border-bottom:1px solid var(--line)}td{padding:16px 10px;border-bottom:1px solid #eef1ec;font-size:12px;vertical-align:top}td:nth-child(2){max-width:350px}td small{margin:3px 0}.empty{text-align:center;color:var(--muted);padding:45px}.notice{padding:15px 18px;background:#fff0d9;border:1px solid #eddbbc;border-radius:9px;font-size:12px;margin-bottom:20px}.event{padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.event time{color:var(--muted);margin-right:16px}footer{font-size:10px;color:var(--muted);padding:5px 0 20px}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 10%,#e6efd5,transparent 60%),var(--bg)}.login-card{width:420px;max-width:92vw;background:#fff;padding:38px;border:1px solid var(--line);border-radius:16px}.login-card .brandmark{margin-bottom:35px}.login-card h1{font-size:27px;margin-bottom:12px}.login-card .primary{width:100%;margin-top:10px}#loginError{font-size:12px;color:#a1442d;margin-top:15px}.connection-cards{max-width:1000px}.connection-cards button{display:block}.danger{color:#a24d30}@media(max-width:1200px){aside{width:205px;padding:28px 14px}.content{margin-left:205px;padding:28px 24px}.header-actions{gap:10px}.header-actions>.muted{display:none}.metrics{gap:10px}.metrics article{padding:16px}.metrics strong{font-size:29px}}@media(max-width:800px){aside{position:static;width:auto;padding:16px}.brand{margin:0 0 12px}nav{display:flex;overflow:auto}.nav{width:auto;white-space:nowrap;margin:0;padding:9px 12px}.sidebar-foot{display:none}.content{margin:0;padding:22px 16px}.metrics{grid-template-columns:repeat(2,1fr)}.split,.form-grid{grid-template-columns:1fr}.intro{align-items:flex-start;gap:10px}.intro h2{font-size:21px}.intro>.badge{display:none}h1{font-size:24px}.card{padding:18px}.card-head{flex-wrap:wrap}.card-head input{width:100%}.header-actions select{max-width:150px}}
