.cheer-fx{z-index:70}.cheer-fx,.cheer-layer{position:fixed;inset:0;pointer-events:none}.cheer-layer{z-index:71;display:flex;align-items:flex-end;justify-content:center;padding:24px 24px calc(28px + env(safe-area-inset-bottom));background:radial-gradient(ellipse 70% 55% at 50% 100%,rgba(255,214,190,.55) 0,rgba(236,222,255,.35) 45%,transparent 75%);animation:cheer-fade .35s ease-out both}.cheer-card{pointer-events:auto;cursor:pointer;position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:4px 22px;width:min(760px,100%)}.cheer-figure-wrap{position:relative;display:flex;align-items:flex-end;justify-content:center;animation:cheer-jump .9s cubic-bezier(.2,1.4,.4,1) both}.cheer-glow{position:absolute;left:50%;bottom:6%;width:120%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,236,170,.95) 0,rgba(255,190,150,.5) 40%,transparent 70%);animation:cheer-glow 1.6s ease-in-out infinite alternate}.cheer-figure{position:relative;height:min(46vh,380px);width:auto;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(80,50,160,.25));user-select:none}.cheer-say{position:relative;margin-bottom:26px;padding:22px 26px 18px;border-radius:28px 28px 28px 8px;background:linear-gradient(160deg,#ffffff,#fff6ef);border:2px solid rgba(143,124,246,.35);box-shadow:0 24px 50px rgba(80,50,160,.22);color:var(--ink);word-break:keep-all;animation:cheer-pop .55s cubic-bezier(.2,1.3,.4,1) .18s both}.cheer-say:before{content:"";position:absolute;left:-12px;bottom:30px;width:20px;height:20px;background:#fff8f3;border-left:2px solid rgba(143,124,246,.35);border-bottom:2px solid rgba(143,124,246,.35);transform:rotate(45deg)}.cheer-tag{font-size:13px;font-weight:800;color:var(--violet);letter-spacing:-.01em}.cheer-head{margin-top:4px;font-size:34px;font-weight:900;line-height:1.15;letter-spacing:-.03em;background:linear-gradient(90deg,#6a5ae0,#e0679a 55%,#f08a4b);-webkit-background-clip:text;background-clip:text;color:transparent}.cheer-line{margin-top:8px;font-size:19px;font-weight:700;line-height:1.55;text-wrap:pretty}.cheer-stickers{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.cheer-sticker{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 8px;border-radius:999px;background:var(--note);box-shadow:0 2px 0 rgba(214,196,160,.9);font-size:14px;font-weight:800;transform:rotate(-2deg);animation:cheer-stamp .5s cubic-bezier(.2,1.6,.4,1) .6s both}.cheer-sticker:before{content:"";width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffb38a,#e0679a);box-shadow:inset 0 0 0 2px rgba(255,255,255,.7)}.cheer-hint{margin-top:10px;font-size:12px;color:var(--ink-faint)}.cheer-layer.is-calm{background:none;animation:none}.cheer-layer.is-calm .cheer-figure-wrap,.cheer-layer.is-calm .cheer-glow,.cheer-layer.is-calm .cheer-say,.cheer-layer.is-calm .cheer-sticker{animation:none}.cheer-layer.is-calm .cheer-glow{display:none}.cheer-layer.is-calm .cheer-card{width:min(560px,100%)}.cheer-layer.is-calm .cheer-figure{height:min(24vh,180px)}.cheer-layer.is-calm .cheer-head{font-size:24px}.cheer-layer.is-calm .cheer-line{font-size:16px}.cheer-peek{position:fixed;right:18px;bottom:calc(96px + env(safe-area-inset-bottom));z-index:69;display:flex;align-items:flex-end;gap:0;max-width:min(400px,calc(100vw - 24px));cursor:pointer;animation:cheer-peek-in .5s cubic-bezier(.2,1.3,.4,1) both}.cheer-peek-figure{order:2;flex:none;height:132px;width:auto;margin-left:-6px;filter:drop-shadow(0 10px 14px rgba(80,50,160,.22));animation:cheer-wave 1.4s ease-in-out .4s 2;transform-origin:50% 100%}.cheer-peek-bubble{order:1;margin-bottom:52px;padding:12px 16px;border-radius:20px 20px 6px 20px;background:#fff;border:2px solid rgba(143,124,246,.3);box-shadow:0 14px 30px rgba(80,50,160,.18);font-size:15px;font-weight:700;line-height:1.5;color:var(--ink);word-break:keep-all}.cheer-peek-name{display:block;margin-bottom:2px;font-size:12px;font-weight:800;color:var(--violet)}.cheer-peek.is-calm,.cheer-peek.is-calm .cheer-peek-figure{animation:none}.bread-meter{display:flex;align-items:center;gap:10px}.bread-svg{width:92px;height:auto;flex:none}.bread-meter.is-small{margin-top:8px}.bread-meter.is-small .bread-svg{width:64px}.bread-loaf{transition:d .8s ease}.bread-label{font-size:15px;color:var(--ink-soft)}.bread-label,.cheer-board-btn{white-space:nowrap;font-weight:800}.cheer-board-btn{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px 0 8px;border-radius:999px;border:1px solid rgba(214,196,160,.9);background:var(--note);font-size:13px;color:var(--ink);box-shadow:0 2px 0 rgba(214,196,160,.8)}.cheer-board-btn:hover{transform:rotate(-1.5deg)}.cheer-board-btn-stamp{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffb38a,#e0679a);box-shadow:inset 0 0 0 2px rgba(255,255,255,.75)}.cheer-board-dot{position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:50%;background:#e0679a;box-shadow:0 0 0 2px #fff}body:has(.cheer-board-back) .support-chat{display:none}.cheer-board-back{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(40,28,80,.32);overflow-y:auto}.cheer-board{position:relative;width:min(620px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;padding:26px 26px 22px;border-radius:26px;background:radial-gradient(60% 50% at 0 0,rgba(185,166,255,.35) 0,transparent 70%),radial-gradient(50% 50% at 100% 10%,rgba(255,158,112,.28) 0,transparent 70%),linear-gradient(168deg,#f7f0ff,#fff0f3 50%,#fff1e2);box-shadow:0 30px 70px rgba(40,28,80,.3);color:var(--ink)}.cheer-board-tape{position:absolute;top:-10px;left:50%;width:110px;height:24px;transform:translateX(-50%) rotate(-3deg);background:var(--tape);border-radius:3px}.cheer-board-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cheer-board-title{margin-top:2px;font-size:26px;font-weight:900;letter-spacing:-.03em}.cheer-board-close{flex:none;width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--panel-line);font-size:24px;line-height:1;color:var(--ink-soft)}.cheer-board-bread{margin-top:14px;display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:18px;background:rgba(255,255,255,.75)}.cheer-board-bread-note{font-size:14px;font-weight:600;color:var(--ink-soft);word-break:keep-all}.cheer-board-grid{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px}.cheer-stamp{position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:10px;border-radius:50%;border:2px dashed rgba(143,124,246,.35);background:rgba(255,255,255,.5);text-align:center;transform:rotate(var(--tilt,0deg))}.cheer-stamp-label{font-size:13.5px;font-weight:800;line-height:1.3;color:var(--ink-faint);word-break:keep-all}.cheer-stamp.is-on{border:3px solid #e0679a;background:radial-gradient(circle at 35% 30%,#fff6e9 0,#ffe1d2 60%,#ffd0c4 100%);box-shadow:0 6px 14px rgba(224,103,154,.22)}.cheer-stamp.is-on .cheer-stamp-ring{position:absolute;inset:5px;border-radius:50%;border:1.5px solid rgba(224,103,154,.55)}.cheer-stamp.is-on .cheer-stamp-label{color:#b83f74}.cheer-stamp[data-kind=publish].is-on{border-color:#6a5ae0;background:radial-gradient(circle at 35% 30%,#ffffff 0,#efe9ff 60%,#ddd3ff 100%)}.cheer-stamp[data-kind=publish].is-on .cheer-stamp-label{color:#4b3fc4}.cheer-board-prefs{margin-top:18px;padding-top:14px;border-top:1px dashed rgba(143,124,246,.35)}.cheer-board-legend{font-size:14px;font-weight:800}.cheer-board-levels{margin-top:8px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cheer-level{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:14px;background:#fff;border:2px solid var(--panel-line);cursor:pointer}.cheer-level input{position:absolute;opacity:0;pointer-events:none}.cheer-level b{font-size:14.5px}.cheer-level span{font-size:12px;color:var(--ink-soft)}.cheer-level.is-on{border-color:var(--violet);background:var(--violet-tint)}.cheer-level:focus-within{outline:2px solid var(--violet);outline-offset:2px}.cheer-sound{margin-top:10px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.cheer-sound input{width:18px;height:18px;accent-color:var(--violet)}@keyframes cheer-fade{0%{opacity:0}}@keyframes cheer-jump{0%{opacity:0;transform:translateY(70%) scale(.7)}60%{opacity:1;transform:translateY(-6%) scale(1.04)}to{transform:none}}@keyframes cheer-pop{0%{opacity:0;transform:translateY(14px) scale(.92)}}@keyframes cheer-stamp{0%{opacity:0;transform:scale(1.8) rotate(-12deg)}}@keyframes cheer-glow{to{transform:translateX(-50%) scale(1.08);opacity:.8}}@keyframes cheer-peek-in{0%{opacity:0;transform:translateX(40px)}}@keyframes cheer-wave{25%{transform:rotate(-4deg)}75%{transform:rotate(4deg)}}@media (max-width:640px){.cheer-board-btn{width:34px;padding:0;justify-content:center}.cheer-board-btn-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media (max-width:760px){.cheer-layer{align-items:flex-start;padding:calc(70px + env(safe-area-inset-top)) 16px 16px;background:radial-gradient(ellipse 110% 50% at 50% 20%,rgba(255,214,190,.6) 0,rgba(236,222,255,.35) 50%,transparent 80%)}.cheer-card{grid-template-columns:1fr;justify-items:center;gap:0}.cheer-figure{height:min(30vh,230px)}.cheer-say{margin-bottom:0;margin-top:-8px;padding:18px 18px 14px;border-radius:24px;width:100%}.cheer-say:before{left:50%;top:-11px;bottom:auto;transform:translateX(-50%) rotate(135deg)}.cheer-head{font-size:27px}.cheer-line{font-size:17px}.cheer-layer.is-calm .cheer-figure{height:min(18vh,140px)}.cheer-peek{right:10px;bottom:calc(150px + env(safe-area-inset-bottom))}.cheer-peek-figure{height:104px}.cheer-peek-bubble{margin-bottom:40px;font-size:14px}.cheer-board{padding:22px 16px 18px}.cheer-board-title{font-size:22px}.cheer-board-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cheer-stamp-label{font-size:12px}.cheer-board-levels{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.cheer-figure-wrap,.cheer-glow,.cheer-layer,.cheer-peek,.cheer-peek-figure,.cheer-say,.cheer-sticker{animation:none!important}.cheer-board-btn:hover{transform:none}.bread-loaf{transition:none}}.cheer-layer[data-role=prof],.cheer-peek[data-role=prof]{--role-c:#6a5ae0}.cheer-layer[data-role=writer],.cheer-peek[data-role=writer]{--role-c:#d2557a}.cheer-layer[data-role=proof],.cheer-peek[data-role=proof]{--role-c:#3e8a5d}.cheer-layer[data-role=designer],.cheer-peek[data-role=designer]{--role-c:#c08a10}.cheer-layer[data-role=maker],.cheer-peek[data-role=maker]{--role-c:#3d5bb8}.cheer-figure{height:calc(min(46vh, 380px) / var(--fit, 1));filter:drop-shadow(0 14px 18px rgba(120,80,150,.2)) drop-shadow(0 2px 3px rgba(120,80,150,.12))}.cheer-floor{position:absolute;left:50%;bottom:-4px;width:74%;height:22px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(150,100,170,.28) 0,rgba(255,170,140,.12) 50%,transparent 72%);pointer-events:none}.cheer-say{border:1.5px solid color-mix(in srgb,var(--role-c,var(--violet)) 38%,#ffffff);border-radius:28px 24px 26px 10px/24px 28px 24px 10px;box-shadow:0 4px 0 color-mix(in srgb,var(--role-c,var(--violet)) 16%,transparent),0 22px 44px rgba(120,80,150,.16)}.cheer-say:before{border-left:1.5px solid color-mix(in srgb,var(--role-c,var(--violet)) 38%,#ffffff);border-bottom:1.5px solid color-mix(in srgb,var(--role-c,var(--violet)) 38%,#ffffff)}.cheer-tag{color:var(--role-c,var(--violet))}.cheer-peek-bubble{border:1.5px solid color-mix(in srgb,var(--role-c,var(--violet)) 38%,#ffffff);border-radius:20px 24px 8px 22px/22px 20px 8px 20px;box-shadow:0 3px 0 color-mix(in srgb,var(--role-c,var(--violet)) 16%,transparent),0 14px 30px rgba(120,80,150,.14)}.cheer-peek-name{color:var(--role-c,var(--violet))}.cheer-peek-figure{height:calc(132px / var(--fit, 1));filter:drop-shadow(0 10px 12px rgba(120,80,150,.2))}.cheer-figure-wrap[data-pose=popper]{animation:cheer-in-pop .75s cubic-bezier(.2,1.5,.4,1) both}.cheer-figure-wrap[data-pose=cheer],.cheer-figure-wrap[data-pose=hooray]{animation:cheer-in-leap .95s cubic-bezier(.25,1.3,.4,1) both}.cheer-figure-wrap[data-pose=clap]{animation:cheer-in-bob 1.1s ease-out both}.cheer-figure-wrap[data-pose=flag],.cheer-figure-wrap[data-pose=wave]{animation:cheer-in-sway 1.2s ease-out both;transform-origin:50% 100%}.cheer-figure-wrap[data-pose=wow]{animation:cheer-in-pop .6s cubic-bezier(.2,1.6,.4,1) both}.cheer-figure-wrap[data-pose=give],.cheer-figure-wrap[data-pose=glasses],.cheer-figure-wrap[data-pose=hug],.cheer-figure-wrap[data-pose=hugbook],.cheer-figure-wrap[data-pose=idea],.cheer-figure-wrap[data-pose=nod],.cheer-figure-wrap[data-pose=thumb],.cheer-figure-wrap[data-pose=up]{animation:cheer-in-soft .7s cubic-bezier(.3,1.25,.5,1) both}.cheer-figure,.cheer-peek-figure{animation:cheer-breathe 3.6s ease-in-out 1s infinite;transform-origin:50% 100%}.cheer-peek[data-pose=wave] .cheer-peek-figure{animation:cheer-wave 1.4s ease-in-out .4s 2,cheer-breathe 3.6s ease-in-out 3.2s infinite}.cheer-peek.is-edge{right:0;animation:cheer-peek-edge .6s cubic-bezier(.2,1.3,.4,1) both}.cheer-peek.is-edge .cheer-peek-figure{height:150px;margin-left:-2px;transform-origin:100% 60%;animation:cheer-peek-tilt 3.4s ease-in-out .6s infinite}.cheer-peek.is-edge .cheer-peek-bubble{margin-bottom:70px}@keyframes cheer-in-pop{0%{opacity:0;transform:translateY(18%) scale(.55) rotate(-6deg)}55%{opacity:1;transform:translateY(-4%) scale(1.07) rotate(2deg)}to{transform:none}}@keyframes cheer-in-leap{0%{opacity:0;transform:translateY(60%) scale(.8)}45%{opacity:1;transform:translateY(-12%) scale(1.03)}70%{transform:translateY(2%) scale(.99,1.01)}to{transform:none}}@keyframes cheer-in-bob{0%{opacity:0;transform:translateY(30%)}35%{opacity:1;transform:translateY(-5%)}55%{transform:translateY(1%)}75%{transform:translateY(-3%)}to{transform:none}}@keyframes cheer-in-sway{0%{opacity:0;transform:translateY(16%) rotate(-5deg)}40%{opacity:1;transform:translateY(-2%) rotate(3deg)}70%{transform:rotate(-1.5deg)}to{transform:none}}@keyframes cheer-in-soft{0%{opacity:0;transform:translateY(12%) scale(.94)}to{opacity:1;transform:none}}@keyframes cheer-breathe{0%,to{transform:none}50%{transform:translateY(-1.2%) scale(1.004,.996)}}@keyframes cheer-peek-edge{0%{opacity:0;transform:translateX(60px)}}@keyframes cheer-peek-tilt{0%,to{transform:none}50%{transform:rotate(-2.5deg)}}.cheer-layer.is-calm .cheer-figure{height:calc(min(24vh, 180px) / var(--fit, 1))}.cheer-layer.is-calm .cheer-figure,.cheer-layer.is-calm .cheer-figure-wrap,.cheer-peek.is-calm .cheer-peek-figure{animation:none}@media (max-width:760px){.cheer-figure{height:calc(min(30vh, 230px) / var(--fit, 1))}.cheer-layer.is-calm .cheer-figure{height:calc(min(18vh, 140px) / var(--fit, 1))}.cheer-peek-figure{height:calc(104px / var(--fit, 1))}.cheer-peek.is-edge{right:0}.cheer-peek.is-edge .cheer-peek-figure{height:118px}.cheer-peek.is-edge .cheer-peek-bubble{margin-bottom:56px}}@media (prefers-reduced-motion:reduce){.cheer-figure,.cheer-figure-wrap[data-pose],.cheer-peek-figure,.cheer-peek.is-edge,.cheer-peek.is-edge .cheer-peek-figure{animation:none!important}}.cheer-glow{width:88%;bottom:2%;opacity:.55;background:radial-gradient(circle,rgba(255,236,190,.8) 0,rgba(255,200,170,.32) 42%,transparent 68%)}.cheer-peek-bubble{position:relative}.cheer-peek-bubble:after{content:"";position:absolute;right:-8px;bottom:14px;width:14px;height:14px;background:#fff;border-right:1.5px solid color-mix(in srgb,var(--role-c,var(--violet)) 38%,#ffffff);border-bottom:1.5px solid color-mix(in srgb,var(--role-c,var(--violet)) 38%,#ffffff);border-radius:0 0 4px 0;transform:rotate(-45deg)}.cheer-peek.is-edge{align-items:center}.cheer-peek.is-edge .cheer-peek-bubble{margin-bottom:0;margin-right:4px}.cheer-peek.is-edge .cheer-peek-bubble:after{bottom:auto;top:calc(50% - 7px)}@media (max-width:760px){.cheer-figure{height:calc(min(24vh, 190px) / var(--fit, 1))}.cheer-peek.is-edge .cheer-peek-bubble{margin-bottom:0}}