:root{--color-bg-page:#fff;--color-ink:#171717;--color-ink-contrast:#fff;--color-border:#b0b0b0;--color-border-subtle:#d0d0d0;--color-border-light:#e0e0e0;--color-surface-hover:#f5f5f5;--color-surface-disabled:#f0f0f0;--color-text-muted:#5a5a5a;--color-text-disabled:#555;--color-danger-text:#b3261e;--color-success-bg:#d3f2dc;--color-success-text:#16632c;--color-success-surface:#f2fbf5;--color-warning-bg:#fdf0c4;--color-warning-text:#7a5c00;--color-caution-bg:#fde3cf;--color-caution-text:#94420a;--color-danger-bg:#fbdad7;--color-info-bg:#dbe9fb;--color-info-text:#1c4f85;--color-neutral-bg:var(--color-border-light);--color-neutral-text:var(--color-text-muted);--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--shadow-sm:none;--shadow-md:none;--color-table-header:var(--color-ink);--color-table-link:currentColor;--color-table-row-hover:#f5f5f5;--color-card-bg:transparent;--color-card-border:var(--color-border-light);--color-btn-primary-bg:var(--color-ink);--color-btn-primary-text:var(--color-ink-contrast);--color-btn-secondary-text:var(--color-ink);--color-btn-secondary-border:var(--color-border);--color-btn-danger-bg:#b3261e;--color-btn-danger-text:#fff;--color-btn-ghost-text:var(--color-ink);--color-btn-ghost-hover-bg:var(--color-surface-hover);--color-input-bg:#fff;--color-input-focus-border:var(--color-ink);--color-input-focus-ring:#17171726;--color-kpi-item-bg:transparent;--color-kpi-value:var(--color-ink)}.theme-dark{--color-bg-page:#0b0e17;--color-ink:#eaf6ff;--color-ink-contrast:#04141a;--color-border:#94c5db47;--color-border-subtle:#94c5db29;--color-border-light:#94c5db29;--color-surface-hover:#ffffff0f;--color-surface-disabled:#ffffff0a;--color-text-muted:#8fa3b8;--color-text-disabled:#5c6b7a;--color-danger-text:#ff8a8a;--color-success-bg:#34d39929;--color-success-text:#6ee7b0;--color-success-surface:#34d39914;--color-warning-bg:#fbbf242e;--color-warning-text:#fbd268;--color-caution-bg:#f871712e;--color-caution-text:#ff9a76;--color-danger-bg:#ff8a8a29;--color-info-bg:#60a5fa2e;--color-info-text:#93c5fd;--color-neutral-bg:var(--color-surface-hover);--color-neutral-text:var(--color-text-muted);--color-card-bg:#ffffff0d;--color-card-border:#38e8ff38;--color-card-glow:0 0 24px #38e8ff12;--color-accent:#38e8ff;--color-accent-soft:#38e8ff59;--color-accent-secondary:#a855f7;--color-accent-active-bg:#38e8ff1f;--color-sidebar-bg:linear-gradient(180deg, #0b0e17 0%, #0d1220 100%);--color-sidebar-glow:1px 0 16px #38e8ff0d;--shadow-sm:0 0 12px #38e8ff0d;--shadow-md:var(--color-card-glow);--color-table-header:var(--color-text-muted);--color-table-link:var(--color-accent);--color-table-row-hover:#38e8ff0f;--color-btn-primary-bg:var(--color-accent);--color-btn-primary-text:var(--color-ink-contrast);--color-btn-secondary-text:var(--color-ink);--color-btn-secondary-border:var(--color-border);--color-btn-danger-bg:#e5484d;--color-btn-danger-text:#fff;--color-btn-ghost-text:var(--color-ink);--color-btn-ghost-hover-bg:var(--color-surface-hover);--color-input-bg:#ffffff0d;--color-input-focus-border:var(--color-accent);--color-input-focus-ring:var(--color-accent-soft);--color-kpi-item-bg:var(--color-surface-hover);--color-kpi-value:var(--color-accent);color:var(--color-ink)}
html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--color-ink);background:var(--color-bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-family:Arial,Helvetica,sans-serif;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.btn{justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-xl);border-radius:var(--radius-sm);border:1px solid #0000;font-size:.9375rem;font-weight:700;line-height:1.2;transition:background-color .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);box-shadow:var(--shadow-sm)}.btn-secondary{color:var(--color-btn-secondary-text);border-color:var(--color-btn-secondary-border);background:0 0}.btn-secondary:hover{background:var(--color-surface-hover)}.btn-danger{background:var(--color-btn-danger-bg);color:var(--color-btn-danger-text)}.btn-ghost{color:var(--color-btn-ghost-text);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--color-btn-ghost-hover-bg)}.ui-card{padding:var(--space-lg) var(--space-xl);margin-bottom:var(--space-xl);background:linear-gradient(var(--color-card-bg), var(--color-card-bg)), var(--color-bg-page);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.ui-card:last-child{margin-bottom:0}.form-input{padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-input-bg);color:var(--color-ink);font-size:1rem;transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-ring);outline:none}.form-input:disabled{background:var(--color-surface-disabled);color:var(--color-text-disabled);cursor:not-allowed}.form-input.is-error{border-color:var(--color-danger-text);box-shadow:0 0 0 3px var(--color-danger-bg)}.login-page{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.login-card{border:1px solid var(--color-border-subtle);border-radius:8px;width:100%;max-width:360px;padding:32px}.login-card h1{margin-bottom:8px;font-size:1.25rem}.login-form{flex-direction:column;gap:4px;margin-top:24px;display:flex}.login-form label{margin-top:12px;font-size:.875rem}.login-form .btn{margin-top:var(--space-lg)}.form-error{color:var(--color-danger-text);margin-top:12px;font-size:.875rem}.app-shell{flex-direction:row;flex:1;align-items:stretch;min-height:100vh;display:flex}.app-sidebar{background:var(--color-sidebar-bg);border-right:1px solid var(--color-border-subtle);width:220px;box-shadow:var(--color-sidebar-glow);flex-direction:column;flex-shrink:0;padding:16px 12px;display:flex}.app-sidebar__brand{letter-spacing:.04em;padding:8px 12px 20px;font-weight:700}.app-sidebar__nav{flex-direction:column;flex:1;display:flex}.app-sidebar__group{border-top:1px solid var(--color-border-light);flex-direction:column;gap:2px;padding:10px 0;display:flex}.app-sidebar__group:first-child{border-top:none;padding-top:0}.app-sidebar__link{color:var(--color-ink);border-radius:6px;padding:8px 12px;font-size:.9375rem;transition:background-color .15s,color .15s}.app-sidebar__link:hover{background:var(--color-surface-hover)}.app-sidebar__link--active{background:var(--color-accent-active-bg);color:var(--color-accent);box-shadow:inset 3px 0 0 var(--color-accent)}.app-sidebar__user{border-top:1px solid var(--color-border-light);margin-top:12px;padding-top:12px;font-size:.8125rem}.app-sidebar__user-name{word-break:break-all}.app-sidebar__role{color:var(--color-text-muted);margin-bottom:10px}.app-sidebar__user button{border:1px solid var(--color-border);background:0 0;border-radius:4px;width:100%;padding:8px}.app-content{flex-direction:column;flex:1;min-width:0;display:flex}.app-main{flex:1;padding:24px}.sidebar-toggle,.sidebar-overlay{display:none}@media (max-width:767px){.app-sidebar{z-index:50;width:260px;max-width:80vw;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.app-sidebar--open{transform:translate(0)}.sidebar-toggle{z-index:40;border:1px solid var(--color-border);background:var(--color-bg-page);border-radius:4px;padding:8px 12px;font-size:.875rem;display:block;position:fixed;top:12px;left:12px}.sidebar-overlay{z-index:45;background:#0006;display:block;position:fixed;inset:0}.app-main{padding-top:64px}}.list-page-shell,.dashboard-shell{background:var(--color-bg-page);min-height:calc(100% + 48px);margin:-24px;padding:24px}@media (max-width:767px){.list-page-shell,.dashboard-shell{min-height:calc(100% + 88px);margin-top:-64px;padding-top:64px}}.page-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.job-status-filter{align-items:center;gap:8px;margin-bottom:16px;font-size:.9375rem;display:inline-flex}.job-table-scroll{width:100%;overflow-x:auto}.job-table{border-collapse:collapse;width:100%;font-size:.9375rem}.job-table th,.job-table td{text-align:left;border-bottom:1px solid var(--color-border-light);white-space:nowrap;padding:8px 12px}.job-table th{color:var(--color-table-header)}.job-table a{color:var(--color-table-link)}.job-table tbody tr:hover{background:var(--color-table-row-hover)}.job-status-badge{border-radius:var(--radius-pill);background:var(--color-border-light);color:var(--color-ink);padding:2px 10px;font-size:.8125rem;display:inline-block}.job-status-badge--published,.job-status-badge--passed,.job-status-badge--working,.job-status-badge--completed,.job-status-badge--good{background:var(--color-success-bg);color:var(--color-success-text)}.job-status-badge--improving,.job-status-badge--contacted,.job-status-badge--interviewed,.job-status-badge--pending,.job-status-badge--watch{background:var(--color-warning-bg);color:var(--color-warning-text)}.job-status-badge--paused{background:var(--color-caution-bg);color:var(--color-caution-text)}.job-status-badge--rejected,.job-status-badge--bad{background:var(--color-danger-bg);color:var(--color-danger-text)}.job-status-badge--new,.job-status-badge--interview_scheduled,.job-status-badge--scheduled{background:var(--color-info-bg);color:var(--color-info-text)}.job-status-badge--draft,.job-status-badge--ended,.job-status-badge--withdrawn,.job-status-badge--cancelled,.job-status-badge--insufficient_data{background:var(--color-neutral-bg);color:var(--color-neutral-text)}.job-form{flex-direction:column;gap:4px;max-width:480px;display:flex}.job-form>.btn{align-self:flex-start}.job-form__row{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.job-form__row label{font-size:.875rem;font-weight:700}.job-kpi-summary{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin:0;display:grid}.job-kpi-summary__item{border:1px solid var(--color-border-light);background:var(--color-kpi-item-bg);border-radius:6px;padding:12px}.job-kpi-summary__item dt{color:var(--color-text-muted);font-size:.8125rem}.job-kpi-summary__item dd{color:var(--color-kpi-value);margin:4px 0 0;font-size:1.25rem;font-weight:700}.job-kpi-summary__item-judgment{margin-top:6px}.job-kpi-summary__item-boundary{color:var(--color-text-muted);margin:4px 0 0;font-size:.75rem}.kpi-trend-period{color:var(--color-text-muted);margin:4px 0 12px;font-size:.8125rem}.kpi-trend{margin:6px 0 0;font-size:.75rem;font-weight:700}.kpi-trend--improving{color:var(--color-success-text)}.kpi-trend--worsening{color:var(--color-danger-text)}.kpi-trend--stable{color:var(--color-text-muted);font-weight:400}.kpi-improvement{margin-top:16px}.kpi-improvement h3{margin:0 0 8px;font-size:1rem}.kpi-improvement__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.kpi-improvement__item{border:1px solid var(--color-border-light);background:var(--color-kpi-item-bg);border-radius:6px;flex-wrap:wrap;align-items:baseline;gap:8px;padding:10px 12px;display:flex}.kpi-improvement__metric{font-size:.875rem;font-weight:700}.kpi-improvement__action{color:var(--color-text-muted);flex-basis:100%;margin:0;font-size:.875rem}.toggle-group{border:1px solid var(--color-border);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.toggle-group__item{padding:var(--space-xs) var(--space-md);background:var(--color-bg-page);color:var(--color-ink);cursor:pointer;border:none;font-size:.875rem;transition:background-color .15s,color .15s}.toggle-group__item:hover{background:var(--color-surface-hover)}.toggle-group__item+.toggle-group__item{border-left:1px solid var(--color-border)}.toggle-group__item--active{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text)}.job-kpi-trend-charts{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.job-kpi-trend-chart h3{margin-bottom:8px;font-size:.9375rem}.import-dropzone{border:2px dashed var(--color-border);text-align:center;border-radius:8px;flex-direction:column;align-items:center;gap:8px;margin-bottom:24px;padding:32px;display:flex}.import-dropzone--active{border-color:var(--color-ink);background:var(--color-surface-hover)}.import-dropzone__input{display:none}.import-preview__summary{gap:24px;margin:12px 0;padding:0;font-size:.9375rem;list-style:none;display:flex}.import-preview__errors{margin-bottom:16px;font-size:.875rem}.import-unmatched{margin-bottom:16px}.import-preview__actions{gap:12px;margin-top:16px;display:flex}.import-result{border:1px solid var(--color-success-bg);background:var(--color-success-surface);border-radius:6px;padding:16px}.applicant-notes{margin-top:16px;padding:0;list-style:none}.applicant-notes__item{border-bottom:1px solid var(--color-border-light);padding:12px 0}.applicant-notes__meta{color:var(--color-text-muted);margin-bottom:4px;font-size:.8125rem}.applicant-notes__body{white-space:pre-wrap}.dashboard-shell h1{margin-bottom:20px}.dashboard-shell h2{font-size:1.0625rem}.dashboard-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:24px;display:grid}.dashboard-card{background:var(--color-card-bg);border:1px solid var(--color-card-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--color-card-glow);border-radius:12px;padding:16px}.dashboard-card h3{color:var(--color-text-muted);margin-bottom:8px;font-size:.9375rem}.dashboard-card__primary{color:var(--color-accent);text-shadow:0 0 16px var(--color-accent-soft);margin-bottom:12px;font-size:2rem;font-weight:800}.dashboard-card__breakdown{flex-direction:column;gap:4px;margin-bottom:12px;font-size:.875rem;display:flex}.dashboard-card__breakdown div{justify-content:space-between;gap:8px;display:flex}.dashboard-card__breakdown dt{color:var(--color-text-muted)}.dashboard-card__breakdown dd{font-weight:700}.dashboard-panel{background:var(--color-card-bg);border:1px solid var(--color-card-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--color-card-glow);border-radius:16px;margin-bottom:24px;padding:20px 24px}.dashboard-panel h2{margin-bottom:16px}.dashboard-kpi-comparison{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.dashboard-kpi-comparison__period{border:1px solid var(--color-border-light);border-radius:10px;padding:16px}.dashboard-kpi-comparison__period h3{color:var(--color-text-muted);margin-bottom:8px;font-size:.9375rem}.dashboard-delta{font-size:.8125rem;font-weight:700}.dashboard-delta--up{color:var(--color-success-text)}.dashboard-delta--down{color:var(--color-caution-text)}.audit-log-json{background:var(--color-surface-hover);white-space:pre-wrap;word-break:break-all;border-radius:4px;max-width:320px;max-height:200px;margin-top:4px;padding:8px;font-size:.75rem;overflow:auto}.funnel-panel{--funnel-bg:#0b0e17;--funnel-bg-alt:#11162a;--funnel-card-bg:#ffffff0d;--funnel-card-border:#38e8ff40;--funnel-accent:#38e8ff;--funnel-accent-soft:#38e8ff59;--funnel-text:#eaf6ff;--funnel-text-muted:#8fa3b8;background:linear-gradient(160deg, var(--funnel-bg) 0%, var(--funnel-bg-alt) 100%);color:var(--funnel-text);border:1px solid #38e8ff1f;border-radius:16px;margin-bottom:24px;padding:24px}.funnel-panel__title{color:var(--funnel-text);margin-bottom:2px;font-size:1.0625rem;font-weight:700}.funnel-panel__subtitle{color:var(--funnel-text-muted);margin-bottom:20px;font-size:.8125rem}.funnel-track{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.funnel-track__item{align-items:center;gap:4px;display:flex}.funnel-connector{flex-direction:column;justify-content:center;align-items:center;min-width:56px;padding:0 4px;display:flex}.funnel-connector__arrow{color:var(--funnel-accent);text-shadow:0 0 8px var(--funnel-accent-soft);font-size:1.25rem;line-height:1}.funnel-connector__rate{color:var(--funnel-text-muted);white-space:nowrap;margin-top:2px;font-size:.75rem}.funnel-card{background:var(--funnel-card-bg);border:1px solid var(--funnel-card-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px;min-width:140px;padding:16px;box-shadow:0 0 24px #38e8ff0f}.funnel-card__label{color:var(--funnel-text-muted);white-space:nowrap;margin-bottom:6px;font-size:.75rem}.funnel-card__value{color:var(--funnel-accent);text-shadow:0 0 16px var(--funnel-accent-soft);margin-bottom:10px;font-size:2rem;font-weight:800;line-height:1.1}.funnel-card__bar-track{background:#ffffff14;border-radius:999px;width:100%;height:4px;overflow:hidden}.funnel-card__bar-fill{background:linear-gradient(90deg, var(--funnel-accent), #38e8ff66);border-radius:999px;height:100%}@media (max-width:900px){.funnel-track{flex-direction:column;align-items:stretch}.funnel-track__item{flex-direction:column;width:100%}.funnel-connector{flex-direction:row;gap:8px;min-width:0;padding:4px 0}.funnel-connector__arrow{transform:rotate(90deg)}.funnel-card{width:100%}}.settings-role-form{gap:var(--space-sm);align-items:center;display:flex}.loading-state{min-height:200px;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:.9375rem;display:flex}.empty-state{padding:var(--space-xl) 0;color:var(--color-text-muted);text-align:center}.error-state{justify-content:center;align-items:center;gap:var(--space-md);min-height:200px;padding:var(--space-xl) 0;text-align:center;flex-direction:column;display:flex}
