body{background:radial-gradient(ellipse at top,#1b4835,#0e2c20 52%,#071811);background-attachment:fixed}.phone-shell{min-height:100vh;display:flex;flex-direction:column;padding:60px 16px 24px;max-width:520px;margin:0 auto;position:relative}.player-badge{position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:520px;height:44px;z-index:30;background:rgba(var(--panel),.92);border-bottom:1px solid rgba(255,245,225,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.player-badge-inner{height:100%;display:flex;align-items:center;gap:10px;padding:0 16px}.player-badge .piece-img{width:28px;height:28px;object-fit:contain;display:block}.player-badge .piece-img--photo{object-fit:cover;border-radius:50%}.player-badge .piece-emoji{font-size:1.4rem;line-height:1}.player-badge .badge-name{font-family:var(--serif);font-size:.95rem;color:var(--cream);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-badge .badge-score{font-family:var(--display);font-weight:700;font-size:.95rem;color:var(--gold-soft);letter-spacing:.04em}.player-badge .badge-leave,.player-badge .badge-pause{margin-left:4px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:1px solid rgba(255,245,225,.2);color:#fff5e1b8;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.player-badge .badge-leave svg,.player-badge .badge-pause svg{width:18px;height:18px;display:block}.player-badge .badge-leave:hover{background:#c56d522e;border-color:var(--coral);color:var(--coral)}.player-badge .badge-pause:hover{background:#ffb84529;border-color:var(--gold);color:var(--gold)}.player-badge .badge-volume{display:flex;align-items:center;gap:6px;margin-left:4px;color:#fff5e1b8}.player-badge .badge-volume-icon{display:flex;align-items:center;background:none;border:0;padding:0;margin:0;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.player-badge .badge-volume-icon:hover,.player-badge .badge-volume-icon:focus-visible{color:var(--gold, #ffb845);outline:none}.player-badge .badge-volume-icon svg{width:16px;height:16px;display:block}.player-badge .badge-volume-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:70px;height:18px;background:transparent;cursor:pointer;padding:0;margin:0}.player-badge .badge-volume-slider::-webkit-slider-runnable-track{height:3px;background:#fff5e133;border-radius:999px;margin-top:7.5px}.player-badge .badge-volume-slider::-moz-range-track{height:3px;background:#fff5e133;border-radius:999px}.player-badge .badge-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:var(--cream, #fff5e1);border:0;margin-top:-4.5px}.player-badge .badge-volume-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--cream, #fff5e1);border:0}@media (max-width: 380px){.player-badge .badge-volume-slider{width:50px}}.phone-cutscene-scene{position:relative;width:260px;height:260px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center}.phone-cutscene-orb-svg{width:240px;height:auto;filter:drop-shadow(0 10px 24px rgba(255,184,69,.4)) drop-shadow(0 0 22px rgba(168,123,221,.35));animation:phone-cutscene-orb-pulse 4.2s ease-in-out infinite;pointer-events:none}.phone-cutscene-star{position:absolute;left:var(--sx, 50%);top:var(--sy, 50%);width:var(--sz, 8px);height:var(--sz, 8px);background:radial-gradient(circle,#ffeba5f2,#ffb8458c,#ffb84500 70%);border-radius:50%;pointer-events:none;animation:phone-cutscene-star-twinkle 3.5s ease-in-out infinite;animation-delay:var(--sd, 0s)}@keyframes phone-cutscene-orb-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes phone-cutscene-star-twinkle{0%,to{opacity:.18;transform:translate(-50%,-50%) scale(.6)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}}.phone-cutscene-headline{font-family:var(--display);font-size:1.8rem;font-weight:700;color:var(--gold);letter-spacing:.02em;margin:6px 0 12px;text-shadow:0 0 18px rgba(255,184,69,.55),0 2px 10px rgba(0,0,0,.7)}.phone-cutscene-sub{font-family:var(--serif);font-size:1.05rem;line-height:1.5;color:var(--cream-dim);max-width:320px;margin:0 auto}.cutscene-page-shell{padding-bottom:40px}.cutscene-page-stage{text-align:center;padding:0 0 12px}.cutscene-page-img{display:block;width:100%;max-width:420px;height:42vh;max-height:360px;min-height:200px;object-fit:cover;object-position:center;margin:0 auto 20px;border-radius:14px;box-shadow:0 12px 32px #0000008c,0 0 24px #a87bdd2e,inset 0 0 0 1px #ffdc8c1f;-webkit-user-select:none;user-select:none;pointer-events:none}.cutscene-page-figurine-wrap{display:flex;justify-content:center;margin:12px auto 16px}.cutscene-page-headline{font-family:var(--serif);font-size:clamp(1.7rem,6.5vw,2.4rem);font-weight:600;color:var(--gold);letter-spacing:.01em;display:inline-flex;align-items:center;justify-content:center;gap:16px;margin:4px auto 10px;text-shadow:0 0 18px rgba(255,184,69,.45),0 2px 10px rgba(0,0,0,.7)}.cutscene-page-ornament{font-size:.55em;color:var(--gold-soft);opacity:.85;text-shadow:0 0 8px rgba(255,184,69,.35)}.cutscene-page-sub{font-family:var(--serif);font-size:1.05rem;line-height:1.5;color:var(--cream-dim);max-width:360px;margin:0 auto}.cutscene-page-divider{display:flex;align-items:center;justify-content:center;gap:14px;margin:26px auto 0;color:var(--gold-soft);opacity:.55;font-size:.9rem}.cutscene-page-divider:before,.cutscene-page-divider:after{content:"";flex:1;max-width:110px;height:1px;background:linear-gradient(to right,transparent,rgba(255,184,69,.45),transparent)}.bridge-callout{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:0 0 18px;background:#ffb8451a;border:1px solid rgba(255,184,69,.45);border-radius:var(--radius);font-family:var(--serif);font-size:.98rem;line-height:1.45;color:var(--cream);box-shadow:0 0 24px #ffb8452e}.bridge-callout strong{color:var(--gold);font-weight:700}.bridge-callout-icon{font-size:1.6rem;line-height:1;flex-shrink:0}.phone-header{position:sticky;top:44px;z-index:10;margin:-16px -16px 18px;padding:16px 18px;background:linear-gradient(180deg,rgba(var(--panel-lift),.96),rgba(var(--panel),.9) 70%,rgba(var(--panel-deepest),.92));border-bottom:1px solid rgba(255,245,225,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.phone-header .eyebrow{font-family:var(--serif);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft);font-weight:500;margin-bottom:4px}.phone-header .word{font-family:var(--serif);font-size:1.8rem;font-weight:600;color:var(--cream);line-height:1.1}.phone-header .word-help{font-size:.85rem;color:var(--cream-dim);margin-top:4px;padding-right:72px}.phone-header .timer{position:absolute;top:12px;right:14px;padding:6px 12px;background:rgba(var(--panel),.55);border:1px solid rgba(215,192,149,.35);font-family:var(--display);font-weight:700;font-size:1.2rem;color:var(--gold-soft);font-variant-numeric:tabular-nums;letter-spacing:.02em;min-width:56px;text-align:center}.phone-header .timer.urgent{color:var(--coral);border-color:#c56d52a6;background:#c56d522e}.phone-header .timer .timer-suffix{font-family:var(--serif);font-weight:500;font-size:.8rem;opacity:.7;margin-left:2px}.phone-logo{display:block;margin:8px auto 24px;max-width:370px;width:92%}.phone-shell--splash:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,rgba(var(--panel-deepest),.74),rgba(var(--panel-deepest),.55) 42%,rgba(var(--panel-deepest),.86)),url(/central-perkd-splash-bg.jpg) center / cover no-repeat}.phone-h1{font-family:var(--serif);font-size:2rem;font-weight:600;color:var(--cream);text-align:center;margin-bottom:8px}.phone-sub{text-align:center;color:var(--cream-dim);margin-bottom:24px;font-size:1rem;line-height:1.5}.phone-stack>*+*{margin-top:14px}.phone-stack-lg>*+*{margin-top:24px}.phone-status{text-align:center;padding:40px 12px;color:var(--cream-dim);font-size:1.05rem;line-height:1.55}.phone-status .spinner{margin:0 auto 16px}.phone-status strong{color:var(--gold);font-size:inherit;font-weight:700}.get-ready-intro{justify-content:center;align-items:center;text-align:center}.get-ready-text{font-family:var(--serif);font-weight:600;font-size:2.4rem;color:var(--gold);letter-spacing:.02em;text-shadow:0 0 18px rgba(255,184,69,.45),0 2px 8px rgba(0,0,0,.6);animation:get-ready-in .5s ease-out,lp-pulse 1.8s ease-in-out .5s infinite}@keyframes get-ready-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.phone-reveal-build{margin-top:18px;padding:36px 20px;border:1px solid rgba(215,192,149,.22);background:rgba(var(--panel-lift),.55);border-radius:8px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;animation:lp-fade-in .25s ease}.phone-reveal-build.is-real{border-color:rgba(var(--tg-glow),.55);background:linear-gradient(135deg,rgba(var(--tg-glow),.18),rgba(var(--panel),.65));box-shadow:0 0 24px rgba(var(--tg-glow),.2)}.phone-reveal-build-label{font-family:var(--display);font-weight:700;font-size:1.25rem;letter-spacing:.04em;color:var(--cream);animation:lp-pulse 1.4s ease-in-out infinite}.phone-reveal-build.is-real .phone-reveal-build-label{color:var(--true-green)}.phone-reveal-build-dots{display:flex;gap:10px}.phone-reveal-build-dots span{width:10px;height:10px;border-radius:50%;background:#d7c095d9;animation:phone-reveal-build-dot 1s ease-in-out infinite}.phone-reveal-build-dots span:nth-child(2){animation-delay:.18s}.phone-reveal-build-dots span:nth-child(3){animation-delay:.36s}.phone-reveal-build.is-real .phone-reveal-build-dots span{background:var(--true-green)}@keyframes phone-reveal-build-dot{0%,to{transform:translateY(0) scale(1);opacity:.55}50%{transform:translateY(-5px) scale(1.15);opacity:1}}.piece-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.piece-tile{background:radial-gradient(ellipse 80% 70% at 50% 30%,rgba(140,90,220,.18) 0%,transparent 70%),#fff5e10a;border:2px solid var(--rule);border-radius:var(--radius);padding:14px 8px 10px;text-align:center;transition:all .15s;cursor:pointer;position:relative;overflow:hidden}.piece-tile-art{height:110px;display:flex;align-items:flex-end;justify-content:center}.piece-tile .label{font-family:var(--serif);font-size:.88rem;margin-top:8px;letter-spacing:.04em;color:var(--cream)}.piece-tile.selected{border-color:var(--gold-soft);background:#d7c09524;box-shadow:0 0 0 3px #d7c09538,0 8px 24px #00000024}.piece-tile.disabled{opacity:.3;cursor:not-allowed;filter:grayscale(50%)}.word-choice{display:block;width:100%;text-align:left;background:#fff5e10d;border:2px solid var(--rule);border-radius:var(--radius);padding:16px 18px;color:var(--cream);transition:all .15s}.word-choice:hover,.word-choice.selected{border-color:#d7c09538;background:#d7c0951a}.word-choice .w{font-family:var(--display);font-size:1.3rem;font-weight:700;color:var(--cream);margin-bottom:6px}.word-choice .d{font-size:.92rem;color:var(--cream-dim);line-height:1.5}.name-join-row{display:flex;align-items:stretch;gap:10px}.name-join-row .lp-input{flex:1;min-width:0}.name-join-btn{flex-shrink:0;white-space:nowrap;padding-left:18px;padding-right:18px}.piece-tile--camera .piece-tile-art{display:flex;align-items:center;justify-content:center;color:var(--cream)}.piece-tile--camera .piece-tile-art svg{width:60px;height:60px;filter:drop-shadow(0 4px 14px rgba(255,184,69,.25))}.piece-tile--camera .piece-tile-photo{width:92px;height:92px;object-fit:cover;border-radius:50%;display:block;filter:drop-shadow(0 4px 14px rgba(255,184,69,.45))}.piece-tile--ai .piece-tile-art{display:flex;align-items:center;justify-content:center;color:var(--cream)}.piece-tile--ai .piece-tile-art svg{width:60px;height:60px;filter:drop-shadow(0 4px 14px rgba(146,219,175,.3))}.ai-piece-modal .ai-piece-preview{display:flex;align-items:center;justify-content:center;margin:14px 0 6px;padding:14px;background:#fff5e10a;border:1px solid rgba(255,245,225,.1);border-radius:10px;min-height:220px}.ai-piece-modal .ai-piece-preview img{max-width:100%;max-height:260px;display:block;filter:drop-shadow(0 8px 24px rgba(0,0,0,.45))}.ai-piece-modal .ai-piece-remaining{text-align:center;font-size:.85rem;color:var(--cream-dim, rgba(255, 245, 225, .55));margin:8px 0 4px;letter-spacing:.04em}.ai-piece-modal .ai-piece-actions{flex-wrap:wrap;gap:8px}.ai-piece-mode{display:flex;gap:8px;margin:4px 0 12px}.ai-piece-mode-btn{flex:1;padding:10px 8px;background:transparent;border:1px solid rgba(104,197,140,.3);border-radius:8px;color:var(--cream-dim);font-family:var(--sans);font-size:.92rem;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.ai-piece-mode-btn:hover{color:var(--cream);border-color:#92dbaf8c}.ai-piece-mode-btn.is-on{background:#2b7a4c66;border-color:#92dbafd9;color:var(--cream)}.ai-piece-modal .ai-piece-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;margin:14px 0 6px;padding:24px 14px;background:#fff5e10a;border:1px solid rgba(255,245,225,.1);border-radius:10px;min-height:220px}.ai-piece-orb{position:relative;width:76px;height:76px}.ai-piece-orb:before{content:"";position:absolute;top:21px;right:21px;bottom:21px;left:21px;border-radius:50%;background:radial-gradient(circle at 50% 45%,var(--gold-soft) 0%,var(--gold) 55%,rgba(43,122,76,0) 78%);box-shadow:0 0 22px 6px #92dbaf59;animation:ai-orb-pulse 1.7s ease-in-out infinite}.ai-piece-orb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:3px solid rgba(146,219,175,.18);border-top-color:var(--gold);animation:lp-spin 1s linear infinite}.ai-piece-spark{position:absolute;top:50%;left:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--cream);box-shadow:0 0 8px 2px #fff5e1b3;transform-origin:0 0;animation:ai-spark-orbit 1.6s linear infinite}@keyframes ai-orb-pulse{0%,to{transform:scale(.82);opacity:.7}50%{transform:scale(1);opacity:1}}@keyframes ai-spark-orbit{0%{transform:rotate(0) translate(38px)}to{transform:rotate(360deg) translate(38px)}}.ai-piece-loading-msg{font-size:.98rem;color:var(--cream);letter-spacing:.03em;text-align:center;min-height:1.3em;animation:ai-msg-fade .4s ease}@keyframes ai-msg-fade{0%{opacity:0}to{opacity:1}}.ai-piece-loading-bar{width:70%;max-width:220px;height:4px;border-radius:999px;overflow:hidden;background:#fff5e11a}.ai-piece-loading-bar:before{content:"";display:block;height:100%;width:38%;border-radius:999px;background:linear-gradient(90deg,transparent,var(--gold-soft),var(--gold),transparent);animation:ai-bar-slide 1.5s ease-in-out infinite}@keyframes ai-bar-slide{0%{transform:translate(-120%)}to{transform:translate(330%)}}.ai-piece-loading-sub{font-size:.8rem;color:var(--cream-dim);text-align:center;letter-spacing:.04em}@media (prefers-reduced-motion: reduce){.ai-piece-orb:before,.ai-piece-orb:after,.ai-piece-spark,.ai-piece-loading-bar:before,.ai-piece-loading-msg{animation:none}}.photo-capture-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--panel-deepest),.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:200;padding:24px;animation:lp-fade-in .18s ease}.photo-capture-modal{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.photo-capture-title{font-family:var(--display);font-weight:700;font-size:1.4rem;color:var(--cream);letter-spacing:.04em}.photo-capture-caption{font-family:var(--serif);font-size:.95rem;line-height:1.45;color:var(--cream-dim);margin:0}.photo-capture-error{font-family:var(--serif);font-size:1rem;line-height:1.5;color:var(--coral, #FF7A6E);padding:18px 8px}.photo-capture-stage{width:min(76vw,320px);height:min(76vw,320px);border-radius:50%;overflow:hidden;background:#0009;border:2px solid rgba(104,197,140,.4);box-shadow:0 12px 40px #00000080}.photo-capture-frame{width:100%;height:100%;object-fit:cover;display:block}video.photo-capture-frame{transform:scaleX(-1)}.photo-capture-actions{display:flex;gap:12px;justify-content:center;width:100%;flex-wrap:wrap}.photo-capture-actions .lp-btn{flex:1 1 calc(50% - 6px);min-width:0}.photo-capture-stage:has(.photo-capture-ai-preview),.photo-capture-stage:has(.photo-capture-loading){border-radius:12px;background:#fff5e10a}.photo-capture-ai-preview{width:100%;height:100%;object-fit:contain;display:block;padding:8px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.45))}.photo-capture-loading{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;text-align:center}.photo-capture-loading-text{font-family:var(--serif);color:var(--cream-dim);font-size:.95rem;line-height:1.4}.photo-capture-remaining{font-size:.85rem;color:var(--cream-dim);margin:8px 0 4px;letter-spacing:.04em;text-align:center}.vote-choice{display:flex;align-items:flex-start;gap:14px;width:100%;text-align:left;background:#fff5e10d;border:2px solid var(--rule);border-radius:var(--radius);padding:16px 18px;color:var(--cream);transition:all .15s}.vote-choice:hover:not(:disabled),.vote-choice.selected{border-color:#d7c09538;background:#d7c0951a}.vote-choice:disabled{opacity:.45;cursor:not-allowed}.vote-choice-row{position:relative;width:100%}.vote-choice-row .vote-choice{width:100%;padding-right:70px}.vote-laugh{position:absolute;top:6px;right:6px;bottom:6px;width:54px;display:flex;align-items:center;justify-content:center;font-size:1.7rem;line-height:1;background:#fff5e10d;border:2px solid var(--rule);border-radius:var(--radius);filter:grayscale(.7);opacity:.6;transition:all .15s}.vote-laugh:hover:not(:disabled){opacity:1;filter:none;border-color:#ffb84566}.vote-laugh.is-laughed{opacity:1;filter:none;background:#ffb8452e;border-color:#ffb845b3}.vote-laugh:disabled{opacity:.2;cursor:not-allowed}.vote-choice.is-own{opacity:.55;background:#ffffff05;border-style:dashed;border-color:#d7c0952e;cursor:not-allowed;position:relative}.vote-choice.is-own .text{color:var(--cream-dim);font-style:italic}.vote-choice.is-own .letter{background:#d7c09540;color:#fff5e18c;box-shadow:none}.vote-choice-own-tag{position:absolute;top:8px;right:10px;font-family:var(--display);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-soft);opacity:.7}.vote-choice .letter{font-family:var(--display);font-size:1.4rem;font-weight:700;background:var(--gold-soft);color:var(--twilight-deep);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.vote-choice .text{font-family:var(--serif);font-size:1.2rem;line-height:1.55;color:var(--cream);padding-top:6px}.vote-row{display:flex;align-items:stretch;gap:10px}.vote-row .vote-choice{flex:1;min-width:0;position:relative}.vote-choice.is-voted{border-color:var(--gold-soft);background:#d7c09524}.vote-choice-voted-tag{position:absolute;top:8px;right:10px;font-family:var(--display);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-soft);opacity:.9}.vote-like{flex-shrink:0;width:56px;border:2px solid var(--rule);border-radius:var(--radius);background:#fff5e10d;color:var(--cream-dim);font-size:1.6rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .12s}.vote-like:hover{border-color:#ff5a7a66;color:#ff8098}.vote-like:active{transform:scale(.92)}.vote-like.liked{color:#ff5a7a;border-color:#ff5a7a8c;background:#ff5a7a24}.vote-voted-banner{text-align:center;font-family:var(--serif);color:var(--cream-dim);font-size:.95rem;padding:2px 0 8px}.read-list{background:transparent}.read-entry{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid var(--rule)}.read-entry:first-child{padding-top:4px}.read-entry:last-child{border-bottom:none;padding-bottom:4px}.read-entry .letter{font-family:var(--display);font-size:1.4rem;font-weight:700;background:var(--gold-soft);color:var(--twilight-deep);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.read-entry .text{font-family:var(--serif);font-size:1.2rem;line-height:1.6;color:var(--cream);padding-top:6px}.phone-counter{font-size:.78rem;color:var(--cream-fade);text-align:right;margin-top:6px}.error{color:var(--coral);font-size:.9rem;margin-top:8px;min-height:18px}.score-row{display:flex;align-items:center;gap:14px;padding:12px 14px;background:#fff5e10a;border:1px solid var(--rule);border-radius:var(--radius)}.score-row .emoji{font-size:1.6rem}.score-row .name{flex:1;font-family:var(--serif);font-size:1.05rem}.score-row .delta{color:var(--gold);font-family:var(--serif);font-weight:600}.score-row .total{color:var(--cream-dim);margin-left:10px}.acct-bar{display:flex;justify-content:center;margin:-12px 0 18px}.acct-link{background:none;border:none;color:var(--gold-soft);font-family:var(--sans);font-size:.9rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 10px}.acct-link:hover{color:var(--gold)}.acct-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;background:#68c58c24;border:1px solid rgba(104,197,140,.38);border-radius:999px;color:var(--cream);font-family:var(--sans);font-size:.88rem;cursor:pointer}.acct-chip:hover{border-color:var(--gold)}.acct-chip-dot{width:8px;height:8px;border-radius:50%;background:var(--mint, #7bd9b8);box-shadow:0 0 7px #7bd9b8b3}.acct-modal{max-width:420px}.acct-tabs{display:flex;gap:6px;margin:4px 0 18px}.acct-tab{flex:1;padding:9px 8px;background:transparent;border:1px solid rgba(104,197,140,.28);border-radius:8px;color:var(--cream-dim);font-family:var(--sans);font-size:.9rem;cursor:pointer}.acct-tab--on{background:#2b7a4c61;border-color:#92dbafd9;color:var(--cream)}.acct-head{text-align:center;margin-bottom:18px}.acct-avatar{width:84px;height:84px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center}.acct-avatar--photo{border-radius:50%;object-fit:cover}.acct-avatar--empty{border-radius:50%;background:#68c58c24;border:1px solid rgba(104,197,140,.35);color:var(--gold-soft);font-size:2rem}.acct-name{font-family:var(--serif);font-size:1.5rem;color:var(--cream)}.acct-sub{font-family:var(--sans);font-size:.85rem;color:var(--cream-dim);margin-top:4px}.acct-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:20px}.acct-stat{background:rgba(var(--panel-deepest),.5);border:1px solid rgba(104,197,140,.2);border-radius:10px;padding:12px 6px;text-align:center}.acct-stat-value{font-family:var(--display);font-weight:700;font-size:1.25rem;color:var(--gold)}.acct-stat-label{font-family:var(--sans);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cream-dim);margin-top:4px}.acct-change-piece{margin-top:10px;background:#68c58c24;border:1px solid rgba(104,197,140,.38);border-radius:999px;color:var(--cream);font-family:var(--sans);font-size:.82rem;font-weight:600;padding:7px 16px;cursor:pointer;transition:background .12s,border-color .12s}.acct-change-piece:hover{border-color:var(--gold);background:#68c58c38}.acct-piece-grid{max-height:48vh;overflow-y:auto;margin:8px 0 4px;padding-right:4px}.phone-question{font-family:var(--serif);font-size:1.15rem;line-height:1.35;color:var(--cream);text-align:center;margin:4px 0 16px;text-wrap:balance}.phone-result{text-align:center;padding:22px 18px;border-radius:var(--radius);border:1px solid rgba(215,192,149,.2);background:rgba(var(--panel),.6)}.phone-result.is-correct{border-color:#7ee0a099;background:#2e7a4a38}.phone-result.is-wrong{border-color:#e8848466;background:#7a262e2e}.phone-result.is-correct .phone-result.is-wrong .phone-result-headline{font-family:var(--serif);font-size:1.5rem;color:var(--cream);margin-top:8px}.phone-answer-echo{font-family:var(--serif);font-size:1.15rem;color:var(--cream);background:#fff5e10f;border:1px solid rgba(215,192,149,.22);border-radius:var(--radius);padding:12px 14px;margin:12px 0 4px;text-align:center}.phone-breakdown{margin-top:14px;border:1px solid rgba(215,192,149,.18);border-radius:var(--radius);overflow:hidden}.phone-breakdown-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 13px;background:rgba(var(--panel),.5);border-bottom:1px solid rgba(255,245,225,.06);font-size:.92rem;color:var(--cream-dim)}.phone-breakdown-row:last-child{border-bottom:0}.phone-breakdown-row .v{font-family:var(--serif);font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}.phone-skip-note{margin-top:12px;padding:10px 12px;border-radius:var(--radius);border:1px solid rgba(215,192,149,.25);background:#d7c09514;color:var(--gold-soft);font-size:.9rem;text-align:center}.phone-truth{text-align:center;padding:14px 16px;border-radius:var(--radius);border:1px solid rgba(126,224,160,.55);background:#2e7a4a38}.phone-truth-label{font-family:var(--serif);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:#9defb9}.phone-truth-text{font-family:var(--serif);font-size:1.35rem;line-height:1.25;color:var(--cream);margin-top:4px;text-wrap:balance}.phone-yours{display:flex;align-items:baseline;gap:8px;margin-top:10px;padding:10px 13px;border-radius:var(--radius);border:1px solid rgba(255,245,225,.12);background:rgba(var(--panel),.5)}.phone-yours .mark{font-weight:700}.phone-yours.is-correct .mark{color:#7ee0a0}.phone-yours.is-wrong .mark{color:#e88484}.phone-yours .label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-fade)}.phone-yours .text{color:var(--cream);font-family:var(--serif);font-size:1.02rem}.phone-result{margin-top:12px;text-align:center;padding:16px 18px;border-radius:var(--radius);border:1px solid rgba(215,192,149,.2);background:rgba(var(--panel),.6)}.phone-result.is-correct{border-color:#7ee0a08c;background:#2e7a4a33}.phone-result.is-mixed{border-color:#d7c09580;background:#d7c0951a}.phone-result.is-wrong{border-color:#e8848459;background:#7a262e29}.phone-result-headline{font-family:var(--serif);font-size:1.2rem;line-height:1.3;color:var(--cream);text-wrap:balance}.phone-result-move{margin-top:6px;font-family:var(--serif);font-weight:700;font-size:2.1rem;color:var(--gold);font-variant-numeric:tabular-nums}.phone-result-move .unit{font-size:.9rem;font-weight:500;color:var(--cream-fade);margin-left:6px;letter-spacing:.08em}.phone-progress{display:flex;align-items:center;gap:10px;margin-top:14px;padding:10px 13px;border-radius:var(--radius);background:rgba(var(--panel),.5);border:1px solid rgba(255,245,225,.1)}.phone-progress .label{font-size:.86rem;color:var(--cream-dim);white-space:nowrap}.phone-progress .bar{flex:1;height:6px;border-radius:999px;background:#fff5e11f;overflow:hidden}.phone-progress .bar .fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold-soft),var(--gold))}.phone-slide-note{margin-top:10px;padding:10px 13px;border-radius:var(--radius);font-size:.88rem;line-height:1.4}.phone-slide-note.is-back{border:1px solid rgba(232,132,132,.45);background:#7a262e33;color:#f2c4c4}.phone-slide-note.is-forward{border:1px solid rgba(126,224,160,.45);background:#2e7a4a2e;color:#b8ecc9}.phone-slide-note strong{color:var(--cream)}.phone-review-cta{margin-top:14px;text-align:center;padding:14px;border-radius:var(--radius-lg);border:1px solid rgba(255,184,69,.5);background:#ffb8451a}.phone-review-prompt{font-family:var(--display);font-weight:800;font-size:1.05rem;color:var(--gold-soft);margin-bottom:10px}.phone-review-request{width:100%;font-size:1.15rem;padding:14px;background:linear-gradient(180deg,#FFD27A,var(--gold));color:#2a1c05;border:none;animation:phone-review-pulse 1.6s ease-in-out infinite}@keyframes phone-review-pulse{0%,to{box-shadow:0 0 #ffb8458c}50%{box-shadow:0 0 0 10px #ffb84500}}.phone-review-requested{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:var(--radius);border:1px solid rgba(126,224,160,.45);background:#2e7a4a2e;color:#b8ecc9;font-weight:700}.phone-review-requested .mark{font-size:1.1rem}.phone-review-hint{margin-top:8px;font-size:.85rem;color:var(--cream-fade);text-align:center}.phone-review-card{margin-top:6px;padding:16px;border-radius:var(--radius-lg);border:1px solid rgba(var(--panel-lift),.9);background:rgba(var(--panel),.55);text-align:center}.phone-review-who{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--cream-dim);font-weight:700;margin-bottom:8px}.phone-review-answer{font-family:var(--display);font-weight:800;font-size:1.4rem;color:var(--cream);line-height:1.25}.phone-review-vs{margin:10px 0 4px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cream-fade)}.phone-review-truth{font-family:var(--display);font-weight:800;font-size:1.25rem;color:var(--mint)}.phone-review-q{text-align:center;font-weight:700;color:var(--cream);margin:16px 0 12px;font-size:1.05rem}.phone-review-btns{display:flex;flex-direction:column;gap:10px}.phone-review-yes,.phone-review-no{width:100%}.phone-review-yes.is-selected{box-shadow:0 0 0 3px rgba(var(--tg-glow),.65);filter:brightness(1.08)}.phone-review-no.is-selected{box-shadow:0 0 0 3px #e8848499;border-color:#e88484cc!important;color:#f2c4c4!important}.phone-review-wait{margin-top:16px;text-align:center;color:var(--cream-dim);display:flex;flex-direction:column;align-items:center;gap:10px}.phone-review-tally{margin-top:4px;font-variant-numeric:tabular-nums;font-weight:700;color:var(--gold-soft);letter-spacing:.04em}.phone-review-verdict{margin-top:16px;padding:16px;border-radius:var(--radius-lg);text-align:center}.phone-review-verdict-head{font-family:var(--display);font-weight:800;font-size:1.2rem}.phone-review-verdict.is-pass{border:1px solid rgba(var(--tg-glow),.6);background:rgba(var(--tg-glow),.16);color:#b8ecc9}.phone-review-verdict.is-deny{border:1px solid rgba(232,132,132,.5);background:#7a262e33;color:#f2c4c4}.faceoff-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin:14px auto 16px}.faceoff-player{display:inline-flex;flex-direction:column;align-items:center;gap:6px;opacity:.85}.faceoff-player.is-me{opacity:1}.faceoff-name{font-family:var(--display);font-size:.95rem;color:var(--cream)}.faceoff-player.is-me .faceoff-name{color:var(--gold-soft)}.faceoff-tick{color:var(--true-green);font-size:.9rem}.faceoff-vs{font-family:var(--serif);font-style:italic;color:var(--gold-soft);opacity:.8}.faceoff-result{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;background:rgba(var(--panel),.6);border:1px solid rgba(215,192,149,.16);border-radius:14px;text-align:left}.faceoff-result.is-correct{border-color:rgba(var(--tg-glow),.4)}.faceoff-result.is-winner{background:rgba(var(--panel-lift),.8);border-color:var(--true-green);box-shadow:0 0 20px rgba(var(--tg-glow),.22)}.faceoff-result-piece{flex:0 0 auto}.faceoff-result-body{flex:1 1 auto;min-width:0}.faceoff-result-name{display:block;font-family:var(--display);font-size:.95rem;color:var(--cream)}.faceoff-result-answer{display:block;font-family:var(--serif);font-size:.9rem;color:var(--cream-dim);overflow-wrap:anywhere}.faceoff-result-mark{flex:0 0 auto;display:inline-flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:1.2rem;color:var(--coral-soft)}.faceoff-result.is-correct .faceoff-result-mark{color:var(--true-green)}.faceoff-result-ms{font-family:var(--sans);font-size:.72rem;color:var(--cream-fade);font-variant-numeric:tabular-nums}.rescue-count{display:inline-block;margin-left:10px;padding:2px 9px;border-radius:var(--radius-pill, 999px);background:#fff5e11a;border:1px solid rgba(215,192,149,.28);font-family:var(--sans);font-size:.72rem;letter-spacing:.04em;color:var(--cream-dim);vertical-align:middle;font-variant-numeric:tabular-nums}.phone-breakdown-row.is-doubled{color:var(--gold-soft);border-bottom:0;font-weight:600}.phone-breakdown-row.is-doubled .v{color:var(--gold);font-variant-numeric:tabular-nums}
