.oc-root{--oc-border:var(--line,var(--ep-border,#d5e0e6));color:var(--ink,var(--ep-ink,#18384d))}.oc-heading,.oc-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.oc-actions{justify-content:flex-start;margin:14px 0}.oc-heading>.field{min-width:220px}.oc-root .panel,.oc-root .ep-card{margin:16px 0;padding:20px}.oc-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.oc-fields p,.oc-fields label:has(textarea){grid-column:1/-1}.oc-root input,.oc-root select,.oc-root textarea{max-width:100%;font:inherit}.oc-root input[type=date],.oc-root select,.oc-root textarea{padding:10px;border:1px solid var(--oc-border);border-radius:9px;background:var(--field,var(--ep-field,#fff));color:inherit}.oc-eligibility{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.oc-eligibility .panel,.oc-eligibility .ep-card{margin:12px 0}.oc-days{font-size:30px;display:block;margin:12px 0 4px}.oc-eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em}.oc-status{display:inline-block;border-radius:20px;padding:4px 9px;font-size:12px;background:#e7edf1;color:#253b47;margin-left:8px}.oc-approved,.oc-online,.oc-completed{background:#d5f2e0;color:#156039}.oc-pending,.oc-stale{background:#fff0ca;color:#805200}.oc-rejected,.oc-offline,.oc-revoked{background:#fce0df;color:#8e3434}.oc-request-list article{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid var(--oc-border)}.oc-request-list p{margin:7px 0;white-space:pre-wrap;overflow-wrap:anywhere}.oc-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.oc-calendar article{border:1px solid var(--oc-border);border-radius:10px;padding:12px 8px;display:grid;gap:7px;font-size:12px}.oc-calendar b{font-size:14px}.oc-calendar .oc-shortage{border-color:#db9b36;background:rgba(219,155,54,.08)}.oc-calendar span{color:#b67b16}.oc-clock-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.oc-clock{border:1px solid var(--oc-border);padding:18px;border-radius:12px}.oc-clock dl{display:grid;grid-template-columns:88px 1fr;gap:10px;font-size:13px}.oc-clock dd{margin:0;overflow-wrap:anywhere}.oc-clock dt{opacity:.7}.oc-check{display:flex;align-items:center;gap:10px}.oc-root .oc-check input{width:auto}.oc-empty{padding:30px;text-align:center;opacity:.8}[data-theme=dark] .oc-root,[data-qps-theme=dark] .oc-root{--oc-border:#2e3b46;color:#e2e9ef}[data-theme=dark] .oc-root select,[data-theme=dark] .oc-root input,[data-theme=dark] .oc-root textarea{background:#17212b;color:#eef3f7}@media(max-width:800px){.oc-calendar{grid-template-columns:repeat(3,minmax(0,1fr))}.oc-request-list article{display:block}.oc-fields{grid-template-columns:1fr}.oc-heading>.field{width:100%}.oc-clock-grid{grid-template-columns:minmax(0,1fr)}.oc-root .panel,.oc-root .ep-card{padding:15px}.oc-eligibility{grid-template-columns:repeat(2,minmax(0,1fr))}.oc-days{font-size:23px}}

@media(prefers-color-scheme:dark){#employee-app .oc-root{color:var(--ep-ink);--ep-field:#132731}#employee-app .oc-root select,#employee-app .oc-root input,#employee-app .oc-root textarea{background:#132731;color:var(--ep-ink)}}

.oc-eligibility article:only-child{grid-column:1/-1}

/* Rotation planning: requests first, followed by compact crew cards and coverage. */
.oc-rotations{--oc-panel:var(--panel,#fff);--oc-soft:var(--soft,#f5f8fb);--oc-muted:var(--muted,var(--ep-muted,#58707d));--oc-green:var(--green,#08766f);--oc-green-soft:var(--accent-soft,#e6f4f1);--oc-blue:var(--steel,#2563a3);--oc-blue-soft:var(--blue-soft,#eaf2fd);--oc-amber:var(--amber,#986315);--oc-amber-soft:var(--warning-soft,#fff4db);--oc-red:var(--danger,#ad3b46);--oc-red-soft:var(--danger-soft,#fcecee);line-height:1.5;min-width:0}
.oc-rotations .oc-icon{width:18px;height:18px;flex:none;vertical-align:middle}
.oc-rotations .oc-toolbar{padding:0 0 8px;align-items:flex-end}
.oc-rotations .oc-toolbar>.field{min-width:0;width:min(100%,340px);margin:0}
.oc-rotations .oc-toolbar>.field span{font-size:11px;color:var(--oc-muted)}
.oc-rotations .oc-toolbar select{width:100%;min-height:42px}
.oc-rotations>.oc-actions{gap:8px;margin:8px 0 20px}
.oc-rotations .button,.oc-rotations .ep-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border-radius:10px;font-size:12px;line-height:1.4;white-space:normal}
.oc-rotations [data-oc=request]{background:var(--oc-green);color:var(--on-accent,#fff);border-color:var(--oc-green)}
.oc-rotations .panel,.oc-rotations .ep-card{background:var(--oc-panel);border:1px solid var(--oc-border);border-radius:18px;box-shadow:none;padding:24px;margin:0 0 28px}
.oc-rotations .oc-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.oc-rotations .oc-section-heading>div:first-child{min-width:0;flex:1 1 220px}
.oc-rotations .oc-eyebrow{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--oc-muted);margin-bottom:5px;font-weight:700}
.oc-rotations .oc-section-heading h2{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:20px;line-height:1.3;letter-spacing:-.025em;margin:0;font-weight:700;color:inherit}
.oc-rotations .oc-section-heading p{font-size:12px;line-height:1.6;margin:7px 0 0;color:var(--oc-muted)}
.oc-rotations .oc-heading-count{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:25px;padding:0 7px;border-radius:8px;background:var(--oc-soft);color:var(--oc-muted);font-size:12px;letter-spacing:0;font-weight:650}
.oc-rotations .oc-count{display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:8px 11px;font-size:12px;white-space:nowrap;background:var(--oc-soft);color:var(--oc-muted)}
.oc-rotations .oc-count.oc-ready{color:var(--oc-green);background:var(--oc-green-soft)}
.oc-rotations .oc-count.oc-waiting{color:var(--oc-amber);background:var(--oc-amber-soft)}
.oc-rotations .oc-person{display:flex;align-items:center;gap:11px;min-width:0}
.oc-rotations .oc-person>div{min-width:0;flex:1}
.oc-rotations .oc-person h3{font-size:14px;line-height:1.45;letter-spacing:-.01em;margin:0;font-weight:700;color:inherit;overflow-wrap:anywhere}
.oc-rotations .oc-person h3 a,.oc-rotations .oc-person h3 button{font:inherit;color:inherit;text-align:left;white-space:normal}
.oc-rotations .oc-person p{font-size:11px;color:var(--oc-muted);margin:3px 0 0;line-height:1.5;overflow-wrap:anywhere}
.oc-rotations .oc-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;flex:none;background:var(--oc-blue-soft);color:var(--oc-blue);font-size:12px;font-weight:750;letter-spacing:.01em}
.oc-rotations .oc-status{margin:0;border-radius:7px;padding:5px 9px;font-size:10px;font-weight:700;line-height:1.4;white-space:nowrap;background:var(--oc-soft);color:var(--oc-muted)}
.oc-rotations .oc-status.oc-pending{background:var(--oc-amber-soft);color:var(--oc-amber)}
.oc-rotations .oc-status.oc-approved,.oc-rotations .oc-status.oc-completed{background:var(--oc-green-soft);color:var(--oc-green)}
.oc-rotations .oc-status.oc-rejected{background:var(--oc-red-soft);color:var(--oc-red)}
.oc-rotations .oc-request-list{display:grid;gap:12px}
.oc-rotations .oc-request-list .oc-request{display:flex;justify-content:space-between;align-items:center;gap:22px;border:1px solid var(--oc-border);border-radius:14px;padding:18px;background:var(--oc-panel);min-width:0}
.oc-rotations .oc-request-list .oc-request-pending{border-left:3px solid var(--oc-amber)}
.oc-rotations .oc-request-main{flex:1;min-width:0}
.oc-rotations .oc-request .oc-person{max-width:680px}
.oc-rotations .oc-trip-dates{display:flex;align-items:center;gap:20px;margin:17px 0 12px}
.oc-rotations .oc-trip-dates>div{display:flex;align-items:center;gap:9px;min-width:0}
.oc-rotations .oc-trip-dates .oc-icon{color:var(--oc-muted);width:16px;height:16px}
.oc-rotations .oc-trip-dates small{display:block;font-size:10px;color:var(--oc-muted);margin-bottom:3px}
.oc-rotations .oc-trip-dates strong{display:block;font-size:13px;font-weight:650;font-variant-numeric:tabular-nums}
.oc-rotations .oc-request-list .oc-request-reason{font-size:12px;margin:8px 0 0;line-height:1.6;overflow-wrap:anywhere}
.oc-rotations .oc-request-list .oc-request-warning{display:flex;align-items:flex-start;gap:8px;background:var(--oc-amber-soft);color:var(--oc-amber);padding:9px 11px;border-radius:9px;font-size:11px;line-height:1.5;margin:12px 0 0}
.oc-rotations .oc-request-warning .oc-icon{width:15px;height:15px;margin-top:1px}
.oc-rotations .oc-request-list .oc-review-note{font-size:11px;color:var(--oc-muted);margin:10px 0 0}
.oc-rotations .oc-request-actions{flex:0 0 172px;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0}
.oc-rotations .oc-request-actions .button{padding:9px 10px;font-size:11px;background:var(--oc-panel);color:inherit;border:1px solid var(--oc-border)}
.oc-rotations .oc-request-actions [data-decision=approved]{background:var(--oc-green);border-color:var(--oc-green);color:var(--on-accent,#fff)}
.oc-rotations .oc-request-actions [data-decision=completed]{grid-column:1/-1}
.oc-rotations .oc-request-actions [data-decision=cancelled]{grid-column:1/-1;border-color:transparent;background:transparent;color:var(--oc-muted);font-size:10px;min-height:34px}
.oc-rotations .oc-request-history{margin-top:18px;border-top:1px solid var(--oc-border);padding-top:4px}
.oc-rotations .oc-request-history summary{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;font-size:12px;color:var(--oc-muted);font-weight:650;padding:14px 0;min-height:48px}
.oc-rotations .oc-request-history summary::-webkit-details-marker{display:none}
.oc-rotations .oc-request-history summary>.oc-icon:last-child{margin-left:auto;width:15px;height:15px;transition:transform .18s ease}
.oc-rotations .oc-request-history[open] summary>.oc-icon:last-child{transform:rotate(90deg)}
.oc-rotations .oc-empty{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px dashed var(--oc-border);border-radius:12px;padding:26px 16px;opacity:1;color:var(--oc-muted);font-size:12px;grid-column:1/-1}
.oc-rotations .oc-empty>.oc-icon{width:26px;height:26px;color:var(--oc-green);margin-bottom:2px}
.oc-rotations .oc-empty strong{font-size:13px;color:inherit}
.oc-rotations .oc-eligibility-section{margin:4px 0 28px}
.oc-rotations .oc-eligibility-section .oc-section-heading{margin-bottom:16px}
.oc-rotations .oc-eligibility{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:14px}
.oc-rotations .oc-eligibility-card{display:flex;flex-direction:column;min-width:0;background:var(--oc-panel);border:1px solid var(--oc-border);border-radius:16px;padding:19px;position:relative;overflow:hidden}
.oc-rotations .oc-eligibility-card:only-child{grid-column:auto}
.oc-rotations .oc-eligibility-card .oc-person{margin-bottom:17px}
.oc-rotations .oc-state{display:inline-flex;align-items:center;align-self:flex-start;gap:5px;font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;color:var(--oc-blue);background:var(--oc-blue-soft)}
.oc-rotations .oc-state .oc-icon{width:13px;height:13px}
.oc-rotations .oc-ready .oc-state{color:var(--oc-green);background:var(--oc-green-soft)}
.oc-rotations .oc-away .oc-state{color:var(--oc-muted);background:var(--oc-soft)}
.oc-rotations .oc-unverified .oc-state{color:var(--oc-amber);background:var(--oc-amber-soft)}
.oc-rotations .oc-metric{font-size:24px;font-weight:720;letter-spacing:-.04em;line-height:1.25;margin:11px 0 6px}
.oc-rotations .oc-metric>span{font-size:13px;letter-spacing:0;font-weight:500;color:var(--oc-muted)}
.oc-rotations .oc-ready .oc-metric{color:var(--oc-green);font-size:22px}
.oc-rotations .oc-unverified .oc-metric,.oc-rotations .oc-away .oc-metric{font-size:20px}
.oc-rotations .oc-card-note{font-size:11px;line-height:1.7;color:var(--oc-muted);margin:0 0 17px;overflow-wrap:anywhere}
.oc-rotations .oc-progress-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:var(--oc-muted);margin-top:auto;margin-bottom:7px}
.oc-rotations .oc-progress{height:5px;border-radius:6px;background:var(--oc-soft);overflow:hidden;margin-bottom:18px}
.oc-rotations .oc-progress>span{display:block;height:100%;border-radius:inherit;background:var(--oc-blue)}
.oc-rotations .oc-ready .oc-progress>span{background:var(--oc-green)}
.oc-rotations .oc-card-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:auto 0 0;padding-top:14px;border-top:1px solid var(--oc-border)}
.oc-rotations .oc-card-dates>div{min-width:0}
.oc-rotations .oc-card-dates dt{color:var(--oc-muted);font-size:10px;margin:0 0 4px}
.oc-rotations .oc-card-dates dd{font-size:11px;font-weight:650;margin:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.oc-rotations .oc-calendar-controls{margin:0;gap:8px;align-items:center}
.oc-rotations .oc-calendar-controls input{width:150px;min-width:0;height:40px;font-size:12px}
.oc-rotations .oc-calendar-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:10px;color:var(--oc-muted);margin:-3px 0 16px}
.oc-rotations .oc-calendar-legend>span{display:flex;align-items:center;gap:6px}
.oc-rotations .oc-calendar-legend i{display:block;width:7px;height:7px;border-radius:50%;background:var(--oc-green)}
.oc-rotations .oc-calendar-legend .oc-legend-shortage{background:var(--oc-amber)}
.oc-rotations .oc-calendar{gap:8px;grid-template-columns:repeat(7,minmax(0,1fr))}
.oc-rotations .oc-calendar article{padding:12px 10px;border-radius:11px;background:var(--oc-soft);gap:12px;min-width:0;border-color:transparent;align-content:start}
.oc-rotations .oc-calendar-date{display:flex;flex-direction:column;gap:1px}
.oc-rotations .oc-calendar-date>span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--oc-muted)}
.oc-rotations .oc-calendar-date>strong{font-size:12px;color:inherit;font-weight:650}
.oc-rotations .oc-calendar-available{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap}
.oc-rotations .oc-calendar-available b{font-size:22px;line-height:1.15;font-weight:700;letter-spacing:-.035em;color:var(--oc-green)}
.oc-rotations .oc-calendar-available span{font-size:9px;color:var(--oc-muted)}
.oc-rotations .oc-calendar small{display:flex;flex-direction:column;gap:3px;font-size:9px;color:var(--oc-muted)}
.oc-rotations .oc-calendar small span{color:inherit}
.oc-rotations .oc-calendar small .oc-calendar-pending{color:var(--oc-amber)}
.oc-rotations .oc-calendar .oc-shortage{background:var(--oc-amber-soft);border-color:var(--oc-amber)}
.oc-rotations .oc-shortage .oc-calendar-available b,.oc-rotations .oc-calendar .oc-calendar-shortage{color:var(--oc-amber)}
.oc-rotations .oc-calendar .oc-calendar-shortage{font-size:9px;font-weight:650}
.oc-rotations .oc-form{scroll-margin-top:90px}
.oc-rotations .oc-form h2{font-size:19px;margin:0 0 20px}
.oc-rotations .oc-form .oc-actions{margin-bottom:0}
[data-theme=dark] .oc-rotations,[data-qps-theme=dark] .oc-rotations{--oc-border:var(--line,#2e3b46)}
@media(prefers-color-scheme:dark){#employee-app .oc-rotations{--oc-panel:#152c38;--oc-soft:#1b3543;--oc-muted:#a9bfcc;--oc-green:#6cd2c1;--oc-green-soft:#203f41;--oc-blue:#86baff;--oc-blue-soft:#203e5c;--oc-amber:#e9bd70;--oc-amber-soft:#403627;--oc-red:#ff9b9f;--oc-red-soft:#432d3b;--oc-border:#31505f;--on-accent:#102338}}
@media(min-width:1500px){.oc-rotations .oc-eligibility{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}}
@media(max-width:1100px){.oc-rotations .oc-request-list .oc-request{align-items:flex-start}.oc-rotations .oc-request-actions{flex-basis:150px}.oc-rotations .oc-calendar{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){
 .oc-rotations .oc-toolbar{flex-wrap:nowrap;gap:10px}.oc-rotations .oc-toolbar>.field{flex:1;width:auto}.oc-rotations .oc-toolbar>.button{flex:none}
 .oc-rotations>.oc-actions{margin:8px 0 16px;gap:6px}.oc-rotations>.oc-actions>.button{font-size:10px;min-height:38px;padding:8px 10px}
 .oc-rotations .panel,.oc-rotations .ep-card{padding:16px;border-radius:15px;margin-bottom:24px}
 .oc-rotations .oc-section-heading{gap:12px;margin-bottom:16px;align-items:flex-start}.oc-rotations .oc-section-heading>div:first-child{flex-basis:100%}
 .oc-rotations .oc-section-heading h2{font-size:19px}.oc-rotations .oc-section-heading p{font-size:11px}.oc-rotations .oc-count{font-size:10px;padding:6px 9px}
 .oc-rotations .oc-request-list .oc-request{display:block;padding:14px;border-radius:12px}.oc-rotations .oc-request .oc-person{flex-wrap:wrap;gap:8px}.oc-rotations .oc-request .oc-person>div{flex-basis:calc(100% - 50px)}
 .oc-rotations .oc-request .oc-status{margin-left:46px}.oc-rotations .oc-request-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px;padding-top:12px;border-top:1px solid var(--oc-border)}
 .oc-rotations .oc-request-actions .button{min-height:42px;flex:1;font-size:11px}.oc-rotations .oc-request-actions [data-decision=cancelled]{flex-basis:100%;min-height:34px;font-size:10px;padding:5px}
 .oc-rotations .oc-trip-dates{gap:12px}.oc-rotations .oc-trip-dates strong{font-size:12px}.oc-rotations .oc-trip-dates>div:first-child>.oc-icon{display:none}
 .oc-rotations .oc-eligibility{grid-template-columns:minmax(0,1fr);gap:12px}.oc-rotations .oc-eligibility-card{padding:18px}.oc-rotations .oc-eligibility-card .oc-person h3{font-size:15px}
 .oc-rotations .oc-card-note{margin-bottom:15px}.oc-rotations .oc-card-dates dd{font-size:12px}.oc-rotations .oc-eligibility-section{margin-bottom:24px}
 .oc-rotations .oc-calendar-controls{width:100%;flex-wrap:nowrap}.oc-rotations .oc-calendar-controls input{flex:1;width:0;font-size:16px}.oc-rotations .oc-calendar-controls .button{flex:none;font-size:11px}
 .oc-rotations .oc-calendar{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.oc-rotations .oc-calendar article{padding:10px 8px;gap:10px}.oc-rotations .oc-calendar-available{display:block}.oc-rotations .oc-calendar-available span{display:block;margin-top:3px}.oc-rotations .oc-calendar-date>strong{font-size:11px}
 .oc-rotations .oc-form .oc-fields{grid-template-columns:minmax(0,1fr)}.oc-rotations .oc-form input,.oc-rotations .oc-form select,.oc-rotations .oc-form textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.oc-rotations .oc-request-history summary>.oc-icon{transition:none}}

/* Personal rotations keep eligibility and the request action together for every assignment. */
.oc-personal .oc-personal-eligibility{padding:20px;margin:0 0 14px}
.oc-personal .oc-section-heading{margin-bottom:14px;gap:12px}
.oc-personal .oc-section-heading>div:first-child{flex:1}
.oc-personal .oc-personal-projects{display:grid}
.oc-personal .oc-personal-project{display:grid;grid-template-columns:minmax(0,1fr) 154px 155px;align-items:center;gap:18px;padding:17px 0;background:transparent}
.oc-personal .oc-personal-project+.oc-personal-project{border-top:1px solid var(--oc-border)}
.oc-personal .oc-personal-project-name{min-width:0}
.oc-personal .oc-personal-project h3{margin:0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.oc-personal .oc-personal-project p{margin:5px 0 0;font-size:12px;line-height:1.5;color:var(--oc-muted)}
.oc-personal .oc-personal-project p strong{font-weight:600;white-space:nowrap}
.oc-personal .oc-personal-project .oc-state{margin:0;white-space:normal;justify-self:start}
.oc-personal .oc-personal-project [data-oc=request]{min-height:42px}
.oc-personal .oc-personal-empty{font-size:13px;color:var(--oc-muted);margin:6px 0}
.oc-personal .oc-personal-requests>summary{display:flex;align-items:center;gap:9px;padding:13px 2px;cursor:pointer;list-style:none;color:var(--oc-muted);font-size:13px;min-height:48px}
.oc-personal .oc-personal-requests>summary::-webkit-details-marker{display:none}
.oc-personal .oc-personal-requests>summary>.oc-icon:last-child{margin-left:auto;width:15px;height:15px}
.oc-personal .oc-personal-requests[open]>summary>.oc-icon:last-child{transform:rotate(90deg)}
.oc-personal .oc-personal-requests>.oc-requests{margin-top:7px}
.oc-personal .oc-request-project{grid-column:1/-1;display:grid;gap:5px;font-size:13px}
.oc-personal .oc-request-project>span{font-size:11px;color:var(--oc-muted)}
.oc-personal .oc-request-project strong{font-weight:650;overflow-wrap:anywhere}
@media(max-width:650px){.oc-personal .oc-personal-eligibility{padding:16px}.oc-personal .oc-section-heading h2{font-size:18px}.oc-personal .oc-personal-project{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:16px 0}.oc-personal .oc-personal-project-name{grid-column:1/-1}.oc-personal .oc-personal-project .oc-state{font-size:11px}.oc-personal .oc-personal-project [data-oc=request]{min-width:135px;padding:9px 12px}}

/* The approval decision always includes a fresh, explicit eligibility check. */
.oc-rotations [data-oc-review-panel]{grid-column:1/-1;min-width:0}
.oc-rotations .oc-approval-card{padding:16px 18px;border:1px solid var(--oc-border);border-radius:12px;background:var(--oc-soft);font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.oc-rotations .oc-approval-heading{display:flex;align-items:center;gap:9px;font-size:16px;line-height:1.4}
.oc-rotations .oc-approval-ready .oc-approval-heading{color:var(--oc-green)}
.oc-rotations .oc-approval-blocked .oc-approval-heading{color:var(--oc-amber)}
.oc-rotations .oc-approval-card p{margin:8px 0 0}
.oc-rotations .oc-approval-date{font-size:14px}
.oc-rotations .oc-approval-date strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.oc-rotations .oc-approval-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:15px 0 0}
.oc-rotations .oc-approval-facts dt{font-size:11px;color:var(--oc-muted)}
.oc-rotations .oc-approval-facts dd{margin:2px 0 0;font-size:12px;font-weight:600}
.oc-rotations .oc-approval-block-reason{padding:10px 12px;background:var(--oc-amber-soft);color:var(--oc-amber);border-radius:8px}
.oc-rotations .oc-approval-card [data-oc=review-refresh]{min-height:32px;padding:5px 10px;font-size:11px;margin-top:12px}
.oc-rotations .oc-approval-coverage{padding:14px 16px;margin-top:12px;border-radius:10px;background:var(--oc-amber-soft);color:var(--oc-amber);font-size:12px;line-height:1.6}
.oc-rotations .oc-approval-coverage p{margin:6px 0 12px}
.oc-rotations .oc-approval-coverage .oc-check{align-items:flex-start;font-weight:600}
.oc-rotations .oc-approval-coverage input{flex:none;min-height:0;margin-top:4px}
.oc-rotations [data-oc-form] button:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:450px){.oc-rotations .oc-approval-card{padding:14px}.oc-rotations .oc-approval-facts{gap:12px}.oc-rotations .oc-approval-coverage{padding:12px}}
