:root{--color-bg:#f5f5f5;--color-surface:#fff;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-danger:#dc2626;--color-danger-hover:#b91c1c;--color-text:#111827;--color-text-muted:#6b7280;--color-border:#e5e7eb;--radius:6px;--shadow:0 1px 3px #0000001a}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button{cursor:pointer;border-radius:var(--radius);background:var(--color-primary);color:#fff;border:none;padding:.5rem 1rem}button:hover{background:var(--color-primary-hover)}button.danger{background:var(--color-danger)}button.danger:hover{background:var(--color-danger-hover)}input,select,textarea{border:1px solid var(--color-border);border-radius:var(--radius);width:100%;padding:.5rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--color-primary);border-color:#0000}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--color-border);padding:.5rem}th{color:var(--color-text-muted);font-weight:600}.card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.flash{border-radius:var(--radius);margin-bottom:1rem;padding:.75rem 1rem}.flash.success{color:#065f46;background:#d1fae5}.flash.error{color:#991b1b;background:#fee2e2}
