:root{--bg: #f4f7f3;--panel: #ffffff;--text: #1c2320;--muted: #67756d;--border: #dbe4de;--primary: #225c46;--primary-soft: #e5f2eb;--danger: #b42318;--warning: #b54708;--orange: #c2410c;--success: #0f7b40}*{box-sizing:border-box}body{margin:0;font-family:Manrope,sans-serif;color:var(--text);background:radial-gradient(circle at top left,#e9f6ef 0,var(--bg) 45%)}h1,h2,h3{font-family:Space Grotesk,sans-serif;margin:0}p{margin:0}a{color:inherit}.page-loader{min-height:100vh;display:grid;place-items:center;color:var(--muted)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem;padding:2rem}.auth-hero,.auth-card{background:var(--panel);border:1px solid var(--border);border-radius:1rem;padding:2rem}.auth-hero{background:linear-gradient(160deg,#1c3f31,#295743 48%,#3e725c);color:#f4faf7;display:flex;flex-direction:column;justify-content:center;gap:1rem}.brand-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;opacity:.8}.auth-card{display:flex;flex-direction:column;gap:1rem}.auth-tabs{display:flex;gap:.5rem}.auth-tab{border:1px solid var(--border);background:#fff;color:var(--muted);padding:.55rem .8rem;border-radius:.6rem;cursor:pointer}.auth-tab.active{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.form-grid{display:grid;gap:.75rem}.form-grid-inline{grid-template-columns:1fr auto;align-items:end}.form-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.form-three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.form-four-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.form-six-columns{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}.compact-grid label{font-size:.82rem}.filter-actions{display:flex;align-items:end}label{display:grid;gap:.35rem;font-size:.9rem;color:var(--muted)}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid var(--border);border-radius:.6rem;padding:.6rem .7rem;background:#fff}input:focus,select:focus,textarea:focus{outline:2px solid #8dc6aa;border-color:#8dc6aa}.feedback{font-size:.9rem}.feedback.success{color:var(--success)}.feedback.error{color:var(--danger)}.button{border-radius:.65rem;border:1px solid transparent;padding:.6rem .9rem;cursor:pointer;font-weight:600}.button:disabled{cursor:not-allowed;opacity:.65}.button-primary{background:var(--primary);color:#fff}.button-secondary{background:#fff;color:var(--text);border-color:var(--border)}.button-full{width:100%}.button-danger{background:var(--danger);color:#fff}.button-small{padding:.3rem .55rem;font-size:.78rem}.segment-control{display:inline-flex;gap:.35rem;background:#eef4f0;border:1px solid var(--border);border-radius:.75rem;padding:.25rem}.segment-button{border:0;background:transparent;color:var(--muted);border-radius:.55rem;padding:.45rem .7rem;cursor:pointer;font-weight:600}.segment-button.active{background:#fff;color:var(--primary);box-shadow:0 1px 1px #0000000f}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}.sidebar{padding:1.2rem;border-right:1px solid var(--border);background:linear-gradient(180deg,#f8fbf9 0,#eef4f0);display:flex;flex-direction:column;gap:1rem}.sidebar-brand{display:grid;gap:.4rem}.sidebar-brand h1{font-size:1.2rem}.sidebar-nav{display:grid;gap:.35rem}.sidebar-link{text-decoration:none;padding:.55rem .7rem;border-radius:.55rem;color:var(--muted);border:1px solid transparent}.sidebar-link.active{color:var(--primary);background:var(--primary-soft);border-color:#b6d8c6}.sidebar-footer{margin-top:auto;display:grid;gap:.6rem}.user-email{color:var(--muted);font-size:.85rem;word-break:break-word}.app-main{padding:1.25rem}.page-content{display:grid;gap:1rem}.page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.page-header p{color:var(--muted);margin-top:.35rem}.page-header-actions{display:flex;gap:.5rem}.stats-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stat-card{border-radius:.8rem;border:1px solid var(--border);background:var(--panel);padding:1rem;display:grid;gap:.4rem}.stat-card p{color:var(--muted)}.stat-card strong{font-size:1.6rem}.tone-danger{border-left:4px solid var(--danger)}.tone-warning{border-left:4px solid var(--warning)}.tone-orange{border-left:4px solid var(--orange)}.tone-success{border-left:4px solid var(--success)}.panel-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.panel{border:1px solid var(--border);background:var(--panel);border-radius:.9rem;padding:1rem;display:grid;gap:.75rem}.panel>p,.muted{color:var(--muted)}.table-actions{display:flex;flex-wrap:wrap;gap:.35rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:.55rem;border-bottom:1px solid #edf2ee}td small{display:block;margin-top:.25rem}.badge{display:inline-flex;align-items:center;padding:.22rem .55rem;border-radius:999px;font-size:.78rem;font-weight:700}.badge-success{background:#dcfae6;color:#086c37}.badge-warning{background:#fff4d6;color:#8d5d00}.badge-orange{background:#ffe6d9;color:#a63a00}.badge-danger{background:#fee4e2;color:#912018}.alert{border-radius:.65rem;border:1px solid transparent;padding:.7rem .8rem}.alert-danger{border-color:#f4b4b0;background:#fdecec;color:#94211a}.alert-success{border-color:#9ed3b5;background:#eaf7ef;color:#145c35}.alert-warning{border-color:#f2cf93;background:#fff8eb;color:#8d5d00}.switch-grid{display:grid;gap:.5rem}.switch-item{display:flex;align-items:center;gap:.5rem;color:var(--text)}.switch-item input{width:1rem;height:1rem}.form-actions{display:flex;flex-wrap:wrap;gap:.5rem}.pagination-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem}.pagination-buttons{display:flex;align-items:center;gap:.35rem}.pagination-meta{color:var(--muted);font-size:.86rem}@media(max-width:960px){.auth-shell{grid-template-columns:1fr;padding:1rem}.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.sidebar-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-link{text-align:center;font-size:.85rem}.form-grid-inline,.form-two-columns,.form-three-columns,.form-four-columns,.form-six-columns{grid-template-columns:1fr}}@media(max-width:640px){.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
