body{background:var(--ink);color:var(--paper);font-family:var(--body);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01" on,"ss02" on;overscroll-behavior:none}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::selection{background:var(--acid);color:var(--acid-ink)}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.08;mix-blend-mode:overlay;background-image:repeating-radial-gradient(circle at 0 0,rgba(255,255,255,.6),transparent 1px),repeating-radial-gradient(circle at 50% 50%,rgba(0,0,0,.6),transparent 1px);background-size:3px 3px,5px 5px}h1,h2,h3,h4{font-family:var(--display);font-weight:700;margin:0;letter-spacing:-.03em}.app{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr auto}.shell{display:grid;grid-template-columns:320px 1fr;gap:0;border-top:1px solid var(--hairline);min-height:calc(100vh - 110px)}.shell>aside,.shell>main,.shell>.rail{border-right:1px solid var(--hairline)}.shell>.rail{border-right:0;border-left:1px solid var(--hairline)}.shell>main{padding:var(--gutter);min-width:0}.topbar{display:flex;align-items:stretch;justify-content:space-between;padding:0 var(--gutter);height:64px;border-bottom:1px solid var(--hairline);background:var(--ink)}.brand{display:flex;align-items:center;gap:14px;font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.04em}.brand .mark{width:28px;height:28px;color:var(--acid);display:block}.topnav{display:flex;align-items:stretch}.topnav a,.topnav button{background:transparent;border:0;color:var(--paper-dim);padding:0 18px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;position:relative;border-left:1px solid var(--hairline);transition:color .12s;display:inline-flex;align-items:center}.topnav>:last-child{border-right:1px solid var(--hairline)}.topnav a:hover,.topnav button:hover{color:var(--paper)}.topnav [aria-current=page],.topnav [aria-current=true]{color:var(--acid)}.topnav [aria-current=page]:after,.topnav [aria-current=true]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--acid)}.topbar-right{display:flex;align-items:center;gap:8px}.topbar-chip{height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;background:transparent;border:1px solid var(--hairline);color:var(--paper);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;position:relative;box-sizing:border-box}.topbar-chip:hover{border-color:var(--acid);color:var(--acid)}.topbar-chip.iconbtn{width:32px;padding:0;color:var(--paper-dim)}.topbar-chip.avatar-chip{width:32px;padding:0;background:var(--ink-3);font-weight:700;font-size:10px}.iconbtn{background:transparent;border:1px solid var(--hairline);width:36px;height:36px;display:grid;place-items:center;color:var(--paper-dim);position:relative;cursor:pointer}.iconbtn:hover{border-color:var(--acid);color:var(--acid)}.iconbtn .dot{position:absolute;top:6px;right:6px;width:6px;height:6px;background:var(--acid);border-radius:50%}.avatar{width:36px;height:36px;background:var(--ink-3);display:grid;place-items:center;font-family:var(--mono);font-size:11px;font-weight:700;border:1px solid var(--hairline);color:var(--paper);letter-spacing:0;flex-shrink:0}.avatar.lg{width:56px;height:56px;font-size:14px}.avatar.xl{width:88px;height:88px;font-size:22px}.ticker{height:28px;background:var(--acid);color:var(--acid-ink);display:flex;align-items:center;overflow:hidden;position:relative;border-bottom:1px solid var(--hairline)}.ticker-inner{display:flex;white-space:nowrap;animation:scroll-x 60s linear infinite;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;gap:36px;padding-right:36px}.ticker-inner span{display:inline-flex;align-items:center;gap:36px}.ticker-inner .dot{width:4px;height:4px;background:var(--acid-ink);border-radius:50%;flex-shrink:0}.sidebar{padding:var(--gutter) 0;background:var(--ink)}.sidebar-section{padding:0 var(--gutter);margin-bottom:28px}.sidebar-label{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--paper-mute);margin-bottom:12px;display:flex;justify-content:space-between}.sidebar-link{display:flex;align-items:center;gap:12px;padding:8px 0;color:var(--paper-dim);font-family:var(--display);font-weight:500;font-size:14px;cursor:pointer;border:0;background:0;width:100%;text-align:left}.sidebar-link:hover{color:var(--paper)}.sidebar-link[aria-current=true]{color:var(--acid)}.sidebar-link .badge{margin-left:auto;font-family:var(--mono);font-size:10px;background:var(--ink-3);padding:2px 6px;border:1px solid var(--hairline);color:var(--paper-dim)}.sidebar-link[aria-current=true] .badge{background:var(--acid);color:var(--acid-ink);border-color:var(--acid)}.friend-row{display:flex;align-items:center;gap:10px;padding:8px 0;cursor:pointer}.friend-row:hover{color:var(--acid)}.friend-row .avatar{width:28px;height:28px;font-size:10px}.friend-row .name{font-size:13px}.friend-row .status{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--paper-mute);letter-spacing:.08em}.friend-row .status.dot-only{width:8px;height:8px;padding:0}.friend-row .status.dot-only:before{margin-right:0}.friend-row .status.live{color:var(--acid)}.friend-row .status.live:before{content:"";display:inline-block;width:6px;height:6px;background:var(--acid);border-radius:50%;margin-right:6px;vertical-align:middle}.friend-row .status.tonight{color:var(--paper)}.friend-row .status.tonight:before{content:"";display:inline-block;width:6px;height:6px;border:1px solid var(--paper);border-radius:50%;margin-right:6px;vertical-align:middle;background:transparent}.friend-row .status.tomorrow{color:var(--paper)}.friend-row .status.tomorrow:before{content:"";display:inline-block;width:6px;height:6px;border:1px solid var(--paper);border-radius:50%;margin-right:6px;vertical-align:middle;background:transparent}.rail{padding:var(--gutter);background:var(--ink)}.rail-section{margin-bottom:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--hairline);background:transparent;color:var(--paper);padding:10px 16px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;line-height:1;box-sizing:border-box;transition:all .12s;height:40px;cursor:pointer}.btn:hover{border-color:var(--acid);color:var(--acid)}.btn-primary{background:var(--acid);color:var(--acid-ink);border-color:var(--acid)}.btn-primary:hover{background:transparent;color:var(--acid);border-color:var(--acid)}.btn-ghost{border-color:var(--hairline);color:var(--paper-dim)}.btn-ghost:hover{color:var(--acid);border-color:var(--acid)}.btn-block{width:100%}.btn-lg{height:52px;padding:0 24px;font-size:12px}.btn[disabled],.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--hairline)}.section-head h2{font-size:28px;letter-spacing:-.04em}.section-head .meta{font-family:var(--mono);font-size:11px;color:var(--paper-mute);letter-spacing:.12em;text-transform:uppercase}.event-card{display:grid;grid-template-columns:220px 1fr auto;gap:24px;padding:var(--row) 0;border-bottom:1px solid var(--hairline);align-items:stretch;cursor:pointer;transition:background .12s;position:relative}.event-card:hover{background:var(--ink-2)}.event-card:hover .event-flyer{transform:scale(.98)}.event-card:hover .event-cta .arrow{transform:translate(4px)}.event-flyer{aspect-ratio:1 / 1;background:var(--ink-3);position:relative;overflow:hidden;transition:transform .22s}.event-flyer .grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:12px 12px}.event-flyer .stamp{position:absolute;bottom:12px;left:12px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-dim);background:rgba(0,0,0,.6);padding:4px 6px}.event-flyer .lg-num{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--display);font-size:90px;font-weight:800;color:var(--paper);letter-spacing:-.06em;line-height:.85;text-align:center}.event-body{display:flex;flex-direction:column;min-width:0}.event-meta-row{font-family:var(--mono);font-size:11px;color:var(--paper-mute);letter-spacing:.12em;text-transform:uppercase;display:flex;gap:14px;margin-bottom:10px;flex-wrap:wrap}.event-meta-row .live{color:var(--acid)}.event-meta-row .live:before{content:"";display:inline-block;width:6px;height:6px;background:var(--acid);border-radius:50%;margin-right:6px;vertical-align:middle;animation:pulse 1.4s ease-in-out infinite}.event-meta-row .spare{color:var(--acid)}.event-meta-row .spare:before{content:"+";display:inline-block;margin-right:6px;font-weight:700}.event-title{font-family:var(--display);font-size:32px;font-weight:700;letter-spacing:-.04em;line-height:1;margin:0 0 12px;text-wrap:balance}.event-date-block{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;font-family:var(--mono);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper)}.event-card:hover .event-title{color:var(--acid)}.event-lineup{font-family:var(--mono);font-size:12px;color:var(--paper-dim);margin-bottom:14px;letter-spacing:.04em;line-height:1.5}.event-lineup b{color:var(--paper);font-weight:600}.event-footer{margin-top:auto;display:flex;align-items:center;gap:16px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper-mute);flex-wrap:wrap}.event-footer .going{display:flex;align-items:center;gap:8px}.event-footer .stack{display:flex}.event-footer .stack .avatar{width:24px;height:24px;font-size:9px;margin-left:-8px;border:1px solid var(--ink)}.event-footer .stack .avatar:first-child{margin-left:0}.event-cta{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;text-align:right;min-width:90px}.event-cta .day{font-family:var(--display);font-size:56px;font-weight:800;line-height:.9;letter-spacing:-.05em}.event-cta .month{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper-mute);margin-bottom:8px}.event-cta .arrow{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--acid);transition:transform .22s}.hero-event{position:relative;border:1px solid var(--hairline);margin-bottom:32px;display:grid;grid-template-columns:1.2fr 1fr;background:var(--ink-2);overflow:hidden}.hero-event .hero-flyer{position:relative;aspect-ratio:4 / 5;background:repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0 1px,transparent 1px 12px),var(--ink-3);border-right:1px solid var(--hairline);overflow:hidden}.hero-event .hero-flyer .smear{position:absolute;inset:0;background:radial-gradient(120% 80% at 0% 100%,var(--acid-glow),transparent 60%),radial-gradient(80% 60% at 100% 0%,rgba(255,255,255,.08),transparent 60%);mix-blend-mode:screen}.hero-event .hero-flyer .massive{position:absolute;inset:24px;display:flex;flex-direction:column;justify-content:space-between}.hero-event .hero-flyer .massive h3{font-size:clamp(48px,6vw,96px);font-weight:800;letter-spacing:-.06em;line-height:.85;text-wrap:balance}.hero-event .hero-flyer .corner-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper-dim)}.hero-event .hero-info{padding:28px;display:flex;flex-direction:column;gap:18px}.hero-event .hero-tag{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--acid);display:flex;align-items:center;gap:10px}.hero-event .hero-tag:before{content:"";width:24px;height:1px;background:var(--acid)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 24px;border-top:1px solid var(--hairline);padding-top:18px}.detail-grid dt{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper-mute);margin-bottom:4px}.detail-grid dd{margin:0;font-family:var(--display);font-size:16px;font-weight:500}.filters{display:flex;gap:0;margin-bottom:16px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);flex-wrap:wrap}.filter-chip{padding:10px 16px;border:0;background:transparent;color:var(--paper-dim);font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;border-right:1px solid var(--hairline);position:relative;cursor:pointer}.filter-chip:hover{color:var(--paper)}.filter-chip[aria-pressed=true]{color:var(--acid-ink);background:var(--acid)}.filter-chip .count{margin-left:8px;opacity:.65}.detail-page{display:grid;grid-template-columns:1fr 380px;gap:32px}@media (max-width: 1100px){.detail-page{grid-template-columns:1fr}}.detail-flyer{aspect-ratio:4 / 5;background:var(--ink-3);border:1px solid var(--hairline);position:relative;overflow:hidden;margin-bottom:24px}.detail-title{font-size:clamp(42px,5.5vw,80px);font-weight:800;letter-spacing:-.05em;line-height:.92;margin:8px 0 16px;text-wrap:balance}.lineup-list{border-top:1px solid var(--hairline);margin-top:24px}.lineup-row{display:grid;grid-template-columns:60px 1fr auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--hairline)}.lineup-row .slot{font-family:var(--mono);font-size:11px;color:var(--acid);letter-spacing:.14em}.lineup-row .artist{font-family:var(--display);font-size:22px;font-weight:600;letter-spacing:-.02em}.lineup-row .desc{font-family:var(--mono);font-size:11px;color:var(--paper-mute);letter-spacing:.06em;text-transform:uppercase;margin-top:2px}.lineup-row .duration{font-family:var(--mono);font-size:11px;color:var(--paper-dim);letter-spacing:.12em;text-transform:uppercase}.lineup-row.headliner .artist{font-size:28px}.lineup-row.headliner .slot{color:var(--acid)}.rsvp-card{border:1px solid var(--hairline);background:var(--ink-2);padding:24px}.rsvp-card .countdown{font-family:var(--display);font-size:22px;font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-bottom:6px}.attendee-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:8px}.attendee-grid .avatar{width:100%;aspect-ratio:1}.profile-head{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding-bottom:24px;border-bottom:1px solid var(--hairline);margin-bottom:24px}.profile-head h1{font-size:48px}.stat-row{display:flex;gap:32px;margin-top:12px;flex-wrap:wrap}.stat-row .stat{display:flex;flex-direction:column}.stat-row .stat .num{font-family:var(--display);font-size:28px;font-weight:700;line-height:1;letter-spacing:-.03em}.stat-row .stat .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-mute);margin-top:4px}.notif-row{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--hairline)}.notif-row.unread{background:linear-gradient(90deg,var(--acid-glow),transparent 40%);padding-left:16px;margin:0 -16px}.notif-row .text{font-size:14px}.notif-row .text b{font-weight:600}.notif-row .ts{font-family:var(--mono);font-size:10px;color:var(--paper-mute);letter-spacing:.12em;text-transform:uppercase}.form-grid{max-width:720px}.form-grid .field{margin-bottom:24px}.form-grid label.lbl,.field>label{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper-mute);margin-bottom:8px}.form-grid input[type=text],.form-grid input[type=tel],.form-grid input[type=email],.form-grid input[type=datetime-local],.form-grid input[type=date],.form-grid input[type=number],.form-grid textarea,.form-grid select,.field>input[type=text],.field>input[type=tel],.field>input[type=email],.field>input[type=datetime-local],.field>input[type=date],.field>input[type=number],.field>textarea,.field>select{width:100%;box-sizing:border-box;background:var(--ink-2);border:1px solid var(--hairline);color:var(--paper);font-family:var(--display);font-size:18px;font-weight:500;padding:14px 16px;letter-spacing:-.01em;border-radius:0}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus,.field>input:focus,.field>textarea:focus,.field>select:focus{outline:none;border-color:var(--acid)}.form-grid textarea,.field>textarea{min-height:120px;resize:vertical;font-family:var(--body);font-size:15px}.form-grid input[aria-invalid=true],.field>input[aria-invalid=true]{border-color:var(--acid)}.marquee-block{border:1px solid var(--hairline);background:var(--ink-2);padding:18px;margin-bottom:24px}.marquee-block .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--acid);margin-bottom:8px;display:flex;justify-content:space-between}.marquee-block .num{font-family:var(--display);font-size:36px;font-weight:800;letter-spacing:-.03em;line-height:1}.marquee-block .sub{font-family:var(--mono);font-size:11px;color:var(--paper-mute);margin-top:4px;letter-spacing:.06em}.tag{display:inline-flex;align-items:center;padding:4px 8px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-dim);border:1px solid var(--hairline);margin-right:4px}.tag.acid{color:var(--acid-ink);background:var(--acid);border-color:var(--acid)}.hr{border:0;border-top:1px solid var(--hairline);margin:24px 0}@media (max-width: 1100px){.shell{grid-template-columns:280px 1fr}.shell>.rail{display:none}}@media (max-width: 760px){.shell{grid-template-columns:1fr}.shell>aside{display:none}.event-card{grid-template-columns:100px 1fr}.event-cta{display:none}.hero-event{grid-template-columns:1fr}.topnav a,.topnav button{padding:0 10px;font-size:10px}.topbar{padding:0 16px}}
