.pb-top{fill:var(--pink)}.pb-bottom{fill:var(--raised)}.pb-band{stroke:var(--ink);stroke-width:2}.pb-button{fill:var(--raised);stroke:var(--ink);stroke-width:1.6}.pb-button-core{fill:var(--ink)}.pb-ring{stroke:var(--ink);stroke-width:2}.showcal-grid{display:grid;grid-template-columns:minmax(280px,420px) 1fr;grid-gap:32px;gap:32px;align-items:start}.showcal-card{display:block;background:var(--raised);box-shadow:var(--shadow-lift);border-radius:var(--r-2);padding:18px 18px 14px;text-decoration:none;color:var(--ink);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.showcal-card:hover{transform:translateY(-2px)}.showcal-head{display:flex;align-items:center;gap:10px;background:var(--yellow);margin:-18px -18px 12px;padding:12px 16px;border-radius:var(--r-2) var(--r-2) 0 0}.showcal-ball{width:26px;height:26px;flex:none}.showcal-month{font-family:var(--display);font-size:1.35rem;letter-spacing:.02em}.showcal-days,.showcal-dow{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.showcal-dow{font-family:var(--mono);font-size:var(--fs-eyebrow);color:var(--ink-muted);text-align:center;margin-bottom:6px}.showcal-blank,.showcal-day{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;font-family:var(--mono);font-size:var(--fs-mono)}.showcal-day.is-today .showcal-day-no{outline:2px solid var(--kraft-deep);outline-offset:2px;border-radius:var(--r-round);padding:2px 5px}.showcal-day.has-show{color:var(--ink);font-weight:700}.showcal-day-ball{position:absolute;inset:2px;width:auto;height:auto;opacity:.95}.showcal-day.has-show .showcal-day-no{position:relative;z-index:1;background:var(--yellow-soft);border-radius:var(--r-round);padding:1px 4px;outline:1px solid var(--ink)}.showcal-cta{display:inline-block;margin-top:12px}.showcal-cta,.showcal-next .mono-link{white-space:normal;overflow-wrap:anywhere}.showcal-tap{font-size:var(--fs-mono);margin:-6px 0 16px}.showcal-next-h,.showcal-tap{font-family:var(--mono);color:var(--ink-muted)}.showcal-next-h{font-size:var(--fs-eyebrow);text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px}.showcal-next ul{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-gap:12px;gap:12px}.showcal-next li{display:grid;grid-gap:2px;gap:2px}.showcal-next-date{font-family:var(--mono);font-size:var(--fs-mono);color:var(--ink-soft)}.showcal-next-title{font-weight:700}.showcal-next-venue{color:var(--ink-muted);font-size:.95rem}@media (max-width:760px){.showcal-grid{grid-template-columns:1fr}}.shows-page h1{margin-bottom:10px}.shows-intro{max-width:62ch;color:var(--ink-soft);margin-bottom:26px}.shows-sync{background:var(--kraft);border-radius:var(--r-2);padding:20px 22px;margin-top:34px}.shows-sync h2{margin:0 0 6px;font-size:var(--fs-h2)}.shows-sync p{margin:0 0 12px;max-width:62ch}.shows-sync-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.shows-ics-line{font-size:.95rem;color:var(--ink-soft)}.shows-ics-url{padding:2px 6px;border-radius:var(--r-2);overflow-wrap:anywhere}.shows-copy,.shows-ics-url{font-family:var(--mono);font-size:var(--fs-mono);background:var(--raised)}.shows-copy{border-radius:var(--r-btn);border:1px solid var(--pink);border-radius:var(--r-2);padding:2px 10px;cursor:pointer}.shows-copy:hover{background:var(--yellow-soft)}.shows-note{color:var(--ink-muted);margin:18px 0}.shows-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:22px;gap:22px}.show-card{display:grid;grid-template-columns:220px 1fr;grid-gap:20px;gap:20px;background:var(--raised);box-shadow:var(--shadow-menu);border-radius:var(--r-2);padding:20px 22px}.show-when{display:grid;grid-gap:6px;gap:6px;align-content:start}.show-dates{font-family:var(--display);font-size:1.3rem;line-height:1.2}.show-hours{font-family:var(--mono);font-size:var(--fs-mono);color:var(--ink-soft)}.show-main h3{margin:0 0 6px}.show-admission,.show-notes,.show-where{margin:0 0 6px;color:var(--ink-soft)}.show-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:12px}.shows-past{margin-top:36px}.shows-past h2{font-size:var(--fs-h2)}.shows-past ul{list-style:none;padding:0;display:grid;grid-gap:8px;gap:8px;color:var(--ink-muted)}@media (max-width:640px){.show-card{grid-template-columns:1fr;gap:10px}}