:root{--gold:#e6c879;--wine:#9a2e3c;--cream:#f3e7c8;--dim:#9fb0c2;--ink:#0e1826}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{height:100%}
body{margin:0;background:#0a1220;color:var(--cream);font-family:system-ui,Segoe UI,Arial,sans-serif;overflow:hidden;overscroll-behavior:none}
.kr-shell{display:flex;flex-direction:column;height:100dvh;max-width:560px;margin:0 auto;padding:6px 8px calc(8px + env(safe-area-inset-bottom));gap:6px}
.kr-top{display:flex;align-items:center;gap:8px}
.kr-brand{font-weight:800;color:var(--gold);font-size:1rem;line-height:1}
.kr-brand small{display:block;font-size:.58rem;color:var(--dim);letter-spacing:2px}
.kr-top .sp{flex:1}
.kr-icon{width:40px;height:40px;border:1px solid #2c3a4a;background:#16202e;color:var(--cream);border-radius:10px;font-size:1.1rem;cursor:pointer}
.kr-back{color:var(--dim);text-decoration:none;font-size:.85rem;padding:6px 8px;border:1px solid #2c3a4a;border-radius:10px}
.kr-title{text-align:center;line-height:1.1}
.kr-title b{color:var(--gold);font-size:1.1rem}
.kr-title span{display:block;color:var(--dim);font-size:.7rem;margin-top:2px}
/* Zutaten-HUD */
.kr-ings{display:flex;gap:6px}
.kr-ing{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;background:#16202e;border:1px solid #2a3a4a;border-radius:10px;padding:6px 4px;font-weight:800;font-size:1.05rem}
.kr-ing .ic{font-size:1.15rem}
.kr-goal{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.82rem;color:var(--dim)}
.kr-goal b{color:var(--gold);font-size:1rem}
.kr-lvl{flex:0 0 auto;background:#16202e;border:1px solid #2a3a4a;border-radius:8px;padding:2px 9px;color:var(--dim)}
.kr-lvl b{color:#7fd0ff;font-size:1rem}
.kr-progwrap{flex:1;height:8px;background:#16202e;border:1px solid #2a3a4a;border-radius:6px;overflow:hidden}
.kr-prog{height:100%;width:0;background:linear-gradient(90deg,var(--gold),#b0812f);transition:width .12s linear}
.kr-stage{position:relative;flex:1;min-height:0;background:#0a1220;border:1px solid #21303f;border-radius:14px;overflow:hidden;touch-action:none;display:flex}
#krcanvas{display:block}
.kr-banner{position:absolute;top:8px;left:50%;transform:translateX(-50%);background:#000c;border:1px solid var(--gold);color:var(--gold);padding:5px 14px;border-radius:20px;font-weight:700;font-size:.85rem;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap}
.kr-banner.show{opacity:1}
.kr-scorebar{display:flex;align-items:center;justify-content:space-between;font-size:.82rem}
.kr-scorebar .s{font-weight:800;color:var(--gold)}
.kr-scorebar .cb{color:#ff9820;font-weight:800}
.kr-controls{display:flex;gap:10px}
.kr-lane{flex:1;height:60px;border:1px solid #2c3a4a;background:#16202e;color:var(--cream);border-radius:14px;font-size:1.6rem;cursor:pointer}
.kr-lane:active{background:var(--wine);color:#fff}
.kr-hswrap{background:#111b28;border:1px solid #21303f;border-radius:12px;padding:8px 10px}
.kr-hshead{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.kr-hshead span{color:var(--gold);font-weight:700;font-size:.82rem}
.kr-hsbtn{background:var(--wine);color:#fff;border:none;border-radius:8px;padding:5px 10px;font-size:.75rem;cursor:pointer}
.kr-hslist{list-style:none;margin:0;padding:0;font-size:.85rem}
.kr-hslist li{display:flex;gap:8px;padding:3px 2px;border-top:1px solid #1e2a38}
.kr-hslist li:first-child{border-top:none}
.kr-hslist .rk{width:18px;color:var(--dim)}.kr-hslist .nm{flex:1;font-weight:700;letter-spacing:.08em}.kr-hslist .sc{color:var(--gold)}
.kr-hsempty{color:var(--dim);justify-content:center}
.kr-ov{position:absolute;inset:0;background:#08101ce6;display:none;align-items:center;justify-content:center;padding:16px;z-index:5}
.kr-ov.show{display:flex}
.kr-card{background:linear-gradient(180deg,#16202e,#0e1826);border:1px solid var(--gold);border-radius:16px;padding:18px 16px;max-width:340px;text-align:center;box-shadow:0 20px 60px -20px #000}
.kr-card h2{margin:0 0 6px;color:var(--gold);font-size:1.3rem}
.kr-card p{margin:6px 0;font-size:.9rem;color:var(--cream);line-height:1.5}
.kr-order-prev{margin:10px 0;padding:10px;border:1px dashed var(--gold);border-radius:10px}
.kr-order-prev b{color:var(--gold);font-size:1.5rem}
.kr-steps{text-align:left;margin:10px auto;font-size:.85rem;color:var(--dim);max-width:250px}
.kr-steps li{margin:3px 0}
.kr-btn{margin-top:10px;background:var(--wine);color:#fff;border:none;border-radius:11px;padding:11px 20px;font-size:1rem;font-weight:800;cursor:pointer}
.kr-btn.ghost{background:transparent;border:1px solid #34485a;color:var(--cream)}
.kr-res-big{font-size:1.5rem;font-weight:800;color:var(--gold);margin:2px 0}
.kr-res-sub{font-size:.95rem;margin:2px 0 8px}
.kr-res-row{display:flex;justify-content:space-between;font-size:.9rem;padding:2px 6px}
.kr-res-ings{margin-top:8px;font-size:1.1rem}
.kr-aliasin{width:100%;padding:11px;border-radius:10px;border:1px solid #34485a;background:#0a121c;color:var(--cream);font-size:1.3rem;text-align:center;letter-spacing:.3em;text-transform:uppercase}
.kr-aliaserr{color:#e0563b;font-size:.8rem;min-height:1em;margin:6px 0 0}
.kr-aliasrow{display:flex;gap:8px;margin-top:10px}.kr-aliasrow .kr-btn{flex:1;margin-top:0}
.kr-legal{text-align:center;font-size:11px;margin:4px 0 0;opacity:.5}.kr-legal a{color:inherit}
@media(max-height:600px){.kr-title,.kr-hswrap{display:none}}
