:root{
  --bg:#07090b; --bg2:#0b0e11; --panel:#0f1215; --panel2:#12161a; --line:rgba(255,255,255,.14);
  --text:#f7f7f3; --muted:#a7a7a1; --lime:#d9ff22; --lime2:#bfe710; --violet:#8b3dff;
  --orange:#ff9d28; --red:#ff5b61; --yellow:#ffd83d; --green:#91ff39;
  --radius:24px; --radius-sm:16px; --shadow:0 24px 80px rgba(0,0,0,.38);
  --hand:"Segoe Print","Bradley Hand","Marker Felt","Comic Sans MS",cursive;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box} html{background:var(--bg);color-scheme:dark} body{margin:0;background:
radial-gradient(circle at 20% 8%,rgba(139,61,255,.055),transparent 32%),
radial-gradient(circle at 85% 0%,rgba(217,255,34,.035),transparent 27%),var(--bg);color:var(--text);font-family:var(--sans);min-height:100vh}
a{color:inherit;text-decoration:none} button,input,select{font:inherit}
/* Core icon sizing: must stay in the base design system so SVG sprites can never fall back to intrinsic 300x150 sizing. */
.gt-icon{width:1.15em;height:1.15em;display:inline-block;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.topbar .gt-icon{width:18px;height:18px;vertical-align:-3px}
.app-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,64px);border-bottom:1px solid rgba(255,255,255,.04);position:sticky;top:0;background:rgba(7,9,11,.88);backdrop-filter:blur(18px);z-index:30}.logo{display:inline-flex;align-items:flex-start;font-family:var(--hand);font-weight:800;font-size:30px;line-height:.8;letter-spacing:-2px;position:relative}.logo .go{display:block}.logo .together{display:block;margin-left:-1px}.logo-rays{position:absolute;right:-27px;top:-7px;width:28px;height:22px}.ray{position:absolute;width:4px;border-radius:4px;height:12px;transform-origin:center bottom}.ray:nth-child(1){background:#ff5d63;transform:rotate(12deg);left:2px}.ray:nth-child(2){background:#ff9d42;transform:rotate(48deg);left:13px;top:5px}.ray:nth-child(3){background:var(--lime);transform:rotate(84deg);left:21px;top:14px;height:8px}.nav{display:flex;align-items:center;gap:18px}.nav-link{padding:12px 14px;color:#ddd;display:flex;gap:8px;align-items:center}.nav-link.active{color:#fff;position:relative}.nav-link.active:after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:3px;border-radius:99px;background:var(--lime);transform:rotate(-1deg)}.profile-dot{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#777,#222);display:grid;place-items:center;border:2px solid rgba(255,255,255,.15);font-size:20px}.btn{border:1px solid var(--line);background:transparent;color:#fff;border-radius:18px;padding:14px 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:.18s ease;font-weight:700}.btn:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.28)}.btn-primary{background:linear-gradient(135deg,var(--lime),var(--lime2));color:#111;border-color:transparent;box-shadow:0 8px 30px rgba(217,255,34,.1)}.btn-primary:hover{box-shadow:0 12px 40px rgba(217,255,34,.18)}.btn-violet{border-color:rgba(139,61,255,.55);color:#bf8fff}.btn-xl{min-height:62px;padding:17px 26px;border-radius:23px;font-size:19px;font-family:var(--hand);font-weight:800}.arrow{font-size:27px;line-height:1}.container{width:min(1400px,calc(100% - 48px));margin:0 auto}.page{flex:1;padding:42px 0 56px}.eyebrow{font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:var(--lime);font-weight:800}.display{font-family:var(--hand);font-size:clamp(40px,4vw,68px);line-height:1.05;letter-spacing:-2px;margin:10px 0 15px;max-width:900px}.title{font-family:var(--hand);font-size:clamp(32px,3vw,50px);line-height:1.08;letter-spacing:-1.5px;margin:8px 0 14px}.subtitle{color:var(--muted);font-size:18px;line-height:1.6;max-width:650px}.underline{position:relative;display:inline-block}.underline:after{content:"";position:absolute;height:5px;left:3%;right:0;bottom:-5px;background:var(--lime);border-radius:99px;transform:rotate(-1deg)}.panel{background:linear-gradient(180deg,rgba(18,22,26,.95),rgba(12,15,18,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-pad{padding:28px}.sticker{width:128px;height:128px;border:3px solid var(--violet);border-radius:50%;display:grid;place-items:center;text-align:center;font-family:var(--hand);font-weight:800;color:#fff;transform:rotate(-3deg);position:relative;box-shadow:inset 0 0 30px rgba(139,61,255,.08)}.sticker:before,.sticker:after{content:"";position:absolute;background:var(--violet);width:4px;height:16px;border-radius:99px;right:8px;top:-15px;transform:rotate(20deg)}.sticker:after{right:-6px;top:-2px;transform:rotate(65deg);height:12px}.privacy{color:#d7c4ff}.chip-row{display:flex;gap:10px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:9px 14px;color:#e7e7e2;background:rgba(255,255,255,.015)}.chip.violet{border-color:rgba(139,61,255,.5);color:#c39cff}.chip.lime{border-color:rgba(217,255,34,.65);color:#e9ff78}.section-label{font-family:var(--hand);font-size:22px;margin:0 0 16px}.muted{color:var(--muted)}.divider{height:1px;background:var(--line);margin:20px 0}.media{overflow:hidden;background:#111;border-radius:18px}.media img{width:100%;height:100%;object-fit:cover;display:block}.activity-img{aspect-ratio:1.24/1}.activity-card{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#11151a,#0c0f12);transition:.2s}.activity-card:hover{border-color:rgba(217,255,34,.45);transform:translateY(-2px)}.activity-card.selected{border-color:var(--lime);box-shadow:0 0 0 1px var(--lime)}.activity-body{padding:16px}.activity-title{font-family:var(--hand);font-size:25px;font-weight:800}.score{font-size:22px;display:flex;align-items:center;gap:8px}.score strong{color:#fff}.score-heart{color:var(--violet);font-size:27px}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.mini-card .activity-img{aspect-ratio:1.12/1}.mini-card .activity-body{padding:10px 2px}.hero-grid{display:grid;grid-template-columns:minmax(300px,.83fr) minmax(620px,1.45fr);gap:58px;align-items:start}.hero-copy{padding-top:56px}.hero-copy .btn-stack{display:grid;gap:12px;max-width:500px;margin-top:28px}.proof{display:flex;align-items:center;gap:14px;margin-top:22px;color:#ccc}.avatars{display:flex}.avatar{width:42px;height:42px;border-radius:50%;border:2px solid #111;margin-left:-10px;background:linear-gradient(135deg,#ffe0bd,#573b2e);display:grid;place-items:center;color:#111;font-weight:900;overflow:hidden}.avatar:first-child{margin-left:0}.avatar:nth-child(2n){background:linear-gradient(135deg,#c9a07a,#3d2c24)}.avatar:nth-child(3n){background:linear-gradient(135deg,#8bb7d4,#3a2b25)}.session-card{padding:25px}.session-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:18px}.session-title{font-family:var(--hand);font-size:30px}.status{font-size:13px;font-weight:900;border-radius:999px;padding:8px 13px;background:var(--lime);color:#141414}.how-strip{margin-top:26px;padding:18px 22px}.how-items{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.how-item{display:grid;grid-template-columns:36px 1fr;gap:10px}.how-num{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--violet);font-weight:900}.footer-strip{border-top:1px solid var(--line);padding:22px clamp(24px,5vw,70px);display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.footer-benefit{display:flex;align-items:center;gap:13px}.footer-benefit .ico{font-size:28px;color:var(--lime)}.footer-benefit b{display:block}.footer-benefit span{color:var(--muted);font-size:13px}.layout-form{display:grid;grid-template-columns:minmax(260px,.55fr) minmax(600px,1.25fr) minmax(260px,.55fr);gap:28px;align-items:start}.side-copy{position:sticky;top:125px}.main-card{padding:20px}.option-list{display:grid;gap:10px}.option{display:grid;grid-template-columns:210px 1fr 38px;align-items:center;border:1px solid var(--line);border-radius:18px;overflow:hidden;min-height:110px;background:rgba(255,255,255,.01);cursor:pointer}.option:hover{border-color:rgba(255,255,255,.3)}.option.selected{border-color:var(--lime);box-shadow:0 0 0 1px rgba(217,255,34,.35)}.option-media{height:100%;min-height:110px;position:relative;overflow:hidden;background:linear-gradient(145deg,#2e1b43,#1d1d1d)}.option-media img{width:100%;height:100%;object-fit:cover}.option-media.fallback{display:grid;place-items:center;font-size:42px;background:radial-gradient(circle at 30% 30%,rgba(139,61,255,.45),transparent 40%),linear-gradient(135deg,#171129,#11131a)}.option-text{padding:16px 22px}.option-text strong{font-family:var(--hand);font-size:25px}.option-text span{display:block;color:var(--muted);margin-top:4px}.radio{width:27px;height:27px;border:2px solid #ddd;border-radius:50%;margin-right:16px;position:relative}.option.selected .radio{border-color:var(--lime)}.option.selected .radio:after{content:"";position:absolute;inset:5px;background:var(--lime);border-radius:50%}.side-panel{padding:22px;position:sticky;top:125px}.side-panel h3{margin-top:0;font-family:var(--hand);font-size:23px}.recap-list{display:grid;gap:15px}.recap-item{display:flex;align-items:center;gap:12px}.recap-ico{color:var(--violet);font-size:20px}.stepper{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:24px}.step{display:flex;align-items:center;gap:8px;color:#777}.step .bubble{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center}.step.active{color:var(--lime)}.step.active .bubble{background:var(--lime);color:#111;border-color:transparent}.step.done{color:#aaa}.form-group{padding:21px 0;border-bottom:1px solid var(--line)}.form-group:first-child{padding-top:0}.form-group:last-child{border-bottom:0}.label{display:flex;align-items:center;gap:10px;font-family:var(--hand);font-size:21px;margin-bottom:12px}.input{width:100%;height:54px;border:1px solid var(--line);border-radius:14px;background:#0b0e11;color:white;padding:0 16px;outline:0}.input:focus{border-color:var(--violet);box-shadow:0 0 0 3px rgba(139,61,255,.12)}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid var(--line);border-radius:15px;overflow:hidden}.segment{border:0;border-right:1px solid var(--line);background:transparent;color:#ddd;padding:13px;cursor:pointer}.segment:last-child{border-right:0}.segment.active{background:rgba(139,61,255,.12);color:#d5baff;box-shadow:inset 0 0 0 1px var(--violet)}.range-wrap{display:flex;align-items:center;gap:14px}.range{accent-color:var(--lime);width:100%}.pills{display:flex;flex-wrap:wrap;gap:10px}.pill{border:1px solid var(--line);border-radius:14px;padding:12px 18px;cursor:pointer;background:transparent;color:#ddd}.pill.active{background:var(--lime);color:#111;border-color:transparent}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:15px 0}.toggle{width:55px;height:30px;border-radius:999px;background:#333;position:relative;cursor:pointer}.toggle:after{content:"";position:absolute;width:24px;height:24px;border-radius:50%;background:#eee;top:3px;left:4px;transition:.18s}.toggle.on{background:var(--lime)}.toggle.on:after{left:27px;background:#fff}.share-grid{display:grid;grid-template-columns:1.1fr .85fr;gap:28px}.share-box{padding:24px}.link-field{display:grid;grid-template-columns:1fr auto;gap:10px}.link-value{border:1px solid var(--line);background:#0a0d10;border-radius:14px;padding:17px;color:var(--lime);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:17px}.qr{width:180px;aspect-ratio:1;background:#fff;border-radius:18px;padding:12px;display:grid;grid-template-columns:repeat(9,1fr);gap:2px}.qr i{background:#111}.qr i:nth-child(3n){background:#fff}.participant-list{display:grid}.person-row{display:grid;grid-template-columns:50px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.person-row:last-child{border-bottom:0}.person-status{color:var(--lime)}.person-status.wait{color:var(--orange)}.join-grid{display:grid;grid-template-columns:.8fr 1fr .8fr;gap:32px;align-items:center}.join-card{padding:32px;text-align:center}.preview-card{padding:18px}.preview-card img{width:100%;border-radius:16px}.tutorial-grid{display:grid;grid-template-columns:1.2fr .75fr;gap:30px}.reaction-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.reaction-card{border:1px solid var(--line);border-radius:20px;padding:25px;display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:center}.reaction-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(139,61,255,.45);font-size:34px;color:var(--violet);background:rgba(139,61,255,.08)}.reaction-card.red .reaction-icon{color:var(--red);border-color:rgba(255,91,97,.45);background:rgba(255,91,97,.05)}.reaction-card.yellow .reaction-icon{color:var(--yellow);border-color:rgba(255,216,61,.4);background:rgba(255,216,61,.05)}.reaction-card.lime .reaction-icon{color:var(--lime);border-color:rgba(217,255,34,.4);background:rgba(217,255,34,.05)}.vote-layout{display:grid;grid-template-columns:minmax(640px,1.35fr) minmax(310px,.65fr);gap:28px}.vote-card{overflow:hidden}.vote-card .hero-media{height:390px}.vote-card .hero-media img{width:100%;height:100%;object-fit:cover}.vote-info{padding:24px}.vote-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.vote-action{border:1px solid var(--line);border-radius:18px;background:transparent;color:#fff;padding:16px 10px;cursor:pointer;text-align:center;transition:.15s}.vote-action:hover{transform:translateY(-2px)}.vote-action .circle{width:64px;height:64px;border:2px solid currentColor;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;font-size:28px}.vote-action.no{color:var(--red)}.vote-action.bof{color:var(--orange)}.vote-action.maybe{color:var(--yellow)}.vote-action.hot{color:var(--lime)}.progress-bar{height:8px;background:#222;border-radius:99px;overflow:hidden}.progress-bar>span{display:block;height:100%;background:var(--lime);border-radius:inherit}.side-activities{display:grid;gap:10px;margin-top:14px}.side-activity{display:grid;grid-template-columns:88px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:15px;padding:8px}.side-activity img{width:88px;height:65px;object-fit:cover;border-radius:11px}.waiting-grid{display:grid;grid-template-columns:.55fr 1fr .85fr;gap:28px;align-items:start}.progress-ring{width:240px;height:240px;border-radius:50%;background:conic-gradient(var(--lime) 0 67%,#202327 67% 100%);padding:18px;margin:26px auto}.progress-ring>div{background:var(--bg);width:100%;height:100%;border-radius:50%;display:grid;place-items:center;text-align:center}.progress-ring strong{font-family:var(--hand);font-size:44px}.ranking{display:grid;gap:12px}.rank-item{display:grid;grid-template-columns:105px 1fr;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.rank-item img{width:105px;height:82px;object-fit:cover;border-radius:14px}.result-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:36px}.winner{padding:24px}.winner-grid{display:grid;grid-template-columns:340px 1fr;gap:28px}.winner-img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:19px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0}.metric{text-align:center;padding:16px 8px;border-right:1px solid var(--line)}.metric:last-child{border-right:0}.metric strong{display:block;font-size:28px}.result-alt{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:18px}.alt-card{border:1px solid var(--line);border-radius:18px;padding:10px;display:grid;grid-template-columns:150px 1fr;gap:14px}.alt-card img{width:150px;height:110px;object-fit:cover;border-radius:13px}.detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px}.detail-media{height:470px}.detail-media img{width:100%;height:100%;object-fit:cover}.info-list{display:grid;gap:12px}.info-row{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.mobile-only{display:none}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,30px);opacity:0;background:#fff;color:#111;border-radius:999px;padding:12px 18px;font-weight:800;z-index:100;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.topbar{height:72px}.container{width:min(100% - 28px,900px)}.nav-link span{display:none}.desktop-cta{display:none}.page{padding-top:24px}.hero-grid,.layout-form,.share-grid,.join-grid,.tutorial-grid,.vote-layout,.waiting-grid,.result-grid,.detail-grid{grid-template-columns:1fr}.hero-copy{padding-top:14px}.hero-copy .display{font-size:clamp(42px,10vw,62px)}.side-copy,.side-panel{position:static}.side-copy .sticker{display:none}.layout-form .side-panel{order:3}.footer-strip{grid-template-columns:repeat(2,1fr)}.option{grid-template-columns:135px 1fr 38px;min-height:92px}.option-media{min-height:92px}.winner-grid{grid-template-columns:1fr}.winner-img{max-height:430px;aspect-ratio:16/10}.waiting-grid>div:first-child{text-align:center}.result-alt{grid-template-columns:1fr}.join-card{text-align:left}.mobile-only{display:block}.how-strip{display:none}}
@media(max-width:680px){body{background:var(--bg)}.topbar{padding:0 18px}.logo{font-size:25px}.nav{gap:8px}.nav-link{padding:8px}.profile-dot{width:36px;height:36px}.container{width:calc(100% - 24px)}.page{padding:18px 0 35px}.display{font-size:43px}.title{font-size:36px}.subtitle{font-size:16px}.sticker{width:105px;height:105px;font-size:14px}.hero-grid{gap:20px}.hero-copy .btn-stack{max-width:none}.session-card{padding:16px}.session-head{align-items:center}.session-title{font-size:24px}.mini-grid{grid-template-columns:repeat(3,1fr);gap:8px}.mini-card .activity-title{font-size:16px}.mini-card .score{font-size:15px}.how-items{grid-template-columns:1fr}.footer-strip{display:none}.layout-form{gap:18px}.main-card,.side-panel{padding:16px}.stepper{justify-content:flex-start;gap:10px}.step span:not(.bubble){display:none}.option{grid-template-columns:110px 1fr 34px}.option-text{padding:11px 14px}.option-text strong{font-size:20px}.option-text span{font-size:13px}.side-panel{display:none}.segmented{grid-auto-flow:row;grid-auto-columns:auto}.segment{border-right:0;border-bottom:1px solid var(--line)}.segment:last-child{border-bottom:0}.share-grid{gap:16px}.share-box{padding:16px}.qr{width:140px}.join-grid{gap:16px}.join-card{padding:20px}.reaction-grid{grid-template-columns:1fr}.tutorial-grid .preview-card{display:none}.vote-card .hero-media{height:360px}.vote-info{padding:16px}.vote-actions{gap:7px}.vote-action{padding:12px 5px;font-size:12px}.vote-action .circle{width:54px;height:54px}.vote-layout .side-panel{display:none}.waiting-grid .panel{padding:16px}.waiting-grid>div:nth-child(3){display:none}.progress-ring{width:205px;height:205px}.winner{padding:14px}.metrics{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.result-grid>div:first-child{padding:0 8px}.result-grid>div:first-child .sticker{display:none}.alt-card{grid-template-columns:112px 1fr}.alt-card img{width:112px;height:90px}.detail-media{height:330px}.panel{border-radius:19px}.btn-xl{min-height:58px}.chip{padding:8px 11px;font-size:13px}}

/* =========================================================
   COMPACT DENSITY PASS — desktop + slight mobile reduction
   Keeps the validated GoTogether DA while reducing vertical scroll.
   ========================================================= */
@media (min-width:1051px){
  .topbar{height:74px;padding-left:clamp(22px,3.2vw,54px);padding-right:clamp(22px,3.2vw,54px)}
  .logo{font-size:28px}
  .nav-link{padding:10px 12px}
  .profile-dot{width:38px;height:38px;font-size:18px}
  .btn{padding:12px 18px;border-radius:16px}
  .btn-xl{min-height:54px;padding:14px 22px;border-radius:19px;font-size:17px}
  .container{width:min(1360px,calc(100% - 44px))}
  .page{padding:28px 0 38px}
  .eyebrow{font-size:12px}
  .display{font-size:clamp(34px,3.15vw,54px);line-height:1.02;letter-spacing:-1.7px;margin:7px 0 11px;max-width:820px}
  .title{font-size:clamp(28px,2.35vw,42px);line-height:1.04;margin:6px 0 10px}
  .subtitle{font-size:16px;line-height:1.48;max-width:620px}
  .panel-pad{padding:21px}
  .sticker{width:108px;height:108px;font-size:14px}
  .chip{padding:8px 12px;font-size:14px}
  .section-label{font-size:20px;margin-bottom:12px}
  .divider{margin:16px 0}

  .hero-grid{grid-template-columns:minmax(290px,.78fr) minmax(600px,1.48fr);gap:42px}
  .hero-copy{padding-top:27px}
  .hero-copy .btn-stack{gap:10px;max-width:470px;margin-top:20px}
  .proof{margin-top:16px}
  .avatar{width:38px;height:38px}
  .session-card{padding:20px}
  .session-head{margin-bottom:14px}
  .session-title{font-size:26px}
  .mini-grid{gap:11px}
  .activity-body{padding:12px}
  .activity-title{font-size:21px}
  .score{font-size:19px}.score-heart{font-size:23px}
  .how-strip{margin-top:18px;padding:14px 18px}
  .how-items{gap:18px}
  .footer-strip{padding:14px clamp(24px,4vw,58px)}
  .footer-benefit{gap:10px}.footer-benefit .ico{font-size:23px}.footer-benefit span{font-size:12px}

  .layout-form{grid-template-columns:minmax(230px,.5fr) minmax(560px,1.28fr) minmax(230px,.5fr);gap:22px}
  .side-copy,.side-panel{top:100px}
  .main-card{padding:16px}
  .option-list{gap:8px}
  .option{grid-template-columns:170px 1fr 34px;min-height:88px;border-radius:16px}
  .option-media{min-height:88px}
  .option-media.fallback{font-size:36px}
  .option-text{padding:11px 17px}
  .option-text strong{font-size:21px}
  .option-text span{font-size:14px}
  .radio{width:24px;height:24px;margin-right:12px}
  .side-panel{padding:18px}.side-panel h3{font-size:21px}
  .recap-list{gap:11px}
  .stepper{gap:16px;margin-bottom:16px}.step .bubble{width:31px;height:31px}
  .form-group{padding:15px 0}
  .label{font-size:19px;margin-bottom:9px}
  .input{height:49px}
  .segment{padding:11px}
  .pill{padding:10px 15px}
  .toggle-row{padding:11px 0}

  .share-grid{gap:22px}.share-box{padding:19px}.link-value{padding:14px;font-size:15px}.qr{width:155px}
  .person-row{grid-template-columns:44px 1fr auto;padding:10px 0}
  .join-grid{gap:24px}.join-card{padding:25px}.preview-card{padding:14px}
  .tutorial-grid{gap:24px}.reaction-grid{gap:12px}.reaction-card{padding:19px;grid-template-columns:58px 1fr;gap:14px}.reaction-icon{width:54px;height:54px;font-size:28px}

  .vote-layout{grid-template-columns:minmax(620px,1.42fr) minmax(290px,.58fr);gap:22px}
  .vote-card .hero-media{height:315px}
  .vote-info{padding:19px}
  .vote-actions{gap:9px;margin-top:15px}
  .vote-action{padding:12px 8px;border-radius:16px}
  .vote-action .circle{width:54px;height:54px;font-size:24px;margin-bottom:6px}
  .side-activities{gap:8px;margin-top:10px}.side-activity{grid-template-columns:76px 1fr auto;padding:7px}.side-activity img{width:76px;height:56px}

  .waiting-grid{grid-template-columns:.52fr 1.08fr .82fr;gap:22px}
  .progress-ring{width:195px;height:195px;padding:14px;margin:18px auto}
  .progress-ring strong{font-size:36px}
  .ranking{gap:9px}.rank-item{grid-template-columns:90px 1fr;padding-bottom:9px}.rank-item img{width:90px;height:68px}

  .result-grid{grid-template-columns:.48fr 1.52fr;gap:28px}
  .winner{padding:19px}.winner-grid{grid-template-columns:290px 1fr;gap:22px}
  .metrics{margin:15px 0}.metric{padding:12px 6px}.metric strong{font-size:24px}
  .result-alt{gap:12px;margin-top:13px}.alt-card{grid-template-columns:125px 1fr}.alt-card img{width:125px;height:90px}

  .detail-grid{gap:22px}.detail-media{height:365px}.detail-grid .display{font-size:42px!important}.info-list{gap:8px}.info-row{padding:10px 0}
}

/* Tablet / narrow desktop: keep the same hierarchy but a little denser. */
@media (min-width:681px) and (max-width:1050px){
  .page{padding:20px 0 32px}
  .hero-copy .display{font-size:clamp(38px,7vw,52px)}
  .display{font-size:clamp(36px,6vw,50px)}
  .title{font-size:clamp(30px,5vw,40px)}
  .subtitle{font-size:16px;line-height:1.5}
  .btn-xl{min-height:55px;font-size:17px;padding:14px 22px}
  .panel-pad{padding:22px}
  .detail-grid .display{font-size:42px!important}
}

/* Mobile: only a light reduction; keep touch targets generous. */
@media (max-width:680px){
  .topbar{height:66px;padding:0 16px}
  .logo{font-size:24px}
  .page{padding:14px 0 28px}
  .display{font-size:38px;line-height:1.03;margin:6px 0 10px}
  .hero-copy .display{font-size:38px}
  .title{font-size:31px;line-height:1.05;margin:6px 0 10px}
  .subtitle{font-size:15px;line-height:1.48}
  .btn-xl{min-height:54px;padding:13px 18px;font-size:16px;border-radius:19px}
  .sticker{width:96px;height:96px;font-size:13px}
  .hero-grid{gap:14px}
  .hero-copy{padding-top:8px}
  .hero-copy .btn-stack{gap:9px;margin-top:17px}
  .proof{margin-top:15px;font-size:14px}
  .session-card{padding:14px}
  .session-title{font-size:22px}
  .activity-body{padding:9px}
  .main-card,.side-panel,.share-box,.waiting-grid .panel{padding:14px}
  .stepper{margin-bottom:14px}
  .form-group{padding:16px 0}
  .label{font-size:19px;margin-bottom:9px}
  .input{height:50px}
  .option{min-height:84px}
  .option-media{min-height:84px}
  .option-text{padding:9px 12px}
  .option-text strong{font-size:19px}
  .vote-card .hero-media{height:300px}
  .vote-info{padding:14px}
  .vote-actions{margin-top:14px}
  .vote-action .circle{width:50px;height:50px;font-size:24px}
  .progress-ring{width:185px;height:185px;margin:18px auto}
  .progress-ring strong{font-size:36px}
  .winner{padding:12px}
  .detail-media{height:285px}
  .detail-grid .display{font-size:35px!important}
  .panel-pad{padding:16px}
}

/* Dynamic/API states */
.dynamic-fallback{width:100%;height:100%;min-height:90px;display:grid;place-items:center;font-size:clamp(38px,5vw,74px);background:radial-gradient(circle at 25% 25%,rgba(139,61,255,.35),transparent 36%),radial-gradient(circle at 78% 68%,rgba(217,255,34,.10),transparent 35%),linear-gradient(145deg,#171129,#0d1115);color:#fff}
.side-thumb{width:76px;height:56px;overflow:hidden;border-radius:10px;background:#111}.side-thumb img{width:100%;height:100%;object-fit:cover}.side-thumb .dynamic-fallback{min-height:56px;font-size:27px}
.person-row small,.side-activity small{display:block;color:var(--muted);margin-top:3px}.person-row>span:last-child{color:var(--muted);font-size:13px}.person-row>span:last-child.done{color:var(--lime)}
#gt-geolocate{display:inline-flex;align-items:center;justify-content:center;gap:8px}
#gt-geolocate.active{background:var(--lime);border-color:var(--lime);color:#111}
.vote-action:disabled{opacity:.55;cursor:wait}
.progress-ring{background:conic-gradient(var(--lime) var(--progress,66%),rgba(255,255,255,.08) 0);border-radius:50%;position:relative}.progress-ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--panel)}.progress-ring>*{position:relative;z-index:1}
@media(max-width:680px){#gt-geolocate{width:100%;margin-top:8px}.dynamic-fallback{font-size:48px}}
/* AUDIT V2 — dynamic UI, icons, QR and states */
.logo .gt-icon{width:1em;height:1em}.nav-link .gt-icon,.btn .gt-icon,.chip .gt-icon,.recap-item .gt-icon,.info-row .gt-icon{margin-right:.15em}
.sticker-icon{width:22px;height:22px;color:var(--violet);margin-bottom:3px}.proof-icon{width:20px;height:20px}.reaction-svg{width:32px;height:32px}
.qr{display:grid!important;place-items:center!important;width:180px!important;height:180px!important;padding:10px!important;background:#fff!important;border-radius:18px!important;overflow:hidden!important;grid-template-columns:none!important;gap:0!important}
.qr canvas,.qr img{display:block!important;width:160px!important;height:160px!important;max-width:100%;image-rendering:pixelated}.qr i{display:none!important}
.empty-state{grid-column:1/-1;padding:22px;border:1px dashed rgba(255,255,255,.14);border-radius:16px;color:var(--muted);text-align:center;background:rgba(255,255,255,.018)}
.empty-state.compact{padding:13px;font-size:14px}.skeleton-card{min-height:110px;border-radius:16px;background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,255,255,.07),rgba(255,255,255,.035));background-size:220% 100%;animation:gtShimmer 1.5s infinite}
@keyframes gtShimmer{to{background-position:-220% 0}}
.result-locked,.result-ready{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:24px;border:1px dashed rgba(139,61,255,.42);border-radius:18px;background:radial-gradient(circle at 50% 15%,rgba(139,61,255,.12),transparent 55%)}
.result-ready{border-color:rgba(217,255,34,.42);background:radial-gradient(circle at 50% 15%,rgba(217,255,34,.08),transparent 55%)}
.result-lock-icon{width:56px;height:56px;border:1px solid rgba(139,61,255,.5);border-radius:50%;display:grid;place-items:center;color:var(--violet)}
.result-lock-icon .gt-icon,.result-ready>.gt-icon{width:28px;height:28px}.result-ready>.gt-icon{color:var(--lime)}
.alt-media{width:125px;height:90px;overflow:hidden;border-radius:14px;background:#111}.alt-media img{width:100%;height:100%;object-fit:cover}.alt-media .dynamic-fallback{min-height:90px;font-size:35px}
.preview-media{overflow:hidden;border-radius:16px;min-height:180px;background:#101318}.preview-media img{display:block;width:100%;height:100%;min-height:180px;max-height:300px;object-fit:cover}.preview-media .dynamic-fallback{min-height:180px}
.avatar-more{display:grid!important;place-items:center!important;background:#16191e!important;color:var(--muted)!important;border:1px solid var(--line)!important;font-size:12px!important}
.is-disabled{opacity:.58;cursor:not-allowed!important;filter:saturate(.5)}
.person-row .avatar,.avatars .avatar{display:grid;place-items:center;font-weight:800;background:linear-gradient(145deg,#34205a,#14171d);color:#fff;border:2px solid rgba(139,61,255,.45)}
[data-preview-activities].mini-grid:has(.empty-state){grid-template-columns:1fr}
@media(max-width:680px){.qr{width:150px!important;height:150px!important}.qr canvas,.qr img{width:130px!important;height:130px!important}.alt-media{width:112px;height:90px}.result-locked,.result-ready{min-height:160px}}

.type-icon{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.8;color:var(--lime)}

/* =========================================================
   PRE-DEPLOY POLISH — motion, feedback and robust media
   ========================================================= */
html{scroll-behavior:smooth}body{overflow-x:hidden}
button,a,input,select{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(217,255,34,.78);outline-offset:3px}
.btn:active,.pill:active,.segment:active,.vote-action:active{transform:translateY(0) scale(.975)}
.panel,.mini-card,.option,.reaction-card,.side-activity,.alt-card,.chip,.pill,.segment{transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease,transform .2s ease,opacity .2s ease}
.mini-card{border-radius:18px}.mini-card:hover,.reaction-card:hover,.side-activity:hover,.alt-card:hover{transform:translateY(-2px)}
.option:hover,.pill:hover,.segment:hover{border-color:rgba(217,255,34,.34)}
.option.selected{animation:gtSelectPop .26s cubic-bezier(.2,.85,.3,1.2)}
.option.selected .radio:after{animation:gtRadioPop .25s cubic-bezier(.2,.85,.3,1.35)}
.media img,.option-media img,.winner-img img,.detail-media img,.preview-media img,.alt-media img,.side-thumb img{transition:transform .42s cubic-bezier(.2,.7,.2,1),filter .3s ease}
.activity-card:hover .media img,.mini-card:hover .media img,.option:hover .option-media img,.alt-card:hover .alt-media img{transform:scale(1.025)}
main.page>.container{animation:gtPageIn .34s cubic-bezier(.2,.75,.25,1) both}
.logo-rays{animation:gtRays 3.6s ease-in-out infinite}.sticker{animation:gtStickerFloat 5.5s ease-in-out infinite}
.status{animation:gtStatusIn .34s cubic-bezier(.2,.8,.2,1) both}
.gt-updated{animation:gtSoftPulse .38s ease}
.dynamic-fallback{position:relative;overflow:hidden}.dynamic-fallback:after{content:"";position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 36%,rgba(255,255,255,.06) 48%,transparent 60%);transform:translateX(-45%);animation:gtFallbackSweep 5.5s ease-in-out infinite}
.fallback-icon{width:clamp(48px,7vw,92px);height:clamp(48px,7vw,92px);color:#d9ff22;filter:drop-shadow(0 0 18px rgba(217,255,34,.13));position:relative;z-index:1}
.qr{opacity:.25;transform:scale(.965);transition:opacity .28s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.qr.is-ready{opacity:1;transform:scale(1)}
.progress-ring{transition:--progress .55s cubic-bezier(.2,.75,.2,1),transform .25s ease}.progress-ring.gt-updated{animation:gtRingPulse .38s ease}
.vote-card{transform-origin:50% 70%;transition:transform .19s ease,opacity .19s ease,filter .19s ease}.vote-card.vote-entering{opacity:0;transform:translateY(12px) scale(.985)}.vote-card.vote-leaving{opacity:.18;transform:translateY(-8px) scale(.985)}.vote-card.vote-veto{transform:translateX(-28px) rotate(-.7deg) scale(.985)}.vote-card.vote-hot{transform:translateX(28px) rotate(.7deg) scale(.985)}.vote-card.vote-bof,.vote-card.vote-maybe{transform:translateY(-12px) scale(.985)}
.vote-action.chosen{transform:translateY(-3px) scale(1.035);box-shadow:0 0 0 1px currentColor,0 0 28px color-mix(in srgb,currentColor 22%,transparent)}
.toast{box-shadow:0 14px 44px rgba(0,0,0,.4)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.gt-modal-backdrop{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.72);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px;opacity:0;transition:opacity .18s ease}.gt-modal-backdrop.is-open{opacity:1}.gt-modal-backdrop.is-closing{opacity:0}.gt-modal{width:min(480px,100%);padding:26px;position:relative;transform:translateY(16px) scale(.985);transition:transform .2s cubic-bezier(.2,.8,.2,1)}.gt-modal-backdrop.is-open .gt-modal{transform:translateY(0) scale(1)}.gt-modal-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#0b0e11;color:#fff;font-size:25px;line-height:1;cursor:pointer}.gt-modal-close:hover{border-color:rgba(217,255,34,.45);color:var(--lime)}.gt-code-input{text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:18px}

@supports (background:color-mix(in srgb,white,black)){.vote-action.chosen{box-shadow:0 0 0 1px currentColor,0 0 28px color-mix(in srgb,currentColor 22%,transparent)}}
@property --progress{syntax:'<percentage>';inherits:false;initial-value:0%}
@keyframes gtPageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes gtSelectPop{50%{transform:scale(1.008)}100%{transform:none}}
@keyframes gtRadioPop{0%{transform:scale(.2)}75%{transform:scale(1.16)}100%{transform:scale(1)}}
@keyframes gtRays{0%,80%,100%{filter:brightness(1);transform:rotate(0)}88%{filter:brightness(1.35);transform:rotate(4deg)}}
@keyframes gtStickerFloat{0%,100%{translate:0 0}50%{translate:0 -4px}}
@keyframes gtStatusIn{from{opacity:0;transform:scale(.93)}to{opacity:1;transform:none}}
@keyframes gtSoftPulse{0%,100%{opacity:1}45%{opacity:.72}}
@keyframes gtRingPulse{50%{transform:scale(1.025)}}
@keyframes gtFallbackSweep{0%,70%,100%{transform:translateX(-48%)}84%{transform:translateX(48%)}}

@media(max-width:680px){
  /* Three moments fit comfortably side by side and avoid needless vertical scroll. */
  .segmented{grid-auto-flow:column;grid-auto-columns:1fr}
  .segment{border-right:1px solid var(--line);border-bottom:0;padding:10px 7px;font-size:13px}
  .segment:last-child{border-right:0}
  .gt-modal{padding:22px 18px}
  .sticker{animation-duration:6.5s}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
.toggle{border:0;padding:0;appearance:none}.toggle:focus-visible{outline:3px solid rgba(217,255,34,.78);outline-offset:3px}

/* =========================================================
   V5 — GLOBAL DENSITY & ALIGNMENT PASS
   Goal: remove avoidable desktop scroll and align every screen
   without changing the validated GoTogether visual language.
   ========================================================= */
@media (min-width:1051px){
  .topbar{height:64px;padding-left:clamp(22px,3vw,50px);padding-right:clamp(22px,3vw,50px)}
  .logo{font-size:26px}
  .logo-rays{transform:scale(.9);transform-origin:left top}
  .nav{gap:12px}
  .nav-link{padding:8px 11px}
  .desktop-cta{min-height:42px;padding:10px 17px}
  .page{padding:18px 0 26px}
  .container{width:min(1380px,calc(100% - 40px))}
  .side-copy,.side-panel{top:82px}
  .footer-strip{padding:10px clamp(24px,3.5vw,54px);gap:16px}
  .footer-benefit{gap:9px}.footer-benefit .ico{font-size:21px}.footer-benefit b{font-size:14px}.footer-benefit span{font-size:11px}

  /* Home */
  .page-home .hero-grid{grid-template-columns:minmax(300px,.78fr) minmax(620px,1.48fr);gap:36px;align-items:start}
  .page-home .hero-copy{padding-top:14px}
  .page-home .sticker{width:94px;height:94px;font-size:12px;margin-bottom:-3px}
  .page-home .display{font-size:clamp(36px,3vw,50px);line-height:1.01;margin:5px 0 10px}
  .page-home .subtitle{font-size:15px;line-height:1.42}
  .page-home .hero-copy .btn-stack{gap:8px;margin-top:16px;max-width:460px}
  .page-home .btn-xl{min-height:50px;padding:12px 20px}
  .page-home .proof{margin-top:12px;font-size:14px}
  .page-home .session-card{padding:17px}
  .page-home .session-head{margin-bottom:10px}
  .page-home .session-title{font-size:25px}
  .page-home .mini-grid{gap:10px}
  .page-home .mini-card .activity-img{aspect-ratio:1.36/1}
  .page-home .mini-card .activity-body{padding:8px 2px 5px}
  .page-home .mini-card .activity-title{font-size:19px}
  .page-home .mini-card .score{font-size:15px;margin-top:2px}
  .page-home .session-card .divider{margin:12px 0}
  .page-home .session-card>.btn{padding:10px 16px}
  .page-home .how-strip{margin-top:12px;padding:10px 15px}
  .page-home .how-strip .section-label{font-size:18px;margin-bottom:8px}
  .page-home .how-items{gap:14px}
  .page-home .how-item{grid-template-columns:28px 1fr;gap:8px;font-size:13px}
  .page-home .how-num{width:23px;height:23px;font-size:12px}
  .page-home .how-item .muted{font-size:12px;margin-top:2px}

  /* Creation flow */
  .page-create .layout-form{gap:18px;grid-template-columns:minmax(220px,.48fr) minmax(560px,1.3fr) minmax(220px,.48fr)}
  .page-create .stepper{margin-bottom:11px;gap:14px}
  .page-create .main-card{padding:14px}
  .page-create .option-list{gap:7px}
  .page-create .option{min-height:80px;grid-template-columns:155px 1fr 32px}
  .page-create .option-media{min-height:80px}
  .page-create .option-text{padding:9px 15px}
  .page-create .option-text strong{font-size:20px}
  .page-create .option-text span{font-size:13px}
  .page-create .form-group{padding:12px 0}
  .page-create .label{font-size:18px;margin-bottom:7px}
  .page-create .input{height:46px}
  .page-create .segment{padding:9px 8px}
  .page-create .pill{padding:9px 13px}
  .page-create .toggle-row{padding:9px 0}
  .page-create .side-panel{padding:15px}
  .page-create .side-panel h3{font-size:19px;margin-bottom:12px}
  .page-create .recap-list{gap:9px;font-size:14px}
  .page-create .side-copy .display{font-size:clamp(32px,2.7vw,46px)}
  .page-create .side-copy .subtitle{font-size:15px}
  .page-create .side-copy .sticker{width:94px;height:94px;font-size:12px}

  /* Share / Join */
  .page-share .share-grid{gap:18px}
  .page-share .share-box{padding:16px}
  .page-share .person-row{grid-template-columns:40px 1fr auto;padding:7px 0}
  .page-share .person-row .avatar{width:36px;height:36px}
  .page-share .link-value{padding:11px 13px}
  .page-share .qr{width:145px!important;height:145px!important}
  .page-share .qr canvas,.page-share .qr img{width:125px!important;height:125px!important}
  .page-join .join-grid{gap:18px}
  .page-join .join-card{padding:20px}
  .page-join .preview-card{padding:12px}
  .page-join .preview-media,.page-join .preview-media img{min-height:150px;max-height:235px}

  /* Tutorial */
  .page-tutorial .tutorial-grid{gap:18px}
  .page-tutorial .reaction-grid{gap:9px}
  .page-tutorial .reaction-card{padding:15px;grid-template-columns:50px 1fr;gap:12px}
  .page-tutorial .reaction-icon{width:48px;height:48px}
  .page-tutorial .reaction-card h3{margin:0 0 4px;font-size:20px}
  .page-tutorial .preview-card{padding:12px}
  .page-tutorial .preview-media,.page-tutorial .preview-media img{min-height:150px;max-height:235px}

  /* Vote */
  .page-vote .vote-layout{gap:18px;grid-template-columns:minmax(620px,1.46fr) minmax(280px,.54fr)}
  .page-vote .vote-card .hero-media{height:280px}
  .page-vote .vote-info{padding:15px 17px}
  .page-vote .vote-info h2{margin-top:0;margin-bottom:7px}
  .page-vote .vote-actions{gap:8px;margin-top:11px}
  .page-vote .vote-action{padding:9px 6px}
  .page-vote .vote-action .circle{width:48px;height:48px;margin-bottom:4px}
  .page-vote .side-panel{padding:14px}
  .page-vote .side-activities{gap:6px;margin-top:8px}
  .page-vote .side-activity{grid-template-columns:68px 1fr auto;padding:6px}
  .page-vote .side-thumb,.page-vote .side-activity img{width:68px;height:50px}

  /* Waiting */
  .page-waiting .waiting-grid{gap:18px;grid-template-columns:.5fr 1.1fr .82fr}
  .page-waiting .waiting-grid .panel{padding:15px}
  .page-waiting .progress-ring{width:170px;height:170px;padding:12px;margin:12px auto}
  .page-waiting .progress-ring strong{font-size:32px}
  .page-waiting .person-row{grid-template-columns:40px 1fr auto;padding:7px 0}
  .page-waiting .person-row .avatar{width:36px;height:36px}
  .page-waiting .ranking{gap:7px}
  .page-waiting .rank-item{grid-template-columns:80px 1fr;gap:10px;padding-bottom:7px}
  .page-waiting .rank-item img{width:80px;height:58px}

  /* Results */
  .page-results .result-grid{gap:20px;grid-template-columns:.44fr 1.56fr}
  .page-results .winner{padding:15px}
  .page-results .winner-grid{grid-template-columns:255px 1fr;gap:18px}
  .page-results .metrics{margin:11px 0}
  .page-results .metric{padding:9px 5px}
  .page-results .metric strong{font-size:22px}
  .page-results .result-alt{gap:9px;margin-top:9px}
  .page-results .alt-card{grid-template-columns:112px 1fr;gap:10px;padding:8px}
  .page-results .alt-card img,.page-results .alt-media{width:112px;height:78px}

  /* Detail */
  .page-detail .detail-grid{gap:18px}
  .page-detail .detail-media{height:320px}
  .page-detail .panel-pad{padding:17px}
  .page-detail .display{font-size:38px!important}
  .page-detail .info-list{gap:5px}
  .page-detail .info-row{padding:8px 0}
}

/* Extra density only on short desktop viewports (typical laptop / 864px screenshot).
   It reduces blank vertical rhythm rather than hiding content. */
@media (min-width:1051px) and (max-height:900px){
  .topbar{height:60px}
  .page{padding:12px 0 18px}
  .footer-strip{padding-top:7px;padding-bottom:7px}
  .page-home .hero-copy{padding-top:8px}
  .page-home .sticker{width:88px;height:88px}
  .page-home .display{font-size:46px}
  .page-home .session-card{padding:15px}
  .page-home .mini-card .activity-img{aspect-ratio:1.45/1}
  .page-home .how-strip{padding:8px 13px;margin-top:9px}
  .page-create .option{min-height:74px}.page-create .option-media{min-height:74px}
  .page-create .form-group{padding:10px 0}
  .page-share .person-row,.page-waiting .person-row{padding:6px 0}
  .page-vote .vote-card .hero-media{height:255px}
  .page-waiting .progress-ring{width:158px;height:158px}
  .page-results .winner-grid{grid-template-columns:235px 1fr}
  .page-detail .detail-media{height:295px}
}

/* Tablet: reduce header/padding but keep the single-column breathing room. */
@media (min-width:681px) and (max-width:1050px){
  .topbar{height:64px}
  .page{padding:16px 0 26px}
  .hero-grid,.layout-form,.share-grid,.join-grid,.tutorial-grid,.vote-layout,.waiting-grid,.result-grid,.detail-grid{gap:18px}
}

/* Mobile: small density correction only; retain touch targets. */
@media (max-width:680px){
  .topbar{height:60px}
  .page{padding:11px 0 24px}
  .logo{font-size:23px}
  .page-home .sticker{width:88px;height:88px}
  .page-home .display{font-size:36px}
  .page-home .hero-copy .btn-stack{margin-top:14px}
  .page-home .session-card{padding:12px}
  .page-home .mini-card .activity-img{aspect-ratio:1.25/1}
  .page-create .form-group{padding:13px 0}
  .page-share .person-row,.page-waiting .person-row{padding:8px 0}
  .page-vote .vote-card .hero-media{height:280px}
  .page-detail .detail-media{height:265px}
}

/* V5 mobile finishing touches: remove tiny avoidable overflows while keeping touch targets. */
@media (max-width:680px){
  .page-home main.page{padding-bottom:10px}
  .page-share main.page{padding-bottom:18px}
  .page-create-1 .option{min-height:78px}
  .page-create-1 .option-media{min-height:78px}
  .page-create-1 .option-list{gap:6px}
  .page-create-3 .form-group{padding:11px 0}
  .page-create-3 .toggle-row{padding:8px 0}
}

/* =========================================================
   V6 — HOME COMPOSITION REALIGNMENT TO VALIDATED MOCKUPS
   ========================================================= */
.proof-mobile{display:none}
.home-layout{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.46fr);grid-template-areas:"hero session" "how participants";gap:18px 38px;align-items:start}
.page-home .hero-copy{grid-area:hero;position:relative;min-width:0;padding-top:112px}
.page-home .home-session-column{grid-area:session;min-width:0}
.page-home .home-how{grid-area:how;min-width:0}
.page-home .home-participants{grid-area:participants;min-width:0}
.page-home .hero-copy .sticker{position:absolute;top:0;right:24px;width:112px;height:112px;font-size:14px;margin:0;z-index:2}
.page-home .hero-copy .display{font-size:clamp(40px,2.7vw,46px);line-height:1.07;letter-spacing:-1.7px;margin:0 0 16px;max-width:520px}
.page-home .hero-copy .subtitle{font-size:16px;line-height:1.55;max-width:430px}
.page-home .hero-copy .btn-stack{max-width:405px;margin-top:20px;gap:10px}
.page-home .hero-copy .btn-xl{min-height:52px;padding:12px 20px;font-size:18px;border-radius:19px}
.page-home .hero-copy .proof{margin-top:14px;gap:12px;min-height:38px}
.proof-avatars{display:flex;align-items:center;padding-left:7px}
.proof-avatars i{position:relative;width:34px;height:34px;border-radius:50%;margin-left:-8px;border:2px solid #0b0d10;background:linear-gradient(145deg,#d9ad85,#5b392e);box-shadow:0 3px 12px rgba(0,0,0,.25)}
.proof-avatars i:first-child{margin-left:0;background:linear-gradient(145deg,#a8c9c2,#3f3029)}
.proof-avatars i:nth-child(2){background:linear-gradient(145deg,#f1c7a7,#693d33)}
.proof-avatars i:nth-child(3){background:linear-gradient(145deg,#c7aa8d,#382e29)}
.proof-avatars i:before{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.82);left:50%;top:7px;transform:translateX(-50%)}
.proof-avatars i:after{content:"";position:absolute;width:16px;height:9px;border-radius:9px 9px 5px 5px;background:rgba(255,255,255,.76);left:50%;bottom:5px;transform:translateX(-50%)}
.page-home .session-card{padding:22px 24px 18px;border-radius:22px}
.page-home .session-head{align-items:flex-start;margin-bottom:16px}
.page-home .session-title{display:flex;align-items:center;gap:11px;font-size:29px;line-height:1.12}
.page-home .session-title-icon{width:27px;height:27px;color:var(--violet);stroke-width:1.9}
.page-home .status{padding:8px 14px;font-size:13px;white-space:nowrap}
.page-home .home-meta{gap:0;margin-top:10px;align-items:center}
.page-home .home-meta .chip{border:0;background:transparent;border-radius:0;padding:0;color:#c4c3c0;font-size:14px;gap:7px}
.page-home .home-meta .chip .gt-icon{color:var(--violet);width:18px;height:18px}
.page-home .home-meta .chip:not(:last-child):after{content:"•";color:var(--violet);margin:0 12px;font-size:14px}
.page-home .mini-grid{gap:14px}
.page-home .mini-card{min-width:0}
.page-home .mini-card .activity-img{aspect-ratio:1.08/1;border-radius:17px}
.page-home .mini-card .activity-body{padding:10px 1px 2px}
.page-home .mini-card .activity-title{font-size:21px;line-height:1.15}
.page-home .mini-card .score{font-size:15px;margin-top:4px}
.page-home .session-card .divider{margin:13px 0 10px}
.home-session-link{display:flex;justify-content:center;align-items:center;gap:8px;color:#a959ff;font-family:var(--hand);font-size:17px;font-weight:800;padding:4px 8px;transition:color .18s ease,transform .18s ease}
.home-session-link:hover{color:#c892ff;transform:translateX(2px)}
.home-session-link span{font-family:var(--sans);font-size:24px;line-height:1}
.page-home .home-how{margin:0;padding:14px 17px;border-radius:20px}
.page-home .home-how .section-label{font-size:19px;margin:0 0 11px}
.page-home .home-how .section-label:after{content:"";display:block;width:106px;height:3px;border-radius:99px;background:var(--lime);margin-top:4px;transform:rotate(-1deg)}
.page-home .home-how .how-items{gap:13px}
.page-home .home-how .how-item{grid-template-columns:24px 31px 1fr;gap:8px;align-items:start;font-size:12px}
.page-home .home-how .how-num{width:21px;height:21px;font-size:11px;margin-top:2px}
.page-home .home-how .how-icon{width:27px;height:27px;color:var(--lime);margin-top:0}
.page-home .home-how .how-item b{font-size:12px}
.page-home .home-how .how-item .muted{font-size:11px;line-height:1.35;margin-top:2px}
.home-participants{padding:14px 17px;border-radius:20px}
.home-participants-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:10px}
.home-participants-head h3{display:flex;align-items:center;gap:9px;margin:0;font-family:var(--hand);font-size:19px}
.home-participants-head h3 .gt-icon{color:var(--violet);width:23px;height:23px}
.home-participants-head a{color:#b66dff;font-size:12px;font-weight:800}
.home-participants-body{display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center}
.home-avatars{min-width:178px;align-items:center}
.home-avatars .avatar{width:38px;height:38px;font-size:13px;margin-left:-7px;border-color:#11161a}
.home-progress-line{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.home-progress-line strong{display:block;font-size:13px;margin-bottom:2px}
.home-progress-line span{display:block;color:var(--muted);font-size:11px}
.home-copy-link{min-height:38px;padding:8px 12px;border-radius:12px;font-size:12px;white-space:nowrap}
.home-copy-link:disabled{opacity:.45;cursor:not-allowed;transform:none}
.home-progress-track{grid-column:2;height:9px;background:#191d20;border:1px solid rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin-top:8px}
.home-progress-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--violet),var(--lime));border-radius:inherit;transition:width .45s cubic-bezier(.2,.7,.2,1)}
@media (min-width:1051px){
  .page-home .container{width:min(1380px,calc(100% - 56px))}
  .page-home main.page{padding-top:18px;padding-bottom:14px}
  .page-home .topbar{height:60px}
  .page-home .logo{font-size:28px}
  .page-home .footer-strip{padding-top:9px;padding-bottom:9px}
}
@media (min-width:1051px) and (max-height:900px){
  .home-layout{gap:12px 34px}
  .page-home main.page{padding-top:12px;padding-bottom:8px}
  .page-home .hero-copy{padding-top:92px}
  .page-home .hero-copy .sticker{width:104px;height:104px;font-size:13px;right:28px}
  .page-home .hero-copy .display{font-size:42px;margin-bottom:12px}
  .page-home .hero-copy .subtitle{font-size:15px;line-height:1.45}
  .page-home .hero-copy .btn-stack{margin-top:16px;gap:8px}
  .page-home .hero-copy .btn-xl{min-height:48px}
  .page-home .hero-copy .proof{margin-top:11px}
  .page-home .session-card{padding:17px 19px 14px}
  .page-home .session-head{margin-bottom:11px}
  .page-home .session-title{font-size:25px}
  .page-home .home-meta{margin-top:7px}
  .page-home .mini-grid{gap:11px}
  .page-home .mini-card .activity-img{aspect-ratio:1.16/1}
  .page-home .mini-card .activity-title{font-size:19px}
  .page-home .mini-card .activity-body{padding-top:7px}
  .page-home .session-card .divider{margin:9px 0 6px}
  .home-session-link{font-size:15px;padding:2px 8px}
  .page-home .home-how,.home-participants{padding:11px 14px}
  .page-home .home-how .section-label,.home-participants-head h3{font-size:17px}
  .page-home .home-how .section-label{margin-bottom:7px}
  .page-home .home-how .how-items{gap:9px}
  .page-home .home-how .how-item{grid-template-columns:20px 26px 1fr;gap:6px;font-size:11px}
  .page-home .home-how .how-num{width:19px;height:19px;font-size:10px}
  .page-home .home-how .how-icon{width:23px;height:23px}
  .page-home .home-how .how-item b{font-size:11px}
  .page-home .home-how .how-item .muted{font-size:10px}
  .home-participants-head{margin-bottom:7px}
  .home-avatars{min-width:158px}.home-avatars .avatar{width:34px;height:34px}
  .home-progress-line strong{font-size:12px}.home-progress-line span{font-size:10px}
  .home-progress-track{height:7px;margin-top:6px}
  .home-copy-link{min-height:34px;padding:6px 10px}
}
@media (max-width:1050px){
  .home-layout{grid-template-columns:1fr;grid-template-areas:"hero" "session" "participants" "how";gap:18px}
  .page-home .hero-copy{padding-top:0}
  .page-home .hero-copy .sticker{position:relative;top:auto;right:auto;margin:0 0 18px auto}
  .page-home .hero-copy .display{max-width:none}
  .page-home .hero-copy .subtitle{max-width:620px}
  .page-home .home-how,.home-participants{margin:0}
}
@media (max-width:680px){
  .home-layout{grid-template-areas:"hero" "session" "mobileproof" "participants" "how"}
  .page-home .topbar{height:76px;padding:0 24px;border-bottom:0;background:rgba(7,9,11,.94)}
  .page-home .topbar .logo{font-size:31px}
  .page-home .topbar .nav{display:none}
  .page-home main.page{padding:12px 0 30px}
  .page-home .container{width:calc(100% - 28px)}
  .home-layout{gap:16px}
  .page-home .hero-copy{padding-top:112px;position:relative}
  .page-home .hero-copy .sticker{position:absolute;top:4px;right:4px;width:104px;height:104px;font-size:13px;margin:0}
  .page-home .hero-copy .display{font-size:40px;line-height:1.08;letter-spacing:-1.5px;margin:0 0 17px;max-width:100%}
  .page-home .hero-copy .subtitle{font-size:16px;line-height:1.5;max-width:100%}
  .page-home .hero-copy .btn-stack{max-width:none;margin-top:20px;gap:10px}
  .page-home .hero-copy .btn-xl{min-height:58px;font-size:20px;border-radius:23px}
  .proof-desktop{display:none!important}
  .proof-mobile{display:flex;grid-area:mobileproof;justify-content:center;margin:2px 0 0!important;font-size:14px;gap:12px}
  .proof-mobile .proof-avatars i{width:36px;height:36px}
  .page-home .session-card{padding:15px;border-radius:20px}
  .page-home .session-head{margin-bottom:12px}
  .page-home .session-title{font-size:22px;gap:8px}
  .page-home .session-title-icon{width:22px;height:22px}
  .page-home .status{font-size:11px;padding:7px 10px}
  .page-home .home-meta{margin-top:7px}
  .page-home .home-meta .chip{font-size:12px}
  .page-home .home-meta .chip .gt-icon{width:15px;height:15px}
  .page-home .home-meta .chip:not(:last-child):after{margin:0 7px}
  .page-home .mini-grid{gap:8px}
  .page-home .mini-card .activity-img{aspect-ratio:1/1}
  .page-home .mini-card .activity-title{font-size:15px}
  .page-home .mini-card .score{font-size:13px}
  .page-home .session-card .divider,.page-home .home-session-link{display:none}
  .page-home .home-participants,.page-home .home-how{display:none}
}
.page-home .status{display:inline-flex;align-items:center;gap:6px}.page-home .status .gt-icon{width:15px;height:15px}

/* =========================================================
   HOME MOBILE ALIGNMENT V7 — dedicated pass against validated mockup
   ========================================================= */
@media (max-width:680px){
  .page-home .topbar{height:64px;padding:0 20px;background:rgba(7,9,11,.96)}
  .page-home .topbar .logo{font-size:29px;line-height:.78}
  .page-home main.page{padding:8px 0 24px}
  .page-home .container{width:calc(100% - 30px)}
  .page-home .home-layout{gap:18px}

  .page-home .hero-copy{padding-top:98px}
  .page-home .hero-copy .sticker{top:2px;right:2px;width:92px;height:92px;font-size:12px;border-width:2.5px}
  .page-home .hero-copy .sticker-icon{width:16px;height:16px}
  .page-home .hero-copy .display{font-size:38px;line-height:1.07;letter-spacing:-1.35px;margin-bottom:15px}
  .page-home .hero-copy .subtitle{font-size:15px;line-height:1.48}
  .page-home .hero-copy .btn-stack{margin-top:18px;gap:9px}
  .page-home .hero-copy .btn-xl{min-height:56px;padding:12px 18px;font-size:19px;border-radius:22px}
  .page-home .hero-copy .arrow{font-size:25px}

  .page-home .session-card{padding:13px;border-radius:19px}
  .page-home .session-head{gap:8px;margin-bottom:11px}
  .page-home .session-title{font-size:20px;line-height:1.08;gap:7px;min-width:0}
  .page-home .session-title-icon{width:20px;height:20px}
  .page-home .status{font-size:10px;padding:6px 9px;gap:4px}
  .page-home .status .gt-icon{width:12px;height:12px}
  .page-home .home-meta{margin-top:6px;flex-wrap:nowrap;white-space:nowrap;overflow:hidden}
  .page-home .home-meta .chip{font-size:11px;gap:4px}
  .page-home .home-meta .chip .gt-icon{width:13px;height:13px}
  .page-home .home-meta .chip:not(:last-child):after{margin:0 5px}
  .page-home .mini-grid{gap:7px}
  .page-home .mini-card .activity-img{aspect-ratio:1/1;border-radius:13px}
  .page-home .mini-card .activity-body{padding:7px 0 1px}
  .page-home .mini-card .activity-title{font-size:14px;line-height:1.12}
  .page-home .mini-card .score{font-size:12px;margin-top:3px}

  .page-home .proof-mobile{font-size:13px;gap:10px;margin-top:0!important}
  .page-home .proof-mobile .proof-avatars i{width:33px;height:33px}
  .page-home .proof-mobile .proof-avatars i+ i{margin-left:-9px}
}


/* =========================================================
   HOME ALIGNMENT HOTFIX V8 — tighter desktop + mobile and sticker alignment
   ========================================================= */
.sticker{display:grid;align-content:center;justify-items:center;gap:2px;line-height:1.06;padding:10px 12px 8px;text-align:center}.sticker .sticker-icon{display:block;width:18px;height:18px;margin:0 auto 2px;color:var(--violet)}.sticker span{display:block}
@media (min-width:1051px){
  .page-home .topbar{height:56px;padding:0 clamp(20px,3vw,54px)}
  .page-home .nav-link{padding:10px 12px}
  .page-home .btn.desktop-cta{padding:10px 18px;border-radius:17px}
  .page-home main.page{padding-top:10px;padding-bottom:6px}
  .page-home .container{width:min(1380px,calc(100% - 44px))}
  .home-layout{gap:10px 30px}
  .page-home .hero-copy{padding-top:84px}
  .page-home .hero-copy .sticker{top:2px;right:18px;width:102px;height:102px;font-size:12px;border-width:2.5px}
  .page-home .hero-copy .display{font-size:clamp(38px,2.55vw,44px);line-height:1.05;margin-bottom:12px;max-width:500px}
  .page-home .hero-copy .underline:after{height:4px;bottom:-4px}
  .page-home .hero-copy .subtitle{font-size:15px;line-height:1.42;max-width:400px}
  .page-home .hero-copy .btn-stack{margin-top:14px;gap:8px;max-width:392px}
  .page-home .hero-copy .btn-xl{min-height:46px;padding:10px 18px;font-size:17px;border-radius:18px}
  .page-home .hero-copy .proof{margin-top:10px}
  .proof-avatars i{width:32px;height:32px}
  .page-home .session-card{padding:16px 18px 13px}
  .page-home .session-head{margin-bottom:10px}
  .page-home .session-title{font-size:24px;gap:9px}
  .page-home .session-title-icon{width:24px;height:24px}
  .page-home .status{font-size:12px;padding:7px 12px}
  .page-home .home-meta{margin-top:6px}
  .page-home .home-meta .chip{font-size:13px}
  .page-home .home-meta .chip .gt-icon{width:16px;height:16px}
  .page-home .home-meta .chip:not(:last-child):after{margin:0 10px}
  .page-home .mini-grid{gap:10px}
  .page-home .mini-card .activity-img{aspect-ratio:1.12/1;border-radius:15px}
  .page-home .mini-card .activity-body{padding:8px 0 1px}
  .page-home .mini-card .activity-title{font-size:18px}
  .page-home .mini-card .score{font-size:14px;margin-top:2px}
  .page-home .session-card .divider{margin:8px 0 6px}
  .home-session-link{font-size:15px;padding:2px 6px}
  .page-home .home-how,.home-participants{padding:10px 14px;border-radius:18px}
  .page-home .home-how .section-label,.home-participants-head h3{font-size:17px}
  .page-home .home-how .section-label{margin-bottom:7px}
  .page-home .home-how .section-label:after{width:96px;height:3px;margin-top:3px}
  .page-home .home-how .how-items{gap:8px}
  .page-home .home-how .how-item{grid-template-columns:19px 23px 1fr;gap:6px}
  .page-home .home-how .how-num{width:18px;height:18px;font-size:10px;margin-top:1px}
  .page-home .home-how .how-icon{width:21px;height:21px}
  .page-home .home-how .how-item b{font-size:11px}
  .page-home .home-how .how-item .muted{font-size:10px;line-height:1.28}
  .home-participants-head{margin-bottom:6px}
  .home-participants-head a{font-size:11px}
  .home-avatars{min-width:148px}
  .home-avatars .avatar{width:33px;height:33px;font-size:12px}
  .home-progress-line{gap:10px}
  .home-progress-line strong{font-size:12px}.home-progress-line span{font-size:10px}
  .home-progress-track{height:7px;margin-top:5px}
  .home-copy-link{min-height:32px;padding:6px 10px;font-size:11px}
  .page-home .footer-strip{padding:8px clamp(20px,4vw,44px);gap:14px}
  .page-home .footer-benefit .ico{font-size:22px}
  .page-home .footer-benefit b{font-size:13px}
  .page-home .footer-benefit span{font-size:11px;line-height:1.3}
}
@media (max-width:680px){
  .page-home .topbar{height:56px;padding:0 18px;background:rgba(7,9,11,.96)}
  .page-home .topbar .logo{font-size:28px}
  .page-home main.page{padding:6px 0 18px}
  .page-home .container{width:calc(100% - 24px)}
  .page-home .home-layout{gap:14px}
  .page-home .hero-copy{padding-top:86px}
  .page-home .hero-copy .sticker{top:0;right:0;width:100px;height:100px;font-size:12px;border-width:2.5px}
  .page-home .hero-copy .sticker-icon{width:17px;height:17px;margin-bottom:1px}
  .page-home .hero-copy .display{font-size:34px;line-height:1.06;letter-spacing:-1.1px;margin-bottom:12px}
  .page-home .hero-copy .underline:after{height:5px;bottom:-4px;background:#d9ff22}
  .page-home .hero-copy .subtitle{font-size:14px;line-height:1.42}
  .page-home .hero-copy .btn-stack{margin-top:16px;gap:8px}
  .page-home .hero-copy .btn-xl{min-height:52px;padding:11px 16px;font-size:18px;border-radius:20px}
  .page-home .hero-copy .arrow{font-size:24px}
  .page-home .session-card{padding:12px;border-radius:18px}
  .page-home .session-head{margin-bottom:9px}
  .page-home .session-title{font-size:18px;gap:6px}
  .page-home .session-title-icon{width:18px;height:18px}
  .page-home .status{font-size:10px;padding:5px 8px}
  .page-home .home-meta{margin-top:5px}
  .page-home .home-meta .chip{font-size:11px;gap:4px}
  .page-home .home-meta .chip .gt-icon{width:12px;height:12px}
  .page-home .home-meta .chip:not(:last-child):after{margin:0 4px}
  .page-home .mini-grid{gap:6px}
  .page-home .mini-card .activity-img{aspect-ratio:1/1;border-radius:12px}
  .page-home .mini-card .activity-body{padding:6px 0 0}
  .page-home .mini-card .activity-title{font-size:12px;line-height:1.08}
  .page-home .mini-card .score{font-size:11px;margin-top:2px}
  .page-home .proof-mobile{font-size:12px;gap:9px;margin-top:0!important}
  .page-home .proof-mobile .proof-avatars i{width:31px;height:31px}
}
@media (max-width:420px){
  .page-home .hero-copy{padding-top:82px}
  .page-home .hero-copy .sticker{width:96px;height:96px;font-size:11px}
  .page-home .hero-copy .display{font-size:32px}
  .page-home .hero-copy .subtitle{font-size:13px}
  .page-home .hero-copy .btn-xl{min-height:50px;font-size:17px}
  .page-home .session-title{font-size:17px}
}

/* =========================================================
   V8 — HOME EXACT-ALIGNMENT HOTFIX
   Source of truth: validated desktop + mobile home mockups.
   ========================================================= */

/* Privacy sticker: one centered content block, never anonymous grid/flex items. */
.privacy-sticker{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  padding:9px;
  line-height:1;
}
.privacy-sticker .sticker-icon{margin:0 0 2px;width:18px;height:18px}
.privacy-sticker .sticker-copy{display:block;text-align:center;line-height:1.13}
.privacy-sticker .sticker-swipe{display:block;width:48%;height:3px;border-radius:999px;background:var(--violet);margin-top:4px;transform:rotate(-4deg);opacity:.95}

/* Hand-drawn lime underline closer to the validated mockup. */
.page-home .underline:after{
  height:4px;
  bottom:-4px;
  left:2%;
  right:-1%;
  background:linear-gradient(90deg,#dfff20 0%,#efff26 48%,#c6ee12 100%);
  box-shadow:0 2px 0 rgba(217,255,34,.18);
  transform:rotate(-1.25deg);
}
.page-home .sketch-underline{position:relative;display:inline-block}
.page-home .sketch-underline:after{
  content:"";position:absolute;left:3%;right:0;bottom:-4px;height:2px;border-radius:99px;
  background:linear-gradient(90deg,#dfff20,#c6ee12);transform:rotate(-1deg);opacity:.9
}

/* Desktop home: trim the last unnecessary pixels and keep the validated proportions. */
@media (min-width:1051px){
  .page-home .topbar{height:58px}
  .page-home .logo{font-size:27px}
  .page-home main.page{padding-top:10px;padding-bottom:5px}
  .page-home .home-layout{gap:10px 34px}
  .page-home .hero-copy{padding-top:78px}
  .page-home .hero-copy .sticker{top:0;right:28px;width:102px;height:102px;font-size:13px}
  .page-home .hero-copy .display{font-size:41px;line-height:1.06;margin-bottom:11px}
  .page-home .hero-copy .subtitle{font-size:14px;line-height:1.43}
  .page-home .hero-copy .btn-stack{margin-top:15px;gap:8px}
  .page-home .hero-copy .btn-xl{min-height:47px;padding:10px 18px;font-size:17px;border-radius:17px}
  .page-home .hero-copy .proof{margin-top:10px;min-height:34px}
  .page-home .proof-avatars i{width:31px;height:31px}

  .page-home .session-card{padding:15px 18px 12px;border-radius:20px}
  .page-home .session-head{margin-bottom:9px}
  .page-home .session-title{font-size:24px;gap:8px}
  .page-home .session-title-icon{width:23px;height:23px}
  .page-home .home-meta{margin-top:5px}
  .page-home .home-meta .chip{font-size:12px}
  .page-home .home-meta .chip .gt-icon{width:15px;height:15px}
  .page-home .status{padding:6px 11px;font-size:11px}
  .page-home .mini-grid{gap:10px}
  .page-home .mini-card .activity-img{aspect-ratio:1.22/1;border-radius:15px}
  .page-home .mini-card .activity-body{padding:6px 1px 0}
  .page-home .mini-card .activity-title{font-size:18px}
  .page-home .mini-card .score{font-size:13px;margin-top:2px}
  .page-home .session-card .divider{margin:8px 0 5px}
  .page-home .home-session-link{font-size:14px;padding:1px 8px}

  .page-home .home-how,.page-home .home-participants{padding:10px 13px;border-radius:18px}
  .page-home .home-how .section-label,.page-home .home-participants-head h3{font-size:16px}
  .page-home .home-how .section-label{margin-bottom:6px}
  .page-home .home-how .section-label:after{width:92px;height:2px;margin-top:3px}
  .page-home .home-how .how-items{gap:8px}
  .page-home .home-how .how-item{grid-template-columns:19px 24px 1fr;gap:6px}
  .page-home .home-how .how-num{width:18px;height:18px;font-size:9px}
  .page-home .home-how .how-icon{width:21px;height:21px}
  .page-home .home-how .how-item b{font-size:10px}
  .page-home .home-how .how-item .muted{font-size:9px;line-height:1.3}
  .page-home .home-participants-head{margin-bottom:6px}
  .page-home .home-participants-head h3 .gt-icon{width:20px;height:20px}
  .page-home .home-avatars{min-width:145px}
  .page-home .home-avatars .avatar{width:31px;height:31px;font-size:11px}
  .page-home .home-progress-line strong{font-size:11px}
  .page-home .home-progress-line span{font-size:9px}
  .page-home .home-progress-track{height:6px;margin-top:5px}
  .page-home .home-copy-link{min-height:31px;padding:5px 9px;font-size:10px}

  .page-home .footer-strip{padding:5px clamp(24px,3.5vw,52px);gap:12px;min-height:54px}
  .page-home .footer-benefit{gap:10px}
  .page-home .footer-benefit .ico{font-size:22px}
  .page-home .footer-benefit b{font-size:12px}
  .page-home .footer-benefit span{font-size:10px}
}

/* On shorter desktop viewports, fit the complete home + footer without a page scrollbar. */
@media (min-width:1051px) and (max-height:900px){
  .page-home .app-shell{min-height:100dvh}
  .page-home .topbar{height:56px}
  .page-home main.page{padding-top:7px;padding-bottom:3px}
  .page-home .home-layout{gap:8px 32px}
  .page-home .hero-copy{padding-top:70px}
  .page-home .hero-copy .sticker{width:96px;height:96px;font-size:12px;right:30px}
  .page-home .hero-copy .display{font-size:39px;margin-bottom:9px}
  .page-home .hero-copy .subtitle{font-size:13px;line-height:1.38}
  .page-home .hero-copy .btn-stack{margin-top:12px;gap:7px}
  .page-home .hero-copy .btn-xl{min-height:44px;font-size:16px}
  .page-home .hero-copy .proof{margin-top:8px}
  .page-home .session-card{padding:13px 16px 10px}
  .page-home .session-title{font-size:22px}
  .page-home .mini-card .activity-img{aspect-ratio:1.28/1}
  .page-home .mini-card .activity-title{font-size:17px}
  .page-home .home-how,.page-home .home-participants{padding:8px 12px}
  .page-home .footer-strip{padding-top:4px;padding-bottom:4px;min-height:48px}
}

/* Mobile home: remove the header from document flow just like the validated composition.
   This keeps the same visible placement while saving ~60px of unnecessary scroll. */
@media (max-width:680px){
  .page-home .app-shell{position:relative;min-height:100dvh}
  .page-home .topbar{
    position:absolute;top:0;left:0;right:0;height:72px;padding:14px 22px 0;
    border:0;background:transparent;backdrop-filter:none;z-index:20
  }
  .page-home .topbar .logo{font-size:33px;line-height:.77}
  .page-home .logo-rays{right:-28px;top:-6px}
  .page-home main.page{padding:0 0 12px}
  .page-home .container{width:calc(100% - 28px)}
  .page-home .home-layout{gap:13px}

  .page-home .hero-copy{padding-top:166px}
  .page-home .hero-copy .sticker{top:70px;right:4px;width:92px;height:92px;font-size:12px;border-width:2.5px}
  .page-home .hero-copy .sticker-icon{width:16px;height:16px}
  .page-home .hero-copy .sticker-swipe{height:2px;margin-top:3px;width:52%}
  .page-home .hero-copy .display{font-size:34px;line-height:1.055;letter-spacing:-1.2px;margin:0 0 13px}
  .page-home .hero-copy .subtitle{font-size:13px;line-height:1.43;margin:0}
  .page-home .hero-copy .btn-stack{margin-top:16px;gap:8px}
  .page-home .hero-copy .btn-xl{min-height:49px;padding:10px 16px;font-size:17px;border-radius:20px}
  .page-home .hero-copy .arrow{font-size:22px}

  .page-home .session-card{padding:11px;border-radius:17px}
  .page-home .session-head{gap:6px;margin-bottom:8px}
  .page-home .session-title{font-size:17px;line-height:1.05;gap:5px;letter-spacing:-.2px}
  .page-home .session-title-icon{width:17px;height:17px}
  .page-home .status{font-size:9px;padding:5px 7px;gap:3px}
  .page-home .status .gt-icon{width:10px;height:10px}
  .page-home .home-meta{margin-top:4px}
  .page-home .home-meta .chip{font-size:9.5px;gap:3px}
  .page-home .home-meta .chip .gt-icon{width:11px;height:11px}
  .page-home .home-meta .chip:not(:last-child):after{margin:0 4px}
  .page-home .mini-grid{gap:6px}
  .page-home .mini-card .activity-img{aspect-ratio:1/1;border-radius:11px}
  .page-home .mini-card .activity-body{padding:5px 0 0}
  .page-home .mini-card .activity-title{font-size:12.5px;line-height:1.05}
  .page-home .mini-card .score{font-size:10px;margin-top:2px;line-height:1.1}
  .page-home .proof-mobile{font-size:11.5px;gap:8px;margin-top:0!important;padding-left:8px;justify-content:center}
  .page-home .proof-mobile .proof-avatars i{width:29px;height:29px}
  .page-home .proof-mobile .proof-avatars i+ i{margin-left:-8px}
  .page-home .proof-mobile .underline:after{height:2px;bottom:-2px}
}

@media (max-width:390px){
  .page-home .hero-copy{padding-top:154px}
  .page-home .hero-copy .sticker{top:64px;width:88px;height:88px;font-size:11px}
  .page-home .hero-copy .display{font-size:32px}
  .page-home .hero-copy .subtitle{font-size:12.5px}
  .page-home .hero-copy .btn-xl{min-height:47px;font-size:16px}
  .page-home .session-title{font-size:16px}
  .page-home .mini-card .activity-title{font-size:12px}
}

/* =========================================================
   V9 — HOME DESKTOP MOCKUP ALIGNMENT
   Source of truth: validated desktop mockup. Keeps live data.
   ========================================================= */
@media (min-width:1051px){
  /* Use the whole viewport deliberately instead of compressing each component. */
  .page-home{overflow-y:auto}
  .page-home .app-shell{height:100dvh;min-height:0;overflow:hidden}
  .page-home .topbar{
    flex:0 0 68px;height:68px;
    padding:0 clamp(34px,3.2vw,58px);
    background:rgba(7,9,11,.94);
    border-bottom:1px solid rgba(255,255,255,.055)
  }
  .page-home .logo{font-size:31px}
  .page-home .nav{gap:20px}
  .page-home .nav-link{padding:12px 14px;font-size:15px}
  .page-home .nav-link.active:after{left:14px;right:14px;bottom:5px;height:3px}
  .page-home .desktop-cta{
    min-height:44px;padding:10px 22px;border-radius:15px;
    border-color:rgba(217,255,34,.7);color:var(--lime);background:rgba(217,255,34,.015)
  }
  .page-home .desktop-cta:hover{border-color:var(--lime);background:rgba(217,255,34,.055)}

  .page-home main.page{
    flex:1 1 auto;min-height:0;padding:14px 0 12px;overflow:hidden
  }
  .page-home .container{height:100%;width:min(1450px,calc(100% - 64px))}
  .page-home .home-layout{
    height:100%;max-height:748px;
    grid-template-columns:minmax(390px,.72fr) minmax(700px,1.28fr);
    grid-template-rows:minmax(0,1fr) clamp(145px,18vh,190px);
    grid-template-areas:"hero session" "how participants";
    gap:22px 40px;align-content:start
  }

  /* Left column follows the mockup rhythm rather than the older compact stack. */
  .page-home .hero-copy{padding-top:104px;align-self:stretch}
  .page-home .hero-copy .sticker{
    top:2px;right:18px;width:118px;height:118px;font-size:14px;border-width:3px
  }
  .page-home .hero-copy .sticker-icon{width:18px;height:18px;margin-bottom:3px}
  .page-home .hero-copy .sticker-copy{line-height:1.18}
  .page-home .hero-copy .sticker-swipe{width:48%;height:3px;margin-top:5px}
  .page-home .hero-copy .display{
    font-size:clamp(44px,3.15vw,51px);line-height:1.08;letter-spacing:-1.65px;
    max-width:520px;margin:0 0 20px
  }
  .page-home .hero-copy .subtitle{
    max-width:370px;font-size:15.5px;line-height:1.62;color:#b7b5b1
  }
  .page-home .hero-copy .btn-stack{max-width:395px;margin-top:22px;gap:10px}
  .page-home .hero-copy .btn-xl{min-height:52px;padding:11px 20px;border-radius:16px;font-size:18px}
  .page-home .hero-copy .proof{margin-top:15px;min-height:39px;font-size:14px}
  .page-home .proof-avatars i{width:36px;height:36px}
  .page-home .proof .underline:after{height:2px;bottom:-3px;background:var(--violet);box-shadow:none}

  /* Session panel: taller square-ish media, matching the validated composition. */
  .page-home .home-session-column{height:100%;min-height:0}
  .page-home .session-card{
    height:100%;min-height:0;padding:22px 28px 18px;border-radius:22px;
    display:flex;flex-direction:column
  }
  .page-home .session-head{flex:0 0 auto;margin-bottom:15px}
  .page-home .session-title{font-size:30px;gap:10px;line-height:1.12}
  .page-home .session-title-icon{width:28px;height:28px}
  .page-home .home-meta{margin-top:9px}
  .page-home .home-meta .chip{font-size:14px}
  .page-home .home-meta .chip .gt-icon{width:18px;height:18px}
  .page-home .home-meta .chip:not(:last-child):after{margin:0 12px}
  .page-home .status{padding:8px 14px;font-size:12px}
  .page-home .mini-grid{flex:1 1 auto;min-height:0;gap:16px;align-items:stretch}
  .page-home .mini-card{display:flex;flex-direction:column;min-height:0}
  .page-home .mini-card .activity-img{
    flex:1 1 auto;min-height:0;height:auto;aspect-ratio:auto;border-radius:17px
  }
  .page-home .mini-card .activity-body{flex:0 0 auto;padding:10px 1px 2px}
  .page-home .mini-card .activity-title{font-size:22px;line-height:1.12}
  .page-home .mini-card .score{font-size:15px;margin-top:5px;min-height:18px}
  .page-home .session-card .divider{flex:0 0 auto;margin:12px 0 8px}
  .page-home .home-session-link{flex:0 0 auto;font-size:17px;padding:3px 8px}

  /* Lower row: use the empty V8 space instead of leaving a large black band. */
  .page-home .home-how,.page-home .home-participants{
    height:100%;min-height:0;padding:17px 18px;border-radius:20px
  }
  .page-home .home-how .section-label,.page-home .home-participants-head h3{font-size:20px}
  .page-home .home-how .section-label{margin-bottom:16px}
  .page-home .home-how .section-label:after{width:112px;height:3px;margin-top:5px}
  .page-home .home-how .how-items{gap:18px;height:calc(100% - 43px);align-items:start}
  .page-home .home-how .how-item{
    position:relative;grid-template-columns:25px 34px 1fr;gap:9px;align-items:start
  }
  .page-home .home-how .how-item:not(:last-child):after{
    content:"›";position:absolute;right:-13px;top:12px;color:#686b6e;font-size:31px;font-family:var(--sans);font-weight:200
  }
  .page-home .home-how .how-num{width:23px;height:23px;font-size:11px;margin-top:1px}
  .page-home .home-how .how-icon{width:31px;height:31px}
  .page-home .home-how .how-item b{font-size:12.5px;line-height:1.2}
  .page-home .home-how .how-item .muted{font-size:11px;line-height:1.36;margin-top:5px}

  .page-home .home-participants-head{margin-bottom:14px}
  .page-home .home-participants-head h3 .gt-icon{width:23px;height:23px}
  .page-home .home-participants-head a{font-size:12px}
  .page-home .home-participants-body{
    display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:16px;align-items:center
  }
  .page-home .home-avatars{min-width:0;padding-left:3px}
  .page-home .home-avatars .avatar{width:44px;height:44px;font-size:13px;margin-left:-8px}
  .page-home .home-progress-box{
    min-width:0;border:1px solid rgba(255,255,255,.13);border-radius:11px;padding:10px 14px 9px
  }
  .page-home .home-progress-line{display:block}
  .page-home .home-progress-line strong{font-size:13px;margin-bottom:3px}
  .page-home .home-progress-line span{font-size:10px}
  .page-home .home-progress-track{height:8px;margin:9px 0 0;grid-column:auto}
  .page-home .home-copy-link{min-height:46px;padding:10px 14px;border-radius:11px;font-size:12px}

  .page-home .footer-strip{
    flex:0 0 68px;min-height:68px;padding:11px clamp(42px,5vw,76px);gap:0;
    background:rgba(8,10,12,.97)
  }
  .page-home .footer-benefit{padding:0 28px;gap:12px}
  .page-home .footer-benefit:first-child{padding-left:0}
  .page-home .footer-benefit:not(:first-child){border-left:1px solid rgba(255,255,255,.14)}
  .page-home .footer-benefit .ico{font-size:27px}
  .page-home .footer-benefit b{font-size:13px}
  .page-home .footer-benefit span{font-size:11px;line-height:1.35}
}

/* Short desktop: same composition, proportionally tightened, never a second page. */
@media (min-width:1051px) and (max-height:820px){
  .page-home .topbar{flex-basis:62px;height:62px}
  .page-home main.page{padding-top:10px;padding-bottom:8px}
  .page-home .home-layout{grid-template-rows:minmax(0,1fr) 142px;gap:16px 36px;max-height:none}
  .page-home .hero-copy{padding-top:90px}
  .page-home .hero-copy .sticker{width:106px;height:106px;font-size:12.5px;right:18px}
  .page-home .hero-copy .display{font-size:43px;margin-bottom:14px}
  .page-home .hero-copy .subtitle{font-size:14px;line-height:1.5}
  .page-home .hero-copy .btn-stack{margin-top:17px}
  .page-home .hero-copy .btn-xl{min-height:48px;font-size:17px}
  .page-home .hero-copy .proof{margin-top:10px}
  .page-home .session-card{padding:18px 22px 14px}
  .page-home .session-title{font-size:27px}
  .page-home .mini-grid{gap:12px}
  .page-home .mini-card .activity-title{font-size:20px}
  .page-home .mini-card .score{font-size:13px;margin-top:3px}
  .page-home .session-card .divider{margin:8px 0 5px}
  .page-home .home-session-link{font-size:15px;padding:1px 8px}
  .page-home .home-how,.page-home .home-participants{padding:13px 15px}
  .page-home .home-how .section-label,.page-home .home-participants-head h3{font-size:18px}
  .page-home .home-how .section-label{margin-bottom:10px}
  .page-home .home-how .how-items{height:calc(100% - 34px);gap:10px}
  .page-home .home-how .how-item{grid-template-columns:21px 27px 1fr;gap:7px}
  .page-home .home-how .how-item:not(:last-child):after{font-size:26px;right:-9px;top:8px}
  .page-home .home-how .how-num{width:20px;height:20px;font-size:10px}
  .page-home .home-how .how-icon{width:25px;height:25px}
  .page-home .home-how .how-item b{font-size:11px}
  .page-home .home-how .how-item .muted{font-size:9.5px;margin-top:3px}
  .page-home .home-participants-head{margin-bottom:9px}
  .page-home .home-participants-body{gap:11px}
  .page-home .home-avatars .avatar{width:36px;height:36px}
  .page-home .home-progress-box{padding:7px 10px 6px}
  .page-home .home-progress-line strong{font-size:11px}
  .page-home .home-progress-line span{font-size:9px}
  .page-home .home-progress-track{height:6px;margin-top:6px}
  .page-home .home-copy-link{min-height:38px;padding:8px 10px;font-size:10px}
  .page-home .footer-strip{flex-basis:58px;min-height:58px;padding-top:8px;padding-bottom:8px}
  .page-home .footer-benefit .ico{font-size:23px}
  .page-home .footer-benefit b{font-size:12px}.page-home .footer-benefit span{font-size:10px}
}

/* Do not force clipping on unusually short desktop windows: scrolling is safer there. */
@media (min-width:1051px) and (max-height:699px){
  .page-home .app-shell{height:auto;min-height:100dvh;overflow:visible}
  .page-home main.page{overflow:visible}
}

/* =========================================================
   V10 — HOME FINAL BALANCE PASS
   Refines desktop + mobile against the validated home mockups.
   No fake data: layout only.
   ========================================================= */
:root{--home-accent:#dce82a;--home-accent-2:#cfdc1e}
.page-home .btn-primary{background:linear-gradient(135deg,var(--home-accent),var(--home-accent-2));box-shadow:0 8px 30px rgba(220,232,42,.10)}
.page-home .status{background:var(--home-accent)}
.page-home .underline:after{background:linear-gradient(90deg,#dce82a 0%,#e8ef32 50%,#cbd81e 100%);box-shadow:0 2px 0 rgba(220,232,42,.14)}
.page-home .sketch-underline:after{background:linear-gradient(90deg,#dce82a,#cbd81e)}

@media (min-width:1051px){
  /* The mockup is closer to a 39/61 split than the older compact 36/64 split. */
  .page-home .home-layout{grid-template-columns:minmax(430px,.78fr) minmax(680px,1.22fr)}
  .page-home .hero-copy .subtitle{max-width:345px}

  /* Participants follow the mockup: avatars on top, progress underneath, action at right. */
  .page-home .home-participants-body{
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"avatars copy" "progress copy";
    column-gap:16px;row-gap:9px;align-items:center
  }
  .page-home .home-avatars{grid-area:avatars;min-width:0;padding-left:3px}
  .page-home .home-progress-box{grid-area:progress;width:100%}
  .page-home .home-copy-link{grid-area:copy;align-self:center}
}

/* Common laptop viewport (roughly 760–840 CSS px high): keep the mockup rhythm
   without letting the social proof collide with the lower panel. */
@media (min-width:1051px) and (max-height:840px){
  .page-home .topbar{flex-basis:58px;height:58px}
  .page-home main.page{padding-top:8px;padding-bottom:5px}
  .page-home .container{width:min(1450px,calc(100% - 58px))}
  .page-home .home-layout{
    grid-template-rows:minmax(0,1fr) 154px;
    gap:15px 38px
  }
  .page-home .hero-copy{padding-top:70px}
  .page-home .hero-copy .sticker{width:110px;height:110px;font-size:13px;right:24px}
  .page-home .hero-copy .display{font-size:42px;line-height:1.065;margin-bottom:13px;max-width:525px}
  .page-home .hero-copy .subtitle{font-size:14.5px;line-height:1.5;max-width:340px}
  .page-home .hero-copy .btn-stack{margin-top:16px;gap:8px;max-width:398px}
  .page-home .hero-copy .btn-xl{min-height:48px;font-size:17px}
  .page-home .hero-copy .proof{margin-top:12px;min-height:36px}

  .page-home .session-card{padding:18px 22px 14px}
  .page-home .session-head{margin-bottom:11px}
  .page-home .session-title{font-size:27px}
  .page-home .session-title-icon{width:25px;height:25px}
  .page-home .home-meta{margin-top:7px}
  .page-home .home-meta .chip{font-size:13px}
  .page-home .mini-grid{gap:13px}
  .page-home .mini-card .activity-title{font-size:20px}
  .page-home .mini-card .score{font-size:13px;margin-top:3px}
  .page-home .session-card .divider{margin:9px 0 6px}
  .page-home .home-session-link{font-size:15px;padding:2px 8px}

  .page-home .home-how,.page-home .home-participants{padding:13px 15px}
  .page-home .home-how .section-label,.page-home .home-participants-head h3{font-size:18px}
  .page-home .home-how .section-label{margin-bottom:10px}
  .page-home .home-how .how-items{height:calc(100% - 34px);gap:11px}
  .page-home .home-how .how-item{grid-template-columns:21px 28px 1fr;gap:7px}
  .page-home .home-how .how-item:not(:last-child):after{font-size:26px;right:-9px;top:8px}
  .page-home .home-how .how-num{width:20px;height:20px;font-size:10px}
  .page-home .home-how .how-icon{width:26px;height:26px}
  .page-home .home-how .how-item b{font-size:11.5px}
  .page-home .home-how .how-item .muted{font-size:9.8px;line-height:1.32;margin-top:3px}

  .page-home .home-participants-head{margin-bottom:8px}
  .page-home .home-participants-body{row-gap:7px;column-gap:12px}
  .page-home .home-avatars .avatar{width:37px;height:37px}
  .page-home .home-progress-box{padding:7px 10px 6px}
  .page-home .home-progress-line strong{font-size:11px}
  .page-home .home-progress-line span{font-size:9px}
  .page-home .home-progress-track{height:6px;margin-top:6px}
  .page-home .home-copy-link{min-height:39px;padding:8px 10px;font-size:10px}

  .page-home .footer-strip{flex-basis:54px;min-height:54px;padding-top:7px;padding-bottom:7px}
  .page-home .footer-benefit{padding-left:24px;padding-right:24px}
}

/* Mobile: match the approved mockup instead of shrinking the desktop card.
   Remove elements that do not exist on the validated mobile home and reclaim scroll. */
@media (max-width:680px){
  .page-home .container{width:calc(100% - 44px)}
  .page-home .topbar{height:68px;padding:12px 22px 0}
  .page-home .topbar .logo{font-size:34px}
  .page-home .home-layout{gap:18px}

  .page-home .hero-copy{padding-top:138px}
  .page-home .hero-copy .sticker{top:48px;right:2px;width:94px;height:94px;font-size:12px}
  .page-home .hero-copy .display{font-size:35px;line-height:1.07;letter-spacing:-1.25px;margin-bottom:14px}
  .page-home .hero-copy .subtitle{font-size:14.25px;line-height:1.52;max-width:95%}
  .page-home .hero-copy .btn-stack{width:calc(100% - 12px);margin:17px auto 0;gap:9px}
  .page-home .hero-copy .btn-xl{min-height:52px;font-size:18px;border-radius:21px}

  .page-home .session-card{padding:12px;border-radius:18px}
  .page-home .session-head{margin-bottom:9px}
  .page-home .session-title{font-size:18px;gap:6px}
  .page-home .session-title-icon{width:18px;height:18px}
  .page-home .status{font-size:9.5px;padding:5px 8px}
  .page-home .home-meta{margin-top:5px}
  .page-home .home-meta .chip{font-size:10.5px;gap:4px}
  .page-home .home-meta .chip .gt-icon{width:12px;height:12px}
  .page-home .home-meta .chip:not(:last-child):after{margin:0 5px}
  .page-home .mini-grid{gap:7px}
  .page-home .mini-card .activity-img{aspect-ratio:1/1;border-radius:12px}
  .page-home .mini-card .activity-body{padding:6px 0 0}
  .page-home .mini-card .activity-title{font-size:13px;line-height:1.08}
  .page-home .mini-card .score{font-size:11px;margin-top:3px}
  .page-home .session-card .divider,.page-home .home-session-link{display:none}

  .page-home .proof-mobile{font-size:12.5px;gap:10px;margin:1px 0 2px!important;padding-left:0}
  .page-home .proof-mobile .proof-avatars i{width:32px;height:32px}
  .page-home .proof-mobile .proof-avatars i+ i{margin-left:-9px}
}

@media (max-width:390px){
  .page-home .container{width:calc(100% - 38px)}
  .page-home .hero-copy{padding-top:130px}
  .page-home .hero-copy .sticker{top:44px;width:90px;height:90px;font-size:11px}
  .page-home .hero-copy .display{font-size:33px}
  .page-home .hero-copy .subtitle{font-size:13.5px;max-width:96%}
  .page-home .hero-copy .btn-xl{min-height:50px;font-size:17px}
}

/* =========================================================
   V11 — GLOBAL MOCKUP ALIGNMENT PASS
   Source of truth: validated desktop + mobile mockups.
   Keeps API/dynamic states intact; only composition and UI rhythm change.
   ========================================================= */
.desktop-only{display:block}.create-side-stack{display:grid;gap:18px;align-self:start}.create-help-panel{padding:18px}.create-help-title{color:#b66dff;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.05em;margin-bottom:14px}.create-help-item{display:grid;grid-template-columns:26px 1fr;gap:11px;align-items:start;padding:10px 0}.create-help-item>.gt-icon{width:24px;height:24px;color:var(--lime)}.create-help-item b{display:block;color:var(--lime);font-size:13px;margin-bottom:3px}.create-help-item span{display:block;color:var(--muted);font-size:11px;line-height:1.4}.create-extra-copy{margin-top:24px}.create-extra-copy strong{color:var(--lime);font-weight:700}.create-next-row{display:flex;justify-content:flex-end;margin-top:14px}.create-panel-intro{padding:2px 0 15px;border-bottom:1px solid var(--line);margin-bottom:2px}.create-panel-intro h2{display:flex;align-items:center;gap:10px;margin:0 0 5px;font-family:var(--hand);font-size:23px}.create-panel-intro h2 .gt-icon{color:var(--violet);width:26px;height:26px}.create-panel-intro p{margin:0;color:var(--muted);font-size:13px}.create-search-note,.create-criteria-note{display:flex;align-items:flex-start;gap:10px;margin:15px 0 0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;color:var(--muted);font-size:12px;line-height:1.45;background:rgba(255,255,255,.015)}.create-search-note .gt-icon,.create-criteria-note .gt-icon{color:var(--violet);width:19px;height:19px;margin-top:1px}.create-confidential{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:15px;margin-top:36px}.create-confidential>.gt-icon{width:36px;height:36px;color:var(--violet)}.create-confidential b{display:block;font-size:14px;margin-bottom:4px}.create-confidential span{display:block;color:var(--muted);font-size:11px;line-height:1.45}.creation-timeline{margin-top:34px;padding-left:5px;display:grid;gap:18px}.creation-timeline-item{position:relative;display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;color:#777}.creation-timeline-item:not(:last-child):after{content:"";position:absolute;left:16px;top:32px;width:2px;height:38px;background:#30343a}.creation-timeline-item i{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-style:normal;font-weight:900;background:#1b1e22}.creation-timeline-item b{display:block;font-family:var(--hand);font-size:15px;color:#aaa}.creation-timeline-item span{display:block;color:#777;font-size:11px;margin-top:2px;line-height:1.35}.creation-timeline-item.done i{background:var(--lime);color:#111;border-color:transparent}.creation-timeline-item.done b{color:#ddd}.creation-timeline-item.active i{background:var(--violet);color:#fff;border-color:transparent}.creation-timeline-item.active b{color:#fff}.creation-timeline-item.active span{color:#aaa}

@media (min-width:1051px){
  /* Shared non-home frame */
  body:not(.page-home) .topbar{height:68px}
  body:not(.page-home) .page{padding:18px 0 16px}
  body:not(.page-home) .container{width:min(1480px,calc(100% - 54px))}
  body:not(.page-home) .footer-strip{padding:10px clamp(26px,4vw,64px)}
  body:not(.page-home) .footer-benefit b{font-size:13px}
  body:not(.page-home) .footer-benefit span{font-size:11px}

  /* Creation 1 — triptych from validated mockup */
  .page-create-1 .stepper{width:570px;margin:0 auto 17px;justify-content:space-between;position:relative}
  .page-create-1 .step{position:relative;flex:1;justify-content:center;flex-direction:column;gap:4px;font-size:12px}
  .page-create-1 .step:not(:last-child):after{content:"";position:absolute;top:16px;left:65%;right:-35%;border-top:2px dotted rgba(255,255,255,.14)}
  .page-create-1 .step .bubble{width:30px;height:30px;z-index:1;background:var(--bg)}
  .page-create-1 .step.active .bubble{background:var(--lime)}
  .page-create-1 .layout-form{grid-template-columns:minmax(260px,300px) minmax(650px,760px) minmax(245px,280px);justify-content:center;gap:24px}
  .page-create-1 .side-copy{position:relative;top:auto;padding-top:4px;min-height:620px}
  .page-create-1 .side-copy .eyebrow{color:#b66dff}
  .page-create-1 .side-copy .display{font-size:48px;line-height:1.08;margin:22px 0 20px;max-width:260px}
  .page-create-1 .side-copy .subtitle{font-size:15px;line-height:1.55;max-width:250px}
  .page-create-1 .side-copy .sticker{position:absolute;left:46px;bottom:38px;width:124px;height:124px;font-size:14px}
  .page-create-1 .main-card{padding:16px;border-radius:21px}
  .page-create-1 .option-list{gap:8px}
  .page-create-1 .option{min-height:96px;grid-template-columns:235px 1fr 40px;border-radius:15px}
  .page-create-1 .option-media{min-height:96px}
  .page-create-1 .option-text{padding:12px 22px}
  .page-create-1 .option-text strong{font-size:22px}
  .page-create-1 .option-text span{font-size:13px;line-height:1.35;max-width:330px}
  .page-create-1 .radio{width:26px;height:26px;margin-right:17px}
  .page-create-1 .create-next-row .btn{min-width:230px}
  .page-create-1 .create-side-stack{position:sticky;top:88px}
  .page-create-1 .create-side-stack .side-panel{position:static;padding:20px}
  .page-create-1 .create-side-stack .side-panel h3{font-size:21px;color:#b66dff;text-transform:uppercase;font-family:var(--sans);font-size:13px;letter-spacing:.04em}

  /* Creation 2 */
  .page-create-2 .layout-form{grid-template-columns:310px minmax(520px,570px) minmax(310px,360px);justify-content:center;gap:24px}
  .page-create-2 .side-copy{position:relative;top:auto;padding-top:25px}
  .page-create-2 .side-copy .eyebrow{color:#b66dff;font-size:14px}
  .page-create-2 .side-copy .display{font-size:48px;margin:18px 0 18px}
  .page-create-2 .side-copy .subtitle{font-size:15px;line-height:1.55;max-width:265px}
  .page-create-2 .side-copy .sticker{width:115px;height:115px;font-size:13px;margin:30px 0 0 168px}
  .page-create-2 .layout-form>section.panel{padding:20px 24px}
  .page-create-2 .form-group{padding:14px 0}
  .page-create-2 .label{font-size:17px;margin-bottom:8px}
  .page-create-2 .input{height:48px}
  .page-create-2 .segment{padding:10px}
  .page-create-2 .create-search-note{margin-top:12px}
  .page-create-2 .side-panel{position:sticky;top:88px;padding:20px}
  .page-create-2 .side-panel h3{font-size:20px}
  .page-create-2 .side-activities{gap:7px}
  .page-create-2 .side-activity{grid-template-columns:74px 1fr auto;padding:6px}
  .page-create-2 .side-activity img,.page-create-2 .side-thumb{width:74px;height:56px}

  /* Creation 3 */
  .page-create-3 .layout-form{grid-template-columns:300px minmax(520px,600px) minmax(320px,370px);justify-content:center;gap:24px}
  .page-create-3 .side-copy{position:relative;top:auto;padding-top:28px}
  .page-create-3 .side-copy .eyebrow{color:#b66dff;font-size:14px}
  .page-create-3 .side-copy .display{font-size:48px;margin:18px 0 20px;max-width:270px}
  .page-create-3 .side-copy .subtitle{font-size:15px;line-height:1.55;max-width:265px}
  .page-create-3 .side-copy .sticker{width:112px;height:112px;font-size:13px;margin:34px 0 0 100px}
  .page-create-3 .layout-form>section.panel{padding:18px 22px}
  .page-create-3 .form-group{padding:11px 0}
  .page-create-3 .label{font-size:17px;margin-bottom:8px}
  .page-create-3 .pills{gap:8px}
  .page-create-3 .pill{padding:9px 14px}
  .page-create-3 .toggle-row{padding:10px 0}
  .page-create-3 .side-panel{position:sticky;top:88px;padding:18px}
  .page-create-3 .side-panel h3{font-size:20px}
  .page-create-3 .mini-grid{gap:7px}
  .page-create-3 .mini-card .activity-title{font-size:13px}
  .page-create-3 .create-criteria-note{margin-top:10px}

  /* Share */
  .page-share .container{max-width:1400px}
  .page-share .session-head{margin-bottom:18px;align-items:center}
  .page-share .session-head>div:first-child{max-width:670px}
  .page-share .session-head .display{font-size:48px;margin-bottom:10px}
  .page-share .session-head .subtitle{font-size:17px;max-width:620px}
  .page-share .session-head .sticker{width:118px;height:118px}
  .page-share .share-grid{grid-template-columns:1.12fr .82fr;gap:28px;margin-top:18px!important}
  .page-share .share-box{padding:24px}
  .page-share .qr{width:172px!important;height:172px!important}
  .page-share .qr canvas,.page-share .qr img{width:152px!important;height:152px!important}
  .page-share .participant-list .person-row{padding:10px 0}
  .page-share main.page>.container>.btn-primary{min-height:54px;margin-top:20px!important}

  /* Join */
  .page-join .join-grid{grid-template-columns:.88fr 1.02fr .78fr;gap:34px;align-items:center}
  .page-join .join-grid>section:first-child .display{font-size:48px;max-width:420px}
  .page-join .join-grid>section:first-child .subtitle{font-size:16px;max-width:390px}
  .page-join .join-card{padding:30px 28px;position:relative}
  .page-join .join-card .sticker{position:absolute;right:-12px;top:-48px;width:110px;height:110px;font-size:13px}
  .page-join .join-card .title{font-size:33px;margin-top:58px}
  .page-join .preview-card{padding:20px}
  .page-join .preview-media,.page-join .preview-media img{min-height:220px;max-height:280px}

  /* Tutorial */
  .page-tutorial .tutorial-grid{grid-template-columns:1.3fr .72fr;gap:34px}
  .page-tutorial .tutorial-grid>section .display{font-size:50px}
  .page-tutorial .tutorial-grid>section .subtitle{font-size:16px}
  .page-tutorial .reaction-grid{gap:16px;margin-top:22px!important}
  .page-tutorial .reaction-card{padding:20px;grid-template-columns:74px 1fr;min-height:150px}
  .page-tutorial .reaction-icon{width:66px;height:66px}
  .page-tutorial .reaction-card h3{font-size:22px}
  .page-tutorial .preview-card{padding:22px}
  .page-tutorial .preview-media,.page-tutorial .preview-media img{min-height:240px;max-height:300px}
  .page-tutorial .container>div.panel{margin-top:18px!important;padding:14px 20px}

  /* Vote */
  .page-vote .vote-layout{grid-template-columns:minmax(650px,1.4fr) minmax(330px,.7fr);gap:34px}
  .page-vote .vote-layout>section>div:first-child{margin-bottom:14px!important}
  .page-vote .vote-layout .eyebrow{font-family:var(--hand);font-size:34px;text-transform:none;letter-spacing:0;color:#fff}
  .page-vote .vote-layout .title{font-family:var(--sans);font-size:13px;letter-spacing:0;margin-top:6px;color:var(--muted)}
  .page-vote .vote-card .hero-media{height:330px}
  .page-vote .vote-info{padding:18px 24px}
  .page-vote .vote-info>.title{font-family:var(--hand);font-size:31px;color:#fff}
  .page-vote .vote-actions{margin-top:14px}
  .page-vote .vote-action{border:0;background:transparent}
  .page-vote .side-panel{position:sticky;top:88px;padding:22px}

  /* Waiting */
  .page-waiting .waiting-grid{grid-template-columns:.58fr 1.02fr .86fr;gap:26px}
  .page-waiting .waiting-grid>section:first-child .display{font-size:49px}
  .page-waiting .progress-ring{width:215px;height:215px;margin:22px auto}
  .page-waiting .waiting-grid>.panel{padding:20px}
  .page-waiting .participant-list .person-row{padding:10px 0}
  .page-waiting main.page>.container>.btn-primary{margin-top:18px!important;min-height:54px}

  /* Results */
  .page-results .result-grid{grid-template-columns:.48fr 1.52fr;gap:34px}
  .page-results .result-grid>section:first-child{padding-top:8px}
  .page-results .result-grid>section:first-child .sticker{width:120px;height:120px;font-size:14px;margin:0 auto 28px}
  .page-results .result-grid>section:first-child .display{font-size:50px;max-width:300px}
  .page-results .result-grid>section:first-child .subtitle{font-size:16px;max-width:300px}
  .page-results .winner{padding:22px}
  .page-results .winner-grid{grid-template-columns:315px 1fr;gap:26px}
  .page-results .winner-img{aspect-ratio:1/1}
  .page-results .result-alt{gap:14px}

  /* Detail */
  .page-detail .detail-grid{grid-template-columns:1.14fr .86fr;gap:26px;max-width:1180px;margin:0 auto}
  .page-detail .detail-media{height:410px}
  .page-detail .detail-grid .display{font-size:44px!important}
}

/* Laptop heights: preserve the mockup proportions without avoidable vertical scroll. */
@media (min-width:1051px) and (max-height:900px){
  body:not(.page-home) .topbar{height:60px}
  body:not(.page-home) .page{padding-top:12px;padding-bottom:10px}
  body:not(.page-home) .footer-strip{padding-top:7px;padding-bottom:7px}
  .page-create-1 .stepper{margin-bottom:10px}.page-create-1 .side-copy{min-height:575px}.page-create-1 .side-copy .display{font-size:43px}.page-create-1 .side-copy .sticker{bottom:18px}.page-create-1 .option{min-height:82px}.page-create-1 .option-media{min-height:82px}.page-create-1 .option-text strong{font-size:20px}.page-create-1 .main-card{padding:13px}.page-create-1 .create-help-item{padding:7px 0}
  .page-create-2 .side-copy{padding-top:12px}.page-create-2 .side-copy .display{font-size:43px}.page-create-2 .form-group{padding:10px 0}.page-create-2 .create-search-note{padding:9px 11px}.page-create-2 .creation-timeline{gap:13px;margin-top:22px}
  .page-create-3 .side-copy{padding-top:12px}.page-create-3 .side-copy .display{font-size:43px}.page-create-3 .form-group{padding:8px 0}.page-create-3 .create-confidential{margin-top:20px}.page-create-3 .create-criteria-note{padding:8px 10px}
  .page-share .session-head .display{font-size:43px}.page-share .share-box{padding:18px}.page-share .participant-list .person-row{padding:7px 0}.page-share .qr{width:150px!important;height:150px!important}.page-share .qr canvas,.page-share .qr img{width:130px!important;height:130px!important}
  .page-join .join-card{padding:22px}.page-join .join-card .title{font-size:29px}.page-join .preview-media,.page-join .preview-media img{min-height:180px;max-height:220px}
  .page-tutorial .reaction-card{min-height:126px;padding:15px}.page-tutorial .reaction-icon{width:56px;height:56px}.page-tutorial .preview-media,.page-tutorial .preview-media img{min-height:205px;max-height:235px}
  .page-vote .vote-card .hero-media{height:275px}.page-vote .vote-action .circle{width:50px;height:50px}
  .page-waiting .progress-ring{width:175px;height:175px}.page-waiting .participant-list .person-row{padding:7px 0}
  .page-results .winner-grid{grid-template-columns:260px 1fr}.page-results .result-grid>section:first-child .sticker{width:105px;height:105px;margin-bottom:18px}.page-results .result-grid>section:first-child .display{font-size:44px}.page-results .winner{padding:17px}
  .page-detail .detail-media{height:330px}
}

@media (max-width:680px){
  .desktop-only{display:none!important}
  .page-create .topbar{display:none}
  .page-create .app-shell{min-height:100dvh}
  .page-create main.page{padding:0 0 24px}
  .page-create .container{width:calc(100% - 28px)}
  .mobile-create-head{height:112px;display:flex!important;align-items:center;justify-content:space-between;padding:10px 18px 0;position:relative}
  .mobile-back{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:31px;line-height:1;color:#fff}
  .mobile-brand{position:absolute;left:50%;top:24px;transform:translateX(-50%);font-family:var(--hand);font-size:29px;font-weight:800;line-height:.8;letter-spacing:-2px;width:112px;text-align:center}
  .mobile-step-count{margin-left:auto;font-family:var(--hand);font-size:28px;color:var(--lime);padding-top:3px;position:relative}.mobile-step-count span{color:#aaa;font-size:20px}.mobile-step-count:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--lime) 0 45%,#26282b 45% 100%)}
  .page-create .stepper{display:none}
  .page-create .layout-form{display:block}
  .page-create .side-copy{position:relative;top:auto;padding:0;margin:0 0 22px;min-height:0}
  .page-create .side-copy .eyebrow{font-size:14px;color:var(--lime);letter-spacing:.05em}
  .page-create .side-copy .display{font-size:41px;line-height:1.04;letter-spacing:-1.4px;margin:15px 0 15px;max-width:100%}
  .page-create .side-copy .subtitle{font-size:16px;line-height:1.45;max-width:100%;margin:0}
  .page-create .side-copy .sticker{position:absolute;width:105px;height:105px;font-size:13px;right:3px;top:-8px;margin:0}
  .page-create-1 .side-copy .sticker{display:none}
  .page-create-1 .create-extra-copy{display:none}
  .page-create .main-card,.page-create .layout-form>section.panel{background:transparent;border:0;box-shadow:none;padding:0;border-radius:0}
  .page-create .side-panel,.page-create .create-side-stack{display:none}
  .create-panel-intro{display:none}

  /* Create 1 mobile cards */
  .page-create-1 .option-list{gap:10px}
  .page-create-1 .option{grid-template-columns:132px 1fr 38px;min-height:104px;border-radius:19px;background:rgba(11,14,17,.82)}
  .page-create-1 .option-media{min-height:104px;border-radius:16px;margin:7px 0 7px 7px}
  .page-create-1 .option-text{padding:12px 13px}
  .page-create-1 .option-text strong{font-size:21px;white-space:nowrap}
  .page-create-1 .option-text span{display:none}
  .page-create-1 .radio{width:25px;height:25px;margin-right:11px}
  .page-create-1 .create-next-row{margin-top:14px}
  .page-create-1 .create-next-row .btn{width:100%;min-height:58px;font-size:20px}

  /* Create 2 mobile */
  .page-create-2 .side-copy{padding-right:118px;margin-bottom:18px}
  .page-create-2 .side-copy .display{font-size:40px}
  .page-create-2 .form-group{border:1px solid var(--line);border-radius:20px;padding:18px;margin:0 0 12px;background:rgba(14,17,20,.74)}
  .page-create-2 .form-group:first-of-type{padding-top:18px}
  .page-create-2 .label{font-size:18px;margin-bottom:10px}
  .page-create-2 .input{height:50px;border-radius:13px}
  .page-create-2 .segmented{height:48px}
  .page-create-2 .segment{padding:8px 5px}
  .page-create-2 .range-wrap{gap:9px}.page-create-2 .range-wrap>span{font-size:11px}
  .page-create-2 .create-search-note{display:none}
  .page-create-2 .btn-primary{width:100%;margin-top:2px!important;min-height:58px;font-size:20px}

  /* Create 3 mobile */
  .page-create-3 .side-copy{padding-right:118px;margin-bottom:18px}
  .page-create-3 .side-copy .display{font-size:39px}
  .page-create-3 .layout-form>section>.form-group,.page-create-3 .toggle-row{border:1px solid var(--line);border-radius:20px;padding:18px;margin:0 0 12px;background:rgba(14,17,20,.74)}
  .page-create-3 .layout-form>section>.form-group:first-of-type{padding-top:18px}
  .page-create-3 .label{font-size:19px}
  .page-create-3 .pills{gap:8px}
  .page-create-3 .pill{padding:10px 13px;flex:1 1 auto}
  .page-create-3 .toggle-row{padding:17px 18px}
  .page-create-3 .create-criteria-note{display:none}
  .page-create-3 .btn-primary{width:100%;margin-top:2px!important;min-height:58px;font-size:20px}

  /* Other mobile screens: closer to the validated single-column compositions. */
  .page-share .session-head{align-items:flex-start;gap:10px}.page-share .session-head .sticker{width:94px;height:94px;flex:0 0 auto}.page-share .session-head .display{font-size:38px}.page-share .share-grid{display:block;margin-top:16px!important}.page-share .share-box{margin-bottom:12px}.page-share .qr{margin:14px auto 0}
  .page-join .join-grid{display:block}.page-join .join-grid>section:first-child{margin-bottom:16px}.page-join .join-card{margin-bottom:12px}.page-join .preview-card{display:block}.page-join .join-card .sticker{float:right;margin:-10px -2px 8px 10px;width:92px;height:92px}
  .page-tutorial .tutorial-grid{display:block}.page-tutorial .reaction-grid{grid-template-columns:1fr;gap:10px!important}.page-tutorial .reaction-card{min-height:92px;padding:14px;grid-template-columns:55px 1fr}.page-tutorial .reaction-icon{width:50px;height:50px}.page-tutorial .preview-card{display:none}.page-tutorial .container>div.panel{grid-template-columns:1fr!important;padding:14px!important}.page-tutorial .container>div.panel .btn{width:100%}
  .page-vote .vote-layout{display:block}.page-vote .vote-layout>section>div:first-child{display:block!important}.page-vote .vote-layout>section>div:first-child>div:last-child{min-width:0!important;margin-top:10px}.page-vote .vote-layout .eyebrow{font-family:var(--hand);font-size:30px;text-transform:none;letter-spacing:0;color:#fff}.page-vote .vote-layout .title{font-family:var(--sans);font-size:12px;color:var(--muted)}.page-vote .vote-card .hero-media{height:250px}.page-vote .vote-info>.title{font-size:28px}.page-vote .vote-actions{grid-template-columns:repeat(4,1fr)}
  .page-waiting .waiting-grid{display:block}.page-waiting .waiting-grid>section,.page-waiting .waiting-grid>aside{margin-bottom:12px}.page-waiting .progress-ring{width:175px;height:175px}.page-waiting main.page>.container>.btn-primary{margin-top:6px!important}
  .page-results .result-grid{display:block}.page-results .result-grid>section:first-child{text-align:center;margin-bottom:16px}.page-results .result-grid>section:first-child .sticker{margin:0 auto 12px}.page-results .result-grid>section:first-child .display{font-size:39px}.page-results .winner-grid{grid-template-columns:1fr}.page-results .winner-img{aspect-ratio:1.25/1}.page-results .result-alt{grid-template-columns:1fr}
  .page-detail .detail-grid{display:block}.page-detail .detail-grid>section{margin-bottom:12px}.page-detail .detail-media{height:260px}.page-detail .detail-grid .display{font-size:35px!important}
}

/* V12 — Step 1: one consistent media treatment for every category */
.page-create-1 .option-media{
  background:#101216;
  isolation:isolate;
}
.page-create-1 .option-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(7,9,11,.04),rgba(7,9,11,0) 60%,rgba(7,9,11,.10));
  z-index:1;
}
.page-create-1 .option-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.95) contrast(1.03);
}
.page-create-1 .option.selected .option-media img{
  filter:saturate(1.03) contrast(1.04);
}
@media(max-width:680px){
  .page-create-1 .option-media img{object-fit:cover}
}


/* V13 — Step 1 multi-choice + clean media crops */
.page-create-1 .option{position:relative}
.page-create-1 .option-media::after{background:linear-gradient(90deg,rgba(7,9,11,.03),rgba(7,9,11,0) 62%,rgba(7,9,11,.08))}
.page-create-1 .option-media img{object-fit:cover;object-position:center center}
.page-create-1 .multi-check{width:28px;height:28px;border:2px solid #d7d9dc;border-radius:9px;margin-right:16px;display:grid;place-items:center;color:#111;background:transparent;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.page-create-1 .multi-check .gt-icon{width:17px;height:17px;opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .18s ease}
.page-create-1 .option.selected{border-color:var(--lime);box-shadow:0 0 0 1px rgba(217,255,34,.32),inset 0 0 28px rgba(217,255,34,.025);background:linear-gradient(90deg,rgba(217,255,34,.035),rgba(255,255,255,.012) 38%)}
.page-create-1 .option.selected .multi-check{background:var(--lime);border-color:var(--lime);transform:scale(1.03)}
.page-create-1 .option.selected .multi-check .gt-icon{opacity:1;transform:scale(1)}
.page-create-1 .type-next-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px}
.page-create-1 .type-selection-status{display:grid;gap:2px;min-width:0}
.page-create-1 .type-selection-status b{font-size:13px;color:#f0f2ed}
.page-create-1 .type-selection-status span{font-size:11px;color:var(--muted)}
.page-create-1 .btn.is-disabled{opacity:.42;filter:saturate(.45);cursor:not-allowed;box-shadow:none}
.page-create-1 .option[data-select="surprise"].selected{border-color:#b66dff;box-shadow:0 0 0 1px rgba(182,109,255,.34),inset 0 0 28px rgba(139,61,255,.05)}
.page-create-1 .option[data-select="surprise"].selected .multi-check{background:#b66dff;border-color:#b66dff;color:#fff}
@media(max-width:680px){
  .page-create-1 .multi-check{width:26px;height:26px;border-radius:8px;margin-right:10px}
  .page-create-1 .type-next-row{display:grid;grid-template-columns:1fr;margin-top:12px}
  .page-create-1 .type-selection-status{text-align:center;order:0}
  .page-create-1 .type-next-row .btn{order:1}
}

/* ==========================================================
   V14 — Organizer vote + invite throughout the journey
   ========================================================== */
.gt-invite-trigger{border-color:rgba(139,61,255,.58);color:#d1b3ff;background:rgba(139,61,255,.06)}
.gt-invite-trigger:hover{border-color:#a45fff;background:rgba(139,61,255,.12)}
.gt-invite-mobile{display:none}
.gt-invite-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px}
.gt-invite-modal.open{display:flex}
.gt-invite-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}
.gt-invite-dialog{position:relative;z-index:1;width:min(620px,100%);padding:28px;box-shadow:0 28px 90px rgba(0,0,0,.58)}
.gt-invite-dialog h2{font-family:var(--hand);font-size:36px;line-height:1.05;margin:8px 0 12px}
.gt-invite-close{position:absolute;right:16px;top:12px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font-size:26px;cursor:pointer}
.gt-invite-content{display:grid;grid-template-columns:178px 1fr;gap:22px;align-items:center;margin-top:22px}
.gt-invite-qr{width:170px;height:170px;border-radius:20px;background:#fff;display:grid;place-items:center;padding:10px;overflow:hidden}
.gt-invite-qr canvas,.gt-invite-qr img{max-width:150px!important;max-height:150px!important}
.gt-invite-actions{display:grid;gap:10px}
.gt-invite-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:8px 8px 8px 13px;background:#0b0e11}
.gt-invite-link span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#c9c9c4;font-size:13px}
.invite-modal-open{overflow:hidden}
@media(max-width:680px){
  .desktop-invite{display:none!important}
  .is-organizer .topbar{position:sticky}
  .gt-invite-mobile{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(139,61,255,.55);background:rgba(10,10,13,.9);color:#d4b7ff;border-radius:14px;padding:8px 11px;font-weight:800;font-size:12px;position:absolute;right:14px;top:50%;transform:translateY(-50%);z-index:3}
  .gt-invite-mobile .gt-icon{width:16px;height:16px}
  .gt-invite-dialog{padding:22px 16px 18px;border-radius:22px}
  .gt-invite-dialog h2{font-size:31px;padding-right:34px}
  .gt-invite-content{display:block;margin-top:16px}
  .gt-invite-qr{width:150px;height:150px;margin:0 auto 16px}
  .gt-invite-qr canvas,.gt-invite-qr img{max-width:130px!important;max-height:130px!important}
  .gt-invite-link{grid-template-columns:1fr}
  .gt-invite-link .btn{width:100%}
}


/* V15 — Share screen rebuilt around the validated GoTogether composition. */
.share-mobile-head{display:none}
.page-share .page{padding-top:24px;padding-bottom:20px}
.page-share .container{max-width:1360px}
.page-share .share-ready-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.82fr);gap:28px;align-items:start}
.page-share .share-main-column,.page-share .share-side-column{min-width:0}
.page-share .share-ready-head{align-items:center;margin:0 0 14px;min-height:138px}
.page-share .share-ready-head>div:first-child{max-width:620px}
.page-share .share-ready-head .eyebrow{color:#bc80ff;margin-bottom:4px}
.page-share .share-ready-head .display{font-size:52px;line-height:1;margin:5px 0 11px}
.page-share .share-ready-head .subtitle{font-size:17px;line-height:1.48;max-width:610px}
.page-share .share-ready-head .privacy-sticker{width:124px;height:124px;flex:0 0 124px;font-size:15px;margin-right:8px}
.page-share .share-meta{margin:0 0 18px}
.page-share .share-meta .chip{border-radius:15px;padding:10px 15px;background:rgba(255,255,255,.012)}
.page-share .share-meta .gt-icon{color:var(--violet)}
.page-share .share-link-card{padding:24px 26px 22px;border-color:rgba(217,255,34,.55);box-shadow:0 18px 46px rgba(0,0,0,.18)}
.page-share .share-card-heading{display:flex;gap:13px;align-items:center;margin-bottom:20px}
.page-share .share-card-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:var(--violet);background:rgba(139,61,255,.11);border:1px solid rgba(139,61,255,.28)}
.page-share .share-card-icon .gt-icon{width:22px;height:22px}
.page-share .share-card-heading h2{font-family:var(--hand);font-size:27px;line-height:1;margin:0 0 4px}
.page-share .share-card-heading p{margin:0;color:var(--muted);font-size:13px}
.page-share .share-card-content{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:26px;align-items:center}
.page-share .share-link-label{display:block;color:#c5c5c0;font-size:13px;margin:0 0 8px}
.page-share .share-link-field{grid-template-columns:minmax(0,1fr) auto;gap:8px}
.page-share .share-link-field .link-value{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:14px 15px;font-size:15px;border-radius:13px}
.page-share .share-copy-inline{padding:12px 15px;border-radius:13px}
.page-share .share-or{height:30px;display:flex;align-items:center;gap:10px;color:#777;font-size:12px}
.page-share .share-or:before,.page-share .share-or:after{content:"";height:1px;background:var(--line);flex:1}
.page-share .share-main-action{width:100%;min-height:66px;padding:10px 14px;justify-content:flex-start;text-align:left;border-radius:17px}
.page-share .share-action-orb{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#2cab57,#12763a);color:white;flex:0 0 42px}
.page-share .share-action-orb .gt-icon{width:20px;height:20px}
.page-share .share-main-action>span:nth-child(2){display:grid;gap:2px;flex:1}
.page-share .share-main-action b{font-size:15px}
.page-share .share-main-action small{color:var(--muted);font-weight:500;font-size:11px}
.page-share .share-action-arrow{font-family:var(--hand);font-size:28px;color:#fff}
.page-share .share-qr-column{border-left:1px solid var(--line);padding-left:24px;display:grid;justify-items:center;gap:8px}
.page-share .share-qr-column .qr{width:178px!important;height:178px!important;border-radius:18px!important;padding:10px!important}
.page-share .share-qr-column .qr canvas,.page-share .share-qr-column .qr img{width:158px!important;height:158px!important}
.page-share .share-qr-column>span{font-family:var(--hand);font-size:15px;color:#c8c8c3;position:relative}
.page-share .share-qr-column>span:after{content:"";position:absolute;left:8%;right:4%;bottom:-5px;height:2px;border-radius:99px;background:var(--violet);transform:rotate(-3deg)}
.page-share .share-vote-cta{width:100%;margin-top:14px;min-height:58px;font-size:20px}
.page-share .share-side-column{display:grid;gap:16px}
.page-share .share-participants-card{padding:22px 24px;min-height:420px}
.page-share .share-panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:7px}
.page-share .share-panel-title{display:flex;align-items:center;gap:10px}
.page-share .share-panel-title>.gt-icon{color:var(--violet);width:22px;height:22px}
.page-share .share-panel-title h2{font-family:var(--hand);font-size:25px;margin:0}
.page-share .share-live-dot{font-size:11px;color:#a7a7a2;display:flex;align-items:center;gap:6px}
.page-share .share-live-dot i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px rgba(217,255,34,.5)}
.page-share .share-participant-list .share-person-row{grid-template-columns:44px minmax(0,1fr) auto;gap:12px;padding:11px 0}
.page-share .share-participant-list .avatar{width:40px;height:40px;margin:0}
.page-share .share-person-name{display:flex;align-items:center;gap:8px;min-width:0}
.page-share .share-person-name>b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.page-share .share-person-name small{display:block;color:var(--muted);font-size:11px}
.page-share .share-role-badge{font-size:10px;line-height:1;padding:5px 7px;border-radius:999px;border:1px solid rgba(139,61,255,.55);color:#c99cff;background:rgba(139,61,255,.08)}
.page-share .share-person-state{display:inline-flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap}
.page-share .share-person-state .gt-icon{width:15px;height:15px}
.page-share .share-person-state.done{color:var(--lime)}
.page-share .share-person-state.wait{color:#e7a92b}
.page-share .share-person-placeholder{opacity:.62}
.page-share .share-person-placeholder .avatar{border-style:dashed;background:transparent;color:#aaa}
.page-share .share-info-card{padding:16px 18px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center}
.page-share .share-info-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;color:var(--violet);background:rgba(139,61,255,.1)}
.page-share .share-info-copy{display:grid;gap:3px}
.page-share .share-info-copy b{font-family:var(--hand);font-size:17px}
.page-share .share-info-copy span{color:var(--muted);font-size:11px;line-height:1.35}
.page-share .share-remind{padding:10px 13px;font-size:12px;border-radius:13px}
.page-share .footer-strip{grid-template-columns:1fr;padding-top:10px;padding-bottom:10px;justify-items:center}
.page-share .footer-strip .footer-benefit{display:none}
.page-share .footer-strip .footer-benefit:first-child{display:flex}

@media (min-width:1051px) and (max-height:900px){
  .page-share .page{padding-top:14px;padding-bottom:10px}
  .page-share .share-ready-head{min-height:104px;margin-bottom:8px}
  .page-share .share-ready-head .display{font-size:44px;margin:2px 0 7px}
  .page-share .share-ready-head .subtitle{font-size:15px;line-height:1.38}
  .page-share .share-ready-head .privacy-sticker{width:102px;height:102px;flex-basis:102px;font-size:13px}
  .page-share .share-meta{margin-bottom:10px}.page-share .share-meta .chip{padding:8px 12px}
  .page-share .share-link-card{padding:17px 20px 16px}.page-share .share-card-heading{margin-bottom:12px}.page-share .share-card-heading h2{font-size:23px}
  .page-share .share-card-content{grid-template-columns:minmax(0,1fr) 172px;gap:20px}
  .page-share .share-qr-column{padding-left:18px}.page-share .share-qr-column .qr{width:148px!important;height:148px!important}.page-share .share-qr-column .qr canvas,.page-share .share-qr-column .qr img{width:128px!important;height:128px!important}
  .page-share .share-main-action{min-height:58px}.page-share .share-vote-cta{min-height:50px;margin-top:10px}
  .page-share .share-participants-card{padding:16px 20px;min-height:340px}.page-share .share-participant-list .share-person-row{padding:7px 0}.page-share .share-participant-list .avatar{width:34px;height:34px}
  .page-share .share-info-card{padding:12px 15px}
}

@media(max-width:1050px){
  .page-share .share-ready-grid{grid-template-columns:1fr;gap:18px}
  .page-share .share-side-column{grid-template-columns:1fr 1fr;align-items:start}
  .page-share .share-participants-card{min-height:0}
}

@media(max-width:680px){
  .page-share .topbar{display:none}
  .page-share .page{padding:0 0 26px}
  .page-share .container{width:calc(100% - 28px)}
  .page-share .share-mobile-head{height:104px;display:flex;align-items:center;justify-content:center;position:relative}
  .page-share .share-mobile-back{position:absolute;left:0;top:28px;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:28px;color:#fff}
  .page-share .share-mobile-logo{font-family:var(--hand);font-size:27px;font-weight:800;line-height:.72;letter-spacing:-2px;text-align:center;color:#fff}
  .page-share .share-ready-grid{display:block}
  .page-share .share-ready-head{min-height:0;align-items:flex-start;gap:8px;margin-bottom:15px}
  .page-share .share-ready-head>div:first-child{max-width:calc(100% - 105px)}
  .page-share .share-ready-head .eyebrow{display:none}
  .page-share .share-ready-head .display{font-size:39px;line-height:1.03;letter-spacing:-1.4px;margin:8px 0 11px}
  .page-share .share-ready-head .subtitle{font-size:15px;line-height:1.4}
  .page-share .share-ready-head .privacy-sticker{width:96px;height:96px;flex-basis:96px;font-size:12px;margin:0 -2px 0 0}
  .page-share .share-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 14px}
  .page-share .share-meta .chip{justify-content:center;padding:9px 6px;font-size:12px;border-radius:14px;white-space:nowrap;overflow:hidden}
  .page-share .share-link-card{padding:17px 15px 15px;border-radius:22px}
  .page-share .share-card-heading{margin-bottom:14px}.page-share .share-card-heading h2{font-size:23px}.page-share .share-card-heading p{font-size:11px}
  .page-share .share-card-content{grid-template-columns:minmax(0,1fr) 118px;gap:13px;align-items:center}
  .page-share .share-link-field{display:block}.page-share .share-link-field .link-value{font-size:12px;padding:12px 11px;padding-right:8px}.page-share .share-copy-inline{width:100%;margin-top:7px;padding:9px}.page-share .share-copy-inline span{display:inline}
  .page-share .share-or{height:22px}.page-share .share-main-action{min-height:58px;padding:8px 10px}.page-share .share-action-orb{width:38px;height:38px;flex-basis:38px}.page-share .share-main-action small{display:none}.page-share .share-action-arrow{font-size:23px}
  .page-share .share-qr-column{padding-left:13px}.page-share .share-qr-column .qr{width:108px!important;height:108px!important;padding:7px!important;border-radius:14px!important}.page-share .share-qr-column .qr canvas,.page-share .share-qr-column .qr img{width:94px!important;height:94px!important}.page-share .share-qr-column>span{font-size:11px;text-align:center}
  .page-share .share-vote-cta{margin:12px 0 18px;min-height:56px;font-size:19px}
  .page-share .share-side-column{display:block}.page-share .share-participants-card{padding:16px 15px;margin-bottom:12px}.page-share .share-panel-title h2{font-size:22px}.page-share .share-live-dot{display:none}
  .page-share .share-participant-list .share-person-row{grid-template-columns:40px minmax(0,1fr) auto;padding:9px 0}.page-share .share-participant-list .avatar{width:36px;height:36px}.page-share .share-role-badge{display:none}.page-share .share-person-name{display:block}.page-share .share-person-name>b{display:block}.page-share .share-person-state{font-size:11px}
  .page-share .share-info-card{grid-template-columns:34px 1fr;padding:13px 14px;margin-bottom:4px}.page-share .share-info-icon{width:34px;height:34px}.page-share .share-remind{grid-column:1/-1;width:100%;margin-top:4px}
  .page-share .footer-strip{display:none}
}

/* =========================================================
   V16 — ALL REMAINING SCREENS AUDIT / MOCKUP POLISH
   Keeps the V15 share page and dynamic/API behavior intact.
   ========================================================= */

/* Shared non-home rhythm: slightly more breathing room without bringing back
   avoidable desktop scroll. */
@media (min-width:1051px){
  body:not(.page-home):not(.page-share) .page{padding-top:16px;padding-bottom:12px}
  body:not(.page-home):not(.page-share) .container{width:min(1450px,calc(100% - 58px))}

  /* CREATE 2 / 3 — stronger summary hierarchy like validated mockups. */
  .page-create-2 .side-panel,.page-create-3 .side-panel{border-radius:22px}
  .create-summary-title{display:flex;align-items:center;gap:10px;margin-bottom:14px}
  .create-summary-title>.gt-icon{width:24px;height:24px;color:var(--violet)}
  .create-summary-title h3{margin:0!important;font-family:var(--hand)!important;font-size:23px!important;color:#fff!important;text-transform:none!important;letter-spacing:0!important}
  .create-summary-lead{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;padding:2px 0 4px}
  .create-summary-lead .avatar{width:38px;height:38px;margin:0}
  .create-summary-lead p{margin:0;font-size:13px;line-height:1.35}
  .create-summary-section{display:grid;gap:10px}
  .create-summary-label{display:flex;align-items:center;gap:8px;font-family:var(--hand);font-size:17px;color:#f4f3ee}
  .create-summary-label>.gt-icon{width:19px;height:19px;color:var(--violet)}
  .page-create-2 .recap-list,.page-create-3 .recap-list{gap:10px}
  .page-create-2 .recap-item,.page-create-3 .recap-item{font-size:12px;line-height:1.3}
  .page-create-2 .recap-item>.gt-icon,.page-create-3 .recap-item>.gt-icon{width:17px;height:17px;color:var(--violet)}
  .page-create-3 .create-person-hint{text-align:center;color:var(--muted);font-size:10px;margin-top:7px}

  /* JOIN — 3-column composition and richer preview. */
  .page-join .join-grid{grid-template-columns:minmax(300px,.86fr) minmax(430px,1fr) minmax(330px,.82fr);gap:30px;align-items:center}
  .page-join .join-grid>section:first-child{align-self:center;padding:4px 0}
  .page-join .join-grid>section:first-child .eyebrow{color:#b66dff;font-size:13px}
  .page-join .join-grid>section:first-child .display{font-size:50px;line-height:1.1;max-width:390px;margin-top:18px}
  .page-join .join-grid>section:first-child .subtitle{font-size:15px;line-height:1.55;max-width:370px}
  .page-join .join-meta{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0 0}
  .page-join .join-meta .chip{padding:10px 13px;border-radius:15px;font-size:12px}
  .page-join .join-meta .gt-icon{color:var(--violet);width:17px;height:17px}
  .page-join .join-grid>section:first-child .proof{margin-top:22px}
  .page-join .join-card{text-align:center;padding:34px 32px 28px;min-height:430px;display:flex;flex-direction:column;justify-content:center}
  .page-join .join-card .sticker{right:-16px;top:-42px;width:108px;height:108px}
  .page-join .join-card .title{font-size:34px;margin:38px 0 16px}
  .page-join .join-card .muted{font-size:14px;line-height:1.55}
  .page-join .join-card .input{height:56px;margin-top:20px;font-family:var(--hand);font-size:19px}
  .page-join .join-card .btn-primary{min-height:58px;font-size:20px}
  .page-join .account-note{font-size:11px!important;margin:13px 0 0}
  .page-join .preview-card{padding:20px 20px 17px;align-self:stretch}
  .page-join .preview-card .section-label{font-size:21px}
  .page-join .preview-media,.page-join .preview-media img{min-height:205px;max-height:235px}
  .page-join .preview-card .activity-title{font-size:24px;margin:12px 0 8px}
  .page-join .join-how{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:10px}
  .page-join .join-how h4{font-family:var(--hand);font-size:17px;color:#b66dff;margin:0 0 2px}
  .page-join .join-how-item{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:start}
  .page-join .join-how-item>.gt-icon{width:23px;height:23px;color:var(--violet)}
  .page-join .join-how-item b{display:block;font-size:12px}
  .page-join .join-how-item span{display:block;color:var(--muted);font-size:10px;line-height:1.35;margin-top:1px}

  /* TUTORIAL — stronger title/cards + actual proposal context. */
  .page-tutorial .tutorial-grid{grid-template-columns:minmax(650px,1.28fr) minmax(370px,.72fr);gap:32px}
  .page-tutorial .tutorial-grid>section .eyebrow{color:#b66dff;font-size:13px}
  .page-tutorial .tutorial-grid>section .display{font-size:52px;margin-top:12px}
  .page-tutorial .reaction-grid{grid-template-columns:repeat(2,1fr);gap:14px!important;margin-top:25px!important}
  .page-tutorial .reaction-card{min-height:140px;padding:20px;grid-template-columns:70px 1fr;gap:16px;border-radius:20px}
  .page-tutorial .reaction-icon{width:64px;height:64px}
  .page-tutorial .reaction-card h3{font-size:21px;margin:1px 0 8px}
  .page-tutorial .reaction-card p{font-size:13px;line-height:1.45}
  .page-tutorial .preview-card{position:relative;padding:22px;overflow:visible}
  .page-tutorial .preview-card .section-label{font-size:22px}
  .page-tutorial .preview-media,.page-tutorial .preview-media img{min-height:235px;max-height:265px}
  .page-tutorial .preview-card .activity-title{font-size:25px;margin:12px 0 7px}
  .tutorial-preview-meta{display:flex;gap:8px;flex-wrap:wrap;color:#c0beb9;font-size:11px;margin-bottom:12px}
  .tutorial-preview-meta>span{display:flex;align-items:center;gap:5px}
  .tutorial-preview-meta .gt-icon{width:15px;height:15px;color:var(--violet)}
  .page-tutorial .preview-card .info-list{gap:5px}
  .page-tutorial .preview-card .info-row{font-size:11px;padding:6px 0;border:0;color:#d5d3ce}
  .tutorial-sticker{position:absolute;right:-12px;bottom:-20px;width:100px;height:100px;font-size:12px;background:#090b0d}
  .tutorial-bottom-bar{margin-top:18px!important;padding:14px 20px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr)!important;gap:24px!important}
  .tutorial-bottom-bar>div{display:grid;grid-template-columns:48px 1fr;gap:13px;align-items:center}
  .tutorial-lock-orb{width:46px;height:46px;border:1px solid rgba(139,61,255,.6);border-radius:50%;display:grid;place-items:center;color:var(--violet)}
  .tutorial-lock-orb .gt-icon{width:22px;height:22px}
  .tutorial-bottom-bar b{display:block;font-family:var(--hand);font-size:16px}
  .tutorial-bottom-bar span{display:block;color:var(--muted);font-size:11px;margin-top:3px}

  /* VOTE — hierarchy from validated mockup. */
  .page-vote .vote-layout{grid-template-columns:minmax(650px,1.42fr) minmax(350px,.7fr);gap:34px}
  .page-vote .vote-layout>section>div:first-child{display:grid!important;grid-template-columns:1fr minmax(330px,.72fr);align-items:end!important;gap:28px!important;margin-bottom:16px!important}
  .vote-display{font-family:var(--hand);font-size:47px;line-height:1;margin:0;color:#fff;position:relative;display:inline-block}
  .vote-display:after{content:"";position:absolute;left:0;right:12%;height:3px;bottom:-8px;background:var(--violet);border-radius:99px;transform:rotate(-1deg)}
  .vote-heading-sub{color:var(--muted);font-size:12px;margin:15px 0 0}
  .vote-progress-box{display:grid;gap:8px;padding-bottom:4px}
  .vote-progress-line{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}
  .vote-progress-line>b{font-family:var(--hand);font-size:23px;white-space:nowrap}
  .vote-progress-secondary{color:var(--muted);font-size:10px;padding-left:70px}
  .page-vote .vote-card{border-radius:21px;overflow:hidden}
  .page-vote .vote-card .hero-media{height:330px}
  .page-vote .vote-info{padding:17px 24px 18px}
  .page-vote .vote-info>.title{font-size:31px;margin:0 0 9px}
  .page-vote .vote-info .chip{padding:7px 10px;font-size:11px;border-color:rgba(139,61,255,.45)}
  .page-vote .vote-actions{margin-top:13px;gap:18px}
  .page-vote .vote-action{padding:8px 4px;font-size:12px}
  .page-vote .vote-action .circle{width:58px;height:58px}
  .vote-tip{display:flex;align-items:center;justify-content:center;gap:7px;color:#a99bad;font-size:11px;margin-top:10px}
  .vote-tip>.gt-icon{width:18px;height:18px;color:var(--violet)}
  .page-vote .side-panel{padding:22px;position:sticky;top:82px}
  .page-vote .vote-session-heading{display:flex;align-items:center;gap:8px;margin-right:84px!important}
  .page-vote .vote-session-heading>.gt-icon{width:24px;height:24px;color:var(--violet)}
  .vote-session-status{position:absolute;right:20px;top:20px;font-size:10px;padding:6px 10px}
  .page-vote .side-panel>p:not(.privacy){font-size:12px;line-height:1.45}
  .page-vote .side-activities{gap:8px}
  .page-vote .side-activity{grid-template-columns:78px 1fr auto;padding:7px}
  .page-vote .side-thumb{width:78px;height:57px}
  .vote-privacy-card{border:1px solid rgba(139,61,255,.25);border-radius:14px;padding:12px;margin-top:10px!important;color:#ded7e7!important;font-size:11px!important}

  /* WAITING — cleaner status hierarchy, while preserving the no-partial-results rule. */
  .page-waiting .waiting-grid{grid-template-columns:minmax(260px,.58fr) minmax(430px,1.04fr) minmax(360px,.86fr);gap:26px;align-items:stretch}
  .page-waiting .waiting-grid>section:first-child{padding-top:28px;text-align:left}
  .page-waiting .waiting-grid>section:first-child .eyebrow{display:inline-flex;padding:7px 12px;border:1px solid rgba(139,61,255,.24);border-radius:11px;color:#b66dff}
  .page-waiting .waiting-grid>section:first-child .display{font-size:50px;max-width:260px;margin-top:18px}
  .page-waiting .waiting-grid>section:first-child .subtitle{font-size:16px}
  .page-waiting .progress-ring{width:210px;height:210px;margin:28px auto 16px}
  .page-waiting .progress-secondary{text-align:center;font-size:11px;line-height:1.4}
  .page-waiting .waiting-grid>section:first-child .privacy{display:flex;align-items:center;gap:12px;padding:14px 16px;border-color:rgba(139,61,255,.45);border-radius:16px;margin-top:22px}
  .page-waiting .waiting-grid>section:first-child .privacy>.gt-icon{width:27px;height:27px;color:var(--violet)}
  .page-waiting .waiting-grid>section:first-child .privacy span{font-family:var(--hand);font-size:14px;line-height:1.25}
  .page-waiting .waiting-grid>section:first-child .privacy small{font-family:var(--sans);color:var(--muted);font-size:10px}
  .page-waiting .waiting-grid>.panel{padding:20px 22px}
  .page-waiting .section-label{display:flex;align-items:center;gap:9px;font-size:22px;padding-bottom:13px;border-bottom:1px solid var(--line)}
  .page-waiting .section-label>.gt-icon{width:26px;height:26px;color:var(--violet)}
  .page-waiting .participant-list .person-row{grid-template-columns:44px 1fr auto;padding:10px 0}
  .page-waiting .ranking{margin-top:12px}
  .page-waiting .result-locked,.page-waiting .result-ready{min-height:250px;border-radius:17px}
  .page-waiting main.page>.container>.btn-primary{width:min(900px,72%)!important;min-height:56px;margin:18px auto 0!important}

  /* RESULTS — closer to the confirmed-result composition. */
  .page-results .result-grid{grid-template-columns:minmax(270px,.48fr) minmax(720px,1.52fr);gap:34px}
  .page-results .result-grid>section:first-child{padding:5px 0 0;display:flex;flex-direction:column;align-items:flex-start}
  .page-results .result-grid>section:first-child .sticker{margin:0 auto 24px;width:118px;height:118px}
  .page-results .result-grid>section:first-child .display{font-size:50px;max-width:265px;line-height:1.1}
  .page-results .result-grid>section:first-child .subtitle{font-size:15px;max-width:275px;line-height:1.55}
  .results-privacy-note{margin-top:auto;padding:15px 16px;display:grid;grid-template-columns:26px 1fr;gap:10px;max-width:255px;border-color:rgba(139,61,255,.32)}
  .results-privacy-note>.gt-icon{width:23px;height:23px;color:var(--violet)}
  .results-privacy-note b{display:block;color:#b66dff;font-size:11px}
  .results-privacy-note span{display:block;color:var(--muted);font-size:9px;line-height:1.4;margin-top:4px}
  .page-results .winner{padding:22px;border-radius:22px}
  .page-results .winner-grid{grid-template-columns:315px 1fr;gap:26px}
  .page-results .winner-img{aspect-ratio:1/1;border-radius:18px}
  .page-results .winner .status{display:inline-flex;align-items:center;gap:6px;padding:7px 12px}
  .page-results .winner .title{font-size:38px;margin:13px 0 10px}
  .page-results .winner .chip{font-size:11px;padding:7px 10px;border:0;background:transparent}
  .page-results .metrics{margin:16px 0}
  .page-results .metric{padding:12px 6px}
  .page-results .metric strong{font-size:25px}
  .page-results .winner .btn-primary{min-height:52px;margin-top:12px!important}
  .page-results .result-alt{margin-top:12px;gap:14px}
  .page-results .alt-card{grid-template-columns:145px 1fr;min-height:110px;align-items:center}

  /* DETAIL desktop — turn generic two-column card into a result-detail hierarchy. */
  .page-detail .container{max-width:1240px}
  .page-detail .detail-mobile-head{display:none!important}
  .page-detail .detail-hero{overflow:hidden;border-radius:24px}
  .page-detail .detail-media{height:390px}
  .page-detail .detail-main-copy{padding:20px 24px}
  .page-detail .detail-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
  .page-detail .detail-title-row .display{font-size:45px!important;margin:0}
  .page-detail .detail-confirmed{display:flex;align-items:center;gap:8px;color:#d8d7d2;margin:8px 0 12px}
  .page-detail .detail-confirmed>.gt-icon{color:var(--violet);width:21px;height:21px}
  .page-detail .detail-facts{gap:8px}
  .page-detail .detail-facts .chip{font-size:11px;padding:8px 11px}
  .page-detail .detail-participants{margin-top:14px;padding:18px 22px}
  .page-detail .detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
  .page-detail .detail-section-head h2,.page-detail .detail-practical h2{font-family:var(--hand);font-size:22px;margin:0}
  .page-detail .detail-avatars{margin-top:13px}.page-detail .detail-avatars .avatar{width:44px;height:44px}
  .page-detail .detail-invite{padding:8px 12px;font-size:14px;border-radius:12px}
  .page-detail .detail-practical{margin-top:14px;padding:18px 22px;border-color:rgba(217,255,34,.5)}
  .page-detail .detail-info-list{grid-template-columns:repeat(2,1fr);gap:0 24px;margin-top:10px}
  .page-detail .detail-info-list .info-row{min-height:68px;padding:10px 0}
  .page-detail .detail-actions{display:grid;gap:10px;margin-top:14px}
  .page-detail .detail-actions>[data-booking-cta]{width:100%;min-height:58px;font-size:22px}
  .page-detail .detail-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
}

/* Laptop-height adaptations for the newly polished screens. */
@media (min-width:1051px) and (max-height:900px){
  .page-join .join-card{min-height:360px;padding-top:22px;padding-bottom:20px}.page-join .join-card .title{margin-top:42px}.page-join .join-how{gap:6px}.page-join .preview-media,.page-join .preview-media img{min-height:170px;max-height:190px}
  .page-tutorial .reaction-card{min-height:112px;padding:14px}.page-tutorial .reaction-icon{width:50px;height:50px}.page-tutorial .preview-media,.page-tutorial .preview-media img{min-height:180px;max-height:200px}.tutorial-sticker{width:86px;height:86px;font-size:10px}
  .page-vote .vote-card .hero-media{height:255px}.page-vote .vote-info{padding:12px 20px}.page-vote .vote-actions{margin-top:7px}.page-vote .vote-action .circle{width:48px;height:48px}.vote-tip{margin-top:6px}
  .page-waiting .waiting-grid>section:first-child{padding-top:12px}.page-waiting .progress-ring{width:170px;height:170px;margin:16px auto 10px}.page-waiting .result-locked,.page-waiting .result-ready{min-height:185px}.page-waiting .participant-list .person-row{padding:7px 0}
  .page-results .result-grid>section:first-child .sticker{width:96px;height:96px;margin-bottom:14px}.page-results .result-grid>section:first-child .display{font-size:42px}.page-results .winner-grid{grid-template-columns:250px 1fr}.page-results .winner{padding:16px}.page-results .winner .title{font-size:31px}.page-results .metrics{margin:10px 0}.page-results .alt-card{min-height:92px;grid-template-columns:122px 1fr}.page-results .alt-media{width:122px;height:78px}
  .page-detail .detail-media{height:290px}.page-detail .detail-main-copy{padding:14px 20px}.page-detail .detail-title-row .display{font-size:38px!important}.page-detail .detail-participants,.page-detail .detail-practical{padding:13px 18px;margin-top:10px}.page-detail .detail-actions{margin-top:10px}
}

@media (max-width:680px){
  /* Creation headers were still taller than the reference: save vertical space. */
  .mobile-create-head{height:84px;padding:8px 12px 0}
  .mobile-brand{top:17px;font-size:25px;width:104px}
  .mobile-back{width:39px;height:39px;font-size:25px}
  .mobile-step-count{font-size:23px}.mobile-step-count span{font-size:15px}.mobile-step-count:after{height:3px;bottom:-6px}
  .page-create .side-copy{margin-bottom:16px}
  .page-create .side-copy .eyebrow{font-size:11px}
  .page-create .side-copy .display{font-size:34px;margin:10px 0 10px}
  .page-create .side-copy .subtitle{font-size:13px;line-height:1.4}
  .page-create-2 .side-copy,.page-create-3 .side-copy{padding-right:100px;margin-bottom:13px}
  .page-create .side-copy .sticker{width:86px;height:86px;font-size:10px;top:-2px}
  .page-create-2 .form-group,.page-create-3 .layout-form>section>.form-group,.page-create-3 .toggle-row{padding:14px;margin-bottom:9px;border-radius:16px}
  .page-create-2 .label,.page-create-3 .label{font-size:15px}
  .page-create-2 .input{height:45px}
  .page-create-2 .segmented{height:44px;grid-auto-flow:column;grid-auto-columns:1fr}
  .page-create-2 .segment{border-right:1px solid var(--line);border-bottom:0;font-size:11px}.page-create-2 .segment:last-child{border-right:0}
  .page-create-3 .pills{gap:6px}.page-create-3 .pill{padding:8px 10px;font-size:11px}
  .page-create-3 .create-person-hint{font-size:9px}

  /* JOIN mobile: metadata -> name -> preview -> CTA, matching the mockup flow. */
  .page-join .topbar{height:58px;background:transparent;border:0;position:relative}.page-join .topbar .nav{display:none}.page-join .topbar .logo{position:absolute;left:50%;transform:translateX(-50%);font-size:23px}
  .page-join .page{padding-top:6px}
  .page-join .join-grid>section:first-child .eyebrow{font-size:10px;color:var(--lime)}
  .page-join .join-grid>section:first-child .display{font-size:35px;line-height:1.08;margin:8px 0 11px}
  .page-join .join-grid>section:first-child .subtitle{display:none}
  .page-join .join-meta{margin:10px 0 12px;gap:6px}
  .page-join .join-meta .chip{font-size:10px;padding:7px 9px}
  .page-join .join-grid>section:first-child .proof{display:none}
  .page-join .join-card{background:transparent;border:0;box-shadow:none;padding:0;min-height:0;text-align:left;margin-bottom:11px}
  .page-join .join-card .sticker{position:absolute;right:4px;top:58px;float:none;margin:0;width:84px;height:84px;font-size:10px;z-index:2}
  .page-join .join-card .title{display:none}.page-join .join-card>p.muted:first-of-type{font-size:11px;margin:0 0 7px}.page-join .join-card .input{margin:0;height:48px;font-size:16px}.page-join .desktop-join-submit,.page-join .account-note{display:none!important}
  .page-join .preview-card{display:grid!important;grid-template-columns:118px 1fr;column-gap:11px;padding:9px;border-radius:17px;margin-bottom:10px;align-items:center}
  .page-join .preview-card>.section-label{grid-column:1/-1;font-size:12px;margin:0 0 6px}.page-join .preview-media{grid-row:2/5;min-height:104px!important;height:104px}.page-join .preview-media img{min-height:104px!important;height:104px!important}.page-join .preview-card .activity-title{font-size:20px;margin:0}.page-join .preview-card .chip-row{gap:5px}.page-join .preview-card .chip{font-size:9px;padding:5px 7px}.page-join .join-how{display:none}
  .page-join .mobile-join-submit{display:flex!important;width:100%;min-height:55px;margin-top:0;font-size:19px}

  /* Tutorial mobile: exact 2x2 reaction grid instead of a long single column. */
  .page-tutorial .topbar{height:58px;background:transparent;border:0}.page-tutorial .topbar .nav{display:none}.page-tutorial .topbar .logo{position:absolute;left:50%;transform:translateX(-50%);font-size:23px}
  .page-tutorial .page{padding-top:5px}
  .page-tutorial .tutorial-grid>section .eyebrow{font-size:10px;color:var(--lime)}
  .page-tutorial .tutorial-grid>section .display{font-size:34px;margin:8px 0 9px}.page-tutorial .tutorial-grid>section .subtitle{font-size:11px;line-height:1.4}
  .page-tutorial .reaction-grid{grid-template-columns:repeat(2,1fr)!important;gap:9px!important;margin-top:14px!important}
  .page-tutorial .reaction-card{min-height:148px;padding:12px 9px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}
  .page-tutorial .reaction-icon{width:54px;height:54px}.page-tutorial .reaction-card h3{font-size:16px;margin:0 0 5px}.page-tutorial .reaction-card p{font-size:9px;line-height:1.35;margin:0}
  .page-tutorial .tutorial-bottom-bar{margin-top:10px!important;padding:10px!important;display:grid!important;grid-template-columns:1fr!important;gap:9px!important;background:transparent;border:0;box-shadow:none}
  .page-tutorial .tutorial-bottom-bar>div{grid-template-columns:24px 1fr;gap:8px}.page-tutorial .tutorial-lock-orb{width:23px;height:23px;border:0}.page-tutorial .tutorial-lock-orb .gt-icon{width:18px;height:18px}.page-tutorial .tutorial-bottom-bar b{font-size:11px}.page-tutorial .tutorial-bottom-bar span{display:none}.page-tutorial .tutorial-bottom-bar .btn{min-height:52px;font-size:18px}

  /* Vote mobile: picture-first layout with compact progress and actions. */
  .page-vote .topbar{height:54px;background:transparent;border:0}.page-vote .topbar .nav{display:none}.page-vote .topbar .logo{position:absolute;left:50%;transform:translateX(-50%);font-size:22px}
  .page-vote .page{padding-top:4px;padding-bottom:14px}
  .page-vote .vote-layout>section>div:first-child{display:block!important;margin-bottom:8px!important;text-align:center}.page-vote .vote-heading-copy{display:none}
  .page-vote .vote-progress-box{padding:0 42px 5px;gap:5px}.page-vote .vote-progress-line{grid-template-columns:auto 1fr;gap:12px}.page-vote .vote-progress-line>b{font-size:17px;color:var(--lime)}.page-vote .vote-progress-secondary{display:none}
  .page-vote .vote-card{border:0;background:transparent;box-shadow:none;overflow:visible}.page-vote .vote-card .hero-media{height:300px;border-radius:16px}.page-vote .vote-info{padding:10px 0 0}.page-vote .vote-info>.title{font-size:30px;margin:0 0 7px}.page-vote .vote-info .chip-row{gap:5px}.page-vote .vote-info .chip{font-size:9px;padding:5px 7px}
  .page-vote .vote-actions{gap:5px;margin-top:11px}.page-vote .vote-action{font-size:9px;padding:4px 1px}.page-vote .vote-action .circle{width:48px;height:48px;margin-bottom:4px}.page-vote .vote-tip{display:none}.page-vote .side-panel{display:none!important}

  /* Waiting mobile: no card chrome around the participant list, mirror the mockup. */
  .page-waiting .topbar{height:54px;background:transparent;border:0}.page-waiting .topbar .nav{display:none}.page-waiting .topbar .logo{position:absolute;left:50%;transform:translateX(-50%);font-size:22px}
  .page-waiting .page{padding-top:2px;padding-bottom:15px}.page-waiting .waiting-grid>section:first-child{text-align:center;margin-bottom:5px!important}.page-waiting .waiting-grid>section:first-child .eyebrow{font-size:9px;padding:5px 8px}.page-waiting .waiting-grid>section:first-child .display{font-size:34px;max-width:none;margin:8px auto}.page-waiting .waiting-grid>section:first-child .subtitle{font-size:11px}.page-waiting .progress-ring{width:148px;height:148px;margin:11px auto 5px}.page-waiting .progress-ring strong{font-size:30px}.page-waiting .progress-secondary{display:none}.page-waiting .waiting-grid>section:first-child .privacy{position:absolute;right:10px;bottom:74px;width:92px;height:92px;border-radius:50%;padding:12px;display:grid;place-items:center;text-align:center;background:#090b0d;z-index:2}.page-waiting .waiting-grid>section:first-child .privacy>.gt-icon{display:none}.page-waiting .waiting-grid>section:first-child .privacy span{font-size:10px}.page-waiting .waiting-grid>section:first-child .privacy small{display:none}
  .page-waiting .waiting-grid>section.panel{background:transparent;border:0;box-shadow:none;padding:0!important}.page-waiting .waiting-grid>section.panel .section-label{display:none}.page-waiting .participant-list .person-row{padding:7px 2px;border-bottom:0;grid-template-columns:38px 1fr auto}.page-waiting .participant-list .avatar{width:36px;height:36px}.page-waiting .waiting-grid>aside{display:none}.page-waiting main.page>.container>.btn-primary{width:100%!important;min-height:53px;margin:8px 0 0!important;font-size:18px}

  /* Results mobile: winner card compact and CTA immediately visible. */
  .page-results .topbar{height:54px;background:transparent;border:0}.page-results .topbar .nav{display:none}.page-results .topbar .logo{position:absolute;left:50%;transform:translateX(-50%);font-size:22px}
  .page-results .page{padding-top:4px;padding-bottom:16px}.page-results .result-grid>section:first-child{text-align:left;margin-bottom:8px}.page-results .result-grid>section:first-child .sticker{position:absolute;right:12px;top:72px;width:86px;height:86px;font-size:10px;z-index:3}.page-results .result-grid>section:first-child .display{font-size:33px;margin:4px 100px 7px 0}.page-results .result-grid>section:first-child .subtitle{font-size:10px;line-height:1.4;max-width:240px;margin:0}.page-results .results-privacy-note{display:none}
  .page-results .winner{padding:10px;border-color:rgba(217,255,34,.55);border-radius:17px}.page-results .winner-grid{display:grid;grid-template-columns:42% 1fr;gap:11px;align-items:start}.page-results .winner-img{aspect-ratio:.88/1;border-radius:13px}.page-results .winner .status{font-size:8px;padding:5px 7px}.page-results .winner .title{font-size:24px;margin:7px 0}.page-results .winner .chip-row{display:grid;gap:4px}.page-results .winner .chip{font-size:8px;padding:4px 6px}.page-results .metrics{grid-column:1/-1;margin:8px 0 4px}.page-results .metric{padding:8px 3px}.page-results .metric strong{font-size:19px}.page-results [data-result-avatars]{grid-column:1/-1;margin-top:4px}.page-results .winner .btn-primary,.page-results .winner [data-action="share-result"]{grid-column:1/-1}.page-results .winner .btn-primary{min-height:52px;font-size:18px;margin-top:6px!important}.page-results .winner [data-action="share-result"]{min-height:46px;margin-top:7px!important}.page-results .result-alt{display:none}.page-results .section-label{display:none}

  /* Detail mobile: match the validated full-detail composition. */
  .page-detail .topbar{display:none}.page-detail .page{padding:0 0 16px}.page-detail .container{width:calc(100% - 20px)}
  .page-detail .detail-mobile-head{height:78px;display:flex!important;align-items:center;justify-content:space-between;position:relative}.page-detail .detail-back,.page-detail .detail-share{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:#fff;display:grid;place-items:center;font-size:27px}.page-detail .detail-share .gt-icon{width:21px;height:21px}.page-detail .detail-logo{position:absolute;left:50%;top:25px;transform:translateX(-50%);font-size:25px}
  .page-detail .detail-hero{background:transparent;border:0;box-shadow:none;overflow:visible}.page-detail .detail-media{height:280px;border-radius:18px;overflow:hidden}.page-detail .detail-main-copy{padding:13px 5px 0}.page-detail .detail-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.page-detail .detail-title-row .display{font-size:36px!important;margin:0}.page-detail .detail-title-row .status{font-size:9px;padding:6px 8px}.page-detail .detail-confirmed{font-family:var(--hand);font-size:17px;margin:8px 0 12px}.page-detail .detail-confirmed>.gt-icon{width:20px;height:20px;color:var(--violet)}.page-detail .detail-facts{gap:6px}.page-detail .detail-facts .chip{font-size:9px;padding:6px 8px}
  .page-detail .detail-participants{margin-top:12px;padding:12px 14px;border-radius:17px}.page-detail .detail-section-head h2{font-size:19px}.page-detail .detail-invite{width:48px;height:48px;padding:0;border-radius:50%;font-size:0}.page-detail .detail-invite .gt-icon{width:20px;height:20px}.page-detail .detail-avatars{margin-top:9px;overflow:hidden}.page-detail .detail-avatars .avatar{width:40px;height:40px}
  .page-detail .detail-practical{margin-top:12px;padding:13px 14px;border-radius:17px}.page-detail .detail-practical h2{font-size:20px}.page-detail .detail-info-list{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.page-detail .detail-info-list .info-row{padding:8px 0;border:0;font-size:9px;min-width:0}.page-detail .detail-info-list .recap-ico .gt-icon{width:17px;height:17px}.page-detail .detail-info-list b{font-size:10px}.page-detail .detail-info-list .muted{font-size:8px;line-height:1.35}
  .page-detail .detail-actions{margin-top:12px;gap:8px}.page-detail .detail-actions>[data-booking-cta]{width:100%;min-height:57px;font-size:21px}.page-detail .detail-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.page-detail .detail-secondary-actions .btn{padding:11px 8px;font-size:10px;border-radius:14px}
}
.page-detail .detail-invite{display:none}.page-detail.is-organizer .detail-invite,.is-organizer.page-detail .detail-invite{display:inline-flex}
.mobile-stage-back{display:none}
@media(max-width:680px){
  .mobile-stage-back{display:grid!important;place-items:center;position:absolute;left:12px;top:50%;transform:translateY(-50%);width:39px;height:39px;border:1px solid var(--line);border-radius:50%;background:rgba(7,9,11,.7);color:#fff;font-size:24px;line-height:1;z-index:5}
}


/* V17 — vote closure controls */
.waiting-actions{display:flex;width:min(920px,100%);margin:24px auto 0;gap:12px;justify-content:center}
.waiting-actions>.btn{flex:1;justify-content:center;max-width:460px}
.btn-close-voting{border-color:rgba(176,98,255,.55);color:#d7a8ff;background:rgba(130,65,210,.08)}
.btn-close-voting:hover{border-color:var(--violet);background:rgba(130,65,210,.16)}
.btn-danger{background:#35121a;border-color:#8c3348;color:#ffdbe3}.btn-danger:hover{background:#481722;border-color:#bb4964}
.gt-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.gt-confirm-actions .btn{min-width:130px;justify-content:center}
@media(max-width:720px){.waiting-actions{flex-direction:column;margin-top:18px}.waiting-actions>.btn{max-width:none;width:100%}.gt-confirm-actions{flex-direction:column-reverse}.gt-confirm-actions .btn{width:100%}}

/* V19 — provider availability / direct reservation */
.page-detail .detail-availability{margin-top:14px;padding:20px 22px;border-color:rgba(121,92,255,.44)}
.page-detail .detail-availability .detail-section-head h2{margin:3px 0 0;font-family:var(--hand);font-size:24px}
.detail-availability-refresh{padding:8px 12px;font-size:11px;border-radius:12px}
.availability-state{display:flex;gap:12px;align-items:flex-start;margin-top:15px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
.availability-state b,.availability-state small{display:block}.availability-state small{margin-top:3px;color:var(--muted);line-height:1.45}
.availability-dot{width:11px;height:11px;border-radius:50%;margin-top:5px;background:#888;box-shadow:0 0 0 5px rgba(255,255,255,.04);flex:none}
.availability-state.is-available .availability-dot{background:var(--lime);box-shadow:0 0 0 5px rgba(217,255,34,.1)}
.availability-state.is-unavailable .availability-dot{background:#ff6377;box-shadow:0 0 0 5px rgba(255,99,119,.1)}
.availability-state.is-loading .availability-dot{background:var(--violet);animation:availabilityPulse 1s ease-in-out infinite alternate}
@keyframes availabilityPulse{to{opacity:.35;transform:scale(.75)}}
.availability-slots{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px}.availability-slots-label{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin-right:3px}
.availability-slot{border:1px solid var(--line);background:#101215;color:#fff;border-radius:999px;padding:8px 12px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.availability-slot:hover,.availability-slot.is-direct{border-color:rgba(217,255,34,.65)}.availability-slot small{display:block;font-size:8px;color:var(--muted);font-weight:600}
.booking-inline{margin-top:16px;padding:16px;border:1px solid rgba(217,255,34,.45);border-radius:18px;background:rgba(217,255,34,.035)}.booking-inline[hidden]{display:none!important}
.booking-inline-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.booking-inline-head b,.booking-inline-head small{display:block}.booking-inline-head small{color:var(--muted);margin-top:3px}.booking-inline-close{border:0;background:transparent;color:#fff;font-size:25px;cursor:pointer}
.booking-fields{display:grid;grid-template-columns:120px repeat(2,1fr);gap:10px;margin-top:14px}.booking-fields label,.booking-note{display:grid;gap:6px;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:800}.booking-fields input,.booking-fields select,.booking-note textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#0b0d0f;color:#fff;padding:11px 12px;font:inherit;text-transform:none;letter-spacing:0}.booking-note{margin-top:10px}.booking-note textarea{resize:vertical}.booking-inline [data-booking-submit]{margin-top:12px}.booking-privacy{font-size:10px;margin:9px 0 0}.booking-success{display:flex;align-items:center;gap:12px;padding:7px}.booking-success>.gt-icon{width:28px;height:28px;color:var(--lime)}.booking-success b,.booking-success small{display:block}.booking-success small{color:var(--muted);margin-top:3px}
@media(max-width:680px){.page-detail .detail-availability{margin-top:12px;padding:13px 14px;border-radius:17px}.page-detail .detail-availability .detail-section-head h2{font-size:20px}.availability-state{padding:12px;margin-top:10px;font-size:12px}.availability-state small{font-size:10px}.availability-slots{gap:6px}.availability-slot{font-size:11px;padding:7px 10px}.booking-inline{padding:12px}.booking-fields{grid-template-columns:1fr 1fr}.booking-fields label:first-child{grid-column:span 2}.booking-inline [data-booking-submit]{width:100%}}

/* V20 — remplacement discret du choix final */
.choice-replace-link{appearance:none;border:0;background:transparent;color:#8f9690;font:inherit;font-size:12px;line-height:1.3;text-decoration:underline;text-decoration-color:rgba(143,150,144,.35);text-underline-offset:3px;cursor:pointer;padding:7px 4px;margin:5px auto 0;display:block;transition:color .16s ease,text-decoration-color .16s ease}
.choice-replace-link:hover,.choice-replace-link:focus-visible{color:#d7ddd5;text-decoration-color:rgba(217,255,34,.55);outline:none}
.choice-replace-link[hidden]{display:none!important}
.detail-replace-choice{margin-top:-2px;margin-bottom:2px}
@media(max-width:720px){.choice-replace-link{font-size:11px;padding:8px 2px}}

/* V21 — mode « Ma liste » (100% organizer-composed, never hybrid) */
.creation-mode-switch{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 2px 12px;color:var(--muted);font-size:11px}.custom-mode-link{appearance:none;border:0;background:none;color:#c49bff;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-weight:800;padding:4px}.custom-mode-link:hover{color:#dfc9ff}.custom-mode-intro{min-height:420px;border:1px solid rgba(139,61,255,.28);border-radius:22px;padding:34px;display:grid;grid-template-columns:54px 1fr;gap:18px;align-content:center;background:radial-gradient(circle at 15% 20%,rgba(139,61,255,.12),transparent 42%),rgba(255,255,255,.012)}.custom-mode-intro[hidden]{display:none!important}.custom-mode-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(139,61,255,.15);color:#c69cff}.custom-mode-icon .gt-icon{width:27px;height:27px}.custom-mode-intro h2{font-family:var(--hand);font-size:31px;margin:8px 0}.custom-mode-intro p{color:var(--muted);line-height:1.55;margin:0;max-width:560px}.custom-mode-rule{display:grid;gap:5px;margin-top:22px;padding:14px 16px;border:1px solid rgba(217,255,34,.2);border-radius:15px;background:rgba(217,255,34,.025)}.custom-mode-rule b{color:var(--lime);font-size:13px}.custom-mode-rule span{color:var(--muted);font-size:11px;line-height:1.45}
.custom-builder[hidden],[data-auto-type-list][hidden],[data-auto-only][hidden],[data-custom-side][hidden]{display:none!important}.custom-builder{margin:12px 0 4px;padding:18px;border:1px solid rgba(139,61,255,.28);border-radius:20px;background:linear-gradient(180deg,rgba(139,61,255,.035),rgba(255,255,255,.012))}.custom-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.custom-builder-head .label{margin:0 0 4px}.custom-builder-head p{margin:0;color:var(--muted);font-size:11px;line-height:1.45;max-width:430px}.custom-count{white-space:nowrap;border:1px solid rgba(217,255,34,.35);color:var(--lime);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800}.custom-search-box{padding:16px 0;border-bottom:1px solid var(--line)}.custom-search-row{display:grid;grid-template-columns:1fr auto;gap:8px}.custom-search-row .btn{min-width:128px;border-radius:14px}.custom-search-help{color:var(--muted);font-size:10px;margin:7px 2px 0}.custom-search-results{display:grid;gap:7px;margin-top:12px;max-height:290px;overflow:auto;padding-right:3px}.custom-search-result{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:14px;background:#0b0e11}.custom-search-thumb{width:54px;height:48px;border-radius:10px;overflow:hidden;background:#13171b;display:grid;place-items:center}.custom-search-thumb img{width:100%;height:100%;object-fit:cover}.custom-search-thumb .dynamic-fallback{width:100%;height:100%;display:grid;place-items:center}.custom-search-thumb .gt-icon{width:21px;height:21px;color:#c69cff}.custom-search-copy{min-width:0;display:grid;gap:2px}.custom-search-copy b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.custom-search-copy span{color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-search-copy small{color:#a9c54a;font-size:9px}.custom-search-result .btn{padding:8px 11px;border-radius:11px;font-size:10px}.custom-selected-block{padding:15px 0 4px}.custom-selected-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.custom-selected-title b{font-family:var(--hand);font-size:18px}.custom-selected-title span{font-size:10px;color:var(--muted)}.custom-selected-list{display:grid;gap:7px}.custom-selected-item{display:grid;grid-template-columns:42px 1fr 30px;align-items:center;gap:9px;padding:8px 9px;border:1px solid rgba(217,255,34,.16);border-radius:13px;background:rgba(217,255,34,.018)}.custom-selected-media{width:42px;height:38px;border-radius:9px;overflow:hidden;background:#11151a;display:grid;place-items:center;color:#c69cff}.custom-selected-media img{width:100%;height:100%;object-fit:cover}.custom-selected-media .gt-icon{width:20px;height:20px}.custom-selected-copy{display:grid;gap:2px;min-width:0}.custom-selected-copy b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-selected-copy span{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-remove{width:28px;height:28px;border:0;border-radius:9px;background:rgba(255,255,255,.04);color:#aaa;cursor:pointer;font-size:18px}.custom-remove:hover{background:rgba(255,95,95,.1);color:#ff8888}.custom-manual-trigger{appearance:none;border:0;background:none;color:#c69cff;font-size:11px;font-weight:800;cursor:pointer;padding:11px 2px 5px;text-decoration:underline;text-underline-offset:3px}.custom-manual-form{margin-top:8px;padding:12px;border:1px dashed rgba(139,61,255,.35);border-radius:14px}.custom-manual-form[hidden]{display:none!important}.custom-manual-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:8px}.custom-manual-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.custom-manual-actions span{font-size:9px;color:var(--muted)}.custom-manual-actions .btn{padding:9px 12px;font-size:10px}.custom-builder-note{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid var(--line);font-size:9px;color:var(--muted);line-height:1.4}.custom-builder-note .gt-icon{width:16px;height:16px;color:var(--violet);flex:0 0 auto}.custom-side-copy{font-size:11px;line-height:1.5}.custom-side-copy b{color:var(--lime)}
@media(max-width:760px){.creation-mode-switch{justify-content:center;flex-wrap:wrap;text-align:center;margin:4px 0 12px}.custom-mode-intro{min-height:260px;padding:22px;grid-template-columns:42px 1fr}.custom-mode-icon{width:42px;height:42px}.custom-mode-intro h2{font-size:25px}.custom-mode-intro p{font-size:12px}.custom-builder{padding:13px;margin-top:9px}.custom-builder-head{display:grid;gap:10px}.custom-count{justify-self:start}.custom-search-row{grid-template-columns:1fr}.custom-search-row .btn{width:100%}.custom-search-results{max-height:340px}.custom-search-result{grid-template-columns:48px minmax(0,1fr) auto}.custom-search-thumb{width:48px;height:44px}.custom-search-result .btn{padding:8px 9px}.custom-manual-grid{grid-template-columns:1fr}.custom-manual-actions{align-items:stretch;flex-direction:column}.custom-manual-actions .btn{width:100%}}

/* V22 — custom list search-first manual fallback */
.custom-search-missing{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px dashed rgba(139,61,255,.42);border-radius:14px;background:rgba(139,61,255,.045)}
.custom-search-missing-copy{display:grid;gap:3px;min-width:0}.custom-search-missing-copy b{font-size:11px;color:#e7ddff}.custom-search-missing-copy span{font-size:9px;color:var(--muted)}
.custom-search-missing-actions{display:flex;align-items:center;gap:7px}.custom-search-missing-actions .input{min-width:145px;height:36px;padding:7px 9px;font-size:10px}.custom-search-missing-actions .btn{white-space:nowrap;padding:9px 11px;font-size:10px;border-radius:11px}
@media(max-width:760px){.custom-search-missing{grid-template-columns:1fr}.custom-search-missing-actions{display:grid;grid-template-columns:1fr}.custom-search-missing-actions .input,.custom-search-missing-actions .btn{width:100%}}


/* V23 — live AJAX search for custom shortlist */
.custom-search-live{position:relative;display:flex;align-items:center}.custom-search-live .input{width:100%;padding-left:42px;padding-right:34px}.custom-search-live-icon{position:absolute;left:14px;width:18px;height:18px;color:#9d68ff;pointer-events:none;z-index:1}.custom-search-live::after{content:'';position:absolute;right:13px;width:15px;height:15px;border:2px solid rgba(255,255,255,.16);border-top-color:var(--lime);border-radius:50%;opacity:0;pointer-events:none}.custom-search-live:has(input[aria-busy="true"])::after{opacity:1;animation:gt-search-spin .65s linear infinite}.custom-search-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:7px 2px 0}.custom-search-meta .custom-search-help{margin:0}.custom-search-status{min-height:14px;color:#8f969d;font-size:9px;white-space:nowrap}.custom-search-status.is-loading{color:#c4d780}.custom-search-status.is-error{color:#ff8c8c}.custom-search-results{transition:opacity .14s ease}.custom-search-results.is-loading{opacity:.58}.custom-search-row{display:block}.custom-search-row .btn{display:none!important}@keyframes gt-search-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){.custom-search-meta{align-items:flex-start;flex-direction:column;gap:3px}.custom-search-status{min-height:12px}.custom-search-live .input{padding-left:39px}}

/* Let short/narrow desktop windows grow instead of overlapping the lower panels. */
@media (min-width:1051px) and (max-height:820px), (min-width:1051px) and (max-width:1240px){
  .page-home .app-shell{height:auto;min-height:100dvh;overflow:visible}
  .page-home main.page{flex:1 0 auto;overflow:visible}
  .page-home .container{height:auto}
  .page-home .home-layout{height:auto;max-height:none;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);grid-template-rows:auto auto}
  .page-home .home-how,.page-home .home-participants{height:auto}
  .page-home .home-how .how-items{height:auto}
  .page-home .mini-card .activity-img{min-height:180px}
}
@media (min-width:1051px) and (max-width:1240px){
  .page-home .home-how .how-items{grid-template-columns:1fr;gap:14px}
  .page-home .home-how .how-item:not(:last-child):after{display:none}
}

/* Real place photographs keep their source and licence visible. */
.gt-photo{display:block;position:relative;width:100%;height:100%;min-height:inherit;overflow:hidden}.gt-photo>img{display:block;width:100%;height:100%;object-fit:cover}.photo-credit{position:absolute;bottom:0;left:0;right:0;padding:4px 6px;background:rgba(0,0,0,.78);color:#fff;font-size:10px;line-height:1.3;overflow-wrap:anywhere;text-decoration:underline;z-index:2}.photo-credit:focus-visible{outline:2px solid var(--lime);outline-offset:-2px}.availability-state small{display:block}.winner [data-result-availability]{margin-top:12px;font-size:13px}.winner [data-result-details]{display:block;text-align:center;margin-top:8px}.winner [data-booking-cta].is-disabled{pointer-events:auto}


/* One discreet entry to the editorial pages; no content blocks in the app flow. */
.home-editorial-nav{padding:4px 24px 10px;text-align:center;font-size:12px;color:var(--muted)}.home-editorial-nav a{text-decoration:underline;text-underline-offset:4px}.home-editorial-nav a:hover{color:var(--lime)}.home-editorial-nav a:focus-visible{outline:2px solid var(--lime);outline-offset:5px}


/* Full-slot controls must grow naturally on desktop and mobile. */
.reservation-followup{padding:14px;border:1px solid var(--line);border-radius:14px;margin:12px 0;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.reservation-followup p{margin:0;flex:1 1 230px;min-width:0}.reservation-followup small{display:block;color:var(--muted);line-height:1.5;margin-top:5px}
.reservation-followup .btn{white-space:normal;max-width:100%;min-width:0;flex:0 1 auto;overflow-wrap:anywhere}
.page-create-2 .app-shell{height:auto;min-height:100dvh;overflow:visible}
.page-create-2 main.page,.page-create-2 .container,.page-create-2 .layout-form{height:auto;max-height:none;overflow:visible}
.page-create-2 .layout-form{align-items:start}
.page-create-2 .layout-form>section{min-width:0;height:auto;overflow:visible}
.page-create-2 .form-group small{display:block;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}
.page-create-2 select.input{max-width:100%;text-overflow:ellipsis}
.page-create-2 [hidden]{display:none!important}

/* Component display rules must not reveal controls marked hidden by the app. */
[hidden]{display:none!important}
/* Native iOS date/time controls must fit inside the form cards. */
.page-create-2 .form-group{min-width:0}
.page-create-2 input.input{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%}
.page-create-2 input[type="date"],.page-create-2 input[type="time"]{-webkit-appearance:none;appearance:none;text-align:left}
.page-create-2 input::-webkit-date-and-time-value{min-width:0;text-align:left}
.page-create-2 .segmented{grid-auto-columns:minmax(0,1fr)}
.page-create-2 .segment{min-width:0}
.page-create-2 .segment:first-child{border-radius:13px 0 0 13px}
.page-create-2 .segment:last-child{border-radius:0 13px 13px 0}

/* Addresses remain readable rather than being truncated inside choice cards. */
.page-detail .detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}
.page-detail .detail-section-head h2{margin:0;min-width:0}
.page-detail .detail-invite{flex:none}
.page-detail .detail-invite .gt-icon{margin:0;flex:none}
.page-detail .detail-info-list .info-row>div{min-width:0;overflow-wrap:anywhere}
.page-detail .detail-info-list .recap-ico{flex:0 0 24px}
.page-detail .detail-info-list .recap-ico .gt-icon{margin:0}
.page-detail .address-source{font-size:12px;color:var(--muted);text-decoration:underline}
@media(max-width:1050px){
  .page-detail .detail-participants,.page-detail .detail-practical,.page-detail .detail-availability{padding:18px;margin-top:16px}
  .page-detail .detail-section-head h2,.page-detail .detail-practical h2{font-size:21px;margin:0;line-height:1.3}
  .page-detail .detail-facts .chip{font-size:13px;line-height:1.4;padding:7px 9px;white-space:normal}
  .page-detail .detail-facts .chip .gt-icon{width:16px;height:16px;flex:none}
  .page-detail .detail-title-row .status{font-size:12px;padding:7px 10px}
  .page-detail .detail-invite{width:48px;height:48px;padding:0;border-radius:50%;gap:0}
  .page-detail .detail-invite>span{display:none}
  .page-detail .detail-invite .gt-icon{width:22px;height:22px}
  .page-detail .detail-avatars{margin-top:14px}
  .page-detail .detail-info-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin-top:12px}
  .page-detail .detail-info-list .info-row{font-size:15px;padding:12px 0;gap:12px;align-items:flex-start;min-width:0}
  .page-detail .detail-info-list b{font-size:15px;line-height:1.5}
  .page-detail .detail-info-list .muted{font-size:14px;line-height:1.5}
  .page-detail .detail-info-list .recap-ico .gt-icon{width:22px;height:22px;margin-top:2px}
  .page-detail .detail-availability .detail-section-head{flex-wrap:wrap}
  .page-detail .detail-availability .detail-section-head h2{font-size:23px}
  .page-detail .detail-availability-refresh{font-size:14px;min-height:44px;padding:10px 14px}
  .page-detail .availability-state{font-size:15px;line-height:1.5}
  .page-detail .availability-state small{font-size:14px;line-height:1.5}
  .page-detail .detail-secondary-actions .btn{font-size:14px;white-space:normal;min-width:0}
}
@media(max-width:680px){
  .page-detail .detail-info-list{grid-template-columns:minmax(0,1fr)}
  .page-detail .detail-info-list .info-row:not(:last-child){border-bottom:1px solid var(--line)}
  .page-detail .detail-secondary-actions{grid-template-columns:minmax(0,1fr)}
}
.place-address{display:flex;align-items:flex-start;gap:7px;margin:9px 0;color:var(--muted);font:13px/1.5 var(--sans);min-width:0;white-space:normal;overflow-wrap:anywhere}
.place-address>.gt-icon{margin-top:2px;flex:0 0 auto}
.place-address>span{min-width:0;white-space:normal;overflow:visible;text-overflow:clip}
.custom-search-copy .place-address,.custom-selected-copy .place-address{margin:4px 0 0;font-size:11px}
.custom-search-copy .place-address>span,.custom-selected-copy .place-address>span{font:inherit;white-space:normal;overflow:visible;text-overflow:clip}
.winner-grid>*,.result-grid>*,.alt-card>*,.vote-layout>*{min-width:0}
.winner .title,.alt-card h3,.vote-info>.title{overflow-wrap:anywhere}
@media(max-width:1050px){
  .page-results .winner-grid{grid-template-columns:minmax(0,1fr);gap:16px}
  .page-results .winner-img{width:100%;height:auto;aspect-ratio:16/9;max-height:330px}
  .page-results .winner .chip-row{display:flex;flex-wrap:wrap;gap:7px}
  .page-results .winner .chip{white-space:normal;overflow-wrap:anywhere;font-size:12px;padding:7px 9px}
  .page-results .winner .status{font-size:11px;padding:6px 9px}
  .page-results .winner .title{font-size:30px;line-height:1.2}
  .page-results .reservation-followup{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
  .page-results .reservation-followup .btn{width:100%}
  .page-results .result-alt{display:grid}
  .page-results .section-label{display:block}
  .page-results .alt-card{grid-template-columns:96px minmax(0,1fr)}
  .page-results .alt-media{width:96px;height:90px}
}
@media(max-width:680px){
  .page-results .result-grid>section:first-child{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:8px 12px;align-items:center;margin-bottom:18px}
  .page-results .result-grid>section:first-child .sticker{position:static;grid-column:2;grid-row:1 / span 2;width:76px;height:76px;margin:0;font-size:9px}
  .page-results .result-grid>section:first-child .display{grid-column:1;grid-row:1;margin:0;font-size:32px}
  .page-results .result-grid>section:first-child .subtitle{grid-column:1;grid-row:2;max-width:none;margin:0;font-size:12px;line-height:1.5}
}
