#simpleSetup, #rsBack { display:none; }
body.simple-setup { display:block; padding:24px; background:#f4f7fb; }
body.simple-setup::before { display:none; }
body.simple-setup .app { width:min(1100px,100%); margin:auto; }
body.simple-setup #welcomeScreen { display:none !important; }
body.simple-setup #simpleSetup { display:block; }
body.simple-setup #rsBack { display:block; }
body.simple-setup .topbar { background:#fff; border:1px solid #dce6f0; border-radius:16px; box-shadow:none; padding:16px 24px; margin-bottom:16px; }
body.simple-setup .brand-logo { width:52px; height:52px; filter:none; }
body.simple-setup .brand-copy strong { color:#06163f; font-size:1.7rem; }
body.simple-setup .brand-copy span { color:#526888; font-size:.95rem; }
body.simple-setup .topbar #today, body.simple-setup .presentation-link { display:none; }
#rsBack { border:1px solid #cfdeed; padding:10px 16px; border-radius:99px; background:white; color:#075bb5; min-height:44px; box-shadow:none; }
.rs-hero { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1fr) 270px; padding:0 28px; align-items:center; background:#e3f2ff; border-radius:16px; overflow:hidden; margin-bottom:16px; }
.rs-hero::before { content:''; position:absolute; z-index:-1; border-radius:50%; width:70%; height:130%; background:#d0e8fc; right:-20%; bottom:-85%; transform:rotate(-18deg); }
.rs-hero > div:first-child { padding:24px 0; }
.rs-hero .rs-kicker { font-size:.95rem; font-weight:900; color:#0865cb; margin:0 0 8px; }
.rs-hero h1 { font-size:clamp(1.7rem,3.3vw,2.6rem); line-height:1.12; }
.rs-hero p { font-size:1rem; color:#526888; line-height:1.5; }
.rs-mascot { position:relative; height:220px; align-self:end; }
.rs-mascot img { position:absolute; width:390px; max-width:none; height:390px; object-fit:contain; left:50%; transform:translateX(-50%); top:-4px; }
.rs-card { padding:24px; border:1px solid #dce6f0; border-radius:16px; background:white; }
#simpleSetup h2 { font-size:1.25rem; margin:0 0 14px; }
#simpleSetup h3 { font-size:1.05rem; margin:0 0 12px; }
.rs-choices, .rs-settings { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.rs-choices { margin-bottom:18px; }
#simpleSetup button { box-shadow:none; }
#simpleSetup button:focus-visible, #simpleSetup input:focus-visible { outline:3px solid #0865cb; outline-offset:3px; }
#simpleSetup .rs-choice { display:flex; align-items:center; gap:16px; position:relative; padding:24px 36px 24px 18px; min-height:150px; border:1px solid #dce6f0; background:white; border-radius:12px; text-align:left; color:#06163f; }
#simpleSetup .rs-choice[aria-pressed=true] { border:2px solid #0865cb; background:#eff7ff; }
.rs-choice strong { display:block; font-size:1.15rem; }
.rs-choice small { display:block; font-size:.9rem; color:#526888; font-weight:500; line-height:1.5; margin-top:4px; }
.rs-icon { display:grid; place-items:center; width:64px; height:64px; flex-shrink:0; background:#e3f2ff; border-radius:50%; font-size:2rem; }
.rs-check { position:absolute; right:12px; top:12px; width:22px; height:22px; border:1px solid #bdcfe3; border-radius:50%; color:transparent; text-align:center; line-height:20px; }
[aria-pressed=true] > .rs-check { color:white; background:#0865cb; border-color:#0865cb; }
.rs-box { min-width:0; border:1px solid #e2eaf3; border-radius:12px; padding:16px; }
.rs-quantities { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-bottom:14px; }
#simpleSetup .rs-quantities button, #simpleSetup .rs-chips button { min-height:44px; border:1px solid #bacde2; border-radius:8px; background:white; color:#06163f; }
#simpleSetup button[aria-pressed=true]:not(.rs-choice) { background:#0865cb; color:white; border-color:#0865cb; }
.rs-other { display:flex; gap:12px; justify-content:space-between; align-items:center; }
.rs-other label { font-weight:800; }
.rs-other small { display:block; font-size:.78rem; font-weight:500; color:#526888; margin-top:5px; }
#rsCount { width:115px; min-width:0; min-height:44px; border:1px solid #bacde2; border-radius:8px; padding:8px; font:inherit; color:#06163f; }
#rsAvailability { font-size:.85rem; color:#526888; line-height:1.4; margin:10px 0 0; }
#rsAvailability.is-warning { color:#925616; }
#simpleSetup .name-box { margin:0; max-width:none; gap:6px; }
#simpleSetup .name-box label { font-size:.85rem; }
#simpleSetup .name-box input { min-height:44px; border:1px solid #bacde2; background:white; border-radius:8px; font-size:1rem; padding:8px 12px; }
#simpleSetup .profile-panel { margin:10px 0 0; border:0; padding:10px; border-radius:8px; background:#eff7ff; gap:8px; }
#simpleSetup .profile-panel > .profile-note:first-child { display:none; }
#simpleSetup .guest-option { font-size:.85rem; font-weight:700; }
#simpleSetup .profile-note { font-size:.78rem; font-weight:500; }
.rs-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid #edf2f7; padding-top:16px; margin-top:16px; }
#simpleSetup #rsStart { color:white; background:#0865cb; border:0; border-radius:8px; min-height:48px; padding:10px 28px; font-size:1rem; }
#simpleSetup #viewProgressBtn { min-height:44px; padding:8px 20px; border:1px solid #173965; background:white; color:#173965; border-radius:8px; font-size:.95rem; }
.rs-selection { margin:0 0 18px; padding:18px; background:#f7faff; border:1px solid #dce6f0; border-radius:12px; }
.rs-selection[hidden] { display:none; }
.rs-chips { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
#simpleSetup .rs-chips button { padding:8px 12px; }
#simpleSetup .filter-chip-group { margin-bottom:16px; }
#simpleSetup .filter-chip { font-size:.9rem; min-height:44px; border:1px solid #cad9e9; background:white; padding:8px 12px; }
#simpleSetup .compact-filter-trigger { background:white; border:1px solid #cad9e9; min-height:48px; border-radius:8px; }
body.simple-setup #compactFilterDialog { position:fixed; z-index:100; }
@media(max-width:760px) {
 body.simple-setup { padding:14px; }
 body.simple-setup .topbar { flex-direction:row; flex-wrap:wrap; align-items:center; gap:12px; padding:14px; }
 body.simple-setup .brand-copy strong { font-size:1.35rem; }
 .rs-hero { grid-template-columns:minmax(0,1fr) 170px; padding:0 20px; }
 .rs-mascot { height:200px; }
 .rs-mascot img { width:330px; height:330px; top:12px; }
 .rs-card { padding:18px; }
 #simpleSetup .rs-choice { gap:10px; padding:20px 30px 20px 12px; }
 .rs-icon { width:44px; height:44px; font-size:1.5rem; }
}
@media(max-width:580px) {
 .rs-hero { grid-template-columns:1fr; }
 .rs-hero > div:first-child { padding:22px 0 0; }
 .rs-mascot { height:135px; }
 .rs-mascot img { width:245px; height:245px; top:0; left:65%; }
 .rs-choices, .rs-settings { grid-template-columns:1fr; }
 #simpleSetup .rs-choice { min-height:112px; padding:20px 34px 20px 14px; }
 .rs-footer { flex-direction:column-reverse; align-items:stretch; }
 #simpleSetup #rsStart, #simpleSetup #viewProgressBtn { width:100%; }
 .rs-other { flex-wrap:wrap; }
 .rs-selection { padding:12px; }
 .rs-chips button { max-width:100%; overflow-wrap:anywhere; }
}
#simpleSetup .profile-panel, #simpleSetup .name-box input { box-shadow:none; }
#simpleSetup .guest-option { flex-direction:row; align-items:flex-start; }
.rs-preview-chip { display:inline-block; background:#e3f2ff; color:#315474; padding:4px 8px; border-radius:99px; margin:5px 5px 0 0; font-size:.75rem; font-weight:600; }
@media(max-width:580px) { .rs-footer { position:static; background:white; padding-bottom:max(10px,env(safe-area-inset-bottom)); } }
.rs-icon { background:transparent; }
.rs-icon img { width:100%; height:100%; object-fit:contain; }
/* Configuraciones de modos según las referencias del paquete maestro v2. */
body.simple-setup { background:linear-gradient(120deg,#f0faff,#f9fcff 50%,#f0f9ff); }
.rs-hero { grid-template-columns:minmax(0,1fr) 285px; padding-right:0; }
.rs-hero h1 { font-size:clamp(1.7rem,2.7vw,2.4rem); }
.rs-mascot { width:100%; height:auto; aspect-ratio:340 / 247; background-image:url('/assets/approved-v2/simple-config-reference.png'); background-size:491.764706% auto; background-position:80.3303303% 16.2824207%; background-repeat:no-repeat; }
.rs-mascot img { display:none; }
#simpleSetup[data-session-mode=contest] .rs-mascot { background-image:url('/assets/approved-v2/contest-config-reference.png'); }
#simpleSetup[data-session-mode=race] .rs-mascot { background-image:url('/assets/approved-v2/race-config-reference.png'); }
#rsJoinRoom, #rsRoomNotice, .rs-room-help { display:none; }
#simpleSetup:not([data-session-mode=simple]) #rsJoinRoom { display:block; background:white; color:#173965; border:1px solid #173965; padding:10px 18px; border-radius:8px; min-height:44px; }
#simpleSetup:not([data-session-mode=simple]) #rsProgress, #simpleSetup:not([data-session-mode=simple]) .profile-panel { display:none; }
#simpleSetup:not([data-session-mode=simple]) #rsRoomNotice { display:block; padding:10px; background:#edf7ff; border-radius:8px; font-size:.85rem; color:#315474; line-height:1.45; margin:12px 0 6px; }
#simpleSetup:not([data-session-mode=simple]) .rs-room-help { display:block; color:#526888; font-size:.8rem; }
#simpleSetup .rs-choice strong { font-family:'Nunito',Arial,sans-serif; font-weight:800; }
.rs-card { padding:20px; }
#simpleSetup .rs-choice { min-height:160px; }
.rs-settings { gap:16px; }
@media(max-width:760px) { .rs-hero { grid-template-columns:minmax(0,1fr) 210px; } }
@media(max-width:580px) { .rs-hero { grid-template-columns:1fr; padding-right:20px; } .rs-mascot { width:210px; justify-self:end; } #simpleSetup .rs-choice { min-height:120px; } #rsJoinRoom { width:100%; } }
