@charset "UTF-8";:root{--primary: #2653c5;--primary-dark: #1c449f;--primary-light: #eff4ff;--accent: #f59e0b;--danger: #ba1a1a;--success: #16a34a;--bg: #f8f9ff;--surface: #ffffff;--border: #e2e8f0;--text: #0b1c30;--text-muted: #64748b;--sidebar-bg: #141d33;--sidebar-bg-accent: #1e2a47;--sidebar-text: #aeb9cc;--radius: 8px;--shadow: 0 4px 20px rgba(11, 28, 48, .06);--focus-ring: #2653c5;--focus-ring-inverse: #8fb0ff;--font: "Hanken Grotesk", "Segoe UI", system-ui, -apple-system, Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:var(--font);font-size:15px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0 0 .5rem;font-weight:600;letter-spacing:-.01em}a{color:var(--primary);text-decoration:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;box-shadow:var(--shadow);padding:1.5rem;margin-bottom:1.25rem}.card-title{font-size:1.05rem;font-weight:600;margin-bottom:1.15rem;padding-bottom:.85rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-bottom:.85rem;margin-bottom:1.15rem;border-bottom:1px solid var(--border)}.page-header h1{font-size:1.3rem;font-weight:600;letter-spacing:-.015em;line-height:1.25;margin:0}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;border:1px solid transparent;border-radius:var(--radius);font-size:.92rem;font-weight:500;cursor:pointer;background:var(--surface);color:var(--text);transition:background .15s,box-shadow .15s,transform .05s}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-outline{border-color:var(--border)}.btn-outline:hover:not(:disabled){background:var(--primary-light)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-sm{padding:.3rem .65rem;font-size:.8rem}:root{--form-font: "Hanken Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;--form-primary: #2653c5;--form-primary-hover: #1c449f;--input-border: #cbd5e1;--label-color: #64748b}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.4rem 1.75rem}.form-field{display:flex;flex-direction:column;gap:.45rem}.form-field label{font-family:var(--form-font);font-size:13px;font-weight:600;line-height:18px;letter-spacing:.01em;color:var(--label-color)}.form-field .req{color:var(--error, #ba1a1a);margin-left:1px}input,select,textarea{padding:.68rem .85rem;min-height:44px;border:1px solid var(--input-border);border-radius:var(--radius);font-size:14px;line-height:20px;font-family:var(--form-font);background:#fff;color:var(--text);width:100%;transition:border-color .15s,box-shadow .15s}input::placeholder,select::placeholder,textarea::placeholder{color:#94a3b8}input:hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus){border-color:#94a3b8}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--form-primary);box-shadow:0 0 0 3px #2653c524}input:disabled,select:disabled,textarea:disabled{background:#f1f5f9;color:var(--text-muted)}input.ng-invalid.ng-touched,select.ng-invalid.ng-touched,textarea.ng-invalid.ng-touched{border-color:var(--danger)}input.ng-invalid.ng-touched:focus,select.ng-invalid.ng-touched:focus,textarea.ng-invalid.ng-touched:focus{box-shadow:0 0 0 3px #ba1a1a24}textarea{min-height:88px;resize:vertical}.field-error{color:var(--danger);font-size:.75rem}.field-note{color:var(--text-muted);font-size:.75rem;line-height:1.45}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}.form-actions .btn{font-family:var(--form-font);font-weight:600;padding:.7rem 1.4rem;border-radius:var(--radius)}.form-actions .btn-primary{background:var(--form-primary)}.form-actions .btn-primary:hover:not(:disabled){background:var(--form-primary-hover)}.form-actions .btn-outline{border-color:var(--input-border)}.step-header{align-items:center}.step-header .step-title{display:flex;align-items:center;gap:.75rem;font-size:1.1rem;font-weight:600;font-family:var(--form-font)}.step-header .step-num{width:30px;height:30px;flex-shrink:0;border-radius:999px;background:var(--form-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700}.step-header .next-no{background:#eff4ff;color:var(--form-primary);border:1px solid #d3e4fe;border-radius:999px;padding:.4rem .9rem;font-size:.82rem;font-weight:600;white-space:nowrap}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:.92rem}table.data th,table.data td{padding:.7rem .85rem;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}table.data th{background:#f1f5f9;font-weight:700;color:#475569;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;position:sticky;top:0}table.data tbody tr:nth-child(2n){background:#f8f9ff}table.data tbody tr:hover{background:var(--primary-light)}table.data td.num,table.data th.num{text-align:right}table.data tfoot td{font-weight:600;background:#f8fafc}.empty-state{text-align:center;color:var(--text-muted);padding:2rem}.badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600}.badge-success{background:#dcfce7;color:#166534}.badge-warn{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.toolbar{display:flex;flex-wrap:wrap;gap:1rem 1.25rem;align-items:flex-end;margin-bottom:1.25rem}.toolbar .form-field{flex:1 1 220px;min-width:200px;max-width:360px}.toolbar .search-box{flex:1 1 260px;max-width:420px}.toolbar .btn{min-height:44px;padding-left:1.5rem;padding-right:1.5rem}.alert{padding:.65rem 1rem;border-radius:var(--radius);margin-bottom:1rem;font-size:.875rem}.alert-error{background:#fee2e2;color:#991b1b}.alert-success{background:#dcfce7;color:#166534}.search-box{display:flex;align-items:center;gap:.4rem;max-width:320px;width:100%}.search-box input{width:100%}@media(max-width:768px){html,body{font-size:14.5px}.page-header{flex-wrap:wrap;gap:.6rem}.page-header h1{font-size:1.25rem}.form-grid{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.card{padding:.9rem}table.data th,table.data td{padding:.45rem .55rem;font-size:.82rem}}@media print{body{background:#fff}.no-print{display:none!important}.print-area{box-shadow:none!important;border:none!important}}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.num,table.data td.num,table.data th.num{font-variant-numeric:tabular-nums}table.data th.wrap,table.data td.wrap{white-space:normal;overflow-wrap:anywhere;min-width:180px;line-height:1.45}table.data th.wrap-sm,table.data td.wrap-sm{white-space:normal;overflow-wrap:anywhere;min-width:110px;line-height:1.45}table.data td .row-actions{display:flex;flex-wrap:wrap;gap:.3rem}.skeleton{display:block;height:12px;border-radius:3px;background:linear-gradient(90deg,var(--bg) 25%,#eef1f7 50%,var(--bg) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.3s infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}
