:root{--bg:#f3f5f2;--surface:#ffffff;--surface-2:#e8ece6;--fg:#1f2a24;--muted:#5d6b63;--line:#cfd8d1;--accent:#2f6f5e;--accent-fg:#ffffff;--accent-soft:#dcebe5;--warn:#a4561a;--warn-soft:#f6e7d9;--night:#33406b;--night-soft:#e2e6f3;--paper:#ffffff;--paper-ink:#111111;--f-display:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;--f-body:"Noto Sans JP","Hiragino Sans","Yu Gothic",system-ui,sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141a17;--surface:#1d2521;--surface-2:#26302b;--fg:#e4ebe6;--muted:#9aa9a0;--line:#34413a;--accent:#6fbfa5;--accent-fg:#0f1a15;--accent-soft:#23392f;--warn:#e7a26a;--warn-soft:#3a2a1c;--night:#9fb0e6;--night-soft:#252c44;--paper:#fbfbf8;--paper-ink:#111111;color-scheme:dark}}:root[data-theme=dark]{--bg:#141a17;--surface:#1d2521;--surface-2:#26302b;--fg:#e4ebe6;--muted:#9aa9a0;--line:#34413a;--accent:#6fbfa5;--accent-fg:#0f1a15;--accent-soft:#23392f;--warn:#e7a26a;--warn-soft:#3a2a1c;--night:#9fb0e6;--night-soft:#252c44;--paper:#fbfbf8;--paper-ink:#111111;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.6;margin:0}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{max-width:760px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--surface);border-bottom:1px solid var(--line)}header.top .wrap{padding-block:10px;display:flex;flex-direction:column;gap:8px}.brand{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.brand h1{font-family:var(--f-display);font-size:18px;margin:0;letter-spacing:.02em}.sample{font-size:11px;background:var(--warn-soft);color:var(--warn);padding:2px 8px;border-radius:999px;font-weight:700;letter-spacing:.05em}.controls{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:6px}.controls label{display:flex;flex-direction:column;font-size:11px;color:var(--muted);gap:2px;min-width:0}.controls select,.controls .datebox{height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:0 8px;min-width:0;width:100%}.datebox{display:flex;align-items:center;justify-content:space-between;padding:0 2px!important}.datebox button{border:0;background:none;width:30px;height:32px;font-size:16px;color:var(--accent)}.datebox span{font-variant-numeric:tabular-nums;font-size:14px;white-space:nowrap}main .wrap{padding-block:14px 80px;display:flex;flex-direction:column;gap:14px}.sec-title{font-family:var(--f-display);font-size:13px;color:var(--muted);letter-spacing:.08em;margin:4px 0 0}.res-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.res-card{display:flex;flex-direction:column;gap:6px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.res-card:hover{border-color:var(--accent)}.res-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.res-name{font-weight:700;font-size:16px}.res-room{font-size:12px;color:var(--muted)}.stats{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:12px;padding:1px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-variant-numeric:tabular-nums}.chip.ok{background:var(--accent-soft);color:var(--accent)}.chip.todo{background:var(--warn-soft);color:var(--warn)}.last{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.back{display:flex;align-items:center;gap:10px}.back button{border:1px solid var(--line);background:var(--surface);border-radius:8px;height:34px;padding:0 12px}.back h2{font-family:var(--f-display);font-size:19px;margin:0}.tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);margin:0 -4px;padding:0 4px}.tabs button{flex:0 0 auto;border:0;background:none;padding:8px 12px;border-bottom:3px solid transparent;color:var(--muted);font-weight:500}.tabs button[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent);font-weight:700}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}.vitals{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.field{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);min-width:0}.field .in{display:flex;align-items:center;gap:4px}.field input{height:40px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:0 8px;width:100%;min-width:0;font-size:16px;color:var(--fg);font-variant-numeric:tabular-nums}.field .unit{font-size:12px;color:var(--muted);flex:0 0 auto}.items{display:flex;flex-direction:column}.item{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.item:first-child{border-top:0}.item .tick{width:26px;height:26px;border-radius:7px;border:2px solid var(--line);background:var(--bg);display:grid;place-items:center;font-size:15px;color:transparent;padding:0}.item.on .tick{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.item .name{font-weight:500}.item .opts{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.item:not(.on) .opts{opacity:.45}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{border:0;background:var(--bg);padding:3px 12px;font-size:13px;min-width:40px}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true]{background:var(--accent);color:var(--accent-fg);font-weight:700}.opt{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:2px 10px;font-size:13px}.opt[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:700}.opts input[type=time]{height:30px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:0 6px;font-size:14px}.timeline{display:flex;flex-direction:column;gap:0}.entry{display:grid;grid-template-columns:56px 1fr;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.entry:first-child{border-top:0}.entry .t{font-variant-numeric:tabular-nums;font-weight:700;color:var(--accent)}.entry.night .t{color:var(--night)}.entry .body{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.entry .meta{font-size:12px;color:var(--muted);display:flex;gap:10px;margin-top:2px;align-items:center}.entry .meta button{border:0;background:none;color:var(--muted);text-decoration:underline;padding:0;font-size:12px}.empty{color:var(--muted);font-size:14px;padding:6px 0}.composer{position:sticky;bottom:0;background:var(--surface);border:1px solid var(--accent);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px;box-shadow:0 -4px 18px #00000014;margin-bottom:env(safe-area-inset-bottom,0px)}.composer .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.composer input[type=time]{height:36px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:0 6px}.composer textarea{width:100%;min-height:76px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:8px;resize:vertical;font-size:16px}.composer .hint{font-size:12px;color:var(--muted);flex:1;min-width:140px}.btn{height:36px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-fg);padding:0 16px;font-weight:700}.btn.ghost{background:var(--surface);color:var(--accent)}.night-grid-wrap{overflow-x:auto}table.ng{border-collapse:collapse;width:100%;min-width:520px;font-variant-numeric:tabular-nums}table.ng th,table.ng td{border:1px solid var(--line);text-align:center;padding:0;font-size:12px}table.ng th{background:var(--night-soft);color:var(--night);padding:4px 2px;font-weight:700}table.ng td button{width:100%;height:34px;border:0;background:none;font-size:15px;color:var(--night)}table.ng td button.on{background:var(--night);color:var(--surface)}table.ng th.rowh{text-align:left;padding-left:8px;width:54px}.care{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.paper-wrap{overflow-x:auto;background:var(--surface-2);border-radius:12px;padding:12px}.note{font-size:13px;color:var(--muted)}.master-group{display:flex;flex-direction:column;gap:6px}.master-row{display:flex;gap:8px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:8px 0;flex-wrap:wrap}.master-row:first-of-type{border-top:0}.master-row .tags{display:flex;gap:4px;flex-wrap:wrap}.master-row button{border:0;background:none;color:var(--warn);font-size:13px;text-decoration:underline}.add-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.add-row input,.add-row select{height:36px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:0 8px;min-width:0}.add-row .wide{grid-column:1/-1}.footer-nav{display:flex;gap:8px;flex-wrap:wrap}.center{min-height:100vh;display:flex;flex-direction:column;justify-content:center;gap:12px;padding-block:24px}.login{max-width:380px;width:100%;margin:0 auto}.login h1{font-family:var(--f-display);font-size:20px;margin:0}.page{padding-block:14px 80px;display:flex;flex-direction:column;gap:14px}.error{color:var(--warn);background:var(--warn-soft);padding:8px 12px;border-radius:8px;margin:0;font-size:14px}.link{border:0;background:none;color:var(--muted);text-decoration:underline;font-size:13px}.staffname{height:36px;display:flex;align-items:center;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.controls select{height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:0 8px;min-width:0;width:100%}.row.end{justify-content:flex-end}.btn:disabled{opacity:.5}.btn.ghost{align-self:flex-start}.inline{display:flex;align-items:center;gap:6px;font-size:14px}.inline input{width:64px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:0 6px}.sec-title{margin:0}.field .in input{flex:1}.print-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.paper{box-sizing:border-box;background:#fff;color:#111;width:760px;height:1090px;overflow:hidden;padding:18px 20px;font-size:10.5px;line-height:1.45;font-family:var(--f-body)}.paper .pdate{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:4px}.paper .pdate b{border-bottom:1px solid #111;padding:0 6px;font-weight:500}.paper table{border-collapse:collapse;width:100%}.paper td,.paper th{border:1px solid #111;vertical-align:top;padding:2px 4px}.paper th{font-weight:500;background:#f2f2f2}.paper .per{width:20px;max-width:20px;text-align:center;vertical-align:middle;word-break:break-all;line-height:1.3;padding:2px}.paper .chk{white-space:nowrap}.paper .ci{font-family:monospace}.paper .circ{border:1px solid #111;border-radius:50%;padding:0 2px}.paper .nt{width:40px;white-space:nowrap;text-align:center}.paper .nb{white-space:pre-wrap;overflow-wrap:anywhere}.paper .sig{width:52px;font-size:9.5px;text-align:center}.paper .notes-cell{padding:0}.paper .notes-cell table td{border-width:0 0 1px 0;border-style:dotted;border-color:#999}.paper .notes-cell table td+td{border-left:1px solid #111}.paper .night{margin-top:4px}.paper .nightg td{text-align:center;padding:1px}.paper .lbl{color:#555}.paper .care-line{padding:3px 4px;border-bottom:1px solid #111}.paper .pno{display:flex;gap:12px;align-items:baseline}.paper .cont-note{text-align:right;font-size:9.5px;margin-top:3px}.paper-measure{position:absolute;left:-10000px;top:0;visibility:hidden;pointer-events:none}.paper-measure .paper{height:auto}.paper .cont td{border-width:0 1px 1px 1px;border-bottom-style:dotted;border-bottom-color:#999}.paper .cont .divider td{background:#f2f2f2;border-bottom:1px solid #111;border-top:1px solid #111;padding-left:6px}.paper+.paper{margin-top:16px}@media print{@page{size:A4;margin:4mm}body{background:#fff!important}body *:not(:has(.paper)):not(.paper):not(.paper *){display:none!important}body *:has(.paper){margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;overflow:visible!important;max-width:none!important}.paper-measure{display:none!important}.paper{margin:0 auto;break-after:page}.paper:last-child{break-after:auto}.paper+.paper{margin-top:0}}
