/* Talent Bridge OS V11.2 — Recruitment SaaS dashboard */
.rec-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.rec-main,.rec-side{min-width:0}.rec-side{display:grid;gap:14px;position:sticky;top:88px}.rec-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.rec-page-head h2{font-size:32px;line-height:1.1;margin:6px 0;color:#10233e}.rec-page-head p,.rec-muted{color:#6f7f92}.rec-breadcrumb{font-size:12px;color:#4f6680}.rec-breadcrumb span{padding:0 7px;color:#9bacbc}.rec-tabs{display:flex;gap:10px;border-bottom:1px solid #dbe3ec;margin-bottom:16px;overflow:auto}.rec-tabs button{border:0;background:transparent;padding:10px 12px;color:#405978;font-weight:700;white-space:nowrap}.rec-tabs button.active{color:#082a63;border-bottom:3px solid #0d57aa}.rec-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.rec-kpi{background:#fff;border:1px solid #dce5ee;border-radius:10px;padding:16px;display:flex;gap:12px;min-height:108px;box-shadow:0 4px 14px rgba(12,45,78,.04)}.rec-kpi-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:22px;flex:0 0 auto;background:#fff4d9;color:#e2a300}.rec-kpi-icon.green{background:#e8f7ef;color:#13a169}.rec-kpi-icon.blue{background:#eaf3ff;color:#1670ca}.rec-kpi-icon.amber{background:#fff2dd;color:#e5a000}.rec-kpi small{display:block;font-weight:800;color:#203551;font-size:11px}.rec-kpi strong{display:block;font-size:26px;line-height:1.05;color:#092b5b;margin:5px 0}.rec-kpi span:not(.rec-kpi-icon){display:block;font-size:11px;color:#687b92}.rec-kpi-progress,.rec-mini-progress,.rec-team-track,.rec-bar-track{height:7px;border-radius:999px;background:#e8edf2;overflow:hidden;margin-top:8px}.rec-kpi-progress span,.rec-mini-progress span,.rec-team-track span,.rec-bar-track span{display:block;height:100%;background:#16a275;border-radius:999px}.rec-analysis-grid{display:grid;grid-template-columns:1.35fr .9fr 1fr;gap:12px;margin-bottom:14px}.rec-panel,.rec-side-card{background:#fff;border:1px solid #dce5ee;border-radius:10px;padding:14px;box-shadow:0 4px 14px rgba(12,45,78,.04)}.rec-card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.rec-card-title h3,.rec-section-toolbar h3{margin:0;color:#0b2d5f;font-size:15px}.rec-card-title h4{margin:0}.rec-card-title p,.rec-section-toolbar p{margin:3px 0 0;font-size:11px;color:#75869a}.rec-pill{font-size:9px;background:#e7f2ff;color:#0b5fac;border-radius:999px;padding:4px 7px;vertical-align:middle}.rec-funnel-filters{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}.rec-funnel-filters label{font-size:10px;color:#53677d;display:grid;gap:4px}.rec-funnel-filters select{min-width:115px;padding:7px;border:1px solid #ccd7e2;border-radius:6px;background:#fff}.primary.small{padding:8px 10px;font-size:11px}.rec-funnel{display:grid;gap:7px}.rec-funnel-row{display:grid;grid-template-columns:68px 1fr 38px;gap:8px;align-items:center}.rec-funnel-label{font-size:10px;color:#3d526b}.rec-funnel-track{height:31px;display:flex;align-items:center;justify-content:center}.rec-funnel-bar{height:100%;min-width:42px;margin:auto;border-radius:3px;background:#0f3568;color:#fff;display:flex;align-items:center;justify-content:center;transition:.2s}.rec-funnel-1{background:#1171d3}.rec-funnel-2{background:#55a8ee}.rec-funnel-3{background:#8cc5f3}.rec-funnel-4{background:#b4d9f7}.rec-funnel-5{background:#f2b920;color:#17304f}.rec-funnel-rate{font-size:10px;color:#49617a}.rec-bar-row{display:grid;grid-template-columns:95px 1fr 28px;align-items:center;gap:7px;margin:11px 0}.rec-bar-row>span{font-size:10px;color:#425a74;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rec-bar-row .rec-bar-track{margin:0;height:12px}.rec-bar-row .rec-bar-track span{background:#0d4d91}.rec-bar-row strong{font-size:10px}.rec-team-row{display:grid;grid-template-columns:30px 70px 1fr 38px;gap:7px;align-items:center;margin:9px 0}.rec-avatar{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e7eef6;color:#1d4d7c;font-size:9px;font-weight:900}.rec-team-name{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-team-track{margin:0}.rec-team-row strong{font-size:10px;color:#203a5c}.rec-section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.rec-filter-row{display:flex;gap:8px}.rec-filter-row input,.rec-filter-row select{padding:8px 9px;border:1px solid #ccd7e2;border-radius:6px;background:#fff;min-width:150px}.rec-table-panel{margin-bottom:14px;padding:0}.rec-table-panel .rec-section-toolbar{padding:13px 14px 0}.rec-table{font-size:11px}.rec-table th{background:#f1f5f8;color:#455b72;font-size:9px;letter-spacing:.02em;text-transform:none}.rec-table td,.rec-table th{padding:9px 10px}.rec-sla-wrap{min-width:80px}.rec-sla{font-size:10px;font-weight:800}.rec-ok{color:#10865c}.rec-warning{color:#c78400}.rec-danger{color:#d53a38}.rec-complete{color:#607286}.rec-side-card{padding:14px}.rec-ai-summary{background:linear-gradient(135deg,#edf7ff,#dcedff);padding:12px;border-radius:7px;text-align:center;color:#17385f;font-size:12px;line-height:1.4;margin-bottom:12px}.rec-ai-summary .primary{width:100%;margin-top:10px;padding:8px}.rec-side-card h4{font-size:11px;margin:11px 0 7px;color:#1d3554}.rec-suggestion{display:grid;grid-template-columns:14px 1fr 12px;gap:6px;align-items:start;padding:9px;border:1px solid #e1e7ee;border-radius:7px;margin:6px 0}.rec-suggestion>span{color:#eeb11a}.rec-suggestion p{margin:0;font-size:10px;line-height:1.35;color:#314b69}.rec-suggestion strong{color:#52718f}.rec-action{display:grid;grid-template-columns:16px 1fr auto;gap:6px;align-items:start;padding:7px 2px;font-size:10px;color:#314b69}.rec-action em{font-style:normal;background:#fff4d8;color:#c17b00;padding:3px 5px;border-radius:4px;font-size:8px}.rec-action em:has(+*){display:inline}.rec-email-card label{display:block;font-size:9px;color:#64758a;margin:8px 0 3px}.rec-email-card input,.rec-email-card select,.rec-email-card textarea{width:100%;border:1px solid #cfdae5;border-radius:6px;padding:8px;background:#fff;color:#243b56;font-size:10px}.rec-email-card textarea{resize:vertical;line-height:1.4}.rec-email-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}.rec-link{border:0;background:none;padding:0;color:#0d64b3;font-weight:800;font-size:10px;cursor:pointer}.rec-email-log-layout{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}.rec-inline-input{width:100%;min-width:120px;border:1px solid #d8e1ea;border-radius:5px;padding:7px;background:#fff}.rec-action-plan{display:grid;gap:9px}.rec-action-plan>div{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:start;padding:8px;border:1px solid #e1e7ee;border-radius:8px}.rec-action-plan>div strong{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eaf3ff;color:#0b5fac}.rec-action-plan p{margin:2px 0}.rec-side .empty{padding:12px;font-size:10px}.notice{background:#fff9e9;border-left:3px solid #edb52a;padding:10px;border-radius:6px;color:#5d5a46;font-size:11px}.rec-table .badge{white-space:nowrap}
@media(max-width:1320px){.rec-layout{grid-template-columns:1fr}.rec-side{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}.rec-analysis-grid{grid-template-columns:1fr 1fr}.rec-funnel-panel{grid-column:1/-1}}@media(max-width:980px){.rec-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rec-side{grid-template-columns:1fr}.rec-analysis-grid{grid-template-columns:1fr}.rec-email-log-layout{grid-template-columns:1fr}.rec-filter-row{flex-wrap:wrap}.rec-page-head{flex-direction:column}}@media(max-width:620px){.rec-kpi-grid{grid-template-columns:1fr}.rec-funnel-row{grid-template-columns:58px 1fr 34px}.rec-team-row{grid-template-columns:30px 68px 1fr 34px}.rec-section-toolbar{align-items:flex-start;flex-direction:column}.rec-filter-row{width:100%}.rec-filter-row input,.rec-filter-row select{width:100%;min-width:0}}

/* V11.2.2 — icon-only correction. Existing Recruitment dashboard design is unchanged. */
.rec-page-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.rec-kpi-icon{font-size:0}
.rec-kpi-icon::before{content:"";display:block;width:22px;height:22px;background:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
.rec-icon-target::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2'/%3E%3C/svg%3E")}
.rec-icon-placements::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M3 20c0-4 2.5-6 6-6s6 2 6 6M14 15c3.5 0 6 1.7 6 5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M3 20c0-4 2.5-6 6-6s6 2 6 6M14 15c3.5 0 6 1.7 6 5'/%3E%3C/svg%3E")}
.rec-icon-vacancies::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Cpath d='M8 7V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2M3 12h18M10 12v2h4v-2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Cpath d='M8 7V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2M3 12h18M10 12v2h4v-2'/%3E%3C/svg%3E")}
.rec-icon-guarantee::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8-7 10-4-2-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8-7 10-4-2-7-5-7-10V6l7-3z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E")}
@media(max-width:760px){.rec-page-actions{width:100%;justify-content:flex-start}}
