@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-devanagari-wght-normal-B4j4n2PV.woff2) format("woff2-variations");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-vietnamese-wght-normal-C4ZonJY6.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-latin-ext-wght-normal-Dz43yst_.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/baloo-2-latin-wght-normal-B_TVFhwJ.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0c0d10;--bg-2: #14161b;--bg-3: #1c1f26;--line: #2a2e37;--red: #dc2626;--red-hi: #ef4444;--amber: #f5a623;--green: #2fbf71;--blue: #58abf5;--ink: #f4f2ee;--ink-dim: #9aa0ab;--shadow: 0 10px 30px rgba(0, 0, 0, .45);--r-lg: 22px;--r-md: 14px;--r-sm: 9px;--font-head: "Baloo 2 Variable", "Baloo 2", system-ui, sans-serif;--font-body: system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(1200px 500px at 50% -10%,rgba(220,38,38,.1),transparent 60%),radial-gradient(900px 500px at 90% 110%,rgba(245,166,35,.05),transparent 60%),var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.55;min-height:100svh;overflow-x:hidden}#app{max-width:720px;margin:0 auto;padding:0 16px calc(28px + env(safe-area-inset-bottom))}#fx-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:999}h1,h2,h3,.display{font-family:var(--font-head);line-height:1.12;margin:0}h1{font-size:clamp(1.9rem,7vw,3rem);font-weight:800;letter-spacing:-.01em}h2{font-size:clamp(1.35rem,5vw,1.9rem);font-weight:700}h3{font-size:1.12rem;font-weight:700}p{margin:.5em 0}img{max-width:100%;display:block}button{font-family:inherit}::selection{background:var(--red);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:12px 22px;border:none;border-radius:var(--r-md);font-family:var(--font-head);font-size:1.05rem;font-weight:700;color:#fff;background:var(--red);cursor:pointer;text-decoration:none;box-shadow:0 5px #7f1d1d,var(--shadow);transition:transform .08s ease,box-shadow .08s ease,background .2s;touch-action:manipulation}.btn:active{transform:translateY(4px);box-shadow:0 1px #7f1d1d}.btn.ghost{background:var(--bg-3);box-shadow:0 5px #000a;color:var(--ink)}.btn.ghost:active{box-shadow:0 1px #000a}.btn.green{background:var(--green);box-shadow:0 5px #14663c,var(--shadow)}.btn.green:active{box-shadow:0 1px #14663c}.btn.small{min-height:44px;padding:8px 16px;font-size:.95rem}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:focus-visible,a:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.panel{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--shadow)}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--bg-3);border:1px solid var(--line);font-size:.82rem;font-weight:600;color:var(--ink-dim)}.chip.hot{color:var(--amber);border-color:#f5a62366}.chip.ok{color:var(--green);border-color:#2fbf7166}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:10px;padding:12px 0 10px;background:linear-gradient(var(--bg) 75%,transparent)}.topbar .back{flex:0 0 auto;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--bg-2);color:var(--ink);font-size:1.25rem;cursor:pointer;display:grid;place-items:center}.topbar .t-title{flex:1;font-family:var(--font-head);font-weight:700;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tacho{display:flex;align-items:center;gap:8px}.tacho .bar{width:84px;height:10px;border-radius:99px;background:var(--bg-3);border:1px solid var(--line);overflow:hidden}.tacho .fill{height:100%;background:linear-gradient(90deg,var(--red),var(--amber));border-radius:99px;transition:width .6s cubic-bezier(.2,.9,.3,1.3)}.tacho .num{font-family:var(--font-head);font-weight:800;font-size:.92rem;color:var(--amber);min-width:3ch}.hero{text-align:center;padding:34px 0 8px}.hero .mascot-hero{width:min(190px,46vw);margin:0 auto 6px;filter:drop-shadow(0 14px 28px rgba(220,38,38,.25))}.hero .sub{color:var(--ink-dim);max-width:46ch;margin:10px auto 0}.hero .kicker{display:inline-block;font-family:var(--font-head);font-weight:700;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);border:1.5px dashed rgba(245,166,35,.5);padding:4px 14px;border-radius:999px;margin-bottom:14px}.world{margin-top:34px}.world-head{display:flex;align-items:center;gap:12px;margin-bottom:6px}.world-head .ampel{display:flex;flex-direction:column;gap:3px;background:#000;padding:5px 4px;border-radius:6px;border:1px solid var(--line)}.world-head .ampel i{width:9px;height:9px;border-radius:50%;background:#2a2e37}.world-head .ampel i.on-r{background:var(--red);box-shadow:0 0 8px var(--red)}.world-head .ampel i.on-y{background:var(--amber);box-shadow:0 0 8px var(--amber)}.world-head .ampel i.on-g{background:var(--green);box-shadow:0 0 8px var(--green)}.world-head .w-label{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);font-weight:700}.road{position:relative;padding:6px 0 6px 34px}.road:before{content:"";position:absolute;left:12px;top:0;bottom:0;width:8px;background:var(--bg-3);border-radius:8px}.road:after{content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;background:repeating-linear-gradient(180deg,var(--amber) 0 14px,transparent 14px 30px);opacity:.8}.station{position:relative;display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px;margin:14px 0;cursor:pointer;color:var(--ink);font-family:inherit;font-size:1rem;transition:transform .15s ease,border-color .2s;box-shadow:var(--shadow)}.station:hover{transform:translate(4px);border-color:#dc26268c}.station .sign{flex:0 0 auto;width:58px;height:58px;border-radius:14px;display:grid;place-items:center;font-size:1.6rem;background:var(--bg-3);border:2px solid var(--line);font-family:var(--font-head);font-weight:800}.station.done .sign{border-color:var(--green);background:#2fbf711f}.station .s-body{flex:1;min-width:0}.station .s-name{font-family:var(--font-head);font-weight:700;font-size:1.08rem}.station .s-desc{color:var(--ink-dim);font-size:.86rem;margin-top:1px}.station .s-meta{display:flex;gap:6px;margin-top:7px;flex-wrap:wrap}.station .stamp-done{position:absolute;right:14px;top:-9px;font-family:var(--font-head);font-weight:800;font-size:.72rem;color:var(--green);border:2px solid var(--green);border-radius:6px;padding:1px 8px;transform:rotate(7deg);background:var(--bg);letter-spacing:.06em}.exam-gate{margin-top:30px;text-align:center;position:relative;border:2px dashed rgba(220,38,38,.5);border-radius:var(--r-lg);padding:26px 18px;background:linear-gradient(180deg,rgba(220,38,38,.08),transparent)}.exam-gate.locked{border-color:var(--line)}.exam-gate .lock-note{color:var(--ink-dim);font-size:.9rem;margin-top:8px}.game{padding-top:6px}.game .intro{text-align:center;padding:8px 0 16px}.game .intro .mascot{width:110px;margin:0 auto 8px}.game .task-chip{margin:12px auto 0;display:inline-flex}.round-head{display:flex;justify-content:space-between;align-items:center;margin:12px 0 8px}.round-head .score{font-family:var(--font-head);font-weight:800;color:var(--amber)}input[type=text],textarea{width:100%;min-height:54px;padding:13px 16px;border-radius:var(--r-md);border:2px solid var(--line);background:var(--bg-3);color:var(--ink);font-size:1.05rem;font-family:inherit}input[type=text]:focus,textarea:focus{outline:none;border-color:var(--red)}.shredder-machine{position:relative;margin:14px 0 6px;padding:12px;border-radius:var(--r-lg);background:var(--bg-2);border:1px solid var(--line)}.shredder-slit{height:8px;border-radius:6px;background:#000;margin:12px 6px 14px;border:1px solid var(--line)}.token-out{display:flex;flex-wrap:wrap;gap:7px;min-height:64px;padding:4px 2px}.token-block{padding:6px 10px;border-radius:9px;font-weight:700;font-size:.98rem;font-family:ui-monospace,SF Mono,monospace;animation:tok-in .35s cubic-bezier(.2,1.4,.4,1) backwards;white-space:pre;border:1px solid rgba(255,255,255,.14)}@keyframes tok-in{0%{transform:translateY(-18px) scale(.4);opacity:0}}.token-count{display:flex;gap:10px;align-items:baseline;margin-top:8px;flex-wrap:wrap}.token-count .big{font-family:var(--font-head);font-size:2rem;font-weight:800;color:var(--amber)}.arena-sentence{font-family:var(--font-head);font-size:1.45rem;font-weight:700;padding:18px;border-radius:var(--r-lg);background:var(--bg-2);border:1px solid var(--line);margin:10px 0}.arena-sentence .gap{color:var(--amber);border-bottom:3px dashed var(--amber);padding:0 6px}.prob-row{display:flex;align-items:center;gap:10px;margin:8px 0;animation:tok-in .4s backwards}.prob-row .word{flex:0 0 108px;font-weight:700;font-family:var(--font-head);text-align:right;font-size:.98rem;overflow:hidden;text-overflow:ellipsis}.prob-row .track{flex:1;height:26px;background:var(--bg-3);border-radius:8px;overflow:hidden}.prob-row .pfill{height:100%;border-radius:8px;background:var(--bg-3);display:flex;align-items:center;justify-content:flex-end;padding-right:8px;font-size:.78rem;font-weight:700;color:#fff;background:linear-gradient(90deg,#7f1d1d,var(--red));transition:width .8s cubic-bezier(.2,.9,.3,1.2);width:0}.prob-row.hit .pfill{background:linear-gradient(90deg,#14663c,var(--green))}.prob-row.hit .word{color:var(--green)}.claim{display:block;width:100%;text-align:left;margin:9px 0;padding:14px 16px;border-radius:var(--r-md);border:2px solid var(--line);background:var(--bg-2);color:var(--ink);font-size:.98rem;cursor:pointer;font-family:inherit;transition:border-color .15s,transform .1s}.claim:hover{border-color:var(--amber)}.claim.right{border-color:var(--green);background:#2fbf711a}.claim.wrong{border-color:var(--red);background:#dc26261f;animation:shake .4s}.claim.reveal{border-color:var(--amber);background:#f5a62317}.claim:disabled{cursor:default;opacity:.92}@keyframes shake{25%{transform:translate(-7px)}75%{transform:translate(7px)}}.verify-note{margin-top:12px;padding:12px 14px;border-radius:var(--r-md);background:#58abf514;border:1px solid rgba(88,171,245,.3);font-size:.9rem}.dock-area{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0}.dock-block{padding:10px 15px;min-height:46px;border-radius:12px;cursor:pointer;font-family:var(--font-head);font-weight:700;font-size:.95rem;background:var(--bg-3);color:var(--ink);border:2px dashed var(--line);transition:all .18s}.dock-block.docked{border-style:solid;border-color:var(--red);background:#dc262626;box-shadow:0 0 12px #dc262640}.prompt-preview{padding:14px 16px;border-radius:var(--r-md);background:#000;border:1px solid var(--line);font-family:ui-monospace,monospace;font-size:.88rem;color:var(--green);min-height:60px;white-space:pre-wrap}.quality-meter{display:flex;align-items:center;gap:8px;margin:12px 0 6px}.quality-meter .q-seg{flex:1;height:12px;border-radius:6px;background:var(--bg-3);border:1px solid var(--line);transition:background .3s}.quality-meter .q-seg.on-1{background:var(--red)}.quality-meter .q-seg.on-2{background:var(--amber)}.quality-meter .q-seg.on-3{background:var(--green);box-shadow:0 0 8px #2fbf7180}.output-box{padding:16px;border-radius:var(--r-md);background:var(--bg-2);border:1px solid var(--line);font-size:.93rem;white-space:pre-wrap;animation:tok-in .3s}.detective-frame{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:#000}.detective-frame img{width:100%;aspect-ratio:4/3;object-fit:cover}.tell-marker{position:absolute;border:3px solid var(--amber);border-radius:50%;box-shadow:0 0 0 2000px #00000073,0 0 18px var(--amber);animation:marker-in .6s cubic-bezier(.2,1.3,.4,1) backwards}@keyframes marker-in{0%{transform:scale(2.4);opacity:0}}.verdict-row{display:flex;gap:10px;margin-top:12px}.verdict-row .btn{flex:1}.agent-pool,.agent-chain{display:flex;flex-wrap:wrap;gap:9px;min-height:62px;padding:10px;border-radius:var(--r-lg)}.agent-pool{background:var(--bg-2);border:1px solid var(--line)}.agent-chain{border:2px dashed rgba(245,166,35,.5);background:#f5a6230a;position:relative}.agent-chain.empty:before{content:"Bausteine hierher ziehen oder antippen";color:var(--ink-dim);font-size:.86rem;position:absolute;inset:0;display:grid;place-items:center}.agent-block{padding:11px 14px;border-radius:12px;cursor:grab;user-select:none;font-family:var(--font-head);font-weight:700;font-size:.92rem;background:var(--bg-3);border:2px solid var(--line);color:var(--ink);touch-action:none;display:inline-flex;align-items:center;gap:7px;min-height:46px}.agent-block.in-chain{border-color:var(--amber);background:#f5a6231f}.agent-block.dragging{opacity:.35}.agent-block .idx{font-size:.74rem;color:var(--amber)}.agent-block.step-active{border-color:var(--green);background:#2fbf712e;box-shadow:0 0 14px #2fbf7166}.drag-ghost{position:fixed;z-index:1000;pointer-events:none;transform:translate(-50%,-50%) rotate(3deg) scale(1.06);opacity:.95;box-shadow:0 18px 40px #0009}.agent-console{margin-top:12px;padding:13px 15px;border-radius:var(--r-md);background:#000;border:1px solid var(--line);font-family:ui-monospace,monospace;font-size:.84rem;min-height:88px;color:var(--green);white-space:pre-wrap}.agent-console .err{color:var(--red-hi)}.scenario-card{animation:tok-in .35s}.scenario-card .s-icon{font-size:2.6rem}.decision{display:block;width:100%;text-align:left;margin:9px 0;padding:14px 16px;border-radius:var(--r-md);border:2px solid var(--line);background:var(--bg-3);color:var(--ink);font-size:.96rem;cursor:pointer;font-family:inherit}.decision:hover{border-color:var(--blue)}.decision.good{border-color:var(--green);background:#2fbf711f}.decision.bad{border-color:var(--red);background:#dc26261f}.overlay{position:fixed;inset:0;z-index:200;background:#050608d1;backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;overflow-y:auto;animation:fade-in .25s}@keyframes fade-in{0%{opacity:0}}.aha-card{width:min(560px,100%);max-height:calc(100svh - 40px);overflow-y:auto;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;box-shadow:0 30px 80px #000000b3;animation:card-in .45s cubic-bezier(.2,1.2,.3,1) backwards}@keyframes card-in{0%{transform:translateY(50px) scale(.92);opacity:0}}.aha-card .aha-ill{width:min(210px,52vw);margin:0 auto 10px;filter:drop-shadow(0 12px 26px rgba(220,38,38,.3))}.aha-card .aha-kicker{text-align:center;color:var(--amber);font-family:var(--font-head);font-weight:800;letter-spacing:.14em;font-size:.76rem;text-transform:uppercase}.aha-card h2{text-align:center;margin:4px 0 10px}.aha-card .kmu{margin:13px 0;padding:13px 15px;border-radius:var(--r-md);background:#58abf512;border-left:4px solid var(--blue);font-size:.93rem}.aha-card .takeaway{margin:13px 0;padding:13px 15px;border-radius:var(--r-md);background:#2fbf7114;border-left:4px solid var(--green);font-weight:600;font-size:.95rem}.aha-card .label{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);display:block;margin-bottom:3px}.xp-gain{text-align:center;font-family:var(--font-head);font-weight:800;font-size:1.3rem;color:var(--amber);margin:8px 0}.exam-progress{display:flex;gap:5px;margin:12px 0}.exam-progress i{flex:1;height:8px;border-radius:4px;background:var(--bg-3)}.exam-progress i.done-ok{background:var(--green)}.exam-progress i.done-no{background:var(--red)}.exam-progress i.now{background:var(--amber);animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.5}}.license-wrap{margin:14px 0}.license-wrap canvas{width:100%;height:auto;border-radius:16px;box-shadow:0 24px 60px #0009,0 0 0 1px var(--line)}.stamp-fx{position:fixed;inset:0;z-index:300;display:grid;place-items:center;pointer-events:none}.stamp-fx .stamp{font-family:var(--font-head);font-weight:800;font-size:clamp(3rem,14vw,6rem);color:var(--green);border:8px solid var(--green);border-radius:18px;padding:6px 30px;transform:rotate(-14deg);animation:stamp-in .5s cubic-bezier(.2,1.6,.3,1) backwards;background:#0c0d1099;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 0 60px #2fbf7180}@keyframes stamp-in{0%{transform:rotate(-14deg) scale(4);opacity:0}}.site-footer{margin-top:44px;padding:22px 0 8px;border-top:1px solid var(--line);color:var(--ink-dim);font-size:.85rem}.site-footer .foot-brand{display:flex;align-items:center;gap:9px;margin-bottom:10px}.site-footer .foot-brand img{width:26px;height:26px}.site-footer a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.site-footer .cta-box{margin:14px 0;padding:14px 16px;border-radius:var(--r-md);background:#dc262612;border:1px solid rgba(220,38,38,.3);color:var(--ink)}.site-footer .credits{font-size:.74rem;margin-top:12px;line-height:1.7}.center{text-align:center}.dim{color:var(--ink-dim)}.mt{margin-top:14px}.row{display:flex;gap:10px;flex-wrap:wrap}.grow{flex:1}.feedback-line{min-height:30px;font-weight:700;font-family:var(--font-head);margin-top:10px}.feedback-line.ok{color:var(--green)}.feedback-line.no{color:var(--red-hi)}.sound-toggle{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--bg-2);color:var(--ink);cursor:pointer;font-size:1.1rem;display:grid;place-items:center}@media(max-width:460px){.prob-row .word{flex-basis:84px;font-size:.88rem}.station .sign{width:50px;height:50px;font-size:1.35rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
