:root{--bg:#111;--surface:#1a1a1b;--surface-2:#242426;--line:#333336;--text:#f5f5f5;--faded:#ccc;--muted:#a7a7b3;--accent:#e7660b;--accent-ink:#111;--ok:#7fbf7a;--warn:#e6c35c;--bad:#f0624d;--nav-bg:#000;--nav-line:#262628;--nav-pill:#262628;--nav-icon:#a7a7b3;--nav-text:#f5f5f5;--radius:10px;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans:"Sen", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display:"Archivo Narrow", "Arial Narrow", var(--sans);color-scheme:dark}@media (prefers-color-scheme:light){:root{--bg:#f5f5f5;--surface:#fff;--surface-2:#ececee;--line:#dadadf;--text:#111;--faded:#3a3a3f;--muted:#63636e;--accent:#e7660b;--accent-ink:#fff;--ok:#2f7d32;--warn:#9a7400;--bad:#b3361f;--nav-bg:#111;--nav-line:#111;--nav-pill:#2a2a2d;--nav-icon:#a7a7b3;--nav-text:#f5f5f5;color-scheme:light}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:15px/1.5 var(--sans);margin:0}a{color:inherit;text-decoration-color:var(--line);text-underline-offset:3px}a:hover{text-decoration-color:var(--accent)}h1,h2,h3{font-family:var(--display);letter-spacing:.01em;margin:0;line-height:1.1}h1{font-size:clamp(1.9rem,6vw,2.8rem);font-weight:700}h2{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.8rem;font-family:var(--sans);margin-bottom:.75rem;font-weight:600}h3{font-size:1.15rem}.wrap{max-width:1040px;margin:0 auto;padding:0 16px}.top{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 88%, transparent);backdrop-filter:blur(8px);z-index:10;position:sticky;top:0}.top .wrap{align-items:center;gap:1.25rem;height:54px;display:flex}.brand{font-family:var(--display);align-items:center;gap:.5rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:flex}.brand i{background:var(--accent);border-radius:2px;width:10px;height:10px;display:inline-block}.nav{scrollbar-width:none;gap:1rem;display:flex;overflow-x:auto}.nav a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:4px 0;font-size:.9rem;text-decoration:none}.nav a[aria-current=page],.nav a:hover{color:var(--text);border-color:var(--accent)}main.wrap{padding-top:28px;padding-bottom:64px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:28px;display:flex}.eyebrow{font-family:var(--mono);color:var(--accent);margin-bottom:.4rem;font-size:.8rem}.sub{color:var(--muted);margin-top:.4rem}.sub.mono{font-family:var(--sans);font-size:.9rem}.grid{gap:16px;display:grid}@media (width>=760px){.grid-2{grid-template-columns:1fr 1fr}.grid-main{grid-template-columns:1.35fr 1fr;align-items:start}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.stack>*+*{margin-top:16px}.btn{font:600 .85rem var(--sans);border:1px solid var(--line);background:var(--surface-2);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:8px 12px;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.actions{flex-wrap:wrap;gap:8px;display:flex}.pill{font:600 .7rem var(--sans);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:2px 8px;display:inline-block}.pill.show{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.pill.hold,.pill.sent{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 45%, transparent)}.pill.cancelled,.pill.todo{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 45%, transparent)}.songs{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.songs>li{padding:12px 16px}.songs>li+li{border-top:1px solid var(--line)}.song-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.song-title{font-family:var(--display);font-size:1.15rem}.song-title a{text-decoration:none}.song-meta{color:var(--muted);margin-top:3px;font-size:.82rem}.song-notes{margin-top:3px;font-size:.85rem}.rtable td[data-label]:empty{display:none}.pill.song-writing{color:var(--muted)}.pill.song-recording{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 45%, transparent)}.pill.song-released{color:var(--ok);border-color:color-mix(in srgb, var(--ok) 45%, transparent)}.pill.song-cover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.pill.confirmed{color:var(--ok);border-color:color-mix(in srgb, var(--ok) 45%, transparent)}.itin{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.itin li+li{border-top:1px solid var(--line)}.itin a{grid-template-columns:64px 1fr auto;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:grid}.itin a:hover{background:var(--surface-2)}.itin li.past{opacity:.45}.itin li.next a{box-shadow:inset 3px 0 0 var(--accent)}.datebox{font-family:var(--mono);text-align:center;line-height:1.15}.datebox b{font-size:1.4rem;font-family:var(--display);display:block}.datebox span{color:var(--muted);text-transform:uppercase;font-size:.72rem}.itin .where b{font-size:1.02rem;display:block}.itin .where span{color:var(--faded);font-size:.88rem}.itin .meta{color:var(--muted);flex-direction:column;align-items:end;gap:4px;font-size:.8rem;display:flex}.itin .where .icon{vertical-align:-.15em}.itin li.kind-show .datebox b{color:var(--accent)}.itin li.kind-other{background:color-mix(in srgb, var(--surface-2) 55%, var(--surface))}.itin li.kind-other a{padding-block:8px}.itin li.kind-other .datebox b{color:var(--muted)}.itin li.kind-other .where b{flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;display:flex}.itin .kind-icon{background:var(--surface);border:1px solid var(--line);width:24px;height:24px;color:var(--muted);border-radius:50%;flex:none;place-items:center;display:inline-grid}.itin .arrow{color:var(--muted);font-weight:400}.itin li.cancelled .where b{text-decoration:line-through}.filter .f-count-inline{opacity:.7;margin-left:2px;font-weight:500}.sched{margin:0;padding:0;list-style:none}.sched li{border-bottom:1px dashed var(--line);grid-template-columns:58px 1fr;gap:12px;padding:9px 0;display:grid}.sched li:last-child{border-bottom:0}.sched time{font-family:var(--mono);color:var(--accent);font-weight:600}.sched li.band{font-weight:700}.sched small{color:var(--muted);font-weight:400;display:block}dl.kv{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}dl.kv dt{color:var(--muted);font-size:.85rem}dl.kv dd{margin:0}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.92rem}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--line);padding:8px 10px;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--line);vertical-align:top;padding:9px 10px}tr:last-child td{border-bottom:0}.setlist{counter-reset:s;margin:0;padding:0;list-style:none}.setlist li{counter-increment:s;grid-template-columns:26px 1fr auto;align-items:baseline;gap:10px;padding:7px 0;display:grid}.setlist li:before{content:counter(s);font-family:var(--mono);color:var(--muted);font-size:.85rem}.setlist .title{font-family:var(--display);font-size:1.15rem;font-weight:700}.setlist .note{color:var(--muted);font-size:.82rem;font-family:var(--sans);font-weight:400;display:block}.setlist .tune{color:var(--warn);font-size:.78rem;font-family:var(--mono);margin-top:2px;display:block}.setlist .dur{font-family:var(--mono);color:var(--muted)}.leg{grid-template-columns:auto 1fr;gap:12px;padding:10px 0;display:grid}.leg+.leg{border-top:1px dashed var(--line)}.leg .route{font-weight:600}.leg .times{font-family:var(--mono);color:var(--accent)}.bar{background:var(--surface-2);border-radius:3px;width:70px;height:6px;overflow:hidden}.bar i{background:var(--ok);height:100%;display:block}.matrix td.cell{text-align:center}.dot{border-radius:50%;width:12px;height:12px;display:inline-block}.dot.confirmed{background:var(--ok)}.dot.sent{background:var(--warn)}.dot.todo{border:2px solid var(--bad);background:0 0}.dot.na{background:var(--line)}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:.82rem;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.notes{white-space:pre-wrap}.notes p{margin:0 0 .6em}.filter{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.filter button{font:600 .8rem var(--sans);border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:6px 10px}.filter button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.search{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text);font:inherit;border-radius:8px;margin-bottom:12px;padding:10px 12px}.icon{vertical-align:-.2em;flex:none;display:inline-block}h2.head{align-items:center;gap:8px;display:flex}h2.head .icon{color:var(--accent)}.btn .icon{margin-left:-2px}.nav a{align-items:center;gap:6px;display:inline-flex}.nav .icon{width:16px;height:16px}.mode-icon{background:var(--surface-2);width:38px;height:38px;color:var(--accent);border-radius:50%;flex:none;place-items:center;display:inline-grid}.itin .hotel .icon{vertical-align:-.15em}.people{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.people>li{padding:12px 14px}.people>li+li{border-top:1px solid var(--line)}.person{align-items:center;gap:12px;display:flex}.person .who{flex:1;min-width:0}.person .who .muted{font-size:.86rem}.person .who .pill{margin-top:4px}.insta-link{color:var(--accent);font-size:.86rem;text-decoration:none;display:block}.contact-actions{flex-wrap:wrap;justify-content:flex-end}.card .person{justify-content:space-between}.avatar{background:color-mix(in srgb, var(--accent) 16%, var(--surface-2));width:42px;height:42px;color:var(--accent);font:700 .9rem var(--display);letter-spacing:.04em;border-radius:50%;flex:none;place-items:center;display:grid}.contact-actions{flex:none;gap:8px;display:flex}.icon-btn{background:var(--surface-2);border:1px solid var(--line);width:44px;height:44px;color:var(--accent);border-radius:50%;place-items:center;text-decoration:none;display:grid}.icon-btn:hover,.icon-btn:active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface-2))}.datestrip{scrollbar-width:none;scroll-snap-type:x proximity;gap:8px;margin:-4px -16px 16px;padding:8px 16px;display:flex;position:relative;overflow-x:auto}.datestrip::-webkit-scrollbar{display:none}.ds{scroll-snap-align:center;cursor:pointer;border:1px solid var(--line);background:var(--surface);width:62px;color:var(--text);font:inherit;border-radius:12px;flex-direction:column;flex:none;align-items:center;gap:1px;padding:8px 4px 7px;line-height:1.15;display:flex;position:relative}.ds-wd,.ds-m{font:600 .62rem var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.ds-n{font:700 1.35rem var(--display)}.ds-city{font:600 .66rem var(--mono);letter-spacing:.08em;color:var(--faded);white-space:nowrap;max-width:100%;margin:4px 0 10px;overflow:hidden}.ds.past{opacity:.5}.ds-icon{color:var(--accent)}.ds.show:before{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;bottom:6px;left:30%;right:30%}.ds[aria-current=date].show:before{background:var(--accent-ink)}.ds-city .icon{vertical-align:-.2em;margin-right:2px}.ds.hold{border-style:dashed}.ds.cancelled .ds-n{text-decoration:line-through}.ds.today:after{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:6px}.ds[aria-current=date]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);opacity:1}.ds[aria-current=date] :is(.ds-wd,.ds-m,.ds-city,.ds-n){color:var(--accent-ink)}.ds[aria-current=date].today:after{background:var(--accent-ink)}.ds[aria-current=date] .ds-icon{color:var(--accent-ink)}.day-hero{margin-bottom:16px}.day-hero h1{margin-top:2px}.hero-venue{margin:6px 0 0;font-size:1.1rem;font-weight:600}.hero-tags{flex-wrap:wrap;align-items:center;gap:6px 12px;margin:10px 0 0;font-size:.88rem;display:flex}.hero-billing{margin:6px 0 0;font-size:.88rem}.up-next{border-radius:var(--radius);background:color-mix(in srgb, var(--accent) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);grid-template-columns:1fr auto;align-items:center;gap:2px 12px;margin-top:16px;padding:12px 14px;display:grid}.up-label{font:600 .7rem var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--accent);grid-column:1/-1}.up-in{font-family:var(--mono);color:var(--accent);white-space:nowrap;font-size:.85rem}.quick{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.quick:empty{display:none}.quick>*{flex:72px;max-width:120px}.quick-btn{border:1px solid var(--line);background:var(--surface);color:var(--text);font:600 .75rem var(--sans);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;text-decoration:none;display:flex}.quick-btn .icon{color:var(--accent)}.quick-btn:active{background:var(--surface-2)}.sched li.done{opacity:.45}.sched li.now{background:color-mix(in srgb, var(--accent) 10%, transparent);border-bottom-color:#0000;border-radius:8px;margin:0 -10px;padding-left:10px;padding-right:10px}.sched li.now time:after{content:" ●";vertical-align:.2em;font-size:.6rem}.menu{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.menu li+li{border-top:1px solid var(--line)}.menu a{align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.menu a>.icon{color:var(--muted)}.menu-text{flex-direction:column;flex:1;display:flex}.menu-text .muted{font-size:.85rem}.lineup{margin:0;padding:0;list-style:none}.lineup li{border-bottom:1px dashed var(--line);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.lineup li:last-child{border-bottom:0}.lu-time{width:46px;color:var(--accent);flex:none;padding-top:1px;font-weight:600}.lu-body{flex:1;min-width:0}.lineup li.us b{color:var(--accent)}.lu-links{flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:.88rem;display:flex}.lu-links a{color:var(--text);align-items:center;gap:5px;text-decoration:none;display:inline-flex}.lu-links .icon{color:var(--muted)}.lu-contact{margin-top:2px;font-size:.85rem}:root{--f-row-pad:11px 16px 10px;--f-group-radius:16px;--f-group-bg:color-mix(in srgb, var(--surface) 92%, var(--text) 2%);--f-row-focus:color-mix(in srgb, var(--accent) 7%, var(--f-group-bg));--f-hair:color-mix(in srgb, var(--line) 80%, transparent);--f-focus:0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.f-legend{color:var(--muted);margin:6px 0 0;font-size:.8rem}.f-req{color:var(--accent);font-weight:700}.f-form .stack>.f-section+.f-section{margin-top:28px}.f-form{max-width:720px}.f-form .save-bar{margin-left:-16px;margin-right:-16px}.f-section-title{font:600 .72rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px 16px}.f-group{background:var(--f-group-bg);border-radius:var(--f-group-radius);border:1px solid var(--f-hair);grid-template-columns:1fr;gap:0;display:grid;overflow:hidden}@media (width>=600px){.f-group{grid-template-columns:1fr 1fr}.f-group>:not(.f-half){grid-column:1/-1}}.f-field{min-width:0;padding:var(--f-row-pad);background:var(--f-group-bg);box-shadow:0 -1px 0 var(--f-hair), -1px 0 0 var(--f-hair);border:0;flex-direction:column;gap:1px;margin:0;transition:background-color .15s;display:flex;position:relative}.f-field:before{content:"";background:0 0;border-radius:0 3px 3px 0;width:3px;transition:background-color .15s;position:absolute;top:10px;bottom:10px;left:0}.f-field:focus-within{background:var(--f-row-focus)}.f-field:focus-within:before{background:var(--accent)}.f-field:has([aria-invalid=true]):before{background:var(--bad)}.f-label{font:600 .74rem/1.3 var(--sans);color:var(--muted);letter-spacing:.01em;cursor:text;padding:0;display:block}.f-field:focus-within .f-label{color:var(--accent)}.f-field:has([aria-invalid=true]) .f-label{color:var(--bad)}fieldset.f-field>legend.f-label{float:left;cursor:default;width:100%;margin-bottom:8px}fieldset.f-field>legend.f-label+*{clear:both}.f-control{align-items:baseline;min-height:28px;display:flex}.f-prefix{color:var(--muted);font:500 1.02rem/1.4 var(--sans);padding-right:1px}.f-input{width:100%;min-width:0;font:500 1.02rem/1.45 var(--sans);color:var(--text);-webkit-appearance:none;appearance:none;background:0 0;border:0;border-radius:0;outline:none;padding:2px 0 0}textarea.f-input{resize:vertical;min-height:76px}.f-input::placeholder{color:color-mix(in srgb, var(--muted) 55%, transparent);font-weight:400}.f-hint{color:var(--muted);margin:3px 0 0;font-size:.76rem}.f-error{color:var(--bad);align-items:center;gap:5px;margin:3px 0 0;font-size:.8rem;font-weight:600;display:flex}.f-chips{flex-wrap:wrap;gap:6px;display:flex}.f-chip{position:relative}.f-chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.f-chip span{background:color-mix(in srgb, var(--text) 6%, transparent);min-height:36px;color:var(--muted);font:600 .86rem var(--sans);border-radius:999px;align-items:center;padding:0 13px;transition:background-color .15s,color .15s;display:inline-flex}.f-chip input:hover+span{color:var(--text)}.f-chip input:checked+span{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent)}.f-chip input:focus-visible+span{box-shadow:var(--f-focus)}.f-section-title{align-items:center;gap:7px;display:flex}.f-section-title .icon{color:var(--accent)}.f-section-note{color:var(--muted);margin:8px 16px 0;font-size:.78rem}.f-section>*+*{margin-top:10px}.f-section>.f-section-title+*{margin-top:0}details.f-fold>summary{cursor:pointer;border-radius:8px;margin-bottom:0;padding:6px 0;list-style:none}details.f-fold>summary::-webkit-details-marker{display:none}details.f-fold>summary>.icon:last-child{color:var(--muted);margin-left:auto;transition:transform .15s}details.f-fold[open]>summary>.icon:last-child{transform:rotate(90deg)}details.f-fold>summary:focus-visible{box-shadow:var(--f-focus);outline:none}details.f-fold:not([open])>summary{color:var(--muted)}.f-fold-body>*+*{margin-top:10px}details.f-fold[open]>.f-fold-body{margin-top:8px}.f-count{background:color-mix(in srgb, var(--accent) 18%, transparent);min-width:20px;height:20px;color:var(--accent);letter-spacing:0;border-radius:999px;place-items:center;padding:0 6px;font-size:.7rem;display:inline-grid}.f-select{position:relative}.f-select select{cursor:pointer;text-overflow:ellipsis;padding-right:26px}.f-select>.icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;right:0;transform:translateY(-50%)rotate(90deg)}.f-select select option{background:var(--surface);color:var(--text)}.f-list{flex-direction:column;gap:10px;display:flex}.f-row-tools{background:var(--f-group-bg);box-shadow:0 -1px 0 var(--f-hair), -1px 0 0 var(--f-hair);grid-column:1/-1;align-items:center;gap:4px;padding:6px 8px 6px 16px;display:flex}.f-row-index{font:600 .7rem var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:auto}.f-tool{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.f-tool:hover{background:color-mix(in srgb, var(--text) 7%, transparent);color:var(--text)}.f-tool:focus-visible{box-shadow:var(--f-focus);outline:none}.f-tool:disabled{opacity:.3;cursor:default;background:0 0}.f-tool.danger:hover{color:var(--bad)}.f-row-tools .f-tool:not(.danger):not(.f-tool-down) .icon{transform:rotate(-90deg)}.f-row-tools .f-tool-down .icon{transform:rotate(90deg)}.f-add{border:1px dashed color-mix(in srgb, var(--accent) 45%, var(--line));min-height:44px;color:var(--accent);font:600 .9rem var(--sans);cursor:pointer;background:0 0;border-radius:12px;align-self:flex-start;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.f-add:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.f-add:focus-visible{box-shadow:var(--f-focus);outline:none}.f-inline-actions{flex-wrap:wrap;gap:8px;display:flex}.f-inline-actions:empty{display:none}.f-toggle{cursor:pointer;flex-direction:row;grid-column:1/-1;align-items:center;gap:12px;min-height:52px;font-weight:600}.f-toggle input{width:20px;height:20px;accent-color:var(--accent);flex:none}.f-toggle.on{color:var(--accent)}.f-toggle:has(input:disabled){color:var(--muted);cursor:default}.f-date .f-control{align-items:center;gap:4px}.f-date .f-input{text-align:center}.f-date-long{color:var(--accent)}.f-date-long:first-letter{text-transform:uppercase}.f-warn{color:var(--warn);margin:3px 0 0;font-size:.8rem;font-weight:600}.f-input[type=date],.f-input[type=time]{min-height:28px;color-scheme:inherit}.f-input::-webkit-calendar-picker-indicator{opacity:.55;cursor:pointer}.f-section .place-search{margin:0}.f-section .place-input{border-radius:var(--f-group-radius);background:var(--f-group-bg);border:1px solid color-mix(in srgb, var(--accent) 35%, var(--f-hair));min-height:52px;padding:0 16px}.f-section .place-input:focus-within{border-color:var(--accent);box-shadow:var(--f-focus)}.f-section .place-input input{font:500 1.02rem var(--sans)}.f-section .place-list{border-radius:var(--f-group-radius)}.f-summary{border-radius:var(--f-group-radius);background:color-mix(in srgb, var(--bad) 12%, var(--surface));margin:0 0 18px;padding:12px 16px}.f-summary:focus{box-shadow:var(--f-focus);outline:none}.f-summary b{color:var(--bad)}.f-summary ul{margin:6px 0 0;padding-left:18px}.f-summary button{all:unset;cursor:pointer;text-underline-offset:3px;font-size:.9rem;text-decoration:underline}.f-summary button:focus-visible{box-shadow:var(--f-focus);border-radius:4px}.f-form .stack>*+*{margin-top:0}.f-status{color:var(--muted);align-self:center;margin-right:auto;font-size:.8rem}.f-kbd{font:600 .7rem var(--mono);background:color-mix(in srgb, var(--accent-ink) 14%, transparent);border-radius:4px;margin-left:8px;padding:1px 5px}.f-form .btn{border-radius:12px}.f-form .btn:focus-visible,.f-form a:focus-visible{box-shadow:var(--f-focus);outline:none}@media (width<=759px){.f-status{display:none}.f-form .save-bar .btn{flex:1;justify-content:center}.f-form .save-bar{padding-bottom:calc(86px + env(safe-area-inset-bottom));margin-bottom:calc(-110px - env(safe-area-inset-bottom));background:var(--bg);bottom:0}}.save-bar{z-index:15;background:color-mix(in srgb, var(--bg) 92%, transparent);backdrop-filter:blur(8px);border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin:16px -16px 0;padding:12px 16px;display:flex;position:sticky;bottom:0}.save-bar .btn{min-height:44px}.editor{padding-bottom:8px}.danger-zone{border-top:1px dashed var(--line);justify-content:center;margin-top:28px;padding-top:16px;display:flex}.btn.danger{color:var(--bad)}.btn.danger:hover{border-color:var(--bad)}.icon-btn.edit{color:var(--muted);width:38px;height:38px}.icon-btn:disabled{opacity:.35;cursor:default}.menu-title{margin:0 0 8px}.menu.flat{background:0 0;border:0;border-radius:0;margin:0 -14px}.menu.flat li+li{border-top:1px solid var(--line)}.f-input[list]::-webkit-calendar-picker-indicator{display:none!important}.place-search{margin-bottom:14px;position:relative}.place-input{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));background:var(--bg);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.place-input .icon{color:var(--accent)}.place-input input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:12px 0}.place-list{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-height:340px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #00000059}.place-group{font:600 .68rem var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);padding:8px 8px 4px}.place-item{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:flex-start;gap:10px;padding:9px 8px;display:flex}.place-item:hover,.place-item:focus-visible{background:var(--surface-2);outline:none}.place-item .icon{color:var(--muted);margin-top:3px}.place-item span{flex-direction:column;min-width:0;display:flex}.place-item small{color:var(--muted);font-size:.8rem}.place-note{color:var(--muted);padding:8px;font-size:.85rem}.place-credit{color:var(--muted);text-align:right;padding:6px 8px 2px;font-size:.68rem}.top{padding-top:env(safe-area-inset-top)}.wrap{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}@media (width<=759px){.search,input,select,textarea{font-size:16px}main.wrap{padding-top:20px;padding-bottom:calc(110px + env(safe-area-inset-bottom))}.page-head{margin-bottom:20px}.card{padding:16px}.top{backdrop-filter:none;background:var(--bg);z-index:30}.top .wrap{height:50px}.nav{z-index:20;left:calc(12px + env(safe-area-inset-left));right:calc(12px + env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));background:var(--nav-bg);border:1px solid var(--nav-line);border-radius:999px;justify-content:space-between;align-items:stretch;gap:4px;height:64px;padding:8px;position:fixed;overflow:hidden;box-shadow:0 10px 30px #00000073}.nav a{color:var(--nav-icon);-webkit-tap-highlight-color:transparent;border:0;border-radius:999px;flex-direction:row;flex:0 0 48px;justify-content:center;gap:8px;padding:0;font-size:.86rem;font-weight:600;transition:flex-basis .25s,background-color .25s,padding .25s}.nav a span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.nav .icon{width:22px;height:22px}.nav a[aria-current=page]{background:var(--nav-pill);color:var(--nav-text);flex:none;padding:0 18px 0 14px}.nav a[aria-current=page] .icon{color:var(--accent);stroke-width:2.4px}.nav a[aria-current=page] span{clip-path:none;width:auto;height:auto;position:static}.nav a:hover{color:var(--nav-text)}.nav a:active .icon{transform:scale(.9)}.nav a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.page-head{gap:14px}.page-head .actions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;width:100%;display:grid}.page-head .actions:empty{display:none}.page-head .actions>*{white-space:nowrap;justify-content:center;min-height:44px}.page-head .actions>span.muted{white-space:normal;grid-column:1/-1}.btn{min-height:40px}.hide-phone{display:none!important}form .actions{flex-direction:column;align-items:stretch!important}.people .person{flex-wrap:wrap;row-gap:10px}.people .who{flex:1 1 0}.people .row-admin{order:2}.people .contact-actions{order:3;justify-content:flex-start;width:100%;padding-left:54px}.save-bar .btn{flex:1;justify-content:center}form .actions .btn{justify-content:center;min-height:46px}.filter{scrollbar-width:none;flex-wrap:nowrap;margin:0 -16px 16px;padding:0 16px;overflow-x:auto}.filter button{flex:none;padding:8px 14px}.itin a{grid-template-columns:48px 1fr auto;gap:12px;padding:12px 14px}.itin .meta .bar{width:48px}.rtable thead{display:none}.rtable,.rtable tbody,.rtable tr,.rtable td{width:100%;display:block}.rtable tr{border-bottom:1px solid var(--line);padding:12px 0;position:relative}.rtable tr:last-child{border-bottom:0}.rtable td{border:0;padding:1px 0;white-space:normal!important}.rtable td:empty{display:none}.rtable td.lead{padding-right:48px;font-size:1.02rem}.rtable td.eyebrow-cell{color:var(--accent);font-size:.8rem}.rtable td.icon-cell{width:auto;position:absolute;top:12px;right:0}.rtable td.pill-cell{width:auto;position:absolute;top:10px;right:0}.rtable td[data-label]{gap:8px;font-size:.9rem;display:flex}.rtable td[data-label]:before{content:attr(data-label);color:var(--muted);min-width:96px;font-family:var(--sans);font-size:.82rem}.table-wrap.card{padding-top:8px;padding-bottom:8px}.table-wrap.card>h2{margin-top:8px}.matrix th{letter-spacing:.04em;vertical-align:bottom;min-width:64px;padding:6px;font-size:.62rem}.matrix td{padding:10px 6px}.matrix th:first-child,.matrix td:first-child{z-index:1;background:var(--surface);min-width:92px;box-shadow:1px 0 0 var(--line);position:sticky;left:0}.matrix td:first-child .muted{white-space:nowrap}}@media print{:root{--bg:#fff;--surface:#fff;--surface-2:#fff;--line:#bbb;--text:#000;--muted:#444;--accent:#000;--ok:#000;--warn:#000;--bad:#000}.top,.actions,.day-nav,.no-print,.contact-actions{display:none!important}main{padding:0}.card{break-inside:avoid;border:1px solid #bbb;padding:10px 12px}.grid-main,.grid-2{grid-template-columns:1fr 1fr}body{font-size:11pt}a{text-decoration:none}}.hero-venue.hero-route{flex-wrap:wrap;align-items:center;gap:6px;font-size:1rem;display:flex}.hero-venue.hero-route .muted{font-size:.9rem;font-weight:500}.setlist-head{justify-content:space-between;align-items:start;gap:8px;display:flex}.setlist-meta{margin:-6px 0 10px;font-size:.8rem}.f-quickadd{margin-top:12px}.f-quickadd .f-section-note{margin:0 16px 8px}.f-quickadd-list{flex-wrap:wrap;gap:6px;padding:0 4px;display:flex}.f-quickadd-chip{border:1px dashed var(--line);min-height:36px;color:var(--faded);font:600 .84rem var(--sans);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:4px;padding:0 12px 0 9px;display:inline-flex}.f-quickadd-chip .icon{color:var(--accent)}.f-quickadd-chip:hover,.f-quickadd-chip:active{border-style:solid;border-color:var(--accent);color:var(--text)}.f-quickadd-chip:focus-visible{box-shadow:var(--f-focus);outline:none}.f-section>.f-error{margin:8px 16px 0}.f-inline-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.f-inline-actions .f-section-note{margin:0}.itin .where abbr.code{font-family:var(--mono);letter-spacing:.06em;text-decoration:none}.top-band-slot{min-width:0;margin-left:auto;display:flex}.top-band{font:700 .95rem var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--faded);white-space:nowrap;text-overflow:ellipsis;max-width:45vw;text-decoration:none;overflow:hidden}.top-band:hover{color:var(--accent)}.day-nav{grid-template-columns:1fr 1fr;gap:10px;margin-top:28px;display:grid}.day-nav-card{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--text);-webkit-tap-highlight-color:transparent;border-radius:16px;flex-direction:column;gap:3px;padding:12px 14px 13px;text-decoration:none;transition:border-color .15s,background-color .15s;display:flex}.day-nav-card.next{text-align:right;align-items:flex-end}.day-nav-card:hover{border-color:var(--accent)}.day-nav-card:active{background:var(--surface-2)}.day-nav-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.day-nav-dir{font:600 .66rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);align-items:center;gap:2px;display:inline-flex}.day-nav-date{font:500 .78rem var(--mono);color:var(--muted);margin-top:4px}.day-nav-place{font:700 1.15rem var(--display);text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.day-nav-sub{max-width:100%;color:var(--faded);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;font-size:.8rem;display:inline-flex;overflow:hidden}.day-nav-sub .icon{color:var(--muted);flex:none}.day-nav-end{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:16px;place-items:center;padding:12px;font-size:.78rem;display:grid}.row-admin{flex:none;align-items:center;gap:6px;display:inline-flex}.icon-btn.delete{color:var(--muted);width:38px;height:38px}.icon-btn.delete:hover,.icon-btn.delete:active{color:var(--bad);border-color:var(--bad);background:color-mix(in srgb, var(--bad) 12%, var(--surface-2))}.icon-btn.delete:disabled{opacity:.4}.swipe{touch-action:pan-y;position:relative;overflow:hidden}.swipe-content{z-index:1;background:var(--swipe-bg,var(--surface));-webkit-user-select:none;user-select:none;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:relative}.swipe-content a{-webkit-user-drag:none}.swipe-action{background:var(--bad);color:#fff;font:700 .74rem var(--sans);cursor:pointer;border:0;justify-content:flex-end;align-items:center;padding:0;display:flex;position:absolute;inset:0}.swipe-action.edit{background:var(--accent);color:var(--accent-ink);justify-content:flex-start;text-decoration:none}.swipe:not(.swipe-left)>.swipe-action.delete,.swipe:not(.swipe-right)>.swipe-action.edit{visibility:hidden}.swipe-action-inner{flex-direction:column;align-items:center;gap:4px;transition:transform .15s;display:flex}.swipe-action.full .swipe-action-inner{transform:scale(1.1)}.swipe-busy .swipe-content{opacity:.5}.songs>li.swipe,.people>li.swipe{padding:0}.songs>li.swipe>.swipe-content{padding:12px 16px}.people>li.swipe>.swipe-content{padding:12px 14px}.card.swipe{padding:0}.card.swipe>.swipe-content{border-radius:inherit;padding:18px}.itin li.kind-other{--swipe-bg:color-mix(in srgb, var(--surface-2) 55%, var(--surface))}@media (hover:none){.icon-btn.delete{display:none}}@media (width<=759px){.card.swipe>.swipe-content{padding:16px}}.todo-progress{background:var(--surface-2);border-radius:4px;height:4px;margin:-4px 0 8px;overflow:hidden}.todo-progress i{background:var(--ok);border-radius:inherit;height:100%;transition:width .3s;display:block}.todo-list{margin:0 -18px;padding:0;list-style:none}.todo-row+.todo-row{border-top:1px solid var(--line)}.todo-item{align-items:center;gap:12px;min-height:56px;padding:8px 18px;display:flex}.todo-check{border:2px solid var(--muted);width:28px;height:28px;color:var(--accent-ink);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;transition:background-color .15s,border-color .15s,transform .1s;display:grid;position:relative}.todo-check:after{content:"";position:absolute;inset:-10px}.todo-check:active{transform:scale(.9)}.todo-check:focus-visible,.todo-status:focus-visible{box-shadow:var(--f-focus);outline:none}.todo-row.sent .todo-check{border-color:var(--warn)}.todo-row.confirmed .todo-check{background:var(--ok);border-color:var(--ok);color:#0d1a0c}.todo-row.na .todo-check{border-color:var(--line);color:var(--muted)}.todo-na{font-weight:700;line-height:1}.todo-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.todo-label{transition:color .15s}.todo-row.confirmed .todo-label,.todo-row.na .todo-label{color:var(--muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb, var(--muted) 60%, transparent)}.todo-notes{color:var(--muted);font-size:.8rem}.todo-status{cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;flex:none;min-height:30px;font-size:.68rem}.todo-status.na{color:var(--muted)}.todo-add{align-items:center;gap:8px;margin-top:10px;display:flex}.todo-add input{border:1px dashed var(--line);min-width:0;min-height:44px;color:var(--text);font:inherit;background:0 0;border-radius:12px;flex:1;padding:0 14px;font-size:16px}.todo-add input:focus{border-style:solid;border-color:var(--accent);box-shadow:var(--f-focus);outline:none}.todo-add .icon-btn{color:var(--accent)}.todo-add .icon-btn:disabled{color:var(--muted)}.todo-error{color:var(--bad);margin:8px 0 0;font-size:.82rem;font-weight:600}.todo-hint{color:var(--muted);margin:10px 0 0;font-size:.74rem}@media (width<=759px){.todo-list{margin:0 -16px}.todo-item{padding:8px 16px}}@media (hover:hover){.todo-hint{display:none}}:root{--sing-0:#ff5fa8;--sing-1:#f6d03f;--sing-2:#3fd3f0;--sing-3:#8fdc7f;--sing-4:#b9a0ff}@media (prefers-color-scheme:light){:root{--sing-0:#c2185b;--sing-1:#9a6b00;--sing-2:#00788f;--sing-3:#2f7d32;--sing-4:#6a4bc4}}.rh-start{margin:4px 0 14px}.rh-start-small{min-height:34px;padding:4px 12px;font-size:.82rem}.song-lyrics-link{color:var(--accent);align-items:center;gap:5px;margin-top:6px;font-size:.8rem;font-weight:600;text-decoration:none;display:inline-flex}.rehearse{max-width:760px;margin:0 auto}.rh-top{align-items:center;gap:12px;font-size:.85rem;display:flex}.rh-back{color:var(--muted);align-items:center;gap:2px;font-weight:600;text-decoration:none;display:inline-flex}.rh-set{text-align:center;min-width:0;color:var(--faded);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.rh-count{color:var(--muted)}.rh-progress{background:var(--surface-2);border-radius:3px;height:3px;margin:10px 0 18px;overflow:hidden}.rh-progress i{background:var(--accent);height:100%;transition:width .25s;display:block}.rh-head h1{margin:2px 0 6px;font-size:clamp(2rem,9vw,3.2rem);line-height:1.02}.rh-meta{color:var(--faded);letter-spacing:.06em;margin:0;font-size:.85rem}.rh-tune{color:var(--warn);font:600 .85rem var(--mono);margin:8px 0 0}.rh-note{color:var(--muted);margin:8px 0 0}.rh-nav{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.rh-nav .btn{justify-content:center;min-height:48px}.rh-nav .btn:disabled{opacity:.35}.rh-lyrics-wrap{border-top:1px solid var(--line);padding-top:14px}.rh-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.rh-singers,.rh-zoom{gap:6px;display:flex}.rh-singers button,.rh-zoom button{border:1px solid var(--line);min-width:44px;min-height:40px;color:var(--faded);font:600 .85rem var(--sans);cursor:pointer;background:0 0;border-radius:999px;padding:0 12px}.rh-singers button[aria-pressed=true]{border-color:var(--text);color:var(--text);background:var(--surface-2)}.rh-dot{border:2px solid;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.72rem;display:inline-grid}.rh-lyrics{line-height:1.45}.rh-section{font:600 .72rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:1.3em 0 .45em}.rh-section:first-child{margin-top:0}.rh-line{margin:0 0 .3em;transition:opacity .2s}.rh-gap{height:.8em}.sing-0{color:var(--sing-0)}.sing-1{color:var(--sing-1)}.sing-2{color:var(--sing-2)}.sing-3{color:var(--sing-3)}.sing-4{color:var(--sing-4)}.rh-empty{padding:20px 0}.rh-list{margin-top:32px}.rh-list ol{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.rh-list li+li{border-top:1px solid var(--line)}.rh-list button{width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:8px 14px;display:flex}.rh-list button .mono{width:20px;color:var(--muted)}.rh-list button.current{background:color-mix(in srgb, var(--accent) 12%, var(--surface));box-shadow:inset 3px 0 0 var(--accent)}.rh-list-title{flex:1;min-width:0}.rh-list-flag{color:var(--muted);font-size:.72rem}.rh-singers .sing-0{color:var(--sing-0)}.rh-singers .sing-1{color:var(--sing-1)}.rh-singers .sing-2{color:var(--sing-2)}.rh-singers .sing-3{color:var(--sing-3)}.rh-singers .sing-4{color:var(--sing-4)}.rh-singers button[aria-pressed=true][class*=sing-]{background:color-mix(in srgb, currentColor 14%, transparent);border-color:currentColor}.rh-line.duo{color:#0000;-webkit-background-clip:text;background-clip:text;width:fit-content}.rh-singers .sing-0[aria-pressed=true]{color:var(--sing-0)}.rh-singers .sing-1[aria-pressed=true]{color:var(--sing-1)}.rh-singers .sing-2[aria-pressed=true]{color:var(--sing-2)}.rh-singers .sing-3[aria-pressed=true]{color:var(--sing-3)}.rh-singers .sing-4[aria-pressed=true]{color:var(--sing-4)}.stay-dates{white-space:nowrap}.stay-arrow{color:var(--muted)}.stay-nights{color:var(--muted);letter-spacing:.04em;margin-top:2px;font-size:.72rem;display:block}@media (width<=759px){.stay-nights{margin-left:8px;display:inline}}.tours{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.tour-row{border:1px solid var(--line);background:var(--surface);border-radius:18px;overflow:hidden}.tour-row.swipe{padding:0}.tour-card{color:var(--text);-webkit-tap-highlight-color:transparent;flex-direction:column;gap:6px;padding:16px 44px 16px 18px;text-decoration:none;display:flex;position:relative}.tour-card:hover{background:var(--surface-2)}.tour-row.now{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}.tour-row.past .tour-card{opacity:.6}.tour-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tour-phase.now{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.tour-phase.next{color:var(--faded)}.tour-dates{color:var(--muted);font-size:.8rem}.tour-name{font:700 1.45rem var(--display);line-height:1.1}.tour-counts{color:var(--faded);font-size:.88rem}.tour-progress{background:var(--surface-2);border-radius:4px;height:4px;margin-top:4px;display:block;overflow:hidden}.tour-progress i{background:var(--accent);border-radius:inherit;height:100%;display:block}.tour-next{color:var(--text);align-items:center;gap:6px;margin-top:2px;font-size:.84rem;display:inline-flex}.tour-next .icon{color:var(--accent)}.tour-chevron{color:var(--muted);position:absolute;top:50%;right:14px;transform:translateY(-50%)}.back-link{color:var(--muted);align-items:center;gap:2px;margin-bottom:10px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent)}.day-nav-sub.wrap{white-space:normal;align-items:flex-start}.day-nav-sub.wrap .icon{margin-top:2px}
