:root{color:#172033;font-synthesis:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;--blue:#0969e8;--blue-hover:#085ccb;--blue-dark:#0752c4;--blue-subtle:#edf5ff;--text-main:#172033;--text-secondary:#475569;--text-muted:#64748b;--text-subtle:#94a3b8;--border:#e2e8f0;--border-light:#edf2f7;--card:#fff;--card-bg-subtle:#f8fafc;--radius:18px;--radius-sm:12px;--radius-xs:8px;--shadow:0 4px 20px #1720330d;--shadow-hover:0 8px 28px #17203317;--green:#059669;--green-bg:#ecfdf5;--green-border:#d1fae5;--amber:#d97706;--amber-dark:#b45309;--amber-bg:#fffbeb;--amber-border:#fef3c7;--red:#dc2626;--red-dark:#991b1b;--red-bg:#fef2f2;--red-border:#fee2e2;background:#f4f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--text-main);background:radial-gradient(circle at 50% 0,#f8fbff 0%,#f3f6fb 32rem);margin:0;line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}button{touch-action:manipulation;-webkit-user-select:none;user-select:none}h1,h2,h3,p{margin-top:0}h2{color:var(--text-main);letter-spacing:-.015em;font-size:1.05rem;font-weight:750}strong,.time-field input,.quick-sheet>input,.calendar-day,.preview-row strong,.detail-row strong,.overview-grid-three strong,.baseline-metrics strong,.overtime-summary-grid strong{font-variant-numeric:tabular-nums}.app-shell{width:min(100%,46rem);min-height:100vh;margin:0 auto;padding:20px 16px 36px}.page-header{margin:8px 2px 20px}.home-header h1{letter-spacing:-.04em;color:var(--text-main);margin:0;font-size:clamp(1.85rem,7.5vw,2.45rem);font-weight:800;line-height:1.15}.eyebrow{color:var(--text-muted);letter-spacing:.02em;margin-bottom:6px;font-size:.8rem;font-weight:650;display:inline-block}.subpage-header{grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:2px 0 18px;display:grid}.subpage-header h1{letter-spacing:-.03em;color:var(--text-main);margin:0;font-size:1.4rem;font-weight:750}.subpage-header button,.section-heading button,.text-action{min-height:44px;color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;padding:0;font-size:.92rem;font-weight:650;display:inline-flex}.subpage-header button:hover,.section-heading button:hover,.text-action:hover{color:var(--blue-dark)}.hero-card{color:#fff;text-align:left;cursor:pointer;background:linear-gradient(135deg,#0969e8 0%,#085ccd 55%,#054eb8 100%);border:0;border-radius:22px;flex-direction:column;align-items:stretch;width:100%;min-height:168px;padding:22px 20px 18px;display:flex;box-shadow:0 12px 30px #0969e83d}.hero-card>span{color:#ffffffd9;letter-spacing:.01em;font-size:.84rem;font-weight:600}.hero-card>strong{letter-spacing:-.05em;color:#fff;margin:8px 0 10px;font-size:clamp(2.2rem,9.5vw,2.85rem);font-weight:800;line-height:1.08}.hero-card small{color:#ffffffd1;border-top:1px solid #ffffff29;justify-content:space-between;align-items:baseline;gap:8px;padding-top:10px;font-size:.82rem;line-height:1.4;display:flex}.hero-card small b{color:#fff;font-weight:700}.hero-card>i{background:#ffffff38;border-radius:99px;height:4px;margin-top:auto;overflow:hidden}.hero-card>i span{border-radius:inherit;background:#fff;height:100%;display:block}.metric-stack{gap:12px;margin-top:15px;display:grid}.metric-card,.data-card,.calendar-card,.chart-card,.record-card,.selected-detail{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);padding:18px}.metric-card{flex-direction:column;gap:7px;display:flex}.metric-card span{color:var(--text-muted);font-size:.82rem;font-weight:650}.metric-card strong{letter-spacing:-.035em;color:var(--text-main);font-size:clamp(1.4rem,6.5vw,1.95rem);font-weight:750;line-height:1.15}.metric-card small{color:var(--text-muted);font-size:.8rem}.compact-card strong{font-size:clamp(1.25rem,5.5vw,1.7rem)}.overtime-reference{text-align:left;cursor:pointer;flex-direction:column;gap:6px;width:100%;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.overtime-reference:hover{box-shadow:var(--shadow-hover);border-color:#cbd5e1}.overtime-reference:active{transform:scale(.992)}.overtime-reference>span{color:var(--text-muted);letter-spacing:.01em;font-size:.8rem;font-weight:600}.overtime-reference strong{letter-spacing:-.03em;color:#0f172a;font-size:clamp(1.4rem,6.2vw,1.85rem);font-weight:750;line-height:1.15}.overtime-reference small{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-top:2px;font-size:.8rem;display:flex}.overtime-reference small b{color:var(--blue);font-size:1.05rem;font-weight:700;line-height:1}.overtime-reference>i{background:#edf2f7;border-radius:99px;height:4px;margin-top:4px;overflow:hidden}.overtime-reference>i span{border-radius:inherit;background:var(--blue);height:100%;transition:width .3s;display:block}.primary-action,.secondary-action,.home-links button,.split-actions button{cursor:pointer;border:0;border-radius:14px;font-weight:700;transition:background-color .15s,transform .1s,box-shadow .15s}.primary-action:active,.secondary-action:active,.home-links button:active,.split-actions button:active{transform:scale(.985)}.primary-action{color:#fff;background:var(--blue);width:100%;min-height:52px;margin-top:18px;font-size:1.02rem;box-shadow:0 6px 18px #0969e838}.primary-action:hover:not(:disabled){background:var(--blue-hover);box-shadow:0 8px 22px #0969e847}.primary-action:disabled{box-shadow:none;color:#94a3b8;cursor:not-allowed;background:#cbd5e1}.secondary-action{width:100%;min-height:46px;color:var(--blue-dark);background:var(--blue-subtle);margin-top:6px;font-size:.94rem}.secondary-action:hover:not(:disabled){background:#e0edff}.secondary-action:disabled{opacity:.6;cursor:not-allowed}.home-links,.split-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.home-links button,.split-actions button{border:1px solid var(--border);color:#334155;background:#fff;min-height:48px;font-size:.92rem}.home-links button:hover,.split-actions button:hover{background:#f8fafc;border-color:#cbd5e1}.missing-note,.storage-note,.record-date{color:var(--text-muted);font-size:.84rem;line-height:1.5}.storage-note{text-align:center;color:var(--text-subtle);margin-top:16px;font-size:.78rem}.missing-note{border-radius:var(--radius-xs);background:var(--amber-bg);border:1px solid var(--amber-border);color:var(--amber-dark);margin:12px 2px 0;padding:8px 12px;font-size:.82rem}.month-picker{grid-template-columns:44px 1fr 44px;align-items:center;margin-bottom:14px;display:grid}.month-picker strong{text-align:center;color:var(--text-main);font-size:1.05rem;font-weight:750}.month-picker button{min-width:44px;min-height:44px;color:var(--blue);background:var(--blue-subtle);cursor:pointer;border:0;border-radius:12px;place-items:center;font-size:1.25rem;display:grid}.month-picker button:hover{background:#e0edff}.chart-card{min-width:0;padding:18px 16px;overflow:hidden}.chart-heading{justify-content:space-between;align-items:baseline;gap:8px;padding:0 4px 10px;display:flex}.chart-heading h2{color:var(--text-main);margin:0;font-size:.98rem;font-weight:700}.chart-legend-compact{color:var(--text-muted);align-items:center;gap:8px;font-size:.72rem;display:flex}.chart-legend-compact i{vertical-align:middle;display:inline-block}.chart-legend-compact .legend-bar{background:#93c5fd;border-radius:2px;width:8px;height:8px}.chart-legend-compact .legend-line{background:#0969e8;border-radius:99px;width:10px;height:2.5px}.chart-legend-compact .legend-target{border-top:1.5px dashed #cbd5e1;width:10px;height:0}.chart{width:100%;height:270px}.chart-detail{border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--card-bg-subtle);border:1px solid var(--border-light);grid-template-columns:1fr 1fr;gap:6px 10px;margin:8px 2px 0;padding:12px 14px;font-size:.8rem;line-height:1.45;display:grid}.chart-detail>strong{color:var(--text-main);grid-column:1/-1;margin-bottom:2px;font-size:.92rem;font-weight:750}.chart-detail span{overflow-wrap:anywhere}.chart-edit{grid-column:1/-1;justify-self:start;min-height:36px;margin-top:4px;font-size:.84rem}.month-overview,.history-baseline{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin-bottom:14px;padding:16px}.month-overview h2,.history-baseline h2{margin-bottom:11px}.overview-grid-three{grid-template-columns:1.25fr .95fr;gap:14px 10px;display:grid}.overview-grid-three>div{align-content:start;gap:4px;min-width:0;display:grid}.overview-grid-three>div:last-child{border-top:1px solid var(--border-light);grid-column:1/-1;padding-top:10px}.overview-grid-three span,.history-baseline span{color:var(--text-muted);font-size:.78rem;font-weight:650}.overview-grid-three strong{color:var(--text-main);overflow-wrap:anywhere;font-size:clamp(1rem,4.6vw,1.3rem);font-weight:750;line-height:1.22}.overview-grid-three small{color:var(--text-muted);font-size:.74rem}.overview-grid-three em{color:#0369a1;font-size:.72rem;font-style:normal;line-height:1.35;display:inline-block}.baseline-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.baseline-title h2{margin:0}.baseline-title h2 small{color:var(--text-muted);font-size:.74rem;font-weight:600}.baseline-title button{min-width:40px;min-height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font-size:1.1rem;display:grid}.baseline-title button:hover{color:var(--text-main);background:#f1f5f9}.baseline-metrics{grid-template-columns:1.25fr .95fr;gap:12px 10px;margin-top:12px;display:grid}.baseline-metrics>div{gap:4px;min-width:0;display:grid}.baseline-metrics strong{color:var(--text-main);overflow-wrap:anywhere;font-size:clamp(.98rem,4.5vw,1.25rem);font-weight:750}.baseline-info{border-top:1px solid var(--border-light);color:var(--text-secondary);margin-top:12px;padding-top:10px;font-size:.78rem;line-height:1.55}.baseline-info p{margin:4px 0}.quality-compact{border:1px solid var(--amber-border);border-radius:var(--radius-sm);color:var(--amber-dark);background:var(--amber-bg);margin:0 0 14px;overflow:hidden}.quality-compact>button{width:100%;min-height:44px;color:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 13px;font-size:.82rem;font-weight:650;display:flex}.quality-compact>button span{color:#92400e;font-size:.78rem;text-decoration:underline}.quality-compact>div{padding:0 13px 10px;font-size:.78rem;line-height:1.5}.quality-compact p{margin:4px 0}.calendar-card{padding:14px 10px}.week-row,.month-grid{text-align:center;grid-template-columns:repeat(7,1fr);display:grid}.week-row span{color:var(--text-subtle);padding:6px 0 8px;font-size:.76rem;font-weight:650}.calendar-day{color:#475569;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;min-height:44px;font-size:.88rem;font-weight:550;transition:background-color .12s;display:grid;position:relative}.calendar-day:disabled{opacity:1;cursor:default}.calendar-day.has-record{color:var(--blue-dark);background:var(--blue-subtle);font-weight:750}.calendar-day.has-record:hover{background:#e0edff}.calendar-day.saturday:not(.has-record){color:var(--text-muted);background:#f8fafc}.calendar-day.non-expected{color:#94a3b8}.calendar-day.missing-record{cursor:pointer}.calendar-day.future-date{color:#cbd5e1;cursor:pointer;background:0 0}.calendar-day i{background:var(--blue);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.calendar-day.zero-record i{background:#94a3b8}.calendar-day.pending-record{color:var(--amber-dark);background:var(--amber-bg)}.calendar-day.pending-record i{background:#e28a12}.calendar-legend{color:var(--text-muted);flex-wrap:wrap;gap:12px;margin:12px 4px 2px;font-size:.75rem;display:flex}.calendar-legend span{align-items:center;gap:5px;display:flex}.calendar-legend i{background:var(--blue);border-radius:50%;width:6px;height:6px}.calendar-legend .legend-zero{background:#94a3b8}.calendar-legend .legend-pending{background:#e28a12}.section-heading{justify-content:space-between;align-items:center;margin:22px 2px 10px;display:flex}.section-heading h2{margin:0}.record-list{gap:10px;display:grid}.empty-state{border-radius:var(--radius);color:var(--text-muted);text-align:center;background:#ffffffb3;border:1px dashed #cbd5e1;padding:32px 15px;font-size:.9rem}.record-item{border:1px solid var(--border);width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:16px;padding:15px 16px;transition:transform .12s,box-shadow .12s,border-color .12s;box-shadow:0 2px 10px #1720330a}.record-item:hover{border-color:#cbd5e1;box-shadow:0 4px 16px #17203312}.record-item:active{transform:scale(.992)}.record-item-head{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.record-item-head strong{color:var(--text-main);font-size:.96rem;font-weight:750}.record-item-head>span{color:var(--text-muted);font-size:.82rem}.record-item-head em{color:#0284c7;background:#e0f2fe;border-radius:6px;padding:2px 6px;font-size:.68rem;font-style:normal;font-weight:650}.record-item-head .warn-tag{color:var(--amber-dark);background:var(--amber-bg)}.record-item-head .muted-tag{color:var(--text-muted);background:#f1f5f9}.badge{color:var(--text-muted);background:#f1f5f9;border-radius:6px;padding:2px 6px;font-size:.68rem;font-weight:600}.badge.today{color:#0284c7;background:#e0f2fe}.badge.pending{color:var(--amber-dark);background:var(--amber-bg)}.record-times,.record-totals{color:var(--text-secondary);flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:.83rem;display:flex}.record-totals{margin-top:6px}.record-totals strong{color:var(--text-main);font-weight:650}.record-totals .positive,.record-totals .overtime strong{color:var(--green);font-weight:700}.record-item>small{color:var(--text-subtle);margin-top:8px;font-size:.72rem;display:block}.record-card{gap:15px;display:grid}.record-date{color:var(--text-secondary);margin:-6px 2px 10px;font-size:.88rem;font-weight:600}.time-field,.note-field{color:#334155;gap:6px;font-size:.88rem;font-weight:700;display:grid}.time-field input{border:2px solid var(--border);border-radius:var(--radius-sm);width:100%;height:58px;color:var(--text-main);letter-spacing:.05em;background:#fff;outline:none;padding:0 14px;font-size:1.4rem;transition:border-color .15s,box-shadow .15s}.time-field input:focus,.note-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0969e81f}.time-field small{color:var(--text-muted);font-size:.78rem;font-weight:450}.toggle-row{justify-content:space-between;align-items:center;gap:12px;min-height:46px;display:flex}.toggle-row span{gap:3px;display:grid}.toggle-row small{color:var(--text-muted);font-size:.78rem;font-weight:450}.toggle-row input{width:24px;height:24px;accent-color:var(--blue)}.note-field textarea{resize:vertical;border:2px solid var(--border);border-radius:var(--radius-sm);outline:none;min-height:80px;padding:10px 12px;font-size:.9rem}.not-attending{border-radius:var(--radius-sm);color:var(--text-secondary);background:#f1f5f9;padding:13px 14px;font-size:.83rem;line-height:1.45}.delete-action{min-height:44px;color:var(--red);cursor:pointer;background:0 0;border:0;font-size:.88rem;font-weight:650}.delete-action:hover{color:var(--red-dark)}.pending-detail{gap:12px}.leave-field{border:1px solid var(--border);border-radius:var(--radius-sm);gap:9px;min-width:0;padding:13px 14px;display:grid}.leave-field legend{color:#334155;padding:0 5px;font-size:.84rem;font-weight:750}.leave-shortcuts{flex-wrap:wrap;gap:6px;display:flex}.leave-shortcuts button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;min-width:44px;min-height:38px;padding:0 9px;font-size:.8rem;font-weight:600}.leave-shortcuts button[aria-pressed=true]{border-color:var(--blue);color:var(--blue-dark);background:var(--blue-subtle)}.leave-shortcuts .leave-clear{min-width:auto;color:var(--text-muted);border-color:#0000}.leave-custom{grid-template-columns:1fr 1fr;gap:8px;display:grid}.leave-custom label{color:var(--text-muted);gap:4px;font-size:.75rem;font-weight:600;display:grid}.leave-custom input{border:1px solid #cbd5e1;border-radius:9px;width:100%;min-height:42px;padding:0 10px;font-size:.92rem}.leave-field small{color:var(--text-muted);font-size:.78rem;line-height:1.4}.leave-field.compact{background:var(--card-bg-subtle);padding:11px 12px}.calendar-arrangement{border-bottom:1px solid var(--border-light);grid-template-columns:1fr auto;align-items:center;gap:6px 10px;padding:10px 0;display:grid}.calendar-arrangement>div{gap:3px;display:grid}.calendar-arrangement span{color:#334155;font-size:.86rem;font-weight:750}.calendar-arrangement small{color:var(--text-muted);font-size:.78rem}.calendar-arrangement select{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:46px;color:var(--text-main);background:#fff;grid-column:1/-1;padding:0 12px;font-size:.9rem}.more-toggle{justify-self:start}.quick-backdrop{z-index:20;background:#0f172a6b;justify-content:center;align-items:flex-end;padding:12px;display:flex;position:fixed;inset:0}.quick-sheet{width:min(100%,42rem);padding:10px 18px max(18px, env(safe-area-inset-bottom));background:#fff;border-radius:22px 22px 16px 16px;box-shadow:0 -16px 48px #0f172a33}.quick-handle{background:#cbd5e1;border-radius:99px;width:38px;height:4px;margin:0 auto 12px}.quick-title{justify-content:space-between;align-items:start;margin-bottom:14px;display:flex}.quick-title>div{gap:3px;display:grid}.quick-title strong{color:var(--text-main);font-size:1.05rem;font-weight:750}.quick-title span{color:var(--text-muted);font-size:.8rem}.quick-title button{width:40px;height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;font-size:1.4rem;display:grid}.quick-sheet>input{border:2px solid var(--blue);letter-spacing:.06em;text-align:center;border-radius:14px;outline:none;width:100%;height:60px;padding:0 14px;font-size:1.55rem;font-weight:700}.quick-secondary{grid-template-columns:1fr 1fr;gap:8px;margin-top:9px;display:grid}.quick-secondary button{color:#1e5ba3;cursor:pointer;background:#eef5fd;border:0;border-radius:11px;min-height:44px;font-size:.85rem;font-weight:650}.quick-secondary button:hover{background:#e3effc}.quick-sheet .primary-action{margin-top:12px}.quick-exception{gap:10px;max-height:46vh;padding-top:10px;display:grid;overflow-y:auto}.quick-start{color:#334155;gap:5px;font-size:.8rem;font-weight:700;display:grid}.quick-start input{border:1px solid var(--border);min-height:46px;color:var(--text-main);background:#fff;border-radius:11px;padding:0 12px;font-size:1.02rem}.quick-exception>.text-action{justify-self:start;min-height:38px}.notice{border-radius:var(--radius-sm);margin:9px 0;padding:11px 14px;font-size:.84rem;line-height:1.45}.notice.error{color:var(--red-dark);background:var(--red-bg);border:1px solid var(--red-border)}.notice.warning{color:var(--amber-dark);background:var(--amber-bg);border:1px solid var(--amber-border)}.notice.success{color:#065f46;background:var(--green-bg);border:1px solid var(--green-border)}.persistence-note{background:#f1f5f9;border-radius:11px;padding:10px 12px;font-size:.8rem;line-height:1.45;color:#475569!important;margin:9px 0 2px!important}.save-toast{z-index:30;left:50%;bottom:max(18px, env(safe-area-inset-bottom));color:#fff;background:#17263d;border-radius:13px;align-items:center;gap:12px;width:min(100% - 24px,38rem);padding:12px 14px;font-size:.85rem;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 28px #0f1b2e47}.save-toast span{flex:1}.save-toast button{color:#8fc4ff;cursor:pointer;background:0 0;border:0;min-width:44px;min-height:36px;font-weight:750}.global-safety-alert{z-index:40;color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:12px;max-width:500px;margin:0 auto;padding:11px 13px;font-size:.86rem;line-height:1.45;position:fixed;bottom:14px;left:14px;right:14px;box-shadow:0 8px 24px #382b1424}.transient-alert{align-items:center;gap:10px;display:flex}.transient-alert span{flex:1}.transient-alert button{min-width:40px;min-height:36px;color:inherit;cursor:pointer;background:0 0;border:0;font-weight:750}.data-card{margin-bottom:13px}.data-card h2{margin-bottom:6px}.data-card p{color:var(--text-secondary);margin-bottom:8px;font-size:.84rem;line-height:1.5}.data-card .text-action{width:100%;margin-top:8px;display:inline-flex}.danger-text{color:#b91c1c!important}.danger-text:hover{color:#991b1b!important}.safety-card .secondary-action,.safety-card>.text-action{margin-top:9px}.settings-field{color:#334155;gap:6px;font-size:.86rem;font-weight:700;display:grid}.settings-field input,.settings-field select{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:46px;color:var(--text-main);background:#fff;padding:0 12px;font-size:.9rem}.app-build{color:var(--text-subtle);overflow-wrap:anywhere;margin:12px 2px 4px;font-size:.72rem}.modal-backdrop{z-index:10;background:#0d182a73;justify-content:center;align-items:flex-end;padding:14px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:20px;width:min(100%,40rem);max-height:88vh;padding:18px;overflow:auto;box-shadow:0 20px 50px #00000038}.modal-card h2{margin-bottom:12px}.preview-row{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:baseline;gap:14px;padding:8px 0;font-size:.85rem;display:flex}.preview-row span{color:var(--text-muted);flex-shrink:0;font-size:.82rem}.preview-row strong{color:var(--text-main);text-align:right;overflow-wrap:anywhere;font-size:.88rem}.modal-card details{background:var(--card-bg-subtle);border-radius:11px;margin-top:10px;padding:10px 12px}.modal-card summary{cursor:pointer;color:var(--text-main);font-size:.84rem;font-weight:700}.modal-card details p{color:var(--text-secondary);margin:6px 0 0;font-size:.8rem}.conflict-row{align-items:center;gap:8px;padding:8px 0;font-size:.83rem;display:flex}.conflict-row input{width:18px;height:18px}.modal-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:16px;display:grid}.modal-actions button{cursor:pointer;border:0;border-radius:12px;min-height:46px;font-size:.92rem;font-weight:750}.modal-actions .confirm{color:#fff;background:var(--blue)}.modal-actions .confirm:hover:not(:disabled){background:var(--blue-hover)}.modal-actions .confirm:disabled{background:#cbd5e1}.tabs{background:#e9edf4;border-radius:13px;grid-template-columns:1fr 1fr;gap:5px;margin:14px 0 12px;padding:4px;display:grid}.tabs button{color:#64748b;background:0 0;border:0;border-radius:10px;min-height:42px;font-size:.88rem;font-weight:700}.tabs button.active{color:var(--blue-dark);background:#fff;box-shadow:0 2px 8px #2035531a}.summary-line{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.summary-line span{color:var(--text-muted)}.summary-line strong{font-size:1.65rem}.selected-detail{box-shadow:none;margin-top:12px}.selected-detail h3{margin:0 0 12px;font-size:.96rem}.detail-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.detail-row{gap:3px;display:grid}.detail-row span{color:var(--text-muted);font-size:.78rem}.detail-row strong{color:var(--text-main);font-size:.88rem}.detail-summary{justify-content:space-between;align-items:baseline;gap:12px;margin:6px 2px 14px;display:flex}.detail-summary span{color:var(--text-muted)}.detail-summary strong{font-size:1.55rem}.overtime-summary-grid{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:18px;grid-template-columns:1fr 1fr;gap:13px;padding:16px;display:grid}.overtime-summary-grid>div{align-content:start;gap:5px;min-width:0;display:grid}.overtime-summary-grid>div:first-child{border-bottom:1px solid #edf1f6;grid-column:1/-1;padding-bottom:12px}.overtime-summary-grid span{color:#718096;font-size:.78rem}.overtime-summary-grid strong{overflow-wrap:anywhere;font-size:clamp(1rem,4.8vw,1.3rem);line-height:1.2}.overtime-summary-grid>div:first-child strong{font-size:clamp(1.35rem,6vw,1.7rem)}.overtime-summary-grid small{color:#8490a2;font-size:.68rem}.compact-month-summary{grid-template-columns:1.35fr .65fr;gap:12px;display:grid}.compact-month-summary div{gap:5px;display:grid}.compact-month-summary span{color:var(--text-muted);font-size:.8rem}.compact-month-summary div strong{font-size:1.2rem}.compact-month-summary small{color:var(--text-muted);grid-column:1/-1}.utilization-hero small{justify-content:start;display:grid}.utilization-hero small b{font-size:.93rem}.forensic-page .page-header h1{margin-bottom:6px}.forensic-page .page-header>p:last-child{color:var(--text-secondary);font-size:.84rem;line-height:1.5}.forensic-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:16px;margin-bottom:13px;padding:16px}.forensic-card h2{margin-bottom:10px}.forensic-row{border-bottom:1px solid var(--border-light);gap:3px;padding:8px 0;display:grid}.forensic-row:last-child{border-bottom:0}.forensic-row span{color:var(--text-muted);font-size:.78rem}.forensic-row strong{overflow-wrap:anywhere;color:var(--text-main);font-size:.88rem}.database-summary{border:1px solid var(--border-light);background:#f8fafc;border-radius:12px;margin-top:12px;padding:12px}.database-summary h3{margin:0 0 6px;font-size:.95rem}.snapshot-action{width:100%;min-height:44px;color:var(--blue-dark);background:var(--blue-subtle);cursor:pointer;border:1px solid #b9d3f2;border-radius:11px;margin-top:11px;font-size:.88rem;font-weight:700}.snapshot-action:disabled{color:var(--text-muted);background:#f1f5f9}.recovery-page .forensic-card{margin-bottom:13px}.recovery-confirm{color:var(--text-main);align-items:flex-start;gap:9px;margin:15px 0;font-size:.85rem;line-height:1.45;display:flex}.recovery-confirm input{flex:none;width:20px;height:20px;margin-top:2px}.recovery-month{border-top:1px solid var(--border-light);grid-template-columns:1fr 1fr;gap:5px 10px;padding:10px 0;font-size:.82rem;display:grid}.recovery-month strong{grid-column:1/-1;font-size:.92rem}.diagnostics{background:var(--card-bg-subtle);border-radius:11px;margin-top:10px;padding:10px 12px}.diagnostics summary{color:#334155;cursor:pointer;font-size:.82rem;font-weight:700}.diagnostics p{color:var(--text-secondary);margin:6px 0 0;font-size:.78rem}.picker-diagnostics{background:#f1f5f9;border-radius:10px;margin-top:8px;padding:9px 11px;font-size:.78rem;line-height:1.45}.picker-diagnostics p{margin:3px 0}.picker-diagnostics strong{font-size:.84rem}@media (width<=360px){.app-shell{padding:16px 12px 28px}.metric-card,.data-card,.calendar-card,.chart-card,.record-card,.selected-detail,.month-overview,.history-baseline,.overtime-summary-grid{padding:14px 12px}.hero-card{min-height:156px;padding:18px 15px 16px}.overview-grid-three,.baseline-metrics{gap:10px 6px}.overview-grid-three strong,.baseline-metrics strong{font-size:.95rem}.chart{height:250px}.chart-detail{grid-template-columns:1fr;gap:5px;padding:10px 12px}.calendar-card{padding:12px 8px}}@media (width>=600px){.app-shell{padding:36px 24px 48px}.metric-stack{grid-template-columns:1fr 1fr}.metric-stack .compact-card{grid-column:1/-1}.modal-backdrop{align-items:center}}@media (display-mode:standalone){.app-shell{padding-top:max(20px, env(safe-area-inset-top));padding-bottom:max(32px, env(safe-area-inset-bottom))}}
