:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI Variable,Segoe UI,Noto Sans,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#202422;background:#f4f5f4;font-synthesis:none;text-rendering:optimizeLegibility;--primary: #3a3f3d;--primary-dark: #262a28;--primary-soft: #ecefed;--line: #dfe3e1;--muted: #6b716f;--text: #202422;--text-secondary: #4b514f;--surface: #ffffff;--surface-soft: #f7f8f7;--surface-hover: #eff1f0;--danger: #b04a48;--shadow: 0 16px 44px rgba(31, 36, 34, .09);--shadow-sm: 0 6px 18px rgba(31, 36, 34, .08);--shadow-dropdown: 0 14px 34px rgba(31, 36, 34, .16);--shadow-modal: 0 24px 70px rgba(0, 0, 0, .24);--control-height: 44px;--radius-sm: 11px;--radius-md: 14px;--radius-lg: 18px;--focus-ring: 0 0 0 3px rgba(77, 84, 81, .18);--transition-fast: .16s ease;--z-sticky: 20;--z-navigation: 30;--z-dropdown: 40;--z-modal: 50;--z-toast: 55;--z-picker: 60}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible,summary:focus-visible{outline:3px solid rgba(77,84,81,.3);outline-offset:2px}h1,h2,p{margin-top:0}.button{border:0;border-radius:12px;min-height:42px;padding:0 16px;font-weight:700;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{color:#fff;background:var(--primary);box-shadow:0 8px 20px #1f242233}.button.primary:hover:not(:disabled){background:var(--primary-dark)}.button.secondary{color:#3f4542;background:#ecefed;border:1px solid #d5dad7}.button.secondary:hover:not(:disabled){color:var(--primary-dark);background:#e2e5e3;border-color:#bec5c1}.button.ghost{color:#4b514f;background:transparent;border:1px solid var(--line)}.button.ghost:hover:not(:disabled){color:var(--primary-dark);background:var(--surface-hover);border-color:#c3c9c6}.button.danger{color:var(--danger)}.button.danger:hover:not(:disabled){color:#913a38;background:#fff0ef;border-color:#e5b9b6}.button.large{min-height:52px;font-size:1rem}.icon-button{width:40px;height:40px;border:0;border-radius:50%;background:#ecefed;font-size:1.6rem;color:#4b514f;transition:color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast)}.icon-button:hover:not(:disabled){color:var(--primary-dark);background:#e1e4e2}.eyebrow{display:block;color:var(--primary);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.admin-shell h1,.admin-shell h2,.admin-shell h3{letter-spacing:-.02em;line-height:1.2}.admin-shell h1{font-weight:700}.admin-shell h2,.admin-shell h3{font-weight:650}.admin-shell p{line-height:1.6}.admin-shell .button{font-weight:600}.admin-shell input,.admin-shell select,.admin-shell textarea,.admin-shell button{font-family:inherit}.form-error,.inline-error{color:#9b3735}.inline-error{padding:12px 14px;background:#fff0ef;border:1px solid #f3cfcd;border-radius:12px}.center-state{min-height:100vh;padding:32px;display:grid;place-content:center;justify-items:center;text-align:center}.center-state .state-mark{display:grid;place-items:center;width:112px;height:62px;margin-bottom:20px;padding:6px 8px;border:1px solid rgba(31,36,34,.12);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.center-state .state-mark .brand-logo-image{width:96px;height:48px;padding:5px 7px;background:linear-gradient(135deg,#4a504d,#2b302d)}.group-manager-page,.shift-manager-page{display:grid;gap:18px}.management-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:clamp(22px,3vw,34px);overflow:hidden;background:radial-gradient(circle at 88% 8%,rgba(210,214,212,.72),transparent 35%),linear-gradient(135deg,#fff,#f1f2f1)}.management-hero h2{margin:7px 0 6px;font-size:clamp(1.65rem,3vw,2.35rem)}.management-hero p{max-width:650px;margin:0;color:var(--muted);line-height:1.55}.management-hero-stat{min-width:150px;display:grid;justify-items:center;gap:2px;padding:16px 20px;color:#303533;background:#ffffffe0;border:1px solid rgba(55,61,58,.18);border-radius:18px;box-shadow:0 14px 34px #1f24221a}.management-hero-stat strong{font-size:2rem;font-variant-numeric:tabular-nums;line-height:1}.management-hero-stat span,.management-count,.management-list-heading>span{color:var(--muted);font-size:.8rem;font-weight:750}.group-manager-grid{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(440px,1.6fr);gap:18px;align-items:start}.management-create-card,.group-list-card,.shift-list-card,.shift-editor-card{min-width:0;padding:22px}.management-create-card{position:sticky;top:126px}.group-create-form{display:grid;gap:12px;margin-top:20px}.group-create-form .field{margin:0}.group-create-form .button,.shift-editor-card .button.primary{width:100%}.management-list-heading{align-items:center}.management-list-heading>span,.management-count{flex:0 0 auto;padding:6px 10px;color:#505653;background:#ecefed;border-radius:999px}.group-list-card .manage-list,.shift-list-card .shift-manage-list{gap:10px}.group-list-card .manage-row{display:grid;grid-template-columns:38px minmax(150px,1fr) auto;gap:10px;padding:10px;background:#fafbfa;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.group-list-card .manage-row:focus-within{border-color:#858c88;box-shadow:0 8px 24px #1f242214}.manage-row-index{display:inline-grid;place-items:center;width:34px;height:34px;color:#3f4542;background:#e8ebe9;border-radius:10px;font-size:.75rem;font-weight:850;font-variant-numeric:tabular-nums}.group-list-card .manage-row>input{width:100%;max-width:none}.shift-management-grid{align-items:start}.shift-list-card .panel-heading{align-items:center}.shift-list-card .shift-manage-row{min-height:64px;padding:10px 12px;box-shadow:inset 4px 0 0 var(--shift-dot, var(--shift-border))}.shift-list-card .shift-preview{font-variant-numeric:tabular-nums}.shift-editor-card{position:sticky;top:126px}.shift-editor-card .shift-editor{margin-top:20px}.shift-editor-card .shift-editor>.shift-preview{justify-content:center;min-height:48px;font-size:1rem;font-variant-numeric:tabular-nums}.time-pair input[inputmode=numeric]{font-variant-numeric:tabular-nums;letter-spacing:.02em}@media(max-width:900px){.group-manager-grid,.shift-management-grid{grid-template-columns:1fr}.management-create-card,.shift-editor-card{position:static}}@media(max-width:600px){.management-hero{align-items:stretch;flex-direction:column;gap:18px}.management-hero-stat{min-width:0;grid-template-columns:auto 1fr;justify-items:start;align-items:baseline;gap:8px}.management-hero-stat strong{font-size:1.7rem}.management-create-card,.group-list-card,.shift-list-card,.shift-editor-card{padding:16px}.management-list-heading{align-items:flex-start}.group-list-card .manage-row{grid-template-columns:34px minmax(0,1fr)}.group-list-card .manage-row .row-actions{grid-column:1 / -1;justify-content:flex-end;padding-top:2px}.shift-list-card .shift-manage-row{align-items:stretch;flex-direction:column}.shift-list-card .row-actions{justify-content:flex-end}}.scheduler-palette{top:82px;gap:0;padding:0;overflow:hidden;border-color:#dce2df;border-radius:18px;box-shadow:0 12px 32px #1f242217}.scheduler-palette-heading{padding:16px 16px 13px;background:radial-gradient(circle at 100% 0,rgba(58,63,61,.09),transparent 48%),#f8faf9;border-bottom:1px solid #e5e9e7}.scheduler-palette-kicker{display:block;margin-bottom:6px;color:var(--muted);font-size:.65rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.scheduler-palette .scheduler-palette-heading h3{margin:0 0 4px;font-size:1.08rem}.scheduler-palette .scheduler-palette-heading p{margin:0;font-size:.75rem;line-height:1.45}.scheduler-shift-list{display:grid;gap:8px;padding:14px}.scheduler-palette .scheduler-shift{min-height:44px;padding:7px 12px;border-radius:11px;cursor:grab;box-shadow:inset 4px 0 0 var(--shift-dot),inset 0 1px #ffffff7a;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.scheduler-palette .scheduler-shift:active:not(:disabled){cursor:grabbing}.scheduler-palette .scheduler-shift.dragging,.schedule-entry-wrap.dragging{opacity:.25}.scheduler-selection-status{position:relative;display:grid;gap:3px;margin:12px 14px 0;padding:10px 36px 10px 12px;color:var(--shift-ink);background:var(--shift-bg);border:1px solid var(--shift-border);border-radius:11px;box-shadow:inset 4px 0 0 var(--shift-dot)}.scheduler-selection-status>span{font-size:.62rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.scheduler-selection-status>strong{font-size:.76rem;font-variant-numeric:tabular-nums;line-height:1.3}.scheduler-selection-status>button{position:absolute;top:50%;right:8px;width:24px;height:24px;display:grid;place-items:center;padding:0;color:var(--shift-ink);background:#ffffff85;border:1px solid color-mix(in srgb,var(--shift-border) 75%,white);border-radius:50%;transform:translateY(-50%)}.scheduler-selection-status>button .ui-icon{width:13px;height:13px}.schedule-trash-zone{min-height:54px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;margin:0 14px 14px;padding:10px 12px;color:#777d7a;background:#fafafa;border:1px dashed #cfd5d2;border-radius:11px;font-size:.68rem;font-weight:750;line-height:1.3;transition:color .15s ease,background .15s ease,border-color .15s ease,transform .15s ease}.schedule-trash-zone .ui-icon{width:17px;height:17px}.schedule-trash-zone.active{color:#98524d;background:#fff5f4;border-color:#d99a95}.schedule-trash-zone.drag-over{color:#7d312c;background:#fde8e6;border-color:#c96b64;border-style:solid;transform:scale(1.02)}.scheduler-layout .schedule-table-scroll{width:100%;min-width:0;max-height:min(74vh,820px);overflow:auto;overscroll-behavior:contain;border-color:#dce2df;border-radius:18px;box-shadow:0 12px 32px #1f242214}.scheduler-layout .cloud-schedule-sheet{min-width:1120px;padding:14px}.scheduler-layout .cloud-sheet-title{align-items:center;min-height:38px;margin-bottom:10px;padding:0 4px}.scheduler-layout .cloud-sheet-title strong{font-size:.85rem}.scheduler-layout .cloud-sheet-title span{color:var(--muted);font-size:.78rem;font-weight:700}.scheduler-layout .cloud-schedule-table{border-collapse:separate;border-spacing:0}.scheduler-layout .cloud-schedule-table th,.scheduler-layout .cloud-schedule-table td{height:82px;padding:7px;background-clip:padding-box;border-width:0 1px 1px 0}.scheduler-layout .cloud-schedule-table tr>:first-child{border-left-width:1px}.scheduler-layout .cloud-schedule-table thead th{position:sticky;z-index:5;top:0;height:54px;color:#606764;background:#f6f8f7fa;border-top-width:1px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.scheduler-layout .cloud-schedule-table thead th:first-child{z-index:7;left:0;width:190px}.scheduler-layout .cloud-schedule-table tbody tr:not(.schedule-group-row)>th{position:sticky;z-index:4;left:0;background:#fff;box-shadow:8px 0 14px -13px #191f1ccc}.scheduler-layout .cloud-schedule-table tbody th>strong{font-size:.8rem}.scheduler-layout .schedule-group-row th{height:40px;padding:6px 12px;color:#435049;background:#f0f3f1;border-left:3px solid #89958f;letter-spacing:.07em}.scheduler-layout .schedule-group-label{display:inline-flex;align-items:center;gap:8px}.scheduler-layout .schedule-group-label:before{width:8px;height:8px;flex:0 0 8px;background:#89958f;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #89958f;content:""}.scheduler-layout .cloud-schedule-table tbody tr:not(.schedule-group-row)>td{position:relative;vertical-align:middle;background:#fff;transition:background .13s ease,box-shadow .13s ease}.schedule-cell-stack{min-height:66px;display:grid;align-content:center;gap:6px}.scheduler-layout .availability-hint{margin:0;padding:4px 6px;color:#747b77;background:#f7f8f7;border-color:#e1e5e3;border-style:dashed;font-size:.64rem;font-weight:700}.scheduler-layout .availability-hint span{display:inline-flex;padding:1px 4px;color:#5f6763;background:#e9ecea;border-radius:4px;font-size:.56rem;letter-spacing:.04em}.scheduler-layout td.has-availability.has-official-shift .official-shifts{padding-top:6px;border-top:1px solid #edf0ee}.scheduler-layout .official-shifts{min-height:30px;display:grid;align-content:center;justify-items:stretch;gap:5px}.schedule-entry-wrap{position:relative;width:100%;min-width:0;max-width:none;transition:opacity .13s ease}.scheduler-layout .schedule-entry-wrap .schedule-entry-chip{width:100%;min-height:34px;padding:5px 27px 5px 7px;cursor:grab;border-radius:7px;box-shadow:inset 4px 0 0 var(--shift-dot),0 1px 2px #1f24220d;font-size:.69rem;font-variant-numeric:tabular-nums;line-height:1.2}.scheduler-layout .schedule-entry-wrap .schedule-entry-chip:active{cursor:grabbing}.schedule-entry-delete{position:absolute;z-index:2;top:50%;right:5px;width:21px;height:21px;display:grid;place-items:center;padding:0;color:var(--shift-ink);background:#ffffffa8;border:1px solid color-mix(in srgb,var(--shift-border) 75%,white);border-radius:50%;opacity:0;pointer-events:none;transform:translateY(-50%) scale(.88);transition:opacity .12s ease,transform .12s ease,background .12s ease}.schedule-entry-delete .ui-icon{width:12px;height:12px}.schedule-entry-wrap:hover .schedule-entry-delete,.schedule-entry-wrap:focus-within .schedule-entry-delete{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}.schedule-entry-delete:hover{background:#fff}.scheduler-layout .cloud-schedule-table td.assignable{cursor:cell}.scheduler-layout .cloud-schedule-table td.assignable:hover{background:#f7faf8;box-shadow:inset 0 0 0 2px #cbd5d0}.scheduler-layout .cloud-schedule-table td.drag-over{background:#eef5f1;box-shadow:inset 0 0 0 3px #7e9b8c;outline:none}.schedule-drag-preview{min-width:150px;max-width:210px;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;color:var(--shift-ink);background:var(--shift-bg);border:1px solid var(--shift-border);border-radius:9px;box-shadow:inset 4px 0 0 var(--shift-dot),0 16px 32px #1f242233;font-size:.76rem;font-weight:850;font-variant-numeric:tabular-nums;line-height:1.25;text-align:center;transform:rotate(1.5deg)}.schedule-drag-preview>span{width:7px;height:7px;flex:0 0 7px;background:var(--shift-dot);border-radius:50%}@media(max-width:820px){.scheduler-layout{grid-template-columns:1fr}.scheduler-palette{position:static}.scheduler-shift-list{grid-template-columns:repeat(2,minmax(0,1fr))}.scheduler-layout .schedule-table-scroll{max-height:70vh}}@media(hover:none){.schedule-entry-delete{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}}@media(max-width:520px){.scheduler-shift-list{grid-template-columns:1fr}.scheduler-layout .cloud-schedule-sheet{padding:9px}.scheduler-layout .cloud-sheet-title{position:sticky;z-index:8;left:0;width:min(390px,calc(100vw - 54px));background:#fffffff5}}.submitted-availability-list{gap:8px}.submitted-day-date{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:3px;min-width:0;padding-right:12px;border-right:1px solid var(--line)}.submitted-day-date>strong{font-size:.88rem;line-height:1.25}.submitted-day-date>time{color:var(--muted);font-size:.75rem;font-weight:650;font-variant-numeric:tabular-nums}.submitted-day-value .submitted-availability-shift{width:auto;min-width:0;max-width:100%;min-height:40px;align-items:center;justify-content:center;justify-self:stretch;padding:7px 10px;border-radius:9px;box-shadow:inset 4px 0 0 var(--shift-dot);font-variant-numeric:tabular-nums;line-height:1.25;text-align:center}.submitted-day-period{min-width:50px;display:inline-flex;align-items:center;justify-content:center;padding:5px 7px;color:#626966!important;background:#f1f3f2;border:1px solid #e0e4e2;border-radius:999px;font-size:.68rem!important;font-weight:800;line-height:1;white-space:nowrap}.submitted-day-value>.day-off{grid-column:1 / -1;display:flex;min-height:40px;align-items:center;justify-content:center;padding:7px 10px;background:#f5f6f5;border:1px dashed #d9dddb;border-radius:9px;font-size:.86rem;font-weight:750}.submitted-day-value .submitted-off-reason{grid-column:1 / -1;padding-top:2px;font-size:.74rem}@media(max-width:520px){.submitted-availability-list article{min-height:72px;grid-template-columns:78px minmax(0,1fr);gap:10px;padding:10px 11px}.submitted-day-date{padding-right:9px}.submitted-day-date>strong{font-size:.82rem}.submitted-day-date>time{font-size:.7rem}.submitted-day-value{grid-template-columns:minmax(0,1fr) auto;gap:5px 6px}.submitted-day-value .submitted-availability-shift{min-height:38px;padding:6px 8px;font-size:.82rem}.submitted-day-period{min-width:42px;padding-inline:6px;font-size:.62rem!important}}.center-state h1{margin-bottom:8px;font-size:clamp(1.5rem,5vw,2rem)}.center-state p{max-width:460px;color:var(--muted);line-height:1.6}.employee-page{min-height:100vh;padding-bottom:calc(112px + env(safe-area-inset-bottom))}.employee-header{position:sticky;z-index:var(--z-navigation);top:0;padding:8px 12px 9px;background:#fffffff7;border-bottom:1px solid var(--line);box-shadow:0 4px 16px #1f242212;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.employee-header-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.employee-brand{display:flex;min-width:0;align-items:center;gap:8px}.employee-brand>span{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;color:#fff;background:var(--primary);border-radius:10px;font-size:.72rem;font-weight:900}.employee-brand>div{display:grid;min-width:0}.employee-brand strong{color:var(--primary-dark);font-size:.94rem;line-height:1.15}.employee-brand small{color:var(--muted);font-size:.68rem;line-height:1.2}.employee-account-actions{display:flex;flex:0 0 auto;gap:4px}.employee-account-actions button{min-height:38px;padding:0 9px;color:#525856;background:transparent;border:1px solid transparent;border-radius:9px;font-size:.76rem;font-weight:750}.employee-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:100%;max-width:560px;margin:7px auto 0;padding:3px;background:#ecefed;border:1px solid #d9dddb;border-radius:12px}.employee-tabs button{width:100%;min-width:0;min-height:44px;padding:0 10px;color:var(--muted);background:transparent;border:0;border-radius:9px;font-size:.82rem;font-weight:750;text-align:center}.employee-tabs button.active{color:var(--primary-dark);background:#fff;box-shadow:0 2px 8px #1f24221f}.employee-tabs button:hover:not(:disabled),.employee-account-actions button:hover:not(:disabled){color:var(--primary-dark);background-color:var(--surface-hover)}.employee-tabs button:focus-visible,.employee-account-actions button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.employee-hero{padding:28px 20px 56px;color:#fff;background:radial-gradient(circle at 95% 0,rgba(255,255,255,.16),transparent 35%),linear-gradient(145deg,#444a47,#292d2b);border-radius:0 0 30px 30px}.employee-hero .eyebrow{color:#e2e5e3}.employee-hero h1{margin:10px 0 4px;font-size:1.7rem}.employee-hero p{margin:0;color:#d9f3ef}.week-range{display:block;margin-top:6px;font-size:1.25rem}.deadline-box{display:grid;gap:3px;margin-top:22px;padding:14px 16px;border:1px solid rgba(255,255,255,.22);border-radius:16px;background:#ffffff12}.deadline-box span,.deadline-box small{color:#e2e5e3}.locked-banner{display:grid;gap:5px;margin:-28px 16px 18px;padding:16px 18px;position:relative;border-radius:16px;color:#74442a;background:#fff5e9;border:1px solid #efd5ba;box-shadow:var(--shadow)}.locked-banner span{font-size:.9rem;line-height:1.45}.employee-content{max-width:760px;margin:-30px auto 0;padding:0 14px;position:relative}.locked-banner+.employee-content{margin-top:0}.availability-grid{display:grid;gap:12px}.day-card,.note-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 22px #1f24220f}.day-card{padding:15px;transition:border-color .18s ease,box-shadow .18s ease}.day-card.working{border-left:4px solid var(--shift-dot);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--shift-border) 34%,transparent),0 6px 22px #1f24220f}.day-card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.day-card-title strong{font-size:1.06rem}.day-card-title span{color:var(--muted);font-weight:650}.segmented{display:grid;gap:8px}.segmented{grid-template-columns:1fr 1fr}.segmented button{min-height:44px;padding:8px 10px;border:1px solid #d8e4e1;border-radius:12px;color:#555b58;background:#f7f8f7;font-weight:700}.segmented button.selected{color:#fff;background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary-dark)}.segmented button.selected.off{color:#93423f;background:#fff0ef;border-color:#dea8a5;box-shadow:inset 0 0 0 1px #dea8a5}.availability-shift-editor{display:grid;gap:10px;margin-top:12px;padding:10px;background:var(--shift-bg);border:1px solid var(--shift-border);border-radius:var(--radius-md);animation:availability-editor-in .18s ease-out}.availability-shift-editor .mobile-option-picker-trigger{background:color-mix(in srgb,var(--shift-bg) 62%,white);border-color:var(--shift-border)}.off-reason-field{display:grid;gap:6px;margin-top:12px;animation:availability-editor-in .18s ease-out}.off-reason-field>span{color:#4b514f;font-size:.88rem;font-weight:700}.off-reason-field>span small{color:var(--muted);font-weight:600}.off-reason-field textarea{min-height:44px;max-height:82px;field-sizing:content;line-height:1.35}.off-reason-field>small{justify-self:end;color:var(--muted);font-size:.72rem}.shift-preset-field{display:grid;gap:6px;color:#4b514f;font-size:.88rem;font-weight:700}.hour-intervals{display:grid;gap:8px}.hour-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;color:var(--muted);animation:availability-editor-in .18s ease-out}@keyframes availability-editor-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}input,textarea,select{width:100%;color:#202422;background:#fff;border:1px solid #d2d6d4;border-radius:var(--radius-sm);outline:none}input,select{min-height:var(--control-height);padding:0 12px}textarea{padding:11px 12px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:#747b78;box-shadow:var(--focus-ring)}input:hover:not(:disabled),textarea:hover:not(:disabled),select:hover:not(:disabled){border-color:#b8bfbc}input::placeholder,textarea::placeholder{color:#87938f;opacity:1}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px var(--surface) inset}input:disabled,textarea:disabled,select:disabled{color:#6b716f;background:#f2f3f2}.custom-select{position:relative;min-width:0}.custom-select-control{width:100%;min-height:var(--control-height);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;color:#202422;background:#fff;border:1px solid #d2d6d4;border-radius:var(--radius-sm);text-align:left;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.custom-select-control:hover:not(:disabled){background:#f7f8f7;border-color:#b8bfbc}.custom-select-control:focus-visible,.custom-select.open .custom-select-control{outline:none;border-color:#747b78;box-shadow:var(--focus-ring)}.custom-select-control:disabled{cursor:not-allowed;color:#6b716f;background:#f2f3f2}.custom-select-control>span:first-child{min-width:0;display:inline-flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.25}.custom-select-chevron{width:18px;height:18px;flex:0 0 18px;display:inline-flex;align-items:center;justify-content:center;align-self:center;color:var(--muted);font-size:0;line-height:1;transform:translateY(-1px);transform-origin:center;transition:transform .15s ease;pointer-events:none}.custom-select.open .custom-select-chevron{transform:translateY(-1px) rotate(180deg)}.custom-select-menu{position:absolute;z-index:var(--z-dropdown);top:calc(100% + 6px);left:0;right:0;max-height:min(252px,calc(100vh - 24px));overflow-y:auto;padding:5px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-dropdown);animation:custom-select-in .15s ease-out;transform-origin:top}.custom-select.open-up .custom-select-menu{top:auto;bottom:calc(100% + 6px);transform-origin:bottom;animation-name:custom-select-up-in}.custom-select-menu button{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;color:inherit;background:transparent;border:0;border-radius:8px;text-align:left}.custom-select-menu button>span:first-child{min-width:0;flex:1 1 auto;display:flex;align-items:center;line-height:1.3}.custom-select-menu button>span[aria-hidden=true],.custom-select-check{width:18px;height:18px;flex:0 0 18px;display:inline-flex;align-items:center;justify-content:center;align-self:center;color:var(--primary);font-size:.86rem;font-weight:800;line-height:1;transform:none}.custom-select-menu button:hover,.custom-select-menu button.active{color:#303533;background:#ecefed}.custom-select-menu button[aria-selected=true]{font-weight:750}@keyframes custom-select-in{0%{opacity:0;transform:translateY(-3px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes custom-select-up-in{0%{opacity:0;transform:translateY(3px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.note-card{display:grid;margin-top:12px;padding:18px}.note-card label{margin-bottom:9px;font-weight:750}.note-card small{justify-self:end;margin-top:5px;color:var(--muted)}.sticky-submit{position:fixed;z-index:var(--z-sticky);left:0;right:0;bottom:0;display:grid;gap:7px;padding:10px 14px max(12px,env(safe-area-inset-bottom));background:#fffffff0;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.sticky-submit>*{width:min(732px,100%);margin:auto}.sticky-submit>div{min-height:20px;font-size:.86rem}.submission-status{color:var(--muted);font-weight:650}.draft-status{display:block;color:#8a6118;font-weight:750}.save-toast-region{position:fixed;z-index:var(--z-toast);left:14px;right:14px;bottom:calc(88px + env(safe-area-inset-bottom));display:flex;justify-content:center;pointer-events:none}.save-toast{padding:11px 16px;color:#086b56;background:#e3f5ef;border:1px solid #a9dcca;border-radius:12px;box-shadow:0 10px 28px #11574a29;font-size:.9rem;font-weight:750;animation:availability-toast-in .18s ease-out}@keyframes availability-toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 0,#e2e4e3,transparent 38%),#f4f5f4}.login-card{width:100%;max-width:420px;min-width:0;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}.login-card h1{margin:28px 0 8px}.login-card>p{margin-bottom:25px;color:var(--muted)}.login-card label,.field{display:grid;gap:7px;margin-bottom:15px;color:#3c4b48;font-size:.9rem;font-weight:700}.login-card .button{width:100%;margin-top:7px}.login-card>small{display:block;margin-top:18px;color:var(--muted);text-align:center}.brand-lockup{display:flex;gap:11px;align-items:center}.brand-lockup>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fff;background:var(--primary);font-size:.82rem;font-weight:900}.brand-lockup>div{display:grid}.brand-lockup small{color:var(--muted)}.admin-shell{min-height:100vh;display:flex;flex-direction:column}.admin-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,52px);background:#fff;border-bottom:1px solid var(--line)}.admin-tabs{display:flex;gap:22px;padding:0 clamp(18px,4vw,52px);background:#fff;border-bottom:1px solid var(--line)}.admin-tabs{overflow-x:auto}.admin-tabs button{min-height:48px;padding:0 2px;color:var(--muted);background:none;border:0;border-bottom:3px solid transparent;font-weight:750}.admin-tabs button.active{color:var(--primary);border-color:var(--primary)}.admin-tabs button:hover:not(.active){color:var(--text-secondary);border-color:#c5d7d3}.admin-main{flex:1;width:min(1440px,100%);margin:auto;padding:24px clamp(14px,3vw,38px) 50px}.love-gyukaku-banner{position:relative;width:100%;overflow:hidden;padding:7px 0;color:#fff9f0;background:linear-gradient(90deg,rgba(255,213,148,.08),transparent 30%,rgba(255,213,148,.1) 50%,transparent 70%),linear-gradient(90deg,#4d0d10,#7c171a 50%,#4d0d10);border-block:1px solid rgba(255,213,148,.34);box-shadow:0 -5px 18px #40090c1a}.love-gyukaku-banner:before,.love-gyukaku-banner:after{position:absolute;z-index:1;top:0;bottom:0;width:clamp(24px,5vw,72px);content:"";pointer-events:none}.love-gyukaku-banner:before{left:0;background:linear-gradient(90deg,#4d0d10,transparent)}.love-gyukaku-banner:after{right:0;background:linear-gradient(-90deg,#4d0d10,transparent)}.love-gyukaku-track{display:flex;width:max-content;animation:love-gyukaku-marquee 28s linear infinite;will-change:transform}.love-gyukaku-group{display:flex;flex:none;align-items:center;gap:clamp(34px,5vw,76px);min-width:100vw;padding-right:clamp(34px,5vw,76px)}.love-gyukaku-message{display:inline-flex;align-items:center;white-space:nowrap;font-size:clamp(.76rem,1.25vw,.88rem);font-weight:800;letter-spacing:.09em;text-shadow:0 1px 8px rgba(43,3,5,.38)}.love-gyukaku-hearts{display:inline-block;margin-left:4px;font-size:.9em;line-height:1;letter-spacing:0;filter:drop-shadow(0 1px 4px rgba(255,83,83,.42));transform-origin:center;animation:love-gyukaku-heartbeat 1.8s ease-in-out infinite}@keyframes love-gyukaku-marquee{to{transform:translate(-50%)}}@keyframes love-gyukaku-heartbeat{0%,to{transform:scale(1)}45%{transform:scale(1.04)}}@media(prefers-reduced-motion:reduce){.love-gyukaku-track,.love-gyukaku-hearts{animation:none}}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,.7fr);gap:16px;margin-bottom:16px}.panel{padding:20px}.panel-heading{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.panel-heading h2{margin-bottom:4px;font-size:1.12rem}.panel-heading p{margin-bottom:0;color:var(--muted);font-size:.88rem}.summary-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.summary-panel>strong{margin-top:8px;color:#303533;font-size:2.6rem;line-height:1}.summary-panel p{margin:5px 0 18px;color:var(--muted)}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 12px;border-radius:999px;font-size:.76rem;font-weight:800;line-height:1;flex:0 0 auto;white-space:nowrap}.status-badge.open{color:#08745f;background:#dcf4ed}.status-badge.locked{color:#88463f;background:#fae8e5}.status-badge.draft{color:#805b12;background:#fff2cf}.status-badge.archived{color:#626b69;background:#edf0ef}.row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.week-manager{display:grid;gap:20px}.week-manager-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.week-manager-heading h2,.week-manager-heading p{margin:0}.week-manager-heading p{margin-top:5px;color:var(--muted);line-height:1.45}.week-create-button{flex:0 0 auto}.week-picker-field{display:grid;gap:8px}.week-picker-field>span{color:#4a504d;font-size:.82rem;font-weight:750}.week-picker .custom-select-control{min-height:56px;padding:8px 14px;border-color:#c7cdca;border-radius:var(--radius-md);background:#fafbfa}.week-picker .custom-select-control>.custom-select-value{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;overflow:hidden;white-space:normal}.week-picker .custom-select-value>strong{min-width:0;overflow:hidden;color:var(--text);font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.week-picker .status-badge{flex:0 0 auto}.week-picker .custom-select-menu{padding:7px;border-radius:var(--radius-md)}.week-picker .custom-select-menu>button{min-height:64px;align-items:center;padding:9px 10px;border-radius:9px}.week-picker .custom-select-menu>button[aria-selected=true]{color:#0b655a;background:#eaf7f4}.week-picker .custom-select-option-content{min-width:0;flex:1}.week-picker-option,.week-picker-option-heading{display:flex;align-items:center}.week-picker-option{flex-direction:column;align-items:stretch;gap:4px}.week-picker-option-heading{justify-content:space-between;gap:10px}.week-picker-option-heading>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-picker-option small{color:var(--muted);font-size:.76rem;font-weight:550}.week-overview{overflow:hidden;border:1px solid #cfe0dc;border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 10px 28px #1f242212}.week-overview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px;background:#f5f6f5}.week-overview-heading h3,.week-overview-heading p{margin:0}.week-overview-heading h3{margin-top:5px;color:#343a37;font-size:clamp(1.12rem,2.4vw,1.4rem);letter-spacing:.015em}.week-overview-heading p{margin-top:5px;color:var(--muted);font-size:.88rem}.week-overview-deadline{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px}.week-overview-deadline>div{display:grid;gap:5px}.week-overview-deadline span{color:var(--muted);font-size:.78rem;font-weight:750}.week-overview-deadline strong{color:#303533;font-size:.98rem;line-height:1.4}.button.compact{min-height:38px;padding-inline:12px}.week-primary-action{padding:0 20px 18px}.week-primary-action .button{min-width:170px}.week-secondary-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#fbfcfc;border-top:1px solid #e2ece9}.week-manager-empty{padding:24px;text-align:center;background:var(--surface-soft);border-radius:var(--radius-md)}.week-manager-empty p{margin:5px 0 0;color:var(--muted)}.week-dialog{width:min(540px,100%);max-height:calc(100dvh - 36px);overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal)}.week-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 20px 16px;border-bottom:1px solid var(--line)}.week-dialog h2{margin:4px 0 0;font-size:1.2rem}.dialog-close{width:40px;height:40px;flex:0 0 auto;color:var(--muted);background:transparent;border:0;border-radius:10px;font-size:1.45rem;line-height:1}.dialog-close:hover:not(:disabled){color:var(--text);background:var(--surface-soft)}.dialog-close:focus-visible{outline:none;box-shadow:var(--focus-ring)}.week-dialog form{display:grid;gap:16px;padding:20px}.week-dialog .field{display:grid;gap:7px}.week-dialog .field>span,.week-dialog-readonly>span,.week-dialog-preview>span{color:#4a504d;font-size:.8rem;font-weight:750}.week-dialog .field small,.week-dialog-readonly small{color:var(--muted);line-height:1.45}.week-dialog-preview,.week-dialog-readonly{display:grid;gap:5px;padding:13px 14px;background:#f5f6f5;border-radius:var(--radius-sm)}.week-dialog-preview strong,.week-dialog-readonly strong{color:#343a37}.week-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:2px;padding-top:16px;border-top:1px solid var(--line)}.edit-week-dialog{width:min(640px,100%)}.date-time-picker{position:relative;min-width:0}.date-time-picker-control{width:100%;min-height:66px;display:flex;align-items:center;gap:12px;padding:9px 13px;color:var(--text);background:linear-gradient(135deg,#fff,#f7fbfa);border:1px solid #c8dad6;border-radius:13px;text-align:left;box-shadow:0 4px 12px #1f24220d;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.date-time-picker-control:hover:not(:disabled),.date-time-picker-control[aria-expanded=true]{background:#fff;border-color:#858c88;box-shadow:var(--focus-ring),0 7px 18px #1f242214}.date-time-picker-control:focus-visible{outline:none;border-color:#747b78;box-shadow:var(--focus-ring)}.date-time-picker-icon,.date-time-picker-clock{display:inline-grid;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-soft)}.date-time-picker-icon{width:40px;height:40px;border-radius:11px}.date-time-picker-icon svg,.date-time-picker-clock svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.date-time-picker-value{min-width:0;flex:1 1 auto;display:grid;gap:3px}.date-time-picker-value small,.date-time-picker-month small,.date-time-picker-time-heading small{color:var(--muted);font-size:.73rem;font-weight:700;letter-spacing:.02em}.date-time-picker-value strong{overflow:hidden;color:#303533;font-size:.93rem;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.date-time-picker-chevron{flex:0 0 auto;color:var(--primary);font-size:1.2rem;line-height:1;transition:transform var(--transition-fast)}.date-time-picker-control[aria-expanded=true] .date-time-picker-chevron{transform:rotate(180deg)}.date-time-picker-panel{display:grid;grid-template-columns:minmax(0,1fr) 164px;margin-top:10px;overflow:hidden;background:#fff;border:1px solid #d9dddb;border-radius:16px;box-shadow:0 16px 38px #1f242226;animation:date-time-picker-in .17s ease-out}.date-time-picker-panel.date-only{grid-template-columns:minmax(0,1fr)}.date-time-picker-calendar{min-width:0;padding:16px}.date-time-picker-month{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.date-time-picker-month>div:first-child{display:grid;gap:2px}.date-time-picker-month strong{color:#303533;font-size:.98rem}.date-time-picker-month-actions{display:flex;gap:5px}.date-time-picker-month-actions button{width:34px;height:34px;display:grid;place-items:center;padding:0;color:#505653;background:#f4f5f4;border:1px solid #dfe3e1;border-radius:9px;font-size:1.35rem;line-height:1}.date-time-picker-month-actions button:hover{color:var(--primary-dark);background:var(--primary-soft);border-color:#c2c8c5}.date-time-picker-weekdays,.date-time-picker-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.date-time-picker-weekdays{margin-bottom:5px}.date-time-picker-weekdays span{display:grid;place-items:center;min-height:27px;color:#71817d;font-size:.69rem;font-weight:800}.date-time-picker-days{gap:3px}.date-time-picker-days button{position:relative;min-width:0;min-height:36px;padding:0;color:#253c38;background:transparent;border:1px solid transparent;border-radius:10px;font-size:.82rem;font-weight:700}.date-time-picker-days button:hover{color:var(--primary-dark);background:#ecefed;border-color:#d9dddb}.date-time-picker-days button.outside{color:#a6b1ae;font-weight:600}.date-time-picker-days button:disabled{color:#c3ccca;background:transparent;border-color:transparent;cursor:default;opacity:.62}.date-time-picker-days button.today:not(.selected){color:var(--primary);border-color:#9ca29f}.date-time-picker-days button.selected{color:#fff;background:linear-gradient(145deg,#555b58,var(--primary));border-color:var(--primary);box-shadow:0 5px 12px #1f24223d}.date-time-picker-time{display:flex;flex-direction:column;align-items:center;padding:16px 13px;background:linear-gradient(180deg,#f2faf8,#f9fcfb);border-left:1px solid #e1e5e3}.date-time-picker-time-heading{width:100%;display:flex;align-items:center;gap:8px}.date-time-picker-clock{width:34px;height:34px;border-radius:10px}.date-time-picker-clock svg{width:18px;height:18px}.date-time-picker-time-heading>div{display:grid;gap:1px}.date-time-picker-time-heading strong{color:#174b45;font-size:.81rem}.date-time-picker-steppers{display:flex;align-items:center;justify-content:center;gap:5px;margin:23px 0 16px}.date-time-picker-steppers>span{align-self:center;margin-top:-14px;color:var(--primary);font-size:1.35rem;font-weight:900}.date-time-picker-stepper{display:grid;justify-items:center;gap:5px}.date-time-picker-stepper button{width:34px;height:28px;display:grid;place-items:center;padding:0;color:#545b57;background:#fff;border:1px solid #d7dcda;border-radius:8px;font-size:1.05rem;font-weight:700;line-height:1}.date-time-picker-stepper button:hover{color:#fff;background:var(--primary);border-color:var(--primary)}.date-time-picker-time-input{width:48px;height:38px;min-height:38px;padding:0 4px;color:#104f48;background:#fff;border:1px solid #d7dcda;border-radius:8px;outline:none;font-size:1.08rem;font-weight:800;line-height:1;text-align:center;font-variant-numeric:tabular-nums}.date-time-picker-time-input:hover{border-color:#b6c2bd}.date-time-picker-time-input:focus{border-color:#668d84;box-shadow:0 0 0 3px #4a7a6f24}.date-time-picker-stepper small,.date-time-picker-time>p{color:var(--muted);font-size:.68rem;font-weight:700}.date-time-picker-time>p{margin:auto 0 0}.date-time-picker-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:#fafbfa;border-top:1px solid #dfebe8}.date-time-picker-actions .button{min-height:38px}.date-time-picker-today{min-height:36px;padding:0 9px;color:var(--primary);background:transparent;border:0;border-radius:9px;font-size:.82rem;font-weight:800}.date-time-picker-today:hover{background:var(--primary-soft)}@keyframes date-time-picker-in{0%{opacity:0;transform:translateY(-5px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:620px){.date-time-picker-panel{grid-template-columns:minmax(0,1fr)}.date-time-picker-time{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-top:1px solid #e1e5e3;border-left:0}.date-time-picker-steppers{grid-column:2;grid-row:1 / span 2;margin:0}.date-time-picker-time>p{margin:5px 0 0 42px}.date-time-picker-days button{min-height:40px}}@media(max-width:620px){.week-manager{gap:16px}.week-manager-heading,.week-overview-heading,.week-overview-deadline{align-items:stretch;flex-direction:column}.week-create-button,.week-primary-action .button{width:100%}.week-overview-heading,.week-overview-deadline{padding:16px}.week-overview-heading>.status-badge,.week-overview-deadline .button{align-self:flex-start}.week-primary-action{padding:0 16px 16px}.week-secondary-actions{align-items:stretch;flex-direction:column}.week-secondary-actions .button{width:100%}.week-dialog{max-height:100dvh;border-radius:0}.week-dialog>header,.week-dialog form{padding:16px}}.matrix-panel{padding:0;overflow:hidden}.matrix-panel .panel-heading{padding:20px 20px 0}.matrix-scroll{overflow-x:auto}.availability-matrix{width:100%;min-width:900px;border-collapse:collapse}.availability-matrix th,.availability-matrix td{padding:11px 10px;border-top:1px solid #e8efed;text-align:center}.availability-matrix thead th{color:var(--muted);background:#f7f8f7;font-size:.78rem;text-transform:uppercase}.availability-matrix tr{cursor:pointer}.availability-matrix tbody tr:hover{background:#fafcfb}.availability-matrix tbody th{min-width:160px;padding-left:20px;text-align:left}.matrix-employee-button{max-width:100%;padding:3px 5px;color:var(--text);background:transparent;border:0;border-radius:7px;text-align:left}.matrix-employee-button:hover{color:var(--primary-dark);background:var(--primary-soft)}.availability-matrix tbody th small{display:block;margin-top:3px;color:#9a7260;font-weight:600}.matrix-cell small{display:block;margin-top:2px;color:inherit;font-size:.62rem;font-weight:600;opacity:.78}.matrix-cell{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:68px;max-width:130px;padding:6px 7px;border-radius:8px;font-size:.82rem;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.matrix-cell.working{color:var(--shift-ink);background:var(--shift-bg);border:1px solid var(--shift-border)}.matrix-cell.off{color:#8c5550;background:#f5eae8}.matrix-cell.missing{color:#8a9693;background:#f0f3f2}.empty-panel{padding:30px;color:var(--muted);text-align:center}.inline-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;margin-bottom:14px}.employee-list{display:grid;gap:10px}.employee-row{padding:11px 14px;overflow:visible;background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.employee-row[open]{border-color:#a9cbc4;box-shadow:0 8px 22px #1f242214}.employee-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;margin:-11px -14px;padding:11px 14px;border-radius:13px;cursor:pointer;list-style:none}.employee-summary::-webkit-details-marker{display:none}.employee-summary:hover{background:var(--surface-hover)}.employee-summary:focus-visible{outline:none;box-shadow:var(--focus-ring)}.employee-identity{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:7px}.employee-identity strong{overflow-wrap:anywhere}.employee-group-label{color:var(--muted);font-size:.78rem;font-weight:650}.employee-summary-meta{display:inline-flex;flex:0 0 auto;align-items:center;gap:9px}.employee-expand-icon{color:var(--primary);font-size:1.1rem;line-height:1;transition:transform var(--transition-fast)}.employee-row[open] .employee-expand-icon{transform:rotate(180deg)}.position-badge{display:inline-flex;padding:2px 7px;border:1px solid #d5dad7;border-radius:999px;color:#505653;background:#f1f2f1;font-size:.72rem;font-weight:750;line-height:1.35}.status-dot-label{font-size:.78rem;font-weight:700}.status-dot-label.active{color:#08745f}.status-dot-label.inactive{color:#8b5550}.modal-backdrop{position:fixed;z-index:var(--z-modal);inset:0;display:grid;place-items:center;padding:18px;background:#11201d7a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.submission-dialog{width:min(900px,100%);max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:20px;box-shadow:var(--shadow-modal)}.submission-dialog>header,.submission-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;border-bottom:1px solid var(--line)}.submission-dialog>header h2{margin:4px 0 0}.submission-dialog>footer{border-top:1px solid var(--line);border-bottom:0}.submission-dialog>footer>div{display:flex;gap:8px;margin-left:auto}.dialog-content{overflow-y:auto;padding:18px;background:#f7f8f7}.availability-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-grid.compact .day-card{box-shadow:none}.admin-note{color:var(--muted);font-size:.84rem}.admin-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.admin-home-grid button{color:inherit;background:var(--surface);text-align:left;border:1px solid var(--line);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.admin-home-grid button:hover{border-color:#c7cdca;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.admin-home-grid strong{display:block;margin:8px 0;color:#303533;font-size:2rem}.admin-home-grid p{color:var(--muted)}.management-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:16px}.manage-list,.shift-manage-list{display:grid;gap:10px}.list-state{padding:22px 14px;color:var(--muted);background:var(--surface-soft);border:1px dashed #d3d8d5;border-radius:var(--radius-md);font-size:.9rem;line-height:1.5;text-align:center}.list-state.loading{color:var(--text-secondary)}.manage-row,.shift-manage-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.manage-row>input{max-width:420px}.shift-manage-row{background:var(--shift-bg);border-color:var(--shift-border)}.shift-preview{display:inline-flex;padding:9px 12px;color:var(--shift-ink, #324);background:var(--shift-bg, #eff1f0);border:1px solid var(--shift-border, var(--line));border-radius:10px;font-weight:750}.shift-editor,.employee-settings{display:grid;gap:12px}.time-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.time-pair label,.employee-settings>label,.employee-settings>.field{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:700}.shift-color-field{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:700}.shift-color-field>span{display:flex;align-items:center;gap:10px;min-height:var(--control-height)}.shift-color-field input[type=color]{width:54px;min-height:40px;padding:4px;cursor:pointer}.shift-color-field code{color:var(--text);font-family:inherit;font-size:.82rem}.employee-settings>.field{margin-bottom:0}.checkbox-line,.employee-flags label{display:flex;align-items:center;gap:7px;min-height:44px;padding-block:6px;cursor:pointer}.checkbox-line input,.employee-flags input{appearance:none;display:grid;flex:0 0 auto;place-content:center;width:20px;height:20px;min-height:20px;margin:0;padding:0;border:1px solid #bbc2be;border-radius:6px;background:var(--surface);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.checkbox-line input:before,.employee-flags input:before{width:10px;height:6px;content:"";border:solid white;border-width:0 0 2px 2px;opacity:0;transform:translateY(-1px) rotate(-45deg) scale(.6);transition:opacity var(--transition-fast),transform var(--transition-fast)}.checkbox-line input:checked,.employee-flags input:checked{background:var(--primary);border-color:var(--primary)}.checkbox-line input:checked:before,.employee-flags input:checked:before{opacity:1;transform:translateY(-1px) rotate(-45deg) scale(1)}.checkbox-line input:focus-visible,.employee-flags input:focus-visible{outline:none;box-shadow:var(--focus-ring)}.employee-create-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}.position-manager{margin:12px 0 14px;border:1px solid var(--line);border-radius:12px;background:#fafbfa}.position-manager>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer;color:var(--primary);font-weight:750}.position-manager>summary small{color:var(--muted);font-weight:650}.position-create-form{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:8px;padding:0 12px 10px}.position-list{display:grid;gap:7px;padding:0 12px 12px}.position-row{display:flex;align-items:center;gap:8px}.position-row>input{min-width:0;min-height:36px}.position-actions,.employee-order-actions{display:flex;align-items:center;gap:6px}.position-actions .button,.employee-order-actions .button{min-height:34px;padding:6px 9px}.position-empty{color:var(--muted)}.employee-settings{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.employee-advanced{margin-top:7px}.employee-advanced summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:var(--primary);font-size:.82rem;font-weight:750}.employee-advanced summary>span:first-child{color:var(--muted);font-weight:600}.employee-flags{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:.8rem}.employee-actions{grid-column:1 / -1;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:2px;border-top:1px solid #edf2f0}.employee-order-actions{margin-right:auto;color:var(--muted);font-size:.78rem;font-weight:700}.scheduler-page{display:grid;gap:14px}.scheduler-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:4px solid var(--primary)}.scheduler-toolbar h2{margin:5px 0 0}.schedule-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.scheduler-filters{display:grid;gap:14px;padding:18px}.scheduler-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.scheduler-filter-heading h3{margin:4px 0 0;font-size:1.05rem}.scheduler-create-week{flex:0 0 auto}.scheduler-filter-grid{display:grid;grid-template-columns:minmax(270px,1.35fr) minmax(190px,1fr) minmax(165px,.72fr) 44px;gap:10px;align-items:end}.scheduler-filter-field{display:grid;gap:6px;min-width:0}.scheduler-filter-field>span{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.scheduler-filter-field input,.scheduler-filter-field .custom-select-control{min-height:44px}.scheduler-refresh{width:44px;min-width:44px;height:44px;padding:0}.scheduler-refresh span{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.scheduler-error{display:flex;align-items:center;justify-content:space-between}.scheduler-error button{border:0;background:transparent;font-size:1.4rem}.scheduler-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:12px;align-items:start}.scheduler-palette{position:sticky;top:76px;display:grid;gap:6px;padding:12px;background:#fff;border:1px solid #e2e6e4;border-radius:16px;box-shadow:0 8px 24px #1f242212}.scheduler-palette h3{display:flex;align-items:center;gap:7px;margin:0 0 1px;color:var(--text);font-size:.98rem;font-weight:850;letter-spacing:-.01em}.scheduler-palette h3:before{width:7px;height:7px;flex:0 0 7px;background:var(--primary);border-radius:50%;content:""}.scheduler-palette p{margin:0 0 5px;color:var(--muted);font-size:.76rem;line-height:1.35}.scheduler-shift,.schedule-entry-chip{color:var(--shift-ink);background:var(--shift-bg);border:1px solid var(--shift-border);font-weight:750}.scheduler-palette .scheduler-shift{position:relative;width:100%;min-height:38px;display:flex;align-items:center;justify-content:center;gap:7px;padding:6px 9px;overflow:hidden;border-radius:10px;font-size:.8rem;font-weight:850;font-variant-numeric:tabular-nums;line-height:1.22;text-align:center;box-shadow:inset 0 1px #ffffff6b;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast),filter var(--transition-fast)}.scheduler-palette .scheduler-shift:disabled{opacity:1;cursor:not-allowed}.scheduler-palette .scheduler-shift>.scheduler-shift-dot{display:inline-block;width:6px;height:6px;flex:0 0 6px;margin:0;border-radius:50%;background:var(--shift-dot)}.scheduler-palette .scheduler-shift-label{min-width:0;flex:0 1 auto;display:block;color:var(--shift-ink);font-weight:850;line-height:1.22;text-align:center;white-space:nowrap}.scheduler-palette .scheduler-shift-label>span{display:inline}.scheduler-palette .scheduler-shift:hover:not(:disabled){transform:translateY(-1px);filter:saturate(1.03);box-shadow:inset 0 1px #ffffff80,0 5px 12px #1f242217}.scheduler-palette .scheduler-shift:focus-visible{outline:none;box-shadow:0 0 0 3px #3a3f3d29,0 5px 12px #1f242217}.scheduler-palette .scheduler-shift.selected{outline:none;border-color:color-mix(in srgb,var(--shift-border) 68%,var(--primary));box-shadow:0 0 0 2px color-mix(in srgb,var(--shift-border) 30%,transparent),0 5px 12px #1f242217}.scheduler-palette .scheduler-shift.selected:after{position:absolute;top:50%;right:8px;width:18px;height:18px;display:grid;place-items:center;color:var(--shift-ink);background:color-mix(in srgb,var(--shift-border) 20%,white);border:1px solid color-mix(in srgb,var(--shift-border) 48%,transparent);border-radius:50%;content:"✓";font-size:.68rem;font-weight:900;line-height:1;transform:translateY(-50%)}.schedule-table-scroll{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-gutter:stable;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.schedule-table-scroll::-webkit-scrollbar,.matrix-scroll::-webkit-scrollbar,.custom-select-menu::-webkit-scrollbar{width:10px;height:10px}.schedule-table-scroll::-webkit-scrollbar-thumb,.matrix-scroll::-webkit-scrollbar-thumb,.custom-select-menu::-webkit-scrollbar-thumb{background:#ced3d0;background-clip:padding-box;border:3px solid transparent;border-radius:999px}.cloud-schedule-sheet{min-width:980px;padding:18px;background:#fff}.cloud-sheet-title{display:flex;justify-content:space-between;margin-bottom:14px}.cloud-sheet-title strong{color:var(--primary);letter-spacing:.08em}.cloud-schedule-table{width:100%;border-collapse:collapse;table-layout:fixed}.cloud-schedule-table th,.cloud-schedule-table td{height:68px;padding:7px;border:1px solid #e2e5e3;vertical-align:top}.cloud-schedule-table thead th{height:auto;color:var(--muted);background:#f4f5f4}.cloud-schedule-table thead th:first-child{width:170px}.cloud-schedule-table thead small,.cloud-schedule-table tbody th small{display:block;color:var(--muted);font-size:.7rem}.availability-hint{display:block;width:100%;margin:0 0 6px;padding:4px 5px;color:#6b716f;background:#f6f7f6;border:1px solid #e3e6e4;border-radius:6px;font-size:.7rem;font-weight:700;line-height:1.25;text-align:left;white-space:normal;overflow-wrap:anywhere}.availability-hint span{color:#555d59}.availability-hint.available{border-left:3px solid var(--shift-dot)}.availability-hint em{display:block;margin-top:2px;overflow:hidden;color:#80615c;font-style:normal;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.availability-hint.off{color:#9a625d}.schedule-export-stage{position:fixed;left:-100000px;top:0;width:1280px;pointer-events:none}.cloud-schedule-table tbody th{text-align:center;vertical-align:middle;line-height:1.2;overflow-wrap:anywhere}.cloud-schedule-table tbody tr:not(.schedule-group-row)>th{text-align:center;vertical-align:middle}.cloud-schedule-table tbody th>strong{display:block;font-size:.78rem}.cloud-schedule-table tbody th>small{margin-top:3px;line-height:1.15}.cloud-schedule-table td.assignable{cursor:crosshair}.cloud-schedule-table td.assignable:focus-visible{outline:3px solid rgba(58,63,61,.34);outline-offset:-3px}.cloud-schedule-table td.drag-over{background:#ecefed;outline:2px solid #747b78}.schedule-group-row th{height:31px;padding:6px 10px;color:#5a605d;background:#eef0ef;font-size:.78rem;text-transform:uppercase}.schedule-entry-chip{display:flex;align-items:center;justify-content:center;width:100%;min-height:30px;margin:0;padding:4px;border-radius:7px;font-size:.7rem;line-height:1.15;text-align:center}.official-shifts{display:grid;align-content:center;gap:4px}.entry-dialog{width:min(520px,100%);max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-modal)}.create-schedule-dialog{width:min(480px,100%);max-height:calc(100dvh - 36px);display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-modal)}.create-schedule-dialog header,.create-schedule-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px}.create-schedule-dialog header{border-bottom:1px solid var(--line)}.create-schedule-dialog header h2{margin:4px 0 0;font-size:1.18rem}.create-schedule-dialog .dialog-content{display:grid;gap:16px}.create-schedule-dialog .dialog-content>p{margin:0;color:var(--muted);line-height:1.5}.create-schedule-preview{display:grid;gap:3px;padding:11px 12px;background:var(--primary-soft);border:1px solid #d8ddda;border-radius:10px}.create-schedule-preview span{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.create-schedule-dialog footer{justify-content:flex-end;border-top:1px solid var(--line)}.entry-dialog header,.entry-dialog footer{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.entry-dialog header h2{margin:0}.entry-dialog footer{border-top:1px solid var(--line);border-bottom:0}.entry-dialog footer>div{display:flex;gap:8px}.confirm-dialog{width:min(430px,100%);padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal)}.confirm-dialog h2{margin-bottom:8px;font-size:1.18rem}.confirm-dialog p{margin-bottom:20px;color:var(--muted);line-height:1.55}.confirm-dialog footer{display:flex;justify-content:flex-end;gap:8px}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.employee-schedule-page{max-width:920px;margin:auto;padding:28px 14px 60px}.employee-schedule-page>header{padding:4px 4px 18px}.employee-schedule-page>header h1{margin:7px 0 4px}.employee-schedule-page>header p{color:var(--muted)}.submitted-waiting-status{display:inline-flex;margin-bottom:14px;padding:7px 10px;color:#4d5350;background:#ecefed;border-radius:9px;font-size:.86rem;font-weight:700}.submitted-schedule-section.compact{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.submitted-heading{margin-bottom:10px}.submitted-heading strong{display:block;margin-top:5px;font-size:.9rem}.my-schedule-list{display:grid;gap:10px}.my-schedule-list article{display:grid;grid-template-columns:130px 1fr;gap:9px;align-items:center;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px}.my-schedule-list article>div{display:grid}.my-schedule-list article>div span{color:var(--muted);font-size:.8rem}.submitted-day-value{min-width:0;gap:3px}.submitted-day-value strong{overflow-wrap:anywhere;font-size:.94rem}.submitted-day-value .submitted-availability-shift{display:inline-flex;justify-self:start;padding:6px 8px;color:var(--shift-ink);background:var(--shift-bg);border:1px solid var(--shift-border);border-radius:8px}.submitted-day-value .submitted-off-reason{color:#765955;line-height:1.35;overflow-wrap:anywhere}.legacy-global-note{display:grid;gap:4px;margin-top:12px;padding:11px 13px;color:#636966;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius-md);font-size:.86rem}.legacy-global-note strong{color:var(--text)}.published-shift{display:inline-flex;padding:7px 9px;color:var(--shift-ink);background:var(--shift-bg);border:1px solid var(--shift-border);border-radius:8px;font-weight:700}.day-off{color:#8a9693}.team-schedule-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid var(--line);border-radius:16px;isolation:isolate;scrollbar-color:#aab0ad transparent}.team-page{max-width:100%;overflow-x:clip}.team-scroll-guide{display:none;align-items:center;gap:7px;margin:-4px 2px 9px;color:var(--muted);font-size:.78rem;font-weight:650}.team-scroll-guide span{display:grid;place-items:center;width:24px;height:24px;color:var(--primary-dark);background:var(--primary-soft);border-radius:999px;font-size:.9rem}.team-page .published-schedule-sheet{min-width:980px}.team-page .schedule-entry-chip{overflow-wrap:anywhere;white-space:normal}.team-page .current-employee-row>th,.team-page .current-employee-row>td{background:#f5f6f5}.current-employee-badge{display:inline-flex!important;width:fit-content;margin-top:5px!important;padding:2px 6px;color:var(--primary-dark)!important;background:var(--primary-soft);border-radius:999px;font-size:.62rem!important;font-weight:800;text-transform:uppercase}@media(max-width:820px){.team-scroll-guide{display:flex}.team-page .team-schedule-scroll{border-radius:12px;box-shadow:0 8px 24px #1f242214}.team-page .published-schedule-sheet{min-width:820px;padding:10px}.team-page .cloud-sheet-title{position:sticky;z-index:4;left:10px;width:min(390px,calc(100vw - 50px));justify-content:flex-start;gap:10px;min-height:28px;margin-bottom:10px;padding:3px 8px;background:#fffffff7;border-radius:7px}.team-page .cloud-sheet-title strong{flex:0 0 auto;font-size:.78rem}.team-page .cloud-sheet-title span{min-width:0;overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.team-page .cloud-schedule-table{border-collapse:separate;border-spacing:0;isolation:isolate}.team-page .team-schedule-scroll table{min-width:1000px}.team-page .cloud-schedule-table th,.team-page .cloud-schedule-table td{padding:6px;border-width:0 1px 1px 0}.team-page .cloud-schedule-table tr>:first-child{border-left-width:1px}.team-page .cloud-schedule-table thead tr:first-child>th{border-top-width:1px}.team-page .cloud-schedule-table thead th:first-child{width:148px}.team-page .cloud-schedule-table tbody tr:not(.schedule-group-row)>td{position:relative;z-index:0}.team-page .cloud-schedule-table thead th:first-child,.team-page .cloud-schedule-table tbody tr:not(.schedule-group-row)>th,.team-page .cloud-schedule-table tfoot th:first-child{position:sticky;z-index:5;left:0;background-color:#fff;background-clip:padding-box;border-right-color:#d2d6d4;box-shadow:7px 0 12px -11px #1f2422b3}.team-page .cloud-schedule-table thead th:first-child{z-index:6;background:#f4f5f4}.team-page .cloud-schedule-table tfoot th:first-child{background:#f7f8f7}.team-page .current-employee-row>th:first-child{background:#f5f6f5}.team-page .schedule-group-row th{padding:0;text-align:left}.team-page .schedule-group-label{position:sticky;z-index:4;left:0;display:flex;align-items:center;justify-content:center;width:148px;min-height:31px;padding:6px 10px;text-align:center}.team-page .schedule-entry-chip{min-height:28px;padding:4px 3px;font-size:.68rem}}.team-schedule-scroll table{width:100%;min-width:850px;border-collapse:collapse}.team-schedule-scroll th,.team-schedule-scroll td{padding:10px;border-bottom:1px solid var(--line);text-align:center}.team-schedule-scroll tbody th{text-align:left}@media(min-width:680px){.employee-hero{padding-left:max(24px,calc((100vw - 740px)/2));padding-right:max(24px,calc((100vw - 740px)/2))}.employee-content{margin-top:-38px}.availability-grid:not(.compact){grid-template-columns:repeat(2,minmax(0,1fr))}.sticky-submit{grid-template-columns:1fr auto;align-items:center}.sticky-submit>div{width:auto;margin:0;justify-self:end}.sticky-submit>button{width:260px;margin:0;justify-self:start}}@media(max-width:820px){.dashboard-grid,.availability-grid.compact,.admin-home-grid,.management-grid{grid-template-columns:1fr}.scheduler-toolbar{align-items:flex-start;flex-direction:column}.scheduler-filters{grid-template-columns:1fr}.scheduler-filter-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px}.schedule-week-filter{grid-column:1 / -1}.scheduler-layout{grid-template-columns:1fr}.scheduler-palette{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.scheduler-palette h3,.scheduler-palette p{grid-column:1 / -1}.admin-header .brand-lockup small{display:none}}@media(max-width:520px){.day-card,.note-card{padding:15px}.day-card-title{margin-bottom:12px}.hour-row{gap:7px}.admin-header{height:64px}.admin-header .brand-lockup>div{display:none}.admin-main{padding-top:14px}.panel{padding:16px}.inline-form,.employee-create-form,.position-create-form,.employee-settings,.scheduler-filters{grid-template-columns:1fr}.scheduler-filter-heading{align-items:stretch;flex-direction:column}.scheduler-create-week{width:100%}.scheduler-filter-grid{grid-template-columns:1fr}.schedule-week-filter{grid-column:auto}.scheduler-refresh{width:100%}.scheduler-refresh span{position:static;width:auto;height:auto;overflow:visible;clip:auto}.position-row{align-items:stretch;flex-direction:column}.position-actions{justify-content:flex-end}.employee-summary{align-items:flex-start}.status-dot-label{flex:0 0 auto}.employee-header{padding-inline:8px}.employee-brand>span{width:32px;height:32px}.employee-brand small{display:none}.employee-account-actions button{min-height:40px;padding-inline:6px;font-size:.72rem}.employee-tabs{margin-top:6px}.employee-tabs button{padding-inline:4px;font-size:.76rem}.my-schedule-list article{grid-template-columns:100px 1fr}.submission-dialog{max-height:100vh;height:100vh;border-radius:0}.modal-backdrop{padding:0}}@media(max-width:360px){.employee-brand>div{display:none}}.mobile-option-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0;min-height:var(--control-height);padding:0 12px;color:#202422;background:var(--surface);border:1px solid #d2d6d4;border-radius:var(--radius-sm);text-align:left;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease,transform .16s ease}.mobile-option-picker-trigger:hover:not(:disabled){background:#f7f8f7;border-color:#b8bfbc}.mobile-option-picker-trigger:active:not(:disabled){transform:translateY(1px)}.mobile-option-picker-trigger:focus-visible{outline:none;border-color:#747b78;box-shadow:var(--focus-ring)}.mobile-option-picker-trigger:disabled{color:#6b716f;background:#f2f3f2}.mobile-option-picker-trigger>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-option-picker-chevron{flex:0 0 auto;color:var(--muted);font-size:1.05rem;line-height:1}.hour-row .mobile-option-picker-trigger{justify-content:center;padding-inline:10px;font-variant-numeric:tabular-nums;font-weight:750}.hour-row .mobile-option-picker-chevron{position:absolute;opacity:0;pointer-events:none}.mobile-option-picker-backdrop{position:fixed;z-index:var(--z-picker);inset:0;display:flex;align-items:flex-end;justify-content:center;padding-top:max(20px,env(safe-area-inset-top));overflow:hidden;overscroll-behavior:contain;background:#11201d80;opacity:0;transition:opacity .18s ease}.mobile-option-picker-backdrop.visible{opacity:1}.mobile-option-picker-sheet{display:flex;flex-direction:column;width:min(100%,480px);max-height:min(68vh,620px);max-height:min(68dvh,620px);padding-bottom:env(safe-area-inset-bottom);overflow:hidden;color:#202422;background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;box-shadow:0 -18px 48px #1f242233;transform:translateY(24px);transition:transform .18s ease}.mobile-option-picker-backdrop.visible .mobile-option-picker-sheet{transform:translateY(0)}.mobile-option-picker-sheet>header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:9px 12px 9px 18px;border-bottom:1px solid var(--line)}.mobile-option-picker-sheet h2{margin:0;font-size:1.03rem;line-height:1.35}.mobile-option-picker-close{display:grid;flex:0 0 auto;place-items:center;width:42px;height:42px;padding:0;color:#555b58;background:transparent;border:0;border-radius:50%;font-size:1.55rem;line-height:1;transition:color .15s ease,background-color .15s ease}.mobile-option-picker-close:hover{color:var(--primary);background:#ecefed}.mobile-option-picker-close:focus-visible,.mobile-option-picker-options button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.mobile-option-picker-options{min-height:0;padding:8px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.mobile-option-picker-options button{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:8px 10px;color:#353a38;background:transparent;border:0;border-radius:11px;text-align:left;transition:color .15s ease,background-color .15s ease,box-shadow .15s ease}.mobile-option-picker-options button:hover,.mobile-option-picker-options button.active{color:#303533;background:#eff1f0}.mobile-option-picker-options button[aria-selected=true]{color:#252a28;background:#e5e8e6}.mobile-option-picker-check{flex:0 0 20px;color:var(--primary);font-weight:900;text-align:center}.mobile-option-picker-option-copy{display:grid;min-width:0;gap:2px}.mobile-option-picker-option-copy strong{font-size:.95rem;line-height:1.35}.mobile-option-picker-option-copy small{color:var(--muted);font-size:.82rem;line-height:1.35}.mobile-option-picker-sheet.grid .mobile-option-picker-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:10px}.mobile-option-picker-sheet.grid .mobile-option-picker-options button{justify-content:center;min-width:0;min-height:44px;padding:8px 4px;border:1px solid #e2eae8;text-align:center}.mobile-option-picker-sheet.grid .mobile-option-picker-check{display:none}.mobile-option-picker-sheet.grid .mobile-option-picker-option-copy strong{font-variant-numeric:tabular-nums}@media(max-width:359px){.day-card,.note-card{padding-inline:13px}.hour-row{gap:6px}.hour-row .mobile-option-picker-trigger{padding-inline:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.admin-shell{font-family:-apple-system,BlinkMacSystemFont,Segoe UI Variable,Segoe UI,Noto Sans,Arial,sans-serif;font-size:15px;line-height:1.5;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.ui-icon{width:1em;height:1em;display:block;flex:0 0 auto}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.button .ui-icon{width:17px;height:17px}.button.icon-only{width:40px;min-width:40px;padding:0}.icon-button,.dialog-close{display:inline-grid;place-items:center;padding:0}.icon-button .ui-icon,.dialog-close .ui-icon,.mobile-option-picker-close .ui-icon{width:20px;height:20px}.brand-logo-image{width:88px;height:42px;display:block;flex:0 0 auto;padding:5px 7px;background:linear-gradient(135deg,#4a504d,#2b302d);border-radius:9px;object-fit:contain}.brand-logo-back{display:inline-grid;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:11px;background:transparent;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s ease,filter .16s ease}.brand-logo-back:hover{transform:translateY(-1px);filter:brightness(1.06)}.brand-logo-back:active{transform:scale(.96)}.brand-logo-back:focus-visible{outline:3px solid rgba(255,255,255,.82);outline-offset:3px}.login-card .brand-logo-back:focus-visible,.center-state .brand-logo-back:focus-visible{outline-color:var(--primary)}.brand-logo-back .brand-logo-image{pointer-events:none}.login-card .brand-logo-image{width:104px;height:50px}.custom-select-chevron:before{content:none}.custom-select-chevron,.mobile-option-picker-chevron,.date-time-picker-chevron,.employee-expand-icon{display:inline-grid;place-items:center}.custom-select-chevron .ui-icon,.mobile-option-picker-chevron .ui-icon,.date-time-picker-chevron .ui-icon,.employee-expand-icon .ui-icon{width:18px;height:18px}.custom-select-check .ui-icon,.mobile-option-picker-check .ui-icon{width:17px;height:17px;margin:auto}.date-time-picker-month-actions .ui-icon,.date-time-picker-stepper .ui-icon{width:17px;height:17px}.date-time-picker-icon .ui-icon,.date-time-picker-clock .ui-icon{width:21px;height:21px}.date-time-picker-clock .ui-icon{width:18px;height:18px}.admin-home-page{display:grid;gap:18px}.admin-home-welcome{min-height:250px;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,380px);align-items:center;overflow:hidden;padding:clamp(24px,4vw,46px);color:#fff;background:radial-gradient(circle at 82% 30%,rgba(255,255,255,.12),transparent 30%),linear-gradient(135deg,#242826,#393e3b 48%,#565c58);border-radius:24px;box-shadow:0 20px 48px #191d1b33}.admin-home-welcome-copy{position:relative;z-index:1;max-width:660px}.admin-home-welcome .eyebrow{color:#ffd8ba}.admin-home-welcome h1{max-width:620px;margin:8px 0 12px;color:#fff;font-size:clamp(1.65rem,3vw,2.6rem);line-height:1.16}.admin-home-welcome p{max-width:560px;margin-bottom:22px;color:#ffffffd6;line-height:1.65}.admin-home-welcome .button.primary{color:#303533;background:#fff;box-shadow:0 10px 24px #14171638}.cow-mascot{width:min(100%,330px);justify-self:center;filter:drop-shadow(0 14px 18px rgba(24,28,26,.15))}.availability-admin-page{display:grid;gap:16px}.availability-admin-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;padding:26px 28px;background:radial-gradient(circle at 92% 10%,rgba(78,85,82,.12),transparent 34%),linear-gradient(135deg,#fff,#f3f4f3);border:1px solid #dfe3e1}.availability-admin-hero h1{margin:5px 0 8px;color:#292e2c;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.25}.availability-admin-hero p{max-width:700px;margin:0;color:var(--muted);line-height:1.55}.availability-progress-card{min-width:170px;display:grid;justify-items:center;padding:15px 20px;background:#fff;border:1px solid #d8ddda;border-radius:16px;box-shadow:var(--shadow-sm)}.availability-progress-card>span,.availability-progress-card p{color:var(--muted);font-size:.75rem;font-weight:700}.availability-progress-card strong{margin:3px 0;color:var(--primary);font-size:2rem;line-height:1}.availability-progress-card strong small{color:#888f8c;font-size:1rem}.availability-progress-card p{margin:0}.availability-week-summary{display:grid;align-content:start;gap:13px;background:linear-gradient(180deg,#fff,#f9fbfa)}.availability-summary-row{display:grid;gap:5px;padding-bottom:12px;border-bottom:1px solid #e6e9e7}.availability-summary-row:last-child{padding-bottom:0;border-bottom:0}.availability-summary-row>span:first-child{color:var(--muted);font-size:.73rem;font-weight:700}.availability-summary-row>strong{color:#424946;font-size:.88rem;line-height:1.45}.matrix-panel .panel-heading{align-items:center;margin-bottom:12px;padding-bottom:16px;border-bottom:1px solid #e6e9e7}.matrix-panel .panel-heading h2{margin:4px 0 3px}.matrix-schedule-action{flex:0 0 auto}.schedule-legend{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;padding:0 20px 14px;color:var(--muted);font-size:.75rem;font-weight:700}.schedule-legend span{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:9px;height:9px;display:block;border-radius:50%}.legend-dot.working{background:var(--primary)}.legend-dot.off{background:#c9827b}.legend-dot.missing{background:#b7c1be}.calendar-day-heading strong{display:block;color:#494f4c;font-size:.76rem}.calendar-day-heading small,.cloud-schedule-table thead small{display:block;margin-top:3px;color:#777e7a;font-size:.67rem;font-weight:700;letter-spacing:0}.availability-matrix,.cloud-schedule-table{font-variant-numeric:tabular-nums}.availability-matrix thead th,.cloud-schedule-table thead th{background:#f4f5f4}.matrix-scroll .availability-matrix tbody th,.schedule-table-scroll .cloud-schedule-table tbody tr:not(.schedule-group-row)>th{position:sticky;z-index:2;left:0;background:#fff;box-shadow:8px 0 12px -12px #1f242280}.matrix-scroll .availability-matrix thead th:first-child,.schedule-table-scroll .cloud-schedule-table thead th:first-child{position:sticky;z-index:3;left:0;background:#f0f2f1}.schedule-sync-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 15px;border:1px solid;border-radius:14px}.schedule-sync-bar.synced{color:#195f56;background:#edf9f6;border-color:#c3e4de}.schedule-sync-bar.missing{color:#7b5127;background:#fff8ed;border-color:#eddbbd}.schedule-sync-icon{width:34px;height:34px;display:grid;place-items:center;color:#fff;background:var(--primary);border-radius:50%;font-weight:900}.schedule-sync-bar.missing .schedule-sync-icon{background:#b77a38}.schedule-sync-icon .ui-icon{width:18px;height:18px}.schedule-sync-bar strong,.schedule-sync-bar p{display:block}.schedule-sync-bar p{margin:3px 0 0;color:inherit;font-size:.79rem;opacity:.82}.employee-manager-page{display:grid;gap:16px}.employee-manager-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 28px;background:radial-gradient(circle at 90% 15%,rgba(78,85,82,.1),transparent 35%),linear-gradient(135deg,#fff,#f4f5f4);border:1px solid #dfe3e1}.employee-manager-hero h2{margin:5px 0 7px;color:#292e2c;font-size:clamp(1.5rem,2.4vw,2rem)}.employee-manager-hero p,.employee-tool-heading p,.employee-list-heading p{margin:0;color:var(--muted);line-height:1.5}.employee-manager-stats{display:flex;align-items:stretch;gap:8px}.employee-manager-stats>span{min-width:100px;display:grid;justify-items:center;gap:2px;padding:12px 13px;color:var(--muted);background:#ffffffe0;border:1px solid #dfe3e1;border-radius:13px;font-size:.71rem;font-weight:700}.employee-manager-stats strong{color:#353a38;font-size:1.35rem}.employee-manager-tools{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);gap:16px;align-items:start}.employee-create-card{display:grid;gap:18px}.employee-tool-heading{display:flex;align-items:center;gap:12px}.employee-tool-heading h3,.employee-list-heading h3{margin:0 0 3px;color:#28433f;font-size:1rem}.employee-tool-icon{width:42px;height:42px;display:grid;flex:0 0 auto;place-items:center;color:var(--primary);background:var(--primary-soft);border-radius:12px}.employee-tool-icon .ui-icon{width:21px;height:21px}.employee-create-form,.employee-create-form .field{margin:0}.employee-create-form .button{min-height:var(--control-height)}.position-manager{margin:0;padding:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.position-manager>summary{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;list-style:none}.position-manager>summary::-webkit-details-marker{display:none}.position-manager-summary-copy{display:grid;gap:3px}.position-manager-summary-copy small{color:var(--muted)}.position-manager-chevron{width:19px;height:19px;color:var(--primary);transition:transform var(--transition-fast)}.position-manager[open] .position-manager-chevron{transform:rotate(180deg)}.position-manager>form,.position-manager>.position-list{margin-inline:18px}.position-manager>.position-list{margin-bottom:18px}.employee-list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:4px;padding:0 4px}.employee-list-heading>span{padding:6px 10px;color:#505653;background:var(--primary-soft);border-radius:999px;font-size:.75rem;font-weight:800;white-space:nowrap}.employee-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.employee-row{padding:0;overflow:visible;background:#fff;border:1px solid #dfe3e1;border-radius:16px;box-shadow:0 5px 16px #1f24220f}.employee-row[open]{grid-column:1 / -1}.employee-summary{min-height:76px;margin:0;padding:13px 15px;border-radius:15px}.employee-avatar{width:42px;height:42px;display:grid;flex:0 0 auto;place-items:center;color:#fff;background:linear-gradient(145deg,#555b58,#303533);border-radius:13px;font-size:.78rem;font-weight:850;letter-spacing:.04em;box-shadow:0 5px 12px #1f242233}.employee-identity{flex:1 1 auto;display:grid;align-content:center;gap:4px}.employee-name-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.employee-group-label:before{content:"Nhóm · ";color:#8a9793}.employee-expand-icon{width:32px;height:32px;color:var(--primary);background:#ecefed;border-radius:9px}.employee-settings{margin:0 15px 15px;padding:16px;background:#f8f9f8;border:1px solid #e5e8e6;border-radius:13px}@media(max-width:900px){.admin-home-welcome{grid-template-columns:minmax(0,1fr) 240px}.employee-manager-hero{align-items:flex-start;flex-direction:column}.employee-manager-stats{width:100%}.employee-manager-stats>span{flex:1 1 0}.employee-manager-tools{grid-template-columns:minmax(0,1fr)}}@media(max-width:680px){.brand-logo-image{width:70px;height:36px}.admin-home-welcome{min-height:0;grid-template-columns:minmax(0,1fr);padding:24px 20px 0}.cow-mascot{width:220px;margin-top:-8px}.availability-admin-hero{align-items:stretch;flex-direction:column;padding:20px}.availability-progress-card{min-width:0;grid-template-columns:auto auto minmax(0,1fr);align-items:center;justify-items:start;gap:10px}.availability-progress-card strong{font-size:1.55rem}.matrix-panel .panel-heading{align-items:stretch;flex-direction:column}.matrix-schedule-action{width:100%}.schedule-sync-bar{grid-template-columns:auto minmax(0,1fr)}.schedule-sync-bar .button{grid-column:1 / -1;width:100%}.employee-manager-hero{padding:20px}.employee-manager-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.employee-manager-stats>span{min-width:0;padding-inline:7px;text-align:center}.employee-list{grid-template-columns:minmax(0,1fr)}.employee-row[open]{grid-column:auto}.employee-summary-meta .status-dot-label{display:none}.employee-settings{grid-template-columns:minmax(0,1fr)}}.admin-header{position:sticky;z-index:var(--z-navigation);top:0;color:#fff;background:radial-gradient(circle at 16% -80%,rgba(255,255,255,.2),transparent 48%),linear-gradient(135deg,#414644,#272b29);border-bottom-color:#ffffff1f;box-shadow:0 8px 24px #181c1a33}.admin-header .brand-logo-image,.employee-brand .brand-logo-image{width:82px;height:40px;object-fit:contain}.admin-header .brand-logo-image{width:104px;padding:0;background:transparent;border-radius:10px}.admin-header .brand-lockup strong{color:#fff}.admin-header .brand-lockup small{color:#ffffffbd}.admin-header>.button.ghost{color:#fff;background:#ffffff14;border-color:#ffffff47}.admin-header>.button.ghost:hover:not(:disabled){color:#fff;background:#ffffff29;border-color:#ffffff80}.employee-header{padding:0;background:#fffffffa;border-bottom-color:var(--line);box-shadow:0 8px 24px #181c1a1f}.employee-header-top{min-height:58px;padding:8px 12px;color:#fff;background:radial-gradient(circle at 16% -80%,rgba(255,255,255,.2),transparent 48%),linear-gradient(135deg,#414644,#272b29);border-bottom:1px solid rgba(255,255,255,.12)}.employee-brand strong{color:#fff}.employee-brand small{color:#ffffffbd}.employee-account-actions button{color:#fff;background:#ffffff14;border-color:#fff3}.employee-account-actions button:hover:not(:disabled){color:#fff;background:#ffffff29;border-color:#fff6}.employee-tabs{margin:7px auto 9px}.employee-brand .brand-logo-image{width:72px;height:34px;display:block;flex:0 0 auto;padding:3px 5px;object-fit:contain;background:#fff;border:1px solid #e0e9e7;border-radius:10px;overflow:hidden}.scheduler-layout .cloud-schedule-table tbody tr:not(.schedule-group-row)>td{vertical-align:middle;text-align:center}.scheduler-layout .official-shifts{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;gap:4px}.scheduler-layout .official-shifts .schedule-entry-chip{width:fit-content;max-width:100%;margin:0 auto;text-align:center}@media(max-width:520px){.admin-header .brand-logo-image{width:68px;height:34px}.admin-header .brand-lockup>div{display:none}}@media(max-width:600px){.admin-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:6px 8px;overflow:visible}.admin-tabs button{min-height:42px;padding:5px 4px;border:0;border-radius:9px;line-height:1.2;text-align:center}.admin-tabs button.active{background:var(--primary-soft);box-shadow:inset 0 0 0 1px #d5dad7}.admin-tabs button:hover:not(.active){border-color:transparent;background:var(--surface-hover)}}@media(max-width:680px){.employee-brand .brand-logo-image{width:72px;height:34px;padding:3px 5px;object-fit:contain;background:#000;border:1px solid #e0e9e7;border-radius:10px;overflow:hidden}}.scheduler-layout{grid-template-columns:224px minmax(0,1fr);gap:16px}.scheduler-palette{top:82px;grid-template-columns:1fr;gap:0;padding:0;overflow:hidden;border-color:#dce2df;border-radius:18px;box-shadow:0 12px 32px #1f242217}.scheduler-palette .scheduler-shift{min-height:44px;padding:7px 12px;border-radius:11px;cursor:grab;box-shadow:inset 4px 0 0 var(--shift-dot),inset 0 1px #ffffff7a}.scheduler-layout .official-shifts{min-height:30px;display:grid;align-content:center;align-items:stretch;justify-content:stretch;justify-items:stretch;width:100%;gap:5px}.scheduler-layout .schedule-entry-wrap .schedule-entry-chip{width:100%;max-width:none;margin:0;padding:5px 27px 5px 7px}.submitted-availability-list article{min-height:76px;grid-template-columns:minmax(88px,.72fr) minmax(0,1.28fr);gap:14px;padding:12px 14px;border-radius:13px}.submitted-day-value{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 8px}.submitted-day-value .submitted-availability-shift{width:auto;min-width:0;max-width:100%;min-height:40px;align-items:center;justify-content:center;justify-self:stretch;padding:7px 10px;border-radius:9px;box-shadow:inset 4px 0 0 var(--shift-dot);text-align:center}@media(max-width:820px){.scheduler-layout{grid-template-columns:1fr}.scheduler-palette{position:static;grid-template-columns:1fr}.scheduler-palette-heading,.scheduler-selection-status,.scheduler-shift-list,.schedule-trash-zone{grid-column:1 / -1}}@media(max-width:520px){.submitted-availability-list article{min-height:72px;grid-template-columns:78px minmax(0,1fr);gap:10px;padding:10px 11px}.submitted-day-value{grid-template-columns:minmax(0,1fr) auto;gap:5px 6px}.submitted-day-value .submitted-availability-shift{min-height:38px;padding:6px 8px;font-size:.82rem}}@media(max-width:380px){.submitted-availability-list article{grid-template-columns:70px minmax(0,1fr);gap:8px}}@media(max-width:600px){.mobile-option-picker-backdrop{align-items:center;justify-content:center;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}.mobile-option-picker-sheet{width:min(calc(100% - 32px),480px);max-height:min(72vh,620px);max-height:min(72dvh,620px);overflow:hidden;border-radius:20px;box-shadow:0 24px 64px #1f242242;opacity:0;transform:translateY(10px) scale(.98);transition:transform .18s ease,opacity .18s ease}.mobile-option-picker-backdrop.visible .mobile-option-picker-sheet{opacity:1;transform:translateY(0) scale(1)}.mobile-option-picker-options{min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.sticky-submit{position:fixed;left:0;right:0;bottom:0;padding-bottom:max(12px,env(safe-area-inset-bottom))}.employee-page{padding-bottom:calc(112px + env(safe-area-inset-bottom))}}.employee-password{min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:#fff;font-size:.8rem;font-weight:700;white-space:nowrap}.credentials-card{display:grid;gap:10px;margin:14px 0;padding:16px;border:1px solid #d5dad7;border-radius:14px;background:#f3f5f4}.credentials-card>div{display:flex;align-items:center;justify-content:space-between}.credentials-card label{display:grid;gap:4px;color:var(--muted);font-size:.78rem}.credentials-card code{overflow-wrap:anywhere;padding:8px 10px;border:1px solid #d9dddb;border-radius:8px;color:var(--text);background:#fff;font-size:.9rem}.credentials-card .button{justify-self:start}.credentials-card p{margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.45}.team-page .schedule-entry-chip.readonly{display:flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;margin:0 auto;text-align:center}.team-page .published-schedule-sheet .cloud-schedule-table tbody td{vertical-align:middle}.schedule-off{display:block;padding:7px 4px;color:#858b88;text-align:center;font-size:.75rem}.schedule-staffing-row th,.schedule-staffing-row td{height:28px;padding:4px 7px;vertical-align:middle;text-align:center;color:var(--text-secondary);background:#f4f5f4;font-size:.72rem;font-weight:800}.published-schedule-sheet .cloud-schedule-table thead th:first-child,.published-schedule-sheet .cloud-schedule-table tbody tr:not(.schedule-group-row)>th:first-child,.published-schedule-sheet .cloud-schedule-table tfoot th:first-child{position:sticky;left:0;z-index:2;background:#fff;box-shadow:1px 0 #dfe3e1}.published-schedule-sheet .cloud-schedule-table thead th:first-child{z-index:3;background:#f4f5f4}.published-schedule-sheet .cloud-schedule-table tfoot th:first-child{background:#f4f5f4}.schedule-export-stage{position:fixed;top:0;left:-100000px;width:1280px;pointer-events:none}.schedule-export-sheet{width:1280px;min-width:1280px;padding:20px;color:#303633;background:#fff;font-family:Arial,Helvetica,sans-serif}.schedule-export-sheet .cloud-sheet-title{display:flex;align-items:center;justify-content:space-between;min-height:42px;margin:0 0 12px;padding:0 2px 10px;border-bottom:1px solid #dfe4e1}.schedule-export-sheet .cloud-sheet-title strong{color:#303633;font-size:.88rem;letter-spacing:.08em}.schedule-export-sheet .cloud-sheet-title span{color:#555d59;font-size:.8rem;font-weight:700}.schedule-export-sheet .cloud-schedule-table{width:100%;border-collapse:collapse;table-layout:fixed}.schedule-export-sheet .cloud-schedule-table th,.schedule-export-sheet .cloud-schedule-table td{height:68px;padding:7px;border:1px solid #dce1de;text-align:center;vertical-align:middle}.schedule-export-sheet .cloud-schedule-table thead th{height:48px;color:#59605d;background:#f3f5f4;font-size:.78rem}.schedule-export-sheet .cloud-schedule-table thead th:first-child{width:174px}.schedule-export-sheet .cloud-schedule-table thead strong,.schedule-export-sheet .cloud-schedule-table thead small,.schedule-export-sheet .cloud-schedule-table tbody th>strong,.schedule-export-sheet .cloud-schedule-table tbody th>small{display:block;text-align:center}.schedule-export-sheet .cloud-schedule-table thead small,.schedule-export-sheet .cloud-schedule-table tbody th>small{margin-top:3px;color:#6b726f;font-size:.7rem}.schedule-export-sheet .schedule-group-row th{height:34px;padding:6px 12px;color:#404844;background:#edf0ee;font-size:.72rem;font-weight:850;letter-spacing:.06em;text-align:center;text-transform:uppercase}.schedule-export-sheet .schedule-entry-chip.readonly{display:flex;align-items:center;justify-content:center;width:100%;min-height:34px;padding:6px;border-radius:8px;font-size:.72rem;line-height:1.25;text-align:center;white-space:normal;overflow-wrap:anywhere}.schedule-export-sheet .schedule-staffing-row th,.schedule-export-sheet .schedule-staffing-row td{height:30px;padding:5px 7px;color:#555d59;background:#f4f5f4;font-size:.72rem;font-weight:800;text-align:center}.scheduler-layout .schedule-day-head.weekend{background:#f7f4ef}.scheduler-layout .schedule-day-head.today{position:relative;background:#eef5f1;box-shadow:inset 0 -2px #6f8a7b}.scheduler-layout .schedule-today-dot{display:block;width:5px;height:5px;margin:4px auto 0;background:#5d7869;border-radius:50%}.scheduler-layout .cloud-schedule-table tbody tr:not(.schedule-group-row)>td:nth-child(7),.scheduler-layout .cloud-schedule-table tbody tr:not(.schedule-group-row)>td:nth-child(8){background-image:linear-gradient(#8b745306,#8b745306)}
