:root{color-scheme:light;--bg: #f9fafb;--bg-accent: #eef2f7;--surface: rgba(255, 255, 255, .98);--surface-strong: #ffffff;--text: #111827;--muted: #6b7280;--border: rgba(148, 163, 184, .28);--accent: #2563eb;--accent-strong: #1d4ed8;--accent-soft: rgba(37, 99, 235, .1);--warning: #946200;--warning-soft: rgba(148, 98, 0, .12);--shadow: 0 10px 30px rgba(15, 23, 42, .06);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:linear-gradient(180deg,#f8fafc,#eef2f7);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}code{font-family:SFMono-Regular,SF Mono,Consolas,monospace}.app-shell{min-height:100vh;display:flex;flex-direction:column}.top-nav{background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 2px #0f172a0a}.top-nav-inner{width:min(1240px,calc(100% - 2rem));margin:0 auto;min-height:4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0}.top-nav-brand h1{margin:0;font-size:1.25rem;font-weight:700}.top-nav-links{display:flex;align-items:center;gap:.5rem;flex:1 1 auto;justify-content:center}.top-nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex:0 0 auto}.top-nav-link,.top-nav-button{display:inline-flex;align-items:center;gap:.45rem;min-height:2.6rem;padding:.55rem .95rem;border-radius:.45rem;border:1px solid transparent;background:transparent;color:#374151;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .16s ease,color .16s ease,border-color .16s ease}.top-nav-link:hover,.top-nav-button:hover{background:#f3f4f6}.top-nav-link.active,.top-nav-button.active{background:var(--accent);color:#fff}.settings-menu{position:relative}.settings-caret{font-size:.7rem}.settings-dropdown{position:absolute;top:calc(100% + .35rem);right:0;min-width:14rem;padding:.4rem;border-radius:.75rem;background:#fff;border:1px solid #e5e7eb;box-shadow:0 14px 40px #0f172a24;display:grid;gap:.15rem;z-index:20}.settings-link{display:block;padding:.7rem .8rem;border-radius:.55rem;color:#374151;font-size:.94rem}.settings-link:hover{background:#f3f4f6}.settings-link.active{background:#eff6ff;color:var(--accent-strong)}.settings-signout{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;color:#b91c1c}.settings-signout:hover{background:#fef2f2}.app-main{flex:1 1 auto;padding:1.5rem 0 2rem}.app-main-clock{padding-top:2rem}.content-shell{width:min(1240px,calc(100% - 2rem));margin:0 auto}.content-shell-wide{width:min(1280px,calc(100% - 2rem))}.page-kicker{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .62rem;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.page-subtitle,.muted,.route-card p,.full-page-card p{color:var(--muted)}.page{display:grid;gap:1.5rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page-title{margin:.85rem 0 .4rem;font-size:clamp(1.9rem,4vw,2.5rem);line-height:1.05}.card,.metric-card,.route-card,.login-card,.full-page-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.card,.metric-card,.route-card{padding:1.2rem;border-radius:1.15rem}.card-grid,.metric-grid,.route-grid{display:grid;gap:1rem}.card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.route-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.metric-card{min-height:140px;display:flex;flex-direction:column;justify-content:space-between}.metric-label{color:var(--muted);font-size:.95rem}.metric-value{font-size:clamp(2rem,4vw,3.3rem);line-height:1;font-weight:700}.route-card{transition:transform .16s ease,border-color .16s ease}.route-card:hover{transform:translateY(-2px);border-color:#d3222a47}.route-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.field-list{display:grid;gap:.8rem}.field-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.8rem;border-bottom:1px solid var(--border)}.field-row:last-child{padding-bottom:0;border-bottom:0}.field-label{color:var(--muted)}.field-value{text-align:right;font-weight:600;overflow-wrap:anywhere}.list{margin:0;padding-left:1.15rem;display:grid;gap:.55rem}.badge,.status-pill{display:inline-flex;align-items:center;justify-content:center;padding:.45rem .75rem;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:.82rem;font-weight:700}.notice{padding:1rem 1.1rem;border-radius:1rem;border:1px solid rgba(211,34,42,.18);background:#d3222a0f}.notice.warning{border-color:#8a5b1a2e;background:var(--warning-soft)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.75rem 1.1rem;border:0;border-radius:.9rem;background:var(--accent);color:#fff;font-weight:700;cursor:pointer;transition:opacity .16s ease,transform .16s ease}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:not-allowed;transform:none}.button.secondary{background:#2c2c2c;color:#fff}.button.danger{background:#8f1118;color:#fff}.button.is-current{opacity:.5}.button.block{width:100%}.stack{display:grid;gap:.9rem}.login-shell,.full-page{min-height:100vh;display:grid;place-items:center;padding:2rem}.login-card,.full-page-card{width:min(680px,100%);padding:2rem;border-radius:1.4rem}.login-card h1,.full-page-card h1{margin:.9rem 0 .45rem;font-size:clamp(2rem,5vw,2.8rem);line-height:1.05}.form{display:grid;gap:1rem;margin-top:1.5rem}.input-field{display:grid;gap:.45rem}.input-field span{font-weight:600}.input-field input,.input-field select{min-height:2.9rem;padding:.75rem .9rem;border-radius:.9rem;border:1px solid var(--border);background:var(--surface-strong);color:var(--text)}.input-field input:focus,.input-field select:focus{outline:2px solid rgba(211,34,42,.18);border-color:#d3222a66}.input-field.grow,.compact-grow{flex:1 1 180px}.helper-text{color:var(--muted);font-size:.88rem}.toggle-field{display:inline-flex;align-items:center;gap:.6rem;font-weight:600}.split-layout{display:grid;gap:1rem;grid-template-columns:minmax(280px,340px) minmax(0,1fr)}.entity-list{display:grid;gap:.75rem}.entity-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1rem;border-radius:1rem;border:1px solid var(--border);background:var(--surface-strong);text-align:left}.entity-row.static{cursor:default}.entity-row.selected{border-color:#d3222a61;box-shadow:inset 0 0 0 1px #d3222a24}.entity-title,.table-primary{font-weight:700}.task-groups,.stack.tight{display:grid;gap:1rem}.task-groups h4,.card h3,.card h4{margin:0 0 .75rem}.button-grid{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.card-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-grid.compact{margin-bottom:1rem}.action-row{display:flex;flex-wrap:wrap;gap:.6rem}.entity-edit-grid{width:100%;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));align-items:center}.entity-edit-grid input,.entity-edit-grid select,.table-input{min-height:2.65rem;width:100%;padding:.65rem .75rem;border-radius:.8rem;border:1px solid var(--border);background:var(--surface-strong);color:var(--text)}.task-edit-grid{grid-template-columns:120px minmax(180px,1fr) 150px auto}.user-admin-grid{grid-template-columns:minmax(180px,220px) auto}.date-toolbar,.toolbar-wrap{display:flex;flex-wrap:wrap;gap:.85rem;align-items:flex-end}.table-wrap{overflow-x:auto}.data-table{width:100%;min-width:780px;border-collapse:collapse}.data-table th,.data-table td{padding:.85rem .75rem;border-bottom:1px solid var(--border);vertical-align:top;text-align:left}.data-table th{color:var(--muted);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.table-secondary{margin-top:.25rem;color:var(--muted);font-size:.86rem}.table-input{min-height:2.4rem;padding:.5rem .65rem;font-size:.95rem}.table-input.compact{max-width:92px}.table-input.manual{background:#2563eb0f;border-color:#2563eb33}.table-input.auto{background:#1e1e1e08}.segmented{display:inline-flex;flex-wrap:wrap;gap:.35rem;padding:.35rem;border-radius:999px;background:#1e1e1e0d}.segment{min-height:2.4rem;padding:.55rem .9rem;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;text-transform:capitalize}.segment.active{background:var(--accent);color:#fff}.bar-row{display:grid;gap:.45rem}.bar-row-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.bar-track{height:.7rem;border-radius:999px;background:#2563eb14;overflow:hidden}.bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#60a5fa)}.notice.success,.status-pill.success{background:#2563eb1f;color:var(--accent-strong)}.guided-layout{grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr)}.guided-card{min-height:620px}.guided-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1.25rem}.guided-step{padding:.8rem .9rem;border-radius:.9rem;background:#f0f0f0;color:var(--muted);font-weight:700}.guided-step.active{background:#d3222a1f;color:var(--accent-strong)}.select-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.select-tile{display:grid;gap:.5rem;align-items:start;padding:1rem;border-radius:1rem;border:1px solid var(--border);background:linear-gradient(180deg,#fff,#f8f8f8);text-align:left;cursor:pointer}.select-tile:hover{border-color:#d3222a4d}.success-stage{min-height:100%;display:grid;align-content:center;justify-items:center;gap:1rem;text-align:center}.success-badge{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .9rem;border-radius:999px;background:#d3222a1f;color:var(--accent-strong);font-weight:700}.centered{justify-content:center}.chart-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.chart-card{padding-bottom:.6rem}.chart-shell{width:100%;height:280px}.clock-in-page{display:grid;gap:1rem}.clock-toolbar-card{padding:.65rem .8rem}.clock-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.clock-toolbar-title{margin:0;font-size:1rem;font-weight:700;color:#111827}.clock-card{width:min(880px,100%);margin:0 auto;padding:1.35rem;border-radius:1.4rem;background:#fff;border:1px solid #dbe2ea;box-shadow:0 18px 50px #0f172a14}.clock-stage{display:grid;gap:1rem}.clock-stage-header{text-align:center}.clock-stage-header h3,.clock-selected-person h3,.clock-success-stage h3{margin:0;font-size:1.45rem}.clock-stage-header p,.clock-selected-person p,.clock-success-stage p{margin:.25rem 0 0;color:var(--muted);font-size:.92rem}.clock-scan-panel{display:grid;gap:.45rem;padding:.95rem 1rem;border-radius:1rem;background:#eff6ff;border:2px solid #bfdbfe}.clock-scan-label{font-size:.95rem;font-weight:700;color:#1e3a8a}.clock-scan-input{min-height:2.7rem;padding:.65rem .8rem;border-radius:.8rem;border:2px solid #cbd5e1;font-size:.95rem}.clock-scan-input:focus{outline:2px solid rgba(37,99,235,.15);border-color:var(--accent)}.clock-reveal-button,.clock-hide-button{min-height:2.55rem;border-radius:.8rem;border:1px dashed #cbd5e1;background:#fff;color:#64748b;font-weight:700;cursor:pointer}.clock-list-panel{display:grid;gap:.75rem}.clock-list-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#6b7280;font-size:.86rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.clock-hide-button{min-height:auto;padding:.55rem .8rem;border-style:solid;font-size:.85rem}.clock-staff-grid{display:grid;gap:.7rem}.clock-staff-button,.clock-task-button{width:100%;display:grid;gap:.3rem;padding:.95rem 1rem;border:0;border-radius:1rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;text-align:left;box-shadow:0 10px 24px #2563eb38;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.clock-staff-button:hover,.clock-task-button:hover{transform:translateY(-1px);box-shadow:0 14px 28px #2563eb47}.clock-staff-button:disabled,.clock-task-button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.clock-staff-name{font-size:1.15rem;font-weight:700}.clock-staff-meta,.clock-task-code{color:#ffffffe0;font-size:.78rem;font-weight:600}.clock-stage-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.clock-selected-person{text-align:right}.clock-status-card{padding:1rem;border-radius:1rem;background:#f8fafc;border:1px solid #dbe2ea}.clock-status-card.active{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#93c5fd}.clock-status-eyebrow{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#475569}.clock-status-title{margin-top:.35rem;font-size:1.3rem;font-weight:700;color:#0f172a}.clock-status-detail{margin-top:.3rem;color:#475569;font-size:.88rem}.clock-task-section{display:grid;gap:.65rem}.clock-task-section h4{margin:0;font-size:1rem;color:#1f2937}.clock-task-grid{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.clock-task-button.secondary{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 10px 24px #33415538}.clock-task-button.current{opacity:.45}.clock-end-row{display:flex;justify-content:center;margin-top:.5rem}.clock-success-stage{min-height:360px;display:grid;align-content:center;justify-items:center;gap:1rem;text-align:center}.clock-success-countdown{color:var(--muted);font-weight:600}.legacy-dashboard-page{align-items:start}.dashboard-toolbar-compact{padding:.65rem .8rem}.dashboard-toolbar-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.dashboard-toolbar-row .segmented{padding:.22rem;gap:.22rem}.dashboard-toolbar-row .segment{min-height:2rem;padding:.42rem .72rem;font-size:.92rem}.dashboard-date-input{min-height:2rem;min-width:11rem;padding:.4rem .65rem;border:1px solid #dbe2ea;border-radius:.7rem;background:#fff;color:#111827;font-size:.92rem}.dashboard-date-input:focus{outline:2px solid rgba(37,99,235,.15);border-color:#93c5fd}.dashboard-loading-chip{position:fixed;right:1.25rem;bottom:1.25rem;z-index:45;padding:.7rem .95rem;border-radius:.85rem;border:1px solid #dbeafe;background:#fffffff5;box-shadow:0 12px 28px #0f172a1f;color:#1d4ed8;font-size:.88rem;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dashboard-layout{display:grid;gap:1.5rem;grid-template-columns:240px minmax(0,1fr);align-items:start}.dashboard-sidebar{display:grid;gap:.75rem}.dashboard-category-button{display:flex;align-items:center;gap:.8rem;width:100%;padding:.95rem 1rem;border:1px solid #dbe2ea;border-radius:.9rem;background:#fff;color:#334155;text-align:left;font-weight:600;cursor:pointer;box-shadow:0 6px 18px #0f172a0a}.dashboard-category-button.active{background:#eff6ff;border-color:#93c5fd;color:var(--accent-strong)}.dashboard-category-icon{font-size:1.2rem}.dashboard-content,.dashboard-panel-stack{display:grid;gap:1.25rem}.dashboard-highlight-grid{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-highlight-card{padding:1.5rem;border-radius:1rem;color:#fff;box-shadow:0 14px 30px #0f172a14}.dashboard-highlight-card.blue{background:linear-gradient(135deg,#3b82f6,#2563eb)}.dashboard-highlight-card.green{background:linear-gradient(135deg,#10b981,#059669)}.dashboard-highlight-card.orange{background:linear-gradient(135deg,#f59e0b,#ea580c)}.dashboard-highlight-label{font-size:.92rem;font-weight:600;opacity:.94}.dashboard-highlight-value{margin-top:.65rem;font-size:clamp(2.3rem,5vw,3rem);font-weight:700;line-height:1}.dashboard-highlight-card p{margin:.65rem 0 0;color:#ffffffe0}.dashboard-summary-card h3,.dashboard-chart-card h3,.card h3{margin:0 0 1rem}.dashboard-summary-grid{display:grid;gap:.75rem 1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-summary-grid.compact{margin-top:1rem}.dashboard-summary-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.dashboard-summary-row strong{color:#111827}.dashboard-chart-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-empty{display:grid;gap:.5rem;place-items:center;padding:3rem 1.5rem;border-radius:1rem;background:#fffbeb;border:1px solid #fde68a;text-align:center}.dashboard-empty.compact{padding:2rem 1rem;background:#f8fafc;border-color:#dbe2ea}.dashboard-empty h3,.dashboard-empty p{margin:0}.dashboard-history-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.staff-hours-toolbar-card{padding:.55rem .75rem}.staff-hours-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-end}.compact-button{min-height:2.15rem;padding:.35rem .65rem;border-radius:.58rem}.team-filter-field{min-width:12rem}.daily-input-page{gap:1rem}.daily-input-toolbar-card{padding:.55rem .75rem}.daily-input-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-end}.daily-input-toolbar .input-field{gap:.25rem}.daily-input-toolbar .input-field span{font-size:.72rem}.daily-input-toolbar .input-field input{min-height:2.15rem;padding:.42rem .7rem;border-radius:.65rem}.compact-save-button{min-height:2.15rem;padding:.35rem .85rem;border-radius:.65rem}.daily-input-form-card{display:grid;gap:1rem}.daily-input-section{display:grid;gap:.8rem}.daily-input-section h3{margin:0}.daily-input-grid{gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.daily-input-grid .input-field{gap:.35rem}.daily-input-grid .input-field span{font-size:.86rem}.daily-input-grid .input-field input{min-height:2.5rem}.staff-hours-toolbar .input-field{gap:.25rem}.staff-hours-toolbar .input-field span{font-size:.72rem}.staff-hours-toolbar .input-field input,.staff-hours-toolbar .input-field select{min-height:2.15rem;padding:.42rem .7rem;border-radius:.65rem}.staff-hours-active-list{display:grid;gap:.55rem}.staff-hours-active-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .8rem;border:1px solid #e5e7eb;border-radius:.75rem;background:#f8fafc}.staff-hours-active-actions{display:flex;align-items:center;gap:.45rem}.compact-select{min-width:12rem;min-height:2.4rem}.staff-hours-table-card{padding:.85rem}.staff-hours-table-meta{display:grid;gap:.45rem;margin-bottom:.65rem}.staff-hours-legend{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;color:var(--muted);font-size:.8rem}.staff-hours-legend-chip{display:inline-flex;align-items:center;min-height:1.35rem;padding:.1rem .4rem;border-radius:999px;border:1px solid #d1d5db;font-size:.74rem;font-weight:700}.staff-hours-legend-chip.auto{background:#ecfdf5;border-color:#86efac;color:#166534}.staff-hours-legend-chip.manual{background:#fff;color:#374151}.staff-hours-legend-note{white-space:nowrap}.staff-hours-grid-wrap{overflow:auto}.staff-hours-grid{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:.84rem}.staff-hours-grid th,.staff-hours-grid td{padding:0;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;background:#fff}.staff-hours-grid thead th{position:sticky;top:0;z-index:2;height:2.15rem;min-width:3.45rem;padding:.32rem .38rem;background:#f8fafc;color:#6b7280;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:center}.staff-hours-grid thead th.direct{background:#eff6ff}.staff-hours-grid thead th.indirect{background:#f8fafc}.staff-hours-grid tr:first-child th{border-top:1px solid #e5e7eb}.staff-hours-grid th:first-child,.staff-hours-grid td:first-child{border-left:1px solid #e5e7eb}.staff-hours-grid tbody tr:hover td{background:#fafafa}.staff-hours-grid .sticky-col{position:sticky;left:0;z-index:1;background:#fff}.staff-hours-grid thead .sticky-col{z-index:3;text-align:left}.staff-hours-grid .staff-name-cell{min-width:10rem;max-width:10rem;padding:.34rem .52rem;white-space:nowrap}.staff-hours-grid .staff-name-cell .table-primary{overflow:hidden;text-overflow:ellipsis}.staff-name-row{display:flex;align-items:center;justify-content:space-between;gap:.35rem}.staff-live-inline{display:inline-flex;align-items:center;padding:.1rem .36rem;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:.68rem;font-weight:700;flex:0 0 auto}.staff-hours-grid .type-cell,.staff-hours-grid .status-cell,.staff-hours-grid .total-cell,.staff-hours-grid .shift-cell{text-align:center;vertical-align:middle}.staff-hours-grid .type-cell{min-width:2rem;color:#6b7280;font-weight:700}.staff-hours-grid .total-col,.staff-hours-grid .total-cell{background:#eff6ff}.staff-hours-grid .shift-col,.staff-hours-grid .shift-cell,.staff-hours-grid .status-col,.staff-hours-grid .status-cell{background:#f8fafc}.staff-hours-grid .total-cell{min-width:3.7rem;font-weight:700;color:#111827}.staff-hours-grid .shift-cell,.staff-hours-grid .status-cell{min-width:3.2rem}.hours-cell-input{width:3.2rem;min-width:3.2rem;height:2rem;padding:.1rem .15rem;border:0;border-radius:0;background:#fff;color:#111827;font-size:.84rem;text-align:center}.hours-cell-input:focus{outline:2px solid rgba(37,99,235,.15);background:#dbeafe}.hours-cell-input.auto{background:#ecfdf5;color:#166534}.hours-cell-input.manual{background:#fff}.hours-cell-input.shift{background:#f8fafc;font-weight:700}.table-save-indicator{padding-bottom:.1rem;color:#6b7280;font-size:.62rem;text-align:center}.hours-status-pill{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;border-radius:999px;font-size:.78rem;font-weight:800}.hours-status-pill.ok{background:#dcfce7;color:#166534}.hours-status-pill.warn{background:#fef3c7;color:#92400e}.hours-status-pill.bad{background:#fee2e2;color:#b91c1c}.bottom-toast{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:50;min-width:13rem;max-width:min(28rem,calc(100vw - 2rem));padding:.8rem 1rem;border-radius:.9rem;border:1px solid #bfdbfe;background:#eff6fff5;box-shadow:0 14px 32px #0f172a24;color:#1d4ed8;text-align:center;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bottom-toast.success{border-color:#93c5fd;background:#eff6fff5;color:#1d4ed8}@media (max-width: 980px){.app-main{padding:1.25rem}.split-layout,.guided-layout,.chart-grid,.dashboard-layout,.dashboard-chart-grid,.dashboard-highlight-grid{grid-template-columns:1fr}.top-nav-inner{width:min(100%,calc(100% - 1.5rem));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:stretch;gap:.65rem;padding:.55rem 0}.top-nav-brand{grid-column:1 / -1;text-align:center}.top-nav-brand h1{font-size:1.05rem;line-height:1.2}.top-nav-links{width:100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding-bottom:.2rem;scrollbar-width:none}.top-nav-links::-webkit-scrollbar{display:none}.top-nav-link,.top-nav-button{min-height:2.2rem;padding:.4rem .75rem;font-size:.9rem;white-space:nowrap;flex:0 0 auto}.settings-dropdown{right:auto;left:0;min-width:min(14rem,calc(100vw - 2rem))}.top-nav-actions{width:auto;justify-content:flex-end;align-self:start}.clock-card{padding:1rem}.staff-hours-active-row{flex-direction:column;align-items:stretch}.staff-hours-active-actions{flex-wrap:wrap}}@media (max-width: 640px){.app-main,.login-shell,.full-page{padding:1rem}.page-header,.field-row,.route-card-header,.card-header-row,.bar-row-header{flex-direction:column;align-items:flex-start}.field-value{text-align:left}.task-edit-grid,.guided-steps{grid-template-columns:1fr}.content-shell,.content-shell-wide,.top-nav-inner{width:calc(100% - 1rem)}.top-nav-brand h1{font-size:.95rem}.clock-in-header,.clock-stage-topline,.dashboard-history-toolbar,.staff-hours-toolbar,.clock-toolbar-row{flex-direction:column;align-items:stretch}.daily-input-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:end}.daily-input-toolbar .input-field{min-width:0}.daily-input-toolbar .compact-save-button{width:auto}.staff-hours-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end}.staff-hours-toolbar .compact-button{width:2.4rem;min-width:2.4rem;padding:0;justify-content:center}.staff-hours-toolbar .input-field{min-width:0}.staff-hours-toolbar .team-filter-field{grid-column:1 / -1;min-width:0}.clock-selected-person{text-align:left}.clock-card{padding:.85rem;border-radius:1.1rem}.clock-stage-header h3,.clock-selected-person h3,.clock-success-stage h3{font-size:1.2rem}.clock-task-grid{grid-template-columns:1fr}.clock-staff-button,.clock-task-button{padding:.8rem .9rem}}
