/* Verlosung in der App: Aufkleber auf der Kachel, Balken über der Liste, Rubbellos im Event.
   Farben kommen aus den Farbwerten der App (tokens.css), damit Hell und Dunkel mitlaufen. */

/* Aufkleber oben rechts auf dem Bild der Kachel */
/* rechts bleibt Platz für den Teilen-Knopf der Kachel */
.c .im .vlb{position:absolute;top:8px;right:46px;z-index:3;display:inline-flex;align-items:center;gap:4px;
  background:#a00000;color:#fff;font-size:11px;font-weight:500;line-height:1;padding:5px 9px;border-radius:4px;
  letter-spacing:.3px;box-shadow:0 1px 3px rgba(0,0,0,.35);pointer-events:none}
.c .im .vlb svg{width:13px;height:13px;flex:none;fill:currentColor}
.c .im .vlb.out{background:#4a4a4a}

/* Balken über der Liste */
.vlbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 var(--pad) 14px;
  background:#a00000;color:#fff;border-radius:12px;padding:11px 13px}
.vlbar b{display:block;font-size:13px;font-weight:500}
.vlbar span{display:block;font-size:11px;opacity:.85}
.vlbar button{flex:none;background:#fff;color:#a00000;border:0;border-radius:16px;min-height:34px;padding:0 14px;
  font:500 12px/1 var(--f);cursor:pointer}

/* Kasten im aufgeklappten Event */
.vlx{margin:0 var(--pad) var(--gap);border:1px solid var(--hl);border-radius:14px;padding:14px;background:var(--surf)}
.vlx .lab{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:500;color:var(--acc);margin:0 0 3px}
.vlx .lab svg{width:15px;height:15px;fill:currentColor}
.vlx h3{font:500 17px/1.3 var(--f);margin:0 0 3px;color:var(--tx)}
.vlx p.m{font-size:13px;color:var(--mu);margin:0 0 10px;line-height:1.5}
.vlx .btn{display:block;width:100%;background:var(--btn);color:#fff;border:0;border-radius:22px;min-height:46px;
  font:500 15px/1 var(--f);cursor:pointer;margin:10px 0 0}
.vlx .btn:disabled{opacity:.55}
.vlx .btn.s{background:transparent;border:1px solid var(--hl);color:var(--tx)}

/* Rubbelfläche */
.vlsc{position:relative;height:170px;border-radius:12px;overflow:hidden;background:var(--surf);border:1px solid var(--hl);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;padding:0 14px}
.vlsc .k{font-size:12px;color:var(--mu);margin:0}
.vlsc .p{font:500 22px/1.2 var(--f);color:var(--acc);margin:0}
.vlsc .d{font-size:13px;color:var(--mu);margin:0}
.vlsc canvas{position:absolute;inset:0;width:100%;height:100%}
.vlsc canvas.f{touch-action:none;cursor:pointer}
.vlsc canvas.x{pointer-events:none}
.vlhint{font-size:12px;color:var(--mu);text-align:center;margin:8px 0 0;min-height:18px}

/* Gewinnkarte (passt sich dem Inhalt an, kompakt) */
.vlk{position:relative;background:#141414;color:#fff;border-radius:16px;padding:18px;text-align:center;margin:12px auto 0;
  width:100%;max-width:300px;box-sizing:border-box;overflow:hidden}
.vlk .vlk-edge{position:absolute;top:0;left:0;right:0;height:6px;background:#a00000}
/* Logo: schwarzer Stern, ganz dünne weiße Kontur, damit er auf dunkel sichtbar ist (nur zu ahnen) */
.vlk-logo{width:64px;height:auto;display:block;margin:4px auto 0;
  filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)}
.vlk-brand{font-size:11px;letter-spacing:2px;color:#e8e4da;font-weight:500;margin-top:7px;line-height:1.3}
.vlk-brand span{display:block;font-size:10px;letter-spacing:.5px;color:#8d8a83;margin-top:2px;font-weight:400}
.vlk-won{font-size:11px;letter-spacing:2px;color:#d9564a;margin-top:13px}
.vlk-prize{font:500 24px/1.1 var(--f);margin-top:3px}
.vlk-ev{font:500 15px/1.3 var(--f);color:#efece4;margin-top:10px}
.vlk-when{font-size:12px;color:#a9a59b;margin-top:7px;line-height:1.4}
.vlk-loc{font-size:12px;color:#cfcbc2;margin-top:6px;line-height:1.4}
.vlk-code{background:#242424;border-radius:12px;padding:11px 8px;margin-top:13px}
.vlk-code small{display:block;font-size:10px;color:#b3afa6;letter-spacing:1px}
.vlk-code b{display:block;font:500 25px/1.1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:3px;margin-top:3px}
.vlk-valid{font-size:11px;color:#cfcbc2;margin-top:11px;line-height:1.4}
.vlk-valid b{font-weight:500;color:#fff}
.vlk-fine{font-size:10px;color:#8d8a83;margin-top:9px;line-height:1.5}
.vlk-foot{margin-top:14px;padding-top:11px;border-top:0.5px solid #2c2c2c}
.vlk-foot .web{font-size:13px;font-weight:500;color:#e8e4da;letter-spacing:.3px}
.vlk-foot .by{font-size:10px;color:#6e6b64;margin-top:2px}
.vlsave{font-size:12px;color:var(--mu);margin:10px 0 0;line-height:1.5}
.vlsave b{color:var(--tx);font-weight:500}
/* fertiges Bild zum Sichern */
.vlk-img{display:block;width:100%;max-width:300px;margin:12px auto 0;border-radius:16px;
  -webkit-touch-callout:default;user-select:none}
a.btn{display:block;text-align:center;text-decoration:none;box-sizing:border-box}

/* Zustände */
.vlmsg{font-size:14px;color:var(--tx);margin:0;line-height:1.5}
.vlmsg em{font-style:normal;color:var(--mu);display:block;font-size:13px;margin-top:3px}
