.challenge-flow{min-height:100svh;display:flex;justify-content:center;padding:1.5rem 1.25rem 2.5rem}.challenge-flow-content{width:100%;max-width:640px;padding-top:.5rem}.challenge-progress{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.75rem}.challenge-dot{width:8px;height:8px;border-radius:50%;background:var(--gray-100)}.challenge-dot.active,.challenge-dot.done{background:var(--primary)}.challenge-back{background:none;border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;padding:0;margin-bottom:1rem;cursor:pointer}.challenge-back:hover{color:var(--primary)}.challenge-headline{font-size:1.85rem;line-height:1.2;font-weight:700;letter-spacing:-.02em;margin-bottom:.75rem}.challenge-subhead{font-size:1.25rem;font-weight:650;margin:1.75rem 0 .75rem}.challenge-supporting{color:var(--text-secondary);font-size:1rem;margin-bottom:1.5rem}.challenge-cards,.challenge-options{display:grid;grid-template-columns:1fr;grid-gap:.75rem;gap:.75rem}.challenge-card{width:100%;min-height:52px;padding:.9rem 1rem;border:1px solid var(--gray-100);border-radius:.75rem;background:var(--gray-50);color:var(--text-primary);font-size:1rem;font-weight:500;text-align:left;cursor:pointer;transition:all .15s ease}.challenge-card.selected,.challenge-card:hover{border-color:var(--primary);background:#eff6ff;color:var(--primary)}.challenge-input,.challenge-textarea{width:100%;border:1px solid var(--gray-100);border-radius:.75rem;background:var(--gray-50);color:var(--text-primary);font:inherit;padding:.9rem 1rem}.challenge-textarea{resize:vertical;min-height:140px;margin-bottom:1.25rem}.challenge-hours{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;color:var(--text-secondary);font-weight:500}.challenge-hours-input{width:6.5rem;border:1px solid var(--gray-100);border-radius:.75rem;background:var(--gray-50);color:var(--text-primary);font:inherit;font-size:1.5rem;font-weight:650;padding:.75rem .85rem;text-align:center}.challenge-hours-input:focus{outline:2px solid var(--primary);outline-offset:1px}.challenge-hours-preview{color:var(--text-primary);background:var(--gray-50);border-radius:.75rem;padding:.9rem 1rem;margin:1.25rem 0 .25rem;font-size:1rem}.challenge-input:focus,.challenge-textarea:focus{outline:2px solid var(--primary);outline-offset:1px}.challenge-form{gap:1rem}.challenge-form,.challenge-label{display:flex;flex-direction:column}.challenge-label{gap:.4rem;font-size:.9rem;font-weight:500;color:var(--text-primary)}.challenge-optional{color:var(--text-secondary);font-weight:400}.challenge-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.challenge-consent{font-size:.9rem;color:var(--text-secondary);line-height:1.45}.challenge-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.challenge-primary-btn,.challenge-text-btn{display:inline-flex;align-items:center;justify-content:center;border:none;font:inherit;font-weight:500;text-decoration:none;cursor:pointer}.challenge-primary-btn{background:var(--primary);color:#fff;padding:1rem 2rem;border-radius:.5rem;min-height:52px}.challenge-primary-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,.1)}.challenge-primary-btn:disabled{opacity:.5;cursor:not-allowed}.challenge-text-btn{background:none;color:var(--text-secondary);padding:.5rem;font-size:.95rem}.challenge-text-btn:hover{color:var(--primary)}.challenge-error{color:#b91c1c;font-size:.9rem}.challenge-success{text-align:center;padding-top:3rem}.challenge-success .challenge-headline{font-size:2.5rem}@media (min-width:640px){.challenge-cards,.challenge-options{grid-template-columns:1fr 1fr}.challenge-headline{font-size:2.15rem}}