/* StayHarbor Rentals front end. Colours come from theme.json presets with fallbacks. */
:root{--sh-accent:var(--wp--preset--color--primary,#0e7c86);--sh-accent-d:var(--wp--preset--color--primary-dark,#095d65);--sh-ink:var(--wp--preset--color--contrast,#12232e);--sh-muted:var(--wp--preset--color--muted,#5a6b75);--sh-bg:var(--wp--preset--color--base,#fff);--sh-soft:var(--wp--preset--color--soft,#f3f7f7);--sh-line:var(--wp--preset--color--line,#dfe8ea);--sh-hot:var(--wp--preset--color--accent,#ff6b4a);--sh-sun:#f6b73c;--sh-r:16px;--sh-sh:0 10px 30px rgba(18,35,46,.09)}
.shbk-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.75rem 1.25rem;border-radius:999px;background:var(--sh-accent);color:#fff!important;font-weight:600;text-decoration:none;border:0;cursor:pointer;font:inherit;line-height:1.2;transition:background .15s,transform .1s}
.shbk-btn:hover{background:var(--sh-accent-d)}.shbk-btn:active{transform:translateY(1px)}.shbk-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2}
.shbk-btn--sm{padding:.5rem .95rem;font-size:.9rem}.shbk-btn--block{width:100%}.shbk-btn--ghost{background:transparent;color:var(--sh-accent)!important;box-shadow:inset 0 0 0 1.5px var(--sh-accent)}.shbk-btn--ghost:hover{background:var(--sh-soft)}
.shbk-link{background:none;border:0;color:var(--sh-accent);cursor:pointer;padding:0;font:inherit;text-decoration:underline;text-underline-offset:2px}
.shbk-small{color:var(--sh-muted);font-size:.9rem}.shbk-lead{font-size:1.12rem;color:var(--sh-muted)}.shbk-center{text-align:center}.shbk-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;color:var(--sh-accent)}
.shbk-h2{font-size:1.45rem;margin:0 0 1rem;line-height:1.25}.shbk-h3{font-size:1.12rem;margin:1rem 0 .6rem}
.shbk-hp{position:absolute!important;left:-9999px!important;height:1px;overflow:hidden}
.shbk-notice{padding:.85rem 1.1rem;border-radius:12px;margin:0 0 1.25rem;background:#eaf7f2;color:#1b5e45;border:1px solid #c6eadb}.shbk-notice.is-error{background:#fdf0ee;color:#8a2a1f;border-color:#f3d0ca}
.shbk-empty{padding:2.5rem 1.5rem;text-align:center;background:var(--sh-soft);border-radius:var(--sh-r);color:var(--sh-muted)}.shbk-empty p{margin:0 0 1rem}
.shbk-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--sh-ink);color:#fff;padding:.7rem 1.1rem;border-radius:999px;z-index:100000;box-shadow:var(--sh-sh);transition:opacity .4s}.shbk-toast.is-out{opacity:0}
/* Forms */
.shbk-form-card,.shbk-filters form,.shbk-book,.shbk-dash input,.shbk-auth{box-sizing:border-box}
.shbk-form-card input:not([type=checkbox]):not([type=radio]):not([type=file]),.shbk-form-card select,.shbk-form-card textarea,.shbk-dash input:not([type=checkbox]):not([type=radio]):not([type=file]),.shbk-dash select,.shbk-dash textarea,.shbk-auth input:not([type=checkbox]):not([type=radio]),.shbk-filters input:not([type=checkbox]),.shbk-filters select,.shbk-book input:not([type=checkbox]),.shbk-book select,.shbk-book textarea,.shbk-section textarea,.shbk-inline-form select{width:100%;box-sizing:border-box;padding:.7rem .85rem;border:1px solid var(--sh-line);border-radius:10px;background:var(--sh-bg);color:var(--sh-ink);font:inherit;min-height:44px}
.shbk-form-card input:focus,.shbk-form-card select:focus,.shbk-form-card textarea:focus,.shbk-dash input:focus,.shbk-dash select:focus,.shbk-dash textarea:focus,.shbk-book input:focus,.shbk-book select:focus,.shbk-search input:focus,.shbk-search select:focus{outline:2px solid var(--sh-accent);outline-offset:1px;border-color:transparent}
.shbk-form-card label,.shbk-dash label,.shbk-book label,.shbk-filters label,.shbk-auth label{display:block;font-weight:600;font-size:.92rem;margin:.85rem 0 .3rem}
.shbk-form-card,.shbk-dash fieldset.shbk-form-card{background:var(--sh-bg);border:1px solid var(--sh-line);border-radius:var(--sh-r);padding:1.25rem 1.4rem;margin:0 0 1.25rem}
.shbk-form-card legend{font-weight:700;font-size:1.1rem;padding:0 .4rem}
label.shbk-check,.shbk-check{display:flex!important;align-items:center;gap:.5rem;font-weight:500!important}
.shbk-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.shbk-grid3{display:grid;grid-template-columns:repeat(4,1fr);gap:0 1rem}.shbk-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:0 1rem}
.shbk-form-actions{display:flex;gap:.6rem;flex-wrap:wrap;position:sticky;bottom:0;background:var(--sh-bg);padding:.8rem 0;border-top:1px solid var(--sh-line)}
.shbk-inline{display:inline}.shbk-inline-form{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.shbk-inline-form select{width:auto}
.shbk-copy{display:flex;gap:.5rem;align-items:center}.shbk-copy input{flex:1}
.shbk-rows{margin:.5rem 0 1rem}.shbk-rows__head,.shbk-row{display:grid;grid-template-columns:repeat(var(--cols,6),minmax(0,1fr)) 32px;gap:.4rem;align-items:center}
.shbk-rows[data-shbk-rows=rooms]{--cols:6}.shbk-rows[data-shbk-rows=seasons]{--cols:5}.shbk-rows[data-shbk-rows=extras]{--cols:3}
.shbk-rows__head span{font-size:.78rem;font-weight:700;color:var(--sh-muted)}.shbk-row{margin:.35rem 0}.shbk-row input,.shbk-row select{min-height:40px!important;padding:.45rem .55rem!important}
.shbk-row__del{border:0;background:var(--sh-soft);border-radius:8px;height:36px;cursor:pointer;font-size:1.2rem;color:var(--sh-muted)}
.shbk-amen-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.3rem .8rem}.shbk-amen-pick label{display:flex!important;gap:.45rem;align-items:center;font-weight:500!important;margin:0!important}
.shbk-thumbs{display:flex;flex-wrap:wrap;gap:.6rem;margin:.4rem 0 1rem}.shbk-thumb{width:110px;margin:0!important;font-weight:500!important;font-size:.82rem}.shbk-thumb img{width:110px;height:80px;object-fit:cover;border-radius:8px;display:block}
.shbk-map{height:340px;border-radius:var(--sh-r);overflow:hidden;background:var(--sh-soft);z-index:0}.shbk-map--pick{height:260px;margin-top:.6rem}.shbk-map--results{height:460px;margin:0 0 1.25rem}
/* Search */
.shbk-search{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-end;background:var(--sh-bg);border-radius:20px;padding:.6rem;box-shadow:var(--sh-sh);border:1px solid var(--sh-line);margin:0 0 1.5rem}
.shbk-search__f{flex:1 1 140px;display:flex;flex-direction:column;padding:.2rem .6rem}.shbk-search__where{flex:2 1 220px}.shbk-search__guests{flex:0 1 100px}
.shbk-search label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--sh-muted);margin:0 0 .2rem}
.shbk-search input,.shbk-search select{border:0;border-bottom:1px solid var(--sh-line);background:transparent;padding:.4rem 0;font:inherit;color:var(--sh-ink);min-height:38px;width:100%}
.shbk-search__go{border-radius:14px;padding:.95rem 1.3rem}
.shbk-search--hero{padding:.8rem;border-radius:24px}
.shbk-hsearch{display:flex;align-items:center;background:var(--sh-soft);border-radius:999px;padding:.15rem .3rem .15rem .9rem;max-width:260px}.shbk-hsearch input{border:0;background:transparent;padding:.45rem 0;width:100%;font:inherit;color:inherit}.shbk-hsearch button{border:0;background:var(--sh-accent);color:#fff;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;cursor:pointer;flex:none}.shbk-hsearch svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4}
.shbk-results{display:grid;grid-template-columns:260px 1fr;gap:1.75rem;align-items:start}
.shbk-filters form{background:var(--sh-bg);border:1px solid var(--sh-line);border-radius:var(--sh-r);padding:1.1rem;position:sticky;top:90px}.shbk-filters fieldset{border:0;padding:0;margin:.8rem 0 0}.shbk-filters legend{font-weight:600;font-size:.92rem;margin:0 0 .3rem}.shbk-filters h2{margin:0}
.shbk-filters .shbk-btn{margin-top:1rem}.shbk-amen-filter label{margin:.2rem 0!important}
.shbk-results__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1rem}.shbk-results__bar p{margin:0}.shbk-results__bar label{font-size:.9rem;font-weight:600}
.shbk-viewtoggle{display:inline-flex;border:1px solid var(--sh-line);border-radius:999px;overflow:hidden}.shbk-viewtoggle a{padding:.45rem .95rem;text-decoration:none;color:var(--sh-ink);font-size:.9rem}.shbk-viewtoggle a.is-active{background:var(--sh-ink);color:#fff}
.shbk-pager{display:flex;gap:.35rem;justify-content:center;margin:2rem 0}.shbk-pager a,.shbk-pager span{min-width:40px;height:40px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--sh-line);text-decoration:none;color:var(--sh-ink)}.shbk-pager span{background:var(--sh-ink);color:#fff;border-color:var(--sh-ink)}
/* Cards */
.shbk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}
.shbk-card{position:relative;background:var(--sh-bg);border-radius:var(--sh-r);overflow:hidden;border:1px solid var(--sh-line);display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.shbk-card:hover{box-shadow:var(--sh-sh);transform:translateY(-2px)}
.shbk-card__img{display:block;aspect-ratio:4/3;background:var(--sh-soft);overflow:hidden}.shbk-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.shbk-card:hover .shbk-card__img img{transform:scale(1.04)}
.shbk-card__ph{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--sh-soft),var(--sh-line))}
.shbk-card__badges{position:absolute;top:.7rem;left:.7rem;display:flex;flex-wrap:wrap;gap:.35rem;z-index:2}.shbk-card__badges.is-inline{position:static;margin:0 0 .5rem}
.shbk-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;background:#fff;color:var(--sh-ink);box-shadow:0 2px 8px rgba(0,0,0,.12)}
.shbk-badge.is-featured{background:var(--sh-sun);color:#3b2a00}.shbk-badge.is-featured::before{content:"★"}
.shbk-badge.is-verified{background:#1d72d8;color:#fff}.shbk-badge.is-verified::before{content:"✔"}
.shbk-badge.is-hot-deal{background:var(--sh-hot);color:#fff}.shbk-badge.is-hot-deal::before{content:"🔥"}
.shbk-badge.is-new{background:#16a34a;color:#fff}.shbk-badge.is-superhost{background:#7c3aed;color:#fff}.shbk-badge.is-eco-stay{background:#15803d;color:#fff}.shbk-badge.is-pet-friendly{background:#a16207;color:#fff}
.shbk-badge.is-partner{background:var(--sh-ink);color:#fff}
.shbk-card__body{padding:.9rem 1rem 1.1rem;display:flex;flex-direction:column;gap:.3rem;flex:1}
.shbk-card__meta{display:flex;justify-content:space-between;gap:.5rem;font-size:.84rem;color:var(--sh-muted);margin:0}.shbk-card__rate{color:var(--sh-ink);font-weight:600;white-space:nowrap}.shbk-card__rate.is-new{color:#16a34a}
.shbk-card__title{font-size:1.05rem;line-height:1.3;margin:0;font-weight:600}.shbk-card__title a{color:inherit;text-decoration:none}.shbk-card__title a::after{content:"";position:absolute;inset:0;z-index:1}
.shbk-card__facts{font-size:.86rem;color:var(--sh-muted);margin:0}
.shbk-card__price{margin:auto 0 0;padding-top:.4rem;font-size:.9rem;color:var(--sh-muted);display:flex;align-items:baseline;gap:.25rem;flex-wrap:wrap}.shbk-card__price strong{font-size:1.2rem;color:var(--sh-ink)}.shbk-card__price .shbk-btn{margin-left:auto;position:relative;z-index:2}
.shbk-instant{color:#d97706;font-weight:700;font-size:.9rem}
.shbk-fav{position:absolute;top:.6rem;right:.6rem;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.92);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.shbk-fav svg{width:20px;height:20px;fill:transparent;stroke:var(--sh-ink);stroke-width:2;transition:fill .15s}.shbk-fav.is-on svg{fill:var(--sh-hot);stroke:var(--sh-hot)}.shbk-listing__tools .shbk-fav{position:static}
/* Paid upgrade styles */
.shbk-card.is-highlight{border:2px solid var(--sh-sun);background:linear-gradient(180deg,#fffaf0,var(--sh-bg) 60%);box-shadow:0 0 0 4px rgba(246,183,60,.18)}
.shbk-card.is-bold .shbk-card__title{font-weight:800;font-size:1.14rem;color:var(--sh-accent-d)}
.shbk-card.is-top::before{content:"▲ TOP";position:absolute;top:.75rem;right:3.3rem;z-index:3;background:var(--sh-accent);color:#fff;font-size:.68rem;font-weight:800;padding:.22rem .5rem;border-radius:6px;letter-spacing:.06em}
.shbk-card.is-featured{box-shadow:0 0 0 2px var(--sh-sun) inset}
.shbk-listing.is-bold .shbk-listing__title{font-weight:800}.shbk-listing.is-highlight .shbk-book{border-color:var(--sh-sun);box-shadow:0 0 0 4px rgba(246,183,60,.18)}
.shbk-card--partner{background:#fbfcfd;border-style:dashed}.shbk-card--partner .shbk-card__title a::after{display:none}.shbk-partner-note{margin-top:.8rem}
/* Map pins */
.shbk-pricepin span{display:inline-block;background:#fff;color:var(--sh-ink);font-weight:700;font-size:.82rem;padding:.25rem .55rem;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.25);white-space:nowrap;transform:translate(-50%,-100%)}.shbk-pricepin.is-featured span{background:var(--sh-ink);color:#fff}
.shbk-pin span{display:block;width:22px;height:22px;border-radius:50% 50% 50% 0;background:var(--sh-accent);transform:rotate(-45deg);border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.3)}
/* Tiles */
.shbk-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}
.shbk-tile{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--sh-r);overflow:hidden;background:var(--sh-accent);color:#fff;text-decoration:none}.shbk-tiles.is-city .shbk-tile{aspect-ratio:3/4}
.shbk-tile img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.shbk-tile:hover img{transform:scale(1.06)}
.shbk-tile__label{position:absolute;inset:auto 0 0;padding:1rem;background:linear-gradient(transparent,rgba(0,0,0,.72));display:flex;flex-direction:column}.shbk-tile__label strong{font-size:1.1rem}.shbk-tile__label small{opacity:.85}
.shbk-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}.shbk-stats strong{display:block;font-size:2rem;color:var(--sh-accent)}.shbk-stats span{color:var(--sh-muted)}
.shbk-term-head{margin:0 0 1.25rem}.shbk-term-head h1{margin:0 0 .4rem}
/* Listing page */
.shbk-direct-bar{background:var(--sh-soft);border-radius:12px;padding:.7rem 1rem;margin:0 0 1rem}
.shbk-listing__head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin:0 0 1rem}.shbk-listing__title{margin:0;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.15}.shbk-listing__meta{margin:.35rem 0 0;color:var(--sh-muted)}.shbk-listing__meta a{color:var(--sh-ink);font-weight:600}
.shbk-listing__tools{display:flex;gap:.5rem;align-items:center}
.shbk-gallery{position:relative;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:200px 200px;gap:.5rem;border-radius:var(--sh-r);overflow:hidden;margin:0 0 2rem}
.shbk-gallery__item{display:block;overflow:hidden;background:var(--sh-soft)}.shbk-gallery__item img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s}.shbk-gallery__item:hover img{opacity:.9}.shbk-gallery__item.is-main{grid-row:span 2}
.shbk-gallery__all{position:absolute;right:1rem;bottom:1rem;background:#fff;color:var(--sh-ink)!important}
.shbk-listing__cols{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:3rem;align-items:start}
.shbk-listing__host{display:flex;gap:.8rem;align-items:center;padding:0 0 1.2rem;border-bottom:1px solid var(--sh-line);margin:0 0 1.2rem}
.shbk-avatar{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--sh-accent);color:#fff;font-weight:700;flex:none}.shbk-avatar--lg{width:84px;height:84px;font-size:2rem}
.shbk-section{padding:1.6rem 0;border-top:1px solid var(--sh-line)}
.shbk-rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.shbk-room{border:1px solid var(--sh-line);border-radius:12px;padding:1rem}.shbk-room h3{margin:0 0 .3rem;font-size:1.05rem}.shbk-room p{margin:.3rem 0}
.shbk-amenities{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.55rem 1rem}.shbk-amenities li::before{content:"✓";color:var(--sh-accent);font-weight:800;margin-right:.5rem}
.shbk-list{padding-left:1.1rem;margin:0}.shbk-list li{margin:.25rem 0}
.shbk-book{position:sticky;top:90px;border:1px solid var(--sh-line);border-radius:20px;padding:1.4rem;box-shadow:var(--sh-sh);background:var(--sh-bg)}
.shbk-book__price{margin:0 0 .6rem;color:var(--sh-muted)}.shbk-book__price strong{font-size:1.6rem;color:var(--sh-ink)}
.shbk-book__dates{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.shbk-book__dates label{margin-top:.2rem}
.shbk-book__dates>div{min-width:0}.shbk-book input[type=date]{padding:.6rem .45rem;font-size:.92rem;min-width:0}
.shbk-book__extras{border:0;padding:0;margin:.8rem 0 0}.shbk-book__extras legend{font-weight:600;font-size:.92rem}.shbk-book__extras label{margin:.25rem 0!important;font-weight:500!important}
.shbk-book__more{margin:.8rem 0}.shbk-book__more summary{cursor:pointer;color:var(--sh-accent);font-size:.9rem}
.shbk-book .shbk-btn--block{margin-top:.6rem;padding:.95rem}
.shbk-quote{margin:1rem 0 .2rem;min-height:2rem;transition:opacity .2s}.shbk-quote.is-loading{opacity:.45}.shbk-quote__err{color:#b42318;margin:0;font-weight:600}
.shbk-break{list-style:none;padding:0;margin:0}.shbk-break li{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0;color:var(--sh-muted)}.shbk-break li.is-total{border-top:1px solid var(--sh-line);margin-top:.35rem;padding-top:.6rem;font-weight:700;color:var(--sh-ink);font-size:1.05rem}
details.shbk-break summary{cursor:pointer;color:var(--sh-accent);font-size:.9rem}details.shbk-break ul{list-style:none;padding:0;margin:.5rem 0}details.shbk-break li{display:flex;justify-content:space-between}
/* Availability calendar */
.shbk-cal{position:relative}.shbk-cal__nav{position:absolute;right:0;top:-2.6rem;display:flex;gap:.4rem}.shbk-cal__nav button{width:36px;height:36px;border-radius:50%;border:1px solid var(--sh-line);background:var(--sh-bg);cursor:pointer;font-size:1.2rem}
.shbk-cal__ms{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.shbk-cal__m h4{margin:0 0 .6rem;text-align:center}
.shbk-cal__g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.shbk-cal__dow{font-size:.75rem;color:var(--sh-muted);text-align:center;padding:.25rem 0}
.shbk-cal__d{aspect-ratio:1;border:0;background:transparent;border-radius:50%;cursor:pointer;font:inherit;font-size:.9rem;color:var(--sh-ink)}.shbk-cal__d:hover:not(:disabled){box-shadow:inset 0 0 0 1.5px var(--sh-ink)}
.shbk-cal__d.is-past{color:#b8c2c7;cursor:default}.shbk-cal__d.is-off{color:#b8c2c7;text-decoration:line-through}.shbk-cal__d.is-range{background:var(--sh-soft);border-radius:0}.shbk-cal__d.is-sel{background:var(--sh-ink);color:#fff}
/* Reviews */
.shbk-reviews{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2.5rem}.shbk-review p{margin:.4rem 0}.shbk-review__head{display:flex;gap:.7rem;align-items:center}.shbk-review__head .shbk-stars{margin-left:auto}
.shbk-review__reply{background:var(--sh-soft);border-radius:10px;padding:.6rem .8rem;font-size:.92rem}
.shbk-stars{color:var(--sh-sun);letter-spacing:1px;white-space:nowrap}.shbk-stars .is-off{color:#d5dde0}
.shbk-rate{display:inline-flex;flex-direction:row-reverse;border:0;padding:0;margin:.4rem 0}.shbk-rate legend{width:100%;font-weight:600;font-size:.92rem}.shbk-rate input{position:absolute;opacity:0}.shbk-rate label{font-size:1.8rem;color:#d5dde0;cursor:pointer;margin:0!important;padding:0 .1rem}.shbk-rate input:checked~label,.shbk-rate label:hover,.shbk-rate label:hover~label{color:var(--sh-sun)}.shbk-rate input:focus-visible+label{outline:2px solid var(--sh-accent)}
/* Lightbox */
.shbk-lb{position:fixed;inset:0;background:rgba(10,18,24,.94);z-index:100000;display:grid;place-items:center}.shbk-lb img{max-width:92vw;max-height:86vh;border-radius:8px}
.shbk-lb button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;width:48px;height:48px;border-radius:50%;font-size:1.8rem;cursor:pointer}.shbk-lb__x{top:16px;right:16px}.shbk-lb__p{left:16px;top:50%}.shbk-lb__nx{right:16px;top:50%}.shbk-lb__n{position:absolute;bottom:16px;color:#fff}
/* Host page */
.shbk-host-head{display:flex;gap:1.2rem;align-items:center;margin:0 0 1.5rem}.shbk-host-head h1{margin:0}.shbk-host-head p{margin:.3rem 0;color:var(--sh-muted)}
/* Pricing & upgrades */
.shbk-pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin:1.5rem 0 2.5rem}
.shbk-plan{position:relative;border:1px solid var(--sh-line);border-radius:20px;padding:1.6rem;background:var(--sh-bg);display:flex;flex-direction:column}.shbk-plan.is-best{border:2px solid var(--sh-accent);box-shadow:var(--sh-sh)}
.shbk-plan__flag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--sh-accent);color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .7rem;border-radius:999px;white-space:nowrap}
.shbk-plan h3{margin:0}.shbk-plan__price{font-size:2rem;font-weight:800;margin:.4rem 0}.shbk-plan__price small{font-size:.9rem;font-weight:500;color:var(--sh-muted)}
.shbk-plan ul{list-style:none;padding:0;margin:.6rem 0 1.2rem;flex:1}.shbk-plan li{padding:.3rem 0}.shbk-plan li::before{content:"✓ ";color:var(--sh-accent);font-weight:800}
.shbk-upgrades{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.1rem;margin:1rem 0 2rem}
.shbk-upgrade{border:1px solid var(--sh-line);border-radius:var(--sh-r);padding:1.2rem;background:var(--sh-bg);display:flex;flex-direction:column}.shbk-upgrade h3{margin:.6rem 0 .2rem;font-size:1.05rem}.shbk-upgrade .shbk-btn{margin-top:auto}.shbk-upgrade label{margin-top:.6rem!important}.shbk-upgrade select{margin-bottom:.8rem}
.shbk-upgrade__price{font-size:1.4rem;font-weight:800;margin:.2rem 0}.shbk-upgrade__price small{font-size:.85rem;font-weight:500;color:var(--sh-muted)}
.shbk-upgrade__demo{border-radius:10px;padding:.8rem;font-size:.85rem;text-align:center;background:var(--sh-soft);border:1px solid var(--sh-line)}
.shbk-upgrade.is-featured .shbk-upgrade__demo{background:var(--sh-sun);color:#3b2a00;font-weight:700}.shbk-upgrade.is-top .shbk-upgrade__demo{background:var(--sh-accent);color:#fff;font-weight:700}.shbk-upgrade.is-highlight .shbk-upgrade__demo{border:2px solid var(--sh-sun);background:#fffaf0}.shbk-upgrade.is-badge .shbk-upgrade__demo{background:#1d72d8;color:#fff}.shbk-upgrade.is-bold .shbk-upgrade__demo{font-weight:900;color:var(--sh-accent-d)}
/* Dashboard */
.shbk-dash{display:grid;grid-template-columns:250px minmax(0,1fr);gap:2rem;align-items:start}
.shbk-dash__nav{background:var(--sh-bg);border:1px solid var(--sh-line);border-radius:var(--sh-r);padding:1rem;position:sticky;top:90px}.shbk-dash__nav ul{list-style:none;margin:0;padding:0}.shbk-dash__nav a{display:flex;justify-content:space-between;align-items:center;padding:.55rem .75rem;border-radius:10px;text-decoration:none;color:var(--sh-ink)}.shbk-dash__nav a:hover{background:var(--sh-soft)}.shbk-dash__nav a.is-active{background:var(--sh-accent);color:#fff}
.shbk-dash__me{display:flex;gap:.7rem;align-items:center;padding:0 0 .9rem;margin:0 0 .6rem;border-bottom:1px solid var(--sh-line)}
.shbk-dash__head{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin:0 0 1rem}.shbk-dash__head .shbk-h2{margin:0}
.shbk-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--sh-hot);color:#fff;font-size:.72rem;font-weight:700}
.shbk-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:0 0 1.5rem}.shbk-kpis>div{background:var(--sh-soft);border-radius:14px;padding:1rem}.shbk-kpis b{display:block;font-size:1.6rem}.shbk-kpis span{color:var(--sh-muted);font-size:.88rem}
.shbk-panel{background:var(--sh-bg);border:1px solid var(--sh-line);border-radius:var(--sh-r);padding:1rem 1.2rem;margin:0 0 1rem}
.shbk-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.shbk-subtabs{display:flex;gap:.3rem;flex-wrap:wrap;margin:0 0 1rem;border-bottom:1px solid var(--sh-line)}.shbk-subtabs a{padding:.55rem .9rem;text-decoration:none;color:var(--sh-muted);border-bottom:2px solid transparent;margin-bottom:-1px}.shbk-subtabs a.is-active{color:var(--sh-ink);border-color:var(--sh-accent);font-weight:600}
.shbk-arrivals{list-style:none;padding:0;margin:0}.shbk-arrivals li{padding:.6rem 0;border-bottom:1px solid var(--sh-line)}
.shbk-bcard{display:grid;grid-template-columns:160px minmax(0,1fr);gap:1.1rem;border:1px solid var(--sh-line);border-radius:var(--sh-r);padding:1rem;margin:0 0 1rem;background:var(--sh-bg)}
.shbk-bcard__img img{width:160px;height:120px;object-fit:cover;border-radius:10px;display:block}.shbk-bcard h3{margin:.2rem 0;font-size:1.1rem}.shbk-bcard h3 a{color:inherit}.shbk-bcard p{margin:.3rem 0}.shbk-bcard__top{display:flex;gap:.5rem;align-items:center}
.shbk-claim{margin-top:.8rem;background:var(--sh-soft);border-radius:12px;padding:.8rem 1rem}.shbk-claim summary{cursor:pointer;font-weight:600}.shbk-claim .shbk-btn{margin-top:.6rem}
.shbk-pill{display:inline-block;padding:.18rem .6rem;border-radius:999px;font-size:.76rem;font-weight:700;background:var(--sh-soft);color:var(--sh-muted);white-space:nowrap}
.shbk-pill.is-confirmed,.shbk-pill.is-publish,.shbk-pill.is-paid,.shbk-pill.is-active,.shbk-pill.is-completed,.shbk-pill.is-complete{background:#e3f6ec;color:#17643f}
.shbk-pill.is-requested,.shbk-pill.is-pending,.shbk-pill.is-due,.shbk-pill.is-open,.shbk-pill.is-held,.shbk-pill.is-scheduled{background:#fff4dc;color:#8a5a00}
.shbk-pill.is-cancelled,.shbk-pill.is-declined,.shbk-pill.is-refunded,.shbk-pill.is-expired,.shbk-pill.is-failed{background:#fdeceb;color:#9b2c22}
.shbk-table-wrap{overflow-x:auto}.shbk-table{width:100%;border-collapse:collapse;font-size:.94rem}.shbk-table th,.shbk-table td{padding:.65rem .6rem;border-bottom:1px solid var(--sh-line);text-align:left;vertical-align:top}.shbk-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--sh-muted)}.shbk-table .num{text-align:right}
.shbk-mcals{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin:0 0 1.5rem}.shbk-mcal h4{margin:0 0 .5rem}
.shbk-mcal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.shbk-mcal__dow{font-size:.72rem;color:var(--sh-muted);text-align:center}
.shbk-mcal__day{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;border-radius:6px;font-size:.78rem}.shbk-mcal__day small{font-size:.62rem;color:var(--sh-muted)}
.shbk-mcal__day.is-free,.shbk-legend .is-free{background:#eef8f3}.shbk-mcal__day.is-part,.shbk-legend .is-part{background:#fff1cc}.shbk-mcal__day.is-booked,.shbk-legend .is-booked{background:#cfe9ec}.shbk-mcal__day.is-blocked,.shbk-legend .is-blocked{background:repeating-linear-gradient(45deg,#eceff1,#eceff1 4px,#dde3e6 4px,#dde3e6 8px)}.shbk-mcal__day.is-past{opacity:.45}
.shbk-legend{font-size:.85rem;color:var(--sh-muted)}.shbk-legend span{display:inline-block;width:14px;height:14px;border-radius:4px;vertical-align:-2px;margin:0 .3rem 0 .8rem}
.shbk-threads{list-style:none;padding:0;margin:0}.shbk-threads li{border-bottom:1px solid var(--sh-line)}.shbk-threads a{display:block;padding:.8rem .4rem;text-decoration:none;color:inherit}.shbk-threads__when{float:right;color:var(--sh-muted);font-size:.82rem}
.shbk-chat{display:flex;flex-direction:column;gap:.6rem;margin:0 0 1rem;max-height:60vh;overflow-y:auto;padding:.4rem}.shbk-msg{max-width:78%;padding:.65rem .9rem;border-radius:16px;background:var(--sh-soft)}.shbk-msg.is-me{align-self:flex-end;background:var(--sh-accent);color:#fff}.shbk-msg small{display:block;opacity:.7;font-size:.75rem;margin-top:.2rem}
/* Auth */
.shbk-auth{max-width:460px;margin:2rem auto}.shbk-auth__title{text-align:center;margin:0 0 .4rem}.shbk-auth__lead{text-align:center;color:var(--sh-muted)}.shbk-auth__alt{text-align:center}.shbk-auth .shbk-btn--block{margin-top:1.2rem}
.shbk-acct-type{border:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.shbk-acct-type legend{font-weight:600;margin-bottom:.4rem}.shbk-acct-type label{display:flex!important;gap:.5rem;align-items:flex-start;border:1px solid var(--sh-line);border-radius:12px;padding:.75rem;margin:0!important;cursor:pointer}.shbk-acct-type label:has(input:checked){border-color:var(--sh-accent);background:var(--sh-soft)}.shbk-acct-type small{display:block;font-weight:400;color:var(--sh-muted)}
.shbk-row-between{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:.8rem}
.shbk-acct{display:flex;align-items:center;gap:1rem}.shbk-acct__in{text-decoration:none;color:inherit;font-weight:500;font-size:.95rem}
/* Responsive */
@media (max-width:1000px){.shbk-listing__cols{grid-template-columns:1fr}.shbk-book{position:static}.shbk-results{grid-template-columns:1fr}.shbk-filters form{position:static}.shbk-filters form>*:not(h2){display:none}.shbk-filters.is-open form>*:not(h2){display:block}.shbk-filters.is-open form .shbk-grid2{display:grid}.shbk-filters h2{cursor:pointer}.shbk-filters h2::after{content:" ▾"}.shbk-dash{grid-template-columns:1fr}.shbk-dash__nav{position:static}.shbk-dash__nav ul{display:flex;overflow-x:auto;gap:.2rem}.shbk-dash__nav a{white-space:nowrap}}
@media (max-width:720px){.shbk-gallery{grid-template-columns:1fr 1fr;grid-template-rows:220px 110px}.shbk-gallery__item.is-main{grid-column:span 2;grid-row:auto}.shbk-gallery__item:nth-child(n+4){display:none}.shbk-cal__ms{grid-template-columns:1fr}.shbk-cal__m+.shbk-cal__m{display:none}.shbk-reviews{grid-template-columns:1fr}.shbk-grid2,.shbk-grid3,.shbk-grid4{grid-template-columns:1fr 1fr}.shbk-stats{grid-template-columns:1fr 1fr}.shbk-bcard{grid-template-columns:1fr}.shbk-bcard__img img{width:100%;height:170px}.shbk-search{flex-direction:column;align-items:stretch}.shbk-search__f{flex:1 1 auto}.shbk-rows__head{display:none}.shbk-row{grid-template-columns:1fr 1fr;padding:.5rem;border:1px solid var(--sh-line);border-radius:10px}.shbk-acct-type{grid-template-columns:1fr}.shbk-table thead{display:none}.shbk-table tr{display:block;border-bottom:1px solid var(--sh-line);padding:.5rem 0}.shbk-table td{display:flex;justify-content:space-between;gap:1rem;border:0;padding:.3rem 0}.shbk-table td[data-label]::before{content:attr(data-label);font-weight:600;color:var(--sh-muted)}.shbk-table .num{text-align:right}}
@media (prefers-reduced-motion:reduce){.shbk-card,.shbk-card__img img,.shbk-tile img{transition:none}}
.shbk-mbar{display:none}
@media (max-width:899px){.shbk-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));background:var(--sh-bg);border-top:1px solid var(--sh-line);box-shadow:0 -6px 20px rgba(0,0,0,.08);color:var(--sh-ink);text-decoration:none;font-weight:700}.shbk-listing{padding-bottom:4.5rem}}
.shbk-gallery.is-n1{grid-template-columns:1fr;grid-template-rows:420px}.shbk-gallery.is-n2{grid-template-columns:2fr 1fr;grid-template-rows:200px 200px}.shbk-gallery.is-n2 .shbk-gallery__item:not(.is-main){grid-row:span 2}.shbk-gallery.is-n3{grid-template-columns:2fr 1fr}.shbk-gallery.is-n4{grid-template-columns:2fr 1fr 1fr}.shbk-gallery.is-n4 .shbk-gallery__item:nth-child(4){grid-column:span 2}
@media (max-width:720px){.shbk-gallery.is-n1{grid-template-rows:260px}.shbk-gallery.is-n2,.shbk-gallery.is-n3,.shbk-gallery.is-n4{grid-template-columns:1fr 1fr;grid-template-rows:220px 110px}.shbk-gallery.is-n2 .shbk-gallery__item:not(.is-main){grid-row:auto;grid-column:span 2}.shbk-gallery.is-n4 .shbk-gallery__item:nth-child(4){grid-column:auto}}
