:root{--color-bg: #f5f6f8;--color-surface: #ffffff;--color-border: #e2e5ea;--color-text: #1c1f26;--color-text-muted: #6b7280;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-danger: #dc2626;--radius: 10px}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--color-text);background:var(--color-bg)}button{font:inherit;cursor:pointer;border:none;border-radius:var(--radius);padding:8px 16px;background:var(--color-primary);color:#fff}button:hover{background:var(--color-primary-hover)}button.secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}button.danger{background:var(--color-danger)}button:disabled{opacity:.5;cursor:default}input,textarea,select{font:inherit;width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}label{display:block;margin-bottom:12px;font-size:14px}label span{display:block;margin-bottom:4px;color:var(--color-text-muted)}table{width:100%;border-collapse:collapse;background:var(--color-surface);border-radius:var(--radius);overflow:hidden}th,td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--color-border);font-size:14px;vertical-align:top}th{color:var(--color-text-muted);font-weight:500;background:#fafbfc}.page{padding:24px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.page-header h1{margin:0;font-size:22px}.back-link{display:inline-block;margin-bottom:8px;font-size:14px;color:var(--color-text-muted);text-decoration:none}.back-link:hover{color:var(--color-text)}.form-card{max-width:720px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;margin-bottom:16px}.error{color:var(--color-danger);font-size:14px;margin:8px 0}.muted{color:var(--color-text-muted)}.row-actions{display:flex;gap:8px}.pager{display:flex;gap:8px;align-items:center;margin-top:16px}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;margin-bottom:12px}.checkbox-grid label{display:flex;align-items:center;gap:6px;margin:0}.checkbox-grid input{width:auto}.badge{display:inline-block;padding:2px 8px;margin:0 4px 4px 0;font-size:12px;border-radius:999px;background:#eef2ff;color:#3730a3}
