.checkin-page{--ci-ink:#18333d;--ci-accent:#2f6c70;--ci-accent-soft:#dcebea;--ci-warm:#f4eee5;--ci-danger:#a13f36;--ci-shadow:0 16px 46px #20323614;max-width:920px;font-family:var(--font-sans);margin-inline:auto}.checkin-page [hidden]{display:none!important}.checkin-hero{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:30px;display:flex}.checkin-hero h1{color:var(--ci-ink);font-family:var(--font-serif);margin:0;font-size:clamp(2.35rem,7vw,4.7rem);line-height:1.04}.checkin-hero>div>p:last-child{max-width:640px;color:var(--muted);font-family:var(--font-serif);margin:15px 0 0;font-size:1.02rem}.checkin-hero-meta{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:#ffffffad;border-radius:999px;flex:none;padding:10px 14px;font-size:.78rem}.checkin-stack{gap:24px;display:grid}.checkin-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--ci-shadow);border-radius:22px;padding:clamp(22px,4vw,34px)}.checkin-panel-heading{justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:24px;display:flex}.checkin-panel-heading h2,.checkin-panel-heading h3{color:var(--ci-ink);font-family:var(--font-serif);margin:0}.checkin-panel-heading p{color:var(--muted);font-family:var(--font-serif);margin:8px 0 0;font-size:.92rem}.checkin-count{text-align:right}.checkin-count strong{color:var(--ci-ink);font-size:1.55rem;line-height:1;display:block}.checkin-count small{color:var(--muted)}.checkin-progress{color:var(--muted);grid-template-columns:1fr auto;align-items:center;gap:12px;margin:-4px 0 24px;font-size:.8rem;display:grid}.checkin-progress-track{background:var(--soft);border-radius:999px;height:8px;overflow:hidden}.checkin-progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--ci-accent), #4a8e7c);width:0;height:100%;transition:width .18s;display:block}.checkin-list,.checkin-admin-list,.checkin-passkey-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.checkin-item{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:66px;padding:11px 14px;display:grid}.checkin-item.is-done{background:#f4faf8;border-color:#bfd5d1}.checkin-mark{border:1px solid var(--line);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.8rem;display:grid}.is-done .checkin-mark{border-color:var(--ci-accent);background:var(--ci-accent)}.checkin-item-copy{min-width:0}.checkin-item-copy strong,.checkin-item-copy small{display:block}.checkin-item-copy strong{color:var(--ci-ink);font-size:.96rem}.checkin-item-copy small,.checkin-item-status{color:var(--muted);font-size:.78rem}.is-done .checkin-item-copy strong{color:#56706e;text-decoration:line-through}.checkin-empty,.checkin-loading,.checkin-error{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:14px;margin:0;padding:22px}.checkin-error{color:var(--ci-danger);background:#fff8f6;border-color:#deb7b1}.checkin-rest-note{background:var(--ci-warm);color:#735f47;border-radius:12px;margin:0 0 18px;padding:12px 15px;font-size:.88rem}.checkin-history-summary{color:var(--muted);flex-wrap:wrap;gap:10px 24px;margin:0 0 22px;font-size:.88rem;display:flex}.checkin-history-summary strong{color:var(--ci-ink)}.checkin-heatmap-scroll{padding:6px 2px 12px;overflow-x:auto}.checkin-heatmap{grid-template-rows:repeat(7,12px);grid-auto-columns:12px;grid-auto-flow:column;gap:4px;width:max-content;min-width:100%;display:grid}.checkin-cell{background:#ebe7df;border:0;border-radius:3px;width:12px;height:12px}.checkin-cell[data-level="1"]{background:#cfe2df}.checkin-cell[data-level="2"]{background:#94c0b8}.checkin-cell[data-level="3"]{background:#5a968a}.checkin-cell[data-level="4"]{background:#27675e}.checkin-cell[data-status=unrecorded]{background:0 0;box-shadow:inset 0 0 0 1px #d7d1c8}.checkin-cell[data-status=rest]{background:repeating-linear-gradient(135deg,#e4ddd2 0 2px,#f8f5f0 2px 4px)}.checkin-legend{color:var(--muted);justify-content:flex-end;align-items:center;gap:5px;margin-top:10px;font-size:.72rem;display:flex}.checkin-legend i{background:#ebe7df;border-radius:3px;width:11px;height:11px}.checkin-legend i:nth-of-type(2){background:#cfe2df}.checkin-legend i:nth-of-type(3){background:#94c0b8}.checkin-legend i:nth-of-type(4){background:#5a968a}.checkin-legend i:nth-of-type(5){background:#27675e}.checkin-notice{z-index:10;color:#285f58;background:#eff8f5;border:1px solid #bcd3ce;border-radius:12px;margin:0 0 18px;padding:11px 15px;font-size:.86rem;position:sticky;top:16px;box-shadow:0 8px 24px #2146431f}.checkin-notice[data-kind=error]{color:var(--ci-danger);background:#fff7f5;border-color:#deb7b1}.checkin-auth{max-width:620px;margin-inline:auto}.checkin-auth-copy{color:var(--muted);font-family:var(--font-serif);margin:-6px 0 22px}.checkin-auth-options{gap:18px;display:grid}.checkin-auth-divider{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:.74rem;display:grid}.checkin-auth-divider:before,.checkin-auth-divider:after{background:var(--line);content:"";height:1px}.checkin-form,.checkin-inline-form{gap:14px;display:grid}.checkin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.checkin-field{color:var(--ci-ink);gap:6px;font-size:.8rem;font-weight:700;display:grid}.checkin-field input,.checkin-field select,.checkin-field textarea,.checkin-date-input{border:1px solid var(--line);width:100%;min-height:42px;color:var(--text);font:400 .9rem/1.4 var(--font-sans);background:#fff;border-radius:10px;padding:8px 11px}.checkin-field textarea{resize:vertical;min-height:78px}.checkin-field input:focus,.checkin-field select:focus,.checkin-field textarea:focus,.checkin-date-input:focus{border-color:var(--ci-accent);outline:2px solid #2f6c7029}.checkin-field-hint{color:var(--muted);font-size:.74rem;font-weight:400}.checkin-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.checkin-button{border:1px solid var(--ci-accent);background:var(--ci-accent);color:#fff;min-height:40px;font:700 .82rem/1 var(--font-sans);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:7px 15px;display:inline-flex}.checkin-button:hover{filter:brightness(.96)}.checkin-button:disabled{cursor:wait;opacity:.56}.checkin-button.is-secondary{border-color:var(--line);color:var(--ci-ink);background:#fff}.checkin-button.is-danger{color:var(--ci-danger);background:#fff;border-color:#e0beb8}.checkin-button.is-small{min-height:32px;padding:5px 10px;font-size:.74rem}.checkin-toolbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;display:flex}.checkin-toolbar h2{color:var(--ci-ink);font-family:var(--font-serif);margin:0}.checkin-admin-grid{gap:24px;display:grid}.checkin-admin-row,.checkin-passkey-row{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 18px;padding:14px;display:grid}.checkin-admin-row.is-muted{opacity:.62}.checkin-admin-row-copy strong,.checkin-passkey-row strong{color:var(--ci-ink);display:block}.checkin-admin-row-copy span,.checkin-passkey-row span{color:var(--muted);font-size:.78rem;display:block}.checkin-admin-row-meta{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.checkin-chip{background:var(--soft);color:var(--muted);border-radius:999px;padding:2px 7px;font-size:.68rem}.checkin-complete-toggle,.checkin-rest-toggle{color:var(--muted);cursor:pointer;align-items:center;gap:8px;font-size:.8rem;display:inline-flex}.checkin-complete-toggle input,.checkin-rest-toggle input,.checkin-weekdays input{width:17px;height:17px;accent-color:var(--ci-accent)}.checkin-section-divider{background:var(--line);border:0;height:1px;margin:26px 0}.checkin-subheading{color:var(--ci-ink);font-family:var(--font-serif);margin:0 0 14px;font-size:1.08rem}.checkin-weekdays{border:0;flex-wrap:wrap;gap:8px;padding:0;display:flex}.checkin-weekdays legend{color:var(--ci-ink);margin-bottom:7px;font-size:.8rem;font-weight:700}.checkin-weekdays label{color:var(--muted);align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.checkin-security-note{background:var(--ci-warm);color:#675744;font-family:var(--font-serif);border-radius:12px;margin:0 0 20px;padding:14px 16px;font-size:.88rem}.checkin-password-status{color:var(--muted);margin:0 0 14px;font-size:.84rem}.checkin-noscript{color:var(--ci-danger);border:1px solid #deb7b1;border-radius:10px;margin-top:18px;padding:12px;display:block}@media (width<=680px){.checkin-hero,.checkin-panel-heading,.checkin-toolbar{flex-direction:column;align-items:flex-start}.checkin-hero-meta{display:none}.checkin-count{text-align:left}.checkin-form-grid,.checkin-admin-row,.checkin-passkey-row{grid-template-columns:1fr}.checkin-item{grid-template-columns:30px minmax(0,1fr)}.checkin-item-status{display:none}}
