/* Show planning grid (public/rider/js/show-grid.js): the tour's days as a spreadsheet. Scrolls sideways on a phone
   with the date pinned; the cell being edited shows its input in place. */
.dates-view{margin:0 0 12px}
.dates-grid .dates-view{margin-bottom:10px}
.g-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 16px;margin:0 0 10px}
.g-tools .f{margin:0;display:flex;flex-direction:column;gap:4px}
.g-add{display:flex;align-items:flex-end;gap:8px}
.g-count{margin:0 0 8px auto}
.g-cols{position:relative;align-self:flex-end}
.g-cols>summary{list-style:none;cursor:pointer}.g-cols>summary::-webkit-details-marker{display:none}
.g-cols-pop{position:absolute;z-index:20;top:calc(100% + 4px);left:0;min-width:210px;display:grid;gap:4px;padding:10px 12px;background:var(--surface,#fff);border:1px solid var(--line-strong,#c5cec8);border-radius:8px;box-shadow:0 10px 28px #0003}
.g-cols-pop label{display:flex;gap:8px;align-items:center;font-size:14px;white-space:nowrap}.g-cols-pop input{min-height:0}
.g-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line,#d9e0da);border-radius:10px}
.show-grid{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px;background:var(--surface,#fff)}
.show-grid th,.show-grid td{text-align:left;vertical-align:top;padding:7px 9px;border-top:1px solid var(--line,#d9e0da);border-left:1px solid color-mix(in srgb,var(--line,#d9e0da) 55%,transparent)}
.show-grid tr>:first-child{border-left:0}
.show-grid thead th{border-top:0;padding:0;background:var(--bg,#f1f4f0);position:sticky;top:0;z-index:2}
.show-grid thead th button{all:unset;box-sizing:border-box;display:flex;gap:4px;align-items:center;width:100%;padding:8px 9px;cursor:pointer;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#5a6861);white-space:nowrap}
.show-grid thead th[aria-sort=ascending] button,.show-grid thead th[aria-sort=descending] button{color:var(--ink,#111)}
.show-grid .sort-ind{font-size:9px;min-width:9px}
.show-grid td{min-width:90px;max-width:260px;cursor:default}
.show-grid[aria-readonly=false] td[data-key]{cursor:text}
.show-grid td[data-key]:hover{background:color-mix(in srgb,var(--accent-soft,#f7e2dd) 45%,var(--surface,#fff))}
.show-grid td:focus-visible,.show-grid button:focus-visible{outline:2px solid var(--accent,#c2311c);outline-offset:-2px}
.show-grid .g-v{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;overflow-wrap:break-word}
.show-grid .g-date{position:sticky;left:0;z-index:1;background:var(--surface,#fff);white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums;min-width:120px}
.show-grid thead .g-date{z-index:3;background:var(--bg,#f1f4f0)}
.show-grid .g-on_stage,.show-grid .g-get_in,.show-grid .g-soundcheck,.show-grid .g-dinner{font-variant-numeric:tabular-nums;min-width:110px}
.show-grid .wide{min-width:220px;max-width:360px}
.show-grid .g-tech,.show-grid .g-general,.show-grid .g-address{min-width:170px}
.show-grid .g-linked{color:var(--ok,#2c6a55);font-size:9px;vertical-align:middle}
.show-grid td.editing{position:relative;padding:3px;background:var(--surface,#fff);box-shadow:inset 0 0 0 2px var(--accent,#c2311c)}
.show-grid .g-editor{width:100%;min-width:140px;box-sizing:border-box;font:inherit;padding:5px 6px;border:0;background:var(--field,#fff);color:var(--ink,#111)}
.show-grid textarea.g-editor{min-width:240px;resize:vertical}
.show-grid .g-suggest{position:absolute;z-index:10;left:0;top:100%;min-width:260px;list-style:none;margin:2px 0 0;padding:4px;background:var(--surface,#fff);border:1px solid var(--line-strong,#c5cec8);border-radius:8px;box-shadow:0 10px 28px #0003}
.show-grid .g-suggest button{all:unset;box-sizing:border-box;display:block;width:100%;padding:6px 8px;border-radius:6px;cursor:pointer;font-weight:600}
.show-grid .g-suggest button:hover,.show-grid .g-suggest button:focus-visible{background:var(--accent-soft,#f7e2dd)}
.show-grid .g-suggest small{display:block;font-weight:400;color:var(--muted,#5a6861)}
.show-grid .g-act{min-width:0;width:1%;white-space:nowrap;padding:3px 6px}
.show-grid .g-go{width:1%;white-space:nowrap;padding:4px 8px}
.show-grid td.g-go{display:flex;gap:6px}
.show-grid .g-btn{min-height:32px;padding:2px 12px;border-radius:999px;border:1px solid var(--line-strong,#c5cec8);background:var(--surface,#fff);color:var(--ink,#18221d);font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}
.show-grid .g-btn:hover{border-color:var(--accent,#c2311c)}
.show-grid .g-btn:focus-visible{outline:2px solid var(--accent,#c2311c);outline-offset:2px}
.show-grid .grp th{padding:0;background:var(--bg,#f1f4f0)}
.show-grid .grp button{all:unset;box-sizing:border-box;position:sticky;left:0;display:inline-flex;gap:8px;align-items:baseline;padding:7px 9px;cursor:pointer;font-weight:700;font-size:13.5px}
.show-grid .grp small{font-weight:600;color:var(--muted,#5a6861);font-size:12px}
.show-grid .fold{display:inline-block;width:12px}
.show-grid tr.st-cancelled td:not(.g-act):not(.editing) .g-v{text-decoration:line-through;opacity:.6}
.g-help{margin-top:8px}
.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}
@media(max-width:820px){.g-count{margin-left:0;flex-basis:100%}.g-add{flex-wrap:wrap}}
