@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #eff6ff;--color-primary-ring: rgba(37, 99, 235, .35);--color-accent: #0891b2;--color-accent-hover: #0e7490;--color-accent-light: #ecfeff;--color-success: #22c55e;--color-success-hover: #16a34a;--color-success-light: #f0fdf4;--color-success-dark: #15803d;--color-warning: #f59e0b;--color-warning-hover: #d97706;--color-warning-light: #fffbeb;--color-warning-dark: #92400e;--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-light: #fef2f2;--color-danger-dark: #991b1b;--color-export: #059669;--color-export-hover: #047857;--color-purple: #6d28d9;--color-purple-light: #ede9fe;--color-info: #2563eb;--color-info-light: #eff6ff;--color-info-dark: #1e40af;--bg-body: #ffffff;--bg-surface: #ffffff;--bg-muted: #f9fafb;--bg-subtle: #f3f4f6;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--text-inverse: #ffffff;--border: #e5e7eb;--border-light: #f3f4f6;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .12);--shadow-hover: 0 4px 12px rgba(0, 0, 0, .06), 0 1px 3px rgba(0, 0, 0, .04);--shadow-selected: 0 0 0 1px #93c5fd, 0 2px 8px rgba(37, 99, 235, .08);--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 9999px;--font-family: "DM Sans", system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-md: 13px;--font-size-lg: 14px;--font-size-xl: 15px;--font-size-2xl: 18px;--font-size-3xl: 22px;--font-size-4xl: 28px;--transition-fast: .1s ease;--transition: .15s ease;--transition-slow: .25s ease;--focus-ring: 0 0 0 2px var(--bg-surface), 0 0 0 4px var(--color-primary-ring)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-size-md);background:var(--bg-body);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}input,select{font:inherit;color:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;height:34px;border-radius:var(--radius);font-size:var(--font-size-md);font-weight:500;letter-spacing:.01em;line-height:1;white-space:nowrap;transition:background var(--transition),box-shadow var(--transition),border-color var(--transition),opacity var(--transition)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--color-primary);color:var(--text-inverse);box-shadow:var(--shadow-sm),inset 0 1px #ffffff1a}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow)}.btn--accent{background:var(--color-accent);color:var(--text-inverse);box-shadow:var(--shadow-sm),inset 0 1px #ffffff1a}.btn--accent:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--shadow)}.btn--export{background:var(--color-export);color:var(--text-inverse);font-weight:600;box-shadow:var(--shadow-sm),inset 0 1px #ffffff1a}.btn--export:hover:not(:disabled){background:var(--color-export-hover);box-shadow:var(--shadow)}.btn--accept{background:var(--color-success);color:var(--text-inverse);padding:4px 10px;height:28px;font-size:var(--font-size-sm);box-shadow:var(--shadow-sm)}.btn--accept:hover:not(:disabled){background:var(--color-success-hover)}.btn--quick-verify{background:var(--color-success-hover);color:var(--text-inverse);padding:4px 10px;height:28px;font-size:var(--font-size-sm);font-weight:600;box-shadow:var(--shadow-sm)}.btn--quick-verify:hover:not(:disabled){background:var(--color-success-dark)}.btn--enter{background:var(--color-danger);color:var(--text-inverse);padding:4px 10px;height:28px;font-size:var(--font-size-sm);font-weight:600;box-shadow:var(--shadow-sm)}.btn--enter:hover:not(:disabled){background:var(--color-danger-hover)}.btn--edit{background:transparent;color:var(--text-secondary);border:1px solid var(--border);padding:4px 8px;height:28px;font-size:var(--font-size-sm)}.btn--edit:hover:not(:disabled){background:var(--bg-muted);border-color:#d1d5db}.btn--save{background:var(--color-primary);color:var(--text-inverse);padding:4px 10px;height:28px;font-size:var(--font-size-sm);box-shadow:var(--shadow-sm)}.btn--save:hover:not(:disabled){background:var(--color-primary-hover)}.btn--cancel{background:transparent;color:var(--text-secondary);border:1px solid var(--border);padding:4px 10px;height:28px;font-size:var(--font-size-sm)}.btn--cancel:hover:not(:disabled){background:var(--bg-muted);border-color:#d1d5db}.btn--ghost{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);padding:8px 18px;height:36px;border-radius:var(--radius);font-size:var(--font-size-md);font-weight:500}.btn--ghost:hover:not(:disabled){background:var(--bg-muted);border-color:#d1d5db}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.01em}.badge--verified{background:var(--color-success-light);color:var(--color-success-dark)}.badge--reviewed{background:var(--color-primary-light);color:var(--color-primary-hover)}.badge--high{background:var(--color-warning-light);color:#a16207}.badge--low{background:var(--color-danger-light);color:#b91c1c}.badge--draft{background:#fef3c7;color:#d97706}.conf-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:600;white-space:nowrap;letter-spacing:.01em}.conf-badge--auto{background:var(--color-success-light);color:var(--color-success-dark)}.conf-badge--review{background:var(--color-warning-light);color:var(--color-warning-dark)}.conf-badge--manual{background:var(--color-danger-light);color:var(--color-danger-dark)}.conf-badge--reviewed{background:var(--color-primary-light);color:var(--color-primary-hover)}.conf-badge--verified{background:var(--color-success-light);color:#166534;font-weight:700}.badge-pill{display:inline-flex;align-items:center;padding:3px 12px;border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.02em}.gate-summary{display:flex;align-items:center;gap:20px;padding:8px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border);font-size:var(--font-size-sm);flex-shrink:0}.gate-summary__item{display:flex;align-items:center;gap:6px;font-weight:500}.gate-summary__dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.gate-summary__item--auto .gate-summary__dot{background:var(--color-success)}.gate-summary__item--auto{color:var(--color-success-dark)}.gate-summary__item--review .gate-summary__dot{background:var(--color-warning)}.gate-summary__item--review{color:var(--color-warning-dark)}.gate-summary__item--manual .gate-summary__dot{background:var(--color-danger)}.gate-summary__item--manual{color:var(--color-danger-dark)}.gate-summary__total{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.review-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-body)}.review-layout__topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border);gap:12px;flex-shrink:0}.review-layout__actions{display:flex;gap:8px;align-items:center}.review-layout__status{display:flex;align-items:center;gap:12px}.review-layout__year{font-weight:600;color:var(--text-secondary);font-size:var(--font-size-md)}.review-layout__export-success{color:var(--color-export);font-weight:500;font-size:var(--font-size-md)}.review-layout__error{background:var(--color-danger-light);border:1px solid #fca5a5;color:var(--color-danger-dark);padding:10px 16px;font-size:var(--font-size-md);border-radius:var(--radius)}.review-layout__loading{padding:40px;text-align:center;color:var(--text-secondary);font-size:var(--font-size-md)}.review-layout__empty{padding:40px;text-align:center;color:var(--text-tertiary);font-size:var(--font-size-md)}.review-layout__split{display:flex;flex:1;overflow:hidden}.review-layout__left{width:55%;border-right:1px solid var(--border);overflow-y:auto;background:var(--bg-muted)}.review-layout__right{width:45%;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px;background:var(--bg-surface)}.status-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.03em}.status-pill--draft{background:#fef9c3;color:#a16207}.status-pill--reviewed{background:var(--color-primary-light);color:var(--color-primary-hover)}.status-pill--verified{background:var(--color-success-light);color:var(--color-success-dark)}.status-pill--exported{background:var(--color-purple-light);color:var(--color-purple)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot--online{background:var(--color-success);box-shadow:0 0 0 2px #22c55e33}.status-dot--idle{background:var(--color-warning);box-shadow:0 0 0 2px #f59e0b33}.status-dot--offline{background:var(--text-tertiary)}.status-dot--error{background:var(--color-danger);box-shadow:0 0 0 2px #ef444433}.status-dot--pending{background:var(--color-warning);box-shadow:0 0 0 2px #f59e0b33}.doc-viewer{display:flex;flex-direction:column;height:100%}.doc-viewer__toolbar{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border);font-size:var(--font-size-md);flex-shrink:0}.doc-viewer__toolbar button{background:var(--bg-subtle);color:var(--text-secondary);padding:4px 10px;border-radius:var(--radius-sm);font-size:var(--font-size-md);border:1px solid var(--border);transition:background var(--transition)}.doc-viewer__toolbar button:hover:not(:disabled){background:var(--border)}.doc-viewer__toolbar button:disabled{opacity:.4;cursor:default}.doc-viewer__canvas-wrapper{flex:1;overflow:auto;display:flex;justify-content:center;padding:16px;position:relative;background:var(--bg-muted)}.doc-viewer__loading{padding:40px;color:var(--text-tertiary)}.doc-viewer__jump-btn{margin:8px auto;display:block;background:var(--color-warning);color:var(--text-inverse);padding:6px 14px;border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:500;transition:background var(--transition)}.doc-viewer__jump-btn:hover{background:var(--color-warning-hover)}.field-panel{background:var(--bg-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border-light)}.field-panel__header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--bg-muted);border-bottom:1px solid var(--border)}.field-panel__header h3{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.field-group{border-bottom:1px solid var(--border-light)}.field-group:last-child{border-bottom:none}.field-group__title{padding:8px 16px 4px;font-size:var(--font-size-xs);font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;background:var(--bg-muted)}.field-row{display:grid;grid-template-columns:3px 200px 1fr auto auto;align-items:start;gap:8px;padding:8px 16px 8px 0;border-bottom:1px solid var(--border-light);cursor:pointer;transition:background var(--transition-fast);position:relative}.field-row:last-child{border-bottom:none}.field-row:hover{background:var(--color-primary-light)}.field-row--verified{background:#fafff8}.field-row--reviewed{background:#f8faff}.field-row__tier-bar{width:2px;height:100%;border-radius:1px;align-self:stretch}.field-row__tier-bar--auto{background:var(--color-success)}.field-row__tier-bar--review{background:var(--color-warning)}.field-row__tier-bar--manual{background:var(--color-danger)}.field-row--auto{background:#fcfefb}.field-row--review{background:#fefdfb}.field-row--manual{background:#fefbfb;border-left:none}.field-row__label{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:500;padding-top:2px}.field-row__value{font-size:var(--font-size-md);min-width:0}.field-row__display-value{font-weight:500;color:var(--text-primary)}.field-row__display-value--empty{color:var(--text-tertiary);font-style:italic;font-weight:400}.field-row__display-value--manual-prompt{color:var(--color-danger);font-style:italic}.field-row__meta{display:flex;align-items:flex-start;padding-top:2px}.field-row__actions{display:flex;gap:4px;align-items:flex-start;flex-shrink:0}.field-row__edit{display:flex;flex-direction:column;gap:4px}.field-row__input{border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 8px;font-size:var(--font-size-md);width:100%;background:var(--bg-surface);color:var(--text-primary);transition:border-color var(--transition),box-shadow var(--transition)}.field-row__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.field-row__input--reason{font-size:var(--font-size-sm);color:var(--text-secondary)}.field-row__edit-actions{display:flex;gap:6px}.export-history{background:var(--bg-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--border-light)}.export-history__title{font-size:var(--font-size-lg);font-weight:600;padding:12px 16px;background:var(--bg-muted);border-bottom:1px solid var(--border);color:var(--text-primary)}.export-history__table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.export-history__table th{text-align:left;padding:8px 12px;color:var(--text-secondary);border-bottom:1px solid var(--border);font-weight:600;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em}.export-history__table td{padding:8px 12px;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.export-history__table tr:last-child td{border-bottom:none}.export-history__table tbody tr:hover{background:var(--bg-muted)}.page-container{max-width:1100px;margin:0 auto;padding:40px 24px 64px}.page-container--narrow{max-width:720px}.page-container--billing{max-width:640px}.page-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--text-primary);letter-spacing:-.02em;margin-bottom:32px;line-height:1.3}.section-title{font-size:var(--font-size-xs);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px;transition:box-shadow var(--transition)}.card:hover{box-shadow:var(--shadow-hover)}.card--static,.card--static:hover{box-shadow:var(--shadow)}.card--interactive{cursor:pointer}.card--selected{border-color:#93c5fd;background:#f8faff;box-shadow:var(--shadow-selected)}.card--muted{opacity:.55}.card--accent-top{border-top:3px solid var(--color-primary)}.card-list{display:flex;flex-direction:column;gap:8px}.table-container{width:100%;overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);background:var(--bg-surface)}.table-container table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}.table-container thead{position:sticky;top:0;z-index:1}.table-container th{text-align:left;padding:10px 14px;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-muted);border-bottom:1px solid var(--border)}.table-container td{padding:10px 14px;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.table-container tbody tr:last-child td{border-bottom:none}.table-container tbody tr:nth-child(2n){background:var(--bg-muted)}.table-container tbody tr:hover{background:var(--color-primary-light)}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}.data-table th{text-align:left;padding:10px 12px;font-size:var(--font-size-xs);font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--border);white-space:nowrap}.data-table td{padding:10px 12px;color:var(--text-primary);border-bottom:1px solid var(--border-light)}.data-table tbody tr:nth-child(2n){background:var(--bg-muted)}.data-table tbody tr:hover{background:var(--color-primary-light)}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:20px;font-size:var(--font-size-sm);color:var(--text-secondary)}.pagination__buttons{display:flex;gap:6px}.pagination__btn{padding:6px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);background:var(--bg-surface);cursor:pointer;transition:background var(--transition),border-color var(--transition)}.pagination__btn:hover:not(:disabled){background:var(--bg-muted);border-color:var(--text-tertiary)}.pagination__btn:disabled{opacity:.4;cursor:not-allowed}.kv-grid{display:grid;grid-template-columns:140px 1fr;gap:10px 20px;font-size:var(--font-size-md)}.kv-grid__label{color:var(--text-secondary);font-weight:500}.kv-grid__value{color:var(--text-primary);font-weight:500}.form-field{display:flex;flex-direction:column;gap:5px;margin-bottom:16px}.form-label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.form-input{border:1px solid #d1d5db;border-radius:var(--radius);padding:8px 12px;font-size:var(--font-size-md);color:var(--text-primary);background:var(--bg-surface);transition:border-color var(--transition),box-shadow var(--transition);line-height:1.5}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.form-input::placeholder{color:var(--text-tertiary)}.form-select{border:1px solid #d1d5db;border-radius:var(--radius);padding:8px 30px 8px 12px;font-size:var(--font-size-md);color:var(--text-primary);background:var(--bg-surface);cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%236b7280' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.form-error{font-size:var(--font-size-sm);color:var(--color-danger-hover);margin-top:2px}.alert{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:var(--radius-lg);font-size:var(--font-size-md);font-weight:500;margin-bottom:20px;line-height:1.4;border:1px solid}.alert--error{background:var(--color-danger-light);border-color:#fecaca;color:var(--color-danger-dark)}.alert--success{background:var(--color-success-light);border-color:#bbf7d0;color:#166534}.alert--warning{background:var(--color-warning-light);border-color:#fde68a;color:var(--color-warning-dark)}.alert--info{background:var(--color-info-light);border-color:#bfdbfe;color:var(--color-info-dark)}.alert__dismiss{background:none;border:none;font-size:18px;line-height:1;opacity:.5;padding:0 0 0 12px;cursor:pointer;transition:opacity var(--transition);flex-shrink:0}.alert__dismiss:hover{opacity:1}.empty-state{text-align:center;padding:56px 24px;color:var(--text-tertiary)}.empty-state__icon{font-size:40px;margin-bottom:12px;opacity:.4}.empty-state__title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-secondary);margin-bottom:6px}.empty-state__description{font-size:var(--font-size-md);color:var(--text-tertiary);line-height:1.5}.empty-state svg,.empty-state img{opacity:.4;width:48px;height:48px}.badge-status{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.badge-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:var(--radius);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background var(--transition),border-color var(--transition);border:1px solid transparent}.toggle-btn--enabled{background:var(--color-success-light);color:#166534;border-color:#bbf7d0}.toggle-btn--enabled:hover{background:#dcfce7}.toggle-btn--disabled{background:var(--bg-subtle);color:var(--text-secondary);border-color:var(--border)}.toggle-btn--disabled:hover{background:var(--border)}kbd.kbd{display:inline-block;background:var(--bg-subtle);border:1px solid #d1d5db;border-bottom-width:2px;border-radius:5px;padding:3px 10px;font-size:var(--font-size-sm);font-family:var(--font-mono);color:var(--text-primary);white-space:nowrap}.loading-text{color:var(--text-tertiary);font-size:var(--font-size-md);padding:20px 0}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.summary-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);border-left:3px solid var(--color-primary);padding:18px 20px;box-shadow:var(--shadow)}.summary-card__label{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-weight:600;margin-bottom:6px}.summary-card__value{font-size:var(--font-size-4xl);font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary);line-height:1.1}.summary-card__value--success{color:var(--color-success-hover)}.summary-card__value--danger{color:var(--color-danger-hover)}.daily-table-wrapper{overflow-x:auto;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.daily-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}.daily-table thead th{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;padding:12px 14px;border-bottom:2px solid var(--border);text-align:left;white-space:nowrap;background:var(--bg-muted)}.daily-table thead th.text-right{text-align:right}.daily-table tbody tr{border-bottom:1px solid var(--border-light);transition:background var(--transition-fast)}.daily-table tbody tr:nth-child(2n){background:var(--bg-muted)}.daily-table tbody tr:hover{background:var(--color-primary-light)}.daily-table tbody td{padding:10px 14px;color:var(--text-primary)}.daily-table tbody td.text-right{text-align:right;font-variant-numeric:tabular-nums}.daily-table tbody td.text-success{color:var(--color-success-hover)}.daily-table tbody td.text-danger{color:var(--color-danger-hover)}.clients-layout{display:flex;gap:28px;min-height:calc(100vh - 120px)}.clients-sidebar{width:320px;flex-shrink:0}.clients-sidebar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.clients-sidebar__title{font-size:var(--font-size-3xl);font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.clients-search{width:100%;margin-bottom:14px;border:1px solid var(--border);border-radius:var(--radius);padding:9px 12px;font-size:var(--font-size-lg);color:var(--text-primary);background:var(--bg-surface);transition:border-color var(--transition),box-shadow var(--transition)}.clients-search:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring)}.clients-search::placeholder{color:var(--text-tertiary)}.client-list{display:flex;flex-direction:column;gap:4px}.client-item{background:var(--bg-surface);border:1px solid var(--border-light);border-left:3px solid transparent;border-radius:var(--radius-lg);padding:11px 14px;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition)}.client-item:hover{background:var(--bg-muted);box-shadow:var(--shadow-sm)}.client-item--selected{background:var(--color-primary-light);border-color:#bfdbfe;border-left-color:var(--color-primary);box-shadow:var(--shadow-sm)}.client-item__name{font-weight:600;font-size:var(--font-size-lg);color:var(--text-primary)}.client-item__meta{margin-left:10px;color:var(--text-secondary);font-size:var(--font-size-sm)}.clients-detail{flex:1;min-width:0}.clients-detail__name{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:20px;letter-spacing:-.01em}.doc-item{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius);padding:10px 14px;display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-md);transition:box-shadow var(--transition)}.doc-item:hover{box-shadow:var(--shadow-sm)}.doc-item__name{color:var(--text-primary);font-weight:500}.doc-item__status{font-weight:600;font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-pill)}.pkg-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition)}.pkg-card:hover{background:var(--bg-muted);box-shadow:var(--shadow)}.pkg-card__label{font-weight:600;font-size:var(--font-size-lg);color:var(--text-primary)}.pkg-card__status{margin-left:12px;color:var(--text-secondary);font-size:var(--font-size-sm)}.pkg-card__link{color:var(--color-primary);font-size:var(--font-size-md);font-weight:500}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-surface);border-radius:var(--radius-xl);padding:28px;width:420px;max-width:90vw;z-index:201;box-shadow:var(--shadow-lg);animation:fade-in .15s ease}.dialog-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:20px}.dialog-form{display:flex;flex-direction:column;gap:14px}.dialog-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:10px}@keyframes toast-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes toast-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes focus-ring-pulse{0%{box-shadow:0 0 0 2px var(--bg-surface),0 0 0 4px #2563eb33}50%{box-shadow:0 0 0 2px var(--bg-surface),0 0 0 6px #2563eb1a}to{box-shadow:0 0 0 2px var(--bg-surface),0 0 0 4px #2563eb33}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.field-row:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm);z-index:1}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}@media(max-width:768px){.review-layout__split{flex-direction:column}.review-layout__left{width:100%;height:40vh;border-right:none;border-bottom:1px solid var(--border)}.review-layout__right{width:100%}.review-layout__topbar{flex-direction:column;align-items:flex-start}.field-row{grid-template-columns:3px 120px 1fr auto}.gate-summary{flex-wrap:wrap;gap:10px}.clients-layout{flex-direction:column}.clients-sidebar{width:100%}.page-container{padding:24px 16px 48px}.page-title{font-size:20px;margin-bottom:24px}.card{padding:16px}.kv-grid{grid-template-columns:1fr;gap:4px 0}.kv-grid__label{font-size:var(--font-size-xs)}}@media(prefers-color-scheme:dark){:root{--bg-body: #0f172a;--bg-surface: #1e293b;--bg-muted: #1a2332;--bg-subtle: #273548;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-inverse: #ffffff;--border: #334155;--border-light: #293548;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .4);--shadow-hover: 0 4px 12px rgba(0, 0, 0, .2);--shadow-selected: 0 0 0 1px #3b82f6, 0 2px 8px rgba(37, 99, 235, .15);--color-primary-light: #1e3a5f;--color-primary-ring: rgba(59, 130, 246, .35);--color-accent-light: #164e63;--color-success-light: #052e16;--color-warning-light: #422006;--color-danger-light: #450a0a;--color-purple-light: #2e1065;--color-info-light: #172554;--color-info-dark: #93c5fd;--focus-ring: 0 0 0 2px var(--bg-surface), 0 0 0 4px var(--color-primary-ring)}.btn--edit{background:transparent;border-color:var(--border);color:var(--text-secondary)}.btn--edit:hover:not(:disabled){background:var(--bg-subtle);border-color:#475569}.btn--cancel{background:transparent;border-color:var(--border);color:var(--text-secondary)}.btn--cancel:hover:not(:disabled){background:var(--bg-subtle);border-color:#475569}.btn--ghost{background:var(--bg-surface);color:var(--text-secondary);border-color:var(--border)}.btn--ghost:hover:not(:disabled){background:var(--bg-subtle)}.badge--draft{background:#422006;color:#fbbf24}.badge--verified{background:#052e16;color:#4ade80}.badge--reviewed{background:#1e3a5f;color:#60a5fa}.badge--high{background:#422006;color:#fbbf24}.badge--low{background:#450a0a;color:#fca5a5}.conf-badge--auto{background:#052e16;color:#4ade80}.conf-badge--review{background:#422006;color:#fbbf24}.conf-badge--manual{background:#450a0a;color:#fca5a5}.conf-badge--reviewed{background:#1e3a5f;color:#60a5fa}.conf-badge--verified{background:#052e16;color:#4ade80}.gate-summary__item--auto{color:#4ade80}.gate-summary__item--review{color:#fbbf24}.gate-summary__item--manual{color:#fca5a5}.status-pill--draft{background:#422006;color:#fbbf24}.status-pill--reviewed{background:#1e3a5f;color:#60a5fa}.status-pill--verified{background:#052e16;color:#4ade80}.status-pill--exported{background:#2e1065;color:#a78bfa}.review-layout__error{background:#450a0a;border-color:#7f1d1d;color:#fca5a5}.doc-viewer__toolbar button{background:var(--bg-subtle);border-color:var(--border);color:var(--text-secondary)}.doc-viewer__toolbar button:hover:not(:disabled){background:#475569}.doc-viewer__canvas-wrapper{background:var(--bg-body)}.field-row:hover{background:#253347}.field-row--verified{background:#0a2618}.field-row--reviewed{background:#172a4a}.field-row--auto{background:#0a2618}.field-row--review{background:#2a1e0a}.field-row--manual{background:#2a0a0a}.field-row__display-value--empty{color:var(--text-tertiary)}.field-row__input{background:var(--bg-body);border-color:#475569;color:var(--text-primary)}.field-row__input:focus{border-color:#3b82f6}.card--selected{background:#1e3a5f;border-color:#3b82f6}.card--accent-top{border-top-color:#3b82f6}.form-input{background:var(--bg-body);border-color:#475569;color:var(--text-primary)}.form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.form-select{background-color:var(--bg-body);border-color:#475569;color:var(--text-primary)}.form-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.alert--error{background:#450a0a;border-color:#7f1d1d;color:#fca5a5}.alert--success{background:#052e16;border-color:#166534;color:#4ade80}.alert--warning{background:#422006;border-color:#92400e;color:#fbbf24}.alert--info{background:#172554;border-color:#1e3a5f;color:#93c5fd}.alert__dismiss{color:inherit}.empty-state__title{color:var(--text-secondary)}.empty-state__description{color:var(--text-tertiary)}.data-table th{color:var(--text-secondary);border-color:#475569}.data-table td{color:var(--text-secondary);border-color:var(--border)}.data-table tbody tr:nth-child(2n){background:var(--bg-body)}.data-table tbody tr:hover{background:var(--bg-subtle)}.table-container tbody tr:nth-child(2n){background:var(--bg-muted)}.table-container tbody tr:hover{background:var(--bg-subtle)}.pagination__btn{background:var(--bg-surface);border-color:#475569;color:var(--text-secondary)}.pagination__btn:hover:not(:disabled){background:var(--bg-subtle)}.kv-grid__label{color:var(--text-secondary)}.kv-grid__value{color:var(--text-primary)}kbd.kbd{background:var(--bg-subtle);border-color:#475569;color:var(--text-secondary)}.toggle-btn--enabled{background:#052e16;color:#4ade80;border-color:#166534}.toggle-btn--enabled:hover{background:#0a3a1e}.toggle-btn--disabled{background:var(--bg-subtle);color:var(--text-secondary);border-color:#475569}.toggle-btn--disabled:hover{background:#334155}.summary-card{border-left-color:#3b82f6}.daily-table tbody tr:nth-child(2n){background:var(--bg-body)}.daily-table tbody tr:hover{background:var(--bg-subtle)}.clients-search{background:var(--bg-body);border-color:var(--border);color:var(--text-primary)}.clients-search:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.client-item:hover{background:var(--bg-subtle)}.client-item--selected{background:#1e3a5f;border-color:#1e3a5f;border-left-color:#3b82f6}.doc-item{border-color:var(--border)}.pkg-card:hover{background:var(--bg-subtle)}.dialog-overlay{background:#0009}}
