@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&display=swap";:root{--bg-primary:#0a0f0d;--bg-secondary:#111916;--bg-card:#151d19;--bg-elevated:#1a2420;--bg-input:#0d1510;--text-primary:#e8ede6;--text-secondary:#9aaa9e;--text-muted:#5e7268;--text-accent:#8bc5a7;--accent-primary:#4a9e75;--accent-secondary:#3d7d5f;--accent-glow:#4a9e7526;--accent-warm:#c4915e;--accent-warm-glow:#c4915e26;--border-subtle:#8ab49e14;--border-medium:#8ab49e26;--border-focus:#4a9e7566;--gradient-card:linear-gradient(145deg, #1a2822 0%, #111916 50%, #151a1d 100%);--gradient-accent:linear-gradient(135deg, #4a9e75 0%, #3d8b6a 50%, #c4915e 100%);--gradient-warm:linear-gradient(135deg, #c4915e 0%, #a67840 100%);--gradient-bg:radial-gradient(ellipse at 30% 20%, #4a9e750f 0%, transparent 60%), radial-gradient(ellipse at 70% 80%, #c4915e0a 0%, transparent 60%);--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Playfair Display", Georgia, serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 40px #4a9e751a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}#root{background:var(--gradient-bg);min-height:100vh;padding:var(--space-lg);flex-direction:column;justify-content:center;align-items:center;display:flex}.ambient-glow{pointer-events:none;z-index:0;width:100%;height:100%;position:fixed;top:0;left:0}.ambient-glow:before,.ambient-glow:after{content:"";filter:blur(80px);border-radius:50%;animation:20s ease-in-out infinite ambient-drift;position:absolute}.ambient-glow:before{background:#4a9e750a;width:500px;height:500px;top:-10%;left:-10%}.ambient-glow:after{background:#c4915e08;width:400px;height:400px;animation-direction:reverse;animation-delay:-10s;bottom:-10%;right:-10%}@keyframes ambient-drift{0%,to{transform:translate(0)scale(1)}25%{transform:translate(50px,30px)scale(1.05)}50%{transform:translate(-20px,60px)scale(.95)}75%{transform:translate(30px,-20px)scale(1.02)}}.fade-in{animation:fadeIn var(--duration-slow) var(--ease-out) forwards}.slide-up{animation:slideUp var(--duration-slow) var(--ease-out) forwards}.slide-up-delay-1{opacity:0;animation:slideUp var(--duration-slow) var(--ease-out) .1s forwards}.slide-up-delay-2{opacity:0;animation:slideUp var(--duration-slow) var(--ease-out) .2s forwards}.slide-up-delay-3{opacity:0;animation:slideUp var(--duration-slow) var(--ease-out) .3s forwards}.slide-up-delay-4{opacity:0;animation:slideUp var(--duration-slow) var(--ease-out) .4s forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.step-container{z-index:1;width:100%;max-width:520px;position:relative}.heading-display{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.01em;font-size:2rem;font-weight:600;line-height:1.2}.heading-section{font-family:var(--font-display);color:var(--text-primary);font-size:1.5rem;font-weight:500;line-height:1.3}.body-text{color:var(--text-secondary);font-size:1rem;line-height:1.7}.body-small{color:var(--text-muted);font-size:.875rem;line-height:1.6}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem;font-weight:600}.btn-primary{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);background:var(--gradient-accent);color:#fff;font-family:var(--font-body);border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);box-shadow:var(--shadow-md), 0 0 20px #4a9e7533;border:none;font-size:.9375rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn-primary:before{content:"";opacity:0;transition:opacity var(--duration-fast);background:linear-gradient(135deg,#ffffff1a 0%,#0000 50%);position:absolute;inset:0}.btn-primary:hover{box-shadow:var(--shadow-lg), 0 0 30px #4a9e754d;transform:translateY(-2px)}.btn-primary:hover:before{opacity:1}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:var(--shadow-sm);transform:none}.btn-secondary{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);color:var(--text-accent);font-family:var(--font-body);border:1px solid var(--border-medium);border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);background:0 0;font-size:.875rem;font-weight:500;display:inline-flex}.btn-secondary:hover{background:var(--accent-glow);border-color:var(--border-focus)}.input-textarea{width:100%;min-height:120px;padding:var(--space-lg);background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);resize:vertical;transition:all var(--duration-normal) var(--ease-out);outline:none;font-size:1rem;line-height:1.6}.input-textarea::placeholder{color:var(--text-muted)}.input-textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow), var(--shadow-sm);background:var(--bg-secondary)}.card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-md)}.ori-bubble{gap:var(--space-md);align-items:flex-start;display:flex}.ori-avatar{background:var(--accent-glow);border:1px solid var(--border-medium);width:36px;height:36px;color:var(--accent-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.ori-name{color:var(--text-accent);letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--space-xs);font-size:.75rem;font-weight:600;display:block}.ori-message{flex:1}.ori-message .heading-section{margin-bottom:0}.complete-icon{border-radius:var(--radius-full);background:var(--accent-glow);border:2px solid var(--accent-primary);width:72px;height:72px;color:var(--accent-primary);animation:checkmarkAppear .6s var(--ease-spring) forwards;justify-content:center;align-items:center;display:flex}.complete-icon.warm{background:var(--accent-warm-glow);border-color:var(--accent-warm);color:var(--accent-warm)}.complete-icon svg{width:36px;height:36px}@keyframes checkmarkAppear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{color:var(--text-primary);background:#4a9e754d}.progress-bar{width:100%;max-width:520px;margin-bottom:var(--space-2xl);z-index:1;position:relative}.progress-track{background:var(--border-subtle);border-radius:1px;width:100%;height:2px;overflow:hidden}.progress-fill{background:var(--gradient-accent);height:100%;transition:width .6s var(--ease-out);border-radius:1px}.progress-dots{justify-content:space-between;margin-top:-5px;padding:0 2px;display:flex}.progress-dot{justify-content:center;align-items:center;width:8px;height:8px;display:flex}.progress-dot-inner{background:var(--bg-secondary);border:1.5px solid var(--border-medium);width:6px;height:6px;transition:all var(--duration-normal) var(--ease-out);border-radius:50%}.progress-dot.completed .progress-dot-inner{background:var(--accent-primary);border-color:var(--accent-primary);box-shadow:0 0 8px #4a9e7566}.progress-dot.active .progress-dot-inner{background:var(--accent-primary);border-color:var(--accent-primary);width:8px;height:8px;box-shadow:0 0 12px #4a9e7580}.typing-indicator{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);animation:fadeIn var(--duration-normal) var(--ease-out);display:flex}.typing-avatar{background:var(--accent-glow);border:1px solid var(--border-medium);width:32px;height:32px;color:var(--accent-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.typing-dots{align-items:center;gap:4px;display:flex}.typing-dot{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite typingBounce}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.typing-label{color:var(--text-muted);font-size:.8125rem;font-style:italic}.welcome-screen{text-align:center;align-items:center;gap:var(--space-xl);padding:var(--space-2xl) 0;flex-direction:column;display:flex}.welcome-orb-container{width:120px;height:120px;margin-bottom:var(--space-md);position:relative}.welcome-orb{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.welcome-orb-core{background:var(--gradient-accent);border-radius:50%;width:48px;height:48px;animation:3s ease-in-out infinite orbPulseCore;box-shadow:0 0 30px #4a9e7566,0 0 60px #4a9e7526}.welcome-orb-ring{border:1.5px solid #4a9e7533;border-radius:50%;animation:12s linear infinite orbRotate;position:absolute;inset:10px}.welcome-orb-ring:before{content:"";background:var(--accent-primary);border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;left:50%;box-shadow:0 0 8px #4a9e7599}.welcome-orb-pulse{border:1px solid #4a9e751a;border-radius:50%;animation:3s ease-in-out infinite orbPulseRing;position:absolute;inset:0}@keyframes orbPulseCore{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes orbRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes orbPulseRing{0%,to{opacity:.5;transform:scale(1)}50%{opacity:0;transform:scale(1.15)}}.welcome-content{align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.welcome-badge{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);background:var(--accent-glow);border:1px solid var(--border-medium);border-radius:var(--radius-full);letter-spacing:.06em;text-transform:uppercase;color:var(--text-accent);font-size:.75rem;font-weight:600;display:inline-flex}.welcome-badge-dot{background:var(--accent-primary);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite badgePulse}@keyframes badgePulse{0%,to{opacity:1}50%{opacity:.4}}.welcome-highlight{background:var(--gradient-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.welcome-footer{margin-top:var(--space-xl);opacity:.5}.api-setup-screen{text-align:center;justify-content:center;align-items:center;gap:var(--space-xl);padding:var(--space-xl);flex-direction:column;min-height:100vh;display:flex}.api-setup-orb-container{flex-shrink:0}.api-setup-orb{width:120px;height:120px;margin:0 auto;position:relative}.api-setup-orb-ring{border:2px solid var(--accent-glow);border-radius:50%;animation:3s ease-in-out infinite pulse-ring;position:absolute;inset:0}.api-setup-orb-core{background:var(--gradient-accent);border-radius:50%;position:absolute;inset:20%;box-shadow:0 0 30px #4a9e7566}.api-setup-orb-pulse{background:radial-gradient(circle,#4a9e754d 0%,#0000 70%);border-radius:50%;animation:2s ease-in-out infinite pulse-core;position:absolute;inset:20%}@keyframes pulse-ring{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@keyframes pulse-core{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.api-setup-content{align-items:center;gap:var(--space-lg);flex-direction:column;max-width:500px;margin:0 auto;display:flex}.api-setup-badge{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--accent-glow);border:1px solid var(--border-focus);border-radius:var(--radius-full);color:var(--accent-primary);font-size:.875rem;font-weight:500;display:inline-flex}.api-setup-badge-dot{background:var(--accent-primary);border-radius:50%;width:8px;height:8px}.api-setup-highlight{background:var(--gradient-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.api-setup-form{gap:var(--space-lg);width:100%;margin-top:var(--space-lg);flex-direction:column;display:flex}.form-group{gap:var(--space-sm);text-align:left;flex-direction:column;display:flex}.form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:600}.form-select,.form-input{padding:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--font-body);background:var(--bg-input);color:var(--text-primary);transition:all var(--duration-normal) var(--ease-out);outline:none;font-size:1rem}.form-select:focus,.form-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow), var(--shadow-sm);background:var(--bg-secondary)}.form-select:disabled,.form-input:disabled{background:var(--bg-secondary);color:var(--text-muted);cursor:not-allowed}.form-input::placeholder{color:var(--text-muted)}.form-hint{color:var(--text-muted);margin-top:var(--space-xs);font-size:.75rem}.error-message{align-items:center;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);color:#e07070;background:#e0707014;border:1px solid #e0707040;font-size:.875rem;display:flex}.error-message svg{color:#e07070;flex-shrink:0}.api-setup-submit{margin-top:var(--space-sm)}.api-setup-footer{color:var(--text-muted);margin-top:auto}@media (width<=640px){.api-setup-screen{padding:var(--space-lg);gap:var(--space-lg)}.api-setup-orb{width:100px;height:100px}.heading-display{font-size:1.875rem}.body-text{font-size:.875rem}}.vitals-step{gap:var(--space-xl);padding-bottom:var(--space-xl);flex-direction:column;display:flex}.vitals-form{gap:var(--space-xl);flex-direction:column;display:flex}.vital-section{gap:var(--space-sm);flex-direction:column;display:flex}.vital-label{letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);font-size:.72rem;font-weight:600}.slider-display{align-items:baseline;gap:var(--space-sm);min-height:2rem;display:flex}.slider-value-label{font-family:var(--font-display);color:var(--text-primary);font-size:1.2rem;font-weight:600;line-height:1}.slider-value-descriptor{color:var(--text-secondary);font-size:.8rem}.slider-wrapper{flex-direction:column;gap:6px;display:flex}.vital-slider{appearance:none;background:linear-gradient(to right, var(--accent-primary) 0%, var(--accent-primary) var(--fill,50%), var(--border-subtle) var(--fill,50%), var(--border-subtle) 100%);cursor:pointer;border:none;border-radius:2px;outline:none;width:100%;height:4px}.vital-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);cursor:pointer;width:20px;height:20px;transition:box-shadow var(--duration-fast) ease;border-radius:50%;box-shadow:0 0 0 3px #4a9e7533,0 2px 6px #00000080}.vital-slider::-webkit-slider-thumb:hover{box-shadow:0 0 0 6px #4a9e7540,0 2px 8px #00000080}.vital-slider:active::-webkit-slider-thumb{box-shadow:0 0 0 6px #4a9e7540,0 2px 8px #00000080}.vital-slider::-moz-range-thumb{background:var(--accent-primary);cursor:pointer;border:none;border-radius:50%;width:20px;height:20px;box-shadow:0 0 0 3px #4a9e7533,0 2px 6px #00000080}.vital-slider::-moz-range-track{background:0 0;border-radius:2px;height:4px}.slider-ticks{justify-content:space-between;padding:0 10px;display:flex}.slider-tick{background:var(--border-subtle);width:4px;height:4px;transition:background var(--duration-fast) ease, transform var(--duration-fast) ease;border-radius:50%;display:block}.slider-tick.filled{background:#4a9e7573}.slider-tick.current{background:var(--accent-primary);transform:scale(1.5)}.option-group{gap:var(--space-xs);flex-direction:column;display:flex}.option-btn{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;text-align:left;transition:background var(--duration-fast) ease, border-color var(--duration-fast) ease, color var(--duration-fast) ease;background:#ffffff05;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.option-btn:hover{border-color:var(--border-medium);color:var(--text-primary);background:#ffffff0d}.option-btn.selected{color:var(--text-primary);background:#4a9e7514;border-color:#4a9e7566}.option-label{font-size:.9rem;font-weight:500;line-height:1.3}.option-sublabel{color:var(--text-muted);font-size:.75rem;line-height:1.3}.option-btn.selected .option-sublabel{color:var(--text-accent)}.vitals-actions{align-items:flex-end;gap:var(--space-sm);flex-direction:column;display:flex}.vitals-hint{color:var(--text-muted);text-align:right;font-size:.78rem}.checkin-step{gap:var(--space-xl);flex-direction:column;display:flex}.checkin-input{gap:var(--space-md);flex-direction:column;display:flex}.checkin-actions{justify-content:space-between;align-items:center;display:flex}.followup-step{gap:var(--space-xl);flex-direction:column;display:flex}.followup-user-message{gap:var(--space-md);justify-content:flex-end;align-items:flex-start;display:flex}.user-bubble{max-width:80%;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md) var(--radius-md) var(--radius-sm) var(--radius-md);background:#4a9e751a;border:1px solid #4a9e7526}.user-bubble .body-text{color:var(--text-primary);font-size:.9375rem}.user-avatar{background:var(--bg-elevated);border:1px solid var(--border-medium);width:36px;height:36px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:.625rem;font-weight:700;display:flex}.followup-input{gap:var(--space-md);flex-direction:column;display:flex}.reflection-step{text-align:center;align-items:center;gap:var(--space-xl);padding:var(--space-xl) 0;flex-direction:column;display:flex}.reflection-quote-container{width:100%;padding:var(--space-xl) var(--space-lg);opacity:0;transition:all .8s var(--ease-out);position:relative;transform:translateY(12px)}.reflection-quote-container.revealed{opacity:1;transform:translateY(0)}.reflection-quote-mark{top:-4px;left:var(--space-md);font-family:var(--font-display);background:var(--gradient-accent);-webkit-text-fill-color:transparent;opacity:.35;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-background-clip:text;background-clip:text;font-size:4rem;line-height:1;position:absolute}.reflection-quote-text{font-family:var(--font-display);color:var(--text-primary);text-align:left;z-index:1;font-size:1.375rem;font-style:italic;font-weight:500;line-height:1.5;position:relative}.reflection-quote-glow{z-index:0;background:radial-gradient(#4a9e7514 0%,#0000 70%);border-radius:50%;animation:4s ease-in-out infinite reflectionGlow;position:absolute;inset:-20px}@keyframes reflectionGlow{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.03)}}.reflection-transition{text-align:left;width:100%;margin-top:calc(-1 * var(--space-md))}.reflection-transition .ori-bubble{text-align:left}.reflection-transition-text{color:var(--text-secondary);font-size:.9375rem;line-height:1.6}.reflection-intervention{align-items:center;gap:var(--space-lg);flex-direction:column;width:100%;display:flex}.intervention-card{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-lg);background:var(--gradient-card);border:1px solid var(--border-medium);border-radius:var(--radius-lg);text-align:center;transition:background var(--duration-normal) ease, border-color var(--duration-normal) ease, transform var(--duration-fast) ease;flex-direction:column;display:flex}.intervention-card.primary{padding:var(--space-xl);justify-content:center;min-height:200px}.intervention-icon{font-size:2.5rem;line-height:1}.intervention-name{font-family:var(--font-display);color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.intervention-description{color:var(--text-secondary);margin:0;font-size:.85rem}.intervention-card.primary .btn-primary{margin-top:var(--space-md)}.btn-escape-hatch{padding:var(--space-sm) var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:border-color var(--duration-fast) ease, color var(--duration-fast) ease, background var(--duration-fast) ease;background:0 0;font-size:.85rem}.btn-escape-hatch:hover{border-color:var(--border-medium);color:var(--text-primary);background:#ffffff05}.alternatives-prompt{color:var(--text-secondary);margin:0 0 var(--space-md) 0;font-size:.85rem}.intervention-choice-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;width:100%;display:grid}.intervention-card.choice-card{cursor:pointer;min-height:140px;padding:var(--space-md);position:relative}.intervention-card.choice-card:hover{border-color:var(--border-focus);background:linear-gradient(145deg,#4a9e750d 0%,#4a9e7505 100%)}.intervention-card.choice-card.selected{border-color:var(--accent-primary);background:linear-gradient(145deg,#4a9e751a 0%,#4a9e750d 100%);box-shadow:0 0 0 1px #4a9e7533}.selected-badge{top:var(--space-sm);right:var(--space-sm);color:var(--accent-primary);border-radius:var(--radius-full);background:#4a9e7526;padding:2px 8px;font-size:.75rem;font-weight:600;position:absolute}.prescription-container{align-items:center;gap:var(--space-xl);padding:var(--space-lg) 0;flex-direction:column;display:flex}.prescription-header{text-align:center;gap:var(--space-xs);flex-direction:column;display:flex}.prescription-card{border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg), var(--shadow-glow);position:relative;overflow:hidden}.prescription-card-bg{z-index:0;background:linear-gradient(145deg,#1a2e24 0%,#111916 40%,#1a1d22 70%,#151d19 100%);position:absolute;inset:0}.prescription-card-bg:before{content:"";background:radial-gradient(at 20% 10%,#4a9e751f 0%,#0000 50%),radial-gradient(at 80% 90%,#c4915e14 0%,#0000 50%);position:absolute;inset:0}.prescription-card-bg:after{content:"";border-radius:var(--radius-xl);border:1px solid var(--border-subtle);pointer-events:none;position:absolute;inset:0}.prescription-card-content{z-index:1;padding:var(--space-2xl) var(--space-xl);gap:var(--space-lg);flex-direction:column;display:flex;position:relative}.prescription-section{gap:var(--space-sm);flex-direction:column;display:flex}.prescription-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.6875rem;font-weight:700}.prescription-quote-block{padding-left:var(--space-md);border-left:2px solid var(--accent-primary);position:relative}.prescription-quote-decoration{font-family:var(--font-display);background:var(--gradient-accent);-webkit-text-fill-color:transparent;opacity:.3;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-background-clip:text;background-clip:text;font-size:3.5rem;line-height:1;position:absolute;top:-12px;left:-4px}.prescription-quote-text{font-family:var(--font-display);color:var(--text-primary);border:none;margin:0;padding:0;font-size:1.5rem;font-style:italic;font-weight:500;line-height:1.4}.prescription-quote-attribution{color:var(--text-muted);margin-top:var(--space-xs);font-size:.8125rem;font-style:italic}.prescription-divider{background:var(--border-subtle);height:1px;margin:var(--space-xs) 0}.prescription-intervention-row{align-items:center;gap:var(--space-md);display:flex}.prescription-intervention-icon{border-radius:var(--radius-md);background:var(--accent-glow);border:1px solid var(--border-medium);width:40px;height:40px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.prescription-intervention-name{color:var(--text-primary);font-size:.9375rem;font-weight:600}.intervention-emoji{font-size:1.5rem;line-height:1}.prescription-why-text{color:var(--text-secondary);margin:0;font-size:.9375rem;font-style:italic;line-height:1.6}.prescription-tip-content{gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);color:var(--accent-warm);background:#c4915e0f;border:1px solid #c4915e1f;display:flex}.prescription-tip-text{color:var(--text-primary);font-size:.9375rem;line-height:1.6}.prescription-card-footer{z-index:1;padding:var(--space-md) var(--space-xl);border-top:1px solid var(--border-subtle);background:#0003;justify-content:space-between;align-items:center;display:flex;position:relative}.prescription-brand{align-items:center;gap:var(--space-sm);color:var(--text-muted);letter-spacing:.04em;font-size:.75rem;font-weight:600;display:flex}.prescription-brand-orb{background:var(--gradient-accent);border-radius:50%;width:8px;height:8px;box-shadow:0 0 6px #4a9e7566}.prescription-card-id{color:var(--text-muted);opacity:.5;font-family:monospace;font-size:.6875rem}.prescription-actions{gap:var(--space-md);flex-wrap:wrap;justify-content:center;display:flex}.prescription-disclaimer{text-align:center;opacity:.5;max-width:400px;font-size:.75rem}.app-wrapper{z-index:1;flex-direction:column;align-items:center;width:100%;max-width:560px;display:flex;position:relative}.app-main{width:100%;animation:stepTransition var(--duration-slow) var(--ease-out);flex-direction:column;align-items:center;display:flex}@keyframes stepTransition{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.loading-container,.error-container{justify-content:center;align-items:center;min-height:200px;display:flex}.error-card{gap:var(--space-lg);text-align:center;flex-direction:column;align-items:center;display:flex}.error-card .heading-section{color:#e07070}.error-actions{gap:var(--space-md);display:flex}.app-topbar{padding:var(--space-md);z-index:100;position:fixed;top:0;right:0}.topbar-reset-btn{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--accent-warm-glow);border-radius:var(--radius-sm);color:var(--accent-warm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);border:1px solid #c4915e4d;font-size:.875rem;font-weight:500;display:flex}.topbar-reset-btn:hover{background:#c4915e2e;border-color:#c4915e80;transform:translateY(-1px)}.topbar-reset-btn:active{transform:translateY(0)}.topbar-reset-btn svg{flex-shrink:0}@media (width<=600px){#root{padding:var(--space-md)}.heading-display{font-size:1.625rem}.heading-section{font-size:1.25rem}.prescription-card-content{padding:var(--space-xl) var(--space-lg)}.pattern-name{font-size:1.75rem}.prescription-pattern-name{font-size:1.375rem}}
