/* The public customer surface shares the Radio Holzhaus homepage design.
   Staff and check-in surfaces deliberately keep their existing styles. */
body[data-surface="shop"]{--red:#f0455b;--ink:#f3efe5;--muted:#b9b7b3;--line:#ffffff24;--bg:#151518;background:var(--bg);color:var(--ink);font:16px/1.7 Arial,Helvetica,sans-serif}
body[data-surface="shop"] .top{background:#151518f5;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;padding:20px max(24px,calc((100vw - 1180px)/2))}
body[data-surface="shop"] .brand{letter-spacing:1px;font-size:16px;line-height:1.15}
body[data-surface="shop"] .brand img{width:39px;height:43px}
body[data-surface="shop"] .brand small{font-size:11px;color:var(--muted);margin-top:7px}
body[data-surface="shop"] .top nav{align-items:center;gap:25px}
body[data-surface="shop"] .top nav a{font-size:13px;font-weight:400}
body[data-surface="shop"] .top nav a.ticket{background:var(--red);color:#fff;padding:11px 20px;border-radius:5px;font-weight:700}
body[data-surface="shop"] .preview{background:#372328;color:#e4bac0;font-size:12px;padding:9px 24px}
body[data-surface="shop"] main{max-width:1228px;padding:64px 24px 80px}
body[data-surface="shop"] h1{font-size:clamp(40px,4.8vw,68px);line-height:1.05;letter-spacing:-2px;margin:12px 0 26px}
body[data-surface="shop"] h2{font-size:30px;line-height:1.2;letter-spacing:-.8px}
body[data-surface="shop"] .eyebrow{font-size:10px;letter-spacing:2.3px;color:var(--red)}
body[data-surface="shop"] .lead{font-size:17px;color:var(--muted);max-width:720px}
body[data-surface="shop"] .grid{gap:24px;margin-top:38px}
body[data-surface="shop"] .card{background:#222225;border-color:var(--line);border-radius:8px}
body[data-surface="shop"] .event-card img{height:285px;display:block;object-position:center 40%}
body[data-surface="shop"] .event-card .content{padding:28px}
body[data-surface="shop"] .event-card h2{margin:12px 0;font-size:29px}
body[data-surface="shop"] .event-card .eyebrow{color:#efa79b}
body[data-surface="shop"] .btn,body[data-surface="shop"] button{border-radius:5px;font-size:13px;min-height:44px}
body[data-surface="shop"] .btn.dark{background:var(--red);color:#fff}
body[data-surface="shop"] .btn.secondary,body[data-surface="shop"] button.secondary,body[data-surface="shop"] .tabs button{background:transparent;color:var(--ink);border:1px solid var(--line)}
body[data-surface="shop"] .hero{gap:55px;margin-bottom:44px}
body[data-surface="shop"] .hero-image{border-radius:8px;border:1px solid var(--line);background:#222225}
body[data-surface="shop"] .notice{background:#372b21;color:#f0cfaa;border:1px solid #f9bd6933}
body[data-surface="shop"] .notice.success{background:#203b30;color:#c7e8d0}
body[data-surface="shop"] input,body[data-surface="shop"] select,body[data-surface="shop"] textarea{background:#19191d;color:var(--ink);border-color:#ffffff40}
body[data-surface="shop"] .summary{top:110px}
body[data-surface="shop"] .pill,body[data-surface="shop"] .metric{background:#222225;border-color:var(--line)}
body[data-surface="shop"] .plan-fullscreen{background:#222225}
body[data-surface="shop"] .plan-list-item{background:#2b2b30;color:var(--ink)}
body[data-surface="shop"] .plan-list-item.sold{background:#232b28;color:#aab8ae}
body[data-surface="shop"] .plan-list-item.selected{background:#4c2630}
body[data-surface="shop"] .site-context{padding:30px 24px;background:#1e1e22;border-top:1px solid var(--line)}
body[data-surface="shop"] .site-context>div{max-width:1180px;margin:auto}
body[data-surface="shop"] .site-context h2{font-size:18px;letter-spacing:0}
body[data-surface="shop"] .site-context p{font-size:14px;color:var(--muted);max-width:920px}
body[data-surface="shop"] footer{max-width:1228px;padding:40px 24px;border-top:0;align-items:flex-start;gap:30px;font-size:12px}
body[data-surface="shop"] footer strong{color:var(--ink)}
body[data-surface="shop"] footer nav{flex-wrap:wrap;gap:12px 24px;max-width:420px}
body[data-surface="shop"] footer nav a{font-size:12px;font-weight:400;padding:0}
@media(max-width:1050px){body[data-surface="shop"] .top{flex-wrap:wrap}body[data-surface="shop"] .top nav{width:100%;justify-content:space-between;gap:12px}}
@media(max-width:680px){body[data-surface="shop"] .top{padding:13px 20px}body[data-surface="shop"] .brand{font-size:13px}body[data-surface="shop"] .brand img{width:31px;height:36px}body[data-surface="shop"] .menu-toggle{background:transparent;border:1px solid #ffffff50;color:#fff}body[data-surface="shop"] .top nav{display:none}body[data-surface="shop"] .top nav.open{display:flex;align-items:stretch;flex-direction:column;padding:14px 0}body[data-surface="shop"] main{padding:34px 22px 50px}body[data-surface="shop"] h1{font-size:42px;letter-spacing:-1.5px}body[data-surface="shop"] .hero{gap:26px}body[data-surface="shop"] .hero-image{height:280px}body[data-surface="shop"] .event-card img{height:230px}body[data-surface="shop"] .event-card .content{padding:22px}body[data-surface="shop"] footer nav{display:flex;width:100%}body[data-surface="shop"] footer{flex-direction:column}body[data-surface="shop"] .summary{position:static}}
