*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:#fff;background:#000;min-height:100svh;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}#root{min-height:100svh}.particle-background{z-index:0;pointer-events:none;transition:opacity 1.1s;display:block;position:fixed;inset:0}body.mirror-active .particle-background{opacity:.22}.emotional-mirror.screen{justify-content:center;align-items:flex-start;padding:2.5rem 1.75rem 3rem;overflow-y:auto}.emotional-mirror__layout{flex-direction:column;align-items:center;gap:2rem;width:100%;max-width:42rem;animation:1.1s forwards mirrorReveal;display:flex}@keyframes mirrorReveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.emotional-mirror__header{text-align:center}.emotional-mirror__eyebrow{letter-spacing:.24em;text-transform:uppercase;color:#e8944ab8;margin:0;font-size:.72rem;font-weight:400}.emotional-mirror__title{letter-spacing:.04em;color:#fff;margin:.85rem 0 0;font-size:clamp(1.5rem,4.5vw,2.125rem);font-weight:300;line-height:1.25}.emotional-mirror__subtitle{letter-spacing:.14em;text-transform:uppercase;color:#ffffff6b;margin:.75rem 0 0;font-size:.92rem;font-weight:300}.emotional-mirror__visual{flex-direction:column;align-items:center;gap:.65rem;width:min(94vw,32rem);display:flex;position:relative}.emotional-mirror__stage{touch-action:none;background:radial-gradient(circle at 50% 45%,#0c0c12eb 0%,#040408fa 55%,#000 100%);border-radius:50%;width:min(94vw,32rem);height:min(72vw,26rem);overflow:hidden;box-shadow:inset 0 0 60px #e876300f,0 0 40px #00000073}.emotional-mirror__stage canvas{outline:none;display:block;width:100%!important;height:100%!important}.emotional-mirror__stage-loading{background:radial-gradient(circle,#e8763014 0%,#0000 65%);width:100%;height:100%;animation:1.8s ease-in-out infinite galaxyPulse}@keyframes galaxyPulse{0%,to{opacity:.35}50%{opacity:.75}}.emotional-mirror__controls-hint{letter-spacing:.18em;text-transform:uppercase;color:#ffffff52;margin:0;font-size:.68rem}.emotional-mirror__visual-glow{pointer-events:none;background:radial-gradient(circle,#e876301f 0%,#e8763008 45%,#0000 70%);border-radius:50%;width:min(94vw,32rem);height:min(72vw,26rem);position:absolute;top:0;left:50%;transform:translate(-50%)}.emotional-mirror__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;width:100%;max-width:28rem;display:grid}.emotional-mirror__metric{background:#ffffff05;border:1px solid #ffffff1a;border-radius:1rem;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;display:flex}.emotional-mirror__metric-hint{letter-spacing:.1em;text-transform:uppercase;color:#ffffff47;text-align:center;font-size:.58rem}.emotional-mirror__metric-label{letter-spacing:.16em;text-transform:uppercase;color:#ffffff6b;font-size:.68rem}.emotional-mirror__metric-value{color:#e8944aeb;font-size:1.125rem;font-weight:300}.emotional-mirror__interpretation{text-align:center;width:min(94vw,54rem);max-width:54rem;padding-inline:.5rem}.emotional-mirror__section-title{letter-spacing:.22em;text-transform:uppercase;color:#ffffff73;margin:0 0 .875rem;font-size:.78rem;font-weight:400}.emotional-mirror__text{color:#ffffffc7;margin:0;font-size:clamp(.78125rem,1.6vw,.8125rem);font-weight:300;line-height:1.78}@media (width<=480px){.emotional-mirror.screen{padding:1.75rem 1.25rem 2.5rem}.emotional-mirror__layout{gap:1.5rem}.emotional-mirror__metrics{gap:.5rem}.emotional-mirror__metric{padding:.6rem .35rem}.emotional-mirror__stage{height:min(68vw,22rem)}}.landing.screen{opacity:1;transition:none;transform:none}.landing.screen--hidden{opacity:0;transition:opacity .35s,transform .35s;transform:translateY(-8px)}@keyframes landing-rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.landing__content{text-align:center;flex-direction:column;align-items:center;max-width:42rem;display:flex}.landing__title{letter-spacing:-.03em;color:#fff;margin:0;font-size:clamp(2.5rem,8vw,5rem);font-weight:300;line-height:1.05}.landing__subtitle{letter-spacing:.12em;text-transform:uppercase;color:#ffffffa6;margin:1.5rem 0 0;font-size:clamp(1rem,2.5vw,1.25rem);font-weight:300}.landing__intro{opacity:0;will-change:transform, opacity}.landing__title.landing__intro{animation:1.2s ease-out forwards landing-rise}.landing__subtitle.landing__intro{animation:1.2s ease-out .2s forwards landing-rise}.landing__begin.landing__intro{animation:1.2s ease-out .4s forwards landing-rise}.landing__intro--done{opacity:1;transform:translateY(0)}.landing__begin{font:inherit;letter-spacing:.2em;text-transform:uppercase;color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff59;border-radius:999px;margin-top:3.5rem;padding:.875rem 3rem;font-size:.9375rem;font-weight:400;transition:border-color .3s,box-shadow .3s,background-color .3s;box-shadow:0 0 20px #ffffff26,0 0 40px #ffffff14}.landing__begin:hover{background-color:#ffffff0a;border-color:#ffffffb3;box-shadow:0 0 24px #ffffff59,0 0 48px #ffffff26,0 0 80px #ffffff14}.landing__begin:focus-visible{outline-offset:4px;outline:2px solid #fff9}@media (width<=480px){.landing__begin{width:100%;max-width:16rem;margin-top:2.5rem}}.question__content{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:32rem;display:flex}.question__progress{letter-spacing:.2em;text-transform:uppercase;color:#fff6;margin:0 0 2rem;font-size:.75rem;font-weight:400}.question__text{letter-spacing:-.01em;color:#fff;margin:0;font-size:clamp(1.375rem,4vw,1.875rem);font-weight:300;line-height:1.35}.question__options{flex-direction:column;gap:.75rem;width:100%;margin:2.5rem 0 0;padding:0;list-style:none;display:flex}.question__option{width:100%;font:inherit;text-align:left;color:#fff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:.5rem;align-items:center;gap:1rem;padding:1rem 1.25rem;font-size:.9375rem;font-weight:300;transition:border-color .25s,background-color .25s,box-shadow .25s;display:flex}.question__option:hover{background-color:#ffffff0a;border-color:#ffffff73;box-shadow:0 0 20px #ffffff0f}.question__option:focus-visible{outline-offset:2px;outline:2px solid #ffffff80}.question__option-label{letter-spacing:.1em;color:#ffffff80;flex-shrink:0;width:1.75rem;font-size:.8125rem;font-weight:400}.question__option-text{flex:1}@media (width<=480px){.question__options{margin-top:2rem}.question__option{padding:.875rem 1rem}}.strategy-ball__slot{flex-shrink:0;width:clamp(6.5rem,18vw,7.75rem);height:clamp(6.5rem,18vw,7.75rem);margin:0;padding:0}.strategy-ball{cursor:pointer;touch-action:none;box-sizing:border-box;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:clamp(6.5rem,18vw,7.75rem);height:clamp(6.5rem,18vw,7.75rem);margin:0;padding:0;transition:transform .35s;display:flex;position:relative}.strategy-ball--floating{z-index:9999;cursor:grabbing;margin:0;padding:0;transition:none;position:fixed}.strategy-ball--floating.strategy-ball--returning{transition:left .35s ease-out,top .35s ease-out}.strategy-ball:hover:not(.strategy-ball--floating){transform:scale(1.08)}.strategy-ball--dragging .strategy-ball__glow,.strategy-ball--dragging .strategy-ball__sphere{animation:none}.strategy-ball--dragging .strategy-ball__glow{opacity:1;inset:-20%;transform:scale(1.25)}.strategy-ball--dragging .strategy-ball__sphere{box-shadow:0 0 36px color-mix(in srgb, var(--ball-color) 80%, transparent), 0 0 72px color-mix(in srgb, var(--ball-color) 50%, transparent), inset 0 0 24px #ffffff2e;transform:scale(1.06)}.strategy-ball--over-zone .strategy-ball__sphere{box-shadow:0 0 40px color-mix(in srgb, var(--ball-color) 90%, transparent), 0 0 80px color-mix(in srgb, var(--ball-color) 55%, transparent), inset 0 0 24px #ffffff38}.strategy-ball:focus-visible{outline-offset:6px;outline:2px solid #ffffff73}.strategy-ball--locked{cursor:default;opacity:.72}.strategy-ball--locked:not(.strategy-ball--selected){opacity:.5}.strategy-ball--selected .strategy-ball__sphere{box-shadow:0 0 28px color-mix(in srgb, var(--ball-color) 70%, transparent), 0 0 56px color-mix(in srgb, var(--ball-color) 40%, transparent), inset 0 0 20px #ffffff1f}.strategy-ball__glow{background:radial-gradient(circle, color-mix(in srgb, var(--ball-color) 45%, transparent) 0%, transparent 70%);opacity:.7;animation:4s ease-in-out infinite strategy-ball-glow;animation-delay:var(--ball-delay);pointer-events:none;border-radius:50%;position:absolute;inset:-12%}.strategy-ball__sphere{background:radial-gradient(circle at 32% 28%, color-mix(in srgb, var(--ball-color) 90%, white) 0%, var(--ball-color) 42%, color-mix(in srgb, var(--ball-color) 60%, black) 100%);box-shadow:0 0 24px color-mix(in srgb, var(--ball-color) 55%, transparent), 0 0 48px color-mix(in srgb, var(--ball-color) 25%, transparent), inset 0 -8px 16px #00000059, inset 0 4px 12px #ffffff26;animation:4s ease-in-out infinite strategy-ball-breathe;animation-delay:var(--ball-delay);pointer-events:none;border-radius:50%;position:absolute;inset:0}.strategy-ball__content{z-index:1;text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;margin:0;padding:.75rem;display:flex;position:relative}.strategy-ball__label{letter-spacing:.06em;color:#fff;text-shadow:0 1px 6px #0009;margin:0;font-size:.6875rem;font-weight:400;line-height:1.25}.strategy-ball__description{color:#ffffffd1;text-shadow:0 1px 4px #0000008c;max-width:5.5rem;margin:0;font-size:.5625rem;font-weight:300;line-height:1.35}@keyframes strategy-ball-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes strategy-ball-glow{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.9;transform:scale(1.1)}}@media (width<=640px){.strategy-ball__label{font-size:.625rem}.strategy-ball__description{max-width:4.75rem;font-size:.5rem}}.strategy-cards{justify-content:center;align-items:flex-start;gap:clamp(.75rem,4vw,1.5rem);width:100%;margin:0;padding:0;list-style:none;display:flex}.strategy-cards__item{flex:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex}@media (width<=640px){.strategy-cards{gap:.625rem}}@media (width<=400px){.strategy-cards{flex-wrap:wrap}}.scenario-engine.screen{justify-content:center;align-items:center;padding:1.75rem 2rem 2.25rem}.scenario-engine__layout{opacity:1;grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:center;width:100%;max-width:52rem;min-height:calc(100svh - 3.5rem);transition:opacity .35s,transform .35s;display:grid;transform:translateY(0)}.scenario-engine__layout--hidden{opacity:0;transform:translateY(8px)}.scenario-engine__top{text-align:center;flex-direction:column;grid-area:1/1;align-self:start;align-items:center;width:100%;max-width:46rem;padding-top:1.25rem;padding-bottom:1.25rem;display:flex}.scenario-engine__bottom{flex-direction:column;grid-area:3/1;place-self:end center;align-items:center;gap:1.25rem;width:100%;max-width:40rem;padding-top:1.5rem;padding-bottom:.5rem;display:flex}.scenario-engine__progress{letter-spacing:.2em;text-transform:uppercase;text-align:center;color:#fff6;width:100%;max-width:44rem;margin:0 0 .875rem;font-size:.75rem;font-weight:400}.scenario-engine__header{text-align:center;width:100%;max-width:44rem;margin-inline:auto}.scenario-engine__title{letter-spacing:-.01em;color:#fff;margin:0;font-size:clamp(1.375rem,4vw,1.875rem);font-weight:300;line-height:1.3}.scenario-engine__description{color:#ffffffa6;max-width:40rem;margin:1rem auto 0;font-size:clamp(.9375rem,2.5vw,1.0625rem);font-weight:300;line-height:1.65}.scenario-engine__field{background:#ffffff05;border:1px dashed #ffffff26;border-radius:.5rem;grid-area:2/1;justify-content:center;align-items:center;width:100%;min-height:10rem;transition:border-color .25s,background-color .25s,box-shadow .25s;display:flex}.scenario-engine__field--active{background:#ffffff0d;border-color:#ffffff59;box-shadow:0 0 32px #ffffff0f}.scenario-engine__field-label{letter-spacing:.18em;text-transform:uppercase;color:#ffffff40;font-size:.75rem;font-weight:400}.scenario-engine__debug-message{z-index:2;letter-spacing:.14em;text-transform:uppercase;color:#ffffffd9;pointer-events:none;background:#0000008c;border:1px solid #fff3;border-radius:999px;grid-area:2/1;margin:0;padding:.5rem 1rem;font-size:.75rem;font-weight:400}.scenario-engine__next{font:inherit;letter-spacing:.18em;text-transform:uppercase;color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff59;border-radius:999px;margin:0;padding:.875rem 2.5rem;font-size:.875rem;font-weight:400;transition:border-color .3s,background-color .3s,box-shadow .3s}.scenario-engine__next:hover{background-color:#ffffff0a;border-color:#ffffffa6;box-shadow:0 0 20px #ffffff14}.scenario-engine__next:focus-visible{outline-offset:4px;outline:2px solid #ffffff80}.scenario-engine__mirror{color:#fff0e6f2;border-color:#e8944a73}.scenario-engine__mirror:hover{background-color:#e8763014;border-color:#e8944ac7;box-shadow:0 0 24px #e8763024}@media (width<=640px){.scenario-engine.screen{padding:1.5rem 1.25rem 2rem}.scenario-engine__layout{min-height:calc(100svh - 3rem)}.scenario-engine__top{max-width:100%;padding-top:1rem;padding-bottom:1rem}.scenario-engine__header,.scenario-engine__description{max-width:100%}.scenario-engine__bottom{padding-top:1.25rem;padding-bottom:.25rem}.scenario-engine__field{min-height:8rem}}.screen{z-index:1;box-sizing:border-box;opacity:0;justify-content:center;align-items:center;min-height:100svh;padding:2rem;transition:opacity .35s,transform .35s;display:flex;position:relative;transform:translateY(10px)}.screen--visible{opacity:1;transform:translateY(0)}.screen--hidden{opacity:0;transform:translateY(-8px)}@media (width<=480px){.screen{padding:1.5rem}}
