/* pledge_checkin */
.pledge-checkin-compose{display:block;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);overflow:hidden}.topic-form-panel .pledge-checkin-compose>details{margin:0;padding:0;border:0;border-radius:0;background:var(--panel)}.topic-form-panel .pledge-checkin-compose>details>summary{box-sizing:border-box;width:100%;min-height:48px;padding:0 14px}.pledge-checkin-compose details summary{display:flex;align-items:center;gap:8px;color:var(--text);font-size:var(--font-size-md);font-weight:600;cursor:pointer;list-style:none}.pledge-checkin-compose details summary::-webkit-details-marker{display:none}.pledge-checkin-compose-body{display:grid;gap:9px;margin:0;padding:14px}.pledge-checkin-toggle{display:inline-flex;align-items:center;gap:7px;color:var(--text);font-size:var(--font-size-md);font-weight:600;cursor:pointer}.pledge-checkin-toggle input{flex:0 0 38px;width:38px;height:22px;margin:0}.pledge-checkin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px}.pledge-checkin-field{display:grid;gap:5px;color:var(--text-muted);font-size:var(--font-size-sm)}.pledge-checkin-field input{height:34px;padding:0 9px;border-color:var(--line);background:var(--panel);font-size:var(--font-size-sm)}.pledge-checkin-field input:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring)}.pledge-checkin-compose small{color:var(--text-subtle);font-size:var(--font-size-xs);line-height:1.5}.pledge-checkin-prefix{display:inline-flex;align-items:center;gap:3px;margin-right:7px;font-size:var(--font-size-xs);font-weight:700;vertical-align:1px;white-space:nowrap}.pledge-checkin-prefix-emoji{font-size:var(--font-size-xs);line-height:1}.pledge-checkin-prefix.st-signup{color:var(--info)}.pledge-checkin-prefix.st-active{color:var(--brand)}.pledge-checkin-prefix.st-completed{color:var(--success)}.pledge-checkin-prefix.st-failed{color:var(--danger)}.pledge-checkin-prefix.st-cancelled{color:var(--text-muted)}.pledge-checkin-list-progress{display:flex;align-items:center;gap:8px;margin-top:2px}.pledge-checkin-list-track{flex:0 1 160px;min-width:60px;height:5px;background:var(--line);border-radius:999px;overflow:hidden}.pledge-checkin-list-track i{display:block;height:100%;border-radius:999px;background:var(--brand)}.pledge-checkin-list-progress em{font-style:normal;color:var(--text-subtle);font-size:var(--font-size-xs);white-space:nowrap;font-variant-numeric:tabular-nums}.pledge-checkin-list-progress em.pledge-checkin-list-pool{color:var(--warning);font-weight:700}.pledge-checkin-list-ops{display:flex;align-items:center;gap:8px;margin-bottom:6px}.pledge-checkin-list-ops .pledge-checkin-quick-btn{min-height:26px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--inverse-text);font-size:var(--font-size-xs);font-weight:600;line-height:1;cursor:pointer;transition:var(--transition-normal)}.pledge-checkin-list-ops .pledge-checkin-quick-btn:hover{background:var(--brand-hover)}.pledge-checkin-list-ops .pledge-checkin-quick-btn:active{transform:translateY(1px)}.pledge-checkin-list-ops .pledge-checkin-quick-btn:focus-visible{box-shadow:0 0 0 2px var(--focus-ring);outline:0}.pledge-checkin-list-ops .pledge-checkin-quick-btn[disabled]{background:var(--line-soft);color:var(--text-muted);cursor:not-allowed;transform:none}.pledge-checkin-card{margin:0 0 12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.pledge-checkin-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pledge-checkin-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--brand);font-size:var(--font-size-xs);font-weight:700}.pledge-checkin-kicker svg{width:14px;height:14px}.pledge-checkin-status{display:inline-flex;align-items:center;min-height:22px;padding:0 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:var(--font-size-xxs);font-weight:700;white-space:nowrap}.pledge-checkin-status.st-signup{background:var(--info-soft);color:var(--info)}.pledge-checkin-status.st-completed{background:var(--success-soft);color:var(--success)}.pledge-checkin-status.st-failed{background:var(--danger-soft);color:var(--danger)}.pledge-checkin-status.st-cancelled{background:var(--line-soft);color:var(--text-muted)}.pledge-checkin-owner{display:flex;align-items:center;gap:9px;margin:10px 0 0}.pledge-checkin-owner .avatar-profile-link{display:block;flex:0 0 auto;width:32px;height:32px;border-radius:50%}.pledge-checkin-owner-info{display:flex;align-items:baseline;gap:8px;min-width:0;flex-wrap:wrap}.pledge-checkin-owner-info a{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:var(--font-size-md);font-weight:600}.pledge-checkin-owner-info a:hover{color:var(--brand)}.pledge-checkin-owner-info em{font-style:normal;color:var(--text-muted);font-size:var(--font-size-xs)}.pledge-checkin-progress{display:flex;align-items:center;gap:10px;margin:10px 0 0}.pledge-checkin-track{flex:1;min-width:0;height:8px;background:var(--line);border-radius:999px;overflow:hidden}.pledge-checkin-track i{display:block;height:100%;border-radius:999px;background:var(--brand);transition:width .3s ease}.pledge-checkin-progress b{color:var(--brand);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;white-space:nowrap}.pledge-checkin-pool{display:flex;align-items:baseline;gap:5px;margin:10px 0 0;padding:9px 12px;border-radius:var(--radius-sm);background:var(--brand-soft)}.pledge-checkin-pool span{color:var(--brand);font-size:var(--font-size-sm);font-weight:700}.pledge-checkin-pool b{color:var(--brand);font-size:var(--font-size-xl);font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.pledge-checkin-pool em{font-style:normal;color:var(--brand);font-size:var(--font-size-sm);font-weight:600}.pledge-checkin-pool i{margin-left:auto;font-style:normal;color:var(--text-muted);font-size:var(--font-size-xs)}.pledge-checkin-pool.is-bonus{background:var(--warning-soft)}.pledge-checkin-pool.is-bonus span,.pledge-checkin-pool.is-bonus b,.pledge-checkin-pool.is-bonus em{color:var(--warning)}.pledge-checkin-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:7px 14px;margin:10px 0 0}.pledge-checkin-facts span{display:flex;align-items:baseline;gap:6px;min-width:0;font-size:var(--font-size-sm)}.pledge-checkin-facts em{flex:0 0 auto;font-style:normal;color:var(--text-subtle);font-size:var(--font-size-xs)}.pledge-checkin-facts b{min-width:0;color:var(--text);font-weight:600;white-space:nowrap}.pledge-checkin-rules{margin:10px 0 0}.pledge-checkin-rules-head{margin-bottom:4px;color:var(--text);font-size:var(--font-size-xs);font-weight:700}.pledge-checkin-rules-list{display:grid;gap:5px;margin:0;padding:0;list-style:none}.pledge-checkin-rules-list li{color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.55}.pledge-checkin-rules-list b{color:var(--text);font-weight:600}.pledge-checkin-note{margin:9px 0 0;color:var(--text-muted);font-size:var(--font-size-sm);line-height:1.55}.pledge-checkin-note.ok{color:var(--success)}.pledge-checkin-note.bad{color:var(--danger)}.pledge-checkin-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 0}.pledge-checkin-pop{display:contents}.pledge-checkin-guarantee{display:flex;gap:8px;flex:1 1 260px;min-width:0}.pledge-checkin-amount{flex:1;min-width:0;height:34px;padding:0 9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--font-size-sm)}.pledge-checkin-amount:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring);outline:0}.pledge-checkin-card button{min-height:32px;padding:0 12px;border:0;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:var(--transition-normal)}.pledge-checkin-guarantee button,.pledge-checkin-checkin-open{background:var(--brand);color:var(--inverse-text)}.pledge-checkin-guarantee button:hover,.pledge-checkin-checkin-open:hover{background:var(--brand-hover)}.pledge-checkin-ghost-btn{background:var(--line);color:var(--text-muted)}.pledge-checkin-ghost-btn:hover{color:var(--text)}.pledge-checkin-card button:active{transform:translateY(1px)}.pledge-checkin-card button:focus-visible{box-shadow:0 0 0 2px var(--focus-ring);outline:0}.pledge-checkin-login{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:var(--radius-sm);background:var(--brand);color:var(--inverse-text);font-size:var(--font-size-sm);font-weight:600}.pledge-checkin-login:hover{background:var(--brand-hover);color:var(--inverse-text)}.pledge-checkin-guarantors{margin:10px 0 0;padding-top:9px;border-top:1px solid var(--line-soft)}.pledge-checkin-guarantors-head{margin-bottom:7px;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:600}.pledge-checkin-guarantor-list,.pledge-checkin-member-list{display:grid;gap:6px}.pledge-checkin-guarantor-item{display:flex;align-items:center;gap:9px;min-width:0;padding:6px 10px;border-radius:var(--radius-sm);background:var(--bg)}.pledge-checkin-member-item{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px;min-width:0;padding:6px 10px;border-radius:var(--radius-sm);background:var(--bg)}.pledge-checkin-guarantor-item .avatar-profile-link,.pledge-checkin-member-item .avatar-profile-link{display:block;flex:0 0 auto;width:22px;height:22px;border-radius:50%}.pledge-checkin-guarantor-info,.pledge-checkin-member-info{display:flex;align-items:baseline;gap:7px;min-width:0;flex:1}.pledge-checkin-guarantor-info a,.pledge-checkin-member-info a{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:var(--font-size-sm)}.pledge-checkin-guarantor-info a:hover,.pledge-checkin-member-info a:hover{color:var(--brand)}.pledge-checkin-guarantor-info em,.pledge-checkin-member-info em{font-style:normal;color:var(--text-subtle);font-size:var(--font-size-xs)}.pledge-checkin-member-progress{flex:0 0 auto;color:var(--text-muted);font-size:var(--font-size-xs);white-space:nowrap;font-variant-numeric:tabular-nums}.pledge-checkin-member-state{flex:0 0 auto;min-width:46px;text-align:right;color:var(--text-subtle);font-size:var(--font-size-xs);white-space:nowrap}.pledge-checkin-member-state.ok{color:var(--success)}.pledge-checkin-member-state.bad{color:var(--danger)}.pledge-checkin-guarantor-amount,.pledge-checkin-member-amount{color:var(--text-muted);font-size:var(--font-size-xs);white-space:nowrap;font-variant-numeric:tabular-nums}.pledge-checkin-guarantor-amount b,.pledge-checkin-member-amount b{color:var(--brand);font-size:var(--font-size-sm)}.pledge-checkin-modal-form{display:grid;gap:8px;min-width:260px;max-width:100%}.pledge-checkin-modal-form textarea,.pledge-checkin-modal-form input{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);font-size:var(--font-size-sm);line-height:1.5}.pledge-checkin-modal-form textarea{resize:vertical}.pledge-checkin-modal-form textarea:focus,.pledge-checkin-modal-form input:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--focus-ring);outline:0}.pledge-checkin-modal-form button{min-height:32px;padding:0 14px;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--inverse-text);font-size:var(--font-size-sm);font-weight:600;cursor:pointer}.pledge-checkin-modal-form button:hover{background:var(--brand-hover)}.pledge-checkin-modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:9px}.pledge-checkin-mode{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:9px 11px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);cursor:pointer}.pledge-checkin-mode input{flex:0 0 16px;width:16px;height:16px;margin:2px 0 0}.pledge-checkin-mode span{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.pledge-checkin-mode b{color:var(--text);font-size:var(--font-size-sm);font-weight:600}.pledge-checkin-mode em{font-style:normal;color:var(--text-subtle);font-size:var(--font-size-xs)}.pledge-checkin-mode-locked{display:flex;align-items:baseline;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel)}.pledge-checkin-mode-locked b{color:var(--text);font-size:var(--font-size-sm);font-weight:600}.pledge-checkin-mode-locked em{font-style:normal;color:var(--text-subtle);font-size:var(--font-size-xs)}.pledge-checkin-mode-fields{display:none}.pledge-checkin-mode-fields.is-active{display:block}.pledge-checkin-card a.pledge-checkin-ghost-btn{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border:0;border-radius:var(--radius-sm);background:var(--line);color:var(--text-muted);font-size:var(--font-size-sm);font-weight:600;text-decoration:none;transition:var(--transition-normal)}.pledge-checkin-card a.pledge-checkin-ghost-btn:hover{color:var(--text)}@media (max-width:640px){.pledge-checkin-compose-body{padding:12px}.pledge-checkin-card{padding:10px}.pledge-checkin-guarantee{flex:1 1 100%}.pledge-checkin-list-progress{flex-wrap:wrap;gap:4px 8px}.pledge-checkin-list-progress em{white-space:normal}.pledge-checkin-list-track{flex:1 1 100px;min-width:0}}@media (max-width:640px){.pledge-checkin-member-item{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:3px 9px;align-items:center;padding:8px 10px}.pledge-checkin-member-item .avatar-profile-link{grid-area:1/1/3/2;align-self:start}.pledge-checkin-member-info{grid-area:1/2/2/3}.pledge-checkin-member-state{grid-area:1/3/2/4;text-align:right}.pledge-checkin-member-progress{grid-area:2/2/3/3}.pledge-checkin-member-amount{grid-area:2/3/3/4;text-align:right}.pledge-checkin-member-info em{flex:0 0 auto;white-space:nowrap}}