:root{--paper: #f4f1ea;--slab: #e9e4d8;--ink: #2b2a28;--ink-soft: #6d685f;--card: #fbf9f4;--line: #d8d1c1;--side1: #e07a5f;--side2: #3d5a80;--green: #5b9a68;--yellow: #e2b33c;--red: #c8553d;--truth: #c8553d;--shadow: 0 6px 24px rgba(60, 50, 30, .14), 0 1px 3px rgba(60, 50, 30, .12);--top: 52px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--paper);-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--paper);overscroll-behavior:none}body{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}button{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 14px;min-height:44px;cursor:pointer;transition:transform .12s,box-shadow .12s,background .12s}button:hover{transform:translateY(-1px);box-shadow:var(--shadow)}button:active{transform:translateY(1px);box-shadow:none}button:focus-visible{outline:2px solid var(--side2);outline-offset:2px}button.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}button.ghost{background:transparent;border-color:transparent;color:var(--ink-soft)}button.icon{min-width:40px;min-height:40px;padding:6px;border-radius:50%;font-size:18px;line-height:1}#topbar{position:fixed;inset:0 0 auto;height:var(--top);z-index:20;display:flex;align-items:center;gap:10px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));background:linear-gradient(var(--paper) 70%,rgba(244,241,234,0))}.brand{font-weight:800;letter-spacing:-.02em;font-size:18px}.chip{font-size:13px;padding:4px 10px;border-radius:999px;background:var(--slab);color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw}.chip:empty{display:none}.spacer{flex:1}.round{font-size:13px;color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap}.score{font-weight:800;font-size:20px;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:3px}.score small{font-size:11px;font-weight:600;color:var(--ink-soft)}#stage{position:fixed;inset:0}#stage canvas{display:block;width:100%;height:100%}#labels{position:fixed;inset:0;pointer-events:none;z-index:5}.pin,.value,.share{position:absolute;left:0;top:0;white-space:nowrap;pointer-events:none;will-change:transform}.pin{translate:-50% calc(-100% - 10px);font-size:13px;font-weight:600;padding:4px 9px;border-radius:8px;background:var(--card);box-shadow:var(--shadow);border:1px solid var(--line);transition:background .12s,color .12s,scale .12s}.pin:after{content:"";position:absolute;left:50%;bottom:-9px;width:1.5px;height:9px;background:var(--ink)}.pin.active{background:var(--ink);color:var(--paper);scale:1.06}.pin.below{translate:-50% 14px}.pin.below:after{bottom:auto;top:-9px}.value{translate:-50% calc(-100% - 6px);font-weight:800;font-size:15px;padding:3px 8px;border-radius:8px;background:var(--card);box-shadow:var(--shadow);text-align:center}.value small{display:block;font-size:11px;font-weight:600;color:var(--ink-soft)}.value.winner{outline:2px solid var(--ink)}.share{translate:-50% -50%;font-weight:900;font-size:clamp(20px,5vw,34px);color:var(--paper);text-shadow:0 2px 8px rgba(0,0,0,.35)}.ruler{position:absolute;width:2px;background:var(--ink);pointer-events:none}.ruler .tick{position:absolute;left:6px;font-size:11px;color:var(--ink-soft);white-space:nowrap;translate:0 50%}.ruler .tick:before{content:"";position:absolute;left:-8px;top:50%;width:6px;height:1.5px;background:var(--ink)}.valuetag{position:absolute;left:0;top:0;translate:-100% -50%;font-weight:800;font-size:16px;padding:4px 10px;border-radius:8px;background:var(--ink);color:var(--paper);pointer-events:none;white-space:nowrap;box-shadow:var(--shadow)}#question{position:fixed;z-index:10;left:50%;top:calc(var(--top) + 6px);translate:-50% -10px;opacity:0;width:min(640px,calc(100vw - 24px));padding:12px 16px;border-radius:14px;background:var(--card);box-shadow:var(--shadow);font-size:clamp(15px,2.2vw,18px);font-weight:600;line-height:1.35;transition:opacity .25s,translate .25s;pointer-events:none}#question.show{opacity:1;translate:-50% 0}#question .welcome{font-size:12px;font-weight:500;color:var(--ink-soft);margin-bottom:4px}#hint{position:fixed;z-index:11;left:50%;top:calc(var(--top) + 96px);translate:-50% 0;opacity:0;padding:8px 14px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:14px;transition:opacity .2s;pointer-events:none;max-width:calc(100vw - 24px);text-align:center}#hint.show{opacity:1}#pop{position:fixed;z-index:12;left:50%;top:38%;translate:-50% -50%;text-align:center;pointer-events:none;opacity:0;scale:.8;transition:opacity .2s,scale .25s cubic-bezier(.2,1.6,.4,1)}#pop.show{opacity:1;scale:1}#pop .v-word{font-size:clamp(28px,6vw,46px);font-weight:900;letter-spacing:-.02em;text-shadow:0 2px 0 var(--paper),0 0 18px var(--paper)}#pop .v-points{font-size:22px;font-weight:800}#pop.green .v-word{color:var(--green)}#pop.yellow .v-word{color:#b48a1c}#pop.red .v-word{color:var(--red)}#sheet{position:fixed;z-index:15;left:50%;bottom:0;width:min(560px,100vw);translate:-50% 105%;transition:translate .32s cubic-bezier(.2,.9,.3,1);padding:0 12px max(12px,env(safe-area-inset-bottom))}#sheet.open{translate:-50% 0}.card{background:var(--card);border-radius:18px;box-shadow:var(--shadow);padding:16px 18px;border:1px solid var(--line);max-height:52vh;overflow:auto}.fact{cursor:pointer}.fact-head{font-weight:900;font-size:20px}.fact-head.green{color:var(--green)}.fact-head.yellow{color:#b48a1c}.fact-head.red{color:var(--red)}.fact-text{font-size:16px;line-height:1.45;margin:8px 0}.source{font-size:11px;color:var(--ink-soft);margin:6px 0 12px}.card button{width:100%}.s-head{font-weight:700;color:var(--ink-soft);font-size:14px}.s-total{margin:4px 0 8px;font-weight:700;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.s-total .big{font-size:44px;font-weight:900;letter-spacing:-.03em}.stamp{font-size:12px;font-weight:800;color:var(--red);border:2px solid var(--red);border-radius:6px;padding:2px 6px;rotate:-4deg}.s-rows{list-style:none;padding:0;margin:0 0 8px}.s-rows li{display:flex;gap:10px;align-items:center;padding:4px 0;border-bottom:1px dashed var(--line)}.s-rows .r-title{flex:1;color:var(--ink-soft)}.s-meta{font-size:13px;color:var(--ink-soft);margin:4px 0}.s-meta.warn{color:var(--red)}.s-actions{display:grid;gap:8px;margin-top:10px}.picker .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;margin:10px 0}.picker .grid button{width:auto;font-size:14px}#modal{position:fixed;inset:0;z-index:30;display:none;align-items:center;justify-content:center;background:#2b2a2859;padding:16px}#modal.show{display:flex}#modal .card{width:min(560px,100%);max-height:80vh}.credits ul{padding-left:18px;font-size:13px;line-height:1.5}.credits .lic{color:var(--ink-soft);font-size:11px;white-space:nowrap}#message{position:fixed;inset:0;z-index:25;display:none;align-items:center;justify-content:center;text-align:center;padding:24px;font-weight:600;color:var(--ink-soft);background:var(--paper)}#message.show{display:flex}@media(max-width:520px){:root{--top: 48px}#topbar{gap:6px}.brand{display:none}.chip{max-width:46vw;font-size:14px;font-weight:700;color:var(--ink)}.round{white-space:nowrap}button.icon{min-width:36px;min-height:36px;font-size:16px}#hint{top:calc(var(--top) + 120px)}}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}.chip.free{background:var(--side2);color:var(--paper)}.rate{display:flex;align-items:center;gap:6px;margin:2px 0 10px;font-size:14px;color:var(--ink-soft);position:relative;transition:opacity .4s,max-height .4s;max-height:60px;overflow:hidden}.rate span{flex:1}.rate .icon{width:44px;min-height:40px;font-size:18px}.rate-timer{position:absolute;left:0;bottom:0;height:2px;background:var(--line);width:100%;transform-origin:left;animation:rate-countdown 10s linear forwards}@keyframes rate-countdown{to{transform:scaleX(0)}}.rate.gone{opacity:0;pointer-events:none}.settings .sub{margin-top:14px}.sw-list{display:grid;gap:6px;margin:8px 0}.sw-list.cats{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.switch{display:flex;align-items:center;gap:10px;text-align:left;width:100%}.switch .knob{flex:none;width:34px;height:20px;border-radius:999px;background:var(--line);position:relative;transition:background .15s}.switch .knob:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--card);box-shadow:0 1px 2px #00000040;transition:left .15s}.switch.on .knob{background:var(--green)}.switch.on .knob:after{left:16px}.sw-label small{display:block;font-size:11px;color:var(--ink-soft)}.lm{position:absolute;left:0;top:0;translate:-50% -100%;font-size:11px;font-style:italic;font-weight:600;color:var(--ink-soft);white-space:nowrap;pointer-events:none;padding:1px 6px;border-radius:6px;background:#fbf9f4d1;will-change:transform}.lm.faded{opacity:0}.card.summary,.card.picker{max-height:calc(100dvh - var(--top) - 16px)}.summary{padding:12px 16px}.summary .s-total{margin:0 0 4px}.summary .s-total .big{font-size:38px}.summary .s-rows{margin-bottom:4px}.summary .s-rows li{padding:2px 0;font-size:14px}.summary .s-meta{margin:2px 0}.summary .s-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.summary .s-actions button{min-height:42px;padding:8px 10px;font-size:14px}.summary .s-actions .primary{grid-column:1 / -1}.f-top{display:flex;align-items:center;gap:10px}.f-emoji{font-size:34px;line-height:1;animation:emoji-pop .45s cubic-bezier(.2,1.8,.4,1) both}.f-verdict{font-size:22px;font-weight:900;letter-spacing:-.02em;flex:1}.f-points{font-size:30px;font-weight:900;font-variant-numeric:tabular-nums}.f-top.green .f-verdict,.f-top.green .f-points{color:var(--green)}.f-top.yellow .f-verdict,.f-top.yellow .f-points{color:#b48a1c}.f-top.red .f-verdict,.f-top.red .f-points{color:var(--red)}.f-topic{font-size:13px;color:var(--ink-soft);font-weight:600;margin:2px 0 10px}.f-note{font-weight:500;font-size:12px;opacity:.85}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.tile{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;background:var(--paper);border-radius:12px;padding:8px 10px;border:1px solid var(--line);animation:tile-in .32s cubic-bezier(.2,1.5,.4,1) both}.tile:nth-child(2){animation-delay:.05s}.tile:nth-child(3){animation-delay:.1s}.tile:nth-child(4){animation-delay:.15s}.t-icon{grid-row:span 2;font-size:22px;line-height:1}.t-label{font-size:11px;line-height:1.2;color:var(--ink-soft);font-weight:600;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.t-value{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile.good .t-value{color:var(--green)}.tile.bad .t-value{color:var(--red)}.tile.you .t-value{color:var(--side2)}.tile.truth .t-value{color:var(--truth)}.tile.side1 .t-value{color:var(--side1)}.tile.side2 .t-value{color:var(--side2)}@keyframes tile-in{0%{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:none}}@keyframes emoji-pop{0%{transform:scale(0) rotate(-30deg)}to{transform:none}}#sheet.open .card{animation:card-bounce .38s cubic-bezier(.2,1.4,.4,1) both}@keyframes card-bounce{0%{transform:translateY(40px)}to{transform:none}}#pop{top:40%;transition:none;scale:1;opacity:0}#pop.show{opacity:1}#pop .v-word{font-size:clamp(40px,9vw,76px);font-weight:900;letter-spacing:-.03em;rotate:-7deg;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:4px 5px 0 var(--ink);animation:slam .32s cubic-bezier(.2,1.9,.35,1) both}#pop .v-points{font-size:clamp(44px,10vw,84px);font-weight:900;color:var(--paper);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:3px 4px 0 var(--ink);animation:slam .34s .1s cubic-bezier(.2,2,.35,1) both}#pop.green .v-word{color:#7ccf8a}#pop.yellow .v-word{color:#ffd166}#pop.red .v-word{color:#ff8a73;rotate:5deg}#pop.big .v-word{font-size:clamp(48px,11vw,96px)}#pop .burst{position:absolute;left:50%;top:50%;width:140vmax;height:140vmax;translate:-50% -50%;z-index:-1;background:repeating-conic-gradient(rgba(43,42,40,.16) 0 2deg,transparent 2deg 9deg);-webkit-mask:radial-gradient(circle,transparent 14%,#000 26%,transparent 60%);mask:radial-gradient(circle,transparent 14%,#000 26%,transparent 60%);animation:burst .55s ease-out both}#pop.red .burst{display:none}@keyframes slam{0%{transform:scale(3);opacity:0}60%{transform:scale(.88);opacity:1}to{transform:scale(1)}}@keyframes burst{0%{opacity:0;transform:scale(.6) rotate(-6deg)}30%{opacity:1}to{opacity:0;transform:scale(1.15) rotate(4deg)}}.star{position:fixed;z-index:13;left:50%;top:40%;font-size:26px;color:#ffd166;-webkit-text-stroke:1.5px var(--ink);pointer-events:none;animation:star .75s cubic-bezier(.15,.8,.3,1) forwards}@keyframes star{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.1) rotate(var(--rot));opacity:0}}.flash{position:fixed;inset:0;z-index:14;background:#fff;pointer-events:none;animation:flash .26s ease-out forwards}@keyframes flash{0%{opacity:.55}to{opacity:0}}#stage.shake{animation:shake .3s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate(calc(-2px * var(--shake, 1)),calc(1px * var(--shake, 1)))}20%,80%{transform:translate(calc(5px * var(--shake, 1)),calc(-2px * var(--shake, 1)))}30%,50%,70%{transform:translate(calc(-8px * var(--shake, 1)),calc(3px * var(--shake, 1)))}40%,60%{transform:translate(calc(8px * var(--shake, 1)),calc(-3px * var(--shake, 1)))}}#stage.droop{animation:droop .5s ease-in-out both}@keyframes droop{0%,to{transform:none}30%{transform:translateY(6px) rotate(-.6deg)}60%{transform:translateY(2px) rotate(.4deg)}}.fly{position:fixed;left:0;top:0;z-index:21;font-weight:900;font-size:34px;color:var(--paper);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;pointer-events:none}.score.bump{animation:bump .35s cubic-bezier(.2,2,.4,1)}@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.45);color:var(--green)}to{transform:scale(1)}}.qtimer{height:5px;margin-top:8px;border-radius:99px;background:var(--line);overflow:hidden}.qtimer>div{height:100%;transform-origin:left;border-radius:99px;transition:background .3s}.qtimer.urgent{animation:urgent .5s ease-in-out infinite}@keyframes urgent{50%{transform:scaleY(1.8)}}#question.timeout{animation:shake .3s both}@media(prefers-reduced-motion:reduce){#pop .v-word,#pop .v-points,.tile,.f-emoji,#sheet.open .card{animation:none!important}#pop .burst{display:none}}#devpanel{position:fixed;z-index:40;left:8px;bottom:8px;font-size:12px;max-width:min(340px,calc(100vw - 16px))}#devpanel .dp-toggle{min-height:34px;padding:4px 10px;font-size:13px;box-shadow:var(--shadow)}#devpanel .dp-body{display:none;margin-top:6px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:8px 10px;max-height:70vh;overflow:auto}#devpanel.open .dp-body{display:block}#devpanel .dp-group{font-weight:800;margin:8px 0 2px;color:var(--ink-soft)}#devpanel .dp-row{display:grid;grid-template-columns:1fr 120px 44px;align-items:center;gap:6px;padding:2px 0}#devpanel input[type=range]{width:100%}#devpanel output{font-variant-numeric:tabular-nums;text-align:right}#devpanel .dp-actions{display:flex;gap:6px;margin-top:8px}#devpanel .dp-actions button{flex:1;min-height:34px;padding:4px 8px;font-size:12px}:root{--msize: var(--msize-base, 72px)}@media(max-width:520px){:root{--msize: calc(var(--msize-base, 72px) * .83)}}.mascot{position:absolute;left:0;top:0;width:var(--msize);pointer-events:none;will-change:transform}.mascot .m-body{translate:-50% -100%;position:relative}.mascot .m-rig{display:block;width:100%;height:auto;overflow:visible;transform-origin:50% 100%;animation:m-bob 1.7s ease-in-out infinite;filter:drop-shadow(0 3px 2px rgba(43,42,40,.18))}.mascot.flip .m-rig{scale:-1 1}.mascot .m-mouth-open{opacity:0}.mascot.talking .m-mouth-open{animation:m-talk .26s steps(1) infinite}.mascot.talking .m-mouth-closed{animation:m-talk .26s steps(1) infinite reverse}.mascot.voiced .m-mouth-open{animation:none;opacity:var(--mouth, 0)}.mascot.voiced .m-mouth-closed{animation:none;opacity:calc(1 - var(--mouth, 0))}.mascot .m-lids{transform-box:fill-box;transform-origin:50% 0;animation:m-blink 4.2s infinite}.mascot .m-bells{transform-box:fill-box;transform-origin:50% 100%}.mascot.land .m-rig{animation:m-land .2s ease-out}.mascot.land .m-bells,.mascot.jingle .m-bells{animation:m-jingle .3s ease-out}.mascot.running .m-rig{animation:m-run .22s ease-in-out infinite}.mascot.pop .m-rig{animation:m-pop .32s cubic-bezier(.2,1.6,.4,1)}.mascot.sink .m-rig{animation:m-sink .26s ease-in forwards}@keyframes m-bob{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-2px) scaleY(1.025)}}@keyframes m-talk{0%{opacity:1}50%{opacity:0}}@keyframes m-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(2.6)}}@keyframes m-land{0%{transform:scale(1.18,.8)}60%{transform:scale(.94,1.08)}to{transform:none}}@keyframes m-jingle{0%,to{transform:rotate(0)}30%{transform:rotate(-14deg)}65%{transform:rotate(10deg)}}@keyframes m-run{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-5px) rotate(3deg)}}@keyframes m-pop{0%{transform:scale(.2,0)}to{transform:none}}@keyframes m-sink{to{transform:scale(.3,0);opacity:0}}.m-bubble{position:absolute;left:50%;bottom:calc(100% + 10px);translate:calc(-50% + var(--bx, 0px)) 0;width:max-content;max-width:min(260px,calc(100vw - 24px));padding:8px 12px 9px;border-radius:16px;background:#fff;border:2.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font-size:14.5px;font-weight:650;line-height:1.32;color:var(--ink);white-space:normal;opacity:0;scale:.6;transform-origin:50% 100%;transition:opacity .14s,scale .22s cubic-bezier(.2,1.6,.4,1)}.m-bubble.show{opacity:1;scale:1}.m-bubble:after{content:"";position:absolute;left:calc(50% - var(--bx, 0px) - 8px);bottom:-11px;width:14px;height:14px;background:#fff;border:solid var(--ink);border-width:0 2.5px 2.5px 0;rotate:45deg;translate:0 -3px}.m-bubble.below{bottom:auto;top:calc(100% + 8px);transform-origin:50% 0}.m-bubble.below:after{bottom:auto;top:-11px;rotate:225deg;translate:0 3px}.m-name{display:block;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--red);margin-bottom:1px}.mascot.kalle .m-name{color:#c9652f}.mascot.schimmel .m-name{color:#3f6b5a}#mascot-cameo{position:fixed;left:8px;z-index:16;pointer-events:none;width:auto}#mascot-cameo.top{top:calc(var(--top) + 10px)}#mascot-cameo.bottom{bottom:max(14px,env(safe-area-inset-bottom))}#mascot-cameo .mascot{position:relative;translate:-130% 0;transition:translate .32s cubic-bezier(.2,1.3,.4,1)}#mascot-cameo .mascot.in,#mascot-cameo .mascot .m-body{translate:0 0}#mascot-cameo .m-bubble{left:calc(100% + 6px);bottom:40%;translate:0 0;max-width:min(280px,calc(100vw - var(--msize) - 40px));transform-origin:0 100%}#mascot-cameo .m-bubble:after{left:-9px;bottom:10px;rotate:135deg;translate:0 0}#mascot-cameo.top .m-bubble{bottom:auto;top:6px;transform-origin:0 0}#mascot-cameo.top .m-bubble:after{bottom:auto;top:14px}.fact{position:relative}.m-stamp{position:absolute;right:18px;top:50px;padding:3px 10px 4px;border:3px solid currentColor;border-radius:6px;font-weight:900;font-size:15px;letter-spacing:.08em;rotate:-9deg;opacity:0;scale:2.4;pointer-events:none;text-align:center;line-height:1.05;mix-blend-mode:multiply;transition:opacity .08s,scale .16s cubic-bezier(.3,1.4,.5,1);max-width:min(46%,190px)}.m-stamp.perfect{color:#2f5f9e;outline:2px solid currentColor;outline-offset:2px}.m-stamp small{display:block;font-size:7.5px;font-weight:700;letter-spacing:.06em;opacity:.8}.m-stamp.show{opacity:.86;scale:1}.m-stamp.ok{color:#3f7d4c}.m-stamp.meh{color:#a37a12}.m-stamp.no,.m-stamp.late{color:#b8432d}@media(prefers-reduced-motion:reduce){.mascot .m-rig,.mascot.talking .m-mouth-open,.mascot .m-lids{animation:none!important}.mascot.talking .m-mouth-open{opacity:1}}
