/* AI Life UI V3.1 — typography, positioning, HUD density and mobile composition master */
:root{
  --v31-screen:430px;
  --v31-pad:14px;
  --v31-nav:78px;
  --v31-text:#fff6f3;
  --v31-muted:#b9aeb4;
  --v31-hairline:rgba(255,226,234,.18);
  --v31-pink:#ff73ad;
  --v31-pink-soft:#ff9bc5;
  --v31-purple:#9276ff;
  --v31-gold:#efc98c;
  --v31-panel:rgba(18,15,24,.64);
  --v31-panel-strong:rgba(16,13,22,.82);
  --v31-shadow:0 14px 42px rgba(0,0,0,.38);
}
html{background:#04050a}
body{margin:0;background:radial-gradient(circle at 50% 18%,#16101d 0,#06070d 36%,#030409 75%);color:var(--v31-text);font-family:Inter,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input{font-family:inherit}
button{-webkit-tap-highlight-color:transparent;transition:transform .15s ease,filter .15s ease,border-color .15s ease,background .15s ease}
button:active{transform:scale(.975)}
button:disabled{opacity:.6;filter:saturate(.45)}
.v3-screen{width:min(100vw,var(--v31-screen));min-height:100dvh;box-shadow:0 0 0 1px rgba(255,255,255,.04),0 24px 100px rgba(0,0,0,.55);font-size:12px}
.v3-screen:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(4,5,10,.07),transparent 16%,transparent 63%,rgba(4,5,10,.18) 78%,rgba(4,5,10,.82));}
.v3-stage{transform:scale(1.01);background-position:52% top;filter:saturate(.92) contrast(1.04) brightness(.84)}
.v3-stage:after{background:linear-gradient(180deg,rgba(3,5,10,.28),rgba(3,5,10,.02) 23%,rgba(3,5,10,.03) 49%,rgba(5,5,10,.34) 67%,rgba(5,6,10,.92) 91%,#05060a 100%),linear-gradient(90deg,rgba(2,3,8,.38),transparent 32%,transparent 70%,rgba(2,3,8,.28))}
.v3-ref{opacity:.10;mix-blend-mode:soft-light;filter:saturate(.78) contrast(1.02)}
.v3-vignette{box-shadow:inset 0 0 90px rgba(0,0,0,.58);background:radial-gradient(circle at 56% 31%,transparent 0 24%,rgba(3,4,9,.035) 46%,rgba(3,4,9,.44) 100%)}
.hud{border-color:var(--v31-hairline);background:linear-gradient(135deg,rgba(41,29,47,.58),rgba(10,11,18,.72));box-shadow:var(--v31-shadow),inset 0 1px rgba(255,255,255,.055);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2)}

/* shared top HUD */
.v3-profile{left:13px;top:15px;grid-template-columns:56px 122px;gap:8px;width:186px;align-items:center}
.v3-avatar{width:56px;height:56px;border-width:1.5px;box-shadow:0 0 0 3px rgba(255,255,255,.035),0 0 24px rgba(255,83,154,.20)}
.v3-avatar b{width:22px;height:22px;font-size:9px;right:-3px;bottom:-2px}
.v3-profile h1{font:500 20px/1.08 Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.05em;margin:0 0 2px}
.v3-profile .level{font-size:10px;letter-spacing:.02em}
.v3-profile .level b{font-size:14px;font-weight:500}
.v3-xp{width:136px;height:4px;margin:5px 0 6px}
.v3-xp em{left:calc(100% + 5px);top:-5px;font-size:8px;white-space:nowrap;color:#e4dce0}
.v3-badge{padding:3px 8px;font-size:9px;line-height:1.2;background:rgba(99,29,73,.45);box-shadow:inset 0 0 14px rgba(255,87,158,.06)}
.v3-resource{top:17px;right:11px;gap:4px}
.v3-resource span{min-height:25px;padding:4px 6px;gap:3px;font-size:9px;line-height:1;border-color:rgba(255,255,255,.16);background:rgba(6,8,13,.78);box-shadow:0 7px 20px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.055)}
.v3-resource span:nth-child(1){border-color:rgba(255,114,175,.22)}
.v3-resource span:nth-child(2){border-color:rgba(145,116,255,.22)}
.v3-resource span:nth-child(3){border-color:rgba(105,177,255,.22)}
.v3-topback{left:8px;top:13px;width:34px;height:38px;font-size:34px;line-height:1}
.v3-title{left:45px;top:22px;font:500 18px/1.05 Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.035em}

/* HOME — reference-driven 9:16 HUD */
.v3-home{min-height:max(100dvh,844px)}
.v3-home .v3-stage{background-position:52% top;filter:saturate(.92) contrast(1.035) brightness(.88)}
.v3-home .v3-ref{opacity:.085}
.v3-quote{left:17px;top:119px;width:190px;padding-left:10px;font:400 12px/1.75 Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.025em;border-left-color:rgba(255,164,198,.9)}
.v3-quote small{font-size:9px}
.v3-side{right:6px;top:105px;gap:5px}
.v3-side button{width:51px;height:53px;gap:3px}
.v3-side button i{font-size:20px;color:#f3d5a4;filter:drop-shadow(0 0 7px rgba(241,198,133,.18))}
.v3-side button span{font-size:8.5px;letter-spacing:.02em}
.v3-side button:after{right:5px;top:3px;width:6px;height:6px}
.v3-task{left:14px;top:clamp(298px,36vh,342px);width:202px;border-radius:11px}
.v3-task header{height:34px;padding:0 11px;font-size:10px;background:rgba(8,9,14,.13)}
.v3-task header b{font-weight:500;letter-spacing:.035em}
.v3-task header small{font-size:7.5px}
.v3-task-row{grid-template-columns:24px 1fr auto;min-height:33px;padding:6px 9px;gap:7px;font-size:9px}
.v3-task-row>i{font-size:15px}
.v3-task-row b{font-size:9px;font-weight:500}
.v3-task-row small{font-size:7.5px}
.v3-task-row button{min-width:35px;padding:5px 7px;font-size:8px;border-radius:5px;box-shadow:0 4px 12px rgba(17,55,118,.16)}
.v3-limited{left:14px;top:clamp(500px,59.5vh,557px);width:202px;height:66px;grid-template-columns:62px 1fr 20px;border-radius:10px}
.v3-limited b{font-size:13px;letter-spacing:.03em}
.v3-limited small{font-size:8px}
.v3-limited span{font-size:7.5px}
.v3-heart{top:auto;right:14px;bottom:238px;width:76px;height:76px;border-radius:50%;font-size:10px}
.v3-heart:before{font-size:28px;line-height:24px}
.v3-heart small{font-size:8px;letter-spacing:.04em}
.v3-modules{left:14px;right:14px;top:auto;bottom:77px;height:154px;gap:7px}
.v3-module{padding:8px 7px 10px;border-radius:11px;border-color:rgba(255,255,255,.19);box-shadow:0 12px 28px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.045)}
.v3-module:after{background:linear-gradient(180deg,rgba(16,10,28,.05) 0%,rgba(10,9,18,.22) 42%,rgba(8,8,14,.90) 100%)}
.v3-module i{margin-top:30px;font-size:27px;opacity:.88}
.v3-module b{margin-top:7px;font:500 14px/1.05 Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.04em}
.v3-module small{margin-top:3px;font-size:7px;letter-spacing:.04em;color:#c7aab9}
.v3-module:nth-child(1){border-color:rgba(176,105,255,.28)}
.v3-module:nth-child(2){border-color:rgba(255,112,163,.28)}
.v3-module:nth-child(3){border-color:rgba(239,195,127,.28)}
.v3-module:nth-child(4){border-color:rgba(112,147,255,.25)}
.v3-module:nth-child(5){border-color:rgba(120,139,255,.28)}
.v3-bottom{height:77px;background:linear-gradient(180deg,rgba(6,7,12,.28),rgba(5,6,10,.94) 23%,#05060a 100%);border-top-color:rgba(255,255,255,.075)}
.v3-bottom button{position:relative;gap:4px;font-size:9px}
.v3-bottom button i{font-size:23px}
.v3-bottom .active i{width:39px;height:39px;display:grid;place-items:center;margin-top:-9px;border-radius:14px 14px 16px 16px;background:linear-gradient(145deg,rgba(255,126,173,.22),rgba(246,202,151,.08));border:1px solid rgba(255,206,183,.22);box-shadow:0 0 22px rgba(255,85,157,.17);transform:rotate(45deg)}
.v3-bottom .active i::first-letter{transform:rotate(-45deg)}

/* CHAT — stage first, messages float around character */
.v3-chat{min-height:max(100dvh,844px)}
.v3-chat .v3-stage{background-position:53% top;filter:saturate(.9) contrast(1.035) brightness(.82)}
.v3-chat .v3-ref{opacity:.075}
.v3-chat .v3-profile{top:54px;left:14px}
.v3-chat .v3-resource{top:17px}
.v3-mood{right:12px;top:88px;width:116px;padding:10px;border-radius:10px}
.v3-mood b{font:500 10px Georgia,"Songti SC","Noto Serif SC",serif}
.v3-mood strong{margin:6px 0 7px;font-size:13px}
.v3-mood small{font-size:7.5px;color:#c7b8bf}
.v3-mood .meter{height:3px;margin-top:5px}
.v3-chat-feed{left:15px;top:178px;width:62%;max-width:255px;max-height:392px;overflow-y:auto;padding:2px 3px 8px 0;gap:9px;scrollbar-width:none;mask-image:linear-gradient(180deg,#000 0,#000 94%,transparent)}
.v3-chat-feed::-webkit-scrollbar{display:none}
.v3-msg{gap:6px}
.v3-msg .miniava{width:27px;height:27px;border:1px solid rgba(255,172,203,.32);box-shadow:0 5px 16px rgba(0,0,0,.25)}
.v3-bubble{max-width:205px;padding:9px 11px;border-radius:12px;font-size:10.5px;line-height:1.55;background:rgba(26,26,32,.72);border-color:rgba(255,255,255,.115);box-shadow:0 9px 24px rgba(0,0,0,.25)}
.v3-msg.me .v3-bubble{background:linear-gradient(135deg,rgba(88,43,115,.78),rgba(109,41,83,.82));border-color:rgba(255,145,190,.24)}
.v3-voice{min-width:158px;grid-template-columns:17px 1fr 26px;padding:8px 10px;background:linear-gradient(135deg,rgba(191,48,108,.82),rgba(99,37,94,.84));box-shadow:0 0 19px rgba(219,58,132,.20)}
.v3-wave{font-size:9px;letter-spacing:1.1px}
.v3-chat-actions{left:14px;right:120px;bottom:144px;gap:6px}
.v3-chat-actions button{height:94px;border-radius:11px;gap:4px;border-color:rgba(255,255,255,.17);box-shadow:0 10px 25px rgba(0,0,0,.25)}
.v3-chat-actions i{font-size:27px}
.v3-chat-actions b{font:500 11px Georgia,"Songti SC","Noto Serif SC",serif}
.v3-chat-actions small{font-size:7px}
.v3-heartcard{right:13px;bottom:144px;width:101px;height:165px;padding:10px 8px;border-radius:12px}
.v3-heartcard .heartorb{font-size:34px;line-height:1;text-shadow:0 0 18px #ff4596}
.v3-heartcard b{font:500 10px Georgia,"Songti SC","Noto Serif SC",serif}
.v3-heartcard strong{display:block;font-size:21px;line-height:1.15;margin-top:2px}
.v3-heartcard small{font-size:7px;line-height:1.45;margin-top:5px}
.v3-heartcard button{margin-top:7px;height:31px;padding:0 5px;font-size:9px;border-radius:7px}
.v3-composer{left:14px;right:120px;bottom:90px;height:45px;padding:5px 6px;border-radius:10px}
.v3-composer input{font-size:9.5px}
.v3-composer button{height:32px;padding:0 13px;font-size:9px}

/* DATE — cinematic middle, controls hug the edges */
.v3-date{min-height:1020px}
.v3-date .v3-stage{background-position:53% 4%;filter:saturate(.94) contrast(1.035) brightness(.80)}
.v3-date .v3-ref{opacity:.08}
.v3-atmos{left:13px;top:72px;width:157px;padding:10px 11px;border-radius:10px}
.v3-atmos small{font-size:8px;line-height:1.45}
.v3-atmos strong{font-size:29px;margin:5px 0 4px}
.v3-atmos .meter{height:4px;margin:7px 0}
.v3-event{left:13px;top:188px;width:171px;padding:10px;border-radius:10px}
.v3-event h3,.v3-goals h3{font:500 11.5px Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.03em}
.v3-event-body{grid-template-columns:58px 1fr;gap:8px}
.v3-event .thumb{height:78px}
.v3-event b{font-size:10px}
.v3-event p{font-size:7.7px;line-height:1.5}
.v3-event button{padding:5px 9px;font-size:7.5px}
.v3-goals{right:13px;top:112px;width:126px;padding:10px}
.v3-goals label{padding:7px 0;font-size:8px}
.v3-goals i{width:13px;height:13px}
.v3-date-dialog{right:16px;top:414px;width:235px;padding:11px 14px;font-size:10.5px;line-height:1.6;border-radius:11px}
.v3-choices{left:42px;right:42px;top:522px}
.v3-choices h3{margin:0 0 8px;font:500 15px Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.05em}
.v3-choice{height:43px;margin:6px 0;padding:0 12px;grid-template-columns:23px 1fr auto;font-size:9.5px;border-radius:10px;background:linear-gradient(90deg,rgba(80,38,65,.78),rgba(28,22,32,.84))}
.v3-choice i{font-size:15px}
.v3-choice b{font-size:8px;white-space:nowrap}
.v3-date-note{font-size:7.5px;margin-top:5px}
.v3-date-panels{left:13px;right:13px;top:724px;grid-template-columns:1.06fr .94fr;gap:8px}
.v3-date-panel{min-height:150px;padding:10px;border-radius:11px}
.v3-date-panel h3{font:500 11.5px Georgia,"Songti SC","Noto Serif SC",serif;margin-bottom:9px}
.v3-reward-grid{gap:5px}
.v3-reward{height:98px}
.v3-reward i{font-size:27px}
.v3-reward b{font-size:7.2px}
.v3-reward small{font-size:6.5px}
.v3-branch{font-size:7.5px;margin:9px 0;align-items:center}
.v3-branch span{padding:6px 6px}
.v3-save{left:94px;right:94px;top:910px;height:52px;font:500 15px Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.08em;box-shadow:0 0 32px rgba(225,64,137,.35),inset 0 1px rgba(255,255,255,.2)}

/* GROWTH — full relationship center */
.v3-growth{min-height:1260px}
.v3-growth .v3-stage{height:710px;background-position:34% top;filter:saturate(.88) contrast(1.03) brightness(.72)}
.v3-growth .v3-ref{height:710px;opacity:.08}
.v3-growth .v3-profile{top:14px;left:13px}
.v3-growth .v3-resource{top:17px}
.v3-growth .v3-topback{top:75px!important;left:8px}
.v3-growth #overview{right:12px!important;top:70px!important;padding:7px 10px;font-size:8.5px;border-radius:8px;background:rgba(17,15,22,.63);backdrop-filter:blur(12px)}
.v3-growth-menu{top:118px;width:91px}
.v3-growth-menu button{height:48px;padding-left:14px;font:500 9.5px Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.025em}
.v3-growth-menu .active{border-left-width:3px;box-shadow:inset 22px 0 28px rgba(105,45,85,.16)}
.v3-growth-title{left:207px;top:84px;width:126px}
.v3-growth-title h2{font:500 22px Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.06em}
.v3-growth-title em{font-size:9px;margin-top:2px}
.v3-tree{left:191px;right:10px;top:128px;height:420px}
.v3-tree:before{width:2px;height:354px;box-shadow:0 0 12px #9e58ff,0 0 26px rgba(255,74,159,.2)}
.v3-node{width:72px;font-size:8px}
.v3-node i{width:38px;height:38px;font-size:18px;border-color:rgba(255,255,255,.2)}
.v3-node b{font-size:8.5px;letter-spacing:.02em}
.v3-node small{font-size:6.6px;margin-top:1px;display:block}
.v3-node.current i{width:49px;height:49px}
.v3-node.n1{left:91px}.v3-node.n2{left:5px}.v3-node.n3{left:93px}.v3-node.n6{left:6px}.v3-node.n7{right:17px}.v3-node.n8{left:78px}
.v3-growth-panels{left:106px;right:12px;top:548px;height:163px;grid-template-columns:1.05fr .88fr 1fr;gap:7px}
.v3-gpanel{padding:9px;border-radius:10px}
.v3-gpanel h3{font:500 10.5px Georgia,"Songti SC","Noto Serif SC",serif;margin-bottom:8px}
.v3-stat{grid-template-columns:28px 1fr 43px;gap:4px;margin:7px 0;font-size:7px}
.v3-stat .bar{height:4px}
.v3-mile{grid-template-columns:7px 1fr auto;gap:4px;margin:7px 0;font-size:6.5px}
.v3-memory-thumb{height:73px}
.v3-gpanel p{font-size:6.5px;line-height:1.45}
.v3-section{left:10px;right:10px;padding:10px;border-radius:11px}
.v3-section>header{margin-bottom:8px}
.v3-section h3{font:500 14px Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.035em}
.v3-section header em{font-size:7.5px}
.v3-story{top:723px;height:181px}
.v3-story-row{gap:6px}
.v3-story-card{height:126px;padding:8px;border-radius:8px}
.v3-story-card b{font-size:10.5px}
.v3-story-card small{font-size:7px;margin-top:3px}
.v3-skills{top:915px;height:190px}
.v3-skill-row{gap:6px}
.v3-skill{height:139px;padding:8px}
.v3-skill i{font-size:24px}
.v3-skill b{font-size:9.5px;line-height:1.25;margin-top:6px}
.v3-skill small{font-size:6.4px;line-height:1.4}
.v3-skill button{margin-top:6px;padding:4px 7px;font-size:6.5px}
.v3-rewards{top:1115px;height:94px;grid-template-columns:133px 1fr 112px;padding:11px}
.v3-rewards h3{font-size:14px}
.v3-rewards small{font-size:7px}
.v3-reward-items{gap:6px}
.v3-reward-items span{width:43px;height:43px;font-size:18px}
.v3-rewards button{height:41px;font-size:11px}

/* secondary pages — same density and typography */
.v3-secondary{width:min(100vw,var(--v31-screen));padding:88px 13px 96px}
.v3-secondary-head{left:11px;right:11px;top:14px}
.v3-secondary-head button{width:32px;height:34px;font-size:30px}
.v3-secondary-head h1{font:500 20px Georgia,"Songti SC","Noto Serif SC",serif;letter-spacing:.04em}
.v3-secondary-head small{font-size:7.5px;margin-top:2px}
.v3-section-title{margin:14px 1px 8px}
.v3-section-title h2{font:500 16px Georgia,"Songti SC","Noto Serif SC",serif}
.v3-section-title small{font-size:7.5px}
.v3-hero-card{height:292px;border-radius:14px;background-position:center 20%}
.v3-hero-card>div{left:13px;right:13px;bottom:12px}
.v3-hero-card h2{font-size:23px}
.v3-hero-card p{font-size:8.5px;line-height:1.5}
.v3-chipbar{gap:5px;margin-top:8px}
.v3-chip{padding:5px 9px;font-size:8px}
.v3-card-grid{gap:8px}
.v3-card{min-height:115px;padding:11px}
.v3-card h3{font-size:12.5px}
.v3-card p{font-size:8px}
.v3-card strong{font-size:9px}
.v3-wide-list{gap:7px}
.v3-list-row{grid-template-columns:40px 1fr auto;min-height:68px;padding:9px 11px}
.v3-list-row i{width:40px;height:40px;font-size:18px}
.v3-list-row b{font-size:10.5px}
.v3-list-row small{font-size:7px;line-height:1.45}
.v3-list-row button{padding:6px 9px;font-size:7px}
.v3-outfits{gap:7px}
.v3-outfit{height:185px;border-radius:11px}
.v3-outfit span{font-size:9px}
.v3-photo{height:215px}
.v3-photo span{font-size:8px}
.v3-rel-grid{gap:8px}
.v3-rel{height:346px}
.v3-rel h2{font-size:21px}
.v3-rel p{font-size:8px;line-height:1.45}
.v3-rel button{height:36px;font-size:8.5px}

/* micro polish */
.v3-screen h1,.v3-screen h2,.v3-screen h3{ text-shadow:0 2px 14px rgba(0,0,0,.30)}
.v3-screen small{letter-spacing:.01em}
.v3-choice,.v3-task,.v3-limited,.v3-date-panel,.v3-gpanel,.v3-section,.v3-chat-actions button,.v3-heartcard{outline:1px solid rgba(255,255,255,.015);outline-offset:-2px}
.v3-choice:hover,.v3-module:hover,.v3-chat-actions button:hover,.v3-outfit:hover,.v3-rel:hover{filter:brightness(1.07)}

/* 390×844 compact target */
@media(max-width:399px){
  :root{--v31-pad:11px;--v31-nav:72px}
  .v3-profile{left:10px;top:13px;transform:scale(.89);transform-origin:left top}
  .v3-resource{right:8px;top:15px;transform:scale(.84);transform-origin:right top}
  .v3-home .v3-profile{transform:scale(.88)}
  .v3-quote{left:13px;top:111px;width:176px;font-size:11px}
  .v3-side{right:2px;top:102px;transform:scale(.92);transform-origin:right top}
  .v3-task{left:11px;top:286px;width:184px}
  .v3-task-row{min-height:31px;padding:5px 8px}
  .v3-limited{left:11px;top:486px;width:184px;height:62px}
  .v3-heart{right:10px;bottom:222px;width:70px;height:70px}
  .v3-modules{left:11px;right:11px;bottom:72px;height:142px;gap:5px}
  .v3-module{padding:7px 5px 9px}.v3-module i{font-size:24px;margin-top:27px}.v3-module b{font-size:12px}.v3-module small{font-size:6.5px}
  .v3-bottom{height:72px}.v3-bottom button{font-size:8px}.v3-bottom button i{font-size:21px}
  .v3-chat .v3-profile{top:49px;left:10px}
  .v3-mood{right:9px;top:82px;width:107px;transform:scale(.94);transform-origin:right top}
  .v3-chat-feed{left:11px;top:165px;width:64%;max-height:365px}.v3-bubble{font-size:9.5px;max-width:185px}
  .v3-chat-actions{left:10px;right:111px;bottom:132px;gap:4px}.v3-chat-actions button{height:86px}.v3-chat-actions i{font-size:23px}.v3-chat-actions b{font-size:9.5px}
  .v3-heartcard{right:9px;bottom:132px;width:96px;height:153px}.v3-composer{left:10px;right:111px;bottom:82px;height:42px}
  .v3-date{min-height:950px}.v3-atmos{left:10px;top:67px;transform:scale(.94);transform-origin:left top}.v3-event{left:10px;top:180px;transform:scale(.94);transform-origin:left top}.v3-goals{right:10px;top:106px;transform:scale(.93);transform-origin:right top}.v3-date-dialog{right:13px;top:382px;width:218px;font-size:9.5px}.v3-choices{left:27px;right:27px;top:480px}.v3-choice{height:41px;font-size:8.8px}.v3-date-panels{left:10px;right:10px;top:672px}.v3-date-panel{min-height:142px;padding:8px}.v3-reward{height:90px}.v3-save{left:75px;right:75px;top:842px;height:49px}
  .v3-growth{min-height:1180px}.v3-growth .v3-stage,.v3-growth .v3-ref{height:680px}.v3-growth-menu{top:110px;width:80px}.v3-growth-menu button{height:44px;padding-left:10px;font-size:8.5px}.v3-growth-title{left:188px;top:78px}.v3-tree{left:174px;top:117px;height:395px}.v3-growth-panels{left:91px;right:9px;top:510px;height:155px}.v3-story{top:681px;height:173px}.v3-skills{top:866px;height:181px}.v3-rewards{top:1059px;height:88px;grid-template-columns:118px 1fr 98px}.v3-reward-items span{width:38px;height:38px}.v3-rewards button{font-size:10px}
  .v3-secondary{padding-left:10px;padding-right:10px}.v3-secondary-head{left:8px;right:8px}.v3-hero-card{height:270px}.v3-outfit{height:168px}.v3-photo{height:195px}.v3-rel{height:315px}
}

/* 430×900+ tall phones: breathe vertically without becoming web-like */
@media(min-width:400px) and (min-height:900px){
  .v3-home .v3-task{top:330px}
  .v3-home .v3-limited{top:548px}
  .v3-home .v3-heart{bottom:252px}
  .v3-home .v3-modules{height:166px}
  .v3-chat-feed{max-height:430px}
}

@media(min-width:540px){
  .v3-screen,.v3-secondary{border-left:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(255,255,255,.05)}
}

@media(prefers-reduced-motion:reduce){.v3-heart{animation:none}button{transition:none}}
