:root{--red:#C8102E;--red-dark:#8E1520;--red-soft:#FBE7EA;--ink:#16101C;--ink-2:#3D3346;--muted:#6B5F75;--line:#E7E1EA;--bg:#F6F3F7;--white:#FFFFFF;--ok:#17B26A;--ok-bg:#E3F6EC;--ok-ink:#1F7A4D;--warn:#F79009;--warn-bg:#FFF1DC;--warn-ink:#8A5200;--bad:#E5383B;--bad-bg:#FDE7E8;--bad-ink:#A3161A;--display:"Montserrat","Arial Black",sans-serif;--body:"DM Sans",system-ui,-apple-system,Segoe UI,sans-serif;color-scheme:light}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5}a{color:var(--red)}img{max-width:100%}h1,h2,h3{font-family:var(--display);line-height:1.1;margin:0;text-wrap:balance}.topbar{background:var(--white);border-bottom:1px solid var(--line)}.topbar-in{max-width:1100px;margin:0 auto;padding:12px max(16px,env(safe-area-inset-left,0px));justify-content:space-between;gap:12px}.brand,.topbar-in{display:flex;align-items:center}.brand{gap:10px;text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:800;letter-spacing:.04em}.brand img{width:38px;height:auto}.brand span{color:var(--red)}.wrap{max-width:1100px;margin:0 auto;padding:24px max(16px,env(safe-area-inset-left,0px)) 64px}.narrow{max-width:560px}.card{background:var(--white);border-radius:16px;padding:20px}.stack{flex-direction:column;gap:16px}.row,.stack{display:flex}.row{gap:12px;align-items:center;flex-wrap:wrap}.muted{color:var(--muted)}.small{font-size:14px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:12px;border:0;background:var(--red);color:#fff;font:700 16px var(--body);text-decoration:none;cursor:pointer}.btn:hover{background:var(--red-dark)}.btn.ghost{background:var(--white);color:var(--ink);border:1.5px solid var(--line)}.btn.ghost:hover{border-color:var(--ink)}.btn.dark{background:var(--ink)}.btn.block{width:100%}.btn[disabled]{opacity:.5;cursor:default}:focus-visible{outline:3px solid var(--red);outline-offset:2px}label.f{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:14px}input,select,textarea{font:500 16px var(--body);color:var(--ink);padding:12px;border:1.5px solid #d9d0de;border-radius:10px;background:#fff;width:100%}textarea{min-height:110px;resize:vertical}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}@media (max-width:640px){.grid2{grid-template-columns:1fr}}.pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.pill.ok{background:var(--ok-bg);color:var(--ok-ink)}.pill.warn{background:var(--warn-bg);color:var(--warn-ink)}.pill.gray{background:#EFE9F2;color:var(--muted)}.notice{background:var(--warn-bg);color:var(--warn-ink)}.error,.notice{padding:12px 14px;border-radius:12px;font-size:14px}.error{background:var(--bad-bg);color:var(--bad-ink)}.events{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:18px;gap:18px}.ev{background:var(--white);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column}.ev-img{aspect-ratio:4/5;background:#120B1A}.ev-img img{width:100%;height:100%;object-fit:cover;display:block}.ev-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:4px}.event{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);grid-gap:28px;gap:28px;align-items:start}@media (max-width:820px){.event{grid-template-columns:1fr}}.poster{border-radius:18px;overflow:hidden;background:#120B1A}.poster img{width:100%;display:block}.info-line{gap:12px}.ico,.info-line{display:flex;align-items:center}.ico{width:44px;height:44px;border-radius:12px;background:var(--red-soft);justify-content:center;flex-shrink:0}.qty{display:flex;align-items:center;gap:10px}.qty button{width:46px;height:46px;border-radius:12px;border:1.5px solid #d9d0de;background:#fff;font-size:22px;font-weight:700;cursor:pointer;color:var(--ink)}.qty button.plus{background:var(--red);border-color:var(--red);color:#fff}.qty output{min-width:28px;text-align:center;font-weight:800;font-size:20px}.ticket{background:var(--white);border-radius:22px;overflow:hidden;max-width:380px;width:100%}.ticket-head{padding:18px 20px 12px}.ticket-cut{display:flex;align-items:center}.ticket-cut:after,.ticket-cut:before{content:"";width:18px;height:36px;background:var(--ink)}.ticket-cut:before{border-radius:0 18px 18px 0}.ticket-cut:after{border-radius:18px 0 0 18px}.ticket-cut span{flex:1 1;border-top:2px dashed #d9d0de}.ticket-qr{padding:8px 20px 22px;display:flex;flex-direction:column;align-items:center;gap:8px}.ticket-qr svg{width:220px;height:220px}.code{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700;letter-spacing:.14em}.tickets-wall{background:var(--ink);padding:24px 16px;display:flex;flex-wrap:wrap;gap:18px;justify-content:center;border-radius:20px}table.t{width:100%;border-collapse:collapse;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.t th{text-align:left;color:var(--muted);font-size:12px;font-weight:700;padding:8px 6px;border-bottom:1px solid var(--line)}table.t td{padding:10px 6px;border-bottom:1px solid #efe9f2}.tablebox{overflow-x:auto}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px}.kpi b{display:block;font-family:var(--display);font-size:30px;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bar{height:8px;border-radius:4px;background:#EFE9F2;overflow:hidden}.bar i{display:block;height:100%;background:var(--red)}footer.foot{text-align:center;font-size:13px;color:var(--muted);padding:24px 16px 40px}