.goals-list{display:flex;flex-direction:column;gap:8px}.goal-checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;min-height:44px;padding:4px 0}.goal-checkbox-label input[type=checkbox]{accent-color:var(--accent);width:22px;height:22px;border:2px solid var(--border);border-radius:var(--radius-raw);cursor:pointer}.goal-text{font-family:var(--font);font-size:16px;font-weight:500;color:var(--text)}.goal-text.completed{text-decoration:line-through;color:var(--text3)}.goal-item{display:flex;align-items:stretch;gap:0;box-shadow:3px 3px 0 var(--border-accent)}.goal-input{flex:1;padding:14px 16px;font-size:16px;font-family:var(--font);font-weight:500;color:var(--text);background:var(--surface);border:2px solid var(--border);border-right:none;border-radius:var(--radius-raw) 0 0 var(--radius-raw);outline:none;min-width:0;line-height:1.3;box-shadow:none;transition:border-color .15s}.goal-input::placeholder{color:var(--text3);font-weight:400}.goal-input:focus-visible{border-color:var(--accent)}.goal-remove{display:flex;align-items:center;justify-content:center;background:var(--surface);border:2px solid var(--border);border-left:none;border-radius:0 var(--radius-raw) var(--radius-raw) 0;color:var(--text3);font-family:var(--font-mono);font-size:18px;font-weight:700;cursor:pointer;padding:0 12px;min-height:44px;min-width:44px;box-shadow:none;transition:color .1s,background .1s}.goal-remove:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.goal-remove:active{background:var(--border-accent);color:var(--danger)}.goal-add{padding:14px;border:2px dashed var(--border-soft);border-radius:var(--radius-pill);background:transparent;color:var(--text2);font-family:var(--font);font-size:14px;font-weight:600;cursor:pointer;min-height:44px;line-height:1.2;box-shadow:none;transition:border-color .1s,color .1s}.goal-add:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.goal-add:active{border-color:var(--accent);color:var(--accent)}.mood-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.mood-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 10px;border:2px solid var(--border);border-radius:var(--radius-raw);background:var(--surface);color:var(--text);cursor:pointer;font-family:var(--font-mono);min-height:44px;line-height:1.3;box-shadow:3px 3px 0 var(--border-accent);transition:transform .1s,box-shadow .1s,background .1s}.mood-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mood-card:active{transform:translate(2px,2px);box-shadow:none}.mood-card.selected{border-color:var(--accent);box-shadow:3px 3px 0 var(--accent-glow)}.mood-card.mood-good .mood-label,.mood-card.mood-good.selected{color:var(--green)}.mood-card.mood-normal .mood-label,.mood-card.mood-normal.selected{color:var(--accent)}.mood-card.mood-hanging_in_there .mood-label,.mood-card.mood-hanging_in_there.selected{color:var(--accent-warm)}.mood-card.mood-bad .mood-label,.mood-card.mood-bad.selected{color:var(--danger)}.mood-card.mood-good{border-radius:var(--radius-lg);font-family:var(--font-brand)}.mood-card.mood-bad{border-radius:var(--radius-pill);font-family:var(--font-brand)}.mood-label{font-family:inherit;font-size:18px;font-weight:700;margin-bottom:4px}.mood-desc{font-family:var(--font);font-size:12px;font-weight:500;color:var(--text2);text-align:center}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f8f4f0;--surface: #ffffff;--border: #1a1a2e;--border-soft: #d4c1ec;--border-accent: #e9d5ff;--text: #1a1a2e;--text2: #4a3a6a;--text3: #8a7aa0;--accent: #7c3aed;--accent-glow: #c4b5fd;--accent-warm: #fbbf24;--danger: #ef4444;--green: #22c55e;--font-mono: "Space Mono", "Courier New", monospace;--font: "Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-brand: "Nunito", "Nunito Sans", -apple-system, BlinkMacSystemFont, sans-serif;--radius-raw: 2px;--radius-sm: 6px;--radius: 12px;--radius-lg: 20px;--radius-pill: 99px;--spacing: 24px}html{font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}body{background:var(--bg);color:var(--text);min-height:100vh}#app{max-width:480px;margin:0 auto}.app-container{padding:28px 18px 96px}h1{font-family:var(--font-mono);font-size:20px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;color:var(--text)}h2{font-family:var(--font-mono);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}h3{font-family:var(--font-mono);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text);margin-bottom:12px}.subtitle{font-family:var(--font);font-size:14px;font-weight:600;color:var(--text2);margin-bottom:24px}.hint{font-family:var(--font);font-size:14px;font-weight:500;color:var(--text3);margin-bottom:12px}p{margin-bottom:8px}.section{margin-bottom:24px}.section label{display:block;font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text2);margin-bottom:8px}input[type=text],textarea{width:100%;padding:14px 16px;font-size:16px;font-family:var(--font);font-weight:500;line-height:1.3;color:var(--text);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-raw);outline:none;box-shadow:3px 3px 0 var(--border-accent);transition:box-shadow .15s,border-color .15s}input[type=text]:focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:3px 3px 0 var(--accent-glow)}input[type=text]::placeholder,textarea::placeholder{color:var(--text3);font-weight:400}textarea{min-height:80px;resize:vertical}button{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;font-size:15px;font-weight:700;font-family:var(--font-brand);line-height:1.2;border:2px solid var(--border);border-radius:var(--radius-raw);cursor:pointer;min-height:44px;min-width:44px;transition:transform .1s,box-shadow .1s}button:active{transform:translate(2px,2px);box-shadow:none!important}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none!important;filter:grayscale(.3)}button.primary{width:100%;background:var(--accent);color:#fff;padding:16px;margin-top:8px;font-size:16px;font-family:var(--font-brand);font-weight:700;border:2px solid var(--border);border-radius:var(--radius-raw);box-shadow:4px 4px 0 var(--accent-glow)}button.secondary{background:var(--surface);color:var(--text);font-size:14px;padding:10px 16px;margin-top:8px;border:2px solid var(--border-soft);border-radius:var(--radius-pill);box-shadow:2px 2px 0 var(--border-accent);font-family:var(--font)}button.danger{background:transparent;color:var(--danger);font-family:var(--font);font-size:18px;padding:4px 8px;min-width:auto;border:none;box-shadow:none}.goal-item{display:flex;align-items:center;gap:8px}.goal-item input{flex:1}.reference-box{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-raw);padding:16px;margin-bottom:24px;border-left:4px solid var(--accent);box-shadow:4px 4px 0 var(--border-accent)}.reference-box h3{font-family:var(--font-mono);font-size:11px;margin-bottom:8px;text-transform:uppercase;color:var(--text);letter-spacing:1px}.reference-box ul{list-style:none;padding:0}.reference-box li{font-family:var(--font);font-size:14px;font-weight:500;color:var(--text2);padding:4px 0;border-bottom:1px solid var(--border-accent)}.reference-box li:last-child{border-bottom:none}details{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-raw);margin-bottom:8px;box-shadow:3px 3px 0 var(--border-accent)}details summary{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text);padding:10px 14px;cursor:pointer;list-style:none}details summary::-webkit-details-marker{display:none}details ul{padding:0 14px 12px 28px}details li{font-family:var(--font);font-size:14px;font-weight:500;color:var(--text2);margin-bottom:4px}.step-indicator{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.step-indicator .step{font-family:var(--font-mono);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text3);padding:6px 12px;background:var(--surface);border:2px solid var(--border-soft);border-radius:var(--radius-raw)}.step-indicator .step.done{color:var(--accent);border-color:var(--accent);background:#faf5ff}.step-indicator .step.active{color:#fff;background:var(--accent);border-color:var(--border);box-shadow:2px 2px 0 var(--accent-glow)}.auth-screen{text-align:center;padding-top:60px}.auth-screen h1{font-family:var(--font-brand);font-weight:800;font-size:36px;letter-spacing:2px;color:var(--text);text-transform:uppercase;display:inline-block;padding:8px 20px;background:var(--accent-warm);border:2px solid var(--border);border-radius:var(--radius-raw);box-shadow:6px 6px 0 var(--accent-glow);margin-bottom:16px}.auth-screen p{font-family:var(--font);font-size:16px;font-weight:500;color:var(--text2)}.loading{text-align:center;padding:40px 0;font-family:var(--font-mono);font-size:14px;color:var(--text3)}.skip-message{text-align:center;padding:20px;font-family:var(--font);font-size:16px;font-weight:600;color:var(--text2);background:var(--surface);border:2px solid var(--border-soft);border-radius:var(--radius)}.done-message{text-align:center;font-family:var(--font);font-size:18px;font-weight:700;color:var(--accent);margin-bottom:16px}.review-intention{text-align:center;font-family:var(--font);font-size:15px;font-weight:500;color:var(--text2);margin-bottom:16px}.review-goals{list-style:none;padding:0;margin-bottom:20px}.review-goals li{font-family:var(--font);font-size:15px;font-weight:500;color:var(--text);padding:8px 0;border-bottom:1px solid var(--border-accent)}.error-message{background:#fef2f2;border:2px solid var(--danger);border-radius:var(--radius-raw);color:var(--danger);font-family:var(--font);font-size:14px;font-weight:600;padding:12px 16px;margin-bottom:16px}.review-screen{text-align:center}.reference-panels{margin-bottom:20px}
