.rsp-widget,.mn-private{--navy:#173a4b;--gold:#856526;--line:#cbd5d8;--paper:#f5f3ee;color:#173747;font-family:inherit}.rsp-widget{margin:12px 0 20px}.rsp-widget [hidden]{display:none!important}.rsp-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rsp-areas button,.rsp-widget select,.rsp-widget input,.rsp-widget .rsp-times button,.mn-private input,.mn-private select{background:#fff;color:var(--navy);border:1px solid var(--line);border-radius:5px;padding:12px;font:inherit;min-height:44px;max-width:100%}.rsp-areas button{font-weight:600;text-align:left;cursor:pointer}.rsp-areas button:hover,.rsp-areas button[aria-pressed=true],.rsp-widget .rsp-times button[aria-pressed=true]{border-color:var(--navy);background:#eaf1f2}.rsp-stage{margin:18px 0 0;padding:18px 22px;border-left:3px solid #ac8c4a;background:var(--paper)}.rsp-stage h3{margin:0 0 14px;color:var(--navy)}.rsp-stage label,.mn-form label{display:grid;gap:5px;margin:12px 0}.rsp-stage select,.rsp-stage input{display:block;width:min(100%,550px)}.rsp-stage p{margin:10px 0}.rsp-stage button,.rsp-stage .rsp-next,.mn-btn{cursor:pointer;border-radius:5px;font:inherit;padding:10px 16px;min-height:44px}.rsp-next,.mn-btn{background:var(--navy);color:white!important;border:0;display:inline-block;text-decoration:none;font-weight:600}.rsp-back{background:transparent;color:var(--navy);border:1px solid #a7b5b9}.rsp-actions,.rsp-times{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.rsp-times{max-height:235px;overflow:auto}.rsp-path{font-size:.9em;color:#42585f}.rsp-widget button:focus-visible,.rsp-widget a:focus-visible,.mn-private :focus-visible{outline:3px solid #816019;outline-offset:3px}.rsp-widget [role=status]{color:#374b54}.rsp-widget details{margin:.5em 0}.mn-private{background:#f8f7f2;margin:0;font:16px/1.5 system-ui,sans-serif}.mn-private main{max-width:780px;margin:auto;padding:24px}.mn-private header{display:flex;justify-content:space-between;align-items:center}.mn-logo{width:175px;height:auto}.mn-private article,.mn-private details,.mn-form{padding:14px;margin:12px 0;background:white;border:1px solid #d4dddf;border-radius:5px}.mn-form input,.mn-form select{width:100%;box-sizing:border-box}.mn-form input[type=checkbox]{width:auto;min-height:auto}.mn-private footer{margin-top:30px;border-top:1px solid #d4dddf;padding:15px 0}.mn-private a{color:#113f52}@media(max-width:880px){.rsp-areas{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.rsp-areas{grid-template-columns:1fr}.rsp-stage{padding:14px}.rsp-areas button{padding:10px 13px}}

/* Suites & SPA Mare Nostrum · tipografía, espaciado y colores de marca. */
body.mn-private {
  --mn-font: Inter, Arial, Helvetica, sans-serif;
  --mn-ancho: 75rem;
  --mn-pad: 1%;
  --mn-gap: 5%;
  --mn-t1: clamp(1.65rem, 1.35rem + 1.35vw, 2.5rem);
  --mn-t2: clamp(1.2rem, 1.08rem + .65vw, 1.65rem);
  --mn-c1: clamp(1rem, .97rem + .15vw, 1.075rem);
  --mn-c2: clamp(.875rem, .835rem + .15vw, .95rem);
  --mn-azul-marca: #1B3B68;
  --mn-oro-marca: #CE9563;
  --mn-tinta: #183453;
  --mn-secundario: #46596F;
  --mn-azul: #E6EDF5;
  --mn-arena: #F4E5D7;
  --mn-marfil: #FBF8F4;
  --mn-linea: #E6E6E6;
  --mn-foco: #79502F;
  --mn-hover: #122C50;
}

/* HSMN · interfaz de cuenta e intranet, independiente de la plantilla Avada. */
body.mn-private { --navy:var(--mn-azul-marca); --gold:var(--mn-foco); --line:var(--mn-linea); --paper:var(--mn-marfil); background:var(--mn-marfil); color:var(--mn-tinta); font:400 var(--mn-c1)/1.72 var(--mn-font); letter-spacing:.015em; min-height:100svh; }
.mn-private main.mn-app { box-sizing:border-box; max-width:var(--mn-ancho); width:98%; min-height:100svh; margin-inline:auto; padding:var(--mn-pad) 0; display:flex; flex-direction:column; }
.mn-private .mn-top { gap:var(--mn-gap); padding-block:var(--mn-pad); border-bottom:1px solid var(--mn-linea); }
.mn-private h1 { font:600 var(--mn-t1)/1.16 var(--mn-font); letter-spacing:-.015em; color:var(--mn-tinta); }
.mn-private :is(h2,h3,h4) { font:600 var(--mn-t2)/1.25 var(--mn-font); letter-spacing:0; color:var(--mn-tinta); }
.mn-private :is(small,.mn-c2,footer) { font:400 var(--mn-c2)/1.72 var(--mn-font); color:var(--mn-secundario); }
.mn-private :is(article,details,.mn-form) { box-sizing:border-box; padding:max(.8rem,var(--mn-pad)); margin:var(--mn-pad) 0; border-color:var(--mn-linea); }
.mn-private .mn-form :is(input,select,textarea,.mn-btn,button) { box-sizing:border-box; font:inherit; max-width:100%; min-width:0; }
.mn-private .mn-form :is(input:not([type=checkbox]):not([type=radio]),select,textarea,.mn-btn,button) { min-height:2.75rem; padding:.55em .8em; }
.mn-private :is(input,select,textarea):focus, .mn-private details[open] { border-color:var(--mn-azul-marca); }
.mn-private .mn-btn { color:white; background:var(--mn-azul-marca); }
.mn-private .mn-btn:is(:hover,:focus-visible) { background:var(--mn-hover); }
.mn-private a { color:var(--mn-azul-marca); text-underline-offset:.15em; }
.mn-private :focus-visible { outline:2px solid var(--mn-foco); outline-offset:3px; }
.mn-private footer { margin-top:auto; border-color:var(--mn-linea); padding:var(--mn-pad) 0; }
@media(max-width:700px) { .mn-private main.mn-app { overflow-wrap:anywhere; } .mn-private .mn-form { width:100%; } }


.rsp-widget .rsp-picker{display:grid;grid-template-columns:minmax(228px,310px) minmax(0,1fr);gap:clamp(12px,2.5vw,28px);margin-top:16px;align-items:start}.rsp-month,.rsp-day{background:#fff;border:1px solid #cbd5d8;border-radius:8px;padding:clamp(10px,1.3vw,20px);min-width:0}.rsp-month-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.rsp-stage .rsp-month-head h4,.rsp-stage .rsp-day h4{margin:0;font-size:1.06rem;color:#173a4b;text-transform:capitalize}.rsp-stage .rsp-month-head button{border:1px solid #cbd5d8;background:#fff;color:#173a4b;font-size:1.35rem;padding:2px 8px;min-width:40px}.rsp-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.rsp-weekday{text-align:center;font-size:.82rem;font-weight:600;padding:5px 0}.rsp-stage .rsp-day-button{min-height:38px;padding:3px 0;border:1px solid #b4cbc5;background:#edf6f2;color:#183e38;font-weight:600}.rsp-stage .rsp-day-button:disabled,.rsp-stage .rsp-cal-arrow:disabled{color:#666;background:#f3f3f3;border-color:#eee;cursor:default}.rsp-stage .rsp-day-button[aria-pressed=true]{background:#173a4b;color:white;border-color:#173a4b}.rsp-stage .rsp-day-button[aria-current=date]{box-shadow:inset 0 -3px #ae8542}.rsp-stage .rsp-day h5{font-size:.99rem;margin:15px 0 6px;color:#173a4b}.rsp-hour-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(113px,1fr));gap:5px}.rsp-stage .rsp-hour{border:1px solid #b9c8cd;color:#173a4b;background:#f7fafb;font-size:.92rem;padding:6px}.rsp-stage .rsp-hour:hover{background:#deedec}.rsp-stage .rsp-more{background:transparent;color:#235b6d;border:0;text-decoration:underline;padding:5px 0}.rsp-test-note{font-size:.92rem;color:#55421f}.rsp-stage .rsp-back{margin:4px 0}.rsp-widget .rsp-next+.rsp-back{margin-left:8px}@media(max-width:710px){.rsp-widget .rsp-picker{grid-template-columns:minmax(0,1fr)}.rsp-month{max-width:380px}.rsp-stage .rsp-day-button{min-height:42px}.rsp-hour-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}}

.rsp-widget{--rsp-free:#d9f1e2;--rsp-medium:#fff0b9;--rsp-full:#f8dada;--rsp-freetext:#204732;--rsp-midtext:#61460c;--rsp-fulltext:#653233}.rsp-stage [data-level=libre]{background:var(--rsp-free);color:var(--rsp-freetext);border-color:#a4cbb1}.rsp-stage [data-level=media]{background:var(--rsp-medium);color:var(--rsp-midtext);border-color:#cbb874}.rsp-stage [data-level=cerrado],.rsp-stage [data-level=cerrado]:disabled{background:var(--rsp-full);color:var(--rsp-fulltext);border-color:#dfb1b2;opacity:1;cursor:not-allowed}.rsp-stage [aria-pressed=true][data-level]{box-shadow:inset 0 0 0 2px #173a4b}.rsp-stage .rsp-hour:not(:disabled):hover{box-shadow:inset 0 0 0 2px #173a4b}.rsp-legend{display:flex;gap:6px 10px;flex-wrap:wrap;margin:10px 0}.rsp-legend span{display:inline-flex;align-items:center;gap:5px;font-size:.77rem}.rsp-stage .rsp-legend [data-level]{background:transparent;color:#253b40}.rsp-legend span::before{content:'';display:inline-block;width:13px;height:13px;border:1px solid #a5afb1;border-radius:3px}.rsp-legend [data-level=libre]::before{background:var(--rsp-free)}.rsp-legend [data-level=media]::before{background:var(--rsp-medium)}.rsp-legend [data-level=cerrado]::before{background:var(--rsp-full)}.rsp-stage .rsp-month-jump{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.rsp-stage .rsp-month-jump select{min-width:0;max-width:72%;font:inherit;font-size:.83rem;padding:3px;min-height:36px}.rsp-stage .rsp-steps{list-style:none;display:flex;gap:0;margin:0 0 .75em;padding:0;font-size:.83rem}.rsp-steps li{padding:5px 9px;border-bottom:2px solid #d3d9d6}.rsp-steps [aria-current=step]{border-color:#80632d;color:#203f45;font-weight:700}.rsp-stage .rsp-test-note{padding:7px 10px;border-left:2px solid #b79861;background:#faf6ec}
.rsp-stage button.rsp-day-button[aria-pressed="true"][data-level="libre"]{background:var(--rsp-free);color:var(--rsp-freetext)}.rsp-stage button.rsp-day-button[aria-pressed="true"][data-level="media"]{background:var(--rsp-medium);color:var(--rsp-midtext)}.rsp-stage .rsp-day-button[aria-pressed="true"]{outline:2px solid #173a4b;outline-offset:-2px}

.mn-account-nav{display:flex;flex-wrap:wrap;gap:12px;border-bottom:1px solid var(--line);padding:10px 0}.mn-private #perfil{margin-top:24px}.mn-private .mn-app .rsp-facts dd{margin:0}.mn-private .rsp-staff .rsp-form label.rsp-check{display:flex;align-items:center;gap:6px}

.mn-private .mn-account-entry{width:100%;max-width:34rem;margin:clamp(1rem,4vw,3rem) auto;box-sizing:border-box}
.mn-private .mn-account-entry h2{margin:0 0 .75rem}
.mn-private .mn-account-entry nav{display:flex;gap:.5rem 1.2rem;flex-wrap:wrap;margin-block:.85rem}
.mn-private .mn-account-entry nav a{padding-block:.3rem;text-underline-offset:.18em}
.mn-private .mn-account-entry .mn-auth-form{padding:clamp(1rem,3vw,1.75rem)}
.mn-private .mn-auth-form .mn-remember{display:flex;gap:.65rem;align-items:center}
.mn-private .mn-auth-form .mn-remember input{width:1.1rem;height:1.1rem;margin:0}
