:root{--bg:#f4f6f8;--surface:#fff;--ink:#16202e;--muted:#5a6677;--line:#dde2e9;--brand:#0c7a6d;--brand-ink:#fff;--brand-soft:#e2f3f0;--danger:#b3261e;--danger-soft:#fbe9e7;--focus:#1d5fd1;--radius:12px;--radius-small:8px;--tap:48px;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#10161f;--surface:#18212d;--ink:#e9eef5;--muted:#9aa7b8;--line:#2a3646;--brand:#3fc1b0;--brand-ink:#06231f;--brand-soft:#15332f;--danger:#ff8a80;--danger-soft:#3a1c1a;--focus:#8ab4ff}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font);margin:0;font-size:17px;line-height:1.5}h1,h2,p,ul{margin:0}ul{padding:0;list-style:none}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.wordmark{letter-spacing:-.03em;color:var(--brand);font-size:30px;font-weight:800;line-height:1}.wordmark span{color:var(--ink)}.wordmark-small{font-size:22px}.button{min-height:var(--tap);border-radius:var(--radius-small);font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:0 20px;font-weight:600;display:inline-flex}.button:disabled{opacity:.6;cursor:progress}.button-primary{background:var(--brand);width:100%;color:var(--brand-ink)}.button-quiet{border-color:var(--line);color:var(--ink);background:0 0}.login-screen{place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;max-width:400px;padding:32px 28px}.login-title{letter-spacing:-.01em;margin-top:28px;font-size:22px;font-weight:700}.login-help{color:var(--muted);margin-top:20px;font-size:15px}.form{gap:16px;margin-top:20px;display:grid}.field{gap:6px;display:grid}.field label{font-size:15px;font-weight:600}.field input{width:100%;min-height:var(--tap);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-small);font:inherit;padding:0 14px}.field input:focus-visible{outline-offset:0;border-color:var(--focus)}.form-error{color:var(--danger);font-size:15px;font-weight:600}.form-error:empty{display:none}.shell{min-height:100dvh}.topbar{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex}.topbar-user{align-items:center;gap:14px;min-width:0;display:flex}.topbar-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.content{max-width:880px;margin:0 auto;padding:32px 20px 48px}.page-title{letter-spacing:-.02em;font-size:30px;font-weight:800}.section-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:28px;font-size:14px;font-weight:700}.center-list{gap:10px;margin-top:10px;display:grid}.center-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.center-name{font-size:19px;font-weight:700}.role-tag{background:var(--brand-soft);color:var(--brand);border-radius:999px;flex-shrink:0;padding:4px 12px;font-size:14px;font-weight:700}.empty-hint{color:var(--muted);margin-top:24px}.notice{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:24px;padding:16px 18px}.notice-error{background:var(--danger-soft);color:var(--danger);border-color:#0000}@media (max-width:480px){.topbar-email{display:none}}.module-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin-top:10px;display:grid}.module-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-content:start;gap:4px;padding:18px 20px;display:grid}.module-name{font-size:19px;font-weight:700}.module-description{color:var(--muted);font-size:15px}.soon-tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;justify-self:start;margin-top:8px;padding:2px 10px;font-size:13px;font-weight:600}a.wordmark,a.button,a.module-card,a.row,a.tab{text-decoration:none}.button-inline{width:auto}.module-card-link{height:100%;color:var(--ink)}.module-card-link:hover{border-color:var(--brand)}.module-card-link .module-name{color:var(--brand)}.back-link{min-height:var(--tap);color:var(--muted);align-items:center;margin-top:-16px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--ink)}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.status-tag{background:var(--brand-soft);color:var(--brand);border-radius:999px;padding:4px 12px;font-size:14px;font-weight:700}.status-off{border:1px solid var(--line);color:var(--muted);background:0 0}.tabs{gap:8px;margin-top:20px;display:flex}.tab{border:1px solid var(--line);min-height:40px;color:var(--muted);border-radius:999px;align-items:center;padding:0 16px;font-size:15px;font-weight:600;display:inline-flex}.tab[aria-current=page]{background:var(--brand-soft);color:var(--brand);border-color:#0000}.row-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:16px;overflow:hidden}.row-list li+li{border-top:1px solid var(--line)}.row{min-height:56px;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:8px 20px;display:flex}.row:hover{background:var(--brand-soft)}.row:focus-visible{outline-offset:-3px}.row-main{font-weight:600}.row-side{color:var(--muted);flex-shrink:0;font-size:15px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:20px;padding:24px 20px}.panel .form{margin-top:0}.field-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.field-row .field{align-content:start}.field input[aria-invalid=true]{border-color:var(--danger)}.optional{color:var(--muted);font-weight:400}.field-hint{color:var(--muted);font-size:14px}.field-error{color:var(--danger);font-size:14px;font-weight:600}.field-error:empty{display:none}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.form-saved{color:var(--brand);font-size:15px;font-weight:600}.form-saved:empty{display:none}.data-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:0;display:grid}.data-list dt{color:var(--muted);font-size:14px;font-weight:600}.data-list dd{margin:2px 0 0}.meta-line{color:var(--muted);margin-top:12px;font-size:14px}.kind-section{margin-top:8px}.kind-section .row-list{margin-top:10px}.empty-line{color:var(--muted);margin-top:10px}.inline-form{flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-top:12px;display:flex}.inline-form .field{flex:240px}.kind-section .inline-form .field{flex:0 320px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.inline-form .form-error{flex-basis:100%}.panel .inline-form{margin-top:0}.field select{width:100%;min-height:var(--tap);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-small);font:inherit;padding:0 14px}.row-static:hover{background:0 0}.row-link{color:var(--ink);text-decoration:none}.row-link:hover{color:var(--brand);text-decoration:underline}.button-small{min-height:40px;padding:0 14px;font-size:15px}.check{min-height:var(--tap);cursor:pointer;align-items:center;gap:12px;font-weight:600;display:flex}.check input{width:22px;height:22px;accent-color:var(--brand);margin:0}.check input:disabled{cursor:not-allowed}.check .field-hint{font-weight:400}.panel-tight{margin-top:10px;padding:18px 20px}.account-linked{align-items:center}.account-linked .row-main{overflow-wrap:anywhere;flex:200px}.account-note{margin-top:10px}.inline-form .field-hint{flex-basis:100%}.link-button{min-height:var(--tap);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:15px;text-decoration:underline}.link-button:hover{color:var(--ink)}.pin-screen{flex-direction:column;gap:24px;max-width:720px;min-height:100dvh;margin:0 auto;padding:20px 16px 32px;display:flex}.pin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.pin-device{color:var(--muted);font-size:15px}.pin-title{letter-spacing:-.02em;text-align:center;font-size:28px;font-weight:800}.pin-people{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:20px;display:grid}.pin-person{text-align:left;background:var(--surface);width:100%;min-height:88px;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);font:inherit;cursor:pointer;align-content:center;gap:4px;padding:14px 18px;display:grid}.pin-person:hover{border-color:var(--brand)}.pin-person-name{font-size:19px;font-weight:700}.pin-person-group{color:var(--muted);font-size:15px}.pin-entry{justify-items:center;gap:12px;display:grid}.pin-hint{color:var(--muted)}.pin-dots{gap:16px;margin:8px 0;display:flex}.pin-dot{border:2px solid var(--muted);border-radius:50%;width:18px;height:18px}.pin-dot-on{background:var(--brand);border-color:var(--brand)}.pin-error{text-align:center;min-height:1.5em}.pin-error:empty{display:block}.pin-keys{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:340px;display:grid}.pin-key{background:var(--surface);min-height:72px;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);font:inherit;cursor:pointer;font-size:28px;font-weight:700}.pin-key:active{background:var(--brand-soft)}.pin-key-small{color:var(--muted);font-size:16px;font-weight:600}.pin-signout{text-align:center;margin-top:auto}.pin-bar{align-items:center;gap:12px;min-width:0;display:flex}.pin-bar-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.pin-bar-warning{background:var(--danger-soft);color:var(--danger);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:14px;font-weight:700}.pin-status{margin-bottom:12px;font-weight:600}.pin-remove{margin-top:4px}.inline-form .form-saved{flex-basis:100%}.attendance-counts{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 0;display:grid}.attendance-counts div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.attendance-counts dt{color:var(--muted);font-size:14px}.attendance-counts dd{margin:2px 0 0;font-size:26px;font-weight:700}.attendance-who{flex-direction:column;gap:2px;min-width:0;display:flex}.attendance-meta{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.attendance-row .status-tag{flex-shrink:0}.status-absent{background:var(--danger-soft);color:var(--danger)}.attendance-row{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.attendance-who{flex:200px}.mark-buttons{gap:8px;display:flex}.mark-button{min-height:var(--tap);border:1px solid var(--line);min-width:104px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:0 16px;font-size:15px;font-weight:700}.mark-button:disabled{opacity:.6;cursor:progress}.mark-present[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.mark-absent[aria-pressed=true]{background:var(--danger);border-color:var(--danger);color:var(--surface)}.mark-reason{flex-basis:100%;gap:8px;display:grid}.mark-reason label{font-weight:600}.mark-reason input{width:100%;min-height:var(--tap);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-small);font:inherit;padding:0 14px}.mark-reason input:focus-visible{outline-offset:0;border-color:var(--focus)}.mark-reason-actions{flex-wrap:wrap;gap:8px;display:flex}.button-absent{background:var(--danger);color:var(--surface)}.mark-error{flex-basis:100%;margin:0}.rest-present{margin-top:16px}.rest-present-confirm{background:var(--brand-soft);border-radius:var(--radius);padding:16px 18px}.rest-present-question{margin:0 0 12px;font-weight:700}.attendance-history{margin-top:4px;font-size:14px}.attendance-history summary{min-height:32px;color:var(--brand);cursor:pointer;align-items:center;font-weight:600;display:inline-flex}.attendance-history ol{color:var(--muted);gap:4px;margin:4px 0 0;padding-left:20px;display:grid}.history-status{color:var(--brand);font-weight:700}.history-absent{color:var(--danger)}.attendance-history li+li{border-top:0}.task-section .row-list{margin-top:10px}.task-row{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.task-end{flex-direction:column;align-items:flex-end;display:flex}.task-end-question{margin-bottom:8px;font-weight:600}.task-section .panel,.task-history{margin-top:12px}.slot-tabs{flex-wrap:wrap}.slot-tabs .tab{min-height:var(--tap);gap:8px;font-size:17px}.tab-count{background:var(--danger);min-width:24px;color:var(--surface);text-align:center;border-radius:999px;padding:0 7px;font-size:13px;line-height:22px}.task-blocked{opacity:.5;background:var(--bg)}.task-mark{border:1px solid var(--line);color:var(--muted);border-radius:999px;flex-shrink:0;padding:6px 14px;font-size:15px;font-weight:700}.task-mark-done{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.task-mark-not-done{background:var(--danger);border-color:var(--danger);color:var(--surface)}.task-button{min-width:64px;font-size:24px;line-height:1}.message-row{justify-content:stretch;gap:4px;padding-top:12px;padding-bottom:12px;text-decoration:none;display:grid}.message-top{justify-content:space-between;gap:12px;display:flex}.message-from{font-weight:600}.message-when{color:var(--muted);flex-shrink:0;font-size:14px}.message-unread{font-weight:800}.message-preview{color:var(--ink)}.message-status{color:var(--muted);font-size:14px}.message-urgent{box-shadow:inset 4px 0 0 var(--danger);background:var(--danger-soft)}.message-tags{flex-wrap:wrap;gap:6px;display:flex}.message-tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:1px 10px;font-size:13px;font-weight:600}.tag-urgent{background:var(--danger);border-color:var(--danger);color:var(--surface)}.tag-new{background:var(--brand-soft);color:var(--brand);border-color:#0000}.message-head-tags{margin-bottom:8px}.message-subject-link{color:inherit}.message-body{white-space:pre-wrap;overflow-wrap:anywhere}.message-assignee{margin-top:12px;font-weight:600}.message-assignee-open{color:var(--danger)}.message-person .row-side{text-align:right;justify-items:end;display:grid}.message-missing{color:var(--danger);font-weight:600}.message-added{color:var(--muted);font-size:13px;font-weight:400}.message-replies{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.message-reply{margin-top:0;padding:14px 18px}.message-reply-head{flex-wrap:wrap;align-items:center;gap:4px 12px;margin-bottom:4px;display:flex}.module-name{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.module-count,.module-urgent{font-size:13px}.field textarea{background:var(--surface);width:100%;min-height:140px;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-small);font:inherit;resize:vertical;padding:12px 14px;line-height:1.5}.field textarea:focus-visible{outline-offset:0;border-color:var(--focus)}.field textarea[aria-invalid=true],.field select[aria-invalid=true]{border-color:var(--danger)}.compose-group{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.compose-group legend{margin-bottom:6px;padding:0;font-size:15px;font-weight:600}.compose-kinds,.compose-chips{flex-wrap:wrap;gap:10px;display:flex}.compose-choice,.compose-chip{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-small);padding:0 16px}:is(.compose-choice:has(input:checked),.compose-chip:has(input:checked)){border-color:var(--brand);background:var(--brand-soft)}.compose-block{gap:8px;display:grid}.compose-block-title{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:700}.compose-people{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:0 16px;list-style:none}.compose-people li+li{border-top:1px solid var(--line)}.compose-person{padding:4px 0}.compose-person.is-blocked{color:var(--muted);cursor:not-allowed}.compose-summary{background:var(--brand-soft);border-radius:var(--radius-small);gap:4px;padding:14px 16px;display:grid}.compose-skipped{color:var(--danger);font-weight:600}.compose-urgent{align-content:end}.message-read{justify-items:start;gap:4px;margin-top:16px;display:grid}.message-read-button{min-width:180px;font-size:18px}.message-read-done{color:var(--brand);margin-top:12px;font-weight:600}.notice-success{background:var(--brand-soft);color:var(--ink);border-color:#0000}.message-add{margin-top:12px}.message-add-summary{min-height:var(--tap);color:var(--brand);cursor:pointer;align-items:center;font-weight:600;display:inline-flex}.message-add-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:8px;padding:16px}.message-reply-form{margin-top:16px}.pin-person{position:relative}.pin-badge{background:var(--brand);min-width:30px;height:30px;color:var(--surface);border:2px solid var(--surface);border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:15px;font-weight:800;display:inline-flex;position:absolute;top:-8px;right:-8px}.pin-badge-urgent{background:var(--danger)}.message-done-form{border-color:var(--danger);gap:8px;margin-top:16px;display:grid}.message-done-title{color:var(--danger);font-weight:700}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.subject-incidents .message-list{margin-top:10px}.page-intro{color:var(--muted);margin-top:8px}.daily-section{gap:12px;display:grid}.daily-section-title{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0;display:inline-flex}.daily-tools{flex-wrap:wrap;gap:8px;display:flex}.daily-field-list{margin-top:0}.daily-field-list>li{padding:12px 16px}.daily-field-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.daily-field-text{gap:2px;display:grid}.daily-field-text .row-main{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.daily-off .row-main,.daily-off .daily-section-title{color:var(--muted)}.daily-details summary{min-height:var(--tap);color:var(--brand);cursor:pointer;align-items:center;font-weight:600;display:inline-flex}.daily-field-edit{gap:12px;margin-top:8px;display:grid}.daily-field-form{margin-top:8px}.choice-buttons{flex-wrap:wrap;gap:8px;display:flex}.choice-button{min-height:var(--tap);min-width:var(--tap);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-small);font:inherit;cursor:pointer;padding:0 16px;font-weight:600}.choice-button:hover{border-color:var(--brand)}.choice-button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.choice-button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.number-input{align-items:center;gap:8px;display:flex}.number-input input{text-align:center;width:90px;font-size:18px;font-weight:700}.number-step{padding:0;font-size:22px}.number-unit{color:var(--muted)}.subject-usual{margin-top:28px}.usual-panel{gap:20px;display:grid}.usual-group{border:0;gap:14px;margin:0;padding:0;display:grid}.usual-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0;padding:0;font-size:13px;font-weight:700}.usual-field{gap:6px}.usual-list{gap:10px;margin:0;display:grid}.usual-row{grid-template-columns:minmax(140px,1fr) 2fr;gap:4px 16px;display:grid}.usual-row dt{color:var(--muted)}.usual-row dd{margin:0;font-weight:600;display:grid}.usual-meta{color:var(--muted);font-size:13px;font-weight:400}.usual-meta:empty{display:none}.usual-missing{color:var(--muted);font-style:italic;font-weight:400}.usual-history{margin-top:8px;font-size:14px}.usual-history summary{min-height:var(--tap);color:var(--brand);cursor:pointer;align-items:center;font-weight:600;display:inline-flex}.usual-history ol{color:var(--muted);gap:4px;margin:4px 0 0;padding-left:20px;display:grid}.day-nav{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px;display:flex}.day-nav-current{font-weight:700}.count-alert{color:var(--danger)}.daily-done{border-color:var(--brand);background:var(--brand-soft)}.daily-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 16px;display:flex}.daily-row-off .row-main{color:var(--muted)}.daily-state{text-align:right;justify-items:end;font-weight:700;display:grid}.daily-state-meta{color:var(--muted);font-size:13px;font-weight:400}.daily-signed,.daily-ok{color:var(--brand)}.daily-pending,.daily-no{color:var(--danger)}.daily-muted{color:var(--muted);font-weight:400}.daily-medication{gap:8px;display:grid}.daily-medication-link{font-size:14px;font-weight:600}.daily-medication-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.daily-medication-slot{min-width:56px;font-weight:700;display:inline-block}.daily-ok,.daily-no{font-weight:600}.sheet-tools{justify-content:flex-end;display:flex}.sheet-hint{color:var(--muted);flex-wrap:wrap;gap:4px 12px;font-size:13px;display:flex}.sheet-hint:empty{display:none}.sheet-different{border-left:3px solid var(--danger);padding-left:10px}.sheet-different-tag{color:var(--danger);font-weight:600}.closing-state{border-radius:var(--radius-small);margin-top:12px;padding:6px 12px;font-weight:700;display:inline-block}.closing-state-open{background:var(--danger-soft,#fdecec);color:var(--danger)}.closing-state-closed{background:var(--brand-soft);color:var(--brand)}.closing-open-days a{font-weight:600}.closing-counts{margin-top:16px}.closing-group{gap:16px;margin-top:20px;display:grid}.closing-group .section-title{margin:0}.closing-block{gap:6px;display:grid}.closing-block p{margin:0}.closing-subtitle{font-weight:600}.closing-list{gap:4px;margin:0;padding-left:20px;display:grid}.closing-form,.closing-reopen{gap:12px;margin-top:24px;display:grid}.closing-form .section-title{margin:0}.closing-warning{border:2px solid var(--danger);border-radius:var(--radius-small);background:var(--danger-soft,#fdecec);color:var(--danger);gap:8px;padding:12px 16px;display:grid}.closing-warning p{margin:0}.check-line{min-height:var(--tap);color:var(--ink);cursor:pointer;align-items:center;gap:10px;font-weight:600;display:flex}.check-line input{width:22px;height:22px}.closing-reopen summary{min-height:var(--tap);color:var(--brand);cursor:pointer;align-items:center;font-weight:600;display:inline-flex}.report-month{display:inline-block}.report-month:first-letter{text-transform:uppercase}.day-nav .button{width:auto}.report-row-stats{color:var(--muted);font-size:14px}.report-head{gap:4px;display:grid}.report-center{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:13px;font-weight:700}.report-section{margin-top:28px}.report-summary{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:12px 0 0;display:grid}.report-summary div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-small);padding:10px 12px}.report-summary dt{color:var(--muted);font-size:13px}.report-summary dd{margin:2px 0 0;font-size:18px;font-weight:700}.report-note{color:var(--muted);margin:10px 0 0;font-size:13px}.report-table-wrap{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--surface);margin-top:8px;overflow-x:auto}.report-table{border-collapse:collapse;width:100%;font-size:14px}.report-table th,.report-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 10px}.report-table thead th{background:var(--bg,#f4f5f7);color:var(--muted);white-space:nowrap;font-size:12px}.report-table tbody th{white-space:nowrap;font-weight:600}.report-table tfoot th,.report-table tfoot td{color:var(--muted);border-bottom:0;font-size:12px;font-weight:600}.report-unit{font-weight:400}.report-diff{background:var(--danger-soft);color:var(--danger);font-weight:700}.report-absent td,.report-muted{color:var(--muted);font-style:italic}.report-unsigned td,td.report-unsigned{color:var(--danger)}.report-sign{white-space:nowrap}.report-sign span{color:var(--muted)}.report-incident-body{white-space:pre-wrap;color:var(--muted)}@media print{.topbar,.no-print,.back-link{display:none!important}body{background:#fff}.content{max-width:none;padding:0}.report-table-wrap{border-color:#999;overflow:visible}.report-table{font-size:11px}.report-table th,.report-table td{border-color:#bbb;padding:3px 6px}.report-section{break-inside:avoid-page}.report-table tr{break-inside:avoid}.report-diff{-webkit-print-color-adjust:exact;print-color-adjust:exact;text-decoration:underline;color:#000!important;background:#eee!important}}.daily-report-form{border-top:1px dashed var(--line);margin-top:8px;padding-top:12px}.daily-abbreviations{border:0;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin:0;padding:0;display:flex}.daily-abbreviations legend{margin-bottom:6px;font-weight:600}.daily-abbreviation{width:130px}.daily-abbreviation input::placeholder{color:var(--muted)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.grid-head{border-bottom:2px solid var(--ink,#1f2328);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:4px 16px;padding-bottom:8px;display:flex}.grid-head .page-title{margin:0}.grid-head .meta-line{margin:2px 0 0}.grid-head-month{margin:0;font-weight:700}.grid-summary{margin:12px 0 0;font-weight:600}.grid-scroll{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--surface);margin-top:8px;overflow-x:auto}.grid-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:760px;font-size:12px}.grid-table th,.grid-table td{border:1px solid var(--line);text-align:center;vertical-align:middle;overflow-wrap:anywhere;height:26px;padding:2px 1px;overflow:hidden}.grid-table thead th{font-size:11px;font-weight:700;line-height:1.1}.grid-weekday{color:var(--muted);font-weight:400;display:block}.grid-table .grid-corner,.grid-table tbody th{text-align:left;white-space:normal;width:104px;padding:2px 6px;font-weight:600}.grid-table .sum{background:var(--bg,#f4f5f7);white-space:normal;width:84px;padding:2px 4px;font-size:11px;font-weight:700}.grid-table .we{background:#ececec}.grid-table td.absent{color:#555;background:#d9d9d9;font-weight:700}.grid-table td.missing{font-weight:700}.grid-table td.diff{outline-offset:-3px;outline:2px solid #1f2328;font-weight:800}.grid-sign td{font-size:10px;font-weight:600}.q{vertical-align:middle;grid-template-rows:6px 6px;grid-template-columns:6px 6px;gap:1px;display:inline-grid}.q i{background:#fff;border:1px solid #1f2328}.q i.on{background:#1f2328}.dot{vertical-align:middle;border:1.5px solid #1f2328;border-radius:50%;width:10px;height:10px;display:inline-block}.dot.on{background:#1f2328}.grid-list ul,.grid-legend ul{margin:8px 0 0;padding-left:18px;font-size:13px}.grid-list li,.grid-legend li{margin:4px 0}.grid-legend{border-top:1px solid var(--line);margin-top:28px;padding-top:10px}.legend-key{border:1px solid var(--line);text-align:center;vertical-align:middle;min-width:18px;height:18px;padding:0 3px;font-weight:700;line-height:18px;display:inline-block}.legend-key.absent{background:#d9d9d9}.legend-key.diff{outline-offset:-3px;outline:2px solid #1f2328}.legend-key.we{background:#ececec}.legend-fill{white-space:nowrap}@media print{@page{size:A4 landscape;margin:10mm}.grid-scroll{border-color:#999;overflow:visible}.grid-table{min-width:0;font-size:9px}.grid-table th,.grid-table td{border-color:#999;height:20px}.grid-table .grid-corner,.grid-table tbody th{width:90px}.grid-table .sum{width:70px;font-size:9px}.grid-table .we,.grid-table td.absent,.grid-table .sum,.legend-key,.q i.on,.dot.on{-webkit-print-color-adjust:exact;print-color-adjust:exact}.grid-list,.grid-legend{font-size:11px}}.daily-tools .button-small,.slot-toggle .button-small{min-width:48px;min-height:48px}.slot-toggle:has(.rest-present-confirm){flex-basis:100%}.slot-toggle .form-error{margin:8px 0 0}.label-fieldset{border:0;min-width:0;margin:0;padding:0 0 16px}.label-fieldset+.label-fieldset{box-shadow:inset 0 1px 0 var(--line);padding-top:16px}.label-legend{float:left;width:100%;padding:0;font-size:17px;font-weight:700}.label-legend+*{clear:both}.label-example{margin-top:0}.label-fieldset .button-small{min-height:48px}.day-pick{align-items:center;gap:8px;margin-left:auto;display:flex}.day-pick input{min-height:48px}.correct-row{flex-wrap:wrap}.correct-form{flex-basis:100%;gap:12px;display:grid}.correct-open{justify-items:end;display:grid}.correct-open .button-small{min-height:48px}.correct-open .form-saved{margin:0}.correct-row .status-tag{margin-left:8px}.device-buttons .daily-tools{flex-wrap:wrap;justify-content:flex-end}.device-buttons:has(.rest-present-confirm){flex-basis:100%}
