body{-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.splash-page{background:var(--bg);height:100vh;overflow-y:auto;scroll-snap-type:y proximity}.splash-hero{justify-content:center;min-height:100vh;padding:2rem;scroll-snap-align:start}.splash-content,.splash-hero{align-items:center;display:flex}.splash-content{flex-direction:column;text-align:center;width:100%}.splash-title{color:var(--text);font-size:clamp(5rem,15vw,10rem);font-weight:800;letter-spacing:-.03em;line-height:.95}.splash-subtitle-area{align-items:center;display:flex;height:5rem;justify-content:center;position:relative;width:100%}.splash-question{color:var(--text-muted);font-size:clamp(1.3rem,3.5vw,2rem);font-style:italic;position:absolute;transition:opacity .4s ease}.splash-question.fade-in{opacity:1}.splash-question.fade-out{opacity:0}.splash-scroll-hint{animation:bounce 2s ease infinite;bottom:2rem;position:absolute}.splash-scroll-hint svg{stroke:var(--text-faint);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:24px;width:24px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.splash-stats-section{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:4rem 2rem;scroll-snap-align:start}.splash-stats-headline{color:var(--text);font-size:clamp(1.5rem,4vw,2.25rem);font-weight:600;letter-spacing:-.02em;line-height:1.3;margin-bottom:4rem;text-align:center}.splash-stats{display:flex;flex-direction:column;gap:3rem;max-width:500px;width:100%}.splash-stat{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.splash-stat.visible{opacity:1;transform:translateY(0)}.splash-stat-number{color:var(--accent);font-size:clamp(2.5rem,6vw,3.5rem);font-weight:800;letter-spacing:-.02em;line-height:1;margin-bottom:.4rem}.splash-stat-text{color:var(--text);font-size:clamp(1rem,2.5vw,1.15rem);line-height:1.5;margin-bottom:.3rem}.splash-stat-source{color:var(--text-faint);font-size:.7rem}.splash-cta-section{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:4rem 2rem;scroll-snap-align:start}.splash-cta-headline{color:var(--text);font-size:clamp(1.25rem,3.5vw,1.75rem);font-weight:600;margin-bottom:2.5rem;max-width:480px;text-align:center}.splash-ctas{display:flex;gap:.75rem;justify-content:center}.splash-btn{border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.75rem;transition:background .15s}.splash-btn.primary{background:var(--accent);border:none;color:var(--bg)}.splash-btn.primary:hover{background:var(--accent-hover)}.splash-btn.secondary{background:#0000;border:1px solid var(--border);color:var(--text-muted)}.splash-btn.secondary:hover{background:var(--surface);color:var(--text)}.auth-page{align-items:center;background:var(--bg);display:flex;flex:1 1;justify-content:center;padding:2rem}.auth-card{display:flex;flex-direction:column;gap:1.5rem;max-width:380px;width:100%}.auth-brand{align-items:center;display:flex;font-size:1.25rem;font-weight:700;gap:.5rem;margin-bottom:.5rem}.auth-brand-dot{background:var(--accent);border-radius:50%;height:10px;width:10px}.auth-card h2{font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.auth-subtitle{color:var(--text-muted);font-size:.85rem;margin-bottom:.5rem}.auth-card form{display:flex;flex-direction:column;gap:.75rem}.auth-card input{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:inherit;font-size:.92rem;outline:none;padding:.7rem .85rem;transition:border-color .15s}.auth-card input:focus{border-color:var(--accent)}.auth-card input::placeholder{color:var(--text-faint)}.auth-btn{background:var(--accent);border:none;border-radius:8px;color:var(--bg);cursor:pointer;font-size:.92rem;font-weight:600;margin-top:.25rem;padding:.7rem;transition:background .15s}.auth-btn:hover:not(:disabled){background:var(--accent-hover)}.auth-btn:disabled{cursor:not-allowed;opacity:.5}.auth-links{display:flex;gap:.5rem;justify-content:space-between}.auth-links button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.8rem;padding:0}.auth-links button:hover{color:var(--text)}.auth-error{background:#2a1515;color:#e8a0a0}.auth-error,.auth-message{border-radius:8px;font-size:.85rem;padding:.6rem .85rem}.auth-message{background:#152a15;color:#a0e8a0}.auth-skip{background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:.82rem;padding:.5rem;text-align:center}.auth-skip:hover{color:var(--text-muted)}.input-box{background:var(--surface);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;padding:.7rem;position:relative;transition:border-color .15s,background .15s}.input-box:focus-within{border-color:#3a3a3a}.input-box.dragging{border-color:var(--accent);border-style:dashed}.input-box.dragging>:not(.input-drop-overlay){pointer-events:none}.input-drop-overlay{align-items:center;background:#00000059;border-radius:14px;color:var(--text);display:flex;font-size:.9rem;font-weight:500;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:1}.input-row{align-items:flex-end;display:flex;gap:.5rem}.chat-input{background:#0000;border:none;color:var(--text);flex:1 1;font-family:inherit;font-size:.95rem;line-height:1.5;max-height:200px;outline:none;padding:.3rem 0;resize:none}.attach-btn,.chat-input::placeholder{color:var(--text-faint)}.attach-btn{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;height:34px;justify-content:center;transition:color .15s,background .15s;width:34px}.attach-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-muted)}.attach-btn:disabled{cursor:not-allowed;opacity:.3}.attach-btn svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.send-btn{align-items:center;background:var(--accent);border-radius:8px;color:var(--bg);display:flex;flex-shrink:0;height:34px;justify-content:center;transition:background .15s,opacity .15s;width:34px}.send-btn:hover:not(:disabled){background:var(--accent-hover)}.send-btn:disabled{cursor:not-allowed;opacity:.35}.send-btn svg{stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.input-previews{display:flex;gap:.5rem;overflow-x:auto;padding:0 0 .5rem}.input-preview{border:1px solid var(--border);border-radius:8px;flex-shrink:0;height:64px;overflow:hidden;position:relative;width:64px}.input-preview img{height:100%;object-fit:cover;width:100%}.input-preview-remove{align-items:center;background:#000000b3;border:none;border-radius:50%;color:var(--text);cursor:pointer;display:flex;font-size:12px;height:18px;justify-content:center;line-height:1;position:absolute;right:2px;top:2px;width:18px}.input-preview-remove:hover{background:#000000e6}.messages{gap:1.25rem;margin:0 auto;max-width:760px;padding:1.5rem 1.5rem 2rem;width:100%}.messages,.msg-row{display:flex;flex-direction:column}.msg-row{gap:.35rem}.msg-role{color:var(--text-faint);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.msg{word-wrap:break-word;font-size:.95rem;line-height:1.65;white-space:pre-wrap}.msg-row.user .msg{align-self:flex-end;background:var(--user-bubble);border:1px solid var(--border);border-radius:12px;max-width:85%;padding:.85rem 1.1rem}.msg-row.user{align-items:flex-end}.msg-row.assistant .msg{color:var(--text)}.msg.error{color:#e8a0a0;font-size:.88rem}.msg.typing{color:var(--text-muted);font-size:.88rem}.msg-images{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem}.msg-row.user .msg-images{justify-content:flex-end}.msg-image{border-radius:10px;max-height:320px;max-width:280px;object-fit:contain}.action-card,.msg-image{border:1px solid var(--border)}.action-card{background:var(--surface);border-radius:10px;margin-top:.75rem;max-width:400px;padding:.85rem 1rem}.action-card-label{color:var(--accent);font-size:.68rem;font-weight:600;letter-spacing:.08em;margin-bottom:.4rem;text-transform:uppercase}.action-card-text{color:var(--text);font-size:.9rem;line-height:1.5;margin-bottom:.4rem}.action-card-time{color:var(--text-muted);font-size:.78rem;margin-bottom:.65rem}.action-card-btn{background:var(--accent);border:none;border-radius:6px;color:var(--bg);cursor:pointer;font-size:.82rem;font-weight:600;padding:.45rem 1rem;transition:background .15s}.action-card-btn:hover{background:var(--accent-hover)}.action-card-accepted{color:var(--accent);font-size:.8rem;font-weight:600}.context-ping{color:var(--accent);font-size:.68rem;font-weight:600;letter-spacing:.06em;margin-bottom:.25rem;padding:.2rem 0;text-transform:uppercase}.source-wrap{margin-top:.35rem}.source-btn{align-items:center;background:none;border:none;color:var(--text-faint);cursor:pointer;display:inline-flex;font-size:.72rem;gap:.3rem;padding:.2rem 0}.source-btn:hover{color:var(--text-muted)}.source-btn svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}.source-btn svg.rotated{transform:rotate(90deg)}.source-list{margin-top:.25rem;padding-left:.25rem}.source-item{color:var(--text-faint);font-size:.72rem;padding:.15rem 0}.suggestions-bar-wrap{align-items:center;display:flex;gap:.25rem;margin-bottom:.5rem}.suggestions-bar{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-wrap:nowrap;gap:.5rem;min-width:0;overflow-x:auto;scrollbar-width:thin}.suggestions-bar::-webkit-scrollbar{height:4px}.suggestions-bar::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.suggestion-chip{background:#0000;border:1px solid var(--accent);border-radius:999px;color:var(--accent);cursor:pointer;flex-shrink:0;font-size:.82rem;font-weight:500;line-height:1.2;padding:.4rem .85rem;transition:background .15s,color .15s;white-space:nowrap}.suggestion-chip:hover:not(:disabled){background:var(--accent);color:var(--bg)}.suggestion-chip:disabled{cursor:not-allowed;opacity:.5}.suggestions-affordance{align-items:center;color:var(--accent);display:flex;flex-shrink:0;justify-content:center;opacity:.6;width:16px}.suggestions-affordance.hidden{visibility:hidden}.chat-app{background:var(--bg);display:flex;flex-direction:column;height:100vh}.chat-topbar{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:.65rem 1.25rem}.chat-topbar-brand{align-items:center;display:flex;font-size:.95rem;font-weight:700;gap:.5rem}.chat-topbar-dot{background:var(--accent);border-radius:50%;height:8px;width:8px}.chat-topbar-right{align-items:center;display:flex;gap:.25rem}.chat-topbar-nav{background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:.82rem;font-weight:600;padding:.3rem .7rem}.chat-topbar-nav:hover{background:var(--surface);color:var(--text)}.chat-topbar-signout{background:none;border:none;border-radius:4px;color:var(--text-faint);cursor:pointer;font-size:.8rem;padding:.3rem .6rem}.chat-topbar-signout:hover{background:var(--surface);color:var(--text-muted)}.onboard-banner{align-items:center;background:#c8a46e0f;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:1rem;justify-content:space-between;padding:.7rem 1.25rem}.onboard-banner span{color:var(--text-muted);font-size:.85rem}.onboard-banner button{background:var(--accent);border:none;border-radius:6px;color:var(--bg);cursor:pointer;font-size:.8rem;font-weight:600;padding:.35rem .85rem;white-space:nowrap}.onboard-banner button:hover{background:var(--accent-hover)}.chat-topbar-nav.report{color:var(--text-faint)}.report-backdrop{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:100}.report-modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;max-width:420px;padding:1.5rem;width:100%}.report-modal h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.report-modal p{color:var(--text-muted);font-size:.85rem;line-height:1.5;margin-bottom:1rem}.report-textarea{background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:inherit;font-size:.88rem;margin-bottom:1rem;outline:none;padding:.6rem .8rem;resize:vertical;width:100%}.report-textarea:focus{border-color:var(--accent)}.report-textarea::placeholder{color:var(--text-faint)}.report-actions{display:flex;gap:.5rem}.report-btn{border:none;border-radius:6px;cursor:pointer;font-size:.82rem;font-weight:600;padding:.5rem 1rem}.report-btn.submit{background:#4a1c1c;color:#e87070}.report-btn.submit:hover{background:#5a2222}.report-btn.cancel,.report-btn.close{background:var(--surface-hover);color:var(--text-muted)}.report-btn.cancel:hover,.report-btn.close:hover{color:var(--text)}.suggestions-toast{align-items:center;animation:suggestions-toast-in .18s ease-out;background:var(--surface);border:1px solid var(--border);border-radius:8px;bottom:6rem;box-shadow:0 4px 12px #00000040;color:var(--text);display:flex;font-size:.85rem;gap:.6rem;padding:.55rem .9rem;position:fixed;right:1rem;z-index:90}.suggestions-toast-close{background:#0000;border:none;color:var(--text);cursor:pointer;font-size:1.1rem;line-height:1;opacity:.7;padding:0}.suggestions-toast-close:hover{opacity:1}@keyframes suggestions-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-thread{flex:1 1;overflow-y:auto;scroll-behavior:smooth}.chat-thread::-webkit-scrollbar{width:8px}.chat-thread::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.chat-empty{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.chat-empty h1{color:var(--text-muted);font-size:clamp(1.5rem,3.5vw,2rem);font-weight:600;letter-spacing:-.02em}.chat-input-area{flex-shrink:0;padding:.75rem 1.25rem 1rem}.chat-input-wrap{margin:0 auto;max-width:760px}.actions-app{background:var(--bg);display:flex;flex-direction:column;height:100vh}.actions-topbar{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:.65rem 1.25rem}.actions-topbar-left{align-items:center;display:flex;gap:.5rem}.actions-back{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.actions-back:hover{background:var(--surface);color:var(--text)}.actions-back svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.actions-topbar-brand{font-size:.95rem;font-weight:700}.actions-topbar-signout{background:none;border:none;border-radius:4px;color:var(--text-faint);cursor:pointer;font-size:.8rem;padding:.3rem .6rem}.actions-topbar-signout:hover{background:var(--surface);color:var(--text-muted)}.actions-content{flex:1 1;margin:0 auto;max-width:600px;overflow-y:auto;padding:1.5rem;width:100%}.actions-empty{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.actions-empty h2{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.actions-empty p{color:var(--text-muted);font-size:.9rem;margin-bottom:1.5rem;max-width:360px}.actions-cta{background:var(--accent);border:none;border-radius:8px;color:var(--bg);cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.5rem}.actions-cta:hover{background:var(--accent-hover)}.actions-section{margin-bottom:2rem}.actions-section-label{color:var(--text-faint);font-size:.72rem;font-weight:600;letter-spacing:.08em;margin-bottom:.75rem;text-transform:uppercase}.action-item{border-bottom:1px solid var(--border)}.action-item:last-child{border-bottom:none}.action-row{gap:.75rem;padding:.85rem 0}.action-check,.action-row{align-items:center;display:flex}.action-check{cursor:pointer;flex-shrink:0;height:22px;justify-content:center;width:22px}.action-checkbox{border:2px solid var(--text-faint);border-radius:50%;height:18px;transition:border-color .15s;width:18px}.action-check:hover .action-checkbox{border-color:var(--accent)}.action-check.done{cursor:default}.action-check.done svg{stroke:var(--accent);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.action-text{color:var(--text);flex:1 1;font-size:.92rem;line-height:1.5}.action-item.completed .action-text{color:var(--text-muted);text-decoration:line-through;text-decoration-color:var(--text-faint)}.action-expand{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-faint);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:color .15s,background .15s;width:28px}.action-expand:hover{background:var(--surface);color:var(--text-muted)}.action-expand svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:16px;transition:transform .15s;width:16px}.action-expand svg.rotated{transform:rotate(90deg)}.action-detail{display:flex;flex-direction:column;gap:.5rem;padding:0 0 1rem 2.75rem}.action-detail-row{align-items:center;display:flex;font-size:.82rem;justify-content:space-between}.action-detail-label{color:var(--text-faint)}.action-detail-value{color:var(--text-muted)}.action-status-badge{border-radius:999px;font-size:.75rem;font-weight:600;padding:.15rem .55rem}.action-status-badge.pending{background:#2a2510;color:var(--accent)}.action-status-badge.completed{background:#152a15;color:#a0e8a0}.action-delete{background:none;border:none;color:#a05050;cursor:pointer;font-size:.8rem;margin-top:.5rem;padding:.3rem 0;text-align:left;width:fit-content}.action-delete:hover{color:#e87070}.settings-app{background:var(--bg);display:flex;flex-direction:column;height:100vh}.settings-topbar{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:.65rem 1.25rem}.settings-topbar-left{align-items:center;display:flex;gap:.5rem}.settings-back{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.settings-back:hover{background:var(--surface);color:var(--text)}.settings-back svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.settings-topbar-brand{font-size:.95rem;font-weight:700}.settings-topbar-signout{background:none;border:none;border-radius:4px;color:var(--text-faint);cursor:pointer;font-size:.8rem;padding:.3rem .6rem}.settings-topbar-signout:hover{background:var(--surface);color:var(--text-muted)}.settings-content{flex:1 1;margin:0 auto;max-width:600px;overflow-y:auto;padding:1.5rem;width:100%}.settings-section{margin-bottom:2.5rem}.settings-section-label{color:var(--text-faint);font-size:.72rem;font-weight:600;letter-spacing:.08em;margin-bottom:.75rem;text-transform:uppercase}.settings-row{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:.75rem 0}.settings-row-label{color:var(--text);font-size:.9rem}.settings-row-value{color:var(--text-muted);font-size:.9rem}.settings-danger-card{background:var(--surface);border:1px solid #2a1515;border-radius:10px;padding:1rem 1.15rem}.settings-danger-info strong{display:block;font-size:.9rem;margin-bottom:.35rem}.settings-danger-info p{color:var(--text-muted);font-size:.82rem;line-height:1.5;margin-bottom:.85rem}.settings-btn{border:none;border-radius:6px;cursor:pointer;font-size:.82rem;font-weight:600;padding:.5rem 1rem}.settings-btn.danger{background:#4a1c1c;color:#e87070}.settings-btn.danger:hover:not(:disabled){background:#5a2222}.settings-btn.danger:disabled{cursor:not-allowed;opacity:.5}.settings-btn.cancel{background:var(--surface-hover);color:var(--text-muted);margin-left:.5rem}.settings-btn.cancel:hover{color:var(--text)}.settings-confirm-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.settings-confirm-text{color:#e87070;font-size:.85rem;font-weight:600;margin-right:.25rem}.settings-reset-done{color:#a0e8a0;font-size:.85rem;font-weight:600}.modal-backdrop{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:100}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;max-width:400px;padding:1.5rem;width:100%}.modal-card h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.modal-card p{color:var(--text-muted);font-size:.88rem;line-height:1.5;margin-bottom:1.25rem}.modal-actions{display:flex;gap:.5rem}.onboard{background:var(--bg);box-sizing:border-box;color:var(--text);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;padding:1.5rem 1.5rem 1.25rem}.onboard-progress{display:flex;gap:.4rem;margin:0 auto 2.5rem;max-width:720px;width:100%}.onboard-progress-segment{background:var(--border);border-radius:2px;flex:1 1;height:3px;transition:background .25s ease}.onboard-progress-segment.filled{background:var(--accent)}.onboard-screen{align-items:center;display:flex;flex:1 1;justify-content:center;width:100%}.onboard-step{display:flex;flex-direction:column;gap:1rem;max-width:560px;width:100%}.onboard-headline{color:var(--text);font-size:1.9rem;font-weight:600;line-height:1.25;margin:0}.onboard-sub{color:var(--text-muted);font-size:.95rem;line-height:1.4;margin:0 0 .5rem}.onboard-input,.onboard-textarea{background:var(--surface);border:1px solid var(--border);border-radius:10px;box-sizing:border-box;color:var(--text);font-family:inherit;font-size:1rem;outline:none;padding:.85rem 1rem;width:100%}.onboard-textarea{line-height:1.45;min-height:140px;resize:vertical}.onboard-input:focus,.onboard-textarea:focus{border-color:var(--accent)}.onboard-counter,.onboard-input::placeholder,.onboard-textarea::placeholder{color:var(--text-faint)}.onboard-counter{align-self:flex-end;font-size:.75rem}.onboard-coach-block{background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding:1.25rem}.onboard-coach-title{color:var(--text-muted);font-size:.95rem;font-weight:500;margin:0}.onboard-coach-message{color:var(--text);font-size:1.05rem;line-height:1.55;white-space:pre-wrap}.onboard-coach-message.subtle{color:var(--text-muted);font-size:.95rem}.onboard-coach-loading{align-items:center;color:var(--text-muted);display:flex;font-size:.9rem;gap:.6rem}.onboard-spinner{animation:onboard-spin .8s linear infinite;border:2px solid var(--border);border-radius:50%;border-top-color:var(--accent);display:inline-block;height:14px;width:14px}@keyframes onboard-spin{to{transform:rotate(1turn)}}.onboard-footer{flex-direction:column;margin:1.5rem auto 0;max-width:560px;width:100%}.onboard-actions,.onboard-footer{display:flex;gap:.6rem}.onboard-btn{border:none;border-radius:10px;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:600;padding:.85rem 1.5rem}.onboard-btn.next{background:var(--accent);color:var(--bg);flex:1 1}.onboard-btn.next:hover:not(:disabled){background:var(--accent-hover)}.onboard-btn.next:disabled{cursor:not-allowed;opacity:.4}.onboard-btn.back{background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.onboard-btn.back:hover{color:var(--text)}.onboard-skip{align-self:center;background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:.82rem;padding:.4rem;text-align:center}.onboard-skip:hover{color:var(--text-muted)}.onboard-error{align-items:center;background:#2a1515;border-radius:8px;color:#e8a0a0;display:flex;font-size:.88rem;gap:.75rem;justify-content:space-between;margin-top:.75rem;padding:.7rem .9rem}.onboard-link{background:none;border:none;color:#f0c0c0;cursor:pointer;font:inherit;padding:0;text-decoration:underline}@media (max-width:600px){.onboard{padding:1.25rem 1.25rem 1rem}.onboard-headline{font-size:1.55rem}.onboard-progress{margin-bottom:1.75rem}}.profile-app{background:var(--bg);display:flex;flex-direction:column;height:100vh}.profile-topbar{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:.65rem 1.25rem}.profile-topbar-left{align-items:center;display:flex;gap:.5rem}.profile-back{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.profile-back:hover{background:var(--surface);color:var(--text)}.profile-back svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.profile-topbar-brand{font-size:.95rem;font-weight:700}.profile-content{flex:1 1;margin:0 auto;max-width:640px;overflow-y:auto;padding:1.5rem;width:100%}.profile-loading{color:var(--text-muted);font-size:.9rem}.profile-empty,.profile-loading{align-items:center;display:flex;height:100%;justify-content:center}.profile-empty{flex-direction:column;text-align:center}.profile-empty h2{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.profile-empty p{color:var(--text-muted);font-size:.9rem;margin-bottom:1.5rem;max-width:360px}.profile-cta{background:var(--accent);border:none;border-radius:8px;color:var(--bg);cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.5rem}.profile-cta:hover{background:var(--accent-hover)}.profile-header{display:flex;gap:2rem;margin-bottom:2rem}.profile-header-stat{display:flex;flex-direction:column}.profile-header-num{color:var(--text);font-size:2rem;font-weight:800;line-height:1}.profile-header-label{color:var(--text-faint);font-size:.72rem;letter-spacing:.06em;margin-top:.25rem;text-transform:uppercase}.profile-section{margin-bottom:2rem}.profile-section h3{color:var(--text-faint);font-size:.72rem;font-weight:600;letter-spacing:.08em;margin-bottom:.75rem;text-transform:uppercase}.profile-section.narrative{border-left:3px solid var(--accent);padding-left:1rem}.profile-section.narrative p{color:var(--text);font-size:.95rem;line-height:1.65}.profile-section.focus{border-left-color:var(--text-faint)}.profile-tags{display:flex;flex-wrap:wrap;gap:.5rem}.profile-tag{background:#c8a46e1a;border-radius:999px;color:var(--accent);font-size:.78rem;font-weight:600;padding:.35rem .75rem}.profile-cards{display:flex;flex-direction:column;gap:.75rem}.profile-cards.context{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem}.profile-card.sticking .profile-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.35rem}.profile-card-title{color:var(--text);font-size:.9rem;font-weight:600}.profile-card-freq{color:var(--text-faint);font-size:.75rem;font-weight:600}.profile-card.sticking p{color:var(--text-muted);font-size:.82rem;line-height:1.5}.profile-card.context{display:flex;flex-direction:column;gap:.2rem}.profile-card-label{color:var(--text-faint);font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.profile-card-value{color:var(--text);font-size:.88rem}.profile-progression{display:flex;flex-direction:column;gap:.85rem}.profile-progress-row{grid-gap:.75rem;align-items:center;display:grid;gap:.75rem;grid-template-columns:120px 1fr 100px}.profile-progress-skill{color:var(--text);font-size:.85rem;font-weight:500}.profile-progress-bar{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.profile-progress-fill{border-radius:3px;height:100%;transition:width .6s ease}.profile-progress-fill.mostly_gone{background:var(--accent)}.profile-progress-fill.in_progress{background:var(--text-muted)}.profile-progress-fill.just_starting{background:var(--text-faint)}.profile-progress-label{color:var(--text-muted);font-size:.75rem;text-align:right}.profile-link{background:none;border:none;color:var(--accent);cursor:pointer;display:inline-block;font-size:.85rem;font-weight:600;margin-top:.75rem;padding:0}.profile-link:hover{text-decoration:underline}@media (max-width:500px){.profile-cards.context{grid-template-columns:1fr}.profile-progress-row{grid-template-columns:80px 1fr 80px}}:root{--bg:#0a0a0a;--sidebar:#111;--surface:#161616;--surface-hover:#1e1e1e;--border:#222;--text:#e8e8e8;--text-muted:#888;--text-faint:#555;--accent:#c8a46e;--accent-hover:#dbb87e;--user-bubble:#1f1f1f}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;overflow:hidden}body{-webkit-font-smoothing:antialiased;background:#0a0a0a;background:var(--bg);color:#e8e8e8;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;line-height:1.55}button{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit}.app-loading{background:var(--bg);height:100vh}
/*# sourceMappingURL=main.47d1a5bf.css.map*/