:root{--color-paper: oklch(97.5% .008 95);--color-surface: oklch(100% 0 0);--color-ink: oklch(27% .04 160);--color-muted: oklch(52% .025 160);--color-rule: oklch(88% .014 150);--color-accent: oklch(36% .085 159);--color-accent-ink: oklch(98% .005 95);--color-accent-soft: oklch(91% .04 158);--color-warm: oklch(77% .09 80);--color-focus: oklch(48% .13 245);--font-display: Inter, ui-sans-serif, system-ui, sans-serif;--font-body: Inter, ui-sans-serif, system-ui, sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.5rem;--space-2xl: 2rem;--space-3xl: 3rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.875rem;--text-display: 2.55rem;--color-error: oklch(50% .16 28);--radius-sm: .75rem;--radius-md: 1.125rem;--radius-lg: 1.5rem;--rule: 1px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .15s;--dur-short: .22s}html,body{margin:0;min-width:320px;overflow-x:clip;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body)}*{box-sizing:border-box}button,input,textarea,select{font:inherit}input,textarea,select{font-size:16px}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.app-shell{min-height:100dvh;max-width:680px;margin:0 auto;padding:max(4.25rem,calc(env(safe-area-inset-top) + var(--space-md))) clamp(1rem,4vw,1.5rem) 6.5rem}.topbar,.form-header,.status-strip,.section-heading,.bottom-nav,.wordmark,.task-card,.input-row,.profile-row,.language-card,.help-list>div{display:flex;align-items:center}.topbar,.form-header{justify-content:space-between}.wordmark{gap:var(--space-sm);font-weight:750;letter-spacing:-.025em}.staff-mark{display:block;width:2.75rem;height:2.75rem;flex:0 0 auto;border-radius:.7rem}.wordmark small{display:block;color:var(--color-muted);font-size:var(--text-xs);font-weight:600;letter-spacing:0}.profile-button,.back-button{border:0;color:var(--color-ink);background:transparent;min-height:44px}.profile-button{width:44px;border-radius:50%;background:var(--color-accent-soft);font-size:var(--text-xs);font-weight:800}.back-button{padding:0;font-weight:700}.secure-mark,.eyebrow,label span{color:var(--color-muted);font-size:var(--text-xs);font-weight:750;letter-spacing:.075em}.welcome{padding:var(--space-3xl) 0 var(--space-2xl)}.eyebrow{margin:0 0 var(--space-sm)}h1,h2,p{margin-top:0}h1{max-width:12ch;margin-bottom:var(--space-sm);font-family:var(--font-display);font-size:clamp(2.35rem,10vw,var(--text-display));line-height:.98;letter-spacing:-.05em;overflow-wrap:anywhere}.welcome-title{max-width:none}.welcome-greeting,.welcome-name{display:block}.welcome-name{color:var(--color-accent);font-family:var(--font-body);font-size:.7em;font-weight:850;letter-spacing:-.035em;line-height:1.08;overflow-wrap:anywhere}.welcome>p:last-child,.form-heading>p{margin-bottom:0;color:var(--color-muted);line-height:1.5}.status-strip{justify-content:space-between;padding:var(--space-lg);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.status-strip div{display:flex;align-items:baseline;gap:var(--space-sm);font-size:var(--text-sm)}.status-number{font-size:var(--text-xl);font-weight:800}.status-time{color:var(--color-muted);font-size:var(--text-xs);font-weight:700}.task-list{margin-top:var(--space-3xl)}.section-heading{justify-content:space-between;margin-bottom:var(--space-md)}.section-heading h2{margin-bottom:0;font-size:var(--text-lg);letter-spacing:-.02em}.section-heading span{color:var(--color-muted);font-size:var(--text-sm)}.task-card{width:100%;min-height:82px;gap:var(--space-md);padding:var(--space-lg);text-align:left;border:0;border-bottom:var(--rule) solid var(--color-rule);background:transparent;color:var(--color-ink);transition:transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.task-card.open:hover,.task-card.open:active{transform:translateY(-1px);background:var(--color-accent-soft)}.task-card.overdue{background:color-mix(in oklch,var(--color-error) 8%,var(--color-surface))}.task-card.overdue:hover,.task-card.overdue:active{transform:translateY(-1px);background:color-mix(in oklch,var(--color-error) 14%,var(--color-surface))}.task-card.overdue .task-state,.task-card.overdue .task-due{color:var(--color-error)}.task-card:disabled{cursor:not-allowed;opacity:.58}.completed-section{margin-top:var(--space-xl);border-top:var(--rule) solid var(--color-rule)}.completed-toggle{display:flex;align-items:center;width:100%;min-height:52px;gap:var(--space-sm);padding:var(--space-md) 0;border:0;background:transparent;color:var(--color-muted);text-align:left}.completed-toggle span{color:var(--color-accent);font-size:var(--text-xl);font-weight:800}.completed-toggle strong{flex:1;font-size:var(--text-sm)}.completed-toggle small{font-size:var(--text-xs);font-weight:700}.completed-list{border-top:var(--rule) solid var(--color-rule)}.task-card.completed{min-height:70px;background:color-mix(in oklch,var(--color-accent-soft) 42%,transparent)}.task-card.completed .task-state{color:var(--color-accent)}.task-state{width:1.3rem;color:var(--color-accent);font-size:var(--text-xl);font-weight:800}.task-copy{display:grid;gap:.2rem;min-width:0;flex:1}.task-copy strong{font-size:var(--text-base)}.task-copy small,.task-due{color:var(--color-muted);font-size:var(--text-xs);line-height:1.35}.task-due{max-width:7.5rem;text-align:right;font-weight:700}.assignment-load-state{display:grid;gap:var(--space-md);margin-top:var(--space-2xl);padding:var(--space-xl);border:var(--rule) dashed var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.assignment-load-state p{margin:0;color:var(--color-muted);font-size:var(--text-sm);font-weight:700;line-height:1.45}.assignment-load-state.is-error{border-color:color-mix(in oklch,var(--color-error) 45%,var(--color-rule));background:color-mix(in oklch,var(--color-error) 5%,var(--color-surface))}.assignment-load-state.is-error p{color:var(--color-error)}.info-card{margin-top:var(--space-2xl);padding:var(--space-xl);border-radius:var(--radius-md);background:var(--color-ink);color:var(--color-paper)}.info-card .eyebrow{color:#bcd1c2}.info-card>p:last-child{margin:0;font-size:var(--text-sm);line-height:1.5}.bottom-nav{position:fixed;right:0;bottom:0;left:0;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) clamp(1rem,4vw,1.5rem) calc(var(--space-sm) + env(safe-area-inset-bottom));border-top:var(--rule) solid var(--color-rule);background:color-mix(in oklch,var(--color-paper) 93%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bottom-nav button{min-width:82px;min-height:44px;padding:0 var(--space-md);border:0;border-radius:999px;background:transparent;color:var(--color-muted);font-size:var(--text-sm);font-weight:700}.bottom-nav button.active{background:var(--color-ink);color:var(--color-paper)}.form-screen{padding-bottom:var(--space-3xl)}.form-heading{padding:var(--space-3xl) 0 var(--space-xl)}.location-required-banner{margin-top:var(--space-md);padding:var(--space-md);border:var(--rule) solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-ink);font-size:var(--text-sm);font-weight:800;line-height:1.45}.location-required-banner.is-error{border-color:var(--color-error);background:color-mix(in oklch,var(--color-error) 8%,var(--color-surface));color:var(--color-error)}.location-checking{margin-top:var(--space-sm);color:var(--color-accent);font-size:var(--text-sm);font-weight:800}.form-heading h1{font-size:clamp(2rem,8vw,3rem)}.record-form{display:grid;gap:var(--space-xl)}.hygiene-declaration{gap:var(--space-lg)}.declaration-intro{margin:0;color:var(--color-ink);font-size:var(--text-base);font-weight:700;line-height:1.55}.hygiene-requirements{display:grid;gap:var(--space-md);margin:0;padding:var(--space-lg) var(--space-xl);border:1.5px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.hygiene-requirements li{padding-left:var(--space-xs);color:var(--color-ink);font-size:var(--text-sm);line-height:1.45}.text-button{min-height:44px;border:0;background:transparent;color:var(--color-ink);font-size:var(--text-sm);font-weight:750;text-align:center}.hygiene-issue-button{color:var(--color-muted);text-decoration:underline;text-underline-offset:.22em}.hygiene-issue-form{display:grid;gap:var(--space-lg);padding-top:var(--space-sm)}.hygiene-issue-form h2{margin:0;font-size:var(--text-xl);letter-spacing:-.025em}.hygiene-issue-form>p{margin:calc(-1 * var(--space-sm)) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:1.45}.hygiene-issue-option{grid-template-columns:1.25rem 1fr;align-items:start;gap:var(--space-sm)!important;min-height:44px;padding:var(--space-md);border:1.5px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);font-weight:650!important;line-height:1.4}.hygiene-issue-option input{width:1.15rem;height:1.15rem;margin-top:.08rem;accent-color:var(--color-accent)}.cleaning-machine-operations{gap:var(--space-2xl)}.cleaning-check{display:grid;gap:var(--space-sm);padding-bottom:var(--space-xl);border-bottom:1.5px solid var(--color-rule)}.cleaning-check:last-of-type{border-bottom:0}.cleaning-check h2{margin:0;font-size:var(--text-lg);letter-spacing:-.02em}.cleaning-check>p:not(.cleaning-number){margin:0;color:var(--color-muted);font-size:var(--text-sm);line-height:1.45}.cleaning-number{display:grid;place-items:center;width:1.75rem;height:1.75rem;margin:0;border-radius:50%;background:var(--color-accent-soft);color:var(--color-accent);font-size:var(--text-sm);font-weight:850}.cleaning-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm);margin-top:var(--space-sm)}.cleaning-actions button{min-height:58px;padding:var(--space-sm);border:1.5px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-xs);font-weight:800;line-height:1.25}.cleaning-actions button.selected.pass{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent)}.cleaning-actions button.selected.issue{border-color:var(--color-error);background:color-mix(in oklch,var(--color-error) 8%,var(--color-surface));color:var(--color-error)}.cleaning-check label{margin-top:var(--space-sm)}.cleaning-check small{color:var(--color-muted);font-size:var(--text-xs);font-weight:600;line-height:1.35}.toilet-inspection .cleaning-check>p:empty{display:none}.daily-temperature-record{gap:var(--space-2xl)}.shift-banner{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg);border:1.5px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-accent-soft)}.shift-banner strong{font-size:var(--text-lg);letter-spacing:-.02em}.shift-banner small{color:var(--color-muted);font-size:var(--text-xs);font-weight:750}.temperature-reading{display:grid;gap:var(--space-sm);padding-bottom:var(--space-xl);border-bottom:1.5px solid var(--color-rule)}.temperature-reading:last-of-type{border-bottom:0}.temperature-reading h2{margin:0;font-size:var(--text-lg);letter-spacing:-.02em}.temperature-reading>p{margin:0;color:var(--color-muted);font-size:var(--text-sm);font-weight:700}.temperature-reading label{margin-top:var(--space-sm)}.temperature-normal{color:var(--color-accent);font-size:var(--text-sm)}.temperature-abnormal{color:var(--color-error);font-size:var(--text-sm)}.cooking-temperature-form{gap:var(--space-lg)}.cooking-product-picker{padding:var(--space-lg);border:1.5px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.cooking-search-wrap{position:relative}.cooking-search-input,.cooking-time-input{width:100%;min-height:56px;padding:0 var(--space-lg);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);font-weight:750}.cooking-search-input{margin-top:var(--space-xs)}.cooking-search-status{margin:var(--space-sm) 0 0;color:var(--color-muted);font-size:var(--text-xs);font-weight:650;line-height:1.4}.cooking-search-common-label{margin-bottom:var(--space-xs);font-weight:800}.cooking-search-error{color:var(--color-error)}.cooking-search-results{display:grid;max-height:18rem;overflow-y:auto;margin-top:.35rem;border:1.5px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:0 .8rem 2rem color-mix(in oklch,var(--color-ink) 16%,transparent)}.cooking-search-result{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-lg);border:0;border-bottom:var(--rule) solid var(--color-rule);background:transparent;color:var(--color-ink);text-align:left}.cooking-search-result:last-child{border-bottom:0}.cooking-search-result:hover,.cooking-search-result:focus-visible{background:var(--color-accent-soft)}.cooking-search-result span{display:grid;gap:.15rem;min-width:0}.cooking-search-result strong{overflow-wrap:anywhere;font-size:var(--text-sm)}.cooking-search-result small,.cooking-search-result em{color:var(--color-muted);font-size:var(--text-xs);font-style:normal}.cooking-search-result em{flex:0 0 auto;max-width:11rem;overflow-wrap:anywhere;text-align:right}.cooking-selected-product{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-top:var(--space-xs);padding:var(--space-lg);border:1.5px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent-soft)}.cooking-selected-product>div{display:grid;gap:.2rem;min-width:0}.cooking-selected-product small,.cooking-selected-product em{color:var(--color-muted);font-size:var(--text-xs);font-style:normal}.cooking-selected-product strong,.cooking-selected-product span{overflow-wrap:anywhere}.cooking-selected-product .text-button{flex:0 0 auto}.cooking-help{color:var(--color-muted);font-size:var(--text-xs);font-weight:600;line-height:1.4}.cooking-temperature-reading{display:grid;gap:var(--space-sm);padding:var(--space-lg);border:1.5px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.cooking-temperature-reading .specification{margin:0}.cooking-temperature-reading>strong{font-size:var(--text-sm)}.cooking-exception{display:grid;gap:var(--space-lg);padding:var(--space-lg);border:1.5px solid color-mix(in oklch,var(--color-error) 45%,var(--color-rule));border-radius:var(--radius-md);background:color-mix(in oklch,var(--color-error) 6%,var(--color-surface))}.location-card{gap:var(--space-md);padding:var(--space-lg);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-accent-soft)}.location-dot{width:.75rem;height:.75rem;border-radius:50%;background:var(--color-warm)}.location-card div{min-width:0}.location-card strong{font-size:var(--text-sm)}.location-card p{margin:var(--space-xs) 0 0;color:var(--color-muted);font-size:var(--text-xs);line-height:1.4}.record-form label{display:grid;gap:var(--space-sm);font-size:var(--text-sm);font-weight:750}.record-form label>span{margin-top:calc(-1 * var(--space-xs))}.input-row{overflow:hidden;border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface)}.input-row input,textarea{width:100%;border:0;background:transparent;color:var(--color-ink)}.input-row input{min-height:58px;padding:0 var(--space-lg);font-size:var(--text-xl);font-weight:750}.input-row b{padding-right:var(--space-lg);color:var(--color-muted)}.input-row .temperature-negative-prefix{padding:0 0 0 var(--space-lg);font-size:var(--text-xl);color:var(--color-ink)}textarea{padding:var(--space-lg);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);resize:vertical;line-height:1.45}.exception-photo{display:grid;gap:var(--space-sm);padding:var(--space-lg);border:1.5px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-accent-soft)}.exception-photo input{width:100%;color:var(--color-ink)}.exception-photo small{color:var(--color-muted);font-size:var(--text-xs);font-weight:650}.check-select{width:100%;min-height:52px;padding:0 var(--space-md);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink);font-weight:650}.form-error{margin:calc(-1 * var(--space-md)) 0 0;color:var(--color-error);font-size:var(--text-sm);font-weight:700}.specification{margin:calc(-1 * var(--space-md)) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.primary-button{min-height:52px;border:0;border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-paper);font-weight:800;transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.primary-button:hover{opacity:.92}.primary-button:active{transform:translateY(1px)}.primary-button:disabled{opacity:.5}.success-card{padding:var(--space-2xl);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-surface)}.success-card>span{display:grid;width:2.5rem;height:2.5rem;place-items:center;border-radius:50%;background:var(--color-accent-soft);color:var(--color-accent);font-size:var(--text-xl);font-weight:900}.success-card h2{margin:var(--space-lg) 0 var(--space-sm);font-size:var(--text-xl);letter-spacing:-.03em}.success-card p{color:var(--color-muted);font-size:var(--text-sm);line-height:1.5}.success-card .primary-button{width:100%;margin-top:var(--space-lg)}.secondary-page{padding-top:var(--space-3xl)}.secondary-page h1{font-size:clamp(2rem,8vw,3rem)}.page-copy{color:var(--color-muted);line-height:1.5}.empty-state{display:grid;gap:var(--space-sm);margin-top:var(--space-2xl);padding:var(--space-2xl);border:var(--rule) dashed var(--color-rule);border-radius:var(--radius-md);color:var(--color-muted)}.empty-state>span{color:var(--color-accent);font-size:var(--text-2xl)}.empty-state p{margin:0;font-size:var(--text-sm);line-height:1.5}.help-list{display:grid;gap:var(--space-md);margin-top:var(--space-xl)}.help-list>div{gap:var(--space-md);min-height:58px;padding-bottom:var(--space-md);border-bottom:var(--rule) solid var(--color-rule);font-size:var(--text-sm);line-height:1.4}.help-list strong{display:grid;width:1.65rem;height:1.65rem;flex:0 0 auto;place-items:center;border-radius:50%;background:var(--color-accent-soft);color:var(--color-accent)}.help-list>div>span{display:grid;gap:var(--space-2xs);min-width:0}.help-list>div>span b{color:var(--color-ink)}.help-list>div>span small{color:var(--color-muted);font-size:var(--text-xs);line-height:1.45}.help-contact{display:grid;gap:var(--space-xs);margin-top:var(--space-xl)}.help-contact p{margin:0;color:var(--color-muted);font-size:var(--text-sm);line-height:1.5}.connection-note{margin:var(--space-xl) 0 0;padding:var(--space-md);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-ink);font-size:var(--text-sm);line-height:1.4}.profile-card{margin-top:var(--space-xl);overflow:hidden;border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.profile-row{justify-content:space-between;gap:var(--space-lg);min-height:58px;padding:var(--space-md) var(--space-lg);border-bottom:var(--rule) solid var(--color-rule);font-size:var(--text-sm)}.profile-row:last-child{border-bottom:0}.profile-row span{color:var(--color-muted)}.profile-row strong{max-width:60%;text-align:right;overflow-wrap:anywhere}.language-card{align-items:flex-start;justify-content:space-between;gap:var(--space-lg);margin-top:var(--space-xl);padding:var(--space-lg);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.language-card small{display:block;max-width:22ch;margin-top:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs);line-height:1.4}.language-options{display:grid;gap:var(--space-xs)}.language-options button{min-height:36px;padding:0 var(--space-sm);border:var(--rule) solid var(--color-rule);border-radius:.5rem;background:var(--color-surface);color:var(--color-muted);font-size:var(--text-xs);font-weight:750}.language-options button.selected{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-paper)}.history-loading{margin-top:var(--space-2xl);color:var(--color-muted);font-size:var(--text-sm);font-weight:700}.history-date-list{display:grid;gap:var(--space-sm);margin-top:var(--space-xl)}.history-date-group{overflow:hidden;border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.history-date-toggle,.history-card{display:flex;width:100%;justify-content:space-between;gap:var(--space-md);border:0;background:transparent;color:var(--color-ink);text-align:left}.history-date-toggle{align-items:center;min-height:68px;padding:var(--space-lg)}.history-date-toggle strong,.history-date-toggle small{display:block}.history-date-toggle strong{font-size:var(--text-base)}.history-date-toggle small{margin-top:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs)}.history-date-toggle b{color:var(--color-accent);font-size:var(--text-xl)}.history-list{display:grid;gap:0;border-top:var(--rule) solid var(--color-rule)}.history-card{align-items:flex-start;padding:var(--space-lg);border-bottom:var(--rule) solid var(--color-rule)}.history-card:last-child{border-bottom:0}.history-card:active{background:var(--color-accent-soft)}.history-card strong,.history-card small{display:block}.history-card strong{font-size:var(--text-sm);line-height:1.35}.history-card small,.history-card time{margin-top:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs);line-height:1.35}.history-card time{max-width:10ch;text-align:right;font-weight:700}.history-status{margin-bottom:var(--space-xs);color:var(--color-accent);font-size:var(--text-xs);font-weight:850;letter-spacing:.05em;text-transform:uppercase}.history-detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:end;background:color-mix(in oklch,var(--color-ink) 48%,transparent)}.history-detail{width:100%;max-height:min(88dvh,48rem);overflow-y:auto;padding:var(--space-xl);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);box-shadow:0 -1rem 3rem color-mix(in oklch,var(--color-ink) 25%,transparent)}.history-detail header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg)}.history-detail h2{margin:0;font-size:var(--text-xl);line-height:1.2}.history-detail header button{min-height:40px;padding:0 var(--space-sm);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);background:transparent;color:var(--color-ink);font-size:var(--text-xs);font-weight:800}.history-meta{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);margin:var(--space-xl) 0 0}.history-meta div,.history-answers>div{padding:var(--space-md);border-radius:var(--radius-sm);background:var(--color-paper)}.history-meta dt,.history-answers p{margin:0;color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase}.history-meta dd{margin:var(--space-xs) 0 0;overflow-wrap:anywhere;font-size:var(--text-sm);font-weight:750}.history-readonly-note{margin:var(--space-xl) 0 0;padding:var(--space-md);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-ink);font-size:var(--text-sm);line-height:1.45}.history-answers{display:grid;gap:var(--space-sm);margin-top:var(--space-md)}.history-answers strong,.history-answers a{display:block;margin-top:var(--space-xs);overflow-wrap:anywhere;color:var(--color-ink);font-size:var(--text-sm);line-height:1.45}.history-answers a{color:var(--color-accent);font-weight:800}.monitor-company-group{border-color:#c9ddd4}.monitor-company-toggle{background:#eff8f3}.monitor-company-content{background:#fbfdfc}.monitor-department-group{background:#f6faf8;border-bottom:1px solid #d9e8e1}.monitor-department-toggle{background:#f6faf8}.monitor-department-content{background:#fff}.monitor-form-group{background:#fffdf8;border-bottom:1px solid #ece4d3}.monitor-form-toggle{background:#fffdf8}.monitor-person-list{background:#fff}.monitor-person-row{padding-left:calc(var(--space-lg) + var(--space-sm))}.monitor-person-row.monitor-pending{background:#fff8e9}.monitor-person-row.monitor-submitted{background:#f0f9f3}.cooking-record-panel{margin-top:var(--space-xl);overflow:hidden;border:1.5px solid #c9ddd4;border-radius:var(--radius-md);background:var(--color-surface)}.cooking-record-panel>.section-heading{margin:0;padding:var(--space-lg);background:#eff8f3}.cooking-record-list{border-top:var(--rule) solid var(--color-rule)}.cooking-record-row{display:grid;grid-template-columns:2rem minmax(0,1fr);width:100%;gap:var(--space-md);padding:var(--space-lg);border:0;border-bottom:var(--rule) solid var(--color-rule);background:var(--color-surface);color:var(--color-ink);text-align:left}.cooking-record-row:last-child{border-bottom:0}.cooking-record-row:active{background:var(--color-accent-soft)}.cooking-record-index{display:grid;width:1.75rem;height:1.75rem;place-items:center;border-radius:50%;background:var(--color-accent-soft);color:var(--color-accent);font-size:var(--text-sm);font-weight:850}.cooking-record-details{display:grid;gap:var(--space-xs);min-width:0}.cooking-record-time,.cooking-record-product small,.cooking-record-meta{color:var(--color-muted);font-size:var(--text-xs);line-height:1.35}.cooking-record-product{display:grid;gap:.15rem;min-width:0}.cooking-record-product strong{overflow-wrap:anywhere;font-size:var(--text-base);line-height:1.3}.cooking-record-meta{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg)}.cooking-record-meta b,.cooking-record-time b,.cooking-record-product small{font-weight:800}.cooking-record-temperature.needs-review{color:var(--color-error);font-weight:800}.cooking-record-row.needs-review{background:color-mix(in oklch,var(--color-error) 5%,var(--color-surface))}.readonly-submission-form{display:grid;gap:var(--space-xl);margin-top:var(--space-xl)}.readonly-field{position:relative;display:grid;gap:var(--space-sm);padding-bottom:var(--space-xl);border-bottom:var(--rule) solid var(--color-rule)}.readonly-field:last-child{border-bottom:0}.readonly-field h3{margin:0;font-size:var(--text-lg);line-height:1.3}.readonly-field textarea{min-height:4.5rem;color:var(--color-ink);background:var(--color-surface)}.readonly-input{background:var(--color-surface)}.readonly-input input{color:var(--color-ink);font-weight:750}.readonly-actions button{cursor:default;opacity:1}.readonly-actions button:disabled{color:var(--color-muted)}.readonly-actions button.selected.pass:disabled{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent)}.readonly-actions button.selected.issue:disabled{border-color:var(--color-error);background:color-mix(in oklch,var(--color-error) 8%,var(--color-surface));color:var(--color-error)}.readonly-number{display:grid;place-items:center;width:1.75rem;height:1.75rem;margin:0;border-radius:50%;background:var(--color-accent-soft);color:var(--color-accent);font-size:var(--text-sm);font-weight:850}.readonly-declaration{padding:var(--space-xl);border:1.5px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.readonly-declaration p{margin:0;color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase}.readonly-declaration strong{display:block;margin-top:var(--space-sm);font-size:var(--text-lg)}.readonly-extra a{display:block;color:var(--color-accent);font-size:var(--text-sm);font-weight:800}.history-empty-answers{margin:0;color:var(--color-muted);font-size:var(--text-sm)}.update-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:max(var(--space-lg),env(safe-area-inset-top)) var(--space-lg) max(var(--space-lg),env(safe-area-inset-bottom));background:color-mix(in oklch,var(--color-ink) 56%,transparent)}.update-card{width:min(100%,26rem);padding:var(--space-2xl);border:1.5px solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:0 1.5rem 4rem color-mix(in oklch,var(--color-ink) 32%,transparent)}.update-mark{display:grid;width:3rem;height:3rem;place-items:center;margin-bottom:var(--space-xl);border-radius:.9rem;background:var(--color-accent);color:var(--color-accent-ink);font-size:var(--text-xl);font-weight:900}.update-card h2{margin:0 0 var(--space-sm);font-size:var(--text-2xl);letter-spacing:-.04em}.update-card>p:not(.eyebrow){color:var(--color-muted);line-height:1.5}.update-card .primary-button{width:100%;margin-top:var(--space-lg);white-space:nowrap}.login-screen{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:100dvh;padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom))}.login-card{align-self:center;display:grid;gap:var(--space-2xl);width:min(100%,29rem);margin:clamp(2.5rem,9dvh,7rem) auto;padding:clamp(1.5rem,6vw,2.5rem);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:0 1.25rem 3rem color-mix(in oklch,var(--color-ink) 10%,transparent)}.login-intro h1{max-width:14ch;margin-bottom:var(--space-md);font-size:clamp(2.1rem,8vw,3.35rem)}.login-intro>p:last-child{margin:0;max-width:38ch;color:var(--color-muted);line-height:1.55}.login-form{display:grid;gap:var(--space-md)}.login-form label{display:grid;gap:var(--space-xs);color:var(--color-ink);font-size:var(--text-sm);font-weight:750}.login-form input{width:100%;min-height:52px;padding:0 var(--space-md);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);outline:2px solid transparent;outline-offset:1px;background:var(--color-paper);color:var(--color-ink);font-size:var(--text-base);transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}@media(hover:hover)and (pointer:fine){.login-form input:hover{background:var(--color-accent-soft)}.login-form .primary-button:hover{transform:translateY(-1px)}}.login-form input:focus-visible{border-color:var(--color-ink);outline-color:var(--color-focus)}.login-form input[aria-invalid=true]{border-color:var(--color-error);background:color-mix(in oklch,var(--color-error) 6%,var(--color-paper))}.login-helper,.login-error{min-height:2.8lh;margin:0;font-size:var(--text-xs);line-height:1.4}.login-helper{color:var(--color-muted)}.login-error{color:var(--color-error);font-weight:700}.login-form .primary-button{width:100%;min-height:52px;margin-top:var(--space-xs);color:var(--color-accent-ink);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.login-form .primary-button:active{transform:translateY(1px)}.login-form .primary-button:disabled{cursor:wait}.logout-button{width:100%;min-height:48px;margin-top:var(--space-2xl);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);background:transparent;color:var(--color-muted);font-size:var(--text-sm);font-weight:750;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.push-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-top:var(--space-xl);padding:var(--space-lg);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.push-card>div{min-width:0}.push-card small{display:block;max-width:29ch;margin-top:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs);line-height:1.4}.push-button{flex:0 0 auto;min-height:42px;padding:0 var(--space-md);border:0;border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-paper);font-size:var(--text-xs);font-weight:800;white-space:nowrap;transition:transform var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out)}.push-button:hover{transform:translateY(-1px)}.push-button:active{transform:translateY(1px)}.push-button:disabled{cursor:wait;opacity:.55}.push-status{flex:0 0 auto;padding:var(--space-xs) var(--space-sm);border-radius:999px;background:var(--color-accent-soft);color:var(--color-accent);font-size:var(--text-xs);font-weight:800;white-space:nowrap}.push-status.working{background:var(--color-rule);color:var(--color-muted)}.profile-card,.language-card{border:1.5px solid #94a3b8!important}.push-card{border:1.5px solid var(--color-rule)!important}.profile-row{border-bottom:1.5px solid #cbd5e1!important}.language-options button{border:1.5px solid #94a3b8!important}@media(hover:hover)and (pointer:fine){.logout-button:hover{background:var(--color-accent-soft);color:var(--color-ink)}}.logout-button:active{transform:translateY(1px)}@media(max-width:400px){.task-card{padding-inline:var(--space-sm)}.task-due{max-width:5.5rem}.bottom-nav{gap:0}.bottom-nav button{min-width:0;flex:1;padding-inline:var(--space-sm)}.language-card{display:grid}.language-options{grid-template-columns:repeat(3,minmax(0,1fr))}.push-card{align-items:flex-start;flex-direction:column}.push-button,.push-status{align-self:flex-end}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:50ms!important;animation-duration:50ms!important}}.history-scope-controls{display:grid;gap:var(--space-sm);margin:var(--space-xl) 0;padding:var(--space-md);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.history-scope-controls label{display:grid;gap:var(--space-xs);min-width:0;color:var(--color-muted);font-size:var(--text-xs);font-weight:750;letter-spacing:.04em}.history-scope-controls select{width:100%;min-height:44px;padding:0 var(--space-md);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);outline:2px solid transparent;outline-offset:1px;background:var(--color-paper);color:var(--color-ink);font-weight:750}.history-scope-controls select:focus-visible{outline-color:var(--color-focus)}.temperature-history-pair{display:grid;width:100%;gap:var(--space-md);padding:var(--space-lg);border:0;border-bottom:var(--rule) solid var(--color-rule);background:var(--color-surface);color:var(--color-ink);text-align:left;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.temperature-history-pair:last-child{border-bottom:0}.temperature-pair-heading{display:grid;gap:var(--space-xs);min-width:0}.temperature-pair-heading strong{overflow-wrap:anywhere;font-size:var(--text-base)}.temperature-pair-heading small{color:var(--color-muted);font-size:var(--text-xs);line-height:1.35}.temperature-pair-shifts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.temperature-shift-summary{display:grid;gap:.15rem;min-width:0;padding:var(--space-sm);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper)}.temperature-shift-summary b{font-size:var(--text-sm)}.temperature-shift-summary small{overflow-wrap:anywhere;color:var(--color-muted);font-size:var(--text-xs);line-height:1.35}.temperature-shift-summary.is-missing{border-style:dashed;color:var(--color-muted)}.temperature-shift-summary.is-missing b{color:var(--color-muted)}.temperature-history-pair:active{transform:translateY(1px);background:var(--color-accent-soft)}.temperature-history-pair:disabled{cursor:not-allowed;opacity:.55}@media(hover:hover)and (pointer:fine){.temperature-history-pair:hover{transform:translateY(-1px);background:var(--color-accent-soft)}}.temperature-history-detail-grid{display:grid;gap:var(--space-xl);margin-top:var(--space-xl)}.temperature-history-shift{min-width:0;padding:var(--space-lg);border:var(--rule) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-surface)}.temperature-history-shift h3{margin:0;font-size:var(--text-lg)}.temperature-history-shift>div>small{display:block;margin-top:var(--space-xs);color:var(--color-muted);font-size:var(--text-xs)}@media(min-width:40rem){.history-scope-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.temperature-history-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
