@charset "UTF-8";:root{--color-primary: #123c3a;--color-primary-hover: #416361;--color-primary-active: #0e302e;--color-primary-soft: #e7ecec;--color-background: #f6f3ec;--color-surface: #ffffff;--color-surface-secondary: #efede6;--color-text-primary: #202625;--color-text-secondary: #6e7271;--color-text-muted: #9b9d9d;--color-text-on-primary: #ffffff;--color-border: #e4e5e5;--color-border-strong: #cecfcf;--color-success: #15803d;--color-success-bg: #dcfce7;--color-warning: #b45309;--color-warning-bg: #fef3c7;--color-error: #b91c1c;--color-error-bg: #fee2e2;--color-info: #0369a1;--color-info-bg: #e0f2fe;--color-accent: #dce780;--color-accent-contrast: #123c3a;--color-disabled: #cecfcf;--font-family-base: system-ui, -apple-system, "Segoe UI", sans-serif;--font-size-display: 2.25rem;--font-size-h1: 1.875rem;--font-size-h2: 1.375rem;--font-size-h3: 1.125rem;--font-size-body: 1rem;--font-size-small: .875rem;--font-size-caption: .8125rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 3px rgba(15, 23, 42, .08);--shadow-md: 0 4px 12px rgba(15, 23, 42, .1)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-family-base);font-size:var(--font-size-body);color:var(--color-text-primary);background:var(--color-background);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}a{color:inherit}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:rgba(128,128,128,.4) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:#80808059;border-radius:999px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background-color:#8080808c}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);min-height:40px;border-radius:var(--radius-sm);border:1px solid transparent;font-family:inherit;font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,opacity .15s ease;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--color-primary);color:var(--color-text-on-primary);box-shadow:0 1px 2px #4f46e552,0 1px 3px #4f46e529}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-primary:active:not(:disabled){background:var(--color-primary-active)}.btn-secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-secondary)}.btn-danger{background:var(--color-surface);color:var(--color-error);border-color:#fecaca}.btn-danger:hover:not(:disabled){background:var(--color-error-bg)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-surface-secondary);color:var(--color-text-primary)}.btn-sm{min-height:32px;padding:var(--space-1) var(--space-3)}@media(max-width:767px){.btn{min-height:44px}.btn-sm{min-height:40px}}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background-color .15s ease,color .15s ease}.icon-btn:hover{background:var(--color-surface-secondary);color:var(--color-text-primary)}.icon-btn:disabled{cursor:not-allowed;opacity:.55}.btn .spinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-6)}.table-responsive{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-small)}.table th{text-align:left;padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.04em;background:var(--color-surface-secondary);border-bottom:1px solid var(--color-border);white-space:nowrap}.table td{padding:14px var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:middle}.table tbody tr{transition:background-color .1s ease}.table tbody tr:hover{background:var(--color-surface-secondary)}.table-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.badge{display:inline-flex;align-items:center;flex-shrink:0;padding:var(--space-1) var(--space-3);border-radius:999px;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);white-space:nowrap;background:var(--color-surface-secondary);color:var(--color-text-secondary)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-neutral{background:var(--color-surface-secondary);color:var(--color-text-secondary)}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.badge-primary{background:var(--color-primary-soft);color:var(--color-primary)}.field input,.field select,.field textarea,.form-field input,.form-field select,.form-field textarea{width:100%;min-height:40px;font-family:inherit;font-size:var(--font-size-body);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease}.field textarea,.form-field textarea{min-height:88px;resize:vertical}.field input:hover:not(:disabled):not(:focus-visible),.field select:hover:not(:disabled):not(:focus-visible),.field textarea:hover:not(:disabled):not(:focus-visible),.form-field input:hover:not(:disabled):not(:focus-visible),.form-field select:hover:not(:disabled):not(:focus-visible),.form-field textarea:hover:not(:disabled):not(:focus-visible){border-color:var(--color-border-strong)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}.field input:disabled,.field select:disabled,.field textarea:disabled,.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled{background:var(--color-surface-secondary);color:var(--color-text-muted);cursor:not-allowed}.form-field.has-error input,.form-field.has-error select,.form-field.has-error textarea{border-color:var(--color-error)}.form-field.has-error input:focus-visible,.form-field.has-error select:focus-visible,.form-field.has-error textarea:focus-visible{outline-color:var(--color-error)}.money-input{display:flex;align-items:center;gap:var(--space-1);min-height:40px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease}.money-input:hover{border-color:var(--color-border-strong)}.money-input:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.money-input span{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.money-input input{flex:1;min-width:0;min-height:auto;padding:0;border:none;background:transparent}.money-input input:focus-visible{outline:none}.checkbox-row,.radio-row{display:flex;align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--font-size-small);color:var(--color-text-primary);cursor:pointer}.checkbox-row input[type=checkbox],.radio-row input[type=radio]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0}.toggle{position:relative;display:inline-flex;align-items:center;width:40px;height:24px;flex-shrink:0}.toggle input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.toggle .track{position:absolute;inset:0;background:var(--color-border-strong);border-radius:999px;transition:background-color .15s ease}.toggle .thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--color-surface);border-radius:50%;box-shadow:var(--shadow-sm);transition:transform .15s ease}.toggle input:checked~.track{background:var(--color-primary)}.toggle input:checked~.thumb{transform:translate(16px)}.toggle input:focus-visible~.track{outline:2px solid var(--color-primary);outline-offset:2px}.selectable-card{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;text-align:left;width:100%;min-height:44px;transition:border-color .15s ease,background-color .15s ease}.selectable-card:hover{border-color:var(--color-border-strong)}.selectable-card.selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.selectable-card:disabled,.selectable-card[aria-disabled=true]{opacity:.55;cursor:not-allowed}
