:root {
  color-scheme: light;
  --bg:#fbf7f4;
  --bg-2:#f4eeeb;
  --surface:#ffffff;
  --surface-2:#f7f2ef;
  --surface-glass:rgba(255,255,255,.82);
  --text:#211c25;
  --text-2:#5f5866;
  --text-3:#8d8494;
  --line:rgba(42,31,48,.09);
  --line-strong:rgba(42,31,48,.16);
  --brand:#ef6b78;
  --brand-2:#a06ee1;
  --violet:#7357d7;
  --coral:#ef6b78;
  --mint:#39a889;
  --gold:#dc9b39;
  --danger:#dc5269;
  --bar:#ee6b78;
  --alon:#6e63d9;
  --shadow-sm:0 8px 24px rgba(56,39,63,.07);
  --shadow:0 18px 50px rgba(56,39,63,.10);
  --shadow-lg:0 28px 90px rgba(40,28,45,.18);
  --radius-sm:14px;
  --radius:22px;
  --radius-lg:30px;
  --safe-bottom:max(12px,env(safe-area-inset-bottom));
  font-family:"Rubik",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html[data-theme="dark"] {
  color-scheme: dark;
  --bg:#15131a;
  --bg-2:#1b1820;
  --surface:#201d25;
  --surface-2:#29252f;
  --surface-glass:rgba(32,29,37,.86);
  --text:#f5f1f7;
  --text-2:#c2b9c7;
  --text-3:#8e8594;
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(255,255,255,.15);
  --brand:#ff7f8b;
  --brand-2:#b78bf3;
  --shadow-sm:0 8px 24px rgba(0,0,0,.18);
  --shadow:0 18px 50px rgba(0,0,0,.25);
  --shadow-lg:0 28px 90px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}
body{min-height:100dvh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:
radial-gradient(circle at 10% -10%,rgba(239,107,120,.08),transparent 30%),
radial-gradient(circle at 100% 10%,rgba(115,87,215,.07),transparent 28%),var(--bg)}
button,input,textarea,select{font:inherit}
button{color:inherit}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(115,87,215,.22);outline-offset:2px}
button:disabled{opacity:.42;cursor:not-allowed}
.icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex:none}
.wrap{width:min(100% - 28px,760px);margin-inline:auto}
.shell{min-height:100dvh;padding-bottom:calc(84px + var(--safe-bottom))}
.header{position:sticky;top:0;z-index:45;padding-top:env(safe-area-inset-top);background:linear-gradient(to bottom,var(--bg) 72%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.header-inner{height:70px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.profile{display:flex;align-items:center;gap:10px;min-width:0}
.avatar,.activity-avatar{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;color:white;font-weight:800;box-shadow:var(--shadow-sm)}
.avatar.bar,.activity-avatar.bar{background:linear-gradient(145deg,#ef6b78,#f29a73)}
.avatar.alon,.activity-avatar.alon{background:linear-gradient(145deg,#6e63d9,#668ee8)}
.app-name{font-size:15px;font-weight:800;letter-spacing:-.02em}
.profile-room{margin-top:2px;color:var(--text-3);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-actions{display:flex;gap:6px}
.icon-btn,.sheet-close{width:42px;height:42px;border:1px solid var(--line);border-radius:14px;background:var(--surface-glass);display:grid;place-items:center;box-shadow:0 2px 10px rgba(40,30,45,.03)}
.icon-btn .icon,.sheet-close .icon{width:18px;height:18px}
.subtle-btn{color:var(--text-3)}
.main{padding:12px 0 24px}
.bottom-nav{position:fixed;z-index:55;bottom:0;inset-inline:0;padding-bottom:var(--safe-bottom);background:var(--surface-glass);border-top:1px solid var(--line);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.bottom-grid{width:min(100%,520px);margin:auto;display:grid;grid-template-columns:repeat(4,1fr)}
.nav-btn{height:68px;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--text-3);font-size:10px;font-weight:700;transition:.18s ease}
.nav-btn .icon{width:21px;height:21px}
.nav-btn.active{color:var(--brand)}
.nav-btn.active .icon{transform:translateY(-1px)}
.card,.glass-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.glass-card{background:var(--surface-glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:10px;font-weight:800;color:var(--brand)}
.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:8px 2px 18px}
.page-heading.compact{align-items:center;margin-bottom:12px}
.page-heading h1{font-size:32px;letter-spacing:-.04em;margin:4px 0 4px;line-height:1.05}
.page-heading p{margin:0;color:var(--text-2);font-size:13px;line-height:1.55;max-width:500px}
.count-bubble{min-width:48px;height:48px;border-radius:16px;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;font-size:14px;font-weight:800;box-shadow:var(--shadow-sm)}
.segmented{display:grid;background:var(--surface-2);border:1px solid var(--line);border-radius:17px;padding:4px;gap:3px}
.segmented button{min-height:43px;border:0;background:transparent;border-radius:13px;color:var(--text-2);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;transition:.18s ease}
.segmented button .icon{width:16px;height:16px}
.segmented button.active{background:var(--surface);color:var(--text);box-shadow:0 5px 18px rgba(50,35,55,.07)}
.rate-segmented{grid-template-columns:repeat(3,1fr);margin-bottom:14px}
.dash-segmented{grid-template-columns:repeat(3,1fr);margin-bottom:18px}
.rate-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:2px 2px 10px;min-height:34px}
.counter,.results-line{font-size:11px;color:var(--text-3);font-weight:600}
.rate-toolbar-left{min-width:0}
.switch{border:0;background:transparent;color:var(--text-2);display:flex;align-items:center;gap:8px;padding:4px 0;font-size:11px;font-weight:700}
.switch>span{width:32px;height:19px;border-radius:99px;background:var(--line-strong);padding:2px;position:relative;transition:.18s}
.switch>span:after{content:"";position:absolute;width:15px;height:15px;border-radius:50%;background:var(--surface);inset-block-start:2px;inset-inline-start:2px;box-shadow:0 1px 5px rgba(0,0,0,.15);transition:.18s}
.switch.on>span{background:var(--brand)}
.switch.on>span:after{transform:translateX(-13px)}
[dir="ltr"] .switch.on>span:after{transform:translateX(13px)}
.smart-label{display:flex;align-items:center;gap:5px;max-width:260px;color:var(--violet);font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smart-label .icon{width:15px;height:15px}
.name-card{position:relative;overflow:hidden;border:1px solid var(--line);background:linear-gradient(160deg,var(--surface) 58%,rgba(239,107,120,.06));border-radius:32px;box-shadow:var(--shadow);padding:20px}
.name-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(115,87,215,.06);top:-100px;left:-70px;pointer-events:none}
.name-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center;position:relative;z-index:1}
.badge{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:var(--surface-2);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700;color:var(--text-2)}
.blind-chip{border:1px solid var(--line);background:transparent;border-radius:999px;padding:6px 10px;display:flex;align-items:center;gap:5px;color:var(--text-3);font-size:10px;font-weight:700}
.blind-chip.on{color:var(--violet);background:rgba(115,87,215,.07);border-color:rgba(115,87,215,.14)}
.blind-chip .icon{width:13px;height:13px}
.name-stage{text-align:center;padding:34px 8px 22px;position:relative;z-index:1}
.name-overline{font-size:10px;color:var(--text-3);font-weight:700;letter-spacing:.04em}
.name-stage h1{font-size:clamp(50px,14vw,78px);line-height:1;letter-spacing:-.055em;margin:8px 0 0;font-weight:800}
.partner-reveal{min-height:58px;display:flex;justify-content:center;align-items:center;margin-bottom:10px}
.blind-placeholder{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 12px;color:var(--text-3);font-size:11px;text-align:center;border-radius:14px;background:var(--surface-2)}
.blind-placeholder .icon{width:14px;height:14px}
.partner-score{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:15px;background:rgba(115,87,215,.07);color:var(--text-2);font-size:11px}
.partner-score strong{font-size:23px;color:var(--alon)}
.partner-score small{max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-3)}
.score-zone{padding-top:4px}
.score-display{text-align:center;direction:ltr;margin-bottom:7px}.score-display strong{font-size:36px;letter-spacing:-.04em}.score-display span{font-size:14px;color:var(--text-3);font-weight:600}
.range{appearance:none;-webkit-appearance:none;width:100%;height:7px;border-radius:99px;background:linear-gradient(90deg,rgba(239,107,120,.2),rgba(115,87,215,.38));outline:none}
.range::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:var(--surface);border:6px solid var(--brand);box-shadow:0 4px 15px rgba(239,107,120,.28)}
.range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--surface);border:6px solid var(--brand)}
.score-scale{display:flex;justify-content:space-between;color:var(--text-3);font-size:9px;font-weight:600;margin:8px 2px 12px}
.quick-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}
.score-btn{height:42px;border-radius:13px;border:1px solid var(--line);background:var(--surface-2);color:var(--text-2);font-weight:800;font-size:12px;transition:.15s}
.score-btn.active{background:var(--text);color:var(--bg);border-color:var(--text);transform:translateY(-1px)}
.score-btn.super{color:var(--violet)}.score-btn.super.active{background:var(--violet);color:white;border-color:var(--violet)}
.comment-box{margin-top:12px}.comment-box textarea{width:100%;min-height:74px;resize:vertical;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);color:var(--text);padding:12px 13px;font-size:12px;line-height:1.5}
.save-note{height:18px;text-align:center;color:var(--mint);font-size:10px;font-weight:700;margin-top:7px}
.nav-arrows{display:grid;grid-template-columns:.7fr 1.3fr;gap:8px;margin-top:10px}
.btn{border:0;border-radius:15px;min-height:47px;padding:0 16px;font-weight:700;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.15s}
.btn .icon{width:16px;height:16px}
.btn.primary{background:linear-gradient(135deg,var(--brand),#e85873);color:white;box-shadow:0 10px 24px rgba(239,107,120,.22)}
.btn.secondary{background:var(--surface);border:1px solid var(--line);color:var(--text-2)}
.btn.ghost{background:rgba(255,255,255,.15);color:white;border:1px solid rgba(255,255,255,.22)}
.btn.xl{min-height:54px;font-size:14px;border-radius:17px}.btn.compact{min-height:38px;padding-inline:12px;font-size:11px}
.text-btn{border:0;background:transparent;color:var(--brand);display:inline-flex;align-items:center;gap:5px;padding:5px;font-size:11px;font-weight:700}.text-btn .icon{width:14px;height:14px}
.quick-wrap{min-height:calc(100dvh - 235px);display:flex;flex-direction:column;justify-content:center}
.quick-progress{display:flex;justify-content:space-between;color:var(--text-3);font-size:10px;font-weight:600;margin:0 4px 9px}
.tinder-stack{height:min(58vh,500px);min-height:360px;position:relative}
.tinder-card{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid var(--line);border-radius:32px;background:linear-gradient(160deg,var(--surface) 48%,rgba(115,87,215,.08));box-shadow:var(--shadow-lg);touch-action:pan-y;user-select:none;overflow:hidden;transition:transform .18s ease,opacity .18s ease}
.tinder-card:before,.tinder-card:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.tinder-card:before{width:250px;height:250px;background:rgba(239,107,120,.08);top:-120px;right:-100px}.tinder-card:after{width:210px;height:210px;background:rgba(115,87,215,.08);bottom:-105px;left:-80px}
.badge.floating{position:absolute;top:18px;right:18px}.tinder-name{font-size:clamp(58px,17vw,86px);font-weight:800;letter-spacing:-.055em;z-index:1}.tinder-hint{z-index:1;color:var(--text-3);font-size:10px;margin-top:12px}
.swipe-stamp{position:absolute;top:35px;z-index:3;padding:8px 13px;border:3px solid currentColor;border-radius:12px;font-size:22px;font-weight:900;opacity:0}.swipe-stamp.like{left:24px;color:var(--mint);transform:rotate(-11deg)}.swipe-stamp.nope{right:24px;color:var(--danger);transform:rotate(11deg)}
.tinder-actions{display:grid;grid-template-columns:54px 64px 54px 64px;justify-content:center;gap:12px;margin-top:14px;direction:ltr}.circle-action{border:1px solid var(--line);border-radius:50%;background:var(--surface);box-shadow:var(--shadow-sm);display:grid;place-items:center;font-size:24px}.circle-action.undo,.circle-action.super{width:54px;height:54px}.circle-action.nope,.circle-action.like{width:64px;height:64px}.circle-action.undo{color:var(--gold)}.circle-action.nope{color:var(--danger)}.circle-action.super{color:var(--violet)}.circle-action.like{color:var(--mint)}
.quick-legend{display:flex;justify-content:center;gap:15px;margin-top:9px;color:var(--text-3);font-size:9px;font-weight:600}
.review-grid{display:grid;gap:10px}.review-card{padding:17px}.review-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.review-top h2{font-size:25px;letter-spacing:-.035em;margin:7px 0 0}.duo-score{display:flex;gap:5px;direction:ltr}.duo-score span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:800}.duo-score .bar{background:rgba(239,107,120,.10);color:var(--bar)}.duo-score .alon{background:rgba(110,99,217,.10);color:var(--alon)}
.review-reason{display:flex;gap:8px;align-items:flex-start;margin:13px 0 8px;border-radius:14px;background:linear-gradient(135deg,rgba(220,155,57,.09),rgba(239,107,120,.06));padding:11px 12px;color:var(--text-2);font-size:11px;line-height:1.55}.review-reason .icon{width:16px;height:16px;margin-top:1px;color:var(--gold)}
.all-sticky{position:sticky;top:74px;z-index:28;background:linear-gradient(to bottom,var(--bg) 82%,transparent);padding-bottom:8px}.search-box{height:49px;border:1px solid var(--line);background:var(--surface);border-radius:16px;display:flex;align-items:center;gap:8px;padding:0 13px;box-shadow:var(--shadow-sm)}.search-box .icon{width:18px;height:18px;color:var(--text-3)}.search-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:16px}
.chips{display:flex;gap:7px;overflow:auto;padding:9px 1px 0;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 11px;font-size:10px;font-weight:700;color:var(--text-2)}.chip.active{background:var(--text);color:var(--bg);border-color:var(--text)}.compact-chips{padding-top:6px}.compact-chips .chip{padding:6px 10px;font-size:9px}
.results-line{display:flex;justify-content:space-between;gap:10px;margin:2px 2px 9px}.name-list{display:grid;gap:8px}.name-row{padding:13px}.name-row-main{display:flex;justify-content:space-between;align-items:center;gap:10px}.name-info{min-width:0}.name-title-line{display:flex;align-items:center;gap:6px}.name-title-line h3{font-size:17px;margin:0;letter-spacing:-.02em}.new-badge{border-radius:999px;background:rgba(57,168,137,.10);color:var(--mint);padding:3px 6px;font-size:8px;font-weight:800}.meta{font-size:10px;color:var(--text-3);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.edit-score-btn{min-height:38px;border:1px solid var(--line);background:var(--surface-2);border-radius:12px;padding:0 10px;display:flex;align-items:center;gap:5px;color:var(--text-2);font-size:10px;font-weight:700}.edit-score-btn .icon{width:14px;height:14px}.row-scores{display:flex;gap:5px;margin-top:9px;direction:ltr}.person-score{min-width:51px;border-radius:10px;padding:5px 7px;font-size:11px;font-weight:800;display:flex;align-items:center;gap:5px}.person-score small{font-size:8px;font-weight:600}.person-score.bar{background:rgba(239,107,120,.08);color:var(--bar)}.person-score.alon{background:rgba(110,99,217,.08);color:var(--alon)}
.sheet-backdrop,.dialog-backdrop{position:fixed;inset:0;z-index:90;background:rgba(24,18,27,.42);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;padding:14px}.edit-layer{z-index:98}.map-layer{z-index:94}.edit-sheet,.dialog{width:min(100%,500px);max-height:min(86dvh,760px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:18px;box-shadow:var(--shadow-lg);animation:sheetUp .23s ease}.sheet-handle{width:42px;height:4px;background:var(--line-strong);border-radius:99px;margin:-2px auto 13px}.sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sheet-head h2{font-size:26px;letter-spacing:-.035em;margin:4px 0 0}.sheet-head p{font-size:11px;color:var(--text-3);margin:3px 0}.sheet-close{width:38px;height:38px;box-shadow:none}.edit-score-head{display:flex;justify-content:space-between;align-items:end;margin:18px 0 8px;color:var(--text-2);font-size:12px}.edit-score-head strong{font-size:33px;color:var(--text)}.partner-mini{display:flex;align-items:center;gap:7px;background:var(--surface-2);border-radius:14px;padding:10px 11px;margin:11px 0 14px;color:var(--text-2);font-size:10px}.partner-mini strong{font-size:20px;color:var(--alon)}.partner-mini small{color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dialog-backdrop{z-index:96}.dialog{padding:20px}.field{display:grid;gap:6px;margin-top:12px}.field label{font-size:10px;color:var(--text-2);font-weight:700}.field input,.field select{height:50px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);color:var(--text);padding:0 12px;font-size:16px}.error{color:var(--danger);font-size:11px;font-weight:700;margin-top:9px}
.dash-hero{padding:18px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;background:linear-gradient(135deg,var(--surface),rgba(239,107,120,.07))}.dash-hero h2{font-size:25px;line-height:1.12;letter-spacing:-.035em;margin:5px 0}.dash-hero p{margin:0;color:var(--text-2);font-size:11px}.progress-ring{width:84px;height:84px;border-radius:50%;background:conic-gradient(var(--brand) var(--progress),var(--surface-2) 0);display:grid;place-items:center;position:relative}.progress-ring:after{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--surface)}.progress-ring strong,.progress-ring span{position:relative;z-index:1;grid-area:1/1}.progress-ring strong{font-size:18px;margin-top:-8px}.progress-ring span{font-size:8px;color:var(--text-3);margin-top:18px}
.task-grid{display:grid;gap:7px;margin-top:10px}.task-card{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:17px;padding:10px 11px;display:grid;grid-template-columns:38px 1fr 18px;align-items:center;gap:9px;text-align:right;box-shadow:var(--shadow-sm)}.task-card>.icon{width:16px;color:var(--text-3)}.task-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center}.task-icon .icon{width:18px}.task-icon.violet{background:rgba(115,87,215,.09);color:var(--violet)}.task-icon.coral{background:rgba(239,107,120,.09);color:var(--coral)}.task-icon.gold{background:rgba(220,155,57,.10);color:var(--gold)}.task-card strong{font-size:15px;display:block}.task-card span{font-size:10px;color:var(--text-2);line-height:1.4}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.stat-card{padding:14px}.stat-card>span{display:block;color:var(--text-3);font-size:9px;font-weight:600}.stat-card>strong{display:block;font-size:28px;margin-top:3px;letter-spacing:-.035em}.stat-card>strong.name-stat{font-size:20px;margin-top:8px}.stat-card>small{font-size:9px;color:var(--text-2)}
.section-block{margin-top:24px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:0 2px 10px}.section-head h2{font-size:19px;letter-spacing:-.025em;margin:3px 0 0}.top-scroll{display:flex;gap:8px;overflow:auto;padding-bottom:4px;margin-inline:-1px;scrollbar-width:none}.top-scroll::-webkit-scrollbar{display:none}.top-name-card{flex:0 0 132px;min-height:145px;padding:13px;text-align:right;border-radius:18px}.top-name-card>span{font-size:9px;color:var(--brand);font-weight:800}.top-name-card>strong{display:block;font-size:22px;letter-spacing:-.035em;margin:10px 0 3px}.top-name-card>small{font-size:9px;color:var(--text-3)}.top-name-card>div{display:flex;gap:5px;margin-top:13px;direction:ltr}.top-name-card b{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;font-size:11px}.top-name-card b.bar{background:rgba(239,107,120,.10);color:var(--bar)}.top-name-card b.alon{background:rgba(110,99,217,.10);color:var(--alon)}
.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.activity-card{padding:13px}.activity-avatar{width:35px;height:35px;border-radius:11px;font-size:12px;margin-bottom:7px}.activity-card>strong{font-size:14px}.activity-lines{display:grid;gap:5px;margin-top:9px}.activity-lines span{display:flex;justify-content:space-between;color:var(--text-3);font-size:9px}.activity-lines b{color:var(--text);font-size:10px}.trend-list{display:grid;gap:7px}.trend-item{display:flex;justify-content:space-between;align-items:center;padding:11px 13px}.trend-item strong{font-size:12px}.delta{font-size:11px;font-weight:800}.delta.up{color:var(--mint)}.delta.down{color:var(--danger)}
.install-card{margin-top:24px;padding:13px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px}.install-icon{width:40px;height:40px;border-radius:13px;background:rgba(57,168,137,.09);color:var(--mint);display:grid;place-items:center}.install-icon .icon{width:19px}.install-card strong{display:block;font-size:12px}.install-card span{display:block;font-size:9px;color:var(--text-3);margin-top:2px;line-height:1.4}
.map-intro{padding:17px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:start}.map-intro h2{font-size:24px;letter-spacing:-.035em;margin:4px 0}.map-intro p{margin:0;color:var(--text-2);font-size:10px;line-height:1.5}.map-legend{display:grid;gap:5px;font-size:8px;font-weight:700}.map-legend span{padding:4px 7px;border-radius:999px}.map-legend .match{background:rgba(57,168,137,.1);color:var(--mint)}.map-legend .gap{background:rgba(239,107,120,.1);color:var(--danger)}.map-legend .neutral{background:var(--surface-2);color:var(--text-3)}
.taste-wrap{position:relative;margin-top:12px;padding:24px 10px 34px 34px}.taste-map{aspect-ratio:1/1;display:grid;grid-template-columns:repeat(11,1fr);grid-template-rows:repeat(11,1fr);border:1px solid var(--line);border-radius:17px;overflow:hidden;background:linear-gradient(135deg,rgba(239,107,120,.03),rgba(57,168,137,.04))}.map-cell{position:relative;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;display:grid;place-items:center;padding:0}.map-bubble{width:var(--bubble);height:var(--bubble);max-width:90%;max-height:90%;border-radius:50%;display:grid;place-items:center;font-size:8px;font-weight:800;box-shadow:0 4px 12px rgba(40,30,45,.12);transition:.15s}.map-bubble.match{background:rgba(57,168,137,.78);color:white}.map-bubble.gap{background:rgba(239,107,120,.78);color:white}.map-bubble.neutral{background:rgba(115,87,215,.60);color:white}.map-cell:active .map-bubble{transform:scale(.92)}.axis-y,.axis-x{position:absolute;color:var(--text-3);font-size:9px;font-weight:700}.axis-y{left:0;top:50%;transform:rotate(-90deg) translateY(-50%);transform-origin:left top}.axis-x{bottom:4px;left:50%;transform:translateX(-50%)}.axis-labels{position:absolute;display:flex;color:var(--text-3);font-size:8px}.axis-labels.x{bottom:20px;left:34px;right:10px;justify-content:space-between;direction:ltr}.axis-labels.y{left:18px;top:24px;bottom:34px;flex-direction:column;justify-content:space-between}
.map-name-list{display:grid;gap:6px;margin-top:14px}.map-name-row{border:1px solid var(--line);background:var(--surface-2);border-radius:13px;min-height:47px;padding:7px 10px;display:grid;grid-template-columns:1fr auto 20px;align-items:center;text-align:right;gap:8px}.map-name-row strong{font-size:13px}.map-name-row span{font-size:9px;color:var(--text-3)}.map-name-row .icon{width:14px;color:var(--brand)}
.tournament-start,.champion-card{text-align:center;padding:32px 22px;margin-top:8px;overflow:hidden;position:relative}.trophy-orb{width:72px;height:72px;border-radius:24px;margin:0 auto 14px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(220,155,57,.16),rgba(239,107,120,.10));color:var(--gold)}.trophy-orb .icon{width:34px;height:34px}.tournament-start h2,.champion-card h1{font-size:34px;letter-spacing:-.045em;margin:5px 0}.tournament-start p,.champion-card p{color:var(--text-2);font-size:11px;line-height:1.55;max-width:390px;margin:0 auto 18px}.tournament-head{text-align:center;margin:8px 0 14px}.tournament-head h2{font-size:28px;margin:4px 0}.tournament-head p{font-size:10px;color:var(--text-3);margin:0}.versus-grid{display:grid;grid-template-columns:1fr 30px 1fr;align-items:stretch;gap:4px}.vs{display:grid;place-items:center;font-size:9px;color:var(--text-3);font-weight:900}.versus-card{min-height:250px;padding:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:.15s}.versus-card>strong{font-size:clamp(30px,9vw,45px);letter-spacing:-.05em;margin:16px 0}.versus-scores{display:flex;gap:6px;direction:ltr}.versus-scores span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:11px}.versus-scores .bar{background:rgba(239,107,120,.1);color:var(--bar)}.versus-scores .alon{background:rgba(110,99,217,.1);color:var(--alon)}.versus-card small{color:var(--text-3);font-size:9px;margin-top:9px}.choose-label{margin-top:19px;color:var(--brand);font-size:9px;font-weight:800}.versus-card:active{transform:scale(.98);border-color:rgba(239,107,120,.3)}.tournament-footer{text-align:center;margin-top:13px}.champion-card h1{font-size:54px}.confetti-dots:before,.confetti-dots:after{content:"✦  ·  ✦  ·  ✦";position:absolute;top:20px;color:var(--gold);opacity:.45;font-size:18px}.confetti-dots:before{left:18px;transform:rotate(-14deg)}.confetti-dots:after{right:18px;transform:rotate(14deg)}
.empty-state{text-align:center;padding:40px 22px}.empty-icon{width:60px;height:60px;border-radius:20px;margin:auto;background:var(--surface-2);display:grid;place-items:center;color:var(--brand)}.empty-icon .icon{width:27px;height:27px}.empty-state h2{font-size:24px;letter-spacing:-.03em;margin:13px 0 4px}.empty-state p{font-size:11px;color:var(--text-2);line-height:1.55;margin:0 auto 15px;max-width:350px}
.auth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:max(22px,env(safe-area-inset-top)) 14px max(22px,env(safe-area-inset-bottom))}.auth-card{width:min(100%,430px);padding:26px}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-mark{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:white;font-size:31px;font-weight:700;box-shadow:0 14px 35px rgba(115,87,215,.18)}.brand-mark.mini{width:46px;height:46px;border-radius:16px;font-size:24px}.brand-kicker{font-size:10px;color:var(--brand);font-weight:800}.brand-lockup h1{font-size:30px;letter-spacing:-.045em;margin:2px 0 0}.intro{font-size:12px;line-height:1.55;color:var(--text-2);margin:17px 0 20px}.pin-input{text-align:center;direction:ltr;letter-spacing:.32em;font-size:21px!important;font-weight:800}.auth-note{margin-top:15px;padding-top:13px;border-top:1px solid var(--line);font-size:9px;color:var(--text-3);line-height:1.5}.person-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.person-card{border:0;border-radius:22px;min-height:150px;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;box-shadow:var(--shadow)}.person-card span{width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.16);display:grid;place-items:center;font-size:21px;font-weight:800}.person-card strong{font-size:21px}.person-card.bar{background:linear-gradient(145deg,#ef6b78,#f29672)}.person-card.alon{background:linear-gradient(145deg,#6e63d9,#688ce6)}
.toast{position:fixed;z-index:130;left:50%;bottom:calc(86px + var(--safe-bottom));transform:translate(-50%,16px);opacity:0;pointer-events:none;background:var(--text);color:var(--bg);border-radius:999px;padding:10px 14px;font-size:10px;font-weight:700;box-shadow:var(--shadow);transition:.2s;max-width:calc(100% - 28px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast.show{opacity:1;transform:translate(-50%,0)}
.moment-overlay{position:fixed;z-index:120;inset:0;background:rgba(25,18,28,.48);backdrop-filter:blur(7px);display:grid;place-items:center;padding:18px;animation:fadeIn .18s ease}.moment-card{width:min(100%,390px);padding:30px 20px;text-align:center;border-radius:30px;background:linear-gradient(145deg,#2b9c7d,#46b994);color:white;box-shadow:0 30px 100px rgba(0,0,0,.3);animation:momentPop .28s cubic-bezier(.2,.9,.3,1.25)}.moment-card.super{background:linear-gradient(145deg,#6e63d9,#9e6ddc)}.moment-heart{font-size:46px;line-height:1;margin-bottom:8px}.moment-card .eyebrow{color:rgba(255,255,255,.72)}.moment-card h2{font-size:48px;letter-spacing:-.055em;margin:5px 0}.moment-card p{font-size:12px;margin:0 0 17px;color:rgba(255,255,255,.78)}
.boot{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-3);font-size:10px}.loading-dot{width:8px;height:8px;border-radius:50%;background:var(--brand);display:inline-block;animation:pulse .8s infinite alternate}
@keyframes pulse{to{opacity:.25;transform:scale(.8)}}@keyframes fadeIn{from{opacity:0}}@keyframes momentPop{from{transform:scale(.86);opacity:0}to{transform:scale(1);opacity:1}}@keyframes sheetUp{from{transform:translateY(35px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(max-width:520px){
  .wrap{width:min(100% - 22px,760px)}.header-inner{height:64px}.main{padding-top:8px}.name-card{padding:16px;border-radius:27px}.name-stage{padding-top:30px}.partner-score small{max-width:140px}.quick-grid{gap:5px}.score-btn{height:40px;font-size:11px}.all-sticky{top:67px}.auth-page{align-items:flex-start;padding-inline:12px}.auth-card{margin-top:clamp(6px,5vh,36px);padding:21px 17px}.brand-mark{width:56px;height:56px;border-radius:19px}.brand-lockup h1{font-size:27px}.field input,.field select{height:52px;font-size:16px}.pin-input{font-size:21px!important}.dash-hero{grid-template-columns:1fr auto;padding:15px}.progress-ring{width:74px;height:74px}.task-card{grid-template-columns:36px 1fr 16px}.versus-grid{grid-template-columns:1fr 22px 1fr}.versus-card{min-height:220px;padding:10px}.map-intro{grid-template-columns:1fr}.map-legend{display:flex;flex-wrap:wrap}.taste-wrap{padding-left:30px}.sheet-backdrop,.dialog-backdrop{padding:8px}.edit-sheet,.dialog{border-radius:25px 25px 20px 20px}.page-heading h1{font-size:29px}
}
@media(min-width:760px){
  .shell{padding-bottom:28px}.bottom-nav{position:sticky;top:70px;bottom:auto;padding-bottom:0;border-top:0;border-bottom:1px solid var(--line);background:var(--surface-glass)}.bottom-grid{max-width:480px}.nav-btn{height:52px;flex-direction:row;font-size:11px}.main{padding-top:20px}.rate-segmented{max-width:460px;margin-inline:auto}.name-card{max-width:560px;margin-inline:auto}.rate-toolbar,.nav-arrows{max-width:560px;margin-inline:auto}.quick-wrap{max-width:520px;margin-inline:auto}.review-grid{grid-template-columns:1fr 1fr}.stats-grid{grid-template-columns:repeat(4,1fr)}.task-grid{grid-template-columns:1fr 1fr 1fr}.toast{bottom:24px}.versus-grid{max-width:620px;margin-inline:auto}.taste-wrap{max-width:620px;margin-inline:auto}.auth-card{padding:30px}.name-list{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* V3.1 — 2026 polish: quieter Apple-like surfaces, richer interaction */
:root{
  --bg:#f5f5f7;--bg-2:#ececf1;--surface:rgba(255,255,255,.78);--surface-2:rgba(245,245,248,.92);--surface-glass:rgba(250,250,252,.74);
  --text:#17171c;--text-2:#5b5b65;--text-3:#8d8d98;--line:rgba(28,28,33,.085);--line-strong:rgba(28,28,33,.15);
  --brand:#0a84ff;--brand-2:#7c5cff;--violet:#7655ee;--coral:#ff496c;--mint:#2db77f;--gold:#c98a24;--danger:#ff3b5c;
  --bar:#ff496c;--alon:#5e5ce6;--shadow-sm:0 8px 28px rgba(35,35,45,.055);--shadow:0 18px 55px rgba(35,35,45,.085);--shadow-lg:0 34px 110px rgba(25,25,35,.16);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Heebo","Segoe UI",sans-serif;
}
html[data-theme="dark"]{
  --bg:#09090b;--bg-2:#111114;--surface:rgba(28,28,32,.78);--surface-2:rgba(40,40,46,.86);--surface-glass:rgba(22,22,26,.72);
  --text:#f5f5f7;--text-2:#c6c6ce;--text-3:#8b8b96;--line:rgba(255,255,255,.085);--line-strong:rgba(255,255,255,.16);
  --brand:#0a84ff;--brand-2:#8b78ff;--bar:#ff5f7b;--alon:#7d78ff;--shadow-sm:0 10px 30px rgba(0,0,0,.23);--shadow:0 20px 60px rgba(0,0,0,.30);--shadow-lg:0 34px 110px rgba(0,0,0,.48)
}
html,body{overflow-x:clip;overscroll-behavior-x:none;max-width:100vw}
body{background:radial-gradient(circle at 14% -8%,rgba(10,132,255,.08),transparent 26%),radial-gradient(circle at 90% 6%,rgba(124,92,255,.075),transparent 24%),var(--bg);letter-spacing:-.008em}
.card,.glass-card,.name-card,.edit-sheet,.dialog{backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%)}
.header{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 91%,transparent) 76%,transparent);backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%)}
.bottom-nav{background:color-mix(in srgb,var(--surface-glass) 92%,transparent);backdrop-filter:blur(30px) saturate(160%);-webkit-backdrop-filter:blur(30px) saturate(160%)}
.nav-btn.active{color:var(--brand)}
.segmented{background:rgba(118,118,128,.10);border-color:rgba(118,118,128,.08);border-radius:15px;padding:3px}
.segmented button{border-radius:12px;font-weight:650}.segmented button.active{background:color-mix(in srgb,var(--surface) 96%,white 4%);box-shadow:0 1px 3px rgba(0,0,0,.07),0 6px 20px rgba(0,0,0,.035)}
.btn{border-radius:14px;font-weight:650}.btn.primary{background:linear-gradient(180deg,#168bff,#0077ed);box-shadow:0 10px 26px rgba(10,132,255,.23)}
.name-card.premium-card{background:linear-gradient(155deg,color-mix(in srgb,var(--surface) 94%,#fff 6%),color-mix(in srgb,var(--surface) 92%,#7c5cff 8%));border-color:rgba(118,118,128,.12);box-shadow:0 24px 70px rgba(25,25,35,.11)}
.name-card:before{background:rgba(10,132,255,.07)}
.name-stage h1,.tinder-name,.moment-card h2,.page-heading h1{font-weight:760;letter-spacing:-.055em}
.name-stage h1{font-size:clamp(54px,14vw,78px)}
.card-top-left{display:flex;align-items:center;gap:7px;min-width:0}.info-pill,.details-link{border:0;background:rgba(118,118,128,.09);color:var(--text-2);border-radius:999px;min-height:32px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:650}.info-pill .icon,.details-link .icon{width:14px;height:14px}.details-link{width:100%;justify-content:center;margin-top:10px;border-radius:13px;min-height:42px}
.surprise-blind{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 8px;background:rgba(124,92,255,.10);color:var(--violet);font-size:9px;font-weight:750}.surprise-blind b{width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:var(--violet);color:white;font-size:10px}
.partner-reveal.hidden.surprise{min-height:64px}.blind-question{width:min(100%,360px);display:flex;align-items:center;justify-content:center;gap:10px;border-radius:18px;padding:10px 13px;background:linear-gradient(135deg,rgba(124,92,255,.09),rgba(10,132,255,.06));border:1px solid rgba(124,92,255,.12)}.blind-question>span{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:var(--surface);font-size:22px;font-weight:800;color:var(--violet);box-shadow:var(--shadow-sm)}.blind-question div{display:grid;gap:2px}.blind-question strong{font-size:12px}.blind-question small{font-size:9px;color:var(--text-3)}
.partner-score em{font-style:normal;border-radius:999px;padding:3px 6px;background:rgba(94,92,230,.09);color:var(--alon);font-size:8px;font-weight:750}
.range{height:6px;background:linear-gradient(90deg,rgba(10,132,255,.18),rgba(124,92,255,.34))}.range::-webkit-slider-thumb{width:27px;height:27px;background:#fff;border:5px solid var(--brand);box-shadow:0 3px 13px rgba(10,132,255,.28)}
.comment-box textarea{background:rgba(118,118,128,.075);border-color:rgba(118,118,128,.10)}
.gender-fit{margin:13px 0 2px;padding:11px 12px;border-radius:17px;background:rgba(118,118,128,.065);border:1px solid rgba(118,118,128,.08)}.gender-fit-title{font-size:10px;font-weight:650;color:var(--text-2);margin-bottom:8px}.gender-fit-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.fit-chip{height:37px;border:0;border-radius:11px;background:var(--surface);color:var(--text-2);font-size:10px;font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.045)}.fit-chip.active{background:var(--text);color:var(--bg);box-shadow:none}

/* iOS Tinder gesture containment */
.ios-swipe-zone,.tinder-stack,.tinder-card{max-width:100%;overscroll-behavior-x:none}.tinder-stack{touch-action:pan-y;overflow:visible;contain:layout paint}.tinder-card{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;will-change:transform,opacity;transform-origin:50% 92%;background:linear-gradient(155deg,color-mix(in srgb,var(--surface) 95%,#fff 5%),color-mix(in srgb,var(--surface) 90%,#0a84ff 10%));border-color:rgba(118,118,128,.12)}.tinder-card.dragging{cursor:grabbing}.tinder-card:before{background:rgba(10,132,255,.08)}.tinder-card:after{background:rgba(124,92,255,.075)}.tinder-info{position:absolute;top:17px;left:17px;width:38px;height:38px;border-radius:13px;border:1px solid var(--line);background:var(--surface-glass);display:grid;place-items:center;z-index:3;color:var(--text-2)}.tinder-info .icon{width:17px;height:17px}.swipe-stamp{font-family:inherit!important;letter-spacing:-.01em!important;border-width:2px!important;border-radius:14px!important;padding:7px 10px!important}
.circle-action{background:color-mix(in srgb,var(--surface) 94%,white 6%);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.circle-action .icon{width:22px;height:22px}

/* Name insights */
.info-layer{z-index:108}.info-sheet{max-height:min(91dvh,820px)}.insight-block{margin-top:12px;padding:14px;border-radius:18px;background:rgba(118,118,128,.065);border:1px solid rgba(118,118,128,.08)}.insight-title{display:flex;align-items:center;gap:8px;margin-bottom:8px}.insight-title>span{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--surface);color:var(--brand)}.insight-title .icon{width:15px;height:15px}.insight-title strong{font-size:13px}.meaning-text{font-size:13px;line-height:1.65;margin:0 0 6px}.insight-block>small{font-size:8px;color:var(--text-3)}.muted-copy,.insight-loading{margin:0;color:var(--text-3);font-size:10px;line-height:1.55}.nickname-list{display:flex;gap:7px;flex-wrap:wrap}.nickname-list span{padding:7px 10px;border-radius:999px;background:var(--surface);font-size:11px;font-weight:650;box-shadow:0 1px 4px rgba(0,0,0,.04)}.surname-field{display:grid;gap:5px;margin-bottom:9px}.surname-field label{font-size:9px;font-weight:650;color:var(--text-2)}.surname-field label span{font-weight:400;color:var(--text-3)}.surname-field input{height:42px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);padding:0 11px;font-size:16px}.phrase-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.phrase-card{min-height:72px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:10px;text-align:right;color:var(--text);font-size:11px;line-height:1.4}.phrase-card span{display:block;margin-top:6px;color:var(--brand);font-size:8px;font-weight:750}
.row-actions{display:flex;align-items:center;gap:6px}.mini-info-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);display:grid;place-items:center;color:var(--text-3)}.mini-info-btn .icon{width:15px}.name-info-button{border:0;background:transparent;padding:0;text-align:right;color:inherit;min-width:0;flex:1}.name-info-button .meta{text-align:right}

/* Dashboard storytelling */
.cute-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.cute-stat{padding:13px;min-height:108px;display:flex;flex-direction:column;justify-content:space-between}.cute-stat span{font-size:9px;color:var(--text-3)}.cute-stat strong{font-size:20px;letter-spacing:-.03em}.cute-stat small{font-size:8px;color:var(--text-2);line-height:1.4}.change-list{display:grid;gap:7px}.change-row{width:100%;border:1px solid var(--line);padding:9px 10px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;text-align:right;color:inherit}.activity-avatar.tiny{width:34px;height:34px;border-radius:11px;font-size:11px}.change-row div{display:grid;gap:2px}.change-row strong{font-size:11px}.change-row small{font-size:9px;color:var(--text-3)}

/* Full-screen Match */
.match-fullscreen{padding:max(20px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom));background:rgba(5,5,10,.78);backdrop-filter:blur(34px) saturate(150%);-webkit-backdrop-filter:blur(34px) saturate(150%);overflow:hidden}.match-aurora{position:absolute;inset:-25%;background:radial-gradient(circle at 30% 30%,rgba(255,73,108,.55),transparent 28%),radial-gradient(circle at 70% 66%,rgba(94,92,230,.55),transparent 30%),radial-gradient(circle at 55% 22%,rgba(10,132,255,.28),transparent 30%);filter:blur(35px);animation:auroraFloat 6s ease-in-out infinite alternate}.match-aurora.super{background:radial-gradient(circle at 30% 30%,rgba(124,92,255,.65),transparent 27%),radial-gradient(circle at 70% 65%,rgba(255,174,66,.55),transparent 30%),radial-gradient(circle at 55% 22%,rgba(10,132,255,.32),transparent 30%)}.match-aurora.conflict{background:radial-gradient(circle at 30% 30%,rgba(10,132,255,.48),transparent 28%),radial-gradient(circle at 70% 65%,rgba(255,159,10,.48),transparent 30%)}.match-card{position:relative;width:min(100%,430px);background:rgba(18,18,24,.58)!important;border:1px solid rgba(255,255,255,.15)!important;color:white!important;backdrop-filter:blur(32px) saturate(140%);-webkit-backdrop-filter:blur(32px) saturate(140%);border-radius:36px!important;padding:36px 23px 24px!important;box-shadow:0 40px 140px rgba(0,0,0,.45)!important}.match-kicker{font-size:13px;font-weight:800;letter-spacing:.11em;color:rgba(255,255,255,.72)}.match-symbol{font-size:48px;margin:15px 0 4px;color:#ff496c;text-shadow:0 8px 35px rgba(255,73,108,.4)}.match-card.super .match-symbol{color:#ffd166}.match-card h2{font-size:clamp(56px,16vw,82px)!important;margin:2px 0!important}.match-card>p{font-size:12px!important;color:rgba(255,255,255,.74)!important;margin:2px 0 22px!important}.match-scores{display:grid;grid-template-columns:1fr 42px 1fr;align-items:center;gap:8px;margin:6px 0 22px}.match-scores>div:not(.match-heart){min-height:92px;border-radius:20px;background:rgba(255,255,255,.09);display:flex;flex-direction:column;align-items:center;justify-content:center}.match-scores span{font-size:9px;color:rgba(255,255,255,.62)}.match-scores strong{font-size:34px;line-height:1.05}.match-scores small{font-size:8px;color:rgba(255,255,255,.6);margin-top:4px}.match-heart{font-size:22px;color:#ff496c}.glass-match{width:100%;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.16);color:white}.match-card.conflict .match-heart{color:#ffd166}
.toast{pointer-events:none;display:flex;align-items:center;gap:9px;overflow:visible}.toast.show{pointer-events:auto}.toast-undo{border:0;background:rgba(255,255,255,.18);color:inherit;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}
@keyframes auroraFloat{to{transform:translate3d(4%,-3%,0) scale(1.08)}}

@media(max-width:520px){
  .info-pill{padding:0 8px}.info-pill{font-size:0}.info-pill .icon{width:16px;height:16px}.cute-stats{grid-template-columns:1fr 1fr}.cute-stat:first-child{grid-column:1/-1}.phrase-grid{grid-template-columns:1fr}.tinder-stack{height:min(56dvh,490px);min-height:345px}.tinder-card{inset-inline:2px}.name-stage h1{font-size:clamp(50px,15vw,72px)}.gender-fit{padding:10px}.match-card{border-radius:32px!important}.row-actions{gap:4px}.edit-score-btn{padding-inline:8px}.name-row-main{align-items:flex-start}
}

/* V3.2 — mobile auth + playful game room */
.auth-page{width:100%;max-width:100vw;overflow-x:hidden;contain:layout;padding-inline:max(12px,env(safe-area-inset-left),env(safe-area-inset-right))}
.auth-card{width:100%;max-width:420px;min-width:0;overflow:hidden;margin-inline:auto}
.auth-card form,.auth-card .field{width:100%;min-width:0;max-width:100%}
.auth-card .field input,.auth-card .field select{display:block;width:100%;min-width:0;max-width:100%}
.pin-field{overflow:visible}
.pin-code{position:relative;width:100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;direction:ltr;isolation:isolate}
.pin-cell{pointer-events:none;aspect-ratio:1/1;min-width:0;max-height:54px;border-radius:15px;border:1px solid rgba(118,118,128,.14);background:rgba(255,255,255,.64);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 3px 12px rgba(30,30,45,.04);display:grid;place-items:center;color:var(--text-3);font-size:18px;font-weight:750;transition:.18s ease}
.pin-cell.filled{background:var(--text);color:var(--bg);border-color:transparent;transform:translateY(-1px);box-shadow:0 7px 18px rgba(0,0,0,.12)}
.pin-code{cursor:text;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pin-capture{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:.001!important;pointer-events:auto!important;z-index:4!important;border:0!important;padding:0!important;margin:0!important;letter-spacing:0!important;background:transparent!important;color:transparent!important;caret-color:transparent!important}
html[data-theme="dark"] .pin-cell{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.09)}
.pin-hint{display:block;margin-top:6px;font-size:9px;color:var(--text-3);text-align:center}
@media(max-width:390px){.auth-page{padding-inline:10px}.auth-card{padding:19px 14px!important}.pin-code{gap:5px}.pin-cell{border-radius:13px;font-size:16px}.brand-lockup{gap:10px}.brand-lockup h1{font-size:25px!important}}

/* Games hub */
.games-hero{text-align:center;padding:14px 16px 18px}.games-hero h2{font-size:32px;letter-spacing:-.045em;margin:4px 0 5px}.games-hero p{max-width:420px;margin:0 auto;color:var(--text-2);font-size:11px;line-height:1.55}.game-lobby{display:grid;gap:10px}.game-tile{position:relative;overflow:hidden;width:100%;min-height:138px;border:1px solid var(--line);border-radius:27px;padding:18px;display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:14px;text-align:right;color:var(--text);box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease;background:var(--surface)}
.game-tile:active{transform:scale(.985)}.game-tile:after{content:"";position:absolute;inset:auto -20% -70% 25%;height:150%;border-radius:50%;filter:blur(18px);opacity:.45;pointer-events:none}.game-tile.duel:after{background:radial-gradient(circle,#ff9f0a55,transparent 65%)}.game-tile.guess:after{background:radial-gradient(circle,#7c5cff55,transparent 65%)}.game-tile.higher:after{background:radial-gradient(circle,#30b0c755,transparent 65%)}
.game-tile>div{position:relative;z-index:1;min-width:0}.game-tile small{display:block;font-size:8px;letter-spacing:.09em;color:var(--text-3);font-weight:800}.game-tile strong{display:block;font-size:19px;letter-spacing:-.035em;margin:3px 0}.game-tile p{font-size:10px;line-height:1.45;color:var(--text-2);margin:0}.game-icon{position:relative;z-index:1;width:58px;height:58px;border-radius:19px;display:grid;place-items:center;background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.45);font-size:25px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.play-pill{position:relative;z-index:1;padding:7px 10px;border-radius:999px;background:var(--text);color:var(--bg);font-size:9px;font-weight:800}.game-tile:disabled{opacity:.42}

/* Enhanced tournament arena */
.game-shell{position:relative;padding-bottom:52px}.game-floating-back{position:fixed;z-index:54;bottom:calc(88px + var(--safe-bottom));left:50%;transform:translateX(-50%);border:1px solid var(--line);background:var(--surface-glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:var(--shadow-sm);border-radius:999px;padding:9px 14px;font-size:9px;font-weight:800;color:var(--text-2)}
.arena-start,.champion-screen,.arena-round{position:relative;overflow:hidden;border-radius:31px;border:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,#ff9f0a 6%),color-mix(in srgb,var(--surface) 94%,#7c5cff 6%));box-shadow:var(--shadow);padding:28px 18px}.arena-start{text-align:center;min-height:490px;display:flex;flex-direction:column;align-items:center;justify-content:center}.arena-glow{position:absolute;inset:-35%;background:radial-gradient(circle at 25% 30%,rgba(255,159,10,.28),transparent 25%),radial-gradient(circle at 70% 62%,rgba(124,92,255,.27),transparent 28%);filter:blur(22px);animation:arenaFloat 6s ease-in-out infinite alternate}.arena-logo{position:relative;width:84px;height:84px;border-radius:28px;display:grid;place-items:center;background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.65);box-shadow:0 18px 45px rgba(70,45,90,.13);font-size:38px;margin-bottom:17px}.arena-start h2{position:relative;font-size:35px;letter-spacing:-.05em;margin:4px 0}.arena-start p{position:relative;max-width:390px;color:var(--text-2);font-size:11px;line-height:1.6;margin:4px auto 18px}.arena-preview{position:relative;display:flex;align-items:center;gap:7px;direction:ltr;margin:2px 0 21px}.arena-preview span{min-width:36px;height:36px;padding:0 7px;border-radius:11px;background:rgba(255,255,255,.48);display:grid;place-items:center;font-weight:800;font-size:11px}.arena-preview i{font-style:normal;color:var(--text-3)}.arena-cta{position:relative;min-width:min(100%,270px)}
.arena-round{padding:17px 13px 20px}.arena-round-top{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;text-align:center;gap:6px}.arena-round-top h2{font-size:27px;letter-spacing:-.04em;margin:2px 0}.arena-reset{border:0;background:var(--surface-2);color:var(--text-3);border-radius:11px;padding:7px;font-size:8px;font-weight:800}.round-count{font-size:10px;font-weight:850;color:var(--text-3);direction:ltr}.arena-progress{height:5px;border-radius:999px;background:rgba(118,118,128,.1);overflow:hidden;margin:11px 2px 18px;direction:ltr}.arena-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff9f0a,#ff375f,#7c5cff);transition:width .35s ease}
.battle-stage{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:center;gap:4px;min-height:330px}.fighter-card{position:relative;overflow:hidden;min-width:0;min-height:300px;border:1px solid rgba(118,118,128,.11);border-radius:27px;padding:14px 9px;background:rgba(255,255,255,.55);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--text);box-shadow:0 12px 32px rgba(50,40,65,.08);transition:transform .16s cubic-bezier(.2,.8,.2,1),box-shadow .16s ease}.fighter-card.right{background:linear-gradient(165deg,rgba(255,255,255,.6),rgba(124,92,255,.07))}.fighter-card.left{background:linear-gradient(165deg,rgba(255,255,255,.6),rgba(255,159,10,.07))}.fighter-card:active{transform:scale(.965) translateY(2px);box-shadow:0 6px 16px rgba(50,40,65,.08)}.fighter-shine{position:absolute;inset:-25% -60%;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.38) 50%,transparent 60%);transform:translateX(-55%);transition:transform .45s ease}.fighter-card:active .fighter-shine{transform:translateX(55%)}.fighter-seed{padding:5px 8px;border-radius:999px;background:rgba(118,118,128,.08);font-size:8px;color:var(--text-3);font-weight:750}.fighter-card>strong{font-size:clamp(29px,9vw,46px);line-height:.95;letter-spacing:-.055em;margin:26px 0 18px;max-width:100%;overflow-wrap:anywhere}.fighter-rating{display:grid;grid-template-columns:34px 17px 34px;gap:3px;align-items:center;direction:ltr}.fighter-rating span{height:34px;border-radius:11px;display:grid;place-items:center;font-size:11px;font-weight:850}.fighter-rating .bar{background:rgba(255,55,95,.09);color:var(--bar)}.fighter-rating .alon{background:rgba(94,92,230,.09);color:var(--alon)}.fighter-rating i{font-style:normal;color:var(--text-3);font-size:10px}.fighter-card small{font-size:8px;color:var(--text-3);margin-top:8px}.fighter-tap{position:absolute;bottom:12px;left:12px;right:12px;padding:8px;border-radius:12px;background:var(--text);color:var(--bg);font-size:9px;font-weight:850}.versus-burst{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--text);color:var(--bg);font-size:9px;font-weight:950;box-shadow:0 0 0 7px rgba(118,118,128,.07),0 8px 24px rgba(0,0,0,.14);z-index:2;animation:vsPulse 2.3s ease-in-out infinite}.battle-hint{text-align:center;color:var(--text-3);font-size:9px;margin-top:8px}
.champion-screen{text-align:center;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center}.champion-rays{position:absolute;width:560px;height:560px;background:repeating-conic-gradient(from 0deg,rgba(255,159,10,.12) 0deg 8deg,transparent 8deg 22deg);animation:spinSlow 28s linear infinite}.confetti-field{position:absolute;inset:24px 0 auto;font-size:20px;color:#ff9f0a;letter-spacing:.3em;animation:confettiBob 2s ease-in-out infinite alternate}.champion-crown{position:relative;font-size:62px;color:#ff9f0a;filter:drop-shadow(0 14px 24px rgba(255,159,10,.22))}.champion-screen h1{position:relative;font-size:clamp(60px,19vw,94px);line-height:.95;letter-spacing:-.07em;margin:7px 0}.champion-screen p{position:relative;font-size:11px;color:var(--text-2)}.champion-scores{position:relative;display:grid;grid-template-columns:1fr 52px 1fr;align-items:center;gap:7px;margin:12px 0 24px}.champion-scores span{min-height:48px;border-radius:15px;background:rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;gap:5px;font-size:9px}.champion-scores b{font-size:18px}.champion-scores .shared{border-radius:50%;width:52px;height:52px;font-size:13px;font-weight:850;background:var(--text);color:var(--bg)}

/* Guess games */
.game-top{display:grid;grid-template-columns:42px 1fr 58px;align-items:center;gap:8px;margin:2px 0 12px}.game-back{width:40px;height:40px;border:1px solid var(--line);border-radius:13px;background:var(--surface);display:grid;place-items:center;transform:rotate(180deg)}.game-top h2{font-size:25px;margin:1px 0;letter-spacing:-.04em}.game-top p{font-size:9px;color:var(--text-3);margin:0}.game-score{height:52px;border-radius:16px;background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.game-score strong{font-size:18px}.game-score span{font-size:7px;color:var(--text-3);margin-top:3px}.game-score small{font-size:8px;margin-top:3px}.guess-stage,.higher-stage{position:relative;overflow:hidden;min-height:490px;padding:27px 17px;text-align:center;display:flex;flex-direction:column;align-items:center}.game-orbit{position:absolute;width:330px;height:330px;border-radius:50%;top:-110px;background:radial-gradient(circle,rgba(124,92,255,.16),transparent 67%);filter:blur(2px)}.game-orbit.alt{background:radial-gradient(circle,rgba(48,176,199,.18),transparent 67%)}.guess-stage>.badge,.higher-stage>.badge{position:relative}.guess-stage h1,.higher-stage h1{position:relative;font-size:clamp(54px,17vw,82px);letter-spacing:-.065em;line-height:.95;margin:37px 0 14px}.your-score-pill{position:relative;padding:7px 11px;border-radius:999px;background:var(--surface-2);font-size:9px;color:var(--text-2)}.your-score-pill strong{font-size:15px;margin-inline-start:4px;color:var(--text)}.guess-prompt{position:relative;margin:29px 0 12px;font-size:11px;color:var(--text-2)}.guess-prompt strong{display:block;color:var(--text);font-size:31px;margin-top:3px}.guess-options{position:relative;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.guess-option{height:67px;border-radius:19px;border:1px solid var(--line);background:var(--surface-2);font-size:24px;font-weight:850;color:var(--text);transition:.15s}.guess-option:active{transform:scale(.97)}.guess-option.correct,.side-choice.correct{background:rgba(52,199,89,.13);border-color:rgba(52,199,89,.35);color:#248a3d}.guess-option.wrong,.side-choice.wrong{background:rgba(255,59,48,.10);border-color:rgba(255,59,48,.25);color:#d70015}.guess-option.muted,.side-choice.muted{opacity:.35}.game-result{margin-top:14px;font-size:11px;font-weight:800}.game-result.win{color:#248a3d}.game-result.near{color:#b26a00}.game-result.miss{color:var(--text-3)}.game-next{width:100%;margin-top:auto}.higher-choices{position:relative;width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:36px}.side-choice{min-height:110px;border-radius:21px;border:1px solid var(--line);background:var(--surface-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--text)}.side-choice>span{width:42px;height:42px;border-radius:14px;background:var(--surface);display:grid;place-items:center;font-weight:900;font-size:18px}.side-choice strong{font-size:11px}.side-choice.bar>span{color:var(--bar)}.side-choice.alon>span{color:var(--alon)}.higher-reveal{margin:20px 0 12px;display:flex;flex-direction:column;gap:3px}.higher-reveal strong{font-size:28px}.higher-reveal span{font-size:10px;color:var(--text-3)}

@keyframes arenaFloat{to{transform:translate3d(5%,-3%,0) scale(1.05)}}
@keyframes vsPulse{50%{transform:scale(1.08);box-shadow:0 0 0 10px rgba(118,118,128,.045),0 10px 26px rgba(0,0,0,.17)}}
@keyframes spinSlow{to{transform:rotate(360deg)}}
@keyframes confettiBob{to{transform:translateY(7px)}}

@media(max-width:430px){.game-tile{grid-template-columns:50px 1fr auto;padding:15px 13px;gap:10px}.game-icon{width:50px;height:50px;border-radius:17px}.play-pill{padding:6px 8px}.battle-stage{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr)}.versus-burst{width:32px;height:32px;box-shadow:0 0 0 5px rgba(118,118,128,.06),0 6px 18px rgba(0,0,0,.12)}.fighter-card{min-height:280px;padding-inline:7px}.fighter-card>strong{font-size:clamp(27px,8.8vw,39px)}.fighter-tap{left:8px;right:8px}.arena-round{padding-inline:9px}.guess-stage,.higher-stage{min-height:460px}.game-floating-back{bottom:calc(82px + var(--safe-bottom))}}

/* V3.3 — strict blind ratings + cinematic exact-score match */
.surprise-blind.permanent{background:rgba(118,118,128,.10);border-color:rgba(118,118,128,.16);color:var(--text)}
.surprise-blind.permanent b{background:var(--text);color:var(--surface)}
.partner-mini .icon{width:14px;height:14px;margin-inline-end:5px;vertical-align:-2px}

/* Full-viewport Match — intentionally closer to a native dating app moment than a modal. */
.match-fullscreen{z-index:240;padding:0;background:#06060a;display:block;overflow:hidden;isolation:isolate}
.match-aurora{position:absolute;inset:-20%;z-index:-3;filter:blur(18px) saturate(125%);animation:matchAurora 7s ease-in-out infinite alternate}
.match-aurora.match{background:radial-gradient(circle at 18% 18%,rgba(255,55,95,.72),transparent 29%),radial-gradient(circle at 82% 72%,rgba(72,73,255,.68),transparent 31%),radial-gradient(circle at 52% 44%,rgba(255,255,255,.12),transparent 22%),#08070e}
.match-aurora.super{background:radial-gradient(circle at 16% 18%,rgba(149,88,255,.82),transparent 30%),radial-gradient(circle at 82% 72%,rgba(255,64,112,.72),transparent 31%),radial-gradient(circle at 52% 42%,rgba(255,190,70,.30),transparent 24%),#090711}
.match-aurora.perfect{background:radial-gradient(circle at 18% 20%,rgba(255,182,46,.82),transparent 28%),radial-gradient(circle at 82% 72%,rgba(255,53,104,.76),transparent 31%),radial-gradient(circle at 48% 44%,rgba(255,255,255,.24),transparent 24%),#0b0810}
.match-aurora.conflict{background:radial-gradient(circle at 20% 20%,rgba(10,132,255,.70),transparent 30%),radial-gradient(circle at 80% 75%,rgba(255,159,10,.66),transparent 31%),#08090e}
.match-grain{position:absolute;inset:0;z-index:-1;opacity:.07;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.match-experience{position:relative;min-height:100dvh;width:min(100%,520px);margin:0 auto;padding:max(42px,calc(env(safe-area-inset-top) + 24px)) 22px max(28px,calc(env(safe-area-inset-bottom) + 18px));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:white;animation:matchSceneIn .55s cubic-bezier(.16,1,.3,1)}
.match-kicker{font-size:clamp(15px,4vw,19px);font-weight:900;letter-spacing:.18em;line-height:1;color:rgba(255,255,255,.88);text-shadow:0 2px 20px rgba(0,0,0,.24);animation:matchKickerIn .72s .08s both cubic-bezier(.16,1,.3,1)}
.match-name-hero{position:relative;width:100%;margin:28px 0 23px;padding:42px 18px 33px;border:1px solid rgba(255,255,255,.18);border-radius:38px;background:linear-gradient(160deg,rgba(255,255,255,.18),rgba(255,255,255,.07));box-shadow:0 35px 110px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.18);backdrop-filter:blur(30px) saturate(155%);-webkit-backdrop-filter:blur(30px) saturate(155%);animation:matchCardIn .72s .12s both cubic-bezier(.16,1,.3,1)}
.match-name-hero:after{content:"";position:absolute;inset:8px;border-radius:30px;border:1px solid rgba(255,255,255,.06);pointer-events:none}
.match-gender{display:inline-flex;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.11);font-size:11px;font-weight:700;color:rgba(255,255,255,.76)}
.match-name-hero h1{margin:18px 0 16px!important;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Heebo",sans-serif!important;font-size:clamp(64px,20vw,104px)!important;font-weight:780!important;line-height:.93!important;letter-spacing:-.075em!important;color:white!important;text-wrap:balance;text-shadow:0 12px 46px rgba(0,0,0,.28)}
.exact-score-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 15px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.14);font-size:12px;font-weight:800;letter-spacing:.01em;color:rgba(255,255,255,.92)}
.match-pair{width:min(100%,360px);display:grid;grid-template-columns:1fr 62px 1fr;align-items:center;gap:8px;animation:matchPairIn .68s .26s both cubic-bezier(.16,1,.3,1)}
.match-person{display:flex;flex-direction:column;align-items:center;gap:4px}.match-person small{font-size:11px;color:rgba(255,255,255,.66)}.match-person strong{font-size:34px;line-height:1;font-variant-numeric:tabular-nums}.match-person em{margin-top:2px;font-size:9px;font-style:normal;color:rgba(255,255,255,.58)}
.match-avatar{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin-bottom:7px;font-size:20px;font-weight:850;border:1px solid rgba(255,255,255,.24);box-shadow:0 15px 36px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.2)}.match-avatar.bar{background:linear-gradient(145deg,#ff5a7c,#ff375f)}.match-avatar.alon{background:linear-gradient(145deg,#7979ff,#5856d6)}
.match-center-symbol{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:auto;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 0 rgba(255,55,95,.42);animation:matchHeartPulse 1.7s .7s infinite}.match-center-symbol span{font-size:25px;color:#ff5274;filter:drop-shadow(0 6px 15px rgba(255,55,95,.45))}.match-center-symbol.conflict{font-size:22px;color:#ffd166;animation:none}
.match-copy{width:min(100%,360px);margin:22px 0 18px!important;font-size:14px!important;line-height:1.55!important;color:rgba(255,255,255,.78)!important;animation:matchCopyIn .6s .38s both ease}
.match-continue{width:min(100%,360px);min-height:54px;border:0;border-radius:18px;background:white;color:#15151a;font:inherit;font-size:15px;font-weight:850;box-shadow:0 18px 55px rgba(0,0,0,.30);animation:matchCopyIn .6s .46s both ease;cursor:pointer}.match-continue:active{transform:scale(.98)}
.match-actions{width:min(100%,420px);display:grid;grid-template-columns:minmax(112px,.72fr) minmax(160px,1.28fr);gap:10px;align-items:stretch;animation:matchCopyIn .6s .46s both ease}.match-actions .match-continue{width:100%;animation:none}.match-actions .btn{min-height:54px;border-radius:18px;font-weight:850;justify-content:center}.match-actions .btn.secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@media(max-width:380px){.match-actions{grid-template-columns:1fr 1.25fr;gap:8px}.match-actions .btn{padding-inline:12px}}
.match-sparks{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}.match-sparks i{--x:calc((var(--i) * 47) % 100);position:absolute;left:calc(var(--x) * 1%);top:calc(18% + ((var(--i) * 31) % 68) * 1%);width:5px;height:5px;border-radius:50%;background:white;opacity:.62;box-shadow:0 0 18px rgba(255,255,255,.9);animation:matchSpark calc(3.8s + (var(--i) * .11s)) calc(var(--i) * -.17s) infinite ease-in-out}
@keyframes matchAurora{from{transform:translate3d(-2%,-2%,0) scale(1.02) rotate(-2deg)}to{transform:translate3d(2%,2%,0) scale(1.08) rotate(3deg)}}
@keyframes matchSceneIn{from{opacity:0}to{opacity:1}}
@keyframes matchKickerIn{from{opacity:0;transform:translateY(-16px) scale(.94);letter-spacing:.28em}to{opacity:1;transform:none;letter-spacing:.18em}}
@keyframes matchCardIn{from{opacity:0;transform:translateY(42px) scale(.84) rotate(-2deg)}to{opacity:1;transform:none}}
@keyframes matchPairIn{from{opacity:0;transform:translateY(28px) scale(.9)}to{opacity:1;transform:none}}
@keyframes matchCopyIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes matchHeartPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(255,55,95,.36)}50%{transform:scale(1.08);box-shadow:0 0 0 16px rgba(255,55,95,0)}}
@keyframes matchSpark{0%,100%{transform:translate3d(0,0,0) scale(.6);opacity:.18}50%{transform:translate3d(8px,-20px,0) scale(1.25);opacity:.78}}
@media (max-width:430px){.match-experience{padding-inline:16px}.match-name-hero{border-radius:34px;padding-top:36px}.match-name-hero h1{font-size:clamp(58px,19vw,82px)!important}.match-pair{grid-template-columns:1fr 54px 1fr}.match-avatar{width:52px;height:52px}}
@media (prefers-reduced-motion:reduce){.match-aurora,.match-experience,.match-kicker,.match-name-hero,.match-pair,.match-copy,.match-continue,.match-actions,.match-center-symbol,.match-sparks i{animation:none!important}}

/* V3.4 — playful product personality without turning the app into nursery decor */
:root{
  --play-green:#36b37e;
  --play-lime:#a8d84e;
  --play-yellow:#f5b942;
  --play-blue:#4387f4;
  --scrap:#7c5c2e;
  --scrap-dark:#3d2d19;
  --scrap-acid:#b7de61;
}
html[data-theme="dark"]{
  --play-green:#54d39b;
  --play-lime:#bce871;
  --play-yellow:#ffc85d;
  --play-blue:#63a1ff;
  --scrap:#c59c61;
  --scrap-dark:#211a11;
  --scrap-acid:#c7ed78;
}
.inline-toy{display:inline-grid;place-items:center;width:31px;height:31px;border-radius:11px;vertical-align:-7px;margin-inline-start:5px;background:linear-gradient(145deg,rgba(245,185,66,.19),rgba(239,107,120,.10));border:1px solid rgba(220,155,57,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.inline-toy .icon{width:17px;height:17px;color:var(--gold)}
.baby-empty{background:linear-gradient(145deg,rgba(245,185,66,.17),rgba(239,107,120,.10))!important;color:var(--gold)!important}
.baby-empty .icon{width:34px;height:34px}
.task-icon.baby{background:linear-gradient(145deg,rgba(245,185,66,.17),rgba(239,107,120,.09));color:var(--gold)}

/* Baby objects have jobs: bottle = progress, rattle = play, pacifier = second look. */
.dash-progress-cluster{display:flex;align-items:center;gap:7px;direction:ltr}
.progress-bottle{--fill:0%;position:relative;width:42px;height:72px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(180deg,var(--surface),var(--surface-2));border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden;color:var(--play-blue)}
.progress-bottle .icon{position:relative;z-index:2;width:27px;height:44px;filter:drop-shadow(0 2px 3px rgba(0,0,0,.06))}
.progress-bottle i{position:absolute;z-index:1;left:5px;right:5px;bottom:5px;height:calc(var(--fill) * .62);max-height:48px;border-radius:9px 9px 10px 10px;background:linear-gradient(180deg,rgba(67,135,244,.28),rgba(67,135,244,.46));transition:height .45s cubic-bezier(.2,.8,.2,1)}
.tinder-toy{position:absolute;right:18px;bottom:17px;width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(118,118,128,.10);color:var(--play-blue);opacity:.64;transform:rotate(-11deg);pointer-events:none}
.tinder-toy .icon{width:27px;height:27px}

/* Game lobby gets the most personality, similar to a modern learning app: playful objects, still premium surfaces. */
.playful-hero{position:relative;overflow:hidden;margin-bottom:5px;border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 90%,#eef9f3 10%),color-mix(in srgb,var(--surface) 91%,#edf3ff 9%));border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.playful-hero:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:rgba(54,179,126,.08);right:-85px;top:-85px}.playful-hero:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;background:rgba(67,135,244,.07);left:-55px;bottom:-80px}
.toy-rattle{position:absolute;top:14px;left:17px;width:48px;height:48px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(67,135,244,.15),rgba(115,87,215,.10));color:var(--play-blue);transform:rotate(-13deg);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.toy-rattle .icon{width:26px;height:26px}
.toy-shelf{position:relative;z-index:2;margin:16px auto 0;display:flex;justify-content:center;gap:9px}
.toy{width:39px;height:39px;border-radius:14px;display:grid;place-items:center;border:1px solid rgba(118,118,128,.10);background:var(--surface-glass);box-shadow:0 6px 16px rgba(40,35,50,.05)}.toy .icon{width:21px;height:21px}.toy.pacifier{color:var(--gold);transform:rotate(7deg)}.toy.bottle{color:var(--play-blue);transform:translateY(2px)}.toy.rattle{color:var(--play-green);transform:rotate(-8deg)}
.game-tile{isolation:isolate}.game-tile:after{content:"";position:absolute;inset:auto -24px -38px auto;width:110px;height:110px;border-radius:50%;background:currentColor;opacity:.028;z-index:-1}.game-tile .game-icon .icon{width:27px;height:27px}
.game-tile.scraps{background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 91%,#f6f0df 9%),color-mix(in srgb,var(--surface) 92%,#eef4dc 8%));border-color:color-mix(in srgb,var(--line) 70%,var(--scrap-acid) 30%)}
.game-tile.scraps .game-icon{background:linear-gradient(145deg,rgba(183,222,97,.20),rgba(197,156,97,.12));color:#758d2d}.game-tile.scraps small{color:#77833b}.play-pill.bad{background:rgba(92,104,48,.10);color:#69752c}

/* Reverse 0-score tournament: intentionally cheekier than the main arena. */
.scraps-shell{min-height:560px}
.scraps-start,.worst-screen{position:relative;overflow:hidden;min-height:560px;border-radius:31px;padding:42px 20px 34px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(155deg,#1d1b18,#302a1f 52%,#1c2115);color:#f8f5ea;box-shadow:var(--shadow-lg);isolation:isolate}
.scraps-slime,.worst-goo{position:absolute;z-index:-1;inset:-28%;background:radial-gradient(circle at 22% 25%,rgba(183,222,97,.40),transparent 24%),radial-gradient(circle at 78% 70%,rgba(245,185,66,.22),transparent 28%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.05),transparent 25%);filter:blur(8px);animation:scrapFloat 7s ease-in-out infinite alternate}
.empty-bottle,.trash-crown{width:88px;height:88px;border-radius:29px;display:grid;place-items:center;margin-bottom:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);color:var(--scrap-acid);box-shadow:0 22px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12);transform:rotate(-5deg)}.empty-bottle .icon,.trash-crown .icon{width:46px;height:46px}.trash-crown{color:#ffd166;transform:rotate(4deg)}
.scraps-start .eyebrow,.worst-screen .eyebrow{color:var(--scrap-acid)}.scraps-start h2{font-size:38px;line-height:1.03;letter-spacing:-.055em;margin:5px 0 12px}.scraps-start p,.worst-screen p{max-width:430px;margin:0;color:rgba(255,255,255,.68);font-size:13px;line-height:1.65}.scraps-rule{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;margin:24px 0}.scraps-rule span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);font-size:10px;font-weight:800}.scraps-rule i{font-style:normal;color:rgba(255,255,255,.35)}
.btn.scraps-cta{border:0;background:var(--scrap-acid);color:#263016;box-shadow:0 13px 34px rgba(183,222,97,.19);font-weight:900}.btn.scraps-cta:active{transform:scale(.98)}
.scraps-round{padding:16px 10px 20px}.scraps-round-top{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;text-align:center;gap:6px}.scraps-round-top h2{font-size:28px;letter-spacing:-.045em;margin:2px 0}.scraps-progress{height:6px;border-radius:999px;background:rgba(118,118,128,.10);overflow:hidden;margin:11px 2px 20px;direction:ltr}.scraps-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d6c26f,var(--scrap-acid),#7f9e31);transition:width .35s ease}
.scraps-battle{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:7px;align-items:center}.scrap-fighter{position:relative;overflow:hidden;min-height:315px;border:1px solid rgba(118,118,128,.11);border-radius:28px;padding:14px 8px;background:linear-gradient(165deg,var(--surface),color-mix(in srgb,var(--surface) 92%,#eff4db 8%));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text);box-shadow:var(--shadow-sm);transition:.17s cubic-bezier(.2,.8,.2,1)}.scrap-fighter:active{transform:scale(.975) rotate(var(--tilt))}.scrap-fighter.left{--tilt:-1deg}.scrap-fighter.right{--tilt:1deg}.scrap-fighter:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:rgba(183,222,97,.07);right:-90px;bottom:-85px}.scrap-sticker{position:absolute;top:12px;right:10px;left:10px;min-height:27px;border-radius:10px;background:rgba(183,222,97,.13);color:#657523;font-size:9px;font-weight:900;display:grid;place-items:center}.scrap-bottle{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:rgba(183,222,97,.10);color:#769032;margin-top:24px}.scrap-bottle .icon{width:29px;height:29px}.scrap-fighter>strong{font-size:clamp(27px,8.4vw,42px);line-height:1;letter-spacing:-.055em;overflow-wrap:anywhere}.scrap-fighter>small{color:var(--text-3);font-size:10px;font-weight:800;direction:ltr}.scrap-tap{position:absolute;bottom:12px;left:10px;right:10px;min-height:38px;border-radius:13px;display:grid;place-items:center;background:var(--text);color:var(--surface);font-size:10px;font-weight:900}.scraps-vs{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:#343128;color:var(--scrap-acid);font-size:10px;font-weight:950;letter-spacing:.04em;box-shadow:0 8px 22px rgba(0,0,0,.18);z-index:2}
.worst-screen h1{font-size:clamp(62px,19vw,104px);line-height:.92;letter-spacing:-.075em;margin:12px 0 14px;color:#fff}.zero-badges{display:grid;grid-template-columns:1fr 58px 1fr;align-items:center;gap:10px;width:min(100%,360px);margin:24px 0}.zero-badges>span:not(.zero-medal){min-height:54px;border-radius:17px;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px}.zero-badges b{font-size:24px}.zero-medal{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--scrap-acid);color:#293116;font-size:25px;font-weight:950;box-shadow:0 0 0 8px rgba(183,222,97,.08)}
@keyframes scrapFloat{from{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(3%,2%,0) scale(1.08) rotate(2deg)}}

/* Slightly bouncier micro-motion, but only on playful surfaces. */
.game-tile:not(:disabled):active,.task-card:active{transform:scale(.985)}
@media (hover:hover){.game-tile:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 15px 38px rgba(45,36,52,.10)}}
@media(max-width:430px){.dash-progress-cluster{gap:4px}.progress-bottle{width:37px;height:66px;border-radius:13px}.progress-bottle .icon{width:24px}.toy-rattle{width:43px;height:43px;top:12px;left:12px}.scraps-start,.worst-screen{min-height:520px;border-radius:27px;padding-inline:16px}.scraps-start h2{font-size:34px}.scraps-battle{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);gap:4px}.scraps-vs{width:32px;height:32px;border-radius:11px;font-size:8px}.scrap-fighter{min-height:290px;border-radius:24px;padding-inline:5px}.scrap-sticker{font-size:8px}.scrap-tap{left:6px;right:6px}.worst-screen h1{font-size:clamp(58px,18vw,82px)}}
@media (prefers-reduced-motion:reduce){.scraps-slime,.worst-goo{animation:none}}

/* =============================================================
   V3.5 — FULLSCREEN PLAY MODE
   A flatter, tactile, playful visual system. The document itself
   never scrolls; long/native lists scroll only inside the content pane.
   ============================================================= */
:root{
  --bg:#f7f7f3;
  --bg-2:#efefe9;
  --surface:#ffffff;
  --surface-2:#f3f3ee;
  --surface-glass:rgba(255,255,255,.94);
  --text:#263238;
  --text-2:#59666c;
  --text-3:#899399;
  --line:#dde2df;
  --line-strong:#c7cfca;
  --brand:#52b788;
  --brand-dark:#338866;
  --brand-2:#5e91e8;
  --play-blue:#5e91e8;
  --play-green:#52b788;
  --play-coral:#f27972;
  --play-yellow:#f5c95e;
  --play-purple:#8b78d5;
  --bar:#f27972;
  --alon:#5e91e8;
  --violet:#8b78d5;
  --coral:#f27972;
  --mint:#52b788;
  --gold:#d9a82d;
  --danger:#df615e;
  --shadow-sm:0 3px 0 rgba(38,50,56,.08);
  --shadow:0 5px 0 rgba(38,50,56,.10),0 12px 26px rgba(38,50,56,.06);
  --shadow-lg:0 7px 0 rgba(38,50,56,.12),0 20px 45px rgba(38,50,56,.10);
}
html[data-theme="dark"]{
  --bg:#151917;--bg-2:#1c211e;--surface:#232925;--surface-2:#2b322d;
  --surface-glass:rgba(35,41,37,.95);--text:#f3f7f4;--text-2:#bdc8c0;--text-3:#89958d;
  --line:#38423b;--line-strong:#4a574e;--brand:#65c99a;--brand-dark:#3d8d69;
}
html,body,#app{height:100%;min-height:0;max-width:100vw;overflow:hidden!important;overscroll-behavior:none}
body{height:100dvh;background:var(--bg)!important;background-image:none!important}
#app{height:100dvh;position:relative}
.wrap{width:min(100% - 24px,760px)}
.shell{height:100dvh;min-height:0;padding-bottom:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}
.header{position:relative;top:auto;flex:0 0 auto;padding-top:env(safe-area-inset-top);background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid transparent}
.header-inner{height:60px}
.main{flex:1 1 auto;min-height:0;padding:8px 0 0;overflow:hidden}
.main>.main-wrap{height:100%;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:12px}
.main>.main-wrap::-webkit-scrollbar{display:none}
.bottom-nav{position:relative;inset:auto;bottom:auto;flex:0 0 auto;padding-bottom:var(--safe-bottom);background:var(--surface);border-top:2px solid var(--line);backdrop-filter:none;-webkit-backdrop-filter:none}
.bottom-grid{height:64px}
.nav-btn{height:64px;position:relative;gap:4px;font-size:10px;font-weight:800}
.nav-btn:before{content:"";position:absolute;top:5px;width:42px;height:34px;border-radius:14px;background:transparent;z-index:-1;transition:.16s ease}
.nav-btn.active{color:var(--brand-dark)}
.nav-btn.active:before{background:#dff3e8}
html[data-theme="dark"] .nav-btn.active:before{background:#294838}
.nav-btn.active .icon{transform:translateY(-1px) scale(1.06)}

/* Tactile visual language — flatter color, strong edges, press depth. */
.card,.glass-card,.name-card,.segmented,.search-box,.count-bubble{border-color:var(--line);box-shadow:var(--shadow-sm);background-image:none}
.btn,.score-btn,.fit-chip,.circle-action,.game-tile,.person-card,.nav-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.btn{border:2px solid var(--line);font-weight:850;letter-spacing:-.01em;box-shadow:0 4px 0 var(--line-strong);transform:translateY(0)}
.btn.primary{border-color:var(--brand-dark);background:var(--brand);color:#fff;box-shadow:0 4px 0 var(--brand-dark)}
.btn.secondary{border:2px solid var(--line);background:var(--surface);box-shadow:0 4px 0 var(--line-strong)}
.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--line-strong)}
.btn.primary:active:not(:disabled){box-shadow:0 1px 0 var(--brand-dark)}
.segmented{padding:4px;border:2px solid var(--line);box-shadow:none}
.segmented button{font-weight:850}.segmented button.active{border:2px solid var(--line);box-shadow:0 2px 0 var(--line-strong);background:var(--surface)}
.avatar{border:2px solid rgba(255,255,255,.86);box-shadow:0 3px 0 rgba(38,50,56,.13)}
.avatar.bar{background:var(--play-coral)}.avatar.alon{background:var(--play-blue)}
.icon-btn{border:2px solid var(--line);box-shadow:0 2px 0 var(--line-strong);background:var(--surface)}
.icon-btn:active{transform:translateY(1px);box-shadow:0 1px 0 var(--line-strong)}
.app-title-row{display:flex;align-items:center;gap:6px}
.header-charm{width:22px;height:22px;border-radius:8px;display:grid;place-items:center;background:#fff0c7;color:#a97510;border:1px solid #efd493;transform:rotate(-8deg)}
.header-charm .icon{width:13px;height:13px}

/* Primary interaction screens occupy one iPhone viewport — no page scroll. */
.shell-rate .main>.main-wrap{overflow:hidden;display:flex;flex-direction:column;padding-bottom:8px}
.shell-rate .rate-segmented{flex:0 0 auto;margin-bottom:8px}
.shell-rate .rate-toolbar{flex:0 0 auto;margin:0 2px 6px;min-height:28px}
.shell-rate .name-card{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:14px 16px;border:2px solid var(--line);box-shadow:0 5px 0 var(--line-strong),0 14px 24px rgba(38,50,56,.05);background:var(--surface)}
.shell-rate .name-card:before{display:none}
.rate-card-charm{position:absolute;right:13px;bottom:13px;width:42px;height:42px;border-radius:15px;display:grid;place-items:center;opacity:.12;transform:rotate(9deg);pointer-events:none;color:var(--brand-dark)}
.rate-card-charm .icon{width:30px;height:30px}.rate-card-charm.smart{color:var(--play-blue)}
.shell-rate .name-stage{padding:clamp(12px,2.8vh,25px) 8px clamp(8px,1.8vh,16px)}
.shell-rate .name-stage h1{font-size:clamp(43px,12vw,68px)}
.shell-rate .partner-reveal{min-height:48px;margin-bottom:4px}
.shell-rate .score-display{margin-bottom:3px}.shell-rate .score-display strong{font-size:31px}
.shell-rate .score-scale{margin:6px 2px 8px}.shell-rate .quick-grid{gap:6px}.shell-rate .score-btn{height:38px;border:2px solid var(--line);box-shadow:0 2px 0 var(--line-strong);background:var(--surface-2)}
.shell-rate .score-btn.active{background:var(--text);border-color:var(--text);box-shadow:0 2px 0 #111;color:#fff}
.shell-rate .comment-box{margin-top:8px}.shell-rate .comment-box textarea{min-height:44px;height:44px;resize:none}
.shell-rate .gender-fit{margin:7px 0 0;padding:8px}.shell-rate .gender-fit-title{margin-bottom:5px}.shell-rate .fit-chip{height:32px;border:1px solid var(--line)}
.shell-rate .save-note{min-height:13px;font-size:9px}
.shell-rate .nav-arrows{flex:0 0 auto;margin-top:7px;gap:7px}.shell-rate .nav-arrows .btn{min-height:43px}

/* Tinder: one contained stage, never causes document movement. */
.shell-rate.rate-quick .main>.main-wrap{overflow:hidden}
.shell-rate.rate-quick .quick-wrap{flex:1 1 auto;min-height:0;height:100%;justify-content:stretch;display:flex}
.shell-rate.rate-quick .quick-progress{flex:0 0 auto;margin:0 4px 6px}
.shell-rate.rate-quick .tinder-stack{flex:1 1 auto;min-height:0;height:auto;max-height:none}
.tinder-card{border:2px solid var(--line);background:var(--surface);box-shadow:0 6px 0 var(--line-strong),0 18px 30px rgba(38,50,56,.08);border-radius:28px;touch-action:pan-y!important}
.tinder-card:before{background:#e7f7ee}.tinder-card:after{background:#eef3ff}
.tinder-actions{flex:0 0 auto;margin-top:9px;gap:10px;grid-template-columns:48px 58px 48px 58px}
.circle-action{border:2px solid var(--line);box-shadow:0 4px 0 var(--line-strong);background:var(--surface)}
.circle-action.undo,.circle-action.super{width:48px;height:48px}.circle-action.nope,.circle-action.like{width:58px;height:58px}
.circle-action:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--line-strong)}
.quick-legend{flex:0 0 auto;margin-top:5px}.tinder-toy{background:#eef3ff;color:var(--play-blue);opacity:.9;border:2px solid #d7e4fb}

/* Games become the most expressive part of the product. */
.shell-dash.dash-games .main>.main-wrap{overflow:hidden;display:flex;flex-direction:column}
.shell-dash.dash-games .page-heading.compact{display:none}
.shell-dash.dash-games .dash-segmented{flex:0 0 auto;margin-bottom:8px}
.shell-dash.dash-games .games-hero{flex:0 0 auto;padding:12px 14px 13px;margin-bottom:8px}
.playful-hero{background:#f1fbf5;border:2px solid #cdebd9;box-shadow:0 4px 0 #b9dfc8;border-radius:24px;text-align:right}
html[data-theme="dark"] .playful-hero{background:#20352a;border-color:#315541;box-shadow:0 4px 0 #243f31}
.playful-hero:before,.playful-hero:after{display:none}
.playful-hero h2{font-size:25px;margin:2px 0}.playful-hero p{margin:0;font-size:10px;text-align:right}
.toy-rattle{display:none}
.game-guide{display:flex;align-items:center;gap:10px;margin-bottom:7px}
.guide-face{width:42px;height:42px;border-radius:15px;background:var(--play-yellow);color:#694f08;border:2px solid #d9ad39;box-shadow:0 3px 0 #c89929;display:grid;place-items:center;transform:rotate(-6deg)}
.guide-face .icon{width:23px;height:23px}.guide-bubble{display:flex;flex-direction:column}.guide-bubble strong{font-size:12px}.guide-bubble small{font-size:9px;color:var(--text-2);margin-top:2px}
.game-token-row{display:flex;gap:5px;margin-top:9px;overflow:hidden}.game-token-row span{display:flex;align-items:center;gap:4px;white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:5px 7px;font-size:8px;font-weight:800;color:var(--text-2)}.game-token-row .icon{width:12px;height:12px}
.game-lobby{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px}
.game-tile{min-height:0;height:100%;padding:11px 10px;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;align-items:center;text-align:center;gap:6px;border:2px solid var(--game-border,var(--line));border-radius:21px;background:var(--game-bg,var(--surface));box-shadow:0 4px 0 var(--game-shadow,var(--line-strong));overflow:hidden}
.game-tile.duel{--game-bg:#fff7df;--game-border:#f1d98d;--game-shadow:#dfbf5f}.game-tile.guess{--game-bg:#f1edff;--game-border:#d4c9f4;--game-shadow:#b5a4e4}.game-tile.higher{--game-bg:#eaf5ff;--game-border:#c8ddf4;--game-shadow:#9fc3e8}.game-tile.scraps{--game-bg:#eff4df;--game-border:#d4dfa6;--game-shadow:#b3c575;background:var(--game-bg)}
html[data-theme="dark"] .game-tile{filter:saturate(.8) brightness(.82)}
.game-tile:after{display:none}.game-tile .game-icon{width:43px;height:43px;border-radius:15px;margin:0 auto;background:rgba(255,255,255,.72);border:2px solid rgba(38,50,56,.08);box-shadow:0 2px 0 rgba(38,50,56,.10);font-size:21px}.game-tile .game-icon .icon{width:22px;height:22px}
.game-tile small{font-size:7px}.game-tile strong{font-size:clamp(14px,4vw,18px);line-height:1.06;margin:2px 0}.game-tile p{font-size:8px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.play-pill{justify-self:center;padding:6px 10px;border-radius:10px;background:var(--text);color:var(--surface);font-size:8px;box-shadow:0 2px 0 rgba(0,0,0,.18)}
.game-tile:not(:disabled):active{transform:translateY(3px)!important;box-shadow:0 1px 0 var(--game-shadow,var(--line-strong))}

/* Active game = fixed game board inside viewport. */
.shell-dash.dash-games[class*="game-"] .games-hero{display:none}
.shell-dash.dash-games[class*="game-"] .game-shell,
.shell-dash.dash-games.game-guess .game-view,
.shell-dash.dash-games.game-higher .game-view{flex:1 1 auto;min-height:0;height:100%;overflow:hidden;padding-bottom:44px}
.game-shell{height:100%;min-height:0;padding-bottom:44px}.game-shell>div:first-child{height:100%;min-height:0}
.arena-start,.champion-screen,.arena-round,.scraps-start,.worst-screen{height:100%;min-height:0!important;border-radius:24px}
.scraps-shell{min-height:0;height:100%}.arena-start{min-height:0}
.game-floating-back{position:absolute;bottom:4px;left:50%;z-index:10}

/* Reduce the old AI-ish gradients across the main product. */
.name-card,.premium-card,.review-card,.all-row,.task-card,.top-name-card{background:var(--surface)!important;background-image:none!important}
.review-reason{background:#fff6d9;border:1px solid #f0df9e}.blind-question{background:#f1edff!important;border:1px solid #d8cff4}
html[data-theme="dark"] .review-reason{background:#3b341e;border-color:#5c5130}html[data-theme="dark"] .blind-question{background:#302b42!important;border-color:#4b4367}

/* Short iPhones: compress instead of scrolling the rating/game board. */
@media(max-height:760px){
  .header-inner{height:54px}.bottom-grid,.nav-btn{height:58px}.main{padding-top:6px}
  .shell-rate .rate-segmented{min-height:0}.rate-segmented button{min-height:37px}.shell-rate .rate-toolbar{min-height:23px}
  .shell-rate .name-card{padding:10px 13px}.shell-rate .name-stage{padding:7px 5px 5px}.shell-rate .name-stage h1{font-size:clamp(37px,10vw,54px)}
  .shell-rate .partner-reveal{min-height:39px;margin-bottom:2px}.shell-rate .blind-question{min-height:37px;padding:6px 9px}.shell-rate .score-display strong{font-size:27px}
  .shell-rate .score-btn{height:34px}.shell-rate .comment-box textarea{height:38px;min-height:38px}.shell-rate .nav-arrows .btn{min-height:39px}
  .shell-rate.rate-quick .tinder-actions{margin-top:6px}.circle-action.undo,.circle-action.super{width:43px;height:43px}.circle-action.nope,.circle-action.like{width:52px;height:52px}.tinder-actions{grid-template-columns:43px 52px 43px 52px}
  .playful-hero{padding-block:8px!important}.game-guide{margin-bottom:4px}.guide-face{width:35px;height:35px;border-radius:12px}.guide-face .icon{width:19px;height:19px}.playful-hero h2{font-size:21px}.game-token-row{margin-top:6px}
  .game-tile{padding:7px}.game-tile .game-icon{width:36px;height:36px;border-radius:12px}.game-tile strong{font-size:14px}.game-tile p{font-size:7px}
}

/* Very narrow devices retain two game columns without horizontal overflow. */
@media(max-width:360px){
  .wrap{width:min(100% - 16px,760px)}.game-lobby{gap:6px}.game-tile{padding:7px 5px}.game-tile strong{font-size:13px}.game-token-row span{padding-inline:5px;font-size:7px}.header-actions{gap:3px}.icon-btn{width:38px;height:38px}
}

/* V3.6 — native scroll rails + playful polish */
html,body,#app{width:100%;max-width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
body{min-height:100dvh;height:100dvh;position:fixed;inset:0;background:var(--bg)}
#app{position:fixed;inset:0}
.shell{height:100dvh;min-height:0;max-width:100%;padding-bottom:0;overflow:hidden;display:flex;flex-direction:column}
.header{position:relative;top:auto;flex:0 0 auto;overflow:hidden}
.main{flex:1 1 auto;min-height:0;max-width:100%;padding:8px 0;overflow:hidden}
.bottom-nav{position:relative;bottom:auto;inset:auto;flex:0 0 auto;padding-bottom:var(--safe-bottom)}
.main>.main-wrap{height:100%;min-height:0;max-width:100%;overflow-x:hidden}

/* Only the middle content rail is allowed to scroll vertically. */
.shell-review .main>.main-wrap,
.shell-all .main>.main-wrap,
.shell-dash.dash-overview .main>.main-wrap,
.shell-dash.dash-map .main>.main-wrap{
  overflow-y:auto;overflow-x:hidden;touch-action:pan-y;overscroll-behavior-y:contain;overscroll-behavior-x:none;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-behavior:smooth;padding-bottom:10px;
}
.shell-review .main>.main-wrap::-webkit-scrollbar,
.shell-all .main>.main-wrap::-webkit-scrollbar,
.shell-dash.dash-overview .main>.main-wrap::-webkit-scrollbar,
.shell-dash.dash-map .main>.main-wrap::-webkit-scrollbar{display:none}
.shell-rate .main>.main-wrap,.shell-dash.dash-games .main>.main-wrap{overflow:hidden!important;touch-action:none}
.shell-rate.rate-quick .main>.main-wrap{touch-action:none}

/* Lists follow one clean vertical rail; diagonal drags cannot move the page sideways. */
.review-grid,.name-list,.change-list,.trend-list,.activity-grid,.cute-stats{max-width:100%;overflow:visible;touch-action:pan-y}
.shell-review .review-card,.shell-all .name-row{scroll-snap-align:start;scroll-margin-top:6px}
.shell-review .main>.main-wrap{scroll-snap-type:y proximity}
.shell-all .main>.main-wrap{scroll-snap-type:y proximity}

/* Intentional horizontal rails are isolated, snapped, and cannot drag the app with them. */
.chips,.top-scroll{max-width:100%;overflow-x:auto!important;overflow-y:hidden!important;touch-action:pan-x;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.chips>* ,.top-scroll>*{scroll-snap-align:start}
.chips::-webkit-scrollbar,.top-scroll::-webkit-scrollbar{display:none}

/* Sheets behave like native bottom sheets, not a loose document. */
.sheet-backdrop,.dialog-backdrop{overflow:hidden;overscroll-behavior:none}
.edit-sheet,.dialog,.info-sheet{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.edit-sheet::-webkit-scrollbar,.dialog::-webkit-scrollbar,.info-sheet::-webkit-scrollbar{display:none}

/* Prevent accidental width growth from long names/transforms. */
.name-card,.tinder-stack,.tinder-card,.review-card,.name-row,.section-block,.game-shell,.game-view,.game-lobby,.game-tile,.battle-stage,.scraps-battle{max-width:100%;min-width:0}
.tinder-card,.fighter-card,.scrap-fighter{contain:layout paint;will-change:transform}

/* Progress / reward layer in normal product screens. */
.rate-meta{display:flex;align-items:center;gap:7px}.mini-xp,.quick-xp{display:inline-flex;align-items:center;gap:4px;color:#497259;font-size:9px;font-weight:900;white-space:nowrap}.mini-xp .icon,.quick-xp .icon{width:13px;height:13px}
.play-meter{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:9px;border:2px solid #cdebd9;background:#fff;border-radius:18px;padding:8px 10px;box-shadow:0 3px 0 #b9dfc8;color:#2c5740}.play-meter.compact{margin-top:10px;padding:7px 9px}.play-bottle{width:34px;height:34px;border-radius:12px;background:#e6f7ec;display:grid;place-items:center;color:#3d8d61}.play-bottle .icon{width:20px;height:20px}.play-meter-copy{min-width:0}.play-meter-copy>div{display:flex;justify-content:space-between;gap:7px;align-items:center}.play-meter-copy strong{font-size:10px}.play-meter-copy small{font-size:8px;opacity:.68}.play-track{display:block;height:7px;background:#dff0e5;border-radius:999px;margin-top:4px;overflow:hidden}.play-track i{display:block;height:100%;border-radius:inherit;background:#58b77b;transition:width .28s cubic-bezier(.2,.8,.2,1)}.play-stars{font-size:10px;font-weight:950;color:#a97908;background:#fff4c6;border:1px solid #ebd47c;border-radius:999px;padding:5px 7px;white-space:nowrap}
html[data-theme="dark"] .play-meter{background:#20352a;border-color:#315541;box-shadow:0 3px 0 #243f31;color:#c9f1d8}html[data-theme="dark"] .play-bottle{background:#294735}html[data-theme="dark"] .play-stars{background:#3f3518;border-color:#625424;color:#f0cf6b}

/* Game feedback now has a mascot/reward beat, not just text changing. */
.game-reaction{margin-top:11px;display:flex;align-items:center;justify-content:center;gap:8px;animation:rewardPop .28s cubic-bezier(.2,.9,.25,1.25)}.reaction-buddy{width:37px;height:37px;border-radius:13px;display:grid;place-items:center;border:2px solid var(--line);box-shadow:0 3px 0 var(--line-strong);background:#fff7df;color:#9d7110;transform:rotate(-6deg)}.reaction-buddy .icon{width:20px;height:20px}.game-reaction.win .reaction-buddy,.higher-reveal.win .reaction-buddy{background:#e7f7ee;color:#39845a;border-color:#b8dfc6}.game-reaction.miss .reaction-buddy,.higher-reveal.miss .reaction-buddy{background:#f5f1ea;color:#8c7b65}.higher-reveal{align-items:center}.higher-reveal .reaction-buddy{margin-bottom:5px}.game-score strong{animation:scorePop .24s cubic-bezier(.2,.9,.25,1.25)}

/* More tactile game boards. */
.fighter-card,.scrap-fighter,.guess-option,.side-choice,.game-tile{transform:translateZ(0)}
.fighter-card:hover,.scrap-fighter:hover{filter:saturate(1.04)}
.arena-progress span,.scraps-progress span{position:relative;overflow:hidden}.arena-progress span:after,.scraps-progress span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);transform:translateX(-100%);animation:meterShine 2.2s ease-in-out infinite}
.playful-hero{position:relative;overflow:hidden}.playful-hero:after{content:""!important;display:block!important;position:absolute;width:84px;height:84px;border-radius:24px;left:-28px;bottom:-42px;background:#fff4c6;border:2px solid #ecd77f;transform:rotate(18deg);opacity:.72;pointer-events:none}

/* Stronger active nav: tiny reward-like lift without turning the whole product into a toy. */
.nav-btn{position:relative}.nav-btn.active:before{content:"";position:absolute;top:5px;width:34px;height:4px;border-radius:999px;background:var(--brand);animation:navLand .22s ease}.nav-btn:active{transform:translateY(1px)}

/* Slightly richer regular rating card while staying clean. */
.shell-rate .name-card{background:linear-gradient(180deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 96%,#e7f7ee 4%) 100%)!important}
.shell-rate .name-card-top{padding-inline-start:2px}.shell-rate .save-note{font-weight:800;color:#4b8560;min-height:14px}

@keyframes rewardPop{0%{transform:scale(.86);opacity:0}70%{transform:scale(1.04)}100%{transform:scale(1);opacity:1}}
@keyframes scorePop{0%{transform:scale(.78)}70%{transform:scale(1.16)}100%{transform:scale(1)}}
@keyframes meterShine{0%,45%{transform:translateX(-120%)}75%,100%{transform:translateX(120%)}}
@keyframes navLand{from{transform:scaleX(.35);opacity:0}to{transform:scaleX(1);opacity:1}}

@media(max-height:760px){.main{padding-block:5px}.play-meter.compact{margin-top:6px}.rate-meta{gap:4px}.mini-xp{font-size:8px}.play-meter{padding-block:6px}.game-reaction{margin-top:6px}.reaction-buddy{width:32px;height:32px;border-radius:11px}}

/* =========================================================
   V4 — THE LIVING NAMES APP
   Daily Journey · Coins · Name Pulse · Collections · Arcade
   ========================================================= */

/* V4 palette: warm, tactile and authored — not generic gradient UI. */
:root{
  --v4-green:#58b77b;--v4-green-dark:#3d8e5d;--v4-green-soft:#e8f7ed;
  --v4-blue:#5d8fea;--v4-blue-dark:#3f70c9;--v4-blue-soft:#eaf2ff;
  --v4-yellow:#f2c94c;--v4-yellow-dark:#c89c20;--v4-yellow-soft:#fff7da;
  --v4-coral:#ef786f;--v4-coral-dark:#c95751;--v4-coral-soft:#fff0ed;
  --v4-purple:#8b75d8;--v4-purple-dark:#6854b9;--v4-purple-soft:#f1edff;
  --v4-ink:#27313a;
}
html[data-theme="dark"]{--v4-green-soft:#203a2a;--v4-blue-soft:#202f49;--v4-yellow-soft:#3c341b;--v4-coral-soft:#412622;--v4-purple-soft:#302946}
.header-wallet{display:inline-flex;align-items:center;margin-inline-start:5px;font-weight:800;color:var(--text-2);font-size:9px;letter-spacing:-.02em}

/* Server-backed progress meter. */
.play-meter{grid-template-columns:38px minmax(0,1fr) auto!important}
.play-meter .play-bottle{position:relative;overflow:hidden}
.play-meter .play-bottle>i{position:absolute;inset:auto 5px 4px;height:calc(var(--fill,0%)*.22);max-height:22px;border-radius:6px;background:var(--v4-green);opacity:.24;transition:height .32s cubic-bezier(.2,.8,.2,1)}
.play-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.play-copy strong{font-size:10px}.play-copy span{font-size:8px;color:var(--text-2)}
.play-meter .play-stars{font-size:9px}

/* Daily journey ribbon on rating screens. */
.journey-strip{flex:0 0 auto;min-height:54px;margin-bottom:7px;border:2px solid #cbe6d4;border-radius:20px;background:var(--v4-green-soft);box-shadow:0 3px 0 #b6d8c2;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:9px;align-items:center;padding:7px 9px;overflow:hidden;position:relative}
.journey-strip:after{content:"";position:absolute;width:64px;height:64px;border:2px solid rgba(88,183,123,.14);border-radius:20px;left:-34px;top:-28px;transform:rotate(22deg);pointer-events:none}
.bottle-buddy{position:relative;width:38px;height:38px;border-radius:14px;background:#fff;border:2px solid #bee0ca;box-shadow:0 3px 0 #a9d3b8;display:grid;place-items:center;color:var(--v4-green-dark);transform:rotate(-5deg)}
.bottle-buddy .icon{width:22px;height:22px}.bottle-buddy i{position:absolute;bottom:-2px;right:-2px;background:var(--v4-yellow);color:#5e4a10;border:1px solid #d9af31;border-radius:999px;font-size:6px;font-style:normal;padding:1px 3px}
.journey-copy{min-width:0}.journey-copy small{display:block;font-size:8px;font-weight:850;color:var(--v4-green-dark)}.journey-copy strong{display:block;font-size:12px;margin-top:1px}.journey-progress{height:6px;border-radius:999px;background:rgba(88,183,123,.18);margin-top:4px;overflow:hidden}.journey-progress span{display:block;height:100%;border-radius:inherit;background:var(--v4-green);transition:width .28s ease}
.journey-wallet{display:flex;flex-direction:column;align-items:flex-end;gap:2px;white-space:nowrap}.journey-wallet b{font-size:10px;color:#805f08;background:rgba(255,255,255,.65);padding:3px 6px;border-radius:999px}.journey-wallet span{font-size:8px;font-weight:850;color:var(--text-2)}
html[data-theme="dark"] .journey-strip{border-color:#315941;box-shadow:0 3px 0 #244531}html[data-theme="dark"] .bottle-buddy{background:#284634}

/* Daily completion = reward moment, not a dead end. */
.daily-complete{flex:1 1 auto;min-height:0;border:2px solid #efd77b;background:var(--v4-yellow-soft);border-radius:28px;box-shadow:0 5px 0 #d9ba4c;padding:clamp(16px,3vh,28px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;position:relative}
.daily-complete:before,.daily-complete:after{content:"★";position:absolute;color:#e8bd35;opacity:.28;font-size:54px}.daily-complete:before{right:6%;top:6%;transform:rotate(18deg)}.daily-complete:after{left:7%;bottom:8%;font-size:34px;transform:rotate(-14deg)}
.celebrate-bottle{width:76px;height:76px;border-radius:25px;background:#fff;border:3px solid #ead06d;box-shadow:0 6px 0 #d8b84a;display:grid;place-items:center;color:var(--v4-green-dark);position:relative;animation:rewardPop .35s cubic-bezier(.2,.9,.25,1.25)}.celebrate-bottle .icon{width:38px;height:38px}.celebrate-bottle i{position:absolute;top:-9px;left:-5px;color:#d79c0a;font-size:22px;font-style:normal}
.daily-complete h1{font-size:clamp(27px,8vw,40px);margin:6px 0 4px;letter-spacing:-.045em}.daily-complete p{max-width:390px;font-size:11px;line-height:1.55;color:var(--text-2);margin:0 0 13px}.daily-rewards{display:flex;gap:7px;margin-bottom:14px}.daily-rewards span{background:rgba(255,255,255,.72);border:1px solid #ead47f;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900}.daily-complete .btn{width:min(100%,340px);margin-top:7px}

/* Journey hub — the product now asks what you feel like doing. */
.journey-hub{border:2px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:0 5px 0 var(--line-strong);padding:14px;margin-bottom:14px;overflow:hidden;position:relative}
.journey-hub:after{content:"";position:absolute;width:120px;height:120px;border-radius:35px;background:var(--v4-green-soft);left:-60px;top:-58px;transform:rotate(24deg);z-index:0}
.journey-welcome{display:flex;justify-content:space-between;align-items:center;gap:10px;position:relative;z-index:1;margin-bottom:12px}.journey-welcome h2{font-size:25px;line-height:1;margin:2px 0 4px;letter-spacing:-.05em}.journey-welcome p{font-size:10px;color:var(--text-2);margin:0}.journey-crew{width:58px;height:58px;border-radius:20px;background:var(--v4-yellow-soft);border:2px solid #ead477;box-shadow:0 4px 0 #d7b947;display:grid;place-items:center;position:relative;transform:rotate(5deg)}.journey-crew .icon{width:30px;height:30px;color:#9e7210}.journey-crew i{position:absolute;font-size:7px;font-style:normal;bottom:4px;right:5px;background:#fff;border-radius:999px;padding:1px 3px}
.journey-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative;z-index:1}.journey-action{min-width:0;border:2px solid var(--line);border-radius:19px;background:var(--surface-2);box-shadow:0 3px 0 var(--line-strong);padding:9px;display:grid;grid-template-columns:36px minmax(0,1fr) 14px;gap:7px;align-items:center;text-align:right;transition:transform .12s ease,box-shadow .12s ease}.journey-action:active{transform:translateY(2px);box-shadow:0 1px 0 var(--line-strong)}.journey-action-icon{width:35px;height:35px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);font-size:17px}.journey-action-icon .icon{width:18px;height:18px}.journey-action>span:nth-child(2){min-width:0;display:flex;flex-direction:column}.journey-action small{height:11px;font-size:6px;font-weight:950;letter-spacing:.08em;color:var(--text-3)}.journey-action strong{font-size:11px;line-height:1.1}.journey-action em{font-size:7px;color:var(--text-2);font-style:normal;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journey-action>b .icon{width:12px;height:12px}.journey-action.daily{background:var(--v4-green-soft);border-color:#c7e4d1}.journey-action.smart{background:var(--v4-coral-soft);border-color:#f0c8c4}.journey-action.review{background:var(--v4-yellow-soft);border-color:#ebda95}.journey-action.arcade{background:var(--v4-blue-soft);border-color:#c9d9f7}.journey-action.discover{grid-column:1/-1;background:var(--v4-purple-soft);border-color:#d6cef3}
.journey-bank{position:relative;z-index:1;margin-top:9px;border-top:1px solid var(--line);padding-top:9px;display:grid;grid-template-columns:auto auto auto 1fr;gap:6px;align-items:center}.journey-bank>div{display:grid;grid-template-columns:auto auto;column-gap:3px;align-items:center}.journey-bank>div span{grid-row:1/3;font-size:15px}.journey-bank>div strong{font-size:10px}.journey-bank>div small{font-size:6px;color:var(--text-3)}.journey-bank>button{justify-self:end;border:0;background:var(--v4-green);color:white;border-radius:11px;padding:7px 9px;font-size:8px;font-weight:900;box-shadow:0 2px 0 var(--v4-green-dark)}.journey-bank>button .icon{width:10px;height:10px}

/* Weekly welcome / chest. */
.weekly-overlay{position:fixed;inset:0;z-index:160;background:rgba(22,24,29,.52);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px);display:grid;place-items:center;padding:calc(18px + env(safe-area-inset-top)) 16px calc(18px + env(safe-area-inset-bottom));overflow:hidden}
.weekly-card{width:min(100%,430px);max-height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none;position:relative;border:3px solid #e5c65c;border-radius:34px;background:var(--v4-yellow-soft);box-shadow:0 8px 0 #cfae3e,0 30px 80px rgba(0,0,0,.25);padding:22px 18px;text-align:center;animation:weeklyLand .45s cubic-bezier(.18,.92,.22,1.12)}
.weekly-rays{position:absolute;inset:-60%;background:repeating-conic-gradient(from 0deg,rgba(242,201,76,.14) 0 10deg,transparent 10deg 22deg);animation:slowSpin 18s linear infinite;pointer-events:none}.weekly-card>*:not(.weekly-rays){position:relative;z-index:1}.weekly-card .chest{font-size:54px;filter:drop-shadow(0 5px 0 rgba(110,80,0,.15));animation:chestBounce 1.6s ease-in-out infinite}.weekly-kicker{font-size:9px;font-weight:1000;letter-spacing:.16em;color:#9e7210;margin-top:6px}.weekly-card h1{font-size:32px;letter-spacing:-.05em;margin:3px 0}.weekly-card>p{font-size:10px;color:var(--text-2);max-width:290px;margin:0 auto 14px;line-height:1.5}.weekly-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.weekly-stats div{background:rgba(255,255,255,.65);border:1px solid #ead680;border-radius:15px;padding:9px 5px}.weekly-stats strong{display:block;font-size:19px}.weekly-stats span{display:block;font-size:7px;color:var(--text-2)}.coin-burst{margin:13px auto 14px;display:flex;align-items:center;justify-content:center;gap:6px}.coin-burst span{font-size:27px;animation:coinFlip 1.2s ease infinite}.coin-burst strong{font-size:30px;color:#9d700b}.coin-burst small{font-size:9px;font-weight:900;color:#9d700b}.weekly-card .btn{width:100%}

/* Dashboard now has four clean destinations. */
.dash-segmented.v4{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.dash-segmented.v4 button{font-size:10px;padding-inline:4px}
.shell-dash.dash-pulse .main>.main-wrap{overflow-y:auto;overflow-x:hidden;touch-action:pan-y;overscroll-behavior-y:contain;overscroll-behavior-x:none;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:10px}.shell-dash.dash-pulse .main>.main-wrap::-webkit-scrollbar{display:none}

/* Name Pulse. */
.pulse-hero{border:2px solid #c9d9f7;background:var(--v4-blue-soft);box-shadow:0 4px 0 #aac3ed;border-radius:27px;padding:14px;display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:10px;overflow:hidden;position:relative}.pulse-hero:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:rgba(93,143,234,.08);left:-35px;top:-38px}.pulse-orb{width:48px;height:48px;border-radius:16px;background:#fff;border:2px solid #b9cff5;box-shadow:0 3px 0 #99b7e9;display:grid;place-items:center;font-size:25px;color:var(--v4-blue-dark);font-weight:900;transform:rotate(-4deg)}.pulse-hero h2{font-size:21px;line-height:1.05;margin:2px 0 3px;letter-spacing:-.045em}.pulse-hero p{font-size:8px;color:var(--text-2);margin:0;line-height:1.4}.pulse-year{text-align:center;background:rgba(255,255,255,.65);border:1px solid #c9daf7;border-radius:14px;padding:7px}.pulse-year strong{display:block;font-size:16px}.pulse-year span{font-size:6px;color:var(--text-2)}
.collection-rail{display:flex;gap:7px;max-width:100%;overflow-x:auto;overflow-y:hidden;touch-action:pan-x;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 1px 8px}.collection-rail::-webkit-scrollbar{display:none}.collection-chip{scroll-snap-align:start;flex:0 0 auto;border:2px solid var(--line);background:var(--surface);box-shadow:0 2px 0 var(--line-strong);border-radius:999px;padding:7px 10px;font-size:9px;font-weight:900;white-space:nowrap}.collection-chip span{margin-left:3px}.collection-chip.active{background:var(--v4-blue);border-color:var(--v4-blue-dark);box-shadow:0 2px 0 var(--v4-blue-dark);color:#fff}
.pulse-list{display:flex;flex-direction:column;gap:7px;max-width:100%;overflow:hidden}.pulse-row{width:100%;min-width:0;border:2px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 2px 0 var(--line-strong);padding:8px;display:grid;grid-template-columns:34px minmax(0,1fr) 62px;gap:8px;align-items:center;text-align:right}.pulse-rank{font-size:9px;font-weight:950;color:var(--v4-blue-dark);background:var(--v4-blue-soft);border-radius:10px;padding:6px 2px;text-align:center}.pulse-row-main{min-width:0}.pulse-row-main>div{display:flex;align-items:baseline;gap:5px;min-width:0}.pulse-row-main strong{font-size:13px}.pulse-row-main span{font-size:7px;color:var(--text-2);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mini-spark{width:100%;height:31px;margin-top:3px;overflow:visible}.mini-spark path{fill:none;stroke:var(--v4-blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.mini-spark.tiny{height:24px;width:85px}.mini-spark.profile{height:58px;margin:10px 0}.pulse-row-stat{text-align:left}.pulse-row-stat strong{display:block;font-size:12px}.pulse-row-stat small{font-size:7px;color:var(--text-2);white-space:nowrap}.pulse-source{font-size:7px;color:var(--text-3);text-align:center;padding:10px 0 2px}
.pulse-chip{margin:7px auto 0;max-width:190px;border:1px solid #cad9f4;background:var(--v4-blue-soft);border-radius:13px;padding:4px 7px;display:flex;align-items:center;gap:7px;color:var(--v4-blue-dark)}.pulse-chip span{font-size:7px;font-weight:900;white-space:nowrap}.pulse-chip .mini-spark path{stroke:currentColor}
.pulse-profile{border:2px solid #cad9f4;background:var(--v4-blue-soft);border-radius:20px;padding:11px;margin-bottom:10px}.pulse-profile-top{display:flex;align-items:center;justify-content:space-between}.pulse-profile-top small{display:block;font-size:7px;color:var(--v4-blue-dark);font-weight:900}.pulse-profile-top strong{display:block;font-size:15px;margin-top:2px}.pulse-profile-top>b{font-size:17px;color:var(--v4-blue-dark);background:#fff;border:1px solid #c5d7f5;border-radius:11px;padding:5px 7px}.pulse-numbers{display:grid;grid-template-columns:1fr 1fr;gap:5px}.pulse-numbers span{background:rgba(255,255,255,.65);border:1px solid #d0ddf5;border-radius:11px;padding:6px;font-size:7px;color:var(--text-2)}.pulse-numbers b{font-size:11px;color:var(--text);margin-left:2px}.source-note{display:block;text-align:center;font-size:6px;color:var(--text-3);margin-top:7px}

/* V4 arcade — 7 games live inside one clean vertical rail. */
.game-lobby.v4-games{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:minmax(132px,auto);overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y;overscroll-behavior-y:contain;scroll-snap-type:y proximity;scrollbar-width:none;padding:1px 2px 8px;align-content:start}.game-lobby.v4-games::-webkit-scrollbar{display:none}.game-lobby.v4-games .game-tile{height:auto;min-height:132px;scroll-snap-align:start}.game-tile.trend{--game-bg:#e8f7ed;--game-border:#bee3cb;--game-shadow:#91caa6}.game-tile.time{--game-bg:#fff1e9;--game-border:#f1c9b2;--game-shadow:#dda786}.game-tile.mystery{--game-bg:#eef2ff;--game-border:#cbd5f3;--game-shadow:#aab8e5}
.shell-dash.dash-games.game-trend .game-lobby,.shell-dash.dash-games.game-time .game-lobby,.shell-dash.dash-games.game-mystery .game-lobby{display:none}
.shell-dash.dash-games.game-trend .trend-game-stage,.shell-dash.dash-games.game-time .time-stage,.shell-dash.dash-games.game-mystery .mystery-stage{flex:1 1 auto;min-height:0;height:100%;overflow:hidden;padding-bottom:46px}
.game-view,.trend-game-stage,.time-stage,.mystery-stage{max-width:100%;min-width:0}

/* Trend or Trash. */
.trend-game-stage{display:flex;flex-direction:column;justify-content:center;gap:12px}.trend-duo{display:grid;grid-template-columns:1fr 34px 1fr;gap:7px;align-items:stretch;min-height:0}.trend-duo>b{align-self:center;justify-self:center;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--v4-yellow);border:2px solid var(--v4-yellow-dark);box-shadow:0 3px 0 var(--v4-yellow-dark);font-size:9px;z-index:2}.trend-fighter{min-width:0;border:2px solid #bfe1ca;background:var(--v4-green-soft);box-shadow:0 5px 0 #9cc8ab;border-radius:24px;padding:14px 9px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;color:var(--text);transition:.15s}.trend-fighter strong{font-size:clamp(24px,8vw,38px);letter-spacing:-.05em}.trend-fighter .mini-spark{height:60px}.trend-fighter span{font-size:9px;font-weight:850}.trend-fighter.correct{background:#daf4e4;border-color:#85c69d;box-shadow:0 5px 0 #62aa7d}.trend-fighter.wrong{background:#fff0ed;border-color:#e9aaa4;box-shadow:0 5px 0 #cc7e77}.trend-fighter.muted{opacity:.56}.game-reveal{border:2px solid var(--line);background:var(--surface);box-shadow:0 3px 0 var(--line-strong);border-radius:16px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:900}.game-reveal .btn{min-height:35px;padding:6px 12px}

/* Time machine. */
.time-stage{display:flex;flex-direction:column;justify-content:center;gap:10px;position:relative}.time-year{align-self:center;font-size:31px;font-weight:1000;letter-spacing:-.06em;color:var(--v4-coral-dark);background:var(--v4-coral-soft);border:2px solid #efc5c0;box-shadow:0 3px 0 #dba39d;border-radius:17px;padding:6px 13px;transform:rotate(-2deg)}.time-duo{display:grid;grid-template-columns:1fr 1fr;gap:9px}.time-card{min-height:200px;border:2px solid #efc7b0;background:#fff2eb;border-radius:25px;box-shadow:0 5px 0 #dda98b;padding:13px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text)}.time-card small{font-size:9px;color:var(--v4-coral-dark);font-weight:950}.time-card strong{font-size:clamp(27px,9vw,42px);letter-spacing:-.05em;margin:13px 0}.time-card span{font-size:9px;font-weight:850}.time-card.correct{background:#e2f5e9;border-color:#9bcfac;box-shadow-color:#75b78b}.time-card.wrong{opacity:.62}

/* Mystery name. */
.mystery-stage{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px}.mystery-baby{width:74px;height:74px;border-radius:25px;background:var(--v4-purple-soft);border:2px solid #d3c9f0;box-shadow:0 5px 0 #b8a9e2;display:grid;place-items:center;color:var(--v4-purple-dark);position:relative;transform:rotate(-4deg)}.mystery-baby .icon{width:36px;height:36px}.mystery-baby i{position:absolute;top:-10px;left:-5px;background:var(--v4-yellow);border:2px solid var(--v4-yellow-dark);border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-style:normal;font-weight:1000}.clue-stack{width:100%;display:flex;flex-direction:column;gap:5px}.clue{border:1px solid #d5cef0;background:var(--v4-purple-soft);border-radius:13px;padding:7px 9px;font-size:9px;display:flex;align-items:center;gap:7px}.clue span{width:20px;height:20px;border-radius:8px;background:#fff;border:1px solid #d7cff1;display:grid;place-items:center;font-size:7px;font-weight:950;color:var(--v4-purple-dark)}.mystery-options{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px}.mystery-options button{min-height:42px;border:2px solid var(--line);background:var(--surface);box-shadow:0 2px 0 var(--line-strong);border-radius:13px;font-weight:900}.mystery-options button.correct{background:#e3f5e9;border-color:#9acfae}.mystery-win{display:flex;align-items:center;gap:8px;width:100%;border-radius:15px;background:var(--v4-yellow-soft);border:2px solid #e9d27a;padding:7px}.mystery-win strong{font-size:16px}.mystery-win span{font-size:7px;color:var(--text-2);flex:1}.mystery-win .btn{min-height:34px;padding:6px 9px;font-size:8px}

/* No sideways drift anywhere in V4 additions. */
.journey-hub,.journey-strip,.daily-complete,.pulse-hero,.pulse-list,.pulse-row,.pulse-profile,.weekly-card,.trend-game-stage,.time-stage,.mystery-stage,.game-lobby.v4-games{max-width:100%;min-width:0}
.shell-dash.dash-overview .journey-actions,.shell-dash.dash-overview .journey-action{touch-action:manipulation}

@keyframes weeklyLand{0%{transform:translateY(40px) scale(.86);opacity:0}70%{transform:translateY(-3px) scale(1.02)}100%{transform:none;opacity:1}}
@keyframes slowSpin{to{transform:rotate(360deg)}}
@keyframes chestBounce{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-6px) rotate(3deg)}}
@keyframes coinFlip{0%,100%{transform:rotateY(0)}50%{transform:rotateY(180deg)}}

@media(max-height:760px){
  .journey-strip{min-height:45px;padding:5px 7px;margin-bottom:5px;border-radius:16px}.bottle-buddy{width:32px;height:32px;border-radius:11px}.bottle-buddy .icon{width:18px;height:18px}.journey-copy strong{font-size:10px}.journey-copy small,.journey-wallet span{font-size:7px}.journey-progress{height:5px}.journey-wallet b{font-size:8px;padding:2px 5px}
  .shell-rate .rate-segmented{margin-bottom:5px}.daily-complete{padding:11px}.celebrate-bottle{width:58px;height:58px;border-radius:19px}.daily-complete h1{font-size:25px}.daily-complete p{font-size:9px;margin-bottom:8px}.daily-rewards{margin-bottom:7px}.daily-complete .btn{min-height:38px}
  .games-hero .play-meter{display:none}.game-lobby.v4-games{grid-auto-rows:minmax(112px,auto)}.game-lobby.v4-games .game-tile{min-height:112px}.trend-fighter{padding-block:9px}.trend-fighter strong{font-size:25px}.trend-fighter .mini-spark{height:42px}.time-card{min-height:156px}.mystery-baby{width:57px;height:57px;border-radius:19px}.mystery-baby .icon{width:28px;height:28px}.clue{padding-block:5px}
}
@media(max-width:370px){
  .journey-hub{padding:10px}.journey-welcome h2{font-size:21px}.journey-crew{width:48px;height:48px;border-radius:16px}.journey-actions{gap:6px}.journey-action{grid-template-columns:31px minmax(0,1fr) 10px;padding:7px 6px}.journey-action-icon{width:30px;height:30px}.journey-action strong{font-size:10px}.journey-bank{gap:4px}.journey-bank>button{padding-inline:6px}
  .pulse-hero{grid-template-columns:42px minmax(0,1fr) 48px;padding:10px}.pulse-orb{width:40px;height:40px;border-radius:13px}.pulse-hero h2{font-size:18px}.pulse-row{grid-template-columns:30px minmax(0,1fr) 54px;padding-inline:6px}.pulse-row-main strong{font-size:12px}
  .game-lobby.v4-games{gap:6px}.game-lobby.v4-games .game-tile{min-height:108px}.game-tile strong{font-size:12px}.game-tile p{font-size:6.5px}.trend-duo{grid-template-columns:1fr 29px 1fr}.trend-duo>b{width:29px;height:29px}.trend-fighter strong{font-size:22px}
}
.match-reward{display:flex;align-items:center;justify-content:center;gap:7px;margin:10px auto 12px;padding:7px 11px;width:max-content;max-width:100%;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.66);box-shadow:0 5px 18px rgba(0,0,0,.09);font-weight:950}.match-reward span{font-size:11px}.match-reward small{font-size:7px;font-weight:850;opacity:.68}

.weekly-card::-webkit-scrollbar{display:none}
.guide-face:after{content:"•ᴗ•";position:absolute;bottom:1px;right:2px;font-size:6px;font-weight:950;background:#fff;border:1px solid #ead17a;border-radius:999px;padding:1px 3px;color:#70520c}.guide-face{position:relative}


/* V4.1 — pinned controls + true internal rails */
.shell-review .main>.main-wrap,.shell-all .main>.main-wrap{
  overflow:hidden!important;display:flex;flex-direction:column;min-height:0;padding-bottom:0;touch-action:none;
}
.view-fixed-head{flex:0 0 auto;min-width:0;max-width:100%;overflow:hidden;background:var(--bg);position:relative;z-index:3}
.view-scroll-body{flex:1 1 auto;min-height:0;min-width:0;width:100%;max-width:100%;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;overscroll-behavior-y:contain;overscroll-behavior-x:none;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:y proximity;padding:2px 0 12px;contain:layout paint}
.view-scroll-body::-webkit-scrollbar{display:none}
.view-scroll-body .review-card,.view-scroll-body .name-row{scroll-snap-align:start;scroll-margin-top:4px}
.review-fixed .page-heading{margin:2px 2px 9px}.review-fixed .page-heading h1{margin-bottom:2px}.review-fixed .page-heading p{font-size:9px;line-height:1.35;max-width:78%}
.all-fixed .page-heading{margin:1px 2px 7px}.all-fixed .all-sticky{position:relative!important;top:auto!important;z-index:auto;margin:0;padding:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.all-fixed .search-box{margin-bottom:6px;max-width:100%;overflow:hidden}.all-fixed .search-box input{min-width:0;width:100%;max-width:100%}
.all-fixed .chips{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;touch-action:manipulation!important;scroll-snap-type:none!important;-webkit-overflow-scrolling:auto;display:flex;flex-wrap:wrap;gap:5px;margin:0 0 5px;padding:0}
.all-fixed .chips .chip{flex:0 0 auto;min-height:29px;padding:5px 9px;font-size:8px}
.all-fixed .gender-filter-grid{margin-bottom:4px}.all-fixed .results-line{margin:3px 1px 6px;padding:0;min-height:14px}
.all-scroll .name-list,.review-scroll .review-grid{padding-bottom:8px;max-width:100%;min-width:0}
.shell-all .main>.main-wrap,.shell-review .main>.main-wrap{scroll-snap-type:none!important}

.pulse-state{min-height:210px;border:2px dashed #c9d9f7;border-radius:22px;background:var(--v4-blue-soft);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;gap:7px;color:var(--text-2)}
.pulse-state strong{font-size:15px;color:var(--text)}.pulse-state small{font-size:8px;line-height:1.45;max-width:260px}.pulse-state .btn{margin-top:5px;min-width:140px}.pulse-state.error-state{border-color:#efc3bd;background:var(--v4-coral-soft)}
.pulse-source{display:flex;flex-direction:column;gap:2px;align-items:center;padding:11px 8px 4px!important;line-height:1.3}.pulse-source strong{font-size:8px;color:var(--text)}.pulse-source span,.pulse-source small{font-size:7px;color:var(--text-3);text-align:center}

@media(max-height:720px){
  .review-fixed .page-heading p{display:none}.review-fixed .page-heading{margin-bottom:5px}
  .all-fixed .page-heading{margin-bottom:4px}.all-fixed .search-box{margin-bottom:4px}.all-fixed .chips{gap:3px;margin-bottom:3px}.all-fixed .chips .chip{min-height:26px;padding:4px 7px;font-size:7px}.all-fixed .results-line{margin-bottom:3px}
}

/* ========================= V4.2 — living game polish ========================= */
:root{
  --coin-gold:#f7c948;
  --coin-gold-2:#e9a91b;
  --coin-ink:#6b4600;
  --star-yellow:#ffd75e;
  --crew-ink:#24313d;
  --crew-green:#57cc78;
  --crew-blue:#63a7ff;
  --crew-pink:#ff8d91;
}

/* iOS: keep form controls at 16px so Safari never zooms the viewport on focus. */
@media (max-width: 760px){
  input, textarea, select, .comment-box textarea, #all-edit-reaction, #reaction, #detail-surname{
    font-size:16px !important;
  }
}
.comment-box textarea{touch-action:pan-y;min-height:74px;line-height:1.4;}

/* Currency and achievement language */
.coin-token,.star-token{display:inline-flex;align-items:center;gap:5px;vertical-align:middle;white-space:nowrap;font-variant-numeric:tabular-nums;}
.coin-token>i{width:27px;height:27px;border-radius:50%;display:inline-grid;place-items:center;font-style:normal;font-size:14px;font-weight:900;color:var(--coin-ink);background:var(--coin-gold);border:2px solid var(--coin-gold-2);box-shadow:inset 0 -3px 0 rgba(122,75,0,.18),0 1px 0 rgba(255,255,255,.7);}
.coin-token>i:after{content:"";position:absolute;}
.coin-token b,.star-token b{font-size:inherit;color:inherit;}
.coin-token.compact>i{width:20px;height:20px;font-size:10px;border-width:1.5px;box-shadow:inset 0 -2px 0 rgba(122,75,0,.16);}
.star-token>i{width:27px;height:27px;display:inline-grid;place-items:center;font-style:normal;font-size:23px;line-height:1;color:#e39a00;filter:drop-shadow(0 1px 0 rgba(255,255,255,.8));}
.star-token.compact>i{width:20px;height:20px;font-size:17px;}
.header-wallet{border:0;background:transparent;padding:0;display:inline-flex;gap:8px;align-items:center;color:var(--muted);cursor:pointer;}
.play-resources{display:flex;gap:8px;align-items:center;margin-inline-start:auto;}
.play-meter{border:0;background:transparent;color:inherit;text-align:inherit;cursor:pointer;}
.bank-resource{border:0;background:transparent;color:inherit;cursor:pointer;}
.coin-bank{background:#fff8dc!important;border-color:#f3d36a!important;}
.star-bank{background:#fff9e8!important;border-color:#f0d37a!important;}
[data-theme="dark"] .coin-bank,[data-theme="dark"] .star-bank{background:#2a2413!important;border-color:#5b4d20!important;}

/* Original Baby Crew — flat, expressive, not baby-themed wallpaper. */
.mascot{overflow:visible;filter:drop-shadow(0 5px 0 rgba(26,38,49,.10));}
.mascot *{vector-effect:non-scaling-stroke;}
.mascot-body{fill:#fff;stroke:var(--crew-ink);stroke-width:3.3;stroke-linecap:round;stroke-linejoin:round;}
.mascot-bottle .mascot-body rect,.mascot-bottle rect.mascot-body{fill:#fbfcfe;}
.mascot-bottle .mascot-fill{fill:#8ad79d;stroke:none;}
.mascot-rattle .mascot-body{fill:#ffd65e;}
.mascot-rattle .mascot-handle{fill:none;stroke:var(--crew-ink);stroke-width:11;stroke-linecap:round;}
.mascot-rattle .mascot-knob{fill:#ff8c8f;stroke:var(--crew-ink);stroke-width:3.3;}
.mascot-rattle .mascot-shine{fill:none;stroke:#fff7c4;stroke-width:4;stroke-linecap:round;}
.mascot-pacifier .mascot-body{fill:#8fc2ff;}
.mascot-pacifier .mascot-ring{fill:none;stroke:#8b65db;stroke-width:7;}
.mascot-pacifier .mascot-core{fill:#f5f7ff;stroke:var(--crew-ink);stroke-width:3;}
.mascot-face circle{fill:var(--crew-ink);stroke:none;}
.mascot-face path{fill:none;stroke:var(--crew-ink);stroke-width:3;stroke-linecap:round;}
.mascot-arm,.mascot-leg{fill:none;stroke:var(--crew-ink);stroke-width:3.3;stroke-linecap:round;}
.mini-mascot{width:34px;height:40px;filter:none;}
.journey-mascot{width:78px;height:88px;animation:crewBob 2.7s ease-in-out infinite;}
.arcade-mascot{width:72px;height:82px;animation:rattleWiggle 2.4s ease-in-out infinite;}
.tile-mascot{width:54px;height:58px;filter:none;}
.host-mascot{width:58px;height:62px;animation:crewBob 2.1s ease-in-out infinite;}
.path-mascot{width:60px;height:68px;filter:none;}
@keyframes crewBob{50%{transform:translateY(-5px) rotate(1.5deg)}}
@keyframes rattleWiggle{0%,80%,100%{transform:rotate(0)}85%{transform:rotate(-8deg)}90%{transform:rotate(8deg)}95%{transform:rotate(-4deg)}}
.journey-crew{display:flex;align-items:center;gap:4px;}
.journey-crew>i{font-style:normal;background:var(--surface);border:2px solid var(--line);padding:5px 8px;border-radius:14px 14px 14px 4px;font-size:11px;font-weight:800;}

/* XP map — visual progression, not another progress bar. */
.xp-world{position:relative;margin:16px 0 20px;padding:18px;border:2px solid var(--line);border-radius:26px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 94%,#fff7d8 6%),var(--surface));overflow:hidden;}
.xp-world-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;}
.xp-world-head h2{margin:2px 0 4px;font-size:24px;}
.xp-world-head p{margin:0;color:var(--muted);font-size:13px;max-width:310px;}
.xp-level-badge{width:58px;height:58px;flex:none;border-radius:18px;background:#262c36;color:#fff;display:grid;place-items:center;align-content:center;box-shadow:0 5px 0 #11151b;}
.xp-level-badge strong{font-size:24px;line-height:1;}.xp-level-badge span{font-size:8px;font-weight:900;letter-spacing:.12em;}
.xp-path{position:relative;display:grid;gap:8px;padding:4px 0;}
.xp-road{position:absolute;inset:18px 49% 18px auto;width:5px;border-radius:6px;background:repeating-linear-gradient(to bottom,#d8dde5 0 14px,transparent 14px 22px);z-index:0;}
.xp-stop{position:relative;z-index:1;display:flex;align-items:center;gap:12px;width:78%;min-height:70px;}
.xp-stop.left{margin-inline-start:auto;flex-direction:row-reverse;text-align:left;}
.xp-node{width:58px;height:58px;flex:none;border-radius:20px;display:grid;place-items:center;background:#eef1f5;border:3px solid #d7dce4;color:#a1a8b2;font-size:22px;font-weight:900;box-shadow:0 4px 0 #c7ccd4;}
.xp-stop.done .xp-node{background:#dff7e5;border-color:#75cf8d;color:#258542;box-shadow:0 4px 0 #5eb777;}
.xp-stop.current .xp-node{width:68px;height:68px;border-color:#facb42;background:#fff7d4;box-shadow:0 5px 0 #dcae25;}
.xp-stop-copy{min-width:0;display:grid;}.xp-stop-copy small{font-size:9px;font-weight:900;color:var(--muted);letter-spacing:.1em;}.xp-stop-copy strong{font-size:14px;}.xp-stop-copy em{font-style:normal;color:var(--muted);font-size:10px;margin-top:2px;}
.xp-mini{width:105px;height:7px;border-radius:10px;background:#e6e9ee;overflow:hidden;margin-top:5px;}.xp-mini span{display:block;height:100%;border-radius:inherit;background:#56c774;}
@media(max-width:390px){.xp-world{padding:14px}.xp-stop{width:88%}.xp-world-head h2{font-size:21px}}

/* All-names unlock economy */
.edit-score-btn.paid-rate{border-color:#e6ba34;background:#fff8dc;}
.edit-score-btn .coin-token{font-size:11px;}
.unlock-notice{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:11px 12px;border:2px solid #efd26f;border-radius:17px;background:#fff9df;}
.unlock-notice>div{display:grid;gap:2px}.unlock-notice strong{font-size:13px}.unlock-notice span{font-size:11px;color:#745d1c;line-height:1.35;}
[data-theme="dark"] .edit-score-btn.paid-rate,[data-theme="dark"] .unlock-notice{background:#2c2615;border-color:#65531b;}

/* Pulse v4.2: richer, clearer, distinct live-web signal */
.web-now-badge{display:inline-flex;margin-top:5px;width:max-content;padding:5px 8px;border-radius:999px;background:#fff3c8;color:#6d5000;border:1.5px solid #e9c24d;font-size:10px;font-weight:850;}
.pulse-numbers.rich{grid-template-columns:repeat(3,minmax(0,1fr));}
.pulse-numbers.rich span{min-height:54px;}
.pulse-row:has(.pulse-row-main span){position:relative;}
.collection-chip[data-value="web"]{background:#fff8d7;border-color:#eac74c;color:#6b5200;}
.collection-chip[data-value="web"].active{background:#f3c83f;color:#372700;}

/* Resource explainer */
.resource-overlay{z-index:140;align-items:center;justify-content:center;padding:18px;}
.resource-card{width:min(440px,100%);background:var(--surface);border:2px solid var(--line);border-radius:28px;padding:20px;box-shadow:0 16px 60px rgba(0,0,0,.24);}
.resource-crew{height:86px;display:flex;justify-content:center;align-items:flex-end;gap:3px;margin:-48px 0 10px;}.resource-crew .mascot{width:82px;height:88px;}
.resource-card h2{margin:3px 0 14px;font-size:24px;}
.resource-explain{display:grid;gap:9px;margin-bottom:18px;}
.resource-explain>div{display:flex;align-items:center;gap:12px;padding:11px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface-2);}.resource-explain span{display:grid;gap:2px}.resource-explain strong{font-size:13px}.resource-explain small{font-size:11px;line-height:1.35;color:var(--muted);}.xp-symbol{width:42px;height:32px;display:grid;place-items:center;border-radius:11px;background:#dff7e5;color:#19773a;font-weight:950;font-size:12px;}

/* Arcade: more game, less form. */
.arcade-promise{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 3px;}.arcade-promise>span{padding:5px 8px;border-radius:999px;background:var(--surface);border:1.5px solid var(--line);font-size:9px;font-weight:850;display:inline-flex;align-items:center;gap:4px;}
.game-tile{transform:translateZ(0);transition:transform .12s ease,box-shadow .12s ease;}.game-tile:not(:disabled):active{transform:translateY(4px) scale(.985);box-shadow:none!important;}
.game-tile .game-icon:has(.mascot){background:transparent!important;border:0!important;width:62px;height:62px;padding:0;}
.game-top.v42{align-items:center;}.game-host{display:flex;align-items:center;gap:8px;min-width:0;}.game-host>div{min-width:0;}.game-score .combo{background:#ffe3c0;color:#924a00;border-radius:999px;padding:4px 7px;animation:comboPulse .8s ease-in-out infinite alternate;}
@keyframes comboPulse{to{transform:scale(1.06)}}
.game-reveal,.higher-reveal,.mystery-win{animation:rewardPop .32s cubic-bezier(.2,.9,.25,1.3);}
@keyframes rewardPop{from{opacity:0;transform:scale(.88) translateY(8px)}to{opacity:1;transform:none}}

/* Weekly / match resources use the same visual system */
.coin-burst .coin-token{justify-content:center}.match-reward .coin-token,.match-reward .star-token{font-size:inherit;}

@media (prefers-reduced-motion: reduce){.mascot,.game-score .combo{animation:none!important;}}
.card-mascot{width:46px;height:48px;filter:none}.tinder-mascot{width:48px;height:54px;filter:none}.review-mascot{width:42px;height:44px;filter:none;vertical-align:middle}.crew-inline{display:inline-flex;vertical-align:middle}.library-scout{display:inline-flex;vertical-align:middle;margin-inline-start:5px}.library-mascot{width:34px;height:38px;filter:none}.crew-charm{background:transparent!important;border:0!important;box-shadow:none!important;}


/* =============================
   V5 FOUNDER — PRODUCT QA PASS
   ============================= */
:root{
  --v5-ink:#263238;
  --v5-muted:#66737a;
  --v5-green:#49b97c;
  --v5-green-dark:#20734b;
  --v5-yellow:#ffd35c;
  --v5-yellow-ink:#5c4300;
  --v5-blue:#5f8ff2;
  --v5-coral:#ff7875;
  --v5-purple:#8069d9;
}
html{direction:rtl;overflow:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body{overflow:hidden;overscroll-behavior:none;background:var(--bg)}
button,input,textarea,select{font:inherit}
input,textarea,select{font-size:16px!important}
textarea{line-height:1.5;resize:none}
button,h1,h2,h3,p,span,strong,small,em,label{overflow-wrap:anywhere}
bdi,[dir="ltr"],.num,.pulse-rank-v5,.pulse-metrics-v5 b{unicode-bidi:isolate}
.eyebrow{font-size:10px;letter-spacing:.12em;line-height:1.25;color:var(--green-dark,#26734b);font-weight:900}
.page-heading h1,.pulse-hero h2,.journey-hub h2,.xp-world h2{line-height:1.02;letter-spacing:-.045em}

/* Contrast audit: no white text on light yellow cards */
.journey-action.review,.journey-bank .coin-bank,.journey-bank .star-bank,.unlock-notice,.daily-rewards,.gold,.yellow,.task-icon.gold{color:var(--v5-yellow-ink)!important}
.journey-bank .coin-bank strong,.journey-bank .coin-bank small,.journey-bank .star-bank strong,.journey-bank .star-bank small{color:var(--v5-yellow-ink)!important}
.journey-action.review strong,.journey-action.review em,.journey-action.review small{color:var(--v5-yellow-ink)!important}

/* Coins are unmistakably gold, Stars are achievement badges */
.coin-token{display:inline-flex;align-items:center;gap:5px;direction:ltr;color:#725100!important;font-weight:900;white-space:nowrap}
.coin-token>i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#ffd84f;border:2px solid #e9a800;box-shadow:inset 0 2px 0 rgba(255,255,255,.75),0 2px 0 #c98b00;color:#6c4a00}
.coin-token.compact>i{width:23px;height:23px;border-width:1.5px}
.coin-token .coin-mark{width:13px;height:13px;stroke-width:2.4}
.coin-token b{color:#6c4a00!important;font-size:inherit}
.star-token{display:inline-flex;align-items:center;gap:5px;direction:ltr;font-weight:900;color:#654cc2!important;white-space:nowrap}
.star-token>i{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:#eee9ff;border:1.5px solid #cfc3ff;color:#7c5ce0;box-shadow:0 2px 0 #b7a7eb;font-style:normal}
.star-token.compact>i{width:23px;height:23px;border-radius:8px}

/* Baby Crew 2.0 */
.mascot{overflow:visible;filter:drop-shadow(0 5px 0 rgba(28,38,43,.10));transform-origin:50% 90%}
.mascot .crew-shadow{fill:rgba(36,47,52,.12)}
.mascot .crew-eye{fill:#263238;stroke:none}.mascot .crew-eye-line,.mascot .crew-mouth{fill:none;stroke:#263238;stroke-width:3.2;stroke-linecap:round}.mascot .crew-mouth-fill{fill:#263238}.mascot .crew-cheek{fill:#ff9692;opacity:.45;stroke:none}
.mascot-bottle .bottle-shell{fill:#fffdf9;stroke:#263238;stroke-width:5}.mascot-bottle .bottle-cap{fill:#263238}.mascot-bottle .bottle-neck{fill:#f1f4ef;stroke:#263238;stroke-width:4}.mascot-bottle .mascot-fill{fill:#7bd99c;stroke:none}.mascot-bottle .bottle-label{fill:rgba(255,255,255,.82);stroke:#263238;stroke-width:3}.mascot-bottle .mascot-arm,.mascot-bottle .mascot-leg,.mascot-bottle .crew-foot{fill:none;stroke:#263238;stroke-width:5;stroke-linecap:round}.mascot-bottle .crew-sticker{fill:#ffd84f;stroke:#9f7200;stroke-width:2}.mascot-bottle .crew-shades rect{fill:#263238;stroke:#263238}.mascot-bottle .crew-shades path{stroke:#263238;stroke-width:3}.mascot-bottle .crew-headphones>*{fill:none;stroke:#6753cf;stroke-width:5;stroke-linecap:round}.mascot-bottle .crew-headphones rect{fill:#8069d9}.mascot-bottle .crew-crown{fill:#ffd84f;stroke:#8d6500;stroke-width:3}.mascot-bottle .crew-legendary>path:not(.crew-crown),.mascot-bottle .crew-legendary circle{fill:none;stroke:#f0ad00;stroke-width:3;stroke-linecap:round}
.mascot-pacifier .paci-shield{fill:#8d7ee8;stroke:#263238;stroke-width:5}.mascot-pacifier .paci-ring{fill:none;stroke:#263238;stroke-width:7}.mascot-pacifier .paci-core{fill:#d9d3ff;stroke:#263238;stroke-width:4}.mascot-pacifier .mascot-arm{fill:none;stroke:#263238;stroke-width:5;stroke-linecap:round}
.mascot-rattle .rattle-head{fill:#ffd75e;stroke:#263238;stroke-width:5}.mascot-rattle .rattle-inner{fill:#ffe998;stroke:none}.mascot-rattle .rattle-stick{fill:none;stroke:#263238;stroke-width:8;stroke-linecap:round}.mascot-rattle .rattle-knob{fill:#ff7f7c;stroke:#263238;stroke-width:5}.mascot-rattle .mascot-arm{fill:none;stroke:#263238;stroke-width:5;stroke-linecap:round}.mascot-rattle .rattle-spark{fill:#fff;stroke:#e3a500;stroke-width:2}
.mascot-bottle.variant-legendary{filter:drop-shadow(0 0 8px rgba(255,200,40,.65)) drop-shadow(0 6px 0 rgba(28,38,43,.10))}
.mascot-bottle.variant-legendary .mascot-fill{fill:#ffd75e}
.mascot-brand{width:64px;height:64px;padding:3px!important;background:#fff7d5!important;border-color:#ffd45a!important;overflow:visible!important}.brand-mascot{width:58px;height:67px}.header-bottle{width:31px;height:31px;display:inline-grid;place-items:center}.header-mascot{width:30px;height:36px}.boot-mascot{width:55px;height:66px}.action-mascot{width:37px;height:44px}.status-mascot{width:44px;height:52px}.empty-mascot{width:96px;height:104px}.evo-mascot{width:58px;height:68px}
@keyframes crewIdle{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(-1deg)}}
.journey-mascot,.header-mascot,.status-mascot{animation:crewIdle 2.8s ease-in-out infinite}

/* Hero character status */
.journey-crew.main-character{position:relative;min-width:112px;display:flex;justify-content:center;align-items:center}.journey-crew.main-character .journey-mascot{width:92px;height:108px}.journey-crew.main-character>i{position:absolute;bottom:2px;inset-inline-end:76px;min-width:86px;max-width:124px;background:#fff;border:2px solid #263238;color:#263238;border-radius:16px;padding:7px 9px;font-size:9px;font-style:normal;font-weight:800;line-height:1.2;box-shadow:0 3px 0 rgba(38,50,56,.16)}
.character-status{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;display:flex;gap:8px;align-items:center}.character-status>span{width:50px;height:52px;display:grid;place-items:center;background:#effbf2;border-radius:16px}.character-status small{display:block;color:var(--text-3);font-size:9px}.character-status strong{font-size:12px;color:var(--text)}

/* XP evolution rail */
.xp-world{overflow:hidden}.evolution-rail{display:grid;grid-auto-flow:column;grid-auto-columns:92px;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:4px 2px 12px;direction:rtl;-webkit-overflow-scrolling:touch}.evo-card{scroll-snap-align:start;min-height:128px;border:1px solid var(--line);border-radius:20px;background:var(--surface);display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 6px;color:var(--text);box-shadow:0 3px 0 rgba(38,50,56,.07)}.evo-card.current{border:2px solid #54bd7e;background:#effbf3}.evo-card.locked{opacity:.45;filter:saturate(.5)}.evo-avatar{height:67px}.evo-card small{font-size:8px;color:var(--text-3)}.evo-card strong{font-size:10px;line-height:1.1;margin:2px 0}.evo-card span{font-size:8px;color:var(--v5-green-dark)}

/* Review readability */
.duo-score.labelled{display:flex;gap:7px;direction:ltr}.duo-score.labelled>span{min-width:52px;height:56px;padding:5px;border-radius:16px;display:flex!important;flex-direction:column;align-items:center;justify-content:center}.duo-score.labelled small{font-size:8px;font-weight:800;opacity:.72}.duo-score.labelled b{font-size:21px;line-height:1}.review-card h2 bdi{display:block}.review-reason{line-height:1.45}.review-fixed .page-heading p{max-width:290px;line-height:1.45}

/* Pulse V5 */
.pulse-hero.v5{grid-template-columns:58px minmax(0,1fr) 72px;gap:10px;align-items:center;background:#edf4ff;border-color:#b9cef8;color:#263238!important}.pulse-hero.v5 *{color:inherit}.pulse-hero.v5 .eyebrow{color:#3970cf}.pulse-hero-copy p{font-size:10px;line-height:1.45;color:#5f6d78!important}.pulse-year{background:rgba(255,255,255,.72);border:1.5px solid #b5ccfb;color:#263238!important}.collection-rail.v5{padding-block:8px;scroll-padding-inline:8px}.pulse-list.v5{display:grid;gap:10px;padding-bottom:6px}.pulse-card-v5{width:100%;text-align:start;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--text);padding:14px;box-shadow:0 4px 0 rgba(38,50,56,.08);overflow:hidden}.pulse-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.pulse-name-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pulse-name-line>strong{font-size:23px;line-height:1}.pulse-name-line .badge{font-size:8px}.pulse-card-head>div>small{display:block;margin-top:5px;font-size:9px;color:var(--text-2);line-height:1.3}.pulse-rank-v5{flex:0 0 auto;padding:7px 9px;border-radius:12px;background:#eaf1ff;color:#326bc9;font-weight:900;font-size:13px}.pulse-chart-v5{height:58px;margin:8px -2px 4px;display:flex;align-items:center}.pulse-chart-v5 svg{width:100%;height:56px}.pulse-metrics-v5{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;direction:rtl}.pulse-metrics-v5>span{min-width:0;background:var(--surface-2);border-radius:13px;padding:7px 4px;text-align:center;display:flex;flex-direction:column}.pulse-metrics-v5 small{font-size:7px;color:var(--text-3)}.pulse-metrics-v5 b{font-size:13px;line-height:1.1;margin:2px 0;color:var(--text)}.pulse-metrics-v5 em{font-size:7px;color:var(--text-3);font-style:normal;line-height:1.1}.pulse-card-foot{display:flex;gap:9px;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px solid var(--line);font-size:8px;color:var(--text-3)}.web-now-badge{display:inline-flex!important;padding:4px 7px;border-radius:999px;background:#fff2bd;color:#6b4b00!important;font-size:8px!important;font-weight:900!important}.pulse-source{line-height:1.5}

/* Fixed scroll rails — only intended content scrolls */
.view-fixed-head{flex:0 0 auto;position:relative;z-index:2;background:var(--bg)}
.view-scroll-body{min-height:0;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:contain;overscroll-behavior-x:none;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}.view-scroll-body::-webkit-scrollbar{display:none}.review-scroll,.all-scroll{padding-inline:2px}.name-list,.review-grid{max-width:100%;overflow-x:hidden}

/* Text QA — readable dynamic controls */
.btn,.chip,.collection-chip,.nav-btn,.journey-action,.task-card{line-height:1.2}.journey-action em{line-height:1.35}.partner-mini,.unlock-notice,.source-note,.auth-note{line-height:1.45}.quick-legend{font-size:10px!important;gap:12px;justify-content:center}.tinder-hint{line-height:1.35}.rate-toolbar{min-width:0}.daily-whisper,.smart-label{max-width:72%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Dark mode contrast parity */
html[data-theme="dark"] .pulse-hero.v5{background:#17243a;border-color:#365682;color:#f4f7fb!important}html[data-theme="dark"] .pulse-hero-copy p{color:#b9c7d8!important}html[data-theme="dark"] .pulse-year{background:#22334d;border-color:#4c6e9f;color:#f4f7fb!important}html[data-theme="dark"] .pulse-rank-v5{background:#1d3151;color:#9cc0ff}html[data-theme="dark"] .evo-card.current{background:#153524}html[data-theme="dark"] .journey-bank .coin-bank,html[data-theme="dark"] .journey-bank .star-bank{color:#4c3600!important}

@media (max-width:430px){
  .journey-crew.main-character .journey-mascot{width:78px;height:94px}.journey-crew.main-character>i{inset-inline-end:65px;min-width:74px;font-size:8px}.pulse-metrics-v5{grid-template-columns:repeat(2,1fr)}.pulse-card-v5{padding:12px}.pulse-name-line>strong{font-size:21px}.evolution-rail{grid-auto-columns:84px}.evo-card{min-height:119px}.evo-mascot{width:52px;height:62px}
}
@media (max-height:760px){.journey-crew.main-character .journey-mascot{width:68px;height:81px}.character-status{display:none}.evolution-rail{display:none}}


/* V5 FINAL QA OVERRIDES */
/* Tiny mascot contexts always use the stable classic brand silhouette. */
.header-mascot,.mini-mascot,.library-mascot{filter:drop-shadow(0 3px 0 rgba(28,38,43,.08))}
.mascot-bottle .crew-shades rect{fill:#526274;stroke:#263238;stroke-width:2}.mascot-bottle .crew-shades path{stroke:#263238;stroke-width:2.5}

/* Pacifier character: purple shield + light nipple + open loop, no black disk. */
.mascot-pacifier .paci-shield{fill:#9486ee;stroke:#263238;stroke-width:4.5}
.mascot-pacifier .paci-nipple{fill:#fff7df;stroke:#263238;stroke-width:4;stroke-linejoin:round}
.mascot-pacifier .paci-ring{fill:none;stroke:#6653c7;stroke-width:7;stroke-linecap:round}
.mascot-pacifier .paci-spark{fill:#ffd84f;stroke:#9d7200;stroke-width:1.5}
.mascot-pacifier .mascot-arm{fill:none;stroke:#263238;stroke-width:4.5;stroke-linecap:round}
.mascot-pacifier .paci-face{transform:translateY(-5px)}

/* Rating screen must fit iPhone height without hiding the comment field. */
.shell-rate .comment-box{margin-top:5px!important}
.shell-rate .comment-box textarea{min-height:38px!important;height:38px!important;max-height:38px!important;padding:8px 11px!important;resize:none!important;font-size:16px!important;line-height:1.25!important}
.shell-rate .save-note{min-height:15px!important;height:15px!important;font-size:10px!important;margin-top:2px!important}
.shell-rate .name-card{min-height:0}
.shell-rate .rate-toolbar{min-height:22px}
.shell-rate .name-stage{margin-block:4px 5px!important}
.shell-rate .name-stage h1{margin-block:0!important}
.shell-rate .partner-reveal{margin-block:4px!important}
.shell-rate .score-zone{margin-top:3px!important}
.shell-rate .quick-grid{margin-top:4px!important}
.shell-rate .gender-fit-wrap{margin-top:5px!important}
.shell-rate .nav-arrows{margin-top:5px!important}

@media (max-height:860px){
  .shell-rate .name-card{padding-top:10px!important;padding-bottom:8px!important}
  .shell-rate .name-stage h1{font-size:clamp(42px,12vw,58px)!important;line-height:.95!important}
  .shell-rate .name-overline{font-size:8px!important;margin-bottom:2px!important}
  .shell-rate .partner-reveal{min-height:43px!important;padding:7px 10px!important}
  .shell-rate .score-display strong{font-size:36px!important}
  .shell-rate .score-display{margin-bottom:1px!important}
  .shell-rate .range{margin-block:1px!important}
  .shell-rate .score-scale{font-size:8px!important}
  .shell-rate .quick-grid{gap:5px!important}
  .shell-rate .score-btn{height:31px!important;min-height:31px!important}
  .shell-rate .gender-fit-wrap{padding:5px 7px!important}
  .shell-rate .nav-arrows .btn{min-height:36px!important;height:36px!important}
}
/* SVG strokes scale with the character instead of turning tiny mascots into dark blobs. */
.mascot *{vector-effect:none!important}
/* V5 journey resource cards: numbers and labels never collide. */
.journey-bank .bank-resource{justify-self:stretch!important;display:grid!important;grid-template-columns:auto 1fr!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:5px!important;row-gap:0!important;padding:5px 7px!important;min-width:0!important;border:1px solid #efd16d!important;border-radius:12px!important;box-shadow:0 2px 0 #d8b64c!important}
.journey-bank .bank-resource .coin-token,.journey-bank .bank-resource .star-token{grid-row:1/3;grid-column:1!important}
.journey-bank .bank-resource>strong{grid-column:2;grid-row:1;font-size:11px!important;line-height:1!important;text-align:start;white-space:nowrap}
.journey-bank .bank-resource>small{grid-column:2;grid-row:2;font-size:6.5px!important;line-height:1.15!important;text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.journey-bank .streak-bank{min-width:45px}

/* Any decorative overflow is clipped; only named horizontal rails may pan sideways. */
.journey-hub,.journey-welcome,.pulse-hero.v5,.games-hero.playful-hero,.journey-strip,.guide-face,.inline-toy,.rate-card-charm,.score-zone{overflow-x:clip!important}
.evolution-rail,.collection-rail,.top-scroll{overflow-x:auto!important}
@media (max-height:700px){
  /* On very short iPhones, preserve the whole rating form instead of clipping comment/gender-fit. */
  .shell-rate .journey-strip{display:none!important}
  .shell-rate .rate-segmented{margin-top:0!important;margin-bottom:4px!important}
  .shell-rate .rate-toolbar{margin-bottom:3px!important}
  .shell-rate .name-card{padding-top:7px!important;padding-bottom:6px!important}
  .shell-rate .name-stage{padding:2px 4px!important}
  .shell-rate .name-stage h1{font-size:42px!important}
  .shell-rate .pulse-chip{max-height:34px!important;padding:3px 7px!important}
  .shell-rate .partner-reveal{min-height:35px!important;margin-block:2px!important}
  .shell-rate .score-display strong{font-size:31px!important}
  .shell-rate .score-scale{display:none!important}
  .shell-rate .quick-grid{margin-top:2px!important}
  .shell-rate .score-btn{height:28px!important;min-height:28px!important}
  .shell-rate .gender-fit-wrap{margin-top:3px!important;padding:3px 5px!important}
  .shell-rate .fit-chip{height:27px!important;min-height:27px!important}
  .shell-rate .comment-box textarea{height:34px!important;min-height:34px!important;max-height:34px!important}
  .shell-rate .nav-arrows{margin-top:3px!important}
  .shell-rate .nav-arrows .btn{height:34px!important;min-height:34px!important}
}
/* Dark-mode contrast: gold surfaces use light ink, never dark brown on dark cards. */
html[data-theme="dark"] .coin-token,html[data-theme="dark"] .coin-token b{color:#ffd95c!important}
html[data-theme="dark"] .journey-action.review{background:#403716!important;border-color:#e4c456!important;box-shadow:0 4px 0 #8f7722!important}
html[data-theme="dark"] .journey-action.review strong,html[data-theme="dark"] .journey-action.review em,html[data-theme="dark"] .journey-action.review small,html[data-theme="dark"] .journey-action.review .icon{color:#fff2b3!important}
html[data-theme="dark"] .journey-bank .coin-bank,html[data-theme="dark"] .journey-bank .star-bank{background:#302910!important;border-color:#e3c24d!important;box-shadow:0 2px 0 #7f6a1c!important}
html[data-theme="dark"] .journey-bank .coin-bank strong,html[data-theme="dark"] .journey-bank .coin-bank small,html[data-theme="dark"] .journey-bank .star-bank strong,html[data-theme="dark"] .journey-bank .star-bank small{color:#ffe99b!important}
html[data-theme="dark"] .journey-bank .star-bank .star-token{color:#c7b9ff!important}

/* ========================= V5.0.2 — fixed rails + deliberate rating flow ========================= */
.shell-dash.dash-pulse .main>.main-wrap,
.shell-dash.dash-games .main>.main-wrap{
  overflow:hidden!important;
  display:flex;
  flex-direction:column;
  min-height:0;
  padding-bottom:0;
}
.pulse-layout,.games-layout{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;max-width:100%}
.pulse-fixed-head,.games-fixed-head{flex:0 0 auto;min-width:0;max-width:100%;background:var(--bg);position:relative;z-index:3}
.pulse-scroll-body,.games-scroll-body{flex:1 1 auto;min-height:0;min-width:0;max-width:100%;overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y;overscroll-behavior-y:contain;overscroll-behavior-x:none;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:none!important;padding:2px 1px 10px;contain:layout paint}
.pulse-scroll-body::-webkit-scrollbar,.games-scroll-body::-webkit-scrollbar{display:none}
.pulse-layout .collection-rail.v5{margin-bottom:4px}
.pulse-layout .pulse-list.v5{overflow:visible!important;padding-bottom:6px}
.games-layout .games-hero{margin-bottom:8px}
.games-layout .game-lobby.v4-games{overflow:visible!important;display:grid!important;min-height:0;padding-bottom:12px;scroll-snap-type:none!important}

/* Game rules are a real first screen, not hidden copy. */
.intro-shell{display:flex;align-items:stretch;justify-content:center;min-height:0;height:100%;overflow:hidden}
.game-intro-card{position:relative;flex:1;min-height:0;max-width:520px;margin:0 auto;border:2px solid var(--line);border-radius:30px;background:var(--surface);box-shadow:0 6px 0 var(--line-strong);padding:clamp(14px,2.2vh,22px);display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden}
.game-intro-card:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:var(--v4-blue-soft);inset-inline-start:-85px;top:-80px;opacity:.75}
.game-intro-mascot{height:62px;position:relative;z-index:1}.intro-mascot{width:58px;height:64px;animation:buddyFloat 2.2s ease-in-out infinite}
.game-intro-icon{font-size:34px;line-height:1;margin:2px 0 3px;position:relative;z-index:1}.game-intro-card h1{font-size:clamp(28px,8vw,40px);letter-spacing:-.05em;margin:2px 0 5px;position:relative;z-index:1}.game-intro-card>p{font-size:11px;line-height:1.5;color:var(--text-2);max-width:360px;margin:0 auto 10px;position:relative;z-index:1}
.game-how{width:100%;display:grid;gap:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:10px;text-align:start;position:relative;z-index:1}.game-how>strong{font-size:11px;margin-bottom:1px}.game-how>div{display:grid;grid-template-columns:25px 1fr;gap:8px;align-items:center}.game-how>div>span{width:25px;height:25px;border-radius:9px;background:var(--v4-green);color:white;display:grid;place-items:center;font-size:10px;font-weight:950;box-shadow:0 2px 0 var(--v4-green-dark)}.game-how p{margin:0;font-size:9px;line-height:1.35;color:var(--text-2)}
.game-reward-note{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;margin:9px 0 8px;padding:7px 9px;border-radius:14px;background:var(--v4-yellow-soft);border:1px solid #e6ce6e;font-size:8px;color:var(--text-2);position:relative;z-index:1}.game-intro-card>.btn{width:min(100%,340px);position:relative;z-index:1}.game-intro-card>.btn.ghost{margin-top:6px;background:transparent;border:0;box-shadow:none;color:var(--text-3);min-height:34px}

/* The score is saved immediately, but the card is pinned until the user explicitly continues. */
.nav-arrows .btn.primary:disabled{opacity:.42;filter:saturate(.4)}
.save-note{min-height:16px}

@media(max-height:720px){
  .game-intro-card{padding:10px 12px;border-radius:24px}.game-intro-mascot{height:47px}.intro-mascot{width:43px;height:49px}.game-intro-icon{font-size:25px}.game-intro-card h1{font-size:26px}.game-intro-card>p{font-size:9px;margin-bottom:6px}.game-how{gap:4px;padding:7px}.game-how>div{grid-template-columns:21px 1fr;gap:6px}.game-how>div>span{width:21px;height:21px}.game-how p{font-size:8px}.game-reward-note{margin:6px 0;padding:5px 7px}.game-intro-card>.btn.xl{min-height:40px}
  .games-layout .games-hero{margin-bottom:5px}
}

/* V5.0.4 — quota/paywall flow + evolved character consistency */
.strip-mascot{width:42px;height:48px;display:block;transform:translateY(2px)}
.quota-overlay{z-index:155;background:rgba(21,24,27,.52);backdrop-filter:blur(9px)}
.quota-card{position:relative;width:min(100%,410px);max-height:min(88dvh,760px);overflow:auto;background:var(--surface);border:2px solid var(--line);border-radius:30px;padding:22px 18px 18px;box-shadow:0 18px 70px rgba(0,0,0,.28);text-align:center}
.quota-card>.sheet-close{position:absolute;top:14px;left:14px;z-index:2}
.quota-character{height:104px;display:grid;place-items:center;margin:-6px 0 4px}.quota-mascot{width:92px;height:108px}
.quota-card h2{font-size:28px;line-height:1.05;letter-spacing:-.045em;margin:5px 0 7px}.quota-card>p{font-size:12px;line-height:1.55;color:var(--text-2);margin:0 auto 15px;max-width:330px}
.reset-clock{border:2px solid #cbe6d4;background:var(--v4-green-soft);border-radius:20px;padding:11px 13px;margin:0 0 12px;display:grid;gap:2px}.reset-clock small,.reset-clock span{font-size:9px;color:var(--text-2)}.reset-clock strong{font-size:32px;letter-spacing:.04em;font-variant-numeric:tabular-nums;direction:ltr;color:var(--v4-green-dark)}
.pack-offer{border:2px solid #ead477;background:var(--v4-yellow-soft);border-radius:21px;padding:12px;margin-bottom:9px}.pack-offer>div{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:10px}.pack-offer>div>span{display:grid;text-align:right}.pack-offer strong{font-size:13px}.pack-offer small{font-size:9px;color:var(--text-2)}.pack-offer .btn{width:100%}.wallet-note{display:block;margin-top:7px;font-size:9px;color:var(--text-2)}
.insufficient-card .missing-coins{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:18px;background:var(--v4-yellow-soft);border:2px solid #ead477;padding:12px;margin:10px 0 14px}.missing-coins strong{font-size:16px;color:#6b5100}.insufficient-card .btn{width:100%;margin-top:8px}
html[data-theme="dark"] .quota-card{border-color:#34383b}html[data-theme="dark"] .reset-clock{border-color:#315941}html[data-theme="dark"] .reset-clock strong{color:#8ce6ad}html[data-theme="dark"] .pack-offer,html[data-theme="dark"] .insufficient-card .missing-coins{border-color:#6f5c21;background:#352f1a}html[data-theme="dark"] .missing-coins strong{color:#ffd86a}
@media(max-height:700px){.quota-card{padding-top:16px}.quota-character{height:78px}.quota-mascot{width:70px;height:82px}.quota-card h2{font-size:24px}.reset-clock strong{font-size:27px}.quota-card>p{margin-bottom:9px}}

/* ========================= V5.0.5 — game rails, daily locks, long bottle evolution ========================= */
.shell-dash.dash-games .main>.main-wrap{overflow:hidden!important;min-height:0;display:flex;flex-direction:column}
.game-shell.active-game-scroll{flex:1 1 auto;min-height:0;height:100%;max-height:100%;overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;overscroll-behavior-y:contain;overscroll-behavior-x:none;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:14px;position:relative}
.game-shell.active-game-scroll::-webkit-scrollbar{display:none}
.game-shell.active-game-scroll .game-top{position:sticky;top:0;z-index:8;background:color-mix(in srgb,var(--bg) 94%,transparent 6%);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding-top:2px}
.game-shell.active-game-scroll.intro-shell{display:block!important;height:100%!important;overflow-y:auto!important;align-items:initial!important;justify-content:initial!important}
.game-shell.active-game-scroll .game-intro-card{height:auto!important;min-height:min(100%,620px)!important;overflow:visible!important;margin-bottom:12px}
.game-shell.active-game-scroll .trend-game-stage,.game-shell.active-game-scroll .time-stage,.game-shell.active-game-scroll .mystery-stage{height:auto!important;min-height:0!important;overflow:visible!important;padding-bottom:18px!important}
.game-shell.active-game-scroll .guess-stage,.game-shell.active-game-scroll .higher-stage{margin-bottom:14px}
.game-round{display:block;margin-top:2px;font-size:8px;color:var(--text-3);font-weight:900}

.game-tile.daily-done{filter:grayscale(.75);opacity:.56!important;background:var(--surface-2)!important;border-color:var(--line)!important;box-shadow:0 2px 0 var(--line-strong)!important;cursor:default}
.game-tile.daily-done .game-icon{background:#e7e9eb!important;color:#667078!important;border-color:#cbd0d4!important}
.game-tile.daily-done .play-pill{background:#e0e3e6!important;color:#6d757b!important;border-color:#c6ccd0!important;box-shadow:none!important}
html[data-theme="dark"] .game-tile.daily-done .game-icon,html[data-theme="dark"] .game-tile.daily-done .play-pill{background:#2b2f32!important;color:#aab1b6!important;border-color:#40464a!important}

.game-finish-scroll{min-height:100%;display:grid;place-items:center;padding:12px 2px 18px}.game-finish-card{width:min(100%,430px);position:relative;overflow:hidden;text-align:center;border:2px solid #e3c55b;background:var(--v4-yellow-soft);border-radius:30px;box-shadow:0 6px 0 #cda93b;padding:20px 16px}.finish-rays{position:absolute;inset:-65%;background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.0) 0 12deg,rgba(255,255,255,.32) 12deg 22deg);animation:slowSpin 18s linear infinite}.finish-host{height:100px;position:relative;z-index:1;display:grid;place-items:center}.finish-mascot{width:88px;height:104px;animation:buddyFloat 1.8s ease-in-out infinite}.game-finish-card .eyebrow,.game-finish-card h1,.game-finish-card p,.finish-score,.finish-rewards,.game-finish-card .btn{position:relative;z-index:1}.game-finish-card h1{font-size:30px;margin:4px 0}.game-finish-card p{font-size:11px;line-height:1.5;color:var(--text-2)}.finish-score{display:inline-grid;margin:8px auto 10px;padding:9px 18px;border-radius:18px;background:rgba(255,255,255,.72);border:1px solid #ead47b}.finish-score strong{font-size:30px;line-height:1}.finish-score span{font-size:8px;color:var(--text-2)}.finish-rewards{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;font-size:10px;font-weight:900}.game-finish-card .btn{width:min(100%,330px)}

/* Evolution accessories: one shared character, meaningful milestones. */
.crew-cap{fill:#ffcf52;stroke:#72580d;stroke-width:2}.crew-cape{fill:#7458d8;stroke:#443199;stroke-width:2}.crew-neon{fill:none;stroke:#51e7cf;stroke-width:3;filter:drop-shadow(0 0 4px #51e7cf)}.crew-space{fill:none;stroke:#8bb7ff;stroke-width:3}.crew-royal{fill:#f1b928;stroke:#8c6410;stroke-width:2}.crew-rockstar{fill:#222;stroke:#222;stroke-width:2}.crew-rockstar path{fill:none;stroke:#db4f68;stroke-width:3}.crew-future{fill:#86f1e4;stroke:#277f87;stroke-width:2;opacity:.92}.crew-diamond{fill:#8adff6;stroke:#2c7d99;stroke-width:2}.crew-mythic{fill:#d7c6ff;stroke:#7057a8;stroke-width:2}.variant-space .bottle-shell{fill:#eaf3ff}.variant-neon .bottle-label{fill:#163d43}.variant-diamond .bottle-label{fill:#d9f7ff}.variant-legendary{filter:drop-shadow(0 0 10px rgba(255,204,57,.65)) drop-shadow(0 5px 0 rgba(28,38,43,.10))}

@media(max-height:700px){.game-shell.active-game-scroll .game-top{padding-top:0}.game-finish-card{padding:13px 12px}.finish-host{height:76px}.finish-mascot{width:67px;height:81px}.game-finish-card h1{font-size:25px}}
.game-shell.active-game-scroll>div:first-child{height:auto!important;min-height:0!important}
.game-shell.active-game-scroll>.arena-start,.game-shell.active-game-scroll>.arena-round,.game-shell.active-game-scroll>.champion-screen,.game-shell.active-game-scroll>.scraps-start,.game-shell.active-game-scroll>.worst-screen{height:auto!important;min-height:min-content!important}

/* ========================= V5.0.6 — clean completed daily names screen ========================= */
.quota-complete-screen{
  justify-content:flex-start!important;
  gap:0;
  padding:clamp(12px,2vh,18px) clamp(14px,4vw,22px) 13px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-y:contain;
}
.quota-complete-screen::-webkit-scrollbar{display:none}
.quota-complete-screen>*{position:relative;z-index:1}
.quota-complete-screen:before{right:7%;top:7%;font-size:44px}
.quota-complete-screen:after{left:7%;bottom:7%;font-size:28px}
.daily-complete-badge{display:inline-flex;align-items:center;gap:7px;max-width:100%;border:1.5px solid #ead06d;background:rgba(255,255,255,.58);border-radius:999px;padding:6px 11px;color:#8b6710;font-size:9px;font-weight:900;line-height:1;margin-bottom:5px;white-space:nowrap}
.daily-complete-badge span{font-size:16px;color:#d49a09;line-height:1}
.daily-complete-title{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}
.quota-complete-screen .daily-complete-title h1{font-size:clamp(31px,9vw,45px)!important;line-height:.98;margin:5px 0 3px!important;letter-spacing:-.055em;white-space:nowrap}
.daily-sad-emoji{font-size:clamp(27px,7.5vw,38px);line-height:1;filter:saturate(.88)}
.quota-complete-screen .daily-complete-copy{font-size:11px!important;line-height:1.45!important;margin:0 0 5px!important;color:var(--text-2);max-width:360px}
.quota-complete-screen .daily-complete-copy strong{color:var(--text);font-size:1.08em}
.daily-sad-scene{width:min(100%,232px);height:clamp(112px,15vh,132px);margin:3px auto 7px;display:grid;place-items:end center;position:relative;isolation:isolate;overflow:visible}
.daily-sad-scene:before{content:"";position:absolute;width:clamp(120px,36vw,154px);height:clamp(78px,11vh,102px);border-radius:50% 50% 44% 44%;background:linear-gradient(180deg,#edf8e8 0%,#e3f4dd 100%);z-index:-2;bottom:4px}
.daily-sad-scene:after{content:"";position:absolute;width:126px;height:9px;border-radius:50%;background:rgba(74,137,85,.10);bottom:1px;z-index:-1}
.daily-sad-mascot.mascot-bottle-img{width:auto!important;height:clamp(104px,14vh,124px)!important;max-width:168px!important;max-height:124px!important;display:block;transform:none!important;object-fit:contain}
.daily-cloud{position:absolute;width:26px;height:9px;border-radius:999px;background:#cce7b5;opacity:.82;z-index:-1}
.daily-cloud:before,.daily-cloud:after{content:"";position:absolute;background:inherit;border-radius:50%;bottom:1px}.daily-cloud:before{width:12px;height:12px;right:4px}.daily-cloud:after{width:9px;height:9px;left:4px}
.daily-cloud.cloud-a{right:23px;top:30px}.daily-cloud.cloud-b{left:23px;top:47px;transform:scale(.8)}
.daily-leaf{position:absolute;width:27px;height:43px;border-radius:80% 0 80% 0;background:#9dd27d;opacity:.92;bottom:4px;z-index:-1}.daily-leaf.leaf-a{right:35px;transform:rotate(25deg)}.daily-leaf.leaf-b{left:35px;transform:scaleX(-1) rotate(25deg)}
.daily-reset-panel{width:min(100%,390px);border:2px solid #ead06d;background:rgba(255,255,255,.88);border-radius:22px;padding:10px 12px 9px;display:grid;gap:1px;box-shadow:0 2px 0 rgba(217,184,74,.18);margin:0 auto;position:relative;z-index:3}
.daily-reset-panel small{font-size:10px;font-weight:900;color:var(--v4-green-dark)}
.daily-reset-panel strong{direction:ltr;font-size:clamp(35px,10.5vw,52px);line-height:1.05;letter-spacing:.025em;font-variant-numeric:tabular-nums;color:var(--v4-green-dark);margin:2px 0}
.daily-reset-panel span{font-size:8px;color:var(--text-3);font-weight:750}
.quota-complete-screen .daily-next-copy{font-size:9px!important;line-height:1.4!important;margin:6px 0!important;color:var(--text-2);max-width:360px}
.quota-complete-screen .daily-rewards{width:min(100%,360px);display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px!important;margin:0 auto 5px!important}
.quota-complete-screen .daily-rewards>span{min-width:0;min-height:39px;padding:5px 7px!important;border:1.5px solid #ead47f!important;border-radius:14px!important;background:rgba(255,255,255,.78)!important;display:flex;align-items:center;justify-content:center;gap:4px;font-size:9px!important;white-space:nowrap}
.quota-complete-screen .daily-rewards .reward-streak{color:#755815!important}.quota-complete-screen .daily-rewards .reward-streak b{font-size:11px}
.quota-complete-screen .daily-pack-btn{width:min(100%,360px)!important;min-height:42px;margin:1px auto 0!important}
.daily-wallet-note{font-size:8px;color:var(--text-3);margin-top:4px}
html[data-theme="dark"] .daily-complete-badge,html[data-theme="dark"] .daily-reset-panel,html[data-theme="dark"] .quota-complete-screen .daily-rewards>span{background:rgba(35,35,32,.82)!important;border-color:#6f5c21!important}
html[data-theme="dark"] .daily-reset-panel strong,html[data-theme="dark"] .daily-reset-panel small{color:#8ce6ad}
html[data-theme="dark"] .daily-sad-scene:before{background:linear-gradient(180deg,#263c2a,#223623)}

@media(max-height:760px){
  .quota-complete-screen{padding:9px 12px 8px!important}
  .daily-complete-badge{padding:4px 9px;margin-bottom:2px;font-size:8px}.daily-complete-badge span{font-size:13px}
  .quota-complete-screen .daily-complete-title h1{font-size:29px!important;margin:3px 0 1px!important}.daily-sad-emoji{font-size:25px}
  .quota-complete-screen .daily-complete-copy{font-size:9px!important;margin-bottom:2px!important}
  .daily-sad-scene{height:94px;margin:1px auto 4px}.daily-sad-mascot.mascot-bottle-img{height:88px!important;max-height:88px!important;max-width:122px!important}.daily-sad-scene:before{width:112px;height:70px}.daily-cloud{display:none}.daily-leaf{height:28px;width:18px}
  .daily-reset-panel{padding:6px 10px 5px;border-radius:18px}.daily-reset-panel small{font-size:8px}.daily-reset-panel strong{font-size:34px}.daily-reset-panel span{font-size:7px}
  .quota-complete-screen .daily-next-copy{font-size:8px!important;margin:3px 0!important}
  .quota-complete-screen .daily-rewards>span{min-height:32px;padding:3px 5px!important;font-size:8px!important}
  .quota-complete-screen .daily-pack-btn{min-height:36px!important;height:36px!important;margin-top:0!important}.daily-wallet-note{font-size:7px;margin-top:2px}
}
@media(max-height:650px){
  .quota-complete-screen .daily-complete-copy,.quota-complete-screen .daily-next-copy{display:none}
  .daily-sad-scene{height:76px}.daily-sad-mascot.mascot-bottle-img{height:70px!important;max-height:70px!important;max-width:104px!important}.daily-sad-scene:before{width:94px;height:54px}.daily-leaf{display:none}
  .daily-reset-panel strong{font-size:31px}
  .quota-complete-screen .daily-rewards{margin-bottom:3px!important}
}


/* ========================= V5.0.7 — approved baby-bottle character system ========================= */
.mascot-bottle-img{
  display:block;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  background:transparent!important;
  border:0;
  user-select:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 3px 2px rgba(39,71,118,.10));
}
.mascot-bottle-img.mood-regular,.mascot-bottle-img.mood-sad,.mascot-bottle-img.mood-done{transform-origin:50% 88%}
.mascot-bottle-img.mood-happy,.mascot-bottle-img.mood-celebrate,.mascot-bottle-img.mood-surprised{transform-origin:50% 90%}
.mascot-brand .mascot-bottle-img{filter:none}
.header-mascot.mascot-bottle-img,.mini-mascot.mascot-bottle-img,.library-mascot.mascot-bottle-img{filter:drop-shadow(0 2px 2px rgba(39,71,118,.10))}
.daily-sad-mascot.mascot-bottle-img,.quota-mascot.mascot-bottle-img{filter:drop-shadow(0 6px 5px rgba(39,71,118,.15))}


/* ========================= V5.0.8 — transparent mascot sizing + quota layout fix ========================= */
/* The raster mascot must respect the dimensions assigned by each UI context. */
.header-mascot.mascot-bottle-img{width:30px;height:36px}
.mini-mascot.mascot-bottle-img{width:34px;height:40px}
.strip-mascot.mascot-bottle-img{width:42px;height:48px}
.brand-mascot.mascot-bottle-img{width:58px;height:67px}
.boot-mascot.mascot-bottle-img{width:55px;height:66px}
.library-mascot.mascot-bottle-img{width:34px;height:38px}
.status-mascot.mascot-bottle-img{width:44px;height:52px}
.evo-mascot.mascot-bottle-img{width:58px;height:68px}
.path-mascot.mascot-bottle-img{width:60px;height:68px}
.empty-mascot.mascot-bottle-img{width:96px;height:104px}
.quota-mascot.mascot-bottle-img{width:92px;height:108px}
.journey-mascot.mascot-bottle-img{width:78px;height:88px}
.journey-crew.main-character .journey-mascot.mascot-bottle-img{width:92px;height:108px}
@media(max-width:560px){
  .library-mascot.mascot-bottle-img{width:30px;height:34px}
}
@media(max-height:760px){
  .journey-crew.main-character .journey-mascot.mascot-bottle-img{width:68px;height:81px}
}
@media(max-height:700px){
  .quota-mascot.mascot-bottle-img{width:70px;height:82px}
}

/* ========================= V5.0.9 — unified raster mascot system ========================= */
.mascot-bottle-img,.mascot-rattle-img,.mascot-pacifier-img{
  display:block;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
  background:transparent!important;
  border:0;
  user-select:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 3px 2px rgba(39,71,118,.11));
}
.mascot-rattle-img,.mascot-pacifier-img{transform-origin:50% 88%}
.resource-crew .mascot-rattle-img,.resource-crew .mascot-pacifier-img{object-fit:contain}
.mystery-mascot{width:66px;height:66px;filter:none;transform:rotate(4deg)}
.task-mascot{width:34px;height:34px;filter:none}
.mascot-task{overflow:visible!important;background:transparent!important}
@media(max-height:700px){.mystery-mascot{width:51px;height:51px}}
.reaction-mascot{width:34px;height:34px;filter:none;transform:rotate(6deg)}
.journey-action-icon .action-mascot{width:32px;height:32px;filter:none}

/* ========================= V6.0 — playful product system ========================= */
:root{
  --v6-green:#43b97f;
  --v6-green-dark:#23885a;
  --v6-green-soft:#e9f8ef;
  --v6-blue:#4f8ef7;
  --v6-purple:#7659e8;
  --v6-yellow:#ffd45b;
  --v6-yellow-dark:#c99516;
  --v6-coral:#ff7d86;
  --v6-ink:#20303a;
  --brand:var(--v6-green);
}
html[data-theme="dark"]{
  --bg:#101713;
  --bg-2:#151f19;
  --surface:#1c2821;
  --surface-2:#243229;
  --surface-glass:rgba(28,40,33,.90);
  --text:#f7fbf8;
  --text-2:#cbd7cf;
  --text-3:#9aaba0;
  --line:rgba(225,255,236,.10);
  --line-strong:rgba(225,255,236,.18);
  --brand:#59d394;
  --brand-2:#b28cff;
}
body{background:
  radial-gradient(circle at 7% -5%,color-mix(in srgb,var(--brand) 16%,transparent),transparent 29%),
  radial-gradient(circle at 96% 5%,rgba(118,89,232,.11),transparent 26%),var(--bg)}
.card,.glass-card{box-shadow:0 4px 0 color-mix(in srgb,var(--line-strong) 78%,transparent),0 12px 28px rgba(30,48,39,.07)}
.btn,.journey-action,.game-tile,.task-card,.next-best-action,.v6-shortcuts button{transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}
.btn:active:not(:disabled),.journey-action:active,.task-card:active,.next-best-action:active,.v6-shortcuts button:active{transform:translateY(2px) scale(.992)}
.bottom-nav{border-top:1px solid var(--line-strong);box-shadow:0 -8px 28px rgba(22,36,28,.06)}
.nav-btn{font-size:10px;font-weight:850}.nav-btn.active{color:var(--brand)}
.nav-btn.active:before{content:"";width:34px;height:4px;border-radius:99px;background:currentColor;position:absolute;top:5px}.nav-btn{position:relative}
.segmented{border-width:2px;box-shadow:0 3px 0 var(--line)}
.segmented button.active{box-shadow:0 2px 0 var(--line-strong);font-weight:900}

/* Next best action + V6 home */
.v6-home{display:grid;gap:10px}
.next-best-action{width:100%;border:2px solid #9cd9b4;background:linear-gradient(140deg,#e9f8ef 0%,#f9fff9 72%);border-radius:26px;box-shadow:0 5px 0 #75bc91,0 16px 34px rgba(40,117,74,.10);padding:13px 15px;display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:center;text-align:right;color:#173c29;overflow:hidden;position:relative}
.next-best-action:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:rgba(67,185,127,.08);inset-inline-start:-65px;top:-65px}
.nba-mascot{height:88px;display:grid;place-items:center;z-index:1}.nba-mascot-img{width:84px;height:88px;animation:crewIdle 2.5s ease-in-out infinite;filter:drop-shadow(0 5px 3px rgba(39,71,118,.12))}
.nba-copy{min-width:0;display:grid;gap:2px;position:relative;z-index:1}.nba-copy>small{font-size:8px;letter-spacing:.08em;font-weight:950;color:#2f9865}.nba-copy>strong{font-size:20px;line-height:1.06;letter-spacing:-.045em}.nba-copy>em{font-style:normal;font-size:9px;line-height:1.4;color:#496457}.nba-copy>b{margin-top:6px;display:flex;align-items:center;gap:4px;font-size:10px}.nba-copy>b .icon{width:14px;height:14px}
html[data-theme="dark"] .next-best-action{background:linear-gradient(140deg,#1f3b2c,#213229);border-color:#397955;box-shadow:0 5px 0 #27543c;color:#f5fff8}html[data-theme="dark"] .nba-copy>em{color:#bad0c2}
.v6-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.v6-shortcuts button{min-width:0;min-height:70px;border:2px solid var(--line);background:var(--surface);border-radius:19px;box-shadow:0 3px 0 var(--line-strong);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:7px 4px;color:var(--text)}
.v6-shortcuts span{font-size:21px;line-height:1}.v6-shortcuts b{font-size:9px}.v6-shortcuts small{font-size:7px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.secondary-actions{gap:7px}.secondary-actions .journey-action{min-height:66px}
.daily-reveal-v6{border:2px solid #dad1f5;background:#f5f1ff;border-radius:23px;box-shadow:0 4px 0 #c1b2ec;padding:12px 13px;display:grid;grid-template-columns:46px 1fr 40px;align-items:center;gap:9px}.daily-reveal-v6.gold-match{border-color:#e4c45a;background:#fff9dc;box-shadow:0 4px 0 #cda834}.reveal-spark{font-size:28px;text-align:center}.daily-reveal-v6 h2{font-size:17px;margin:1px 0 2px}.daily-reveal-v6 p{font-size:8px;color:var(--text-2);margin:0;line-height:1.35}.share-round{width:38px;height:38px;border-radius:13px;border:2px solid var(--line);background:var(--surface);display:grid;place-items:center}.share-round .icon{width:17px;height:17px}
html[data-theme="dark"] .daily-reveal-v6{background:#29233a;border-color:#50436f;box-shadow:0 4px 0 #3c3351}html[data-theme="dark"] .daily-reveal-v6.gold-match{background:#3b3217;border-color:#746126;box-shadow:0 4px 0 #57481c}

/* Wildcard */
.wildcard-badge{width:max-content;max-width:100%;margin:0 auto 8px;padding:5px 9px;border:1px solid #d5c8f3;border-radius:999px;background:#f3efff;color:#654cb6;font-size:8px;font-weight:900;letter-spacing:.02em}.tinder-wildcard{position:absolute;top:54px;right:16px;z-index:4;border-radius:999px;background:#f3efff;color:#654cb6;border:1px solid #d5c8f3;padding:5px 8px;font-size:8px;font-weight:900;box-shadow:0 2px 8px rgba(75,54,125,.09)}
html[data-theme="dark"] .wildcard-badge,html[data-theme="dark"] .tinder-wildcard{background:#332a4a;color:#d7c8ff;border-color:#554576}

/* Review hero: pacifier gets real stage presence */
.v6-review-head{overflow:visible;background:transparent}.review-hero-v6{min-height:168px;border:2px solid #cfc5f1;background:linear-gradient(140deg,#f2efff,#fbfaff);border-radius:27px;box-shadow:0 5px 0 #b7a9e6,0 15px 30px rgba(87,65,153,.09);padding:14px 14px 12px;display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:8px;align-items:center;overflow:hidden;position:relative;margin:1px 0 10px}.review-hero-v6:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(118,89,232,.07);inset-inline-end:-70px;top:-60px}.review-hero-copy{position:relative;z-index:1;min-width:0}.review-hero-copy h1{font-size:31px;letter-spacing:-.05em;line-height:1;margin:3px 0 6px}.review-hero-copy p{font-size:9px;line-height:1.45;color:var(--text-2);margin:0;max-width:330px}.review-hero-count{display:flex;align-items:baseline;gap:6px;margin-top:9px}.review-hero-count strong{font-size:27px;color:#6d55ce}.review-hero-count span{font-size:8px;font-weight:800;color:var(--text-3)}.review-hero-character{height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:1}.review-hero-mascot{width:128px;height:128px;animation:pacifierFloat 2.9s ease-in-out infinite;filter:drop-shadow(0 8px 5px rgba(90,76,145,.16))}.review-hero-character>span{margin-top:-14px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:7px;font-weight:900;box-shadow:0 2px 0 var(--line)}
html[data-theme="dark"] .review-hero-v6{background:linear-gradient(140deg,#2c263e,#241f32);border-color:#4c416b;box-shadow:0 5px 0 #392f50}.review-hero-count strong{color:#8d72ee}
@keyframes pacifierFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(1deg)}}

/* Arcade hero + dark contrast fixes */
.v6-games-hero{min-height:160px;display:grid!important;grid-template-columns:minmax(0,1fr) 122px;align-items:center;gap:9px;text-align:right!important;padding:14px 15px!important;background:linear-gradient(145deg,#e9f8ef,#f7fff9)!important;border-color:#a8dcb9!important;box-shadow:0 5px 0 #79bd92!important;overflow:hidden;position:relative}
.v6-games-hero:after{display:block!important;content:""!important;position:absolute!important;width:170px!important;height:170px!important;border-radius:50%!important;background:rgba(67,185,127,.09)!important;inset-inline-end:-65px!important;top:-70px!important;filter:none!important;opacity:1!important}.arcade-hero-copy{position:relative;z-index:2;min-width:0}.arcade-hero-copy h2{font-size:25px!important;line-height:1.02!important;margin:3px 0 6px!important}.arcade-hero-copy p{font-size:9px!important;line-height:1.4!important;text-align:right!important;color:#4f6a5b!important}.arcade-promise{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.arcade-promise>span{display:flex;align-items:center;gap:3px;border:1px solid #c4e5d0;background:rgba(255,255,255,.72);border-radius:999px;padding:4px 7px;font-size:7px;font-weight:850;color:#315843}.arcade-promise .coin-token>i{width:16px;height:16px}.arcade-hero-character{height:138px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:2}.arcade-hero-character .arcade-mascot{width:118px;height:126px;animation:rattleWiggle 2.5s ease-in-out infinite;filter:drop-shadow(0 8px 5px rgba(37,92,58,.15))}.arcade-hero-character>span{margin-top:-16px;background:#fff;border:2px solid #b8dfc6;box-shadow:0 2px 0 #8fc5a2;border-radius:999px;padding:4px 8px;font-size:7px;font-weight:950;color:#27533a}
html[data-theme="dark"] .v6-games-hero{background:linear-gradient(145deg,#1d3829,#1d2e24)!important;border-color:#397554!important;box-shadow:0 5px 0 #28543c!important}html[data-theme="dark"] .arcade-hero-copy p{color:#c5d6cb!important}html[data-theme="dark"] .arcade-promise>span{background:#263c2e;border-color:#3c634b;color:#eaf8ef}html[data-theme="dark"] .arcade-hero-character>span{background:#203328;border-color:#3d674c;color:#e8f8ed;box-shadow:0 2px 0 #294535}
html[data-theme="dark"] .game-tile{filter:none!important;color:#f7fbf8!important;background:var(--surface)!important;border-color:var(--line-strong)!important;box-shadow:0 4px 0 rgba(0,0,0,.35)!important}html[data-theme="dark"] .game-tile strong{color:#fff!important;text-shadow:0 1px 0 rgba(0,0,0,.25)}html[data-theme="dark"] .game-tile small{color:#b5c4ba!important}html[data-theme="dark"] .game-tile p{color:#d1ddd5!important}html[data-theme="dark"] .game-tile .game-icon{background:#2a392f!important;border-color:#405347!important;color:#fff!important}html[data-theme="dark"] .game-tile .play-pill{background:#eef7f1!important;color:#16241b!important}
html[data-theme="dark"] .game-tile.duel{background:#342f1d!important;border-color:#62572f!important}html[data-theme="dark"] .game-tile.scraps{background:#29321e!important;border-color:#4d5d33!important}html[data-theme="dark"] .game-tile.guess{background:#2d2940!important;border-color:#50476e!important}html[data-theme="dark"] .game-tile.higher{background:#233241!important;border-color:#3c566e!important}html[data-theme="dark"] .game-tile.trend{background:#203628!important;border-color:#365c43!important}html[data-theme="dark"] .game-tile.time{background:#3a2a23!important;border-color:#68483a!important}html[data-theme="dark"] .game-tile.mystery{background:#252e45!important;border-color:#3f4d70!important}
.game-tile.daily-done{opacity:.62!important}.game-tile.daily-done strong{color:var(--text-2)!important}.game-tile.daily-done p{color:var(--text-3)!important}
.host-mascot{width:66px!important;height:70px!important;animation:crewBob 2.1s ease-in-out infinite}.reaction-mascot{width:45px!important;height:45px!important}.finish-mascot{width:105px!important;height:112px!important}.arena-mascot{width:76px;height:80px}.champion-mascot{width:96px;height:104px;animation:crewBob 1.8s ease-in-out infinite}.champion-crown{height:104px;display:grid;place-items:center}.champion-actions{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:min(100%,330px)}

/* DNA preview + V6 sheets */
.v6-mini-panel{border:2px solid var(--line);background:var(--surface);border-radius:25px;box-shadow:0 4px 0 var(--line-strong);padding:13px;margin:10px 0}.section-head.compact{margin-bottom:8px}.section-head.compact h2{font-size:18px;margin:1px 0}.dna-mini-bars{display:grid;gap:7px}.dna-mini-bars>div{display:grid;grid-template-columns:92px 1fr 34px;align-items:center;gap:7px;font-size:8px}.dna-mini-bars span{font-weight:800}.dna-mini-bars i,.dna-track,.mission-card i{height:8px;border-radius:99px;background:var(--surface-2);border:1px solid var(--line);overflow:hidden}.dna-mini-bars i b,.dna-track i,.mission-card i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#53c788,#7a62e6)}.dna-mini-bars strong{font-size:9px;text-align:left;color:var(--text-2)}
.v6-overlay{z-index:170;background:rgba(18,27,22,.58);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px)}.v6-sheet{position:relative;width:min(100%,520px);max-height:min(88dvh,780px);overflow:auto;background:var(--surface);border:2px solid var(--line-strong);border-radius:31px;box-shadow:0 20px 80px rgba(0,0,0,.30);padding:19px 16px 17px}.v6-sheet>.sheet-close{position:sticky;top:0;float:left;z-index:5}.v6-sheet-hero{display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:center;padding:7px 38px 13px 0}.v6-sheet-hero>span{font-size:42px}.v6-sheet-hero h2{font-size:25px;letter-spacing:-.04em;margin:2px 0 4px}.v6-sheet-hero p{font-size:9px;line-height:1.45;color:var(--text-2);margin:0}.dna-full{display:grid;gap:11px}.dna-row{display:grid;grid-template-columns:120px 1fr 34px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:9px;background:var(--surface-2)}.dna-row>div:first-child{display:grid;gap:2px}.dna-row strong{font-size:10px}.dna-row span{font-size:6.5px;color:var(--text-3)}.dna-row>b{font-size:10px;text-align:left}.v6-insight-note{margin-top:12px;padding:9px 11px;border-radius:15px;background:var(--v6-green-soft);color:#315843;font-size:8px;line-height:1.4;font-weight:700}html[data-theme="dark"] .v6-insight-note{background:#20372a;color:#cce4d4}
.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.collection-item{border:2px solid var(--line);background:var(--surface-2);border-radius:18px;padding:8px 5px;text-align:center;min-height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 2px 0 var(--line)}.collection-item.current{border-color:#e1bd47;background:#fff8dc;box-shadow:0 3px 0 #c69f2f}.collection-item.locked{filter:saturate(.2);opacity:.64}.collection-item>div{height:72px;display:grid;place-items:center}.collection-mascot{width:72px;height:78px}.locked-silhouette{width:54px;height:65px;border-radius:25px;background:var(--line-strong);display:grid;place-items:center;font-size:23px;font-weight:950;color:var(--text-3)}.collection-item small{font-size:6px;color:var(--text-3)}.collection-item strong{font-size:8px;margin:2px 0}.collection-item em{font-style:normal;font-size:6px;color:var(--brand);font-weight:850}html[data-theme="dark"] .collection-item.current{background:#393117;border-color:#6f5c22}
.mission-list{display:grid;gap:8px}.mission-card{display:grid;grid-template-columns:42px 1fr 44px;gap:9px;align-items:center;border:2px solid var(--line);background:var(--surface-2);border-radius:18px;padding:10px}.mission-card>span{font-size:26px;text-align:center}.mission-card>div{display:grid;gap:3px}.mission-card strong{font-size:11px}.mission-card small{font-size:7px;color:var(--text-3)}.mission-card>em{font-style:normal;font-size:9px;font-weight:900;text-align:left}.museum-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.museum-card{min-height:126px;border:2px solid var(--line);background:var(--surface-2);border-radius:18px;padding:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:3px}.museum-card.done{border-color:#e8d183;background:#fff9e4;box-shadow:0 3px 0 #d2b85d}.museum-card.locked{opacity:.58}.museum-card>span{font-size:28px}.museum-card strong{font-size:10px}.museum-card small{font-size:7px;color:var(--text-2)}.museum-card em{font-style:normal;font-size:6px;font-weight:850;color:var(--brand)}html[data-theme="dark"] .museum-card.done{background:#383118;border-color:#665827;box-shadow:0 3px 0 #4f431d}
.v6-settings-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0}.setting-toggle{border:2px solid var(--line);background:var(--surface-2);border-radius:16px;padding:9px;display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;text-align:right;align-items:center;color:var(--text)}.setting-toggle>span{grid-row:1/3;font-size:21px}.setting-toggle b{font-size:9px}.setting-toggle i{font-style:normal;font-size:7px;color:var(--text-3)}.setting-toggle.on{border-color:#8bd2a6;background:var(--v6-green-soft)}html[data-theme="dark"] .setting-toggle.on{background:#213729;border-color:#396a4b}

/* Game readability in every theme */
.game-top h2,.game-top p,.guess-stage h1,.higher-stage h1,.trend-fighter strong,.time-card strong,.mystery-options button{color:var(--text)!important}.game-score strong{color:var(--text)!important}.game-score span,.game-score small{color:var(--text-2)!important}.game-reaction,.higher-reveal,.game-reveal{color:var(--text)!important}
html[data-theme="dark"] .guess-option,html[data-theme="dark"] .side-choice,html[data-theme="dark"] .time-card,html[data-theme="dark"] .trend-fighter,html[data-theme="dark"] .mystery-options button{color:#f7fbf8!important}

@media(max-width:430px){
  .review-hero-v6{grid-template-columns:minmax(0,1fr) 118px;min-height:154px}.review-hero-mascot{width:112px;height:112px}.review-hero-character{height:128px}.review-hero-copy h1{font-size:28px}
  .v6-games-hero{grid-template-columns:minmax(0,1fr) 108px;min-height:148px}.arcade-hero-character{height:124px}.arcade-hero-character .arcade-mascot{width:104px;height:112px}.arcade-hero-copy h2{font-size:22px!important}
  .next-best-action{grid-template-columns:76px 1fr}.nba-mascot{height:78px}.nba-mascot-img{width:74px;height:78px}.nba-copy>strong{font-size:18px}
  .v6-shortcuts{gap:5px}.v6-shortcuts button{min-height:64px;border-radius:17px}.v6-shortcuts span{font-size:19px}
  .collection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-item{min-height:128px}.collection-item>div{height:62px}.collection-mascot{width:62px;height:66px}
}
@media(max-height:760px){
  .review-hero-v6{min-height:135px;padding-block:9px}.review-hero-character{height:110px}.review-hero-mascot{width:98px;height:102px}.review-hero-copy p{display:none}.review-hero-count{margin-top:5px}
  .v6-games-hero{min-height:128px!important;padding-block:8px!important}.arcade-hero-character{height:105px}.arcade-hero-character .arcade-mascot{width:92px;height:100px}.arcade-hero-copy h2{font-size:20px!important}.arcade-hero-copy p{display:none}.arcade-promise{margin-top:5px}
  .next-best-action{padding-block:8px;grid-template-columns:66px 1fr}.nba-mascot{height:66px}.nba-mascot-img{width:64px;height:68px}.nba-copy>em{display:none}.v6-shortcuts button{min-height:55px}.v6-shortcuts small{display:none}
}
@media(prefers-reduced-motion:reduce){.review-hero-mascot,.arcade-mascot,.nba-mascot-img,.host-mascot,.finish-mascot,.champion-mascot{animation:none!important}}

/* V6.0 senior polish pass — hierarchy, disabled readability, tournament host */
:root{
  --bg:#f6fbf7;
  --bg-2:#edf6f0;
  --surface:#ffffff;
  --surface-2:#f1f7f3;
  --surface-glass:rgba(255,255,255,.88);
  --text:#20302a;
  --text-2:#53675b;
  --text-3:#7d9084;
  --line:rgba(30,74,48,.10);
  --line-strong:rgba(30,74,48,.18);
}
.header{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 94%,transparent) 76%,transparent)}
.header-inner{min-height:72px}
.avatar{border:2px solid rgba(255,255,255,.7);box-shadow:0 4px 0 rgba(40,54,47,.14),0 10px 22px rgba(40,54,47,.08)}
.icon-btn,.sheet-close{border-width:2px;box-shadow:0 3px 0 var(--line-strong)}
.icon-btn:active,.sheet-close:active{transform:translateY(2px);box-shadow:0 1px 0 var(--line-strong)}
.app-name{font-weight:900;letter-spacing:-.035em}.profile-room{font-weight:600}
.game-tile:disabled{opacity:.74!important}.game-tile.daily-done{opacity:.72!important}
html[data-theme="dark"] .game-tile:disabled,html[data-theme="dark"] .game-tile.daily-done{opacity:.80!important}
html[data-theme="dark"] .game-tile:disabled strong,html[data-theme="dark"] .game-tile.daily-done strong{color:#eef6f0!important}
html[data-theme="dark"] .game-tile:disabled p,html[data-theme="dark"] .game-tile.daily-done p{color:#b8c9be!important}
.round-host{min-height:66px;margin:0 auto 8px;padding:5px 10px;display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:100%;border:2px solid #b9dfc7;border-radius:19px;background:#edf9f1;box-shadow:0 3px 0 #8fc5a2;color:#315843;font-size:8px;font-weight:900}
.round-mascot{width:54px;height:58px;animation:crewBob 2.1s ease-in-out infinite}.round-host.scraps-host{background:#f4f5e8;border-color:#d5d9a5;box-shadow:0 3px 0 #b9bf77;color:#59602f}
html[data-theme="dark"] .round-host{background:#20372a;border-color:#3d674c;box-shadow:0 3px 0 #294535;color:#e6f7ec}html[data-theme="dark"] .round-host.scraps-host{background:#30351f;border-color:#515b32;box-shadow:0 3px 0 #3b4224;color:#eef0cf}
.champion-rewards{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;margin:10px auto;padding:8px 12px;width:max-content;max-width:100%;border:2px solid #eed783;border-radius:17px;background:#fff9df;box-shadow:0 3px 0 #d0b85b;font-size:10px;font-weight:900;color:#5d490d}.champion-rewards.pending{border-color:var(--line);background:var(--surface-2);box-shadow:0 2px 0 var(--line-strong);color:var(--text-2)}html[data-theme="dark"] .champion-rewards{background:#383118;border-color:#6a5925;box-shadow:0 3px 0 #51451d;color:#f7e9aa}
@media(max-width:430px){.round-host{min-height:58px;margin-bottom:6px}.round-mascot{width:47px;height:51px}.champion-actions{grid-template-columns:1fr}.champion-rewards{font-size:9px;gap:6px}}
@media(max-height:760px){.round-host{min-height:48px;padding-block:3px}.round-mascot{width:40px;height:44px}.round-host span{font-size:7px}}
@media(prefers-reduced-motion:reduce){.round-mascot{animation:none!important}}

/* ========================= V6.0 server features + final delight ========================= */
.daily-pick-after{width:min(100%,370px);display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:8px;margin:5px auto 8px;padding:7px 9px;border:2px solid #e5c95f;border-radius:18px;background:linear-gradient(135deg,#fffaf0,#fff5cc);box-shadow:0 3px 0 #d4b64b;color:#624b0c;text-align:right}.daily-pick-after>div{width:52px;height:52px;display:grid;place-items:center}.daily-pick-mascot{width:50px;height:54px}.daily-pick-after>span{display:grid;gap:2px}.daily-pick-after strong{font-size:9px}.daily-pick-after small{font-size:7px;color:#7a682f}.daily-pick-after button{border:0;border-radius:12px;background:#2eae6e;color:#fff;font:inherit;font-size:8px;font-weight:900;padding:8px 10px;box-shadow:0 3px 0 #1f8452}.daily-pick-after button:active{transform:translateY(2px);box-shadow:0 1px 0 #1f8452}
.daily-reveal-v6.waiting{border-style:dashed}.daily-reveal-v6.waiting>.btn{min-width:78px;align-self:center}.daily-pick-sheet .v6-sheet-hero>span{width:58px;height:64px;display:grid;place-items:center}.pick-sheet-mascot{width:58px;height:64px}.daily-pick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.daily-pick-grid button{min-height:90px;border:2px solid var(--line-strong);border-radius:18px;background:var(--surface-2);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px;box-shadow:0 3px 0 var(--line-strong);font:inherit}.daily-pick-grid button:active{transform:translateY(2px);box-shadow:0 1px 0 var(--line-strong)}.daily-pick-grid button small{font-size:7px;color:var(--text-3);font-weight:800}.daily-pick-grid button strong{font-size:20px;letter-spacing:-.04em}.daily-pick-grid button span{font-size:7px;color:var(--brand);font-weight:850}
.mission-card.ready{border-color:#8bd2a6;background:linear-gradient(135deg,var(--surface-2),var(--v6-green-soft))}.mission-card.claimed{opacity:.72}.mission-card{grid-template-columns:42px minmax(0,1fr) 44px auto}.mission-reward{color:#8c6c10!important;font-weight:850}.mission-claim{border:0;border-radius:11px;background:#38b777;color:white;font:inherit;font-size:7px;font-weight:900;padding:8px 9px;box-shadow:0 3px 0 #248653;white-space:nowrap}.mission-done{font-size:7px;color:var(--brand);white-space:nowrap}
.v6-settings-row{grid-template-columns:repeat(3,minmax(0,1fr))}.setting-toggle.push>span{filter:none}.setting-toggle:disabled{opacity:.6}
html[data-theme="dark"] .daily-pick-after{background:linear-gradient(135deg,#342f1d,#2c291a);border-color:#715d25;box-shadow:0 3px 0 #514319;color:#ffe9a1}html[data-theme="dark"] .daily-pick-after small{color:#cdbc80}html[data-theme="dark"] .mission-card.ready{background:linear-gradient(135deg,#1f2c24,#213b2b);border-color:#3f744f}html[data-theme="dark"] .mission-reward{color:#e7cf7b!important}
@media(max-width:430px){.daily-pick-after{grid-template-columns:46px 1fr auto}.daily-pick-after>div{width:44px;height:46px}.daily-pick-mascot{width:44px;height:48px}.v6-settings-row{grid-template-columns:1fr}.mission-card{grid-template-columns:36px minmax(0,1fr) 40px}.mission-claim,.mission-done{grid-column:2/4;justify-self:stretch;text-align:center}.daily-pick-grid button{min-height:82px}.daily-pick-grid button strong{font-size:18px}}
@media(max-height:760px){.daily-pick-after{margin-block:3px;padding-block:5px}.daily-pick-after>div{height:40px}.daily-pick-mascot{height:42px}.daily-pick-grid button{min-height:70px}.daily-pick-grid button strong{font-size:16px}}

/* V6.0 QA polish — keep review mascot heroic without clipping on narrow iPhones. */
.review-hero-v6{grid-template-columns:minmax(0,1fr) 142px}
.review-hero-character{width:142px;justify-self:end;overflow:visible}
.review-hero-mascot{width:116px;height:122px;object-fit:contain}
@media(max-width:430px){
  .review-hero-v6{grid-template-columns:minmax(0,1fr) 126px}
  .review-hero-character{width:126px;height:124px}
  .review-hero-mascot{width:108px;height:114px}
}
@media(max-height:760px){
  .review-hero-v6{grid-template-columns:minmax(0,1fr) 112px}
  .review-hero-character{width:112px;height:106px}
  .review-hero-mascot{width:94px;height:100px}
}

/* V6 final QA — iOS install guidance */
.install-help-sheet{max-width:520px}
.install-help-hero{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center;padding:4px 4px 18px}
.install-help-mascot{width:118px;height:118px;object-fit:contain;animation:v6Float 3.2s ease-in-out infinite}
.install-help-hero h2{margin:3px 0 6px;font-size:26px;line-height:1.04}
.install-help-hero p{margin:0;color:var(--text-2);font-size:13px;line-height:1.55}
.install-steps{display:grid;gap:10px;margin:4px 0 18px}
.install-steps>div{display:grid;grid-template-columns:38px 1fr 38px;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}
.install-steps>div>b{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--mint);color:#fff;font-weight:900}
.install-steps span strong,.install-steps span small{display:block}.install-steps span strong{font-size:13px}.install-steps span small{margin-top:3px;color:var(--text-3);font-size:10px;line-height:1.45}
.install-steps>div>i{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(67,185,127,.12);color:var(--mint);font-style:normal;font-size:20px;font-weight:900}
html[data-theme="dark"] .install-steps>div{background:#18251e;border-color:#33463a}
@media(max-width:390px){.install-help-hero{grid-template-columns:92px 1fr}.install-help-mascot{width:90px;height:90px}.install-help-hero h2{font-size:22px}}

/* ======================================================================
   V6.5 — living bank, rotating arcade, shop, missions and motion polish
   ====================================================================== */

/* Cosmetic themes change the personality without damaging light/dark contrast. */
html[data-app-theme="lavender"]{--brand:#795de8;--brand-2:#b079e8;--violet:#795de8;--mint:#7d67dc}
html[data-app-theme="sunset"]{--brand:#ee6b78;--brand-2:#ef9d61;--violet:#9b6bd8;--mint:#d47b63;--gold:#dfa03f}
html[data-app-theme="midnight"]{--brand:#6f88ff;--brand-2:#9d79ff;--violet:#7e69e8;--mint:#3bb7a0}
html[data-theme="light"][data-app-theme="lavender"] body{background:radial-gradient(circle at 5% 0,rgba(121,93,232,.11),transparent 31%),radial-gradient(circle at 100% 12%,rgba(176,121,232,.10),transparent 28%),#f9f7ff}
html[data-theme="light"][data-app-theme="sunset"] body{background:radial-gradient(circle at 5% 0,rgba(238,107,120,.12),transparent 31%),radial-gradient(circle at 100% 12%,rgba(239,157,97,.12),transparent 28%),#fff8f4}
html[data-theme="light"][data-app-theme="midnight"] body{background:radial-gradient(circle at 5% 0,rgba(72,91,197,.11),transparent 31%),radial-gradient(circle at 100% 12%,rgba(126,105,232,.10),transparent 28%),#f6f8ff}
html[data-theme="dark"][data-app-theme="lavender"]{--bg:#14121b;--bg-2:#1c1826;--surface:#221d2e;--surface-2:#2b2438}
html[data-theme="dark"][data-app-theme="sunset"]{--bg:#181311;--bg-2:#211916;--surface:#271e1a;--surface-2:#30231e}
html[data-theme="dark"][data-app-theme="midnight"]{--bg:#0d111b;--bg-2:#111827;--surface:#172033;--surface-2:#1e2a40;--text:#f4f7ff;--text-2:#c2cbe0;--text-3:#909bb3}

/* Hero characters: a character, not a postage-stamp icon. */
.review-hero-v6{grid-template-columns:minmax(0,1fr) 160px;min-height:184px;padding-inline:16px}
.review-hero-character{width:160px;height:158px;overflow:visible}
.review-hero-mascot{width:148px;height:150px;object-fit:contain;filter:drop-shadow(0 10px 7px rgba(90,76,145,.18))}
.v6-games-hero{grid-template-columns:minmax(0,1fr) 154px!important;min-height:184px!important;padding:15px 17px!important}
.arcade-hero-character{height:158px}
.arcade-hero-character .arcade-mascot{width:148px;height:152px;object-fit:contain;filter:drop-shadow(0 10px 7px rgba(37,92,58,.17))}
.arcade-hero-copy h2{font-size:27px!important}
.arcade-pass-live{display:inline-flex;margin-top:8px;padding:6px 9px;border-radius:999px;background:#164d33;color:#e9fff1;font-size:8px;font-weight:900;box-shadow:0 2px 0 rgba(0,0,0,.14)}

/* Mascots move according to mood; short amplitudes keep the UI calm. */
@keyframes mascotIdleFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(.8deg)}}
@keyframes mascotHappyBounce{0%,100%{transform:translateY(0) scale(1)}45%{transform:translateY(-7px) scale(1.015)}65%{transform:translateY(-2px) scale(.995)}}
@keyframes mascotCelebrate{0%,100%{transform:translateY(0) rotate(0) scale(1)}28%{transform:translateY(-7px) rotate(-2deg) scale(1.02)}62%{transform:translateY(-4px) rotate(2deg) scale(1.01)}}
@keyframes mascotSadBreath{0%,100%{transform:translateY(2px) rotate(0)}50%{transform:translateY(5px) rotate(-.5deg)}}
@keyframes mascotSleep{0%,100%{transform:translateY(3px) rotate(-1deg)}50%{transform:translateY(5px) rotate(1deg)}}
@keyframes rattleIdle{0%,100%{transform:translateY(0) rotate(-1deg)}35%{transform:translateY(-4px) rotate(1.8deg)}65%{transform:translateY(-2px) rotate(-1.2deg)}}
.mascot-live{transform-origin:50% 80%;will-change:transform;animation:mascotIdleFloat 3.4s ease-in-out infinite}
.mascot-live.mood-happy{animation:mascotHappyBounce 2.75s ease-in-out infinite}
.mascot-live.mood-celebrate{animation:mascotCelebrate 2.15s ease-in-out infinite}
.mascot-live.mood-sad,.mascot-live.mood-crying,.mascot-live.mood-done{animation:mascotSadBreath 3.2s ease-in-out infinite}
.mascot-live.mood-sleepy{animation:mascotSleep 3.8s ease-in-out infinite}
.mascot-rattle-img.mascot-live.mood-regular,.mascot-rattle-img.mascot-live.mood-happy{animation:rattleIdle 2.7s ease-in-out infinite}
html[data-celebration="neon"] .finish-host:after,html[data-celebration="neon"] .reward-result-host:after{content:"";position:absolute;inset:8%;border-radius:50%;box-shadow:0 0 24px rgba(69,238,255,.5),0 0 45px rgba(241,73,255,.28);pointer-events:none}
html[data-celebration="confetti"] .featured-finish:before{content:"✦  •  ✧  •  ✦";position:absolute;inset-inline:0;top:18px;text-align:center;letter-spacing:16px;color:var(--gold);opacity:.78;font-size:18px;pointer-events:none}
@media(prefers-reduced-motion:reduce){.mascot-live,.name-bubble,.flash-card,.daily-bonus-mini.claimable{animation:none!important;transition:none!important}}

/* V6.5 bank: always show exactly what the user can do next. */
.bank-home-card{position:relative;overflow:hidden;border:2px solid rgba(67,185,127,.35);border-radius:27px;background:linear-gradient(145deg,rgba(222,248,231,.94),rgba(248,255,250,.96));padding:14px 15px;box-shadow:0 4px 0 rgba(67,158,98,.23),0 16px 30px rgba(30,102,57,.08)}
.bank-home-card:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:rgba(67,185,127,.09);left:-70px;bottom:-90px;pointer-events:none}
.bank-home-main{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;position:relative;z-index:1}
.bank-home-icon{width:48px;height:48px;border-radius:16px;background:#fff;display:grid;place-items:center;font-size:25px;border:1px solid rgba(67,185,127,.24);box-shadow:0 3px 0 rgba(67,158,98,.16)}
.bank-home-main>div{min-width:0}.bank-home-main small{font-size:8px;font-weight:850;color:#347c52}.bank-home-main strong{display:block;font-size:22px;letter-spacing:-.035em;margin-top:2px;color:#163f29}.bank-home-main>em{font-style:normal;font-weight:950;font-size:12px;color:#267c4e;background:#fff;border:1px solid #bde3c9;border-radius:999px;padding:7px 9px;white-space:nowrap}
.bank-home-progress{height:9px;border-radius:99px;background:rgba(35,100,57,.13);overflow:hidden;margin-top:11px}.bank-home-progress>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3ab678,#73d294);box-shadow:inset 0 -2px 0 rgba(23,111,67,.15)}
.bank-home-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:8px;color:#456e56;font-weight:750}.bank-home-meta b{color:#226642}.bank-reserve-pill{background:#fff4c9!important;color:#73540b!important;border:1px solid #ead376!important}
html[data-theme="dark"] .bank-home-card{background:linear-gradient(145deg,#1b3c29,#182e22);border-color:#376849;box-shadow:0 4px 0 #183922,0 16px 30px rgba(0,0,0,.18)}
html[data-theme="dark"] .bank-home-icon,html[data-theme="dark"] .bank-home-main>em{background:#223f2e;border-color:#426c50;color:#e9fff0}.bank-home-main strong{color:var(--text)}
html[data-theme="dark"] .bank-home-main small,html[data-theme="dark"] .bank-home-meta{color:#a8cbb4}html[data-theme="dark"] .bank-home-meta b{color:#7ce2a3}

.bank-strip .journey-copy strong em{font-style:normal;color:#8a6917;background:#fff3c8;border-radius:999px;padding:2px 6px;font-size:8px;margin-inline-start:5px}.bank-refill-line{display:block;font-size:7px;color:var(--text-3);margin-top:3px}.bank-refill-line b{font-variant-numeric:tabular-nums;color:var(--mint)}
.daily-bonus-mini{cursor:pointer;position:relative;overflow:hidden}.daily-bonus-mini.claimable{animation:rewardPulse 2.4s ease-in-out infinite;border-color:#deb84a!important}.daily-bonus-mini.claimable:after{content:"";position:absolute;inset:-35%;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.6) 48%,transparent 60%);transform:translateX(-70%);animation:rewardShine 3s ease-in-out infinite;pointer-events:none}
@keyframes rewardPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes rewardShine{0%,35%{transform:translateX(-70%)}75%,100%{transform:translateX(70%)}}

/* Seven-day reward track. */
.v65-reward-card{max-width:640px!important;padding-top:16px!important}.reward-host{height:108px;display:grid;place-items:center}.reward-hero-mascot{width:115px;height:115px;object-fit:contain}.reward-week-track{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:7px 2px 12px;margin:8px 0}.reward-day{min-height:100px;scroll-snap-align:center;border:1px solid var(--line);background:var(--surface-2);border-radius:18px;padding:8px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative}.reward-day>b{width:22px;height:22px;display:grid;place-items:center;border-radius:9px;background:var(--surface);font-size:9px}.reward-day>span{font-size:21px}.reward-day>small{font-size:7px;text-align:center;color:var(--text-2);font-weight:800;line-height:1.25}.reward-day>em{position:absolute;bottom:-7px;background:var(--gold);color:#fff;border-radius:999px;padding:3px 7px;font-size:6px;font-style:normal;font-weight:900}.reward-day.today{border:2px solid #e2bd4d;background:linear-gradient(145deg,#fff8da,#fffef5);box-shadow:0 4px 0 #c9a93d}.reward-day.past{opacity:.58}.reward-now{display:grid;gap:3px;border-radius:19px;background:linear-gradient(135deg,#e9faef,#f8fffa);border:1px solid #b9dfc7;padding:12px;margin-bottom:11px;text-align:center}.reward-now small{font-size:7px;color:#43815a;font-weight:900}.reward-now strong{font-size:17px;color:#216e43}.reward-now span{font-size:8px;color:var(--text-2)}
.reward-result-sheet{text-align:center}.reward-result-host{height:150px;position:relative;display:grid;place-items:center}.reward-result-mascot{width:150px;height:150px}.reward-result-sheet h2{font-size:29px;margin:5px 0}.reward-result-prizes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.reward-result-prizes span{border:1px solid var(--line);background:var(--surface-2);border-radius:16px;padding:13px 8px;font-size:10px;font-weight:800}.reward-result-prizes b{font-size:17px}
html[data-theme="dark"] .reward-day.today{background:linear-gradient(145deg,#3c3318,#292614);border-color:#957a2c;box-shadow:0 4px 0 #604f1d}html[data-theme="dark"] .reward-now{background:#173224;border-color:#315a40}.reward-day>small,.reward-now span{color:var(--text-2)!important}

/* Shortcuts need to scan like game hubs, not tiny dashboard controls. */
.v65-shortcuts{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.v65-shortcuts button{min-height:82px;padding:8px 4px;border-radius:18px}.v65-shortcuts button>span{font-size:22px}.v65-shortcuts button>b{font-size:8px}.v65-shortcuts button>small{font-size:6.5px;line-height:1.2}

/* Arcade rotation and — most importantly — readable dark mode game names. */
.arcade-section-label{display:flex;align-items:center;justify-content:space-between;padding:4px 5px 1px;color:var(--text)}.arcade-section-label strong{font-size:11px}.arcade-section-label small{font-size:8px;color:var(--text-3)}
.game-tile.v65-game{min-height:126px;border-width:2px!important;box-shadow:0 4px 0 var(--line-strong),var(--shadow-sm)!important}.game-tile.v65-game:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--line-strong)!important}.game-tile.v65-game.featured{border-color:#e7be3f!important;background:linear-gradient(135deg,#fffaf0,#fff7d5)!important;box-shadow:0 5px 0 #c9a73c,0 14px 28px rgba(171,126,19,.10)!important}.game-tile.v65-game.practice{border-style:dashed!important}.game-tile.v65-game strong{color:var(--text)!important;font-size:16px!important}.game-tile.v65-game p{color:var(--text-2)!important;opacity:1!important;font-size:8px!important}.game-tile.v65-game small{color:var(--text-2)!important;opacity:1!important;font-weight:900}.game-tile.v65-game.featured small{color:#7a5b08!important}.game-tile.v65-game .play-pill{color:#fff!important;background:var(--mint)!important;border-color:transparent!important}.game-tile.v65-game.daily-done .play-pill{background:var(--surface-2)!important;color:var(--text-2)!important;border:1px solid var(--line)!important}.game-tile.v65-game.daily-done{filter:none!important;opacity:.58!important}
html[data-theme="dark"] .game-tile.v65-game{background:#202a24!important;border-color:#3a4a3f!important}.game-tile.v65-game.featured,html[data-theme="dark"] .game-tile.v65-game.featured{background:linear-gradient(135deg,#393119,#292717)!important;border-color:#8d7327!important;box-shadow:0 5px 0 #5d4d1d,0 14px 28px rgba(0,0,0,.18)!important}html[data-theme="dark"] .game-tile.v65-game strong{color:#f7fbf8!important}html[data-theme="dark"] .game-tile.v65-game p{color:#c4cec8!important}html[data-theme="dark"] .game-tile.v65-game small{color:#aebbb3!important}html[data-theme="dark"] .game-tile.v65-game.featured small{color:#f3d77a!important}
.arcade-pass-upsell{width:100%;border:2px dashed #9b8bd3;border-radius:22px;background:linear-gradient(135deg,rgba(121,93,232,.07),rgba(121,93,232,.02));color:var(--text);padding:13px;display:grid;grid-template-columns:44px 1fr 20px;gap:10px;align-items:center;text-align:right}.arcade-pass-upsell>span{width:44px;height:44px;border-radius:15px;background:rgba(121,93,232,.12);display:grid;place-items:center;font-size:23px}.arcade-pass-upsell strong,.arcade-pass-upsell small{display:block}.arcade-pass-upsell strong{font-size:11px}.arcade-pass-upsell small{font-size:8px;color:var(--text-2);margin-top:2px}.arcade-pass-upsell .icon{width:16px;color:var(--violet)}

/* New tactile games. */
.find-name-stage,.catch-stage,.build-stage,.flash-stage{border:1px solid var(--line);background:var(--surface);border-radius:27px;padding:15px;box-shadow:var(--shadow-sm);min-height:390px;position:relative;overflow:hidden}.find-target,.catch-target{display:flex;align-items:baseline;justify-content:center;gap:7px;margin-bottom:12px}.find-target small,.find-target span{font-size:8px;color:var(--text-3);font-weight:800}.find-target strong,.catch-target strong{font-size:25px;letter-spacing:-.04em}.find-grid{width:min(100%,370px);aspect-ratio:1;margin:0 auto;display:grid;grid-template-columns:repeat(var(--grid),1fr);gap:5px;direction:ltr;touch-action:none;user-select:none;-webkit-user-select:none}.find-cell{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;display:grid;place-items:center;font-size:clamp(19px,6vw,29px);font-weight:850;color:var(--text);transition:.1s ease}.find-cell.selected{background:#d9f4e3;border-color:#64bc83;box-shadow:inset 0 0 0 2px rgba(67,185,127,.15);transform:scale(.96)}.find-cell.solution{background:#c8f0d7;border-color:#43a96b;color:#17623b}.gesture-hint{text-align:center;font-size:8px;color:var(--text-3);font-weight:800;margin:10px 0 0}.game-reveal{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:10px 11px;background:var(--surface-2);border-radius:16px;font-size:10px;font-weight:900}.game-reveal .btn{padding:8px 13px;min-width:105px}
.bubble-field{height:300px;border-radius:22px;background:radial-gradient(circle at 50% 115%,rgba(65,184,201,.14),transparent 60%),linear-gradient(#f5fdff,#eef8ff);position:relative;overflow:hidden;border:1px solid #c9e5ec}.name-bubble{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);min-width:72px;height:72px;padding:7px;border:2px solid rgba(71,168,200,.35);border-radius:50%;background:rgba(255,255,255,.92);box-shadow:inset 0 -6px 12px rgba(80,170,206,.08),0 8px 18px rgba(50,137,177,.13);color:#215a6f;font-size:10px;font-weight:900;animation:bubbleBob var(--speed) ease-in-out var(--delay) infinite alternate;will-change:transform}.name-bubble:before{content:"";position:absolute;width:13px;height:7px;border-radius:50%;background:rgba(255,255,255,.82);top:12px;left:16px;transform:rotate(-25deg)}.name-bubble.correct{background:#d7f7e4;border-color:#4bb578;color:#1c6a42;animation:none}.name-bubble.wrong{background:#ffe3e7;border-color:#ed7e8e;color:#9a3042;animation:none}.name-bubble.muted{opacity:.36;animation:none}@keyframes bubbleBob{from{transform:translate(-50%,-50%) translate3d(-7px,5px,0) rotate(-2deg)}to{transform:translate(-50%,-50%) translate3d(8px,-8px,0) rotate(2deg)}}
.build-stage{display:flex;flex-direction:column;align-items:center;justify-content:center}.build-slots{display:flex;direction:rtl;gap:7px;justify-content:center;min-height:60px;margin-bottom:22px}.build-slots span{width:46px;height:54px;border-bottom:4px solid var(--violet);display:grid;place-items:center;font-size:29px;font-weight:900;color:var(--text)}.letter-pile{display:flex;direction:rtl;flex-wrap:wrap;justify-content:center;gap:9px}.letter-pile button{width:56px;height:56px;border:2px solid #a9a0d8;border-radius:17px;background:linear-gradient(#fff,#f4f1ff);box-shadow:0 4px 0 #9184c8;color:#3e326f;font-size:28px;font-weight:900}.letter-pile button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #9184c8}.letter-pile button:disabled{opacity:.18}.build-clear{margin-top:14px;border:0;background:transparent;color:var(--text-3);font-size:9px;font-weight:900}.build-stage .game-reveal{width:100%}
.flash-stage{display:grid;place-items:center}.flash-card{width:min(100%,340px);min-height:250px;border:2px solid #e1c25c;border-radius:30px;background:radial-gradient(circle at 50% 30%,#fffdf2,#fff5ca);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 6px 0 #cab04e,0 22px 45px rgba(165,130,28,.14);animation:flashPop .3s cubic-bezier(.2,.9,.3,1)}.flash-card span{font-size:9px;color:#8d7120;font-weight:900}.flash-card strong{font-size:54px;letter-spacing:-.055em;margin-top:8px;color:#332a1d}@keyframes flashPop{from{transform:scale(.91);opacity:.2}to{transform:scale(1);opacity:1}}.flash-options{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.flash-options button{min-height:72px;border:2px solid var(--line-strong);border-radius:19px;background:var(--surface-2);color:var(--text);font-size:20px;font-weight:900;box-shadow:0 3px 0 var(--line-strong)}.flash-options button.correct{background:#d8f5e3;border-color:#66b884}.flash-options button.wrong{background:#ffe3e8;border-color:#e68392}.flash-options button.muted{opacity:.45}
html[data-theme="dark"] .find-cell{background:#252d29;border-color:#3b4740;color:#f7faf8}html[data-theme="dark"] .find-cell.selected,html[data-theme="dark"] .find-cell.solution{background:#214731;border-color:#4b9a68;color:#eafff0}html[data-theme="dark"] .bubble-field{background:linear-gradient(#17272e,#17232b);border-color:#35515d}html[data-theme="dark"] .name-bubble{background:#223b46;border-color:#457589;color:#e7faff}html[data-theme="dark"] .letter-pile button{background:#29263b;border-color:#61588d;box-shadow:0 4px 0 #453d69;color:#f0ecff}html[data-theme="dark"] .flash-card{background:radial-gradient(circle at 50% 30%,#3d351d,#282416);border-color:#846d28;box-shadow:0 6px 0 #5d4e1d}.flash-card strong{color:var(--text)}

/* Shop. */
.shop-sheet{max-width:620px}.shop-hero>span{font-size:35px}.shop-section-title{margin:15px 2px 7px;font-size:10px;font-weight:950;color:var(--text)}.shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shop-item{position:relative;min-height:104px;border:1px solid var(--line);border-radius:19px;background:var(--surface-2);padding:10px;text-align:right;color:var(--text);display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:start;box-shadow:0 3px 0 var(--line-strong)}.shop-item:active{transform:translateY(2px);box-shadow:0 1px 0 var(--line-strong)}.shop-item>span{width:38px;height:38px;border-radius:13px;background:var(--surface);display:grid;place-items:center;font-size:20px}.shop-item strong,.shop-item small{display:block}.shop-item strong{font-size:10px}.shop-item small{font-size:7px;line-height:1.35;color:var(--text-2);margin-top:3px}.shop-item>em{grid-column:2;font-style:normal;font-size:8px;font-weight:900;color:#85630d}.shop-item.active{border:2px solid var(--mint);background:rgba(67,185,127,.08)}.shop-owned{position:absolute;top:7px;left:7px;background:#daf4e4;color:#266f45;border-radius:999px;padding:3px 6px;font-size:6px}.shop-footnote{margin-top:12px;border-radius:14px;background:var(--surface-2);padding:9px;font-size:7px;line-height:1.45;color:var(--text-3);text-align:center}

/* Mission hierarchy. */
.mission-section{margin-top:13px}.mission-section-head{display:flex;justify-content:space-between;align-items:center;margin:0 2px 7px}.mission-section-head strong{font-size:11px}.mission-section-head small{font-size:7px;color:var(--text-3)}.mission-sheet-v65 .mission-card{min-height:82px}.mission-sheet-v65 .mission-list{display:grid;gap:8px}.mission-sheet-v65 .mission-section.weekly{padding-top:8px;border-top:1px solid var(--line)}

/* Dark-mode guardrails: functional text must never disappear. */
html[data-theme="dark"] .game-tile,html[data-theme="dark"] .game-tile *:not(.play-pill),html[data-theme="dark"] .journey-action,html[data-theme="dark"] .journey-action b,html[data-theme="dark"] .review-card h2,html[data-theme="dark"] .review-card .text-btn{opacity:1}
html[data-theme="dark"] .game-tile strong,html[data-theme="dark"] .game-intro-card h1,html[data-theme="dark"] .game-top h2,html[data-theme="dark"] .arcade-section-label strong{color:#f5faf7!important}
html[data-theme="dark"] .game-tile p,html[data-theme="dark"] .game-tile small,html[data-theme="dark"] .game-intro-card p,html[data-theme="dark"] .game-how p,html[data-theme="dark"] .game-top p{color:#bdc8c1!important}
html[data-theme="dark"] .shop-item{background:#25222c;border-color:#3a3542;box-shadow:0 3px 0 #17141c}html[data-theme="dark"] .shop-item>span{background:#302c37}html[data-theme="dark"] .shop-item>em{color:#e8ce76}

/* Compact phones and landscape-like short viewports. */
@media(max-width:430px){
  .review-hero-v6{grid-template-columns:minmax(0,1fr) 142px;min-height:172px}.review-hero-character{width:142px;height:145px}.review-hero-mascot{width:134px;height:138px}
  .v6-games-hero{grid-template-columns:minmax(0,1fr) 136px!important;min-height:171px!important}.arcade-hero-character{height:145px}.arcade-hero-character .arcade-mascot{width:132px;height:138px}.arcade-hero-copy h2{font-size:24px!important}
  .v65-shortcuts{grid-template-columns:repeat(5,minmax(59px,1fr));overflow-x:auto;padding-bottom:4px}.v65-shortcuts button{min-width:62px}
  .reward-week-track{grid-template-columns:repeat(7,78px)}
  .find-name-stage,.catch-stage,.build-stage,.flash-stage{min-height:360px;padding:12px}.find-grid{gap:4px}.find-cell{border-radius:10px}.bubble-field{height:280px}.name-bubble{min-width:65px;height:65px;font-size:9px}.build-slots span{width:40px;height:49px;font-size:25px}.letter-pile button{width:50px;height:50px;font-size:25px}
  .shop-grid{grid-template-columns:1fr}.shop-item{min-height:86px}
}
@media(max-width:370px){.bank-home-main{grid-template-columns:42px minmax(0,1fr)}.bank-home-main>em{grid-column:2;justify-self:start}.review-hero-v6{grid-template-columns:minmax(0,1fr) 118px}.review-hero-character{width:118px}.review-hero-mascot{width:112px;height:118px}.v6-games-hero{grid-template-columns:minmax(0,1fr) 116px!important}.arcade-hero-character .arcade-mascot{width:112px;height:120px}.arcade-promise>span:nth-child(2){display:none}}
@media(max-height:760px){.review-hero-v6{min-height:145px}.review-hero-character{height:120px}.review-hero-mascot{width:112px;height:115px}.v6-games-hero{min-height:145px!important}.arcade-hero-character{height:118px}.arcade-hero-character .arcade-mascot{width:108px;height:114px}.reward-host{height:78px}.reward-hero-mascot{width:85px;height:85px}.reward-week-track{margin-block:4px}.reward-day{min-height:87px}}
.game-mastery{display:inline-flex!important;align-items:center;gap:3px;margin-top:5px;padding:3px 6px;border-radius:999px;background:rgba(115,87,215,.07);color:var(--violet)!important;font-size:6.5px!important;font-weight:900!important;width:max-content;max-width:100%}.game-tile.featured .game-mastery{background:rgba(156,121,15,.10);color:#80620f!important}html[data-theme="dark"] .game-mastery{background:#312b48;color:#cfbfff!important}html[data-theme="dark"] .game-tile.featured .game-mastery{background:#4b3e18;color:#f1d46e!important}
.bank-home-card>button{width:100%;margin-top:11px;min-height:42px;border:0;border-radius:14px;background:linear-gradient(180deg,#48bd7f,#35a96d);color:#fff;font:inherit;font-size:10px;font-weight:950;box-shadow:0 4px 0 #238a55;position:relative;z-index:1}.bank-home-card>button:active{transform:translateY(3px);box-shadow:0 1px 0 #238a55}.bank-home-main strong em{font-style:normal;font-size:10px;color:#7d6013}.bank-home-main p{margin:3px 0 0;font-size:8px;color:#456e56}.bank-home-main p b{font-variant-numeric:tabular-nums;color:#23724a}
html[data-theme="dark"] .bank-home-main p{color:#aacdb6}html[data-theme="dark"] .bank-home-main strong em{color:#efd577}

/* V6.5 museum + economy polish */
.shop-item.unavailable{opacity:.52;filter:saturate(.6);cursor:not-allowed}
.shop-item.unavailable:hover{transform:none}
.reward-result-prizes>span:only-child{grid-column:1/-1}
.museum-week{display:grid;grid-template-columns:minmax(130px,1.4fr) repeat(3,minmax(82px,1fr));gap:8px;margin:12px 0 18px;padding:12px;border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--mint) 15%,var(--surface)),color-mix(in srgb,var(--violet) 9%,var(--surface)));border:1px solid var(--line)}
.museum-week>div,.museum-week>span{min-height:58px;border-radius:15px;background:color-mix(in srgb,var(--surface) 90%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:7px}
.museum-week small{font-size:10px;color:var(--muted)}
.museum-week strong{font-size:18px;line-height:1.1;margin-top:3px}
.museum-week>span{font-size:12px;font-weight:800}
.museum-collections{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.museum-collection{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.museum-collection>span{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--surface-2);font-size:20px}
.museum-collection>div{min-width:0}.museum-collection strong,.museum-collection small{display:block}.museum-collection strong{font-size:13px}.museum-collection small{font-size:10px;color:var(--muted);margin-top:2px}
.museum-collection i{display:block;height:5px;border-radius:999px;background:var(--surface-3);overflow:hidden;margin-top:7px}.museum-collection i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),var(--violet))}
.museum-collection>em{font-style:normal;font-size:11px;font-weight:900;color:var(--muted)}
.museum-collection.complete{border-color:color-mix(in srgb,var(--mint) 58%,var(--line));box-shadow:0 8px 24px color-mix(in srgb,var(--mint) 9%,transparent)}
.mission-card:has(button[data-mission="daily_picks"]){border-color:color-mix(in srgb,#ff7b9d 45%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,#ff7b9d 9%,var(--surface)),var(--surface))}
@media(max-width:430px){.museum-week{grid-template-columns:1fr 1fr}.museum-week>div{grid-column:1/-1}.museum-collections{grid-template-columns:1fr}}
.character-status em{display:block;margin-top:2px;color:var(--muted);font-size:9px;font-style:normal;font-weight:700}

/* V6.5 final polish — daily reward should read like a feature, never like a browser button. */
.daily-bonus-mini{
  width:100%;min-height:72px;margin:0;padding:10px 12px;border:1px solid #ead48a;border-radius:20px;
  background:linear-gradient(135deg,#fffaf0 0%,#fff7d9 100%);color:var(--text);font:inherit;text-align:right;
  display:grid;grid-template-columns:44px minmax(0,1fr) 22px;gap:10px;align-items:center;
  box-shadow:0 3px 0 #d8bd63,0 10px 22px rgba(132,101,23,.08);appearance:none;-webkit-appearance:none;
}
.daily-bonus-mini>span{width:44px;height:44px;border-radius:15px;background:#fff;display:grid;place-items:center;font-size:24px;border:1px solid #f0dfa8;box-shadow:0 2px 0 rgba(149,116,24,.12)}
.daily-bonus-mini>div{min-width:0}.daily-bonus-mini small,.daily-bonus-mini strong,.daily-bonus-mini em{display:block}.daily-bonus-mini small{font-size:7px;color:#846b2b;font-weight:900}.daily-bonus-mini strong{font-size:11px;line-height:1.25;margin-top:2px;color:#4e3c16}.daily-bonus-mini em{font-size:7px;line-height:1.35;margin-top:3px;color:#8b7440;font-style:normal;font-weight:750}.daily-bonus-mini>svg{width:18px;height:18px;color:#9b7c2b}
.daily-bonus-mini:active{transform:translateY(2px);box-shadow:0 1px 0 #d8bd63,0 5px 14px rgba(132,101,23,.08)}
html[data-theme="dark"] .daily-bonus-mini{background:linear-gradient(135deg,#342f1c,#272417);border-color:#766326;box-shadow:0 3px 0 #4c401b,0 10px 22px rgba(0,0,0,.16);color:#fff8dc}
html[data-theme="dark"] .daily-bonus-mini>span{background:#40381f;border-color:#6b5b26}html[data-theme="dark"] .daily-bonus-mini small{color:#d8c27a}html[data-theme="dark"] .daily-bonus-mini strong{color:#fff4c8}html[data-theme="dark"] .daily-bonus-mini em{color:#d6c99d}html[data-theme="dark"] .daily-bonus-mini>svg{color:#edd573}

/* Completed games stay clearly readable, especially in dark mode. */
.game-tile.v65-game.daily-done{opacity:.72!important}
html[data-theme="dark"] .game-tile.v65-game.daily-done{opacity:.84!important;background:#232b27!important;border-color:#3e4c45!important}
html[data-theme="dark"] .game-tile.v65-game.daily-done strong{color:#f4f8f5!important}html[data-theme="dark"] .game-tile.v65-game.daily-done p,html[data-theme="dark"] .game-tile.v65-game.daily-done small{color:#c7d1ca!important}
/* Keep the pacifier's little status bubble inside the hero even when the mascot gets larger. */
.review-hero-character>span{position:absolute;bottom:2px;margin-top:0;z-index:2;white-space:nowrap}
/* Senior readability pass: game cards keep their arcade density without microscopic copy. */
.game-tile.v65-game p{font-size:9px!important;line-height:1.35!important}
.game-tile.v65-game small{font-size:7.2px!important;line-height:1.25!important}

/* =========================================================
   V7 — Premium Journey Update
   ========================================================= */
:root{
  --v7-ink:#16231d;
  --v7-mint:#57c98b;
  --v7-mint-deep:#258a5b;
  --v7-sky:#8fc7ff;
  --v7-violet:#8e79ef;
  --v7-gold:#f3c95c;
  --v7-coral:#ff7f8b;
  --v7-shadow:0 24px 70px rgba(46,68,56,.14);
  --v7-soft-shadow:0 10px 32px rgba(46,68,56,.10);
}
html[data-theme="light"]{
  --bg:#f6fbf8;--bg-2:#edf5ef;--surface:#fff;--surface-2:#f2f7f3;--text:#17251e;--text-2:#56675d;--text-3:#829188;--line:rgba(31,60,44,.10);--line-strong:rgba(31,60,44,.18);--brand:#38af73;--brand-2:#7b6ee8;
}
html[data-theme="dark"]{
  --bg:#0c1511;--bg-2:#111e18;--surface:#17251e;--surface-2:#1c2d24;--text:#f5fff9;--text-2:#c0d1c6;--text-3:#8ea398;--line:rgba(226,255,237,.10);--line-strong:rgba(226,255,237,.18);--brand:#63d99b;--brand-2:#9b8cff;
}
body{background:radial-gradient(circle at 90% -15%,rgba(86,202,139,.14),transparent 34%),radial-gradient(circle at -10% 12%,rgba(142,121,239,.09),transparent 32%),var(--bg);}
.header{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 98%,transparent),color-mix(in srgb,var(--bg) 88%,transparent));backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent)}
.bottom-nav{background:color-mix(in srgb,var(--surface) 96%,var(--bg));backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 -10px 34px rgba(23,45,34,.06)}
.nav-btn{font-size:11px;font-weight:800;letter-spacing:-.01em}.nav-btn.active{color:var(--brand)}
.card,.glass-card{box-shadow:var(--v7-soft-shadow)}

/* Home = Tinder */
.shell-rate.rate-quick .main>.main-wrap{overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch;padding-bottom:18px}
.v7-home-page{display:grid;gap:12px;max-width:760px;margin:auto;padding-bottom:10px}
.v7-home-hero{min-height:184px;border-radius:34px;padding:22px;display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#dff8e8 0%,#eef8ff 54%,#f4efff 100%);border:1px solid rgba(51,157,99,.16);box-shadow:0 22px 54px rgba(55,112,78,.14)}
html[data-theme="dark"] .v7-home-hero{background:linear-gradient(135deg,#173a29 0%,#162c2b 54%,#24223c 100%);border-color:rgba(99,217,155,.22)}
.v7-home-hero:before,.v7-home-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.v7-home-hero:before{width:220px;height:220px;left:-90px;bottom:-120px;background:rgba(255,255,255,.35)}.v7-home-hero:after{width:110px;height:110px;right:120px;top:-60px;background:rgba(255,255,255,.25)}
.v7-home-hero-copy{position:relative;z-index:2}.v7-home-hero-copy h1{font-size:clamp(38px,8vw,62px);line-height:.98;letter-spacing:-.055em;margin:6px 0 9px}.v7-home-hero-copy p{font-size:13px;line-height:1.55;color:var(--text-2);max-width:430px;margin:0}.v7-home-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.v7-home-pills button{border:1px solid rgba(41,110,72,.12);background:rgba(255,255,255,.58);color:#2b5640;border-radius:999px;padding:8px 10px;font-size:10px;font-weight:800}.v7-home-pills button:active{transform:scale(.97)}
html[data-theme="dark"] .v7-home-pills button{background:rgba(255,255,255,.07);color:#dff8e8;border-color:rgba(255,255,255,.10)}
.v7-home-host{position:relative;height:165px;display:grid;place-items:center;z-index:2}.v7-home-host .v7-home-mascot{width:150px;height:150px;object-fit:contain;filter:drop-shadow(0 18px 18px rgba(47,84,61,.14));animation:v7Float 4.4s ease-in-out infinite}.v7-home-host>span{position:absolute;bottom:0;background:rgba(255,255,255,.76);border:1px solid rgba(53,106,76,.10);padding:6px 10px;border-radius:999px;font-size:9px;font-weight:800;color:#35634b}.dark .v7-home-host>span,html[data-theme="dark"] .v7-home-host>span{background:rgba(8,19,14,.64);color:#d7f6e4;border-color:rgba(255,255,255,.12)}
.v7-bank-hud{display:grid;grid-template-columns:minmax(0,1fr) 110px 118px;gap:9px}.v7-bank-hud>div,.v7-wallet{background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--v7-soft-shadow);min-height:86px}.v7-bank-count{padding:12px 14px}.v7-bank-count>span,.v7-bank-reserve>span{font-size:9px;font-weight:800;color:var(--text-3)}.v7-bank-count>strong{font-size:25px;display:block;margin:2px 0}.v7-bank-count>i{display:block;height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden}.v7-bank-count>i>b{display:block;height:100%;background:linear-gradient(90deg,var(--v7-mint),#7bdca6);border-radius:inherit;transition:width .35s ease}.v7-bank-count>small{display:block;margin-top:6px;color:var(--text-2);font-size:9px}.v7-bank-reserve{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8px}.v7-bank-reserve strong{font-size:23px;color:var(--violet);margin:2px}.v7-bank-reserve small{font-size:8px;color:var(--text-3)}.v7-wallet{border:1px solid rgba(236,185,47,.28);display:flex;align-items:center;justify-content:center;gap:5px;flex-direction:column;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 88%,#fff5c7),var(--surface))}.v7-wallet small{font-size:8px;color:var(--text-3);font-weight:800}
.v7-home-page .rate-segmented{margin:0;grid-template-columns:repeat(3,1fr);border-radius:19px;background:color-mix(in srgb,var(--surface-2) 88%,transparent);padding:5px}.v7-home-page .rate-segmented button{min-height:46px;border-radius:15px}.v7-home-page .rate-segmented button.active{background:var(--surface);box-shadow:0 7px 20px rgba(30,70,48,.08)}
.v7-tinder-zone{display:grid;gap:10px}.v7-card-progress{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding-inline:4px;color:var(--text-3);font-size:9px;font-weight:700}.v7-card-progress>div{height:5px;background:var(--surface-2);border-radius:99px;overflow:hidden}.v7-card-progress>div i{display:block;height:100%;background:linear-gradient(90deg,var(--v7-mint),var(--v7-violet));border-radius:inherit}.v7-tinder-stack{height:auto;min-height:430px;padding:0}.v7-tinder-card{height:430px!important;min-height:430px!important;border-radius:38px!important;border:1px solid color-mix(in srgb,var(--brand) 25%,var(--line))!important;background:linear-gradient(160deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 90%,#e6fff0) 55%,color-mix(in srgb,var(--surface) 92%,#ece8ff) 100%)!important;box-shadow:0 30px 85px rgba(39,82,58,.16)!important;overflow:hidden;position:relative;will-change:transform,opacity;transform:translateZ(0)}
html[data-theme="dark"] .v7-tinder-card{background:linear-gradient(160deg,#1a2a22,#17271f 58%,#24203c)!important;border-color:rgba(99,217,155,.18)!important;box-shadow:0 30px 85px rgba(0,0,0,.34)!important}
.v7-card-atmosphere{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 18%,rgba(100,211,154,.18),transparent 24%),radial-gradient(circle at 84% 76%,rgba(142,121,239,.15),transparent 29%)}.v7-card-top{position:absolute;inset:18px 18px auto;display:flex;align-items:center;gap:8px;z-index:5}.v7-card-top .tinder-info{margin-inline-start:auto}.v7-card-character{position:absolute;top:46px;left:50%;transform:translateX(-50%);opacity:.23}.v7-card-character .v7-card-mascot{width:176px;height:176px;object-fit:contain;filter:blur(.1px)}.v7-tinder-card .tinder-name{font-size:clamp(64px,17vw,94px)!important;position:absolute!important;top:46%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:92%;text-align:center;line-height:1.04;letter-spacing:-.018em;font-weight:900;z-index:4;text-shadow:0 2px 0 rgba(255,255,255,.22)}.v7-name-signal{position:absolute;top:63.5%;left:50%;transform:translateX(-50%);display:flex;gap:8px;align-items:center;padding:7px 11px;border-radius:999px;background:color-mix(in srgb,var(--surface) 75%,transparent);border:1px solid var(--line);font-size:9px;color:var(--text-2);z-index:4}.v7-name-signal b{color:var(--violet)}.v7-partner-lock{position:absolute;bottom:76px;left:50%;transform:translateX(-50%);z-index:4;width:min(82%,360px);padding:10px 12px;border-radius:16px;background:color-mix(in srgb,var(--surface-2) 78%,transparent);border:1px solid var(--line);text-align:center;font-size:10px;color:var(--text-2);font-weight:700}.v7-tinder-card .tinder-hint{position:absolute!important;left:50%;bottom:22px!important;transform:translateX(-50%);width:90%;margin:0!important;text-align:center;color:var(--text-3)!important;font-size:9px!important;line-height:1.4;z-index:4}.v7-card-pacifier{position:absolute;right:7px;bottom:4px;opacity:.15;z-index:2}.v7-card-sidekick{width:72px;height:72px;object-fit:contain}.v7-tinder-actions{display:grid!important;grid-template-columns:62px 1fr 1fr 1fr!important;gap:9px!important}.v7-tinder-actions .circle-action{width:100%!important;height:66px!important;border-radius:22px!important;display:flex!important;flex-direction:column;gap:2px;align-items:center;justify-content:center}.v7-tinder-actions .circle-action span{font-size:22px;font-weight:900}.v7-tinder-actions .circle-action small{font-size:8px;font-weight:800}.v7-tinder-actions .undo{border-radius:22px!important}.v7-swipe-foot{display:flex;justify-content:space-between;align-items:center;color:var(--text-3);font-size:8px;padding:0 6px}.v7-swipe-foot strong{font-size:9px;color:var(--text-2)}
.v7-home-story-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.v7-home-story-row button{border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:13px 8px;min-height:116px;box-shadow:var(--v7-soft-shadow);display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px}.v7-home-story-row button>span{height:38px;display:grid;place-items:center;font-size:26px}.v7-mini-character{width:44px;height:44px;object-fit:contain}.v7-home-story-row strong{font-size:11px}.v7-home-story-row small{font-size:8px;color:var(--text-3);line-height:1.35}.v7-quick-empty{text-align:center;padding:30px 18px;border:1px solid var(--line);background:var(--surface);border-radius:30px;box-shadow:var(--v7-shadow)}.v7-quick-empty-character .v7-empty-mascot{width:150px;height:150px;object-fit:contain}.v7-quick-empty h2{font-size:28px;margin:4px 0}.v7-quick-empty p{color:var(--text-2);font-size:12px;line-height:1.6}.v7-empty-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}

/* story popups & level up */
.v7-story-overlay,.v7-level-overlay{position:fixed;z-index:126;inset:0;display:grid;place-items:center;padding:18px;background:rgba(8,17,13,.46);animation:fadeIn .2s ease}.v7-story-card{width:min(100%,410px);background:var(--surface);border:1px solid var(--line);border-radius:34px;padding:24px 20px 18px;text-align:center;position:relative;overflow:hidden;box-shadow:0 38px 120px rgba(0,0,0,.28);animation:v7CardIn .34s cubic-bezier(.18,.9,.25,1.12)}.v7-story-glow{position:absolute;inset:-40% -20% auto;height:220px;background:radial-gradient(circle,rgba(100,211,154,.25),transparent 60%)}.story-shop .v7-story-glow{background:radial-gradient(circle,rgba(245,197,85,.28),transparent 60%)}.story-arcade .v7-story-glow{background:radial-gradient(circle,rgba(142,121,239,.26),transparent 60%)}.v7-story-close{position:absolute;top:14px;left:14px;width:40px;height:40px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);display:grid;place-items:center;z-index:3}.v7-story-character{height:160px;display:grid;place-items:center;position:relative}.v7-story-mascot{width:150px;height:150px;object-fit:contain;animation:v7Float 3.8s ease-in-out infinite}.v7-story-card h2{font-size:30px;line-height:1.08;letter-spacing:-.045em;margin:5px auto 8px;max-width:340px}.v7-story-card p{color:var(--text-2);font-size:12px;line-height:1.6;margin:0 auto 16px;max-width:330px}.v7-story-card .btn{width:100%;margin-top:6px}.v7-level-overlay{z-index:129;background:radial-gradient(circle at 50% 38%,rgba(91,213,144,.32),rgba(8,17,13,.70))}.v7-level-card{width:min(100%,430px);min-height:610px;border-radius:40px;background:linear-gradient(160deg,#f8fff9,#e8f9ee 48%,#f1edff);border:1px solid rgba(255,255,255,.8);box-shadow:0 46px 140px rgba(0,0,0,.36);position:relative;overflow:hidden;text-align:center;padding:42px 22px 24px;color:#173425}.v7-level-rays{position:absolute;width:520px;height:520px;border-radius:50%;left:50%;top:31%;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.55) 0 8deg,transparent 8deg 18deg);animation:v7Spin 18s linear infinite}.v7-level-stars{position:absolute;top:24px;left:0;right:0;color:#e0ac20;font-size:22px;letter-spacing:.35em}.v7-level-card>.eyebrow,.v7-level-card h1,.v7-level-card h2,.v7-level-card p,.v7-level-card .btn,.v7-level-character{position:relative;z-index:2}.v7-level-card h1{font-size:58px;margin:4px 0 0;letter-spacing:-.055em}.v7-level-character{height:280px;display:grid;place-items:center}.v7-level-mascot{width:270px;height:270px;object-fit:contain;filter:drop-shadow(0 26px 20px rgba(46,91,60,.17));animation:v7LevelBounce 1s cubic-bezier(.2,.9,.3,1.1) both}.v7-level-card h2{font-size:23px;margin:0 0 6px}.v7-level-card p{font-size:11px;line-height:1.55;color:#54705f;margin:0 auto 17px;max-width:310px}.v7-level-card .btn{width:100%}

/* Candy-like journey map */
.v7-level-world{border-radius:34px;padding:20px;background:linear-gradient(165deg,color-mix(in srgb,var(--surface) 94%,#e7fff0),color-mix(in srgb,var(--surface) 94%,#e9e7ff));border:1px solid var(--line);box-shadow:var(--v7-shadow);overflow:hidden;margin:14px 0}.v7-level-world-head{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}.v7-level-world-head h2{font-size:27px;margin:4px 0 5px;letter-spacing:-.04em}.v7-level-world-head p{font-size:11px;line-height:1.55;color:var(--text-2);margin:0;max-width:450px}.v7-current-level{width:84px;height:84px;border-radius:26px;background:linear-gradient(145deg,var(--v7-mint),#7adea6);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 15px 34px rgba(52,174,107,.22)}.v7-current-level span,.v7-current-level small{font-size:8px;font-weight:700}.v7-current-level strong{font-size:31px;line-height:1}.v7-evolution-strip{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:15px 2px 12px;direction:rtl}.v7-evolution-strip::-webkit-scrollbar{display:none}.v7-evo-chip{flex:0 0 92px;height:112px;border:1px solid var(--line);border-radius:22px;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px;gap:2px}.v7-evo-chip.locked{opacity:.44;filter:saturate(.3)}.v7-evo-chip.current{border-color:rgba(57,181,116,.44);box-shadow:0 0 0 3px rgba(86,202,139,.12),0 14px 32px rgba(48,123,78,.12)}.v7-evo-chip>span{height:60px;display:grid;place-items:center;font-size:24px}.v7-evo-mascot{width:62px;height:62px;object-fit:contain}.v7-evo-chip small{font-size:8px;color:var(--text-3)}.v7-evo-chip strong{font-size:9px}.v7-candy-map{position:relative;height:760px;border-radius:30px;background:radial-gradient(circle at 18% 12%,rgba(143,199,255,.19),transparent 22%),radial-gradient(circle at 82% 55%,rgba(142,121,239,.14),transparent 23%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 70%,#eaf8ff),color-mix(in srgb,var(--surface) 70%,#eaffef));overflow:hidden;border:1px solid var(--line)}.v7-candy-map svg{position:absolute;inset:0;width:100%;height:100%}.v7-map-road-shadow{fill:none;stroke:rgba(40,77,56,.11);stroke-width:21;stroke-linecap:round}.v7-map-road{fill:none;stroke:url(#v7road);stroke-width:11;stroke-linecap:round;stroke-dasharray:2 2}.v7-map-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;z-index:3}.v7-map-node:nth-of-type(even){flex-direction:row-reverse}.v7-map-node>button{width:64px;height:64px;border-radius:22px;border:5px solid var(--surface);background:linear-gradient(145deg,#dfe6e2,#f6faf7);box-shadow:0 9px 0 #cbd5cf,0 14px 26px rgba(49,80,61,.14);display:grid;place-items:center;font-size:23px;font-weight:900}.v7-map-node.done>button{background:linear-gradient(145deg,#76dba5,#45ba7f);box-shadow:0 9px 0 #299866,0 14px 26px rgba(49,151,96,.18);color:white}.v7-map-node.current>button{width:90px;height:90px;border-radius:29px;background:linear-gradient(145deg,#fff5c9,#ffe37b);box-shadow:0 10px 0 #dab330,0 18px 35px rgba(209,171,48,.25);animation:v7NodePulse 2.2s ease-in-out infinite}.v7-map-current-mascot{width:82px;height:82px;object-fit:contain}.v7-map-node.milestone:not(.current)>button{background:linear-gradient(145deg,#eee8ff,#dcd1ff);box-shadow:0 9px 0 #b5a8eb,0 14px 26px rgba(116,93,203,.15)}.v7-map-label{min-width:118px;padding:9px 10px;border-radius:15px;background:color-mix(in srgb,var(--surface) 89%,transparent);border:1px solid var(--line);box-shadow:0 8px 20px rgba(28,57,40,.07);display:flex;flex-direction:column}.v7-map-label small{font-size:8px;color:var(--text-3)}.v7-map-label strong{font-size:11px}.v7-map-label em{font-size:8px;color:var(--text-3);font-style:normal}.v7-map-label i{display:block;height:5px;background:var(--surface-2);border-radius:99px;overflow:hidden;margin:4px 0}.v7-map-label i b{display:block;height:100%;background:var(--v7-mint)}.v7-map-cloud,.v7-map-star{position:absolute;opacity:.45;pointer-events:none}.v7-map-cloud.c1{top:12%;right:8%;font-size:40px}.v7-map-cloud.c2{top:50%;left:7%;font-size:34px}.v7-map-star.s1{top:31%;left:13%;color:#efc241;font-size:25px}.v7-map-star.s2{bottom:9%;right:13%;color:#8c78e9;font-size:21px}

/* Full-screen museum */
.v7-special-page{min-height:calc(100dvh - 160px);display:flex;flex-direction:column;gap:12px}.v7-back{border:0;background:transparent;color:inherit;font-size:10px;font-weight:800;display:flex;align-items:center;gap:4px;padding:0}.v7-back .icon{width:14px}.v7-museum-hero{border-radius:34px;padding:20px;min-height:210px;background:linear-gradient(135deg,#eef7ff,#f7efff 55%,#fff6df);display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:12px;position:relative;overflow:hidden;border:1px solid rgba(115,87,215,.13);box-shadow:var(--v7-shadow)}
html[data-theme="dark"] .v7-museum-hero{background:linear-gradient(135deg,#16282d,#282039 55%,#332b1c)}.v7-museum-copy h1{font-size:38px;letter-spacing:-.05em;line-height:1;margin:7px 0}.v7-museum-copy p{font-size:11px;line-height:1.55;color:var(--text-2);margin:0;max-width:430px}.v7-museum-summary{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.v7-museum-summary span{min-width:72px;border-radius:16px;padding:8px;background:rgba(255,255,255,.55);border:1px solid rgba(60,78,70,.08);display:flex;flex-direction:column}.v7-museum-summary b{font-size:17px}.v7-museum-summary small{font-size:7px;color:var(--text-3)}.v7-museum-host{display:grid;place-items:center;align-content:center}.v7-museum-mascot{width:155px;height:155px;object-fit:contain;animation:v7Float 4.2s ease-in-out infinite}.v7-museum-host span{font-size:9px;font-weight:800;background:rgba(255,255,255,.62);border-radius:999px;padding:6px 10px}.v7-section-tabs,.v7-shop-tabs{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding:1px}.v7-section-tabs::-webkit-scrollbar,.v7-shop-tabs::-webkit-scrollbar{display:none}.v7-section-tabs button,.v7-shop-tabs button{flex:1 0 86px;border:1px solid var(--line);background:var(--surface);border-radius:17px;min-height:48px;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:5px}.v7-section-tabs button.active,.v7-shop-tabs button.active{background:var(--text);color:var(--bg);border-color:var(--text)}.v7-museum-content,.v7-shop-content{flex:1;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;-webkit-overflow-scrolling:touch;padding:2px 1px 18px;scrollbar-width:none}.v7-museum-content::-webkit-scrollbar,.v7-shop-content::-webkit-scrollbar{display:none}.v7-moment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.v7-moment-card{min-height:170px;border-radius:25px;border:1px solid var(--line);padding:15px;background:var(--surface);display:flex;flex-direction:column;box-shadow:var(--v7-soft-shadow);position:relative;overflow:hidden}.v7-moment-card.done{background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface) 88%,#fff2c6));border-color:rgba(224,178,47,.25)}.v7-moment-card.locked{opacity:.62}.v7-moment-card.hero-moment{min-height:195px}.moment-icon{font-size:34px;height:48px}.v7-moment-card>small{font-size:8px;color:var(--text-3)}.v7-moment-card>strong{font-size:17px;margin:7px 0 3px}.v7-moment-card>p{font-size:9px;line-height:1.45;color:var(--text-2);margin:0;flex:1}.v7-moment-card>em{font-size:8px;color:var(--brand);font-style:normal;font-weight:800;margin-top:9px}.v7-museum-record-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.v7-record-card{min-height:150px;border-radius:24px;padding:15px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--v7-soft-shadow);display:flex;flex-direction:column}.v7-record-card.featured{background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 88%,#fff2c2),var(--surface))}.v7-record-card>span{font-size:28px}.v7-record-card small{font-size:8px;color:var(--text-3);margin-top:7px}.v7-record-card strong{font-size:21px;margin:3px 0}.v7-record-card p{font-size:9px;color:var(--text-2);margin:0}.v7-collection-shelves{display:grid;gap:9px}.v7-collection-card{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:23px;padding:13px;box-shadow:var(--v7-soft-shadow)}.v7-collection-card.complete{border-color:rgba(66,191,123,.32)}.v7-collection-icon{width:54px;height:54px;border-radius:17px;background:var(--surface-2);display:grid;place-items:center;font-size:27px}.v7-collection-card strong{font-size:13px}.v7-collection-card p{font-size:9px;color:var(--text-2);margin:2px 0 7px}.v7-collection-card i{height:6px;background:var(--surface-2);display:block;border-radius:99px;overflow:hidden}.v7-collection-card i b{height:100%;display:block;background:linear-gradient(90deg,var(--v7-mint),var(--v7-violet))}.v7-collection-card small{font-size:8px;color:var(--text-3)}.v7-collection-card em{font-size:8px;color:var(--brand);font-style:normal;font-weight:800}.v7-timeline{position:relative;display:grid;gap:0;padding-inline-start:16px}.v7-timeline:before{content:"";position:absolute;right:34px;top:20px;bottom:20px;width:2px;background:linear-gradient(var(--v7-mint),var(--v7-violet));opacity:.35}.v7-timeline article{display:grid;grid-template-columns:58px 1fr;gap:12px;position:relative;padding:10px 0}.v7-timeline article>i{width:50px;height:50px;border-radius:17px;background:var(--surface);border:1px solid var(--line);display:grid;place-items:center;font-style:normal;font-size:22px;z-index:2;box-shadow:var(--v7-soft-shadow)}.v7-timeline article>div{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:10px 12px}.v7-timeline small{font-size:7px;color:var(--text-3)}.v7-timeline strong{display:block;font-size:11px;margin-top:2px}.v7-timeline p{font-size:9px;color:var(--text-2);margin:3px 0 0}.v7-museum-share{margin-top:12px;width:100%}

/* Full-screen shop */
.v7-shop-hero{border-radius:34px;padding:18px 20px 20px;background:linear-gradient(135deg,#fff4d2,#effaf3 50%,#eee9ff);border:1px solid rgba(221,169,36,.22);box-shadow:var(--v7-shadow);position:relative;overflow:hidden}.v7-shop-hero .v7-back{position:absolute;top:14px;left:16px;z-index:5}.v7-shop-crew{height:130px;display:flex;align-items:end;justify-content:center;gap:-10px;padding-top:10px}.shop-crew-bottle{width:125px;height:125px;object-fit:contain;z-index:2}.shop-crew-rattle,.shop-crew-pacifier{width:96px;height:96px;object-fit:contain;filter:saturate(.95)}.shop-crew-rattle{margin-left:-14px;transform:rotate(-5deg)}.shop-crew-pacifier{margin-right:-14px;transform:rotate(5deg)}.v7-shop-hero>.eyebrow{text-align:center}.v7-shop-hero h1{text-align:center;font-size:35px;letter-spacing:-.05em;margin:4px 0 5px}.v7-shop-hero>p{text-align:center;font-size:10px;color:var(--text-2);margin:0 auto 10px;max-width:400px}.v7-shop-wallet{margin:auto;border:1px solid rgba(221,169,36,.25);background:rgba(255,255,255,.60);border-radius:999px;padding:7px 12px;display:flex;align-items:center;gap:5px}.v7-shop-wallet strong{font-size:14px}.v7-shop-wallet small{font-size:7px;color:var(--text-3)}.v7-shop-tabs button{flex-basis:92px}.v7-shop-feature-banner{min-height:125px;border-radius:24px;background:linear-gradient(135deg,#24213b,#273c32);color:white;padding:15px;display:grid;grid-template-columns:1fr 110px;overflow:hidden;margin-bottom:10px}.v7-shop-feature-banner small{font-size:8px;color:#b8aadf}.v7-shop-feature-banner strong{display:block;font-size:20px;margin:4px 0}.v7-shop-feature-banner p{font-size:9px;line-height:1.45;color:#cbd7d0;margin:0}.shop-feature-mascot{width:115px;height:115px;object-fit:contain}.v7-shop-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.v7-shop-card{border-radius:24px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--v7-soft-shadow);overflow:hidden;display:flex;flex-direction:column;min-height:240px}.v7-shop-card.active{box-shadow:0 0 0 2px rgba(75,194,127,.3),var(--v7-soft-shadow)}.v7-shop-preview{height:98px;background:linear-gradient(135deg,var(--surface-2),color-mix(in srgb,var(--surface-2) 82%,#efe9ff));display:grid;place-items:center;position:relative;font-size:42px}.v7-shop-preview b{position:absolute;top:8px;right:8px;padding:4px 7px;border-radius:999px;background:var(--brand);color:white;font-size:7px}.preview-theme_lavender{background:linear-gradient(135deg,#eadfff,#f8f2ff)}.preview-theme_sunset{background:linear-gradient(135deg,#ffd7c8,#ffeabf)}.preview-theme_midnight{background:linear-gradient(135deg,#15172f,#292254)}.preview-theme_cloud{background:linear-gradient(135deg,#dff2ff,#f4fbff)}.preview-theme_neon,.preview-frame_neon,.preview-celebration_neon{background:linear-gradient(135deg,#18142b,#36205c);text-shadow:0 0 18px #ff66d8}.preview-frame_gold{background:linear-gradient(135deg,#fff5ca,#f2ca57)}.v7-shop-card-copy{padding:11px 12px 8px;flex:1}.v7-shop-card-copy small{font-size:7px;color:var(--text-3)}.v7-shop-card-copy strong{display:block;font-size:13px;margin:3px 0}.v7-shop-card-copy p{font-size:8px;color:var(--text-2);line-height:1.45;margin:0}.v7-shop-card-foot{display:flex;align-items:center;justify-content:space-between;padding:9px 11px;border-top:1px solid var(--line)}.v7-shop-card-foot>span{font-size:9px;font-weight:800}.v7-shop-card-foot button{border:0;background:var(--text);color:var(--bg);border-radius:12px;padding:7px 10px;font-size:8px;font-weight:800}.v7-shop-card-foot button:disabled{background:var(--surface-2);color:var(--text-3);opacity:1}.v7-shop-note{padding:12px;margin-top:10px;text-align:center;font-size:8px;color:var(--text-3);border:1px dashed var(--line-strong);border-radius:18px}

/* Arcade world & actual scroll */
.shell-dash.dash-games .main>.main-wrap{overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;display:block!important;-webkit-overflow-scrolling:touch!important;padding-bottom:14px}.games-layout{display:block!important;overflow:visible!important;min-height:auto!important}.games-fixed-head{position:relative!important;top:auto!important}.games-scroll-body{display:grid!important;overflow:visible!important;max-height:none!important;height:auto!important;touch-action:pan-y!important;padding-bottom:24px!important;contain:none!important}.v65-arcade-hero{border-radius:32px!important;min-height:210px!important;padding:18px!important;background:linear-gradient(135deg,#e6f9ee,#eaf5ff 55%,#f0eaff)!important;border:1px solid rgba(56,173,115,.18)!important;box-shadow:var(--v7-shadow)!important}.v65-arcade-hero h2{font-size:33px!important;line-height:1.03!important;letter-spacing:-.045em!important;margin:5px 0 8px!important}.v65-arcade-hero p{font-size:11px!important;line-height:1.55!important}.arcade-hero-character .arcade-mascot{width:155px!important;height:155px!important;object-fit:contain;animation:v7RattleIdle 2.8s ease-in-out infinite}.arcade-promise span{background:rgba(255,255,255,.65)!important;color:#285942!important;border-color:rgba(40,92,65,.10)!important}.game-tile.v65-game{min-height:148px!important;border-radius:28px!important;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 92%,#eef9f2))!important;box-shadow:0 13px 32px rgba(34,76,51,.10)!important;border:1px solid var(--line)!important;padding:15px!important;transform:translateZ(0)}.game-tile.v65-game.featured{background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 88%,#fff2ba),var(--surface))!important;border-color:rgba(225,177,42,.30)!important}.game-tile.v65-game strong{color:var(--text)!important;font-size:19px!important}.game-tile.v65-game p{color:var(--text-2)!important;font-size:9px!important;line-height:1.45!important}.game-tile.v65-game small{color:var(--brand)!important;font-weight:800!important}.game-tile.v65-game.daily-done{filter:none!important;opacity:.62!important;background:var(--surface-2)!important}.game-tile.v65-game.daily-done strong,.game-tile.v65-game.daily-done p{color:var(--text-2)!important}.game-tile .game-icon{width:58px!important;height:58px!important;border-radius:19px!important;font-size:29px!important;background:var(--surface-2)!important;box-shadow:inset 0 -4px 0 rgba(32,62,45,.05)!important}.play-pill{background:var(--text)!important;color:var(--bg)!important;border-radius:12px!important;padding:8px 10px!important;font-size:8px!important}.arcade-pass-upsell{border-radius:24px!important;min-height:94px!important;box-shadow:var(--v7-soft-shadow)!important}.active-game-scroll{touch-action:pan-y!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.game-shell.active-game-scroll .game-top{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:color-mix(in srgb,var(--bg) 97%,var(--surface))!important}.v6-game-top{border-radius:26px!important;padding:11px!important;border:1px solid var(--line);box-shadow:var(--v7-soft-shadow)}.game-host .host-mascot{width:78px!important;height:78px!important;object-fit:contain}.game-host h2{font-size:22px!important}.game-host p{color:var(--text-2)!important}.game-score{background:var(--surface-2)!important;border-radius:18px!important;padding:8px!important}.game-intro-card{border-radius:32px!important;background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--surface) 88%,#e8f8ef))!important;box-shadow:var(--v7-shadow)!important}.intro-mascot{width:155px!important;height:155px!important;object-fit:contain;animation:v7RattleIdle 2.8s ease-in-out infinite}.game-how>div{border-radius:18px!important;background:var(--surface-2)!important}.game-finish-card{border-radius:36px!important;background:linear-gradient(155deg,#effff4,#fff8d9 50%,#efeaff)!important;color:#193324!important;box-shadow:0 35px 100px rgba(31,73,49,.25)!important}.finish-mascot{width:190px!important;height:190px!important;object-fit:contain;animation:v7Celebrate .8s cubic-bezier(.2,.9,.3,1.2) both}.finish-rays{opacity:.45!important}.find-name-stage,.catch-stage,.build-stage,.flash-stage,.memory-stage,.trend-game-stage,.time-stage,.guess-stage,.higher-stage,.mystery-stage{border-radius:30px!important;background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface) 92%,#eaf8f0))!important;border:1px solid var(--line)!important;box-shadow:var(--v7-shadow)!important;padding:16px!important;min-height:430px}.find-grid{gap:7px!important}.find-cell{border-radius:13px!important;box-shadow:inset 0 -3px 0 rgba(31,67,45,.06)!important}.bubble-field{border-radius:25px!important;background:radial-gradient(circle at 30% 20%,rgba(143,199,255,.22),transparent 28%),linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 85%,#eaf8ff),var(--surface-2))!important}.name-bubble{box-shadow:0 10px 24px rgba(64,109,83,.16)!important;border:2px solid rgba(255,255,255,.65)!important}.build-slots span,.letter-pile button{border-radius:16px!important}.flash-card{border-radius:28px!important;box-shadow:0 20px 50px rgba(69,68,130,.16)!important}.memory-stage{display:flex;flex-direction:column;gap:13px}.memory-board{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;min-height:270px;align-content:center}.memory-name{height:72px;border-radius:20px;background:linear-gradient(145deg,var(--surface-2),var(--surface));border:1px solid var(--line);display:grid;place-items:center;font-size:20px;font-weight:900;box-shadow:0 8px 18px rgba(37,74,52,.08);animation:v7MemoryIn .35s ease both;animation-delay:calc(var(--i)*.04s)}.memory-name.vanished{background:transparent;border:2px dashed var(--line-strong);box-shadow:none;color:var(--text-3);animation:v7Vanish .34s ease both}.memory-name.vanished span{font-size:30px}.memory-watch{text-align:center;font-size:11px;color:var(--text-2);font-weight:800}.memory-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.memory-options button{min-height:50px;border-radius:16px;border:1px solid var(--line);background:var(--surface);font-weight:800}.memory-options button.correct{background:rgba(73,198,130,.14);border-color:rgba(73,198,130,.4)}.memory-options button.wrong{background:rgba(239,107,120,.12);border-color:rgba(239,107,120,.38)}

/* dark contrast guarantees */
html[data-theme="dark"] .game-tile.v65-game,html[data-theme="dark"] .v7-moment-card,html[data-theme="dark"] .v7-record-card,html[data-theme="dark"] .v7-shop-card,html[data-theme="dark"] .v7-collection-card{background:#17251e!important;border-color:rgba(232,255,240,.12)!important}html[data-theme="dark"] .shell-dash.dash-games .game-tile strong{color:#fff!important}html[data-theme="dark"] .game-tile.v65-game strong{color:#f6fff9!important}html[data-theme="dark"] .game-tile.v65-game p{color:#bdd0c4!important}html[data-theme="dark"] .game-tile.v65-game small{color:#79dda5!important}html[data-theme="dark"] .v7-bank-hud{color:var(--text)}
html[data-theme="dark"] .v7-shop-hero{background:linear-gradient(135deg,#332c1c,#173026 50%,#292440)}html[data-theme="dark"] .v7-shop-wallet{background:rgba(255,255,255,.07)}html[data-theme="dark"] .v7-museum-summary span,html[data-theme="dark"] .v7-museum-host span{background:rgba(255,255,255,.07)}

/* performance */
.v7-moment-card,.v7-record-card,.v7-shop-card,.game-tile,.review-card,.name-row{content-visibility:auto;contain-intrinsic-size:180px}.mascot{transform:translateZ(0)}.tinder-card,.v7-candy-map,.game-shell{contain:layout paint style}.shell *{scrollbar-width:none}.shell *::-webkit-scrollbar{width:0;height:0}

/* Purchased frames */
html[data-card-frame="gold"] .v7-tinder-card{box-shadow:0 0 0 4px rgba(244,201,91,.55),0 30px 85px rgba(39,82,58,.16)!important;border-color:#f2c956!important}html[data-card-frame="cloud"] .v7-tinder-card{box-shadow:0 0 0 5px rgba(173,219,255,.32),0 30px 85px rgba(39,82,58,.14)!important}html[data-card-frame="neon"] .v7-tinder-card{box-shadow:0 0 0 3px rgba(142,121,239,.50),0 0 34px rgba(215,79,255,.22),0 30px 85px rgba(39,82,58,.18)!important;border-color:#b38dff!important}
html[data-app-theme="cloud"]{--brand:#4aa7d8;--brand-2:#7cc9ed;--violet:#708fe8;--mint:#59b9c6}html[data-app-theme="neon"]{--brand:#8b65ef;--brand-2:#d75cff;--violet:#9a66f4;--mint:#44ced7}html[data-theme="light"][data-app-theme="cloud"] body{background:radial-gradient(circle at 18% 0,#e3f5ff,transparent 35%),#f8fcff}html[data-theme="dark"][data-app-theme="cloud"] body{background:radial-gradient(circle at 18% 0,rgba(94,181,224,.13),transparent 35%),#0e171a}html[data-app-theme="neon"] body{background:radial-gradient(circle at 85% 0,rgba(202,69,255,.14),transparent 34%),radial-gradient(circle at 0 40%,rgba(58,204,255,.10),transparent 30%),var(--bg)}

@keyframes v7Float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(1deg)}}
@keyframes v7RattleIdle{0%,100%{transform:translateY(0) rotate(-1deg)}35%{transform:translateY(-5px) rotate(2deg)}70%{transform:translateY(-2px) rotate(-2deg)}}
@keyframes v7CardIn{from{opacity:0;transform:translateY(22px) scale(.94)}to{opacity:1;transform:none}}
@keyframes v7Spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes v7LevelBounce{0%{transform:scale(.55) translateY(45px);opacity:0}65%{transform:scale(1.08) translateY(-6px);opacity:1}100%{transform:scale(1) translateY(0);opacity:1}}
@keyframes v7NodePulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes v7Celebrate{0%{transform:scale(.6) rotate(-7deg);opacity:0}65%{transform:scale(1.08) rotate(3deg);opacity:1}100%{transform:scale(1) rotate(0);opacity:1}}
@keyframes v7MemoryIn{from{opacity:0;transform:scale(.84)}to{opacity:1;transform:scale(1)}}
@keyframes v7Vanish{from{opacity:1;transform:scale(1)}to{opacity:.65;transform:scale(.88)}}

@media(max-width:520px){
  .wrap{width:min(100% - 20px,760px)}.header-inner{height:66px}.v7-home-page{gap:10px}.v7-home-hero{min-height:174px;grid-template-columns:minmax(0,1fr) 118px;padding:17px;border-radius:29px}.v7-home-hero-copy h1{font-size:39px}.v7-home-hero-copy p{font-size:10px}.v7-home-host{height:135px}.v7-home-host .v7-home-mascot{width:124px;height:124px}.v7-home-pills button{font-size:8px;padding:6px 8px}.v7-bank-hud{grid-template-columns:1fr 86px 92px;gap:6px}.v7-bank-hud>div,.v7-wallet{min-height:76px;border-radius:19px}.v7-bank-count{padding:10px}.v7-bank-count>strong{font-size:21px}.v7-bank-reserve strong{font-size:19px}.v7-tinder-stack{min-height:394px}.v7-tinder-card{height:394px!important;min-height:394px!important;border-radius:32px!important}.v7-tinder-card .tinder-name{font-size:63px!important}.v7-card-character .v7-card-mascot{width:145px;height:145px}.v7-partner-lock{bottom:69px;font-size:8px}.v7-home-story-row{grid-template-columns:repeat(2,1fr)}.v7-home-story-row button{min-height:95px}.v7-tinder-actions .circle-action{height:60px!important}.v7-story-card{border-radius:30px}.v7-story-character{height:140px}.v7-story-mascot{width:135px;height:135px}.v7-level-card{min-height:570px;border-radius:34px}.v7-level-card h1{font-size:50px}.v7-level-character{height:250px}.v7-level-mascot{width:240px;height:240px}.v7-level-world{padding:14px;border-radius:28px}.v7-level-world-head h2{font-size:23px}.v7-level-world-head p{font-size:9px}.v7-current-level{width:70px;height:70px;border-radius:22px}.v7-candy-map{height:710px}.v7-map-node>button{width:56px;height:56px;border-radius:18px}.v7-map-node.current>button{width:78px;height:78px;border-radius:25px}.v7-map-current-mascot{width:72px;height:72px}.v7-map-label{min-width:98px;padding:7px}.v7-map-label strong{font-size:9px}.v7-museum-hero{grid-template-columns:1fr 115px;min-height:190px;padding:16px;border-radius:29px}.v7-museum-copy h1{font-size:30px}.v7-museum-copy p{font-size:9px}.v7-museum-mascot{width:115px;height:115px}.v7-museum-summary span{min-width:58px;padding:6px}.v7-museum-summary b{font-size:14px}.v7-moment-card{min-height:155px;padding:12px}.v7-moment-card strong{font-size:15px}.v7-museum-record-grid{gap:7px}.v7-record-card{min-height:135px;padding:12px}.v7-shop-crew{height:112px}.shop-crew-bottle{width:110px;height:110px}.shop-crew-rattle,.shop-crew-pacifier{width:80px;height:80px}.v7-shop-hero h1{font-size:29px}.v7-shop-grid{gap:7px}.v7-shop-card{min-height:225px}.v7-shop-preview{height:88px}.v65-arcade-hero{grid-template-columns:1fr 118px!important;min-height:190px!important}.v65-arcade-hero h2{font-size:27px!important}.arcade-hero-character .arcade-mascot{width:120px!important;height:120px!important}.game-tile.v65-game{min-height:132px!important;border-radius:24px!important}.game-tile.v65-game strong{font-size:16px!important}.game-tile .game-icon{width:50px!important;height:50px!important}.memory-board{min-height:240px}.memory-name{height:62px;font-size:17px}
}
@media(max-height:720px) and (max-width:520px){.v7-tinder-card{height:360px!important;min-height:360px!important}.v7-tinder-stack{min-height:360px}.v7-home-hero{min-height:150px}.v7-home-host{height:112px}.v7-home-host .v7-home-mascot{width:105px;height:105px}.v7-home-hero-copy h1{font-size:34px}.v7-home-story-row{display:none}}
@media(prefers-reduced-motion:reduce){.v7-home-mascot,.v7-story-mascot,.arcade-mascot,.v7-level-mascot,.finish-mascot{animation:none!important}}

/* V7 — cinematic game countdown */
.v7-countdown-shell{min-height:calc(100dvh - 190px);display:grid;place-items:center;overflow:hidden!important;touch-action:none!important}
.v7-countdown-screen{width:min(100%,580px);min-height:520px;border-radius:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--surface) 82%,#dcf8e7),color-mix(in srgb,var(--surface) 85%,#e8e4ff));border:1px solid color-mix(in srgb,var(--brand) 25%,var(--line));box-shadow:var(--v7-shadow)}
.v7-countdown-glow{position:absolute;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(91,207,143,.34),rgba(139,119,239,.10) 48%,transparent 70%);animation:v7CountdownPulse .72s ease-in-out infinite alternate}
.v7-countdown-host{position:relative;height:190px;display:grid;place-items:center}.v7-countdown-mascot{width:185px;height:185px;object-fit:contain;animation:v7RattleIdle 1.1s ease-in-out infinite;filter:drop-shadow(0 18px 20px rgba(42,78,56,.17))}
.v7-countdown-screen>.eyebrow{position:relative;margin-top:4px}.v7-countdown-screen>strong{position:relative;font-size:96px;line-height:1;font-weight:900;letter-spacing:-.06em;color:var(--text);text-shadow:0 8px 24px rgba(42,94,62,.10);animation:v7CountPop .54s cubic-bezier(.2,.9,.25,1.25)}.v7-countdown-screen>span{position:relative;font-size:12px;font-weight:800;color:var(--text-2);margin-top:8px}
@keyframes v7CountdownPulse{from{transform:scale(.90);opacity:.65}to{transform:scale(1.08);opacity:1}}@keyframes v7CountPop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.13);opacity:1}100%{transform:scale(1)}}
html[data-theme="dark"] .v7-countdown-screen{background:linear-gradient(155deg,#183528,#23213b);border-color:rgba(98,219,154,.20)}
html[data-theme="dark"] .v7-bank-hud{color:var(--text)}
@media(max-width:520px){.v7-countdown-screen{min-height:430px;border-radius:32px}.v7-countdown-host{height:160px}.v7-countdown-mascot{width:155px;height:155px}.v7-countdown-screen>strong{font-size:78px}}

/* V7 — occasional live story cards, not blocking modals */
.v7-live-popup{position:fixed;z-index:128;left:50%;bottom:calc(94px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(calc(100% - 28px),420px);min-height:88px;border-radius:26px;background:color-mix(in srgb,var(--surface) 94%,#e6fff0);border:1px solid color-mix(in srgb,var(--brand) 32%,var(--line));box-shadow:0 24px 70px rgba(21,54,36,.24);display:grid;grid-template-columns:70px 1fr 28px;align-items:center;gap:8px;padding:8px 10px 8px 7px;animation:v7LiveIn .4s cubic-bezier(.18,.9,.25,1.15)}.v7-live-popup>div{height:70px;display:grid;place-items:center}.v7-live-popup-mascot{width:68px;height:68px;object-fit:contain;animation:v7Float 2.5s ease-in-out infinite}.v7-live-popup span{display:flex;flex-direction:column;gap:1px}.v7-live-popup small{font-size:8px;font-weight:900;color:var(--brand)}.v7-live-popup strong{font-size:13px}.v7-live-popup em{font-size:8px;color:var(--text-3);font-style:normal}.v7-live-popup>button{border:0;background:transparent;color:var(--text-3);font-size:22px}.v7-live-popup.refill:after{content:"";position:absolute;inset:auto 18px 0;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--v7-mint),var(--v7-violet));animation:v7LiveTimer 5.2s linear forwards}@keyframes v7LiveIn{from{opacity:0;transform:translate(-50%,25px) scale(.94)}to{opacity:1;transform:translate(-50%,0) scale(1)}}@keyframes v7LiveTimer{from{width:calc(100% - 36px)}to{width:0}}
html[data-theme="dark"] .v7-live-popup{background:#183026;border-color:rgba(102,225,160,.24)}
/* V7 final gesture split: the arcade hub scrolls as one premium page; active games own their scroll area. */
.shell-dash.dash-games:not([class*="game-"]) .main>.main-wrap{overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;display:block!important;-webkit-overflow-scrolling:touch!important}
.shell-dash.dash-games[class*="game-"] .main>.main-wrap{overflow:hidden!important;touch-action:none!important;display:flex!important;flex-direction:column!important;min-height:0!important;padding-bottom:0!important}
.shell-dash.dash-games[class*="game-"] .game-shell.active-game-scroll{overflow-y:auto!important;overflow-x:hidden!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-y:contain!important;flex:1 1 auto!important;min-height:0!important}
.shell-dash.dash-games[class*="game-"] .game-shell.v7-countdown-shell{overflow:hidden!important;touch-action:none!important}
/* V7 performance pass — premium depth comes from layered surfaces, not expensive full-card blurs. */
.card,.glass-card,.name-card,.edit-sheet,.dialog{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.v7-home-page,.v7-special-page,.games-layout,.v7-level-world{isolation:isolate}
.v7-moment-card,.v7-record-card,.v7-shop-card,.v7-collection-card,.game-tile.v65-game{will-change:auto}
.v7-tinder-card,.v7-home-mascot,.arcade-mascot,.host-mascot,.v7-level-mascot{transform:translateZ(0)}
/* V7 dark-mode clarity pass for the full-rating fallback and secondary controls. */
html[data-theme="dark"] .name-card.premium-card{background:linear-gradient(160deg,#182820,#17251e 62%,#211f35)!important;border-color:rgba(218,255,231,.14)!important;box-shadow:0 24px 65px rgba(0,0,0,.30)!important}
html[data-theme="dark"] .name-overline,html[data-theme="dark"] .daily-whisper,html[data-theme="dark"] .score-scale,html[data-theme="dark"] .blind-placeholder,html[data-theme="dark"] .save-note{color:#a9bcb0!important}
html[data-theme="dark"] .partner-reveal,html[data-theme="dark"] .comment-box textarea{background:#1d3026!important;border-color:rgba(226,255,237,.12)!important;color:#f5fff9!important}
html[data-theme="dark"] .comment-box textarea::placeholder{color:#82978b!important}
html[data-theme="dark"] .score-btn{background:#203229!important;border-color:rgba(226,255,237,.13)!important;color:#effbf3!important}
html[data-theme="dark"] .score-btn.active{background:#f4fbf6!important;color:#17251e!important;border-color:#f4fbf6!important}
html[data-theme="dark"] .nav-arrows .btn.secondary:not(:disabled),html[data-theme="dark"] .btn.secondary:not(:disabled){background:#1c2d24!important;color:#effbf3!important;border-color:rgba(226,255,237,.14)!important}
html[data-theme="dark"] .btn:disabled,html[data-theme="dark"] button:disabled{opacity:.52}
html[data-theme="dark"] .v7-section-tabs button:not(.active),html[data-theme="dark"] .v7-shop-tabs button:not(.active){background:#17251e!important;color:#d6e5dc!important;border-color:rgba(226,255,237,.12)!important}
html[data-theme="dark"] .v7-section-tabs button.active,html[data-theme="dark"] .v7-shop-tabs button.active{background:#edf9f1!important;color:#14231b!important}
/* V7 purchased celebration packs visibly change the big reward moments. */
html[data-celebration="stars"] .v7-level-card:after,html[data-celebration="stars"] .game-finish-card:after,html[data-celebration="stars"] .match-experience:after{content:"✦   ★   ✧   ★   ✦";position:absolute;z-index:4;left:0;right:0;top:18px;text-align:center;letter-spacing:.48em;color:#e9b92f;font-size:22px;pointer-events:none;animation:v7StarRain 1.8s ease-in-out infinite alternate}
html[data-celebration="bubbles"] .v7-level-card:after,html[data-celebration="bubbles"] .game-finish-card:after,html[data-celebration="bubbles"] .reward-result-sheet:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 18%,rgba(104,207,255,.35) 0 9px,transparent 10px),radial-gradient(circle at 87% 24%,rgba(255,135,196,.26) 0 12px,transparent 13px),radial-gradient(circle at 18% 72%,rgba(124,222,169,.30) 0 15px,transparent 16px),radial-gradient(circle at 82% 78%,rgba(153,133,244,.28) 0 10px,transparent 11px);animation:v7BubbleFloat 2.6s ease-in-out infinite alternate}
html[data-celebration="neon"] .v7-level-card,html[data-celebration="neon"] .game-finish-card{box-shadow:0 0 0 2px rgba(100,225,255,.28),0 0 44px rgba(221,70,255,.26),0 40px 120px rgba(0,0,0,.32)!important}
html[data-celebration="confetti"] .v7-level-card:after,html[data-celebration="confetti"] .game-finish-card:after{content:"▰  ✦  ▪  ●  ✧  ▰  ●  ✦";position:absolute;z-index:4;left:0;right:0;top:20px;text-align:center;word-spacing:12px;color:#dcad2d;font-size:16px;pointer-events:none;animation:v7ConfettiBob 1.3s ease-in-out infinite alternate}
@keyframes v7StarRain{from{transform:translateY(-3px) scale(.96);opacity:.55}to{transform:translateY(6px) scale(1.04);opacity:1}}@keyframes v7BubbleFloat{from{transform:translateY(5px);opacity:.6}to{transform:translateY(-8px);opacity:1}}@keyframes v7ConfettiBob{from{transform:rotate(-2deg);opacity:.62}to{transform:rotate(2deg);opacity:1}}

/* V7 final mobile-first home hierarchy — the Tinder card is the product, not a dashboard below the fold. */
.v7-home-hero{min-height:142px;grid-template-columns:minmax(0,1fr) 126px;padding:16px 18px;border-radius:30px;box-shadow:0 16px 42px rgba(55,112,78,.12)}
.v7-home-hero:before{width:170px;height:170px;left:-80px;bottom:-108px}.v7-home-hero:after{width:80px;height:80px;right:92px;top:-48px}
.v7-home-hero-copy h1{font-size:clamp(30px,6.4vw,46px);line-height:1;margin:4px 0 6px}.v7-home-hero-copy p{font-size:11px;line-height:1.45;max-width:360px}.v7-home-pills{margin-top:9px;gap:5px}.v7-home-pills button{padding:6px 8px;font-size:8.5px}
.v7-home-host{height:122px}.v7-home-host .v7-home-mascot{width:114px;height:114px;filter:drop-shadow(0 12px 14px rgba(47,84,61,.14))}.v7-home-host>span{padding:4px 7px;font-size:7.5px}
.v7-bank-hud{grid-template-columns:minmax(0,1fr) 88px 96px;gap:7px}.v7-bank-hud>div,.v7-wallet{min-height:66px;border-radius:19px}.v7-bank-count{padding:8px 11px}.v7-bank-count>strong{font-size:20px;line-height:1}.v7-bank-count>i{height:5px}.v7-bank-count>small{margin-top:4px;font-size:8px}.v7-bank-reserve strong{font-size:18px}.v7-bank-reserve small,.v7-wallet small{font-size:7.5px}
.v7-home-page .rate-segmented button{min-height:40px}.v7-home-page .rate-segmented{padding:4px;border-radius:17px}.v7-home-page .rate-segmented button{border-radius:13px}
@media(max-width:520px){
  .v7-home-page{gap:8px}
  .v7-home-hero{min-height:112px;grid-template-columns:minmax(0,1fr) 88px;padding:11px 13px;border-radius:25px}
  .v7-home-hero-copy h1{font-size:28px;margin:2px 0 4px;letter-spacing:-.04em}.v7-home-hero-copy p{font-size:8.5px;line-height:1.35;max-width:230px}
  .v7-home-host{height:92px}.v7-home-host .v7-home-mascot{width:86px;height:86px}.v7-home-host>span{font-size:6.8px;padding:3px 6px}
  .v7-home-pills{margin-top:6px}.v7-home-pills button{font-size:7px;padding:5px 6px}
  .v7-bank-hud{grid-template-columns:minmax(0,1fr) 72px 80px;gap:5px}.v7-bank-hud>div,.v7-wallet{min-height:58px;border-radius:17px}.v7-bank-count{padding:7px 9px}.v7-bank-count>span,.v7-bank-reserve>span{font-size:7px}.v7-bank-count>strong{font-size:18px}.v7-bank-count>small{font-size:7px}.v7-bank-reserve strong{font-size:16px}.v7-bank-reserve small,.v7-wallet small{font-size:6.5px}
  .v7-home-page .rate-segmented button{min-height:36px;font-size:9px}
}
@media(max-height:720px) and (max-width:520px){.v7-home-hero{min-height:96px}.v7-home-hero-copy p{display:none}.v7-home-host{height:78px}.v7-home-host .v7-home-mascot{width:74px;height:74px}.v7-home-pills{margin-top:4px}.v7-bank-hud>div,.v7-wallet{min-height:52px}.v7-home-page .rate-segmented button{min-height:34px}}
.v7-live-popup.mission{background:color-mix(in srgb,var(--surface) 94%,#f3edff);border-color:rgba(139,114,236,.30)}
.v7-live-popup.mission:after{content:"";position:absolute;inset:auto 18px 0;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--v7-violet),var(--v7-mint));animation:v7LiveTimer 6.2s linear forwards}
html[data-theme="dark"] .v7-live-popup.mission{background:#24213a;border-color:rgba(164,140,255,.28)}


/* V7 premium legibility pass — compact is fine; microscopic is not. */
@media(max-width:520px){
  .v7-home-hero{min-height:122px;grid-template-columns:minmax(0,1fr) 94px;padding:12px 14px}
  .v7-home-hero-copy h1{font-size:30px}.v7-home-hero-copy p{font-size:10.5px;line-height:1.42;max-width:245px}
  .v7-home-host{height:98px}.v7-home-host .v7-home-mascot{width:92px;height:92px}.v7-home-host>span{font-size:8px;padding:4px 7px}
  .v7-home-pills button{font-size:8.5px;padding:6px 7px}
  .v7-bank-count>span,.v7-bank-reserve>span{font-size:8.5px}.v7-bank-count>small{font-size:8.5px}.v7-bank-reserve small,.v7-wallet small{font-size:8px}
  .v7-home-page .rate-segmented button{font-size:10.5px}
  .v7-museum-copy p,.v7-shop-hero>p{font-size:10.5px!important;line-height:1.45!important}
  .v7-museum-summary small,.v7-museum-host span,.v7-section-tabs button,.v7-shop-tabs button{font-size:8.5px}
  .v7-moment-card>small,.v7-moment-card>em,.v7-record-card small,.v7-collection-card small,.v7-collection-card em,.v7-timeline small{font-size:8.5px}
  .v7-moment-card>p,.v7-record-card p,.v7-collection-card p,.v7-timeline p{font-size:10px;line-height:1.42}
  .v7-shop-card-copy small,.v7-shop-preview b,.v7-shop-wallet small{font-size:8.5px}.v7-shop-card-copy strong{font-size:14px}.v7-shop-card-copy p{font-size:10px;line-height:1.42}.v7-shop-card-foot button,.v7-shop-note{font-size:9px}
  .game-tile.v65-game p{font-size:10.5px!important;line-height:1.4!important}.game-tile.v65-game small{font-size:9px!important}
  .v7-live-popup small{font-size:9px}.v7-live-popup em{font-size:9px;line-height:1.3}.v7-live-popup strong{font-size:13.5px}
}

/* V7.0.1 — fit-to-screen insights, winner podium, richer purchased cosmetics */
.shell-dash.dash-overview{height:100dvh;min-height:100dvh;overflow:hidden;padding-bottom:0}
.shell-dash.dash-overview .main{height:calc(100dvh - 138px - env(safe-area-inset-top) - var(--safe-bottom));min-height:0;padding:7px 0 5px;overflow:hidden}
.shell-dash.dash-overview .main>.main-wrap{height:100%;min-height:0;overflow:hidden!important;touch-action:none}
.v701-insights-screen{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,.92fr) minmax(0,1.08fr) auto;gap:8px;overflow:hidden}
.v701-journey-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;background:color-mix(in srgb,var(--surface) 84%,transparent);border:1px solid var(--line);padding:4px;border-radius:18px;box-shadow:var(--v7-soft-shadow)}
.v701-journey-nav button{border:0;background:transparent;min-height:35px;border-radius:13px;font-size:9px;font-weight:850;color:var(--text-3)}
.v701-journey-nav button.active{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 13%,var(--surface)),color-mix(in srgb,var(--brand-2) 11%,var(--surface)));color:var(--text);box-shadow:0 6px 18px color-mix(in srgb,var(--brand) 10%,transparent)}
.v701-stats-stage,.v701-podium-stage{border:1px solid var(--line);background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--surface) 91%,var(--brand) 9%));border-radius:29px;box-shadow:var(--v7-soft-shadow);min-height:0;overflow:hidden}
.v701-stats-stage{padding:12px 13px 10px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:7px;position:relative}
.v701-stats-stage:before{content:"";position:absolute;width:160px;height:160px;border-radius:50%;inset:-96px -64px auto auto;background:radial-gradient(circle,color-mix(in srgb,var(--brand-2) 20%,transparent),transparent 68%);pointer-events:none}
.v701-stats-head{display:grid;grid-template-columns:minmax(0,1fr) 82px;align-items:center;gap:8px;position:relative;z-index:1}
.v701-stats-head h1{font-size:23px;line-height:1;margin:3px 0 4px;letter-spacing:-.045em}.v701-stats-head p{font-size:8px;line-height:1.35;color:var(--text-3);margin:0}.v701-stats-head .eyebrow{font-size:7px}
.v701-progress-orb{width:78px;height:78px;border-radius:50%;background:conic-gradient(var(--brand) var(--p),color-mix(in srgb,var(--surface-2) 80%,transparent) 0);position:relative;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--line)}
.v701-progress-orb:after{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}
.v701-progress-orb>*{position:relative;z-index:2;grid-area:1/1}.v701-stat-mascot{width:48px;height:48px;object-fit:contain;transform:translateY(-7px)}.v701-progress-orb>b{font-size:12px;margin-top:34px}.v701-progress-orb>small{display:none}
.v701-metric-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:var(--surface-2);border-radius:13px;padding:3px}.v701-metric-switch button{border:0;background:transparent;border-radius:10px;min-height:28px;font-size:8px;font-weight:850;color:var(--text-3)}.v701-metric-switch button.active{background:var(--surface);color:var(--brand);box-shadow:0 4px 12px rgba(35,42,38,.07)}
.v701-duel-graph{display:grid;grid-template-columns:1fr 64px 1fr;align-items:center;gap:7px;min-height:0}.v701-person-row{min-width:0}.v701-person-row>span{display:grid;grid-template-columns:24px 1fr;grid-template-rows:auto auto;column-gap:6px;align-items:center}.v701-person-row i{grid-row:1/3;width:24px;height:24px;border-radius:9px;display:grid;place-items:center;color:white;font-size:9px;font-style:normal;font-weight:900}.v701-person-row.bar i{background:linear-gradient(145deg,#ef6b78,#f5a078)}.v701-person-row.alon i{background:linear-gradient(145deg,#6e63d9,#6f9be9)}.v701-person-row strong{font-size:10px;line-height:1}.v701-person-row small{font-size:7px;color:var(--text-3);margin-top:2px}.v701-person-row>div{height:12px;background:var(--surface-2);border-radius:99px;margin-top:6px;overflow:hidden;padding:2px}.v701-person-row>div b{display:block;height:100%;border-radius:99px;min-width:8px;animation:v701Bar .45s cubic-bezier(.2,.8,.2,1) both}.v701-person-row.bar>div b{margin-left:auto;background:linear-gradient(90deg,#ef6b78,#f6a376)}.v701-person-row.alon>div b{margin-right:auto;background:linear-gradient(90deg,#6e63d9,#72a2ea)}.v701-duel-center{text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px}.v701-duel-center span{width:34px;height:34px;border-radius:12px;background:var(--text);color:var(--bg);display:grid;place-items:center;font-size:8px;font-weight:950;box-shadow:0 5px 12px rgba(0,0,0,.10)}.v701-duel-center strong{font-size:6.5px;line-height:1.25;color:var(--text-3);max-width:64px}
@keyframes v701Bar{from{max-width:0;opacity:.2}to{max-width:100%;opacity:1}}
.v701-podium-stage{padding:10px 11px 8px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:5px;background:linear-gradient(155deg,color-mix(in srgb,var(--surface) 92%,#fff4c7),var(--surface))}
.v701-podium-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.v701-podium-head h2{font-size:17px;margin:2px 0 0;letter-spacing:-.035em}.v701-podium-head .eyebrow{font-size:7px}.v701-podium-head>button{border:0;background:transparent;color:var(--brand);font-size:7px;font-weight:850;display:flex;align-items:center;gap:2px}.v701-podium-head>button .icon{width:11px;height:11px}
.v701-podium{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:6px;align-items:end;min-height:0;padding:0 2px}.v701-podium-place{border:0;color:var(--text);border-radius:18px 18px 11px 11px;padding:6px 4px 7px;text-align:center;position:relative;box-shadow:inset 0 0 0 1px var(--line),0 7px 17px rgba(63,52,35,.07);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0}.v701-podium-place.place-1{height:100%;min-height:94px;background:linear-gradient(180deg,#fff2a9,#f5c95b);padding-top:4px}.v701-podium-place.place-2{height:84%;min-height:80px;background:linear-gradient(180deg,#f4f7fa,#ccd6df)}.v701-podium-place.place-3{height:72%;min-height:73px;background:linear-gradient(180deg,#f9dcc8,#dca475)}.v701-podium-place .v701-medal{font-size:19px;line-height:1}.v701-podium-place strong{font-size:15px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0 0}.v701-podium-place small{font-size:6px;color:#5d5148}.v701-podium-place>div{margin-top:auto;display:grid;grid-template-columns:22px 22px 22px;align-items:center;gap:2px}.v701-podium-place>div b{height:20px;border-radius:8px;display:grid;place-items:center;font-size:8px}.v701-podium-place>div b.bar{background:rgba(239,107,120,.17);color:#a93d50}.v701-podium-place>div b.alon{background:rgba(110,99,217,.17);color:#5044b0}.v701-podium-place>div i{width:22px;height:22px;border-radius:8px;display:grid;place-items:center;background:rgba(255,255,255,.66);font-style:normal;font-size:8px;font-weight:950;color:#5d5148}.v701-podium-place.empty{opacity:.56}
.v701-quickbar{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.v701-quickbar button{border:1px solid var(--line);background:var(--surface);min-height:48px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;box-shadow:0 5px 14px rgba(32,51,39,.05)}.v701-quickbar button>span{font-size:17px;height:21px;display:grid;place-items:center}.v701-quickbar button>b{font-size:7px}.v701-quick-mascot{width:25px;height:25px;object-fit:contain}

/* A purchased visual theme must visibly change the product, not just a single accent variable. */
html[data-app-theme="lavender"] .header,html[data-app-theme="lavender"] .bottom-nav{background:color-mix(in srgb,#f0eaff 72%,var(--surface-glass))}
html[data-app-theme="sunset"] .header,html[data-app-theme="sunset"] .bottom-nav{background:color-mix(in srgb,#fff0e7 72%,var(--surface-glass))}
html[data-app-theme="cloud"] .header,html[data-app-theme="cloud"] .bottom-nav{background:color-mix(in srgb,#e9f7ff 74%,var(--surface-glass))}
html[data-app-theme="midnight"] .header,html[data-app-theme="midnight"] .bottom-nav{background:color-mix(in srgb,#e8edff 62%,var(--surface-glass))}
html[data-theme="dark"][data-app-theme="midnight"] .header,html[data-theme="dark"][data-app-theme="midnight"] .bottom-nav{background:rgba(16,23,40,.88)}
html[data-app-theme="lavender"] .btn.primary,html[data-app-theme="lavender"] .v7-tinder-actions .primary{background:linear-gradient(135deg,#795de8,#bd7be8)!important}
html[data-app-theme="sunset"] .btn.primary,html[data-app-theme="sunset"] .v7-tinder-actions .primary{background:linear-gradient(135deg,#ee6b78,#f2a45f)!important}
html[data-app-theme="cloud"] .btn.primary,html[data-app-theme="cloud"] .v7-tinder-actions .primary{background:linear-gradient(135deg,#4aa7d8,#6fcce0)!important}
html[data-app-theme="midnight"] .btn.primary,html[data-app-theme="midnight"] .v7-tinder-actions .primary{background:linear-gradient(135deg,#5f79f3,#9c70ef)!important}

html[data-app-theme="neon"]{--brand:#cf48ff;--brand-2:#43d9ff;--violet:#9d70ff;--mint:#42e0c0;--gold:#ffd65d;--line:rgba(163,86,255,.16);--line-strong:rgba(91,213,255,.26)}
html[data-theme="light"][data-app-theme="neon"]{--bg:#f8f4ff;--bg-2:#f0eaff;--surface:#fffdff;--surface-2:#f3edff;--text:#211834;--text-2:#625779;--text-3:#8c80a5}
html[data-theme="dark"][data-app-theme="neon"]{--bg:#0d0817;--bg-2:#141020;--surface:#191226;--surface-2:#231834;--text:#fbf8ff;--text-2:#d2c5df;--text-3:#9a8aab}
html[data-app-theme="neon"] body{background:radial-gradient(circle at 84% -4%,rgba(218,70,255,.22),transparent 31%),radial-gradient(circle at 0 34%,rgba(55,221,255,.15),transparent 31%),radial-gradient(circle at 78% 82%,rgba(78,238,190,.10),transparent 29%),var(--bg)!important;background-attachment:fixed!important}
html[data-app-theme="neon"] .header{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 88%,rgba(198,65,255,.16)) 76%,transparent)!important;border-bottom-color:rgba(107,215,255,.12)}
html[data-app-theme="neon"] .bottom-nav{background:color-mix(in srgb,var(--surface) 87%,rgba(126,50,213,.13))!important;border-top-color:rgba(80,213,255,.20);box-shadow:0 -10px 34px rgba(116,50,214,.08)}
html[data-app-theme="neon"] .nav-btn.active{color:#d14cff;text-shadow:0 0 14px rgba(209,76,255,.34)}
html[data-app-theme="neon"] .btn.primary{background:linear-gradient(135deg,#ba45ff,#4adfff)!important;box-shadow:0 10px 26px rgba(186,69,255,.24),0 0 22px rgba(74,223,255,.12)!important}
html[data-app-theme="neon"] .v7-tinder-card,html[data-app-theme="neon"] .v701-stats-stage,html[data-app-theme="neon"] .v701-podium-stage,html[data-app-theme="neon"] .v7-shop-card,html[data-app-theme="neon"] .game-tile.v65-game{border-color:rgba(127,210,255,.24)!important;box-shadow:0 0 0 1px rgba(207,72,255,.08),0 18px 48px rgba(121,54,201,.14)!important}
html[data-app-theme="neon"] .v7-tinder-card{background:radial-gradient(circle at 14% 8%,rgba(77,226,255,.15),transparent 28%),radial-gradient(circle at 88% 10%,rgba(218,72,255,.14),transparent 29%),linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface) 86%,#e4d5ff))!important}
html[data-app-theme="neon"] .v701-stats-stage{background:radial-gradient(circle at 95% 8%,rgba(215,76,255,.20),transparent 32%),linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 87%,#dff8ff))!important}
html[data-app-theme="neon"] .v701-podium-stage{background:radial-gradient(circle at 50% 0,rgba(255,213,93,.18),transparent 34%),linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface) 88%,#eadfff))!important}
html[data-app-theme="neon"] .v701-journey-nav button.active,html[data-app-theme="neon"] .segmented button.active{background:linear-gradient(135deg,rgba(204,73,255,.16),rgba(66,218,255,.14))!important;box-shadow:0 0 18px rgba(186,69,255,.11)!important}
html[data-app-theme="neon"] .v7-bank-hud>div,html[data-app-theme="neon"] .v7-home-story-row button,html[data-app-theme="neon"] .v701-quickbar button{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 90%,#e8dbff))!important;border-color:rgba(108,214,255,.18)!important}
html[data-app-theme="neon"] .v65-arcade-hero{background:radial-gradient(circle at 12% 0,rgba(72,223,255,.20),transparent 35%),radial-gradient(circle at 95% 10%,rgba(207,72,255,.20),transparent 33%),linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 86%,#dfd1ff))!important;border-color:rgba(89,218,255,.22)!important}
html[data-app-theme="neon"] .v7-shop-hero{background:radial-gradient(circle at 20% 0,rgba(75,222,255,.21),transparent 33%),radial-gradient(circle at 85% 10%,rgba(211,73,255,.24),transparent 34%),linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 84%,#ead6ff))!important}
html[data-app-theme="neon"] .header-wallet,html[data-app-theme="neon"] .v7-shop-wallet{box-shadow:0 0 18px rgba(199,69,255,.13);border-color:rgba(84,215,255,.22)!important}

.v701-cosmetic-overlay{z-index:145}.v701-cosmetic-result{width:min(calc(100% - 28px),400px);border-radius:34px;background:var(--surface);border:1px solid var(--line);box-shadow:0 30px 100px rgba(37,23,48,.28);padding:15px 18px 20px;text-align:center;position:relative;overflow:hidden}.v701-cosmetic-result .sheet-close{position:absolute;top:10px;left:10px;z-index:4}.v701-cosmetic-preview{height:190px;border-radius:25px;display:grid;place-items:center;position:relative;margin-bottom:12px;overflow:hidden;background:linear-gradient(135deg,var(--surface-2),color-mix(in srgb,var(--surface-2) 80%,var(--brand)))}.v701-cosmetic-preview>span{position:absolute;top:12px;right:14px;font-size:34px;filter:drop-shadow(0 5px 12px rgba(0,0,0,.10))}.v701-cosmetic-mascot{width:176px;height:176px;object-fit:contain;animation:v7Celebrate .75s cubic-bezier(.2,.9,.3,1.2) both}.v701-cosmetic-result h2{font-size:28px;letter-spacing:-.045em;margin:4px 0}.v701-cosmetic-result p{font-size:10px;line-height:1.5;color:var(--text-2);margin:0 auto 14px;max-width:300px}.v701-cosmetic-result .btn{width:100%}

@media(max-width:620px){
  .shell-dash.dash-overview .main{height:calc(100dvh - 132px - env(safe-area-inset-top) - var(--safe-bottom));padding-top:5px}
  .v701-insights-screen{gap:6px}.v701-journey-nav button{min-height:31px;font-size:8px}.v701-stats-stage{padding:9px 10px 8px;border-radius:24px}.v701-stats-head{grid-template-columns:minmax(0,1fr) 66px}.v701-stats-head h1{font-size:20px}.v701-progress-orb{width:62px;height:62px}.v701-progress-orb:after{inset:6px}.v701-stat-mascot{width:39px;height:39px}.v701-progress-orb>b{font-size:10px;margin-top:28px}.v701-metric-switch button{min-height:24px}.v701-duel-graph{grid-template-columns:1fr 52px 1fr;gap:5px}.v701-duel-center span{width:29px;height:29px;border-radius:10px}.v701-duel-center strong{font-size:6px}.v701-podium-stage{padding:8px 9px 7px;border-radius:24px}.v701-podium-head h2{font-size:15px}.v701-podium-place{border-radius:15px 15px 9px 9px;padding-inline:3px}.v701-podium-place.place-1{min-height:82px}.v701-podium-place.place-2{min-height:70px}.v701-podium-place.place-3{min-height:64px}.v701-podium-place .v701-medal{font-size:16px}.v701-podium-place strong{font-size:13px}.v701-podium-place>div{grid-template-columns:19px 19px 19px}.v701-podium-place>div b,.v701-podium-place>div i{width:19px;height:19px}.v701-quickbar button{min-height:43px;border-radius:14px}.v701-quickbar button>span{font-size:15px;height:18px}.v701-quickbar button>b{font-size:6.5px}.v701-quick-mascot{width:22px;height:22px}
}
@media(max-height:720px){.v701-stats-head p{display:none}.v701-stats-head h1{font-size:18px}.v701-progress-orb{width:56px;height:56px}.v701-podium-head .eyebrow{display:none}.v701-podium-head h2{font-size:14px}.v701-podium-place.place-1{min-height:74px}.v701-podium-place.place-2{min-height:64px}.v701-podium-place.place-3{min-height:58px}.v701-quickbar button{min-height:38px}}

/* V7.0.1 — purchased themes are full product skins, not accent swaps */
html[data-app-theme="lavender"]{--brand:#7659e8;--brand-2:#bd7be8;--mint:#68c7a1;--line:rgba(118,89,232,.13);--line-strong:rgba(118,89,232,.24)}
html[data-theme="light"][data-app-theme="lavender"]{--bg:#f7f3ff;--bg-2:#efe9fb;--surface:#fffdff;--surface-2:#f3edfb;--text:#271e38;--text-2:#685d78;--text-3:#9186a2}
html[data-theme="dark"][data-app-theme="lavender"]{--bg:#15101d;--bg-2:#1c1527;--surface:#21182d;--surface-2:#2a1f39;--text:#fcf9ff;--text-2:#d7cbe4;--text-3:#a596b8}
html[data-app-theme="sunset"]{--brand:#ef6976;--brand-2:#f0a15e;--mint:#73c796;--line:rgba(239,105,118,.14);--line-strong:rgba(240,161,94,.26)}
html[data-theme="light"][data-app-theme="sunset"]{--bg:#fff7f1;--bg-2:#fff0e7;--surface:#fffdfb;--surface-2:#fff1e8;--text:#34221f;--text-2:#775e57;--text-3:#a18a82}
html[data-theme="dark"][data-app-theme="sunset"]{--bg:#1a1012;--bg-2:#211416;--surface:#29191b;--surface-2:#342022;--text:#fff9f6;--text-2:#e2c9c2;--text-3:#aa8e88}
html[data-app-theme="cloud"]{--brand:#4aa7d8;--brand-2:#6fcce0;--mint:#5bc49b;--line:rgba(74,167,216,.14);--line-strong:rgba(111,204,224,.27)}
html[data-theme="light"][data-app-theme="cloud"]{--bg:#f3fbff;--bg-2:#eaf7fd;--surface:#fcfeff;--surface-2:#edf8fc;--text:#19303c;--text-2:#57727e;--text-3:#8199a4}
html[data-theme="dark"][data-app-theme="cloud"]{--bg:#0d171d;--bg-2:#111f27;--surface:#142832;--surface-2:#1c333e;--text:#f6fcff;--text-2:#c5d9e2;--text-3:#8caab7}
html[data-app-theme="midnight"]{--brand:#6079f3;--brand-2:#9b70ef;--mint:#62d0b3;--line:rgba(96,121,243,.16);--line-strong:rgba(155,112,239,.27)}
html[data-theme="light"][data-app-theme="midnight"]{--bg:#f2f4ff;--bg-2:#e8ecfb;--surface:#fdfdff;--surface-2:#eef0fb;--text:#20253b;--text-2:#626981;--text-3:#8b92a8}
html[data-theme="dark"][data-app-theme="midnight"]{--bg:#0b1020;--bg-2:#10172a;--surface:#151e33;--surface-2:#1d2941;--text:#f8f9ff;--text-2:#c8cde0;--text-3:#9099b4}

html[data-app-theme="lavender"] body{background:radial-gradient(circle at 92% 0,rgba(158,112,236,.17),transparent 31%),radial-gradient(circle at 4% 76%,rgba(207,148,232,.10),transparent 30%),var(--bg)!important;background-attachment:fixed!important}
html[data-app-theme="sunset"] body{background:radial-gradient(circle at 88% -2%,rgba(247,150,99,.19),transparent 31%),radial-gradient(circle at 4% 72%,rgba(239,105,118,.10),transparent 31%),var(--bg)!important;background-attachment:fixed!important}
html[data-app-theme="cloud"] body{background:radial-gradient(circle at 86% -2%,rgba(101,196,234,.17),transparent 32%),radial-gradient(circle at 0 58%,rgba(150,219,244,.10),transparent 31%),var(--bg)!important;background-attachment:fixed!important}
html[data-app-theme="midnight"] body{background:radial-gradient(circle at 86% -2%,rgba(112,130,246,.18),transparent 32%),radial-gradient(circle at 4% 65%,rgba(150,109,236,.11),transparent 31%),var(--bg)!important;background-attachment:fixed!important}

/* Make every paid color theme visible in the surfaces users actually spend time in. */
html[data-app-theme]:not([data-app-theme="mint"]) .v7-tinder-card,
html[data-app-theme]:not([data-app-theme="mint"]) .v701-stats-stage,
html[data-app-theme]:not([data-app-theme="mint"]) .v701-podium-stage,
html[data-app-theme]:not([data-app-theme="mint"]) .v7-shop-card,
html[data-app-theme]:not([data-app-theme="mint"]) .v7-moment-card,
html[data-app-theme]:not([data-app-theme="mint"]) .v7-record-card,
html[data-app-theme]:not([data-app-theme="mint"]) .v7-collection-card,
html[data-app-theme]:not([data-app-theme="mint"]) .game-tile.v65-game,
html[data-app-theme]:not([data-app-theme="mint"]) .v7-bank-hud>div,
html[data-app-theme]:not([data-app-theme="mint"]) .v701-quickbar button,
html[data-app-theme]:not([data-app-theme="mint"]) .v7-home-story-row button{
  border-color:color-mix(in srgb,var(--brand) 24%,var(--line))!important;
  box-shadow:0 12px 34px color-mix(in srgb,var(--brand) 9%,transparent)!important;
}
html[data-app-theme]:not([data-app-theme="mint"]) .v7-tinder-card,
html[data-app-theme]:not([data-app-theme="mint"]) .v7-shop-card,
html[data-app-theme]:not([data-app-theme="mint"]) .game-tile.v65-game{
  background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--brand)))!important;
}
html[data-app-theme]:not([data-app-theme="mint"]) .v7-special-page,
html[data-app-theme]:not([data-app-theme="mint"]) .journey-hub,
html[data-app-theme]:not([data-app-theme="mint"]) .games-layout{background:transparent!important}
html[data-app-theme]:not([data-app-theme="mint"]) .eyebrow,
html[data-app-theme]:not([data-app-theme="mint"]) .text-btn,
html[data-app-theme]:not([data-app-theme="mint"]) .game-tile.v65-game small{color:var(--brand)!important}

/* Neon is deliberately unmistakable after purchase: chrome, cards, map, museum and arcade all skin together. */
html[data-app-theme="neon"] .v7-level-world,
html[data-app-theme="neon"] .v7-museum-hero,
html[data-app-theme="neon"] .v7-shop-hero,
html[data-app-theme="neon"] .v65-arcade-hero,
html[data-app-theme="neon"] .v7-candy-map,
html[data-app-theme="neon"] .v7-live-popup,
html[data-app-theme="neon"] .moment-overlay [data-sheet]{border-color:rgba(84,220,255,.23)!important;box-shadow:0 0 0 1px rgba(207,72,255,.08),0 28px 80px rgba(83,35,148,.18)!important}
html[data-app-theme="neon"] .v7-candy-map{background:radial-gradient(circle at 20% 10%,rgba(67,217,255,.16),transparent 28%),radial-gradient(circle at 80% 55%,rgba(207,72,255,.13),transparent 30%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 92%,#dffaff),color-mix(in srgb,var(--surface) 88%,#eadcff))!important}
html[data-app-theme="neon"] .v7-map-node.current button{box-shadow:0 0 0 5px rgba(67,217,255,.17),0 0 30px rgba(207,72,255,.32)!important}
html[data-app-theme="neon"] .v701-progress-orb{filter:drop-shadow(0 0 12px rgba(207,72,255,.17))}
html[data-app-theme="neon"] .v7-shop-card.active,
html[data-app-theme="neon"] .shop-item.active{box-shadow:0 0 0 2px rgba(67,217,255,.28),0 0 28px rgba(207,72,255,.18)!important}
html[data-app-theme="neon"] .v7-tinder-name{background:linear-gradient(90deg,#c646ff,#45dfff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 26px rgba(196,70,255,.10)}

/* Purchased frame is visible beyond one edge: it follows the main name experience and result moments. */
html[data-card-frame="gold"] .v7-tinder-card,html[data-card-frame="gold"] .champion-screen{box-shadow:0 0 0 4px rgba(244,201,91,.55),0 30px 85px rgba(39,82,58,.16)!important;border-color:#f2c956!important}
html[data-card-frame="cloud"] .v7-tinder-card,html[data-card-frame="cloud"] .champion-screen{box-shadow:0 0 0 5px rgba(173,219,255,.32),0 30px 85px rgba(39,82,58,.14)!important}
html[data-card-frame="neon"] .v7-tinder-card,html[data-card-frame="neon"] .champion-screen{box-shadow:0 0 0 3px rgba(142,121,239,.50),0 0 34px rgba(215,79,255,.22),0 30px 85px rgba(39,82,58,.18)!important;border-color:#b38dff!important}

/* ========================================================================== */
/* V8.0 — PREMIUM JOURNEY REBUILD                                             */
/* Central product scenes are viewport-first. Lists may scroll only where     */
/* scrolling is semantically part of the product (the name library).          */
/* ========================================================================== */
:root{
  --v8-a:#dcf7e7;--v8-b:#eef3ff;--v8-c:#fff1f4;--v8-ink:#214536;
  --v8-glow:rgba(76,190,126,.18);--v8-card:color-mix(in srgb,var(--surface) 94%,transparent);
  --v8-shadow:0 18px 46px rgba(32,70,48,.12);--v8-deep-shadow:0 24px 70px rgba(35,48,41,.18);
}
html[data-theme="dark"]{--v8-a:#173627;--v8-b:#1b263e;--v8-c:#2b1c2b;--v8-ink:#ecfff4;--v8-glow:rgba(84,224,153,.15)}
html[data-app-theme="lavender"]{--v8-a:#eee5ff;--v8-b:#f7ebff;--v8-c:#e8f0ff;--v8-ink:#4d367d;--v8-glow:rgba(139,91,235,.20)}
html[data-app-theme="sunset"]{--v8-a:#ffe9dc;--v8-b:#fff0d4;--v8-c:#ffe4eb;--v8-ink:#7a4339;--v8-glow:rgba(245,126,92,.20)}
html[data-app-theme="cloud"]{--v8-a:#e4f7ff;--v8-b:#f5fbff;--v8-c:#e9fff8;--v8-ink:#315d70;--v8-glow:rgba(70,174,219,.18)}
html[data-app-theme="midnight"]{--v8-a:#e8edff;--v8-b:#ece5ff;--v8-c:#e4f5ff;--v8-ink:#374a9c;--v8-glow:rgba(91,111,239,.20)}
html[data-app-theme="neon"]{--v8-a:#f4e1ff;--v8-b:#dcf9ff;--v8-c:#e1fff5;--v8-ink:#7134a0;--v8-glow:rgba(198,70,255,.26)}
html[data-app-theme="royal"]{--brand:#b17b21;--brand-2:#7750a5;--gold:#d4a743;--line:rgba(157,111,31,.16);--line-strong:rgba(157,111,31,.28);--v8-a:#fff1c9;--v8-b:#f6e9d7;--v8-c:#efe4ff;--v8-ink:#6b4b16;--v8-glow:rgba(210,164,68,.24)}
html[data-theme="light"][data-app-theme="royal"]{--bg:#fffaf1;--bg-2:#f8efdf;--surface:#fffdf7;--surface-2:#f8f0e4;--text:#352817;--text-2:#73634e;--text-3:#9b8a71}
html[data-theme="dark"][data-app-theme="royal"]{--bg:#19140d;--bg-2:#211a10;--surface:#292015;--surface-2:#35291a;--text:#fff8e9;--text-2:#ddccb0;--text-3:#a99270;--v8-a:#362915;--v8-b:#2e241c;--v8-c:#30233c;--v8-ink:#ffe7a4}
html[data-app-theme="galaxy"]{--brand:#7f68ff;--brand-2:#4fd5ef;--mint:#55d9bd;--line:rgba(126,105,255,.18);--line-strong:rgba(80,213,239,.28);--v8-a:#e8e4ff;--v8-b:#e4f7ff;--v8-c:#f1e5ff;--v8-ink:#4a3ca3;--v8-glow:rgba(123,94,255,.26)}
html[data-theme="light"][data-app-theme="galaxy"]{--bg:#f6f4ff;--bg-2:#eceaff;--surface:#fdfcff;--surface-2:#f0edff;--text:#272245;--text-2:#665f87;--text-3:#8f88ac}
html[data-theme="dark"][data-app-theme="galaxy"]{--bg:#0c0b1e;--bg-2:#11112a;--surface:#171634;--surface-2:#201e43;--text:#faf9ff;--text-2:#cbc7ed;--text-3:#918bb7;--v8-a:#221d4d;--v8-b:#132d46;--v8-c:#301c49;--v8-ink:#dcd5ff}
html[data-app-theme="candy"]{--brand:#ee5c93;--brand-2:#7d71e9;--mint:#4dc8a5;--gold:#e8ad3b;--line:rgba(238,92,147,.15);--line-strong:rgba(125,113,233,.24);--v8-a:#ffe0ee;--v8-b:#e9e6ff;--v8-c:#dcfff4;--v8-ink:#933a63;--v8-glow:rgba(238,92,147,.22)}
html[data-theme="light"][data-app-theme="candy"]{--bg:#fff7fb;--bg-2:#ffedf6;--surface:#fffefe;--surface-2:#fff0f7;--text:#38202d;--text-2:#765668;--text-3:#a17e91}
html[data-theme="dark"][data-app-theme="candy"]{--bg:#1d1017;--bg-2:#281520;--surface:#311a27;--surface-2:#3d2031;--text:#fff7fb;--text-2:#e3c3d3;--text-3:#ad879a;--v8-a:#482239;--v8-b:#2e284d;--v8-c:#173d34;--v8-ink:#ffc8df}
html[data-app-theme="storybook"]{--brand:#a1603e;--brand-2:#668e6e;--mint:#68a87c;--line:rgba(132,91,58,.17);--line-strong:rgba(99,137,105,.27);--v8-a:#f7ead0;--v8-b:#edf0d8;--v8-c:#f5e3d9;--v8-ink:#6f4931;--v8-glow:rgba(163,99,61,.17)}
html[data-theme="light"][data-app-theme="storybook"]{--bg:#fffaf0;--bg-2:#f5eddf;--surface:#fffdf7;--surface-2:#f4ecdf;--text:#332a20;--text-2:#6e6253;--text-3:#978a77}
html[data-theme="dark"][data-app-theme="storybook"]{--bg:#18140f;--bg-2:#201a13;--surface:#282018;--surface-2:#352a20;--text:#fff8e9;--text-2:#d8c9b2;--text-3:#a18f76;--v8-a:#382a1e;--v8-b:#293427;--v8-c:#3d2924;--v8-ink:#f4d2aa}

/* iOS performance: do not pin giant gradient layers to the visual viewport. */
html[data-app-theme] body{background-attachment:scroll!important;background-image:radial-gradient(circle at 88% -4%,var(--v8-glow),transparent 31%),radial-gradient(circle at 0 76%,color-mix(in srgb,var(--v8-b) 44%,transparent),transparent 32%)!important;background-color:var(--bg)!important}
html[data-app-theme="galaxy"] body{background-image:radial-gradient(circle at 15% 12%,rgba(255,255,255,.13) 0 1px,transparent 2px),radial-gradient(circle at 78% 21%,rgba(255,255,255,.12) 0 1px,transparent 2px),radial-gradient(circle at 88% -4%,var(--v8-glow),transparent 34%),linear-gradient(160deg,var(--bg),var(--bg-2))!important;background-size:80px 80px,120px 120px,auto,auto!important}
html[data-app-theme="storybook"] body{background-image:linear-gradient(rgba(115,82,49,.025) 1px,transparent 1px),radial-gradient(circle at 88% -4%,var(--v8-glow),transparent 31%)!important;background-size:100% 26px,auto!important}
html[data-app-theme="candy"] body{background-image:radial-gradient(circle at 90% 0,var(--v8-glow),transparent 30%),radial-gradient(circle at 8% 72%,rgba(108,216,191,.13),transparent 27%),linear-gradient(155deg,var(--bg),var(--bg-2))!important}

.shell.v8-full-scene{height:100dvh!important;overflow:hidden!important}
.v8-header{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 93%,transparent),transparent)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.v8-header-inner{height:54px!important;gap:8px}
.v8-profile-chip{border:0;background:transparent;padding:0;display:flex;align-items:center;gap:7px;min-width:0;text-align:start}.v8-profile-chip .avatar{width:34px;height:34px;border-radius:12px;font-size:12px}.v8-profile-chip>span:last-child{display:flex;flex-direction:column;min-width:0}.v8-profile-chip b{font-size:11px;line-height:1.1}.v8-profile-chip small{font-size:9px;color:var(--text-3);max-width:94px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v8-header-brand{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:4px;pointer-events:none}.v8-header-brand>span{width:26px;height:30px;display:grid;place-items:center}.v8-header-mascot{width:27px;height:32px;object-fit:contain}.v8-header-brand>b{font-size:11px;white-space:nowrap;letter-spacing:-.025em}
.v8-header-actions{display:flex;align-items:center;gap:5px}.v8-header-wallet{height:34px;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:0 8px;display:flex;align-items:center;gap:4px;box-shadow:0 4px 14px rgba(29,49,37,.05)}.v8-header-wallet>b{font-size:10px}.v8-settings,.v8-add{width:34px!important;height:34px!important;border-radius:12px!important;background:var(--surface)!important}.v8-settings .icon,.v8-add .icon{width:15px!important;height:15px!important}
.v8-bottom-nav{background:color-mix(in srgb,var(--surface) 95%,transparent)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.v8-bottom-nav .nav-btn{height:58px!important;gap:3px;font-size:10px;position:relative}.v8-bottom-nav .nav-btn .icon{width:19px;height:19px}.v8-bottom-nav .nav-btn.active:before{content:"";position:absolute;top:2px;width:28px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--brand-2))}
.v8-full-scene .main{padding:5px 0!important}.v8-full-scene .main>.main-wrap{height:100%!important;overflow:hidden!important;touch-action:manipulation!important}.v8-full-scene .main-wrap>*{min-height:0}

/* HOME — Command Center */
.v8-home-screen{height:100%;min-height:0;display:grid;grid-template-rows:minmax(128px,1.42fr) minmax(76px,.68fr) minmax(74px,.72fr) minmax(76px,.70fr) minmax(45px,.42fr);gap:8px;overflow:hidden}
.v8-home-world{border:1px solid var(--line);border-radius:30px;background:radial-gradient(circle at 78% 14%,rgba(255,255,255,.62),transparent 28%),linear-gradient(135deg,var(--v8-a),var(--v8-b) 54%,var(--v8-c));box-shadow:var(--v8-shadow);display:grid;grid-template-columns:minmax(0,1fr) 132px;align-items:center;padding:14px 16px;position:relative;overflow:hidden}.v8-home-world:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:rgba(255,255,255,.26);left:-70px;bottom:-110px}.v8-home-copy{position:relative;z-index:2}.v8-home-copy .eyebrow{font-size:9px}.v8-home-copy h1{font-size:clamp(27px,7vw,43px);line-height:.96;letter-spacing:-.055em;margin:5px 0 7px}.v8-home-copy p{font-size:11px;line-height:1.45;color:var(--text-2);margin:0;max-width:380px}.v8-home-character{height:100%;min-height:0;position:relative;display:grid;place-items:center}.v8-home-hero-mascot{width:min(31vw,128px);height:min(31vw,128px);max-height:125px;object-fit:contain;filter:drop-shadow(0 13px 15px rgba(31,73,50,.15));animation:v7Float 4s ease-in-out infinite}.v8-home-character>span{position:absolute;bottom:1px;background:color-mix(in srgb,var(--surface) 76%,transparent);border:1px solid var(--line);border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800;white-space:nowrap}.v8-home-spark{position:absolute;font-size:17px;color:var(--brand);opacity:.55;animation:v8Spark 2.8s ease-in-out infinite}.v8-home-spark.s1{right:43%;top:16%}.v8-home-spark.s2{left:8%;bottom:15%;animation-delay:1.2s}@keyframes v8Spark{50%{transform:scale(1.35) rotate(25deg);opacity:1}}
.v8-home-bank{display:grid;grid-template-columns:1.08fr 1.8fr;gap:7px;min-height:0}.v8-bank-orb{border:1px solid var(--line);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 86%,var(--v8-a)));border-radius:22px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;align-items:center;text-align:start;padding:9px 11px;box-shadow:0 7px 20px rgba(31,61,45,.06)}.v8-bank-orb small{font-size:9px;color:var(--text-3);font-weight:800}.v8-bank-orb strong{font-size:23px;line-height:1;letter-spacing:-.04em}.v8-bank-orb>i{grid-column:1/3;height:7px;border-radius:999px;background:var(--surface-2);overflow:hidden;position:relative}.v8-bank-orb>i b{display:block;width:var(--p);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--mint));transition:width .3s ease}.v8-bank-orb em{grid-column:1/3;font-size:8.5px;color:var(--text-3);font-style:normal;margin-top:2px}.v8-home-resources{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;min-width:0}.v8-home-resources button{border:1px solid var(--line);background:var(--surface);border-radius:20px;min-width:0;padding:7px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:0 6px 18px rgba(32,57,44,.05)}.v8-home-resources button>span{font-size:17px}.v8-home-resources button>b{font-size:10px;white-space:nowrap}.v8-home-resources button>small{font-size:8.5px;color:var(--text-3);white-space:nowrap}
.v8-primary-journey-cta{border:0;border-radius:24px;background:linear-gradient(135deg,var(--text),color-mix(in srgb,var(--text) 78%,var(--brand)));color:var(--bg);display:grid;grid-template-columns:54px 1fr 24px;align-items:center;text-align:start;padding:7px 13px;box-shadow:0 15px 30px color-mix(in srgb,var(--text) 17%,transparent);position:relative;overflow:hidden}.v8-primary-journey-cta:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.07);left:-45px;top:-42px}.v8-cta-sidekick{width:52px;height:52px;object-fit:contain;position:relative;z-index:2}.v8-primary-journey-cta>div{min-width:0;position:relative;z-index:2}.v8-primary-journey-cta small{display:block;font-size:8px;letter-spacing:.08em;opacity:.7}.v8-primary-journey-cta strong{display:block;font-size:19px;line-height:1.05;margin:1px 0}.v8-primary-journey-cta em{font-size:9px;font-style:normal;opacity:.76}.v8-primary-journey-cta>.icon{width:20px;position:relative;z-index:2}
.v8-home-gates{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;min-height:0}.v8-home-gates button{border:1px solid var(--line);background:var(--surface);border-radius:21px;padding:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;box-shadow:0 6px 17px rgba(35,56,45,.05);min-width:0}.v8-home-gates button>span{height:31px;display:grid;place-items:center;font-size:24px}.v8-gate-mascot{width:34px;height:34px;object-fit:contain}.v8-home-gates b{font-size:11px}.v8-home-gates small{font-size:8px;color:var(--text-3);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v8-home-storybeat{border:1px dashed color-mix(in srgb,var(--brand) 30%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--surface) 84%,var(--v8-a));display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:7px;padding:6px 9px;min-width:0}.v8-home-storybeat>span{font-size:20px}.v8-home-storybeat>div{min-width:0}.v8-home-storybeat small{font-size:8px;color:var(--text-3);display:block}.v8-home-storybeat strong{font-size:9px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v8-home-storybeat button{border:0;background:var(--surface);border-radius:10px;padding:6px 8px;font-size:8.5px;font-weight:800;white-space:nowrap}

/* Tinder is the rating stage, never the Home page. */
.v8-tinder-screen{height:100%;display:grid;grid-template-rows:42px minmax(0,1fr);gap:6px;overflow:hidden}.v8-tinder-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px}.v8-tinder-toolbar>button{min-height:36px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:0 10px;font-size:9px;font-weight:800;display:flex;align-items:center;gap:3px}.v8-tinder-toolbar>button:last-child{justify-self:end}.v8-tinder-toolbar>div{text-align:center}.v8-tinder-toolbar small{display:block;font-size:8px;color:var(--text-3)}.v8-tinder-toolbar strong{font-size:12px}.v8-tinder-toolbar strong em{color:var(--brand);font-style:normal}.v8-open-rating{color:var(--brand)!important}.v8-tinder-screen .v7-tinder-zone{height:100%;min-height:0;display:grid!important;grid-template-rows:30px minmax(0,1fr) 64px 18px;gap:4px;overflow:hidden}.v8-tinder-screen .v7-card-progress{margin:0!important}.v8-tinder-screen .v7-tinder-stack{height:100%!important;min-height:0!important}.v8-tinder-screen .v7-tinder-card{height:100%!important;min-height:0!important;border-radius:30px!important}.v8-tinder-screen .v7-card-character{max-height:31%}.v8-tinder-screen .v7-card-character img{max-height:105px!important}.v8-tinder-screen .tinder-name{font-size:clamp(48px,14vw,72px)!important}.v8-tinder-screen .v7-tinder-actions{margin:0!important;align-self:center}.v8-tinder-screen .v7-swipe-foot{font-size:8.5px!important}

/* Journey shell */
.v8-journey-screen{height:100%;display:grid;grid-template-rows:48px auto minmax(0,1fr) auto;gap:7px;overflow:hidden}.v8-journey-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;background:var(--surface-2);border:1px solid var(--line);border-radius:18px;padding:4px}.v8-journey-nav button{border:0;background:transparent;border-radius:13px;min-width:0;display:flex;align-items:center;justify-content:center;gap:3px;font-size:9px;color:var(--text-3);font-weight:800}.v8-journey-nav button span{font-size:12px}.v8-journey-nav button.active{background:var(--surface);color:var(--brand);box-shadow:0 4px 14px rgba(39,55,45,.07)}.v8-journey-nav .arcade-jump{color:var(--violet)}
.v8-stage-head{display:grid;grid-template-columns:1fr 66px;align-items:center;gap:10px;padding:2px 4px}.v8-stage-head h1,.v8-section-title h1,.v8-stats-top h1{font-size:25px;line-height:1;letter-spacing:-.045em;margin:3px 0 4px}.v8-stage-head p,.v8-section-title p{font-size:9px;line-height:1.4;color:var(--text-3);margin:0;max-width:420px}.v8-level-chip{width:64px;height:64px;border-radius:21px;background:linear-gradient(145deg,var(--surface),var(--v8-a));border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 7px 20px rgba(35,60,44,.07)}.v8-level-chip span,.v8-level-chip small{font-size:8px;color:var(--text-3)}.v8-level-chip strong{font-size:24px;line-height:1}
.v8-stage-world{min-height:0;border:1px solid var(--line);border-radius:30px;background:radial-gradient(circle at 80% 0,rgba(255,255,255,.58),transparent 24%),linear-gradient(180deg,var(--v8-b),var(--v8-a) 58%,var(--v8-c));position:relative;overflow:hidden;box-shadow:var(--v8-shadow)}.v8-stage-world svg{position:absolute;inset:5% 6%;width:88%;height:90%;overflow:visible}.v8-stage-world .road-shadow{fill:none;stroke:rgba(24,52,39,.10);stroke-width:23;stroke-linecap:round}.v8-stage-world .road{fill:none;stroke:url(#none);stroke:color-mix(in srgb,var(--surface) 88%,#9fe2be);stroke-width:16;stroke-linecap:round;stroke-dasharray:1 0;filter:drop-shadow(0 3px 0 rgba(255,255,255,.46))}.v8-stage-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);text-align:center;z-index:3;width:68px}.v8-stage-node button{width:44px;height:44px;border-radius:16px;border:3px solid var(--surface);background:linear-gradient(145deg,#8eddb3,#53bd87);color:white;box-shadow:0 7px 0 rgba(39,111,75,.18),0 10px 18px rgba(32,75,53,.16);display:grid;place-items:center;margin:auto}.v8-stage-node.locked button{background:color-mix(in srgb,var(--surface-2) 88%,#b8c5bd);color:var(--text-3);box-shadow:0 5px 0 rgba(70,80,74,.08)}.v8-stage-node.current button{width:58px;height:58px;border-radius:20px;background:linear-gradient(145deg,var(--brand),var(--brand-2));box-shadow:0 0 0 6px color-mix(in srgb,var(--brand) 15%,transparent),0 10px 28px color-mix(in srgb,var(--brand) 28%,transparent);animation:v8NodePulse 1.8s ease-in-out infinite}.v8-map-bottle{width:52px;height:58px;object-fit:contain}.v8-stage-node small{display:block;font-size:8px;font-weight:900;color:var(--text-2);margin-top:4px;text-shadow:0 1px var(--surface)}.v8-stage-node em{display:block;font-size:7.5px;font-style:normal;color:var(--text-3);white-space:nowrap}.v8-world-cloud,.v8-world-star{position:absolute;opacity:.65}.v8-world-cloud.c1{top:7%;right:8%;font-size:28px}.v8-world-cloud.c2{bottom:8%;left:7%;font-size:22px}.v8-world-star.s1{top:32%;left:13%;color:var(--brand)}.v8-world-star.s2{top:59%;right:14%;color:var(--brand-2)}@keyframes v8NodePulse{50%{transform:translateY(-2px);box-shadow:0 0 0 9px color-mix(in srgb,var(--brand) 9%,transparent),0 13px 31px color-mix(in srgb,var(--brand) 31%,transparent)}}
.v8-stage-footer{display:grid;grid-template-columns:1fr 1fr;gap:7px}.v8-stage-footer button{border:1px solid var(--line);background:var(--surface);border-radius:18px;min-height:49px;padding:6px 8px;display:grid;grid-template-columns:30px 1fr;gap:5px;align-items:center;text-align:start}.v8-stage-footer button>span{font-size:22px}.v8-stage-footer small{display:block;font-size:8px;color:var(--text-3)}.v8-stage-footer b{font-size:9.5px}

/* Stats — real podium + switchable infographic stage */
.v8-stats-screen{grid-template-rows:48px 43px minmax(118px,.78fr) minmax(150px,1fr) 44px}.v8-stats-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 3px}.v8-stats-top h1{font-size:22px;margin:2px 0}.v8-stats-top>button{border:1px solid color-mix(in srgb,var(--gold) 32%,var(--line));background:color-mix(in srgb,var(--surface) 90%,#fff1b7);border-radius:13px;padding:8px 9px;font-size:8.5px;font-weight:850;white-space:nowrap}
.v8-podium{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:7px;align-items:end;padding:0 4px;min-height:0}.v8-podium-place{border:0;border-radius:21px 21px 12px 12px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:6px 5px 7px;position:relative;box-shadow:inset 0 0 0 1px rgba(70,62,45,.10),0 7px 18px rgba(67,53,31,.10);min-width:0}.v8-podium-place.p1{height:100%;background:linear-gradient(180deg,#fff4ae,#e9bd45);animation:v8PodiumIn .55s .14s cubic-bezier(.2,.9,.25,1.25) both}.v8-podium-place.p2{height:84%;background:linear-gradient(180deg,#f8fafc,#c8d3de);animation:v8PodiumIn .5s .04s ease-out both}.v8-podium-place.p3{height:73%;background:linear-gradient(180deg,#f7ddca,#d79d6d);animation:v8PodiumIn .5s .09s ease-out both}.v8-podium-place>span{font-size:21px;line-height:1}.v8-podium-place>strong{font-size:clamp(13px,4vw,18px);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;color:#433a31}.v8-podium-place>small{font-size:8px;color:#665746}.v8-podium-place>div{margin-top:auto;display:grid;grid-template-columns:1fr 25px 1fr;align-items:center;gap:3px;width:100%}.v8-podium-place>div i{font-style:normal;font-size:7.5px;border-radius:8px;background:rgba(255,255,255,.48);padding:4px 2px;color:#5b4b40}.v8-podium-place>div b{width:25px;height:25px;border-radius:9px;background:rgba(255,255,255,.65);display:grid;place-items:center;font-size:9px;color:#53463a}@keyframes v8PodiumIn{from{transform:translateY(16px);opacity:.2}to{transform:none;opacity:1}}
.v8-viz-stage{border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--v8-b)));box-shadow:0 10px 28px rgba(35,55,45,.07);min-height:0;overflow:hidden;padding:10px}.v8-viz{height:100%;min-height:0}.v8-viz.agreement{display:grid;grid-template-columns:126px 1fr;align-items:center;gap:12px}.v8-agreement-ring{width:116px;height:116px;border-radius:50%;background:conic-gradient(var(--brand) var(--p),var(--surface-2) 0);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.v8-agreement-ring:after{content:"";position:absolute;inset:10px;border-radius:50%;background:var(--surface)}.v8-agreement-ring span,.v8-agreement-ring small{position:relative;z-index:2}.v8-agreement-ring span{font-size:26px;font-weight:950}.v8-agreement-ring small{font-size:8px;color:var(--text-3)}.v8-viz-copy small{font-size:9px;color:var(--text-3)}.v8-viz-copy strong{font-size:21px;display:block;margin:2px 0 4px}.v8-viz-copy p{font-size:9px;line-height:1.5;color:var(--text-2);margin:0}.v8-viz.duel{display:grid;grid-template-columns:1fr 64px 1fr;align-items:end;gap:8px;padding:4px 10px}.v8-duel-person{text-align:center;display:grid;grid-template-rows:28px auto auto 1fr;justify-items:center;gap:2px;height:100%}.v8-duel-person>span{width:28px;height:28px;border-radius:10px;color:white;display:grid;place-items:center;font-weight:900;font-size:10px}.v8-duel-person.bar>span{background:var(--bar)}.v8-duel-person.alon>span{background:var(--alon)}.v8-duel-person>b{font-size:9px}.v8-duel-person>strong{font-size:20px}.v8-duel-person>i{width:46px;height:70px;border-radius:13px;background:var(--surface-2);display:flex;align-items:flex-end;padding:4px;overflow:hidden}.v8-duel-person>i em{display:block;width:100%;border-radius:9px;background:linear-gradient(180deg,var(--brand),var(--brand-2));animation:v701Bar .4s ease-out both}.v8-duel-person.alon>i em{background:linear-gradient(180deg,var(--alon),#77a3ed)}.v8-vs{align-self:center;width:58px;height:58px;border-radius:20px;background:var(--text);color:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:14px;font-weight:950}.v8-vs small{font-size:6.5px;opacity:.65}.v8-viz.histogram{display:grid;grid-template-rows:minmax(0,1fr) 24px}.v8-hist-bars{display:grid;grid-template-columns:repeat(11,1fr);gap:3px;align-items:end;height:100%;padding-top:5px}.v8-hist-bars>div{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:1px;position:relative;padding-bottom:14px}.v8-hist-bars i{width:5px;min-height:2px;border-radius:4px 4px 1px 1px;background:var(--bar)}.v8-hist-bars i.alon{background:var(--alon)}.v8-hist-bars small{position:absolute;bottom:0;font-size:7px;color:var(--text-3)}.v8-hist-legend{display:flex;align-items:center;gap:9px;font-size:7.5px;color:var(--text-3)}.v8-hist-legend b{margin-inline-start:auto;color:var(--text);font-size:9px}.v8-viz.letters{display:grid;grid-template-rows:1fr auto;text-align:center}.v8-letter-orbit{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;align-items:center}.v8-letter-orbit button{border:1px solid var(--line);background:var(--surface);border-radius:18px;height:88px;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 6px 15px rgba(45,55,49,.05);transform:translateY(calc((2 - var(--i)) * 2px))}.v8-letter-orbit span{font-size:24px;font-weight:900}.v8-letter-orbit b{font-size:11px;color:var(--brand)}.v8-letter-orbit small{font-size:7px;color:var(--text-3)}.v8-viz.letters>p{font-size:8px;color:var(--text-3);margin:4px 0 0}.v8-viz-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.v8-viz-tabs button{border:1px solid var(--line);background:var(--surface);border-radius:14px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:8.5px;font-weight:800}.v8-viz-tabs button span{font-size:11px}.v8-viz-tabs button.active{background:linear-gradient(135deg,var(--v8-a),var(--v8-b));border-color:color-mix(in srgb,var(--brand) 24%,var(--line));color:var(--brand)}

/* DNA */
.v8-dna-screen{grid-template-rows:48px 70px minmax(0,1fr)}.v8-section-title{display:grid;grid-template-columns:1fr 70px;align-items:center;padding:0 4px}.v8-dna-mascot{width:66px;height:66px;object-fit:contain}.v8-dna-stage{min-height:0;display:grid;grid-template-columns:1.2fr .9fr;gap:8px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 84%,var(--v8-a)));padding:10px;overflow:hidden}.v8-dna-stage svg{width:100%;height:100%;min-height:0}.v8-radar-grid polygon,.v8-radar-grid line{fill:none;stroke:var(--line-strong);stroke-width:1}.v8-radar-shape{fill:color-mix(in srgb,var(--brand) 23%,transparent);stroke:var(--brand);stroke-width:2.5}.v8-dna-stage svg circle{fill:var(--surface);stroke:var(--brand);stroke-width:2}.v8-dna-labels{display:grid;grid-template-columns:1fr;gap:4px;align-content:center}.v8-dna-labels button{border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:5px 7px;text-align:start;display:grid;grid-template-columns:1fr auto;gap:1px}.v8-dna-labels b{font-size:9px}.v8-dna-labels span{font-size:9px;color:var(--brand);font-weight:900}.v8-dna-labels small{grid-column:1/3;font-size:7px;color:var(--text-3)}

/* Trends */
.v8-trends-screen{grid-template-rows:48px 70px minmax(0,1fr) 44px}.v8-pulse-orb{width:54px;height:54px;border-radius:18px;background:linear-gradient(145deg,var(--brand),var(--brand-2));color:white;display:grid;place-items:center;font-size:22px;box-shadow:0 10px 25px color-mix(in srgb,var(--brand) 24%,transparent)}.v8-trend-stage{min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:7px}.v8-trend-card{border:1px solid var(--line);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 90%,var(--v8-b)));border-radius:22px;padding:9px;text-align:start;overflow:hidden;display:grid;grid-template-rows:auto auto minmax(25px,1fr) auto;box-shadow:0 7px 20px rgba(38,55,46,.06)}.v8-trend-card>small{font-size:8px;color:var(--brand);font-weight:800}.v8-trend-card>strong{font-size:18px;letter-spacing:-.03em}.v8-trend-card svg{width:100%;height:100%;max-height:42px}.v8-trend-card>div{display:flex;justify-content:space-between;align-items:center}.v8-trend-card>div span{font-size:12px;font-weight:900;color:var(--mint)}.v8-trend-card>div b{font-size:8px;color:var(--text-3)}.v8-trend-foot{display:grid;grid-template-columns:1fr 1fr;gap:7px}.v8-trend-foot button{border:1px solid var(--line);background:var(--surface);border-radius:14px;font-size:9px;font-weight:850}

/* Review — single-card Resolve Deck */
.v8-review-screen{height:100%;display:grid;grid-template-rows:85px minmax(0,1fr) 44px;gap:8px;overflow:hidden}.v8-review-head{display:grid;grid-template-columns:1fr 90px;align-items:center;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,var(--v8-a),var(--v8-b));padding:8px 12px;overflow:hidden}.v8-review-head h1{font-size:24px;letter-spacing:-.04em;margin:2px 0}.v8-review-head p{font-size:9px;color:var(--text-2);margin:0}.v8-review-head>div:last-child{position:relative;height:75px;display:grid;place-items:center}.v8-review-mascot{width:78px;height:78px;object-fit:contain}.v8-review-head>div:last-child>span{position:absolute;bottom:0;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:3px 6px;font-size:7.5px;font-weight:850}.v8-review-card{min-height:0;border:1px solid var(--line);border-radius:31px;background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--surface) 86%,var(--v8-c)));box-shadow:var(--v8-shadow);padding:14px;display:grid;grid-template-rows:auto auto 82px minmax(48px,1fr) 48px;align-items:center;text-align:center;overflow:hidden;position:relative}.v8-review-card:before{content:"?";position:absolute;font-size:180px;font-weight:950;color:color-mix(in srgb,var(--brand) 4%,transparent);left:-20px;bottom:-70px}.v8-review-card>.badge{justify-self:center}.v8-review-card h2{font-size:clamp(42px,14vw,70px);line-height:1;margin:3px 0;letter-spacing:-.05em}.v8-review-duo{display:grid;grid-template-columns:1fr 44px 1fr;align-items:center;gap:8px;max-width:300px;width:100%;margin:auto}.v8-review-duo>span{height:68px;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center}.v8-review-duo .bar{background:color-mix(in srgb,var(--bar) 12%,var(--surface))}.v8-review-duo .alon{background:color-mix(in srgb,var(--alon) 12%,var(--surface))}.v8-review-duo small{font-size:8px}.v8-review-duo b{font-size:28px}.v8-review-duo>i{font-size:18px;font-style:normal;color:var(--text-3)}.v8-review-card>p{font-size:10px;line-height:1.45;color:var(--text-2);margin:0;align-self:start;padding-top:5px;position:relative;z-index:2}.v8-review-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:7px;width:100%;position:relative;z-index:2}.v8-review-actions button{border:1px solid var(--line);background:var(--surface);border-radius:15px;font-size:10px;font-weight:850}.v8-review-actions .primary{background:var(--text);color:var(--bg);border-color:var(--text)}.v8-review-footer{display:grid;grid-template-columns:70px 1fr 70px;align-items:center;gap:7px}.v8-review-footer button{height:38px;border:1px solid var(--line);background:var(--surface);border-radius:13px;font-size:8.5px;font-weight:800}.v8-review-footer>i{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.v8-review-footer>i b{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--brand-2));border-radius:inherit}

/* Museum Rooms */
.shell-dash.dash-museum .main>.main-wrap{overflow:hidden!important}.v8-museum-screen{height:100%;display:grid;grid-template-rows:95px 46px minmax(0,1fr) 40px;gap:7px;overflow:hidden}.v8-museum-head{border:1px solid var(--line);border-radius:27px;background:linear-gradient(135deg,var(--v8-b),var(--v8-c));padding:9px 12px;display:grid;grid-template-columns:60px 1fr 86px;gap:8px;align-items:center;overflow:hidden}.v8-museum-head>button{border:0;background:transparent;font-size:8px;font-weight:800;align-self:start;display:flex;align-items:center;gap:2px}.v8-museum-head>div:nth-child(2){text-align:center}.v8-museum-head h1{font-size:23px;margin:2px 0;letter-spacing:-.04em}.v8-museum-head p{font-size:8px;color:var(--text-3);margin:0}.v8-museum-head>div:last-child{position:relative;height:78px;display:grid;place-items:center}.v8-museum-mascot{width:78px;height:78px;object-fit:contain}.v8-museum-head>div:last-child>span{position:absolute;bottom:0;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:2px 6px;font-size:7px;font-weight:900}.v8-museum-rooms{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.v8-museum-rooms button{border:1px solid var(--line);background:var(--surface);border-radius:14px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:8.5px;font-weight:800}.v8-museum-rooms button.active{background:linear-gradient(135deg,var(--v8-a),var(--v8-b));color:var(--brand);border-color:color-mix(in srgb,var(--brand) 24%,var(--line))}.v8-museum-room{min-height:0;overflow:hidden}.v8-museum-grid{height:100%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,1fr);gap:6px}.v8-museum-grid article{min-height:0;border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:7px;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto 1fr;gap:1px 5px;align-items:center;overflow:hidden}.v8-museum-grid article>span{grid-row:1/4;width:34px;height:34px;border-radius:12px;background:var(--surface-2);display:grid;place-items:center;font-size:20px}.v8-museum-grid article>strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v8-museum-grid article>small,.v8-museum-grid article>p{font-size:7.5px;color:var(--text-3);line-height:1.25;margin:0;overflow:hidden}.v8-museum-grid article>i,.v8-museum-grid article>em{font-size:7px;font-style:normal;color:var(--brand);align-self:end}.v8-museum-grid .locked{opacity:.55;filter:saturate(.5)}.v8-museum-grid.records article>strong{font-size:13px}.v8-museum-grid.records .hero-record{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 76%,#ffe9a2));border-color:color-mix(in srgb,var(--gold) 30%,var(--line))}.v8-museum-grid.collections article>i{grid-column:2;height:5px;background:var(--surface-2);border-radius:99px;overflow:hidden}.v8-museum-grid.collections article>i b{height:100%;display:block;background:linear-gradient(90deg,var(--brand),var(--mint));border-radius:inherit}.v8-museum-grid.collections article>em{position:absolute}.v8-story-timeline{height:100%;display:grid;grid-template-rows:repeat(5,1fr);gap:5px}.v8-story-timeline article{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:5px 8px;display:grid;grid-template-columns:34px 1fr;gap:7px;align-items:center;min-height:0}.v8-story-timeline article>span{width:32px;height:32px;border-radius:11px;background:var(--surface-2);display:grid;place-items:center;font-size:18px}.v8-story-timeline small{font-size:7px;color:var(--text-3)}.v8-story-timeline strong{font-size:9.5px;display:block}.v8-story-timeline p{font-size:7.5px;color:var(--text-3);margin:1px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v8-share-museum{border:1px solid var(--line);background:var(--surface);border-radius:13px;font-size:8.5px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:4px}.v8-share-museum .icon{width:14px}

/* Storefront — no page scroll; catalogue uses pages. */
.shell-dash.dash-shop .main>.main-wrap{overflow:hidden!important}.v8-store-screen{height:100%;display:grid;grid-template-rows:88px 42px 54px minmax(0,1fr) 32px;gap:6px;overflow:hidden}.v8-store-head{border:1px solid var(--line);border-radius:26px;background:linear-gradient(135deg,var(--v8-c),var(--v8-b));display:grid;grid-template-columns:58px 1fr 66px;gap:7px;align-items:center;padding:7px 9px;overflow:hidden}.v8-store-head>button:first-child{border:0;background:transparent;font-size:8px;font-weight:800;display:flex;align-items:center;gap:2px;align-self:start}.v8-store-head>div{text-align:center}.v8-store-head h1{font-size:22px;margin:1px 0;letter-spacing:-.04em}.v8-store-head p{font-size:7.5px;color:var(--text-3);margin:0;line-height:1.3}.v8-store-wallet{height:50px;border:1px solid var(--line);background:var(--surface);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center}.v8-store-wallet>b{font-size:12px}.v8-store-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.v8-store-tabs button{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0;display:flex;align-items:center;justify-content:center;gap:2px;font-size:7.5px;font-weight:800}.v8-store-tabs button span{font-size:11px}.v8-store-tabs button.active{color:var(--brand);background:linear-gradient(135deg,var(--v8-a),var(--v8-b))}.v8-store-feature{border:1px dashed color-mix(in srgb,var(--brand) 25%,var(--line));border-radius:17px;background:color-mix(in srgb,var(--surface) 84%,var(--v8-a));display:grid;grid-template-columns:1fr 68px;align-items:center;padding:5px 9px;overflow:hidden}.v8-store-feature small{font-size:7px;color:var(--brand);font-weight:850}.v8-store-feature strong{font-size:9px;display:block}.v8-store-mascot{width:64px;height:64px;object-fit:contain}.v8-store-grid{min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:6px}.v8-store-card{border:1px solid var(--line);background:var(--surface);border-radius:20px;padding:6px;display:grid;grid-template-columns:54px 1fr;grid-template-rows:1fr 34px;gap:5px;min-height:0;overflow:hidden;box-shadow:0 5px 15px rgba(40,55,46,.05)}.v8-store-card.active{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brand) 32%,transparent),0 8px 20px var(--v8-glow)}.v8-store-art{grid-row:1/3;border-radius:15px;background:linear-gradient(145deg,var(--v8-a),var(--v8-b));display:grid;place-items:center;position:relative;overflow:hidden}.v8-store-art>span{font-size:29px;filter:drop-shadow(0 5px 8px rgba(0,0,0,.10))}.v8-store-art>b{position:absolute;bottom:3px;background:rgba(255,255,255,.72);color:#453f43;border-radius:999px;padding:2px 4px;font-size:5.5px}.v8-store-copy{min-width:0;overflow:hidden}.v8-store-copy>small{font-size:6.5px;color:var(--brand);font-weight:900;letter-spacing:.07em}.v8-store-copy>strong{font-size:10.5px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v8-store-copy>p{font-size:7.2px;line-height:1.25;color:var(--text-3);margin:2px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.v8-store-actions{display:grid;grid-template-columns:1fr 1fr;gap:4px;align-self:end}.v8-store-actions:has(.buy:only-child){grid-template-columns:1fr}.v8-store-actions button{border:1px solid var(--line);border-radius:10px;background:var(--surface-2);font-size:7.5px;font-weight:850;min-width:0}.v8-store-actions .buy{background:var(--text);color:var(--bg);border-color:var(--text)}.v8-store-actions .try{color:var(--brand);background:color-mix(in srgb,var(--surface) 84%,var(--v8-a))}.v8-store-pages{display:flex;align-items:center;justify-content:center;gap:10px}.v8-store-pages button{width:34px;height:28px;border:1px solid var(--line);background:var(--surface);border-radius:10px}.v8-store-pages span{font-size:8px;color:var(--text-3);font-weight:800}
.preview-theme_neon{background:radial-gradient(circle,#3df2ff 0 8%,transparent 9%),linear-gradient(135deg,#2a103b,#9c36d8 52%,#37cfe9)!important}.preview-theme_galaxy{background:radial-gradient(circle at 28% 24%,white 0 1px,transparent 2px),radial-gradient(circle at 74% 34%,white 0 1px,transparent 2px),linear-gradient(145deg,#181244,#4c3a93,#174b71)!important}.preview-theme_royal{background:linear-gradient(145deg,#fff2b6,#d9af55 50%,#8b64a5)!important}.preview-theme_candy{background:radial-gradient(circle at 20% 25%,#fff 0 5%,transparent 6%),linear-gradient(145deg,#ff9fc5,#a59cff,#86e0c4)!important}.preview-theme_storybook{background:repeating-linear-gradient(0deg,#f8ecd5 0 12px,#f3e5cc 13px 14px)!important}

/* Theme preview */
.v8-theme-preview-pill{position:fixed;z-index:170;top:max(12px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);min-width:220px;height:42px;border-radius:16px;background:color-mix(in srgb,var(--text) 94%,transparent);color:var(--bg);box-shadow:0 14px 40px rgba(0,0,0,.22);display:grid;grid-template-columns:28px 1fr auto 24px;align-items:center;gap:5px;padding:4px 8px}.v8-theme-preview-pill>span{font-size:18px}.v8-theme-preview-pill>b{font-size:9px}.v8-theme-preview-pill>small{font-size:7.5px;opacity:.75}.v8-theme-preview-pill small i{font-style:normal;font-weight:900}.v8-theme-preview-pill>button{border:0;background:rgba(255,255,255,.12);color:inherit;border-radius:8px;width:22px;height:22px}.v8-theme-offer-overlay{z-index:180}.v8-theme-offer-card{width:min(calc(100% - 28px),390px);border:1px solid var(--line);background:var(--surface);border-radius:31px;box-shadow:0 30px 100px rgba(27,22,33,.30);padding:13px 16px 16px;text-align:center;position:relative}.v8-theme-offer-world{height:170px;border-radius:23px;display:grid;place-items:center;margin-bottom:10px;overflow:hidden;position:relative;background:linear-gradient(145deg,var(--v8-a),var(--v8-b))}.v8-theme-offer-world>span{position:absolute;top:10px;right:12px;font-size:29px}.v8-theme-offer-mascot{width:155px;height:165px;object-fit:contain;animation:v7Celebrate .7s cubic-bezier(.2,.9,.3,1.2) both}.v8-theme-offer-card h2{font-size:25px;letter-spacing:-.04em;margin:4px 0}.v8-theme-offer-card p{font-size:9px;line-height:1.5;color:var(--text-2);margin:0 auto 12px;max-width:310px}.v8-theme-offer-card .btn{width:100%;margin-top:5px}

/* Arcade — six cabinets, no lobby scroll. */
.shell-dash.dash-games .main>.main-wrap{overflow:hidden!important;touch-action:manipulation!important}.v8-arcade-screen{height:100%;display:grid;grid-template-rows:92px minmax(0,1fr) 42px;gap:7px;overflow:hidden}.v8-arcade-head{border:1px solid var(--line);border-radius:27px;background:radial-gradient(circle at 85% 0,var(--v8-glow),transparent 34%),linear-gradient(135deg,var(--v8-b),var(--v8-a));padding:8px 10px;display:grid;grid-template-columns:58px 1fr 92px;align-items:center;gap:7px;overflow:hidden}.v8-arcade-head>button{border:0;background:transparent;font-size:8px;font-weight:800;display:flex;align-items:center;gap:2px;align-self:start}.v8-arcade-head>div:nth-child(2){text-align:center}.v8-arcade-head h1{font-size:22px;letter-spacing:-.04em;margin:1px 0}.v8-arcade-head p{font-size:7.8px;color:var(--text-3);margin:0}.v8-arcade-head>div:last-child{height:80px;position:relative;display:grid;place-items:center}.v8-arcade-mascot{width:83px;height:83px;object-fit:contain}.v8-arcade-head>div:last-child>span{position:absolute;bottom:0;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:2px 6px;font-size:7px;font-weight:900}.v8-arcade-grid{min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,1fr);gap:6px}.v8-arcade-cabinet{border:1px solid var(--line);background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface) 87%,var(--v8-b)));border-radius:21px;padding:7px 8px;display:grid;grid-template-columns:44px 1fr 48px;grid-template-rows:auto 1fr auto;gap:1px 7px;align-items:center;text-align:start;position:relative;overflow:hidden;box-shadow:0 7px 20px rgba(38,55,47,.06)}.v8-arcade-cabinet:before{content:"";position:absolute;inset:auto -30px -45px auto;width:95px;height:95px;border-radius:50%;background:var(--v8-glow)}.v8-arcade-cabinet.featured{border-color:color-mix(in srgb,var(--gold) 36%,var(--line));background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface) 80%,#fff0b7))}.v8-arcade-cabinet.done{filter:saturate(.35);opacity:.68}.v8-cabinet-light{position:absolute;top:5px;left:8px;width:6px;height:6px;border-radius:50%;background:#70d9a2;box-shadow:0 0 12px #70d9a2}.v8-arcade-cabinet>i{grid-row:1/4;width:42px;height:42px;border-radius:15px;background:linear-gradient(145deg,var(--v8-a),var(--v8-b));display:grid;place-items:center;font-style:normal;font-size:23px;position:relative;z-index:1}.v8-arcade-cabinet>small{font-size:6.5px;color:var(--brand);font-weight:900;letter-spacing:.05em}.v8-arcade-cabinet>strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v8-arcade-cabinet>em{font-size:7px;color:var(--text-3);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v8-arcade-cabinet>b{grid-column:3;grid-row:1/4;justify-self:end;background:var(--text);color:var(--bg);border-radius:10px;padding:6px 7px;font-size:7px;position:relative;z-index:1}.v8-arcade-foot{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.v8-arcade-foot button{border:1px solid var(--line);background:var(--surface);border-radius:13px;font-size:8.5px;font-weight:850}

/* Active games are scenes, not scrollable web pages. */
.game-shell.active-game-scroll,.game-shell.intro-shell.active-game-scroll{height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;overflow-y:hidden!important;overflow-x:hidden!important;touch-action:none!important;display:flex!important;flex-direction:column!important;padding-bottom:0!important;position:relative!important}.game-shell.active-game-scroll::-webkit-scrollbar{display:none!important}.game-shell.active-game-scroll:before{content:"";position:absolute;inset:0;border-radius:28px;background:radial-gradient(circle at 85% 6%,var(--v8-glow),transparent 29%),linear-gradient(155deg,color-mix(in srgb,var(--surface) 85%,transparent),color-mix(in srgb,var(--surface) 92%,var(--v8-b)));border:1px solid var(--line);pointer-events:none}.game-shell.active-game-scroll>*{position:relative;z-index:1}.game-shell.active-game-scroll .game-top{position:relative!important;top:auto!important;flex:0 0 auto;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:5px 7px!important;margin-bottom:4px!important}.game-shell.active-game-scroll .game-top h2{font-size:15px!important;margin:0!important}.game-shell.active-game-scroll .game-top p{font-size:8px!important;line-height:1.25!important;margin:1px 0 0!important}.game-shell.active-game-scroll .game-host{gap:5px!important}.game-shell.active-game-scroll .host-mascot{width:45px!important;height:48px!important}.game-shell.active-game-scroll .game-score{min-width:55px!important}.game-shell.active-game-scroll .game-score strong{font-size:21px!important}.game-shell.active-game-scroll .game-score small{font-size:6.5px!important}.game-shell.active-game-scroll .eyebrow{font-size:7px!important}.game-shell.active-game-scroll>section:not(.game-intro-card),.game-shell.active-game-scroll>div:not(.game-top):not(.game-floating-back){flex:1 1 auto;min-height:0!important;max-height:100%!important;overflow:hidden!important}.game-shell.active-game-scroll .card{box-shadow:none!important}.game-shell.active-game-scroll .guess-stage,.game-shell.active-game-scroll .higher-stage{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:9px!important;margin:0 6px 6px!important;border-radius:24px!important}.game-shell.active-game-scroll .guess-stage h1,.game-shell.active-game-scroll .higher-stage h1{font-size:clamp(34px,12vw,58px)!important;margin:3px 0!important}.game-shell.active-game-scroll .guess-options{gap:5px!important}.game-shell.active-game-scroll .guess-option{height:49px!important}.game-shell.active-game-scroll .higher-choices{gap:5px!important}.game-shell.active-game-scroll .side-choice{min-height:72px!important}.game-shell.active-game-scroll .game-reaction,.game-shell.active-game-scroll .higher-reveal{margin-top:5px!important}.game-shell.active-game-scroll .game-next{min-height:39px!important;margin-top:5px!important}.game-shell.active-game-scroll .find-name-stage,.game-shell.active-game-scroll .catch-stage,.game-shell.active-game-scroll .build-stage,.game-shell.active-game-scroll .flash-stage,.game-shell.active-game-scroll .memory-stage,.game-shell.active-game-scroll .trend-game-stage,.game-shell.active-game-scroll .time-stage,.game-shell.active-game-scroll .mystery-stage{height:100%!important;min-height:0!important;overflow:hidden!important;padding:7px 8px!important;margin:0 6px 6px!important;border-radius:24px!important;background:color-mix(in srgb,var(--surface) 84%,transparent);display:flex!important;flex-direction:column!important;justify-content:center!important}.game-shell.active-game-scroll .find-grid{width:min(58vh,100%)!important;max-width:330px!important;margin:auto!important}.game-shell.active-game-scroll .find-cell{font-size:clamp(15px,4.6vw,22px)!important}.game-shell.active-game-scroll .bubble-field{min-height:0!important;flex:1 1 auto!important}.game-shell.active-game-scroll .name-bubble{min-width:70px!important;min-height:42px!important}.game-shell.active-game-scroll .build-slots span{width:38px!important;height:46px!important;font-size:21px!important}.game-shell.active-game-scroll .letter-pile button{width:43px!important;height:43px!important;font-size:19px!important}.game-shell.active-game-scroll .flash-card{min-height:0!important;flex:1 1 auto!important}.game-shell.active-game-scroll .flash-card strong{font-size:clamp(42px,14vw,70px)!important}.game-shell.active-game-scroll .flash-options,.game-shell.active-game-scroll .mystery-options{gap:5px!important}.game-shell.active-game-scroll .flash-options button,.game-shell.active-game-scroll .mystery-options button{min-height:42px!important}.game-shell.active-game-scroll .memory-board{gap:5px!important}.game-shell.active-game-scroll .memory-card{min-height:50px!important}.game-shell.active-game-scroll .trend-duo,.game-shell.active-game-scroll .time-duo{min-height:0!important;flex:1 1 auto!important;gap:7px!important}.game-shell.active-game-scroll .trend-fighter,.game-shell.active-game-scroll .time-card{min-height:0!important}.game-shell.active-game-scroll .time-year{font-size:31px!important}.game-shell.active-game-scroll .mystery-baby{height:70px!important}.game-shell.active-game-scroll .mystery-mascot{width:66px!important;height:66px!important}.game-shell.active-game-scroll .clue-stack{gap:4px!important;margin:4px 0!important}.game-shell.active-game-scroll .clue{padding:5px 7px!important;font-size:8px!important}.game-shell.active-game-scroll .game-reveal,.game-shell.active-game-scroll .mystery-win{flex:0 0 auto!important;padding:5px!important;font-size:9px!important}.game-shell.active-game-scroll .game-reveal .btn,.game-shell.active-game-scroll .mystery-win .btn{min-height:36px!important}.game-shell.intro-shell.active-game-scroll{justify-content:center!important;padding:7px!important}.game-shell.intro-shell .game-intro-card{height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;border-radius:27px!important;padding:10px 14px!important;display:grid!important;grid-template-rows:85px auto auto auto minmax(0,1fr) auto auto!important;align-items:center!important}.game-shell.intro-shell .game-intro-mascot{height:82px!important}.game-shell.intro-shell .intro-mascot{width:82px!important;height:82px!important}.game-shell.intro-shell .game-intro-icon{font-size:25px!important;margin:0!important}.game-shell.intro-shell h1{font-size:26px!important;margin:0!important}.game-shell.intro-shell>section>p{font-size:8.5px!important;line-height:1.35!important;margin:2px auto!important}.game-shell.intro-shell .game-how{min-height:0!important;overflow:hidden!important;margin:3px 0!important}.game-shell.intro-shell .game-how>strong{font-size:8px!important}.game-shell.intro-shell .game-how>div{padding:3px 5px!important;min-height:0!important}.game-shell.intro-shell .game-how p{font-size:7.5px!important;margin:0!important}.game-shell.intro-shell .game-reward-note{font-size:7.5px!important;padding:4px!important}.game-shell.intro-shell .btn{min-height:37px!important;margin-top:3px!important}.game-finish-scroll{height:100%!important;overflow:hidden!important;display:grid!important;place-items:center!important}.game-finish-card{max-height:100%!important;overflow:hidden!important;padding:10px 14px!important}.finish-host{height:92px!important}.finish-mascot{width:88px!important;height:95px!important}.game-finish-card h1{font-size:27px!important;margin:2px 0!important}.game-finish-card p{font-size:8.5px!important;margin:2px auto 6px!important}.finish-score strong{font-size:36px!important}.game-floating-back{bottom:6px!important}

/* Expanded Theme surfaces: a purchase must be visible throughout the product. */
html[data-app-theme]:not([data-app-theme="mint"]) .v8-home-world,
html[data-app-theme]:not([data-app-theme="mint"]) .v8-stage-world,
html[data-app-theme]:not([data-app-theme="mint"]) .v8-viz-stage,
html[data-app-theme]:not([data-app-theme="mint"]) .v8-review-head,
html[data-app-theme]:not([data-app-theme="mint"]) .v8-museum-head,
html[data-app-theme]:not([data-app-theme="mint"]) .v8-store-head,
html[data-app-theme]:not([data-app-theme="mint"]) .v8-arcade-head{box-shadow:0 18px 48px var(--v8-glow)!important}
html[data-app-theme="royal"] .v8-bottom-nav,html[data-app-theme="royal"] .v8-header{border-color:rgba(200,157,70,.20)!important}html[data-app-theme="royal"] .v8-primary-journey-cta{background:linear-gradient(135deg,#6f4e18,#bb872a)!important}html[data-app-theme="royal"] .v8-stage-node.current button{background:linear-gradient(145deg,#e0b94f,#8e5c16)!important}
html[data-app-theme="galaxy"] .v8-primary-journey-cta{background:linear-gradient(135deg,#43359d,#3aaecb)!important}html[data-app-theme="galaxy"] .v8-stage-node.current button{background:linear-gradient(145deg,#7d67ff,#41d7e9)!important;box-shadow:0 0 26px rgba(94,111,255,.44)!important}html[data-app-theme="galaxy"] .v8-home-world,html[data-app-theme="galaxy"] .v8-stage-world{background-image:radial-gradient(circle at 15% 17%,rgba(255,255,255,.7) 0 1px,transparent 2px),radial-gradient(circle at 74% 28%,rgba(255,255,255,.55) 0 1px,transparent 2px),linear-gradient(145deg,var(--v8-a),var(--v8-b),var(--v8-c))!important}
html[data-app-theme="candy"] .v8-primary-journey-cta{background:linear-gradient(135deg,#e94f8a,#7468df)!important}html[data-app-theme="candy"] .v8-stage-node.current button{background:linear-gradient(145deg,#ef699c,#8278ef)!important}
html[data-app-theme="storybook"] .v8-primary-journey-cta{background:linear-gradient(135deg,#76503a,#678d70)!important}html[data-app-theme="storybook"] .v8-home-world,html[data-app-theme="storybook"] .v8-stage-world{background-image:repeating-linear-gradient(0deg,rgba(110,80,47,.025) 0 1px,transparent 1px 22px),linear-gradient(145deg,var(--v8-a),var(--v8-b),var(--v8-c))!important}

.v8-resource-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0}.v8-resource-actions button{min-height:52px;border:1px solid var(--line);background:var(--surface-2);border-radius:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.v8-resource-actions button>span{height:19px;display:grid;place-items:center}.v8-resource-actions button .icon{width:17px;height:17px}.v8-resource-actions button>b{font-size:8px}.v8-resource-actions .danger{color:var(--danger)}

/* Keep only the library as a deliberate scrolling product surface. */
.shell-review .main>.main-wrap,.shell-dash.dash-stages .main>.main-wrap,.shell-dash.dash-stats .main>.main-wrap,.shell-dash.dash-dna .main>.main-wrap,.shell-dash.dash-trends .main>.main-wrap,.shell-dash.dash-museum .main>.main-wrap,.shell-dash.dash-shop .main>.main-wrap{overflow:hidden!important;touch-action:manipulation!important;scroll-snap-type:none!important}
.shell-all .main>.main-wrap{overflow:hidden!important}.shell-all .view-scroll-body{overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}

@media(max-width:360px){
  .wrap{width:min(100% - 12px,760px)!important}.v8-header-brand>b{display:none}.v8-home-world{grid-template-columns:1fr 104px;padding-inline:11px}.v8-home-copy h1{font-size:27px}.v8-home-copy p{font-size:9.5px}.v8-home-hero-mascot{width:100px;height:100px}.v8-home-bank{grid-template-columns:.95fr 1.65fr}.v8-home-resources button{padding-inline:2px}.v8-home-resources button>b{font-size:8.5px}.v8-primary-journey-cta{grid-template-columns:48px 1fr 18px;padding-inline:9px}.v8-cta-sidekick{width:46px;height:46px}.v8-primary-journey-cta strong{font-size:17px}.v8-home-gates small{font-size:7px}.v8-journey-nav button{font-size:8px}.v8-journey-nav button span{font-size:10px}.v8-stage-node{width:58px}.v8-stage-node button{width:40px;height:40px}.v8-stage-node.current button{width:52px;height:52px}.v8-map-bottle{width:47px;height:53px}.v8-podium{gap:4px;padding-inline:0}.v8-viz.agreement{grid-template-columns:105px 1fr}.v8-agreement-ring{width:99px;height:99px}.v8-store-card{grid-template-columns:46px 1fr}.v8-store-art>span{font-size:24px}.v8-store-copy>strong{font-size:9.5px}.v8-store-tabs button b{display:none}.v8-store-tabs button span{font-size:14px}.v8-arcade-cabinet{grid-template-columns:38px 1fr 42px;padding-inline:5px}.v8-arcade-cabinet>i{width:36px;height:36px;font-size:20px}.v8-arcade-cabinet>strong{font-size:10px}.v8-arcade-cabinet>b{font-size:6.5px;padding-inline:5px}
}
@media(max-height:720px){
  .v8-home-screen{grid-template-rows:minmax(112px,1.2fr) 68px 67px 66px 39px;gap:6px}.v8-home-world{border-radius:25px;padding-block:9px}.v8-home-copy p{display:none}.v8-home-character>span{font-size:7.5px}.v8-home-hero-mascot{max-height:104px}.v8-home-resources button>small{display:none}.v8-bank-orb em{font-size:7.5px}.v8-primary-journey-cta strong{font-size:17px}.v8-primary-journey-cta em{font-size:8px}.v8-home-gates{gap:5px}.v8-home-gates button{border-radius:17px}.v8-home-gates button>span{height:25px}.v8-gate-mascot{width:29px;height:29px}.v8-home-storybeat strong{font-size:8px}.v8-stage-head p,.v8-section-title p{display:none}.v8-stage-head{grid-template-columns:1fr 54px}.v8-level-chip{width:52px;height:52px;border-radius:17px}.v8-level-chip strong{font-size:20px}.v8-stage-head h1,.v8-section-title h1{font-size:21px}.v8-stage-footer button{min-height:42px}.v8-stats-screen{grid-template-rows:43px 36px minmax(100px,.72fr) minmax(126px,1fr) 39px}.v8-journey-nav{border-radius:15px}.v8-podium-place>span{font-size:17px}.v8-podium-place>strong{font-size:13px}.v8-viz-stage{padding:7px}.v8-agreement-ring{width:94px;height:94px}.v8-viz.agreement{grid-template-columns:100px 1fr}.v8-viz-copy strong{font-size:17px}.v8-dna-screen{grid-template-rows:43px 50px minmax(0,1fr)}.v8-dna-mascot{width:50px;height:50px}.v8-trends-screen{grid-template-rows:43px 50px minmax(0,1fr) 39px}.v8-pulse-orb{width:42px;height:42px}.v8-review-screen{grid-template-rows:70px minmax(0,1fr) 39px}.v8-review-head{grid-template-columns:1fr 72px}.v8-review-head h1{font-size:20px}.v8-review-mascot{width:64px;height:64px}.v8-review-card{grid-template-rows:auto auto 68px minmax(38px,1fr) 43px;padding:10px}.v8-review-duo>span{height:57px}.v8-review-duo b{font-size:23px}.v8-museum-screen{grid-template-rows:77px 40px minmax(0,1fr) 34px}.v8-museum-head{grid-template-columns:50px 1fr 68px}.v8-museum-head h1{font-size:20px}.v8-museum-head p{display:none}.v8-museum-mascot{width:65px;height:65px}.v8-store-screen{grid-template-rows:72px 36px 43px minmax(0,1fr) 28px}.v8-store-head{grid-template-columns:50px 1fr 57px}.v8-store-head h1{font-size:19px}.v8-store-head p{display:none}.v8-store-wallet{height:43px}.v8-store-feature strong{font-size:8px}.v8-store-mascot{width:49px;height:49px}.v8-store-card{padding:5px;grid-template-rows:1fr 29px}.v8-store-copy p{font-size:6.8px}.v8-arcade-screen{grid-template-rows:75px minmax(0,1fr) 36px}.v8-arcade-head{grid-template-columns:50px 1fr 70px}.v8-arcade-head h1{font-size:19px}.v8-arcade-head p{display:none}.v8-arcade-mascot{width:67px;height:67px}.v8-arcade-cabinet{border-radius:17px;padding-block:4px}.v8-arcade-cabinet>strong{font-size:10.5px}.game-shell.intro-shell .game-how>div:nth-of-type(3){display:none}.game-shell.intro-shell>section>p{display:none}.game-shell.intro-shell .game-reward-note{display:none}
}
@media(max-height:640px){
  .v8-home-screen{grid-template-rows:100px 62px 59px 58px 35px}.v8-home-copy h1{font-size:23px}.v8-home-hero-mascot{max-height:86px}.v8-primary-journey-cta small,.v8-primary-journey-cta em{display:none}.v8-home-gates small{display:none}.v8-home-storybeat small{display:none}.v8-stage-head{display:none}.v8-journey-screen{grid-template-rows:40px minmax(0,1fr) 40px}.v8-stats-screen{grid-template-rows:40px 33px 93px minmax(110px,1fr) 36px}.v8-dna-screen{grid-template-rows:40px 42px minmax(0,1fr)}.v8-trends-screen{grid-template-rows:40px 42px minmax(0,1fr) 35px}.v8-review-screen{grid-template-rows:58px minmax(0,1fr) 35px}.v8-review-head p{display:none}.v8-review-card>p{font-size:8.5px}.v8-museum-screen{grid-template-rows:63px 35px minmax(0,1fr) 30px}.v8-store-screen{grid-template-rows:62px 32px 37px minmax(0,1fr) 25px}.v8-arcade-screen{grid-template-rows:63px minmax(0,1fr) 32px}.game-shell.active-game-scroll .game-top p{display:none!important}.game-shell.active-game-scroll .host-mascot{width:38px!important;height:40px!important}.game-shell.active-game-scroll .game-top{padding-block:2px!important}.game-shell.intro-shell .game-how{display:none!important}.game-shell.intro-shell .game-intro-card{grid-template-rows:72px auto auto auto 1fr auto!important}
}
@media(prefers-reduced-motion:reduce){.v8-home-hero-mascot,.v8-home-spark,.v8-stage-node.current button,.v8-podium-place,.v8-theme-offer-mascot{animation:none!important}}

/* V8.0 final premium/accessibility pass — fit by hierarchy, never microscopic type. */
.v8-profile-chip small,.v8-home-copy .eyebrow,.v8-home-character>span,.v8-bank-orb small,.v8-bank-orb em,
.v8-home-resources button>small,.v8-primary-journey-cta small,.v8-primary-journey-cta em,.v8-home-gates small,
.v8-home-storybeat small,.v8-home-storybeat strong,.v8-home-storybeat button,.v8-tinder-toolbar>button,.v8-tinder-toolbar small,
.v8-journey-nav button,.v8-stage-head p,.v8-section-title p,.v8-level-chip span,.v8-level-chip small,
.v8-museum-head>button,.v8-museum-head p,.v8-museum-head>div:last-child>span,.v8-museum-rooms button,
.v8-museum-grid article>small,.v8-museum-grid article>p,.v8-museum-grid article>i,.v8-museum-grid article>em,
.v8-story-timeline small,.v8-story-timeline p,.v8-share-museum,.v8-resource-actions button>b{font-size:10px!important}
.v8-home-resources button>b,.v8-home-gates b,.v8-museum-grid article>strong,.v8-story-timeline strong{font-size:11px!important}
.v8-home-copy p{font-size:12px!important}.v8-primary-journey-cta strong{font-size:20px!important}
.v8-tinder-toolbar>button{min-height:40px!important}.v8-home-gates button,.v8-home-resources button{min-height:44px}
.v8-journey-nav button{min-height:40px}.v8-museum-rooms button{min-height:40px}.v8-share-museum{min-height:38px}

/* Precise rating is secondary to Swipe, but still a first-class full-screen scene. */
.shell-rate:not(.rate-quick) .main>.main-wrap{overflow:hidden!important;touch-action:manipulation!important;padding-bottom:5px!important}
.v8-full-rating-screen{height:100%;min-height:0;display:grid;grid-template-rows:42px minmax(0,1fr) 43px;gap:7px;overflow:hidden}
.v8-full-rating-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px}
.v8-full-rating-toolbar>button{min-height:40px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:0 10px;font-size:11px;font-weight:850;display:flex;align-items:center;gap:4px}.v8-full-rating-toolbar>button:last-child{justify-self:end}.v8-full-rating-toolbar .icon{width:15px}.v8-full-rating-toolbar>div{text-align:center}.v8-full-rating-toolbar small{display:block;font-size:10px;color:var(--text-3)}.v8-full-rating-toolbar strong{font-size:12px}
.v8-full-rating-card{min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:29px;background:radial-gradient(circle at 86% 0,var(--v8-glow),transparent 28%),var(--surface);box-shadow:var(--v8-shadow);padding:11px 13px;display:grid;grid-template-rows:25px minmax(104px,.9fr) 44px minmax(126px,1.05fr) auto 42px;gap:5px;position:relative}
.v8-full-rating-top{display:flex;align-items:center;justify-content:space-between}.v8-rating-trend{font-size:10px;color:var(--brand);font-weight:850;background:color-mix(in srgb,var(--brand) 8%,var(--surface));border-radius:999px;padding:4px 8px}
.v8-rating-name{position:relative;display:grid;place-items:center;text-align:center;align-content:center;overflow:hidden}.v8-rating-name small{font-size:11px;color:var(--text-3);font-weight:750}.v8-rating-name h1{font-size:clamp(48px,14vw,72px);letter-spacing:-.065em;line-height:.92;margin:5px 0;position:relative;z-index:2}.v8-rating-mascot{position:absolute;left:2%;bottom:-12px;width:78px;height:86px;object-fit:contain;opacity:.78;filter:drop-shadow(0 6px 8px rgba(30,55,41,.12))}
.v8-rating-partner{border:1px solid var(--line);background:var(--surface-2);border-radius:15px;display:grid;grid-template-columns:32px 1fr;align-items:center;padding:5px 9px;gap:7px;min-height:42px}.v8-rating-partner>span{font-size:18px}.v8-rating-partner small{font-size:9px;color:var(--text-3);display:block}.v8-rating-partner strong{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v8-rating-partner.locked{border-style:dashed}
.v8-rating-control{min-height:0;display:grid;grid-template-rows:38px 28px 16px minmax(42px,1fr);gap:3px;align-items:center}.v8-rating-number{text-align:center;line-height:1}.v8-rating-number strong{font-size:34px}.v8-rating-number span{font-size:14px;color:var(--text-3)}.v8-rating-control .range{margin:0!important;width:100%!important}.v8-rating-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--text-3)}.v8-rating-presets{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.v8-rating-presets button{min-height:42px;border:1px solid var(--line);background:var(--surface-2);border-radius:14px;font-size:13px;font-weight:900}.v8-rating-presets button.active{background:var(--surface);border-color:var(--brand);color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 12%,transparent)}.v8-rating-presets button.super{color:var(--violet)}
.v8-rating-fit{min-height:0}.v8-rating-fit:empty{display:none}.v8-rating-fit .gender-fit{margin:0!important;padding:5px 7px!important}.v8-rating-fit .gender-fit-title{font-size:10px!important}.v8-rating-fit .fit-chip{min-height:34px!important;font-size:10px!important}
.v8-rating-note{display:grid;grid-template-columns:1fr auto;align-items:center;gap:7px}.v8-rating-note textarea{height:40px!important;min-height:40px!important;resize:none;border-radius:13px!important;padding:10px 11px!important;font-size:11px!important}.v8-rating-note span{font-size:10px;color:var(--brand);font-weight:800;white-space:nowrap}
.v8-full-rating-nav{display:grid;grid-template-columns:90px 1fr 90px;align-items:center;gap:8px}.v8-full-rating-nav>button{height:42px;border:1px solid var(--line);background:var(--surface);border-radius:14px;font-size:11px;font-weight:850}.v8-full-rating-nav>button.primary{background:var(--text);color:var(--bg);border-color:var(--text)}.v8-full-rating-nav>i{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.v8-full-rating-nav>i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--brand-2))}

/* More arcade "juice": game HUD, round rhythm and scene identities. */
.v8-game-scene{position:relative;isolation:isolate}.v8-game-scene:before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 82% 7%,var(--v8-glow),transparent 27%),radial-gradient(circle at 8% 83%,color-mix(in srgb,var(--v8-b) 38%,transparent),transparent 31%)}
.v8-game-scene.scene-find:before{background:radial-gradient(circle at 80% 9%,rgba(72,193,134,.18),transparent 30%),linear-gradient(145deg,color-mix(in srgb,var(--bg) 94%,#d8ffec),var(--bg))}.v8-game-scene.scene-catch:before{background:radial-gradient(circle at 20% 18%,rgba(91,187,255,.17),transparent 29%),radial-gradient(circle at 78% 72%,rgba(220,96,255,.12),transparent 31%)}.v8-game-scene.scene-build:before{background:radial-gradient(circle at 80% 11%,rgba(245,184,71,.18),transparent 28%)}.v8-game-scene.scene-flash:before{background:radial-gradient(circle at 50% 35%,rgba(131,99,255,.19),transparent 31%)}.v8-game-scene.scene-memory:before{background:radial-gradient(circle at 18% 72%,rgba(72,203,190,.16),transparent 29%)}.v8-game-scene.scene-mystery:before{background:radial-gradient(circle at 50% 28%,rgba(119,98,191,.18),transparent 30%)}
.v8-game-top{position:relative;overflow:hidden;min-height:68px!important}.v8-game-hud{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px;position:relative;z-index:2}.v8-round-dots{display:flex;gap:4px;direction:ltr}.v8-round-dots i{width:7px;height:7px;border-radius:50%;background:var(--line-strong);display:block}.v8-round-dots i.done{background:var(--brand)}.v8-round-dots i.live{background:var(--gold);box-shadow:0 0 0 4px color-mix(in srgb,var(--gold) 16%,transparent);animation:v8RoundPulse 1.2s ease-in-out infinite}.v8-game-energy{position:absolute;inset-inline-end:-25px;top:-45px;width:115px;height:115px;border-radius:50%;background:var(--v8-glow);filter:blur(8px);z-index:0}.v8-game-top .game-score{position:relative;z-index:2}.v8-game-top .game-score small{font-size:9px!important}.v8-game-top .game-host p{font-size:10px!important}.v8-game-top .game-host h2{font-size:19px!important}@keyframes v8RoundPulse{50%{transform:scale(1.28)}}
.game-shell.active-game-scroll .clue{font-size:10px!important}.game-shell.active-game-scroll .game-reveal,.game-shell.active-game-scroll .mystery-win{font-size:10px!important}.game-shell.intro-shell>section>p{font-size:10.5px!important}.game-shell.intro-shell .game-how>strong{font-size:10px!important}.game-shell.intro-shell .game-how p{font-size:10px!important}.game-shell.intro-shell .game-reward-note{font-size:10px!important}.game-finish-card p{font-size:10.5px!important}

/* Full-screen navigation contract: only the Library intentionally scrolls. */
.shell-dash .main>.main-wrap,.shell-review .main>.main-wrap,.shell-rate .main>.main-wrap{overflow:hidden!important;overscroll-behavior:none!important}
.shell-dash.dash-games .main>.main-wrap{display:flex!important;flex-direction:column!important}.shell-dash.dash-shop .main>.main-wrap{height:100%!important}.shell-all .main>.main-wrap{overflow:hidden!important}

@media(max-width:360px){
  .v8-profile-chip small{display:none}.v8-home-copy p{font-size:11px!important}.v8-home-gates small{display:none}.v8-home-storybeat small{display:none}.v8-home-storybeat strong{font-size:10px!important}.v8-journey-nav button b{font-size:10px}.v8-full-rating-card{padding-inline:9px}.v8-rating-mascot{width:66px;height:73px}.v8-full-rating-nav{grid-template-columns:78px 1fr 78px}.v8-museum-grid article>small,.v8-museum-grid article>p{font-size:9px!important}.v8-store-copy p{font-size:9px!important}.v8-arcade-cabinet>b{font-size:9px!important}
}
@media(max-height:720px){
  .v8-home-character>span,.v8-bank-orb em,.v8-primary-journey-cta em,.v8-home-storybeat strong{font-size:10px!important}.v8-store-feature strong{font-size:10px!important}.v8-store-copy p{font-size:9px!important}.v8-review-card>p{font-size:10px!important}.v8-full-rating-card{grid-template-rows:24px minmax(86px,.75fr) 40px minmax(114px,1fr) auto 39px}.v8-rating-name h1{font-size:45px}.v8-rating-mascot{width:62px;height:68px}.v8-rating-presets button{min-height:38px}.v8-rating-note textarea{height:37px!important;min-height:37px!important}.v8-full-rating-nav>button{height:39px}
  .game-shell.intro-shell .game-how>div:nth-of-type(3){display:none}.game-shell.intro-shell .game-how p{font-size:10px!important}
}
@media(max-height:640px){
  .v8-home-copy p,.v8-home-gates small,.v8-home-resources button>small,.v8-primary-journey-cta small,.v8-primary-journey-cta em,.v8-home-storybeat small{display:none!important}.v8-home-storybeat strong{font-size:10px!important}.v8-stage-head{display:none!important}.v8-full-rating-card{grid-template-rows:22px 75px 37px minmax(104px,1fr) auto 36px;gap:3px}.v8-rating-name small{display:none}.v8-rating-name h1{font-size:40px}.v8-rating-mascot{width:54px;height:60px}.v8-rating-partner{min-height:36px}.v8-rating-control{grid-template-rows:32px 25px 14px minmax(36px,1fr)}.v8-rating-number strong{font-size:29px}.v8-rating-presets button{min-height:35px}.v8-rating-note textarea{height:34px!important;min-height:34px!important}.v8-rating-fit .gender-fit-title{display:none}.game-shell.active-game-scroll .game-top p{display:none!important}.game-shell.intro-shell .game-how{display:none!important}.game-shell.intro-shell>section>p{display:none!important}
}
@media(prefers-reduced-motion:reduce){.v8-round-dots i.live{animation:none!important}}

/* V8 cosmetic frames must visibly affect both rating experiences. */
html[data-card-frame="gold"] .v8-full-rating-card,
html[data-card-frame="gold"] .v8-quick-card{box-shadow:0 0 0 4px rgba(244,201,91,.52),0 22px 64px rgba(28,38,31,.16)!important;border-color:#f2c956!important}
html[data-card-frame="cloud"] .v8-full-rating-card,
html[data-card-frame="cloud"] .v8-quick-card{box-shadow:0 0 0 5px rgba(173,219,255,.30),0 22px 64px rgba(28,38,31,.14)!important;border-color:rgba(173,219,255,.72)!important}
html[data-card-frame="neon"] .v8-full-rating-card,
html[data-card-frame="neon"] .v8-quick-card{box-shadow:0 0 0 3px rgba(142,121,239,.52),0 0 35px rgba(215,79,255,.24),0 22px 64px rgba(28,38,31,.18)!important;border-color:#b38dff!important}

/* V8 final premium-legibility contract: central scenes never solve fit by micro-type. */
.v8-tinder-screen .v7-swipe-foot{font-size:9.5px!important}
.v8-tinder-screen .v7-partner-lock{font-size:10px!important}
.v8-tinder-screen .v7-tinder-actions .circle-action small{font-size:9px!important}
.v8-stage-node small{font-size:9px!important}.v8-stage-node em{font-size:9px!important}
.v8-podium-place>small,.v8-podium-place>div i,.v8-podium-place>div b{font-size:9px!important}
.v8-dna-labels small{font-size:9px!important}.v8-dna-labels b,.v8-dna-labels span{font-size:9.5px!important}
.v8-review-head>div:last-child>span{font-size:9px!important}.v8-review-duo small{font-size:9px!important}.v8-review-footer button{font-size:9.5px!important}
.v8-store-copy p{font-size:9px!important}.v8-store-feature strong{font-size:10px!important}.v8-arcade-cabinet>b{font-size:9px!important}
.v8-journey-nav button{font-size:9px!important}.v8-journey-nav button b{font-size:9px!important}
.v8-home-gates small{font-size:9px!important}.v8-home-character>span,.v8-bank-orb em,.v8-home-storybeat strong{font-size:9px!important}
@media(max-height:640px){
  .v8-stage-node:not(.current) em{display:none!important}
  .v8-podium-place>small{display:none!important}
  .v8-dna-labels small{display:none!important}
  .v8-review-head>div:last-child>span{display:none!important}
  .v8-store-copy p{display:none!important}
  .v8-arcade-cabinet>b{font-size:9px!important}
}

/* V8 QA legibility fixes found in real Chromium viewport renders. */
.v8-tinder-screen .v7-card-progress,.v8-tinder-screen .v7-card-progress small{font-size:9px!important}
.v8-stage-footer small{font-size:9px!important}
.v8-stats-top>button{font-size:9px!important}.v8-agreement-ring small{font-size:9px!important}.v8-viz-tabs button{font-size:9px!important}
.v8-vs small,.v8-hist-bars small,.v8-hist-legend,.v8-letter-orbit small,.v8-viz.letters>p{font-size:9px!important}
.v8-store-head p{font-size:9px!important}.v8-store-tabs button,.v8-store-tabs button b{font-size:9px!important}.v8-store-feature small{font-size:9px!important}.v8-store-copy>small{font-size:9px!important}.v8-store-actions button{font-size:9px!important}.v8-store-pages span{font-size:9px!important}
.v8-arcade-head p,.v8-arcade-head>div:last-child>span{font-size:9px!important}.v8-arcade-cabinet>small,.v8-arcade-cabinet>em,.v8-arcade-cabinet>b,.v8-arcade-foot button{font-size:9px!important}
@media(max-width:360px){
  .v8-store-head p{display:none!important}.v8-store-tabs button b{display:none!important}.v8-arcade-head p{display:none!important}.v8-arcade-cabinet>small{font-size:9px!important}.v8-arcade-cabinet>em{display:none!important}
}

/* V8 final game-scene legibility: active games remain full-screen without microscopic copy. */
.game-shell.active-game-scroll.v8-game-scene .game-top .eyebrow{font-size:9px!important;line-height:1.15!important}
.game-shell.active-game-scroll.v8-game-scene .game-top .game-host p{font-size:10px!important;line-height:1.2!important}
.game-shell.active-game-scroll.v8-game-scene .game-score span,
.game-shell.active-game-scroll.v8-game-scene .game-score small{font-size:9px!important;line-height:1.15!important}
.game-shell.active-game-scroll.v8-game-scene .find-target small,
.game-shell.active-game-scroll.v8-game-scene .find-target span,
.game-shell.active-game-scroll.v8-game-scene .gesture-hint,
.game-shell.active-game-scroll.v8-game-scene .catch-target,
.game-shell.active-game-scroll.v8-game-scene .build-clear,
.game-shell.active-game-scroll.v8-game-scene .flash-prompt,
.game-shell.active-game-scroll.v8-game-scene .memory-prompt,
.game-shell.active-game-scroll.v8-game-scene .mystery-prompt{font-size:9px!important}
.game-shell.intro-shell.v8-game-scene .eyebrow{font-size:9px!important;line-height:1.15!important}
.game-shell.intro-shell.v8-game-scene .game-intro-card>p{font-size:10px!important;line-height:1.3!important}
.game-shell.intro-shell.v8-game-scene .game-how>strong,
.game-shell.intro-shell.v8-game-scene .game-how p,
.game-shell.intro-shell.v8-game-scene .game-reward-note{font-size:9px!important;line-height:1.25!important}
.game-shell.v8-game-scene.scene-finish .game-finish-card>.eyebrow,
.game-shell.v8-game-scene.scene-finish .game-finish-card>p,
.game-shell.v8-game-scene.scene-finish .finish-score span,
.game-shell.v8-game-scene.scene-finish .finish-rewards,
.game-shell.v8-game-scene.scene-finish .finish-rewards span{font-size:9px!important;line-height:1.25!important}
@media(max-height:640px){
  .game-shell.active-game-scroll.v8-game-scene .game-top .game-host p{display:none!important}
  .game-shell.intro-shell.v8-game-scene .game-how,
  .game-shell.intro-shell.v8-game-scene .game-intro-card>p{display:none!important}
}
/* V8 small-screen polish from 320×568 QA. */
.v8-store-art>b{font-size:9px!important;line-height:1!important;padding:3px 5px!important}
@media(max-height:640px){
  .v8-review-screen{grid-template-rows:56px minmax(0,1fr) 32px!important;gap:6px!important}
  .v8-review-footer button{height:32px!important;min-height:32px!important}
  .v8-review-card{padding-block:7px!important;grid-template-rows:auto auto 60px minmax(30px,1fr) 38px!important}
  .v8-review-duo>span{height:52px!important}
}
.game-shell.active-game-scroll.v8-game-scene .clue span,
.game-shell.active-game-scroll.v8-game-scene .mystery-win span,
.game-shell.active-game-scroll.v8-game-scene .mystery-win .btn{font-size:9px!important}
/* V8 library readability: scrolling is intentional here, micro-type is not. */
.shell-all .all-filter-grid .chip,
.shell-all .gender-filter-grid .chip{font-size:9.5px!important;line-height:1.1!important;min-height:34px!important}
.shell-all .name-card .mini-score-label,
.shell-all .name-card small{font-size:9px!important}
/* V8 compact-height scenes: remove secondary chrome instead of introducing scroll or micro-type. */
.v8-trend-card>small,.v8-trend-card>div b{font-size:9px!important}
@media(max-height:640px){
  .v8-trend-card>small,.v8-trend-card>div b{display:none!important}
  .v8-museum-screen{grid-template-rows:63px 35px minmax(0,1fr)!important}
  .v8-museum-rooms button{min-height:35px!important}
  .v8-share-museum{display:none!important}
}
.v8-store-actions button{white-space:nowrap!important}
.v8-arcade-cabinet>strong{white-space:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.12;overflow:hidden;text-overflow:clip}
.shell-all .person-score small,.shell-all .new-badge{font-size:9px!important}


/* V8.0.1 micro-polish */
.resource-settings-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.resource-settings-grid .theme-mode{border-color:color-mix(in srgb,var(--brand-2) 28%,var(--line));background:color-mix(in srgb,var(--surface-2) 90%,var(--brand-2))}
@media(max-width:430px){.resource-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.resource-settings-grid .setting-toggle{min-height:62px}}
.v8-stats-signal{min-width:72px;border:1px solid color-mix(in srgb,var(--brand) 24%,var(--line));background:color-mix(in srgb,var(--surface) 92%,var(--v8-a));border-radius:14px;padding:6px 9px;text-align:center;display:flex;flex-direction:column;justify-content:center}
.v8-stats-signal small{font-size:7.5px;color:var(--text-3);font-weight:750}.v8-stats-signal b{font-size:17px;line-height:1.05;color:var(--brand)}
.v8-trend-foot.trend-categories{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none;direction:rtl;padding:1px}
.v8-trend-foot.trend-categories::-webkit-scrollbar{display:none}
.v8-trend-foot.trend-categories button{flex:1 0 auto;min-width:54px;padding:0 8px;display:flex;align-items:center;justify-content:center;gap:3px;color:var(--text-2)}
.v8-trend-foot.trend-categories button span{font-size:10px}.v8-trend-foot.trend-categories button b{font-size:8px}
.v8-trend-foot.trend-categories button.active{background:color-mix(in srgb,var(--brand) 12%,var(--surface));border-color:color-mix(in srgb,var(--brand) 36%,var(--line));color:var(--brand)}
.v8-no-data small{display:block;margin-top:4px;color:var(--text-3);font-size:8px}

/* V8.0.2 micro-polish: Tinder card-safe details + experiential refill countdown */
.v8-tinder-screen .v8-quick-card-bottom{
  position:absolute;
  inset-inline:18px;
  bottom:15px;
  z-index:5;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:7px;
  pointer-events:auto;
}
.v8-tinder-screen .v8-quick-card-bottom .v7-partner-lock{
  position:static!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  min-height:42px;
  display:grid;
  place-items:center;
  padding:9px 12px;
  margin:0!important;
}
.v8-tinder-screen .v8-quick-card-bottom .tinder-hint{
  position:static!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  margin:0!important;
  min-height:18px;
  display:grid;
  place-items:center;
}
.v8-tinder-screen .v8-card-gender-fit{width:100%}
.v8-tinder-screen .v8-card-gender-fit .gender-fit{
  margin:0!important;
  padding:8px 9px!important;
  border-radius:15px!important;
  background:color-mix(in srgb,var(--surface) 88%,transparent)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.v8-tinder-screen .v8-card-gender-fit .gender-fit-title{
  margin:0 0 6px!important;
  font-size:9.5px!important;
  text-align:right;
}
.v8-tinder-screen .v8-card-gender-fit .fit-chip{
  height:34px!important;
  min-height:34px!important;
  font-size:10px!important;
}
.v8-tinder-screen .v7-tinder-card.has-gender-fit .tinder-name{top:41.5%!important}
.v8-tinder-screen .v7-tinder-card.has-gender-fit .v7-name-signal{top:55.5%!important}
.v8-tinder-screen .v7-tinder-card.has-gender-fit .v7-card-character{top:34px!important}
.v8-tinder-screen .v7-card-pacifier{z-index:2!important;pointer-events:none}

.v8-tinder-screen .v7-quick-empty.waiting-next{
  height:100%;
  min-height:0;
  padding:clamp(18px,3.2dvh,30px) 18px 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 13%,color-mix(in srgb,var(--brand-2) 14%,transparent),transparent 27%),
    linear-gradient(180deg,color-mix(in srgb,var(--surface) 97%,var(--brand) 3%),var(--surface));
}
.v8-tinder-screen .v7-quick-empty.waiting-next .v7-quick-empty-character{
  height:clamp(145px,22dvh,210px);
  display:grid;
  place-items:center;
  margin-bottom:2px;
}
.v8-tinder-screen .v7-quick-empty.waiting-next .v7-empty-mascot{
  width:clamp(145px,36vw,205px)!important;
  height:clamp(145px,22dvh,205px)!important;
}
.v8-tinder-screen .v7-quick-empty.waiting-next h2{
  margin:4px 0 10px;
  font-size:clamp(31px,8vw,45px);
  letter-spacing:-.035em;
}
.v8-next-name-countdown{
  width:min(100%,360px);
  position:relative;
  margin:4px auto 8px;
  padding:16px 18px 14px;
  border:1px solid color-mix(in srgb,var(--brand) 30%,var(--line));
  border-radius:25px;
  background:color-mix(in srgb,var(--surface-2) 86%,var(--brand) 8%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 12px 32px rgba(35,76,54,.08);
  overflow:hidden;
}
.v8-next-name-countdown:before{
  content:"";
  position:absolute;
  inset:-45% 18% auto;
  height:100px;
  border-radius:50%;
  background:color-mix(in srgb,var(--brand) 18%,transparent);
  filter:blur(28px);
  pointer-events:none;
}
.v8-next-name-countdown small,
.v8-next-name-countdown span{
  position:relative;
  z-index:1;
  display:block;
}
.v8-next-name-countdown small{
  color:var(--text-2);
  font-size:10px;
  font-weight:800;
}
.v8-next-name-countdown strong{
  position:relative;
  z-index:1;
  display:block;
  margin:4px 0 5px;
  font-size:clamp(52px,15vw,78px);
  line-height:.98;
  font-weight:900;
  letter-spacing:.01em;
  font-variant-numeric:tabular-nums;
  color:var(--brand);
  text-shadow:0 7px 24px color-mix(in srgb,var(--brand) 20%,transparent);
}
.v8-next-name-countdown span{
  color:var(--text-3);
  font-size:9px;
  font-weight:700;
}
.v8-tinder-screen .v8-waiting-copy{
  margin:2px 0 10px!important;
  font-size:10.5px!important;
  line-height:1.45!important;
}
.v8-tinder-screen .v7-quick-empty.waiting-next .v7-empty-actions{
  width:min(100%,330px);
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:8px;
  margin-top:2px;
}
.v8-tinder-screen .v7-quick-empty.waiting-next .v7-empty-actions .btn{
  width:100%;
  min-height:52px;
  margin:0!important;
}
@media(max-height:740px){
  .v8-tinder-screen .v7-quick-empty.waiting-next{padding-top:12px}
  .v8-tinder-screen .v7-quick-empty.waiting-next .v7-quick-empty-character{height:118px}
  .v8-tinder-screen .v7-quick-empty.waiting-next .v7-empty-mascot{width:124px!important;height:124px!important}
  .v8-tinder-screen .v7-quick-empty.waiting-next h2{font-size:30px;margin-bottom:6px}
  .v8-next-name-countdown{padding:11px 14px 10px;margin-bottom:5px}
  .v8-next-name-countdown strong{font-size:48px}
  .v8-tinder-screen .v8-waiting-copy{display:none}
  .v8-tinder-screen .v7-quick-empty.waiting-next .v7-empty-actions .btn{min-height:46px}
}
@media(max-height:680px){
  .v8-tinder-screen .v8-card-gender-fit .gender-fit{padding:6px!important}
  .v8-tinder-screen .v8-card-gender-fit .gender-fit-title{display:none}
  .v8-tinder-screen .v8-card-gender-fit .fit-chip{height:30px!important;min-height:30px!important}
  .v8-tinder-screen .v8-quick-card-bottom{gap:5px;bottom:10px}
  .v8-tinder-screen .v8-quick-card-bottom .v7-partner-lock{min-height:36px;padding:7px 10px}
  .v8-tinder-screen .v7-tinder-card.has-gender-fit .tinder-name{top:39.5%!important}
  .v8-tinder-screen .v7-tinder-card.has-gender-fit .v7-name-signal{top:52%!important}
}

/* V9 Public Alpha — account/journey onboarding */
.v9-auth-link{width:100%;margin-top:10px;justify-content:center;color:var(--text-2)}
.muted-copy{font-weight:500;color:var(--text-3);font-size:10px}
.v9-invite-box{margin:18px 0;padding:15px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);display:grid;gap:7px;min-width:0}
.v9-invite-box small{font-size:10px;font-weight:800;color:var(--text-3)}
.v9-invite-box div{direction:ltr;text-align:left;font-size:11px;line-height:1.45;overflow-wrap:anywhere;color:var(--text-2);user-select:all}
.auth-card .error{margin-top:12px;padding:10px 12px;border-radius:13px;background:rgba(255,59,92,.09);color:var(--danger);font-size:11px;font-weight:700}

/* V9 public auth — magic-link waiting state */
.v9-mail-sent{margin:18px 0 10px;padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface-2);display:grid;place-items:center;text-align:center;gap:7px}.v9-mail-sent>span{font-size:34px}.v9-mail-sent strong{font-size:14px;direction:ltr}.v9-mail-sent small{max-width:290px;color:var(--text-2);font-size:10px;line-height:1.55}
