@import"https://fonts.googleapis.com/css2?family=Instrument+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap";:root{--color-bg: #F7F4EC;--color-text-primary: #221C16;--color-text-secondary: #8A8578;--color-accent: #602E48;--color-accent-hover: #4A2438;--color-on-accent: #F7F4EC;--color-surface: #EFE6DC;--color-border: #DAD3C4;--color-error: #9B4130;--color-error-bg: #F7ECE9;--font-display: "Instrument Sans", sans-serif;--font-body: "Instrument Sans", sans-serif;--step-0: 1rem;--step-1: 1.25rem;--step-2: 1.75rem;--step-3: 2.25rem;--step-4: 2.75rem;--content-max: 34rem;--radius: 4px;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2.5rem;--space-5: 4rem}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--step-0);line-height:1.55;-webkit-font-smoothing:antialiased}.screen{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:var(--space-4) var(--space-3)}.content{width:100%;max-width:var(--content-max);margin:0 auto}.eyebrow-label{color:var(--color-text-secondary);font-size:.875rem;margin-bottom:var(--space-2)}.question-text{font-family:var(--font-display);font-weight:500;font-size:var(--step-3);line-height:1.25;letter-spacing:-.01em;margin:0 0 var(--space-3) 0;max-width:22ch}textarea.answer-input{width:100%;min-height:7rem;padding:var(--space-2);font-family:var(--font-body);font-size:var(--step-1);color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);resize:vertical;line-height:1.5}textarea.answer-input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.controls-row{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.btn{font-family:var(--font-body);font-weight:500;font-size:var(--step-0);padding:.75rem 1.5rem;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-on-accent)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-text{background:transparent;color:var(--color-text-secondary);padding:.75rem .5rem}.btn-text:hover:not(:disabled){color:var(--color-text-primary)}.progress-dots{display:flex;gap:.4rem;margin-bottom:var(--space-4)}.progress-dots span{width:6px;height:6px;border-radius:50%;background:var(--color-border)}.progress-dots span[data-state=done]{background:var(--color-text-secondary)}.progress-dots span[data-state=current]{background:var(--color-accent)}.helper-text{color:var(--color-text-secondary);font-size:.875rem;margin-top:var(--space-1)}.error-banner{background:var(--color-error-bg);border:1px solid var(--color-error);color:var(--color-error);border-radius:var(--radius);padding:var(--space-2);font-size:.9rem;margin-bottom:var(--space-3)}.review-textarea{width:100%;min-height:16rem;padding:var(--space-3);font-family:var(--font-body);font-size:1.15rem;line-height:1.6;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);resize:vertical}.platform-list{list-style:none;padding:0;margin:var(--space-3) 0 0 0;display:flex;flex-direction:column;gap:var(--space-1)}.platform-link{display:block;text-decoration:none;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2);font-weight:500;transition:border-color .12s ease,opacity .12s ease}.platform-link-locked{color:var(--color-text-secondary);opacity:.5;pointer-events:none;cursor:not-allowed}.platform-link-unlocked{border:2px solid var(--color-accent)}.platform-link-unlocked:hover{border-color:var(--color-accent-hover)}.step-label{margin:0;font-size:1rem;font-weight:600;color:var(--color-text-primary)}.step-label-muted{color:var(--color-text-secondary)}.step-confirm{margin:var(--space-1) 0 0 0;font-size:.875rem;font-weight:500;color:var(--color-accent)}.spinner{width:1.25rem;height:1.25rem;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}}
