*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }body{line-height:inherit;margin:0}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre,fieldset{margin:0}*,:after,:before,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre,fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.table{display:table}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.min-h-\[70vh\]{min-height:70vh}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.bg-\[\#0f172a\]{--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity,1))}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-7xl{font-size:4.5rem;line-height:1}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--ink:#172033;--muted:#6b7280;--line:#e7eaf0;--soft:#f6f8fb;--blue:#2563eb;--blue-dark:#1d4ed8}*{box-sizing:border-box}html{background:var(--soft);color:var(--ink);font-family:Noto Sans Thai,Leelawadee UI,Tahoma,sans-serif}body{min-width:320px;margin:0}button,input,select,textarea{color:inherit;font:inherit}button,select{cursor:pointer}button{border:0}a{color:inherit;text-decoration:none}.app-shell{background:#f7f8fb;flex-direction:column;min-height:100vh;display:flex}.app-shell>main{flex:1 0 auto}.app-shell>.app-footer{flex:none}.topbar{border-bottom:1px solid var(--line);z-index:30;background:#fff;height:68px;padding:0 36px;position:sticky;top:0}.brand,.topbar{align-items:center;display:flex}.brand{letter-spacing:-.7px;gap:10px;min-width:190px;font-size:22px;font-weight:800}.brand-mark{background:var(--blue);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex;transform:rotate(-3deg)}.main-nav{align-self:stretch;align-items:stretch;gap:8px;display:flex}.main-nav a{color:#667085;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:600;display:flex;position:relative}.main-nav a:hover{color:var(--ink)}.main-nav a.active{color:var(--blue)}.main-nav a.active:after{background:var(--blue);content:"";border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:12px;right:12px}.main-nav a.locked{color:#98a2b3}.main-nav a.locked:hover{color:#667085}.main-nav .nav-lock{color:#f59e0b;flex:none}.nav-badge{color:#dc2626;background:#fee2e2;border-radius:20px;justify-content:center;width:19px;height:19px;font-size:10px}.nav-badge,.top-actions{align-items:center;display:flex}.top-actions{gap:14px;margin-left:auto}.icon-button{background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.icon-button:hover{border-color:var(--line);background:#f3f4f6}.notification,.notification-wrap{position:relative}.notification-badge{color:#fff;background:#ef4444;border:2px solid #fff;border-radius:12px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:8px;font-weight:800;display:flex;position:absolute;top:0;right:1px}.notification-menu{border:1px solid var(--line);background:#fff;border-radius:12px;width:min(380px,100vw - 24px);position:absolute;top:46px;right:-8px;overflow:hidden;box-shadow:0 14px 38px #11182720}.notification-menu>header{border-bottom:1px solid var(--line);background:#fafbfc;justify-content:space-between;align-items:center;padding:13px 14px;display:flex}.notification-menu>header>div{flex-direction:column;display:flex}.notification-menu>header strong{font-size:14px}.notification-menu>header small{color:#98a2b3;margin-top:2px;font-size:10px}.notification-menu>header button{color:var(--blue);background:0 0;align-items:center;gap:5px;padding:5px;font-size:11px;font-weight:700;display:flex}.notification-list{max-height:480px;overflow-y:auto}.notification-list>button{text-align:left;background:#fff;border-bottom:1px solid #eef0f3;grid-template-columns:34px minmax(0,1fr) 7px;align-items:start;gap:10px;width:100%;padding:11px 13px;display:grid}.notification-list>button:last-child{border-bottom:0}.notification-list>button:hover{background:#f8fafc}.notification-list>button.unread{background:#f7faff}.notification-list>button>i{color:var(--blue);background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-style:normal;display:flex}.notification-list>button>i.payment_success{color:#059669;background:#ecfdf3}.notification-list>button>i.payment_pending,.notification-list>button>i.subscription_expiring{color:#d97706;background:#fffbeb}.notification-list>button>i.payment_canceled,.notification-list>button>i.subscription_expired{color:#e11d48;background:#fff1f2}.notification-list>button>span{flex-direction:column;min-width:0;display:flex}.notification-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.notification-list small{color:#667085;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.notification-list time{color:#98a2b3;margin-top:4px;font-size:9px}.notification-list em{background:var(--blue);border-radius:50%;align-self:center;width:7px;height:7px}.notification-state{color:#98a2b3;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:120px;padding:25px;font-size:11px;display:flex}.notification-list-end,.notification-load-more{color:#98a2b3;text-align:center;padding:10px;font-size:10px}.notification-load-more{background:#f8fafc}.infinite-load-state{color:#8491a5;text-align:center;border-top:1px solid #eef2f6;min-height:44px;padding:14px 18px;font-size:12px;font-weight:600}.profile-wrap{position:relative}.profile-button{text-align:left;background:0 0;gap:9px;padding:4px 0}.avatar,.profile-button{align-items:center;display:flex}.avatar{color:#1d4ed8;background:linear-gradient(145deg,#dbeafe,#bfdbfe);border-radius:50%;justify-content:center;width:38px;height:38px;font-weight:800}.profile-copy{flex-direction:column;line-height:1.2;display:flex}.profile-copy strong{font-size:13px}.profile-copy small{color:var(--muted);margin-top:3px;font-size:11px}.profile-menu{border:1px solid var(--line);background:#fff;border-radius:10px;width:170px;padding:6px;position:absolute;top:48px;right:0;box-shadow:0 10px 30px #11182718}.profile-menu a,.profile-menu button{background:0 0;border-radius:7px;align-items:center;gap:8px;width:100%;padding:9px 10px;font-size:13px;display:flex}.profile-menu a:hover,.profile-menu button:hover{background:#f3f4f6}.calendar-page,.content-page{max-width:1560px;margin:0 auto;padding:30px 36px 48px}.page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:24px;display:flex}.page-heading h1{letter-spacing:-.7px;margin:2px 0 5px;font-size:28px;line-height:1.25}.page-heading p:not(.eyebrow){color:var(--muted);margin:0;font-size:14px}.eyebrow{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.heading-actions{gap:9px;display:flex}.primary-btn,.secondary-btn{border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 16px;font-size:14px;font-weight:700;display:inline-flex}.primary-btn{background:var(--blue);color:#fff;box-shadow:0 3px 8px #2563eb2b}.primary-btn:hover{background:var(--blue-dark)}.primary-btn:disabled,.secondary-btn:disabled{cursor:not-allowed;opacity:.48}.primary-btn:disabled:hover{background:var(--blue)}.secondary-btn{background:#fff;border:1px solid #dfe3e9}.secondary-btn:hover{background:#f8fafc}.compact{min-height:36px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:770px;margin-bottom:18px;display:grid}.summary-card{border:1px solid var(--line);background:#fff;border-radius:12px;gap:12px;padding:13px 15px}.summary-card,.summary-icon{align-items:center;display:flex}.summary-icon{border-radius:9px;justify-content:center;width:38px;height:38px}.summary-icon.blue{color:#2563eb;background:#eff6ff}.summary-icon.violet{color:#7c3aed;background:#f5f3ff}.summary-icon.amber{color:#d97706;background:#fffbeb}.summary-card div{grid-template-columns:auto auto;display:grid}.summary-card small{color:var(--muted);grid-column:1/-1;font-size:11px}.summary-card strong{font-size:20px;line-height:1.2}.summary-card div span{color:#9ca3af;align-self:center;margin-left:7px;font-size:10px}.summary-card.clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.summary-card.clickable:hover{border-color:#bfdbfe;transform:translateY(-1px);box-shadow:0 7px 20px #2563eb12}.summary-card.clickable:focus-visible{border-color:#60a5fa;outline:0;box-shadow:0 0 0 3px #dbeafe}.summary-people-modal{max-width:480px}.summary-people-list{flex-direction:column;gap:8px;max-height:440px;margin-top:17px;display:flex;overflow:hidden auto}.summary-people-list article{border:1px solid #e4e7ec;border-radius:10px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 11px;display:grid}.summary-people-list article.selectable{cursor:pointer;transition:background .15s,border-color .15s}.summary-people-list article.selectable:hover{background:#f8fbff;border-color:#bfdbfe}.summary-people-list article.warning-person-row.orange:hover{background:#fffbeb;border-color:#fcd34d}.summary-people-list article.warning-person-row.red:hover{background:#fff1f2;border-color:#fda4af}.summary-people-list article.selectable:focus-visible{border-color:#60a5fa;outline:0;box-shadow:0 0 0 3px #dbeafe}.summary-people-list article>i{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-style:normal;display:flex}.summary-people-list article>i.warning-avatar{color:#ea580c;background:#fff7ed}.summary-people-list article>span{flex-direction:column;min-width:0;display:flex}.summary-people-list article>span strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.summary-people-list article>span small{color:#98a2b3;margin-top:2px;font-size:10px}.summary-people-list article>b{color:#344054;text-align:right;flex-direction:column;font-size:12px;display:flex}.summary-people-list article>b small{color:#98a2b3;margin-top:2px;font-size:9px;font-weight:500}.summary-people-list article>b.consecutive-badge{color:#a16207;background:#fffbeb;border-radius:20px;padding:5px 8px;display:block}.summary-people-list article>b.consecutive-badge.red{color:#be123c;background:#fff1f2}.summary-people-empty{color:#98a2b3;text-align:center;padding:28px 12px;font-size:12px}.summary-people-search{color:#98a2b3;align-items:center;margin-top:16px;display:flex;position:relative}.summary-people-search svg{pointer-events:none;position:absolute;left:12px}.summary-people-search input{border:1px solid #d8dde6;border-radius:9px;outline:none;width:100%;min-height:40px;padding:8px 12px 8px 38px;font-size:12px}.summary-people-search input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe}.summary-filter-hint{color:#98a2b3;margin:6px 1px 0;font-size:9px}.planner-card{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:230px minmax(0,1fr);min-height:770px;display:grid;overflow:hidden;box-shadow:0 3px 15px #11182708}.planner-sidebar{border-right:1px solid var(--line);padding:18px}.create-shift{color:var(--blue);background:#fff;border:1px solid #d9e0e9;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;padding:10px;font-weight:700;display:flex;box-shadow:0 2px 7px #1118270c}.create-shift:hover{background:#f8fbff;border-color:#bfdbfe}.mini-calendar{border-bottom:1px solid var(--line);padding:20px 2px}.mini-title{grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:6px;display:grid}.mini-title select{background:#fff;border:1px solid #d8dde6;border-radius:7px;width:100%;min-width:0;min-height:34px;padding:0 7px;font-size:12px;font-weight:700}.mini-title select:focus{border-color:#60a5fa;outline:0;box-shadow:0 0 0 3px #dbeafe}.mini-title span{gap:9px;display:flex}.mini-days,.mini-week{text-align:center;grid-template-columns:repeat(7,1fr);display:grid}.mini-week{color:#9ca3af;margin:14px 0 7px;font-size:11px}.mini-days{gap:4px 0;font-size:12px}.mini-days span{border-radius:50%;justify-content:center;align-items:center;height:22px;display:flex}.mini-days .muted{color:#cbd5e1}.mini-days .selected{background:var(--blue);color:#fff;font-weight:700}.sidebar-section{border-bottom:1px solid var(--line);padding:17px 0}.sidebar-label{text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:11px;font-size:13px;font-weight:800;display:flex}.sidebar-label button{color:#9ca3af;background:0 0;display:flex}.check-row{cursor:pointer;align-items:center;gap:8px;margin:10px 0;font-size:14px;display:flex}.check-row input{accent-color:var(--blue)}.color-dot,.shift-dot{border-radius:3px;width:9px;height:9px;display:inline-block}.inpatient{background:#2563eb}.emergency{background:#f97316}.outpatient{background:#10b981}.shift-dot.morning{background:#3b82f6}.shift-dot.afternoon{background:#f59e0b}.shift-dot.night{background:#7c3aed}.legend-row{text-align:left;background:0 0;grid-template-columns:10px 42px 1fr;align-items:center;gap:7px;width:100%;margin:10px 0;padding:0;font-size:14px;display:grid}.legend-row small{color:#9ca3af;text-align:right;font-size:11px}.fatigue-legend{background:#f8fafc;border-radius:9px;flex-direction:column;gap:7px;margin-top:17px;padding:11px;display:flex}.fatigue-legend strong{margin-bottom:2px;font-size:12px}.fatigue-legend span{color:#667085;align-items:center;gap:6px;font-size:11px;display:flex}.fatigue{border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.fatigue.green{background:#22c55e}.fatigue.orange{background:#f59e0b}.fatigue.red{background:#ef4444;box-shadow:0 0 0 2px #fee2e2}.calendar-main{min-width:0}.calendar-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:66px;padding:11px 17px;display:flex}.month-switcher{align-items:center;gap:4px;display:flex}.month-switcher h2{min-width:220px;margin:0 0 0 9px;font-size:22px}.filter-button,.today-btn{background:#fff;border:1px solid #dfe3e9;border-radius:7px;min-height:36px;padding:0 12px;font-size:14px}.toolbar-right{gap:8px}.search-box,.toolbar-right{align-items:center;display:flex}.search-box{color:#98a2b3;background:#fff;border:1px solid #dfe3e9;border-radius:8px;gap:7px;height:35px;padding:0 9px}.search-box input{border:0;outline:0;width:135px;min-width:100px;font-size:13px}.table-toolbar select,.toolbar-right select{background:#fff;border:1px solid #dfe3e9;border-radius:8px;height:37px;padding:0 25px 0 9px;font-size:13px}.filter-button{align-items:center;gap:6px;display:flex}.filter-button.active{color:var(--blue);background:#eff6ff;border-color:#60a5fa}.filter-count{background:var(--blue);color:#fff;border-radius:50%;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:9px;display:flex}.employee-filter-wrap{position:relative}.employee-filter-menu{border:1px solid var(--line);z-index:20;background:#fff;border-radius:12px;width:310px;position:absolute;top:43px;right:0;overflow:hidden;box-shadow:0 18px 50px #11182726}.employee-filter-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 13px;display:flex}.employee-filter-head>div{flex-direction:column;display:flex}.employee-filter-head strong{font-size:13px}.employee-filter-head small{color:#98a2b3;margin-top:2px;font-size:10px}.employee-filter-head button{color:var(--blue);background:0 0;padding:5px;font-size:10px;font-weight:700}.employee-filter-list{max-height:310px;padding:5px;overflow-y:auto}.employee-filter-list label{cursor:pointer;border-radius:8px;grid-template-columns:18px 31px 1fr 18px;align-items:center;gap:9px;padding:8px;display:grid}.employee-filter-list label:hover{background:#f8fafc}.employee-filter-list input{accent-color:var(--blue);width:15px;height:15px}.filter-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:29px;height:29px;font-size:10px;font-weight:800;display:flex}.employee-filter-list label>span:nth-of-type(2){flex-direction:column;min-width:0;display:flex}.employee-filter-list label strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.employee-filter-list label small{color:#98a2b3;margin-top:2px;font-size:9px}.employee-filter-list label>svg{color:var(--blue)}.employee-filter-done{background:var(--blue);color:#fff;width:100%;min-height:37px;font-size:11px;font-weight:700}.employee-filter-done:hover{background:var(--blue-dark)}.filter-pills{border-bottom:1px solid var(--line);gap:5px;padding:8px 15px;display:flex}.filter-pills button{color:#667085;background:0 0;border:1px solid #0000;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}.filter-pills button.active{color:var(--blue);background:#eff6ff;border-color:#bfdbfe;font-weight:700}.fullcalendar-wrap{background:#fff;min-height:620px;position:relative}.calendar-state-overlay{z-index:8;position:absolute;inset:0}.calendar-loading{color:#98a2b3;justify-content:center;align-items:center;min-height:620px;display:flex}.calendar-state-overlay.calendar-loading{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#ffffffd9}.api-error{color:#be123c;text-align:center;background:#fff1f2e8;justify-content:center;align-items:center;min-height:180px;padding:24px;font-size:13px;display:flex}.fc{--fc-border-color:var(--line);--fc-page-bg-color:#fff;--fc-neutral-bg-color:#fafbfc;--fc-today-bg-color:#fbfdff;font-family:inherit}.fc .fc-scrollgrid{border:0;border-radius:0}.fc .fc-col-header-cell{background:#fafbfc;border-top:0}.fc .fc-col-header-cell-cushion{color:#667085;padding:11px 9px;font-size:13px;font-weight:700}.fc .fc-daygrid-day-frame{min-height:120px;padding:4px}.fc .fc-daygrid-day-top{flex-direction:row}.fc .fc-daygrid-day-number{color:#667085;justify-content:flex-start;align-items:center;width:calc(100% - 2px);height:28px;margin:1px;padding:0;font-size:13px;font-weight:600;display:flex;position:relative}.fc .roster-day-locked{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.fc .roster-day-past{background:#f8fafc}.fc .roster-day-past .fc-daygrid-day-number{color:#98a2b3}.fc .fc-daygrid-day-top{width:100%}.fc .roster-day-locked .fc-daygrid-day-number{justify-content:flex-start;width:100%;position:relative}.day-lock-outline{color:#667085;cursor:pointer;z-index:2;border-radius:5px;justify-content:center;align-items:center;width:22px;height:22px;margin:0;transition:background .15s,color .15s;display:inline-flex;position:absolute;top:2px;right:1px}.day-lock-outline:hover{color:#2563eb;background:#dbeafe}.day-lock-outline.unlocked{color:#16a34a}.day-lock-outline.unlocked:hover{color:#15803d;background:#dcfce7}.day-lock-outline.past{color:#98a2b3;cursor:not-allowed}.day-lock-outline.past:hover{color:#98a2b3;background:0 0}.day-lock-outline:focus-visible{outline:0;box-shadow:0 0 0 2px #93c5fd}.day-lock-outline svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:16px;height:16px;display:block}.fc .roster-more-popover-open .day-lock-outline{opacity:0;pointer-events:none}.fc .fc-day-other{cursor:default;pointer-events:none;background:#fafbfc}.fc .fc-day-other .fc-daygrid-day-number{color:#cbd5e1;opacity:1}.fc .fc-day-today .fc-daygrid-day-number{color:#667085;background:0 0;border-radius:0;font-weight:700}.fc .fc-day-today .fc-daygrid-day-number>span:first-child{background:var(--blue);color:#fff;border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.fc .fc-daygrid-event-harness{margin:2px 3px}.fc .fc-daygrid-event{cursor:pointer;white-space:normal;border:0;border-left:3px solid;border-radius:6px;min-height:35px;margin:0;padding:0;overflow:hidden}.fc .fc-daygrid-event.shift-event{background-color:var(--fc-event-bg-color);border-left-color:var(--fc-event-border-color);color:var(--fc-event-text-color)}.fc .fc-daygrid-event.shift-morning{color:#1e40af;background:#eff6ff;border-color:#3b82f6}.fc .fc-daygrid-event.shift-afternoon{color:#92400e;background:#fffbeb;border-color:#f59e0b}.fc .fc-daygrid-event.shift-night{color:#5b21b6;background:#f5f3ff;border-color:#7c3aed}.fc .fc-daygrid-event.holiday-event{color:#be123c;background:#fff1f2;border-color:#f43f5e;min-height:20px}.fc .fc-event-main{color:inherit;width:100%}.fc-shift-content{align-items:center;gap:6px;width:100%;min-width:0;padding:4px 5px;display:flex}.fc-shift-content .tiny-avatar{width:23px;height:23px;font-size:9px}.fc-shift-content .shift-copy strong{font-size:12px}.fc-shift-content .shift-copy small{font-size:9px}.fc-holiday-content{text-overflow:ellipsis;white-space:nowrap;padding:4px 6px;font-size:10px;display:block;overflow:hidden}.fc .fc-daygrid-more-link{color:#667085;padding:2px 7px;font-size:11px;font-weight:600}.fc .fc-more-popover{border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 14px 40px #11182724}.fc .fc-more-popover .fc-popover-header{background:#f8fafc;padding:8px;font-size:11px}.week-header{border-bottom:1px solid var(--line);background:#fafbfc;grid-template-columns:repeat(7,1fr);display:grid}.week-header span{color:#667085;text-align:center;padding:9px;font-size:10px;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,minmax(112px,1fr));display:grid}.day-cell{border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:105px;padding:6px;transition:background .15s}.day-cell:nth-child(7n){border-right:0}.day-cell:hover{background:#fbfdff}.day-cell.outside{background:#fafbfc}.day-cell.outside .day-number{color:#cbd5e1}.day-cell.holiday{background:linear-gradient(135deg,#fff,#fff7f7)}.day-number{color:#667085;justify-content:space-between;min-height:21px;margin-bottom:3px;font-size:10px}.day-number,.day-number>span{align-items:center;display:flex}.day-number>span{justify-content:center;width:22px;height:22px}.day-number .today{background:var(--blue);color:#fff;border-radius:50%;font-weight:700}.day-number button{color:#cbd5e1;background:0 0;padding:2px;display:none}.day-cell:hover .day-number button{display:flex}.holiday-name{color:#e11d48;text-overflow:ellipsis;white-space:nowrap;padding:0 2px 3px;font-size:8px;display:block;overflow:hidden}.shift-chip{text-align:left;border-left:3px solid;border-radius:5px;align-items:center;gap:5px;width:100%;max-width:100%;min-height:29px;margin:3px 0;padding:3px 4px;display:flex}.shift-chip.morning{color:#1e40af;background:#eff6ff;border-color:#3b82f6}.shift-chip.afternoon{color:#92400e;background:#fffbeb;border-color:#f59e0b}.shift-chip.night{color:#5b21b6;background:#f5f3ff;border-color:#7c3aed}.tiny-avatar{background:#ffffffc7;border-radius:50%;flex:none;justify-content:center;align-items:center;width:19px;height:19px;font-size:7px;font-weight:800;display:flex}.shift-copy{flex-direction:column;flex:1;min-width:0;display:flex}.shift-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.shift-copy small{opacity:.72;font-size:7px}.more-shifts{color:#667085;padding:2px 5px;font-size:8px;display:block}.modal-backdrop{z-index:50;background:#11182780;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:16px;width:480px;max-width:100%;padding:24px;box-shadow:0 22px 70px #11182742}.department-form-modal{overscroll-behavior:contain;scrollbar-gutter:stable;width:640px;max-height:calc(100dvh - 40px);overflow:hidden auto}.modal-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.modal-head h2{margin:2px 0 0;font-size:21px}.modal-subtitle{color:#667085;margin-top:4px;font-size:11px;display:block}.auto-schedule-modal{width:620px;max-height:calc(100vh - 40px);overflow-y:auto}.auto-department-field{margin-bottom:14px}.auto-department-field>small{color:#2563eb;margin-top:5px;font-size:10px}.auto-requirements{border:1px solid var(--line);border-radius:10px;margin:6px 0 15px;overflow:hidden}.auto-section-title{border-bottom:1px solid var(--line);background:#f8fafc;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.auto-section-title span{font-size:12px;font-weight:700}.auto-section-title small{color:#98a2b3;font-size:9px}.auto-shift-row{border-bottom:1px solid #eef0f3;grid-template-columns:6px 1fr 64px 45px;align-items:center;gap:9px;padding:10px 12px;display:grid}.auto-shift-row:last-child{border-bottom:0}.auto-shift-row>i{border-radius:3px;height:30px}.auto-shift-row>span{flex-direction:column;display:flex}.auto-shift-row strong{font-size:12px}.auto-shift-row small{color:#98a2b3;margin-top:2px;font-size:9px}.auto-shift-row input{text-align:center;border:1px solid #d8dde6;border-radius:7px;width:64px;min-height:34px;padding:5px 7px}.auto-shift-row em{color:#667085;font-size:9px;font-style:normal}.auto-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.auto-options>label{border:1px solid var(--line);cursor:pointer;border-radius:9px;align-items:flex-start;gap:8px;padding:10px;display:flex}.auto-options input{accent-color:var(--blue);margin-top:3px}.auto-options span{flex-direction:column;display:flex}.auto-options strong{font-size:10px}.auto-options small{color:#98a2b3;margin-top:2px;font-size:8px;line-height:1.4}.auto-note{color:#1d4ed8;background:#eff6ff;border-radius:8px;align-items:flex-start;gap:7px;margin:14px 0 0;padding:10px;font-size:10px;line-height:1.55;display:flex}.auto-note svg{flex:none;margin-top:1px}.auto-schedule-tools{background:#fff7ed;border:1px solid #fed7aa;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px;display:flex}.auto-schedule-tools>div:first-child{gap:2px;display:grid}.auto-schedule-tools strong{color:#9a3412;font-size:11px}.auto-schedule-tools small{color:#9a6b52;font-size:9px}.auto-schedule-tools>div:last-child{flex:none;gap:7px;display:flex}.auto-schedule-tools button{min-height:36px;padding:0 11px}.swap-request-modal{width:540px}.selected-shift-summary{border:1px solid var(--line);background:#f8fafc;border-radius:10px;align-items:center;gap:11px;margin-bottom:18px;padding:12px;display:flex}.selected-shift-summary .drawer-avatar{width:40px;height:40px}.selected-shift-summary>div{flex-direction:column;min-width:0;display:flex}.selected-shift-summary strong{font-size:13px}.selected-shift-summary small{color:#667085;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.request-type-choice{border:0;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0;padding:0;display:grid}.request-type-choice legend{margin-bottom:8px;font-size:12px;font-weight:700}.request-type-choice label{cursor:pointer;border:1px solid #dfe3e9;border-radius:9px;align-items:flex-start;gap:9px;padding:11px;display:flex}.request-type-choice label.selected{background:#eff6ff;border-color:#60a5fa}.request-type-choice input{accent-color:var(--blue);margin-top:3px}.request-type-choice label span{flex-direction:column;display:flex}.request-type-choice strong{font-size:12px}.request-type-choice small{color:#667085;margin-top:2px;font-size:9px;line-height:1.45}.swap-target-field .field{margin-bottom:8px}.swap-target-status{color:#15803d;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:9px 10px;display:flex}.swap-target-status>span{align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.swap-target-status.locked{color:#a16207;background:#fffbeb;border-color:#fde68a}.swap-target-status button{color:#92400e;background:#fff;border:1px solid #fcd34d;border-radius:7px;align-items:center;gap:5px;min-height:31px;padding:0 9px;font-size:10px;font-weight:700;display:inline-flex}.swap-target-status button:hover{background:#fef3c7}.swap-target-status button:disabled{cursor:wait;opacity:.65}.field{flex-direction:column;gap:7px;margin:14px 0;display:flex}.field>span,.shift-choice legend{font-size:12px;font-weight:700}.field input,.field select,.field textarea{resize:vertical;background:#fff;border:1px solid #d8dde6;border-radius:8px;outline:none;min-height:42px;padding:8px 11px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe}.field input:disabled,.field select:disabled,.field textarea:disabled{color:#667085;cursor:not-allowed;background:#f8fafc}.field-hint{color:#98a2b3;font-size:10px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.shift-choice{border:0;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0;padding:0;display:grid}.shift-choice legend{margin-bottom:8px}.shift-choice legend small{color:#667085;margin-left:4px;font-size:10px;font-weight:500}.shift-choice label{cursor:pointer;border:1px solid #dfe3e9;border-radius:9px;grid-template-columns:13px 10px 1fr;align-items:center;gap:3px;padding:10px;display:grid}.shift-choice label.selected{background:#eff6ff;border-color:#60a5fa}.shift-choice input{display:none}.shift-choice strong{white-space:nowrap;font-size:12px}.shift-choice small{color:var(--muted);grid-column:2/-1;align-items:center;gap:4px;font-size:9px;display:flex}.shift-choice-empty{color:#667085;text-align:center;background:#f8fafc;border:1px dashed #d8dde6;border-radius:9px;grid-column:1/-1;margin:0;padding:14px;font-size:11px}.add-employee-picker{border:0;margin:14px 0 4px;padding:0}.add-employee-picker legend{width:100%;margin-bottom:8px;font-size:12px;font-weight:700}.add-employee-picker legend small{color:#667085;float:right;font-size:10px;font-weight:500}.add-employee-toolbar{grid-template-columns:minmax(0,1fr) 125px;gap:8px;display:grid}.add-employee-toolbar select{color:#344054;background:#fff;padding:0 9px;font-size:11px}.add-employee-search,.add-employee-toolbar select{border:1px solid #d0d5dd;border-radius:9px;min-height:40px}.add-employee-search{color:#98a2b3;align-items:center;gap:7px;padding:0 10px;display:flex}.add-employee-search:focus-within{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe}.add-employee-search input{border:0;outline:0;width:100%;min-width:0;font-size:11px}.add-employee-selection-head{justify-content:space-between;align-items:center;min-height:34px;display:flex}.add-employee-selection-head small{color:#667085;font-size:10px}.add-employee-selection-head button{color:var(--blue);background:0 0;padding:4px 0;font-size:10px;font-weight:700}.add-employee-selection-head button:disabled{color:#98a2b3;cursor:not-allowed}.add-employee-list{border:1px solid #e4e7ec;border-radius:10px;max-height:220px;padding:5px;overflow-y:auto}.add-employee-list>label{cursor:pointer;border:1px solid #0000;border-radius:8px;grid-template-columns:18px 32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;display:grid}.add-employee-list>label:hover{background:#f8fafc}.add-employee-list>label.selected{background:#eff6ff;border-color:#bfdbfe}.add-employee-list>label.disabled{cursor:not-allowed;opacity:.58}.add-employee-list input{accent-color:var(--blue);width:15px;height:15px}.add-employee-list .employee-avatar{width:30px;height:30px}.add-employee-list>label>span{flex-direction:column;min-width:0;display:flex}.add-employee-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.add-employee-list label small{color:#667085;font-size:9px}.add-employee-list .assigned-label{color:#667085;background:#f2f4f7;border-radius:999px;padding:3px 6px}.add-employee-empty{color:#667085;text-align:center;margin:0;padding:18px;font-size:11px}.add-shift-modal{max-height:calc(100vh - 40px);overflow-y:auto}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin-top:20px;padding-top:17px;display:flex}.toast{color:#fff;pointer-events:none;z-index:100;background:#172033;border-radius:9px;align-items:center;gap:8px;max-width:min(420px,100vw - 32px);padding:11px 15px;font-size:13px;line-height:1.45;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 35px #11182740}.toast svg{color:#4ade80;flex:none}.toast.error{background:#7f1d1d}.toast.error svg{color:#fecaca}.fade-enter-active,.fade-leave-active{transition:opacity .2s,transform .2s}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(7px)}@media (width<=520px){.toast{bottom:16px;right:16px}}.shift-drawer-layer{z-index:45;background:#11182745;position:fixed;inset:0}.shift-drawer{background:#fff;flex-direction:column;width:410px;max-width:100%;height:100%;margin-left:auto;padding:24px;display:flex;overflow-y:auto;box-shadow:-16px 0 45px #11182724}.drawer-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:18px;display:flex}.drawer-head h2{letter-spacing:-.4px;margin:3px 0 0;font-size:22px}.drawer-person{background:linear-gradient(135deg,#f8fbff,#eff6ff);border:1px solid #dbeafe;border-radius:12px;gap:12px;margin:20px 0 4px;padding:14px}.drawer-avatar,.drawer-person{align-items:center;display:flex}.drawer-avatar{background:var(--blue);color:#fff;border-radius:50%;justify-content:center;width:46px;height:46px;font-size:14px;font-weight:800}.drawer-person>div{flex-direction:column;display:flex}.drawer-person strong{font-size:15px}.drawer-person small{color:#667085;margin-top:3px;font-size:12px}.drawer-section{border-bottom:1px solid var(--line);padding:20px 0}.drawer-section h3{margin:0 0 13px;font-size:13px}.shift-details{flex-direction:column;gap:12px;margin:0;display:flex}.shift-details>div{justify-content:space-between;align-items:center;font-size:13px;display:flex}.shift-details dt{color:#667085}.shift-details dd{text-align:right;align-items:center;gap:7px;margin:0;font-weight:600;display:flex}.fatigue-card{border:1px solid;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.fatigue-card.green{background:#f0fdf4;border-color:#bbf7d0}.fatigue-card.orange{background:#fffbeb;border-color:#fde68a}.fatigue-card.red{background:#fff1f2;border-color:#fecdd3}.fatigue-card .fatigue{width:9px;height:9px;margin-top:4px}.fatigue-card strong{font-size:13px}.fatigue-card p{color:#667085;margin:3px 0 0;font-size:11px;line-height:1.55}.drawer-note{color:#667085;background:#f8fafc;border-radius:9px;margin:0;padding:12px;font-size:12px;line-height:1.65}.overtime-detail-value{align-items:center;gap:8px;display:flex}.overtime-detail-value>span{flex:1}.overtime-detail-value>button{color:#2563eb;background:#eff6ff;border-radius:6px;padding:5px 8px;font-size:10px;font-weight:700}.overtime-detail-value>button:disabled{color:#98a2b3;cursor:not-allowed;background:#f2f4f7}.overtime-rate-note{color:#667085;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:9px;margin:14px 0 0;padding:11px 12px;font-size:11px}.overtime-rate-note strong{color:#6d28d9}.overtime-modal-actions{grid-template-columns:auto 1fr 1fr}.drawer-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:auto;padding-top:22px;display:grid}.day-lock-status{color:#475467;background:#f2f4f7;border-radius:20px;align-items:center;gap:4px;margin-left:6px;padding:4px 7px;font-size:9px;display:inline-flex}.day-lock-status.unlocked{color:#15803d;background:#ecfdf3}.day-lock-toggle{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:40px;margin-top:20px;font-size:12px;font-weight:700;display:inline-flex}.day-lock-toggle:hover{background:#dbeafe}.day-lock-toggle.unlocked{color:#475467;background:#f8fafc;border-color:#dfe3e9}.day-lock-toggle.unlocked:hover{background:#f2f4f7}.day-lock-toggle:disabled{cursor:wait;opacity:.65}.day-lock-toggle.past:disabled{cursor:not-allowed}.cancel-shift-button{color:#be123c;background:#fff1f2;border:1px solid #fecdd3;border-radius:9px;grid-column:1/-1;justify-content:center;align-items:center;gap:7px;min-height:40px;font-size:13px;font-weight:700;display:inline-flex}.cancel-shift-button:hover{background:#ffe4e6}.cancel-shift-button:disabled{cursor:not-allowed;opacity:.45}.danger-btn{color:#fff;background:#e11d48;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 16px;font-size:13px;font-weight:700;display:inline-flex}.danger-btn:hover{background:#be123c}.danger-btn:disabled{cursor:wait;opacity:.65}.danger-text{color:#e11d48}.cancel-shift-summary{background:#fff7f8;border:1px solid #ffe4e6;border-radius:11px;align-items:center;gap:12px;padding:14px;display:flex}.cancel-icon{color:#e11d48;background:#ffe4e6;border-radius:9px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.cancel-shift-summary>div{flex-direction:column;display:flex}.cancel-shift-summary strong{font-size:14px}.cancel-shift-summary p{color:#475467;margin:3px 0;font-size:11px}.cancel-shift-summary small{color:#98a2b3;font-size:10px}.cancel-warning{color:#667085;margin:13px 0 0;font-size:11px;line-height:1.6}.drawer-enter-active,.drawer-leave-active{transition:background .22s}.drawer-enter-active .shift-drawer,.drawer-leave-active .shift-drawer{transition:transform .25s}.drawer-enter-from,.drawer-leave-to{background:0 0}.drawer-enter-from .shift-drawer,.drawer-leave-to .shift-drawer{transform:translate(100%)}.content-page{max-width:1250px}.setting-card,.table-card{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 2px 10px #11182708}.table-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:14px 17px;display:flex}.search-box.wide{width:320px}.search-box.wide input{width:100%}.data-table{min-width:1040px}.table-row{border-bottom:1px solid #eef0f3;grid-template-columns:2fr .7fr 1.15fr 1.1fr 1fr .8fr 110px;align-items:center;gap:18px;min-height:69px;padding:9px 18px;font-size:12px;display:grid}.table-row:last-child{border-bottom:0}.table-row>span{align-items:center;gap:6px;display:flex}.table-head{color:#667085;text-transform:uppercase;background:#fafbfc;min-height:41px;font-size:10px;font-weight:700}.person-cell{gap:10px!important}.employee-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:10px;font-style:normal;font-weight:800;display:flex}.person-cell>span{flex-direction:column;display:flex}.person-cell small{color:#98a2b3;align-items:center;gap:4px;margin-top:3px;font-size:9px;display:flex}.mono{color:#475467;font-family:ui-monospace,monospace}.status-pill{color:#15803d;background:#ecfdf3;border-radius:20px;padding:4px 8px;font-size:9px;font-style:normal}.employee-actions{justify-content:flex-end;gap:6px;display:flex}.employee-action{color:#667085;background:#f8fafc;border:1px solid #e4e7ec;border-radius:7px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.employee-action.share:hover{color:#059669;background:#ecfdf3;border-color:#a7f3d0}.employee-action.edit:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.employee-action.delete:hover{color:#e11d48;background:#fff1f2;border-color:#fecdd3}.bulk-email-modal,.employee-share-modal{width:520px}.bulk-email-summary{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;align-items:center;gap:11px;margin-bottom:14px;padding:12px;display:flex}.bulk-email-summary>i{color:#2563eb;background:#dbeafe;border-radius:9px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.bulk-email-summary>span{flex-direction:column;min-width:0;display:flex}.bulk-email-summary strong{font-size:13px}.bulk-email-summary small{color:#667085;margin-top:3px;font-size:10px;line-height:1.5}.bulk-email-recipients{border:1px solid #e4e7ec;border-radius:10px;margin-bottom:14px;overflow:hidden}.bulk-email-recipients-head{background:#f8fafc;border-bottom:1px solid #e4e7ec;justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.bulk-email-recipients-head>span{flex-direction:column;display:flex}.bulk-email-recipients-head strong{font-size:11px}.bulk-email-recipients-head small{color:#98a2b3;margin-top:1px;font-size:9px}.bulk-email-recipients-head button{color:var(--blue);background:0 0;font-size:10px;font-weight:700}.bulk-email-recipients-head button:disabled{opacity:.5}.bulk-email-search{color:#98a2b3;border-bottom:1px solid #e4e7ec;align-items:center;gap:7px;padding:8px 11px;display:flex}.bulk-email-search input{color:#172033;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:2px 0;font-size:11px}.bulk-email-search input::placeholder{color:#98a2b3}.bulk-email-recipient-list{max-height:220px;overflow-y:auto}.bulk-email-recipient{cursor:pointer;align-items:center;gap:9px;padding:9px 11px;display:flex}.bulk-email-recipient+.bulk-email-recipient{border-top:1px solid #f0f2f5}.bulk-email-recipient:hover{background:#f8fbff}.bulk-email-recipient input{accent-color:var(--blue);flex:none;width:15px;height:15px}.bulk-email-recipient .employee-avatar{flex:none;width:32px;height:32px}.bulk-email-recipient>span{flex-direction:column;min-width:0;display:flex}.bulk-email-recipient>span strong{font-size:11px}.bulk-email-recipient>span small{color:#98a2b3;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:9px;overflow:hidden}.bulk-email-empty{color:#98a2b3;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:90px;padding:18px;font-size:10px;display:flex}.share-status-loading{color:#98a2b3;text-align:center;padding:24px 0;font-size:11px}.share-active-status{color:#047857;background:#ecfdf3;border:1px solid #a7f3d0;border-radius:10px;align-items:center;gap:10px;margin-bottom:14px;padding:11px 12px;display:flex}.share-active-status>svg{flex:none}.share-active-status>span{flex-direction:column;display:flex}.share-active-status strong{font-size:12px}.share-active-status small{color:#4b8f79;margin-top:2px;font-size:9px}.share-security-note{color:#667085;background:#f8fafc;border-radius:8px;margin:11px 0;padding:9px 10px;font-size:10px;line-height:1.55}.generated-share-link{align-items:stretch;margin-top:11px;display:flex}.generated-share-link input{color:#475467;border:1px solid #bfdbfe;border-radius:8px 0 0 8px;outline:none;flex:1;min-width:0;padding:9px 10px;font-size:10px}.generated-share-link button{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-left:0;border-radius:0 8px 8px 0;justify-content:center;align-items:center;width:40px;display:flex}.share-modal-actions{align-items:center}.share-modal-actions>span{flex:1}.share-modal-actions .primary-btn,.share-modal-actions .secondary-btn{align-items:center;gap:6px;display:inline-flex}.danger-link-button{color:#be123c;background:0 0;padding:7px 0;font-size:10px;font-weight:700}.danger-link-button:disabled{opacity:.6}.employee-active-field{cursor:pointer;background:#f8fafc;border:1px solid #e4e7ec;border-radius:9px;align-items:flex-start;gap:10px;margin-top:13px;padding:12px;display:flex}.employee-active-field input{accent-color:var(--blue);width:16px;height:16px;margin-top:2px}.employee-active-field>span{flex-direction:column;display:flex}.employee-active-field strong{font-size:12px}.employee-active-field small{color:#667085;margin-top:2px;font-size:10px;line-height:1.5}.empty-state{color:#98a2b3;flex-direction:column;align-items:center;gap:6px;padding:60px;display:flex}.empty-state strong{color:#344054}.request-list{flex-direction:column;gap:11px;display:flex}.request-card{border:1px solid var(--line);background:#fff;border-radius:12px;gap:15px;padding:18px}.request-card,.request-icon{align-items:center;display:flex}.request-icon{color:var(--blue);background:#eff6ff;border-radius:10px;justify-content:center;width:44px;height:44px}.request-content{flex:1}.request-content>div{align-items:center;gap:8px;display:flex}.request-content i{color:#667085;background:#f3f4f6;border-radius:20px;padding:3px 7px;font-size:9px;font-style:normal}.request-content h3{margin:5px 0 2px;font-size:14px}.request-content p{color:var(--muted);margin:0 0 5px;font-size:11px}.request-content small{color:#98a2b3;align-items:center;gap:4px;font-size:9px;display:flex}.request-actions{gap:8px;display:flex}.request-actions button{border-radius:8px;align-items:center;gap:5px;padding:8px 11px;font-size:11px;font-weight:700;display:flex}.reject{color:#be123c;background:#fff1f2}.approve{color:#15803d;background:#ecfdf3}.decision{white-space:nowrap;border-radius:20px;padding:6px 10px;font-size:10px;display:inline-block}.decision.approved{color:#15803d;background:#ecfdf3}.decision.rejected{color:#be123c;background:#fff1f2}.decision.pending{color:#a16207;background:#fffbeb}.history-report-page{max-width:1480px}.report-total{border:1px solid var(--line);color:var(--blue);background:#fff;border-radius:11px;align-items:center;gap:9px;padding:10px 14px;display:flex}.report-total>span{flex-direction:column;display:flex}.report-total strong{font-size:17px;line-height:1}.report-total small{color:#98a2b3;margin-top:3px;font-size:9px}.report-filters{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(120px,.8fr)) repeat(2,minmax(145px,.9fr)) auto auto;align-items:center;gap:8px;padding:13px;display:grid}.report-filters input,.report-filters select{background:#fff;border:1px solid #d8dde6;border-radius:8px;outline:none;width:100%;min-height:38px;padding:7px 9px;font-size:11px}.report-filters input:focus,.report-filters select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe}.report-search{color:#98a2b3;align-items:center;display:flex;position:relative}.report-search svg{position:absolute;left:10px}.report-search input{padding-left:32px}.date-filter{grid-template-columns:auto 1fr;align-items:center;gap:5px;display:grid}.date-filter span{color:#667085;font-size:9px}.filter-reset,.filter-submit{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:38px;padding:0 11px;font-size:10px;font-weight:700;display:inline-flex}.filter-submit{background:var(--blue);color:#fff}.filter-reset{color:#475467;background:#f8fafc;border:1px solid #e4e7ec}.history-table-wrap{overflow-x:auto}.history-table{border-collapse:collapse;width:100%;min-width:1180px}.history-table th{border-bottom:1px solid var(--line);color:#475467;letter-spacing:.02em;text-align:left;background:#f8fafc;padding:13px 15px;font-size:12px;font-weight:750}.history-table td{color:#1d2939;vertical-align:middle;border-bottom:1px solid #e4e7ec;padding:15px;font-size:13px;font-weight:500;line-height:1.5}.history-table tbody tr:hover{background:#fbfdff}.history-date,.history-detail,.history-people{display:table-cell}.history-date strong,.history-detail strong,.history-people strong{color:#101828;font-size:13px;font-weight:750;display:block}.history-date small,.history-detail small,.history-people span{color:#667085;gap:5px;margin-top:4px;font-size:11px;font-weight:500;display:flex}.department-chip{color:#344054;white-space:nowrap;background:#f8fafc;border-radius:20px;align-items:center;gap:7px;padding:6px 10px;font-size:11px;font-weight:650;display:inline-flex}.department-chip i{border-radius:50%;width:8px;height:8px}.history-type{white-space:nowrap;border-radius:20px;padding:6px 10px;font-size:11px;font-weight:700;display:inline-block}.history-type.replacement{color:#1d4ed8;background:#eff6ff}.history-type.swap{color:#6d28d9;background:#f5f3ff}.history-table .decision{padding:7px 11px;font-size:11px;font-weight:750}.history-reason{max-width:230px;line-height:1.6;color:#475467!important;font-size:12px!important}.settings-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.database-setup-card{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:flex-start;gap:18px;max-width:720px;margin:0 auto;padding:28px;display:flex}.database-setup-icon{color:var(--blue);background:#eff6ff;border-radius:12px;flex:0 0 52px;justify-content:center;align-items:center;height:52px;display:flex}.database-setup-copy{flex:1}.database-setup-copy h2{margin:3px 0 7px;font-size:21px}.database-setup-copy>p:not(.eyebrow){color:#667085;margin:0 0 18px;font-size:13px;line-height:1.65}.database-setup-copy form{gap:12px;display:grid}.database-setup-copy .primary-btn{justify-self:start}.database-ready-card{color:#047857;background:#ecfdf3;border:1px solid #a7f3d0;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.database-ready-card span{align-items:center;gap:8px;display:flex}.database-ready-card code{color:#065f46;background:#d1fae5;border-radius:6px;padding:5px 8px;font-size:12px}.legal-payroll-note{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9px;margin-bottom:14px;padding:10px 12px;font-size:11px;line-height:1.6}.setting-card{padding-bottom:8px}.setting-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 17px;display:flex}.setting-head>span{align-items:center;gap:8px;display:flex}.setting-head-actions{align-items:center;gap:9px;display:flex}.setting-head-actions select{color:#344054;background:#fff;border:1px solid #d8dde6;border-radius:8px;outline:none;min-height:36px;padding:0 32px 0 10px}.setting-head-actions select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe}.primary-btn.compact{min-height:36px;padding:0 12px;font-size:11px}.small-add{color:var(--blue);background:#eff6ff;border-radius:7px;gap:4px;padding:6px 8px;font-size:10px}.setting-list p,.small-add{align-items:center;display:flex}.setting-list p{border-bottom:1px solid #f0f2f5;gap:9px;margin:0;padding:12px 17px;font-size:12px}.setting-list p:last-child{border:0}.setting-list>p>i{border-radius:3px;flex:0 0 10px;width:10px;height:10px}.setting-item-copy{flex-direction:column;flex:1;min-width:0;display:flex}.setting-item-copy strong{font-size:12px}.setting-item-copy small{color:#98a2b3;margin-top:2px;font-size:9px}.setting-item-actions{gap:5px;margin-left:auto;display:flex}.shift-setting-grid{grid-template-columns:repeat(3,1fr);gap:11px;padding:17px;display:grid}.shift-setting-grid article{border:1px solid var(--line);border-radius:10px;align-items:center;gap:10px;min-width:0;padding:13px;display:flex}.shift-setting-grid article>i{border-radius:4px;flex:0 0 6px;width:6px;height:31px}.shift-setting-grid article div{flex-direction:column;min-width:0;display:flex}.shift-setting-grid strong{font-size:12px}.shift-setting-grid small{color:#98a2b3;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.shift-setting-grid article>span{color:#475467;margin-left:auto;font-size:10px}.setting-icon-btn{color:#667085;background:#f8fafc;border:1px solid #e4e7ec;border-radius:7px;flex:0 0 30px;justify-content:center;align-items:center;height:30px;display:inline-flex}.setting-icon-btn:hover{color:var(--blue);background:#eff6ff;border-color:#bfdbfe}.setting-icon-btn.delete:hover{color:#e11d48;background:#fff1f2;border-color:#fecdd3}.empty-setting{color:#98a2b3;text-align:center;grid-column:1/-1;padding:28px;font-size:12px}.color-field>div{grid-template-columns:52px 1fr;gap:9px;display:grid}.color-field input[type=color]{cursor:pointer;width:52px;height:42px;padding:4px}.workforce-dashboard{max-width:1480px}.dashboard-heading{align-items:flex-end}.dashboard-heading .eyebrow{font-size:12px}.dashboard-heading h1{font-size:31px}.dashboard-heading>div>p:last-child{font-size:14px}.dashboard-period-filters{gap:8px;display:flex}.dashboard-period-filters label{flex-direction:column;gap:5px;display:flex}.dashboard-period-filters label span{color:#667085;font-size:11px;font-weight:700}.dashboard-period-filters input,.dashboard-period-filters select{color:#1d2939;background:#fff;border:1px solid #d8dde6;border-radius:8px;min-height:44px;padding:0 13px;font-family:inherit;font-size:14px}.dashboard-period-filters select{align-self:flex-end;padding-right:34px}.dashboard-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:15px;display:grid}.dashboard-summary-grid article{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:12px;min-width:0;padding:17px 15px;display:flex}.dashboard-summary-grid article>div{grid-template-columns:auto auto;min-width:0;display:grid}.dashboard-summary-grid article small{color:#667085;grid-column:1/-1;font-size:12px}.dashboard-summary-grid article strong{text-overflow:ellipsis;white-space:nowrap;font-size:25px;line-height:1.3;overflow:hidden}.dashboard-summary-grid article p{color:#98a2b3;align-self:center;margin:0 0 0 6px;font-size:12px}.summary-icon.rose{color:#e11d48;background:#fff1f2}.summary-icon.green{color:#059669;background:#ecfdf3}.wage-rate-card{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:15px;overflow:hidden}.wage-rate-head{border-bottom:1px solid var(--line);background:#fafbfc;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.wage-rate-head>div{flex-direction:column;display:flex}.wage-rate-head strong{font-size:15px}.wage-rate-head small,.wage-rate-head>span{color:#98a2b3;margin-top:3px;font-size:11px}.wage-rate-grid{grid-template-columns:repeat(4,minmax(280px,1fr));gap:8px;padding:12px;display:grid}.wage-rate-grid>article{border:1px solid #e4e7ec;border-radius:9px;grid-template-columns:5px minmax(90px,1fr) 160px;align-items:center;gap:9px;padding:11px;display:grid}.wage-rate-grid article>i{border-radius:3px;height:66px}.wage-rate-grid article>span{flex-direction:column;display:flex}.wage-rate-grid strong{font-size:14px}.wage-rate-grid small{color:#98a2b3;margin-top:2px;font-size:11px}.wage-rate-grid .shift-department{color:#475467;font-weight:700}.wage-rate-grid input{text-align:right;border:1px solid #d8dde6;border-radius:7px;width:100%;min-height:35px;padding:5px 7px;font-size:13px}.wage-rate-inputs{grid-template-columns:1fr 1fr;gap:6px;display:grid!important}.wage-rate-inputs label{flex-direction:column;gap:3px;min-width:0;display:flex}.wage-rate-inputs label>small{color:#667085;margin:0;font-size:9px;font-weight:700}.wage-rate-inputs label>span{align-items:center;display:flex;position:relative}.wage-rate-inputs label>span b{color:#667085;font-size:11px;position:absolute;left:7px}.wage-rate-inputs label>span input{padding-left:20px}.wage-rate-grid>p{color:#98a2b3;text-align:center;grid-column:1/-1;margin:5px;font-size:13px}.dashboard-report-card{overflow:hidden}.dashboard-table-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 16px;display:flex}.dashboard-table-toolbar>div{flex-direction:column;display:flex}.dashboard-table-toolbar strong{font-size:16px}.dashboard-table-toolbar small{color:#98a2b3;margin-top:2px;font-size:12px}.dashboard-table-toolbar .search-box input{font-size:13px}.dashboard-table-actions{align-items:center;gap:8px;flex-direction:row!important;display:flex!important}.excel-export-button{color:#fff;white-space:nowrap;background:#047857;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.excel-export-button:hover{background:#065f46}.excel-export-button:disabled{cursor:not-allowed;opacity:.55}.dashboard-export-error{color:#be123c;background:#fff1f2;border-bottom:1px solid #fecdd3;margin:0;padding:9px 16px;font-size:12px}.dashboard-table-scroll{overflow-x:auto}.workforce-table{border-collapse:collapse;width:100%;min-width:1240px}.workforce-table th{color:#667085;text-align:center;white-space:nowrap;background:#fafbfc;padding:13px 12px;font-size:12px;font-weight:700}.workforce-table th:first-child{text-align:left;z-index:3;background:#fafbfc;min-width:250px;position:sticky;left:0}.workforce-table th i{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.workforce-table td{text-align:center;white-space:nowrap;border-top:1px solid #eef0f3;padding:13px 12px;font-size:14px}.workforce-table td:first-child{z-index:2;background:#fff;position:sticky;left:0}.workforce-table tbody tr:hover,.workforce-table tbody tr:hover td:first-child{background:#fbfdff}.report-employee{text-align:left;align-items:center;gap:9px;display:flex}.report-employee>i{color:#fff;border-radius:50%;flex:0 0 40px;justify-content:center;align-items:center;height:40px;font-size:13px;font-style:normal;font-weight:800;display:flex}.report-employee>span{flex-direction:column;min-width:0;display:flex}.report-employee strong{font-size:14px}.report-employee small{color:#98a2b3;margin-top:3px;font-size:11px}.metric-cell{color:#475467;font-variant-numeric:tabular-nums}.metric-cell.total{color:var(--blue);font-size:16px;font-weight:800}.wage-cell{color:#047857;font-weight:700}.fatigue-score{flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:56px;padding:0;display:flex}.fatigue-ring{width:40px;height:40px;position:relative}.fatigue-ring svg{width:100%;height:100%;display:block;overflow:visible;transform:rotate(-90deg)}.fatigue-ring circle{fill:none;stroke-linecap:round;stroke-width:6px}.fatigue-ring-track{stroke:#ebe9e3}.fatigue-ring-value{stroke:#22c55e;transition:stroke-dasharray .45s}.fatigue-ring>span{color:#253044;justify-content:center;align-items:baseline;display:flex;position:absolute;inset:0}.fatigue-ring>span strong{align-self:center;font-size:13px;font-weight:600;line-height:1}.fatigue-ring>span small{align-self:center;margin:4px 0 0 1px;font-size:7px}.fatigue-score>small{color:#15803d;font-size:9px;font-weight:700}.fatigue-score.medium .fatigue-ring-value{stroke:#f59e0b}.fatigue-score.medium>small{color:#a16207}.fatigue-score.high .fatigue-ring-value{stroke:#ef4444}.fatigue-score.high>small{color:#be123c}.fatigue-disclaimer{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:9px;margin:12px 0 0;padding:11px 13px;font-size:12px;line-height:1.6}.auth-layout,.login-page{min-height:100vh}.login-page{grid-template-columns:1.05fr .95fr;display:grid}.login-showcase{color:#fff;background:linear-gradient(150deg,#172554,#1e40af 55%,#2563eb);flex-direction:column;padding:42px 8%;display:flex;position:relative;overflow:hidden}.login-showcase:after,.login-showcase:before{content:"";border:1px solid #ffffff16;border-radius:50%;width:550px;height:550px;position:absolute;top:-170px;right:-220px}.login-showcase:after{width:330px;height:330px;inset:auto auto -150px -160px}.brand.light{color:#fff;z-index:2;position:relative}.brand.light .brand-mark{color:var(--blue);background:#fff}.showcase-copy{z-index:2;max-width:540px;margin:auto 0;position:relative}.showcase-pill{background:#ffffff14;border:1px solid #ffffff26;border-radius:20px;margin-bottom:20px;padding:7px 11px;font-size:11px;display:inline-block}.showcase-copy h1{letter-spacing:-2px;margin:0;font-size:clamp(38px,4.2vw,65px);line-height:1.12}.showcase-copy h1 em{color:#93c5fd;font-style:normal}.showcase-copy>p{color:#dbeafe;max-width:480px;margin:23px 0;font-size:15px;line-height:1.8}.showcase-copy ul{margin:0;padding:0;list-style:none}.showcase-copy li{color:#eff6ff;align-items:center;gap:9px;margin:11px 0;font-size:12px;display:flex}.showcase-copy li svg{color:#93c5fd;height:18px}.showcase-footer{color:#93c5fd;z-index:2;font-size:9px;position:relative}.login-form-wrap{background:#fff;justify-content:center;align-items:center;padding:42px;display:flex}.login-form{width:390px;max-width:100%}.login-form h2{letter-spacing:-1px;margin:4px 0;font-size:32px}.form-subtitle{color:var(--muted);margin:0 0 27px;font-size:13px}.password-input{position:relative}.password-input input{width:100%;padding-right:42px}.password-input button{color:#98a2b3;background:0 0;padding:6px;position:absolute;top:5px;right:6px}.login-options{justify-content:space-between;align-items:center;margin:16px 0;font-size:11px;display:flex}.login-options label{align-items:center;gap:6px;display:flex}.login-options input{accent-color:var(--blue)}.login-options a{color:var(--blue);font-weight:700}.login-button{background:var(--blue);color:#fff;border-radius:9px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:45px;font-size:14px;font-weight:700;display:flex}.login-button:hover{background:var(--blue-dark)}.login-button:disabled{opacity:.7}.social-auth-buttons{gap:9px;margin-top:20px;display:grid}.social-auth-button{background:#fff;border:1px solid #d8dde6;border-radius:9px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:44px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.social-auth-button:hover{background:#f8fafc;border-color:#b9c2d0;box-shadow:0 3px 10px #1118270d}.social-auth-button:disabled{cursor:wait;opacity:.6}.social-auth-button>span{border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-family:Arial,sans-serif;font-size:15px;font-weight:800;display:inline-flex}.social-auth-button.google{color:#fff;background:#ef4444;border-color:#ef4444}.social-auth-button.google:hover{background:#dc2626;border-color:#dc2626}.social-auth-button.google>span{color:#ef4444;background:#fff;border:none}.social-consent{color:#475569;text-align:center;margin:12px 3px 0;font-size:11px;line-height:1.5}.social-consent a{color:#1e293b;font-weight:700;text-decoration:underline}.auth-divider{color:#475569;text-align:center;align-items:center;gap:10px;margin:18px 0;font-size:12px;font-weight:500;display:flex}.auth-divider:after,.auth-divider:before{content:"";background:#e4e7ec;flex:1;height:1px}.demo-hint{color:#64748b;text-align:center;background:#f8fafc;margin-top:16px;font-size:10px}.demo-hint,.form-error{border-radius:7px;padding:8px}.form-error{color:#be123c;background:#fff1f2;font-size:11px}.form-success{color:#047857;background:#ecfdf3;border-radius:7px;align-items:center;gap:6px;padding:9px;font-size:12px;display:flex}.auth-switch{color:#667085;text-align:center;margin:15px 0 0;font-size:12px}.auth-switch a{color:var(--blue);font-weight:800}.register-form-wrap{padding-top:28px;padding-bottom:28px}.register-form-wrap .field{margin-bottom:12px}.profile-page{max-width:1100px}.profile-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px;display:grid}.profile-form-card,.profile-summary-card{border:1px solid var(--line);background:#fff;border-radius:13px}.profile-summary-card{flex-direction:column;align-items:center;padding:28px 20px;display:flex;position:sticky;top:92px}.profile-large-avatar{color:#1d4ed8;background:linear-gradient(145deg,#dbeafe,#bfdbfe);border:5px solid #eff6ff;border-radius:50%;justify-content:center;align-items:center;width:82px;height:82px;margin-bottom:13px;font-size:28px;font-weight:800;display:flex}.profile-summary-card>strong{font-size:17px}.profile-summary-card>span:not(.profile-large-avatar){color:#667085;overflow-wrap:anywhere;text-align:center;margin-top:4px;font-size:12px}.profile-summary-card>p{color:#1d4ed8;background:#eff6ff;border-radius:20px;align-items:center;gap:5px;margin:16px 0 0;padding:6px 10px;font-size:11px;font-weight:700;display:flex}.profile-forms{flex-direction:column;gap:16px;display:flex}.profile-form-card{overflow:hidden}.profile-form-card header{border-bottom:1px solid var(--line);background:#fafbfc;align-items:center;gap:11px;padding:15px 17px;display:flex}.profile-form-card header>span{color:var(--blue);background:#eff6ff;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.profile-form-card header>span.amber{color:#d97706;background:#fffbeb}.profile-form-card header>div{flex-direction:column;display:flex}.profile-form-card header strong{font-size:15px}.profile-form-card header small{color:#98a2b3;margin-top:2px;font-size:11px}.profile-form-body{padding:18px}.profile-input{position:relative}.profile-input>svg{color:#98a2b3;position:absolute;top:12px;left:12px}.profile-input input{width:100%;padding-left:39px}.profile-password-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.profile-form-actions{border-top:1px solid #eef0f3;justify-content:flex-end;margin-top:17px;padding-top:15px;display:flex}.subscription-page{max-width:1180px}.current-subscription-card{color:#fff;background:linear-gradient(110deg,#172554,#1e40af);border-radius:14px;grid-template-columns:48px minmax(0,1fr) auto auto;align-items:center;gap:14px;margin-bottom:18px;padding:18px 20px;display:grid}.subscription-current-icon{background:#ffffff1f;border-radius:11px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.current-subscription-card>div:nth-child(2){flex-direction:column;display:flex}.current-subscription-card>div>small{color:#bfdbfe;font-size:10px}.current-subscription-card>div>strong{margin-top:2px;font-size:19px}.current-subscription-card>div>p{color:#dbeafe;margin:2px 0 0;font-size:11px}.subscription-status{background:#ffffff1c;border:1px solid #ffffff2b;border-radius:20px;padding:6px 10px;font-size:11px;font-weight:700}.subscription-status.canceled,.subscription-status.expired{color:#fecdd3;background:#fff1f21c}.subscription-days{border-left:1px solid #ffffff2b;flex-direction:column;align-items:center;min-width:80px;padding-left:16px;display:flex}.subscription-days strong{font-size:22px}.subscription-days small{color:#bfdbfe;font-size:9px}.subscription-message{margin:0 0 14px}.subscription-locked-notice{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:11px;align-items:flex-start;gap:10px;max-width:850px;margin:0 auto 15px;padding:12px 14px;display:flex}.subscription-locked-notice svg{flex:none;margin-top:1px}.subscription-locked-notice div{flex-direction:column;display:flex}.subscription-locked-notice strong{font-size:13px}.subscription-locked-notice p{margin:2px 0 0;font-size:11px}.subscription-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:13px;max-width:850px;margin:0 auto;display:grid}.subscription-plan-card{border:1px solid var(--line);background:#fff;border-radius:13px;flex-direction:column;min-width:0;padding:18px;display:flex;position:relative}.subscription-plan-card.popular{border-color:#93c5fd;box-shadow:0 8px 25px #2563eb12}.subscription-plan-card.current{box-shadow:inset 0 0 0 2px #2563eb}.popular-label{background:var(--blue);color:#fff;border-radius:20px;align-items:center;gap:4px;padding:5px 8px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-11px;right:13px}.subscription-plan-card header{align-items:flex-start;gap:10px;display:flex}.subscription-plan-card header>span{color:var(--blue);background:#eff6ff;border-radius:9px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;display:flex}.subscription-plan-card header>div{flex-direction:column;display:flex}.subscription-plan-card header strong{font-size:16px}.subscription-plan-card header small{color:#667085;margin-top:3px;font-size:11px;line-height:1.5}.subscription-price{align-items:baseline;gap:5px;margin:19px 0 12px;display:flex}.subscription-price strong{font-size:25px}.subscription-price span{color:#98a2b3;font-size:11px}.subscription-limits{background:#f8fafc;border-radius:8px;flex-direction:column;gap:3px;padding:8px 9px;font-size:10px;display:flex}.billing-cycle-options{flex-direction:column;gap:6px;margin-top:11px;display:flex}.billing-cycle-options>button{text-align:left;background:#fff;border:1px solid #e4e7ec;border-radius:8px;justify-content:space-between;align-items:center;min-height:47px;padding:7px 9px;display:flex}.billing-cycle-options>button:hover{border-color:#bfdbfe}.billing-cycle-options>button.selected{background:#eff6ff;border-color:#60a5fa}.billing-cycle-options>button>span{flex-direction:column;display:flex}.billing-cycle-options strong{font-size:11px}.billing-cycle-options small{color:#667085;margin-top:1px;font-size:9px}.billing-cycle-options b{color:#1d4ed8;font-size:12px}.subscription-plan-card ul{flex-direction:column;gap:8px;margin:15px 0 18px;padding:0;list-style:none;display:flex}.subscription-plan-card li{color:#475467;align-items:center;gap:7px;font-size:11px;display:flex}.subscription-plan-card li svg{color:#10b981;flex:none}.subscription-select-button{color:var(--blue);background:#eff6ff;border-radius:8px;width:100%;min-height:40px;margin-top:auto;padding:0 12px;font-size:12px;font-weight:800}.subscription-select-button:hover{background:#dbeafe}.subscription-select-button.selected{color:#047857;background:#ecfdf3}.subscription-select-button:disabled{cursor:not-allowed;opacity:.75}.subscription-note{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;align-items:flex-start;gap:9px;margin-top:15px;padding:11px 13px;display:flex}.subscription-note svg{flex:none;margin-top:1px}.subscription-note div{flex-direction:column;display:flex}.subscription-note strong{font-size:12px}.subscription-note p{margin:2px 0 0;font-size:10px}.subscription-cancel{color:#667085;justify-content:flex-end;align-items:center;gap:9px;margin-top:14px;font-size:11px;display:flex}.subscription-cancel button{color:#be123c;background:0 0;padding:5px;font-size:11px;font-weight:700}.shared-schedule-page{max-width:760px;min-height:100vh;margin:0 auto;padding:26px 20px 45px}.shared-schedule-page:before{content:"";z-index:-1;background:linear-gradient(135deg,#eff6ff,#f5f3ff 55%,#ecfdf5);position:fixed;inset:0}.shared-schedule-brand{align-items:center;gap:8px;margin-bottom:22px;display:flex}.shared-schedule-brand>span{background:var(--blue);color:#fff;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.shared-schedule-brand strong{color:#172033;font-size:20px}.shared-schedule-brand small{color:#667085;border-left:1px solid #cbd5e1;margin-left:3px;padding-left:11px;font-size:10px}.shared-schedule-state{color:#667085;text-align:center;background:#fff;border:1px solid #e4e7ec;border-radius:16px;flex-direction:column;align-items:center;gap:8px;margin-top:70px;padding:55px 25px;display:flex;box-shadow:0 12px 40px #11182712}.shared-schedule-state>span{color:var(--blue);background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;display:flex}.shared-schedule-state strong{color:#172033;font-size:16px}.shared-schedule-state p{margin:0;font-size:11px}.shared-schedule-state.error>span{color:#e11d48;background:#fff1f2}.shared-loading-icon svg{animation:1.2s ease-in-out infinite shared-pulse}@keyframes shared-pulse{50%{opacity:.45;transform:scale(.92)}}.shared-employee-card{background:#fff;border:1px solid #e4e7ec;border-radius:15px;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:17px;display:grid;box-shadow:0 8px 30px #1118270d}.shared-employee-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.shared-employee-card>div{min-width:0}.shared-employee-card>div small{color:#98a2b3;font-size:9px}.shared-employee-card h1{color:#172033;text-overflow:ellipsis;white-space:nowrap;margin:1px 0 3px;font-size:20px;overflow:hidden}.shared-employee-card p{color:#667085;margin:0;font-size:10px}.shared-department{color:#475467;background:#f8fafc;border-radius:20px;align-items:center;gap:5px;padding:7px 9px;font-size:10px;display:flex}.shared-period-toolbar{grid-template-columns:38px 1fr 38px;align-items:center;gap:10px;margin:14px 0;display:grid}.shared-period-toolbar>button{color:#475467;background:#fff;border:1px solid #d8dde6;border-radius:9px;justify-content:center;align-items:center;height:38px;display:flex}.shared-period-toolbar>button:hover{color:var(--blue);border-color:#93c5fd}.shared-period-toolbar>div{grid-template-columns:1fr 100px;gap:8px;display:grid}.shared-period-toolbar select{color:#344054;background:#fff;border:1px solid #d8dde6;border-radius:9px;width:100%;height:38px;padding:0 10px;font-size:12px}.shared-shift-card{background:#fff;border:1px solid #e4e7ec;border-radius:15px;overflow:hidden;box-shadow:0 8px 30px #1118270d}.shared-shift-card>header{border-bottom:1px solid #eef0f3;justify-content:space-between;align-items:center;padding:17px 19px;display:flex}.shared-shift-card>header h2{color:#172033;margin:2px 0;font-size:18px}.shared-shift-card>header small{color:#98a2b3;font-size:9px}.shared-shift-card>header>strong{color:var(--blue);background:#eff6ff;border-radius:20px;padding:7px 10px;font-size:11px}.shared-shift-list{flex-direction:column;display:flex}.shared-shift-list article{border-bottom:1px solid #eef0f3;grid-template-columns:112px 5px minmax(0,1fr);align-items:center;gap:12px;min-height:78px;padding:12px 19px;display:grid}.shared-shift-list article:last-child{border-bottom:0}.shared-shift-list time{flex-direction:column;display:flex}.shared-shift-list time strong{color:#172033;font-size:19px}.shared-shift-list time small{color:#667085;margin-top:2px;font-size:9px}.shared-shift-list article>i{border-radius:4px;width:5px;height:42px}.shared-shift-list article>div{flex-direction:column;min-width:0;display:flex}.shared-shift-list article>div>strong{color:#172033;font-size:13px}.shared-shift-list article>div>span{color:#475467;align-items:center;gap:5px;margin-top:3px;font-size:10px;display:flex}.shared-shift-list article>div>small{color:#667085;margin-top:4px;font-size:9px}.shared-shift-list article>div>em{margin-top:4px;font-size:9px;font-style:normal;font-weight:700}.shared-empty-shifts{color:#98a2b3;text-align:center;flex-direction:column;align-items:center;padding:45px 20px;display:flex}.shared-empty-shifts strong{color:#344054;margin-top:8px;font-size:14px}.shared-empty-shifts p{margin:3px 0 0;font-size:10px;line-height:1.5}.shared-schedule-footer{color:#98a2b3;justify-content:center;align-items:center;gap:5px;padding-top:14px;font-size:9px;display:flex}.mobile-brand{display:none}.app-footer{color:#667085;background:#fff;border-top:1px solid #e4e7ec;justify-content:space-between;align-items:center;gap:24px;padding:18px max(24px,50vw - 620px);font-size:11px;display:flex}.app-footer-brand{flex-direction:column;gap:2px;display:flex}.app-footer-brand strong{color:#172033}.app-footer-brand span{color:#98a2b3;font-size:10px}.app-footer-contact{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.app-footer-contact a{color:#667085;align-items:center;gap:6px;transition:color .15s;display:flex}.app-footer-contact a:hover{color:#2563eb}.app-footer-contact span{align-items:center;gap:5px;font-size:12px;font-weight:500;display:flex}.app-footer-contact small{color:#98a2b3;font-weight:400;display:none}.app-footer nav{flex-wrap:wrap;gap:18px;display:flex}.app-footer a{color:#475467;text-decoration:none}.app-footer a:hover{color:#2563eb}.legal-page{color:#172033;background:#f6f8fc;min-height:100vh;padding-bottom:45px}.legal-header{background:#fff;border-bottom:1px solid #e4e7ec;justify-content:space-between;align-items:center;padding:16px max(24px,50vw - 460px);display:flex}.legal-header .brand{color:#2563eb;font-size:23px;font-weight:850;text-decoration:none}.legal-document{background:#fff;border:1px solid #e4e7ec;border-radius:18px;max-width:920px;margin:34px auto 18px;padding:46px 58px;box-shadow:0 8px 30px #0f172a0d}.legal-document h1{margin:4px 0;font-size:34px}.legal-updated{color:#98a2b3;font-size:12px}.legal-intro{color:#475467;border-bottom:1px solid #e4e7ec;margin:24px 0;padding-bottom:24px;font-size:16px;line-height:1.75}.legal-document section{margin-top:28px}.legal-document h2{margin-bottom:8px;font-size:19px}.legal-document section p{color:#475467;margin:0;font-size:14px;line-height:1.85}.legal-notice{color:#93370d;background:#fff8eb;border:1px solid #fedf89;border-radius:10px;margin-top:34px;padding:14px;font-size:12px;line-height:1.65}.legal-contact{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin-top:14px;padding:16px}.legal-contact>strong{color:#1e3a8a;font-size:14px}.legal-contact>div{flex-wrap:wrap;gap:10px 18px;margin-top:8px;display:flex}.legal-contact a{color:#2563eb;font-size:13px;font-weight:700;text-decoration:none}.legal-contact a:hover{text-decoration:underline}.legal-links{flex-wrap:wrap;justify-content:center;gap:22px;max-width:920px;margin:auto;display:flex}.legal-consent,.legal-links a{color:#475467;font-size:12px}.legal-consent{align-items:flex-start;gap:9px;line-height:1.5;display:flex}.legal-consent input{accent-color:#2563eb;width:16px;height:16px;margin-top:1px}.legal-consent a{color:#2563eb;font-weight:700}.privacy-actions{gap:22px;display:grid}.privacy-actions>div{border-bottom:1px solid #e4e7ec;padding-bottom:20px}.privacy-actions>div:last-of-type{border:0}.privacy-actions p{color:#667085;margin:5px 0 12px;font-size:12px;line-height:1.6}.privacy-actions .danger-zone input{border:1px solid #d0d5dd;border-radius:8px;margin-right:8px;padding:9px 11px}.audit-filters{border-bottom:1px solid #e4e7ec;align-items:center;gap:10px;padding:16px;display:flex}.audit-filters label{border:1px solid #d0d5dd;border-radius:8px;align-items:center;gap:7px;padding:0 10px;display:flex}.audit-filters input,.audit-filters select,.audit-filters+input{border:0}.audit-filters>input{border:1px solid #d0d5dd;border-radius:8px;padding:9px}.audit-table-wrap{overflow-x:auto}.audit-table-wrap table{border-collapse:collapse;width:100%;min-width:880px}.audit-table-wrap td,.audit-table-wrap th{text-align:left;vertical-align:top;border-bottom:1px solid #e4e7ec;padding:13px 15px}.audit-table-wrap th{color:#667085;background:#f8fafc;font-size:11px}.audit-table-wrap td{color:#344054;font-size:12px}.audit-table-wrap td small{color:#98a2b3;margin-top:3px;display:block}.audit-badge{color:#2563eb;background:#eff6ff;border-radius:999px;padding:4px 8px;font-weight:700;display:inline-block}.audit-table-wrap details summary{color:#2563eb;cursor:pointer}.audit-table-wrap pre{color:#d1e9ff;background:#101828;border-radius:8px;max-width:430px;max-height:260px;padding:10px;font-size:10px;overflow:auto}.billing-page{max-width:1240px}.billing-heading{margin-bottom:22px}.billing-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.billing-summary-grid article{background:#fff;border:1px solid #e4e7ec;border-radius:12px;align-items:center;gap:12px;min-height:86px;padding:15px;display:flex}.billing-summary-icon{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.billing-summary-icon.blue{color:#2563eb;background:#eff6ff}.billing-summary-icon.green{color:#039855;background:#ecfdf3}.billing-summary-icon.amber{color:#dc6803;background:#fff7e6}.billing-summary-icon.violet{color:#6938ef;background:#f4f3ff}.billing-summary-grid article>div{flex-wrap:wrap;align-items:baseline;min-width:0;display:flex}.billing-summary-grid small{color:#667085;flex-basis:100%;margin-bottom:2px;font-size:10px}.billing-summary-grid strong{color:#172033;font-size:23px;line-height:1.15}.billing-summary-grid strong.money{font-size:19px}.billing-summary-grid em{color:#98a2b3;margin-left:5px;font-size:10px;font-style:normal}.billing-table-head{border-bottom:1px solid #eaecf0;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.billing-table-head>div{flex-direction:column;display:flex}.billing-table-head strong{color:#172033;font-size:14px}.billing-table-head small{color:#98a2b3;margin-top:2px;font-size:10px}.billing-clear-filter{color:#2563eb;background:0 0;border:0;align-items:center;gap:4px;font-size:11px;font-weight:700;display:flex}.billing-filters{background:#fcfcfd;border-bottom:1px solid #eaecf0;grid-template-columns:minmax(250px,1fr) 160px 190px 190px;align-items:center;gap:9px;padding:13px 18px;display:grid}.billing-filters label{color:#667085;background:#fff;border:1px solid #d0d5dd;border-radius:8px;align-items:center;min-width:0;height:38px;padding:0 10px;display:flex}.billing-filters label:focus-within{border-color:#84adff;box-shadow:0 0 0 3px #eff4ff}.billing-filters input,.billing-filters select{color:#344054;background:0 0;border:0;outline:0;width:100%;min-width:0;height:100%;font-size:11px}.billing-search{gap:8px}.billing-select{gap:7px}.billing-date{grid-template-columns:auto 1fr;gap:7px;display:grid!important}.billing-date span{color:#98a2b3;white-space:nowrap;font-size:9px}.billing-table-wrap{overflow-x:auto}.billing-table{border-collapse:separate;border-spacing:0;width:100%;min-width:980px}.billing-table th{color:#667085;letter-spacing:.01em;text-align:left;background:#f8fafc;font-size:10px;font-weight:700}.billing-table td,.billing-table th{border-bottom:1px solid #eaecf0;padding:11px 16px}.billing-table td{color:#344054;vertical-align:middle;height:69px;font-size:11px}.billing-table tbody tr:last-child td{border-bottom:0}.billing-table tbody tr{transition:background .15s}.billing-table tbody tr:hover{background:#f8fbff}.billing-table .amount-column,.billing-table .billing-amount{text-align:right}.billing-table .action-column{width:220px}.billing-document-cell{align-items:center;gap:10px;display:flex}.billing-document-cell>i{color:#2563eb;background:#eff6ff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.billing-date-cell,.billing-document-cell>span,.billing-plan-cell{flex-direction:column;display:flex}.billing-document-cell strong{color:#1d4ed8;font-size:11px}.billing-date-cell small,.billing-document-cell small,.billing-plan-cell small{color:#98a2b3;margin-top:3px;font-size:9px}.billing-plan-cell strong{color:#172033;font-size:12px}.billing-date-cell{color:#344054}.billing-amount{white-space:nowrap;font-weight:800;color:#172033!important;font-size:12px!important}.billing-status{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:10px;font-weight:750;display:inline-flex}.billing-status i{border-radius:50%;width:6px;height:6px}.billing-status.paid{color:#027a48;background:#ecfdf3}.billing-status.paid i{background:#12b76a}.billing-status.pending{color:#b54708;background:#fffaeb}.billing-status.pending i{background:#f79009}.billing-status.failed{color:#b42318;background:#fef3f2}.billing-status.failed i{background:#f04438}.billing-actions{white-space:nowrap;align-items:center;gap:7px;display:flex}.billing-icon-action{color:#475467;background:#fff;border:1px solid #d0d5dd;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.billing-icon-action:hover{color:#2563eb;background:#eff6ff;border-color:#84adff}.billing-tax-action{color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 11px;font-size:10px;font-weight:700;display:flex}.billing-tax-action:hover{background:#f8fafc;border-color:#98a2b3}.billing-unavailable{color:#98a2b3;font-size:9px}.billing-pay-action{color:#fff;background:#2563eb;border:1px solid #2563eb;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:10px;font-weight:750;display:inline-flex}.billing-pay-action:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.billing-pay-action:disabled{cursor:wait;opacity:.6}.billing-payment-message{margin:0;padding:10px 18px}.billing-pagination{border-top:1px solid #eaecf0;justify-content:space-between;align-items:center;padding:13px 18px;display:flex}.billing-pagination>span{color:#667085;font-size:10px}.billing-pagination>div{gap:7px;display:flex}.billing-pagination button{color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:7px;align-items:center;gap:4px;padding:7px 10px;font-size:10px;font-weight:700;display:flex}.billing-pagination button:disabled{cursor:not-allowed;opacity:.45}.billing-loading{min-height:230px}.billing-empty span{color:#2563eb;background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;display:flex}.billing-empty p{color:#98a2b3;margin:0 0 5px;font-size:10px}.tax-form textarea{min-height:90px}@media (width<=1100px){.profile-copy{display:none}.topbar{padding:0 20px}.brand{min-width:150px}.calendar-page,.content-page{padding-left:20px;padding-right:20px}.planner-card{grid-template-columns:190px minmax(0,1fr)}.planner-sidebar{padding:13px}.toolbar-right .search-box{display:none}.calendar-grid{overflow:auto}.report-filters{grid-template-columns:repeat(4,1fr)}.report-search{grid-column:span 2}.dashboard-summary-grid{grid-template-columns:repeat(3,1fr)}.billing-summary-grid,.wage-rate-grid{grid-template-columns:repeat(2,1fr)}.billing-filters{grid-template-columns:minmax(250px,1fr) 160px}.billing-date{grid-row:2}}@media (width<=820px){.topbar{height:60px}.brand{min-width:auto}.brand>span:last-child{display:none}.brand-mark{width:34px;height:34px}.main-nav{margin:0 auto}.main-nav a{padding:0 10px}.main-nav a span:not(.nav-badge){display:none}.summary-grid{grid-template-columns:1fr;max-width:none}.planner-card{display:block}.planner-sidebar{display:none}.calendar-main{overflow-x:auto}.calendar-grid,.calendar-toolbar,.filter-pills,.fullcalendar-wrap,.week-header{min-width:800px}.page-heading{align-items:flex-start;gap:18px}.heading-actions .secondary-btn{display:none}.settings-grid,.shift-setting-grid{grid-template-columns:1fr}.report-filters{grid-template-columns:1fr 1fr}.report-search{grid-column:1/-1}.dashboard-heading{flex-direction:column;align-items:stretch}.dashboard-period-filters{grid-template-columns:1fr 1fr;width:100%;display:grid}.dashboard-period-filters label input{width:100%}.dashboard-period-filters select:last-child{grid-column:1/-1;width:100%}.dashboard-summary-grid{grid-template-columns:repeat(2,1fr)}.profile-layout{grid-template-columns:1fr}.profile-summary-card{position:static}.subscription-plan-grid{grid-template-columns:1fr}.login-page{display:block}.login-showcase{display:none}.login-form-wrap{min-height:100vh;padding:25px}.mobile-brand{color:var(--blue);align-items:center;gap:7px;margin-bottom:45px;font-size:19px;font-weight:800;display:flex}}@media (width<=560px){.calendar-page,.content-page{padding:22px 13px 35px}.top-actions .notification{display:none}.main-nav{gap:0}.main-nav a{padding:0 8px}.page-heading h1{font-size:24px}.heading-actions .primary-btn{padding:0 11px;font-size:0}.heading-actions .primary-btn svg{margin:0}.summary-card{padding:10px 12px}.modal-card{padding:18px}.add-employee-toolbar,.form-grid,.shift-choice{grid-template-columns:1fr}.form-grid{gap:0}.setting-head{align-items:flex-start;gap:12px}.setting-head-actions{flex-direction:column;align-items:stretch}.setting-head-actions .primary-btn,.setting-head-actions select{width:100%}.auto-options,.request-type-choice{grid-template-columns:1fr}.auto-schedule-tools{flex-direction:column;align-items:stretch}.auto-schedule-tools>div:last-child{grid-template-columns:1fr;display:grid}.shift-drawer{width:100%;padding:19px}.request-card{flex-wrap:wrap;align-items:flex-start}.request-actions{margin-left:59px}.report-filters{grid-template-columns:1fr}.report-search{grid-column:auto}.date-filter{grid-template-columns:35px 1fr}.table-card{overflow-x:auto}.table-toolbar{min-width:850px}.dashboard-summary-grid,.wage-rate-grid{grid-template-columns:1fr}.dashboard-table-toolbar{flex-direction:column;align-items:stretch;gap:10px}.dashboard-table-actions{align-items:stretch;flex-direction:column!important}.dashboard-table-toolbar .search-box.wide,.excel-export-button{width:100%}.profile-password-grid{grid-template-columns:1fr}.current-subscription-card{grid-template-columns:44px minmax(0,1fr)}.subscription-status{justify-self:start}.subscription-days{border-left:0;flex-direction:row;justify-self:start;gap:5px;padding-left:0}.shared-schedule-page{padding:16px 12px 32px}.shared-schedule-brand{margin-bottom:14px}.shared-employee-card{grid-template-columns:46px minmax(0,1fr);padding:14px}.shared-employee-avatar{width:44px;height:44px}.shared-department{grid-column:1/-1;justify-self:start}.shared-period-toolbar>div{grid-template-columns:1fr 92px}.shared-shift-list article{grid-template-columns:86px 4px minmax(0,1fr);gap:9px;padding:11px 13px}.app-footer,.app-footer-contact{flex-direction:column;align-items:flex-start;gap:12px}.app-footer-contact{width:100%}.app-footer-contact a{width:auto}.app-footer nav{gap:10px}.legal-document{border-radius:0;margin-top:12px;padding:28px 20px}.legal-document h1{font-size:27px}.audit-filters{flex-direction:column;align-items:stretch}.audit-filters label{height:40px}.audit-filters select{flex:1}.billing-filters,.billing-summary-grid{grid-template-columns:1fr}.billing-date{grid-row:auto}.billing-table-head{align-items:flex-start}.billing-pagination{gap:10px}.billing-pagination>div{margin-left:auto}}.language-switcher{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);color:#94a3b8;border-radius:999px;flex:none;align-items:center;gap:3px;padding:4px 7px;font:600 12px/1.2 Sarabun,sans-serif;display:inline-flex}.language-switcher button{appearance:none;color:#94a3b8;cursor:pointer;font:inherit;background:0 0;border:0;padding:2px 4px}.language-switcher button.active{color:var(--primary,#2563eb)}.language-switcher button:focus-visible{outline:2px solid var(--primary,#2563eb);outline-offset:2px;border-radius:4px}.auth-language{z-index:20;position:fixed;top:20px;right:24px}@media (width<=720px){.auth-language{top:14px;right:14px}}body{position:static!important;top:0!important}#google_translate_element,.goog-te-banner-frame,div.skiptranslate:not(#google_translate_element){display:none!important}.hover\:bg-gray-800:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}
