/* Shared, unscaled application shell. Legacy desktop-compact assets are no longer loaded. */
html.yosh-pacome-responsive {
  font-size:16px; --yosh-fixed-header-height:64px; --feed-heading-font:var(--y-display);
  --feed-body-font:var(--y-body); --feed-meta-font:var(--y-mono);
  --feed-bg:var(--y-bg); --feed-card:var(--y-card); --feed-accent:var(--y-yellow);
  --yosh-border:1px; --yosh-border-accent:1px; --yosh-touch-min:44px;
}
html.yosh-pacome-responsive body.y-app {
  padding:0; margin:0; width:100%; max-width:none; min-height:100dvh;
  background:var(--y-bg); color:var(--y-fg); font:400 15px/1.4 var(--y-body); overflow:hidden;
}
html.yosh-pacome-responsive body.y-app #theBody { width:100%!important; max-width:none!important; height:100dvh; }
html.yosh-pacome-responsive body.y-app #page-1 { inset:0; width:100%; height:100dvh; transform:none; background:var(--y-bg); display:block; }
html.yosh-pacome-responsive body.y-app #barre-1 { top:0; left:0; width:100%; height:64px; z-index:11150!important; }
html.yosh-pacome-responsive body.y-app #barre-1 > br { display:none; }
html.yosh-pacome-responsive body.y-app .main-container {
  position:fixed; inset:64px 0 76px; width:100%; height:auto; min-height:0;
  padding:0; margin:0; overflow-y:auto; overflow-x:clip; overscroll-behavior:contain;
  z-index:1; background:var(--y-bg); font-family:var(--y-body);
}
html.yosh-pacome-responsive body.y-app.y-player-open .main-container { top:calc(62px + var(--y-player-height, 100px)); height:auto; }
html.yosh-pacome-responsive body.y-app #barre-2 { left:0; right:0; bottom:0; z-index:11150; }
html.yosh-pacome-responsive body.y-app #barre-2 .y-nav-items { max-width:none; border-radius:18px 18px 0 0; }
.y-desktop-only { display:none!important; }
html.yosh-pacome-responsive body.y-app .feed-shell { padding:18px 16px 32px; }
html.yosh-pacome-responsive body.y-app .feed-subnav { position:static!important; top:auto; margin:0 0 24px; padding:3px; border:1px solid var(--y-line); background:var(--y-bg2); box-shadow:none; }
html.yosh-pacome-responsive body.y-app .feed-subnav button { min-height:44px; padding:0 16px; font:700 13px var(--y-body); }
html.yosh-pacome-responsive body.y-app .feed-subnav .is-active { background:var(--y-yellow); color:var(--y-ink); }
html.yosh-pacome-responsive body.y-app .agenda-section { margin-bottom:28px; }
html.yosh-pacome-responsive body.y-app .agenda-section-label { font:400 22px/1.1 var(--y-display); color:var(--y-fg); margin:0 0 14px; border-top:3px solid var(--y-fg); padding-top:10px; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track { padding:0; overflow:visible; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event {
  display:grid; grid-template-columns:104px minmax(0,1fr); gap:12px; position:relative;
  width:100%; min-width:0; min-height:290px; height:auto; padding:14px 14px 76px;
  border:1px solid var(--y-line); border-left:5px solid var(--y-yellow); border-radius:4px;
  background:var(--y-card); overflow:hidden; box-shadow:none;
}
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event-bg { display:none; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-tof { position:relative; inset:auto; width:104px; height:128px; min-height:0; margin:0; padding:0; border-radius:3px; background-size:cover; background-position:center; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event-copy { position:static; inset:auto; min-width:0; display:flex; flex-direction:column; gap:7px; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-type { position:static; font:700 10px/1.2 var(--y-mono); color:var(--y-yellow); padding:0; margin:0; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-title-row { display:block; margin:0; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-title { font:400 19px/1.12 var(--y-display); color:var(--y-fg); max-height:none; margin:0; overflow-wrap:anywhere; -webkit-line-clamp:3; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-logo { display:none; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-bottom { display:flex; flex-direction:column; position:static; inset:auto; width:100%; gap:3px; margin:0; padding:0; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-bottom > div { font:400 11px/1.4 var(--y-mono); color:var(--y-muted); margin:0; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-wave { height:34px; bottom:0; background:transparent; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-canvas { height:34px; width:100%; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event-like { right:14px; bottom:40px; min-height:44px; height:44px; padding:0; font-size:14px; color:var(--y-red)!important; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event-like > span:first-child { width:36px; height:36px; font-size:24px; border-width:1px; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event-like-count { font-size:12px; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .agenda-arrow { top:auto; bottom:39px; width:44px; height:44px; padding:10px; border:1px solid var(--y-line); background:var(--y-bg); }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .agenda-arrow--prev { left:12px; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .agenda-arrow--next { left:62px; right:auto; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-live-badge { font:700 10px var(--y-mono); padding:5px 7px; border-radius:3px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-shell { padding:18px 16px 32px; background:var(--y-bg); }
html.yosh-pacome-responsive body.y-app #main-5 .places-selector-block { position:static!important; margin:0 0 16px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-venue-chip { flex:0 0 72px; min-width:72px; gap:6px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-venue-icon { width:64px; border-width:1px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-venue-chip.is-active .places-venue-icon { border:3px solid var(--y-yellow); }
html.yosh-pacome-responsive body.y-app #main-5 .places-venue-name { font:700 11px/1.3 var(--y-body); }
html.yosh-pacome-responsive body.y-app #main-5 .places-banner { width:100%; margin:16px 0; aspect-ratio:16/9; border-radius:4px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-selected-main { gap:12px; padding:0; }
html.yosh-pacome-responsive body.y-app #main-5 .places-logo { width:72px; height:72px; border-width:2px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-title { font:400 26px/1.05 var(--y-display); color:var(--y-fg); }
html.yosh-pacome-responsive body.y-app #main-5 .places-kicker,html.yosh-pacome-responsive body.y-app #main-5 .places-address { font:400 12px/1.4 var(--y-mono); color:var(--y-muted); }
html.yosh-pacome-responsive body.y-app #main-5 .places-bio { font:400 15px/1.6 var(--y-body); }
html.yosh-pacome-responsive body.y-app #main-5 .places-bio-toggle { min-height:44px; font:700 13px var(--y-body); }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-filter { position:static; margin:24px 0 16px; gap:8px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-filter-btn { min-height:44px; padding:8px 14px; border-width:1px; font:700 12px var(--y-body); }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-card { min-height:0; padding:14px; border-radius:4px; background:var(--y-card); border:1px solid var(--y-line); }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-top { grid-template-columns:96px minmax(0,1fr); gap:12px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-media { width:96px; height:128px; aspect-ratio:3/4; border-radius:3px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-title { margin:6px 0; font:400 18px/1.15 var(--y-display); }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-type { font:700 10px/1.4 var(--y-mono); color:var(--y-yellow); }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-date,html.yosh-pacome-responsive body.y-app #main-5 .places-event-time,
html.yosh-pacome-responsive body.y-app #main-5 .places-event-venue { font:400 11px/1.4 var(--y-mono); margin:4px 0; }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-actions { gap:8px; margin-top:14px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-action,html.yosh-pacome-responsive body.y-app #main-5 .places-event-playback { min-height:44px; font:700 12px var(--y-body); border-width:1px; }
html.yosh-pacome-responsive body.y-app #main-5 .places-event-like { font-size:18px; margin-right:0; }
html.yosh-pacome-responsive body.y-app #main-4 { padding:0 0 32px; background:var(--y-bg); }
html.yosh-pacome-responsive body.y-app #main-4 .profile-section { margin:16px; padding:16px; border-radius:4px!important; background:var(--y-card)!important; border:1px solid var(--y-line)!important; box-shadow:none; }
html.yosh-pacome-responsive body.y-app #main-4 .profile-section-title { font:400 20px/1.1 var(--y-display); }
html.yosh-pacome-responsive body.y-app #main-4 .mini-email { display:none!important; }
html.yosh-pacome-responsive body.y-app #main-4 .profile-tab { min-height:44px; padding:8px; font:700 11px var(--y-body); }
html.yosh-pacome-responsive body.y-app #main-4 .profile-empty-state { font:400 14px/1.5 var(--y-body); }
html.yosh-pacome-responsive body.y-app #main-4 #profile-tonight-count { font:400 36px/1 var(--y-display); }
html.yosh-pacome-responsive body.y-app #main-4 .profile-metric { min-height:56px; padding:8px; }
html.yosh-pacome-responsive body.y-app #main-4 .profile-metric span { font:400 22px/1 var(--y-display); }
html.yosh-pacome-responsive body.y-app #main-4 .profile-metric small { font:700 9px var(--y-mono); }
html.yosh-pacome-responsive body.y-app #mapcon { background:var(--y-bg2); }
html.yosh-pacome-responsive body.y-app #propage { top:64px!important; height:calc(100dvh - 140px)!important; min-height:0!important; overflow:auto; background:var(--y-bg); font-size:15px; }
html.yosh-pacome-responsive body.y-app #propage .pro-panel { padding:52px 16px 100px; background:var(--y-bg); color:var(--y-fg); }
html.yosh-pacome-responsive body.y-app .kiosk-dialog { width:min(94vw,560px); font-family:var(--y-body); font-size:15px; padding:20px; border-color:var(--y-line); background:var(--y-bg); }
html.yosh-pacome-responsive body.y-app .kiosk-dialog h2,html.yosh-pacome-responsive body.y-app .kiosk-section h2 { font:400 22px/1.1 var(--y-display); color:var(--y-fg); }
html.yosh-pacome-responsive body.y-app .kiosk-dialog p,html.yosh-pacome-responsive body.y-app .kiosk-section p { font:400 14px/1.5 var(--y-body); }
html.yosh-pacome-responsive body.y-app .kiosk-button,html.yosh-pacome-responsive body.y-app .kiosk-dialog button { min-height:44px; padding:10px 14px; font:700 14px var(--y-body); border-color:var(--y-line); }
html.yosh-pacome-responsive body.y-app .kiosk-section { padding:18px; border-radius:4px; background:var(--y-card); border:1px solid var(--y-line); }
html.yosh-pacome-responsive body.y-app .kiosk-heading img { width:28px; height:28px; }
html.yosh-pacome-responsive body.y-app .kiosk-playing { font:400 14px/1.5 var(--y-body); }
html.yosh-pacome-responsive body.y-app .kiosk-radio-banner { max-height:160px; object-fit:cover; }
html.yosh-pacome-responsive body.y-app .kiosk-launch-artist { position:static; min-height:44px; font:700 13px var(--y-body); margin:12px 16px; }
html.yosh-pacome-responsive body.y-app .kiosk-track { border-color:var(--y-line); font:400 14px/1.4 var(--y-body); }
html.yosh-pacome-responsive body.y-app input:not([type=checkbox]):not([type=range]):not([type=radio]),
html.yosh-pacome-responsive body.y-app textarea,html.yosh-pacome-responsive body.y-app select { max-width:100%; min-height:44px; font:400 16px/1.4 var(--y-body)!important; border:1px solid var(--y-line); border-radius:8px; padding:10px 12px; }
html.yosh-pacome-responsive body.y-app .y-player-progress button:disabled { opacity:.3; cursor:default; }
@media(max-width:1023px) {
  html.yosh-pacome-responsive { --y-bottom-nav:max(76px,calc(64px + env(safe-area-inset-bottom,0px))); }
  html.yosh-pacome-responsive body.y-app #barre-2 .bottom-nav-item { height:56px; min-height:56px; }
  html.yosh-pacome-responsive body.y-app .main-container { bottom:var(--y-bottom-nav); }
}
@media(min-width:1024px) {
  html.yosh-pacome-responsive body { --y-rail:72px; --y-sidebar:400px; }
  html.yosh-pacome-responsive body.y-app.y-sidebar-collapsed { --y-sidebar:0px; }
  html.yosh-pacome-responsive body.y-app .y-desktop-only { display:flex!important; }
  html.yosh-pacome-responsive body.y-app #barre-1 { left:var(--y-rail); width:var(--y-sidebar); border-right:1px solid var(--y-line); }
  html.yosh-pacome-responsive body.y-app .main-container { inset:64px auto 0 var(--y-rail); width:var(--y-sidebar); border-right:1px solid var(--y-line); }
  html.yosh-pacome-responsive body.y-app.y-player-open .main-container { top:64px; }
  html.yosh-pacome-responsive body.y-app #barre-2 { inset:0 auto 0 0; width:var(--y-rail); height:100dvh; background:var(--y-bg2); border-right:1px solid var(--y-line); }
  html.yosh-pacome-responsive body.y-app #barre-2 .y-nav-items { display:flex; flex-direction:column; justify-content:flex-start; align-items:center; width:72px; max-width:72px; height:100%; min-height:0; padding:12px 4px; gap:10px; border-radius:0; background:var(--y-bg2); }
  html.yosh-pacome-responsive body.y-app #barre-2 button { flex:none; width:64px; height:64px; min-height:64px; color:var(--y-fg); font-size:10px; }
  html.yosh-pacome-responsive body.y-app #barre-2 button span { color:var(--y-fg)!important; font-size:10px; }
  html.yosh-pacome-responsive body.y-app #barre-2 [data-y-nav-slot="1"] { order:0; }
  html.yosh-pacome-responsive body.y-app #barre-2 [data-y-nav-slot="2"] { order:1; }
  html.yosh-pacome-responsive body.y-app #barre-2 [data-y-nav-slot="3"] { display:none; }
  html.yosh-pacome-responsive body.y-app #barre-2 [data-y-nav-slot="4"] { order:4; }
  html.yosh-pacome-responsive body.y-app #barre-2 .mn { background:var(--y-cream)!important; padding:3px; }
  .y-desktop-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--y-card); color:var(--y-fg); font:24px var(--y-body); }
  html.yosh-pacome-responsive body.y-app #mapcon { display:block!important; position:fixed!important; inset:0 0 0 calc(var(--y-rail) + var(--y-sidebar))!important; width:calc(100% - var(--y-rail) - var(--y-sidebar))!important; height:100dvh!important; z-index:0!important; }
  html.yosh-pacome-responsive body.y-app.y-player-open #mapcon { bottom:var(--y-player-height, 100px)!important; height:calc(100dvh - var(--y-player-height, 100px))!important; }
  html.yosh-pacome-responsive body.y-app #mapcon #map { width:100%!important; height:100%!important; }
  html.yosh-pacome-responsive body.y-app #y-sidebar-toggle { position:fixed; left:calc(var(--y-rail) + var(--y-sidebar) + 12px); top:16px; z-index:11200; background:var(--y-bg); color:var(--y-fg); font-size:28px; box-shadow:0 2px 10px #0006; }
  html.yosh-pacome-responsive body.y-app.y-sidebar-collapsed #barre-1,html.yosh-pacome-responsive body.y-app.y-sidebar-collapsed .main-container { visibility:hidden; pointer-events:none; }
  html.yosh-pacome-responsive body.y-app.y-pacome-shell #y-player { position:fixed; top:auto; left:calc(var(--y-rail) + var(--y-sidebar)); right:0; bottom:0; width:auto; min-height:0; z-index:11200; grid-template-columns:minmax(0,1fr) auto; }
  html.yosh-pacome-responsive body.y-app.y-player-open #barre-1 { height:64px; }
  html.yosh-pacome-responsive body.y-app #propage { left:var(--y-rail)!important; width:var(--y-sidebar)!important; height:calc(100dvh - 64px)!important; }
  html.yosh-pacome-responsive body.y-app #propage .pro-panel { left:72px; width:400px!important; }
  html.yosh-pacome-responsive body.y-app .feed-subnav { width:100%; }
}

/* Explicitly release the old offsets and accidental grid items. */
html.yosh-pacome-responsive body.y-app #icon-menu { position:absolute; }
html.yosh-pacome-responsive body.y-app .feed-subnav { left:auto; transform:none; width:100%; max-width:100%; }
html.yosh-pacome-responsive body.y-app #main-1 .agenda-section-label { font:400 22px/1.1 var(--y-display); margin:0 0 14px; border-top:3px solid var(--y-fg); padding-top:10px; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event > #mini-container:empty { display:none; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-tof { grid-column:1; grid-row:1; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-event-copy { grid-column:2; grid-row:1; }
html.yosh-pacome-responsive body.y-app .agenda-rail-track .mini-title { color:var(--y-fg)!important; }
html.yosh-pacome-responsive body.y-app #rewardpage .butt4 { margin:0; left:auto; width:100%; box-sizing:border-box; }

/* Map controls belong to the map pane, never to viewport-wide legacy positions. */
html.yosh-pacome-responsive body.y-app #map-public-controls { position:absolute; inset:0; max-height:none; overflow:visible; pointer-events:none; }
html.yosh-pacome-responsive body.y-app .map-venue-strip { position:absolute; top:80px; left:16px; right:76px; max-width:calc(100% - 92px); }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-state-control { position:absolute; left:16px; right:16px; top:auto; bottom:96px; width:auto; transform:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; padding:8px; border:1px solid var(--y-line); border-radius:12px; background:var(--y-bg); }
html.yosh-pacome-responsive body.y-app #map-max-time { grid-column:1/-1; position:static; font:700 11px var(--y-mono); color:var(--y-fg); }
html.yosh-pacome-responsive body.y-app #map-sld-time { grid-column:1/-1; width:100%; height:32px; margin:0; accent-color:var(--y-yellow); }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-state-btn { min-width:0; min-height:36px; padding:6px; font:700 10px var(--y-body); border:1px solid var(--y-line); border-radius:16px; color:var(--y-fg); background:var(--y-bg2); }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-state-btn.is-active { background:var(--y-yellow); color:var(--y-ink); }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-action-control { position:absolute; top:80px; left:auto; right:16px; bottom:auto; transform:none; flex-direction:column; gap:8px; padding:0; background:none; overflow:visible; }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-action-btn { width:44px; height:44px; min-height:44px; padding:10px; border:1px solid var(--y-line); border-radius:50%; background:var(--y-cream); }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-action-btn img { width:24px; height:24px; }
html.yosh-pacome-responsive body.y-app #kiosk-map-button { position:absolute; top:80px; right:72px; width:44px; height:44px; padding:10px; border:1px solid var(--y-yellow); border-radius:12px; }
html.yosh-pacome-responsive body.y-app #map-public-status { position:absolute; top:16px; left:72px; right:72px; padding:8px; font:400 13px/1.4 var(--y-body); }
html.yosh-pacome-responsive body.y-app #offline-map-empty { position:absolute; top:40%; left:50%; width:calc(100% - 40px); max-width:380px; height:auto; transform:translate(-50%,-50%); padding:18px; border:1px solid var(--y-line); border-radius:12px; background:var(--y-bg); color:var(--y-muted); font:400 14px/1.5 var(--y-body); }
html.yosh-pacome-responsive body.y-app #menu { top:64px; height:calc(100dvh - 140px); padding:16px; background:var(--y-bg); font:400 15px/1.5 var(--y-body); }
@media(min-width:1024px) {
 html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-state-control { left:24px; right:24px; bottom:16px; max-width:560px; margin:auto; }
 html.yosh-pacome-responsive body.y-app .map-venue-strip { top:16px; left:72px; }
}

html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-action-control { display:flex; }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-action-btn { position:static; inset:auto; min-width:44px; min-height:44px; width:44px; height:44px; }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-action-btn img { width:24px; height:24px; }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-state-control #map-sld-time { appearance:auto; height:32px; background:none; border:0; }
html.yosh-pacome-responsive body.y-app #mapcon #map-public-controls .map-state-control #map-sld-time::-webkit-slider-thumb { appearance:auto; width:18px; height:18px; }
@media(min-width:1024px) {
 html.yosh-pacome-responsive body.y-app #barre-2 .y-desktop-icon { display:grid; place-items:center; width:34px!important; height:34px; font-size:22px; }
 html.yosh-pacome-responsive body.y-app #barre-2 button > span:not(.y-desktop-icon) { width:auto; }
}
