:root{--bg: #f5f6f8;--panel: #ffffff;--panel-muted: #f2f4f7;--text: #151b23;--muted: #5f6b7a;--border: #d7dde6;--border-strong: #b8c1cf;--primary: #0f6b63;--primary-strong: #0a4f49;--danger: #b42318;--warning: #9a5b13;--success: #087443;--info: #175cd3;--shadow: 0 14px 34px rgba(21, 27, 35, .08);--shadow-soft: 0 8px 22px rgba(21, 27, 35, .06)}*{box-sizing:border-box}html,body{min-height:100%;margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(15,107,99,.22);outline-offset:2px}a{color:inherit;text-decoration:none}.page{display:grid;gap:20px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0}.page-title{margin:0;font-size:26px;line-height:1.15;letter-spacing:0}.page-subtitle{margin:6px 0 0;color:var(--muted)}.eyebrow{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-soft)}.panel-body{padding:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading h2,.panel h2,.panel h3{margin:0;font-size:18px;letter-spacing:0}.grid{display:grid;gap:16px}.grid.cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stat{padding:18px 20px}.stat-label{color:var(--muted);font-size:13px}.stat-value{margin-top:8px;font-size:26px;font-weight:750}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 16px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{background:#fbfcfd;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}tbody tr:hover{background:#fafbfc}tr:last-child td{border-bottom:0}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.field{display:grid;gap:6px}.field label{color:var(--muted);font-size:13px;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid var(--border);border-radius:6px;padding:11px 12px;background:#fff;color:var(--text)}.field input.ng-invalid.ng-touched,.field select.ng-invalid.ng-touched,.field textarea.ng-invalid.ng-touched{border-color:#f1a7a0;background:snow}.field textarea{min-height:92px;resize:vertical}.field-hint,.field-error{font-size:12px}.field-hint{color:var(--muted)}.field-error{color:var(--danger);font-weight:700}.btn{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);border-radius:6px;padding:8px 13px;background:#fff;color:var(--text);font-weight:700;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--border-strong);box-shadow:0 1px #151b230d}.btn.primary{border-color:var(--primary);background:var(--primary);color:#fff}.btn.danger{border-color:#f1b9b3;color:var(--danger)}.btn.success{border-color:#abefc6;color:var(--success)}.btn:disabled{cursor:not-allowed;opacity:.55}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;background:var(--panel-muted);color:var(--muted);font-size:12px;font-weight:750;white-space:nowrap}.badge.success{background:#dff7eb;color:var(--success)}.badge.warning{background:#fff1d6;color:var(--warning)}.badge.danger{background:#fee4e2;color:var(--danger)}.error{border:1px solid #f1b9b3;border-radius:6px;padding:12px;background:#fff5f5;color:var(--danger)}.success-message{border:1px solid #abefc6;border-radius:6px;padding:12px;background:#ecfdf3;color:var(--success);font-weight:700}.muted{color:var(--muted)}.text-strong{font-weight:750}.actions{display:flex;flex-wrap:wrap;gap:8px}pre{overflow:auto;border-radius:6px;padding:14px;background:#101828;color:#ecfdf3;max-height:520px}@media(max-width:760px){.page-header{display:grid}.page-title{font-size:23px}.panel-body{padding:16px}.toolbar,.actions{width:100%}.actions .btn,.toolbar .btn{flex:1 1 auto}}
