:root{--bg: #070A0F;--card: rgba(255, 255, 255, .06);--card2: rgba(255, 255, 255, .075);--card3: rgba(255, 255, 255, .045);--border: rgba(255, 255, 255, .12);--green: #22c55e;--blue: #3b82f6;--accent: #a855f7;--danger: #ef4444;--shadow: 0 12px 40px rgba(0, 0, 0, .45);--shadow2: 0 18px 70px rgba(0, 0, 0, .55);--radius: 18px;--font: "Inter", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;--font-display: "Sora", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;--ring: 0 0 0 4px rgba(59, 130, 246, .16);--ring2: 0 0 0 4px rgba(168, 85, 247, .18);--app-main-padding-y: 22px;--app-main-padding-x: 28px;--app-sidebar-width: 232px;--app-font-size: 15px;--app-page-title-size: 1.72rem;--app-section-title-size: 1.12rem;--app-body-size: .92rem;--app-small-size: .78rem;--app-control-height: 38px;--app-control-radius: 10px;--app-panel-radius: 14px;--app-panel-padding: 16px;--app-page-background: radial-gradient(circle at top left, rgba(37, 99, 235, .08), transparent 30%), linear-gradient(180deg, #f7f9fc 0%, #eef3fb 100%)}*{box-sizing:border-box}html,body{height:100%;scrollbar-gutter:stable}body{margin:0;font-family:var(--font);font-size:var(--app-font-size);overflow-x:hidden;letter-spacing:-.01em}body.modal-open{overflow:hidden}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.03em}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}[role=dialog]{transform-origin:center}@media(max-height:1000px){[role=dialog]{transform:scale(.94)}}@media(max-height:820px){[role=dialog]{transform:scale(.86)}}@media(max-height:680px){[role=dialog]{transform:scale(.76)}}::selection{background:#3b82f659}.banner.success,.status-banner,.success-banner,.staff-success-banner{animation:banner-fade-away 2.6s ease forwards}.banner.success,.banner.error,.status-banner,.success-banner,.error-banner,.staff-success-banner,.state-banner.error{position:fixed!important;right:max(1.25rem,env(safe-area-inset-right))!important;bottom:max(1.25rem,env(safe-area-inset-bottom))!important;z-index:3000!important;display:flex!important;align-items:center!important;width:min(420px,100vw - 2.5rem)!important;min-height:48px!important;margin:0!important;padding:.82rem 1rem!important;border-radius:12px!important;border:1px solid rgba(203,213,225,.9)!important;background:#fff!important;color:#14213d!important;box-shadow:0 18px 48px #0f172a2e!important;font-size:.9rem!important;font-weight:750!important;line-height:1.35!important;pointer-events:none!important}.banner.success,.status-banner,.success-banner,.staff-success-banner{border-color:#b8e7c8!important;background:#ecfdf3!important;color:#166534!important}.banner.error,.error-banner,.state-banner.error{border-color:#fecaca!important;background:#fff1f2!important;color:#b42318!important}@media(max-width:640px){.banner.success,.banner.error,.status-banner,.success-banner,.error-banner,.staff-success-banner,.state-banner.error{right:1rem!important;bottom:1rem!important;width:calc(100vw - 2rem)!important}}::view-transition-old(root),::view-transition-new(root){animation-duration:.22s;animation-timing-function:cubic-bezier(.2,0,0,1)}::view-transition-old(root){animation-name:page-fade-out}::view-transition-new(root){animation-name:page-fade-in}@keyframes page-fade-out{0%{opacity:1;filter:blur(0)}to{opacity:0;filter:blur(2px)}}@keyframes page-fade-in{0%{opacity:0;transform:translateY(10px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes banner-fade-away{0%,72%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.container{width:min(1120px,100% - 32px);margin:0 auto}.glow-bg{position:fixed;inset:-20%;z-index:-10;pointer-events:none;background:radial-gradient(40% 30% at 20% 10%,rgba(59,130,246,.45),transparent 55%),radial-gradient(35% 25% at 80% 30%,rgba(168,85,247,.35),transparent 55%),radial-gradient(30% 30% at 50% 80%,rgba(34,197,94,.35),transparent 55%);filter:blur(30px);opacity:.9}.noise{position:fixed;inset:0;pointer-events:none;z-index:-5;opacity:.08;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-radius:14px;border:1px solid var(--border);background:#ffffff0f;color:var(--text);cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease;-webkit-user-select:none;user-select:none}.btn:hover{transform:translateY(-1px);background:#ffffff17;border-color:#fff3}.btn:active{transform:translateY(0)}.btn-primary{position:relative;border:none;background:linear-gradient(90deg,var(--blue),var(--accent));box-shadow:0 12px 40px #3b82f62e;color:#fff}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:after{content:"";position:absolute;inset:-1px;border-radius:14px;background:linear-gradient(90deg,#22c55e8c,#3b82f68c,#a855f78c);opacity:0;filter:blur(12px);transition:opacity .18s ease;z-index:-1}.btn-primary:hover:after{opacity:1}.badge{display:inline-flex;gap:8px;align-items:center;padding:8px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0d;font-size:13px}.section-title{font-size:clamp(24px,3vw,34px);margin:0 0 8px}.section-subtitle{margin:0 0 18px;line-height:1.6;max-width:60ch}.grid{display:grid;gap:16px}.hr{height:1px;width:100%;background:#ffffff1a;margin:28px 0}input,textarea{width:100%;padding:12px;border-radius:14px;border:1px solid var(--border);background:#ffffff0a;color:var(--text);outline:none}input:focus,textarea:focus{border-color:#3b82f6b3;box-shadow:var(--ring)}.small{font-size:12.5px;line-height:1.5}.pill{padding:10px 12px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a}.assignment-count{display:inline-flex;align-items:center;min-height:2.25rem;padding:0 .85rem;border-radius:999px;background:#fff1dc;color:#c36b0d;font-weight:800}.assignment-open-list{display:grid;gap:.75rem}.assignment-shift-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:1rem;align-items:center;padding:.9rem;border:1px solid #e1e8f3;border-radius:1rem;background:#fbfdff}.assignment-shift-row.selected{border-color:#93b4ff;background:#f3f7ff}.assignment-shift-main,.assignment-shift-coverage{display:grid;gap:.25rem}.assignment-shift-main strong,.assignment-shift-coverage strong{color:#17213d}.assignment-shift-main span,.assignment-shift-main small{color:#64748b}.assignment-shift-coverage{justify-items:end}.date-tile.compact{width:4rem;min-height:4.75rem}.assignment-empty{border:1px solid #dfe7f4;border-radius:1rem;background:#fff}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main){padding:var(--app-main-padding-y) var(--app-main-padding-x) 24px!important;font-size:var(--app-body-size)!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(.page-header,.topbar,.panel-head,.panel-header,.toolbar,.view-row){gap:.75rem!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(h1,.page-header h1,.topbar h1,.staff-settings-header h1){font-size:var(--app-page-title-size)!important;line-height:1.08!important;letter-spacing:-.035em!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(h2,.panel-head h2,.panel-header h2,.hero-copy h2){font-size:var(--app-section-title-size)!important;line-height:1.18!important;letter-spacing:-.025em!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(p,small,label,input,select,textarea,button,td,th,span){letter-spacing:0!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(.page-header p,.topbar p,.copy,.field small,.panel-header small,.summary-card span){font-size:var(--app-body-size)!important;line-height:1.42!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(.primary-button,.secondary-button,.ghost-button,.danger-button,.approve-button,.auto-button,.filter-button,.row-action,.pager-button,.icon-button,.segmented-control button,.tab,.filter-pill){min-height:var(--app-control-height)!important;padding-inline:.85rem!important;border-radius:var(--app-control-radius)!important;font-size:.88rem!important;line-height:1!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(input,select,textarea){min-height:var(--app-control-height)!important;padding:.55rem .75rem!important;border-radius:var(--app-control-radius)!important;font-size:.9rem!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) select{appearance:none!important;height:var(--app-control-height)!important;line-height:1.2!important;padding-right:2.45rem!important;border:1px solid #cfdcf2!important;background-color:#fff!important;background-image:linear-gradient(45deg,transparent 50%,#476691 50%),linear-gradient(135deg,#476691 50%,transparent 50%)!important;background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%!important;background-size:6px 6px!important;background-repeat:no-repeat!important;color:#17213d!important;font-family:var(--font)!important;font-size:.92rem!important;font-weight:650!important;letter-spacing:0!important;box-shadow:0 8px 18px #1f35650d!important;cursor:pointer!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) select:hover{border-color:#b8c9e8!important;background-color:#fbfdff!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) select:focus{outline:none!important;border-color:#7aa2f7!important;box-shadow:0 0 0 3px #2563eb26,0 10px 22px #1f356514!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) select:disabled{cursor:not-allowed!important;opacity:.68!important;background-color:#f3f6fb!important;color:#7b8aa5!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) select option{min-height:34px;padding:8px 12px;background:#fff;color:#17213d;font-family:var(--font);font-size:.92rem;font-weight:550;line-height:1.35}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) select option:checked{background:#eaf2ff;color:#123b7a;font-weight:750}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(.panel,.side-card,.request-list-card,.summary-card,.detail-card,.calendar-panel,.hero-panel){border-radius:var(--app-panel-radius)!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main) :where(.panel,.side-card,.summary-card,.detail-card){padding:var(--app-panel-padding)!important}:where(.schedule-shell,.requests-shell,.availability-shell,.team-shell,.settings-shell,.reports-shell,.warnings-shell,.rules-shell,.exchange-shell,.dashboard-shell){grid-template-columns:var(--app-sidebar-width) minmax(0,1fr)!important}:where(.request-event,.slot-card,.mobile-shift-card,.warning-card,.staff-card,.person-card){border-radius:10px!important}:where(.request-modal,.assign-modal,.availability-modal,.confirm-modal){font-size:.92rem!important}:where(.request-modal,.assign-modal,.availability-modal,.confirm-modal) :where(h1,h2){font-size:1.45rem!important;line-height:1.1!important}@media(max-width:760px){:root{--app-main-padding-y: 16px;--app-main-padding-x: 16px;--app-page-title-size: 1.45rem;--app-section-title-size: 1.02rem}}@media(max-width:760px){html,body{width:100%;overflow-x:hidden}body{font-size:14px}:where(.schedule-shell,.requests-shell,.availability-shell,.team-shell,.settings-shell,.reports-shell,.warnings-shell,.rules-shell,.exchange-shell,.dashboard-shell){display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;min-width:0!important;overflow-x:hidden!important}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main){width:100%!important;min-width:0!important;padding:14px 12px 18px!important;overflow-x:hidden!important}app-sidebar-nav.sidebar{position:sticky!important;top:0!important;z-index:100!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;padding:10px 12px 8px!important;border-right:0!important;border-bottom:1px solid #dbe5f5!important;box-shadow:0 10px 24px #1f356514!important}app-sidebar-nav.sidebar .sidebar-shell{min-height:0!important;height:auto!important;gap:8px!important}app-sidebar-nav.sidebar .brand{width:100%!important;min-height:40px!important;padding:0!important}app-sidebar-nav.sidebar .brand-mark{width:34px!important;height:34px!important;border-radius:10px!important}app-sidebar-nav.sidebar .brand-name{font-size:1.02rem!important}app-sidebar-nav.sidebar .brand-subtitle{font-size:.74rem!important}app-sidebar-nav.sidebar .sidebar-toggle{display:none!important}app-sidebar-nav.sidebar .sidebar-nav:not(.mobile-open),app-sidebar-nav.sidebar .staff-footer-actions{display:none!important}app-sidebar-nav.sidebar .sidebar-nav.mobile-open{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;overflow:visible!important}app-sidebar-nav.sidebar .sidebar-nav.mobile-open+.staff-footer-actions{display:grid!important}.schedule-main .mobile-nav{display:none!important}:where(.page-header,.topbar,.hero,.panel-header,.panel-head,.toolbar,.view-row){width:100%!important;min-width:0!important;flex-direction:column!important;align-items:stretch!important}:where(.topbar-breadcrumb){width:100%!important;gap:8px!important;overflow:hidden!important}:where(.breadcrumb-divider){display:none!important}:where(.header-actions,.topbar-actions,.hero-actions,.panel-actions,.modal-actions,.confirm-actions,.utility-actions,.preview-actions,.editor-actions,.staff-settings-actions,.summary-actions){width:100%!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;justify-content:stretch!important}:where(.primary-button,.secondary-button,.ghost-button,.danger-button,.danger-outline-button,.approve-button,.auto-button,.warning-button,.filter-button,.compact-button,.profile-button,.logout-button,.date-pill,.save-button,.delete-button){width:100%!important;min-width:0!important}:where(.icon-button,.small-icon,.pager-button,.modal-close){flex:0 0 auto!important}:where(.segmented-control,.account-type-toggle){width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}:where(.content-grid,.workspace-grid,.assignment-layout,.staff-page,.staff-rail,.side-column,.main-column){width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-self:stretch!important;margin-top:0!important}:where(.panel,.side-card,.request-list-card,.summary-card,.detail-card,.calendar-panel,.hero-panel,.staff-settings-card){width:100%!important;min-width:0!important}:where(.side-card,.editor-panel,.rail-card,.hero-card,.profile-button,.logout-button){max-width:100%!important}:where(.table-head){display:none!important}:where(.table-row,.people-row,.request-list-card,.warning-card){width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}:where(.staff-cell,.name-cell,.person-cell,.member-copy,.profile-copy,.staff-copy){min-width:0!important;overflow-wrap:anywhere!important}:where(.modal-backdrop,.detail-modal-backdrop,.rules-modal-backdrop){padding:10px!important;align-items:end!important;overflow-y:auto!important}:where(.request-modal,.time-modal,.confirm-modal,.modal-card,.confirm-card,.detail-modal,.assign-modal,.availability-modal,.editor-panel){width:100%!important;max-width:100%!important;max-height:calc(100dvh - 20px)!important;overflow-y:auto!important;transform:none!important;border-radius:18px!important}:where(.modal-layout,.modal-grid,.details-grid,.time-select-grid,.setting-grid,.editor-form,.toggle-grid){grid-template-columns:minmax(0,1fr)!important}:where(.schedule-month-calendar,.request-calendar,.availability-calendar,.month-card){width:100%!important;max-width:100%!important;overflow-x:hidden!important}:where(.month-calendar-body,.calendar-body,.availability-calendar,.month-weekdays,.month-grid){width:100%!important;min-width:0!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}:where(.schedule-month-calendar>.weekday,.request-calendar>.weekday,.calendar-head,.month-weekdays span){width:auto!important;min-width:0!important;min-height:30px!important;padding:0 2px!important;overflow:hidden!important;font-size:0!important;letter-spacing:0!important;text-align:center!important}:where(.schedule-month-calendar>.weekday,.request-calendar>.weekday,.calendar-head,.month-weekdays span):first-letter{font-size:.68rem!important;font-weight:900!important}:where(.month-calendar-cell,.calendar-cell,.month-day){min-width:0!important;min-height:64px!important;gap:3px!important;padding:6px 4px!important}:where(.month-calendar-cell>span,.calendar-date,.calendar-cell>span:first-child,.month-day>strong){width:1.35rem!important;min-width:1.35rem!important;height:1.35rem!important;margin:0!important;font-size:.76rem!important;line-height:1!important}:where(.month-cell-events,.cell-events,.day-requests){gap:2px!important;min-width:0!important}:where(.month-schedule-event,.request-event,.calendar-range,.staff-shift,.off-pill,.request-pill){min-width:0!important;min-height:1.15rem!important;max-width:100%!important;padding:2px 4px!important;border-radius:5px!important;font-size:.58rem!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}:where(.month-schedule-event small,.month-schedule-event span,.request-event span,.request-event small,.calendar-status,.holiday-note,.override-note){display:none!important}}@media(max-width:480px){:root{--app-main-padding-y: 12px;--app-main-padding-x: 12px;--app-page-title-size: 1.32rem;--app-section-title-size: .98rem;--app-control-height: 42px;--app-panel-padding: 12px}.container{width:min(100% - 20px,1120px)}:where(.schedule-main,.requests-main,.availability-main,.team-main,.settings-main,.reports-main,.warnings-main,.rules-main,.exchange-main,.dashboard-main,.workspace-main){padding-inline:10px!important}:where(h1,.page-header h1,.topbar h1,.hero h1,.staff-settings-header h1){overflow-wrap:anywhere!important}:where(.segmented-control,.account-type-toggle){grid-template-columns:minmax(0,1fr)!important}}@media(max-width:760px){.assignment-shift-row{grid-template-columns:auto minmax(0,1fr)}.assignment-shift-coverage,.assignment-shift-row .primary-button{grid-column:1/-1;justify-self:stretch}}.section{padding:56px 0}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation-duration:1ms}.banner.success,.status-banner,.success-banner,.staff-success-banner{animation:none}*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
