/* V3: the complete logo remains inside its box at every breakpoint. */
.skip{opacity:0;pointer-events:none}.skip:focus{opacity:1;pointer-events:auto}
#sidebar .brand{height:86px;overflow:visible;margin:0 0 15px}
#sidebar .brand img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center}
.mobile-brand{width:140px;height:56px;overflow:visible}
.mobile-brand img{inset:0;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:left center}
.next-night{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--hero-bg);border:1px solid var(--accent-border);border-radius:18px;padding:25px 28px;margin-bottom:22px}
.next-night .eyebrow{margin:0 0 10px;color:var(--accent-text)}
.next-night h2{font-size:26px;color:var(--hero-ink);margin-bottom:10px}
.next-night p{font-size:13px;color:var(--hero-muted)}
.next-night-actions{display:flex;flex-direction:column;align-items:flex-end;gap:17px}
.full-page{max-width:1160px}
.page-back{margin-bottom:20px}
.full-page h1{max-width:850px;line-height:1.35}
.page-form{background:var(--paper);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:var(--shadow)}
.page-body{padding:30px;max-width:920px}
.page-body form{margin-top:24px}
.page-body .field{margin-bottom:23px}
.page-body input,.page-body select,.page-body textarea{width:100%;min-height:46px}
.page-body label{font-size:13px;margin-bottom:9px}
.page-body .detail-summary{padding:20px;font-size:13px;line-height:1.8}
.page-actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--line);background:var(--surface-soft);padding:20px 30px;flex-wrap:wrap}
.page-body>p{max-width:760px;font-size:14px}
.full-page .support-note{font-size:12px;line-height:1.7}
.full-page .event-art{max-width:700px}
@media(max-width:640px){
  .next-night{padding:20px;gap:12px;align-items:flex-start}
  .next-night h2{font-size:22px}.next-night p{font-size:12px}
  .next-night-actions .btn{font-size:11px;padding:8px 10px}
  .next-night-actions{gap:15px;flex:none}
  .next-night .eyebrow{font-size:9px}
  .full-page .page-heading h1{font-size:25px}
  .page-body{padding:20px}.page-actions{padding:18px 20px}
  .page-actions>.btn{flex:1;min-height:46px}
  .page-body .detail-summary{padding:16px;font-size:12px}
  .full-page .page-heading{margin-bottom:20px}
}
@media(max-width:359px){.mobile-brand{width:113px}.next-night{flex-wrap:wrap}.next-night-actions{width:100%;flex-direction:row;align-items:center;justify-content:space-between}.page-actions>.btn{white-space:normal}}

