*{box-sizing:border-box;margin:0;padding:0}:root{--red:#c81d25;--paper:#e8e4da;--dim:#8a867c;--bg:#060607}html,body{background:var(--bg);height:100%;overflow:hidden}body{color:var(--paper);font-family:Segoe UI,system-ui,sans-serif}#gl{z-index:1;width:100%;height:100%;display:block;position:fixed;inset:0}.volwrap{pointer-events:auto;align-items:center;gap:8px;display:flex;position:absolute;bottom:18px;right:20px}.volwrap .vollabel{letter-spacing:2px;color:#55524a;font-size:9px}.volwrap input[type=range]{width:110px;accent-color:var(--red)}.volwrap .gearbtn{color:#8a867c;cursor:pointer;background:0 0;border:1px solid #262420;width:26px;height:26px;font-size:13px;line-height:1}.volwrap .gearbtn:hover{color:var(--paper);border-color:#45423a}.settings{pointer-events:auto;z-index:8;background:#080809f2;border:1px solid #262420;width:240px;padding:16px;position:absolute;bottom:56px;right:20px}.settings .set-title{letter-spacing:3px;margin-bottom:12px;font-family:Impact,sans-serif;font-size:14px}.settings .set-row{letter-spacing:2px;color:#8a867c;text-transform:uppercase;margin:10px 0;font-size:9px;display:block}.settings .set-row input[type=range]{width:100%;accent-color:var(--red);margin-top:4px}.settings .set-check{justify-content:space-between;align-items:center;display:flex}.settings .optrow{margin-top:5px}.settings .optbtn{padding:5px 2px;font-size:8px}.settings .set-hint{color:#3d3a33;letter-spacing:1px;margin-top:10px;font-size:8px}#fps{z-index:5;color:#5a564c;pointer-events:none;font:11px/1 monospace;position:fixed;top:10px;right:12px}#hud{pointer-events:none;z-index:4;position:fixed;inset:0}.nowplaying{text-transform:uppercase;position:absolute;bottom:20px;left:22px}.nowplaying .band{letter-spacing:2px;transform-origin:0 100%;text-shadow:0 0 18px #c81d258c;font-family:Impact,Arial Black,sans-serif;font-size:30px;transform:scaleY(1.25)}.nowplaying .song{letter-spacing:4px;color:var(--dim);margin-top:4px;font-size:14px}.nowplaying .section{letter-spacing:3px;color:#b9b4a6;border:1px solid #3a372f;margin-top:7px;padding:2px 9px;font-size:10px;display:inline-block}.nowplaying .section.breakdown{border-color:var(--red);color:var(--red)}.setlist{text-align:right;letter-spacing:2px;text-transform:uppercase;color:#55524a;font-size:11px;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.setlist .slot-label{color:#3d3a33;letter-spacing:3px;margin-bottom:8px;font-size:9px}.setlist li{margin:5px 0;list-style:none;transition:color .4s}.setlist li.done{color:#2e2c27;text-decoration:line-through}.setlist li.now{color:var(--paper);text-shadow:0 0 12px #e8e4da66}.toast{letter-spacing:4px;text-transform:uppercase;color:var(--paper);white-space:nowrap;text-shadow:0 0 30px #c81d25e6;opacity:0;pointer-events:none;font-family:Impact,sans-serif;font-size:44px;position:absolute;top:30%;left:50%;transform:translate(-50%)scaleY(1.3)}.toast.show{animation:3.2s ease-out forwards toastIn}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)scaleY(1.3)scale(1.6)}12%{opacity:1;transform:translate(-50%)scaleY(1.3)scale(1)}78%{opacity:1}to{opacity:0}}.hint{letter-spacing:2px;color:#45423a;text-transform:uppercase;font-size:10px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.ytbar{pointer-events:auto;z-index:6;gap:10px;display:flex;position:absolute;bottom:60px;left:50%;transform:translate(-50%)}.ytbar button{border:1px solid var(--red);color:#fff;letter-spacing:3px;text-transform:uppercase;cursor:pointer;background:#c81d25eb;padding:12px 22px;font-family:Impact,sans-serif;font-size:16px}.ytbar .ytsync{color:#b9b4a6;background:#0e0e10e6;border-color:#3a372f;font-family:inherit;font-size:11px}.ytbar button:hover{filter:brightness(1.2)}#menu{z-index:10;background:radial-gradient(ellipse at 50% 30%, #c81d2514, transparent 60%), var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#menu.hidden{display:none}.poster{text-align:center;background:linear-gradient(#0b0b0d,#070708);border:1px solid #262420;width:min(480px,92vw);max-height:94vh;padding:34px 38px 28px;overflow-y:auto;box-shadow:0 0 80px #000000e6}.poster .presents{letter-spacing:5px;color:#55524a;text-transform:uppercase;font-size:9px}.poster h1{letter-spacing:3px;color:var(--paper);text-shadow:0 0 34px #c81d2580;margin:18px 0 6px;font-family:Impact,sans-serif;font-size:62px;transform:scaleY(1.35)}.poster .tour{letter-spacing:6px;color:var(--red);text-transform:uppercase;margin-bottom:22px;font-size:12px}.poster .bill{border-top:1px solid #201e1a;border-bottom:1px solid #201e1a;margin-bottom:20px;padding:16px 0}.poster .bill .headliner{letter-spacing:2px;color:var(--paper);font-family:Impact,sans-serif;font-size:34px;transform:scaleY(1.2)}.poster .bill .support{letter-spacing:2px;color:#b9b4a6;margin-top:8px;font-family:Impact,sans-serif;font-size:21px}.poster .bill .opener{letter-spacing:3px;color:#6a665c;text-transform:uppercase;margin-top:8px;font-size:13px}.poster .venue-line{letter-spacing:3px;color:#55524a;text-transform:uppercase;margin-bottom:24px;font-size:10px}.opt{text-align:left;margin:14px 0}.opt label{letter-spacing:3px;color:#6a665c;text-transform:uppercase;margin-bottom:7px;font-size:9px;display:block}.optrow{gap:8px;display:flex}.optbtn{color:#8a867c;letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:#0e0e10;border:1px solid #262420;flex:1;padding:9px 4px;font-family:inherit;font-size:10px}.optbtn:hover{color:var(--paper);border-color:#45423a}.optbtn.sel{border-color:var(--red);color:var(--paper);background:#16090a}.optbtn:disabled{opacity:.3;cursor:default}input[type=range]{width:100%;accent-color:var(--red)}.shirtgrid{grid-template-columns:repeat(5,1fr);gap:7px;display:grid}.shirtthumb{aspect-ratio:1;cursor:pointer;image-rendering:auto;border:1px solid #262420;width:100%;display:block}.shirtthumb:hover{border-color:#45423a}.shirtthumb.sel{border-color:var(--red);box-shadow:0 0 10px #c81d2559}.swatch{cursor:pointer;border:1px solid #262420;flex:0 0 30px;height:30px;padding:0}.swatch:hover{border-color:#45423a}.swatch.sel{border-color:var(--red)}.likes{z-index:5;letter-spacing:2px;color:var(--paper);text-shadow:0 0 12px #000c;align-items:center;gap:7px;font-family:Impact,sans-serif;font-size:20px;display:flex;position:fixed;top:30px;right:26px}.likes .horns{filter:grayscale(.3);font-size:17px}.likes.pop .likecount{animation:.35s ease-out likepop}@keyframes likepop{0%{transform:scale(1)}35%{color:var(--red);transform:scale(1.45)}to{transform:scale(1)}}.likes .likecount{display:inline-block}.likefly{z-index:5;pointer-events:none;letter-spacing:1px;color:var(--paper);text-shadow:0 0 10px #c81d25b3;opacity:1;font-family:Impact,sans-serif;font-size:15px;transition:transform .65s cubic-bezier(.5,-.2,.9,.6),opacity .65s ease-in;position:fixed}.achcard{z-index:6;pointer-events:none;opacity:0;border:1px solid var(--red);text-align:center;background:#0b0a09;padding:14px 34px 12px;transition:transform .22s cubic-bezier(.2,1.6,.5,1),opacity .22s ease-out;position:fixed;top:16%;left:50%;transform:translate(-50%)scale(1.35);box-shadow:0 0 40px #c81d2540,inset 0 0 30px #000000b3}.achcard.in{opacity:1;transform:translate(-50%)scale(1)}.achcard.out{opacity:0;transition:all .5s ease-in;transform:translate(-50%)scale(.92)}.achcard .ach-horns{margin-bottom:2px;font-size:18px}.achcard .ach-title{letter-spacing:3px;color:var(--paper);text-transform:uppercase;font-family:Impact,sans-serif;font-size:22px;transform:scaleY(1.15)}.achcard .ach-sub{letter-spacing:3px;color:#8a867c;text-transform:uppercase;margin-top:5px;font-size:9px}.achcard .ach-likes{color:var(--red);letter-spacing:2px;margin-top:6px;font-family:Impact,sans-serif;font-size:13px}.barprompt{letter-spacing:3px;color:var(--paper);text-transform:uppercase;z-index:5;background:#0a0908d9;border:1px solid #262420;padding:8px 18px;font-size:11px;position:fixed;bottom:92px;left:50%;transform:translate(-50%)}.beermeter{z-index:5;background:#080809b3;border:1px solid #45423a;width:22px;height:34px;position:fixed;bottom:96px;right:26px;overflow:hidden}.beermeter .beerfill{background:linear-gradient(#d9a53c,#b07714);height:100%;transition:height .6s ease-out;position:absolute;bottom:0;left:0;right:0}.beermeter .beercup{filter:grayscale(.6);opacity:.85;justify-content:center;align-items:center;font-size:12px;display:flex;position:absolute;inset:0}.phone{z-index:7;background:#0b0a0c;border:2px solid #1e1c22;border-radius:18px;flex-direction:column;width:250px;height:470px;transition:bottom .28s cubic-bezier(.2,1.1,.4,1);display:flex;position:fixed;bottom:-520px;right:30px;overflow:hidden;box-shadow:0 12px 50px #000c}.phone.up{bottom:26px}.phone-screen{flex:1;padding:16px 14px;overflow-y:auto}.phone-tabs{border-top:1px solid #1e1c22;display:flex}.phone-tabs button{color:#6a665c;letter-spacing:3px;cursor:pointer;background:#0e0d10;border:none;flex:1;padding:11px 0;font-family:inherit;font-size:9px}.phone-tabs button.sel{color:var(--paper);background:#16090a}.ph-head{letter-spacing:2px;color:var(--paper);margin-bottom:10px;font-family:Impact,sans-serif;font-size:16px;transform:scaleY(1.1)}.ph-line{letter-spacing:2px;color:#6a665c;text-transform:uppercase;font-size:8px}.ph-stat{color:#b9b4a6;letter-spacing:1px;margin-top:8px;font-size:11px}.ph-stat b{color:var(--paper)}.ph-stop{border:1px solid #1e1c22;margin-bottom:9px;padding:9px 10px}.ph-stop.here{border-color:var(--red)}.ph-stop-date{letter-spacing:2px;color:var(--paper);font-size:10px}.ph-stop-venue{letter-spacing:2px;color:#8a867c;text-transform:uppercase;margin-top:2px;font-size:9px}.ph-stop-bill{letter-spacing:1px;color:#55524a;margin-top:4px;font-size:8px}.ph-stop-row{align-items:center;gap:8px;margin-top:7px;display:flex}.ph-tag{letter-spacing:2px;color:var(--red);font-size:8px}.ph-tag.owned{color:#7aa05a}.ph-buy{background:var(--red);color:#fff;letter-spacing:2px;cursor:pointer;border:none;padding:5px 10px;font-family:inherit;font-size:9px}.ph-real{letter-spacing:1px;color:#8a94b8;font-size:8px;text-decoration:none}.ph-real:hover{color:var(--paper)}.ph-cash{letter-spacing:2px;color:#6a665c;text-align:right;margin-top:4px;font-size:9px}.ph-patches{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ph-patch{letter-spacing:1px;color:var(--paper);background:#131114;border:1px solid #45423a;padding:4px 7px;font-size:8px}.ph-none{color:#3d3a33;letter-spacing:1px;font-size:8px}.ph-night{letter-spacing:1px;color:#8a867c;border-bottom:1px solid #17151a;justify-content:space-between;padding:5px 0;font-size:8px;display:flex}.endpanel .recap{letter-spacing:2px;color:#b9b4a6;justify-content:center;gap:16px;margin:12px 0 2px;font-family:Impact,sans-serif;font-size:13px;display:flex}.endpanel .forkrow{flex-direction:column;gap:8px;margin-top:14px;display:flex}.endpanel .fork-home{background:#1a1a1e}.endpanel .fork-home:hover{box-shadow:none;background:#26262c}.endpanel .nextstop{border:1px solid #262420;margin:14px 0 4px;padding:10px 14px}.endpanel .ns-label{letter-spacing:3px;color:var(--red);font-size:8px}.endpanel .ns-line{letter-spacing:2px;color:var(--paper);margin-top:4px;font-family:Impact,sans-serif;font-size:15px}.endpanel .ns-hint{letter-spacing:2px;color:#6a665c;text-transform:uppercase;margin-top:4px;font-size:8px}.merchpanel{z-index:7;opacity:0;pointer-events:none;background:#0b0a09;border:1px solid #262420;width:460px;padding:18px 20px;transition:all .18s ease-out;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(.96);box-shadow:0 20px 70px #000000d9}.merchpanel.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.merch-head{letter-spacing:4px;color:var(--paper);justify-content:space-between;align-items:center;margin-bottom:12px;font-family:Impact,sans-serif;font-size:20px;display:flex}.merch-close{color:#6a665c;cursor:pointer;background:0 0;border:none;font-size:14px}.merch-close:hover{color:var(--paper)}.merch-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.merch-row{margin-top:12px}.merch-cash{letter-spacing:2px;color:#8a867c;font-size:9px}.merch-stores{flex-direction:column;gap:5px;margin-top:10px;display:flex}.merch-stores a{letter-spacing:2px;color:#8a94b8;font-size:9px;text-decoration:none}.merch-stores a:hover{color:var(--paper)}.doorfade{opacity:0;pointer-events:none;z-index:8;background:#000;transition:opacity .18s ease-in;position:fixed;inset:0}.doorfade.on{opacity:1}.startbtn{background:var(--red);color:#fff;letter-spacing:5px;text-transform:uppercase;cursor:pointer;border:none;width:100%;margin-top:22px;padding:15px;font-family:Impact,sans-serif;font-size:21px}.startbtn:hover{background:#e02832;box-shadow:0 0 30px #c81d2580}.poster .fine{letter-spacing:1px;color:#3d3a33;margin-top:14px;font-size:8px;line-height:1.6}.recpill{letter-spacing:2px;color:var(--paper);background:#080809d9;border:1px solid #3a0a0d;align-items:center;gap:7px;padding:6px 14px;font:12px/1 monospace;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.recpill .recdot{background:var(--red);border-radius:50%;width:9px;height:9px;animation:1.1s step-end infinite recblink}@keyframes recblink{50%{opacity:.25}}.camroll{pointer-events:auto;flex-direction:column;gap:6px;max-height:50vh;display:flex;position:absolute;bottom:120px;left:22px;overflow-y:auto}.camroll .rollthumb{filter:saturate(.9);border:1px solid #262420;width:96px;height:54px;display:block;position:relative}.camroll .rollthumb img{object-fit:cover;width:100%;height:100%;display:block}.camroll .rollthumb span{text-shadow:0 0 4px #000;font-size:10px;position:absolute;bottom:2px;right:3px}.camroll .rollthumb:hover{border-color:var(--red)}.endpanel{text-align:center;pointer-events:auto;background:#070708eb;border:1px solid #262420;width:min(440px,90vw);padding:30px 34px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.endpanel h2{letter-spacing:3px;margin-bottom:6px;font-family:Impact,sans-serif;font-size:30px;transform:scaleY(1.25)}.endpanel .sub{letter-spacing:3px;color:#6a665c;text-transform:uppercase;margin-bottom:18px;font-size:10px}.endpanel .streamrow{margin:10px 0}.endpanel a{color:var(--paper);letter-spacing:3px;text-transform:uppercase;border:1px solid #262420;margin:8px 0;padding:11px;font-size:12px;text-decoration:none;display:block}.endpanel a:hover{color:#1db954;border-color:#1db954}.endpanel iframe{border:0;border-radius:12px;margin-top:10px}.endpanel .again{background:var(--red);color:#fff;letter-spacing:3px;text-transform:uppercase;cursor:pointer;border:none;margin-top:16px;padding:11px 26px;font-family:Impact,sans-serif;font-size:15px}.tour-error{letter-spacing:.14em;color:#c9584f;margin-top:6px;font-size:10px}
