:root{--bg:#f4f1e9;--card:#fffef9e6;--text:#17231d;--muted:#657269;--accent:#b8e34d;--accent-dark:#314d22;--danger:#b94b3d;--success:#287653;--border:#d9ddd0;--shadow:0 18px 45px #23302617}*{box-sizing:border-box}body{min-height:100vh;color:var(--text);background-color:var(--bg);background-image:linear-gradient(#2330260b 1px,#0000 1px),linear-gradient(90deg,#2330260b 1px,#0000 1px),radial-gradient(circle at 85% 0,#b8e34d57,#0000 28rem);background-size:32px 32px,32px 32px,auto;margin:0;font-family:Avenir Next,Helvetica Neue,sans-serif}main{max-width:1180px;margin:0 auto;padding:44px 24px 72px}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:18px}.grid{gap:16px;display:grid}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.kpi-card{padding:22px;position:relative;overflow:hidden}.kpi-card:after{content:"";background:var(--accent);opacity:.32;border-radius:50%;width:76px;height:76px;position:absolute;bottom:-30px;right:-22px}.kpi-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:700}.kpi-value{letter-spacing:-.04em;margin:12px 0 0;font-size:2rem;font-weight:800}.header-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}h1,h2,p{margin-top:0}h1{letter-spacing:-.06em;margin-bottom:8px;font-size:clamp(2rem,4vw,3.2rem);line-height:.98}h2{letter-spacing:-.03em;margin-bottom:18px;font-size:1.35rem}.header-row p,.login-card>p{color:var(--muted)}.actions{align-items:center;gap:10px;display:flex}.actions label{min-width:180px}input,button{font:inherit}input{border:1px solid var(--border);width:100%;color:var(--text);background:#ffffffbd;border-radius:11px;outline:none;padding:12px 13px;transition:border-color .16s,box-shadow .16s,background .16s}input:focus{border-color:var(--accent-dark);background:#fffef9;box-shadow:0 0 0 4px #b8e34d4d}button{cursor:pointer;background:var(--accent);color:var(--accent-dark);border:0;border-radius:11px;padding:12px 16px;font-weight:800;transition:transform .16s,box-shadow .16s,background .16s}button:hover:not(:disabled){background:#c9ee62;transform:translateY(-1px);box-shadow:0 8px 18px #5b7f2a2e}button.secondary{background:var(--text);color:#f7f6ef}.alert{border-radius:12px;margin:12px 0;padding:12px 14px;font-size:.92rem}.alert.error{color:var(--danger);background:#fef2f2;border:1px solid #fecaca}.alert.success{color:var(--success);background:#f0fdf4;border:1px solid #bbf7d0}.table-wrap{border:1px solid var(--border);border-radius:12px;margin-top:18px;overflow:auto}.table-note{color:var(--muted);margin-bottom:16px;font-size:.9rem}.table-controls,.table-pagination,.pagination-actions{align-items:center;gap:12px;display:flex}.table-controls,.table-pagination{justify-content:space-between}.search-control{flex:360px;max-width:560px}.page-size-control{flex:0 0 150px}.table-sort{color:inherit;font-weight:inherit;background:0 0;border-radius:0;padding:2px 0}.table-sort:hover:not(:disabled){box-shadow:none;color:var(--accent-dark);background:0 0;transform:none}.table-pagination{color:var(--muted);flex-wrap:wrap;margin-top:16px;font-size:.9rem}.pagination-actions{flex-wrap:wrap}.pagination-actions button{padding:8px 12px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:14px 16px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#b8e34d1a}th{color:var(--muted);font-weight:600}.customers-table{table-layout:fixed}.customers-table th,.customers-table td{white-space:normal;overflow-wrap:anywhere;padding:12px 10px}.customers-table th:first-child{width:28%}.customers-table th:nth-child(2){width:20%}.customers-table .table-sort{overflow-wrap:anywhere;max-width:100%}.login-card{max-width:480px;margin:9vh auto;padding:32px}.form-grid{gap:12px;display:grid}label{color:var(--muted);gap:7px;font-size:.82rem;font-weight:700;display:grid}a{color:var(--accent-dark);font-weight:800}button:disabled{cursor:not-allowed;opacity:.58}@media (max-width:680px){main{padding:28px 16px 48px}.header-row{flex-direction:column;align-items:stretch}.actions{flex-wrap:wrap}.actions label{flex:100%}.table-controls,.table-pagination{flex-direction:column;align-items:stretch}.search-control,.page-size-control{flex:auto;max-width:none}.customers-table th,.customers-table td{padding:10px 4px;font-size:.8rem}.customers-table th:first-child,.customers-table th:nth-child(2){width:20%}.login-card{margin:4vh auto;padding:24px}}select{font:inherit;border:1px solid var(--border);width:100%;color:var(--text);background:#ffffffbd;border-radius:11px;outline:none;padding:12px 13px}select:focus{border-color:var(--accent-dark);background:#fffef9;box-shadow:0 0 0 4px #b8e34d4d}.nav-row{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:14px;display:flex}.nav-links{flex-wrap:wrap;gap:6px;display:flex}.nav-link{color:var(--muted);border-radius:999px;padding:8px 14px;font-size:.9rem;font-weight:700;text-decoration:none}.nav-link:hover{background:#b8e34d2e}.nav-link.active{background:var(--accent);color:var(--accent-dark)}.nav-user{color:var(--muted);font-size:.88rem;font-weight:700}.tag{color:var(--accent-dark);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#b8e34d52;border-radius:999px;margin-left:8px;padding:3px 9px;font-size:.72rem;font-weight:800;display:inline-block}.secret-value{border:1px dashed var(--accent-dark);color:var(--text);word-break:break-all;background:#fffef9;border-radius:11px;margin-top:8px;padding:12px 14px;font-family:SFMono-Regular,Menlo,monospace;font-size:.86rem;display:block}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.row-actions button{padding:8px 12px;font-size:.84rem}.form-inline{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.form-inline>label{flex:180px}.checkbox-row{flex-wrap:wrap;gap:14px;padding-top:2px;display:flex}.checkbox-label{color:var(--text);white-space:nowrap;align-items:center;gap:6px;font-size:.86rem;font-weight:600;display:flex}.checkbox-label input{width:auto;margin:0}td .checkbox-row{white-space:normal;max-width:420px}button.ghost{color:var(--accent-dark);border:1px solid var(--accent-dark);background:0 0}button.ghost:hover:not(:disabled){box-shadow:none;background:#b8e34d3d}
