  :root{
    --bg:#faf3ec; --card:#fffaf5; --card2:#fdf0e9; --line:#e5d5c8;
    --text:#3b2a24; --muted:#7a6357; --accent:#8e4a63; --accent2:#9c4f6f;
    --ok:#5c6e4c; --gold:#5c6e4c;
  }
  *{box-sizing:border-box; margin:0; padding:0; -webkit-tap-highlight-color:transparent;}
  body{background:radial-gradient(1200px 800px at 50% -10%, #fdf0e9 0%, var(--bg) 60%);
    color:var(--text); font-family:'Avenir Next','Segoe UI',system-ui,sans-serif; min-height:100vh;}
  .wrap{max-width:480px; margin:0 auto; padding:22px 18px 40px;}
  h1{font-size:2rem; letter-spacing:.5px;}
  h2{font-size:1.25rem; margin-bottom:12px;}
  .logo{text-align:center; margin:26px 0 8px;}
  .logo .flame{font-size:2.2rem;}
  .sub{color:var(--muted); text-align:center; font-style:italic; margin-bottom:24px;}
  .screen{display:none; animation:fade .35s ease;}
  .screen.active{display:block;}
  @keyframes fade{from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:none;}}
  .card{background:var(--card); border:1px solid var(--line); border-radius:16px; padding:20px; margin-bottom:14px;}
  .btn{display:block; width:100%; padding:15px 18px; border:none; border-radius:999px;
    background:linear-gradient(135deg,var(--accent),var(--accent2)); color:#fff7f0;
    font-family:inherit; font-size:1.05rem; font-weight:bold; cursor:pointer; margin-top:12px;}
  .btn.ghost{background:transparent; border:1px solid var(--line); color:var(--muted); font-weight:normal;}
  .btn.small{padding:10px 14px; font-size:.95rem;}
  .btn:active{transform:scale(.985);}
  input[type=text]{width:100%; padding:13px; border-radius:10px; border:1px solid var(--line);
    background:var(--card2); color:var(--text); font-family:inherit; font-size:1rem;}
  .muted{color:var(--muted); font-size:.92rem; line-height:1.5;}
  .tag{display:inline-block; padding:3px 10px; border-radius:999px; font-size:.8rem;
    border:1px solid var(--line); color:var(--muted); margin-right:6px;}
  .tag.lvl{border-color:var(--accent); color:var(--accent2);}
  .playerlist li{list-style:none; padding:10px 12px; background:var(--card2); border-radius:10px;
    margin-top:8px; display:flex; justify-content:space-between; align-items:center;}
  .x{color:var(--muted); cursor:pointer; padding:0 6px;}
  .lvlpick{display:flex; gap:8px; margin-top:10px;}
  .lvlpick button{flex:1; padding:12px 4px; border-radius:10px; border:1px solid var(--line);
    background:var(--card2); color:var(--muted); font-family:inherit; cursor:pointer;}
  .lvlpick button.sel{background:var(--accent); color:#fff7f0; border-color:var(--accent); font-weight:bold;}
  .privacy{background:linear-gradient(135deg,#fdf0e9,#fffaf5); border:1px dashed var(--accent);
    border-radius:16px; padding:34px 20px; text-align:center;}
  .bigname{font-size:1.6rem; color:var(--accent2); margin:10px 0;}
  .gamecard{min-height:220px; display:flex; flex-direction:column; justify-content:center;
    text-align:center; background:linear-gradient(160deg,var(--card2),var(--card)); box-shadow:0 4px 14px rgba(120,70,40,.08);
    border:1px solid var(--line); border-radius:18px; padding:28px 22px; margin:14px 0;}
  .gamecard .txt{font-size:1.25rem; line-height:1.55;}
  .gamecard.wissen{border-color:var(--gold);}
  .choice{display:flex; gap:10px;}
  .choice .btn{margin-top:0;}
  .wheel{font-size:1.5rem; text-align:center; padding:26px 10px; color:var(--accent2);
    letter-spacing:1px; min-height:80px;}
  .statusbar{display:flex; justify-content:space-between; align-items:center; margin-bottom:10px;}
  .dots{display:flex; gap:5px;}
  .dot{width:9px; height:9px; border-radius:50%; background:var(--line);}
  .dot.on{background:var(--accent);}
  /* Admin-Auslöser: fünf Tipps. Ohne touch-action zoomt der Browser beim
     zweiten Tipp und die App bekommt die Folge gar nicht erst mit. */
  #logo-tap, #ver-line{touch-action:manipulation; -webkit-user-select:none; user-select:none;}
  .footer{text-align:center; margin-top:26px;}
  .footer .muted{font-size:.8rem;}
  .ilabel{display:block; font-size:.85rem; color:var(--muted); margin:10px 0 2px;}
  .toggle{display:flex; align-items:center; gap:10px; margin-top:12px; color:var(--muted); font-size:.92rem;}
  .toggle input{width:20px; height:20px;}
  .voteres{text-align:center; font-size:1.15rem; padding:18px 0;}
  hr.sep{border:none; border-top:1px solid var(--line); margin:16px 0;}
