:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:#1a1a1a;background:#fafafa;line-height:1.5;--brand: #0f766e;--brand-hover: #0c5f58;--brand-tint: #ccfbf1;--brand-tint-strong: #99f6e4}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;padding:.5rem 1rem;border:1px solid #c8c8c8;border-radius:6px;background:#fff}button:hover:not(:disabled){background:#f0f0f0}button.primary{background:var(--brand);color:#fff;border-color:var(--brand)}button.primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover)}input:focus,select:focus,textarea:focus{outline:2px solid var(--brand-tint-strong);outline-offset:-1px;border-color:var(--brand)}button.icon-btn{padding:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:#4a4a4a}button.icon-btn:hover:not(:disabled){background:var(--brand-tint);color:var(--brand);border-color:var(--brand)}button.icon-btn.danger:hover:not(:disabled){background:#fee2e2;color:#b00020;border-color:#b00020}button.icon-btn svg{width:16px;height:16px}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;padding:.5rem .75rem;border:1px solid #c8c8c8;border-radius:6px;background:#fff;width:100%}label{display:block;margin-bottom:.25rem;font-weight:500;font-size:.9rem}.field{margin-bottom:.625rem}.page{max-width:1280px;margin:0 auto;padding:1.25rem 1rem}.card{background:#fff;border:1px solid #e6e6e6;border-radius:8px;padding:1rem;margin-bottom:.75rem}.error{color:#b00020;font-size:.9rem;margin-top:.5rem}.nav{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1.25rem;background:#fff;border-bottom:1px solid #e6e6e6}.nav a{color:#1a1a1a;font-weight:500}.nav .brand{font-weight:700;font-size:1.1rem;color:var(--brand)}.muted{color:#6a737d;font-size:.9rem}table{font-size:.9rem}thead tr{background:#f4faf9;border-color:var(--brand-tint-strong);text-transform:uppercase;letter-spacing:.02em;font-size:.75rem;color:#4a4a4a;font-weight:600}tbody tr:hover{background:#fafcfb}@media(max-width:720px){button{min-height:40px}button.icon-btn{min-height:36px;width:36px;height:36px}input,select,textarea{min-height:40px;font-size:1rem}.page,.card{padding:.75rem}.nav{padding:.5rem .75rem}}
