
@font-face { font-family: "Fraunces Variable"; font-style: normal; font-weight: 100 900; font-display: block; src: url(fonts/fraunces-latin-opsz-normal.woff2) format("woff2-variations"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Fraunces Variable"; font-style: italic; font-weight: 100 900; font-display: block; src: url(fonts/fraunces-latin-opsz-italic.woff2) format("woff2-variations"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Hanken Grotesk"; font-weight: 400; font-display: block; src: url(fonts/hanken-grotesk-latin-400-normal.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Hanken Grotesk"; font-weight: 500; font-display: block; src: url(fonts/hanken-grotesk-latin-500-normal.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Hanken Grotesk"; font-weight: 600; font-display: block; src: url(fonts/hanken-grotesk-latin-600-normal.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Geist Mono"; font-weight: 400; font-display: block; src: url(fonts/geist-mono-latin-400-normal.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Geist Mono"; font-weight: 500; font-display: block; src: url(fonts/geist-mono-latin-500-normal.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Fraunces Variable"; font-style: normal; font-weight: 100 900; font-display: block; src: url(fonts/fraunces-latin-ext-opsz-normal.woff2) format("woff2-variations"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Fraunces Variable"; font-style: italic; font-weight: 100 900; font-display: block; src: url(fonts/fraunces-latin-ext-opsz-italic.woff2) format("woff2-variations"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Hanken Grotesk"; font-weight: 400; font-display: block; src: url(fonts/hanken-grotesk-latin-ext-400-normal.woff2) format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Hanken Grotesk"; font-weight: 500; font-display: block; src: url(fonts/hanken-grotesk-latin-ext-500-normal.woff2) format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Hanken Grotesk"; font-weight: 600; font-display: block; src: url(fonts/hanken-grotesk-latin-ext-600-normal.woff2) format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Geist Mono"; font-weight: 400; font-display: block; src: url(fonts/geist-mono-latin-ext-400-normal.woff2) format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Geist Mono"; font-weight: 500; font-display: block; src: url(fonts/geist-mono-latin-ext-500-normal.woff2) format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
:root {
  --bg: #151412; --surface: #1c1b18; --line: #2e2c28; --line-2: #3a3833;
  --text: #ece8df; --ink-2: #b9b3a7; --muted: #857f74; --accent: #ff6b42; --accent-2: #ff8a66; --acc-rgb: 255,107,66; --ok: #7BC67E; --bad: #F2726B;
  --display: "Fraunces Variable", "Iowan Old Style", Georgia, serif; --body: "Hanken Grotesk", "Helvetica Neue", Arial, sans-serif; --mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;
  --map-sea: #151412; --map-land: #201f1c; --map-coast: #5b574f; --map-grat: #23221f; --on-accent: #151412; --grain: .06;
}
:root[data-theme="light"] {
  --bg: #ecefec; --surface: #e2e6e2; --line: #cdd4d0; --line-2: #b9c1bd;
  --text: #18201e; --ink-2: #4c5753; --muted: #7c8783; --accent: #c2381b; --accent-2: #a82f16; --acc-rgb: 194,56,27; --ok: #2E8540; --bad: #C9372C;
  --map-sea: #ecefec; --map-land: #dde2de; --map-coast: #9aa5a1; --map-grat: #d9dfdb; --on-accent: #FFFFFF; --grain: .035;
}
@keyframes slideL { from { opacity: .3; transform: translateX(28px); } to { opacity: 1; transform: none; } }
@keyframes slideR { from { opacity: .3; transform: translateX(-28px); } to { opacity: 1; transform: none; } }
#app.slide-l { animation: slideL .22s ease-out; } #app.slide-r { animation: slideR .22s ease-out; }
@media (prefers-reduced-motion: reduce) { #app.slide-l, #app.slide-r { animation: none; } }
.to-top { position: fixed; right: 16px; bottom: max(16px, env(safe-area-inset-bottom)); z-index: 1000; width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--line-2); background: var(--surface); color: var(--text);
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; box-shadow: 0 4px 14px rgba(0,0,0,.3); opacity: 0; transform: translateY(8px); pointer-events: none; transition: opacity .2s, transform .2s; }
.bottom-nav { display: none; }
.to-top.show { opacity: 1; transform: none; pointer-events: auto; }
.head-side { display: flex; align-items: center; gap: 8px; }
.head-btns { display: flex; gap: 8px; }
.next-foot { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 10px; }
.next-foot a.link { text-decoration: none; }
.next-links { display: flex; gap: 16px; flex-wrap: wrap; justify-content: flex-end; }
.head-btns [hidden] { display: none; }
.theme-btn { width: 32px; height: 32px; border-radius: 50%; border: 1px solid var(--line-2); background: var(--surface); color: var(--muted); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; flex: none; }
.theme-btn svg { flex: none; }
* { box-sizing: border-box; }
html { touch-action: manipulation; }
body { margin: 0; background: var(--bg); color: var(--text); font: 16px/1.55 var(--body); }
a { color: var(--accent); }
button { font: inherit; }
.wrap { max-width: 1200px; margin: 0 auto; padding: 0 16px; }
header { border-bottom: 0; }
.head { padding-top: max(24px, env(safe-area-inset-top)); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 14px 24px; }
.brand { display: flex; align-items: center; gap: 14px; min-width: 0; }
h1 { margin: 0; font: 600 40px/1 var(--display); letter-spacing: .01em; }
.eyebrow { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.brand .eyebrow { margin-top: 8px; }
#app { min-height: 100vh; min-height: 100svh; }
.sync { min-width: 190px; min-height: 32px; box-sizing: border-box; font-size: 12px; color: var(--muted); display: inline-flex; gap: 7px; align-items: center; padding: 6px 12px; border: 1px solid var(--line-2); border-radius: 999px; background: var(--surface); white-space: nowrap; }
.sync .dot { width: 7px; height: 7px; border-radius: 50%; background: #7BC67E; box-shadow: 0 0 0 3px rgba(123,198,126,.18); }
nav { display: flex; gap: 4px; overflow-x: auto; margin-top: 20px; scrollbar-width: none; }
nav::-webkit-scrollbar { display: none; }
nav a.tab-link { text-decoration: none; display: inline-flex; align-items: center; }
nav button, nav a.tab-link { background: none; border: 0; border-bottom: 3px solid transparent; color: var(--muted); padding: 12px 14px; min-height: 44px; cursor: pointer; white-space: nowrap; font-weight: 500; }
nav button[aria-current="page"] { color: var(--text); border-bottom-color: var(--accent); font-weight: 600; }
main.wrap { padding-top: 18px; padding-bottom: 24px; display: flex; flex-direction: column; gap: 24px; }
.grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--min, 220px)), 1fr)); }
@media (min-width: 1100px) { .fun-card .fun-grid { grid-template-columns: repeat(5, 1fr); } }
.card { background: var(--surface); border: 1px solid var(--line); border-radius: 12px; padding: 20px; min-width: 0; }
.card h2 { margin: 0 0 14px; font: 500 22px/1.2 var(--display); }
.card-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 0 12px; margin-bottom: 14px; }
.card-head h2 { margin-bottom: 0; flex: none; }
.kpi-label { font-size: 13px; color: var(--muted); }
.kpi { font: 500 44px/1.1 var(--display); }
.kpi.sm { font-size: 24px; line-height: 1.25; }
.accent { color: var(--accent); }
.muted { color: var(--muted); }
.link { background: none; border: 0; color: var(--accent); cursor: pointer; padding: 8px 0; font-size: 14px; }
.bars { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.bars .row { display: flex; justify-content: space-between; gap: 8px; font-size: 14px; }
.bars .row span:last-child, .num { color: var(--muted); font-variant-numeric: tabular-nums; }
.track { height: 6px; background: var(--line); border-radius: 3px; margin-top: 4px; }
.fill { height: 6px; background: var(--accent); border-radius: 3px; }
.bar-aside { margin-left: 6px; font-size: 12px; color: var(--muted); opacity: .75; white-space: nowrap; }
.bars .row span:last-child { white-space: nowrap; }
.rank { display: inline-block; min-width: 24px; color: var(--muted); font-variant-numeric: tabular-nums; }
.barbtn { display: block; width: 100%; background: none; border: 0; padding: 3px 0; color: inherit; text-align: left; cursor: pointer; font: inherit; }
button.year { background: none; border: 0; padding: 0; color: inherit; cursor: pointer; font: inherit; }
.list-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 16px; }
.list-title { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; min-width: 0; }
.list-title h2 { margin: 0; font: 500 26px/1.2 var(--display); }
.list-title > .muted { position: relative; top: 3px; }
.search { position: relative; width: 100%; max-width: 320px; }
.search svg { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); pointer-events: none; color: var(--muted); }
.search input[type=search] { max-width: none; padding-left: 38px; }
.sbar { position: relative; width: 100%; max-width: 320px; } .sbar .search { max-width: none; }
.fbtn, .fchips, .fs-scrim, .fs-grab, .fs-head, .fs-done, .phone-only { display: none; }
.fs-panel { display: contents; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.chip-label { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--accent); }
.chip { display: inline-flex; align-items: center; gap: 8px; background: rgba(var(--acc-rgb),.10); border: 1px solid rgba(var(--acc-rgb),.35); border-radius: 999px; padding: 2px 2px 2px 12px; font-size: 14px; max-width: 100%; }
.chip button { background: none; border: 0; color: var(--muted); cursor: pointer; width: 32px; height: 32px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.years { display: flex; align-items: flex-end; gap: 4px; height: 200px; overflow-x: auto; padding-bottom: 4px; }
.year { flex: 1 0 28px; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 100%; gap: 4px; }
.year .v { font-size: 11px; color: var(--muted); }
.year .b { width: 100%; background: var(--accent); border-radius: 3px 3px 0 0; min-height: 2px; }
.year .y { font-size: 11px; color: var(--muted); }
.months { height: 170px; overflow: visible; }
.months .year { flex: 1 1 0; min-width: 0; }
.year .b.part { background: rgba(var(--acc-rgb),.45); }
.year .b.none { background: var(--line); }
.year .b.future { background: transparent; }
.year .y.future { opacity: .45; }
.year .b.booked, .booked-key { background: transparent; border: 1.5px dashed var(--accent); border-bottom: 0; border-radius: 3px 3px 0 0; }
.booked-key { display: inline-block; width: 10px; height: 10px; border-bottom: 1.5px dashed var(--accent); border-radius: 2px; margin-right: 6px; vertical-align: -1px; }
.v-booked { color: var(--accent); }
.fun { display: flex; flex-direction: column; gap: 2px; }
button.card { width: 100%; display: flex; flex-direction: column; justify-content: flex-start; align-items: stretch; text-align: left; font: inherit; color: inherit; cursor: pointer; transition: border-color .15s; }
button.card:focus-visible { border-color: var(--accent); }
.card .go { color: var(--accent); }
.fun .big { font: 500 26px/1.2 var(--display); color: var(--accent); }
.fun .small { font-size: 13px; color: var(--muted); }
label { font-size: 13px; color: var(--muted); display: block; margin-bottom: 4px; }
input[type=search] { width: 100%; max-width: 360px; background: var(--surface); border: 1px solid var(--line-2); border-radius: 8px; color: var(--text); padding: 10px 12px; font-size: 16px; min-height: 44px; }
input::placeholder { color: #8A9099; }
input:focus-visible, button:focus-visible, a:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.table-box { overflow-x: auto; border: 1px solid var(--line); border-radius: 12px; }
.mlist, .msort { display: none; }
.mlist { list-style: none; margin: 0; padding: 0; border: 1px solid var(--line); border-radius: 12px; }
.mlist li { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px; }
.mlist li + li { border-top: 1px solid var(--line); }
.m-rank { flex: none; min-width: 22px; color: var(--muted); font-size: 13px; font-variant-numeric: tabular-nums; }
.m-main { flex: 1; min-width: 0; }
.m-title { font-weight: 600; overflow-wrap: anywhere; }
.m-title .open, .m-title .open.muted-btn { background: none; border: 0; padding: 0; font: inherit; color: var(--text); font-weight: 600; text-align: left; cursor: pointer; }
.m-title .open::after { content: ""; position: absolute; inset: 0; }
.m-sub { margin-top: 2px; font-size: 13px; color: var(--muted); overflow-wrap: anywhere; }
.m-sub button, .m-sub [role="button"] { position: relative; z-index: 1; background: none; border: 0; padding: 0; font: inherit; color: inherit; text-decoration: underline; text-decoration-color: var(--line-2); text-underline-offset: 3px; cursor: pointer; }
.m-sub span[style] { white-space: normal !important; }
.m-tag { margin-top: 4px; font-size: 12px; } .m-tag br { display: none; } .m-tag .accent ~ .tag::before { content: " · "; white-space: pre; }
.m-val { flex: none; text-align: right; font: 600 18px/1 var(--display); font-variant-numeric: tabular-nums; }
.m-val small { display: block; margin-top: 3px; font: 400 11px/1 var(--body); color: var(--muted); }
.mchip { display: none; }
.quick [data-clear] { order: 9; }
.clear-all { padding: 0; width: 30px; height: 30px; justify-content: center; flex: none; }
.clear-all svg { flex: none; }
.empty-filters { text-align: center; padding: 40px 0; border: 1px dashed var(--line-2); border-radius: 12px; } .empty-filters p { margin: 0 0 12px; }
.quick .icon-chip { padding: 0; width: 30px; height: 30px; justify-content: center; flex: none; }
.list-head + .quick { margin-top: -8px; }
table { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 14px; }
th.num, td.num { width: 1%; white-space: nowrap; }
th { text-align: left; font-weight: 500; color: var(--muted); background: var(--surface); padding: 12px 16px; }
td { padding: 10px 16px; border-top: 1px solid var(--line); vertical-align: middle; }
td .open { background: none; border: 0; color: var(--text); font-weight: 600; cursor: pointer; padding: 4px 0; text-align: left; }
.toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 12px; }
.toolbar h2 { margin: 0; font: 500 26px/1.2 var(--display); }
.detail { display: flex; flex-direction: column; gap: 18px; }
.detail-top { display: flex; justify-content: space-between; align-items: center; }
.detail-nav { display: flex; gap: 8px; }
.icon-btn { width: 44px; height: 44px; display: grid; place-items: center; background: none; border: 1px solid var(--line-2); border-radius: 10px; color: var(--text); font-size: 20px; line-height: 1; cursor: pointer; }
.icon-btn.off { opacity: .3; cursor: default; }
.detail-head { display: flex; gap: 16px; align-items: center; }
.next-date.big { width: 64px; padding: 6px 0 7px; }
.next-date.big .d { font-size: 30px; }
.detail-title { margin: 0; font: 600 40px/1.1 var(--display); overflow-wrap: anywhere; }
.setlist-src { display: inline-block; margin-top: 14px; }
.list-note { margin: -12px 0 0; }
.detail-meta { margin-top: 4px; line-height: 1.35; }
.card h2.detail-title { margin: 0; }
.inline-link { background: none; border: 0; padding: 0; font: inherit; color: inherit; cursor: pointer; display: inline; text-decoration: underline; text-decoration-color: var(--line-2); text-underline-offset: 3px; }
.facts { display: flex; flex-wrap: wrap; gap: 8px; }
.fact { font-size: 12px; color: var(--muted); border: 1px solid var(--line-2); border-radius: 999px; padding: 4px 10px; }
.history { display: flex; flex-direction: column; gap: 8px; }
.fun-card .card { background: none; }
.history-list { display: flex; flex-wrap: wrap; gap: 6px; }
.edition + .edition { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); }
.quick { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.qpick { position: relative; }
.qpick svg { opacity: .7; }
.qpick select { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; font-size: 16px; -webkit-appearance: none; appearance: none; }
.qpick:focus-within { outline: 2px solid var(--accent); outline-offset: 2px; }
.fday { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 8px; align-items: baseline; }
.fday + .fday { margin-top: 8px; }
.fday-date { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); white-space: nowrap; }
.edition-meta { flex-basis: 100%; font-size: 15px; color: var(--text); }
.edition-stats { flex-basis: 100%; font-size: 13px; color: var(--muted); }
.edition .hist { color: var(--text); background: var(--line); }
.setstrip { display: grid; grid-template-columns: repeat(10, 1fr); gap: 4px; align-items: end; height: 96px; margin-top: 8px; padding-top: 16px; border-bottom: 2px solid var(--line-2); }
.setstrip-col { height: 100%; display: flex; flex-direction: column; justify-content: flex-end; position: relative; }
.setstrip-bar { display: block; background: var(--accent); border-radius: 3px 3px 0 0; min-height: 3px; }
.setstrip-bar.enc { background: repeating-linear-gradient(135deg, var(--text) 0 3px, transparent 3px 6px); opacity: .75; border-radius: 3px 3px 0 0; }
.setstrip-bar.enc + .setstrip-bar { border-radius: 0; }
.setstrip-n { font-size: 11px; color: var(--muted); text-align: center; margin-bottom: 3px; }
.setstrip-axis { display: flex; justify-content: space-between; font-size: 12px; color: var(--muted); margin-top: 4px; }
.setstrip-legend { font-size: 13px; margin-top: 10px; } .setstrip-legend b { color: var(--text); font-weight: 600; }
.setstrip-key { display: inline-block; width: 10px; height: 10px; border-radius: 2px; background: repeating-linear-gradient(135deg, var(--text) 0 2px, transparent 2px 4px); opacity: .75; margin-right: 5px; vertical-align: -1px; }
.setstrip-key.main { background: var(--accent); opacity: 1; }
.new-dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); margin-right: 6px; vertical-align: 2px; }
.first-time { color: var(--accent); }
.delta { font: 500 14px/1 var(--body); margin-left: 8px; vertical-align: middle; color: var(--muted); white-space: nowrap; }
.delta.up { color: var(--ok); }
.delta.down { color: var(--bad); }
.fstrip { display: grid; grid-template-columns: repeat(var(--n), minmax(3px, 1fr)); gap: 2px; align-items: end; height: 26px; min-width: 170px; max-width: 320px; }
.fstrip .fs-y { display: flex; align-items: flex-end; height: 100%; padding: 0; border: 0; background: linear-gradient(var(--line-2), var(--line-2)) bottom / 100% 2px no-repeat; }
.fstrip button.fs-y { cursor: pointer; }
.fstrip .fs-y span { display: block; width: 100%; background: var(--accent); border-radius: 1px 1px 0 0; }
.fstrip button.fs-y:hover span, .fstrip button.fs-y:focus-visible span { background: var(--text); }
.m-tag .fstrip { margin-top: 6px; max-width: none; height: 22px; }
.edition-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin-bottom: 12px; }
.year-link { background: none; border: 0; padding: 0; font: 600 22px/1.1 var(--display); color: var(--text); cursor: pointer; }
.hist { text-align: left; font: inherit; font-size: 13px; background: var(--line); border: 0; border-radius: 6px; padding: 4px 9px; color: var(--muted); cursor: pointer; }
span.hist { cursor: default; }
.hist.cur { background: var(--accent); color: var(--on-accent); font-weight: 600; cursor: default; }
.sec-title { margin: 0; font: 500 18px/1.2 var(--display); }
.badge { font-size: 11px; border-radius: 999px; padding: 1px 8px; margin-left: 4px; background: rgba(var(--acc-rgb),.15); color: var(--accent); white-space: nowrap; }
.badge.cover { background: var(--line); color: var(--muted); }
.set-label.encore { color: var(--accent); }
.btn { align-self: flex-start; background: none; border: 1px solid var(--line-2); border-radius: 8px; color: var(--text); padding: 10px 14px; min-height: 44px; cursor: pointer; }
ol.setlist { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; }
ol.setlist li { display: grid; grid-template-columns: 2em minmax(0, 1fr); column-gap: .45em; align-items: baseline; }
ol.setlist .n { text-align: right; font-variant-numeric: tabular-nums; }
ol.setlist .inline-link { text-decoration: none; }
ol.setlist .inline-link::after { content: "\203A"; margin-left: 6px; color: var(--muted); opacity: .6; }
ol.setlist .inline-link:empty::after { content: none; }
ol.setlist li.tape { color: var(--muted); }
ol.setlist li.tape .n { align-self: center; height: 1.1em; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239AA0A6' stroke-width='1.8' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='2'/%3E%3Ccircle cx='8.5' cy='11' r='1.8'/%3E%3Ccircle cx='15.5' cy='11' r='1.8'/%3E%3Cpath d='M10.3 11h3.4M7 19l1.5-3.5h7L17 19'/%3E%3C/svg%3E") right center / contain no-repeat; }
.set-label { margin: 12px 0 4px; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.tag { font-size: 12px; color: var(--muted); }
.more { text-align: center; }
.card .more { margin-top: 16px; }
.about { display: flex; gap: 20px; align-items: flex-start; }
.about h2 { margin: 0 0 6px; }
.about p { margin: 0 0 14px; color: var(--muted); max-width: 62ch; }
.about .btn { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--text); }
.eyebrow-btn { background: none; border: 0; padding: 0; font: inherit; color: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; text-align: left; }
@media (max-width: 600px) { .about { flex-direction: column; align-items: center; text-align: center; } .about p { margin-inline: auto; } }
.duo { display: grid; gap: 16px; } @media (min-width: 900px) { .duo { grid-template-columns: 1fr 1fr; } .duo > :only-child { grid-column: 1 / -1; } }
button.next-item { width: calc(100% + 16px); background: none; border: 0; font: inherit; text-align: left; cursor: pointer; }
.next-item { display: flex; align-items: center; gap: 14px; padding: 8px; margin: 0 -8px; border-radius: 8px; color: inherit; text-decoration: none; }
.next-date { flex: none; width: 52px; text-align: center; border: 1px solid var(--line-2); border-radius: 8px; padding: 4px 0 5px; line-height: 1; }
.next-date .m { display: block; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); }
.next-date .d { display: block; font: 500 24px/1.1 var(--display); }
.next-date .y { display: block; font-size: 10px; color: var(--muted); margin-top: 1px; }
.next-when { flex: none; font-size: 13px; color: var(--muted); white-space: nowrap; }
.next-col { flex: none; width: 64px; display: flex; flex-direction: column; align-items: center; gap: 5px; }
.next-col .next-when { font-size: 11px; line-height: 1.2; }
.next-when.soon { color: var(--accent); font-weight: 600; }
.otd-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.otd-item { width: 100%; display: flex; align-items: center; gap: 14px; background: none; border: 0; border-radius: 8px; padding: 8px; margin: 0 -8px; color: inherit; text-align: left; cursor: pointer; font: inherit; }
.otd-year { font: 500 22px/1 var(--display); color: var(--accent); min-width: 52px; }
.otd-main { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.th-btn { background: none; border: 0; padding: 0; color: inherit; font: inherit; cursor: pointer; display: inline-flex; gap: 6px; align-items: center; white-space: nowrap; }
.th-btn .arrow { font-size: 11px; opacity: .5; }
th[aria-sort] .th-btn { color: var(--text); } th[aria-sort] .arrow { opacity: 1; color: var(--accent); }
td .muted-btn { font-weight: 400; color: var(--muted); }
.facts-list { margin: 0; padding-left: 18px; display: grid; gap: 6px; }
.on-shelf { display: inline-flex; vertical-align: -2px; margin-left: 4px; }
.toggle { font: inherit; font-size: 13px; display: inline-flex; align-items: center; gap: 6px; background: var(--line); border: 1px solid transparent; border-radius: 999px; padding: 4px 11px; color: var(--muted); cursor: pointer; }
.toggle.on { border-color: var(--accent); color: var(--text); }
.seg { display: inline-flex; gap: 6px; }
.seg button { font: inherit; font-size: 13px; background: none; border: 1px solid var(--line-2); border-radius: 999px; padding: 3px 14px; color: var(--muted); cursor: pointer; }
.seg button:disabled { opacity: .35; cursor: default; }
.seg button.on { background: rgba(var(--acc-rgb),.12); border-color: rgba(var(--acc-rgb),.4); color: var(--text); font-weight: 600; }
.records { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 8px; }
.records a { display: flex; gap: 10px; align-items: center; padding: 8px 10px; border-radius: 8px; background: var(--line); color: inherit; text-decoration: none; }
.records a > span { display: flex; flex-direction: column; min-width: 0; }
.records .r-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.records .vinyl { flex: none; }
.text-link { background: none; border: 0; padding: 0; font: inherit; color: var(--accent); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.title-link { background: none; border: 0; padding: 0; color: inherit; font: inherit; cursor: pointer; text-align: left; }
.detail-wide { display: flex; flex-direction: column; gap: 24px; }
.section-title { margin: 16px 0 0; font: 500 26px/1.2 var(--display); }
.year-nav { display: flex; gap: 8px; align-items: center; }
.year-nav .btn { align-self: auto; }
select { -webkit-appearance: none; appearance: none; background: var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23857f74' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center; color: var(--text); border: 1px solid var(--line-2); border-radius: 8px; padding: 10px 42px 10px 16px; min-height: 44px; font: inherit; font-size: 16px; cursor: pointer; }
#map { position: relative; height: min(70vh, 640px); border-radius: 12px; border: 1px solid var(--line); background: var(--map-sea); overflow: hidden; }
#map svg { display: block; touch-action: none; cursor: grab; -webkit-user-select: none; user-select: none; }
#map svg:active { cursor: grabbing; }
.map-ns { vector-effect: non-scaling-stroke; }
.map-city { cursor: pointer; outline: none; }
.map-city:focus-visible .ring { stroke-width: 3px; }
.map-lbl { font: 600 10px var(--body); letter-spacing: .14em; text-transform: uppercase; fill: var(--muted); pointer-events: none; }
.map-lbl.big { fill: var(--text); font-size: 11px; }
.map-views { position: absolute; left: 10px; top: 10px; }
.map-views button { background: var(--surface); }
.map-views button.on { background: color-mix(in srgb, var(--accent) 14%, var(--surface)); }
.map-zoom { position: absolute; right: 10px; top: 10px; display: flex; flex-direction: column; gap: 6px; }
.map-zoom button { width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--line-2); background: var(--surface); color: var(--text); font: 600 18px/1 var(--body); cursor: pointer; }
.map-info { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 58px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; padding: 10px 14px; font-size: 14px; }
.map-info strong { font: 500 18px/1.2 var(--display); }
.barbtn.static { cursor: default; }
.ms-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 2px 16px; }
.ms-item { width: 100%; display: flex; gap: 14px; align-items: center; background: none; border: 0; border-radius: 8px; padding: 8px; margin: 0 -8px; color: inherit; text-align: left; cursor: pointer; font: inherit; }
.ms-n { font: 500 22px/1 var(--display); color: var(--accent); min-width: 64px; }
.ms-main { display: flex; flex-direction: column; min-width: 0; }
.ms-next { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); font-size: 14px; }
.ms-next .row { display: flex; justify-content: space-between; gap: 8px; }
footer { padding: 0 0 max(24px, env(safe-area-inset-bottom)); font-size: 13px; color: var(--muted); text-align: center; }
footer a { color: inherit; }
.empty { padding: 48px 0; color: var(--muted); }
@media (max-width: 600px) {
  .bar-aside { display: block; margin: 1px 0 0 24px; }
  .seg { display: flex; flex-basis: 100%; } .seg button { flex: 1; }
  .fday { display: block; } .fday-date { display: block; margin-bottom: 6px; } .fday + .fday { margin-top: 12px; }
  .fun-grid { grid-template-columns: 1fr 1fr; grid-auto-rows: 1fr; gap: 10px; }
  .fun-grid .fun { padding: 14px; overflow-wrap: anywhere; }
  .fun-grid .fun .big { font-size: 21px; }
  .fun-grid .fun .small { font-size: 12px; }
  .search { max-width: none; } h1 { font-size: 34px; } .kpi { font-size: 34px; } td, th { padding: 10px 12px; }
  .brand .eyebrow { font-size: 11px; letter-spacing: .1em; margin-top: 7px; }
  .head { align-items: center; gap: 14px 10px; }
  .head-side { flex-direction: column-reverse; align-items: flex-end; gap: 8px; margin-left: auto; }
  .sync { min-width: 0; min-height: 0; padding: 0; border: 0; background: none; font-size: 11px; gap: 6px; }
  .sync .dot { width: 6px; height: 6px; box-shadow: 0 0 0 2px rgba(123,198,126,.18); }
  .sync-long { display: none; }
  nav { margin: 16px -16px 0; padding: 0 16px; }
  #tabs { display: none; }
  header { border-bottom: 0; }
  .head { padding-bottom: 16px; }
  .bottom-nav { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 1100; background: var(--surface); border-top: 1px solid var(--line); padding: 4px 4px max(6px, env(safe-area-inset-bottom)); }
  .bottom-nav > button { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px; background: none; border: 0; color: var(--muted); font-size: 11px; padding: 6px 0 4px; min-height: 52px; cursor: pointer; }
  .bottom-nav > button[aria-current="page"] { color: var(--accent); font-weight: 600; }
  .bottom-nav > button span { max-width: 74px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .more-sheet { display: none; position: absolute; right: 8px; bottom: calc(100% + 8px); background: var(--surface); border: 1px solid var(--line-2); border-radius: 14px; padding: 6px; box-shadow: 0 10px 30px rgba(0,0,0,.35); min-width: 190px; }
  .more-sheet.open { display: flex; flex-direction: column; }
  .more-sheet a { text-decoration: none; }
  .more-sheet button, .more-sheet a { display: flex; align-items: center; gap: 12px; background: none; border: 0; color: var(--text); font-size: 15px; padding: 11px 12px; border-radius: 9px; cursor: pointer; text-align: left; }
  .more-sheet button[aria-current="page"] { color: var(--accent); font-weight: 600; }
  footer { padding-bottom: calc(80px + env(safe-area-inset-bottom)); }
  .to-top { bottom: calc(76px + env(safe-area-inset-bottom)); }
  nav.more-right { -webkit-mask-image: linear-gradient(90deg, #000 85%, transparent); mask-image: linear-gradient(90deg, #000 85%, transparent); }
  nav button, nav a.tab-link { padding: 12px 12px; }
  .kpis { grid-template-columns: 1fr 1fr; gap: 12px; }
  .kpis .card { padding: 16px; }
  .kpis > :first-child:nth-last-child(odd) { grid-column: 1 / -1; }
  .mlist { display: block; } .msort { display: flex; margin-bottom: 12px; }
  .wrap > .msort { margin-bottom: -12px; }  .mchip { display: contents; } .table-box.has-mlist { display: none; }
  .sbar { max-width: none; }
  .sbar .search input[type=search] { padding-right: 112px; }
  .fbtn { display: inline-flex; align-items: center; gap: 6px; position: absolute; right: 6px; top: 50%; transform: translateY(-50%); background: var(--line); color: var(--text); border: 0; border-radius: 8px; padding: 6px 10px; min-height: 34px; font: inherit; font-size: 14px; cursor: pointer; }
  .list-head > .fbtn, .year-nav .fbtn { margin-left: auto; }
  .list-head > .fbtn, .year-nav .fbtn { position: static; transform: none; min-height: 40px; }
  .year-nav .btn[data-year], .year-nav #ysel { display: none; }
  .fbtn .badge { min-width: 18px; height: 18px; border-radius: 9px; background: var(--accent); color: var(--on-accent); font-size: 11px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; padding: 0 5px; }
  .fchips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; flex-basis: 100%; margin-top: -6px; }
  .fchip { display: inline-flex; align-items: center; gap: 6px; background: rgba(var(--acc-rgb),.10); border: 1px solid rgba(var(--acc-rgb),.35); border-radius: 999px; padding: 5px 10px 5px 12px; font: inherit; font-size: 14px; color: var(--text); cursor: pointer; }
  .fchip svg { color: var(--muted); }
  .fchips .link { padding: 4px 2px; }
  #app .fsheet { display: none; }
  body.fs-open { overflow: hidden; }
  body.fs-open #app .fsheet.open { display: block; position: fixed; inset: 0; z-index: 1200; margin: 0; }
  .fs-scrim { display: block; position: absolute; inset: 0; width: 100%; background: rgba(0,0,0,.5); border: 0; padding: 0; }
  .fs-panel { display: flex; flex-direction: column; gap: 14px; position: absolute; left: 0; right: 0; bottom: 0; max-height: 85vh; overflow-y: auto; background: var(--surface); border-top: 1px solid var(--line-2); border-radius: 20px 20px 0 0; padding: 10px 16px calc(16px + env(safe-area-inset-bottom)); }
  .fs-grab { display: block; width: 36px; height: 4px; border-radius: 2px; background: var(--line-2); align-self: center; }
  .fs-head { display: block; font: 600 20px/1.2 var(--display); }
  .fs-head { display: flex; justify-content: space-between; align-items: baseline; }
  .fs-head .link { font: 500 14px/1 var(--body); padding: 4px 0; }
  .fs-done { margin-top: 10px; display: block; background: rgba(var(--acc-rgb),.12); color: var(--accent); border: 1px solid rgba(var(--acc-rgb),.35); border-radius: 10px; padding: 11px; font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
  .fs-panel .icon-chip { display: none; }
  .fs-panel .fs-dir { margin-top: -4px; } .fs-panel .fs-dir button { padding: 6px 0; font-size: 13px; }
  .fs-done { margin-inline: 10px; }
  .fs-panel .seg { display: flex; gap: 8px; } .fs-panel .seg button { flex: 1; padding: 7px 0; font-size: 14px; }
  .fs-panel .mchip { display: flex; align-items: center; gap: 10px; }
  .fs-panel .qpick, .fs-panel .qpick.on { flex: 1; display: flex; justify-content: flex-end; width: 100%; background: none; border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: 12px 0 0; min-height: 44px; font-size: 15px; color: var(--muted); }
  .fs-panel .qpick::before { content: attr(data-label); color: var(--text); margin-right: auto; }
  .fs-panel .qpick.on > span:first-child { color: var(--accent); }
  .fs-panel .qpick:not(.on) > span:first-child { font-size: 0; }
  .fs-panel .qpick:not(.on) > span:first-child::after { content: attr(data-any); font-size: 15px; }
  .fs-panel .clear-all { display: none; }
  .fs-panel > .toggle:not(.qpick) { align-self: flex-start; font-size: 15px; padding: 8px 14px; }
  .fs-years { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
  .fs-years button { padding: 10px 0; border-radius: 8px; border: 1px solid transparent; background: var(--line); color: var(--muted); font: inherit; font-size: 15px; cursor: pointer; }
  .fs-years button.on { background: rgba(var(--acc-rgb),.10); border-color: rgba(var(--acc-rgb),.35); color: var(--text); font-weight: 600; }
}
@media (hover: hover) {
  a:hover { color: var(--accent-2); }
  .barbtn:hover .row span:first-child { color: var(--accent); }
  .barbtn:hover .fill, button.year:hover .b { background: var(--accent-2); }
  .chip button:hover { color: var(--text); background: var(--line); }
  button.card:hover { border-color: var(--accent); }
  td .open:hover { color: var(--accent); }
  .icon-btn:hover { border-color: var(--accent); color: var(--accent); }
  .inline-link:hover { color: var(--accent); text-decoration-color: currentColor; }
  button.hist:not(.cur):hover, .year-link:hover { color: var(--accent); }
  .next-item:hover { background: var(--line); color: inherit; }
  .otd-item:hover { background: var(--line); }
  .th-btn:hover { color: var(--text); }
  .title-link:hover { color: var(--accent); }
  select:hover { border-color: var(--accent); }
  select option { padding: 6px 14px; }
  .barbtn.static:hover .fill { background: var(--accent); }
  .barbtn.static:hover .row span:first-child { color: inherit; }
  .ms-item:hover { background: var(--line); }
}
body { font-family: var(--body); font-size: 16px; line-height: 1.55; -webkit-font-smoothing: antialiased; }
:focus-visible { outline-color: var(--accent); }
h1 { font: 420 26px/1 var(--display); letter-spacing: -.01em; font-optical-sizing: auto; }
h1::after { content: "."; color: var(--accent); }
.eyebrow { font: 400 11.5px/1.4 var(--mono); text-transform: none; letter-spacing: 0; color: var(--muted); }
.sync { border: 0; padding: 0; min-width: 0; font: 400 11.5px/1 var(--mono); background: none; color: var(--muted); }
nav button, nav a.tab-link { font-weight: 400; font-size: 14.5px; color: var(--ink-2); border-bottom-width: 1px; }
nav button[aria-current="page"] { font-weight: 400; color: var(--text); border-bottom-color: var(--text); }
main.wrap { gap: 0; }
.card { background: none; border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: 40px 0 32px; }
.card h2, .card-head h2 { font: 500 12px/1.4 var(--body); letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.card-head { margin-bottom: 20px; } .card-head > .muted { font: 400 12.5px/1.4 var(--mono); color: var(--muted); }
.link { color: var(--ink-2); text-decoration: underline; text-decoration-color: var(--line); text-underline-offset: .2em; }
.link:hover { color: var(--text); }
.muted { color: var(--muted); }
.kpi { font: 340 clamp(48px, 13vw, 64px)/1 var(--display); letter-spacing: -.03em; font-optical-sizing: auto; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.kpi.sm { font-size: 30px; letter-spacing: -.01em; font-weight: 380; }
.kpi-label, .tag, .num, .rank, .m-rank, .bars .row span:last-child, .bar-aside, .setstrip-axis, .setstrip-n, .delta { font-family: var(--mono); font-variant-numeric: tabular-nums; letter-spacing: 0; }
.kpi-label { font-size: 12.5px; color: var(--muted); }
.fun .big { font: italic 380 32px/1.1 var(--display); color: var(--accent); letter-spacing: -.01em; }
.track { height: 1px; background: var(--line); margin-top: 6px; } .fill { height: 1px; }
.bars .row { font-size: 15px; }
.list-title h2, .toolbar h2 { font: 380 44px/1 var(--display); letter-spacing: -.015em; font-optical-sizing: auto; }
.list-title .muted { font: 400 12.5px/1.4 var(--mono); }
.detail-title { font-weight: 380; letter-spacing: -.015em; }
.section-title { font-weight: 380; }
.mlist { border: 0; border-radius: 0; border-top: 1px solid var(--line); }
.mlist li { padding: 16px 0; border-bottom: 1px solid var(--line); } .mlist li + li { border-top: 0; }
.m-title { font-weight: 500; font-size: 16px; }
.m-sub { font: 400 12.5px/1.5 var(--mono); color: var(--muted); }
.m-val { font: 380 28px/1 var(--display); letter-spacing: -.01em; }
.m-val small { font: 400 11px/1 var(--mono); }
.table-box { border: 0; border-radius: 0; }
th { font: 500 12px var(--body); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
td { border-color: var(--line); }
.next-date { background: none; border: 0; box-shadow: none; }
.next-date .d { font: 380 34px/1 var(--display); letter-spacing: -.01em; color: var(--text); }
.next-date .m { font: 400 11px/1 var(--mono); color: var(--accent); letter-spacing: .04em; }
.next-when { font: 400 11.5px/1.3 var(--mono); color: var(--muted); }
.otd-main strong { font-weight: 500; font-size: 16px; }
.otd-main .muted { font: 400 12.5px/1.5 var(--mono); }
.otd-year, .ms-n { font: italic 380 26px/1 var(--display); color: var(--accent); }
.search input, input[type="search"] { background: none; border-color: var(--line); }
.seg button { border-color: var(--line); color: var(--ink-2); }
.seg button.on { background: none; border-color: var(--text); color: var(--text); font-weight: 400; }
.toggle { background: none; border: 1px solid var(--line); color: var(--ink-2); }
.toggle.on { border-color: var(--text); color: var(--text); background: none; }
.bottom-nav { background: var(--bg); border-top-color: var(--line); }
.bottom-nav > button { color: var(--muted); } .bottom-nav > button[aria-current="page"] { color: var(--text); font-weight: 500; }
.map-lbl { font: 400 10.5px var(--body); letter-spacing: .14em; fill: var(--muted); }
.map-lbl.big { font-size: 11px; fill: var(--ink-2); }
#map { border-radius: 0; border-left: 0; border-right: 0; border-color: var(--line); }
#map .map-ns[stroke-dasharray] { stroke-dasharray: 4 3; stroke: var(--map-coast); opacity: .9; }
#map .map-ns[fill="var(--map-land)"] { stroke: var(--map-coast); }
.map-zoom button, .map-views button { background: var(--bg); border-color: var(--line); color: var(--ink-2); font-weight: 400; }
.map-views button.on { background: var(--bg); border-color: var(--text); color: var(--text); }
.map-info { background: none; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; padding: 18px 0; }
.map-info strong { font: 380 28px/1.1 var(--display); letter-spacing: -.01em; }
footer { color: var(--muted); font-size: 13.5px; }
footer a { text-decoration-color: var(--line); text-underline-offset: .2em; }
body::before { content: ""; pointer-events: none; position: fixed; inset: 0; z-index: -1; opacity: var(--grain); background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 1 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"); }
.head { flex-wrap: nowrap; align-items: center; padding-top: max(22px, env(safe-area-inset-top)); gap: 16px; }
.brand .eyebrow { margin: 6px 0 0; font: 400 14px/1.3 var(--body); letter-spacing: 0; color: var(--ink-2); text-align: left; white-space: nowrap; }
.head-side { gap: 14px; }
.theme-btn { border: 0; background: none; color: var(--ink-2); }
.theme-btn:hover { color: var(--text); }
.sync .dot { background: var(--ok); box-shadow: none; animation: beat 2.4s ease-out infinite; }
@keyframes beat { 0% { box-shadow: 0 0 0 0 rgba(123,198,126,.35); } 70% { box-shadow: 0 0 0 9px rgba(123,198,126,0); } to { box-shadow: 0 0 0 0 rgba(123,198,126,0); } }
@media (prefers-reduced-motion: reduce) { .sync .dot { animation: none; } }
@media (max-width: 600px) {
  h1 { font-size: 24px; }
  .brand .eyebrow { font-size: 13px; margin-top: 5px; }
  .head-side { flex-direction: row; align-items: center; gap: 10px; }
  .sync .dot { box-shadow: none; }
}
main.wrap { gap: 24px; }
.card { padding: 28px 0 8px; }
.list-head + .quick { margin-top: 0; }
.quick.phone-only { display: none; }
.grid { border-top: 1px solid var(--line); column-gap: 32px; --min: 200px; }
.grid > .card { border-top: 0; padding-top: 24px; }
.link { font: 400 13px/1.4 var(--mono); color: var(--ink-2); text-decoration: none; }
.link:hover { color: var(--accent); }
.ms-item { display: grid; grid-template-columns: 5.4em minmax(0, 1fr); align-items: baseline; gap: 0 12px; }
.ms-n { min-width: 0; }
.btn { background: none; border: 0; border-radius: 0; padding: 6px 0; min-height: 0; color: var(--ink-2); font: 400 14.5px/1.4 var(--body); }
.btn:hover { color: var(--text); }
.more .btn { font: 400 13px/1.4 var(--mono); text-decoration: underline; text-decoration-color: var(--line-2); text-underline-offset: .25em; }
.more .btn:hover { color: var(--accent); text-decoration-color: var(--accent); }
.year-nav { gap: 18px; }
.year-nav select, #ysel { background-color: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; min-height: 0; padding: 4px 26px 4px 0; background-position: right 2px center; }
.about .btn { font-size: 14.5px; }
.vinyl { color: var(--muted); }
.history-list { gap: 4px 18px; }
.hist { background: none; padding: 2px 0; font-size: 14.5px; color: var(--ink-2); border-radius: 0; }
.hist:hover { color: var(--accent); }
.hist.cur { background: none; color: var(--accent); }
footer .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px 24px; text-align: left; padding-top: 28px; border-top: 1px solid var(--line); }
.foot-sync { min-width: 0; }
@media (min-width: 601px) {
  .head-side .sync { display: none; }
  .quick { gap: 6px 22px; }
  .seg { gap: 18px; }
  .seg button { border: 0; border-bottom: 1px solid transparent; border-radius: 0; padding: 4px 0; background: none; font-size: 14.5px; color: var(--muted); }
  .seg button.on { border-bottom-color: var(--text); color: var(--text); background: none; }
  .toggle { border: 0; border-bottom: 1px solid transparent; border-radius: 0; padding: 4px 0; background: none; font-size: 14.5px; color: var(--muted); }
  .toggle:hover, .seg button:hover:not(:disabled) { color: var(--text); }
  .toggle.on { border-bottom-color: var(--text); color: var(--text); }
  input[type=search] { background: none; border: 0; border-bottom: 1px solid var(--line-2); border-radius: 0; padding: 8px 0 8px 28px; min-height: 0; font-size: 15px; }
  input[type=search]:focus { outline: none; border-bottom-color: var(--text); }
  .search svg { left: 2px; }
}
@media (max-width: 600px) {
  .foot-sync { display: none; }
  footer .wrap { justify-content: center; text-align: center; }
}
:root { color-scheme: dark; }
:root[data-theme="light"] { color-scheme: light; }
select option { background: var(--bg); color: var(--text); }
.list-note { margin: 0; }
.kpi-label, .link, .btn, .seg button, .toggle, .hist-more, input[type=search]::placeholder { text-transform: lowercase; }
input[type=search] { font: 400 14px/1.4 var(--mono); }
.fun .big { font-size: 25px; }
.icon-btn { width: 36px; height: 36px; border: 0; border-radius: 50%; color: var(--ink-2); }
.icon-btn:hover:not(.off) { color: var(--text); background: var(--surface); }
.edition .hist { background: none; border: 1px solid var(--line); border-radius: 999px; padding: 3px 12px; color: var(--text); font-size: 14px; }
.edition .hist:hover { border-color: var(--text); color: var(--text); }
.edition .history-list { gap: 8px; }
.records { gap: 0 32px; }
.records a { background: none; border-radius: 0; border-top: 1px solid var(--line); padding: 12px 0; }
.records a:hover .r-title { color: var(--accent); }
.records .r-title { font-weight: 500; }
.records a > span > span:last-child { font: 400 12.5px/1.5 var(--mono); color: var(--muted); }
.detail-meta { margin-top: 6px; font: 340 17px/1.35 var(--display); color: var(--ink-2); font-optical-sizing: auto; }
.detail-meta a, .detail-meta button { text-decoration-color: var(--line-2); text-underline-offset: .18em; }
.detail-title { font: 380 36px/1.1 var(--display); letter-spacing: -.015em; font-optical-sizing: auto; }
.eyebrow + .detail-title { margin-top: 6px; }
.fun .big, .otd-year, .ms-n { font-style: normal; }
.next-date.big { width: auto; min-width: 64px; padding: 2px 4px 0 0; }
.next-date.big .m, .next-date.big .y { font: 400 12px/1 var(--mono); letter-spacing: .06em; }
.next-date.big .d { font: 380 40px/1 var(--display); letter-spacing: -.02em; margin: 3px 0; }
.next-date .y { font-family: var(--mono); }
.year-link { font: 380 26px/1.1 var(--display); letter-spacing: -.01em; }
.fs-head { font: 380 22px/1.2 var(--display); }
.fday-date { font: 400 12px/1.3 var(--mono); letter-spacing: .04em; }
strong, b, .m-title .open, .m-title .open.muted-btn, td .open, .hist.cur { font-weight: 500; }
@media (max-width: 600px) {
  .detail-title { font-size: 30px; }
  .next-date.big .d { font-size: 34px; }
}
th { background: none; border-bottom: 1px solid var(--line); }
th, th.num { font: 500 11.5px/1.2 var(--body); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.th-btn { text-transform: inherit; letter-spacing: inherit; }
.th-btn .arrow { letter-spacing: 0; }
td.date { font: 400 13px/1.4 var(--mono); font-variant-numeric: tabular-nums; }
td .tag { font: 400 13px/1.4 var(--body); color: var(--ink-2); }
.brand h1, .brand .eyebrow { text-transform: lowercase; }
@media (max-width: 600px) {
  input, select, textarea, input[type=search] { font-size: 16px; }
  .head-side .sync { display: none; }
  .foot-sync { display: inline-flex; }
  footer .wrap { flex-direction: column; gap: 8px; }
  #map { height: min(48vh, 420px); }
  .fbtn { background: none; color: var(--ink-2); border-radius: 0; padding: 6px 4px; font: 400 14.5px/1 var(--body); text-transform: lowercase; }
  .fbtn:hover, .fbtn:active { color: var(--text); }
  .list-head > .fbtn, .year-nav .fbtn { min-height: 36px; padding: 6px 0; }
  .fbtn .badge { font: 500 11px/1 var(--mono); }
  .fchip { background: none; border-color: var(--line-2); font-size: 14px; }
  .fchip:hover { border-color: var(--text); }
  .fs-panel { background: var(--bg); border-top-color: var(--line); }
  .fs-head { text-transform: lowercase; }
  .fs-done { background: none; border: 1px solid var(--text); border-radius: 999px; color: var(--text); font: 500 15px/1 var(--body); }
}
.foot-sync { white-space: normal; align-items: baseline; gap: 8px; line-height: 1.5; }
.foot-sync .dot { flex: none; transform: translateY(-1px); }
@media (min-width: 601px) { footer .wrap { padding-right: 56px; } }
@media (max-width: 600px) { footer .wrap { padding-bottom: 64px; } }
.chip { background: none; border-color: var(--line-2); gap: 10px; padding-left: 14px; }
.chip-label { font: 500 11px/1 var(--body); letter-spacing: .14em; color: var(--muted); }
.chip strong { font-weight: 500; color: var(--text); }
.chip button:hover { background: none; color: var(--accent); }
@media (max-width: 600px) {
  .sbar .search input[type=search] { padding-right: 76px; }
  input[type=search]::placeholder { font-size: 14px; }
}
.fs-panel > .chip { margin-right: 6px; }
.fs-panel > .chip button { width: 28px; height: 28px; }
@media (max-width: 600px) {
  .fs-panel > .chip { display: none; }
  .fchips > .chip { padding: 1px 2px 1px 12px; }
}
@media (min-width: 601px) {
  .fs-panel > .chip { border: 0; border-bottom: 1px solid var(--text); border-radius: 0; padding: 4px 0; gap: 6px; font-size: 14.5px; line-height: 1.4; margin-right: 8px; }
  .fs-panel > .chip .chip-label { font: 400 14.5px/1.4 var(--body); letter-spacing: 0; text-transform: lowercase; color: var(--muted); }
  .fs-panel > .chip strong { font-weight: 400; }
  .fs-panel > .chip button { width: 20px; height: 20px; margin-left: 2px; }
}
.year-note { font-size: 10.5px; }
@media (max-width: 600px) {
  .kpi .delta { margin-left: 0; font-size: 13px; }
  .kpi .delta .vs { display: none; }
}
.about .me { flex: none; width: 96px; height: 96px; border-radius: 50%; border: 2px solid var(--line-2); filter: saturate(.9); background: center / cover no-repeat url("data:image/jpeg;base64,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"); -webkit-user-select: none; user-select: none; pointer-events: none; }
.ms-item { grid-template-columns: 5.6em minmax(0, 1fr); gap: 0 18px; }
.ms-n { text-align: right; font-variant-numeric: lining-nums tabular-nums; white-space: nowrap; }
#map .map-lbl { pointer-events: auto; cursor: pointer; }
#map .map-lbl:hover { fill: var(--text); }
@media (max-width: 600px) { .year-nav { gap: 2px; } .year-nav .icon-btn { margin-right: 2px; } }
.setlist-src { display: flex; flex-wrap: wrap; gap: 6px 22px; margin-top: 14px; }
.setlist-src .tag, .text-btn { color: var(--ink-2); text-decoration: underline; text-decoration-color: var(--line-2); text-underline-offset: .25em; text-transform: lowercase; }
.text-btn { background: none; border: 0; padding: 0; cursor: pointer; }
.setlist-src .tag:hover, .text-btn:hover { color: var(--accent); text-decoration-color: var(--accent); }
.alb-big { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; margin-bottom: 22px; }
.alb-big b { font: 380 64px/1 var(--display); color: var(--accent); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.alb-big span { color: var(--ink-2); font-size: 15px; }
.alb-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 0 32px; align-items: start; }
.alb { border-top: 1px solid var(--line); }
.alb summary { list-style: none; display: grid; grid-template-columns: 48px 1fr auto; gap: 14px; align-items: center; padding: 14px 0; cursor: pointer; }
.alb summary::-webkit-details-marker { display: none; }
.alb-cover { position: relative; width: 48px; height: 48px; display: grid; place-items: center; background: var(--surface); border: 1px solid var(--line); font: 400 22px var(--display); color: var(--muted); overflow: hidden; }
.alb-cover::before { content: attr(data-l); }
.alb-cover img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.alb-meta { display: grid; gap: 4px; min-width: 0; }
.alb-name { font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.alb-year { font: 400 12.5px var(--mono); color: var(--muted); }
.alb-bar { height: 2px; background: var(--line); display: block; }
.alb-bar span { display: block; height: 2px; background: var(--accent); }
.alb-n { font: 380 28px/1 var(--display); letter-spacing: -.01em; font-variant-numeric: tabular-nums; }
.alb-n small { font: 400 12px var(--mono); color: var(--muted); margin-left: 2px; }
.alb ol { list-style: none; margin: 0 0 16px; padding: 0 0 0 62px; }
.alb li { display: grid; grid-template-columns: 22px 1fr auto; gap: 8px; padding: 3px 0; font-size: 14.5px; }
.alb .tn, .alb .tc { font: 400 12.5px/1.9 var(--mono); color: var(--muted); }
.alb li.on .tc { color: var(--accent); }
.alb li.off .tt { color: var(--muted); }
@media (max-width: 600px) { .alb-big b { font-size: 52px; } .alb ol { padding-left: 0; } }
tbody tr:has(button.open) { cursor: pointer; }
@media (hover: hover) { tbody tr:has(button.open):hover td { background: rgba(var(--acc-rgb), .05); } tbody tr:has(button.open):hover td .open { color: var(--accent); } }
.title-row { display: flex; align-items: center; gap: 6px; }
.title-row .detail-title { min-width: 0; }
.title-row .icon-btn { flex: none; }
.set-info { margin: 14px 0 0; font-size: 14px; line-height: 1.5; }
.otd-year { flex: none; width: 2.6em; min-width: 0; text-align: right; font-variant-numeric: lining-nums tabular-nums; }
@media (min-width: 900px) { td.place { white-space: nowrap; } }
.pa-head { padding-top: max(24px, env(safe-area-inset-top)); display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.pa-back { font-size: 14px; color: var(--muted); text-decoration: none; }
.pa-back:hover { color: var(--text); }
.pa-title { margin: 14px 0 4px; font: 380 36px/1.1 var(--display); }
.pa-sub { margin: 0; color: var(--ink-2); }
body.agenda::before { content: ""; position: fixed; inset: 0 0 auto; height: env(safe-area-inset-top, 0px); background: var(--bg); z-index: 21; }
.pa-bar { position: sticky; top: env(safe-area-inset-top, 0px); z-index: 20; background: var(--bg); margin: 6px 0 0; padding: 8px 0; border-bottom: 1px solid var(--line); display: flex; flex-direction: column; gap: 10px; }
.pa-months.seg::-webkit-scrollbar { display: none; }
.pa-row { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.pa-bar .seg { flex-basis: auto; flex-wrap: nowrap; }
.pa-bar .seg button { flex: none; white-space: nowrap; min-height: 32px; }
.pa-months.seg { overflow-x: auto; scrollbar-width: none; scroll-padding-inline: 16px; }
.pa-bar .seg button .n { font: 11px var(--mono); color: var(--muted); margin-left: 5px; }
.head-end { display: flex; align-items: center; gap: 14px; }
#paList > .pa-wk:first-child { margin-top: 16px; }
.pa-wk { scroll-margin-top: calc(env(safe-area-inset-top, 0px) + 128px); }
.pa-wk { margin-top: 26px; padding-bottom: 6px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; gap: 12px; font: 500 11px var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.pa-more { display: block; width: 100%; margin: 4px 0 0; padding: 12px 0; min-height: 44px; font: 600 13px var(--body); color: var(--accent); background: none; border: 0; border-bottom: 1px solid var(--line); text-align: left; cursor: pointer; }
.pa-ev { display: grid; grid-template-columns: 74px minmax(0, 1fr); gap: 0 16px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.pa-d { font: 500 13px var(--mono); color: var(--ink-2); font-variant-numeric: tabular-nums; }
.pa-d b { display: block; font: 400 26px/1 var(--display); color: var(--text); }
.pa-body { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.pa-a { font: 420 21px/1.2 var(--display); }
.pa-sup { color: var(--muted); }
.pa-tour { font-size: 14px; color: var(--muted); }
.pa-m { font-size: 13.5px; color: var(--ink-2); }
.pa-m .mono { font-family: var(--mono); font-size: 12.5px; }
.pa-buyrow { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-top: 4px; }
.pa-price { font: 500 14px var(--mono); font-variant-numeric: tabular-nums; }
.pa-tbc { font: 12.5px var(--mono); color: var(--muted); }
.pa-buy { font: 600 13px var(--body); color: var(--accent); text-decoration: none; white-space: nowrap; }
.pa-tags { display: flex; flex-wrap: nowrap; align-items: center; gap: 6px 8px; margin-top: 4px; min-width: 0; }
.pa-tag { display: inline-flex; align-items: center; font: 500 12px var(--body); padding: 1px 9px; border-radius: 999px; border: 1px solid rgba(var(--acc-rgb), .5); color: var(--accent); white-space: nowrap; }
.pa-tag.going { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.pa-tag.fest { border-color: var(--line-2); color: var(--ink-2); }
.pa-why { font-size: 12.5px; color: var(--muted); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pa-empty { padding: 24px 0; color: var(--muted); }
body.agenda main.wrap { padding-bottom: 32px; gap: 0; }
body.agenda footer { padding-bottom: max(24px, env(safe-area-inset-bottom)); }
@media (max-width: 600px) {
  .pa-title { font-size: 30px; margin-top: 10px; }
  .pa-ev { grid-template-columns: 52px minmax(0, 1fr); }
  .pa-d b { font-size: 22px; }
  .pa-a { font-size: 19px; }
}
