:root{--bg:#f3f3ed;--ink:#23372a;--line:#d9e0d3;--lime:#ddf88b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px system-ui,sans-serif}header{background:#182b20;color:#f1f4e9;padding:24px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-size:26px;font-weight:750;letter-spacing:-1px}a{color:inherit;text-decoration:none}.brand small{font-size:10px;letter-spacing:1px;margin-left:8px}nav{display:flex;gap:20px;align-items:center;font-size:11px}main{max-width:1450px;margin:40px auto;padding:0 5%}button{border:0;border-radius:10px;background:#253e2c;color:#f6faed;padding:12px 17px;font:600 12px system-ui;cursor:pointer}button:hover{background:#47613c}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #96b85c;outline-offset:3px}h1{font-size:32px;letter-spacing:-1px;margin:15px 0}h2{font-size:20px;letter-spacing:-.5px}p{line-height:1.8;color:#7b8972}.eyebrow,.setup-note>span{font-size:9px;letter-spacing:1.5px;color:#869a71}.login-card{max-width:460px;margin:50px auto;background:white;border:1px solid var(--line);border-radius:24px;padding:35px}.login-card form,dialog form{display:grid;gap:17px}label{display:grid;gap:8px;font-size:11px;color:#647b53}input,select,textarea{font:13px system-ui;border:1px solid #d2ddc7;background:#fff;border-radius:9px;padding:12px;color:#293c2a;max-width:100%;width:100%}.checkbox{display:flex;align-items:center}.checkbox input{width:auto}.setup-note{background:#eaf0e0;border:1px solid #d3dfc4;padding:25px;border-radius:20px}.setup-note h1{font-size:25px}.page-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}.heading-actions{display:flex;gap:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.stats>div{background:white;border:1px solid var(--line);padding:22px;border-radius:17px}.stats span{font-size:10px;color:#87987a;display:block}.stats strong{display:block;font-size:36px;margin-top:12px}.panel{background:white;border:1px solid var(--line);border-radius:20px;padding:26px;margin:25px 0}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{font-size:9px;letter-spacing:.6px;color:#859578;padding:14px 12px;border-bottom:1px solid var(--line)}td{padding:17px 12px;border-bottom:1px solid #e9eee2}td small{display:block;color:#8f9c83;margin-top:5px}td button{font-size:10px;padding:8px 11px;margin:3px}td select{font-size:11px;padding:8px;min-width:110px}.status{display:inline-block;border-radius:15px;background:#e9f1dd;color:#4f7134;padding:6px 10px;font-size:9px}.muted{font-size:10px;color:#89967d;line-height:1.8}.inventory-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:22px}#admin-map{height:470px;border-radius:15px;background:#e1e9d8}dialog{border:1px solid #fff;border-radius:22px;padding:28px;width:min(700px,95vw);max-height:90dvh;background:#f8faf4;box-shadow:0 25px 80px #0004}dialog::backdrop{background:#16301e90;backdrop-filter:blur(4px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:25px}.dialog-heading button{border-radius:50%;padding:0;width:30px;height:30px;font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}fieldset{border:1px solid var(--line);border-radius:13px;padding:18px}legend{font-size:11px;padding:0 8px;color:#71845f}#preview-map{height:260px;border-radius:15px;background:#e2e9dc}#import-preview{margin-top:25px}.error,.success{position:sticky;top:10px;z-index:5000;padding:15px 20px;border-radius:12px;margin-bottom:20px;box-shadow:0 4px 15px #0001}.error{background:#f8e5dd;color:#a1543b}.success{background:#e7f0d4;color:#4a6932}[hidden]{display:none!important}@media(max-width:850px){header,.page-heading{align-items:flex-start;flex-direction:column}nav{flex-wrap:wrap}.inventory-layout{grid-template-columns:1fr}.stats{gap:10px}.stats>div{padding:16px}.heading-actions{flex-wrap:wrap}h1{font-size:27px}.panel{padding:20px}main{padding:0 4%}.form-grid{grid-template-columns:1fr}dialog{padding:22px}}
