/* Web de alojamientos: ficha, buscador, calendario y reserva */
.stay-hero{position:relative;overflow:hidden;background:var(--ink)}
.stay-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.stay-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,30,45,.25),rgba(5,30,45,.6))}
.stay-hero .hero-inner{position:relative;z-index:1}
.stay-search{display:grid;grid-template-columns:1.4fr 1fr 1fr .7fr auto;gap:.6rem;background:#fff;padding:.8rem;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.25);margin-top:1.8rem;align-items:end}
.stay-search-f{display:flex;flex-direction:column;gap:.2rem;font-size:.74rem;font-weight:700;color:var(--ink);text-align:left}
.stay-search-f input,.stay-search-f select{border:1px solid var(--line);border-radius:10px;padding:.62rem .6rem;font-size:.95rem;width:100%;background:#fff;color:#222;min-height:44px}
.stay-search .btn{min-height:44px}
.stay-lead{font-size:1.08rem;color:#334;margin-top:.5rem;max-width:72ch}
.stay-page{padding-top:1.6rem;padding-bottom:5rem}
.stay-title{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-top:.4rem}
.stay-title h1{font-size:2rem;color:var(--ink);line-height:1.15}
.stay-where{color:var(--muted);margin-top:.3rem}
.stay-rate{color:var(--ink);font-weight:700;white-space:nowrap}
.stay-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:210px 210px;gap:.5rem;border-radius:18px;overflow:hidden;margin-top:1rem;position:relative}
.stay-g{border:0;padding:0;background:#ddd;cursor:zoom-in;overflow:hidden}
.stay-g img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.stay-g:hover img{transform:scale(1.03)}
.stay-g-main{grid-row:1/3}
.stay-g-more{position:absolute;right:.8rem;bottom:.8rem;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.45rem .8rem;font-weight:600;cursor:pointer}
.stay-grid{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:2.6rem;margin-top:1.8rem;align-items:start}
.stay-main>section{margin-top:2.1rem}
.stay-main h2,.form-card h2{font-size:1.25rem;color:var(--ink)}
.stay-facts{display:flex;flex-wrap:wrap;gap:1.2rem;list-style:none;padding:0 0 1.2rem;margin:0;border-bottom:1px solid var(--line)}
.stay-facts li{display:flex;align-items:center;gap:.35rem}
.stay-amenities{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.55rem;list-style:none;padding:0;margin:.9rem 0 0}
.stay-rules{list-style:none;padding:0;margin:.8rem 0 0;display:grid;gap:.45rem}
.stay-side{position:sticky;top:90px;display:grid;gap:1rem}
.stay-widget,.stay-contact{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.2rem;box-shadow:0 10px 30px rgba(10,40,60,.08)}
.stay-from strong{font-size:1.5rem;color:var(--ink)}
.stay-dates{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.7rem}
.stay-dates label{font-size:.74rem;font-weight:700;color:var(--ink);display:flex;flex-direction:column;gap:.2rem}
.stay-dates input{border:1px solid var(--line);border-radius:10px;padding:.55rem;font-size:.95rem;min-height:44px;width:100%}
.stay-quote{margin:.7rem 0;font-size:.92rem;min-height:1rem}
.stay-lines{margin:.6rem 0 0}
.stay-lines>div{display:flex;justify-content:space-between;gap:1rem;padding:.2rem 0}
.stay-lines dt{font-weight:400}.stay-lines dd{margin:0;white-space:nowrap}
.stay-off{color:#14804a}
.stay-total{border-top:1px solid var(--line);margin-top:.35rem;padding-top:.5rem!important;font-weight:700;font-size:1.05rem}
.stay-sub{font-size:.85rem;color:var(--muted)}
.field-error{color:#b42318;font-size:.86rem;margin:.25rem 0 0}
.stay-cal{position:relative;margin-top:.9rem}
.stay-cal-nav{display:flex;justify-content:space-between;position:absolute;left:0;right:0;top:-.2rem}
.stay-cal-nav button{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer;font-size:1.2rem}
.stay-cal-nav button:disabled{opacity:.3}
.stay-months{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}
.stay-month-h{text-align:center;font-weight:700;color:var(--ink);line-height:36px;margin:0 0 .4rem}
.stay-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.stay-days .dow{text-align:center;font-size:.72rem;color:var(--muted);padding:.2rem 0}
.stay-days .d{aspect-ratio:1;border:0;border-radius:8px;background:#eef7f1;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;color:#123;padding:0;min-width:0}
.stay-days .d b{font-weight:600;font-size:.86rem}.stay-days .d i{font-style:normal;font-size:.62rem;color:#4b6}
.stay-days .d.busy{background:#f1f1f3;color:#aaa;text-decoration:line-through;cursor:not-allowed}
.stay-days .d:disabled{cursor:not-allowed}
.stay-days .d.rng{background:color-mix(in srgb,var(--ink) 18%,#fff)}
.stay-days .d.sel{background:var(--ink);color:#fff}.stay-days .d.sel i{color:#fff}
.stay-legend .k{display:inline-block;width:12px;height:12px;border-radius:3px;margin:0 .2rem 0 .7rem;vertical-align:-1px}.stay-legend .k.free{background:#eef7f1;border:1px solid #bcd}.stay-legend .k.busy{background:#e5e5e8}
.stay-reviews{display:grid;gap:1rem;margin-top:.8rem}.stay-reviews article{border-bottom:1px solid var(--line);padding-bottom:.9rem}.stay-reply{background:#f6f7f9;padding:.6rem .8rem;border-radius:10px;margin-top:.4rem;font-size:.92rem}
.stay-faq{margin-top:2.4rem}.stay-faq details{border-bottom:1px solid var(--line);padding:.8rem 0}.stay-faq summary{cursor:pointer;font-weight:600;color:var(--ink)}.stay-faq p{margin:.5rem 0 0;color:#445}
.stay-seo-body{margin-top:2.4rem}
.stay-dest{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.8rem}.stay-dest a{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem;display:flex;flex-direction:column;gap:.2rem;color:var(--ink);transition:box-shadow .2s}.stay-dest a:hover{box-shadow:0 8px 22px rgba(10,40,60,.12)}.stay-dest a>span{font-size:.85rem;color:var(--muted)}
.stay-amen{border:0;padding:0;margin:.9rem 0 0}.stay-amen legend{font-weight:600;font-size:.86rem;margin-bottom:.3rem}
.stay-checkout .form-card{margin-bottom:1rem}.stay-sum-img{width:100%;height:150px;object-fit:cover;border-radius:12px;margin-bottom:.7rem}
.stay-bank{background:#f6f7f9;border-radius:12px;padding:.8rem 1rem;margin-top:.8rem}
.stay-page>.form-card,.stay-page form>.form-card{margin-top:1rem}
.stay-traveler{border:1px solid var(--line)}.stay-traveler legend{padding:0 .4rem;color:var(--ink);font-weight:700}
.is-bad{border-color:#b42318!important;background:#fff6f5;color:#b42318}
.stay-sign{display:block;width:100%;max-width:500px;height:160px;border:1px dashed #889;border-radius:12px;background:#fff;touch-action:none;margin-bottom:.5rem}
.stay-mobile-bar{display:none}
.stay-lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:9999;display:flex;align-items:center;justify-content:center}.stay-lb img{max-width:92vw;max-height:86vh}.stay-lb button{position:absolute;background:rgba(255,255,255,.14);color:#fff;border:0;width:48px;height:48px;border-radius:50%;font-size:1.3rem;cursor:pointer}.stay-lb .x{top:16px;right:16px}.stay-lb .p{left:16px}.stay-lb .n{right:16px}.stay-lb span{position:absolute;bottom:16px;color:#fff}
.price small{font-weight:400;color:var(--muted)}.price .stay-rate{float:right;font-size:.85rem}
.pill.stay-st-confirmed,.pill.stay-st-checked_in{background:#dcf5e5;color:#14663a}.pill.stay-st-pending,.pill.stay-st-request{background:#fff2d8;color:#8a5a00}.pill.stay-st-cancelled{background:#fde7e5;color:#b42318}
/* Panel */
.stay-tl{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}
.stay-tl table{border-collapse:separate;border-spacing:0;font-size:.76rem}
.stay-tl th,.stay-tl td{border-right:1px solid #eef0f3;border-bottom:1px solid #eef0f3;min-width:30px;height:38px;text-align:center;padding:0;background:#fff}
.stay-tl th.name,.stay-tl td.name{position:sticky;left:0;z-index:2;min-width:200px;max-width:200px;text-align:left;padding:0 .6rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:600;background:#fff}
.stay-tl th{position:sticky;top:0;z-index:1;background:#f8f9fb}.stay-tl th.we{background:#eef1f6}.stay-tl th.today{background:var(--gold);color:#fff}
.stay-tl td a,.stay-tl td span.c{display:block;height:100%;line-height:38px;color:#fff;overflow:hidden;white-space:nowrap;font-weight:600;font-size:.72rem;padding:0 4px;text-decoration:none}
.c-web{background:#0b6e4f}.c-airbnb{background:#e0565b}.c-booking{background:#1b4f9c}.c-vrbo{background:#3b6fb6}.c-phone,.c-manual,.c-other{background:#6d5bd0}.c-block{background:#9aa3ad}.c-owner{background:#c28a12}.c-pend{background:#d99a1c}
.stay-tl td.free{cursor:pointer}.stay-tl td.free:hover{background:#eef7f1}.stay-tl td.sel{background:#bfe0cf}
.stay-legend-c span{display:inline-block;padding:.1rem .5rem;border-radius:6px;color:#fff;font-size:.72rem;margin-right:.25rem}
.stay-kpi{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem}.stay-kpi>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem}.stay-kpi b{display:block;font-size:1.55rem;color:var(--ink)}.stay-kpi small{color:var(--muted)}
.stay-bars{display:flex;align-items:flex-end;gap:6px;height:150px;margin-top:.8rem}.stay-bars div{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;font-size:.66rem;color:var(--muted);height:100%}.stay-bars i{display:block;width:100%;background:var(--ink);border-radius:5px 5px 0 0;min-height:2px}
@media(max-width:940px){.stay-grid{grid-template-columns:1fr}.stay-side{position:static}.stay-search{grid-template-columns:1fr 1fr}.stay-search-f:first-child{grid-column:1/3}.stay-search .btn{grid-column:1/3}.stay-gallery{grid-template-columns:1fr 1fr;grid-template-rows:230px 120px}.stay-g-main{grid-row:auto;grid-column:1/3}.stay-g:nth-of-type(n+4){display:none}.stay-months{grid-template-columns:1fr}.stay-months .stay-month:nth-child(2){display:none}
.stay-mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:.6rem 1rem;justify-content:space-between;align-items:center;z-index:50}.stay-page{padding-bottom:6rem}}
.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th{text-align:left;font-size:.74rem;color:var(--muted);padding:.5rem .55rem;border-bottom:1px solid var(--line);white-space:nowrap}.admin-table td{padding:.55rem;border-bottom:1px solid #eef0f3;vertical-align:top}
.stay-today{display:grid;gap:.45rem}.stay-today a{display:flex;justify-content:space-between;gap:.6rem;border:1px solid var(--line);border-radius:10px;padding:.5rem .7rem;font-size:.9rem;color:inherit}
.field input:not([type]),.field input[type=password],.field input[type=url],.field input[type=time],.field input[type=month],.stay-checkout input:not([type]){width:100%;border:1px solid var(--line);border-radius:10px;padding:.62rem .7rem;font:inherit;background:#fff;min-height:42px}
.form-card>h2:first-child,.stay-main .form-card h2{margin-bottom:.7rem}

.mobile-nav:not(.open){box-shadow:none}
