:root{--brand-green: #1DA35C;--brand-green-deep: #12703F;--brand-green-light: #7ED9A6;--brand-green-tint: #E4F3EA;--brand-green-edge: #17894E;--danger: #C4432E;--danger-deep: #9E3524;--danger-edge: #A83A27;--danger-tint: #FBEAE6;--warning: #B8720C;--warning-deep: #8F5808;--warning-tint: #FBEFDC;--surface: #F7F7F6;--raised: #FFFFFF;--sunken: #EFEFED;--ink: #111412;--ink-soft: #1A1A1A;--ink-muted: #626B67;--ink-inverse: #F4F6F4;--edge: #D8D8D5;--edge-soft: #E6E6E3;--accent: var(--brand-green);--accent-deep: var(--brand-green-deep);--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--surface: #1E2320;--raised: #262C29;--sunken: #191E1B;--ink: #F4F6F4;--ink-soft: #C8D0CC;--ink-muted: #8D9793;--ink-inverse: #111412;--edge: #39413D;--edge-soft: #2F3733;--brand-green-tint: #22332A;--danger-tint: #3A2420;--warning-tint: #362B16;--accent: #4FC183;--accent-deep: #7ED9A6;--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181}}:root[data-theme=dark]{--surface: #1E2320;--raised: #262C29;--sunken: #191E1B;--ink: #F4F6F4;--ink-soft: #C8D0CC;--ink-muted: #8D9793;--ink-inverse: #111412;--edge: #39413D;--edge-soft: #2F3733;--brand-green-tint: #22332A;--danger-tint: #3A2420;--warning-tint: #362B16;--accent: #4FC183;--accent-deep: #7ED9A6;--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--surface);color:var(--ink-soft);font-family:var(--sans);font-size:15px;line-height:1.5}button{font:inherit;cursor:pointer}.shell{display:grid;grid-template-columns:232px minmax(0,1fr);height:100%}.shell.shell-no-nav{grid-template-columns:minmax(0,1fr)}.nav-rail{display:flex;flex-direction:column;gap:4px;padding:20px 14px;background:var(--raised);border-right:1px solid var(--edge)}.lockup{display:inline-flex;align-items:center;gap:10px}.wordmark{font-weight:700;font-size:1.15rem;letter-spacing:-.02em;color:var(--ink)}.nav-rail .lockup{padding:4px 8px 18px}.brand-link{text-decoration:none;color:inherit}.nav-item{display:block;padding:9px 12px;border-radius:8px;border:1px solid transparent;background:none;color:var(--ink-soft);text-decoration:none;text-align:left;width:100%}.nav-item:hover{background:var(--brand-green-tint);color:var(--accent-deep)}.nav-item.active{background:var(--brand-green-tint);border-color:var(--accent);color:var(--accent-deep);font-weight:600}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-spacer{flex:1}.nav-footnote{padding:8px 12px 0;font-size:.75rem;color:var(--ink-muted)}main.content{overflow:auto;padding:24px 28px}.page-title{margin:0 0 18px;font-size:1.35rem;font-weight:650;letter-spacing:-.015em;color:var(--ink)}.page-subtitle{margin:28px 0 12px;font-size:1.05rem;font-weight:650;color:var(--ink)}.placeholder{color:var(--ink-muted);max-width:60ch}.not-found{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;max-width:46ch;margin:10vh auto 0;padding:0 24px}.not-found-code{margin:12px 0 0;font-size:3.5rem;font-weight:800;letter-spacing:-.02em;color:var(--brand-green)}.not-found-title{margin:0;font-size:1.3rem;font-weight:650;color:var(--ink)}.not-found-body{margin:0 0 10px;color:var(--ink-muted)}.btn{padding:8px 16px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink-soft);text-decoration:none}.btn:not(:disabled):hover{background:var(--brand-green-tint);border-color:var(--brand-green);color:var(--accent-deep)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--brand-green);border-color:var(--brand-green-edge);color:#fff;font-weight:600}.btn.primary:not(:disabled):hover{background:var(--brand-green-deep)}.btn.danger{background:var(--danger);border-color:var(--danger-edge);color:#fff;font-weight:600}.btn.danger:not(:disabled):hover{background:var(--danger-deep)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.week-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.station-select{font:inherit;font-weight:650;font-size:1.15rem;color:var(--ink);background:transparent;border:1px solid transparent;border-radius:8px;padding:4px 8px}.station-select:hover{border-color:var(--edge);background:var(--raised)}.week-toolbar .push{margin-left:auto}.week-label{font:inherit;font-variant-numeric:tabular-nums;color:var(--ink-soft);border:none;background:none;padding:4px 8px;border-radius:8px;cursor:pointer}.week-label:hover{background:var(--brand-green-tint);color:var(--accent-deep)}.week-label:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.week-label:disabled{opacity:.55;cursor:not-allowed}.week-label:disabled:hover{background:none;color:var(--ink-soft)}.week-label.btn{border:1px solid var(--edge);background:var(--raised);padding:8px 16px}.week-label.btn:disabled:hover{background:var(--raised);color:var(--ink-soft)}.year-label{color:var(--ink-muted)}.btn.nav-week{padding:6px 12px}.week-picker{position:relative;display:inline-flex}.week-picker-popover{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:30;width:264px;padding:12px;border-radius:12px;border:1px solid var(--edge);background:var(--raised);box-shadow:0 12px 30px #00000038;animation:week-picker-in .12s ease-out}.week-picker-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.week-picker-month{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.week-picker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.week-picker-weekdays span{text-align:center;font-size:.68rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em}.week-picker-grid{display:flex;flex-direction:column;gap:2px}.week-picker-row{display:grid;grid-template-columns:repeat(7,1fr);border-radius:8px}.week-picker-row.hovered{background:var(--brand-green-tint)}.week-picker-day{font:inherit;font-variant-numeric:tabular-nums;padding:6px 0;border:none;background:none;color:var(--ink);border-radius:6px;cursor:pointer}.week-picker-day.outside{color:var(--ink-muted);opacity:.6}.week-picker-day.today{font-weight:700;box-shadow:inset 0 0 0 2px var(--accent)}.week-picker-day:hover{background:var(--brand-green);color:#fff}.week-picker-day:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@keyframes week-picker-in{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.97)}to{opacity:1;transform:translate(-50%)}}.setup-checklist{border:1px solid var(--edge);border-radius:10px;background:var(--raised);padding:14px 16px;margin-bottom:14px}.setup-checklist-title{margin:0 0 8px;font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;font-weight:600;color:var(--ink-muted)}.setup-checklist-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px}.setup-checklist-item{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--ink-soft)}.setup-checklist-item.done{color:var(--ink-muted);text-decoration:line-through}.setup-checklist-check{flex:0 0 auto;width:16px;text-align:center;color:var(--brand-green)}.setup-checklist-item.done .setup-checklist-check{color:var(--ink-muted)}.setup-checklist-action{padding:3px 10px;font-size:.8rem}.week-body{display:flex;gap:16px;align-items:flex-start}.timetable-wrap{flex:1;min-width:0;overflow-x:auto;border:1px solid var(--edge);border-radius:10px;background:var(--raised)}.week-legend{flex:0 0 200px;max-height:480px;overflow-y:auto;border:1px solid var(--edge);border-radius:10px;background:var(--raised);padding:14px 16px;font-size:.82rem;color:var(--ink-soft)}.week-legend h3{margin:12px 0 6px;font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;font-weight:600;color:var(--ink-muted)}.week-legend h3:first-child{margin-top:0}.legend-row{display:flex;align-items:center;gap:7px;padding:2px 0}.legend-muted{color:var(--ink-muted)}.legend-swatch{flex:0 0 auto;width:13px;height:13px;border-radius:3px;border:1px solid var(--edge)}.legend-preset{gap:8px}.legend-preset-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legend-remove{flex:0 0 auto;border:none;background:none;color:var(--ink-muted);font-size:.9rem;line-height:1;padding:2px 4px;border-radius:4px}.legend-remove:hover{background:var(--edge-soft);color:var(--danger)}.legend-add-preset{width:100%;margin-top:8px;padding:4px 8px}table.timetable{border-collapse:collapse;width:100%;min-width:860px;font-size:.86rem}table.timetable+table.timetable{margin-top:20px;padding-top:16px;border-top:2px solid var(--edge)}.timetable th,.timetable td{border:1px solid var(--edge-soft);padding:5px 10px;text-align:center;vertical-align:middle}.timetable th{background:var(--sunken);font-weight:600;color:var(--ink)}.timetable th.day-head{cursor:pointer;-webkit-user-select:none;user-select:none}.timetable th.day-head:hover{background:var(--brand-green-tint)}.timetable th.day-head .date{display:block;font-weight:400;font-size:.78rem;color:var(--ink-muted)}.timetable th.day-head.today{box-shadow:inset 0 -2px 0 var(--accent)}.timetable th.staff-name{text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.timetable th.staff-name:hover{background:var(--brand-green-tint)}.timetable td.cell{position:relative;min-width:96px;height:36px;font-variant-numeric:tabular-nums;color:var(--ink);cursor:pointer}.cell-relaxed-mark{position:absolute;top:2px;right:2px;z-index:1}.cell-relaxed-mark .info-mark,.cell-conflict-mark .info-mark{width:15px;height:15px;font-size:.68rem}.cell-conflict-mark{position:absolute;top:2px;left:2px;z-index:1}.timetable td.cell:hover{outline:2px solid var(--brand-green);outline-offset:-2px}.timetable td.cell.filled{color:#111412}.timetable td.cell.filled .and{color:#626b67}.timetable td.cell.empty{color:var(--ink-muted)}.timetable td.cell .and{display:block;font-size:.72rem;color:var(--ink-muted)}.timetable td.cell .station-letter{font-weight:700;margin-left:5px}.timetable td.cell.locked{box-shadow:inset 0 0 0 2px var(--ink-muted)}.timetable td.cell.readonly{cursor:default}.timetable td.cell.readonly:hover{outline:none}.day-head svg,.staff-name svg{vertical-align:middle;margin-left:3px}.corner-locks{display:flex;gap:6px;justify-content:center}.corner-locks button{border:1px solid var(--edge);background:var(--raised);border-radius:6px;padding:2px 6px}.corner-locks button:hover{background:var(--brand-green-tint)}.corner-lock-btn{display:inline-flex;align-items:center;gap:3px}.week-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.week-actions .btn{white-space:nowrap}.week-action-generate{min-width:168px}.week-action-copy{min-width:148px}.week-action-clear{min-width:138px}.week-action-relaxed-toggle.active{background:var(--warning-tint);border-color:var(--warning);color:var(--warning-deep)}.week-action-relaxed-toggle.active:not(:disabled):hover{background:var(--warning-tint);border-color:var(--warning-deep);color:var(--warning-deep)}.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid var(--edge);vertical-align:-1px;margin-right:5px}.station-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:820px}.station-card{display:block;width:100%;padding:16px 18px;border-radius:10px;border:1px solid var(--edge);background:var(--raised);color:var(--ink);text-align:left}.station-card:hover,.station-card.selected{border-color:var(--brand-green);background:var(--brand-green-tint)}.station-card .name{font-weight:650;font-size:1.02rem}.station-card .meta{color:var(--ink-muted);font-size:.85rem}table.staff-table{border-collapse:collapse;min-width:480px;background:var(--raised);border:1px solid var(--edge);border-radius:10px}.staff-table th,.staff-table td{border-bottom:1px solid var(--edge-soft);padding:9px 16px;text-align:left}.staff-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-weight:600}.staff-table tr.staff-row{cursor:pointer}.staff-table tr.staff-row:hover td{background:var(--brand-green-tint)}.staff-page-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px}.staff-page-main{min-width:0}.staff-page-sidebar{min-width:0;position:sticky;top:0}.staff-trends-heading{margin:0 0 12px}.staff-trends-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.staff-trends-tiles{display:flex;flex-direction:column;gap:12px}.staff-trends-tile{display:flex;flex-direction:column;gap:2px;background:var(--raised);border:1px solid var(--edge);border-radius:14px;padding:14px 18px}.staff-trends-tile-value{font-size:1.6rem;font-weight:700;color:var(--ink)}.staff-trends-tile-label{font-size:.82rem;color:var(--ink-muted)}.staff-trends-tile-warning{border-color:var(--danger-edge)}.staff-trends-tile-warning .staff-trends-tile-value{color:var(--danger)}.staff-trends-by-type{margin:10px 0 0;font-size:.85rem;color:var(--ink-muted)}.staff-trends-actions{margin:14px 0 0}.staff-trends-leaderboard{min-width:0}.staff-trends-leaderboard>.page-subtitle{margin-top:0}.hours-pie{display:flex;flex-direction:column;align-items:center;gap:12px;background:var(--raised);border:1px solid var(--edge);border-radius:14px;padding:16px;margin-bottom:10px}.hours-pie-legend{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:6px}.hours-pie-legend li{display:flex;align-items:center;gap:8px;font-size:.82rem}.hours-pie-swatch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.hours-pie-legend-name{flex:1;min-width:0;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hours-pie-legend-pct{flex-shrink:0;color:var(--ink-muted);font-variant-numeric:tabular-nums}.staff-trends-leaderboard-list{list-style:none;margin:0;padding:0;background:var(--raised);border:1px solid var(--edge);border-radius:10px}.staff-trends-leaderboard-list li{display:flex;justify-content:space-between;gap:12px;padding:9px 16px;border-bottom:1px solid var(--edge-soft);font-size:.9rem}.staff-trends-leaderboard-list li:last-child{border-bottom:none}.staff-trends-leaderboard-list li span:first-child{color:var(--ink-soft)}.staff-trends-leaderboard-list li span:last-child{font-weight:600;color:var(--ink);white-space:nowrap}.staff-detail{display:flex;flex-direction:column;gap:14px}.staff-detail-actions{display:flex;justify-content:flex-end;margin-top:6px;padding-top:16px;border-top:1px solid var(--edge)}.staff-birthday-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px}.staff-birthday-row label{color:var(--ink);font-weight:500}.staff-birthday-row input[type=date]{font:inherit;padding:6px 8px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.staff-birthday-clear{padding:4px 10px;font-size:.82rem}.staff-birthday-hint{margin:0;font-size:.82rem;flex-basis:100%}.staff-detail-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.staff-detail-type{color:var(--ink-muted);font-size:.85rem}.staff-detail-type-row{display:flex;align-items:center;gap:6px}.staff-detail-row-actions{display:flex;gap:8px}.staff-detail-type-row select{font:inherit;padding:6px 8px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.config-gear{padding:4px 8px;line-height:1}.staff-preferences-list{display:flex;flex-direction:column;gap:10px}.staff-preferences-row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:.85rem;color:var(--ink-muted)}.staff-preferences-row input[type=number],.staff-preferences-row select{flex-shrink:0;font:inherit;padding:6px 8px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.staff-preferences-row input[type=number]{width:60px}.staff-stations{border:1px solid var(--edge);border-radius:10px;padding:12px 14px 14px;margin:0}.staff-stations legend{padding:0 6px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-weight:600}.staff-stations-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:4px}.staff-stations-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 0}.staff-stations-list select{font:inherit;padding:6px 8px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.staff-add-station{display:flex;gap:8px}.staff-add-station select{flex:1;font:inherit;padding:6px 8px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.staff-availability-grid{display:flex;flex-direction:column;gap:6px}.staff-availability-row{display:grid;grid-template-columns:90px 110px 1fr auto 1fr auto;align-items:center;gap:8px}.staff-availability-day{font-weight:600;font-size:.85rem}.staff-availability-cant-work,.staff-availability-prefer-not{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--ink-muted);white-space:nowrap}.staff-availability-until-label{font-size:.8rem;color:var(--ink-muted);text-align:center}.staff-availability-row select{font:inherit;padding:6px 8px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.staff-availability-row select:disabled{opacity:.5}.staff-biweekly-toggle{display:flex;align-items:center;gap:8px;font-size:.85rem;margin-bottom:10px}.staff-biweekly-anchor{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--ink-muted);margin-bottom:14px}.staff-biweekly-week-heading{font-size:.85rem;font-weight:650;color:var(--ink-soft);margin:14px 0 6px}.staff-biweekly-week-heading:first-of-type{margin-top:0}.staff-types-table{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.staff-types-row{display:grid;grid-template-columns:1.1fr 1fr 1fr .8fr 1fr auto;align-items:center;gap:10px}.staff-types-header{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-weight:600}.staff-types-header span{display:flex;align-items:center;gap:3px}.staff-types-row input[type=number],.staff-types-row select{font:inherit;padding:6px 8px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink);width:100%}.staff-types-add-form{margin-top:4px}.staff-types-add-form input[type=number]{width:120px}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100%}.auth-card{width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;gap:18px;background:var(--raised);border:1px solid var(--edge);border-radius:12px;padding:36px 40px}.auth-card h1{margin:0;font-size:1.2rem;font-weight:650;color:var(--ink)}.auth-form{width:100%;display:flex;flex-direction:column;gap:14px}.auth-form .btn.primary{width:100%}.auth-field{display:flex;flex-direction:column;gap:6px;text-align:left}.auth-field label{font-size:.82rem;color:var(--ink-muted)}.auth-field input{width:100%;box-sizing:border-box;font:inherit;padding:11px 14px;border-radius:8px;border:1px solid var(--edge);background:var(--surface);color:var(--ink)}.auth-error{margin:0;font-size:.85rem;color:var(--danger)}.auth-hint{margin:0;font-size:.82rem;text-align:center;color:var(--ink-muted)}.link-button{background:none;border:0;padding:0;font:inherit;color:var(--accent-deep);text-decoration:underline;cursor:pointer}.auth-success{margin:0;font-size:1rem;font-weight:650;color:var(--brand-green)}.auth-switch{margin:0;font-size:.85rem;color:var(--ink-muted)}.auth-switch a{color:var(--accent)}.auth-consent-field{display:flex;align-items:flex-start;gap:8px;text-align:left;font-size:.82rem;color:var(--ink-muted)}.auth-consent-field input{margin-top:3px;flex-shrink:0}.auth-consent-field a{color:var(--accent)}.form-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.form-row input[type=text],.form-row input[type=time],.form-row input[type=number],.form-row input[type=email],.form-row input[type=password],.form-row select{font:inherit;padding:7px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.add-staff-form{margin-top:14px}.cell-override-select{width:100%;font:inherit;padding:8px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}@keyframes modal-in{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}.modal-backdrop{position:fixed;inset:0;background:#0a0e0c73;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal-window{width:100%;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--raised);border:1px solid var(--edge);border-radius:14px;box-shadow:0 20px 50px #0000004d;animation:modal-in .15s ease-out}.modal-small{max-width:480px}.modal-large{max-width:920px}.modal-xlarge{max-width:1160px}.modal-titlebar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--edge);background:var(--sunken);border-radius:14px 14px 0 0}.modal-title{font-weight:650;font-size:1rem;color:var(--ink)}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:8px;background:none;color:var(--ink-muted);font-size:1.2rem;line-height:1}.modal-close:hover{background:var(--edge-soft);color:var(--ink)}.modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.modal-body{padding:16px}.settings-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.settings-row{display:flex;align-items:center;gap:8px;margin-top:14px}.settings-row label{color:var(--ink);font-weight:500}.settings-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer}.settings-fill-text{font:inherit;padding:6px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.settings-fill-swatch{width:16px;height:16px;border-radius:4px;border:1px solid var(--edge)}.settings-row select{font:inherit;padding:6px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.account-section{border:1px solid var(--edge);border-radius:10px;padding:14px 16px 16px;background:var(--raised);display:flex;flex-direction:column;gap:10px;max-width:520px;margin-bottom:18px}.account-section legend{padding:0 6px;font-weight:650;color:var(--ink)}.account-section .settings-row{margin-top:0}.account-section .settings-row label{min-width:60px}.account-password-form{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.account-password-form label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--ink-soft);width:100%}.account-password-form input{font:inherit;padding:7px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--sunken);color:var(--ink)}.support-form,.feedback-form{display:flex;flex-direction:column;gap:10px;align-items:flex-start;max-width:60ch}.support-form label,.feedback-form label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--ink-soft);width:100%}.support-form input,.support-form textarea,.feedback-form input,.feedback-form textarea{font:inherit;padding:7px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--sunken);color:var(--ink);resize:vertical}.support-inbox-filter,.feedback-inbox-filter{display:flex;align-items:center;gap:6px;margin:4px 0 14px;font-size:.88rem;color:var(--ink-soft)}.support-inbox-message-cell,.feedback-inbox-message-cell{max-width:40ch;white-space:pre-wrap}.support-inbox-row-resolved,.feedback-inbox-row-resolved{opacity:.55}.account-onboarding-last-requested{margin:8px 0 0;font-size:.82rem}.account-message{margin:0;font-size:.85rem}.account-message-error{color:var(--danger)}.account-message-success{color:var(--brand-green)}.account-forgot-note{margin:4px 0 0;padding-top:10px;border-top:1px solid var(--edge);font-size:.8rem;color:var(--ink-muted)}.account-member-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.account-member-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid var(--edge);color:var(--ink)}.account-member-list li:last-child{border-bottom:none}.account-member-role{margin-left:8px;padding:2px 8px;border-radius:999px;background:var(--sunken);border:1px solid var(--edge);font-size:.72rem;color:var(--ink-muted)}.account-add-member-form{margin-top:4px}.account-import-config{margin-top:14px;padding-top:14px;border-top:1px solid var(--edge);display:flex;flex-direction:column;gap:8px;align-items:flex-start}.account-import-textarea{width:100%;max-width:60ch;font:.8rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:7px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--sunken);color:var(--ink);resize:vertical}.account-import-actions{display:flex;gap:8px;align-items:center}.account-import-actions input[type=file]{display:none}.account-danger-zone{margin-top:14px;padding-top:14px;border-top:1px solid var(--danger-edge);display:flex;flex-direction:column;gap:8px;align-items:flex-start}.account-danger-zone-title{margin:0;font-weight:650;color:var(--danger)}.account-delete-confirm-label{display:flex;flex-direction:column;gap:4px;font-size:.82rem;color:var(--ink-muted)}.account-delete-confirm-label input{font:inherit;padding:8px 12px;border-radius:8px;border:1px solid var(--edge);background:var(--surface);color:var(--ink)}.faq-list{display:flex;flex-direction:column;gap:10px;max-width:720px}.faq-item{border:1px solid var(--edge);border-radius:10px;background:var(--raised);padding:4px 16px}.faq-item summary{padding:12px 0;font-weight:600;color:var(--ink);cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:before{content:"+";display:inline-block;width:1em;color:var(--ink-muted)}.faq-item[open] summary:before{content:"−"}.faq-item p{margin:0 0 14px;padding-left:1em;color:var(--ink-soft);line-height:1.55}.tooltip-wrap{position:relative;display:inline-flex}.info-mark{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:50%;background:none;color:var(--ink-muted);font-size:.95em;line-height:1;cursor:help}.info-mark:hover,.info-mark:focus-visible{color:var(--accent-deep);background:var(--brand-green-tint)}.info-mark:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.info-mark.warning-mark{color:var(--warning-deep);background:var(--warning-tint);font-weight:700}.info-mark.warning-mark:hover,.info-mark.warning-mark:focus-visible{color:var(--ink-inverse);background:var(--warning)}.info-mark.warning-mark:focus-visible{outline:2px solid var(--warning)}.info-mark.danger-mark{color:#fff;background:var(--danger);font-weight:700}.info-mark.danger-mark:hover,.info-mark.danger-mark:focus-visible{color:#fff;background:var(--danger-deep)}.info-mark.danger-mark:focus-visible{outline:2px solid var(--danger)}.tooltip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);width:max-content;max-width:260px;padding:8px 10px;border-radius:8px;background:var(--ink);color:var(--ink-inverse);font-size:.78rem;font-weight:400;line-height:1.4;text-align:left;text-transform:none;box-shadow:0 6px 18px #0003;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:20}.tooltip-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--ink)}.tooltip-bubble.tooltip-bubble-bottom{bottom:auto;top:calc(100% + 8px);transform:translate(-50%) translateY(-4px)}.tooltip-bubble.tooltip-bubble-bottom:after{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:var(--ink)}.tooltip-wrap:hover .tooltip-bubble,.tooltip-wrap:focus-within .tooltip-bubble{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.tooltip-bubble.tooltip-bubble-end{left:auto;right:-6px;transform:translateY(4px)}.tooltip-bubble.tooltip-bubble-end:after{left:auto;right:11px;transform:none}.tooltip-bubble.tooltip-bubble-bottom.tooltip-bubble-end{transform:translateY(-4px)}.tooltip-wrap:hover .tooltip-bubble.tooltip-bubble-end,.tooltip-wrap:focus-within .tooltip-bubble.tooltip-bubble-end{transform:translateY(0)}.tutorial-callout{position:fixed;z-index:210;width:260px;padding:14px 16px;border-radius:12px;border:1px solid var(--brand-green-edge);background:var(--raised);box-shadow:0 12px 30px #00000047;animation:modal-in .15s ease-out}.tutorial-callout:before,.tutorial-callout:after{content:"";position:absolute;width:0;height:0}.tutorial-callout-bottom:before{top:-8px;left:calc(var(--pointer-offset, 24px) - 8px);border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid var(--brand-green-edge)}.tutorial-callout-bottom:after{top:-7px;left:calc(var(--pointer-offset, 24px) - 7px);border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid var(--raised)}.tutorial-callout-right:before{left:-8px;top:calc(var(--pointer-offset, 20px) - 8px);border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:8px solid var(--brand-green-edge)}.tutorial-callout-right:after{left:-7px;top:calc(var(--pointer-offset, 20px) - 7px);border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:7px solid var(--raised)}.tutorial-callout-title{font-size:.9rem;font-weight:650;color:var(--ink);margin-bottom:4px}.tutorial-callout-body{margin:0 0 12px;font-size:.84rem;line-height:1.45;color:var(--ink-soft)}.tutorial-callout-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.tutorial-skip{border:none;background:none;padding:0;font-size:.78rem;color:var(--ink-muted);text-decoration:underline}.tutorial-skip:hover{color:var(--ink-soft)}.tutorial-completion{text-align:center;padding:12px 8px 4px}.tutorial-completion-title{font-size:2.4rem;font-weight:750;color:var(--brand-green);margin:0 0 10px}.tutorial-completion-body{font-size:1rem;color:var(--ink-soft);margin:0 0 24px}.tutorial-completion-next{text-align:left;background:var(--sunken);border:1px solid var(--edge);border-radius:12px;padding:16px 20px;margin:0 0 24px}.tutorial-completion-next h2{font-size:.95rem;font-weight:650;color:var(--ink);margin:0 0 10px}.tutorial-completion-next ol{margin:0;padding-left:20px;color:var(--ink-soft);line-height:1.8}.tutorial-completion-done{min-width:160px}.config-dialog{display:flex;flex-direction:column;gap:16px}.config-week-nav{display:flex;align-items:center;justify-content:center;gap:10px}.config-year{color:var(--ink-muted);font-variant-numeric:tabular-nums}.config-week-label{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.config-day-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.config-dialog-actions{display:flex;justify-content:flex-end}.day-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:10px;border:1px solid var(--edge);background:var(--raised);color:var(--ink);font:inherit;text-align:center}.day-card:not(:disabled){cursor:pointer}.day-card:not(:disabled):hover{border-color:var(--brand-green);background:var(--brand-green-tint)}.day-card:disabled{opacity:.55}.day-card.highlighted{box-shadow:inset 0 0 0 2px var(--accent)}.day-card.selected{background:var(--brand-green-tint);border-color:var(--brand-green)}.day-card-title{font-weight:650;font-size:.82rem}.day-card-subtitle{font-size:.72rem;color:var(--ink-muted)}.day-card-hours{font-size:.72rem;font-variant-numeric:tabular-nums;margin-top:4px}.day-card-shifts{font-size:.7rem;color:var(--ink-muted)}.config-editor{border:1px solid var(--edge);border-radius:10px;padding:14px 16px;background:var(--sunken)}.config-editor-empty{min-height:160px;display:flex;align-items:center;justify-content:center;text-align:center}.config-editor-empty .placeholder{margin:0}.config-editor-title{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:650;color:var(--ink);margin-bottom:12px}.config-incoming-note{font-weight:400;color:var(--ink-muted);font-size:.85em}.config-closed-toggle{display:flex;align-items:center;gap:6px;font-weight:500;font-size:.88rem;color:var(--ink-soft);cursor:pointer;white-space:nowrap}.config-editor-body{display:flex;gap:16px;align-items:flex-start}.config-editor-main{flex:1;min-width:0;border:1px solid var(--edge);border-radius:10px;background:var(--raised);padding:14px 16px}.saved-configs{flex:0 0 200px;min-width:0;border:1px solid var(--edge);border-radius:10px;background:var(--raised);padding:14px 16px}.saved-configs-heading{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-weight:600;margin-bottom:8px}.saved-configs-list{display:flex;flex-direction:column;gap:6px;min-width:0}.saved-config-item{display:flex;align-items:center;gap:2px;min-width:0}.saved-config-item .btn:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.saved-configs-list>button{width:100%}.config-panels{border:none;margin:0;padding:0;min-width:0;display:block}.config-panels:disabled{opacity:.45}.config-hours-panel{display:flex;flex-direction:column;gap:8px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--edge)}.config-window-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.config-window-row label{color:var(--ink-muted);font-size:.85rem}.config-add-window{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:32px;padding:4px 0;font-weight:700}.config-window-row select,.config-shift-row select{font:inherit;padding:5px 6px;border-radius:6px;border:1px solid var(--edge);background:var(--raised);color:var(--ink);font-variant-numeric:tabular-nums}.config-remove{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;color:var(--ink-muted);font-size:1rem;line-height:1}.config-remove:hover{color:#c0392b;border-color:#c0392b}.config-continuation{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--ink-soft)}.config-continuation label{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.config-continuation.disabled{color:var(--ink-muted);cursor:help}.config-continuation select{font-size:.82rem;padding:3px 5px}.config-shifts-panel{display:flex;flex-direction:column;gap:8px}.config-shifts-header,.config-shift-row{display:grid;grid-template-columns:76px 12px 76px 64px 52px 72px 1fr 24px;gap:10px;align-items:center}.config-shifts-header{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);font-weight:600;text-align:center;line-height:1.25}.config-shifts-header>span:first-child{grid-column:span 3;text-align:left}.config-shift-row select{width:100%}.config-shift-dash{text-align:center;color:var(--ink-muted)}.config-color-swatch{width:32px;height:26px;padding:0;border:1px solid var(--edge);border-radius:6px;background:none;justify-self:center}.config-requires{min-width:44px;padding:4px 10px;justify-self:center}.config-editor-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.config-saving{color:var(--ink-muted);font-size:.82rem}.requires-picker{display:flex;flex-direction:column;gap:12px}.requires-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.requires-list label{display:flex;align-items:center;gap:8px;cursor:pointer}.requires-highlight{border-top:1px solid var(--edge);padding-top:12px;display:flex;flex-direction:column;gap:8px}.requires-highlight>label{display:flex;align-items:center;gap:8px;cursor:pointer}.requires-highlight-row{display:flex;align-items:center;gap:8px;margin-left:22px}.requires-highlight-note{font-size:.78rem;margin:0 0 0 22px}.requires-actions{display:flex;justify-content:flex-end;gap:8px}.stations-page-actions{display:flex;align-items:center;gap:10px;margin:0 0 20px}.stations-page-layout{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:16px}.stations-page-divider{width:1px;align-self:stretch;background:var(--edge)}.station-sections{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:760px;margin-bottom:18px}.station-section{border:1px solid var(--edge);border-radius:10px;padding:14px 16px 16px;background:var(--raised);display:flex;flex-direction:column;gap:10px}.station-section legend{padding:0 6px;font-weight:650;color:var(--ink)}.station-section-row{display:flex;gap:8px;flex-wrap:wrap}.station-clopening-row{display:flex;align-items:center;gap:8px}.station-clopening-row label{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--ink-soft)}.confirm-dialog{display:flex;flex-direction:column;gap:16px}.confirm-message{margin:0;color:var(--ink-soft);white-space:pre-line}.prompt-dialog{display:flex;flex-direction:column;gap:16px}.prompt-label{display:flex;flex-direction:column;gap:6px;color:var(--ink-soft)}.prompt-label input[type=text]{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}.prompt-actions{display:flex;justify-content:flex-end;gap:8px}.cell-text-hint{margin:-8px 0 0;font-size:.78rem;color:var(--ink-muted)}.webhook-settings{display:flex;flex-direction:column;gap:14px}.webhook-settings-intro{margin:0;color:var(--ink-soft);font-size:.9rem}.webhook-settings-hint{margin:-8px 0 0;font-size:.78rem;color:var(--ink-muted)}.webhook-settings-actions{display:flex;gap:8px}.webhook-test-success{margin:0;color:var(--brand-green-deep);font-size:.88rem}.webhook-test-failure{margin:0;color:var(--danger);font-size:.88rem}.payroll-export{display:flex;flex-direction:column;gap:14px}.payroll-export-intro{margin:0;color:var(--ink-soft);font-size:.9rem}.payroll-export-actions{display:flex;gap:8px}.hours-report{display:flex;flex-direction:column;gap:14px}.hours-report-nav{display:flex;align-items:center;gap:10px}.hours-report-range{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.hours-report-mode{margin-left:auto;font:inherit;padding:6px 10px;border-radius:8px;border:1px solid var(--edge);background:var(--raised);color:var(--ink)}table.hours-report-table{border-collapse:collapse;width:100%;background:var(--raised);border:1px solid var(--edge);border-radius:10px;overflow:hidden}.hours-report-table th,.hours-report-table td{border-bottom:1px solid var(--edge-soft);padding:8px 14px;text-align:left}.hours-report-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);font-weight:600;background:var(--sunken)}.hours-report-table td{font-variant-numeric:tabular-nums}.hours-report-table tr:last-child td{border-bottom:none}.hours-report-total-row td{font-weight:650;color:var(--ink)}.generate-all-stations{display:flex;flex-direction:column;gap:14px}.generate-all-stations-intro{margin:0;color:var(--ink-soft)}.generate-all-stations-week{display:flex;align-items:center;gap:10px}.generate-all-stations-week-label{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink)}.generate-all-stations-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.generate-all-stations-results li{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border:1px solid var(--edge);border-radius:10px;background:var(--raised)}.generate-all-stations-station-name{font-weight:600;color:var(--ink)}.generate-all-stations-ok{color:var(--ink-muted)}.generate-all-stations-failures{color:var(--danger);white-space:pre-wrap}.staff-insights-sections{display:flex;flex-direction:column;gap:22px}.staff-insights-sections section .page-subtitle{margin-top:0}.landing{margin:-24px -28px}.btn-lg{padding:12px 22px;font-size:.98rem;border-radius:10px}.landing-header{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--raised) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--edge-soft)}.landing-header-blur-cap{position:fixed;top:0;left:0;right:0;height:24px;z-index:4;background:color-mix(in srgb,var(--raised) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.landing-header-inner{max-width:1120px;margin:0 auto;padding:16px 28px;display:flex;align-items:center;gap:32px}.landing-nav-links{display:flex;gap:24px;margin-right:auto}.landing-nav-links a{color:var(--ink-soft);text-decoration:none;font-size:.92rem}.landing-nav-links a:hover{color:var(--accent-deep)}.landing-nav-actions{display:flex;gap:10px;align-items:center}.language-toggle{display:flex;border:1px solid var(--edge);border-radius:8px;overflow:hidden}.language-toggle-btn{padding:6px 12px;border:0;background:var(--raised);color:var(--ink-soft);font-size:.85rem;font-weight:600;cursor:pointer}.language-toggle-btn+.language-toggle-btn{border-left:1px solid var(--edge)}.language-toggle-btn:hover{background:var(--brand-green-tint);color:var(--accent-deep)}.language-toggle-btn.active{background:var(--brand-green);color:#fff}.theme-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--edge);border-radius:8px;background:var(--raised);color:var(--ink-soft)}.theme-toggle-btn:hover{background:var(--brand-green-tint);color:var(--accent-deep)}.theme-toggle-btn .icon-moon{display:none}:root[data-theme=dark] .theme-toggle-btn .icon-sun{display:none}:root[data-theme=dark] .theme-toggle-btn .icon-moon{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle-btn .icon-sun{display:none}:root:not([data-theme=light]) .theme-toggle-btn .icon-moon{display:block}}.hero{max-width:1120px;margin:0 auto;padding:72px 28px 56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.hero-eyebrow{font-size:.8rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-deep);background:var(--brand-green-tint);padding:5px 12px;border-radius:999px}.hero-title{margin:0;font-size:2.6rem;line-height:1.12;font-weight:700;color:var(--ink)}.hero-subtitle{margin:0;font-size:1.05rem;color:var(--ink-muted);max-width:46ch}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}.hero-visual{display:flex;justify-content:center}.landing-section{max-width:1120px;margin:0 auto;padding:64px 28px}.landing-section-tinted{max-width:none;background:var(--brand-green-tint)}.landing-section-tinted>*{max-width:1120px;margin-left:auto;margin-right:auto}.section-heading{max-width:640px;margin:0 auto 40px;text-align:center}.section-eyebrow{display:block;font-size:.78rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:8px}.section-title{margin:0 0 10px;font-size:1.8rem;font-weight:700;color:var(--ink)}.section-subtitle{margin:0;color:var(--ink-muted)}.features-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.feature-card{background:var(--raised);border:1px solid var(--edge);border-radius:14px;padding:24px}.feature-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--accent-deep);border-radius:12px;background:var(--brand-green-tint);margin-bottom:14px}.feature-card h3{margin:0 0 6px;font-size:1.05rem;color:var(--ink)}.feature-card p{margin:0;color:var(--ink-muted);font-size:.92rem}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.step-card{background:var(--raised);border:1px solid var(--edge);border-radius:14px;padding:24px}.step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--brand-green);color:#fff;font-weight:650;margin-bottom:14px}.step-card h3{margin:0 0 6px;font-size:1.05rem;color:var(--ink)}.step-card p{margin:0;color:var(--ink-muted);font-size:.92rem}.screenshots-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.mock-browser{background:var(--raised);border:1px solid var(--edge);border-radius:12px;overflow:hidden;box-shadow:0 20px 48px -24px #00000059}.mock-browser-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--sunken);border-bottom:1px solid var(--edge-soft)}.mock-dot{width:9px;height:9px;border-radius:50%;background:var(--edge)}.mock-browser-label{margin-left:8px;font-size:.76rem;color:var(--ink-muted)}.mock-browser-body{padding:16px}.mock-timetable{display:flex;flex-direction:column;gap:4px;min-width:480px}.mock-row{display:grid;grid-template-columns:84px repeat(7,minmax(0,1fr));gap:4px}.mock-cell{min-height:30px;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--ink-muted)}.mock-cell-corner{background:transparent}.mock-cell-day{font-weight:650;color:var(--ink);background:var(--sunken);border-radius:6px}.mock-cell-name{justify-content:flex-start;padding-left:6px;font-weight:600;color:var(--ink);background:var(--sunken);border-radius:6px}.mock-row:not(.mock-row-head) .mock-cell:not(.mock-cell-name){background:var(--surface);border-radius:6px}.mock-shift{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#fff;font-size:.68rem;font-weight:600}.mock-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:320px}.mock-station-card{border:1px solid var(--edge);border-radius:10px;padding:14px;background:var(--surface)}.mock-station-name{font-weight:650;color:var(--ink);margin-bottom:4px}.mock-station-meta{font-size:.78rem;color:var(--ink-muted)}.mock-station-card-add{display:flex;align-items:center;justify-content:center;color:var(--accent-deep);font-size:.85rem;font-weight:600;border-style:dashed}.mock-staff-table{display:flex;flex-direction:column;gap:6px;min-width:320px}.mock-staff-row{display:flex;justify-content:space-between;padding:10px 12px;border:1px solid var(--edge-soft);border-radius:8px;background:var(--surface);font-size:.85rem}.mock-staff-name{color:var(--ink);font-weight:600}.mock-staff-type{color:var(--ink-muted)}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.price-card{position:relative;display:flex;flex-direction:column;gap:12px;background:var(--raised);border:1px solid var(--edge);border-radius:14px;padding:26px}.price-card-featured{border-color:var(--brand-green);box-shadow:0 0 0 1px var(--brand-green)}.price-badge{position:absolute;top:-12px;left:26px;background:var(--brand-green);color:#fff;font-size:.72rem;font-weight:650;padding:4px 10px;border-radius:999px}.price-name{margin:0;font-size:1.1rem;color:var(--ink)}.price-amount{font-size:2rem;font-weight:700;color:var(--ink)}.price-period{font-size:.85rem;font-weight:500;color:var(--ink-muted);margin-left:4px}.price-tagline{margin:0;color:var(--ink-muted);font-size:.88rem;min-height:2.6em}.price-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex:1}.price-features li{font-size:.88rem;color:var(--ink-soft);padding-left:20px;position:relative}.price-features li:before{content:"✓";position:absolute;left:0;color:var(--brand-green);font-weight:700}.price-card .btn{text-align:center}.upgrade-dialog-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.upgrade-dialog-reason{margin:0}.upgrade-dialog-note{margin:16px 0 0;font-size:.85rem}.upgrade-dialog-current-plan{opacity:.55;cursor:default}.pro-stations-picker{display:flex;align-items:center;gap:8px}.pro-stations-label{margin-right:auto;color:var(--ink-soft);font-size:.88rem;font-weight:600}.pro-stations-step{padding:2px 12px;font-size:1.15rem;line-height:1.3}.pro-stations-count{min-width:2ch;text-align:center;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.pro-stations-note{margin:0;font-size:.8rem}.pro-breakdown{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--brand-green-tint);border-radius:8px;font-size:.85rem;color:var(--ink-soft)}.pro-breakdown-caption{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted)}.pro-breakdown-row{display:flex;justify-content:space-between;gap:12px}.pro-breakdown-total{border-top:1px solid var(--edge);padding-top:6px;font-weight:650;color:var(--ink)}.admin-plan-stations{width:4.5em;margin-left:8px}.welcome-dialog-features{margin:12px 0}.welcome-dialog-onboarding-note{background:var(--brand-green-tint);border-radius:8px;padding:10px 12px}.whats-new-entry{margin-bottom:16px}.whats-new-entry:last-child{margin-bottom:0}.whats-new-entry-version{margin:0 0 6px;font-weight:600;color:var(--ink)}.whats-new-entry-date{font-weight:400;color:var(--ink-muted)}.whats-new-changes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.whats-new-changes li{color:var(--ink-soft)}.whats-new-badge{display:inline-block;margin-right:8px;padding:1px 8px;border-radius:999px;font-size:.75rem;font-weight:600}.whats-new-badge-added{background:color-mix(in srgb,var(--brand-green) 15%,transparent);color:var(--accent-deep)}.whats-new-badge-removed{background:color-mix(in srgb,var(--danger) 15%,transparent);color:var(--danger-deep)}.whats-new-badge-changed{background:color-mix(in srgb,var(--ink-muted) 18%,transparent);color:var(--ink-muted)}.locked-feature{position:relative}.locked-feature-content{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:14px;opacity:.55;cursor:not-allowed;-webkit-user-select:none;user-select:none}.locked-feature-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:10px}.locked-inline{opacity:.55;cursor:not-allowed}.closing-cta{background:var(--brand-green)}.closing-cta-inner{max-width:640px;margin:0 auto;padding:64px 28px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.closing-cta-inner h2{margin:0;font-size:1.7rem;color:#fff}.closing-cta-inner p{margin:0;color:#ffffffe0}.closing-cta .btn.primary{background:#fff;color:var(--brand-green-deep);border-color:#fff}.closing-cta .btn.primary:hover{background:var(--ink-inverse)}.landing-footer{border-top:1px solid var(--edge-soft)}.landing-footer-inner{max-width:1120px;margin:0 auto;padding:28px;display:flex;align-items:center;gap:24px}.landing-footer-links{display:flex;gap:18px;margin-right:auto}.landing-footer-links a{color:var(--ink-muted);text-decoration:none;font-size:.88rem}.landing-footer-links a:hover{color:var(--accent-deep)}.landing-footer-copy{color:var(--ink-muted);font-size:.82rem}.preferred-source-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 8px;border:1px solid var(--brand-green-edge);border-radius:999px;background:var(--brand-green-tint);color:var(--accent-deep);font-size:.78rem;font-weight:600;text-decoration:none;white-space:nowrap}.preferred-source-badge:hover{background:var(--brand-green-light);border-color:var(--brand-green)}.landing-footer-legal-inner{max-width:1120px;margin:0 auto;padding:16px 28px 24px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;border-top:1px solid var(--edge-soft)}.landing-footer-legal-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-right:auto}.landing-footer-legal-links a{color:var(--ink-muted);text-decoration:none;font-size:.8rem}.landing-footer-legal-links a:hover{color:var(--accent-deep)}.landing-footer-company{color:var(--ink-muted);font-size:.78rem}.legal-page{max-width:68ch}.legal-page section{margin-top:20px}.legal-page-back{margin-top:28px}.cookie-consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--raised);border-top:1px solid var(--edge);box-shadow:0 -4px 16px #00000014;padding:16px 24px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}.cookie-consent-message{flex:1 1 320px;margin:0;color:var(--ink-soft);font-size:.9rem}.cookie-consent-message a{color:var(--accent-deep)}.cookie-consent-actions{display:flex;flex-wrap:wrap;gap:10px}.email-verification-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;background:var(--brand-green-tint);border:1px solid var(--brand-green-edge);border-radius:10px;padding:12px 16px;margin-bottom:20px;font-size:.88rem;color:var(--ink)}.email-verification-banner-actions{display:flex;align-items:center;gap:10px}.email-verification-banner-dismiss{background:none;border:none;font-size:1.1rem;line-height:1;cursor:pointer;color:var(--ink-muted);padding:4px}.pending-deletion-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;background:var(--danger-tint);border:1px solid var(--danger-edge);border-radius:10px;padding:12px 16px;margin-bottom:20px;font-size:.88rem;color:var(--ink)}.pending-deletion-banner-actions{display:flex;align-items:center;gap:10px}.pending-deletion-banner-error{color:var(--danger);font-size:.82rem}.week-body.peeking .timetable-wrap{outline:2px dashed var(--brand-green);outline-offset:4px;border-radius:10px}.week-body.peeking .timetable th.staff-name,.week-body.peeking .timetable td.cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unconfigured-days-notice{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;background:var(--sunken);border:1px solid var(--edge);border-radius:10px;padding:12px 16px;margin-bottom:16px;font-size:.88rem;color:var(--ink)}.unconfigured-days-notice-actions{display:flex;align-items:center;gap:10px}.unconfigured-days-notice-dismiss{background:none;border:none;font-size:1.1rem;line-height:1;cursor:pointer;color:var(--ink-muted);padding:4px}@media(max-width:860px){.hero{grid-template-columns:minmax(0,1fr);padding-top:48px}.hero-visual{order:-1}.features-grid,.steps-grid,.screenshots-grid,.pricing-grid{grid-template-columns:minmax(0,1fr)}.landing-nav-links{display:none}.mock-timetable,.mock-cards-grid,.mock-staff-table{min-width:0}.staff-page-layout{grid-template-columns:minmax(0,1fr)}.staff-page-sidebar{position:static}.staff-trends-columns{grid-template-columns:minmax(0,1fr)}}.hours-report-summary{margin:0;color:var(--ink-soft)}.analytics-range-row{display:flex;gap:8px;margin-bottom:16px}.analytics-total{font-size:1.2rem;font-weight:650;color:var(--ink);margin:0 0 8px}.analytics-bars{display:flex;align-items:flex-end;gap:4px;height:160px;padding:8px;border:1px solid var(--edge);border-radius:8px;overflow-x:auto}.analytics-bar-col{display:flex;flex-direction:column;align-items:center;min-width:18px;height:100%}.analytics-bar-track{flex:1 1 auto;min-height:0;width:100%;display:flex;align-items:flex-end}.analytics-bar{width:100%;min-height:2px;background:var(--brand-green);border-radius:2px 2px 0 0}.analytics-bar-label{height:34px;margin-top:4px;font-size:.65rem;color:var(--ink-muted);writing-mode:vertical-rl;transform:rotate(180deg)}.staff-usage{margin:12px 0 0;font-size:.85rem}.staff-inactive{color:var(--ink-muted);font-style:italic}.btn.danger-outline{color:var(--danger);border-color:var(--danger);background:var(--raised)}.btn.danger-outline:not(:disabled):hover{background:var(--danger-tint);border-color:var(--danger-deep);color:var(--danger-deep)}.staff-row-actions{text-align:right;width:1%;white-space:nowrap}.staff-row-delete{padding:4px 10px;font-size:.82rem;color:var(--danger);border-color:transparent;background:transparent}.staff-row-delete:not(:disabled):hover{background:var(--danger-tint);border-color:var(--danger);color:var(--danger-deep)}.archived-staff{margin:14px 0 0;border:1px solid var(--edge);border-radius:10px;background:var(--raised);padding:8px 14px}.archived-staff>summary{cursor:pointer;font-weight:600;color:var(--ink-soft);padding:4px 0}.archived-staff-note{margin:6px 0 10px;font-size:.85rem}.archived-staff-list{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column;gap:6px}.archived-staff-list li{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:6px 0;border-top:1px solid var(--edge)}.archived-staff-name{font-weight:500;color:var(--ink)}.archived-staff-date{margin:0 auto 0 0;font-size:.82rem}.former-tag{color:var(--ink-muted);font-weight:400;font-size:.8em}.timetable tr.former-row th.staff-name{color:var(--ink-muted);cursor:default;font-style:italic}.timetable tr.former-row td.cell{opacity:.85}.archived-staff-list .btn{padding:4px 10px;font-size:.85rem}.price-note{margin:20px auto 0;max-width:60ch;text-align:center;color:var(--ink-muted);font-size:.92rem}.demo-banner{margin:0 0 14px;padding:10px 14px;border-radius:8px;background:var(--brand-green-tint);border:1px solid var(--brand-green);color:var(--accent-deep);font-size:.9rem}
