/* ===========================================================
   7K CASINO — «receipt» template
   Paradigm: long thermal cash-register receipt tape.
   Namespace: .rc*  |  Fonts: Courier Prime + Inter
   =========================================================== */

:root{
  --acc:#8f5ec7;      /* stamp red */
  --acc2:#ffc75f;     /* register green */
  --bg:#c9c4b8;       /* counter surface */
  --bg2:#b7b1a2;
  --tape:#fffdf7;     /* thermal paper */
  --ink:#1a1712;      /* print */
  --ink2:#6d6555;     /* faded print */
  --line:#cbc4b2;     /* dotted rule */
  --line2:#e6e0d2;
  --mono:"Courier Prime",ui-monospace,"Courier New",monospace;
  --ui:"Inter",system-ui,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--mono);
  color:var(--ink);
  background:var(--bg);
  background-image:
    repeating-linear-gradient(90deg,rgba(0,0,0,.035) 0 1px,transparent 1px 26px),
    repeating-linear-gradient(0deg,rgba(0,0,0,.035) 0 1px,transparent 1px 26px);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit}

.rc-skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:8px 14px;z-index:60}
.rc-skip:focus{left:8px;top:8px}

.bb{font-weight:700;color:var(--ink)}

/* ---------- top bar ---------- */
.rc-bar{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:9px clamp(12px,4vw,26px);
  background:rgba(26,23,18,.94);
  color:#f3efe6;
  border-bottom:2px solid var(--acc);
  backdrop-filter:blur(4px);
}
.rc-wm{display:flex;align-items:center;gap:10px;text-decoration:none;color:#f3efe6}
.rc-wm .mk{
  width:34px;height:34px;border-radius:7px;flex:none;
  display:grid;place-items:center;
  background:var(--acc);color:#fff;
  font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.5px;
  box-shadow:2px 2px 0 rgba(0,0,0,.35);
}
.rc-wm .bb{font-family:var(--ui);font-weight:600;font-size:15px;letter-spacing:.3px;color:#f3efe6}
.rc-wm small{display:block;font-family:var(--mono);font-size:10px;color:#b7ae9c;letter-spacing:1px;text-transform:uppercase}
.rc-nav{display:flex;gap:16px;font-family:var(--ui);font-size:12.5px}
.rc-nav a{color:#c9c1b1;text-decoration:none}
.rc-nav a:hover{color:#fff}

/* ---------- buttons ---------- */
.rc-btn{
  display:inline-block;font-family:var(--mono);font-weight:700;
  font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;
  text-decoration:none;cursor:pointer;
  padding:9px 16px;border:2px solid var(--ink);background:var(--tape);color:var(--ink);
  box-shadow:2.5px 2.5px 0 var(--ink);
  transition:transform .08s,box-shadow .08s;
}
.rc-btn:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}
.rc-btn--go{background:var(--acc);color:#fff;border-color:var(--acc)}
.rc-btn--go:hover{box-shadow:1px 1px 0 rgba(0,0,0,.4)}
.rc-btn--ghost{background:transparent}
.rc-btn--sm{padding:6px 12px;font-size:11px;box-shadow:2px 2px 0 var(--ink)}
.rc-bar .rc-btn--sm{border-color:var(--acc);background:var(--acc);color:#fff;box-shadow:2px 2px 0 rgba(0,0,0,.4)}

/* ---------- tape shell ---------- */
.rc-wrap{max-width:460px;margin:0 auto;padding:34px 0 60px}
.rc-tape{
  position:relative;
  background:var(--tape);
  padding:26px clamp(18px,6vw,30px);
  box-shadow:0 22px 40px -18px rgba(0,0,0,.5),0 3px 0 rgba(0,0,0,.06);
  color:var(--ink);
}
/* torn zigzag edges */
.rc-tear{height:13px;background:var(--tape);position:relative;z-index:1}
.rc-tear--t{
  -webkit-mask:linear-gradient(-135deg,#000 6px,transparent 0) 0 100%/13px 13px repeat-x;
          mask:linear-gradient(-135deg,#000 6px,transparent 0) 0 100%/13px 13px repeat-x;
  box-shadow:0 -22px 30px -22px rgba(0,0,0,.4);
}
.rc-tear--b{
  -webkit-mask:linear-gradient(-45deg,#000 6px,transparent 0) 0 0/13px 13px repeat-x;
          mask:linear-gradient(-45deg,#000 6px,transparent 0) 0 0/13px 13px repeat-x;
}

/* ---------- receipt merchant head ---------- */
.rc-mh{text-align:center;padding-bottom:6px}
.rc-mh .big{
  font-size:clamp(30px,10vw,44px);font-weight:700;letter-spacing:2px;
  line-height:1;margin:2px 0;
}
.rc-mh .lat{font-size:12px;letter-spacing:6px;color:var(--ink2);text-transform:uppercase}
.rc-mh .addr{font-size:11.5px;color:var(--ink2);margin-top:8px;letter-spacing:.4px}
.rc-stamp{
  display:inline-block;margin:10px auto 2px;
  border:2px solid var(--acc);color:var(--acc);
  padding:3px 10px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  transform:rotate(-3deg);border-radius:3px;
}

/* dashed / solid rules */
.rc-rule{border:0;border-top:2px dashed var(--line);margin:16px 0}
.rc-rule--tight{margin:11px 0}
.rc-rule--star{
  border:0;text-align:center;color:var(--ink2);margin:16px 0;
  font-size:11px;letter-spacing:3px;overflow:hidden;
}
.rc-rule--star::before{content:"* * * * * * * * * * * * * * * * * * * *"}

/* section header */
.rc-h2{
  text-align:center;font-size:14px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;margin:0;padding:4px 0;
}
.rc-h2 span{color:var(--acc)}
.rc-ov{text-align:center;font-size:10.5px;letter-spacing:3px;color:var(--ink2);text-transform:uppercase;margin:0 0 3px}

/* ---------- leader-dot line ---------- */
.rc-li{display:flex;align-items:flex-end;font-size:13px;margin:6px 0;gap:0}
.rc-li .k{white-space:normal}
.rc-li .d{flex:1 1 auto;border-bottom:2px dotted var(--line);margin:0 5px 5px;min-width:10px}
.rc-li .v{white-space:nowrap;font-weight:700}
.rc-sub{font-size:11px;color:var(--ink2);margin:0 0 4px;letter-spacing:.2px}

.rc-item{margin:11px 0}
.rc-num{color:var(--acc);font-weight:700}

/* hero */
.rc-h1{font-size:clamp(19px,5.6vw,23px);line-height:1.3;font-weight:700;margin:4px 0 10px;text-align:center;letter-spacing:.3px}
.rc-lead{font-size:12.5px;color:var(--ink);margin:0 0 16px;text-align:left}
.rc-cta{display:flex;flex-direction:column;gap:9px;margin:14px 0}
.rc-cta .rc-btn{text-align:center}

.rc-pre{
  border:2px dashed var(--line);padding:12px 13px;margin:16px 0 4px;
  background:linear-gradient(0deg,rgba(0,0,0,.015),rgba(0,0,0,.015));
}
.rc-pre .cap{font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--ink2);text-align:center;margin:0 0 6px}

/* ИТОГО */
.rc-total{
  display:flex;align-items:flex-end;
  border-top:3px double var(--ink);border-bottom:3px double var(--ink);
  padding:9px 0;margin:14px 0 4px;
  font-size:16px;font-weight:700;letter-spacing:.5px;
}
.rc-total .k{text-transform:uppercase}
.rc-total .d{flex:1 1 auto;margin:0 6px 5px;border-bottom:2px dotted var(--line)}
.rc-total .v{color:var(--acc)}

/* cashier table */
.rc-tblwrap{overflow-x:auto;margin:12px 0 2px;-webkit-overflow-scrolling:touch}
.rc-tbl{width:100%;border-collapse:collapse;font-size:12px;min-width:360px}
.rc-tbl th,.rc-tbl td{text-align:left;padding:7px 8px;border-bottom:1.5px dotted var(--line)}
.rc-tbl th{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink2);border-bottom:2px solid var(--ink)}
.rc-tbl td:last-child,.rc-tbl th:last-child{text-align:right}
.rc-tbl .zero{color:var(--acc2);font-weight:700}
.rc-tbl tbody tr:last-child td{border-bottom:0}

/* faq */
.rc-faq{margin:8px 0}
.rc-faq details{border-bottom:2px dashed var(--line);padding:2px 0}
.rc-faq summary{
  list-style:none;cursor:pointer;padding:9px 22px 9px 2px;position:relative;
  font-size:12.5px;font-weight:700;letter-spacing:.2px;
}
.rc-faq summary::-webkit-details-marker{display:none}
.rc-faq summary::after{content:"[+]";position:absolute;right:0;top:9px;color:var(--acc);font-weight:700}
.rc-faq details[open] summary::after{content:"[-]"}
.rc-faq details p{font-size:12px;color:var(--ink);margin:0 0 11px;padding-right:4px}

/* author note + 18+ */
.rc-note{border:2px dashed var(--line);padding:14px 14px;margin:6px 0}
.rc-note p{font-size:12px;margin:0 0 9px}
.rc-note p:last-child{margin:0}
.rc-18{
  display:inline-block;background:var(--ink);color:#fff;font-weight:700;
  font-size:11px;padding:1px 7px;border-radius:3px;margin-right:5px;letter-spacing:1px;
}

/* barcode + thanks */
.rc-barcode{
  height:58px;margin:20px 0 6px;
  background:
    repeating-linear-gradient(90deg,
      var(--ink) 0 2px,transparent 2px 4px,
      var(--ink) 4px 7px,transparent 7px 9px,
      var(--ink) 9px 10px,transparent 10px 14px,
      var(--ink) 14px 18px,transparent 18px 20px,
      var(--ink) 20px 21px,transparent 21px 24px,
      var(--ink) 24px 27px,transparent 27px 29px);
  background-size:29px 100%;
}
.rc-bcnum{text-align:center;font-size:12px;letter-spacing:5px;margin:2px 0 0}
.rc-thanks{
  text-align:center;font-weight:700;font-size:14px;letter-spacing:2px;
  text-transform:uppercase;margin:16px 0 2px;
}
.rc-thanks small{display:block;font-weight:400;font-size:11px;letter-spacing:2px;color:var(--ink2);margin-top:4px}

/* badges */
.rc-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:12px 0 0}
.rc-badges span{
  font-size:10px;letter-spacing:1px;text-transform:uppercase;
  border:1.5px solid var(--line);padding:4px 8px;border-radius:3px;color:var(--ink2);
}
.rc-badges .lic{border-color:var(--acc2);color:var(--acc2);font-weight:700}

/* provider strip */
.rc-provs{font-size:11px;color:var(--ink2);text-align:center;margin:8px 0 0;letter-spacing:.3px}
.rc-provs span{white-space:nowrap}

/* ---------- footer ---------- */
.rc-foot{
  max-width:460px;margin:0 auto;padding:0 clamp(12px,4vw,20px) 46px;
  font-family:var(--ui);color:#2a2620;
}
.rc-foot .card{background:rgba(255,253,247,.7);border:1.5px solid var(--line);padding:18px 18px;font-size:11.5px;line-height:1.6}
.rc-foot .fwm{display:flex;align-items:center;gap:9px;margin-bottom:9px;font-family:var(--mono);font-weight:700;letter-spacing:1px}
.rc-foot .fwm .mk{width:28px;height:28px;border-radius:6px;background:var(--acc);color:#fff;display:grid;place-items:center;font-size:12px}
.rc-foot .legal{color:#5c5346;margin:0 0 12px}
.rc-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:5px 14px;font-size:11px;color:#5c5346}
.rc-foot .copy{margin:14px 2px 0;font-size:10.5px;color:#4a433a;line-height:1.6;font-family:var(--mono)}

@media (max-width:520px){
  .rc-nav{display:none}
}
