/* Shared public identity. Explicit page opt-in; no Local 02 or internal-panel selectors. */
html.rossi-public-theme{
  --pop-ink:#171717;--pop-paper:#fff9ec;--pop-red:#c82028;--pop-blue:#073b78;--pop-yellow:#ffe24b;
  --ink:#171717;--paper:#fff9ec;--paper-2:#fff2cf;--cream:#fffdf7;--card:#fffdf7;
  --brick:#c82028;--brick-dark:#a7151d;--red:#c82028;--gold:#9b6022;
  --muted:#625a50;--line:#d4cbbf;--radius:0;--char:#171717;
  color-scheme:light;background:var(--pop-paper);
}
html.rossi-public-theme body{background:var(--pop-paper);color:var(--pop-ink);font-family:Inter,Arial,sans-serif}
html.rossi-public-theme h1,html.rossi-public-theme h2{font-family:'Bebas Neue','Arial Narrow',Impact,sans-serif;letter-spacing:.015em;line-height:1.02}
html.rossi-public-theme h1{font-weight:400}
html.rossi-public-theme h1 em{font-style:normal}
html.rossi-public-theme a:focus-visible,html.rossi-public-theme button:focus-visible,html.rossi-public-theme summary:focus-visible{outline:3px solid var(--pop-blue);outline-offset:4px}
html.rossi-public-theme input:focus-visible,html.rossi-public-theme select:focus-visible,html.rossi-public-theme textarea:focus-visible{outline:3px solid var(--pop-blue);outline-offset:2px}
html.rossi-public-theme :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){border-radius:0;border-color:#aaa197}
html.rossi-public-theme :is(.panel,.card,.form-card,.box,.benefit,.quick,.menu-grid,.offer){border:2px solid var(--pop-ink);border-radius:0;box-shadow:4px 4px 0 var(--pop-ink);background:var(--cream)}
html.rossi-public-theme :is(.btn,.button,.cta:not(aside),.connect-button,.secondary-button,.action,.wallet-btn,.nfc-register-cta){border:2px solid var(--pop-ink);border-radius:0;box-shadow:3px 3px 0 var(--pop-ink);font-weight:800}
html.rossi-public-theme :is(.btn,.button,.connect-button,.action,.cta:not(aside),.nfc-register-cta){background:var(--pop-red);color:#fff}
html.rossi-public-theme :is(.btn-secondary,.button.secondary,.secondary-button){background:var(--cream);color:var(--pop-ink)}
html.rossi-public-theme :is(.topbar,.nav,.top){background:var(--cream);color:var(--pop-ink);border-bottom:3px solid var(--pop-ink)}
html.rossi-public-theme :is(.brand,.brand-copy strong,.brand b){font-family:Inter,Arial,sans-serif;font-weight:800;letter-spacing:-.025em;color:inherit}
html.rossi-public-theme :is(.back,.home-link,.nav .mini){border:2px solid var(--pop-ink);border-radius:0;background:var(--cream);color:var(--pop-ink)}
html.rossi-public-theme .rossi-season-note{display:none}
html.rossi-public-theme.pop-dieciochero .rossi-season-note{display:inline-block;padding:7px 10px;margin:0 0 14px;background:var(--pop-blue);color:#fff;font:800 .66rem/1.4 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;border:2px solid var(--pop-ink)}
html.rossi-public-theme [data-rossi-fiestas]{display:none!important}
html.rossi-public-theme [data-rossi-normal]{display:revert}
html.rossi-public-theme.pop-dieciochero [data-rossi-fiestas]{display:revert!important}
html.rossi-public-theme.pop-dieciochero [data-rossi-normal]{display:none!important}
html.rossi-public-theme.pop-dieciochero{--paper-2:#f0e7d8}
html.rossi-public-theme.pop-dieciochero h1{color:var(--pop-blue)}
html.rossi-public-theme.pop-dieciochero :is(.tricolore,.tricolor){background:linear-gradient(90deg,var(--pop-blue) 0 33.333%,#fff 33.333% 66.666%,var(--pop-red) 66.666%)}

/* Instagram hub: preserve every destination and the weekday menu visibility. */
html.rossi-public-theme[data-rossi-page=links] body{background:var(--pop-blue)}
html.rossi-public-theme[data-rossi-page=links] .shell{background:var(--pop-paper);box-shadow:none;border-inline:2px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=links] .hero{border-bottom:3px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=links] .brand-copy strong{color:#fff}
html.rossi-public-theme[data-rossi-page=links] .hero-copy{padding:12px;background:#171717e8;border:2px solid var(--pop-ink);left:16px;right:16px;bottom:16px}
html.rossi-public-theme[data-rossi-page=links] .brand img{box-shadow:none}
html.rossi-public-theme[data-rossi-page=links] h1{font-size:clamp(3.3rem,12vw,4.7rem);letter-spacing:.01em;max-width:12ch}
html.rossi-public-theme[data-rossi-page=links] .link{border:2px solid var(--pop-ink);border-radius:0;box-shadow:4px 4px 0 var(--pop-ink);background:var(--cream)}
html.rossi-public-theme[data-rossi-page=links] .link[hidden]{display:none}
html.rossi-public-theme[data-rossi-page=links] .link.primary{background:var(--pop-red);color:#fff}
html.rossi-public-theme[data-rossi-page=links] .link:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=links] .icon{background:var(--pop-yellow);border:1px solid var(--pop-ink);border-radius:0;color:var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=links] .primary .icon{background:#fff;color:var(--pop-red)}
html.rossi-public-theme[data-rossi-page=links] .link-copy span{color:#625a50}
html.rossi-public-theme[data-rossi-page=links] .primary .link-copy span{color:#fff}
html.rossi-public-theme[data-rossi-page=links] .arrow{color:var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=links] .primary .arrow{color:#fff}
html.rossi-public-theme[data-rossi-page=links].pop-dieciochero .icon{background:var(--pop-blue);color:#fff}
html.rossi-public-theme[data-rossi-page=links] .quick-grid{gap:14px}

/* Carta: food data, search and print markup remain unchanged. */
html.rossi-public-theme[data-rossi-page=carta] header{background:var(--cream);color:var(--pop-ink);border-bottom:2px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=carta] .category-nav{background:var(--cream);border-top:1px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=carta] .category-nav a{color:var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=carta] .hero{background:var(--pop-paper);color:var(--pop-ink);border-bottom:3px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=carta] .hero:after{color:#073b7808}
html.rossi-public-theme[data-rossi-page=carta] .hero p,html.rossi-public-theme[data-rossi-page=carta] .result-note{color:#625a50}
html.rossi-public-theme[data-rossi-page=carta] .kicker{color:var(--pop-red)}
html.rossi-public-theme[data-rossi-page=carta] h1{font-size:clamp(4rem,9vw,7rem)}
html.rossi-public-theme[data-rossi-page=carta] .section-title{background:var(--pop-ink);color:#fff;border:2px solid var(--pop-ink);box-shadow:4px 4px 0 var(--pop-red)}
html.rossi-public-theme[data-rossi-page=carta] .section-title h2{color:#fff}
html.rossi-public-theme[data-rossi-page=carta] .dish h3{font-family:Inter,Arial,sans-serif}
html.rossi-public-theme[data-rossi-page=carta] .hero .search-wrap input{background:#fff;color:var(--pop-ink);border:2px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=carta] aside.cta{border:2px solid var(--pop-ink);border-radius:0;box-shadow:5px 5px 0 var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=carta] :is(footer,.mobile-bar){background:var(--pop-ink);color:#fff}
html.rossi-public-theme[data-rossi-page=carta] .btn-red{background:var(--pop-red);color:#fff}
html.rossi-public-theme[data-rossi-page=carta] .btn-outline{background:var(--cream);color:var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=carta].pop-dieciochero .section-title{background:var(--pop-blue)}

/* Reservations opt out completely while Local 02 is selected. */
html.rossi-public-theme[data-rossi-page=reservas] .shell{background:var(--pop-paper)}
html.rossi-public-theme[data-rossi-page=reservas] .hero{color:var(--pop-ink);background:var(--pop-yellow);border-bottom:3px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=reservas] h1{font-size:clamp(3.5rem,7vw,6rem);max-width:11ch}
html.rossi-public-theme[data-rossi-page=reservas] .hero-copy p:last-child{color:#4e4840}
html.rossi-public-theme[data-rossi-page=reservas] .eyebrow{color:var(--pop-red)}
html.rossi-public-theme[data-rossi-page=reservas] :is(.venue-picker,.date-picker,.time-board,.guest-summary){border:2px solid var(--pop-ink);border-radius:0;background:var(--cream)}
html.rossi-public-theme[data-rossi-page=reservas] .venue-card[data-venue=rossi]{border-radius:0}
html.rossi-public-theme[data-rossi-page=reservas] .venue-card[data-venue=rossi] strong{font-family:Inter,Arial,sans-serif}
html.rossi-public-theme[data-rossi-page=reservas].pop-dieciochero .hero{background:var(--pop-blue);color:#fff}
html.rossi-public-theme[data-rossi-page=reservas].pop-dieciochero .hero h1{color:#fff}
html.rossi-public-theme[data-rossi-page=reservas].pop-dieciochero .hero-copy p:last-child{color:#edf1f7}
html.rossi-public-theme[data-rossi-page=reservas].pop-dieciochero .eyebrow{color:#fff}

/* Menú del día: dark order area stays dark, and excluded staff/editor screens are untouched. */
html.rossi-public-theme[data-rossi-page=menu] body{background-image:none}
html.rossi-public-theme[data-rossi-page=menu] .intro{background:var(--pop-ink);border:2px solid var(--pop-ink);box-shadow:6px 6px 0 var(--pop-red)}
html.rossi-public-theme[data-rossi-page=menu] .intro h1{color:#fff;max-width:10ch}
html.rossi-public-theme[data-rossi-page=menu] .intro h1 em{color:var(--pop-yellow)}
html.rossi-public-theme[data-rossi-page=menu] .dish h2{font-family:Inter,Arial,sans-serif;letter-spacing:0}
html.rossi-public-theme[data-rossi-page=menu] .order-test{border:2px solid var(--pop-ink);border-radius:0;box-shadow:5px 5px 0 var(--pop-red)}
html.rossi-public-theme[data-rossi-page=menu] .add-dish{border:2px solid var(--pop-ink);border-radius:0;background:var(--pop-red);color:#fff}
html.rossi-public-theme[data-rossi-page=menu] .order-test .btn{border:2px solid #fff}
html.rossi-public-theme[data-rossi-page=menu].pop-dieciochero .intro{background:var(--pop-blue)}
html.rossi-public-theme[data-rossi-page=menu].pop-dieciochero .intro-photo::after{background:none}

/* Membership landing/NFC: same forms, visits, rewards and wallet generation. */
html.rossi-public-theme[data-rossi-page=tarjeta] .hero{background:var(--pop-paper);color:var(--pop-ink);background-image:none}
html.rossi-public-theme[data-rossi-page=tarjeta] .hero:before,html.rossi-public-theme[data-rossi-page=tarjeta] .hero:after{display:none}
html.rossi-public-theme[data-rossi-page=tarjeta] .hero-copy{text-shadow:none}
html.rossi-public-theme[data-rossi-page=tarjeta] .hero h1{font-size:clamp(3rem,5.5vw,5.6rem);color:var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=tarjeta] .hero p{color:#625a50}
html.rossi-public-theme[data-rossi-page=tarjeta] .hero-trust span{color:var(--pop-ink);border-color:var(--pop-ink);border-radius:0}
html.rossi-public-theme[data-rossi-page=tarjeta] .hero .wallet{background:var(--pop-ink);border:3px solid var(--pop-ink);border-radius:0;box-shadow:7px 7px 0 var(--pop-red);backdrop-filter:none}
html.rossi-public-theme[data-rossi-page=tarjeta] .join .panel:last-child{background:var(--pop-ink);color:#fff;border-color:var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=tarjeta] .join .panel:last-child h2{color:#fff}
html.rossi-public-theme[data-rossi-page=tarjeta] .levels{border-radius:0;box-shadow:4px 4px 0 var(--pop-red)}
html.rossi-public-theme[data-rossi-page=tarjeta] .nfc-checkin{border:2px solid var(--pop-ink);border-radius:0;box-shadow:4px 4px 0 var(--pop-red)}
html.rossi-public-theme[data-rossi-page=tarjeta] .nfc-checkin h2{color:#fff}
html.rossi-public-theme[data-rossi-page=tarjeta] .mobile-cta{border-radius:0;border:2px solid var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=tarjeta].pop-dieciochero .hero h1{color:var(--pop-blue)}
html.rossi-public-theme[data-rossi-page=tarjeta].pop-dieciochero .hero .wallet{background:var(--pop-blue)}

/* Promotions, privacy and receipt pages use the same quieter public tokens. */
html.rossi-public-theme[data-rossi-page=promo] .hero{background:var(--pop-paper);color:var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=promo] .hero p{color:#625a50}
html.rossi-public-theme[data-rossi-page=promo] .offer h1{color:inherit}
html.rossi-public-theme[data-rossi-page=privacidad] .wrap{border:2px solid var(--pop-ink);border-radius:0;box-shadow:5px 5px 0 var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=privacidad] h2{font-family:Inter,Arial,sans-serif;line-height:1.3}
html.rossi-public-theme[data-rossi-page=confirmacion] a{border:2px solid var(--pop-ink);border-radius:0;box-shadow:3px 3px 0 var(--pop-ink)}
html.rossi-public-theme[data-rossi-page=wifi] .portal-card{border:2px solid var(--pop-ink);border-radius:0;box-shadow:6px 6px 0 var(--pop-ink);background:var(--cream)}
html.rossi-public-theme[data-rossi-page=wifi] h1{font-size:clamp(2.6rem,7vw,3.6rem)}
html.rossi-public-theme[data-rossi-page=wifi] .connect-button{background:var(--pop-red);color:#fff}
html.rossi-public-theme[data-rossi-page=wifi] .portal-visual{border-bottom:6px solid var(--pop-red)}

@media(max-width:560px){
  html.rossi-public-theme[data-rossi-page=reservas] .hero{padding-top:94px}
  html.rossi-public-theme[data-rossi-page=tarjeta] .hero h1{font-size:2.9rem}
  html.rossi-public-theme[data-rossi-page=links] .hero-copy{left:12px;right:12px;padding:10px}
  html.rossi-public-theme[data-rossi-page=links] .brand-copy strong{font-size:1.2rem}
  html.rossi-public-theme[data-rossi-page=links] .status{display:none}
}
@media(prefers-reduced-motion:reduce){html.rossi-public-theme *,html.rossi-public-theme *:before,html.rossi-public-theme *:after{animation:none!important;transition:none!important}}
@media print{
  html.rossi-public-theme body{background:#fff;color:#000}
  html.rossi-public-theme .rossi-season-note{display:none!important}
  html.rossi-public-theme[data-rossi-page=carta] .hero{background:#fff;color:#000;border:0}
  html.rossi-public-theme[data-rossi-page=carta] .section-title{background:#fff;color:#000;border:0;box-shadow:none}
  html.rossi-public-theme[data-rossi-page=carta] .section-title h2{color:#000}
}
