.side-reset{background:none;color:#b8c8df;font-size:11px;padding:12px 0;text-decoration:underline}.hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px;border-radius:18px;background:linear-gradient(115deg,#173654,#315ad1);color:#fff;margin-bottom:24px}.hero h2{font-size:27px;line-height:1.25;max-width:500px}.hero p{color:#dbe6ff;max-width:530px;font-size:13px;margin:10px 0 18px}.hero .eyebrow{color:#93dfd5}.hero .button{border-color:#ffffff30;background:#fff;color:#2546a7}.hero-steps{display:grid;gap:11px;min-width:225px}.hero-steps div{display:flex;align-items:center;gap:12px;background:#ffffff12;padding:12px 16px;border:1px solid #ffffff20;border-radius:10px;font-size:12px}.hero-steps b{background:#ffffff20;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}.roster-toolbar{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:16px}.week-control{display:flex;align-items:center;gap:14px}.week-control strong{font-size:16px}.roster{min-width:1120px;table-layout:fixed}.roster th,.roster td{padding:9px 6px;border-right:1px solid #edf1f6}.roster th:first-child,.roster td:first-child{width:170px;position:sticky;left:0;z-index:2;background:#fff;padding:13px}.roster th:first-child{background:#f8fafd}.roster th{font-size:12px;text-align:center;height:70px}.roster th small{font-size:9px;display:block;margin-top:6px}.roster td{vertical-align:top}.roster .person{min-width:0;gap:8px}.shift{width:100%;min-height:77px;display:block;text-align:left;border-radius:9px;padding:12px 8px;background:#eaf0ff;color:#2d4fa2;border:1px solid #d3dffc;position:relative}.shift:hover{box-shadow:0 0 0 2px #7c9bed;transform:translateY(-1px)}.shift strong{font-size:11px;white-space:nowrap}.shift small{display:block;color:inherit;font-size:9px;margin-top:7px;opacity:.85}.shift.support{background:#e9f7f2;color:#2a7866;border-color:#cceadd}.shift.open{background:#fff6e7;border:1px dashed #dca954;color:#956115}.shift.off{background:transparent;color:#98a4b4;border:1px dashed #e0e6ee;display:grid;place-content:center;text-align:center}.shift.leave{background:#f3eefa;color:#8057a4;border:1px solid #e2d5f1;min-height:77px}.shift .pending-dot{position:absolute;right:7px;top:5px;color:#bb7c0d;font-size:8px}.hours-line{display:flex;gap:4px;align-items:center;font-size:10px;color:var(--muted);margin:10px 0 0 42px}.hours-line strong{color:var(--teal)}.hours-line .over{color:var(--amber)}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:20px}.day-coverage{padding:13px 10px;background:#fff;border:1px solid var(--line);border-radius:10px;text-align:left;color:var(--ink)}.day-coverage strong{font-size:12px}.day-coverage small{display:block;margin-top:7px;font-size:10px}.coverage-line{display:flex;gap:3px;height:5px;margin-top:12px}.coverage-line i{background:#48a98b;flex:1;border-radius:3px}.coverage-line i.gap{background:#da8c49}.coverage-line i.bad{background:#d26474}.toolbar-search{border:1px solid var(--line);padding:9px 12px;border-radius:8px;max-width:200px}.segmented{display:flex;gap:5px;padding:4px;border-radius:9px;background:#eaf0f7}.segmented button{background:none;padding:8px 12px;border-radius:6px;color:var(--muted);font-size:12px}.segmented button.active{background:#fff;color:var(--blue);box-shadow:0 2px 5px #17345d10}.quick-presets{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 20px}.preset{padding:10px 12px;border:1px solid #dce5f2;border-radius:8px;background:#f4f7fd;color:#34578a;font-size:12px}.live-impact{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.live-impact div{padding:15px;border-radius:10px;background:#f2f6fc}.live-impact small{display:block;font-size:10px;margin-bottom:7px}.live-impact b{font-size:20px}.request-card{padding:21px;border-bottom:1px solid var(--line)}.request-card:last-child{border:0}.request-card .split-head{align-items:flex-start}.request-card p{font-size:12px;color:var(--muted);margin:12px 0}.request-card .review-diff{font-size:12px}.request-card h3{margin-top:5px}.request-card .actions{margin-top:14px}.request-stages{display:flex;gap:6px;margin-top:12px}.request-stages span{font-size:10px;border-radius:5px;background:#f1f4f8;color:#8c99ab;padding:6px 9px}.request-stages .done{background:#e6f6ef;color:#28785f}.request-stages .now{background:#edf2ff;color:#355ab5}.mini-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.mini-day{padding:17px 12px;border-radius:12px;background:#f5f8fc;min-height:160px}.mini-day>strong{display:block;margin-bottom:15px;font-size:12px}.mini-day>small{display:block;font-size:11px;line-height:1.7;margin-top:8px}.mini-day.active{background:#eaf0ff}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.staff-card{padding:22px;background:#fff;border:1px solid var(--line);border-radius:14px}.staff-card .stat-line{margin-top:16px;justify-content:space-between}.staff-card .bar-track{margin-top:14px}.attention{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 22px;border-bottom:1px solid var(--line)}.attention strong{font-size:12px}.attention p{font-size:11px;margin-top:5px;color:var(--muted)}.attention:last-child{border:0}.toggle-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.form-error{color:#a3394a;font-size:12px;margin:10px 0;line-height:1.5}.calendar-row{display:grid;grid-template-columns:140px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.calendar-row:last-child{border:0}.calendar-row>strong{font-size:12px}.notice-month{padding:15px;border-radius:10px;background:#f0ebfb;color:#75529d;font-size:12px;line-height:1.6;margin:15px 0}.availability-list{display:flex;gap:7px;flex-wrap:wrap}.availability-list .pill{font-size:10px}.notice-count{background:#eef3fe;color:#4468aa;font-size:10px;padding:3px 6px;border-radius:5px;margin-left:auto}.muted-note{font-size:11px;color:var(--muted);line-height:1.6}.modal{width:min(760px,100%);max-height:92vh}.modal-head h2{font-size:20px}.modal-overlay{z-index:60}.modal-foot{flex-wrap:wrap}.field input,.field select,.field textarea{width:100%;min-height:42px;border:1px solid #dce3ef;border-radius:8px;padding:10px;background:#fff;color:var(--ink)}.field label{display:block;font-size:11px;font-weight:600;margin-bottom:7px}.field textarea{resize:vertical;min-height:70px}.field{min-width:0}.readonly{opacity:.6}.tagline{font-size:12px;color:var(--muted);margin:8px 0 20px}.duration-line{font-size:12px;color:var(--muted);margin-top:12px}.empty .button{margin-top:14px}.date-input{border:1px solid var(--line);padding:8px;border-radius:8px}.modal-back{margin-left:auto}.shift:disabled{opacity:1;cursor:default}.mobile-hint{display:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.modal-head{display:flex;align-items:center;justify-content:space-between}.toast{z-index:100}.action-tile{display:flex;gap:14px;padding:17px;background:#f5f8fc;border-radius:11px;margin-bottom:10px;color:var(--ink)}.action-tile b{font-size:12px}.action-tile small{display:block;margin-top:6px;font-size:11px}.action-tile>span{color:var(--blue);font-size:22px}.month-days{font-size:12px;line-height:1.8}.gap-card{padding:14px 0;border-bottom:1px solid var(--line)}.gap-card:last-child{border:0}.gap-card strong{font-size:12px}.gap-card p{font-size:11px;color:var(--muted);margin:6px 0 12px}.audit-type{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--teal)}
@media(max-width:1100px){.team-grid{grid-template-columns:repeat(2,1fr)}.hero-steps{min-width:200px}.week-strip{grid-template-columns:repeat(4,1fr)}.mini-calendar{grid-template-columns:repeat(4,1fr)}}
@media(max-width:650px){.hero{padding:24px;display:block}.hero h2{font-size:25px}.hero-steps{margin-top:20px;grid-template-columns:repeat(3,1fr);gap:5px}.hero-steps div{padding:10px 6px;display:block;font-size:10px}.hero-steps b{margin-bottom:8px}.team-grid{grid-template-columns:1fr}.week-strip{grid-template-columns:repeat(2,1fr)}.mini-calendar{grid-template-columns:repeat(2,1fr)}.roster-toolbar{align-items:flex-start}.live-impact{gap:5px}.live-impact div{padding:12px 8px}.live-impact b{font-size:17px}.mobile-hint{display:block;font-size:10px;color:var(--muted);margin-bottom:10px}.calendar-row{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.week-control strong{font-size:14px}.hero-steps div:last-child{background:#ffffff20}.request-stages{flex-wrap:wrap}.attention{padding:15px}.page-heading .actions{width:100%}.request-card{padding:17px}}

.field label>input,.field label>select,.field label>textarea{display:block;margin-top:8px}.modal-foot{position:sticky;bottom:0;background:#fff;z-index:2}.modal-body>details{margin-top:20px}#shift-form details{padding:12px 0;border-top:1px solid var(--line);margin-top:20px}#shift-form details[open] summary{margin-bottom:18px}