/* V4: a composed editing workspace with live context, not an oversized form. */
.full-page{max-width:1360px}.page-body{max-width:none}
.location-workspace{--map-bg:#f1eefc;--map-block:#e6e0f6;--map-edge:#ddd4ee;--map-road:#fff;max-width:1400px;padding-top:24px}
[data-theme=dark] .location-workspace{--map-bg:#171d35;--map-block:#242942;--map-edge:#343451;--map-road:#10162c}
.location-workspace .page-back{margin-bottom:20px;font-size:12px;min-height:28px}
.location-heading{display:flex;align-items:center;gap:17px;margin-bottom:22px}
.location-heading-icon{width:56px;height:60px;border:1px solid var(--accent-border);background:var(--accent-wash);color:var(--accent-text);border-radius:18px 18px 8px 8px;display:grid;place-items:center;flex:none}
.location-heading-icon svg{width:26px;height:26px}
.location-heading .eyebrow{margin:0 0 7px;font-size:9px;letter-spacing:1.5px;color:var(--muted)}
.location-heading h1{font-size:27px;letter-spacing:-.9px;line-height:1.3}
.location-heading p{font-size:12px;margin-top:6px}
.location-heading>.pill{margin-left:auto}
.location-context{display:flex;gap:12px;align-items:center;padding:13px 17px;border:1px solid var(--accent-border);background:var(--accent-wash);border-radius:10px;margin-bottom:22px}
.context-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none}
.location-context strong{font-size:12px;font-weight:600;margin-right:12px}
.location-context span:not(.context-dot){font-size:11px;color:var(--muted)}
.context-date{display:flex;align-items:center;gap:9px;margin-left:auto;white-space:nowrap}
.context-date svg{width:16px}
.location-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px;align-items:start}
.location-editor{min-width:0}.location-editor form{margin:0;display:grid;gap:16px}
.editor-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:var(--shadow)}
.editor-card-heading{display:flex;align-items:center;gap:13px;padding:18px 22px;border-bottom:1px solid var(--line)}
.section-number{width:30px;height:30px;border:1px solid var(--accent-border);background:var(--accent-wash);color:var(--accent-text);border-radius:9px;display:grid;place-items:center;font-size:10px;font-weight:650;flex:none}
.editor-card-heading h2{font-size:14px;letter-spacing:-.3px}
.editor-card-heading p{font-size:11px;margin-top:5px}
.editor-fields{padding:21px 22px 6px}
.editor-fields .field{margin-bottom:17px}
.editor-fields label{font-size:12px;margin-bottom:7px}
.editor-fields input{min-height:42px;background:var(--surface-soft);font-size:12px}
.editor-fields input:focus{background:var(--paper)}
.editor-fields input::placeholder{opacity:.8}
.editor-fields .field small{font-size:10px}
.required-mark{color:var(--accent-text);margin-left:2px}
.timezone-explanation{font-size:11px;line-height:1.7;padding:0 0 16px;color:var(--muted);max-width:520px}
.location-advanced{background:var(--paper);border:1px solid var(--line);border-radius:11px;overflow:hidden}
.location-advanced summary{padding:15px 21px;display:flex;gap:10px;align-items:center;font-size:12px;cursor:pointer;list-style:none;min-height:50px}
.location-advanced summary::-webkit-details-marker{display:none}
.location-advanced summary svg{width:17px;color:var(--muted)}
.location-advanced summary span{margin-left:auto;color:var(--muted);font-size:10px}
.location-advanced summary:after{content:'+';color:var(--accent-text);font-size:18px}
.location-advanced[open] summary:after{content:'−'}
.location-advanced[open] summary{border-bottom:1px solid var(--line)}
.location-advanced .editor-fields>p{font-size:12px;margin:0 0 16px}
.location-preview{display:grid;gap:17px;min-width:0}
.preview-card{border:1px solid var(--line);background:var(--paper);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.preview-title{display:flex;align-items:center;justify-content:space-between;padding:17px 19px;font-size:9px;letter-spacing:1.4px;color:var(--muted);font-weight:600}
.preview-title svg{width:15px;height:15px}
.venue-map-art{position:relative;height:178px;overflow:hidden;margin:0 9px;border-radius:8px}
.venue-map-art>svg{width:100%;height:100%;stroke:none;fill:none}
.venue-map-art>span{position:absolute;bottom:8px;left:8px;background:var(--paper);color:var(--muted);padding:4px 6px;border-radius:4px;font-size:8px}
.preview-address{padding:21px 19px 17px;display:flex;gap:12px;align-items:flex-start;overflow-wrap:anywhere}
.preview-venue-icon{background:var(--accent-wash);color:var(--accent-text);width:33px;height:36px;border-radius:10px 10px 5px 5px;display:grid;place-items:center;flex:none}
.preview-venue-icon svg{width:17px}
.preview-address h2{font-size:15px;margin:0 0 7px}
.preview-address p{font-size:12px;line-height:1.65;margin-bottom:3px}
.preview-address small{font-size:11px}
.preview-timezone{margin:0 19px 19px;padding-top:14px;border-top:1px solid var(--line);display:flex;gap:9px;color:var(--muted);font-size:11px;align-items:center}
.preview-timezone svg{width:15px;height:15px}
.location-checklist{padding:20px;border:1px solid var(--line);border-radius:13px;background:var(--paper)}
.location-checklist h3{font-size:12px;letter-spacing:0}
#location-progress-label{font-size:11px;color:var(--accent-text)}
.location-checklist .progress{height:4px;margin:15px 0 13px}
.location-check{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:11px}
.location-check>span{color:var(--muted);display:flex}
.location-check svg{width:14px;height:14px}
.location-check.ready>span{color:var(--success)}
.location-check small{margin-left:auto;font-size:10px}
.location-checklist>p{margin-top:14px;padding-top:13px;border-top:1px solid var(--line);font-size:11px;line-height:1.7}
.location-help{display:flex;gap:10px;padding:0 3px}
.location-help svg{width:16px;color:var(--accent-text);margin-top:2px}
.location-help p{font-size:11px;line-height:1.7}
.location-savebar{margin-top:22px;position:sticky;bottom:12px;z-index:20;border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 22px #040e2510;background:var(--chrome);backdrop-filter:blur(14px);padding:14px 20px;align-items:center}
.savebar-note{margin-right:auto;display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}
.savebar-note svg{width:16px;color:var(--accent-text)}
.savebar-note strong{color:var(--ink);font-weight:550}
.savebar-note small{display:block;margin-top:4px;font-size:10px}
@media(min-width:1600px){.location-workspace{padding-top:28px}.location-layout{grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr)}}
@media(max-width:1000px){.location-layout{grid-template-columns:minmax(0,1fr) 280px;gap:16px}.location-heading h1{font-size:23px}.location-heading>.pill{display:none}.location-context>div>span{display:block;margin-top:4px}.savebar-note{max-width:210px}.editor-card-heading,.editor-fields{padding-left:17px;padding-right:17px}}
@media(max-width:800px){.location-layout{grid-template-columns:1fr}.location-preview{grid-template-columns:1fr 1fr;align-items:start}.location-help{grid-column:1/-1}.savebar-note{display:none}}
@media(max-width:640px){.location-workspace{padding-top:17px}.location-workspace .page-back{margin-bottom:15px}.location-heading{gap:12px;margin-bottom:18px}.location-heading-icon{width:43px;height:48px;border-radius:14px 14px 6px 6px}.location-heading-icon svg{width:22px}.location-heading .eyebrow{font-size:8px;letter-spacing:.75px}.location-heading h1{font-size:21px;letter-spacing:-.6px}.location-heading p{font-size:11px;line-height:1.5}.location-context{padding:12px;gap:8px;margin-bottom:17px}.context-date{display:none}.location-context strong{font-size:11px}.location-context>div>span{font-size:10px}.location-preview{grid-template-columns:1fr}.location-editor .form-grid{grid-template-columns:1fr 1fr;gap:10px}.editor-fields input{min-width:0}.editor-card-heading p{font-size:10px}.editor-card-heading{padding-block:16px}.location-savebar{bottom:calc(75px + env(safe-area-inset-bottom));padding:12px;gap:8px;margin-top:18px}.location-savebar>.btn{min-height:44px;font-size:12px}.location-advanced summary{padding-inline:17px;font-size:11px}.venue-map-art{height:155px}.location-workspace .location-savebar .btn{white-space:nowrap}.location-workspace .field label{font-size:11px}.location-heading p{max-width:220px}}
