/* White-space check-in panels  Scoped to the dedicated check-in sheet */
.mask:has(> .checkin-sheet){align-items:center;padding:14px}
.sheet.checkin-sheet{position:relative;width:min(100%,560px);max-width:560px;max-height:calc(100dvh - 28px);padding:0;border-radius:27px;border:1px solid #e2e7de;background:#fff;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d2dbce transparent;-webkit-overflow-scrolling:touch}
.checkin-sheet>.sheet-close{position:absolute;right:17px;top:17px;float:none;z-index:2;margin:0;background:#f3f5f0;color:#6d7d6c;width:34px;height:34px;box-shadow:0 0 0 5px #fff}
.checkin-panel{--ci-ink:#27392e;--ci-sub:#7d8c80;--ci-line:#e0e7dc;box-sizing:border-box;position:relative;min-height:620px;padding:43px 42px 31px;text-align:center;color:var(--ci-ink);background:#fff;isolation:isolate;font-variant-numeric:tabular-nums}
.checkin-panel *{box-sizing:border-box}
.checkin-panel .ci-overline{font-size:9px;letter-spacing:.23em;color:var(--ci-sub);margin:5px 22px 12px;font-weight:400;line-height:1.6}
.checkin-panel .ci-title{font-size:24px;font-weight:500;letter-spacing:-.03em;margin:0 0 8px;text-align:center;line-height:1.5}
.checkin-panel .ci-subtitle{font-size:11px;color:var(--ci-sub);margin:0;line-height:1.8;text-align:center}
.checkin-panel .ci-form{text-align:left}
.checkin-panel .ci-label{display:block;font-size:11px;font-weight:400;line-height:1.8;color:var(--ci-sub);margin:21px 0 8px}
.checkin-panel .ci-center{text-align:center}
.checkin-panel .ci-weight-field,.checkin-panel .ci-duration{display:flex;align-items:baseline;justify-content:center;gap:8px;max-width:100%;margin:13px 0 8px}
.checkin-panel .ci-weight-field input,.checkin-panel .ci-duration input{font-family:inherit;appearance:textfield;border:0;border-radius:0;border-bottom:1px solid #dce5d6;background:transparent;min-width:0;line-height:1.2;padding:3px 0 7px;text-align:center;font-size:78px;font-weight:350;letter-spacing:-.065em;width:226px;color:inherit;box-shadow:none;outline-offset:5px}
.checkin-panel .ci-weight-field span,.checkin-panel .ci-duration span{font-size:13px;font-weight:400;color:var(--ci-sub)}
.checkin-panel .ci-weight-field input::placeholder{color:#c3ccc0}
.checkin-panel .ci-ticks{height:18px;margin:7px 28px 10px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 1px),#dbe3d7 calc(10% - 1px),#dbe3d7 10%);mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent)}
.checkin-panel .ci-context{font-size:11px;color:var(--ci-sub);line-height:1.9;min-height:21px;text-align:center;margin:10px 0 22px;text-wrap:balance}
.checkin-panel .ci-workout-context{background:#f7f9f4;border:1px solid #edf0e8;border-radius:10px;padding:10px 13px;margin:12px 0 20px}
.checkin-panel textarea,.checkin-panel .ci-date{display:block;width:100%;max-width:100%;min-width:0;padding:12px 14px;border:1px solid var(--ci-line);border-radius:11px;background:#fafbf8;color:inherit;font-family:inherit;font-size:14px;line-height:1.6;resize:vertical;box-shadow:none}
.checkin-panel textarea{min-height:77px;max-height:180px}
.checkin-panel textarea::placeholder{color:#a0aa9c}
.checkin-panel .ci-date{min-height:45px;appearance:none;text-align:left}
.checkin-panel .ci-date::-webkit-date-and-time-value{text-align:left}
.checkin-panel button{font-family:inherit;touch-action:manipulation;cursor:pointer}
.checkin-panel button:disabled{opacity:.5;cursor:default}
.checkin-panel button:focus-visible,.checkin-panel input:focus-visible,.checkin-panel textarea:focus-visible{outline:2px solid #6f8d70;outline-offset:3px}
.checkin-panel .ci-photos{margin-top:0;gap:9px}
.checkin-panel .ci-photos .addph{height:68px;min-width:68px;border:1px dashed #ccd7c6;border-radius:11px;background:transparent;color:#7f917b;display:grid;place-items:center;font-size:27px;font-weight:300}
.checkin-panel .ci-photos .addph svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.2}
.checkin-panel .ci-photos img{width:68px;height:68px;border-radius:11px;object-fit:cover}
.checkin-panel .ci-actions{display:grid;gap:6px;margin-top:29px}
.checkin-panel .ci-primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:13px 16px;border:1px solid transparent;border-radius:13px;background:#2c3d32;color:#f9fcf6;font-size:13px;line-height:1.6;transition:background .2s,transform .2s}
.checkin-panel .ci-primary:hover{background:#405746}
.checkin-panel .ci-primary:active{transform:scale(.99)}
.checkin-panel .ci-secondary{width:100%;min-height:37px;border:0;background:transparent;color:var(--ci-sub);font-size:11px;line-height:1.6;padding:7px}
.checkin-panel .ci-duration{margin-top:7px;margin-bottom:13px}
.checkin-panel .ci-duration input{width:165px;font-size:69px;padding-bottom:5px}
.checkin-panel .ci-presets{display:flex;justify-content:center;flex-wrap:wrap;gap:7px}
.checkin-panel .ci-presets button{min-width:48px;min-height:34px;padding:6px 10px;border:1px solid var(--ci-line);border-radius:8px;background:transparent;color:var(--ci-sub);font-size:11px}
.checkin-panel .ci-presets button:hover{background:#edf2e8;border-color:#b2c3a9;color:#4c6748}
.checkin-panel .ci-kinds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.checkin-panel .ci-kinds .chip{margin:0;padding:11px 3px;min-height:41px;border:1px solid #dfe6dc;border-radius:9px;background:transparent;font-size:12px;line-height:1.4;text-align:center;white-space:nowrap;color:#697c68}
.checkin-panel .ci-kinds .chip.on{background:#edf2e8;border-color:#b2c3a9;color:#4c6748}
.checkin-panel .ci-emblem{width:56px;height:56px;margin:29px auto 23px;border:1px solid #dee7da;border-radius:50%;display:grid;place-items:center;color:#7d9680}
.checkin-panel .ci-emblem svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.checkin-panel .ci-metric-wrap{margin:24px 0 20px}
.checkin-panel .ci-metric-caption{font-size:11px;color:var(--ci-sub);margin-bottom:5px;line-height:1.8}
.checkin-panel .ci-metric{display:flex;align-items:baseline;justify-content:center;gap:9px;font-size:87px;line-height:1.2;letter-spacing:-.065em;font-weight:350;white-space:nowrap}
.checkin-panel .ci-metric small{font-size:14px;font-weight:400;letter-spacing:0;color:var(--ci-sub)}
.checkin-panel .ci-metric.ci-days{font-family:Georgia,'Times New Roman',serif;font-size:104px;font-weight:400}
.checkin-panel .ci-days small{font-family:system-ui,sans-serif;font-size:14px}
.checkin-panel .ci-delta{font-size:13px;color:#6f8474;line-height:1.9;margin:12px 0 0}
.checkin-panel .ci-delta.ci-neutral{color:#8c8173}
.checkin-panel .ci-reference{font-size:10px;line-height:1.8;color:#94a18f;margin:6px 0 0}
.checkin-panel .ci-rule{width:31px;height:1px;background:#bcc9b9;margin:27px auto 24px}
.checkin-panel .ci-encouragement{font-size:21px;font-weight:400;letter-spacing:.01em;line-height:1.65;margin:0;text-align:center;text-wrap:balance}
.checkin-panel .ci-encouragement small{display:block;font-size:12px;font-weight:400;color:var(--ci-sub);line-height:1.95;letter-spacing:0;margin-top:9px}
.checkin-panel .ci-result-note{font-size:10px;color:var(--ci-sub);line-height:1.8;text-align:center;margin:21px 0 0}
.checkin-panel .ci-day-dots{display:flex;justify-content:center;gap:13px;margin:25px 0 0}
.checkin-panel .ci-day-dots i{height:7px;width:7px;border:1px solid #c9d5c3;border-radius:50%;background:transparent}
.checkin-panel .ci-day-dots i.on{border-color:#7d9772;background:#7d9772}
.checkin-panel .ci-progress-track{height:3px;max-width:184px;background:#e8eee1;border-radius:3px;margin:23px auto 0;overflow:hidden}
.checkin-panel .ci-progress-track i{display:block;height:100%;background:#8aa57e}
.checkin-panel.ci-result .ci-actions{margin-top:31px}
.checkin-panel.ci-entering .ci-metric,.checkin-panel.ci-entering .ci-encouragement,.checkin-panel.ci-entering .ci-emblem{animation:ci-quiet-enter .65s cubic-bezier(.2,.65,.25,1) both}
.checkin-panel.ci-entering .ci-encouragement{animation-delay:.1s}
.ci-celebration{position:fixed;inset:0;z-index:80;pointer-events:none;overflow:hidden}
.ci-celebration canvas{display:block;width:100%;height:100%;pointer-events:none}
@keyframes ci-quiet-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:760px){.mask:has(> .checkin-sheet){align-items:center;padding:10px}.sheet.checkin-sheet{width:100%;max-width:520px;max-height:calc(100dvh - 20px);border-radius:25px;padding:0}.checkin-panel{min-height:min(650px,calc(100dvh - 20px));padding:41px 27px calc(25px + env(safe-area-inset-bottom))}.checkin-panel .ci-title{font-size:23px}.checkin-panel .ci-weight-field input{font-size:74px;width:218px}.checkin-panel textarea,.checkin-panel .ci-date{font-size:16px}.checkin-panel .ci-kinds{gap:6px}.checkin-panel .ci-kinds .chip{font-size:11px}.checkin-panel .ci-metric{font-size:81px}.checkin-panel .ci-metric.ci-days{font-size:99px}.checkin-panel .ci-encouragement{font-size:20px}.checkin-panel .ci-encouragement small{font-size:11px}.checkin-panel .ci-emblem{margin-top:30px}.checkin-panel .ci-presets{gap:6px}.checkin-panel .ci-presets button{min-width:45px}}
@media(max-width:360px){.checkin-panel{padding-left:20px;padding-right:20px}.checkin-panel .ci-title{font-size:21px}.checkin-panel .ci-weight-field input{width:185px;font-size:67px}.checkin-panel .ci-encouragement{font-size:18px}.checkin-panel .ci-metric{font-size:74px}.checkin-panel .ci-kinds .chip{font-size:10px}.checkin-panel .ci-presets button{min-width:41px;padding-left:8px;padding-right:8px}}
@media(prefers-reduced-motion:reduce){.checkin-panel,.checkin-panel *{animation:none!important;transition:none!important}.ci-celebration{display:none}}
