:root{--bg:#f4f7f2;--panel:#fff;--text:#1e2b20;--muted:#6d786f;--primary:#2d7a35;--dark:#18351d;--border:#dfe7dd;--danger:#a63232}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
.hidden{display:none!important}.muted{color:var(--muted);font-size:14px}.center{text-align:center}
button,input,select,textarea{font:inherit}label{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--muted)}
input,select,textarea{width:100%;padding:11px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--text);font-weight:400}textarea{min-height:72px}
.primary,.secondary,.danger,.link-btn{border-radius:9px;padding:10px 14px;cursor:pointer;font-weight:700}.primary{background:var(--primary);color:#fff;border:1px solid var(--primary)}.secondary{background:#fff;border:1px solid var(--border)}.danger{background:#fff;border:1px solid #e5caca;color:var(--danger)}.link-btn{border:0;background:transparent;color:var(--primary);width:100%}.full{width:100%}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(430px,94vw);background:#fff;border:1px solid var(--border);border-radius:18px;padding:28px}.login-logo{width:90px;height:90px;object-fit:contain;display:block;margin:auto}.note{margin-top:16px;padding:12px;background:#f7f9f6;border-radius:10px;font-size:13px}
.password-wrap{position:relative}.password-wrap input{padding-right:48px}.password-eye{position:absolute;right:7px;top:50%;transform:translateY(-50%);border:0;background:transparent;cursor:pointer}.caps-warning{color:#a56c00}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:260px;background:var(--dark);color:#fff;padding:16px;overflow:auto;display:flex;flex-direction:column}.brand-wrap{display:flex;gap:10px;align-items:center;margin-bottom:18px}.brand-logo{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:10px}.brand-wrap small{display:block;color:#d5e1d5;margin-top:3px}
.sidebar nav{display:grid;gap:4px}.nav{border:0;background:transparent;color:#e2ebe2;text-align:left;padding:10px;border-radius:8px;cursor:pointer}.nav.active,.nav:hover{background:#2b5531;color:#fff}.side-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.15);padding-top:16px;display:grid;gap:8px}.side-bottom .secondary,.side-bottom .danger{background:transparent;color:#fff;border-color:rgba(255,255,255,.25)}
main{margin-left:260px;padding:26px;max-width:1600px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}h1{margin:0 0 4px}h2{margin:0 0 15px}.view{display:none}.view.active{display:block}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.card,.panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:18px;margin-bottom:18px}.card span{color:var(--muted);font-size:13px}.card strong{display:block;font-size:24px;margin-top:6px}.grid2{display:grid;grid-template-columns:1.15fr 1fr;gap:18px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:11px;align-items:end}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.actions{display:flex;gap:6px;flex-wrap:wrap}
table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:9px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{font-size:11px;color:var(--muted);text-transform:uppercase}.table-wrap{overflow:auto}.pill{display:inline-block;padding:4px 8px;border-radius:999px;background:#e8f3e8;font-size:11px}.pill.red{background:#fdecec;color:#9d2d2d}.pill.gray{background:#eee;color:#555}.line{padding:8px 0;border-bottom:1px solid #eee}.empty{color:var(--muted);padding:8px 0}.icon-btn{border:1px solid var(--border);background:#fff;border-radius:7px;padding:5px 8px;cursor:pointer;font-size:12px}.icon-btn.delete{color:var(--danger)}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.38);display:grid;place-items:center;z-index:50;padding:15px}.modal-card{width:min(520px,96vw);background:#fff;border-radius:16px;padding:22px;position:relative;max-height:90vh;overflow:auto}.close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:26px;cursor:pointer}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-grid button{padding:18px;border:1px solid var(--border);background:#fff;border-radius:10px}.nested-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border:1px dashed var(--border);background:#f8faf7;padding:12px;border-radius:10px}.config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.field-msg{margin-top:8px;font-size:13px}.money-input{text-align:right}
@media(max-width:1000px){.form-grid{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:repeat(2,1fr)}.config-grid{grid-template-columns:1fr}}
@media(max-width:820px){.sidebar{position:static;width:auto}.sidebar nav{grid-template-columns:repeat(2,1fr)}main{margin-left:0;padding:15px}.grid2,.cards,.form-grid,.nested-grid{grid-template-columns:1fr}header{align-items:flex-start}.panel-head{align-items:stretch;flex-direction:column}}
