@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:#070511;color:#e2ddf7;min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased}.app{max-width:780px;margin:0 auto;padding:2rem 1.25rem 3rem}.app-header{text-align:center;margin-bottom:2.5rem}.app-title{font-size:clamp(1.6rem,5vw,2.4rem);font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,#a78bfa,#67e8f9,#86efac 80%,#fde68a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;margin-bottom:1rem}.app-intro{font-size:1rem;color:#b0a8d4;max-width:580px;margin:0 auto;line-height:1.7}.app-main{display:flex;flex-direction:column;gap:2.5rem}.orb-section{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0}.orb-wrapper{position:relative;display:flex;justify-content:center;align-items:center;width:100%;max-width:440px}.orb-wrapper canvas{border-radius:50%;display:block;width:100%;height:auto;max-width:440px;filter:drop-shadow(0 0 32px rgba(80,40,255,.45)) drop-shadow(0 0 64px rgba(80,40,255,.2));transition:filter .4s ease}.orb-legend{width:100%;max-width:440px;margin-top:1rem}.legend-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#5a5380;font-weight:600;margin-bottom:.55rem;text-align:center}.legend-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem 1rem}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0}.legend-label{font-size:.8rem;color:#9490b8;line-height:1.3}.orb-controls{display:flex;justify-content:center;margin-top:.75rem}.pause-btn{padding:.45rem 1.1rem;font-size:.8rem;font-weight:500;border-radius:999px;border:1px solid rgba(167,139,250,.2);background:#ffffff0a;color:#8880b0;cursor:pointer;transition:background .15s,color .15s,border-color .15s;touch-action:manipulation;letter-spacing:.02em}.pause-btn:hover{background:#ffffff14;color:#c0bce0;border-color:#a78bfa66}.pause-btn.paused{color:#a78bfa;border-color:#a78bfa73;background:#a78bfa14}.pause-btn:focus-visible{outline:3px solid #a78bfa;outline-offset:3px}.sliders-section{display:flex;flex-direction:column;gap:1.5rem}.sliders-grid{display:flex;flex-direction:column;gap:1.25rem}.slider-row{display:flex;flex-direction:column;gap:.35rem}.slider-label-row{display:flex;justify-content:space-between;align-items:center}.slider-label{display:flex;align-items:center;gap:.55rem;font-size:.975rem;font-weight:500;color:#d4ceee;cursor:default}.label-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.slider-value{font-size:1rem;font-weight:700;min-width:2rem;text-align:right;font-variant-numeric:tabular-nums;transition:color .2s}.slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:#ffffff1a;outline:none;cursor:pointer;position:relative;transition:background .2s}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--thumb-color, #a78bfa);box-shadow:0 0 12px var(--thumb-color, #a78bfa),0 0 24px #a78bfa4d;cursor:pointer;transition:transform .15s,box-shadow .15s;border:2px solid rgba(255,255,255,.15)}.slider::-webkit-slider-thumb:hover,.slider:focus::-webkit-slider-thumb{transform:scale(1.18);box-shadow:0 0 18px var(--thumb-color, #a78bfa),0 0 36px #a78bfa80}.slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--thumb-color, #a78bfa);box-shadow:0 0 12px var(--thumb-color, #a78bfa);cursor:pointer;border:2px solid rgba(255,255,255,.15);transition:transform .15s}.slider::-moz-range-thumb:hover{transform:scale(1.18)}.slider:focus{outline:none}.slider:focus-visible{box-shadow:0 0 0 3px #a78bfa80;border-radius:999px}.slider-tick-labels{display:flex;justify-content:space-between;font-size:.7rem;color:#6b648a;padding:0 2px}.button-row{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.generate-btn{padding:.85rem 2.2rem;font-size:1rem;font-weight:600;border-radius:999px;border:none;cursor:pointer;background:linear-gradient(135deg,#7c3aed,#2563eb,#0891b2);color:#fff;letter-spacing:.01em;box-shadow:0 0 24px #7c3aed80,0 4px 16px #0006;transition:transform .15s,box-shadow .2s;min-width:180px;touch-action:manipulation}.generate-btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 0 36px #7c3aedb3,0 6px 20px #00000080}.generate-btn:active{transform:scale(.97)}.generate-btn:focus-visible{outline:3px solid #a78bfa;outline-offset:3px}.download-btn{padding:.85rem 1.8rem;font-size:1rem;font-weight:600;border-radius:999px;border:1px solid rgba(0,221,170,.35);cursor:pointer;background:#00b48c1f;color:#5eecd8;letter-spacing:.01em;box-shadow:0 0 18px #00c8a033,0 4px 12px #0000004d;transition:background .15s,color .15s,box-shadow .2s,transform .1s;touch-action:manipulation}.download-btn:hover{background:#00c8a038;color:#a0f5e8;box-shadow:0 0 28px #0da6,0 6px 16px #0006;transform:translateY(-2px) scale(1.03)}.download-btn:active{transform:scale(.97)}.download-btn:focus-visible{outline:3px solid #5eecd8;outline-offset:3px}.reset-btn{padding:.85rem 1.6rem;font-size:1rem;font-weight:500;border-radius:999px;border:1px solid rgba(167,139,250,.25);cursor:pointer;background:#ffffff0d;color:#b0a8d4;transition:background .15s,color .15s,transform .1s;touch-action:manipulation}.reset-btn:hover{background:#ffffff1a;color:#d4ceee}.reset-btn:active{transform:scale(.97)}.reset-btn:focus-visible{outline:3px solid #a78bfa;outline-offset:3px}.reflection-section{display:flex;justify-content:center}.reflection-panel{background:#ffffff0a;border:1px solid rgba(167,139,250,.15);border-radius:1.25rem;padding:1.75rem 1.5rem;width:100%;display:flex;flex-direction:column;gap:1.25rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.reflection-panel.empty-state{text-align:center;color:#7b74a0;gap:.75rem}.reflection-panel.empty-state p{font-size:.95rem}.top-areas h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:#7b74a0;margin-bottom:.75rem;font-weight:600}.top-areas-list{display:flex;flex-direction:column;gap:.6rem}.top-area-item{display:flex;align-items:center;gap:.6rem}.area-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.area-label{flex:1;font-size:.95rem;color:#ccc8ea}.area-score{font-size:.9rem;font-weight:600;color:#a09bc6;font-variant-numeric:tabular-nums}.reflection-text{font-size:1rem;line-height:1.7;color:#c8c2e8;border-left:3px solid rgba(124,58,237,.5);padding-left:1rem;font-style:italic}.support-note{font-size:.95rem;color:#9d96c4;font-weight:500;text-align:center;padding-top:.25rem;border-top:1px solid rgba(255,255,255,.06)}.app-footer{text-align:center;margin-top:3rem;font-size:.8rem;color:#4d4770}@media(max-width:480px){.app{padding:1.5rem 1rem 2.5rem}.slider::-webkit-slider-thumb{width:28px;height:28px}.slider{height:8px}.generate-btn,.download-btn,.reset-btn{width:100%}.button-row{flex-direction:column}}@media(prefers-reduced-motion:reduce){.generate-btn,.download-btn,.reset-btn,.slider::-webkit-slider-thumb{transition:none}}
