@charset "UTF-8";:root{--primary-color: #2563eb;--primary-color-hover: #1d4ed8;--primary-color-soft: #eff6ff;--text-color: #111827;--secondary-color: #4b5563;--placeholder-color: #9ca3af;--surface-color: #ffffff;--surface-raised: #f9fafb;--default-color: #f3f4f6;--input-bg: #ffffff;--border-color: #e5e7eb;--border-color-strong: #d1d5db;--success-color: #10b981;--success-bg: #d1fae5;--warning-color: #d97706;--warning-bg: #fef3c7;--danger-color: #dc2626;--danger-bg: #fee2e2;--info-color: #0891b2;--info-bg: #cffafe;--sidebar-bg: #111827;--sidebar-text: #d1d5db;--sidebar-text-active: #ffffff;--sidebar-item-active-bg: #1f2937;--topbar-bg: #ffffff;--topbar-border: #e5e7eb;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 80px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-pill: 999px;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-heading: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Roboto Mono", Consolas, monospace;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-15: 15px;--fs-16: 16px;--fs-18: 18px;--fs-20: 20px;--fs-24: 24px;--fs-28: 28px;--topbar-height: 56px;--sidebar-width: 240px;--sidebar-width-collapsed: 64px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-lg: 0 16px 40px rgba(15, 23, 42, .1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font-body);font-size:var(--fs-14);line-height:1.5;color:var(--text-color);background:var(--default-color);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);margin:0;color:var(--text-color);font-weight:600;line-height:1.25}h1{font-size:var(--fs-24)}h2{font-size:var(--fs-20)}h3{font-size:var(--fs-18)}h4{font-size:var(--fs-16)}p{margin:0}a{color:var(--primary-color);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--font-mono);font-size:var(--fs-13)}code{background:var(--default-color);padding:1px 6px;border-radius:var(--radius-sm)}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=datetime-local],input[type=time],input[type=search],input[type=tel],input[type=url],select,textarea{width:100%;padding:var(--space-2) var(--space-3);font:inherit;font-size:var(--fs-14);color:var(--text-color);background:var(--input-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-soft)}input:disabled,select:disabled,textarea:disabled{background:var(--default-color);color:var(--secondary-color);cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--placeholder-color)}label{display:block;font-size:var(--fs-13);font-weight:500;color:var(--secondary-color);margin-bottom:var(--space-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font:inherit;font-size:var(--fs-14);font-weight:500;line-height:1.2;border:1px solid transparent;border-radius:var(--radius-md);background:var(--default-color);color:var(--text-color);cursor:pointer;transition:background .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.btn:hover{background:var(--border-color)}.btn:focus-visible{outline:0;box-shadow:0 0 0 3px var(--primary-color-soft)}.btn:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.btn-primary:hover{background:var(--primary-color-hover);border-color:var(--primary-color-hover)}.btn-secondary{background:var(--surface-color);color:var(--text-color);border-color:var(--border-color)}.btn-secondary:hover{background:var(--default-color)}.btn-danger{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.btn-danger:hover{filter:brightness(.92)}.btn-link{background:none;border:0;color:var(--primary-color);padding:0;font-weight:500}.btn-link:hover{background:none;text-decoration:underline}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--fs-13)}.btn-lg{padding:var(--space-3) var(--space-5);font-size:var(--fs-15)}.form-fieldset{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-color);padding:var(--space-5);margin-bottom:var(--space-5)}.form-fieldset>legend{padding:0 var(--space-2);font-size:var(--fs-13);font-weight:600;color:var(--secondary-color);text-transform:uppercase;letter-spacing:.5px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4);margin-bottom:var(--space-4)}.form-row.form-row-wide{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.form-field{display:flex;flex-direction:column}.form-field-full{grid-column:1/-1}.form-actions{display:flex;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border-color);margin-top:var(--space-5)}.form-actions-end{justify-content:flex-end}.data-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.data-table th,.data-table td{text-align:left;padding:var(--space-3) var(--space-4);font-size:var(--fs-14);border-bottom:1px solid var(--border-color);vertical-align:middle}.data-table th{background:var(--surface-raised);color:var(--secondary-color);font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-size:var(--fs-12)}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--surface-raised)}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.data-table .actions{text-align:right}.status-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);font-size:var(--fs-12);font-weight:600;line-height:1.3;border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.3px}.status-badge-success{background:var(--success-bg);color:var(--success-color)}.status-badge-warning{background:var(--warning-bg);color:var(--warning-color)}.status-badge-danger{background:var(--danger-bg);color:var(--danger-color)}.status-badge-info{background:var(--info-bg);color:var(--info-color)}.status-badge-neutral{background:var(--default-color);color:var(--secondary-color)}.empty-state{padding:var(--space-7) var(--space-4);text-align:center;color:var(--secondary-color);background:var(--surface-color);border:1px dashed var(--border-color);border-radius:var(--radius-lg)}.empty-state h3{font-size:var(--fs-16);margin-bottom:var(--space-2);color:var(--text-color)}.empty-state p{font-size:var(--fs-14);margin-bottom:var(--space-4)}.card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.muted{color:var(--secondary-color)}.error-text{color:var(--danger-color)}.warn-text{color:var(--warning-color)}.success-text{color:var(--success-color)}.mono{font-family:var(--font-mono)}.nowrap{white-space:nowrap}.flex-grow{flex:1}.text-right{text-align:right}.text-center{text-align:center}
