/* ============================================================
   HOOMANING V5 — Now experience redesign
   Now only. No-scroll, visual-first, slower orbital browsing.
   ============================================================ */

/* Now owns the available app viewport; no page scroll in any Now state. */
#screen:has(.v5-now){
  display:flex;
  flex-direction:column;
  min-height:0;
  overflow:hidden !important;
  padding:0 14px !important;
}
.v5-now{
  flex:1;
  min-height:0;
  height:100%;
  width:100%;
  max-width:540px;
  margin:0 auto;
  overflow:hidden;
  position:relative;
}
.v5-now button{-webkit-tap-highlight-color:transparent;}
.v5-kicker{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.16em;color:var(--ochre);text-transform:uppercase;}
.v5-top-back{
  width:34px;height:34px;border-radius:50%;border:1px solid var(--line);
  background:rgba(18,22,24,.78);color:var(--text-dim);display:grid;place-items:center;
  font-size:17px;line-height:1;backdrop-filter:blur(12px);transition:.18s ease;
}
.v5-top-back:hover{color:var(--text);border-color:rgba(148,151,209,.45);transform:translateX(-1px);}

/* ---------------- LANDING ---------------- */
.v5-landing-state{
  height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;
  align-items:center;padding:clamp(10px,2.4dvh,20px) 4px clamp(12px,2dvh,18px);gap:8px;
}
.v5-landing-copy{text-align:center;align-self:start;padding-top:clamp(4px,1.6dvh,16px);}
.v5-landing-copy h1{margin:8px auto 5px;font-size:clamp(25px,7.2vw,35px);line-height:1.06;letter-spacing:-.035em;max-width:420px;}
.v5-landing-copy p{margin:0;color:var(--text-dim);font-size:clamp(12px,3.5vw,14px);}
.v5-world{
  position:relative;width:min(72vw,300px);height:min(72vw,300px);max-height:100%;aspect-ratio:1;
  margin:auto;isolation:isolate;filter:saturate(.95);
}
.v5-world::before{content:"";position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle at 34% 28%,rgba(148,151,209,.14),rgba(118,217,184,.055) 48%,rgba(206,141,117,.03) 68%,transparent 70%);box-shadow:0 0 80px rgba(148,151,209,.055);animation:v5-breathe 7s ease-in-out infinite;}
.v5-world-glow{position:absolute;border-radius:50%;filter:blur(24px);opacity:.16;animation:v5-glow-float 8s ease-in-out infinite;}
.v5-world-glow.a{width:35%;height:35%;left:12%;top:19%;background:var(--periwinkle);}
.v5-world-glow.b{width:31%;height:31%;right:9%;bottom:18%;background:var(--sage);animation-delay:-4s;}
.v5-world-ring{position:absolute;left:50%;top:50%;translate:-50% -50%;border:1px solid rgba(148,151,209,.22);border-radius:50%;transform-origin:center;}
.v5-world-ring.r1{width:82%;height:42%;transform:rotate(-16deg);animation:v5-orbit-cw 20s linear infinite;}
.v5-world-ring.r2{width:57%;height:78%;border-color:rgba(118,217,184,.17);transform:rotate(22deg);animation:v5-orbit-ccw 26s linear infinite;}
.v5-world-ring.r3{width:67%;height:67%;border-style:dashed;border-color:rgba(206,141,117,.12);animation:v5-orbit-cw 32s linear infinite reverse;}
.v5-world-core{position:absolute;left:50%;top:50%;translate:-50% -50%;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;color:var(--sage);background:rgba(118,217,184,.04);border:1px solid rgba(118,217,184,.14);box-shadow:0 0 0 12px rgba(118,217,184,.015);animation:v5-float 5.6s ease-in-out infinite;}
.v5-world-core-icon{width:30px;height:30px;}
.v5-world-bubble{position:absolute;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--text-dim);background:rgba(23,28,30,.72);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(9px);box-shadow:0 8px 28px rgba(0,0,0,.18);animation:v5-bubble-float 6s ease-in-out infinite;}
.v5-world-icon{width:18px;height:18px;}
.v5-world-bubble.b1{left:12%;top:32%;color:var(--sage);animation-delay:-1.1s;}
.v5-world-bubble.b2{right:15%;top:22%;color:var(--periwinkle);animation-delay:-2.6s;}
.v5-world-bubble.b3{right:7%;bottom:28%;color:var(--clay,#ce8d75);animation-delay:-4.1s;}
.v5-world-bubble.b4{left:19%;bottom:18%;color:var(--ochre);animation-delay:-3.2s;}
.v5-world-bubble.b5{left:46%;top:8%;color:var(--clay,#ce8d75);animation-delay:-5s;}
.v5-main-cta{
  min-height:50px;border:1px solid var(--periwinkle);border-radius:999px;padding:0 28px;
  color:#111418;background:var(--periwinkle);font-weight:700;font-size:13px;letter-spacing:.005em;
  box-shadow:0 10px 30px rgba(148,151,209,.13);transition:transform .18s ease,box-shadow .18s ease,background .18s ease,opacity .18s ease;
}
.v5-main-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 38px rgba(148,151,209,.19);background:#a0a4df;}
.v5-main-cta:disabled{opacity:.35;cursor:default;box-shadow:none;}
.v5-surprise{width:min(100%,340px);justify-self:center;}

/* ---------------- PREFERENCES ---------------- */
.v5-pref-state{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:10px;padding:clamp(8px,1.5dvh,14px) 2px clamp(10px,1.8dvh,16px);}
.v5-pref-head{text-align:center;margin-top:-32px;pointer-events:none;}
.v5-pref-head h1{margin:7px 0 0;font-size:clamp(23px,6vw,30px);letter-spacing:-.03em;line-height:1.08;}
.v5-filter-groups{display:grid;align-content:center;gap:clamp(9px,1.7dvh,15px);min-height:0;}
.v5-filter-group{display:grid;gap:6px;}
.v5-filter-group>strong{font-family:var(--font-mono);font-size:8px;letter-spacing:.15em;color:var(--text-faint);font-weight:500;text-align:center;}
.v5-filter-group>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
.v5-filter-chip{
  position:relative;min-height:43px;padding:0 7px;border:1px solid var(--line);border-radius:13px;
  background:rgba(255,255,255,.018);color:var(--text-dim);font-size:11px;font-weight:600;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease;
}
.v5-filter-chip:hover{color:var(--text);border-color:rgba(148,151,209,.35);}
.v5-filter-chip.active{
  color:var(--text);border-color:rgba(148,151,209,.78);
  background:linear-gradient(180deg,rgba(148,151,209,.20),rgba(148,151,209,.095));
  box-shadow:0 0 0 1px rgba(148,151,209,.10),0 8px 22px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.04);
  transform:translateY(-1px);
}
.v5-filter-chip.active::after{content:"✓";position:absolute;right:6px;top:5px;font-family:var(--font-mono);font-size:8px;color:var(--periwinkle);}
.v5-pref-go{width:min(100%,360px);justify-self:center;}

/* ---------------- BROWSE ---------------- */
.v5-browse-state{height:100%;min-height:0;display:grid;grid-template-rows:38px minmax(0,1fr) 58px;gap:7px;padding:clamp(6px,1.2dvh,10px) 0 clamp(6px,1.2dvh,10px);}
.v5-browse-top{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;}
.v5-browse-top .v5-top-back{grid-column:1;}
.v5-filter-summary{grid-column:2;justify-self:center;max-width:100%;border:1px solid rgba(255,255,255,.055);border-radius:999px;background:rgba(255,255,255,.018);color:var(--text-dim);font-size:9.5px;padding:6px 11px;white-space:nowrap;}
.v5-filter-summary span{color:var(--periwinkle);margin-left:7px;}
.v5-browse-stage{position:relative;min-height:0;display:grid;place-items:center;isolation:isolate;overflow:hidden;border-radius:24px;}
.v5-sphere-stack{position:absolute;inset:1% 1% 0;pointer-events:none;z-index:0;overflow:hidden;}
.v5-depth{position:absolute;left:50%;top:46%;width:72%;height:64%;border-radius:42% 46% 44% 50%;border:1px solid rgba(148,151,209,.22);background:linear-gradient(145deg,rgba(148,151,209,.10),rgba(118,217,184,.045));transform-origin:center;filter:blur(13px);opacity:.16;will-change:transform,opacity,filter;}
.v5-depth.d1{transform:translate(-60%,-53%) rotate(-17deg) scale(.92);}
.v5-depth.d2{transform:translate(-38%,-46%) rotate(20deg) scale(.82);filter:blur(17px);opacity:.12;}
.v5-depth.d3{transform:translate(-52%,-41%) rotate(62deg) scale(.72);filter:blur(22px);opacity:.08;}
.v5-depth-orbit{position:absolute;left:50%;top:47%;translate:-50% -50%;border:1px solid rgba(148,151,209,.13);border-radius:50%;opacity:.56;}
.v5-depth-orbit.o1{width:91%;height:42%;transform:rotate(-12deg);}
.v5-depth-orbit.o2{width:62%;height:75%;transform:rotate(22deg);border-color:rgba(118,217,184,.11);}
.v5-active-experience{
  position:relative;z-index:2;width:min(100%,485px);height:100%;min-height:0;
  display:grid;grid-template-rows:minmax(0,1.45fr) minmax(92px,.7fr);align-items:center;
  border:1px solid rgba(255,255,255,.055);border-radius:22px;
  background:radial-gradient(circle at 50% 28%,rgba(148,151,209,.045),transparent 35%),rgba(25,30,32,.54);
  backdrop-filter:blur(11px);box-shadow:0 24px 60px rgba(0,0,0,.12);overflow:hidden;
  will-change:transform,opacity,filter;
}
.v5-experience-visual{position:relative;width:100%;height:100%;min-height:0;display:grid;place-items:center;padding:2px 12px 0;}
.v5-experience-art{width:min(95%,430px);height:100%;min-height:0;display:grid;place-items:center;opacity:.92;}
.v5-experience-art .v4-scene-svg,.v5-scene-svg{width:100%;height:100%;max-height:205px;overflow:visible;}
.v5-scene-icon{position:absolute;right:10%;bottom:7%;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--sage);background:rgba(21,27,29,.82);border:1px solid rgba(118,217,184,.18);box-shadow:0 8px 25px rgba(0,0,0,.16);animation:v5-float 5.8s ease-in-out infinite;}
.v5-scene-icon-svg{width:17px;height:17px;}
.v5-experience-copy{align-self:end;text-align:center;padding:0 18px 13px;min-height:92px;display:flex;flex-direction:column;justify-content:center;}
.v5-experience-copy small{font-family:var(--font-mono);font-size:8px;letter-spacing:.14em;color:var(--ochre);}
.v5-experience-copy h2{margin:6px auto 5px;max-width:440px;font-size:clamp(19px,5.2vw,25px);line-height:1.1;letter-spacing:-.025em;}
.v5-experience-copy p{margin:0 auto;max-width:420px;color:var(--text-dim);font-size:clamp(10.5px,3vw,12.5px);line-height:1.35;min-height:17px;}

/* Extra V5 illustration styling also applies to reused V4 SVGs. */
.v5-experience-art .v4-scene-orbit ellipse,.v5-scene-orbits ellipse{fill:none;stroke:rgba(148,151,209,.10);stroke-width:1;stroke-dasharray:4 10;transform-origin:160px 92px;animation:v5-orbit-cw 32s linear infinite;}
.v5-experience-art .v4-scene-orbit ellipse+ellipse,.v5-scene-orbits ellipse+ellipse{stroke:rgba(118,217,184,.09);animation-direction:reverse;animation-duration:39s;}
.v5-experience-art .v4-scene-main,.v5-scene-main{fill:rgba(148,151,209,.018);stroke:rgba(220,226,230,.48);stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;}
.v5-experience-art .v4-scene-accent,.v5-scene-accent{fill:none;stroke:rgba(118,217,184,.82);}
.v5-scene-dot,.v5-experience-art .v4-scene-dot{fill:var(--clay,#ce8d75);opacity:.62;animation:v5-dot-pulse 4.8s ease-in-out infinite;}
.v5-scene-dot.d2,.v5-experience-art .v4-scene-dot.dot-b{fill:var(--periwinkle);animation-delay:-2s;}

.v5-browse-footer{display:flex;align-items:stretch;}
.v5-browse-actions{width:100%;display:grid;grid-template-columns:.83fr 1.25fr .83fr;gap:7px;}
.v5-side-action,.v5-main-action,.v5-quiet-action{border-radius:999px;min-height:50px;padding:0 8px;font-weight:650;font-size:11.5px;transition:.18s ease;}
.v5-side-action{border:1px solid var(--line);background:var(--surface-2);color:var(--text-dim);}
.v5-side-action:hover:not(:disabled){color:var(--text);border-color:rgba(148,151,209,.38);transform:translateY(-1px);}
.v5-side-action:disabled{opacity:.23;cursor:default;}
.v5-main-action{border:1px solid var(--periwinkle);background:var(--periwinkle);color:#111418;font-weight:750;font-size:12.5px;box-shadow:0 8px 24px rgba(148,151,209,.12);}
.v5-main-action:hover:not(:disabled){transform:translateY(-1px);background:#a0a4df;}

/* Slow, legible orbital/deck transition: shell stays still; active idea moves in depth. */
.v5-active-experience.v5-out-next{animation:v5-out-next .31s cubic-bezier(.4,0,.6,1) forwards;}
.v5-active-experience.v5-out-prev{animation:v5-out-prev .31s cubic-bezier(.4,0,.6,1) forwards;}
.v5-active-experience.v5-in-next{opacity:.05;transform:translate3d(28px,-7px,0) scale(.88) rotate(1.7deg);filter:blur(12px);transition:opacity .39s cubic-bezier(.16,.75,.2,1),transform .39s cubic-bezier(.16,.75,.2,1),filter .39s ease;}
.v5-active-experience.v5-in-prev{opacity:.05;transform:translate3d(-28px,-7px,0) scale(.88) rotate(-1.7deg);filter:blur(12px);transition:opacity .39s cubic-bezier(.16,.75,.2,1),transform .39s cubic-bezier(.16,.75,.2,1),filter .39s ease;}
.v5-active-experience.v5-in-next.settled,.v5-active-experience.v5-in-prev.settled{opacity:1;transform:none;filter:none;}
.v5-browse-stage.is-transitioning .v5-depth.d1{animation:v5-depth-shuffle .68s ease-in-out both;}
.v5-browse-stage.is-transitioning .v5-depth.d2{animation:v5-depth-shuffle2 .68s ease-in-out both;}
@keyframes v5-out-next{to{opacity:.05;transform:translate3d(-31px,9px,0) scale(.91) rotate(-2deg);filter:blur(12px)}}
@keyframes v5-out-prev{to{opacity:.05;transform:translate3d(31px,9px,0) scale(.91) rotate(2deg);filter:blur(12px)}}
@keyframes v5-depth-shuffle{50%{opacity:.24;transform:translate(-52%,-58%) rotate(-8deg) scale(.96)}100%{opacity:.16;transform:translate(-60%,-53%) rotate(-17deg) scale(.92)}}
@keyframes v5-depth-shuffle2{50%{opacity:.18;transform:translate(-46%,-41%) rotate(10deg) scale(.87)}100%{opacity:.12;transform:translate(-38%,-46%) rotate(20deg) scale(.82)}}

/* ---------------- CHOSEN ---------------- */
.v5-chosen-state{height:100%;min-height:0;display:grid;grid-template-rows:38px minmax(0,1.3fr) auto auto;gap:7px;padding:clamp(6px,1.2dvh,10px) 0 clamp(8px,1.4dvh,12px);text-align:center;}
.v5-chosen-stage{position:relative;min-height:0;display:grid;place-items:center;overflow:hidden;border-radius:22px;}
.v5-chosen-art{position:relative;z-index:2;width:min(92%,420px);height:100%;display:grid;place-items:center;}
.v5-chosen-art>.v4-scene-svg,.v5-chosen-art>.v5-scene-svg{width:100%;height:100%;max-height:190px;}
.v5-chosen-art .v5-scene-icon{right:8%;bottom:10%;}
.v5-chosen-copy h1{margin:5px 0 5px;font-size:clamp(23px,6.3vw,31px);letter-spacing:-.03em;}
.v5-chosen-copy p{margin:0 auto;max-width:430px;color:var(--text-dim);font-size:12px;line-height:1.35;}
.v5-chosen-actions{width:min(100%,390px);justify-self:center;display:grid;grid-template-columns:1.2fr .95fr;gap:7px;align-items:stretch;}
.v5-chosen-actions .v5-main-cta{width:100%;min-height:50px;padding-inline:12px;}
.v5-quiet-action{border:1px solid var(--line);background:var(--surface-2);color:var(--text-dim);}
.v5-quiet-action:hover{color:var(--text);border-color:rgba(148,151,209,.38);}

/* ---------------- MOTION ---------------- */
@keyframes v5-orbit-cw{to{transform:rotate(360deg)}}
@keyframes v5-orbit-ccw{to{transform:rotate(-360deg)}}
@keyframes v5-breathe{0%,100%{transform:scale(.98);opacity:.75}50%{transform:scale(1.035);opacity:1}}
@keyframes v5-glow-float{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(8px,-9px,0) scale(1.08)}}
@keyframes v5-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes v5-bubble-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(4deg)}}
@keyframes v5-dot-pulse{0%,100%{opacity:.35;transform:scale(.9)}50%{opacity:.85;transform:scale(1.15)}}

/* Tight viewport handling down to 320 × 568 CSS px. */
@media (max-height:650px){
  .v5-landing-state{padding-top:5px;padding-bottom:7px;gap:4px;}
  .v5-landing-copy{padding-top:0;}
  .v5-world{width:min(58vw,210px);height:min(58vw,210px);}
  .v5-world-bubble{width:34px;height:34px;}
  .v5-world-icon{width:15px;height:15px;}
  .v5-main-cta{min-height:46px;}
  .v5-pref-state{gap:6px;padding-block:4px 7px;}
  .v5-filter-groups{gap:7px;}
  .v5-filter-chip{min-height:38px;font-size:10.5px;}
  .v5-browse-state{grid-template-rows:35px minmax(0,1fr) 51px;gap:5px;padding-block:3px 5px;}
  .v5-browse-top .v5-top-back{width:31px;height:31px;}
  .v5-active-experience{grid-template-rows:minmax(0,1.3fr) minmax(79px,.62fr);border-radius:18px;}
  .v5-experience-copy{min-height:79px;padding-bottom:8px;}
  .v5-experience-copy h2{margin-top:4px;margin-bottom:3px;font-size:clamp(18px,4.9vw,21px);}
  .v5-experience-copy p{font-size:10.5px;}
  .v5-experience-art .v4-scene-svg,.v5-scene-svg{max-height:150px;}
  .v5-scene-icon{width:34px;height:34px;}
  .v5-side-action,.v5-main-action{min-height:45px;font-size:10.5px;}
  .v5-chosen-state{grid-template-rows:34px minmax(0,1fr) auto 47px;padding-block:3px 5px;}
  .v5-chosen-art>.v4-scene-svg,.v5-chosen-art>.v5-scene-svg{max-height:145px;}
  .v5-chosen-copy h1{font-size:23px;}
  .v5-chosen-actions .v5-main-cta,.v5-quiet-action{min-height:45px;}
}
@media (max-width:380px){
  #screen:has(.v5-now){padding-inline:9px !important;}
  .v5-landing-copy h1{font-size:25px;}
  .v5-filter-chip{font-size:10px;padding-inline:4px;}
  .v5-filter-group>div{gap:4px;}
  .v5-filter-summary{font-size:8.8px;padding-inline:9px;}
  .v5-browse-actions{gap:5px;grid-template-columns:.82fr 1.22fr .82fr;}
  .v5-side-action,.v5-main-action{padding-inline:5px;font-size:10px;}
  .v5-experience-copy{padding-inline:9px;}
  .v5-experience-copy h2{font-size:18px;}
  .v5-chosen-actions{gap:5px;}
}
@media (max-width:330px){
  .v5-world{width:185px;height:185px;}
  .v5-filter-chip{font-size:9.4px;}
  .v5-browse-actions{grid-template-columns:.85fr 1.15fr .85fr;}
  .v5-side-action,.v5-main-action{font-size:9.4px;}
}
@media (prefers-reduced-motion:reduce){
  .v5-world *,.v5-active-experience,.v5-depth,.v5-scene-icon,.v5-scene-orbits ellipse,.v5-experience-art .v4-scene-orbit ellipse,.v5-scene-dot,.v5-experience-art .v4-scene-dot{animation:none !important;transition:none !important;}
}
