@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-greek-ext.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-greek.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--navy:#1e293b;--navy-dark:#0f172a;--indigo:#4f46e5;--indigo-light:#6366f1;--indigo-bg:#eef2ff;--violet:#7c3aed;--violet-bg:#f5f3ff;--white:#fff;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--green:#15803d;--green-bg:#dcfce7;--yellow:#a16207;--yellow-bg:#fef9c3;--red:#b91c1c;--red-bg:#fee2e2;--sheet-teal:#0f5c63;--pill-font-size:13px;--pill-font-weight:400;--pill-line-height:16px;--pill-pad-y:3px;--pill-pad-x:11px;--pill-radius:999px;--pill-ink:#1d1f26;--pill-ink-on-dark:#fff;--pill-periwinkle-bg:#d1e3ff;--pill-sky-bg:#c4ecff;--pill-mint-bg:#c1f6f0;--pill-green-bg:#d0f5d1;--pill-amber-bg:#ffeab6;--pill-peach-bg:#ffe0cd;--pill-pink-bg:#f798ef;--pill-salmon-bg:#ffa6c2;--pill-magenta-bg:#fad3fc;--pill-lavender-bg:#e0dafd;--pill-blue-bg:#a1c6ff;--pill-slate-bg:#e5e9f1;--pill-charcoal-bg:#616670;--pill-red-bg:#ffd5d5;--grid-font-size:13px;--grid-header-size:11px;--grid-row-height:36px;--grid-cell-pad-x:10px;--shadow-sm:0 1px 2px #0f172a0f;--shadow:0 2px 8px #0f172a14, 0 8px 24px #0f172a0f;--shadow-preferred:0 2px 12px #4f46e51f;--radius:14px;--radius-sm:10px;--radius-menu:8px;--mobile-width:390px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*,:before,:after{box-sizing:border-box}body{font-family:var(--font);color:var(--gray-700);-webkit-font-smoothing:antialiased;background:linear-gradient(160deg,#e2e8f0 0%,#f1f5f9 50%,#ede9fe 100%);margin:0;font-size:15px;line-height:1.5}#root{flex-direction:column;align-items:center;min-height:100svh;display:flex}.view-toggle{z-index:200;background:var(--white);box-shadow:var(--shadow);border:1px solid var(--gray-200);border-radius:999px;gap:4px;padding:4px;display:flex;position:fixed;top:12px;right:12px}.view-toggle button{cursor:pointer;color:var(--gray-500);background:0 0;border:none;border-radius:999px;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:600}.view-toggle button.active{background:var(--indigo);color:var(--white)}.app{width:100%;max-width:var(--mobile-width);background:var(--gray-50);flex-direction:column;min-height:100svh;display:flex;box-shadow:0 0 60px #0f172a26}.header{background:linear-gradient(145deg, var(--navy-dark) 0%, #1a2744 40%, var(--navy) 100%);color:var(--white);padding:28px 140px 32px 20px}.header-eyebrow{text-transform:uppercase;letter-spacing:.14em;opacity:.55;margin:0;font-size:11px;font-weight:600}.header-title{letter-spacing:-.03em;margin:4px 0 0;font-size:28px;font-weight:700}.main{flex-direction:column;flex:1;gap:24px;padding:20px 16px 32px;display:flex}.field-label{text-transform:uppercase;letter-spacing:.08em;color:var(--gray-500);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.section-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.section-title{color:var(--navy);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:700}.client-section{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px}.client-select{border:1px solid var(--gray-200);border-radius:var(--radius-sm);background:var(--gray-50);width:100%;color:var(--navy);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding:13px 14px;font-family:inherit;font-size:16px;font-weight:600}.client-select:focus{outline:2px solid var(--indigo);outline-offset:1px}.client-stats{border-top:1px solid var(--gray-100);align-items:center;gap:16px;margin-top:14px;padding-top:14px;display:flex}.stat{flex-direction:column;gap:2px;display:flex}.stat-value{color:var(--indigo);letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1}.stat-value--muted{color:var(--navy);font-size:15px}.stat-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.stat-divider{background:var(--gray-200);width:1px;height:32px}.btn-smart{background:linear-gradient(135deg, var(--indigo) 0%, var(--violet) 100%);color:var(--white);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:8px 14px;font-family:inherit;font-size:12px;font-weight:600;box-shadow:0 2px 8px #4f46e559}.date-list{flex-direction:column;gap:12px;display:flex}.date-block{border-radius:var(--radius);transition:opacity .15s}.date-block--preferred .date-card{border-left:4px solid var(--indigo);box-shadow:var(--shadow-preferred)}.date-block--alternate{opacity:.82}.date-block--alternate .date-card{background:var(--gray-100);border:1px solid var(--gray-200);box-shadow:none}.date-block--expanded .date-card{border-bottom-right-radius:0;border-bottom-left-radius:0}.date-card{text-align:left;border:1px solid var(--gray-200);border-radius:var(--radius);background:var(--white);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;padding:16px;font-family:inherit;transition:box-shadow .15s}.date-card-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.date-label{color:var(--navy);letter-spacing:-.01em;font-size:15px;font-weight:700}.date-hours{color:var(--indigo);background:var(--indigo-bg);border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700}.date-team{color:var(--gray-600);margin:0 0 8px;font-size:14px}.date-card-footer{align-items:center;display:flex}.date-hours--avail{color:var(--gray-600);background:var(--gray-100)}.date-capacity{color:var(--gray-500);margin:0;font-size:13px}.date-empty{color:var(--gray-400);margin:0;font-size:13px}.date-alt-note{color:var(--gray-500);margin:8px 0 0;font-size:11px}.rate-pill{letter-spacing:-.01em;border-radius:999px;align-items:center;padding:4px 10px;font-size:13px;font-weight:700;display:inline-flex}.rate-pill--compact{padding:3px 8px;font-size:12px}.rate-pill--green{background:var(--green-bg);color:var(--green)}.rate-pill--yellow{background:var(--yellow-bg);color:var(--yellow)}.rate-pill--red{background:var(--red-bg);color:var(--red)}.date-expand{background:var(--white);border:1px solid var(--gray-200);border-radius:0 0 var(--radius) var(--radius);border-top:none;padding:16px}.expand-label{text-transform:uppercase;letter-spacing:.07em;color:var(--gray-500);margin:0 0 8px;font-size:11px;font-weight:600}.assigned-section{border-bottom:1px solid var(--gray-100);margin-bottom:16px;padding-bottom:16px}.pool-stats{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.live-stats{align-items:center;gap:8px;display:flex}.live-hours{color:var(--gray-600);font-size:13px;font-weight:600}.member-chips{grid-template-columns:1fr 1fr;gap:8px;display:grid}.member-chip{border:2px solid var(--gray-200);border-radius:var(--radius-sm);background:var(--white);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:12px;font-family:inherit;transition:border-color .12s,background .12s,transform .1s;display:flex}.member-chip:active:not(.member-chip--unavailable){transform:scale(.98)}.member-chip--lead{background:var(--indigo-bg);border-color:#c7d2fe}.member-chip--assigned{border-color:var(--indigo);background:linear-gradient(135deg, var(--indigo-bg) 0%, var(--violet-bg) 100%)}.member-chip--unavailable{opacity:.5;cursor:default;background:var(--gray-50);border-style:dashed}.chip-name{color:var(--navy);font-size:14px;font-weight:600}.chip-meta{color:var(--gray-500);font-size:11px}.shift-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.btn-danger{border-radius:var(--radius-sm);cursor:pointer;background:var(--red-bg);color:var(--red);border:1px solid #fecaca;flex:100%;padding:11px;font-family:inherit;font-size:14px;font-weight:600}.btn-danger:active{background:#fecaca}.shift-error{color:var(--red);text-align:center;margin:10px 0 0;font-size:13px}.btn-primary,.btn-secondary{border-radius:var(--radius-sm);cursor:pointer;border:none;flex:1;padding:13px;font-family:inherit;font-size:14px;font-weight:600}.btn-primary{background:linear-gradient(135deg, var(--indigo) 0%, var(--violet) 100%);color:var(--white);box-shadow:0 2px 8px #4f46e54d}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--white);color:var(--gray-600);border:1px solid var(--gray-200)}.modal-backdrop{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:100;background:#0f172a61;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=1024px){.modal-backdrop{align-items:center}.modal{max-height:85vh}}.modal{width:100%;max-width:var(--mobile-width);background:var(--white);max-height:90svh;box-shadow:var(--shadow);border-radius:0;padding:16px 16px 18px;animation:.28s cubic-bezier(.32,.72,0,1) slideUp;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-title{color:var(--navy);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:700}.modal-close{border:1px solid var(--gray-200);background:var(--gray-100);width:30px;height:30px;color:var(--gray-600);cursor:pointer;border-radius:0;font-size:20px;line-height:1}.hours-input{border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;color:var(--navy);background:var(--gray-50);padding:14px 16px;font-family:inherit;font-size:24px;font-weight:700}.hours-input:focus{outline:2px solid var(--indigo);outline-offset:1px}.input-hint{color:var(--gray-500);margin:6px 0 20px;font-size:13px}.schedule-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.schedule-option{border:1px solid var(--gray-200);border-radius:var(--radius-sm);background:var(--gray-50);flex-direction:column;padding:14px;display:flex}.option-title{color:var(--navy);margin:0;font-size:13px;font-weight:700;line-height:1.3}.option-subtitle{color:var(--gray-500);margin:3px 0 10px;font-size:11px;line-height:1.3}.option-summary{color:var(--indigo);margin:0 0 8px;font-size:12px;font-weight:700}.option-dates{flex-direction:column;flex:1;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.option-date{background:var(--white);border-radius:8px;flex-direction:column;gap:1px;padding:8px;font-size:12px;display:flex}.option-date-label{color:var(--navy);font-weight:600}.option-date-meta{color:var(--gray-500);font-size:11px}.option-date-team{color:var(--gray-600);margin-top:2px;font-size:11px}.option-empty{color:var(--gray-500);flex:1;margin:0;font-size:12px;font-style:italic}.btn-confirm-plan{width:100%;margin-top:auto;padding:10px;font-size:13px}.btn-try-again{border-radius:var(--radius-sm);background:var(--indigo-bg);width:100%;color:var(--indigo);cursor:pointer;border:2px dashed #c7d2fe;padding:14px;font-family:inherit;font-size:14px;font-weight:600}@media (width<=380px){.schedule-grid{grid-template-columns:1fr}}.modal--wide{max-width:520px}.desktop{background:var(--white);--topbar-save-col-width:248px;--topbar-main-pad-x:20px;--topbar-range-col:19rem;--topbar-col-gap:12px;flex-direction:column;width:100%;min-height:100svh;display:flex}.desktop:not(.desktop--mobile){height:100svh;max-height:100svh;overflow:hidden}.desktop-body{flex:1;min-width:0;min-height:0;display:flex}@media (width>=1024px){#root:has(.desktop:not(.desktop--mobile)){height:100svh;min-height:0;overflow:hidden}#root:has(.desktop:not(.desktop--mobile))>.admin-app-frame{flex-direction:column;flex:1;min-height:0;display:flex}.desktop:not(.desktop--mobile){height:100%;min-height:0;overflow:hidden}}.desktop-body--mobile{flex:1}.desktop-topbar{border-bottom:1px solid var(--gray-200);background:var(--white);flex-shrink:0;align-items:stretch;display:flex}.desktop-topbar-save-col{width:var(--topbar-save-col-width,248px);border-right:1px solid var(--gray-200);box-sizing:border-box;flex-shrink:0;align-items:center;gap:8px;padding:12px 14px;display:flex}.desktop--sidebar-collapsed .desktop-topbar-save-col{border-right:1px solid var(--gray-200);width:248px}.btn-undo-icon{border:2px solid var(--gray-300);background:var(--gray-100);width:44px;min-height:64px;color:var(--gray-600);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;transition:background .15s,border-color .15s,color .15s;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffffb3}.btn-undo-icon:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400);color:var(--navy)}.btn-undo-icon:disabled{cursor:default;opacity:1}.btn-publish{border:1px solid var(--gray-200);background:var(--gray-100);width:196px;min-height:64px;color:var(--gray-600);text-align:left;cursor:not-allowed;border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-start;gap:3px;padding:12px 16px;font-family:inherit;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,width .15s;display:flex}.btn-publish--compact{flex:auto;width:auto;min-width:0;padding:12px}.btn-publish--compact .btn-publish-title{font-size:13px}.btn-publish--dirty{background:linear-gradient(135deg, var(--indigo) 0%, var(--violet) 100%);color:var(--white);cursor:pointer;border-color:#0000;box-shadow:0 2px 10px #4f46e547}.btn-publish--dirty:hover:not(:disabled){background:linear-gradient(135deg, var(--indigo-light) 0%, var(--violet) 100%)}.btn-publish-title{letter-spacing:.01em;white-space:nowrap;font-size:15px;font-weight:800;line-height:1.15}.btn-publish-sub{opacity:.9;white-space:nowrap;font-size:12px;font-weight:600}.btn-publish--dirty .btn-publish-sub{opacity:.92}.desktop-topbar-main{grid-template-columns:var(--topbar-range-col) max-content 1fr;column-gap:var(--topbar-col-gap);min-width:0;padding:10px var(--topbar-main-pad-x) 12px;flex:1;align-content:center;row-gap:6px;display:grid}.desktop-topbar-row1,.desktop-topbar-row2{grid-template-columns:subgrid;grid-column:1/-1;align-items:center;min-width:0;display:grid}.desktop-topbar-row2{color:var(--gray-500);font-size:13px}.desktop-topbar-row1 .desktop-range{grid-column:1;justify-self:start}.desktop-topbar-row1 .nav-group{grid-column:2;justify-self:start}.desktop-topbar-row2-center{flex-wrap:nowrap;grid-column:2;justify-content:center;justify-self:center;align-items:center;gap:8px;width:0;min-width:0;display:flex;overflow:visible}.city-select--topbar{grid-column:1;justify-self:start;min-width:0;max-width:100%;margin-left:0}.desktop:not(.desktop--mobile) .city-select--topbar .city-select-input,.desktop:not(.desktop--mobile) .city-select--topbar .city-select-locked-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.desktop:not(.desktop--mobile) .desktop-topbar-row2-center .week-span-toggle,.desktop:not(.desktop--mobile) .desktop-topbar-row2-center .calendar-option-btn{flex-shrink:0}.week-span-toggle--inline{border-radius:6px}.week-span-toggle--inline .week-span-btn{padding:6px 12px;font-size:11px}.nav-group{border:1px solid var(--gray-200);background:var(--gray-50);border-radius:8px;flex-shrink:0;align-items:stretch;display:inline-flex;overflow:hidden}.nav-group .nav-btn{border:none;border-right:1px solid var(--gray-200);background:0 0;border-radius:0;width:34px;height:32px;font-size:16px}.nav-group .nav-btn:last-child{border-right:none}.nav-group .nav-btn--today{width:auto;padding:0 12px;font-size:11px}.nav-group .nav-btn:hover{background:var(--white);color:var(--navy)}.desktop-sidebar{border-right:1px solid var(--gray-200);background:var(--gray-50);flex-direction:column;flex-shrink:0;width:248px;min-height:0;padding:20px 12px;transition:width .22s,padding .22s,border-color .22s;display:flex;overflow:hidden}.sidebar-clients{flex:1;min-height:0;margin:0 -4px;padding:0 4px;overflow-y:auto}.desktop--sidebar-collapsed .desktop-sidebar,.desktop-sidebar--rail{border-right-color:var(--gray-200);pointer-events:auto;width:44px;padding:20px 8px;overflow:visible}.desktop--sidebar-collapsed .sidebar-header,.desktop-sidebar--rail .sidebar-header{justify-content:center;margin-bottom:0;padding:0}.sidebar-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:0 8px;display:flex}.sidebar-title{text-transform:uppercase;letter-spacing:.08em;color:var(--gray-500);margin:0;font-size:11px;font-weight:700}.sidebar-collapse-btn,.sidebar-expand-btn{border:1px solid var(--gray-200);background:var(--white);color:var(--gray-600);cursor:pointer;flex-shrink:0;font-family:inherit;transition:background .15s,border-color .15s,color .15s}.sidebar-collapse-btn{border-radius:6px;width:28px;height:28px;padding:0;font-size:18px;line-height:1}.sidebar-expand-btn{border-radius:var(--radius-sm);color:var(--navy);padding:7px 12px;font-size:12px;font-weight:700}.sidebar-collapse-btn:hover,.sidebar-expand-btn:hover{background:var(--gray-100);border-color:var(--gray-300);color:var(--navy)}.sidebar-collapse-btn:focus-visible,.sidebar-expand-btn:focus-visible{outline:2px solid var(--indigo);outline-offset:1px}.sidebar-client{border:1px solid var(--gray-400);border-radius:var(--radius-sm);background:var(--white);cursor:pointer;text-align:left;align-items:center;gap:10px;width:100%;margin-bottom:4px;padding:10px 8px;font-family:inherit;display:flex}.sidebar-client--active{background:var(--white);box-shadow:var(--shadow-sm)}.sidebar-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.sidebar-dot--green{background:#4ade80}.sidebar-dot--teal{background:#2dd4bf}.sidebar-dot--purple{background:#a78bfa}.sidebar-dot--pink{background:#f472b6}.sidebar-dot--orange{background:#fb923c}.sidebar-client-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sidebar-client-name{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-client-purchased{color:var(--gray-600);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.sidebar-client-left{--sidebar-mark-box:50px;flex-direction:column;flex-shrink:0;align-items:flex-end;margin-left:4px;line-height:1;display:flex}.sidebar-client-left-value{width:var(--sidebar-mark-box);text-align:center;color:var(--navy);letter-spacing:-.02em;font-size:22px;font-weight:600}.sidebar-client-left-label{width:var(--sidebar-mark-box);text-align:center;letter-spacing:.06em;color:var(--gray-500);margin-top:3px;font-size:9px;font-weight:700}.sidebar-client-left--over .sidebar-client-left-value,.sidebar-client-left--over .sidebar-client-left-label{color:var(--red)}.sidebar-client-left--over .sidebar-client-left-value{transform:translate(-2px)}.sidebar-client-check{background:var(--green-bg);width:24px;height:24px;color:var(--green);border-radius:50%;justify-content:center;align-items:center;margin-top:-2px;font-size:14px;font-weight:700;display:inline-flex}.sidebar-client-check-box{width:var(--sidebar-mark-box);justify-content:center;display:flex}.sidebar-client-left--done .sidebar-client-left-label{width:auto;color:var(--green)}.sidebar-checkbox{border-top:1px solid var(--gray-200);color:var(--gray-600);cursor:pointer;align-items:flex-start;gap:8px;margin-top:20px;padding:10px 8px;font-size:12px;line-height:1.4;display:flex}.sidebar-checkbox input{accent-color:var(--indigo);flex-shrink:0;margin-top:2px}.toolbar-pill--muted{color:var(--gray-500);font-weight:500}.client-shift--other{opacity:.72;pointer-events:none}.client-shift--past{opacity:.48;filter:saturate(.35)brightness(.97);cursor:default}.client-shift--past:not(.client-shift--clickable-past){pointer-events:none}.client-shift--past.client-shift--has-badge,.client-shift--past.client-shift--clickable-past{opacity:.62}.client-shift--past .client-shift-drop-badge{pointer-events:auto;opacity:1;filter:none}.client-shift--past .client-shift-status-label--past{opacity:1;filter:none}.client-shift--past.client-shift--clickable-past{pointer-events:auto;cursor:pointer}.client-shift--past.client-shift--clickable-past .shift-member{pointer-events:none}.client-shift-status-delta{letter-spacing:-.01em;opacity:1;filter:none;align-items:center;margin-left:auto;font-size:15px;font-weight:800;line-height:1;display:inline-flex}.client-shift-status-delta--short{color:#b45309}.client-shift-status-delta--over{color:#047857}.shift-member--readonly{cursor:default}.shift-member--unknown{border:1px dashed var(--gray-300);color:var(--gray-400);font-style:italic}.day-no-clients{color:var(--gray-400);text-align:center;margin:0;padding:16px 8px;font-size:12px;font-style:italic}.desktop-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.scheduler-toast{z-index:9999;background:var(--navy);max-width:min(420px,100% - 24px);color:var(--white);box-shadow:var(--shadow);border-radius:0;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;line-height:1.35;animation:.2s ease-out toast-in;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.scheduler-toast--with-action{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px 10px}.scheduler-toast-body{align-items:center;gap:8px;display:flex}.scheduler-toast-action{color:var(--white);cursor:pointer;background:#ffffff24;border:none;border-radius:0;align-self:center;padding:7px 16px;font-size:13px;font-weight:600}.scheduler-toast-action:hover{background:#ffffff38}.scheduler-toast-icon{background:var(--red);width:18px;height:18px;color:var(--white);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.scheduler-toast--success .scheduler-toast-icon{background:var(--green-bg);color:var(--green);font-size:12px;font-weight:700}.scheduler-toast-text{flex:1}.confetti-canvas{pointer-events:none;z-index:10001;width:100%;height:100%;position:fixed;inset:0}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(-8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.desktop-header{border-bottom:1px solid var(--gray-200);background:var(--white);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.desktop-header-left{align-items:center;gap:16px;min-width:0;display:flex}.desktop-header-title{min-width:0}.desktop-header-brand-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.desktop-header-brand-row .header-eyebrow{min-width:0}.desktop-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.btn-save{border:1px solid var(--gray-300);background:var(--gray-100);color:var(--gray-400);letter-spacing:.08em;cursor:not-allowed;border-radius:8px;flex-shrink:0;padding:8px 16px;font-family:inherit;font-size:12px;font-weight:800}.btn-save--active{background:var(--navy);border-color:var(--navy);color:var(--white);cursor:pointer}.btn-save--active:hover{background:var(--navy-dark)}.btn-history{border:1px solid var(--gray-300);background:var(--gray-100);color:var(--gray-400);cursor:not-allowed;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:700}.btn-history--active{background:var(--white);border-color:var(--gray-300);color:var(--navy);cursor:pointer}.btn-history--active:hover{background:var(--gray-50);border-color:var(--gray-400)}.desktop-range{color:var(--navy);letter-spacing:-.02em;margin:0;font-size:20px;font-weight:700}.desktop:not(.desktop--mobile) .desktop-range{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;align-self:center;width:19rem;overflow:hidden}.desktop-header-center{align-items:center;gap:8px;display:flex}.nav-btn{border:1px solid var(--gray-200);background:var(--white);cursor:pointer;width:32px;height:32px;color:var(--gray-600);border-radius:8px;font-family:inherit;font-size:18px}.nav-btn--today{letter-spacing:.06em;width:auto;padding:0 14px;font-size:11px;font-weight:700}.desktop-header-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.calendar-view-controls{align-items:center;gap:8px;display:flex}.calendar-option-btn{border:1px solid var(--gray-200);background:var(--gray-50);letter-spacing:.02em;color:var(--gray-500);cursor:pointer;white-space:nowrap;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:11px;font-weight:700}.calendar-option-btn--active{background:var(--white);color:var(--navy);box-shadow:inset 0 0 0 1px var(--gray-200)}.week-span-toggle{border:1px solid var(--gray-200);background:var(--gray-50);border-radius:8px;display:inline-flex;overflow:hidden}.week-span-btn{letter-spacing:.04em;color:var(--gray-500);cursor:pointer;background:0 0;border:none;padding:6px 12px;font-family:inherit;font-size:11px;font-weight:700}.week-span-btn--active{background:var(--white);color:var(--navy);box-shadow:inset 0 0 0 1px var(--gray-200)}.desktop-toolbar{border-bottom:1px solid var(--gray-100);background:var(--gray-50);align-items:center;gap:8px;padding:10px 24px;font-size:13px;display:flex}.toolbar-label{color:var(--gray-500)}.toolbar-pill{background:var(--white);border:1px solid var(--gray-200);color:var(--navy);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.toolbar-empty-toggle{border:1px solid var(--gray-200);background:var(--white);color:var(--gray-600);cursor:pointer;border-radius:6px;flex-shrink:0;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:600}.toolbar-empty-toggle:hover{background:var(--gray-100);color:var(--navy)}.toolbar-empty-toggle--active{background:var(--indigo-bg);border-color:var(--indigo);color:var(--indigo)}.toolbar-hint{color:var(--gray-500);max-width:420px;font-size:12px;line-height:1.35}.toolbar-expand-cluster{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.toolbar-collapse-btn{border:1px solid var(--gray-200);background:var(--white);color:var(--gray-600);cursor:pointer;border-radius:6px;flex-shrink:0;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:600}.toolbar-collapse-btn:hover{background:var(--gray-100);color:var(--navy)}.toolbar-collapse-btn--active{background:var(--gray-300);border-color:var(--gray-500);color:var(--gray-800)}.toolbar-save-col{flex-shrink:0;align-items:center;gap:6px;margin-right:4px;display:inline-flex}.btn-undo-icon--toolbar{border-radius:8px;width:34px;min-height:34px}.btn-publish--toolbar{border-radius:8px;gap:1px;width:auto;min-width:0;min-height:34px;padding:4px 10px}.btn-publish--toolbar.btn-publish--compact{flex:0 auto;width:auto}.btn-publish--toolbar .btn-publish-title{font-size:11px;line-height:1.15}.btn-publish--toolbar .btn-publish-sub{font-size:9px;line-height:1.15}.nav-group--toolbar{border-radius:6px;flex-shrink:0}.nav-group--toolbar .nav-btn:not(.nav-btn--today){flex:none;width:28px;min-width:28px;height:30px;font-size:14px}.nav-group--toolbar .nav-btn--today{flex:none;width:auto;min-width:max-content;height:30px;padding:0 10px;font-size:10px}.desktop--board-expanded .desktop-topbar,.desktop--board-expanded .desktop-header,.desktop--board-expanded .desktop-sidebar,.desktop--board-expanded .mobile-sidebar-backdrop{display:none}.desktop--board-expanded .desktop-body{min-height:0}.desktop--board-expanded .desktop-toolbar{padding-top:6px;padding-bottom:7px;position:relative}.desktop--board-expanded .btn-undo-icon--toolbar{width:38px;min-height:38px}.desktop--board-expanded .btn-publish--toolbar{min-height:38px;padding:5px 12px}.desktop--board-expanded .btn-publish--toolbar .btn-publish-title{font-size:12px}.desktop--board-expanded .btn-publish--toolbar .btn-publish-sub{font-size:10px}.desktop--board-expanded .nav-group--toolbar .nav-btn:not(.nav-btn--today){width:32px;min-width:32px;height:34px;font-size:15px}.desktop--board-expanded .nav-group--toolbar .nav-btn--today{height:34px;padding:0 12px;font-size:11px}.desktop--board-expanded .toolbar-collapse-btn{padding:7px 14px;font-size:13px}.desktop--board-expanded .toolbar-nav-slot{left:calc(var(--topbar-save-col-width) + var(--topbar-main-pad-x) + var(--topbar-range-col) + var(--topbar-col-gap));z-index:2;position:absolute;top:50%;transform:translateY(-50%)}.desktop--board-expanded .mobile-client-bar{min-height:0;padding-top:4px;padding-bottom:4px}.desktop--board-expanded .day-name{display:none}.desktop--board-expanded .desktop-grid-wrap .day-num,.desktop--board-expanded .desktop-grid-wrap[data-grid-density] .day-num{white-space:nowrap;font-size:13px;font-weight:700;line-height:1.2}.desktop--board-expanded .grid-row-label{padding-top:4px;padding-bottom:4px}.grid-header-row,.grid-pool-row,.grid-client-row,.grid-stacked-row,.grid-footer-row{grid-template-columns:var(--label-width,90px) repeat(var(--day-count), var(--day-width,180px));display:grid}.assessment-stack{flex-direction:column;gap:4px;margin-top:auto;padding-top:8px;display:flex}.client-shift--add-assessment{flex-direction:column;gap:0;padding:4px 0 6px}.client-shift--add-assessment .add-shift-card-label{white-space:nowrap;padding:0 8px;font-size:14px;line-height:1.15}.add-assessment-meta{color:var(--gray-500);text-align:center;font-size:12px;font-weight:500;line-height:1.2}.client-shift--add-assessment:hover .add-assessment-meta,.client-shift--add-assessment:focus-visible .add-assessment-meta{color:var(--indigo)}.assessment-card{text-align:left;box-sizing:border-box;cursor:pointer;font:inherit;background:#fdf6e3;border:1px solid #e0b155;border-radius:0 0 8px 8px;flex-direction:column;gap:1px;margin-top:12px;padding:7px 9px;display:flex;position:relative}.assessment-card:before{content:"ASSESSMENT";letter-spacing:.1em;text-align:center;color:#8a5a00;background:#f5e2b8;border:1px solid #e0b155;border-bottom:0;border-radius:6px 6px 0 0;padding:1px 8px 2px;font-size:8px;font-weight:800;position:absolute;top:-12px;left:-1px;right:-1px}.assessment-card:hover,.assessment-card:hover:before{border-color:#d99b1e}.assessment-card-time{color:#8a5a00;padding-right:22px;font-size:11px;font-weight:700}.assessment-card-name{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.assessment-card--placeholder,.assessment-card--placeholder:before{background:#fffaf0;border-style:dashed}.assessment-card--placeholder .assessment-card-name{color:#8a5a00;font-style:italic;font-weight:500}.assessment-card--draft{box-shadow:inset 0 0 0 1px #d99b1e59}.assessment-card-house{color:#b98420;pointer-events:auto;width:18px;height:18px;position:absolute;top:4px;right:5px}.assessment-card-house svg{width:100%;height:100%;display:block}.assessment-card-house--unknown{color:var(--gray-300)}.assessment-card--pending-delete .assessment-card-house{color:var(--gray-400)}.assessment-card-footer{align-items:center;gap:6px;min-height:18px;margin-top:3px;display:flex}.assessment-card--tight{padding-top:5px;padding-bottom:3px}.assessment-card--tight .assessment-card-footer{margin-top:0}.assessment-card-status-label{box-shadow:none;border-radius:4px;padding:1px 5px;font-size:9px}.assessment-card-delete{width:18px;height:18px;font-size:12px}.assessment-card--pending-delete{border-color:var(--gray-300);background:var(--gray-50);cursor:default;opacity:.75}.assessment-card--pending-delete:before{border-color:var(--gray-300);background:var(--gray-100);color:var(--gray-500)}.assessment-card--pending-delete:hover,.assessment-card--pending-delete:hover:before{border-color:var(--gray-300)}.assessment-card--pending-delete .assessment-card-time,.assessment-card--pending-delete .assessment-card-name{color:var(--gray-500);text-decoration:line-through}.assessment-stack--drop-valid,.assessment-stack--drop-invalid{outline-offset:-2px;border-radius:10px}.assessment-stack--drop-valid{outline:2px dashed var(--green);background:var(--green-bg)}.assessment-stack--drop-invalid{outline:2px dashed var(--red);background:var(--red-bg)}.assessment-dialog{width:min(520px,100%)}.assessment-dialog-lead{color:var(--gray-600);margin:0 0 14px;font-size:13px}.assessment-dialog-section{margin-bottom:16px}.assessment-dialog-heading{letter-spacing:.04em;text-transform:uppercase;color:var(--gray-500);margin:0 0 8px;font-size:12px;font-weight:700}.assessment-dialog-empty{color:var(--gray-500);margin:0;font-size:13px}.assessment-busy-list,.assessment-lead-list{flex-direction:column;gap:6px;max-height:min(44vh,330px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.assessment-busy-list li{align-items:baseline;gap:10px;font-size:13px;display:flex}.assessment-busy-time{color:#8a5a00;font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:700}.assessment-busy-body{flex-direction:column;min-width:0;display:flex}.assessment-busy-label{color:var(--navy)}.assessment-busy-where{color:var(--gray-500);font-size:12px}.assessment-lead-btn{text-align:left;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--gray-300);background:var(--white);width:100%;color:var(--navy);flex-direction:column;gap:2px;padding:8px 12px;font-family:inherit;display:flex}.assessment-lead-name{font-size:14px;font-weight:600}.assessment-lead-where{color:var(--gray-500);font-size:12px}.assessment-lead-travel{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.assessment-slot-group+.assessment-slot-group{margin-top:10px}.assessment-slot-group-label{color:var(--gray-500);margin:0 0 5px;font-size:12px;font-weight:600}.assessment-slot-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;display:grid}.assessment-slot-btn,.assessment-lead-btn{cursor:pointer;border:1px solid var(--gray-300);background:var(--white);color:var(--navy);font-family:inherit}.assessment-slot-btn{border-radius:var(--radius-sm);text-align:center;font-variant-numeric:tabular-nums;padding:6px 4px;font-size:12px;font-weight:600}.assessment-slot-btn--held{color:#8a5a00;background:#fffaf0;border-style:dashed;border-color:#e0b155}.assessment-slot-btn--selected,.assessment-lead-btn--selected{background:#fdf6e3;border-style:solid;border-color:#d99b1e}.assessment-lead-btn:hover,.assessment-slot-btn:hover,.assessment-lead-btn:focus-visible,.assessment-slot-btn:focus-visible{border-color:#d99b1e}.assessment-dialog-summary{border-radius:var(--radius-sm);background:var(--gray-100);color:var(--navy);margin:0 0 10px;padding:7px 10px;font-size:13px;font-weight:600}.assessment-dialog-confirm{border-radius:var(--radius-sm);color:var(--gray-700);background:#fffbeb;border:1px solid #fde68a;margin:0 0 10px;padding:8px 10px;font-size:13px;line-height:1.4}.assessment-dialog-error{color:var(--red,#b42318);margin:0 0 12px;font-size:13px}.assessment-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.assessment-dialog-remove{margin-right:auto}.assessment-dialog-readonly{text-align:right;width:100%;font-style:italic}.assessment-slot-btn:disabled,.assessment-lead-btn:disabled{cursor:default;opacity:.65}.assessment-lead-chosen{border-radius:var(--radius-sm);background:#fdf6e3;border:1px solid #d99b1e;align-items:baseline;gap:8px;padding:8px 12px;display:flex}.assessment-lead-chosen-name{color:var(--navy);font-size:13px;font-weight:700}.assessment-lead-chosen-where{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--gray-600);flex:1;font-size:12px;overflow:hidden}.assessment-lead-change{border:1px solid var(--gray-300);background:var(--white);color:var(--gray-600);cursor:pointer;border-radius:999px;flex-shrink:0;padding:2px 8px;font-family:inherit;font-size:11px;font-weight:600}.assessment-lead-change:hover,.assessment-lead-change:focus-visible{color:var(--navy);border-color:#d99b1e}.assessment-day-strip{grid-template-columns:repeat(11,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.assessment-day-btn{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);width:100%;color:var(--navy);cursor:pointer;flex-direction:column;align-items:center;gap:1px;padding:5px 2px;font-family:inherit;display:flex}.asp-dialog{flex-direction:column;width:100%;max-width:560px;max-height:90svh;padding:0;display:flex;overflow:hidden}@media (width>=1024px){.asp-dialog{max-height:82vh}}.asp-header{border-bottom:1px solid var(--gray-200);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 12px;display:flex}.asp-title{letter-spacing:-.02em;color:var(--navy);margin:0;font-size:17px;font-weight:800;line-height:1.25}.asp-body{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:14px 16px 16px;overflow-y:auto}.asp-hero{color:var(--navy);margin:0;font-size:16px;font-weight:700}.asp-hint{color:var(--gray-500);margin:0 0 10px;font-size:13px}.asp-day{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.asp-row{box-sizing:border-box;border:1px solid var(--gray-200);background:var(--white);text-align:left;width:100%;color:var(--navy);border-radius:10px;align-items:center;gap:10px;padding:14px;font-family:inherit;display:flex}.asp-row-time{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:15px;font-weight:700}.asp-row-detail{min-width:0;color:var(--gray-500);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.asp-row--hour{grid-template-columns:minmax(0,1fr);row-gap:6px;padding:8px;display:grid}.asp-row--picked{background:#fdf6e3;border-color:#d99b1e}.asp-row--busy{background:var(--gray-100);border-color:var(--gray-200);color:var(--gray-600)}.asp-row--busy .asp-row-time{color:#8a5a00}.asp-latest-note{color:#8a5a00;margin:0 0 2px 2px;font-size:12px;font-weight:600}.asp-quarter-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;min-width:0;display:grid}.asp-quarter{border:1px solid var(--gray-300);background:var(--white);font-variant-numeric:tabular-nums;color:var(--navy);cursor:pointer;border-radius:8px;padding:11px 4px;font-family:inherit;font-size:14px;font-weight:700}.asp-quarter:hover,.asp-quarter:focus-visible{border-color:#d99b1e}.asp-quarter--on{background:#fdf6e3;border-color:#d99b1e}.asp-quarter:disabled{cursor:default;border-style:dashed;border-color:var(--gray-200);background:var(--gray-50);color:var(--gray-400)}.asp-empty{color:var(--gray-500);margin:0;font-size:13px}.asp-error{color:var(--red);margin:12px 0 0;font-size:13px}.asp-back{color:var(--gray-600);cursor:pointer;background:0 0;border:0;margin:0 0 10px;padding:0;font-family:inherit;font-size:13px;font-weight:600;display:inline-block}.asp-leads{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.asp-lead{box-sizing:border-box;border:1px solid var(--gray-200);background:var(--white);text-align:left;width:100%;color:var(--navy);cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:13px 14px;font-family:inherit;display:flex}.asp-lead strong{font-size:15px;font-weight:700}.asp-lead span{color:var(--gray-500);font-size:13px}.asp-lead:hover,.asp-lead:focus-visible{border-color:var(--gray-400)}.asp-lead--on{background:#fdf6e3;border-color:#d99b1e}.asp-footer{padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--gray-200);background:var(--white);flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.asp-primary{min-width:120px}@media (width<=720px){.asp-dialog{border-radius:0;max-width:none;height:100svh;max-height:100svh}.asp-row{padding:14px}.asp-quarter{padding:13px 4px}.asp-footer .btn-primary,.asp-footer .btn-secondary{flex:1;min-height:48px}}.assessment-day-name{letter-spacing:.04em;color:var(--gray-500);font-size:9px;font-weight:700}.assessment-day-num{font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.assessment-day-open{color:var(--gray-600);font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.assessment-day-btn:hover,.assessment-day-btn:focus-visible{border-color:#d99b1e}.assessment-day-btn--selected{background:#fdf6e3;border-color:#d99b1e}.assessment-day-btn--closed{cursor:default;opacity:.45;background:var(--gray-100)}.assessment-day-btn--closed .assessment-day-open{color:var(--gray-500)}.assessment-slot-time{line-height:1.3}.asx-pop{z-index:500;border:1px solid var(--gray-400);border-radius:var(--radius-sm);background:var(--white);flex-direction:column;gap:6px;width:258px;padding:9px;display:flex;position:fixed;transform:translate(-50%,-100%);box-shadow:0 12px 32px #0f172a3d}.asx-pop--below{transform:translate(-50%)}.asx-question{letter-spacing:.04em;text-transform:uppercase;color:var(--gray-500);align-items:center;gap:6px;margin:0;padding:0 2px;font-size:11px;font-weight:800;display:flex}.asx-question-note{letter-spacing:0;text-transform:none;color:var(--navy);margin-left:auto;font-size:11px;font-weight:700}.asx-back{border:1px solid var(--gray-300);background:var(--white);width:18px;height:18px;color:var(--navy);cursor:pointer;border-radius:4px;padding:0;font-family:inherit;font-size:12px;line-height:1}.asx-back:hover{border-color:var(--indigo);color:var(--indigo)}.asx-row{align-items:center;gap:6px;display:flex}.asx-times{flex:1;grid-template-columns:repeat(3,1fr);gap:4px;min-width:0;display:grid}.asx-time{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);color:var(--navy);cursor:pointer;padding:8px 2px;font-family:inherit;font-size:12px;font-weight:700}.asx-time:hover:not(:disabled){border-color:var(--indigo);background:var(--indigo-bg);color:var(--indigo)}.asx-time--on{border-color:var(--indigo);background:var(--indigo);color:var(--white)}.asx-managers{flex-direction:column;gap:4px;display:flex}.asx-choice{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);text-align:left;color:var(--navy);cursor:pointer;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:700}.asx-choice:hover,.asx-choice--on{border-color:var(--indigo);background:var(--indigo-bg);color:var(--indigo)}.asx-arrow{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);width:26px;height:26px;color:var(--navy);cursor:pointer;flex-shrink:0;padding:0;font-family:inherit;font-size:15px;line-height:1}.asx-arrow:hover:not(:disabled){background:var(--indigo-bg);border-color:var(--indigo);color:var(--indigo)}.asx-arrow:disabled{opacity:.35;cursor:default}.asx-value{min-width:0;color:var(--navy);text-align:center;flex:1;justify-content:center;align-items:baseline;gap:4px;font-size:13px;font-weight:700;display:flex}.asx-value-main{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.asx-value-detail{color:var(--gray-500);flex-shrink:0;font-size:11px;font-weight:600}.asx-book{border:1px solid var(--indigo);border-radius:var(--radius-sm);background:var(--indigo);letter-spacing:.04em;text-transform:uppercase;color:var(--white);cursor:pointer;margin-top:2px;padding:7px 10px;font-family:inherit;font-size:12px;font-weight:700}.asx-book:hover:not(:disabled){filter:brightness(1.06)}.asx-book:disabled{opacity:.5;cursor:default}.asx-empty,.asx-error{text-align:center;color:var(--gray-600);margin:0;padding:4px 2px;font-size:11px;font-weight:600}.asx-error{color:var(--red)}.desktop-grid--find-dates .grid-header-row,.desktop-grid--find-dates .grid-pool-row,.desktop-grid--find-dates .grid-stacked-row{grid-template-columns:var(--label-width,90px) repeat(var(--day-count), var(--day-width,180px)) var(--find-dates-width,156px)}.find-dates-cta{width:var(--find-dates-width,156px);border:none;border-left:1px solid var(--gray-200);background:var(--gray-100);min-height:100%;color:var(--navy);text-align:center;cursor:pointer;box-sizing:border-box;border-radius:0;flex-direction:column;justify-content:center;align-self:stretch;align-items:center;gap:14px;margin:0;padding:18px 12px;font-family:inherit;line-height:1.2;display:flex}:is(.desktop-grid--find-dates:has(.find-dates-cta:hover) .find-dates-cta,.desktop-grid--find-dates:has(.find-dates-cta-fill:hover) .find-dates-cta,.desktop-grid--find-dates:has(.find-dates-cta:focus-visible) .find-dates-cta,.desktop-grid--find-dates:has(.find-dates-cta:hover) .find-dates-cta-fill,.desktop-grid--find-dates:has(.find-dates-cta-fill:hover) .find-dates-cta-fill,.desktop-grid--find-dates:has(.find-dates-cta:focus-visible) .find-dates-cta-fill){background:var(--gray-50);border-left-color:var(--gray-400)}:is(.desktop-grid--find-dates:has(.find-dates-cta:hover) .find-dates-cta,.desktop-grid--find-dates:has(.find-dates-cta-fill:hover) .find-dates-cta,.desktop-grid--find-dates:has(.find-dates-cta:focus-visible) .find-dates-cta){color:var(--navy)}.find-dates-cta-label{letter-spacing:-.01em;max-width:8em;font-size:15px;font-weight:800;line-height:1.2}.find-dates-cta-hours{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);flex-direction:column;align-items:center;gap:2px;padding:10px 14px;display:flex}.find-dates-cta-hours-value{letter-spacing:-.02em;color:var(--navy);font-size:26px;font-weight:600;line-height:1}.find-dates-cta-hours-caption{letter-spacing:.06em;color:var(--gray-500);font-size:9px;font-weight:700}.find-dates-cta-arrow{border:1px solid var(--gray-300);background:var(--white);width:34px;height:34px;color:var(--navy);border-radius:50%;justify-content:center;align-items:center;font-size:17px;font-weight:600;line-height:1;transition:transform .15s,border-color .15s;display:inline-flex}:is(.desktop-grid--find-dates:has(.find-dates-cta:hover) .find-dates-cta-arrow,.desktop-grid--find-dates:has(.find-dates-cta-fill:hover) .find-dates-cta-arrow,.desktop-grid--find-dates:has(.find-dates-cta:focus-visible) .find-dates-cta-arrow){border-color:var(--gray-500);transform:translate(3px)}.find-dates-cta-fill{width:var(--find-dates-width,156px);border:none;border-left:1px solid var(--gray-200);background:var(--gray-100);cursor:pointer;box-sizing:border-box;min-height:100%;margin:0;padding:0;font-family:inherit}.desktop-grid-wrap{--day-width:180px;--label-width:72px;flex:1;padding:0 0 16px;overflow:auto}.desktop-grid-wrap--pannable{cursor:grab}.desktop-grid-wrap--pannable .client-shift,.desktop-grid-wrap--pannable .shift-member,.desktop-grid-wrap--pannable .pool-member,.desktop-grid-wrap--pannable button,.desktop-grid-wrap--pannable select{cursor:unset}.desktop-grid-wrap--pannable .shift-member,.desktop-grid-wrap--pannable .pool-member:not(.pool-member--blocked):not(.pool-member--disabled){cursor:grab}.desktop-grid-wrap--pannable .client-shift--selectable,.desktop-grid-wrap--pannable .client-shift--adjustable,.desktop-grid-wrap--pannable .client-shift--click-fix,.desktop-grid-wrap--pannable .shift-member--clickable{cursor:pointer}.desktop-grid-wrap--panning,.desktop-grid-wrap--panning *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}.desktop:not(.desktop--mobile) .desktop-grid-wrap{padding-bottom:120px}.desktop-grid{width:calc(var(--label-width,90px) + var(--day-count) * var(--day-width,180px));min-width:calc(var(--label-width,90px) + var(--day-count) * var(--day-width,180px));flex-direction:column;display:flex}.grid-header-row{z-index:4;position:sticky;top:0}.grid-corner{border-bottom:1px solid var(--gray-200);background:var(--gray-50);z-index:5;position:sticky;left:0}.grid-day-header{border-bottom:1px solid var(--gray-200);border-left:1px solid var(--gray-100);background:var(--gray-50);width:var(--day-width,180px);box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;padding:10px 4px;display:flex;position:relative}.day-gap-marker{border:1px solid var(--gray-200);color:var(--gray-500);white-space:nowrap;z-index:2;background:#fff;border-radius:999px;align-items:center;gap:3px;padding:1px 5px;font-size:9px;font-weight:600;line-height:1.5;display:flex;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.grid-day-header--today{background:#fefce8}.grid-day-header--past{opacity:.55}.grid-day-header--past .day-name,.grid-day-header--past .day-num{color:var(--gray-400)}.grid-day-header--inactive{background:var(--gray-100)}.grid-day-header--inactive .day-name,.grid-day-header--inactive .day-num{color:var(--gray-400)}.grid-day-header--inactive.grid-day-header--today{background:#f5f5f0}.day-name{letter-spacing:.08em;color:var(--gray-500);font-size:10px;font-weight:700}.day-num{color:var(--navy);font-size:18px;font-weight:700}.grid-row-label{border-right:1px solid var(--gray-200);border-bottom:1px solid var(--gray-100);background:var(--gray-50);z-index:3;padding:12px 4px 12px 8px;position:sticky;left:0}.grid-row-label--client{border:none;border-right:1px solid var(--gray-200);border-bottom:1px solid var(--gray-100);width:100%;font:inherit;text-align:left;cursor:pointer;align-items:center;gap:6px;padding:10px 4px 10px 8px;display:flex}.grid-row-label--client:hover{background:var(--gray-100)}.grid-row-label--selected{background:var(--indigo-bg);box-shadow:inset 3px 0 0 var(--indigo)}.row-label-client-name{color:var(--navy);text-overflow:ellipsis;font-size:11px;font-weight:600;line-height:1.3;overflow:hidden}.row-label-title{color:var(--gray-600);font-size:12px;font-weight:600}.grid-pool-row{align-items:stretch}.grid-pool-cell{border-left:1px solid var(--gray-100);border-bottom:1px solid var(--gray-100);background:var(--gray-50);width:var(--day-width,180px);box-sizing:border-box;flex-direction:column;display:flex}.desktop--dragging-from-shift .grid-pool-cell--droppable .pool-member,.desktop--dragging-from-shift .grid-pool-cell--droppable .day-pool-label,.desktop--dragging-from-shift .grid-pool-cell--droppable .pool-empty{pointer-events:none}.grid-pool-cell--inactive{background:var(--gray-100)}.grid-client-cell{border-left:1px solid var(--gray-100);border-bottom:1px solid var(--gray-100);background:var(--white);vertical-align:top;min-height:88px;width:var(--day-width,180px);box-sizing:border-box;padding:8px}.grid-client-cell--inactive{background:var(--gray-50)}.grid-stacked-cell{border-left:1px solid var(--gray-100);border-bottom:1px solid var(--gray-100);background:var(--white);width:var(--day-width,180px);box-sizing:border-box;vertical-align:top;flex-direction:column;padding:8px;display:flex}.grid-stacked-row--everyone-scheduled{min-height:168px}.grid-everyone-scheduled{border-left:1px solid var(--gray-100);border-bottom:1px solid var(--gray-100);box-sizing:border-box;text-align:center;min-height:168px;font-family:var(--font);background:linear-gradient(160deg, var(--indigo-bg) 0%, var(--white) 45%, var(--violet-bg) 100%);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:28px 24px;animation:.55s ease-out both everyone-scheduled-in;display:flex}.grid-everyone-scheduled-title{letter-spacing:-.03em;color:var(--navy);text-wrap:balance;margin:0;font-family:inherit;font-size:clamp(1.5rem,2.4vw,2.25rem);font-weight:700;line-height:1.2;animation:.7s cubic-bezier(.22,1.2,.36,1) 80ms both everyone-scheduled-pop}.grid-everyone-scheduled-sub{letter-spacing:-.01em;max-width:32ch;color:var(--indigo);text-wrap:balance;margin:0;font-family:inherit;font-size:clamp(.95rem,1.4vw,1.2rem);font-weight:600;line-height:1.35;animation:.7s cubic-bezier(.22,1.2,.36,1) .18s both everyone-scheduled-pop}@keyframes everyone-scheduled-in{0%{opacity:0}to{opacity:1}}@keyframes everyone-scheduled-pop{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.grid-stacked-cell--today{background:var(--indigo-bg)}.grid-stacked-cell--past{background:var(--gray-50)}.grid-stacked-cards{flex-direction:column;gap:8px;display:flex}.grid-stacked-cards .client-shift{min-height:0}.client-cell-empty{min-height:72px}.grid-pool-cell .day-pool{border-top:none;flex-direction:column;display:flex}.grid-pool-cell .day-pool--available{flex-shrink:0;padding-bottom:4px}.grid-pool-cell .day-pool--available .day-pool-stack{flex:none;overflow:visible}.grid-pool-cell .day-pool--blocked{border-top:1px dashed var(--gray-300);background:var(--gray-100);flex:none;max-height:110px;margin-top:0;padding:0 8px 8px;overflow-y:auto}.day-pool--blocked .day-pool-label,.day-pool-label--blocked{color:var(--gray-400);margin:0;padding:8px 0 4px;line-height:1}.pool-member--blocked{cursor:default;opacity:.75;background:var(--gray-100);pointer-events:none;border-style:dashed}.pool-member--disabled{cursor:default;opacity:.6}.pool-member--drag-only{cursor:grab}.pool-member--drag-only:active{cursor:grabbing}.day-unavailable-text{letter-spacing:.06em;color:var(--gray-500);text-align:center;text-transform:uppercase;margin:0;font-size:10px;font-weight:700;line-height:1.4}.client-cards--others{border-top:1px dashed var(--gray-200);margin-top:auto;padding-top:8px}.grid-footer-cell--inactive{color:var(--gray-400)}.client-cards,.client-slots{flex-direction:column;flex:1;gap:8px;padding:8px;display:flex}.client-slot{flex:none;min-height:72px}.client-slot-spacer{border-radius:var(--radius-sm);border:1px dashed #0000;min-height:72px}.sidebar-view-all{border:1px solid var(--gray-200);border-radius:var(--radius-sm);background:var(--white);width:100%;color:var(--navy);cursor:pointer;text-align:left;margin-bottom:6px;padding:10px 12px;font-family:inherit;font-size:13px;font-weight:600;display:block}.sidebar-client--visible{background:var(--indigo-bg);border:1px solid var(--indigo);box-shadow:none}.sidebar-client--visible .sidebar-client-name{color:var(--indigo)}.sidebar-view-all--active{background:var(--indigo-bg);border-color:var(--indigo);color:var(--indigo)}.sidebar-view-all--primary{margin-bottom:12px;padding:16px 14px;font-size:15px;font-weight:700}.sidebar-section-toggle{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--gray-100);letter-spacing:.06em;text-transform:uppercase;width:100%;color:var(--navy);cursor:pointer;align-items:center;gap:8px;margin:12px 0 8px;padding:9px 10px;font-family:inherit;font-size:12px;font-weight:800;display:flex}.sidebar-section-toggle:hover,.sidebar-section-toggle:focus-visible{background:var(--gray-200);border-color:var(--gray-400)}.sidebar-section-caret{background:var(--white);border:1px solid var(--gray-300);width:18px;height:18px;color:var(--navy);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;line-height:1;display:inline-flex}.sidebar-section-count{background:var(--white);border:1px solid var(--gray-300);color:var(--gray-600);border-radius:999px;margin-left:auto;padding:2px 7px;font-size:10px;font-weight:700}.client-shift{border-radius:var(--radius-sm);min-height:72px;transition:box-shadow .15s,outline .1s,background .1s,border-color .1s,filter .15s;position:relative;overflow:visible}.client-shift--pending-delete{filter:saturate(.15)brightness(.82);border-color:var(--gray-400)!important;background:#b8c2cf!important}.client-shift--pending-delete .shift-member{pointer-events:none}.client-shift--pending-delete .shift-member-name,.client-shift--pending-delete .shift-member-role,.client-shift--pending-delete .shift-member-time,.client-shift--pending-delete .shift-member-hours{opacity:.75;text-decoration:line-through}.client-shift--pending-delete.client-shift--filled,.client-shift--pending-delete.client-shift--empty{border-left-width:4px}.client-shift-status-label{letter-spacing:.06em;text-transform:uppercase;border-radius:5px;align-items:center;padding:4px 10px;font-size:13px;font-weight:800;line-height:1.2;display:inline-flex}.client-shift-status-label--delete{color:var(--red);background:var(--red-bg);border:1px solid #b91c1c59;box-shadow:0 0 0 2px #fee2e2e6}.client-shift-status-label--draft{color:var(--gray-700);background:var(--gray-100);border:1px solid var(--gray-400);box-shadow:0 0 0 2px #f1f5f9f2}.client-shift-status-label--past{color:var(--gray-600);background:var(--gray-100);border:1px solid var(--gray-300);box-shadow:none;opacity:1;filter:none}.client-shift-status-label--empty{padding:8px 10px 0;display:block}.client-shift--empty{background:var(--white);border-top:3px dotted var(--gray-300);border-right:3px dotted var(--gray-300);border-bottom:3px dotted var(--gray-300);border-left-style:solid;border-left-width:4px}.client-shift--filled{border:1px solid #0000000f;border-left-width:4px;flex-direction:column;min-height:120px;display:flex}.client-shift--selectable{cursor:pointer}.client-shift--selectable:hover{box-shadow:0 0 0 1px #6366f173}.client-shift--focused.client-shift--green{box-shadow:0 0 0 3px #4ade80}.client-shift--focused.client-shift--teal{box-shadow:0 0 0 3px #2dd4bf}.client-shift--focused.client-shift--purple{box-shadow:0 0 0 3px #a78bfa}.client-shift--focused.client-shift--pink{box-shadow:0 0 0 3px #f472b6}.client-shift--focused.client-shift--orange{box-shadow:0 0 0 3px #fb923c}.client-shift--error{background:var(--red-bg)!important;border:2px solid var(--red)!important;border-left:4px solid var(--red)!important}.client-shift--spotlight{outline:3px solid var(--indigo);outline-offset:2px;animation:1.1s ease-out 3 client-shift-issue-pulse}@keyframes client-shift-issue-pulse{0%,to{box-shadow:0 0 #4f46e500}40%{box-shadow:0 0 0 7px #4f46e547}}@media (prefers-reduced-motion:reduce){.client-shift--spotlight{animation:none}}.client-shift--click-fix,.client-shift--click-fix .client-shift-status-label--draft,.client-shift-drop-badge--action{cursor:pointer}.client-shift-drop-badge--action:hover,.client-shift-drop-badge--action:focus-visible{filter:brightness(1.08);outline-offset:1px;outline:2px solid #ffffffd9}.client-shift--drop-valid{outline:2px dashed var(--green);outline-offset:-2px;background:var(--green-bg)!important;border:2px solid var(--green)!important;border-left:4px solid var(--green)!important}.client-shift--drop-invalid{outline:2px dashed var(--red);outline-offset:-2px;background:var(--red-bg)!important;border:2px solid var(--red)!important;border-left:4px solid var(--red)!important}.client-shift-drop-badge{background:var(--red);width:22px;height:22px;color:var(--white);box-shadow:var(--shadow-sm);pointer-events:auto;cursor:default;z-index:6;border-radius:4px;justify-content:center;align-items:center;font-size:13px;font-weight:800;line-height:1;display:flex;position:absolute;top:-10px;left:auto;right:-4px;transform:none}.shift-badge-tooltip{background:var(--navy);width:max-content;max-width:min(240px,100vw - 20px);color:var(--white);text-align:center;box-shadow:var(--shadow);z-index:10000;pointer-events:none;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:500;line-height:1.2;position:fixed}.shift-badge-tooltip--align-center{transform:translate(-50%)}.shift-badge-tooltip--align-left{text-align:left;transform:translate(0)}.shift-badge-tooltip--align-right{text-align:left;transform:translate(-100%)}.client-shift-drop-badge--passive{pointer-events:none;cursor:default}.client-shift-drop-badge--valid{background:var(--green);font-size:14px}.client-shift-drop-badge--warning{background:var(--yellow-bg);color:#a16207;border:1px solid #fde047;box-shadow:0 1px 3px #a1620726}.client-shift-drop-badge--alert{background:var(--red)}.client-shift--green{border-left-color:#4ade80}.client-shift--teal{border-left-color:#2dd4bf}.client-shift--purple{border-left-color:#a78bfa}.client-shift--pink{border-left-color:#f472b6}.client-shift--orange{border-left-color:#fb923c}.client-shift--filled.client-shift--green{background:#ecfdf5}.client-shift--filled.client-shift--teal{background:#f0fdfa}.client-shift--filled.client-shift--purple{background:#f5f3ff}.client-shift--filled.client-shift--pink{background:#fdf2f8}.client-shift--filled.client-shift--orange{background:#fff7ed}.save-issues-dialog-lead{color:var(--gray-600);margin:0 0 10px;font-size:13px;line-height:1.4}.save-issues-list{flex-direction:column;gap:6px;max-height:240px;margin:0 0 14px;padding:0;list-style:none;display:flex;overflow-y:auto}.save-issues-item{border:1px solid var(--gray-200);background:var(--gray-50);border-radius:0;padding:8px 10px}.save-issues-item:has(.save-issues-item-btn){padding:0}.save-issues-item-btn{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:8px 10px;font-family:inherit;display:block}.save-issues-item-btn:hover,.save-issues-item-btn:focus-visible{background:var(--indigo-bg)}.save-issues-item-btn:hover .save-issues-item-main{text-decoration:underline}.save-issues-dialog-hint{color:var(--gray-500);margin-top:2px;font-size:12px;display:block}.save-issues-item-main{color:var(--navy);font-size:13px;line-height:1.3;display:block}.save-issues-item-sep{color:var(--gray-400);margin:0 6px}.save-issues-item-detail{color:var(--gray-600);margin-top:3px;font-size:12px;line-height:1.3;display:block}.save-issues-dialog-actions{justify-content:flex-end;display:flex}.save-issues-dialog-actions .btn-primary{min-width:96px}.client-shift--has-badge .client-shift-header{padding-right:10px}.client-shift-header{justify-content:space-between;align-items:center;padding:8px 10px 4px;display:flex}.client-shift-name{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;max-width:70%;margin-right:auto;font-size:11px;font-weight:700;overflow:hidden}.client-shift-hours{color:var(--gray-600);white-space:nowrap;flex-shrink:0;font-size:10px;font-weight:700}.client-shift-team{flex-direction:column;flex:1;gap:4px;padding:0 6px 6px;display:flex}.shift-member{cursor:grab;background:#ffffffbf;border:1px solid #fffc;border-radius:6px;flex-direction:column;gap:1px;padding:4px 8px;display:flex;position:relative}.shift-member--exception{padding-right:52px}.shift-member-deny{appearance:none;color:#a16207;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;z-index:2;background:#fef9c3;border:1px solid #fde047;border-radius:4px;padding:2px 5px;font-size:9px;font-weight:700;line-height:1.2;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.shift-member-deny:hover:not(:disabled){background:#fde047}.shift-member-deny:disabled{opacity:.55;cursor:default}.shift-member--dragging{opacity:.35}.shift-drag-ghost{z-index:10002;pointer-events:none;position:fixed;transform:translate(-50%,-50%)}.shift-drag-ghost-pill{border:1px solid var(--gray-200);min-width:92px;max-width:140px;box-shadow:var(--shadow);background:#fffffff7;border-radius:6px;padding:5px 8px;position:relative}.shift-drag-ghost-pill--remove-ready{padding-right:24px}.shift-drag-ghost-label{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;display:block;overflow:hidden}.shift-drag-ghost-trash{width:20px;height:20px;color:var(--gray-500);filter:drop-shadow(0 1px 2px #0f172a1f);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:-8px;right:-8px}.shift-drag-ghost-trash--ready{color:var(--red);animation:.85s ease-in-out infinite shift-drag-trash-pulse}@keyframes shift-drag-trash-pulse{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}.shift-member:active{cursor:grabbing;opacity:.7}.shift-member--lead{background:#fffffff2;border:1px solid #4f46e533;box-shadow:0 1px 3px #4f46e51a}.shift-member-time{color:var(--gray-500);white-space:nowrap;flex-shrink:0;font-size:10px;font-weight:600}.shift-member-hours{color:var(--navy);white-space:nowrap;flex-shrink:0;font-weight:700}.shift-member-detail{min-width:0;color:var(--navy);align-items:baseline;gap:0;font-size:11px;font-weight:600;line-height:1.3;display:flex}.shift-member-detail--named-role{justify-content:space-between;gap:6px;width:100%}.shift-member-detail--named-role .shift-member-name{text-overflow:clip;flex:auto}.shift-member-detail--named-role .shift-member-role{color:var(--gray-500);letter-spacing:.03em;margin-left:auto;font-size:9px;font-weight:700}.shift-member-role{font-size:inherit;font-weight:inherit;color:inherit;letter-spacing:normal;white-space:nowrap;flex-shrink:0}.shift-member-name{font-size:inherit;font-weight:inherit;color:inherit;letter-spacing:normal;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shift-member-sep{font-size:inherit;font-weight:inherit;color:var(--gray-500);flex-shrink:0}.client-shift-footer .client-shift-status-label--draft{box-sizing:border-box;flex:auto;justify-content:center;align-items:center;min-width:0;display:flex}.client-shift-footer{flex-flow:wrap;align-items:center;gap:6px 8px;margin-top:auto;padding:4px 8px 8px;display:flex}.shift-warning{color:var(--yellow);font-size:10px;font-weight:600}.shift-warning--add-team{letter-spacing:.06em;color:var(--red);text-transform:uppercase;font-size:11px;font-weight:800}.shift-delete{width:22px;height:22px;color:var(--gray-500);cursor:pointer;background:#0000000f;border:none;border-radius:50%;flex-shrink:0;margin-left:auto;font-size:14px;line-height:1}.client-shift-dismiss{width:20px;height:20px;color:var(--gray-500);cursor:pointer;background:#0000000f;border:none;border-radius:50%;padding:0;font-size:13px;line-height:1;position:absolute;bottom:6px;right:6px}.client-shift-dismiss:hover{color:var(--navy);background:#0000001f}.client-shift--empty:has(.client-shift-dismiss) .client-shift-placeholder{padding-bottom:24px}.client-shift-placeholder{text-align:center;color:var(--gray-400);margin:0;padding:8px 10px 12px;font-size:15px;font-style:italic;font-weight:400}.client-shift--add-shift{border-left:3px dotted var(--gray-300);cursor:pointer;justify-content:center;align-items:center;display:flex}.grid-stacked-cell .client-shift--add-shift{min-height:58px}.client-shift--add-shift:hover,.client-shift--add-shift:focus-visible{border-color:var(--indigo);background:var(--indigo-bg)}.client-shift--add-shift:hover .add-shift-card-label,.client-shift--add-shift:focus-visible .add-shift-card-label{color:var(--indigo)}.add-shift-card-label{color:var(--gray-500);align-items:center;gap:6px;padding:8px 10px;font-style:normal;font-weight:600;display:inline-flex}.add-shift-card-plus{margin-top:-2px;font-size:1.2em;font-weight:700;line-height:1}.client-shift--client-target{border-color:var(--indigo);background:var(--indigo-bg);border-left-style:dashed;animation:1.6s ease-in-out infinite add-shift-beckon}.client-shift--client-target .add-shift-card-label{color:var(--indigo)}.client-shift--client-over{box-shadow:0 0 0 2px var(--indigo) inset;border-style:solid;animation:none}.client-shift--client-over .add-shift-card-label{opacity:0}@keyframes add-shift-beckon{0%,to{background:var(--indigo-bg)}50%{background:var(--white)}}.sidebar-drag-ghost{z-index:400;border:1px solid var(--gray-400);border-radius:var(--radius-sm);background:var(--white);color:var(--navy);pointer-events:none;box-sizing:border-box;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:600;display:flex;position:fixed;top:0;left:0;box-shadow:0 10px 24px #0f172a38}.sidebar-drag-ghost--docked{border-color:var(--indigo);color:var(--indigo);transition:transform .22s cubic-bezier(.34,1.28,.64,1),box-shadow .22s;box-shadow:0 4px 10px #0f172a24}.sidebar-drag-ghost-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (prefers-reduced-motion:reduce){.client-shift--client-target{animation:none}.sidebar-drag-ghost--docked{transition:none}}.sidebar-client--dragging{opacity:.5}.add-shift-dialog{max-width:560px}.add-shift-dialog-lead{color:var(--gray-600);margin:0 0 14px;font-size:13px}.add-shift-dialog-empty{text-align:center;color:var(--gray-500);margin:0;padding:18px 0;font-size:14px}.add-shift-client-grid{grid-template-columns:1fr;gap:8px;max-height:60vh;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.add-shift-client-grid--two-col{grid-template-columns:1fr 1fr}.add-shift-client-tile{border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);width:100%;height:48px;color:var(--navy);text-align:left;cursor:pointer;align-items:center;gap:8px;padding:0 12px;font-family:inherit;font-size:14px;display:flex}.add-shift-client-grid--two-col .add-shift-client-tile{height:44px;padding:0 10px;font-size:13px}.add-shift-client-tile:hover,.add-shift-client-tile:focus-visible{border-color:var(--indigo);background:var(--indigo-bg)}.add-shift-client-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.add-shift-client-sep{color:var(--gray-400)}.add-shift-client-hours{white-space:nowrap;color:var(--gray-600);flex-shrink:0}.day-pool{border-top:2px dashed var(--gray-200);background:0 0;min-height:80px;padding:8px}.day-pool--inactive{background:var(--gray-100)}.day-pool--inactive .day-pool-label{color:var(--gray-400)}.day-pool-label{text-transform:uppercase;letter-spacing:.07em;color:var(--gray-500);margin:0 0 6px;font-size:10px;font-weight:700}.day-pool-stack{flex-direction:column;flex:auto;gap:4px;min-height:0;display:flex;overflow-y:auto}.pool-member{background:var(--white);border:1px solid var(--gray-200);cursor:grab;text-align:left;box-sizing:border-box;border-radius:6px;justify-content:space-between;align-items:center;gap:6px;width:100%;padding:6px 8px;font-family:inherit;font-size:11px;display:flex;overflow:hidden}.pool-member--muted{opacity:.55;background:var(--gray-100);border-style:dashed}.pool-member--other{opacity:.7;border-color:var(--gray-300)}.pool-member--blocked.pool-member--lead{border-color:var(--gray-300);background:var(--gray-100)}.shift-member--clickable{cursor:pointer}.shift-member--clickable:hover{background:#fffffff2;box-shadow:0 0 0 1px #4f46e540}.pool-member:active{cursor:grabbing;opacity:.7}.pool-member--lead{background:var(--indigo-bg);border-color:#c7d2fe}.pool-member-name{color:var(--navy);white-space:nowrap;text-overflow:clip;flex:none;font-weight:600;overflow:visible}.pool-member-meta{color:var(--gray-500);white-space:nowrap;flex:none;font-size:10px}.pool-empty{color:var(--gray-400);text-align:center;margin:0;padding:8px;font-size:11px}.grid-footer-label{color:var(--gray-600);border-top:1px solid var(--gray-200);background:var(--gray-50);z-index:3;padding:10px;font-size:12px;font-weight:600;position:sticky;left:0}.grid-footer-cell{text-align:center;color:var(--navy);border-top:1px solid var(--gray-200);border-left:1px solid var(--gray-100);background:var(--gray-50);width:var(--day-width,180px);box-sizing:border-box;padding:10px;font-size:13px;font-weight:700}@media (width>=1024px){#root{align-items:stretch}.view-toggle{top:16px;right:24px}}@media (width<=1280px){.desktop-sidebar{width:224px;padding:16px 10px}.desktop-topbar-save-col,.desktop--sidebar-collapsed .desktop-topbar-save-col{width:224px}.desktop-header{padding:12px 16px}}@media (width<=1100px){.desktop-sidebar{width:224px;padding:14px 8px}.desktop-topbar-save-col,.desktop--sidebar-collapsed .desktop-topbar-save-col{width:224px}.btn-publish{width:196px;min-height:60px}.btn-publish--compact{width:auto;min-height:60px}.btn-undo-icon{min-height:60px}.sidebar-client-name{font-size:12px}.sidebar-client-left-value{font-size:18px}.desktop-toolbar{padding:8px 12px}.toolbar-hint{display:none}}.desktop-grid-wrap[data-grid-density=cozy] .grid-day-header{padding:8px 2px}.desktop-grid-wrap[data-grid-density=cozy] .day-num{font-size:16px}.desktop-grid-wrap[data-grid-density=cozy] .grid-client-cell,.desktop-grid-wrap[data-grid-density=cozy] .grid-stacked-cell{padding:6px}.desktop-grid-wrap[data-grid-density=cozy] .client-shift--filled{min-height:108px}.desktop-grid-wrap[data-grid-density=compact] .grid-day-header{padding:6px 2px}.desktop-grid-wrap[data-grid-density=compact] .day-name{font-size:9px}.desktop-grid-wrap[data-grid-density=compact] .day-num{font-size:15px}.desktop-grid-wrap[data-grid-density=compact] .grid-row-label{padding:8px 6px}.desktop-grid-wrap[data-grid-density=compact] .row-label-client-name{font-size:10px}.desktop-grid-wrap[data-grid-density=compact] .grid-client-cell,.desktop-grid-wrap[data-grid-density=compact] .grid-stacked-cell,.desktop-grid-wrap[data-grid-density=compact] .grid-pool-cell{padding:4px}.desktop-grid-wrap[data-grid-density=compact] .client-shift--filled{min-height:96px}.desktop-grid-wrap[data-grid-density=compact] .client-shift-header{padding:6px 8px 2px}.desktop-grid-wrap[data-grid-density=compact] .client-shift-name{font-size:10px}.desktop-grid-wrap[data-grid-density=compact] .client-shift-team{gap:3px;padding:0 4px 4px}.desktop-grid-wrap[data-grid-density=compact] .shift-member{padding:3px 6px}.desktop-grid-wrap[data-grid-density=compact] .shift-member-detail{font-size:10px}.desktop-grid-wrap[data-grid-density=compact] .pool-member{padding:4px 6px;font-size:10px}.desktop--mobile .desktop-grid-wrap[data-grid-density=compact] .pool-member-meta{display:none}.desktop-grid-wrap[data-grid-density=compact] .client-shift-status-label{padding:3px 8px;font-size:11px}.desktop-grid-wrap[data-grid-density=tight] .grid-day-header{padding:5px 1px}.desktop-grid-wrap[data-grid-density=tight] .day-num{font-size:13px}.desktop-grid-wrap[data-grid-density=tight] .grid-row-label--client{gap:4px;padding:6px}.desktop-grid-wrap[data-grid-density=tight] .sidebar-dot{width:8px;height:8px}.desktop-grid-wrap[data-grid-density=tight] .client-shift--filled{min-height:84px}.desktop--mobile .desktop-grid-wrap[data-grid-density=tight] .shift-member-time{display:none}.desktop-grid-wrap[data-grid-density=tight] .client-shift-footer{padding:2px 6px 4px}.desktop-grid-wrap[data-grid-density=tight] .shift-warning--add-team{font-size:9px}.desktop-grid-wrap[data-grid-density=tight] .day-pool-label{margin-bottom:2px;font-size:8px}.desktop-grid-wrap[data-grid-density=tight] .client-shift-drop-badge{width:18px;height:18px;font-size:11px;top:-8px;right:-3px}.desktop-grid-wrap[data-grid-density=minimal] .day-num{font-size:12px}.desktop-grid-wrap[data-grid-density=minimal] .row-label-title,.desktop-grid-wrap[data-grid-density=minimal] .row-label-client-name{font-size:9px}.desktop-grid-wrap[data-grid-density=minimal] .grid-client-cell,.desktop-grid-wrap[data-grid-density=minimal] .grid-stacked-cell,.desktop-grid-wrap[data-grid-density=minimal] .grid-pool-cell{min-height:72px;padding:3px}.desktop-grid-wrap[data-grid-density=minimal] .client-shift--filled{min-height:72px}.desktop-grid-wrap[data-grid-density=minimal] .client-shift-header{padding:4px 6px 2px}.desktop-grid-wrap[data-grid-density=minimal] .client-shift-hours{font-size:9px}.desktop-grid-wrap[data-grid-density=minimal] .client-shift-name{max-width:58%;font-size:9px}.desktop-grid-wrap[data-grid-density=minimal] .shift-member{border-radius:4px;padding:2px 5px}.desktop-grid-wrap[data-grid-density=minimal] .shift-member-detail{font-size:9px;line-height:1.15}.desktop-grid-wrap[data-grid-density=minimal] .shift-member-sep{display:none}.desktop-grid-wrap[data-grid-density=minimal] .shift-member-role:after{content:" "}.desktop-grid-wrap[data-grid-density=minimal] .client-shift-status-label,.desktop-grid-wrap[data-grid-density=minimal] .shift-warning{letter-spacing:.03em;padding:2px 6px;font-size:8px}.desktop-grid-wrap[data-grid-density=minimal] .shift-delete{width:18px;height:18px;font-size:12px}.desktop-grid-wrap[data-grid-density=minimal] .pool-member{border-radius:4px;padding:3px 5px;font-size:9px}.desktop-grid-wrap[data-grid-density=minimal] .grid-footer-cell,.desktop-grid-wrap[data-grid-density=minimal] .grid-footer-label{padding:6px 4px;font-size:10px}@media (width<=1023px){#root{align-items:stretch}.desktop--mobile{min-height:100svh;max-height:100svh;display:block;position:relative;overflow:hidden}.desktop--mobile .desktop-body{display:contents}.desktop--mobile .desktop-main{min-width:0;height:100svh;max-height:100svh;padding-bottom:calc(64px + env(safe-area-inset-bottom,0px));overflow:auto}.mobile-sidebar-backdrop{z-index:280;cursor:pointer;background:#0f172a8c;border:none;margin:0;padding:0;position:fixed;inset:0}.desktop--mobile .desktop-sidebar{z-index:300;border-right:1px solid var(--gray-200);background:var(--navy-dark);width:min(300px,86vw);color:var(--white);pointer-events:auto;padding:16px 12px;transition:transform .24s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);box-shadow:8px 0 32px #0f172a59}.desktop--mobile.desktop--sidebar-open .desktop-sidebar{transform:translate(0)}.desktop--mobile .sidebar-title,.desktop--mobile .sidebar-client-name{color:var(--white)}.desktop--mobile .sidebar-client-purchased,.desktop--mobile .sidebar-client-left-label{color:var(--gray-300)}.desktop--mobile .sidebar-section-toggle{color:var(--white);background:#ffffff14;border-color:#ffffff29}.desktop--mobile .sidebar-section-toggle:hover,.desktop--mobile .sidebar-section-toggle:focus-visible{background:#ffffff24;border-color:#ffffff3d}.desktop--mobile .sidebar-section-caret,.desktop--mobile .sidebar-section-count{color:var(--white);background:#ffffff1f;border-color:#fff3}.desktop--mobile .sidebar-client-left-value{color:var(--gray-200)}.desktop--mobile .sidebar-client-left--over .sidebar-client-left-value,.desktop--mobile .sidebar-client-left--over .sidebar-client-left-label{color:#fca5a5}.desktop--mobile .sidebar-view-all{color:var(--gray-200);background:#ffffff0f;border-color:#ffffff1f}.desktop--mobile .sidebar-view-all--active{background:var(--indigo);border-color:var(--indigo);color:var(--white)}.desktop--mobile .sidebar-client{background:0 0}.desktop--mobile .sidebar-client--visible{background:#ffffff1a}.desktop--mobile .sidebar-collapse-btn{width:44px;min-width:44px;height:44px;color:var(--white);background:#ffffff14;border-color:#ffffff29;font-size:22px}.desktop--mobile .sidebar-client,.desktop--mobile .sidebar-view-all{min-height:44px}.desktop--mobile .sidebar-client-name{white-space:normal;text-overflow:unset;overflow:visible}.desktop--mobile .desktop-header{grid-template-columns:1fr auto;grid-template-areas:"actions actions""title nav";align-items:center;gap:8px 10px;padding:10px 12px 8px;display:grid}.desktop--mobile .desktop-header-left{display:contents}.desktop--mobile .desktop-header-actions{flex-wrap:wrap;grid-area:actions;gap:6px}.desktop--mobile .desktop-header-title{grid-area:title;min-width:0}.desktop--mobile .desktop-header-center{grid-area:nav;justify-self:end}.desktop--mobile .desktop-header-right{display:none}.desktop--mobile .header-eyebrow{margin:0;font-size:10px}.desktop--mobile .desktop-range{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:15px;line-height:1.2;overflow:hidden}.desktop--mobile .btn-save,.desktop--mobile .btn-history,.desktop--mobile .nav-btn{min-height:44px}.desktop--mobile .nav-btn{width:44px;height:44px}.desktop--mobile .nav-btn--today{width:auto;min-width:64px;padding:0 14px;font-size:12px}.desktop--mobile .nav-group--toolbar .nav-btn:not(.nav-btn--today){width:28px;min-width:28px;height:30px;min-height:30px}.desktop--mobile .nav-group--toolbar .nav-btn--today{width:auto;min-width:max-content;height:30px;min-height:30px;padding:0 10px;font-size:10px}.mobile-client-bar{border-bottom:1px solid var(--gray-200);background:var(--gray-50);align-items:center;gap:8px;min-height:44px;padding:8px 12px;display:flex}.mobile-client-bar-label{letter-spacing:.04em;text-transform:uppercase;color:var(--gray-500);flex-shrink:0;font-size:11px;font-weight:700}.mobile-client-pill{background:var(--white);border:1px solid var(--gray-200);min-width:0;box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.mobile-client-pill-text{color:var(--navy);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.mobile-client-hours{color:var(--gray-600);flex-shrink:0;margin-left:auto;font-size:12px;font-weight:700}.desktop--mobile .desktop-grid-wrap{padding:0 8px 12px}.desktop--mobile .grid-corner,.desktop--mobile .grid-row-label,.desktop--mobile .grid-footer-label{display:none}.desktop--mobile .desktop-grid{width:100%;min-width:0}.desktop--mobile .grid-header-row,.desktop--mobile .grid-stacked-row,.desktop--mobile .grid-client-row,.desktop--mobile .grid-pool-row,.desktop--mobile .grid-footer-row{grid-template-columns:repeat(var(--day-count), minmax(0, 1fr));width:100%;display:grid}.desktop--mobile .grid-day-header,.desktop--mobile .grid-stacked-cell,.desktop--mobile .grid-client-cell,.desktop--mobile .grid-pool-cell,.desktop--mobile .grid-footer-cell{width:auto;min-width:0}.desktop--mobile .grid-day-header{padding:8px 4px}.desktop--mobile .client-shift--readable .client-shift-name{white-space:normal;max-width:none;text-overflow:unset;font-size:13px;overflow:visible}.desktop--mobile .client-shift--readable .client-shift-hours{flex-shrink:0;font-size:12px}.desktop--mobile .client-shift-header{align-items:flex-start;gap:6px}.desktop--mobile .shift-member-name,.desktop--mobile .shift-member-detail{white-space:normal;text-overflow:unset;overflow:visible}.desktop--mobile .day-pool-stack--scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-flow:row;gap:6px;padding-bottom:4px;display:flex;overflow:auto hidden}.desktop--mobile .pool-member--named{flex-direction:column;flex:none;justify-content:center;align-items:flex-start;gap:2px;width:auto;min-width:84px;min-height:44px;padding:8px 10px;font-size:12px}.desktop--mobile .pool-member--named .pool-member-name{white-space:nowrap;text-overflow:unset;font-size:13px;font-weight:700;overflow:visible}.desktop--mobile .pool-member--named .pool-member-meta{white-space:nowrap;font-size:11px;display:block}.desktop--mobile .desktop-grid-wrap[data-grid-density=compact] .pool-member-meta{display:block}.desktop--mobile .shift-delete{width:44px;min-width:44px;height:44px;min-height:44px;font-size:22px}.mobile-bottom-nav{z-index:250;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:var(--navy-dark);border-top:1px solid #ffffff14;grid-template-columns:repeat(4,1fr);gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0f172a2e}.mobile-bottom-nav-btn{min-height:52px;color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 2px;font-family:inherit;display:flex}.mobile-bottom-nav-btn--active{color:var(--white);background:#ffffff1a}.mobile-bottom-nav-icon{justify-content:center;align-items:center;display:flex}.mobile-bottom-nav-label{letter-spacing:.02em;font-size:11px;font-weight:700}}@media (width<=666px){.desktop--portrait .desktop-range{font-size:14px}.desktop--portrait .day-name{font-size:11px}.desktop--portrait .day-num{font-size:16px}.desktop--portrait .client-shift--readable .client-shift-name{font-size:14px}.desktop--portrait .client-shift--readable .client-shift-hours{font-size:13px}.desktop--portrait .shift-member-detail{font-size:12px}.desktop--portrait .pool-member--named{min-width:92px}.desktop--portrait .pool-member--named .pool-member-name{font-size:14px}.desktop--portrait .btn-save,.desktop--portrait .btn-history{padding:10px 14px;font-size:13px}}@media (width>=667px) and (width<=1023px){.desktop--landscape .desktop-header{gap:6px 8px;padding:8px 10px}.desktop--landscape .desktop-range{font-size:13px}.desktop--landscape .day-name{font-size:9px}.desktop--landscape .day-num{font-size:13px}.desktop--landscape .desktop-grid-wrap{padding:0 6px 8px}.desktop--landscape .grid-day-header,.desktop--landscape .grid-stacked-cell,.desktop--landscape .grid-pool-cell,.desktop--landscape .grid-footer-cell{padding:4px}.desktop--landscape .client-shift--readable .client-shift-name,.desktop--landscape .client-shift--readable .client-shift-hours{font-size:11px}.desktop--landscape .shift-member-detail{font-size:10px}.desktop--landscape .pool-member--named{min-width:76px;min-height:44px;padding:6px 8px}.desktop--landscape .pool-member--named .pool-member-name{font-size:12px}.desktop--landscape .pool-member--named .pool-member-meta{font-size:10px}.desktop--landscape .mobile-client-pill-text{font-size:12px}.desktop--landscape .mobile-client-bar{padding:6px 10px}}.app-error-banner{z-index:400;background:var(--red-bg);width:100%;max-width:100%;color:var(--red);border-bottom:1px solid #fecaca;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;font-size:13px;font-weight:600;display:flex;position:sticky;top:0}.app-error-banner-dismiss{background:var(--white);color:var(--red);font:inherit;cursor:pointer;border:1px solid #fecaca;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700}.app-loading-overlay{z-index:500;background:#0f172a47;place-items:center;display:grid;position:fixed;inset:0}.app-loading-card{background:var(--white);box-shadow:var(--shadow);color:var(--gray-700);border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:24px 28px;font-weight:600;display:flex}.app-loading-spinner{border:3px solid var(--gray-200);border-top-color:var(--navy);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite app-spin}@keyframes app-spin{to{transform:rotate(360deg)}}.app-placeholder{text-align:center;place-content:center;gap:8px;min-height:100svh;padding:32px;display:grid}.app-placeholder h1{color:var(--navy);margin:0;font-size:22px}.app-placeholder p{color:var(--gray-500);margin:0}.city-select{flex-shrink:0;align-items:center;gap:8px;min-width:0;margin-left:8px;display:inline-flex}.desktop-topbar-main .city-select.city-select--topbar{margin-left:0}.city-select-label{letter-spacing:.06em;text-transform:uppercase;color:var(--gray-400);font-size:11px;font-weight:700}.city-select-input{appearance:none;border:1px solid var(--gray-300);background-color:var(--white);color:var(--navy);font:inherit;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23475569' d='M1 1l4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:8px;padding:6px 28px 6px 10px;font-size:13px;font-weight:600}.toolbar-view-select{appearance:none;border:1px solid var(--gray-200);background-color:var(--white);color:var(--navy);font:inherit;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23475569' d='M1 1l4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:6px;padding:4px 28px 4px 10px;font-size:13px;font-weight:700}.city-select--locked .city-select-locked-value{border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-600);cursor:default;-webkit-user-select:none;user-select:none;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:700}.city-select--portrait{width:100%;margin:0 0 8px}.dev-view-as{top:env(safe-area-inset-top,0px);z-index:450;pointer-events:auto;flex-direction:column;align-items:center;width:max-content;max-width:260px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.dev-view-as-tab{border:1px dashed var(--gray-400);background:var(--white);max-width:260px;box-shadow:var(--shadow);font:inherit;color:var(--gray-600);cursor:pointer;border-top:none;border-radius:0 0 9px 9px;align-items:center;gap:6px;padding:3px 10px 4px;font-size:11px;font-weight:700;display:flex}.dev-view-as-who{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dev-view-as-caret{color:var(--gray-400)}.dev-view-as-body{background:var(--white);border:1px dashed var(--gray-400);width:220px;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;gap:4px;margin-top:4px;padding:10px 12px;display:flex}.dev-view-as-label{color:var(--gray-600);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.dev-view-as-badge{color:#92400e;letter-spacing:.04em;background:#fef3c7;border-radius:4px;padding:1px 5px;font-size:9px;display:inline-block}.dev-view-as-select{border:1px solid var(--gray-300);width:100%;font:inherit;border-radius:6px;padding:5px 8px;font-size:12px}.dev-view-as-toggle{border:1px solid var(--gray-300);background:var(--gray-50);width:100%;color:var(--gray-600);font:inherit;cursor:pointer;text-align:left;border-radius:6px;margin-top:2px;padding:5px 8px;font-size:11px;font-weight:700}.dev-view-as-toggle:hover{background:var(--gray-100);border-color:var(--gray-400)}.dev-view-as-toggle--on{color:#92400e;background:#fef3c7;border-color:#f59e0b}.desktop--dev-compact-cards .desktop-grid,.desktop--dev-compact-cards .grid-header-row,.desktop--dev-compact-cards .grid-row{--label-width:0px}.desktop--dev-compact-cards .grid-row-label,.desktop--dev-compact-cards .grid-corner{border-right:none;padding:0;overflow:hidden}.desktop--dev-compact-cards .row-label-title{display:none}.desktop--dev-compact-cards .desktop-sidebar{width:210px;padding:12px 8px}.desktop--dev-compact-cards .sidebar-client{padding:8px 6px}.desktop--dev-compact-cards .sidebar-section-toggle{margin:8px 0 6px;padding:6px 8px}.desktop--dev-compact-cards .grid-day-header{padding:4px}.desktop--dev-compact-cards .add-shift-card-label{gap:4px;padding:0 4px;font-size:11px}.desktop--dev-compact-cards .add-shift-card-plus{margin-top:-1px;font-size:14px}.desktop--dev-compact-cards .add-assessment-meta{font-size:10px}.desktop--dev-compact-cards .assessment-stack{padding-top:6px}.desktop--board-expanded .desktop-grid-wrap .grid-day-header,.desktop--board-expanded .desktop-grid-wrap[data-grid-density] .grid-day-header,.desktop--board-expanded .desktop-grid-wrap[data-grid-density=cozy] .grid-day-header,.desktop--board-expanded .desktop-grid-wrap[data-grid-density=compact] .grid-day-header,.desktop--board-expanded .desktop-grid-wrap[data-grid-density=tight] .grid-day-header,.desktop--board-expanded .desktop-grid-wrap[data-grid-density=minimal] .grid-day-header,.desktop--board-expanded .desktop-grid-wrap[data-grid-density=relaxed] .grid-day-header{min-height:0;padding:5px 4px 10px}.dev-view-as-check{color:var(--gray-600,#475569);cursor:pointer;align-items:center;gap:6px;margin:6px 0 4px;font-size:11.5px;font-weight:600;display:flex}.dev-view-as-check input{cursor:pointer;width:15px;height:15px}.board-error{border:1px solid var(--gray-200);text-align:center;background:#fff;border-radius:12px;max-width:560px;margin:80px auto;padding:24px}.board-error-title{color:var(--gray-700);margin:0 0 8px;font-size:18px;font-weight:600}.board-error-message{background:var(--gray-50);color:#b91c1c;text-align:left;word-break:break-word;border-radius:8px;margin:0 0 12px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.board-error-hint{color:var(--gray-500);margin:0 0 20px;font-size:13px}.board-error-actions{justify-content:center;gap:8px;display:flex}.board-error-btn{border:1px solid var(--gray-300);color:var(--gray-700);cursor:pointer;background:#fff;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500}.board-error-btn--primary{border-color:var(--indigo-600,#4f46e5);background:var(--indigo-600,#4f46e5);color:#fff}.app-admin-nav{border-bottom:1px solid var(--gray-200,#e5e7eb);z-index:40;background:#fff;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex;position:sticky;top:0}.app-admin-nav-btn{color:var(--gray-600,#4b5563);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.app-admin-nav-btn.is-active{background:var(--gray-100,#f3f4f6);color:var(--gray-900,#111827)}.app-admin-nav-signout{color:var(--gray-500,#6b7280);margin-left:auto;font-weight:500}.admin-app-frame--mobile-nav{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}.admin-app-frame--mobile-nav .clockbar{bottom:calc(64px + env(safe-area-inset-bottom,0px))}.admin-app-frame--mobile-nav .clockbar--strip{padding-bottom:0}.admin-app-frame--mobile-nav .clockbar:after{display:none}.admin-app-frame--mobile-nav .mobile-bottom-nav--light{z-index:250;grid-template-columns:repeat(var(--mobile-nav-cols,3), 1fr);padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:var(--white);border-top:1px solid var(--gray-200);gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0f172a0f}.admin-app-frame--mobile-nav .mobile-bottom-nav--light .mobile-bottom-nav-btn{min-height:52px;color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 2px;font-family:inherit;display:flex}.admin-app-frame--mobile-nav .mobile-bottom-nav--light .mobile-bottom-nav-btn--active{color:var(--indigo);background:var(--indigo-bg)}.admin-app-frame--mobile-nav .mobile-bottom-nav--light .mobile-bottom-nav-icon{justify-content:center;align-items:center;display:flex}.admin-app-frame--mobile-nav .mobile-bottom-nav--light .mobile-bottom-nav-label{letter-spacing:.01em;font-size:10px;font-weight:700}.app-dev-bypass{z-index:80;color:#92400e;cursor:pointer;background:#fffbeb;border:1px dashed #f59e0b;border-radius:8px;padding:8px 12px;font-size:12px;position:fixed;bottom:12px;left:12px}.app-login-error{top:max(16px, env(safe-area-inset-top));z-index:90;box-sizing:border-box;color:#991b1b;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;width:min(420px,100vw - 32px);padding:12px 16px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0f172a1f}.app-login-error p{margin:0 0 8px}.topbar-panel-toggle{border:1px solid var(--gray-300);background:var(--white);width:26px;height:26px;color:var(--gray-600);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;margin-left:10px;font-family:inherit;font-size:13px;line-height:1;display:inline-flex}.topbar-panel-toggle:hover{background:var(--gray-100);border-color:var(--gray-400);color:var(--navy)}.desktop-topbar-row2-end{grid-column:3;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.desktop-portal-btn--foot{flex-shrink:0;margin-top:10px;margin-bottom:0}.desktop--dev-compact-cards .desktop-portal-btn--foot{margin-top:8px}.client-shift-caret{border:1px solid var(--gray-300);background:var(--white);width:20px;height:20px;color:var(--gray-600);cursor:pointer;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;margin-right:4px;padding:0;font-family:inherit;font-size:14px;line-height:1;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.client-shift-caret:hover{background:var(--gray-100);border-color:var(--gray-500);color:var(--navy)}.client-shift-caret[aria-expanded=true]{background:var(--gray-200);border-color:var(--gray-400);color:var(--navy)}.client-shift-summary{text-align:center;color:var(--gray-600);white-space:nowrap;text-overflow:ellipsis;margin:0;padding:0 8px 8px;font-size:11px;font-weight:600;overflow:hidden}
