/* 本番版で足した見た目 */
.brand img{height:30px;width:auto;display:block}
.side-head .brand img{height:34px}
.login .logo{text-align:center;display:grid;gap:6px;justify-items:center}
.login .logo .plate{background:var(--brand);border-radius:22px;padding:18px 26px;display:inline-block}
.login .logo .plate img{height:64px;width:auto;display:block}
.login .logo small{color:var(--ink-2);letter-spacing:.12em;font-size:.8rem}
.consent-box{max-height:46dvh;overflow-y:auto;overscroll-behavior:contain;background:#FBFAF7;border:1px solid var(--line);border-radius:12px;padding:12px 14px;white-space:pre-wrap;font-size:.92rem}
/* 便の記録：押して選ぶタイル */
.pick{display:grid;gap:8px;border:0;margin:0;padding:0;min-width:0}
.pick legend{font-weight:700;display:flex;align-items:center;gap:8px;margin-bottom:6px;padding:0}
.pick.c4{grid-template-columns:repeat(4,1fr)}
.pick.c3{grid-template-columns:repeat(3,1fr)}
.pick.c5{grid-template-columns:repeat(5,1fr)}
@media (max-width:420px){.pick.c5{grid-template-columns:repeat(3,1fr)}}
.pick label{position:relative;display:grid;justify-items:center;align-content:start;gap:4px;padding:10px 4px 8px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;font-size:.78rem;line-height:1.3;text-align:center;--stool-fill:#E5E1D9;--stool-line:#B8B1A6;color:var(--ink-2)}
.pick input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pick label:has(input:checked){border-color:var(--accent);background:var(--atint,#F2ECE6);box-shadow:0 0 0 2px var(--accent) inset;color:var(--accent);font-weight:700;--stool-fill:#E8C46A;--stool-line:#8C715F}
.pick label:has(input:focus-visible){outline:3px solid rgba(95,138,142,.35);outline-offset:2px}
.pick .dot{width:34px;height:34px;border-radius:50%;border:2px solid rgba(0,0,0,.1);display:block}
.help{width:26px;height:26px;border-radius:50%;border:0;background:#E5E1D9;color:#fff;font-weight:700;cursor:pointer;font-size:.85rem}
.stool-list{display:grid;gap:8px}
.stool-item{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px 12px}
.stool-item .t{font-variant-numeric:tabular-nums;color:var(--ink-2);min-width:3.2em}
/* 食事 */
.meal{display:grid;gap:8px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#FBFAF7}
.meal h4{margin:0;font-size:.95rem}
.meal img{max-width:100%;border-radius:10px;display:block;max-height:240px;object-fit:cover}
.meal .row .btn{flex:1 1 auto}
/* 水分の棒 */
.bar{height:10px;background:var(--line);border-radius:5px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--brand);border-radius:5px}
/* コメントのやりとり */
.thread{display:grid;gap:10px}
.msg{max-width:86%;padding:10px 14px;border-radius:16px;font-size:.95rem;white-space:pre-wrap;word-break:break-word}
.msg .meta{display:block;font-size:.72rem;color:var(--ink-2);margin-bottom:2px}
.msg.staff{background:var(--brand-tint);border-radius:4px 16px 16px 16px;justify-self:start}
.msg.cust{background:var(--accent-tint);border-radius:16px 4px 16px 16px;justify-self:end}
.reply{display:grid;gap:8px;margin-top:12px}
/* 動画 */
.video{position:relative;width:100%;max-width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.qr{display:grid;justify-items:center;gap:8px}
.qr img,.qr svg{width:180px;height:180px;image-rendering:pixelated}
.copy{display:flex;gap:8px;align-items:center}
.copy input{flex:1;min-width:0}
.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.checks label{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}
.checks label:has(input:checked){border-color:var(--brand);background:var(--brand-tint)}
.checks label:has(input:disabled){opacity:.6;cursor:not-allowed}
.checks input{width:18px;height:18px;accent-color:var(--brand)}
.stool-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;font-size:.72rem;text-align:center}
.stool-cal div{min-height:44px;border:1px solid var(--line);border-radius:8px;padding:2px;background:var(--surface)}
.stool-cal i{display:inline-block;width:10px;height:10px;border-radius:50%;margin:1px;border:1px solid rgba(0,0,0,.12)}
.warn-dot{outline:2px solid var(--warn);outline-offset:1px}
.pw-wrap{position:relative}
.pw-wrap button{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:1rem;cursor:pointer;padding:8px}
.install img{max-width:100%}
.list-item .tag.warn{white-space:nowrap}
