:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111827;background:#f8fafc}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button:focus-visible,input:focus-visible{outline:3px solid #2563eb;outline-offset:2px}.auth-shell{min-height:100vh;padding:32px 16px}.auth-card{width:min(100%,560px);margin:32px auto;padding:32px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0f172a1a}.auth-card form{display:grid;gap:12px}.auth-card input{min-height:42px;padding:8px 10px;border:1px solid #94a3b8;border-radius:8px}.auth-card button{min-height:42px;padding:8px 14px;border:0;border-radius:8px;background:#2563eb;color:#fff;cursor:pointer}.auth-card button:hover{background:#1d4ed8}.auth-card fieldset{display:grid;gap:8px;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.auth-card fieldset label{display:flex;gap:8px;align-items:center}.locale-switch{display:flex;justify-content:flex-end;gap:8px;max-width:560px;margin:0 auto;border:0}.locale-switch button{background:#fff;color:#111827;border:1px solid #94a3b8;border-radius:8px;padding:6px 10px}.locale-switch button[aria-pressed=true]{border-color:#2563eb;color:#1d4ed8;font-weight:700}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.admin-shell{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr);background:#f8fafc}.admin-sidebar{background:#0f172a;color:#e2e8f0;padding:24px 16px;display:grid;align-content:start;gap:24px}.admin-brand{font-weight:800;font-size:18px}.admin-sidebar nav{display:grid;gap:4px}.admin-sidebar button{color:inherit;text-align:left;border:0;background:transparent;border-radius:6px;padding:9px 10px}.admin-sidebar button[aria-current=page]{background:#1e3a8a;color:#fff}.admin-content{min-width:0;padding:clamp(18px,4vw,44px);display:grid;align-content:start;gap:18px}.admin-header{display:flex;justify-content:space-between;align-items:start;gap:16px;min-width:0}.admin-header h1{margin:4px 0 0}.admin-header p{margin:0;color:#64748b}.admin-header .locale-switch{margin:0}.admin-boundary{border-left:4px solid #2563eb;padding:10px 12px;margin:0;background:#eff6ff;color:#1e3a8a}.admin-content input,.admin-content textarea,.admin-content select{width:min(100%,560px);min-height:42px;padding:9px;border:1px solid #94a3b8;border-radius:8px}.admin-content textarea{min-height:84px;resize:vertical}.admin-table-scroll{overflow-x:auto;border:1px solid #e2e8f0;background:#fff}.admin-table-scroll table{min-width:720px;width:100%;border-collapse:collapse}.admin-table-scroll th,.admin-table-scroll td{padding:12px;text-align:left;border-bottom:1px solid #e2e8f0}.admin-detail{width:min(100%,680px);display:grid;gap:12px;padding:18px;border:1px solid #bfdbfe;background:#fff}.admin-detail h2,.admin-detail p{margin:0}.admin-detail label{display:grid;gap:6px}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-campaign-form{flex:1 0 100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-campaign-form>p{grid-column:1 / -1}.admin-campaign-form input,.admin-campaign-form textarea,.admin-campaign-form select{width:100%}.admin-campaign-form .admin-checkbox-label{display:flex;width:fit-content;align-items:center;gap:8px}.admin-campaign-form .admin-checkbox-label input{width:auto;min-height:auto}.admin-danger-action{background:#b91c1c!important;border-color:#991b1b!important;color:#fff!important}@media(max-width:720px){.admin-campaign-form{grid-template-columns:1fr}}@media(max-width:720px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{padding:14px}.admin-sidebar nav{display:flex;overflow-x:auto}.admin-sidebar button{white-space:nowrap}.admin-header{flex-wrap:wrap}}.candidate-portal{width:min(100%,760px);min-height:100vh;margin:0 auto;padding:20px 16px 32px;display:grid;grid-template-rows:auto 1fr auto;gap:24px}.candidate-portal-header,.candidate-portal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.candidate-portal-header strong{font-size:20px}.candidate-locale-switch{margin:0}.candidate-portal-card{align-self:center;padding:clamp(24px,6vw,48px);background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0f172a1a}.candidate-portal-card h1{margin:0 0 12px;font-size:clamp(28px,5vw,42px);line-height:1.15}.candidate-portal-card h2{margin-top:28px;font-size:18px}.candidate-portal-card ol{padding-left:24px;line-height:1.8}.candidate-portal-eyebrow,.candidate-policy{color:#64748b}.candidate-code{display:grid;gap:8px;margin:24px 0;padding:16px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.candidate-code output{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(16px,3.5vw,22px);letter-spacing:.04em}.candidate-code button,.candidate-download{width:fit-content;min-height:42px;padding:8px 14px;border:0;border-radius:8px;background:#2563eb;color:#fff}.candidate-download[disabled]{cursor:not-allowed;opacity:.7}.candidate-danger{color:#b91c1c;font-weight:600}.candidate-portal-footer{justify-content:center}.candidate-portal-footer a{color:#475569}@media(max-width:480px){.auth-card{margin-top:16px;padding:24px 18px}}.recruiter-shell{width:min(1200px,96vw);margin:0 auto;padding:20px 16px 28px;display:grid;gap:16px;min-width:0}.recruiter-shell-header{display:grid;gap:12px;grid-template-columns:minmax(120px,1fr) auto minmax(180px,auto);align-items:center;min-width:0}.recruiter-brand{font-weight:700;font-size:20px}.recruiter-top-nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;min-width:0}.nav-item{text-decoration:none;color:#334155;padding:8px 14px;border:1px solid #e2e8f0;border-radius:9999px;white-space:nowrap}.nav-item.active{color:#2563eb;border-color:#2563eb;background:#eff6ff}.recruiter-account-controls{justify-self:end;display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:nowrap;white-space:nowrap}.account-pill{padding:6px 10px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;text-decoration:none;color:#334155;white-space:nowrap;min-width:0}.account-pill:hover,.account-pill:focus-visible{color:#1d4ed8;border-color:#93c5fd}.recruiter-context-bar{display:flex;gap:12px;align-items:center;min-width:0}.team-switch-field{display:flex;gap:10px;align-items:center;min-width:0}.team-switch-field select{min-height:36px;border:1px solid #e2e8f0;border-radius:8px;padding:4px 10px;min-width:0}.recruiter-dashboard-body,.recruiter-placeholder{display:grid;gap:16px}.recruiter-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.metric-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px}.metric-label{margin:0 0 6px;color:#64748b}.metric-value{margin:0;font-size:28px;font-weight:700}.warning-stack{display:grid;gap:8px}.warning-warning{border-left:4px solid #b45309;padding-left:10px}.warning-danger{border-left:4px solid #b91c1c;padding-left:10px}.recent-candidates-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px}.recent-candidates-section table{width:100%;border-collapse:collapse}.recent-candidates-section th,.recent-candidates-section td{text-align:left;padding:10px 8px;border-top:1px solid #e2e8f0}.error-state,.empty-state{border:1px dashed #b91c1c;border-radius:12px;padding:12px;background:#fff}.locale-switch.recruiter-locale-switch button{padding:5px 10px;border-radius:999px}.recent-candidates-section p[role=status]{margin:12px}.candidate-management{display:grid;gap:16px}.purchases-panel,.team-settings{display:grid;gap:16px;min-width:0}.purchases-panel>section{min-width:0}.purchases-balance,.pack-card,.settings-placeholder,.team-settings>section{padding:16px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.purchases-balance p,.pack-card p,.settings-placeholder p{margin:0;color:#475569}.purchases-balance strong{display:block;margin-top:4px;font-size:30px}.pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.pack-card{display:grid;gap:10px}.pack-card h3,.settings-placeholder h2,.team-settings h2{margin:0}.purchases-history-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto}.purchases-history-scroll table{width:100%;min-width:560px;border-collapse:collapse;background:#fff}.purchases-history-scroll th,.purchases-history-scroll td{padding:10px 8px;text-align:left;border-top:1px solid #e2e8f0}.candidate-management-title-row,.candidate-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;justify-content:space-between}.candidate-filters label,.side-sheet label{display:grid;gap:6px;color:#334155}.candidate-filters input,.candidate-filters select,.side-sheet input,.side-sheet select{min-height:38px;padding:6px 8px;border:1px solid #94a3b8;border-radius:8px}.candidate-management table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e2e8f0;border-radius:12px}.candidate-management th,.candidate-management td{padding:10px 8px;text-align:left;border-top:1px solid #e2e8f0}.side-sheet-layer{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0}.side-sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a47;pointer-events:auto}.side-sheet{position:fixed;z-index:101;top:0;right:0;width:min(460px,100vw);min-height:100vh;overflow:auto;display:grid;align-content:start;gap:14px;padding:24px;background:#fff;border-left:1px solid #cbd5e1;box-shadow:-8px 0 24px #0f172a29}.side-sheet fieldset{display:grid;gap:8px;border:1px solid #e2e8f0;border-radius:8px}.side-sheet fieldset label{display:flex;align-items:center;gap:8px}@media(max-width:900px){.recruiter-shell-header{grid-template-columns:1fr}.recruiter-account-controls{justify-self:start}}@media(max-width:600px){.recruiter-shell{width:100%;padding:16px}.recruiter-top-nav{justify-content:flex-start}.recruiter-account-controls,.recruiter-context-bar,.team-switch-field{flex-wrap:wrap}.recruiter-account-controls{width:100%;white-space:normal}.team-switch-field select{max-width:100%}}
