*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ocean:#5f7a66;--ocean-light:#76917d;--ocean-pale:#e8efe8;
  --sand:#c88b5a;--sand-light:#efd8bf;--sand-pale:#fbf3ea;
  --white:#ffffff;--off-white:#f7f2ea;
  --stone:#8a7762;--stone-dark:#4b4033;
  --text:#2f261b;--text-muted:#7b6b5a;
  --success:#2e7d4f;--danger:#c0392b;--warn:#d4891a;
  --radius:12px;--radius-lg:20px;--radius-xl:32px;
  --shadow:0 4px 24px rgba(95,122,102,.12);
  --shadow-lg:0 12px 48px rgba(95,122,102,.18);
  --transition:.3s cubic-bezier(.4,0,.2,1);
}

/* License status and grace-period UI */
.license-login-notice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid #e8c894;border-radius:16px;background:#fff8e9;color:#62491e}.license-login-notice.is-restricted{border-color:#e8b2aa;background:#fff0ee;color:#802f27}.license-login-notice strong{display:block;margin-bottom:.18rem}.license-login-notice p{margin:0;line-height:1.45}.license-login-notice a{color:inherit;font-weight:800}.license-status-dot{width:.65rem;height:.65rem;border-radius:50%;background:currentColor;box-shadow:0 0 0 5px rgba(95,122,102,.12)}
.license-admin-page{display:grid;gap:1.15rem}.license-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.license-admin-head p{max-width:760px;margin:.45rem 0 0;color:var(--text-muted);line-height:1.55}.license-status-badge{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .8rem;border-radius:999px;font-size:.8rem;font-weight:800;white-space:nowrap}.license-status-badge.is-active{background:#eaf4ed;color:#426951}.license-status-badge.is-warning{background:#fff3d8;color:#86601c}.license-status-badge.is-restricted{background:#fde8e5;color:#9a3e34}.license-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.license-status-grid article,.license-meta-grid>div{position:relative;display:grid;gap:.32rem;padding:1rem 1.05rem;border:1px solid rgba(95,122,102,.14);border-radius:16px;background:#fff}.license-status-grid span,.license-meta-grid span,.license-grace-facts small{color:var(--text-muted);font-size:.73rem;letter-spacing:.055em;text-transform:uppercase}.license-status-grid strong,.license-meta-grid strong{overflow-wrap:anywhere}.license-online-indicator{position:absolute;top:1rem;right:1rem;width:.65rem;height:.65rem;border-radius:50%;background:#a8afaa}.license-online-indicator.is-online{background:#3e9b62;box-shadow:0 0 0 5px rgba(62,155,98,.12)}.license-online-indicator.is-offline{background:#c85147;box-shadow:0 0 0 5px rgba(200,81,71,.12)}.license-status-message{display:grid;gap:.35rem;padding:1rem 1.1rem;border-radius:17px;border:1px solid rgba(95,122,102,.14);background:#f3f7f4}.license-status-message.is-warning{border-color:#ead29e;background:#fff9eb}.license-status-message.is-restricted{border-color:#e9b8b1;background:#fff0ee}.license-status-message p{margin:0;line-height:1.55}.license-grace-facts{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.55rem}.license-grace-facts span{display:grid;gap:.16rem;min-width:170px}.license-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.license-check-form{display:flex;justify-content:flex-end}.license-lifetime-card{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.1rem;border:1px solid rgba(95,122,102,.15);border-radius:18px;background:#fbfcfa}.license-lifetime-card p{margin:.3rem 0 0;color:var(--text-muted);line-height:1.5}.license-file-button{position:relative;overflow:hidden;cursor:pointer;white-space:nowrap}.license-file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.license-restricted-panel{max-width:760px;margin:2rem auto;text-align:center}.license-restricted-panel h2{margin:1rem 0 .5rem}.license-restricted-panel p{color:var(--text-muted);line-height:1.6}
@media(max-width:900px){.license-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.license-admin-head,.license-lifetime-card{align-items:stretch;flex-direction:column}.license-login-notice{grid-template-columns:auto minmax(0,1fr)}.license-login-notice a{grid-column:2}.license-lifetime-card form,.license-file-button{width:100%;justify-content:center}}
@media(max-width:560px){.license-status-grid,.license-meta-grid{grid-template-columns:minmax(0,1fr)}.license-login-notice{padding:.9rem}.license-status-badge{align-self:flex-start}}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Jost',sans-serif;color:var(--text);background:var(--off-white);overflow-x:hidden}
.serif{font-family:'Cormorant Garamond',serif}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button{cursor:pointer;font-family:inherit}
.booking-legal-consent{display:flex;align-items:flex-start;gap:.75rem;margin:1.15rem 0;padding:1rem 1.05rem;border:1px solid rgba(95,122,102,.18);border-radius:16px;background:rgba(232,239,232,.58);font-size:.86rem;line-height:1.55;color:var(--text)}
.booking-legal-consent input{width:18px;height:18px;margin-top:.14rem;accent-color:var(--ocean);flex:0 0 auto}
.booking-legal-consent a{color:var(--ocean);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.booking-legal-consent a:hover{color:var(--sand)}
.booking-legal-consent:focus-within{outline:3px solid rgba(95,122,102,.18);outline-offset:2px}
.booking-cancellation-notice{display:grid;gap:.3rem;margin:1.15rem 0;padding:1rem 1.05rem;border:1px solid rgba(183,122,53,.24);border-radius:16px;background:rgba(248,239,222,.72);font-size:.84rem;line-height:1.55;color:var(--text)}
.booking-cancellation-notice strong{color:#765029;font-size:.82rem;letter-spacing:.02em}.booking-cancellation-notice span{display:block}.booking-cancellation-notice a{display:inline-block;margin-left:.25rem;color:var(--ocean);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.booking-legal-quick-links{display:flex;flex-wrap:wrap;gap:.45rem .9rem;margin:-.55rem 0 1.2rem;padding-left:2.95rem;font-size:.78rem}.booking-legal-quick-links a{color:var(--ocean);font-weight:700;text-decoration:underline;text-underline-offset:3px}
body.booking-legal-open{overflow:hidden}.booking-legal-modal{position:fixed;inset:0;z-index:2400;display:grid;place-items:center;padding:clamp(.75rem,2vw,1.5rem)}.booking-legal-modal[hidden]{display:none}.booking-legal-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(25,31,27,.62);backdrop-filter:blur(7px);cursor:pointer}.booking-legal-dialog{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(980px,100%);height:min(88dvh,900px);overflow:hidden;border:1px solid rgba(255,255,255,.58);border-radius:26px;background:#fff;box-shadow:0 32px 90px rgba(20,28,23,.3)}.booking-legal-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.15rem 1.25rem;border-bottom:1px solid rgba(95,122,102,.14);background:rgba(252,250,246,.98)}.booking-legal-dialog-head>div{display:grid;gap:.18rem;min-width:0}.booking-legal-dialog-head span{color:var(--ocean);font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.booking-legal-dialog-head h2{margin:0;color:var(--text);font-family:var(--font-heading);font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.2}.booking-legal-close{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;padding:0;border:1px solid rgba(95,122,102,.16);border-radius:50%;background:#f1f5f1;color:var(--ocean);font:400 1.65rem/1 Arial,sans-serif;cursor:pointer}.booking-legal-close:hover{background:#e5eee6}.booking-legal-close:focus-visible{outline:3px solid rgba(95,122,102,.24);outline-offset:2px}.booking-legal-dialog-content{min-height:0;overflow:auto;overscroll-behavior:contain;padding:clamp(1.15rem,3vw,2.2rem);scrollbar-gutter:stable}.booking-legal-panel{max-width:800px;margin:0 auto}.booking-legal-panel[hidden]{display:none}.booking-legal-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid rgba(95,122,102,.14);background:#fbfaf7}.booking-legal-dialog-actions .btn{justify-content:center}.booking-legal-dialog-actions .btn-outline{color:var(--ocean);border-color:rgba(95,122,102,.24);background:#fff}
@media(max-width:640px){.booking-legal-quick-links{padding-left:0}.booking-legal-modal{padding:0}.booking-legal-dialog{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}.booking-legal-dialog-head{padding:max(.85rem,env(safe-area-inset-top)) 1rem .85rem}.booking-legal-dialog-content{padding:1.1rem 1rem}.booking-legal-dialog-actions{align-items:stretch;flex-direction:column-reverse;padding:.85rem 1rem max(.85rem,env(safe-area-inset-bottom))}.booking-legal-dialog-actions .btn{width:100%}}

/* Section */
#nav{position:fixed;top:0;left:0;right:0;z-index:1000;transition:var(--transition)}
#nav.scrolled{background:rgba(255,255,255,.95);backdrop-filter:blur(20px);box-shadow:0 2px 20px rgba(0,0,0,.08)}
.nav-inner{max-width:1280px;margin:0 auto;padding:0 2rem;height:72px;display:flex;align-items:center;justify-content:space-between;gap:1.25rem}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:600;color:var(--white);transition:var(--transition)}
#nav.scrolled .nav-logo{color:var(--ocean)}
.nav-links{display:flex;gap:clamp(.75rem,1.4vw,1.5rem);align-items:center;justify-content:flex-end;min-width:0}
.nav-links.open{display:flex}
.nav-actions{display:flex;align-items:center;gap:.65rem}
.nav-links a{font-size:.82rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.9);transition:var(--transition);white-space:nowrap}
#nav.scrolled .nav-links a{color:var(--text)}
.nav-links a:hover{color:var(--sand)!important}
.nav-cta{background:var(--sand);color:var(--white)!important;padding:.55rem 1.4rem;border-radius:100px;letter-spacing:.05em!important}
.nav-cta:hover{background:var(--ocean)!important;transform:translateY(-1px)}
.admin-navigation-editor{display:grid;gap:1rem}
.admin-navigation-note{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.55}
.admin-navigation-list{display:grid;gap:.85rem}
.admin-navigation-card{position:relative;padding:1.15rem 3.25rem 1.1rem 1.1rem;border:1px solid rgba(0,0,0,.06);border-radius:18px;background:linear-gradient(180deg,#fcfaf6 0%,#f8f4ed 100%)}
.admin-navigation-row{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(150px,.52fr);gap:1rem;align-items:end}
.admin-navigation-row .form-group{margin:0}
.nav-menu{display:none;background:none;border:none;padding:6px;color:var(--white)}
#nav.scrolled .nav-menu{color:var(--text)}
.nav-access{position:relative}
.nav-access-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(12px);padding:.5rem;box-shadow:0 12px 26px rgba(24,20,16,.1);transition:var(--transition)}
.nav-access-toggle:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.4);transform:translateY(-1px)}
.nav-access-toggle:focus-visible,.nav-access-link:focus-visible{outline:3px solid rgba(200,139,90,.42);outline-offset:3px}
#nav.scrolled .nav-access-toggle{background:rgba(95,122,102,.09);border-color:rgba(95,122,102,.16);color:var(--text);box-shadow:0 8px 22px rgba(47,38,27,.07)}
#nav.scrolled .nav-access-toggle:hover{background:rgba(95,122,102,.15);border-color:rgba(95,122,102,.25)}
.nav-access-toggle-icon{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:999px;background:rgba(255,255,255,.16);flex:0 0 auto}
#nav.scrolled .nav-access-toggle-icon{background:rgba(95,122,102,.13)}
.nav-access-toggle-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-access-toggle[aria-expanded="true"]{background:rgba(255,255,255,.24);border-color:rgba(255,255,255,.42)}
#nav.scrolled .nav-access-toggle[aria-expanded="true"]{background:rgba(95,122,102,.17);border-color:rgba(95,122,102,.28)}
.nav-access-panel{position:absolute;top:calc(100% + 12px);right:0;width:min(330px,calc(100vw - 2rem));padding:.65rem;background:rgba(255,255,255,.985);border:1px solid rgba(95,122,102,.14);border-radius:22px;box-shadow:0 24px 60px rgba(47,38,27,.2);display:grid;gap:.45rem;z-index:20;transform-origin:top right;animation:navAccessIn .2s ease-out both}
.nav-access-panel::before{content:"";position:absolute;top:-6px;right:15px;width:12px;height:12px;background:#fff;border-left:1px solid rgba(95,122,102,.14);border-top:1px solid rgba(95,122,102,.14);transform:rotate(45deg)}
.nav-access-panel[hidden]{display:none!important}
.nav-access-head{padding:.72rem .78rem .65rem;border-bottom:1px solid rgba(95,122,102,.11)}
.nav-access-title{font-family:var(--font-heading);font-size:1.2rem;font-weight:600;line-height:1.1;color:var(--text)}
.nav-access-intro{margin-top:.3rem;color:var(--text-muted);font-size:.77rem;line-height:1.45}
.nav-access-options{display:grid;gap:.35rem}
.nav-access-link{display:grid;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:.78rem;min-height:68px;padding:.72rem .78rem;border:1px solid transparent;border-radius:16px;color:var(--text)!important;transition:var(--transition);text-transform:none!important;letter-spacing:normal!important}
.nav-access-link:hover{background:linear-gradient(135deg,var(--sand-pale),#fff);border-color:rgba(200,139,90,.18);color:var(--ocean)!important;transform:translateX(2px)}
.nav-access-link-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;color:var(--ocean);background:var(--ocean-pale);transition:var(--transition)}
.nav-access-link-icon-admin{color:#9b633d;background:var(--sand-pale)}
.nav-access-link:hover .nav-access-link-icon{transform:scale(1.04)}
.nav-access-link-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-access-link-copy{display:grid;gap:.2rem;min-width:0}
.nav-access-link-copy strong{font-size:.87rem;font-weight:700;line-height:1.2;color:var(--text)}
.nav-access-link-copy small{font-size:.72rem;font-weight:400;line-height:1.35;color:var(--text-muted)}
.nav-access-link-arrow{font-size:1.05rem;color:var(--stone);transition:transform .2s ease,color .2s ease}
.nav-access-link:hover .nav-access-link-arrow{color:var(--ocean);transform:translateX(2px)}
@keyframes navAccessIn{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.nav-guest-entry{display:inline-flex;align-items:center;gap:.55rem;min-height:42px;padding:.7rem 1rem;border-radius:999px;background:rgba(255,255,255,.14);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.22);color:#fff!important;font-size:.84rem;font-weight:700;letter-spacing:.04em;box-shadow:0 14px 28px rgba(24,20,16,.14);transition:var(--transition)}
.nav-guest-entry:hover{background:rgba(255,255,255,.24);transform:translateY(-1px);color:#fff!important}
#nav.scrolled .nav-guest-entry{background:rgba(26,107,138,.08);border-color:rgba(26,107,138,.12);color:var(--text)!important;box-shadow:0 10px 24px rgba(26,107,138,.08)}
#nav.scrolled .nav-guest-entry:hover{background:rgba(26,107,138,.14);color:var(--ocean)!important}
.nav-guest-entry-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:rgba(255,255,255,.18);font-size:.78rem;line-height:1;flex-shrink:0}
#nav.scrolled .nav-guest-entry-icon{background:rgba(26,107,138,.1)}
.nav-guest-entry-scrolled{background:#fff;border-color:rgba(0,0,0,.06);color:var(--text)!important;box-shadow:0 12px 24px rgba(0,0,0,.06)}
.nav-guest-entry-scrolled:hover{background:#faf7f1;color:var(--ocean)!important}
.nav-guest-entry-scrolled .nav-guest-entry-icon{background:rgba(26,107,138,.1)}
.lang-switcher{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem;background:rgba(255,255,255,.12);border-radius:999px;border:1px solid rgba(255,255,255,.18)}
#nav.scrolled .lang-switcher{background:rgba(26,107,138,.08);border-color:rgba(26,107,138,.12)}
.lang-link{display:inline-flex;align-items:center;justify-content:center;min-width:38px;padding:.35rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.82)!important}
#nav.scrolled .lang-link{color:var(--text)!important}
.lang-link.active{background:var(--ocean);color:#fff!important}

/* Section */
.view{display:none;min-height:100vh}
.view.active{display:block}

/* Section */
.hero{position:relative;height:100vh;min-height:600px;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#566f5e 0%,#6c8167 34%,#b77b4f 72%,#d7b089 100%);overflow:hidden}
.hero-bg::before{content:'';position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1440 800"><path fill="%23ffffff08" d="M0 400c240-80 480-120 720-80s480 120 720 40V800H0z"/><path fill="%23ffffff05" d="M0 500c200-60 400-100 720-60s520 100 720 20V800H0z"/></svg>') bottom/cover no-repeat}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(29,28,24,.22) 0%,rgba(29,28,24,.08) 42%,rgba(29,28,24,.48) 100%)}
.hero-img{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;opacity:.68}
.hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;color:var(--white)}
.hero-tag{display:inline-block;background:rgba(255,255,255,.15);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.3);border-radius:100px;padding:.4rem 1.2rem;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.5rem;animation:fadeUp .8s .2s both}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2.5rem,6vw,5.25rem);font-weight:300;line-height:1.04;letter-spacing:-.02em;margin-bottom:1rem;animation:fadeUp .8s .4s both;text-shadow:0 12px 30px rgba(0,0,0,.26)}
.hero-title em{font-style:italic;color:rgba(255,255,255,.85)}
.hero-sub{font-size:clamp(1rem,2vw,1.25rem);font-weight:300;opacity:.95;max-width:560px;line-height:1.6;margin-bottom:2.5rem;animation:fadeUp .8s .6s both;text-shadow:0 8px 24px rgba(0,0,0,.2)}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;animation:fadeUp .8s .8s both}
.hero-quick-links{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:center;margin-top:1.35rem;animation:fadeUp .8s .95s both}
.hero-quick-link{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;border-radius:999px;background:rgba(255,255,255,.12);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.24);color:rgba(255,255,255,.92);font-size:.8rem;font-weight:600;letter-spacing:.03em;transition:var(--transition)}
.hero-quick-link:hover{background:rgba(255,255,255,.2);color:#fff;transform:translateY(-1px)}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 2rem;border-radius:100px;font-size:.9rem;font-weight:500;letter-spacing:.03em;transition:var(--transition);border:none}
.btn-primary{background:var(--sand);color:var(--white)}
.btn-primary:hover{background:#b67949;transform:translateY(-2px);box-shadow:0 8px 24px rgba(200,139,90,.35)}
.btn-secondary{background:#f5f1ea;color:var(--text)}
.btn-secondary:hover{background:#ece4d7;transform:translateY(-2px)}
.btn-outline{background:rgba(255,255,255,.15);backdrop-filter:blur(8px);color:var(--white);border:1.5px solid rgba(255,255,255,.6)}
.btn-outline:hover{background:rgba(255,255,255,.25);transform:translateY(-2px)}
.btn-ocean{background:var(--ocean);color:var(--white)}
.btn-ocean:hover{background:var(--ocean-light);transform:translateY(-2px);box-shadow:0 8px 24px rgba(26,107,138,.35)}
.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:rgba(255,255,255,.7);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;animation:fadeUp .8s 1.2s both}
.scroll-line{width:1px;height:40px;background:rgba(255,255,255,.4);position:relative;overflow:hidden}
.scroll-line::after{content:'';position:absolute;top:-100%;left:0;width:100%;height:100%;background:var(--white);animation:scrollDown 1.8s ease-in-out infinite}
@keyframes scrollDown{0%{top:-100%}100%{top:100%}}
.hero-stats{position:absolute;bottom:0;left:0;right:0;z-index:3}
.hero-stats-inner{max-width:1120px;margin:0 auto;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:1.5rem 2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;text-align:center;box-shadow:var(--shadow-lg)}
.stat-item{padding:.5rem}
.stat-num{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:600;color:var(--ocean);line-height:1}
.stat-label{font-size:.75rem;color:var(--text-muted);letter-spacing:.05em;margin-top:.25rem}

/* Section */
.section{padding:5rem 2rem}
.section-narrow{max-width:800px;margin:0 auto}
.container{max-width:1280px;margin:0 auto}
.section-tag{display:none!important}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.85rem,3.2vw,2.75rem);font-weight:300;line-height:1.18;color:var(--text);margin-bottom:1rem}
.section-title em{font-style:italic;color:var(--ocean)}
.section-sub{font-size:1rem;color:var(--text-muted);line-height:1.7;max-width:600px}

/* Section */
.highlights{background:var(--off-white)}
.highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;margin-top:3rem}
.highlight-card{background:var(--white);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow);transition:var(--transition);border:1px solid rgba(200,169,110,.15)}
.highlight-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.highlight-icon{width:56px;height:56px;border-radius:var(--radius);background:var(--ocean-pale);display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin-bottom:1rem}
.highlight-title{font-size:1.05rem;font-weight:600;color:var(--text);margin-bottom:.5rem}
.highlight-text{font-size:.9rem;color:var(--text-muted);line-height:1.6}

/* Section */
.about{background:var(--white)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-top:3rem}
.about-image-wrap{position:relative;display:block;border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:4/5;min-height:620px;background:linear-gradient(135deg,var(--ocean-pale),var(--sand-light));box-shadow:0 24px 52px rgba(95,122,102,.14);border:1px solid rgba(0,0,0,.05)}
.about-image-wrap.has-image{background:#d7c4af}
.about-image-wrap::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,0) 24%,rgba(47,38,27,.14) 100%);pointer-events:none;z-index:2}
.about-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;display:block;object-fit:cover;object-position:center center;transform:scale(1.02);z-index:1}
.about-image-deco{position:absolute;top:-1rem;left:-1rem;right:1rem;bottom:1rem;border:2px solid var(--sand);border-radius:var(--radius-xl);z-index:-1}
.about-badge{position:absolute;bottom:1.1rem;right:1.1rem;background:rgba(95,122,102,.92);backdrop-filter:blur(12px);color:var(--white);border-radius:var(--radius-lg);padding:1.2rem 1.5rem;text-align:center;box-shadow:var(--shadow-lg);z-index:2;border:1px solid rgba(255,255,255,.14)}
.about-badge strong{display:block;font-family:'Cormorant Garamond',serif;font-size:2.5rem;font-weight:600;line-height:1}
.about-badge span{font-size:.75rem;opacity:.8;letter-spacing:.08em;text-transform:uppercase}
.about-specs{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:2rem 0}
.spec-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:var(--sand-pale);border-radius:var(--radius);font-size:.9rem}
.spec-icon{font-size:1.1rem;width:28px;text-align:center}

/* Section */
.amenities{background:var(--sand-pale)}
.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-top:3rem}
.amenity-item{background:var(--white);border-radius:var(--radius-lg);padding:1.4rem 1rem;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,.06);transition:var(--transition);border:1px solid transparent}

.amenity-icon{font-size:1.8rem;margin-bottom:.6rem}
.amenity-label,.amenity-title{margin:0;font-size:.92rem;font-weight:700;color:var(--text);line-height:1.3}.amenity-description{margin:.45rem 0 0;color:var(--text-muted);font-size:.78rem;line-height:1.5}
.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.detail-card{background:var(--white);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,.06);border:1px solid rgba(0,0,0,.05)}
.detail-card h3{font-size:1.5rem;font-weight:500;margin-bottom:1rem;color:var(--text)}
.form-required{color:#cf7c45;font-weight:700}
.form-required-note{margin-top:.75rem;font-size:.78rem;line-height:1.4;color:var(--text-muted)}
.contact-mail-body .form-required-note{margin-top:.2rem}
.detail-list{list-style:none;display:grid;gap:.7rem}
.detail-list li{position:relative;padding-left:1rem;color:var(--text-muted);line-height:1.5}
.detail-list li::before{content:'\2022';position:absolute;left:0;color:var(--ocean);font-weight:700}

/* Section */
.gallery{background:var(--white)}
.gallery-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:2rem 0}
.gallery-tab{padding:.5rem 1.2rem;border-radius:100px;border:1.5px solid var(--stone);background:transparent;font-size:.82rem;font-weight:500;color:var(--text-muted);transition:var(--transition)}
.gallery-tab.active,.gallery-tab:hover{background:var(--ocean);border-color:var(--ocean);color:var(--white)}
.gallery-strip-wrap{position:relative;display:block;margin-top:2.35rem;padding:0 4.5rem}
.gallery-carousel-viewport{overflow:hidden;min-width:0;padding:.35rem 0}
.gallery-strip{--gallery-gap:1.2rem;display:flex;gap:var(--gallery-gap);min-width:0;transform:translate3d(0,0,0);transition:transform .42s cubic-bezier(.22,.61,.36,1);will-change:transform}
.gallery-strip-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;box-sizing:border-box;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;border:1px solid rgba(95,122,102,.12);border-radius:50%;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);color:var(--ocean);line-height:1;display:grid;place-items:center;box-shadow:0 14px 28px rgba(35,29,24,.12);transition:var(--transition)}
.gallery-strip-nav:first-child{left:1rem}
.gallery-strip-nav:last-child{right:1rem}
.gallery-strip-nav:hover{background:var(--white);transform:translateY(-50%) scale(1.05);box-shadow:0 18px 34px rgba(35,29,24,.16)}
.gallery-strip-nav:disabled{opacity:0;pointer-events:none;transform:translateY(-50%);box-shadow:none}
.gallery-item{appearance:none;-webkit-appearance:none;border:none;border-radius:26px;padding:0;display:block;position:relative;cursor:pointer;background:transparent;text-align:left;isolation:isolate;min-width:0;overflow:hidden}
.gallery-card{flex:0 0 calc((100% - (var(--gallery-gap) * 2)) / 3);max-width:calc((100% - (var(--gallery-gap) * 2)) / 3)}
.gallery-media-frame{display:block;overflow:hidden;border-radius:26px;background:var(--ocean-pale);height:clamp(250px,24vw,340px);box-shadow:0 16px 36px rgba(35,29,24,.08);transition:transform .32s ease,box-shadow .32s ease}
.gallery-item::after{content:'+';position:absolute;inset:0;border-radius:inherit;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:300;background:linear-gradient(180deg,rgba(20,28,24,0) 20%,rgba(20,28,24,.42) 100%);color:rgba(255,255,255,0);transition:var(--transition);opacity:1}
.gallery-item:hover .gallery-media-frame{transform:translateY(-3px);box-shadow:0 22px 42px rgba(35,29,24,.14)}
.gallery-item:hover::after{color:rgba(255,255,255,.96)}
.gallery-item img{width:100%;height:100%;object-fit:cover;display:block}
.gallery-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;background:linear-gradient(135deg,var(--ocean-pale),var(--sand-light))}

/* Section */
.location{background:var(--off-white)}
.location-grid{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(460px,1.08fr);gap:3rem;margin-top:2.2rem;align-items:start}
.location-grid-map-only{grid-template-columns:1fr}.location-grid-map-only .location-list-column{display:none}.location-list-column,.location-map-column{display:grid;min-width:0;align-content:start}
.location-map-column{gap:1.15rem}
.distance-list{display:flex;flex-direction:column;gap:.75rem;margin:0}
.distance-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--white);border-radius:var(--radius);box-shadow:0 2px 8px rgba(0,0,0,.05);min-height:78px}
.dist-icon{font-size:1.2rem;width:32px;text-align:center}
.dist-name{flex:1;font-size:.9rem;font-weight:500}
.dist-val{font-size:.85rem;color:var(--ocean);font-weight:600}
.map-card{min-width:0;background:var(--white);border-radius:28px;padding:1rem;box-shadow:0 18px 34px rgba(75,64,51,.10);border:1px solid rgba(95,122,102,.10)}
.map-embed-shell{position:relative;width:100%;max-width:100%;min-width:0;overflow:hidden;border-radius:22px;background:#fff;aspect-ratio:16/10;min-height:468px;border:1px solid rgba(95,122,102,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.map-embed-inner{position:absolute;inset:0;overflow:hidden;border-radius:22px;background:#fff}
.map-embed-frame{display:block;width:100%;height:100%;border:0;background:#fff}
.map-card-meta{display:grid;gap:.35rem;padding:.35rem .2rem 0}
.map-location-name{font-weight:600;font-size:1.08rem;color:var(--text)}
.map-location-sub{color:var(--text-muted);font-size:.95rem}
.map-privacy-note{color:var(--text-muted);font-size:.84rem;margin-top:.35rem;line-height:1.6}
.map-open-link{font-size:.86rem;margin-top:.55rem;justify-self:start}
.map-placeholder{background:linear-gradient(135deg,var(--ocean-pale) 0%,var(--sand-light) 100%);border-radius:var(--radius-xl);aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;font-size:3rem;color:var(--ocean);border:2px dashed rgba(26,107,138,.3);position:relative;overflow:hidden}
.map-placeholder::before{content:'';position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40"><circle cx="20" cy="20" r="1" fill="%231a6b8a22"/></svg>') center/40px}
.map-placeholder p{font-size:.9rem;font-weight:500;color:var(--ocean);opacity:.7}
.map-placeholder iframe{display:block;position:relative;z-index:1}

/* Section */
.host{background:var(--white)}
.host-card{background:linear-gradient(135deg,var(--ocean-pale),var(--sand-pale));border-radius:var(--radius-xl);padding:3rem;display:grid;grid-template-columns:auto 1fr;gap:2.5rem;align-items:center;margin-top:3rem}
.host-avatar{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--ocean),var(--sand));display:flex;align-items:center;justify-content:center;font-size:3rem;flex-shrink:0;box-shadow:var(--shadow-lg)}
.host-name{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:400;color:var(--text);margin-bottom:.5rem}
.host-bio{font-size:.95rem;color:var(--text-muted);line-height:1.7;margin-bottom:1.5rem}
.host-contacts{display:flex;gap:1rem;flex-wrap:wrap}
.contact-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.1rem;background:var(--white);border-radius:100px;font-size:.82rem;font-weight:500;color:var(--text);box-shadow:0 2px 8px rgba(0,0,0,.08);transition:var(--transition)}
.contact-chip:hover{background:var(--ocean);color:var(--white);transform:translateY(-1px)}
.host-badge{display:inline-flex;align-items:center;gap:.4rem;background:var(--success);color:var(--white);padding:.35rem .9rem;border-radius:100px;font-size:.75rem;font-weight:600;margin-bottom:.75rem}

/* Section */
.reviews{background:var(--sand-pale)}
.reviews-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem}
.rating-big{display:flex;align-items:baseline;gap:.5rem}
.rating-num{font-family:'Cormorant Garamond',serif;font-size:4rem;font-weight:600;color:var(--ocean);line-height:1}
.stars-big{font-size:1.3rem;letter-spacing:.1rem;color:var(--sand)}
.rating-count{font-size:.78rem;color:var(--text-muted)}
.rating-empty{display:inline-flex;align-items:center;min-height:42px;margin-top:1rem;padding:.7rem 1rem;border:1px solid rgba(95,122,102,.16);border-radius:999px;background:rgba(255,255,255,.58);color:var(--text-muted);font-size:.86rem;font-weight:600}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2.5rem}
.review-card{background:var(--white);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow);transition:var(--transition)}
.review-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.review-stars{color:var(--sand);font-size:1rem;margin-bottom:1rem;letter-spacing:.08rem}
.review-text{font-size:.9rem;color:var(--text-muted);line-height:1.7;margin-bottom:1.25rem;font-style:italic}
.review-author{display:flex;align-items:center;gap:.75rem}
.review-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--ocean),var(--sand));display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--white);font-size:.9rem}
.review-name{font-weight:600;font-size:.9rem}
.review-date{font-size:.78rem;color:var(--text-muted)}

/* Section */
.booking{background:var(--white)}
.booking-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:2.1rem;margin-top:3rem;align-items:stretch}
.booking-action-bar{display:flex;flex-wrap:wrap;gap:.9rem;align-items:center;margin-top:1.5rem}
.booking-main-column{display:grid;gap:1.6rem}
.calendar-wrap{margin-top:1.2rem;padding:1.8rem 1.9rem 1.45rem;background:#fff;border-radius:28px;border:1px solid rgba(0,0,0,.05);box-shadow:0 20px 46px rgba(75,64,51,.08)}
.booking-form-wrap{margin-top:0;background:linear-gradient(180deg,#fbf6ef 0%,#f8f1e7 100%);border-radius:28px;padding:2rem;border:1px solid rgba(200,139,90,.14);box-shadow:0 18px 42px rgba(75,64,51,.08)}
.booking-summary-column{display:grid;padding-top:1.2rem;align-self:stretch}
.direct-booking-summary-column{align-self:start;min-width:0}.direct-booking-summary-column .booking-summary{height:auto;min-height:0}
.booking-summary{position:relative;background:linear-gradient(180deg,#728973 0%,#5f7a66 100%);color:var(--white);border-radius:28px;padding:2.05rem 1.7rem 1.7rem;height:100%;display:flex;flex-direction:column;box-shadow:0 24px 48px rgba(95,122,102,.22);overflow:hidden}
.booking-summary::before{content:'';position:absolute;inset:0;border-radius:28px;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.booking-card-head{display:grid;gap:.35rem;margin-bottom:1.2rem}
.booking-card-title{font-size:1.58rem;font-weight:400;margin-bottom:0;color:var(--text)}
.booking-card-copy{color:var(--text-muted);margin:0;line-height:1.65}
.booking-card-copy-spaced{margin-bottom:1.35rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group{margin-bottom:1.25rem}
.form-label{display:block;font-size:.82rem;font-weight:600;letter-spacing:.05em;color:var(--text);margin-bottom:.4rem;text-transform:uppercase}
.form-input{width:100%;padding:.75rem 1rem;border:1.5px solid rgba(0,0,0,.1);border-radius:var(--radius);font-size:.9rem;font-family:inherit;color:var(--text);background:var(--white);transition:var(--transition)}
.form-input:focus{outline:none;border-color:var(--ocean);box-shadow:0 0 0 3px rgba(26,107,138,.12)}
textarea.form-input{resize:vertical;min-height:100px}
.summary-title{font-family:'Cormorant Garamond',serif;font-size:1.85rem;font-weight:500;letter-spacing:-.01em;margin-bottom:1.55rem}
.booking-party-picker{display:grid;grid-template-columns:minmax(190px,1fr) repeat(2,minmax(140px,auto));align-items:end;gap:.8rem;margin:1rem 0 .85rem;padding:1rem;border:1px solid rgba(95,122,102,.14);border-radius:17px;background:#f7f9f6}
.booking-party-picker-copy{display:grid;gap:.2rem;align-self:center}.booking-party-picker-copy strong{font-size:.9rem;color:var(--text)}.booking-party-picker-copy small{font-size:.75rem;line-height:1.45;color:var(--text-muted)}
.booking-party-picker label{display:grid;gap:.38rem;font-size:.71rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}
.booking-party-picker select{min-width:140px;min-height:44px;padding:.55rem 2rem .55rem .7rem;border:1px solid rgba(95,122,102,.2);border-radius:11px;background:#fff;color:var(--text);font:inherit;font-size:1rem;cursor:pointer}
.booking-party-picker select:focus-visible{outline:3px solid rgba(53,107,101,.18);outline-offset:2px;border-color:var(--ocean)}
.summary-line{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.82rem 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:.92rem}
.summary-line span:first-child{color:rgba(255,255,255,.94)}
.summary-line span:last-child{text-align:right;color:#fff}
.summary-total{display:flex;justify-content:space-between;align-items:center;padding:1.15rem 0 0;font-weight:700;font-size:1.16rem;margin-bottom:1.2rem}
.summary-total span:first-child{color:#fff}
.summary-total span:last-child{text-align:right}
.price-tag{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:400;text-align:center;line-height:1.02;margin:1.35rem 0 .9rem}
.price-tag span{font-size:1rem;opacity:.76}
.booking-meta-list{display:flex;flex-wrap:wrap;gap:.7rem 1.15rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid rgba(75,64,51,.08);color:var(--text-muted);font-size:.88rem;line-height:1.55}
.booking-meta-item{display:inline-flex;align-items:center;gap:.42rem}
.booking-meta-item-pets{color:var(--text)}
.booking-meta-icon{display:inline-flex;align-items:center;justify-content:center;font-size:.92rem;line-height:1}
.direct-booking-link.disabled{pointer-events:none;opacity:.55;filter:saturate(.75)}
.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.15rem}
.cal-month{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:400}
.cal-btn{box-sizing:border-box;flex:0 0 36px;min-width:36px;min-height:36px;width:36px;height:36px;aspect-ratio:1;padding:0;background:none;border:1.5px solid rgba(0,0,0,.15);border-radius:50%;display:inline-grid;place-items:center;font-size:1.1rem;line-height:1;color:var(--text-muted);transition:var(--transition);-webkit-appearance:none;appearance:none}
.cal-btn:hover{background:var(--ocean);border-color:var(--ocean);color:var(--white)}
.round-arrow-icon{display:block;width:18px;height:18px;margin:auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.gallery-strip-nav .round-arrow-icon{width:20px;height:20px}.lightbox-nav .round-arrow-icon{width:23px;height:23px}.customer-mail-pagination-btn .round-arrow-icon,.customer-pagination-btn .round-arrow-icon{width:17px;height:17px}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-day-name{text-align:center;font-size:.72rem;font-weight:600;color:var(--text-muted);letter-spacing:.05em;padding:.5rem 0;text-transform:uppercase}
.cal-day{text-align:center;padding:.72rem .3rem;border-radius:12px;font-size:.9rem;cursor:pointer;transition:var(--transition);color:var(--text)}
.cal-day:hover{background:var(--ocean-pale);color:var(--ocean)}
.cal-day.booked{background:#fee;color:var(--danger);cursor:not-allowed;font-weight:500}
.cal-day.restricted{background:#f3f4f6;color:#9aa3af;cursor:not-allowed;border:1px dashed rgba(154,163,175,.55)}
.cal-day.available{background:#f0faf5;color:var(--success)}
.cal-day.selected{background:var(--ocean);color:var(--white)!important;font-weight:600}
.cal-day.today{font-weight:700;border:2px solid var(--sand)}
.cal-day.empty,.cal-day.restricted{pointer-events:none}
.cal-legend{display:flex;gap:1.5rem;margin-top:1rem;font-size:.78rem;flex-wrap:wrap}
.cal-legend-item{display:flex;align-items:center;gap:.4rem}
.cal-dot{width:12px;height:12px;border-radius:3px}
.booking-summary-note{margin-top:auto;padding:1.65rem 0 0;font-size:.84rem;line-height:1.6;opacity:.96;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}
.booking-summary-note .btn{margin:0 auto!important;width:min(100%,280px)!important;min-height:50px;justify-content:center;align-items:center;align-self:center;box-shadow:0 10px 22px rgba(200,139,90,.18)}
.booking-summary [hidden]{display:none!important}
@media(max-width:720px){.booking-party-picker{grid-template-columns:1fr 1fr}.booking-party-picker-copy{grid-column:1/-1}.booking-party-picker select{width:100%;min-width:0}}
.booking-storage-note{font-size:.75rem;color:var(--text-muted);text-align:center;margin-top:.85rem}

/* Section */
.contact-sec{background:var(--sand-pale)}
.contact-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:2rem;margin-top:2.2rem;align-items:start}
.contact-info{display:flex;flex-direction:column;gap:1.25rem}
.contact-item{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:var(--white);border-radius:var(--radius-lg);box-shadow:0 2px 8px rgba(0,0,0,.05);transition:var(--transition)}
.contact-item:not(.contact-item-no-hover):not(.account-contact-home-item):hover{transform:translateX(4px);box-shadow:var(--shadow)}
.contact-item-link{color:inherit;text-decoration:none}
.contact-item-link:hover{color:inherit}
.contact-item-button{width:100%;border:none;text-align:left;font:inherit;cursor:pointer}
.contact-item-button:hover{color:inherit}
.contact-box-editor-list{display:grid;gap:1rem;margin-top:1rem}
.contact-box-editor{padding:1rem 1rem 1.1rem;border-radius:18px;background:#fff;border:1px solid rgba(95,122,102,.12);box-shadow:0 8px 24px rgba(35,29,24,.06)}
.contact-box-editor-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.contact-box-remove{padding:.65rem 1rem}
.contact-box-toolbar{margin-top:1rem;display:flex;justify-content:flex-start}
.contact-mail-trigger{cursor:pointer}
.contact-mail-backdrop{position:fixed;inset:0;background:rgba(20,28,24,.42);z-index:2140;opacity:0;transition:opacity .22s ease}
.contact-mail-backdrop.is-open{opacity:1}
.contact-mail-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(.98);width:min(720px,calc(100vw - 2rem));z-index:2150;background:#fcfaf6;border:1px solid rgba(95,122,102,.12);border-radius:28px;box-shadow:0 30px 70px rgba(35,29,24,.24);overflow:hidden;opacity:0;transition:opacity .22s ease,transform .22s ease}
.contact-mail-modal[hidden],.contact-mail-backdrop[hidden]{display:none}
.contact-mail-modal.is-open{opacity:1;transform:translate(-50%,-50%) scale(1)}
.contact-mail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.2rem 1.25rem;background:linear-gradient(135deg,#5f7a66 0%,#78907b 100%);color:#fff}
.contact-mail-head strong{display:block;font-size:1.05rem;line-height:1.2;margin-bottom:.2rem}
.contact-mail-head span{display:block;font-size:.84rem;line-height:1.55;opacity:.9;max-width:34rem}
.contact-mail-close{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:12px;background:rgba(255,255,255,.16);color:#fff;font-size:1.35rem;cursor:pointer;transition:var(--transition)}
.contact-mail-close:hover{background:rgba(255,255,255,.24)}
.contact-mail-body{display:grid;gap:1rem;padding:1.25rem}
.contact-mail-actions{display:flex;align-items:center;justify-content:flex-end;gap:.85rem;padding:0 1.25rem 1.25rem}
.ci-icon{font-size:1.4rem;width:44px;height:44px;background:var(--ocean-pale);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ci-label{font-size:.75rem;font-weight:600;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase;margin-bottom:.2rem}
.ci-val{font-size:.95rem;font-weight:500;color:var(--text)}
.contact-form-card{background:linear-gradient(180deg,#fff 0%,#fbf6ef 100%);border-radius:28px;padding:2rem;border:1px solid rgba(200,139,90,.14);box-shadow:0 18px 42px rgba(75,64,51,.08)}
.contact-card-copy{color:var(--text-muted);margin:0 0 1.25rem;line-height:1.65}
.booking-request-card{min-width:0}

/* Section */
footer{position:relative;overflow:hidden;background:radial-gradient(circle at 8% 0%,rgba(200,139,90,.16),transparent 34%),linear-gradient(145deg,#292823 0%,var(--stone-dark) 56%,#24251f 100%);color:rgba(255,255,255,.82);padding:clamp(3.5rem,7vw,6.5rem) clamp(1.25rem,4vw,3rem) 2rem}
footer::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(224,176,132,.7),transparent)}
.footer-inner{position:relative;max-width:1280px;margin:0 auto}
.footer-grid{display:grid;gap:clamp(2rem,4vw,4.5rem);align-items:start;margin-bottom:clamp(3rem,5vw,4.75rem)}
.footer-grid--2{grid-template-columns:minmax(0,1.7fr) minmax(210px,1fr)}
.footer-grid--3{grid-template-columns:minmax(260px,1.55fr) repeat(2,minmax(170px,.8fr))}
.footer-grid--4{grid-template-columns:minmax(280px,1.7fr) repeat(3,minmax(150px,.72fr))}
.footer-column{min-width:0}
.footer-brand-column{max-width:33rem}
.footer-brand{display:inline-block;font-family:'Cormorant Garamond',serif;font-size:clamp(1.9rem,3vw,2.5rem);line-height:1.05;color:var(--white);margin-bottom:.8rem;text-decoration:none;letter-spacing:-.02em}
.footer-tagline{font-size:.92rem;color:rgba(255,255,255,.65);line-height:1.75;max-width:28rem}
.footer-title{display:flex;align-items:center;gap:.65rem;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.5);margin:0 0 1.15rem}
.footer-title::before{content:"";width:18px;height:1px;flex:0 0 18px;background:var(--sand);opacity:.85}
.footer-links{display:flex;flex-direction:column;gap:.18rem}
.footer-links a,.footer-link-button{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:38px;padding:.42rem .1rem;border:none;border-bottom:1px solid rgba(255,255,255,.07);background:none;color:rgba(255,255,255,.72);font:inherit;font-size:.88rem;line-height:1.35;text-align:left;text-decoration:none;cursor:pointer;transition:color .2s ease,border-color .2s ease,padding-left .2s ease}
.footer-links a::after,.footer-link-button::after{content:"→";flex:0 0 auto;color:var(--sand);font-size:.9rem;opacity:0;transform:translateX(-5px);transition:opacity .2s ease,transform .2s ease}
.footer-links a:hover,.footer-links a:focus-visible,.footer-link-button:hover,.footer-link-button:focus-visible{padding-left:.35rem;color:var(--white);border-color:rgba(224,176,132,.42);outline:none}
.footer-links a:hover::after,.footer-links a:focus-visible::after,.footer-link-button:hover::after,.footer-link-button:focus-visible::after{opacity:1;transform:translateX(0)}
.footer-links-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.35rem}
.footer-links-pages a,.footer-links-pages .footer-link-button{break-inside:avoid}
.footer-bottom{border-top:1px solid rgba(255,255,255,.11);padding-top:1.35rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.78rem;color:rgba(255,255,255,.46)}
.footer-bottom-copy{line-height:1.6}
.footer-social-links{display:flex;align-items:center;justify-content:flex-start;gap:.45rem;margin-top:1rem}.footer-social-links a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.045);color:rgba(255,255,255,.72);text-decoration:none;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease}.footer-social-links a.is-instagram{border-color:rgba(255,255,255,.3);background:radial-gradient(circle at 30% 105%,#ffd600 0 23%,#ff7a00 38%,#ff0169 62%,#d300c5 78%,#7638fa 100%);color:#fff;box-shadow:0 7px 18px rgba(211,0,197,.18)}.footer-social-links a:hover,.footer-social-links a:focus-visible{color:var(--white);border-color:rgba(224,176,132,.55);background:rgba(255,255,255,.09);transform:translateY(-2px);outline:none}.footer-social-links a.is-instagram:hover,.footer-social-links a.is-instagram:focus-visible{background:radial-gradient(circle at 30% 105%,#ffe23c 0 23%,#ff8b21 38%,#ff1977 62%,#df18cf 78%,#8650fa 100%)}.footer-social-links svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.footer-social-links svg .is-filled{fill:currentColor;stroke:none}.footer-social-links span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.footer-credit{line-height:1.6}.footer-credit a{color:rgba(255,255,255,.68);font-weight:600;text-decoration:none;transition:color .2s ease}.footer-credit a:hover,.footer-credit a:focus-visible{color:var(--sand);outline:none;text-decoration:underline;text-underline-offset:3px}
.footer-cookie-link{border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.045);color:rgba(255,255,255,.72);font:inherit;padding:.45rem .8rem;transition:color .2s ease,border-color .2s ease,background .2s ease}
.footer-cookie-link:hover,.footer-cookie-link:focus-visible{color:var(--white);border-color:rgba(224,176,132,.48);background:rgba(255,255,255,.08);outline:none}

/* Section */
body.cookie-consent-open{overflow:hidden}
.cookie-consent-banner{position:fixed;left:50%;bottom:1.5rem;transform:translateX(-50%);width:min(960px,calc(100vw - 2rem));z-index:2200}
.cookie-consent-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;align-items:center;background:rgba(252,250,246,.98);border:1px solid rgba(95,122,102,.14);border-radius:26px;box-shadow:0 28px 70px rgba(35,29,24,.18);padding:1.15rem 1.2rem 1.2rem;backdrop-filter:blur(18px)}
.cookie-consent-copy{min-width:0;overflow-wrap:anywhere}.cookie-consent-copy strong{display:block;font-size:1.05rem;color:var(--text);margin-bottom:.35rem}
.cookie-consent-copy p{font-size:.9rem;line-height:1.65;color:var(--text-muted);overflow-wrap:anywhere}
.cookie-consent-privacy-link{display:inline-flex;margin-top:.45rem;color:var(--ocean);font-size:.82rem;font-weight:700;text-underline-offset:3px}.cookie-consent-privacy-link-light{color:#fff;opacity:.95}.cookie-consent-privacy-link:hover{opacity:.78}
.cookie-consent-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}
.cookie-consent-actions .btn{min-height:46px;justify-content:center}
.cookie-consent-actions .cookie-consent-choice{min-width:190px;border:1px solid var(--ocean);background:var(--ocean);color:#fff;box-shadow:none}
.cookie-consent-actions .cookie-consent-choice:hover,.cookie-consent-actions .cookie-consent-choice:focus-visible{background:#496553;border-color:#496553;color:#fff;transform:translateY(-1px)}
.cookie-consent-overlay{position:fixed;inset:0;background:rgba(20,28,24,.42);z-index:2205}
.cookie-consent-modal{position:fixed;inset:0;z-index:2210;display:grid;place-items:center;padding:1rem}
.cookie-consent-dialog{width:min(760px,calc(100vw - 2rem));background:#fcfaf6;border:1px solid rgba(95,122,102,.12);border-radius:30px;box-shadow:0 34px 90px rgba(35,29,24,.24);overflow:hidden}
.cookie-consent-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.35rem 1.4rem 1.1rem;background:linear-gradient(135deg,#5f7a66 0%,#78907b 100%);color:#fff}
.cookie-consent-head strong{display:block;font-size:1.1rem;line-height:1.2;margin-bottom:.25rem}
.cookie-consent-head p{font-size:.88rem;line-height:1.6;opacity:.92;max-width:40rem}
.cookie-consent-close{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:none;border-radius:14px;background:rgba(255,255,255,.16);color:#fff;font-size:1.55rem;line-height:1;transition:var(--transition)}
.cookie-consent-close:hover{background:rgba(255,255,255,.24)}
.cookie-consent-list{display:grid;gap:1rem;padding:1.35rem 1.4rem 1.2rem}
.cookie-consent-option{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.05rem;border-radius:22px;background:#fff;border:1px solid rgba(95,122,102,.12);box-shadow:0 10px 24px rgba(35,29,24,.06)}
.cookie-consent-option-copy{display:grid;gap:.3rem}
.cookie-consent-option-copy strong{font-size:.98rem;color:var(--text)}
.cookie-consent-option-copy small{font-size:.84rem;line-height:1.6;color:var(--text-muted)}
.cookie-consent-badge{display:inline-flex;align-items:center;justify-content:center;padding:.55rem .95rem;border-radius:999px;background:var(--ocean-pale);color:var(--ocean);font-size:.78rem;font-weight:700;white-space:nowrap}
.cookie-consent-switch{position:relative;display:inline-flex;width:62px;height:36px;flex-shrink:0}
.cookie-consent-switch input{position:absolute;opacity:0;pointer-events:none}
.cookie-consent-slider{position:absolute;inset:0;border-radius:999px;background:#d8dfd8;transition:var(--transition)}
.cookie-consent-slider::after{content:'';position:absolute;top:4px;left:4px;width:28px;height:28px;border-radius:50%;background:#fff;box-shadow:0 4px 10px rgba(0,0,0,.12);transition:var(--transition)}
.cookie-consent-switch input:checked + .cookie-consent-slider{background:var(--ocean)}
.cookie-consent-switch input:checked + .cookie-consent-slider::after{transform:translateX(26px)}
.cookie-consent-actions-modal{padding:0 1.4rem 1.4rem;justify-content:flex-end}
.cookie-consent-fab{position:fixed;left:1rem;bottom:1rem;z-index:2195;display:inline-flex;align-items:center;gap:.45rem;border:none;border-radius:999px;padding:.8rem 1rem;background:rgba(47,38,27,.9);color:#fff;box-shadow:0 18px 34px rgba(35,29,24,.18);font-size:.82rem;font-weight:600;letter-spacing:.02em;transition:var(--transition)}
.cookie-consent-fab:hover{transform:translateY(-2px);background:rgba(47,38,27,.96)}
.cookie-consent-banner[hidden],
.cookie-consent-overlay[hidden],
.cookie-consent-modal[hidden],
.cookie-consent-fab[hidden]{display:none!important}
.map-consent-shell{position:relative}
.map-consent-shell.is-loaded .map-consent-placeholder{display:none}
.map-consent-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;padding:1.6rem;text-align:center;background:linear-gradient(135deg,#f8f3ea 0%,#f2e8d9 100%);z-index:1}
.map-consent-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:22px;background:rgba(95,122,102,.12);font-size:2rem}
.map-consent-placeholder strong{font-size:1.1rem;color:var(--text)}
.map-consent-placeholder p{max-width:30rem;font-size:.92rem;line-height:1.65;color:var(--text-muted)}
.map-consent-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}

@media (max-width: 900px){
  .cookie-consent-card{grid-template-columns:1fr}
  .cookie-consent-actions{justify-content:flex-start}
}

@media (max-width: 640px){
  .cookie-consent-banner{box-sizing:border-box;left:50%;right:auto;bottom:max(.5rem,env(safe-area-inset-bottom));transform:translateX(-50%);width:calc(100% - 1rem);max-width:none;max-height:calc(100dvh - 1rem);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
  .cookie-consent-card{box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:1rem;border-radius:20px;gap:1rem;overflow:hidden}
  .cookie-consent-actions{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;min-width:0;gap:.6rem}
  .cookie-consent-actions .btn,.cookie-consent-actions .cookie-consent-choice{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0;white-space:normal;text-align:center}
  .cookie-consent-modal{place-items:end center;padding:.5rem}
  .cookie-consent-dialog{width:100%;max-height:calc(100dvh - 1rem);overflow-y:auto;overscroll-behavior:contain;border-radius:22px}
  .cookie-consent-head,.cookie-consent-list,.cookie-consent-actions-modal{padding-left:1rem;padding-right:1rem}
  .cookie-consent-head{gap:.75rem}
  .cookie-consent-head>div{min-width:0}
  .cookie-consent-close{flex:0 0 42px}
  .cookie-consent-option{align-items:flex-start;flex-direction:column}
  .cookie-consent-switch,.cookie-consent-badge{align-self:flex-start}
  .cookie-consent-fab{left:max(.75rem,env(safe-area-inset-left));bottom:max(.75rem,env(safe-area-inset-bottom));width:46px;height:46px;padding:0;justify-content:center}
  .cookie-consent-fab span{display:none}
  .map-consent-actions{width:100%}
  .map-consent-actions .btn{width:100%}
}

/* Section */
#admin-view{position:relative;width:100%;max-width:100vw;background:#f4f5f7;display:none}
#admin-view.active{display:flex;height:100vh;height:100dvh;min-height:0;overflow:hidden}
.admin-sidebar{display:flex;flex-direction:column;width:260px;height:100vh;height:100dvh;min-height:0;background:var(--stone-dark);color:var(--white);padding:2rem 1.5rem;flex-shrink:0;position:sticky;top:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.admin-sidebar,.admin-sidebar>*{transition:width .22s ease,padding .22s ease,opacity .16s ease,visibility .16s ease}
.admin-sidebar-toggle{position:fixed;left:245px;top:50%;z-index:45;display:grid;place-items:center;width:30px;height:40px;padding:0;border:1px solid rgba(95,122,102,.16);border-left:0;border-radius:0 10px 10px 0;background:rgba(255,255,255,.97);color:var(--stone-dark);box-shadow:0 7px 18px rgba(35,29,24,.1);cursor:pointer;transform:translateY(-50%);transition:left .22s ease,transform .22s ease,background .18s ease,color .18s ease,box-shadow .18s ease}
.admin-sidebar-toggle:hover{background:var(--sand-pale);color:var(--ocean);box-shadow:0 8px 20px rgba(35,29,24,.14)}
.admin-sidebar-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(39,120,149,.18),0 10px 28px rgba(35,29,24,.14)}
.admin-sidebar-toggle svg{grid-area:1/1;width:15px;height:15px;margin:auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s ease}
.admin-sidebar-toggle-mobile-icon{display:none}
.admin-sidebar-toggle-mobile-close-icon{display:none}
.admin-sidebar-backdrop,.admin-mobile-sidebar-tools{display:none}
#admin-view.is-sidebar-collapsed .admin-sidebar{width:0;padding-left:0;padding-right:0;overflow:hidden;scrollbar-gutter:auto}
#admin-view.is-sidebar-collapsed .admin-sidebar>*{opacity:0;visibility:hidden;pointer-events:none}
#admin-view.is-sidebar-collapsed .admin-sidebar-toggle{left:.75rem;border:1px solid rgba(95,122,102,.16);border-radius:11px}
#admin-view.is-sidebar-collapsed .admin-sidebar-toggle svg{transform:rotate(180deg)}
.admin-sidebar-version{display:grid;justify-items:start;gap:.28rem;margin-top:auto;padding:1.25rem .35rem 0;color:rgba(255,255,255,.42);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.admin-sidebar-version>div{display:flex;align-items:center;gap:.4rem}.admin-sidebar-version strong{color:rgba(255,255,255,.7);font-size:.72rem;letter-spacing:.04em}.admin-sidebar-version a{color:rgba(255,255,255,.46);font-size:.58rem;letter-spacing:.045em;text-decoration:none;text-transform:none}.admin-sidebar-version a:hover,.admin-sidebar-version a:focus-visible{color:rgba(255,255,255,.78);outline:none;text-decoration:underline;text-underline-offset:3px}
.admin-brand{margin-bottom:2.75rem}
.admin-logo{font-family:'Cormorant Garamond',serif;font-size:1.4rem;margin-bottom:.35rem;line-height:1.2}
.admin-brand .admin-logo:last-child{margin-bottom:0}
.admin-sub{font-size:.72rem;opacity:.65;letter-spacing:.1em;text-transform:uppercase;margin-bottom:0}
.admin-nav{display:flex;flex-direction:column;gap:.3rem}
.admin-nav-group{padding:.2rem 0 .8rem}
.admin-nav-group:first-child .admin-nav-group-title{padding-top:.85rem}
.admin-nav-group-title{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.42);padding:.5rem 1rem .6rem}
.admin-nav-entry{display:grid;gap:.3rem}
.admin-nav-entry-main{display:flex;align-items:center;gap:.2rem;padding:.18rem .22rem;border-radius:18px;background:transparent;transition:var(--transition)}
.admin-nav-entry-main:hover{background:rgba(255,255,255,.08)}
.admin-nav-entry.active .admin-nav-entry-main{background:var(--ocean)}
.admin-nav-entry-main .admin-nav-item{flex:1;border-radius:14px}
.admin-nav-item{display:flex;align-items:center;gap:.75rem;padding:.78rem .95rem;border-radius:var(--radius);font-size:.88rem;background:transparent;border:none;color:rgba(255,255,255,.65);width:100%;text-align:left;cursor:pointer;transition:var(--transition)}
.admin-nav-item:hover,.admin-nav-item.active{background:transparent;color:var(--white)}
.admin-autosave-indicator{position:fixed;top:1rem;left:50%;transform:translateX(-50%);z-index:2200;padding:.8rem 1rem;border-radius:14px;font-size:.82rem;font-weight:600;box-shadow:0 16px 34px rgba(35,29,24,.14);background:#fff;color:var(--text);text-align:center;min-width:220px}
.admin-autosave-indicator.is-dirty{background:#f8f2e9;color:#94643a}
.admin-autosave-indicator.is-saving{background:#e9f4f8;color:#1a6b8a}
.admin-autosave-indicator.is-saved{background:#e8f6ef;color:#2e7d4f}
.admin-autosave-indicator.is-failed{background:#fde8e5;color:#c0392b}
.admin-autosave-enabled .admin-manual-save{display:none!important}
.admin-i18n-field{display:grid;gap:.55rem}
.admin-i18n-field-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;min-width:0}
.admin-i18n-field-head{position:relative;z-index:3}
.admin-i18n-tabs{display:inline-flex;align-items:flex-end;gap:.2rem;padding:.15rem .15rem 0;background:transparent;border:none;border-bottom:1px solid rgba(95,122,102,.18);box-shadow:none;max-width:100%;flex:0 1 auto}
.admin-i18n-tabs{position:relative;z-index:4;pointer-events:auto;margin-left:auto}
.admin-i18n-tab{position:relative;border:none;background:transparent;color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.12em;padding:.62rem .9rem .58rem;border-radius:12px 12px 0 0;transition:var(--transition);cursor:pointer;min-width:52px;justify-content:center;display:inline-flex;text-transform:uppercase}
.admin-i18n-tab{pointer-events:auto}
.admin-i18n-tab::after{content:'';position:absolute;left:.7rem;right:.7rem;bottom:0;height:2px;border-radius:999px;background:transparent;transition:var(--transition)}
.admin-i18n-tab:hover{background:rgba(95,122,102,.06);color:var(--text)}
.admin-i18n-tab.active{background:#fff;color:var(--ocean);box-shadow:0 -1px 0 rgba(95,122,102,.12),0 10px 24px rgba(35,29,24,.06)}
.admin-i18n-tab.active::after{background:var(--sand)}
.admin-i18n-tabs-placeholder{visibility:hidden;pointer-events:none;user-select:none}
.admin-richtext-toolbar{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;margin:.65rem 0 .75rem;padding:.7rem .8rem;border:1px solid rgba(95,122,102,.12);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,244,237,.92));width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}
.admin-richtext-toolbar-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-right:.15rem;flex:0 0 auto}
.admin-richtext-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border:1px solid rgba(95,122,102,.12);border-radius:12px;background:#fff;color:var(--text);cursor:pointer;transition:var(--transition);box-shadow:none}
.admin-richtext-btn:hover{border-color:rgba(26,107,138,.18);color:var(--ocean);transform:translateY(-1px)}
.admin-richtext-btn.active{background:var(--ocean-pale);border-color:rgba(26,107,138,.24);color:var(--ocean)}
.admin-richtext-btn strong,.admin-richtext-btn em,.admin-richtext-btn u{font-size:.96rem;line-height:1}
.admin-richtext-select{min-width:0;height:38px;border:1px solid rgba(95,122,102,.12);border-radius:12px;background:#fff;padding:0 .85rem;color:var(--text);font:inherit;flex:1 1 150px;max-width:100%}
.admin-richtext-select:focus,.admin-richtext-btn:focus-visible{outline:none;border-color:rgba(26,107,138,.28);box-shadow:0 0 0 3px rgba(26,107,138,.10)}
.admin-richtext-panel{display:flex;flex-direction:column;gap:.6rem}
.admin-i18n-control[hidden],.admin-richtext-panel[hidden]{display:none !important}
.admin-richtext-editor{min-height:52px;padding:.95rem 1rem;border:1px solid rgba(95,122,102,.14);border-radius:16px;background:#fff;color:var(--text);font:inherit;line-height:1.55;outline:none;transition:var(--transition);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.admin-richtext-editor.is-multiline{min-height:148px;white-space:pre-wrap}
.admin-richtext-editor.is-singleline{min-height:52px;white-space:nowrap;overflow-x:auto;overflow-y:hidden}
.admin-richtext-editor:focus{border-color:rgba(26,107,138,.28);box-shadow:0 0 0 3px rgba(26,107,138,.10)}
.admin-richtext-editor:empty::before{content:attr(data-placeholder);color:rgba(88,72,54,.48)}
.admin-richtext-editor strong,.admin-richtext-editor em,.admin-richtext-editor u,.admin-richtext-editor span{font:inherit}
.admin-i18n-control[hidden]{display:none!important}
#admin-view .form-row{align-items:start}
#admin-view .form-group > .form-label{min-height:2.85rem;display:flex;align-items:flex-end}
#admin-view .admin-i18n-field-head{min-height:2.85rem;align-items:flex-end}
#admin-view .admin-i18n-field-head .form-label{margin-bottom:0}
#admin-view .amenity-picker-field{align-items:stretch;flex-wrap:wrap}
#admin-view .amenity-picker-field .form-input{min-height:48px}
#admin-view .icon-picker-open{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
#admin-view .icon-picker-open[role="button"]{cursor:pointer;user-select:none}
#admin-view .icon-picker-open[role="button"]:hover{border-color:rgba(26,107,138,.22);box-shadow:0 14px 28px rgba(26,107,138,.10);transform:translateY(-1px)}
#admin-view .icon-picker-open[role="button"]:focus-visible{outline:none;border-color:rgba(26,107,138,.28);box-shadow:0 0 0 3px rgba(26,107,138,.12),0 14px 28px rgba(26,107,138,.10)}
.admin-nav-toggle{position:relative;width:34px;height:34px;border:none;border-radius:12px;background:transparent;color:rgba(255,255,255,.72);cursor:pointer;transition:var(--transition);flex-shrink:0;font-size:0;line-height:0}
.admin-nav-toggle::before{content:"\25BE";display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:1rem;line-height:1;color:currentColor;transition:transform .18s ease}
.admin-nav-toggle:hover{background:rgba(255,255,255,.12);color:var(--white)}
.admin-nav-entry.active .admin-nav-toggle{background:rgba(255,255,255,.14);color:var(--white)}
.admin-nav-toggle[aria-expanded="true"]::before{transform:rotate(180deg)}
.admin-nav-submenu{display:none;gap:.26rem;padding:.1rem 0 .2rem .55rem}
.admin-nav-submenu.open{display:grid}
.admin-nav-subgroup{display:grid;gap:.18rem;margin:.3rem 0 .15rem}
.admin-nav-subgroup:first-child{margin-top:.05rem}
.admin-nav-subgroup-title{padding:.4rem .95rem .18rem;color:rgba(255,255,255,.38);font-size:.66rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.admin-nav-subitem{display:block;padding:.58rem .95rem;border-radius:14px;color:rgba(255,255,255,.62);text-decoration:none;font-size:.82rem;transition:var(--transition)}
.admin-nav-subitem:hover,.admin-nav-subitem.active{background:rgba(255,255,255,.08);color:var(--white)}
.security-settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.security-settings-heading .admin-section-title{margin-bottom:.2rem}
.security-settings-heading p{margin:0;color:var(--muted);max-width:720px}
.security-settings-heading .btn{flex:0 0 auto}
@media (max-width:700px){.security-settings-heading{align-items:stretch;flex-direction:column}.security-settings-heading .btn{width:100%}}
.admin-topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:.85rem;flex-wrap:wrap}
.admin-maintenance-quick-form{margin:0}
.admin-maintenance-quick{display:flex;align-items:center;gap:.85rem;padding:.45rem .55rem .45rem .9rem;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 28px rgba(0,0,0,.08);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}
.admin-maintenance-quick-label{display:grid;gap:.08rem;text-decoration:none}
.admin-maintenance-quick-title{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text)}
.admin-maintenance-quick-state{font-size:.78rem;color:var(--text-muted)}
.admin-switch{position:relative;display:inline-flex;width:52px;height:32px;flex-shrink:0;cursor:pointer}
.admin-switch input{position:absolute;opacity:0;pointer-events:none}
.admin-switch-slider{position:relative;display:block;width:100%;height:100%;border-radius:999px;background:#d9ddd7;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);transition:background .18s ease,box-shadow .18s ease}
.admin-switch-slider::after{content:'';position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 5px 14px rgba(0,0,0,.16);transition:transform .18s ease}
.admin-switch input:checked + .admin-switch-slider{background:#39b86a}
.admin-switch input:checked + .admin-switch-slider::after{transform:translateX(20px)}
.admin-switch input:focus-visible + .admin-switch-slider{box-shadow:0 0 0 3px rgba(39,120,149,.15),inset 0 0 0 1px rgba(0,0,0,.06)}
.admin-lang-switcher{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.admin-lang-link{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:.35rem .65rem;border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:var(--transition)}
.admin-lang-link:hover,.admin-lang-link.active{background:var(--ocean);color:#fff}
.admin-lang-link-light{background:#fff;border:1px solid rgba(0,0,0,.08);color:var(--text);box-shadow:0 10px 24px rgba(0,0,0,.06)}
.admin-user-menu{position:relative;display:flex;align-items:center;justify-content:flex-end}
.admin-user-trigger{list-style:none;width:48px;height:48px;border-radius:999px;border:1px solid rgba(95,122,102,.14);background:rgba(255,255,255,.92);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#5c4676;box-shadow:0 10px 24px rgba(0,0,0,.05);transition:var(--transition)}.admin-user-trigger svg{display:block;width:20px;height:20px;fill:currentColor}
.admin-user-trigger:hover{background:#fff;transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,0,0,.08)}
.admin-user-trigger:focus-visible{outline:none;background:#fff;transform:translateY(-1px);box-shadow:0 0 0 3px rgba(39,120,149,.14),0 14px 28px rgba(0,0,0,.08)}
.admin-user-menu-panel{position:absolute;z-index:2;top:calc(100% + .8rem);right:0;min-width:260px;padding:1rem 1rem 1rem;border-radius:22px;background:rgba(255,255,255,.98);border:1px solid rgba(0,0,0,.06);box-shadow:0 26px 48px rgba(0,0,0,.12);display:grid;gap:.4rem;opacity:0;visibility:hidden;transform:translateY(-10px) scale(.94);transform-origin:top right;transition:opacity .18s ease,transform .22s ease,visibility .22s ease;pointer-events:none}
.admin-user-menu-panel::before{content:'';position:absolute;right:0;top:-.8rem;width:100%;height:.8rem}
.admin-user-menu:hover .admin-user-menu-panel,.admin-user-menu:focus-within .admin-user-menu-panel,.admin-user-menu.is-open .admin-user-menu-panel{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}
.admin-user-menu:hover .admin-user-trigger,.admin-user-menu:focus-within .admin-user-trigger{background:#fff;transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,0,0,.08)}
.admin-user-menu-name{font-size:1rem;font-weight:700;color:var(--text);line-height:1.2}
.admin-user-menu-subline{font-size:.82rem;color:var(--text-muted);line-height:1.45}
.admin-user-menu-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.55rem;padding-top:.7rem;border-top:1px solid rgba(0,0,0,.06)}
.admin-topbar-logout{display:flex;align-items:center}
.admin-logout-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:.6rem .9rem;border:none;border-radius:12px;background:#f7eceb;color:#b34136;font-size:.82rem;font-weight:700;cursor:pointer;transition:var(--transition)}
.admin-logout-btn:hover{background:#f3d9d6;color:#8f2d24}
.admin-nav > a.admin-nav-item,.admin-nav > form[method="post"][style*="margin-top:auto"]{display:none}
.admin-nav-icon{font-size:1rem;width:20px;text-align:center}
.admin-main{flex:1 1 0;min-width:0;height:100vh;height:100dvh;min-height:0;padding:0 2.5rem 2.5rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;box-sizing:border-box}
.admin-topbar{position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 -2.5rem 1.45rem;padding:2.55rem 2.5rem 1.2rem;background:#f4f5f7;border-bottom:1px solid rgba(95,122,102,.08)}
.admin-topbar-meta{display:flex;align-items:center;min-height:42px}
.admin-topbar-context{font-size:1.12rem;font-weight:700;color:var(--text);line-height:1.2;padding-top:.2rem}
.admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}
.admin-header-actions-only{justify-content:flex-end;margin-bottom:1rem}
.admin-page-title{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:400;color:var(--text)}
.admin-subpage-panel{display:none}
.admin-subpage-panel.active{display:block}
.maintenance-settings-row{align-items:stretch}
.maintenance-switch-card{padding:1rem 1.05rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 10px 28px rgba(20,27,33,.04)}
.maintenance-switch-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.25rem}
.maintenance-switch-card .form-label{margin:0}
.account-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
.account-topbar-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}
.portal-home-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;flex:0 0 44px;padding:0;border-radius:14px;text-decoration:none;transition:var(--transition)}
.portal-home-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.account-home-link,.admin-home-link,.admin-refresh-link{background:#fff;color:var(--ocean);border:1px solid rgba(26,107,138,.16);box-shadow:0 10px 24px rgba(0,0,0,.06)}
.account-home-link:hover,.admin-home-link:hover,.admin-refresh-link:hover{background:#f9f5ee;color:var(--ocean);transform:translateY(-1px)}
.account-home-link:focus-visible,.admin-home-link:focus-visible,.admin-refresh-link:focus-visible{outline:3px solid rgba(26,107,138,.2);outline-offset:2px}
.account-lang-switcher{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 24px rgba(0,0,0,.06)}
.account-lang-switcher .lang-link{background:transparent!important;color:var(--text)!important;border:1px solid transparent}
.account-lang-switcher .lang-link.active{background:var(--ocean)!important;color:#fff!important;border-color:var(--ocean)}
.account-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:1.5rem;align-items:start;min-width:0}
.account-main,.account-sidebar{display:grid;gap:1.25rem;min-width:0}
.account-customer-card{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap;padding:1rem 1.1rem;border-radius:var(--radius);background:rgba(255,255,255,.72);border:1px solid rgba(95,122,102,.12)}
.account-booking-list{display:grid;gap:1rem}
.account-booking-card{background:var(--white);border-radius:24px;box-shadow:0 2px 12px rgba(0,0,0,.06);border:1px solid rgba(95,122,102,.08);overflow:hidden}
.account-booking-card[open]{box-shadow:0 16px 34px rgba(46,57,49,.08);border-color:rgba(95,122,102,.16)}
.account-booking-card.is-cancelled{position:relative;background:#fbf9f7;border-color:rgba(179,78,67,.22);box-shadow:0 10px 28px rgba(88,55,48,.06)}
.account-booking-card.is-cancelled::before{content:'';position:absolute;inset:0 auto 0 0;width:5px;background:#b65f56}
.account-booking-card.is-cancelled .account-booking-summary{padding-left:1.45rem;background:linear-gradient(135deg,#fff8f6,#f8f4f1)}
.account-booking-card.is-cancelled[open] .account-booking-summary{border-bottom-color:rgba(179,78,67,.12)}
.account-booking-card.is-cancelled .booking-summary,.account-booking-card.is-cancelled .detail-card{background:#fff;border:1px solid rgba(179,78,67,.12);box-shadow:none}
.account-booking-card.is-cancelled .booking-summary{color:var(--text);border-radius:18px;padding:1.25rem;height:auto;overflow:visible}
.account-booking-card.is-cancelled .booking-summary::before{display:none}
.account-booking-card.is-cancelled .summary-title{margin-bottom:1rem;color:var(--text)}
.account-booking-card.is-cancelled .summary-line{border-bottom-color:rgba(95,122,102,.12);color:var(--text)}
.account-booking-card.is-cancelled .summary-line span:first-child{color:var(--text-muted)}
.account-booking-card.is-cancelled .summary-line span:last-child{color:var(--text)}
.account-booking-grid.is-cancelled{grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr)}
.account-cancelled-date{color:#874b45}.account-cancelled-action-state{display:grid;gap:.35rem;padding:1rem;border:1px solid rgba(179,78,67,.12);border-radius:14px;background:#fcf4f2;color:#763e38}.account-cancelled-action-state strong{font-size:.92rem}.account-cancelled-action-state span{font-size:.82rem;line-height:1.55;color:#87534e}
.account-booking-summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;list-style:none;padding:1.15rem 1.2rem;cursor:pointer;transition:background .18s ease,border-color .18s ease}
.account-booking-summary::-webkit-details-marker{display:none}
.account-booking-summary::marker{content:''}
.account-booking-summary:hover{background:#fbfaf7}
.account-booking-card[open] .account-booking-summary{border-bottom:1px solid rgba(95,122,102,.1);background:#fbfcfa}
.account-booking-identity{display:grid;gap:.18rem;min-width:0}.account-booking-identity>strong{font-size:1rem;overflow-wrap:anywhere}.account-booking-kicker{color:var(--text-muted);font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.account-booking-card.is-cancelled .account-booking-kicker{color:#a05249}
.account-booking-compact-facts{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.35rem}.account-booking-compact-facts span{display:inline-flex;align-items:center;min-height:1.65rem;padding:.22rem .55rem;border-radius:999px;background:rgba(95,122,102,.08);color:#52665a;font-size:.73rem;font-weight:700}.account-booking-card.is-cancelled .account-booking-compact-facts span{background:rgba(179,78,67,.08);color:#885049}
.account-booking-summary-side{display:flex;align-items:center;justify-content:flex-end;gap:.8rem;min-width:0}.account-booking-chevron{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#f0f3ef;color:var(--ocean);transition:transform .2s ease,background .18s ease}.account-booking-chevron svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.account-booking-card[open] .account-booking-chevron{transform:rotate(180deg);background:#e6eee8}.account-booking-card.is-cancelled .account-booking-chevron{background:#f5e5e2;color:#a44f47}
.account-booking-badges{display:flex;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}
.account-badge{display:inline-flex;align-items:center;padding:.45rem .75rem;border-radius:999px;background:rgba(95,122,102,.1);font-size:.78rem;color:var(--ocean);font-weight:600}
.account-booking-body{padding:1.2rem}
.account-booking-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);gap:1rem}
.account-actions{display:grid;gap:.85rem}
.account-cancel-form{display:grid;gap:.65rem}
.account-amenities{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}
.account-amenity{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .7rem;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(95,122,102,.12);font-size:.85rem}
.booking-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:0 0 1.25rem}
.booking-step{display:flex;align-items:center;gap:.65rem;padding:.85rem .95rem;border-radius:18px;background:#f7f4ef;border:1px solid rgba(0,0,0,.05);color:var(--text-muted)}
.booking-step span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:rgba(95,122,102,.12);color:var(--ocean);font-weight:700;flex-shrink:0}
.booking-step strong{font-size:.9rem;color:var(--text);font-weight:600}
.booking-step.active{background:#eef5f1;border-color:rgba(95,122,102,.18)}
.admin-header-dashboard{margin-bottom:1.2rem}
.dashboard-settings-trigger{min-height:42px;padding:.65rem 1rem;font-size:.84rem}
.dashboard-settings-modal-card{width:min(860px,100%)}
.dashboard-settings-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-bottom:1rem}
.dashboard-settings-field{display:grid;gap:.35rem}
.dashboard-settings-field span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.dashboard-widget-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.dashboard-widget-option{display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(0,0,0,.06);background:#f8f6f1;cursor:pointer}
.dashboard-widget-option input{margin-top:.22rem}
.dashboard-widget-option-copy{display:grid;gap:.18rem}
.dashboard-widget-option-title{font-size:.94rem;font-weight:700;color:var(--text)}
.dashboard-widget-option-text{font-size:.84rem;color:var(--text-muted);line-height:1.55}
.dashboard-settings-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem}
.dashboard-settings-save-status{align-self:center;margin-right:auto;color:var(--text-muted);font-size:.78rem;line-height:1.4}.dashboard-settings-save-status[data-state="saving"]{color:#80622f}.dashboard-settings-save-status[data-state="saved"]{color:#3f664a}.dashboard-settings-save-status[data-state="error"]{color:#a23e35}.dashboard-settings-save-status[data-state="saved"]:before{content:"• ";color:#4f8a61}
.media-library-scroll{display:block;overflow:visible}
.media-library-scroll::-webkit-scrollbar{width:10px}
.media-library-scroll::-webkit-scrollbar-thumb{background:rgba(26,107,138,.24);border-radius:999px}
.media-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.1rem}
.media-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.15rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.07)}.media-section-head .admin-section-title{margin:0}.media-section-head p{margin:.3rem 0 0;color:var(--text-muted);font-size:.86rem;line-height:1.55}.media-library-head form{flex:0 0 auto}.media-library-toolbar{display:flex;align-items:center;gap:.75rem;min-height:36px;margin-bottom:1rem;padding:.7rem .85rem;border-radius:14px;background:#f8f6f1}.media-library-toolbar .form-help-text{margin:0}.media-upload-form{display:grid;gap:.15rem}.media-upload-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:1rem}.media-card{min-width:0;padding:1rem;border:1px solid rgba(0,0,0,.07);border-radius:20px;background:linear-gradient(180deg,#fff 0%,#fcfaf6 100%);box-shadow:0 8px 24px rgba(35,29,24,.04)}.media-card-drag-hint{display:flex;align-items:center;gap:.4rem;margin-bottom:.65rem;font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted)}.media-card-drag-hint span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#f2eee7;color:var(--ocean)}.media-card-preview{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;background:#f3f0ea}.media-card-meta{display:grid;grid-template-rows:2.65rem 3.5rem;align-content:start;overflow:hidden}.media-card-file-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.media-card-path{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;height:3.5rem;box-sizing:border-box;margin-top:.35rem;padding:.5rem .6rem;border-radius:9px;background:#f7f5f1;color:var(--text-muted);font:500 .72rem/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden;overflow-wrap:anywhere}.media-card-usage{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:.45rem;height:172px;margin-top:.65rem;padding:.75rem;border:1px solid rgba(190,138,20,.16);border-radius:14px;background:#fffbeb;overflow:hidden}.media-card-usage.is-unused{grid-template-rows:auto 1fr;border-color:rgba(95,122,102,.16);background:#f5f8f5}.media-card-usage-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.media-card-usage-head small{font-size:.7rem;color:#8b6a12}.media-card-usage.is-unused .media-card-usage-head small{color:var(--ocean)}.media-card-usage-note{margin:0;color:var(--text-muted);font-size:.74rem;line-height:1.4}.media-card-usage-list{display:grid;align-content:start;gap:.4rem;min-height:0;overflow:auto;font-size:.8rem;color:var(--text-muted);line-height:1.4;padding-right:.15rem}.media-card-usage-item{min-width:0}.media-usage-link,.media-usage-static{display:flex;align-items:center;justify-content:space-between;gap:.55rem;min-width:0;padding:.5rem .6rem;border-radius:10px;background:#fff}.media-usage-link{color:var(--ocean);text-decoration:none;border:1px solid rgba(26,107,138,.12);transition:var(--transition)}.media-usage-link span,.media-usage-static>span{min-width:0;overflow-wrap:anywhere}.media-usage-link b{font-size:.95rem}.media-usage-link:hover{color:var(--ocean-light);border-color:rgba(26,107,138,.35);transform:translateX(2px)}.media-usage-static{align-items:flex-start;flex-direction:column;border:1px solid rgba(0,0,0,.05);color:var(--text)}.media-usage-static small{color:var(--text-muted);font-size:.7rem}.media-replacement{margin:0}.media-replacement>summary{width:100%;justify-content:center;cursor:pointer}.media-replacement-form{display:grid;gap:.2rem;margin-top:.75rem}.media-card :is(input,select,textarea,button,a,label,details,summary,form){cursor:auto}.media-card button,.media-card a,.media-card label,.media-card summary{cursor:pointer}
.media-upload-form>.btn{justify-self:start;width:auto;min-width:170px}
@media(max-width:700px){.media-section-head{align-items:stretch;flex-direction:column}.media-library-head form,.media-library-head .btn{width:100%}.media-upload-grid{grid-template-columns:1fr}.media-library-grid{grid-template-columns:1fr}}
.dashboard-widget-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1.2rem;align-items:stretch}
.dashboard-sortable-card{position:relative;display:grid;grid-column:span 6;align-content:start;gap:.6rem;min-width:0;transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease}
.dashboard-sortable-card-half{grid-column:span 6}
.dashboard-sortable-card-wide{grid-column:1 / -1}
.dashboard-sortable-card.dragging{opacity:.5}
.dashboard-sortable-card.drag-over{transform:translateY(-2px)}
.dashboard-sortable-card.drag-over-side{box-shadow:0 0 0 3px rgba(26,107,138,.2),0 14px 34px rgba(45,35,24,.08)}
.dashboard-sortable-card.drag-over-stack{box-shadow:0 0 0 3px rgba(200,139,90,.24),0 14px 34px rgba(45,35,24,.08)}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.dashboard-kpi-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}
.dashboard-kpi-card{display:grid;align-content:start;min-height:136px;padding:1.15rem 1.2rem;border:1px solid rgba(0,0,0,.05);box-shadow:0 14px 34px rgba(0,0,0,.05)}
.dashboard-kpi-head{display:flex;align-items:center;justify-content:flex-start;gap:1rem;margin-bottom:.8rem}
.dashboard-kpi-badge{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.dashboard-kpi-card .kpi-val{font-size:2.6rem}
.dashboard-kpi-card .kpi-label{margin-top:.45rem}
.dashboard-panel{display:flex;flex-direction:column;height:100%;margin-bottom:0;padding:1.45rem 1.45rem 1.5rem;border:1px solid rgba(0,0,0,.05);box-shadow:0 14px 34px rgba(0,0,0,.05);background:linear-gradient(180deg,#fff 0%,#fcfaf6 100%)}
.dashboard-overview-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.9fr);gap:1rem;align-items:stretch}
.dashboard-status-panel{display:grid;gap:.8rem;padding:1.15rem 1.1rem;border-radius:20px;background:#faf8f4;border:1px solid rgba(0,0,0,.05)}
.dashboard-status-heading{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.dashboard-status-grid{display:grid;gap:.75rem}
.dashboard-status-card{display:grid;gap:.18rem;padding:.9rem .95rem;border-radius:16px;border:1px solid rgba(0,0,0,.05);background:#fff}
.dashboard-status-card-ok{border-color:rgba(79,139,95,.18);background:#f7fbf8}
.dashboard-status-card-warn{border-color:rgba(211,160,98,.18);background:#fffaf2}
.dashboard-status-card-muted{border-color:rgba(0,0,0,.05);background:#fff}
.dashboard-status-label{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.dashboard-status-value{font-size:1.02rem;color:var(--text);line-height:1.3}
.dashboard-widget-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}
.dashboard-widget-title{font-size:1.02rem;font-weight:700;color:var(--text)}
.dashboard-widget-head-actions{display:flex;align-items:center;gap:.55rem;margin-left:auto}.dashboard-widget-head-actions .action-btn{white-space:nowrap}
.dashboard-drag-handle{appearance:none;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.28rem;min-width:auto;height:24px;padding:0 .1rem;border:none;background:transparent;box-shadow:none;cursor:grab;transition:opacity .16s ease,transform .16s ease;flex-shrink:0;opacity:.62}
.dashboard-drag-handle:hover{opacity:1;transform:translateY(-1px)}
.dashboard-drag-handle:focus-visible{outline:none;opacity:1}
.dashboard-drag-handle span{display:block;width:4px;height:4px;border-radius:999px;background:rgba(26,107,138,.62)}
.dashboard-drag-handle-floating{position:absolute;top:.95rem;right:1rem;z-index:3;padding:.2rem .15rem;border-radius:999px;background:rgba(255,255,255,.86);backdrop-filter:blur(6px)}
.dashboard-sortable-card.dragging .dashboard-drag-handle{cursor:grabbing}
.dashboard-sortable-card.dragging .dashboard-drag-handle,
.dashboard-sortable-card:hover .dashboard-drag-handle{opacity:.92}
.dashboard-order-save{display:none}
.dashboard-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.dashboard-quick-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.dashboard-quick-card{display:grid;align-content:start;gap:.45rem;min-height:136px;padding:1.2rem 1.2rem;border-radius:20px;background:#faf8f4;border:1px solid rgba(0,0,0,.05);text-decoration:none;color:var(--text);box-shadow:none;transition:var(--transition)}
.dashboard-quick-card:hover{transform:translateY(-1px);border-color:rgba(26,107,138,.16);box-shadow:0 10px 24px rgba(26,107,138,.06)}
.dashboard-quick-title{font-size:1rem;font-weight:600;color:var(--text)}
.dashboard-quick-text{font-size:.88rem;line-height:1.6;color:var(--text-muted)}
.dashboard-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.dashboard-activity-column{display:grid;align-content:start;gap:.8rem;min-width:0}
.dashboard-activity-heading-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.dashboard-activity-heading{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.dashboard-activity-count{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 .55rem;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.06);font-size:.78rem;font-weight:700;color:var(--text)}
.dashboard-list-compact{gap:.7rem}
.dashboard-list-compact .dashboard-list-item{min-height:84px;padding:.9rem 1rem}
.dashboard-list{display:grid;gap:.85rem}
.dashboard-list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;min-height:96px;padding:1rem 1.05rem;border-radius:18px;background:#faf8f4;border:1px solid rgba(0,0,0,.05)}
.dashboard-list-item.is-focus{background:#fff;box-shadow:0 14px 28px rgba(26,107,138,.08);border-color:rgba(26,107,138,.18)}
.booking-customer-link{transition:color .16s ease,text-decoration-color .16s ease}
.booking-customer-link:hover{color:var(--ocean)}
.admin-booking-customer-row td{transition:background .16s ease}
.admin-booking-row-focus td{background:#f3f8fa}
.dashboard-list-main{display:grid;gap:.25rem;min-width:0}
.dashboard-list-title{font-size:.96rem;font-weight:700;color:var(--text);line-height:1.35}
.dashboard-customer-link{color:var(--text);text-decoration:none;border-bottom:1px solid transparent;transition:var(--transition)}
.dashboard-customer-link:hover{color:var(--ocean);border-bottom-color:rgba(26,107,138,.35)}
.dashboard-list-meta{font-size:.84rem;color:var(--text-muted);line-height:1.5}
.dashboard-list-side{display:grid;justify-items:end;gap:.45rem;flex-shrink:0}
.dashboard-list-amount{font-size:.9rem;font-weight:700;color:var(--text)}
.dashboard-list-item.is-cancelled-payment{border-color:rgba(179,78,67,.2);background:#fff9f7}.dashboard-payment-badges{display:flex;justify-content:flex-end;gap:.35rem;flex-wrap:wrap}.dashboard-payment-amounts{display:flex;justify-content:flex-end;gap:.9rem;flex-wrap:wrap}.dashboard-payment-amounts>span{display:grid!important;justify-items:end;gap:.05rem}.dashboard-payment-amounts small{font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.dashboard-payment-amounts strong{font-size:.88rem;color:var(--text)}.dashboard-payment-amounts .is-refund strong{color:#a4473e}
.dashboard-empty-state{padding:1rem 1.05rem;border-radius:16px;background:#faf8f4;color:var(--text-muted);font-size:.9rem;border:1px solid rgba(0,0,0,.04)}
.dashboard-task-list{display:grid;gap:.85rem}
.dashboard-task-card{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;min-height:108px;padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(0,0,0,.05);background:#faf8f4;box-shadow:0 8px 18px rgba(20,27,33,.04)}
.dashboard-task-card-ok{background:#f7fbf8}
.dashboard-task-card-warn{background:#fffaf2}
.dashboard-task-card-muted{background:#f8f9fb}
.dashboard-task-copy{display:grid;gap:.18rem}
.dashboard-task-title{font-size:.95rem;font-weight:700;color:var(--text)}
.dashboard-task-text{font-size:.84rem;color:var(--text-muted);line-height:1.55}
.dashboard-task-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.65rem .95rem;border-radius:12px;background:#fff;color:var(--text);text-decoration:none;border:1px solid rgba(0,0,0,.06);font-size:.84rem;font-weight:700;white-space:nowrap}
.dashboard-task-link:hover{border-color:rgba(26,107,138,.18);color:var(--ocean)}
.dashboard-timeline-list{display:grid;gap:.7rem}
.dashboard-timeline-item{display:grid;grid-template-columns:88px 10px minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.95rem 1rem;border:1px solid rgba(0,0,0,.05);border-radius:16px;background:#faf8f4;color:var(--text);text-decoration:none;transition:var(--transition)}
.dashboard-timeline-item:hover{background:#fff;border-color:rgba(26,107,138,.2);box-shadow:0 10px 22px rgba(26,107,138,.07)}
.dashboard-timeline-date{font-size:.82rem;font-weight:700;color:var(--text-muted)}
.dashboard-timeline-marker{width:10px;height:10px;border-radius:50%;background:#789180;box-shadow:0 0 0 4px rgba(120,145,128,.13)}
.dashboard-timeline-marker--arrival{background:#4f8b5f;box-shadow:0 0 0 4px rgba(79,139,95,.13)}
.dashboard-timeline-marker--departure{background:#d3a062;box-shadow:0 0 0 4px rgba(211,160,98,.13)}
.dashboard-timeline-copy{display:grid;gap:.16rem;min-width:0}
.dashboard-timeline-copy strong{font-size:.95rem;line-height:1.25}
.dashboard-timeline-copy span{font-size:.83rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-panel-link{font-size:.84rem;font-weight:700;color:var(--ocean);text-decoration:none}
.dashboard-availability-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:.5rem}
.dashboard-availability-day{display:grid;place-items:center;gap:.1rem;min-height:58px;border-radius:13px;background:#f4faf6;border:1px solid rgba(79,139,95,.1);text-decoration:none;color:var(--text);transition:var(--transition)}
.dashboard-availability-day:hover{transform:translateY(-1px);box-shadow:0 7px 14px rgba(20,27,33,.08)}
.dashboard-availability-day strong{font-size:1rem;line-height:1}.dashboard-availability-day span{font-size:.7rem;color:var(--text-muted)}
.dashboard-availability-day--booked{background:#fff3f2;border-color:rgba(191,82,71,.17)}
.dashboard-availability-day--arrival{background:#e6f5e9;border-color:rgba(79,139,95,.2)}
.dashboard-availability-day--departure{background:#fff1df;border-color:rgba(211,160,98,.2)}
.dashboard-availability-legend{display:flex;flex-wrap:wrap;gap:.8rem 1rem;margin-top:1rem;font-size:.78rem;color:var(--text-muted)}
.dashboard-availability-legend span{display:inline-flex;align-items:center;gap:.35rem}.dashboard-availability-key{width:9px;height:9px;border-radius:50%;background:#f4faf6;border:1px solid rgba(79,139,95,.28)}
.dashboard-availability-key--booked{background:#fff3f2;border-color:rgba(191,82,71,.35)}.dashboard-availability-key--arrival{background:#4f8b5f}.dashboard-availability-key--departure{background:#d3a062}.dashboard-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.dashboard-mini-stat{display:grid;align-content:start;min-height:132px;gap:.35rem;padding:1.05rem 1.1rem;border-radius:18px;background:#faf8f4;border:1px solid rgba(0,0,0,.05)}
.dashboard-mini-stat span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.dashboard-mini-stat strong{font-size:1.5rem;font-family:'Cormorant Garamond',serif;color:var(--text);line-height:1}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:2rem}
.kpi-card{background:var(--white);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.kpi-icon{font-size:1.5rem;margin-bottom:.75rem}
.kpi-val{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:600;color:var(--text);line-height:1}
.kpi-label{font-size:.78rem;color:var(--text-muted);margin-top:.3rem;text-transform:uppercase;letter-spacing:.05em}
.kpi-trend{font-size:.75rem;margin-top:.4rem;padding:.2rem .6rem;border-radius:100px;display:inline-block}
.kpi-trend.up{background:#dcfce7;color:#16a34a}
.kpi-trend.warn{background:#fff7ed;color:var(--warn)}
.admin-section{background:var(--white);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:0 2px 12px rgba(0,0,0,.06);margin-bottom:1.5rem}
.admin-section-title{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:1.25rem;display:flex;align-items:center;justify-content:space-between}
.calendar-sync-section{display:grid;gap:1.15rem}.calendar-sync-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.calendar-sync-head .admin-section-title{margin:.18rem 0 .35rem}.calendar-sync-head p,.calendar-export-info p{margin:0;color:var(--text-muted);font-size:.86rem;line-height:1.55}.calendar-sync-state{display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .7rem;border-radius:999px;background:#f1efeb;color:var(--text-muted);font-size:.76rem;font-weight:750;white-space:nowrap}.calendar-sync-state:before{content:"";width:7px;height:7px;border-radius:50%;background:#aaa}.calendar-sync-state.is-active{background:#e9f3eb;color:#3f664a}.calendar-sync-state.is-active:before{background:#4f8a61}.calendar-sync-form{display:grid;gap:1rem}.calendar-sync-toggle-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem .95rem;border:1px solid rgba(95,122,102,.18);border-radius:14px;background:#f6f8f5}.calendar-sync-toggle-card>span:first-child{display:grid;gap:.25rem}.calendar-sync-toggle-card strong{font-size:.92rem}.calendar-sync-toggle-card small{color:var(--text-muted);font-size:.8rem;line-height:1.45}.calendar-sync-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.calendar-provider-card{display:grid;align-content:start;gap:.65rem;padding:1rem;border:1px solid rgba(95,122,102,.14);border-radius:18px;background:#fff}.calendar-provider-card .calendar-sync-toggle-card{margin:-.25rem -.25rem .2rem}.calendar-provider-card>.form-label{margin:0}.calendar-sync-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.calendar-autosave-status{color:var(--text-muted);font-size:.8rem;line-height:1.45}.calendar-autosave-status[data-state="saving"]{color:#826022}.calendar-autosave-status[data-state="saved"]{color:#3f664a}.calendar-autosave-status[data-state="error"]{color:#a23e35}.calendar-sync-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid rgba(95,122,102,.16);border-radius:16px;background:#fafbf9}.calendar-sync-toolbar>div{display:grid;gap:.2rem}.calendar-sync-toolbar strong{font-size:.9rem}.calendar-sync-toolbar span{color:var(--text-muted);font-size:.78rem}.calendar-export-info{display:grid;gap:.9rem;padding:1.1rem;border:1px solid rgba(95,122,102,.2);border-radius:18px;background:#f2f7f2}.calendar-export-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem}.calendar-export-copy-row .form-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem}.calendar-sync-meta{display:flex;gap:.65rem 1.25rem;flex-wrap:wrap;color:var(--text-muted);font-size:.78rem}.calendar-sync-now-form{margin:0}.calendar-sync-error{margin:0}.calendar-export-direction-note{padding:.8rem .9rem;border-radius:13px;background:#fff;color:var(--text-muted);font-size:.8rem;line-height:1.5}.settings-section-kicker{font-size:.7rem;font-weight:750;letter-spacing:.1em;color:var(--ocean);text-transform:uppercase}@media(max-width:700px){.calendar-sync-head{align-items:stretch;flex-direction:column}.calendar-sync-state{align-self:flex-start}.calendar-sync-fields{grid-template-columns:1fr}.calendar-sync-toggle-card{align-items:flex-start}.calendar-sync-toolbar{align-items:stretch;flex-direction:column}.calendar-sync-toolbar form,.calendar-sync-toolbar .btn{width:100%}.calendar-export-copy-row{grid-template-columns:1fr}.calendar-export-copy-row .btn{width:100%}}
.calendar-sync-result{display:grid;gap:.22rem;padding:.8rem .9rem;border:1px solid rgba(95,122,102,.16);border-radius:13px;background:#fff;color:var(--text-muted);font-size:.8rem;line-height:1.45}.calendar-sync-result strong{color:var(--ink);font-size:.84rem}.calendar-sync-result.is-data{border-color:rgba(79,138,97,.28);background:#f7fbf7}.calendar-sync-result.is-error{border-color:rgba(190,71,61,.28);background:#fff7f6}.calendar-sync-result.is-error strong{color:#9e382f}
.calendar-sync-diagnostics{padding:.9rem 1rem;border:1px solid rgba(95,122,102,.16);border-radius:16px;background:#fafbf9}.calendar-sync-diagnostics summary{cursor:pointer;font-size:.86rem;font-weight:700;color:var(--ocean)}.calendar-sync-diagnostics>p{margin:.5rem 0 .8rem;color:var(--text-muted);font-size:.78rem}.calendar-sync-client-diagnostic,.calendar-sync-diagnostic-empty{padding:.7rem .8rem;border-radius:12px;background:#fff5df;color:#76541f;font-size:.76rem;line-height:1.5;overflow-wrap:anywhere}.calendar-sync-diagnostic-list{display:grid;gap:.5rem;max-height:360px;overflow:auto}.calendar-sync-diagnostic-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .75rem;padding:.7rem .8rem;border-radius:12px;background:#fff;font-size:.75rem}.calendar-sync-diagnostic-list article>div{display:flex;align-items:center;gap:.5rem;min-width:0}.calendar-sync-diagnostic-list code{color:var(--text-muted);font-size:.68rem}.calendar-sync-diagnostic-list span{color:var(--text-muted)}.calendar-sync-diagnostic-list small{grid-column:1/-1;color:var(--text-muted);overflow-wrap:anywhere;line-height:1.45}
.external-calendar-blocks{display:grid;gap:.85rem;padding:1rem;border:1px solid rgba(95,122,102,.18);border-radius:18px;background:#f7faf7}.external-calendar-blocks-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.external-calendar-blocks-head .admin-section-title{margin:.15rem 0 .25rem}.external-calendar-blocks-head p{margin:0;color:var(--text-muted);font-size:.8rem}.external-calendar-blocks-head>span{flex:0 0 auto;padding:.38rem .65rem;border-radius:999px;background:#e6f1e8;color:#3f664a;font-size:.72rem;font-weight:750}.external-calendar-block-list{display:grid;gap:.55rem}.external-calendar-block-card{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.75rem .85rem;border:1px solid rgba(95,122,102,.13);border-radius:14px;background:#fff}.external-calendar-block-card>div{display:grid;gap:.15rem}.external-calendar-block-card strong{font-size:.86rem}.external-calendar-block-card small{color:var(--text-muted);font-size:.72rem}.external-calendar-provider{display:inline-flex;justify-content:center;padding:.34rem .55rem;border-radius:999px;background:#edf3ee;color:#46634e;font-size:.72rem;font-weight:750}.external-calendar-provider.is-booking{background:#eaf2fb;color:#24598e}.external-calendar-provider.is-airbnb{background:#fff0f0;color:#9b4448}.external-calendar-seen{text-align:right;white-space:nowrap}@media(max-width:700px){.external-calendar-blocks-head{flex-direction:column}.external-calendar-block-card{grid-template-columns:1fr}.external-calendar-provider{justify-self:start}.external-calendar-seen{text-align:left}}
.admin-panel-anchor{display:block;height:0;margin:0;padding:0;overflow:hidden}
.table{width:100%;border-collapse:collapse}
.table th{text-align:left;padding:.7rem 1rem;background:#f8f9fa;font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-radius:var(--radius) var(--radius) 0 0}
.table td{padding:.85rem 1rem;border-bottom:1px solid #f0f0f0;font-size:.88rem;color:var(--text);vertical-align:middle}
.table tr:last-child td{border-bottom:none}
.badge{display:inline-block;padding:.3rem .75rem;border-radius:100px;font-size:.72rem;font-weight:600;letter-spacing:.04em}
.badge-green{background:#dcfce7;color:#15803d}
.badge-red{background:#fee2e2;color:#dc2626}
.badge-yellow{background:#fef9c3;color:#a16207}
.badge-neutral{background:#e5e7eb;color:#4b5563}
.badge-completed{background:#e8edf3;color:#41546a}
.badge-blue{background:#dbeafe;color:#1d4ed8}
.badge-stone{background:#efe8dc;color:#6a5846}
.action-btns{display:flex;gap:.5rem}
.action-btn{padding:.4rem .9rem;border-radius:var(--radius);border:none;font-size:.78rem;font-weight:500;cursor:pointer;transition:var(--transition)}
.action-btn.approve{background:#dcfce7;color:#15803d}
.action-btn.approve:hover{background:#15803d;color:#fff}
.action-btn.reject{background:#fee2e2;color:#dc2626}
.action-btn.reject:hover{background:#dc2626;color:#fff}
.action-btn[disabled]{opacity:1;cursor:not-allowed}
.action-btn.approve[disabled]{background:#e5e7eb;color:#6b7280;box-shadow:none}
.form-help-text{margin-top:.45rem;font-size:.84rem;line-height:1.55;color:var(--text-muted)}
.sortable-item{cursor:grab;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}
.sortable-item.dragging{opacity:.55;cursor:grabbing}
.sortable-item.drag-over{box-shadow:0 0 0 2px rgba(26,107,138,.18);transform:translateY(-2px)}
.media-card{display:flex;flex-direction:column;height:100%}
.media-card-actions{display:grid;align-content:start;gap:0;margin-top:0;padding-top:.65rem}
.media-card-save{min-height:40px}
.admin-user-accordion{display:grid;gap:1rem}
.admin-user-card{border:1px solid rgba(0,0,0,.06);border-radius:20px;background:#f8f6f1;overflow:hidden}
.admin-user-card summary{list-style:none}
.admin-user-card summary::-webkit-details-marker{display:none}
.admin-user-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.2rem;cursor:pointer}
.admin-user-summary-main{display:grid;gap:.22rem}
.admin-user-summary-title{font-size:1.35rem;line-height:1}
.admin-user-summary-meta{font-size:.88rem;color:var(--text-muted)}
.admin-user-summary-side{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}
.admin-user-summary-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:rgba(0,0,0,.04);color:var(--text-muted);font-size:1rem;transition:var(--transition)}
.admin-user-card[open] .admin-user-summary-toggle{transform:rotate(180deg);color:var(--text)}
.admin-user-body{padding:0 1.2rem 1.2rem;border-top:1px solid rgba(0,0,0,.05);display:grid;gap:1rem}
.admin-user-login-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.admin-user-login-fact{display:grid;gap:.3rem;padding:.85rem 1rem;border:1px solid rgba(95,122,102,.12);border-radius:15px;background:#fff}.admin-user-login-fact span{color:var(--text-muted);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.admin-user-login-fact strong{font-size:.93rem;font-weight:650;line-height:1.35}.admin-user-login-ip{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;overflow-wrap:anywhere}
.admin-user-form{margin-top:1rem}
.admin-user-actions{display:flex;justify-content:flex-start;gap:.75rem;flex-wrap:wrap}
.admin-user-permissions{display:grid;gap:.8rem;padding:1rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05)}
.admin-user-permissions-title{font-size:.9rem;font-weight:700;color:var(--text)}
.admin-user-permissions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem .9rem}
.admin-user-permission-option{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem .85rem;border-radius:14px;background:#f8f6f1;border:1px solid rgba(0,0,0,.04);font-size:.86rem;color:var(--text)}
.admin-role-grid{display:grid;gap:1rem}
.admin-role-card{display:block;padding:0;border-radius:20px;background:#f8f6f1;border:1px solid rgba(0,0,0,.06);overflow:hidden}
.admin-role-card-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem;cursor:pointer;list-style:none}
.admin-role-card-head::-webkit-details-marker{display:none}
.admin-role-card-head:hover{background:rgba(95,122,102,.035)}
.admin-role-card-head:focus-visible{outline:3px solid rgba(95,122,102,.28);outline-offset:-3px}
.admin-role-card-head-actions{display:flex;align-items:center;gap:.7rem;flex:0 0 auto}
.admin-role-card-chevron{width:.7rem;height:.7rem;border-right:2px solid var(--ocean);border-bottom:2px solid var(--ocean);transform:rotate(45deg);transition:transform .2s ease;margin:-.25rem .2rem 0 .1rem}
.admin-role-card[open] .admin-role-card-chevron{transform:rotate(225deg);margin:.25rem .2rem 0 .1rem}
.admin-role-card[open] .admin-role-card-head{border-bottom:1px solid rgba(0,0,0,.06)}
.admin-role-card-content{display:grid;gap:1rem;padding:1.15rem}
.admin-role-card-title{font-size:1.15rem;font-weight:700;color:var(--text);line-height:1.2}
.admin-role-card-meta{font-size:.84rem;color:var(--text-muted);margin-top:.2rem}
.payment-provider-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.25fr);gap:1rem;align-items:start}
.payment-provider-card{display:grid;gap:1rem;padding:1.25rem 1.3rem;border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fcfaf6 100%);border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 28px rgba(30,33,37,.04)}
.payment-provider-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.payment-provider-card-title{font-size:1.08rem;font-weight:700;color:var(--text);line-height:1.2}
.payment-provider-card-text{margin-top:.3rem;font-size:.9rem;line-height:1.6;color:var(--text-muted)}
.payment-provider-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.payment-provider-status-item{display:grid;gap:.25rem;padding:.95rem 1rem;border-radius:18px;background:#f8f6f1;border:1px solid rgba(0,0,0,.05)}
.payment-provider-status-label{font-size:.77rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.payment-provider-status-value{font-size:.95rem;line-height:1.45;color:var(--text)}
.payment-provider-inline-note{margin-top:.15rem;padding:.95rem 1rem;border-radius:18px;background:#f8f6f1;border:1px solid rgba(0,0,0,.05);font-size:.88rem;line-height:1.6;color:var(--text-muted)}
.payment-provider-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;word-break:break-word}
@media (max-width: 980px){.payment-provider-layout{grid-template-columns:1fr}.payment-provider-status-grid{grid-template-columns:1fr}}
.admin-role-permission-list{display:flex;flex-wrap:wrap;gap:.45rem}
.admin-role-form{display:grid;gap:1rem}
.admin-user-security{display:grid;gap:1rem;padding-top:.25rem}
.admin-user-security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.admin-user-security-card{padding:1.1rem 1.15rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05)}
.admin-user-security-label{font-size:.8rem;color:var(--text-muted);margin-bottom:.35rem}
.admin-user-security-value{font-size:1.7rem;line-height:1;margin-bottom:.55rem}
.admin-user-security-text{font-size:.9rem;color:var(--text-muted);line-height:1.55}
.admin-user-inline-form{display:grid;gap:.85rem;justify-items:start}
.admin-user-2fa-panel{padding:1.1rem 1.15rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);display:grid;gap:.85rem}
.admin-user-qr-code{width:220px;max-width:100%;aspect-ratio:1;display:grid;place-items:center;background:#fff;padding:.75rem;border-radius:16px;border:1px solid rgba(0,0,0,.08)}.admin-user-qr-code svg,.admin-user-qr-code img{display:block;width:100%;height:100%;object-fit:contain}.admin-user-qr-loading,.admin-user-qr-error{font-size:.9rem;line-height:1.45;text-align:center;color:var(--text-muted)}.admin-user-qr-error{color:#a5382e}
.security-layout{display:grid;gap:1.15rem}
.security-card{display:grid;gap:1rem;padding:1.25rem 1.3rem;border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fcfaf6 100%);border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 28px rgba(30,33,37,.04)}
.security-card-wide{gap:1.1rem}
.security-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.security-card-kicker{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem}
.security-card-title{font-size:1.12rem;font-weight:700;color:var(--text);line-height:1.2}
.security-card-text{margin-top:.35rem;font-size:.9rem;line-height:1.6;color:var(--text-muted);max-width:60rem}
.security-card-grid{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:1rem 1.2rem;align-items:start}
.security-card-grid-single{grid-template-columns:minmax(220px,320px) minmax(0,1fr)}
.security-field-stack{display:grid;gap:.9rem;align-content:start}
.security-toggle-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}
.security-toggle-stack{display:grid;gap:.8rem}
.security-toggle-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.05rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 12px rgba(0,0,0,.03)}
.security-toggle-card-compact{min-height:unset}
.security-toggle-copy{display:grid;gap:.18rem;min-width:0}
.security-toggle-title{font-size:.94rem;font-weight:700;color:var(--text);line-height:1.35}
.security-toggle-text{font-size:.85rem;line-height:1.55;color:var(--text-muted)}
.security-toggle-control{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.security-toggle-control input{width:18px;height:18px}
.customer-account-layout{display:grid;gap:1.15rem}
.customer-account-card{display:grid;gap:1rem;padding:1.25rem 1.3rem;border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fcfaf6 100%);border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 28px rgba(30,33,37,.04)}
.customer-account-card-wide{gap:1.1rem}
.customer-account-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.customer-account-card-kicker{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.35rem}
.customer-account-card-title{font-size:1.12rem;font-weight:700;color:var(--text);line-height:1.2}
.customer-account-card-text{margin-top:.35rem;font-size:.9rem;line-height:1.6;color:var(--text-muted);max-width:60rem}
.customer-account-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem;align-items:start}
.customer-account-card-grid-single{grid-template-columns:1fr}
.customer-account-fixed-field{display:grid;gap:.18rem;padding:1rem 1.05rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 12px rgba(0,0,0,.03)}
.customer-account-fixed-field-title{font-size:.94rem;font-weight:700;color:var(--text);line-height:1.35}
.customer-account-fixed-field-text{font-size:.85rem;line-height:1.55;color:var(--text-muted)}
.customer-account-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.customer-account-toggle-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.05rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 12px rgba(0,0,0,.03)}
.customer-account-toggle-copy{display:grid;gap:.18rem;min-width:0}
.customer-account-toggle-title{font-size:.94rem;font-weight:700;color:var(--text);line-height:1.35}
.customer-account-toggle-text{font-size:.85rem;line-height:1.55;color:var(--text-muted)}
.customer-account-toggle-control{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.customer-account-toggle-control input{width:18px;height:18px}
.customer-portal-items-editor{display:grid;gap:1rem}
.customer-portal-items-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.customer-portal-items-tabs{display:flex;gap:.6rem;flex-wrap:wrap}
.customer-portal-item-tab{border:none;background:#f1ece3;color:var(--text-muted);padding:.72rem 1rem;border-radius:999px;font:inherit;font-weight:600;cursor:pointer;transition:var(--transition)}
.customer-portal-item-tab:hover{background:#e9e2d5;color:var(--text)}
.customer-portal-item-tab.active{background:var(--ocean);color:#fff;box-shadow:0 10px 24px rgba(26,107,138,.18)}
.customer-portal-item-panel{display:grid;gap:1rem;padding:1rem 1.05rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 12px rgba(0,0,0,.03)}
.customer-portal-item-panel-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.customer-portal-item-panel-title{font-size:.94rem;font-weight:700;color:var(--text);line-height:1.35}
.customer-portal-item-remove{width:36px;height:36px;border:none;border-radius:999px;background:#fde8e5;color:#b23b33;font-size:1.2rem;line-height:1;cursor:pointer;transition:var(--transition)}
.customer-portal-item-remove:hover{background:#f8d8d3}
.customer-overview-shell{display:grid;gap:1.25rem}
.customer-overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.customer-overview-stat{padding:1.05rem 1.15rem;border-radius:20px;background:#faf8f4;border:1px solid rgba(0,0,0,.05);display:grid;gap:.4rem}
.customer-overview-stat-label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.customer-overview-stat-value{font-size:2rem;line-height:1;color:var(--ocean)}
.customer-filter-bar{display:flex;gap:.9rem;flex-wrap:wrap;align-items:center;justify-content:space-between}
.customer-filter-tabs{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center}
.customer-search-form{display:block;width:min(430px,100%)}
.booking-search-form{margin-bottom:1.25rem}
.customer-search-group{margin:0}
.customer-search-control{position:relative}
.customer-search-input{padding-right:7.5rem}
.customer-search-submit{position:absolute;top:50%;right:.4rem;transform:translateY(-50%);height:calc(100% - .8rem);min-width:92px;border:none;border-radius:14px;background:var(--ocean);color:#fff;font:inherit;font-weight:600;padding:0 1rem;cursor:pointer;transition:var(--transition)}
.customer-search-submit:hover{background:#215f79}
.customer-filter-tab{border:none;background:#f1ece3;color:var(--text-muted);padding:.72rem 1rem;border-radius:999px;font:inherit;font-weight:600;cursor:pointer;transition:var(--transition)}
.customer-filter-tab:hover{background:#e9e2d5;color:var(--text)}
.customer-filter-tab.active{background:var(--ocean);color:#fff;box-shadow:0 10px 24px rgba(26,107,138,.18)}
.customer-sort-select{display:grid;gap:.35rem;min-width:220px}
.customer-sort-select span{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.customer-sort-select .form-input{min-height:46px;background:#fff}
.customer-overview-list-shell{display:grid;gap:1.1rem}
.customer-overview-list-meta{display:flex;justify-content:flex-start}
.customer-overview-scroll{max-height:min(70vh,860px);overflow:auto;padding-right:.3rem}
.customer-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1rem}
.customer-status-legend{display:flex;flex-wrap:wrap;gap:.8rem 1rem;align-items:center;padding:.9rem 1rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05)}
.customer-status-legend-item{display:inline-flex;align-items:center;gap:.45rem;font-size:.88rem;color:var(--text-muted)}
.customer-status-dot{display:inline-flex;width:11px;height:11px;border-radius:999px;box-shadow:0 0 0 4px rgba(0,0,0,.03) inset}
.customer-status-dot-arrival{background:#2c7be5}
.customer-status-dot-active{background:#4f8b5f}
.customer-status-dot-pending{background:#d3a062}
.customer-status-dot-cancelled{background:#bc7f7a}
.booking-status-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin:.35rem 0 1.2rem;padding:.85rem 1rem;border:1px solid rgba(95,122,102,.12);border-radius:16px;background:#fafbf9}.booking-status-legend-item{position:relative;display:inline-flex;align-items:center;outline:none}.booking-status-legend-item small{position:absolute;left:50%;bottom:calc(100% + .55rem);z-index:8;width:max-content;max-width:220px;padding:.42rem .58rem;border-radius:8px;background:#2f382f;color:#fff;font-size:.74rem;line-height:1.35;box-shadow:0 8px 20px rgba(25,31,26,.18);opacity:0;visibility:hidden;transform:translate(-50%,4px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease;pointer-events:none}.booking-status-legend-item small:after{content:"";position:absolute;top:100%;left:50%;border:5px solid transparent;border-top-color:#2f382f;transform:translateX(-50%)}.booking-status-legend-item:hover small,.booking-status-legend-item:focus small,.booking-status-legend-item:focus-within small{opacity:1;visibility:visible;transform:translate(-50%,0)}.booking-status-legend-item:focus-visible .badge{outline:3px solid rgba(95,122,102,.2);outline-offset:2px}.booking-status-legend-item .badge{white-space:nowrap;cursor:help}
.customer-overview-card{position:relative;display:grid;gap:.85rem;padding:1.12rem 1.15rem;border-radius:22px;background:#fff;border:1px solid rgba(0,0,0,.05);text-decoration:none;color:inherit;overflow:hidden;transition:box-shadow .18s ease,border-color .18s ease,background .18s ease}
.customer-overview-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:rgba(95,122,102,.18);transition:width .18s ease}
.customer-overview-card:hover{box-shadow:0 16px 28px rgba(29,42,59,.06);border-color:rgba(95,122,102,.16)}
.customer-overview-card.active{background:#fff;border-color:rgba(26,107,138,.22);box-shadow:0 18px 34px rgba(26,107,138,.08)}
.customer-overview-card:hover::before,.customer-overview-card.active::before{width:6px}
.customer-overview-card-arrival::before{background:#2c7be5}
.customer-overview-card-active::before{background:#4f8b5f}
.customer-overview-card-pending::before{background:#d3a062}
.customer-overview-card-cancelled::before{background:#bc7f7a}
.customer-overview-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start}
.customer-overview-main{display:grid;gap:.2rem;min-width:0}
.customer-overview-name{font-size:1.22rem;line-height:1.12;color:var(--text)}
.customer-overview-subline{font-size:.9rem;font-weight:600;color:var(--text)}
.customer-overview-submeta{font-size:.83rem;color:var(--text-muted);line-height:1.45}
.customer-overview-badges{display:grid;justify-items:end;gap:.45rem;align-self:start}
.customer-state-pill{display:inline-flex;align-items:center;justify-content:center;padding:.42rem .78rem;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border:1px solid transparent}
.customer-state-pill-arrival{background:rgba(44,123,229,.14);color:#1f5fb9;border-color:rgba(44,123,229,.18)}
.customer-state-pill-active{background:rgba(79,139,95,.15);color:#356645;border-color:rgba(79,139,95,.2)}
.customer-state-pill-pending{background:rgba(211,160,98,.15);color:#8a6130;border-color:rgba(211,160,98,.18)}
.customer-state-pill-cancelled{background:rgba(188,127,122,.14);color:#8f504b;border-color:rgba(188,127,122,.16)}
.customer-overview-card-foot{display:flex;justify-content:flex-end;align-items:center;padding-top:.2rem;color:var(--ocean)}
.customer-overview-open{display:grid;place-items:center;width:34px;height:34px;padding:0;border-radius:50%;background:rgba(26,107,138,.08);line-height:0;transition:background .18s ease,color .18s ease}
.customer-overview-open svg{display:block;width:15px;height:15px;margin:auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.customer-overview-card:hover .customer-overview-open,.customer-overview-card.active .customer-overview-open{background:rgba(26,107,138,.14);color:#1a5167}
.customer-pagination{display:flex;align-items:center;justify-content:space-between;gap:.8rem}
.customer-pagination-numbers{display:flex;align-items:center;justify-content:center;gap:.45rem;flex:1 1 auto;flex-wrap:wrap}
.customer-pagination-btn,.customer-pagination-number{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 .8rem;border:1px solid rgba(0,0,0,.06);border-radius:999px;background:#f8f4ec;color:var(--text);font:inherit;font-weight:700;cursor:pointer;transition:var(--transition);box-shadow:none}
.customer-pagination-btn:hover,.customer-pagination-number:hover{background:#efe7db;border-color:rgba(0,0,0,.08)}
.customer-pagination-btn[disabled]{opacity:.45;cursor:not-allowed}
.customer-pagination-number.active{background:#fff;color:var(--text);border-color:rgba(0,0,0,.14);box-shadow:none}
.customer-drawer-backdrop{position:fixed;inset:0;background:rgba(24,28,32,.36);backdrop-filter:blur(4px);opacity:0;transition:opacity .22s ease;z-index:70}
.customer-drawer-backdrop.open{opacity:1}
.customer-drawer{position:fixed;top:0;right:0;width:min(var(--customer-drawer-width,760px),calc(100vw - 2rem));height:100vh;z-index:80;transform:translateX(104%);transition:transform .28s ease;pointer-events:none}
.customer-drawer.open{transform:translateX(0);pointer-events:auto}
.customer-drawer-shell{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;background:#f7f4ee;border-left:1px solid rgba(0,0,0,.06);box-shadow:-20px 0 48px rgba(20,27,33,.16)}
.customer-drawer-mobile-nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;min-height:58px;padding:.55rem .9rem;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(95,122,102,.12);box-shadow:0 5px 18px rgba(35,29,24,.06);backdrop-filter:blur(16px);z-index:5}
.customer-drawer-mobile-nav>strong{justify-self:center;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.91rem;color:var(--text)}
.customer-drawer-mobile-back{justify-self:start;display:inline-flex;align-items:center;gap:.2rem;min-width:0;min-height:42px;padding:.42rem .6rem .42rem .28rem;border:0;border-radius:11px;background:transparent;color:var(--ocean);font:inherit;font-size:.88rem;font-weight:700;text-decoration:none;cursor:pointer;touch-action:manipulation}
.customer-drawer-mobile-back:hover,.customer-drawer-mobile-back:focus-visible{background:rgba(95,122,102,.09);outline:none}
.customer-drawer-mobile-back svg{display:block;flex:0 0 20px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
.customer-drawer-mobile-nav-spacer{justify-self:end;width:44px}
.customer-drawer-scroll{height:auto;min-height:0;overflow:auto;padding:1.1rem 1.1rem 1.25rem}
.customer-drawer-resize-handle{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;width:26px;height:72px;padding:0;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 12px 24px rgba(20,27,33,.12);color:var(--ocean);font-size:1.15rem;line-height:1;cursor:ew-resize;z-index:3;transition:var(--transition);text-decoration:none}
.customer-drawer-resize-handle:hover{background:#fff;transform:translate(-50%,-50%) scale(1.03)}
.customer-drawer-resize-handle:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(26,107,138,.14),0 12px 24px rgba(20,27,33,.12)}
.customer-drawer-resizing,.customer-drawer-resizing *{cursor:ew-resize!important;user-select:none}
.customer-drawer-close{display:none}
.customer-drawer-close svg{display:block;width:17px;height:17px;margin:auto;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}
.customer-drawer-close:hover{transform:translateY(-1px);background:#fff}
.customer-detail-panel{padding:1.25rem 1.3rem;margin-top:.35rem}
.customer-detail-panel{position:relative;transition:opacity .18s ease,transform .22s ease}
.customer-detail-panel.is-loading{opacity:.68;pointer-events:none;transform:translateY(6px)}
.customer-detail-panel.is-ready{animation:customerDetailSlide .24s ease}
.customer-detail-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap;margin-bottom:1.1rem}
.customer-detail-badges{display:flex;gap:.55rem;flex-wrap:wrap}
.customer-detail-contact-card{padding:1.05rem 1.15rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.05);display:grid;gap:.75rem;box-shadow:0 10px 28px rgba(20,27,33,.04);overflow:visible}
.customer-detail-contact-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none}
.customer-detail-contact-summary::-webkit-details-marker{display:none}
.customer-detail-contact-summary::marker{display:none}
.customer-detail-contact-title{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.customer-detail-contact-arrow{display:grid;place-items:center;width:30px;height:30px;padding:0;border-radius:50%;background:#faf8f4;border:1px solid rgba(0,0,0,.05);color:var(--ocean);line-height:0;transition:transform .18s ease,background .18s ease;flex-shrink:0}
.customer-detail-contact-card[open] .customer-detail-contact-arrow{transform:rotate(180deg)}
.customer-detail-contact-card:not([open]) .customer-detail-contact-arrow:hover{background:#fff}
.customer-detail-contact-list{display:grid;gap:.2rem}
.customer-detail-contact-row{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:1rem;align-items:start;padding:.45rem 0;border-bottom:1px solid rgba(0,0,0,.05)}
.customer-detail-contact-row:last-child{border-bottom:none;padding-bottom:0}
.customer-detail-contact-row span{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}
.customer-detail-contact-row strong{font-size:.98rem;color:var(--text);line-height:1.45;overflow-wrap:anywhere;font-weight:600}
.customer-detail-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.customer-detail-fact-card{padding:1rem 1.05rem;border-radius:18px;background:#faf8f4;border:1px solid rgba(0,0,0,.05);display:grid;gap:.35rem;align-content:center;min-height:126px}
.customer-detail-fact-label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.customer-detail-fact-value{font-size:1.9rem;line-height:1;color:var(--ocean)}
.customer-detail-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.customer-detail-meta-card{padding:1rem 1.05rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);display:grid;gap:.3rem}
.customer-detail-meta-card span{font-size:.8rem;color:var(--text-muted)}
.customer-detail-meta-card strong{font-size:.95rem;color:var(--text);line-height:1.45}
.customer-detail-communication{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:1.25rem;margin-top:1.35rem;align-items:start}
.customer-mail-compose-card,.customer-mail-summary-card{padding:1.1rem 1.15rem;border-radius:22px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 10px 28px rgba(20,27,33,.04)}
.customer-mail-compose-textarea{min-height:260px}
.customer-mail-signature-card{display:grid;gap:.18rem;padding:1rem 1.05rem;border-radius:16px;background:#f7f4ee;color:var(--text);line-height:1.55}
.customer-mail-history-card{display:grid;gap:.6rem;align-content:start}
.customer-mail-history-count{font-size:2.4rem;line-height:1;color:var(--ocean)}
.customer-mail-history-label{font-size:.92rem;font-weight:700;color:var(--text)}
.customer-mail-history-meta{font-size:.84rem;color:var(--text-muted);line-height:1.5}
.customer-mail-history-modal-card{width:min(720px,96vw);padding:1.35rem 1.35rem 1.25rem}
.customer-mail-reader-modal-card{width:min(920px,96vw);padding:1.4rem 1.4rem 1.3rem}
.customer-mail-history-modal-card .admin-section-title,.customer-mail-reader-modal-card .admin-section-title{align-items:center;justify-content:space-between;padding-right:0;min-height:auto;margin-bottom:.9rem;gap:1rem}
.customer-mail-history-modal-card .lightbox-close,.customer-mail-reader-modal-card .lightbox-close{position:static;flex:0 0 auto;margin-left:auto}
.customer-mail-modal-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:.15rem .2rem .35rem}
.customer-mail-modal-toolbar-title{font-size:.84rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-weight:700}
.customer-mail-modal-toolbar-meta{font-size:.86rem;color:var(--text-muted)}
.customer-mail-history-list{display:grid;gap:.7rem;max-height:62vh;overflow:auto;padding:.35rem .1rem .1rem}
.customer-mail-row{position:relative;display:block}
.customer-mail-subject-row{display:grid;gap:.32rem;align-items:start;justify-content:flex-start;width:100%;padding:1rem 3rem 1rem 1.05rem;border:1px solid rgba(0,0,0,.05);border-radius:18px;background:#fbf8f2;color:var(--text);text-align:left;transition:var(--transition)}
.customer-mail-subject-row:hover{background:#fff;border-color:rgba(26,107,138,.18);transform:translateY(-1px)}
.customer-mail-subject-row-text{font-size:.96rem;font-weight:700;line-height:1.45;overflow-wrap:anywhere}
.customer-mail-subject-row-meta{font-size:.83rem;line-height:1.45;color:var(--text-muted)}
.customer-mail-delete-form{position:absolute;top:.7rem;right:.7rem;display:flex;align-items:center;justify-content:center;z-index:2}
.customer-mail-delete-button{width:28px;height:28px;border:none;border-radius:999px;background:#f9dfda;color:#bb3f31;font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition)}
.customer-mail-delete-button:hover{background:#f3ccc6;color:#8f2c22;transform:translateY(-1px)}
.customer-mail-delete-button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(187,63,49,.16)}
.customer-mail-pagination{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:1rem;flex-wrap:wrap}
.customer-mail-pagination-btn{display:inline-grid;place-items:center;box-sizing:border-box;min-width:40px;height:40px;padding:0 .8rem;border-radius:999px;border:1px solid rgba(0,0,0,.08);background:#fff;color:var(--text);font-weight:600;line-height:1;cursor:pointer;transition:var(--transition)}
.customer-mail-pagination-btn:hover:not([disabled]),.customer-mail-pagination-btn.is-active{background:var(--ocean);color:#fff;border-color:var(--ocean)}
.customer-mail-pagination-btn[disabled]{opacity:.4;cursor:not-allowed}
.customer-mail-reader-sheet{display:grid;gap:1rem;padding:.2rem 0 0}
.customer-mail-reader-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.customer-mail-reader-date{font-size:.86rem;color:var(--text-muted)}
.customer-mail-reader-envelope-compact{display:grid;gap:.5rem;padding:1rem 1.05rem;border-radius:18px;background:#faf8f4;border:1px solid rgba(0,0,0,.05);font-size:.92rem;line-height:1.6;color:var(--text)}
.customer-mail-reader-content{padding:1.25rem 1.3rem;border-radius:20px;background:#fffefb;border:1px solid rgba(26,107,138,.08);color:var(--text);line-height:1.82;white-space:pre-wrap;word-break:break-word;min-height:260px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.customer-mail-empty{padding:.95rem 1rem;border-radius:16px;background:#f7f4ee;color:var(--text-muted);font-size:.9rem;line-height:1.55}
.customer-mail-error{padding:.85rem .95rem;border-radius:14px;background:#fde8e5;color:#8a3026;font-size:.88rem;line-height:1.55}
@keyframes customerDetailSlide{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.customer-filter-empty{margin-top:.15rem}
.admin-user-secret{font-family:monospace;word-break:break-all;background:#f8f8f8;padding:.85rem 1rem;border-radius:12px}
.admin-user-panel-text{font-size:.9rem;color:var(--text-muted);line-height:1.6}
.admin-user-recovery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}
.admin-user-recovery-code{font-family:monospace;background:#f8f8f8;padding:.8rem 1rem;border-radius:12px}
.admin-user-delete-form{padding-top:.25rem}
.user-role-overview{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem;padding:1.45rem 1.55rem;border:1px solid rgba(0,0,0,.06);border-radius:24px;background:linear-gradient(135deg,#f7f2e9 0%,#fff 72%);box-shadow:0 10px 28px rgba(35,29,24,.04)}
.settings-page-heading{margin:0;color:var(--text);font-family:'Jost',sans-serif;font-size:1.08rem;font-stretch:normal;font-style:normal;font-weight:650;line-height:1.35;letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.user-role-overview h2{margin:0;font-size:1.55rem;line-height:1.2;color:var(--text)}
.user-role-overview p{max-width:680px;margin:.4rem 0 0;color:var(--text-muted);font-size:.9rem;line-height:1.55}
.user-role-overview-stats{display:flex;gap:.7rem;flex:0 0 auto}
.user-role-overview-stats>div{display:grid;min-width:105px;padding:.8rem 1rem;border:1px solid rgba(0,0,0,.05);border-radius:16px;background:rgba(255,255,255,.78)}
.user-role-overview-stats strong{font-size:1.2rem;line-height:1.15;color:var(--ocean)}
.user-role-overview-stats span{margin-top:.2rem;font-size:.72rem;color:var(--text-muted)}
.user-role-section-head{display:grid;gap:.25rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.07)}
.user-role-section-head .admin-section-title{margin:0}
.user-role-section-head p{margin:0;color:var(--text-muted);font-size:.86rem;line-height:1.5}
.identity-delete-warning{display:grid;place-items:center;width:48px;height:48px;margin:.25rem 0 1rem;border-radius:16px;background:#fff0ef;color:#c83f35;font-size:1.35rem;font-weight:800}
.identity-delete-copy{display:grid;gap:.35rem;margin-bottom:1.25rem}
.identity-delete-copy strong{font-size:1.05rem;color:var(--text)}
.identity-delete-copy p{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.6}
.identity-delete-submit{background:#c83f35!important;border-color:#c83f35!important;color:#fff!important}
.identity-delete-submit:hover{background:#a92f27!important;border-color:#a92f27!important}
.user-invite-form{margin:0}.user-invite-grid{display:grid;grid-template-columns:minmax(260px,1.45fr) minmax(210px,.9fr) auto;gap:1rem;align-items:end}.user-invite-grid .form-group{margin:0}.user-invite-grid .btn{min-height:48px;white-space:nowrap}.pending-invitations{display:grid;gap:.65rem;margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid rgba(0,0,0,.07)}.pending-invitation-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-radius:15px;background:#f8f6f1}.pending-invitation-meta{display:grid;gap:.15rem;min-width:0}.pending-invitation-meta strong{overflow-wrap:anywhere}.pending-invitation-actions{display:flex;align-items:center;justify-content:flex-end;gap:.85rem}.pending-invitation-row span,.pending-invitation-row small{font-size:.8rem;color:var(--text-muted)}.pending-invitation-actions .action-btn{white-space:nowrap}.invite-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.25rem 0}.invite-summary>div{display:grid;gap:.25rem;padding:.85rem 1rem;border-radius:15px;background:#f8f6f1;text-align:center}.invite-summary span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
@media(max-width:1050px){.user-invite-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-invite-grid .btn{width:100%}}
@media(max-width:620px){.user-invite-grid,.invite-summary{grid-template-columns:1fr}.pending-invitation-row{align-items:stretch;flex-direction:column}.pending-invitation-actions{align-items:flex-start;justify-content:space-between;flex-wrap:wrap}}
@media(max-width:720px){.user-role-overview{align-items:stretch;flex-direction:column}.user-role-overview-stats{width:100%}.user-role-overview-stats>div{flex:1;min-width:0}.admin-user-summary{align-items:flex-start;flex-direction:column}.admin-user-summary-side{justify-content:flex-start}}
.amenity-editor{display:grid;gap:1rem}
.amenity-editor-row{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);gap:1rem;align-items:end;padding:1rem;border:1px solid rgba(0,0,0,.06);border-radius:16px;background:#f8f6f1}
.admin-editor-layout{display:grid;gap:1.25rem;margin-top:1rem}
.admin-edit-card{display:grid;gap:1rem;padding:1.25rem;border:1px solid rgba(0,0,0,.06);border-radius:24px;background:linear-gradient(180deg,#fff 0%,#fbf8f2 100%);box-shadow:0 10px 26px rgba(35,29,24,.04)}
.admin-edit-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.admin-edit-card-body{display:grid;gap:1rem}
.admin-edit-card-kicker{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.admin-edit-card-title{font-size:1.08rem;font-weight:700;color:var(--text);line-height:1.25;margin-top:.18rem}
.admin-edit-card-side{display:grid;gap:.6rem;min-width:min(100%,360px)}
.admin-editor-layout-hero{display:grid;gap:1.1rem}
.admin-hero-button-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.admin-hero-button-card{display:grid;gap:1rem;padding:1rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 8px 22px rgba(35,29,24,.03)}
.admin-hero-button-manage-grid{display:grid;gap:1rem;margin-top:1rem}
.admin-hero-button-manage-card{display:grid;gap:1rem;padding:1.15rem 1.1rem;border:1px solid rgba(0,0,0,.06);border-radius:20px;background:linear-gradient(180deg,#fcfaf6 0%,#f8f4ed 100%)}
.admin-hero-button-manage-body{display:grid;gap:1rem}
.admin-hero-button-inline-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem}
.admin-hero-button-inline-row > .form-group{margin:0;align-self:start}
.admin-hero-button-inline-row .admin-i18n-field{display:grid;gap:.45rem;margin-bottom:0}
.admin-hero-button-inline-row .admin-i18n-field-head{display:flex;align-items:flex-start!important;justify-content:space-between;gap:.75rem;min-height:auto!important}
.admin-hero-button-inline-row .admin-i18n-field-head .form-label{margin-bottom:0}
.admin-hero-button-inline-row .admin-richtext-toolbar{margin:0 0 .55rem}
.admin-hero-button-inline-row .admin-i18n-tabs{margin-left:auto}
.admin-hero-button-inline-row .form-label{min-height:auto!important}
.admin-hero-button-inline-row .admin-i18n-field-static{display:grid;gap:.75rem;align-content:start}
.admin-hero-button-inline-row .admin-i18n-field-static + .admin-i18n-field-static{margin-top:.9rem!important}
.admin-hero-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.admin-hero-stat-card{display:grid;gap:1rem;padding:1rem;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 8px 22px rgba(35,29,24,.03)}
.admin-hero-stat-manage-grid{display:grid;gap:1rem;margin-top:1rem}
.admin-hero-stat-manage-card{display:grid;gap:1rem;padding:1.15rem 1.1rem;border:1px solid rgba(0,0,0,.06);border-radius:20px;background:linear-gradient(180deg,#fcfaf6 0%,#f8f4ed 100%)}
.admin-hero-stat-manage-body{display:grid;gap:1rem}
.admin-hero-stat-inline-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem}
.admin-hero-stat-inline-row > .form-group{margin:0;align-self:start}
.admin-hero-stat-inline-row .admin-i18n-field{display:grid;gap:.45rem;margin-bottom:0}
.admin-hero-stat-inline-row .admin-i18n-field-head{display:flex;align-items:flex-start!important;justify-content:space-between;gap:.75rem;min-height:auto!important}
.admin-hero-stat-inline-row .admin-i18n-field-head .form-label{margin-bottom:0}
.admin-hero-stat-inline-row .admin-i18n-tabs{margin-left:auto}
.admin-hero-stat-inline-row .admin-richtext-toolbar{margin:0 0 .55rem}
.admin-hero-stat-inline-row .admin-i18n-control{margin-top:0}
.admin-hero-stat-inline-row .admin-i18n-field-static{display:grid;gap:.45rem;align-content:start}
.admin-hero-stat-inline-row .admin-i18n-field-static .form-label{margin-bottom:0}
.admin-hero-stat-inline-row .form-label{min-height:auto!important}
.admin-inline-actions.is-limit-reached .btn{opacity:.58;pointer-events:none}
.admin-inline-limit-note{font-size:.82rem;color:var(--text-muted)}
.admin-editor-layout-details .form-row{gap:1rem 1.25rem}
.admin-details-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.1rem;align-items:start}
.admin-details-copy-block{display:grid;gap:.9rem;padding:1.1rem 1.1rem 1.15rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 8px 24px rgba(35,29,24,.04)}
.admin-details-copy-block-wide{grid-column:1 / -1}
.admin-details-copy-block-title{font-size:.84rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.admin-details-copy-block .admin-i18n-field-head{align-items:flex-start}
.admin-details-copy-block .admin-i18n-field-body,.admin-details-copy-block .admin-i18n-field-static{display:grid;gap:.7rem}
.admin-details-copy-block .form-label{min-height:auto!important}
.admin-details-amenity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.admin-amenity-card{display:grid;gap:.9rem;padding:1rem;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 22px rgba(35,29,24,.04)}
.admin-amenity-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.admin-amenity-card-head-copy{display:flex;align-items:center;gap:.75rem;min-width:0;flex:1}
.admin-amenity-card-actions{display:flex;align-items:center;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}
.highlight-admin-card-head-copy{display:flex;align-items:center;gap:.75rem;min-width:0;flex:1}
.admin-amenity-card-index{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:var(--sand-pale);color:var(--ocean);font-size:.82rem;font-weight:700;flex-shrink:0}
.admin-amenity-card-title{font-size:.92rem;font-weight:700;color:var(--text);line-height:1.3}
.admin-amenity-card-body{display:grid;gap:.9rem}
.admin-amenities-title-field{width:100%;max-width:none;margin-bottom:1rem;padding:1rem;border-radius:16px;background:#f8faf8;border:1px solid rgba(95,122,102,.16);box-shadow:none}
.admin-amenities-title-field .admin-i18n-field-head{align-items:flex-start}
.admin-amenity-card.is-dragging,.admin-info-box-card.is-dragging{opacity:.48;outline:2px dashed var(--ocean);outline-offset:3px}
.admin-info-box-card,.admin-amenity-card{cursor:grab}
.admin-info-box-card:active,.admin-amenity-card:active{cursor:grabbing}
.admin-info-box-card :is(input,textarea,select,button,[contenteditable="true"]),.admin-amenity-card :is(input,textarea,select,button,[contenteditable="true"]){cursor:auto}
.admin-info-box-card button,.admin-amenity-card button{cursor:pointer}
.admin-info-box-card .admin-details-copy-block-head{display:flex;align-items:center;gap:.75rem;padding-bottom:.8rem;border-bottom:1px solid rgba(95,122,102,.14)}
.admin-info-box-card .admin-details-copy-block-head>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:999px;background:var(--sand-pale);color:var(--ocean);font-size:.78rem;font-weight:750}
.admin-info-box-card .admin-details-copy-block-head>div{display:grid;gap:.12rem;min-width:0;flex:1}.admin-info-box-card .admin-details-copy-block-head strong{display:block;white-space:normal;overflow-wrap:anywhere}.admin-info-box-card .admin-details-copy-block-head small{display:block;color:var(--text-muted);line-height:1.4}.admin-info-box-card .admin-details-copy-block-head .admin-delete-icon-button{margin-left:auto}
.admin-edit-card-amenities .admin-i18n-field-head{align-items:flex-start}
.admin-edit-card-amenities .admin-i18n-field-head .form-label{min-height:auto}
.admin-delete-icon-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:999px;background:#fde8e5;color:#c0392b;font-size:1.2rem;line-height:1;cursor:pointer;transition:var(--transition);flex-shrink:0}
.admin-delete-icon-button:hover{background:#f8d6d1;color:#962d22;transform:translateY(-1px)}
.admin-delete-icon-button:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(192,57,43,.14)}
.admin-delete-icon-button::after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + .45rem);left:50%;transform:translateX(-50%) translateY(4px);padding:.35rem .55rem;border-radius:10px;background:rgba(35,29,24,.92);color:#fff;font-size:.72rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;box-shadow:0 12px 24px rgba(0,0,0,.16)}
.admin-delete-icon-button:hover::after,.admin-delete-icon-button:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}
.admin-location-preview-card{display:grid;gap:1rem;align-content:start}
.admin-location-preview-shell{display:grid;gap:1rem}
.admin-location-preview-frame-wrap{border-radius:22px;overflow:hidden;min-height:320px;background:rgba(255,255,255,.7);border:1px solid rgba(95,122,102,.12)}
.admin-location-preview-frame{display:block;width:100%;height:360px;border:0;background:#fff}
.admin-location-preview-empty{display:flex;align-items:center;justify-content:center;min-height:320px;padding:1.5rem;text-align:center;color:var(--text-muted);background:rgba(255,255,255,.6)}
.admin-location-preview-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem}
.admin-location-inline-editor{display:grid;gap:.9rem;margin-top:.6rem;align-content:start}
.admin-location-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;align-items:start}
.admin-location-inline-grid > .form-group:first-child{grid-column:1 / -1}
.admin-location-inline-grid .admin-location-preview-note{grid-column:1 / -1}
.admin-location-inline-editor .form-group{margin:0}
.admin-location-inline-editor .form-label{min-height:auto}
.admin-location-inline-editor .admin-i18n-field-head{min-height:auto;align-items:flex-start}
.admin-location-inline-editor .admin-i18n-field-head .form-label{align-items:flex-start}
.admin-location-preview-note{display:grid;gap:.35rem;padding:1rem 1.1rem;border-radius:16px;background:rgba(255,255,255,.55);border:1px solid rgba(0,0,0,.05)}
.admin-location-preview-note-title{font-size:.8rem;color:var(--text-muted)}
.admin-location-preview-note-value{font-size:1rem;color:var(--text);line-height:1.5;word-break:break-word}
.admin-location-preview-note-value.serif{font-size:1.15rem}
.highlight-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(560px,1fr));gap:1rem;margin-top:1rem}
.highlight-admin-card{display:grid;gap:1rem;padding:1.2rem 1.15rem;border:1px solid rgba(0,0,0,.06);border-radius:20px;background:linear-gradient(180deg,#fcfaf6 0%,#f8f4ed 100%);align-content:start;height:100%}
.highlight-admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.highlight-admin-card-head-actions{display:flex;align-items:center;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}
.highlight-admin-card-kicker{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.2rem}
.highlight-admin-card-title{font-size:1rem;font-weight:700;color:var(--text)}
.highlight-admin-icon-preview{width:56px;height:56px;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.45rem;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 24px rgba(0,0,0,.04);flex-shrink:0;transition:var(--transition)}
.highlight-admin-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:1.25rem;align-items:start}
.highlight-admin-copy-column,.highlight-admin-icon-column{display:grid;gap:1rem;align-content:start}
.highlight-admin-copy-column .form-group,.highlight-admin-icon-column .form-group{margin:0}
.highlight-admin-copy-column .admin-i18n-field-head,.highlight-admin-icon-column .form-label{align-items:flex-start;min-height:auto}
.highlight-admin-copy-column textarea.form-input{min-height:180px}
.highlight-admin-icon-column{padding-left:.2rem}
.admin-inline-actions{display:flex;justify-content:flex-start;gap:.75rem;flex-wrap:wrap;margin-top:.8rem}
.amenity-picker-field{display:flex;gap:.75rem;align-items:center}
.amenity-picker-field-vertical{display:grid;gap:.75rem}
.amenity-picker-field-vertical .btn{width:100%;justify-content:center}
.amenity-icon-preview{width:52px;height:52px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.4rem;border:1px solid rgba(0,0,0,.08);flex-shrink:0;transition:var(--transition)}
.amenity-icon-input{max-width:140px}
.admin-icon-picker-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.admin-icon-preview{width:52px;height:52px;border-radius:14px;background:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:1.35rem;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 24px rgba(0,0,0,.04);flex-shrink:0;transition:var(--transition)}
.admin-modal{position:fixed;inset:0;z-index:2200;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;padding:1.5rem}
.admin-modal.open{display:flex}
.admin-modal-card{position:relative;width:min(920px,100%);max-height:88vh;overflow-y:auto;overflow-x:hidden;background:var(--white);border-radius:24px;padding:1.5rem;box-shadow:0 30px 80px rgba(0,0,0,.25)}
.admin-modal-card .admin-section-title{position:relative;padding-right:5.25rem;min-height:2.85rem;display:flex;align-items:center}
.admin-modal-card .lightbox-close{position:absolute;top:1rem;right:1rem;width:42px;height:42px;background:rgba(0,0,0,.06);color:var(--text);border:1px solid rgba(0,0,0,.08);z-index:5}
.admin-modal-card .lightbox-close:hover{background:rgba(0,0,0,.1)}
.admin-design-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.admin-design-media-card{display:grid;gap:1rem;padding:1rem;border:1px solid rgba(0,0,0,.06);border-radius:22px;background:linear-gradient(180deg,#fcfaf6 0%,#f8f4ed 100%)}
.admin-design-media-card-head{display:grid;gap:.2rem}
.admin-design-media-card-title{font-size:1rem;font-weight:700;color:var(--text)}
.admin-design-media-card-subtitle{font-size:.86rem;color:var(--text-muted)}
.admin-design-media-preview{position:relative;min-height:220px;border-radius:18px;overflow:hidden;background:#f1ece3;border:1px solid rgba(0,0,0,.05);display:flex;align-items:center;justify-content:center}
.admin-design-media-preview img{width:100%;height:100%;object-fit:cover;display:block}
.admin-design-media-preview-empty{padding:1rem;text-align:center;color:var(--text-muted);font-size:.92rem}
.admin-design-media-meta{display:grid;gap:.2rem}
.admin-design-media-name{font-size:.95rem;font-weight:700;color:var(--text)}
.admin-design-media-path{font-size:.82rem;color:var(--text-muted);word-break:break-all}
.admin-media-picker-modal-card{width:min(1180px,100%);padding:1.35rem 1.4rem}
.admin-media-picker-modal-card>.admin-section-title{position:sticky;top:-1.35rem;z-index:8;margin:0 -1.4rem .9rem;padding:1.15rem 4.25rem .95rem 1.4rem;background:var(--white);border-bottom:1px solid rgba(0,0,0,.07)}
.admin-media-picker-modal-card>.admin-section-title .lightbox-close{top:.65rem;right:1rem;width:32px;height:32px;background:#fff0ef;color:#d65348;border-color:#f2c9c4;font-size:1.2rem;box-shadow:none}
.admin-media-picker-modal-card>.admin-section-title .lightbox-close:hover{background:#fde0dd;color:#b93f35}
.admin-media-picker-toolbar{display:grid;gap:.6rem;margin-bottom:1rem}
.admin-media-picker-grid{display:grid;gap:1.25rem}
.admin-media-picker-group{display:grid;gap:.8rem}
.admin-media-picker-group-title{font-size:.86rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.admin-media-picker-assets{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem}
.admin-media-picker-asset{display:grid;gap:.7rem;padding:.85rem;border:1px solid rgba(0,0,0,.06);border-radius:18px;background:#fff;text-align:left;color:var(--text);cursor:pointer;transition:var(--transition)}
.admin-media-picker-asset:hover{transform:translateY(-1px);border-color:rgba(95,122,102,.24);box-shadow:0 12px 28px rgba(20,27,33,.07)}
.admin-media-picker-asset.is-active{border-color:var(--ocean);box-shadow:0 14px 30px rgba(77,119,108,.14)}
.admin-media-picker-thumb{aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:#f3eee6}
.admin-media-picker-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.admin-media-picker-meta{display:grid;gap:.18rem}
.admin-media-picker-name{font-size:.93rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.admin-media-picker-category{font-size:.8rem;color:var(--text-muted);text-transform:capitalize}
.admin-media-picker-path{font-size:.76rem;color:var(--text-muted);overflow-wrap:anywhere}
.admin-media-picker-asset.is-hidden,.admin-media-picker-group.is-hidden{display:none}
.media-card-file-name{margin-top:.75rem;font-size:.93rem;font-weight:700;color:var(--text);line-height:1.35;overflow-wrap:anywhere}
.icon-picker-toolbar{display:grid;gap:.55rem;margin-bottom:1rem}
.icon-picker-search{position:sticky;top:0;z-index:1;background:#fff}
.admin-password-modal-card{width:min(560px,100%)}
.admin-profile-modal-card{width:min(580px,100%)}
.admin-profile-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap;margin-top:.85rem}
.admin-password-modal-subtitle{margin:-.4rem 0 1rem;color:var(--text-muted);font-size:.92rem}
.admin-password-modal-form{display:grid;gap:.25rem}
.admin-flash{margin-bottom:1rem;padding:1rem;border-radius:12px;transition:opacity .28s ease,transform .28s ease,max-height .28s ease,margin .28s ease,padding .28s ease;opacity:1;transform:translateY(0);max-height:120px;overflow:hidden}
.admin-flash-success{background:#e8f6ef}
.admin-flash-error{background:#fde8e5}
.admin-flash.is-hiding{opacity:0;transform:translateY(-8px);max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0}
.captcha-field{display:grid;gap:.75rem;align-items:start;justify-items:start}
.captcha-row{display:inline-flex;align-items:center;gap:.65rem;flex-wrap:nowrap;max-width:100%}
.captcha-image{display:block;width:180px;max-width:100%;height:56px;border:none;background:transparent;box-shadow:none}
.captcha-refresh-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:none;border-radius:999px;background:#fff;color:var(--ocean);box-shadow:0 10px 22px rgba(20,27,33,.08);font-size:1.1rem;line-height:1;transition:var(--transition)}
.captcha-refresh-btn:hover{transform:translateY(-1px) rotate(12deg);background:#faf8f4}
.form-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.amenity-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem}
.amenity-choice{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:.8rem;padding:1rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;color:var(--text);font:inherit;cursor:pointer;transition:var(--transition);text-align:left;min-width:0}
.amenity-choice:hover{border-color:var(--ocean);transform:translateY(-1px);box-shadow:var(--shadow)}
.amenity-choice.is-hidden{display:none}
.amenity-choice-symbol{width:42px;height:42px;border-radius:12px;background:var(--sand-pale);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.amenity-choice span:last-child{display:block;min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.35}

.admin-update-banner{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin:0 0 1.25rem;padding:1.15rem 1.25rem;border:1px solid rgba(26,107,138,.16);border-radius:20px;background:linear-gradient(135deg,rgba(232,246,239,.96),rgba(234,244,249,.96));box-shadow:0 16px 36px rgba(20,27,33,.06)}
.admin-update-banner.is-warning{background:#fff7e7;border-color:rgba(190,126,33,.22)}
.admin-update-banner-kicker{display:inline-flex;margin-bottom:.38rem;padding:.25rem .55rem;border-radius:999px;background:rgba(95,122,102,.11);color:var(--ocean);font-size:.72rem;font-weight:700;line-height:1.2;letter-spacing:0;text-transform:none}
.admin-update-banner-title{color:var(--text);font-family:'Jost',sans-serif;font-size:1.05rem;font-stretch:normal;font-style:normal;font-weight:700;line-height:1.35;letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.admin-update-banner-text{margin-top:.2rem;color:var(--text-muted);font-size:.88rem}
.update-admin-page{display:grid;gap:1.25rem}
.update-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.update-admin-intro{max-width:760px;margin:.35rem 0 0;color:var(--text-muted);line-height:1.55}
.update-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}
.update-admin-fact{display:grid;gap:.32rem;padding:1rem;border:1px solid rgba(0,0,0,.055);border-radius:17px;background:#fff}
.update-admin-fact span,.update-admin-release span{color:var(--text-muted);font-size:.78rem}.update-admin-fact strong{font-size:.96rem;overflow-wrap:anywhere}
.update-admin-message{display:grid;gap:.25rem;padding:1rem 1.05rem;border-radius:17px;background:#eef5f0;color:#355445}
.update-admin-message.is-update{background:#eaf4f8;color:#1b5e76}.update-admin-message.is-error{background:#fde8e5;color:#7a2d26}
.update-admin-message span{font-size:.9rem;line-height:1.5}
.update-admin-release{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;padding:1rem 1.05rem;border:1px solid rgba(26,107,138,.12);border-radius:17px;background:#fff}
.update-admin-release>div{display:grid;gap:.2rem}.update-admin-release a{margin-left:auto;color:var(--ocean);font-weight:700}
.update-admin-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.update-admin-actions form{margin:0}
.update-admin-config{display:grid;gap:.35rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.06);color:var(--text-muted);font-size:.85rem;line-height:1.5}
.update-admin-config strong{color:var(--text)}.update-admin-config code{font-size:.8rem;overflow-wrap:anywhere}
.update-progress-card{width:min(780px,100%);display:grid;gap:1.35rem;padding:1.7rem}.update-progress-heading{display:grid;gap:.35rem;padding-right:3.5rem}.update-progress-heading h2{margin:0;font-family:Georgia,serif;font-size:clamp(1.65rem,3vw,2.25rem);color:var(--text)}.update-progress-heading p{margin:0;color:var(--text-muted);line-height:1.55}.update-progress-kicker{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.update-progress-confirm,.update-progress-runtime{display:grid;gap:1rem}.update-progress-warning{display:grid;gap:.28rem;padding:1rem 1.1rem;border:1px solid rgba(132,92,47,.13);border-radius:17px;background:#faf6ef}.update-progress-warning span{color:var(--text-muted);font-size:.88rem;line-height:1.5}.update-progress-actions{display:flex;justify-content:flex-end;gap:.7rem;flex-wrap:wrap}.update-progress-summary{display:grid;gap:.7rem;padding:1rem 1.1rem;border-radius:18px;background:#f3f7f4}.update-progress-summary>div:first-child{display:flex;justify-content:space-between;gap:1rem;color:var(--ocean)}.update-progress-summary p{margin:0;color:var(--text-muted);font-size:.88rem;line-height:1.5}.update-progress-track{height:10px;overflow:hidden;border-radius:999px;background:#dfe8e1}.update-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ocean),#83a48c);transition:width .35s ease}.update-progress-steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.55rem;margin:0;padding:0;list-style:none}.update-progress-steps li{display:grid;align-content:start;gap:.55rem;min-width:0;padding:.75rem .55rem;border:1px solid rgba(0,0,0,.06);border-radius:15px;background:#fafafa;color:#8a8e8b;transition:.2s ease}.update-progress-steps li>span{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:#e7e9e7;font-size:.74rem;font-weight:800}.update-progress-steps li div{display:grid;gap:.15rem}.update-progress-steps strong{font-size:.78rem}.update-progress-steps small{font-size:.68rem;line-height:1.3}.update-progress-steps li.is-current{border-color:rgba(63,104,78,.25);background:#eef5f0;color:var(--ocean);box-shadow:0 8px 20px rgba(63,104,78,.08)}.update-progress-steps li.is-current>span{background:var(--ocean);color:#fff}.update-progress-steps li.is-complete{background:#f5faf6;color:#50725b}.update-progress-steps li.is-complete>span{background:#d7eddd;color:#2e6a40}.update-progress-steps li.is-complete>span::before{content:'✓';font-size:.84rem}.update-progress-steps li.is-complete>span{font-size:0}.update-progress-result{padding:.9rem 1rem;border-radius:15px;background:#e9f6ed;color:#2f6740;font-size:.88rem;line-height:1.5}.update-progress-result.is-error{padding:0;background:#fde8e5;color:#7a2d26}.update-progress-error-details summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;cursor:pointer;list-style:none}.update-progress-error-details summary::-webkit-details-marker{display:none}.update-progress-error-details summary span{font-weight:650}.update-progress-error-details summary strong{flex:0 0 auto;font-size:.76rem;text-decoration:underline;text-underline-offset:3px}.update-progress-error-details[open] summary strong{font-size:0}.update-progress-error-details[open] summary strong::after{content:'Details schließen';font-size:.76rem}.update-progress-error-body{display:grid;gap:.85rem;padding:0 1rem 1rem;border-top:1px solid rgba(122,45,38,.12)}.update-progress-error-body>p{margin:.85rem 0 0;font-weight:650;overflow-wrap:anywhere}.update-progress-error-body dl{display:grid;gap:.45rem;margin:0}.update-progress-error-body dl>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:.75rem}.update-progress-error-body dt{font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;opacity:.72}.update-progress-error-body dd{margin:0;overflow-wrap:anywhere}.update-progress-modal.is-running [data-update-modal-close]{display:none}.update-progress-finish-actions{padding-top:.2rem}.update-modal-open{overflow:hidden}
.update-progress-card>.update-modal-close{display:grid;place-items:center;box-sizing:border-box;width:42px;min-width:42px;max-width:42px;height:42px;min-height:42px;max-height:42px;padding:0;border-radius:50%;line-height:1}.update-progress-card>.update-modal-close svg{display:block;width:19px;height:19px;margin:auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.update-progress-description{display:grid;gap:.35rem;padding:1rem 1.1rem;border:1px solid rgba(95,122,102,.14);border-radius:17px;background:#f3f7f4}.update-progress-description strong{color:var(--ocean);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}.update-progress-description p{margin:0;color:var(--text);font-size:.9rem;line-height:1.55}.update-settings-card,.update-schedule-card{display:grid;gap:1.15rem;padding:1.2rem;border:1px solid rgba(95,122,102,.13);border-radius:20px;background:linear-gradient(180deg,#fff 0%,#fbfcfa 100%);box-shadow:0 10px 28px rgba(47,38,27,.04)}
.update-settings-head,.update-schedule-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(95,122,102,.1)}
.update-settings-head>div,.update-schedule-head>div{display:grid;gap:.25rem}.update-settings-head strong,.update-schedule-head strong{font-size:1rem;color:var(--text)}.update-settings-head span,.update-schedule-head span{font-size:.82rem;line-height:1.45;color:var(--text-muted)}
.update-scheduler-state{display:inline-flex!important;align-items:center;min-height:28px;padding:.3rem .68rem;border-radius:999px;background:#eef0ee;color:#68716b!important;font-family:'Jost',sans-serif;font-size:.72rem!important;font-weight:700;letter-spacing:0;white-space:nowrap}.update-scheduler-state.is-active{background:#dcfce7;color:#15803d!important}
.update-settings-card .form-group{margin:0}.update-settings-url{min-width:0}.update-endpoint-static{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.62rem .8rem;border:1px solid rgba(0,0,0,.08);border-radius:12px;background:#fff}.update-endpoint-dot{width:11px;height:11px;flex:0 0 11px;border-radius:999px;background:#c0392b;box-shadow:0 0 0 4px rgba(192,57,43,.11)}.update-endpoint-static.is-online .update-endpoint-dot{background:#2e9b5f;box-shadow:0 0 0 4px rgba(46,155,95,.12)}.update-endpoint-static strong{color:#a13d34;font-size:.82rem}.update-endpoint-static.is-online strong{color:#267b4c}.update-interval-input{position:relative}.update-interval-input .form-input{padding-right:5.3rem}.update-interval-input span{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:.8rem;font-weight:700;color:var(--text-muted);pointer-events:none}
.update-key-upload-card{display:grid;gap:1rem;padding:1rem;border:1px solid rgba(26,107,138,.14);border-radius:17px;background:linear-gradient(145deg,#f8fbfa,#f3f8f9)}.update-key-upload-card.is-configured{border-color:rgba(74,116,88,.22);background:linear-gradient(145deg,#f7fbf7,#f2f7f4)}
.update-key-upload-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.update-key-upload-head>div:first-child{display:grid;gap:.25rem}.update-key-upload-head strong{font-size:.94rem}.update-key-upload-head span{color:var(--text-muted);font-size:.8rem;line-height:1.45}.update-key-status-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap;font-family:'Jost',sans-serif}.update-key-status{display:inline-flex;align-items:center;min-height:30px;padding:.34rem .7rem;border-radius:999px;background:#f8e7e3;color:#8a4036!important;font-family:'Jost',sans-serif;font-size:.76rem!important;font-style:normal;font-weight:700;line-height:1.2;letter-spacing:0;white-space:nowrap}.is-configured .update-key-status{background:#dcfce7;color:#15803d!important}.is-configured .update-key-status.is-invalid{background:#f8e7e3;color:#8a4036!important}.update-key-delete-button{min-height:30px;padding:.34rem .55rem;border:0;border-radius:8px;background:transparent;color:#a3483f;font-family:'Jost',sans-serif;font-size:.76rem;font-style:normal;font-weight:700;line-height:1.2;letter-spacing:0;cursor:pointer;text-decoration:none}.update-key-delete-button:hover{background:#f8e7e3;color:#7f3029}
.update-key-facts{display:grid;grid-template-columns:minmax(130px,.35fr) minmax(0,1fr);gap:.65rem}.update-key-facts>div{display:grid;gap:.28rem;padding:.72rem .8rem;border-radius:12px;background:rgba(255,255,255,.82)}.update-key-facts span{color:var(--text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.update-key-facts strong{font-size:.84rem}.update-key-facts code{font-size:.72rem;line-height:1.5;overflow-wrap:anywhere}
.update-key-file-input{padding:.58rem .7rem;background:#fff}.update-key-file-input::file-selector-button{margin-right:.8rem;padding:.55rem .75rem;border:0;border-radius:9px;background:var(--ocean);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.update-key-input{min-height:150px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;line-height:1.5;resize:vertical}
.update-key-file-details{display:grid;gap:1rem;border-top:1px solid rgba(95,122,102,.1);padding-top:.9rem}.update-key-file-details summary{cursor:pointer;color:var(--ocean);font-size:.82rem;font-weight:700}.update-key-file-details[open] summary{margin-bottom:1rem}
.update-settings-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.15rem}.update-settings-footer>span{color:var(--text-muted);font-size:.8rem;line-height:1.45}
.update-schedule-card>p{margin:0;color:var(--text-muted);font-size:.88rem;line-height:1.6}.update-scheduler-confirmed{padding:.85rem 1rem;border-radius:14px;background:#edf8f0;color:#306044;font-size:.84rem;line-height:1.5}
.update-cron-help{border:1px solid rgba(26,107,138,.13);border-radius:16px;background:var(--ocean-pale);overflow:hidden}.update-cron-help summary{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;cursor:pointer;color:var(--ocean);font-size:.84rem;font-weight:750;list-style:none}.update-cron-help summary::-webkit-details-marker{display:none}.update-info-icon{display:inline-grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:999px;background:var(--ocean);color:#fff;font-family:Georgia,serif;font-size:.82rem;font-weight:700}.update-cron-help>div{display:grid;gap:.65rem;padding:0 1rem 1rem 2.75rem;color:var(--text-muted);font-size:.82rem;line-height:1.55}.update-cron-help p{margin:0}.update-cron-help code{display:block;padding:.75rem .85rem;border-radius:12px;background:#fff;color:var(--text);overflow-wrap:anywhere;user-select:all}
@media(max-width:900px){.update-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.update-key-upload-head{align-items:stretch;flex-direction:column}.update-key-facts{grid-template-columns:1fr}.admin-update-banner,.update-admin-head,.update-settings-head,.update-schedule-head,.update-settings-footer{align-items:stretch;flex-direction:column}.admin-update-banner .btn,.update-settings-footer .btn{justify-content:center;width:100%}.update-admin-grid{grid-template-columns:1fr}.update-admin-release a{margin-left:0;width:100%}.update-scheduler-state{align-self:flex-start}.update-cron-help>div{padding-left:1rem}}
.update-progress-heading h2{margin:0;color:var(--text);font-family:'Jost',sans-serif;font-size:1.55rem;font-stretch:normal;font-style:normal;font-weight:700;line-height:1.25;letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.update-progress-error-details summary span,.update-progress-error-body>p{font-family:'Jost',sans-serif;font-style:normal;font-weight:700;letter-spacing:0}
.update-progress-heading h2:focus,.update-progress-runtime:focus{outline:none}.update-progress-actions [data-update-start]:focus:not(:focus-visible){outline:none;box-shadow:none}
@media(max-width:760px){.update-progress-steps{grid-template-columns:1fr 1fr}.update-progress-actions .btn{flex:1}.update-progress-card{padding:1.2rem}.update-progress-heading{padding-right:2.5rem}}
@media(max-width:640px){.update-progress-error-details summary{align-items:flex-start;flex-direction:column;gap:.35rem}.update-progress-error-body dl>div{grid-template-columns:1fr;gap:.08rem}}
/* Section */
.login-screen{position:fixed;inset:0;z-index:2000;background:linear-gradient(135deg,var(--stone-dark) 0%,var(--ocean) 100%);display:flex;align-items:center;justify-content:center}
.login-card{background:var(--white);border-radius:var(--radius-xl);padding:3rem;width:100%;max-width:400px;box-shadow:0 40px 80px rgba(0,0,0,.3);text-align:center}
.login-card-shake{animation:login-card-shake .48s cubic-bezier(.36,.07,.19,.97) both}
.login-logo{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--ocean);margin-bottom:.3rem}
.login-sub{font-size:.82rem;color:var(--text-muted);margin-bottom:2rem}
.invite-accept-page{min-height:100vh;background:linear-gradient(145deg,#f4efe7 0%,#e7e1d8 100%)}
.invite-accept-shell{min-height:100vh;display:grid;place-items:center;padding:2rem 1rem}
.invite-accept-card{position:relative;max-width:720px;padding:3.25rem;text-align:center;box-shadow:0 28px 70px rgba(57,48,39,.16)}
.invite-language-switcher{position:absolute;top:1.25rem;right:1.25rem;display:inline-flex;gap:.25rem;padding:.25rem;border:1px solid rgba(95,122,102,.15);border-radius:999px;background:#f7f5f0}
.invite-language-switcher a{display:grid;place-items:center;min-width:38px;min-height:32px;padding:0 .45rem;border-radius:999px;color:var(--text-muted);font-size:.7rem;font-weight:800;letter-spacing:.08em}
.invite-language-switcher a:hover,.invite-language-switcher a:focus-visible{background:var(--ocean-pale);color:var(--ocean);outline:none}
.invite-language-switcher a.active{background:var(--ocean);color:#fff}
.invite-accept-header{display:grid;justify-items:center;gap:.55rem;margin:1rem auto 2rem;max-width:570px}
.invite-site-name{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:650;color:var(--ocean)}
.invite-accept-header h1{margin:0;font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,5vw,2.8rem);font-weight:600;line-height:1.08;color:var(--text)}
.invite-accept-header p{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.6}
.invite-accept-form{text-align:left}
.invite-accept-form .form-help-text{text-align:center;line-height:1.55}
@media(max-width:620px){.invite-accept-shell{place-items:start center;padding:1rem .65rem}.invite-accept-card{padding:4.3rem 1.15rem 1.5rem;border-radius:24px}.invite-language-switcher{top:1rem;right:50%;transform:translateX(50%)}.invite-accept-header{margin-top:.5rem}.invite-accept-form .form-row{grid-template-columns:1fr}}

/* Section */
@keyframes login-card-shake{
  10%,90%{transform:translateX(-1px)}
  20%,80%{transform:translateX(2px)}
  30%,50%,70%{transform:translateX(-4px)}
  40%,60%{transform:translateX(4px)}
}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.fade-up{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.fade-up.visible{opacity:1;transform:translateY(0)}
@media (prefers-reduced-motion: reduce){
  .login-card-shake{animation:none}
  .nav-access-panel{animation:none}
  .nav-access-toggle,.nav-access-link,.nav-access-link-icon,.nav-access-link-arrow{transition:none}
}

/* Section */
.lightbox{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lightbox-inner{max-width:1180px;width:min(94vw,1180px);background:transparent;border-radius:var(--radius-xl);overflow:hidden;position:relative}
.lightbox-close{position:absolute;top:1.25rem;right:1.25rem;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);color:var(--white);border:1px solid rgba(255,255,255,.16);border-radius:50%;width:44px;height:44px;font-size:1.25rem;cursor:pointer;z-index:2}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);box-sizing:border-box;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);color:var(--white);border:1px solid rgba(255,255,255,.16);border-radius:50%;width:52px;min-width:52px;height:52px;min-height:52px;padding:0;cursor:pointer;z-index:2;display:grid;place-items:center;transition:var(--transition)}
.lightbox-nav:hover,.lightbox-close:hover{background:rgba(255,255,255,.2)}
.lightbox-prev{left:1.25rem}
.lightbox-next{right:1.25rem}
.lightbox-content{max-height:88vh;display:flex;align-items:center;justify-content:center;font-size:4rem;background:transparent}

/* Section */
@media(max-width:1024px){
  .about-grid,.booking-grid,.contact-grid,.location-grid,.footer-grid{grid-template-columns:1fr}
  .map-card{padding:.8rem}
  .map-embed-shell{border-radius:18px;min-height:312px}
  .map-embed-inner{inset:0;border-radius:18px}
  .admin-location-preview-meta,.highlight-admin-main-grid{grid-template-columns:1fr}
  .admin-details-copy-grid,.admin-details-amenity-grid{grid-template-columns:1fr}
  .account-grid,.account-booking-grid{grid-template-columns:1fr}
  .footer-brand-column{max-width:none}
  .footer-links-pages{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-stats-inner{grid-template-columns:repeat(2,1fr)}
  .kpi-grid{grid-template-columns:repeat(2,1fr)}
  .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-overview-layout{grid-template-columns:1fr}
  .dashboard-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-settings-inline-grid{grid-template-columns:1fr}
  .dashboard-settings-actions{align-items:stretch;flex-direction:column}.dashboard-settings-save-status{margin-right:0;text-align:center}.dashboard-settings-actions .btn{width:100%;justify-content:center}
  .dashboard-widget-picker{grid-template-columns:1fr}
  .dashboard-widget-grid{grid-template-columns:1fr}
  .dashboard-sortable-card-half,.dashboard-sortable-card-wide{grid-column:1 / -1}
  .dashboard-activity-grid{grid-template-columns:1fr}
  .dashboard-availability-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  #admin-view .admin-sidebar{width:220px}
  #admin-view .admin-sidebar-toggle{left:205px}
  #admin-view.is-sidebar-collapsed .admin-sidebar{width:0}
  #admin-view.is-sidebar-collapsed .admin-sidebar-toggle{left:.75rem}
}
@media(max-width:1180px){
  .nav-links{display:none;position:absolute;top:calc(100% + .55rem);left:1rem;right:1rem;padding:.75rem;border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 18px 40px rgba(47,38,27,.16);border:1px solid rgba(95,122,102,.12);flex-direction:column;align-items:stretch;gap:.25rem}
  .nav-links.open{display:flex}
  .nav-links a{padding:.85rem .9rem;border-radius:12px;color:var(--text)!important;text-transform:none;letter-spacing:normal}
  .nav-links a:hover{background:var(--sand-pale);color:var(--ocean)!important}
  .nav-links .nav-cta{padding:.85rem .9rem;text-align:center}
  .nav-menu{display:block}
}
@media(max-width:768px){
  .nav-links{display:none}
  .nav-menu{display:block}
  .nav-actions{margin-left:auto}
  .nav-guest-entry{padding:.62rem .9rem;font-size:.8rem}
  .nav-guest-entry span:last-child{display:none}
  .nav-access-panel{position:fixed;top:calc(72px + .5rem);right:max(.75rem,env(safe-area-inset-right));left:max(.75rem,env(safe-area-inset-left));width:auto;max-width:none;max-height:calc(100dvh - 84px - env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;transform-origin:top center}
  .nav-access-panel::before{display:none}
  .admin-navigation-row{grid-template-columns:1fr}
  .gallery-strip-wrap{padding:0}
  .gallery-strip-nav{display:none}
  .gallery-card{flex:0 0 calc((100% - var(--gallery-gap)) / 2);max-width:calc((100% - var(--gallery-gap)) / 2)}
  .gallery-media-frame{height:clamp(220px,42vw,300px)}
  .hero-stats-inner{grid-template-columns:1fr 1fr}
  .host-card{grid-template-columns:1fr;text-align:center}
  .host-contacts{justify-content:center}
  .admin-sidebar{display:none}
  .admin-topbar{align-items:flex-start;flex-direction:column}
  .admin-topbar-actions{width:100%;justify-content:space-between}
  .admin-lang-switcher{justify-content:flex-start}
  .admin-user-menu{margin-left:auto}
  .admin-user-menu-panel{right:0;left:auto;min-width:240px}
  .dashboard-kpi-grid{grid-template-columns:1fr}
  .dashboard-timeline-item{grid-template-columns:76px 10px minmax(0,1fr)}
  .dashboard-timeline-item .status-pill{grid-column:3;justify-self:start}
  .dashboard-availability-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .dashboard-quick-grid{grid-template-columns:1fr}
  .dashboard-quick-grid-compact{grid-template-columns:1fr}
  .dashboard-task-card{flex-direction:column;align-items:flex-start}
  .dashboard-mini-stats{grid-template-columns:1fr}
  .admin-user-summary{align-items:flex-start;flex-direction:column}
  .admin-user-summary-side{justify-content:flex-start}
  .admin-user-permissions-grid{grid-template-columns:1fr}
  .admin-user-security-grid{grid-template-columns:1fr}
  .customer-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .customer-status-legend{padding:.85rem .9rem}
  .customer-detail-contact-row{grid-template-columns:1fr;gap:.25rem}
  .customer-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .customer-detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .customer-detail-communication{grid-template-columns:1fr}
  .customer-overview-card-head{grid-template-columns:minmax(0,1fr)}
  .customer-overview-badges{justify-items:start;grid-auto-flow:column;justify-content:flex-start}
  .customer-search-form{width:100%}
  .customer-overview-scroll{max-height:none;padding-right:0}
  .customer-pagination{justify-content:center;flex-wrap:wrap}
  .customer-drawer-resize-handle{display:none}
  .account-booking-summary,.account-customer-card{padding:1rem}
  .account-booking-body{padding:0 1rem 1rem}
  .account-booking-badges{justify-content:flex-start}
  .form-row{grid-template-columns:1fr}
  .booking-action-bar{flex-direction:column;align-items:stretch}
  .about-specs{grid-template-columns:1fr}
  .booking-summary-column{padding-top:0}
  .about-image-wrap{max-width:620px;min-height:520px;margin:0 auto}
  .about-badge{right:1rem;bottom:1rem}
  .amenity-editor-row{grid-template-columns:1fr}
  .admin-edit-card{padding:1rem}
  .admin-hero-button-grid,.admin-hero-stats-grid,.admin-hero-button-inline-row,.admin-hero-stat-inline-row{grid-template-columns:1fr}
  .admin-amenity-card{padding:.95rem}
  .contact-mail-modal{width:min(100%,calc(100vw - 1rem))}
  .contact-mail-actions{flex-direction:column}
  .contact-mail-actions .btn{width:100%;justify-content:center}
  .admin-design-media-grid{grid-template-columns:1fr}
  .admin-media-picker-assets{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
}
@media(max-width:480px){
  footer{padding-left:1rem;padding-right:1rem}
  .footer-links-pages{grid-template-columns:1fr}
  .footer-bottom{align-items:flex-start;flex-direction:column}
  .footer-social-links{justify-content:flex-start;margin-left:0}
  .hero-stats-inner{grid-template-columns:1fr 1fr}
  .gallery-card{flex:0 0 100%;max-width:100%}
  .gallery-media-frame{height:clamp(230px,70vw,360px)}
  .about-image-wrap{min-height:420px}
  .kpi-grid{grid-template-columns:1fr 1fr}
  .customer-overview-stats{grid-template-columns:1fr}
  .customer-status-legend{padding:.8rem .85rem}
  .customer-detail-facts{grid-template-columns:1fr}
  .customer-detail-meta-grid{grid-template-columns:1fr}
  .customer-detail-communication{grid-template-columns:1fr}
  .customer-mail-history-list{max-height:320px}
  .customer-mail-reader-content{min-height:180px}
  .customer-search-input{padding-right:1rem;padding-bottom:3.6rem}
  .customer-search-submit{top:auto;bottom:.4rem;right:.4rem;transform:none;width:calc(100% - .8rem)}
  .dashboard-list-item{flex-direction:column;align-items:flex-start}
  .dashboard-list-side{justify-items:start}.dashboard-payment-badges,.dashboard-payment-amounts{justify-content:flex-start}.dashboard-payment-amounts>span{justify-items:start}
}

.admin-nav a.admin-nav-item{text-decoration:none}
.booking-form-wrap .btn[disabled]{opacity:.75;cursor:wait}

/* Booking completion */
.booking-confirmation-page{min-height:100vh;background:radial-gradient(circle at 10% 0%,rgba(200,139,90,.13),transparent 34rem),var(--off-white);color:var(--text)}
.booking-confirmation-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:32px 0 64px}
.booking-confirmation-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.booking-confirmation-brand{color:var(--ocean);font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;text-decoration:none}
.booking-confirmation-languages{display:flex;align-items:center;gap:5px;padding:5px;border:1px solid rgba(88,115,97,.14);border-radius:999px;background:rgba(255,255,255,.78)}
.booking-confirmation-languages a{display:grid;place-items:center;min-width:42px;min-height:34px;border-radius:999px;color:var(--text-muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-decoration:none}
.booking-confirmation-languages a.active{background:var(--ocean);color:#fff}
.booking-confirmation-card{overflow:hidden;border:1px solid rgba(88,115,97,.15);border-radius:32px;background:#fff;box-shadow:0 24px 70px rgba(62,52,43,.1)}
.booking-confirmation-hero{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;padding:clamp(28px,6vw,58px);background:linear-gradient(135deg,rgba(88,115,97,.12),rgba(200,139,90,.1))}
.booking-confirmation-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--ocean);color:#fff;font-size:1.75rem;font-weight:800;box-shadow:0 12px 28px rgba(88,115,97,.22)}
.booking-confirmation-hero h1{max-width:820px;margin:.35rem 0 .8rem;font-size:clamp(2rem,5vw,3.6rem);line-height:1.04;color:var(--text)}
.booking-confirmation-hero>div>p:not(.section-tag){max-width:780px;margin:0;color:var(--text-muted);font-size:1rem;line-height:1.75}
.booking-confirmation-status{display:inline-flex;margin-top:20px;padding:8px 13px;border:1px solid rgba(200,139,90,.28);border-radius:999px;background:#fff7eb;color:#8a5629;font-size:.78rem;font-weight:800;letter-spacing:.03em}
.booking-confirmation-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0 clamp(28px,6vw,58px);border-bottom:1px solid rgba(75,64,51,.1)}
.booking-confirmation-facts>div{padding:25px 20px;border-right:1px solid rgba(75,64,51,.09)}
.booking-confirmation-facts>div:first-child{padding-left:0}.booking-confirmation-facts>div:last-child{padding-right:0;border-right:0}
.booking-confirmation-facts dt{margin-bottom:7px;color:var(--text-muted);font-size:.7rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.booking-confirmation-facts dd{margin:0;color:var(--text);font-size:1rem;font-weight:750;overflow-wrap:anywhere}
.booking-confirmation-next{padding:clamp(28px,5vw,48px) clamp(28px,6vw,58px)}
.booking-confirmation-next>h2{margin:0 0 24px;font-size:clamp(1.55rem,3vw,2.15rem)}
.booking-confirmation-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.booking-confirmation-steps article{display:grid;grid-template-columns:auto 1fr;gap:14px;align-content:start;padding:22px;border:1px solid rgba(88,115,97,.13);border-radius:20px;background:#fbfaf7}
.booking-confirmation-steps article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:rgba(88,115,97,.11);color:var(--ocean);font-size:.8rem;font-weight:850}
.booking-confirmation-steps h3{margin:2px 0 7px;font-size:.96rem}.booking-confirmation-steps p{margin:0;color:var(--text-muted);font-size:.84rem;line-height:1.65}.booking-confirmation-steps small{display:block;margin-top:8px;color:var(--ocean);font-weight:750}
.booking-confirmation-bank{display:grid;gap:7px;margin:16px 0 0;padding-top:14px;border-top:1px solid rgba(88,115,97,.13)}
.booking-confirmation-bank>div{display:grid;grid-template-columns:minmax(90px,.7fr) minmax(0,1.3fr);gap:10px}.booking-confirmation-bank dt{color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.booking-confirmation-bank dd{margin:0;color:var(--text);font-size:.78rem;font-weight:750;overflow-wrap:anywhere}
.booking-confirmation-actions{display:flex;justify-content:flex-end;gap:12px;padding:0 clamp(28px,6vw,58px) clamp(28px,5vw,48px)}
.booking-confirmation-actions .btn{justify-content:center;min-width:190px}
@media(max-width:800px){.booking-confirmation-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-confirmation-facts>div:nth-child(2){border-right:0}.booking-confirmation-facts>div:nth-child(n+3){border-top:1px solid rgba(75,64,51,.09)}.booking-confirmation-facts>div:nth-child(3){padding-left:0}.booking-confirmation-steps{grid-template-columns:1fr}}
@media(max-width:540px){.booking-confirmation-shell{width:min(100% - 20px,1120px);padding-top:16px}.booking-confirmation-topbar{align-items:flex-start}.booking-confirmation-card{border-radius:24px}.booking-confirmation-hero{grid-template-columns:1fr;gap:18px}.booking-confirmation-icon{width:48px;height:48px}.booking-confirmation-facts{grid-template-columns:1fr}.booking-confirmation-facts>div,.booking-confirmation-facts>div:nth-child(3){padding:18px 0;border-right:0;border-top:1px solid rgba(75,64,51,.09)}.booking-confirmation-facts>div:first-child{border-top:0}.booking-confirmation-actions{flex-direction:column}.booking-confirmation-actions .btn{width:100%;min-width:0}}
.flash-box{margin:1rem 0;padding:1rem 1.25rem;border-radius:12px}
.flash-box.error{background:#fde8e5;color:#6b241f}
.flash-box.success{background:#e8f6ef;color:#1f5135}
.content-prose{font-size:1rem;line-height:1.8;color:var(--text)}
.content-prose h2,.content-prose h3{font-family:'Cormorant Garamond',serif;margin:1.5rem 0 .75rem;color:var(--text)}
.content-prose p,.content-prose li{margin-bottom:1rem}
.content-prose ul,.content-prose ol{padding-left:1.25rem}
.subpage-nav{border-bottom:1px solid rgba(95,122,102,.12);box-shadow:0 10px 28px rgba(47,38,27,.06)}
.subpage-language-control{gap:0}
#nav.scrolled .subpage-lang-switcher{gap:.3rem;padding:.28rem;background:#fff;border-color:rgba(95,122,102,.25);box-shadow:0 7px 18px rgba(47,38,27,.08)}
#nav.scrolled .subpage-lang-switcher .lang-link{border:1px solid transparent;color:#3f493f!important;background:#f1f2ee}
#nav.scrolled .subpage-lang-switcher .lang-link:hover,#nav.scrolled .subpage-lang-switcher .lang-link:focus-visible{border-color:rgba(95,122,102,.28);background:#e6ebe5;color:var(--ocean)!important;outline:none}
#nav.scrolled .subpage-lang-switcher .lang-link.active{border-color:var(--ocean);background:var(--ocean);color:#fff!important;box-shadow:0 5px 12px rgba(26,107,138,.2)}
.legal-page-body .subpage-lang-switcher{background:#fff;border-color:rgba(95,122,102,.24);box-shadow:0 7px 18px rgba(47,38,27,.08)}
.legal-page-body .subpage-lang-switcher .lang-link{border:1px solid rgba(95,122,102,.12);background:#f2eee8;color:#493f34!important}
.legal-page-body .subpage-lang-switcher .lang-link:hover,.legal-page-body .subpage-lang-switcher .lang-link:focus-visible{border-color:rgba(95,122,102,.34);background:#e7ece7;color:#3f6049!important;outline:3px solid rgba(95,122,102,.14);outline-offset:2px}
.legal-page-body .subpage-lang-switcher .lang-link.active{border-color:var(--ocean);background:var(--ocean);color:#fff!important;box-shadow:0 5px 12px rgba(95,122,102,.22)}
.legal-page-card{overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.legal-page-title{color:var(--text)}
.legal-page-content{color:var(--text)}
.legal-page-content h2{font-size:1.65rem;color:var(--text)}
.legal-page-content h3{padding-top:.35rem;font-size:1.28rem;color:var(--text)}
.legal-page-content a{color:var(--ocean);text-decoration-color:rgba(26,107,138,.35);text-underline-offset:.18em}
.legal-page-content strong{color:var(--text)}

/* Readable document layout inside the booking legal overlay. */
.booking-legal-dialog-content{background:linear-gradient(180deg,#f6f4ef 0%,#f2f0ea 100%)}
.booking-legal-panel.content-prose{max-width:780px;margin:0 auto;padding:clamp(1.35rem,3vw,2.5rem);border:1px solid rgba(95,122,102,.12);border-radius:22px;background:#fff;box-shadow:0 18px 45px rgba(47,38,27,.07);font-size:.97rem;line-height:1.75;overflow-wrap:anywhere}
.booking-legal-panel>h2:first-child{display:none}
.booking-legal-panel>h2:first-child+p{display:inline-flex;margin:0 0 1.15rem;padding:.4rem .65rem;border-radius:999px;background:#eef3ee;color:var(--ocean);font-size:.77rem;line-height:1.3}
.booking-legal-panel>h2:first-child+p strong{font-weight:650}
.booking-legal-panel h3{margin:1.75rem 0 .65rem;padding-top:1.2rem;border-top:1px solid rgba(95,122,102,.13);font-family:'Jost',sans-serif;font-size:1.08rem;line-height:1.35}
.booking-legal-panel>h2:first-child+h3,.booking-legal-panel>h2:first-child+p+h3{margin-top:.25rem;padding-top:.25rem;border-top:0}
.booking-legal-panel h4{margin:1.3rem 0 .55rem;font-size:.98rem;line-height:1.4}
.booking-legal-panel p{margin:0 0 1rem}
.booking-legal-panel ul,.booking-legal-panel ol{margin:.25rem 0 1.1rem;padding-left:1.35rem}
.booking-legal-panel li{margin-bottom:.45rem;padding-left:.15rem}
.booking-legal-panel a{font-weight:550;overflow-wrap:anywhere}
.booking-legal-panel table{display:block;width:100%;margin:1rem 0;overflow-x:auto;border-collapse:collapse}
.booking-legal-panel th,.booking-legal-panel td{padding:.7rem .8rem;border:1px solid rgba(95,122,102,.16);text-align:left;vertical-align:top}
.booking-legal-panel th{background:#f3f6f3;font-weight:700}
.booking-legal-panel blockquote{margin:1rem 0;padding:.85rem 1rem;border-left:3px solid var(--ocean);background:#f5f7f4}
@media(max-width:640px){.booking-legal-dialog-content{padding:.85rem;background:#fff}.booking-legal-panel.content-prose{padding:.7rem .15rem 1.5rem;border:0;border-radius:0;box-shadow:none;font-size:.95rem;line-height:1.68}.booking-legal-panel h3{margin-top:1.45rem;padding-top:1rem;font-size:1.02rem}}


.account-user-menu{position:relative}
.account-user-button{list-style:none;width:48px;height:48px;border-radius:999px;border:1px solid rgba(95,122,102,.14);background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;box-shadow:0 10px 24px rgba(0,0,0,.05)}
.account-user-button::-webkit-details-marker{display:none}
.account-user-panel{position:absolute;right:0;top:calc(100% + .65rem);min-width:220px;padding:.85rem;border-radius:18px;background:#fff;border:1px solid rgba(95,122,102,.14);box-shadow:0 16px 36px rgba(0,0,0,.12);display:grid;gap:.3rem;z-index:15}
.account-user-panel-name{font-weight:700;color:var(--text);padding:.25rem .4rem .5rem;border-bottom:1px solid rgba(0,0,0,.06);margin-bottom:.2rem}
.account-user-panel a,.account-user-panel button{display:flex;width:100%;text-align:left;text-decoration:none;padding:.7rem .8rem;border-radius:12px;color:var(--text);background:none;border:0;font:inherit;cursor:pointer}
.account-user-panel a:hover,.account-user-panel button:hover{background:rgba(95,122,102,.08)}
.account-toast{position:fixed;top:1.2rem;right:1.2rem;z-index:80;max-width:min(420px,calc(100vw - 2rem));padding:1rem 1.15rem;border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.14);transition:opacity .25s ease,transform .25s ease}
.account-toast-success{background:#e8f6ef;color:#1f5135}
.account-toast-error{background:#fde8e5;color:#6b241f}
.account-toast.is-hidden{opacity:0;transform:translateY(-10px)}
.account-booking-summary-static{cursor:default}
.account-profile-form,.account-review-form,.account-review-list{display:grid;gap:.95rem}
.account-payment-fallback{display:grid;gap:.35rem;padding:1rem;border-radius:16px;background:rgba(95,122,102,.08);color:var(--text)}
.account-contact-list{display:grid;gap:.8rem;min-width:0}
.account-contact-list-main{gap:.85rem}
.detail-card-contact{padding:1.7rem}
.account-contact-heading{display:grid;gap:.35rem;margin-bottom:1.25rem}
.account-contact-heading>span{color:var(--ocean);font-size:.69rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.detail-card-contact .account-contact-heading h3{margin:0;font-size:1.55rem;line-height:1.2}
.account-contact-heading>p{margin:.2rem 0 0;color:var(--text-muted);font-size:.93rem;line-height:1.5}
.account-contact-people{display:grid;gap:1.25rem}.account-contact-person{display:grid;gap:.85rem;min-width:0}.account-contact-person+.account-contact-person{padding-top:1.25rem;border-top:1px solid rgba(95,122,102,.16)}.account-contact-person-heading{display:grid;gap:.22rem}.account-contact-person-heading span{color:var(--ocean);font-size:.69rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.account-contact-person-heading strong{font-size:.95rem;line-height:1.4;color:var(--text)}
.account-contact-home-item{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:1rem;padding:1.05rem 1.1rem;border:1px solid rgba(95,122,102,.09);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(64,53,42,.055)}
.account-contact-home-item .ci-icon{width:44px;height:44px;margin:0;background:var(--ocean-pale);color:var(--ocean);box-shadow:none;font-size:1.15rem;line-height:1;align-self:center;justify-self:start}
.account-contact-home-item > div:last-child{min-width:0}
.account-contact-home-item .ci-label,.account-contact-home-item .ci-val{display:block;max-width:100%}
.account-contact-home-item .ci-val{line-height:1.55;word-break:break-word;overflow-wrap:anywhere}
.account-bank-details{display:grid;gap:.7rem;margin-top:.15rem}
.account-bank-row{display:grid;gap:.22rem;padding:.15rem 0;border-bottom:1px solid rgba(95,122,102,.12)}
.account-bank-row:last-child{border-bottom:none;padding-bottom:0}
.account-bank-row strong{display:block;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.account-bank-row span{display:block;color:var(--text);line-height:1.65;word-break:break-word}
.account-bank-note{margin-top:.9rem}
.detail-card-payment-plain p{margin-bottom:0}
.detail-card-info{overflow:hidden}
.account-info-rotator{margin:.7rem 0 1rem;min-height:2.4rem;display:flex;align-items:center;overflow:hidden}
.account-info-rotator-text{display:block;color:var(--text);line-height:1.7;transition:opacity .32s ease,transform .32s cubic-bezier(.22,1,.36,1),filter .32s ease;opacity:1;transform:translateY(0);filter:blur(0)}
.account-info-rotator-text.is-changing{opacity:0;transform:translateY(-10px);filter:blur(2px)}
.detail-card-contact,.detail-card-address,.detail-card-payment,.detail-card-info{background:linear-gradient(180deg,#fff 0%,#fffaf2 100%);overflow:hidden}
.account-review-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:1rem}
.account-review-item{padding:1rem;border-radius:16px;background:rgba(255,255,255,.78);border:1px solid rgba(95,122,102,.1)}
.account-review-item-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:.55rem}
@media(max-width:1039px){.account-review-grid{grid-template-columns:1fr}.account-topbar-actions{justify-content:flex-end}}
@media(max-width:640px){.account-topbar-actions{width:100%;justify-content:flex-start}.account-lang-switcher{padding:.24rem .28rem}.account-lang-switcher .lang-link{min-width:40px}.detail-card{padding:1.1rem 1rem}.detail-card-contact{padding:1.3rem}.account-contact-heading{margin-bottom:1rem}.detail-card-contact .account-contact-heading h3{font-size:1.4rem}.account-contact-home-item{grid-template-columns:42px minmax(0,1fr);gap:.9rem;padding:.95rem}.account-contact-home-item .ci-icon{width:42px;height:42px;font-size:1.05rem}.account-toast{left:1rem;right:1rem;max-width:none}.account-home-link{width:44px;justify-content:center}}
@media(max-width:900px){.account-booking-grid.is-cancelled{grid-template-columns:1fr}}
@media(max-width:640px){.account-booking-card.is-cancelled .account-booking-summary{padding-left:1.2rem}.account-booking-summary-side{width:100%;justify-content:space-between}.account-booking-chevron{margin-left:auto}.account-booking-compact-facts{margin-top:.45rem}}


.account-menu-trigger{display:flex;width:100%;text-align:left;text-decoration:none;padding:.7rem .8rem;border-radius:12px;color:var(--text);background:none;border:0;font:inherit;cursor:pointer}
.account-menu-trigger:hover{background:rgba(95,122,102,.08)}
.account-modal[hidden]{display:none}
.account-modal{position:fixed;inset:0;z-index:90}
.account-modal-backdrop{position:absolute;inset:0;background:rgba(18,22,20,.48);backdrop-filter:blur(2px)}
.account-modal-dialog{position:relative;z-index:1;width:min(880px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;margin:1rem auto;padding:1.25rem 1.25rem 1.35rem;border-radius:24px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.22)}
.account-modal-close{position:absolute;top:1rem;right:1rem;width:44px;height:44px;border-radius:999px;border:1px solid rgba(95,122,102,.14);background:#fff;color:var(--text);font-size:1.5rem;cursor:pointer}
.account-modal-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding-right:3.5rem;margin-bottom:1rem}
.account-modal-tabs{display:flex;gap:.55rem;flex-wrap:wrap}
.account-modal-tab{padding:.7rem .95rem;border-radius:999px;border:1px solid rgba(95,122,102,.14);background:#fff;color:var(--text);cursor:pointer}
.account-modal-tab.is-active{background:var(--ocean);color:#fff;border-color:var(--ocean)}
.account-security-challenge{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:1rem;margin-bottom:1.35rem}.account-security-challenge .summary-title{margin:.2rem 0 .55rem}.account-security-challenge .section-sub{margin:0}.account-security-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--ocean-pale);color:var(--ocean);font-weight:800;font-size:1.15rem}.account-security-code-form{display:grid;gap:.25rem;margin-top:1rem}.account-security-code-input{max-width:220px!important;font-size:1.2rem!important;font-weight:700;letter-spacing:.18em;text-align:center}.account-security-challenge-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1rem}.account-security-challenge-actions form{margin:0}.account-security-panel{display:grid;gap:1rem}.account-security-section{display:grid;gap:1rem;padding:1.1rem;border:1px solid rgba(95,122,102,.13);border-radius:18px;background:#fbfcfa}.account-security-section-head span{color:var(--accent);font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.account-security-section-head h4{margin:.18rem 0 .3rem;font-size:1.05rem}.account-security-section-head p{margin:0;color:var(--text-muted);font-size:.82rem;line-height:1.55}.account-security-subtitle{padding-top:.15rem;color:var(--text);font-size:.84rem;font-weight:750}.account-security-notice{padding:.8rem .9rem;border-radius:12px;background:var(--ocean-pale);color:var(--text-muted);font-size:.8rem;line-height:1.5}.account-passkey-list{display:grid;gap:.65rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(95,122,102,.12)}.account-passkey-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border-radius:13px;background:#fff}.account-passkey-item>div{display:grid;gap:.18rem;min-width:0}.account-passkey-item strong{overflow-wrap:anywhere}.account-passkey-item small{color:var(--text-muted);font-size:.72rem}.passkey-inline-status[data-tone="error"]{color:#a92f27}.passkey-inline-status[data-tone="success"]{color:#317047}
.account-modal-panel{display:none}
.account-modal-panel.is-active{display:block}
body.account-modal-open{overflow:hidden}
@media(max-width:640px){.account-modal-dialog{width:min(100vw - 1rem,900px);margin:.5rem auto;padding:1rem}.account-modal-head{flex-direction:column;padding-right:0}.account-modal-close{top:.75rem;right:.75rem}}
@media(max-width:640px){.account-security-challenge{grid-template-columns:1fr}.account-security-icon{width:42px;height:42px;border-radius:13px}.account-security-code-input{max-width:none!important;width:100%}.account-security-challenge-actions{align-items:flex-start;flex-direction:column}.account-passkey-item{align-items:flex-start;flex-direction:column}.account-passkey-item .btn{width:100%;justify-content:center}}


.account-badge-status-confirmed,.account-badge-payment-paid{background:#e7f7ed;color:#1f7a45}
.account-badge-status-completed{background:#e8edf3;color:#41546a}
.account-badge-status-pending,.account-badge-payment-pending{background:#fff4d9;color:#9a6a00}
.account-badge-status-cancelled,.account-badge-payment-failed,.account-badge-payment-refunded{background:#fde8e5;color:#b23b33}
.account-badge-payment-unpaid{background:#eef2f5;color:#4b5c6b}


@media(max-width:900px){
  .form-input{font-size:1rem}
  .nav-inner{padding:0 1rem;height:64px}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .btn{width:100%;justify-content:center}
  .hero-stats-inner{padding:1.1rem 1rem}
  .contact-mail-head{padding:1rem 1rem .85rem}
  .contact-mail-body{padding:0 1rem 1rem}
  .contact-mail-actions{padding:.85rem 1rem 1rem}
}

@media(max-width:900px){
  body.admin-mobile-nav-open{overflow:hidden}
  #admin-view{--admin-mobile-drawer-width:min(88vw,320px)}
  #admin-view.active{display:flex;height:100vh;height:100dvh;min-height:0;overflow:hidden}
  #admin-view .admin-sidebar{display:flex;position:fixed;z-index:90;inset:0 auto 0 0;width:var(--admin-mobile-drawer-width);height:100vh;height:100dvh;min-height:0;padding:1.25rem 1rem 1rem;border-radius:0 22px 22px 0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;box-shadow:20px 0 55px rgba(23,19,16,.22);transform:translateX(-105%);transition:transform .24s ease;visibility:visible}
  #admin-view .admin-sidebar>*{opacity:1;visibility:visible;pointer-events:auto}
  #admin-view.is-mobile-nav-open .admin-sidebar{transform:translateX(0)}
  #admin-view.is-sidebar-collapsed .admin-sidebar{width:var(--admin-mobile-drawer-width);padding:1.25rem 1rem 1rem;overflow-y:auto}
  .admin-sidebar-backdrop{display:block;position:fixed;z-index:80;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(24,20,17,.46);backdrop-filter:blur(2px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
  #admin-view.is-mobile-nav-open .admin-sidebar-backdrop{opacity:1;visibility:visible;pointer-events:auto}
  .admin-sidebar-toggle,#admin-view .admin-sidebar-toggle{position:fixed;z-index:100;left:.75rem;right:auto;top:.7rem;width:40px;height:40px;border-radius:13px;transform:none;transition:left .24s ease,background .18s ease,color .18s ease}
  #admin-view.is-sidebar-collapsed .admin-sidebar-toggle{left:.75rem;border-radius:13px}
  #admin-view.is-mobile-nav-open .admin-sidebar-toggle{left:.75rem;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);color:#fff;box-shadow:none}
  .admin-sidebar-toggle-desktop-icon{display:none}
  .admin-sidebar-toggle-mobile-icon{display:block}
  #admin-view.is-mobile-nav-open .admin-sidebar-toggle-mobile-icon{display:block}
  .admin-brand{margin:0 3.1rem 1.15rem 0;padding:.15rem .25rem 1rem;border-bottom:1px solid rgba(255,255,255,.12)}
  .admin-logo{font-size:1.22rem}
  .admin-nav{gap:.2rem}
  .admin-nav-group{display:block;padding:.1rem 0 .65rem}
  .admin-nav-group-mobile-secondary{display:block}
  .admin-nav-group-title,.admin-nav-group:first-child .admin-nav-group-title{padding:.55rem .8rem .4rem}
  .admin-nav-entry-main{padding:.1rem;background:rgba(255,255,255,.035)}
  .admin-nav-item{min-height:44px;padding:.7rem .8rem}
  .admin-nav-submenu{padding:.2rem 0 .25rem .4rem}
  .admin-nav-subitem,.admin-nav-subitem-mobile-hidden,.admin-nav-subitem-mobile-rental-visible{display:block;min-height:40px;padding:.62rem .8rem}
  .admin-sidebar-version{order:5;margin-top:auto;padding:1rem .75rem .25rem}
  .admin-mobile-sidebar-tools{order:4;display:grid;gap:.6rem;margin-top:1rem;padding:1rem .75rem 0;border-top:1px solid rgba(255,255,255,.12)}
  .admin-mobile-sidebar-home,.admin-mobile-sidebar-maintenance{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:44px;padding:.62rem .7rem;border-radius:13px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.82);text-decoration:none;font-size:.82rem}
  .admin-mobile-sidebar-home svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .admin-mobile-sidebar-maintenance small{color:rgba(255,255,255,.55)}
  .admin-mobile-sidebar-status{width:9px;height:9px;margin-left:5px;border-radius:50%;background:#aeb8b1;box-shadow:0 0 0 4px rgba(255,255,255,.08)}
  .admin-mobile-sidebar-status.is-active{background:#54c278;box-shadow:0 0 0 4px rgba(84,194,120,.13)}
  .admin-mobile-sidebar-languages{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}
  .admin-mobile-sidebar-languages a{display:grid;place-items:center;min-height:40px;border-radius:12px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.65);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-decoration:none}
  .admin-mobile-sidebar-languages a.active{background:#fff;color:var(--stone-dark)}
  .admin-main{width:100%;height:100vh;height:100dvh;min-height:0;padding:0 1rem 1.5rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:auto}
  .admin-topbar{position:sticky;top:0;z-index:30;min-height:64px;margin:0 -1rem 1rem;padding:.7rem 1rem .7rem 4rem;background:rgba(244,245,247,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(95,122,102,.1);flex-direction:row;align-items:center;flex-wrap:nowrap}
  .admin-topbar-meta{flex:1 1 auto;min-width:0;min-height:40px}
  .admin-topbar-context{width:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.94rem}
  .admin-topbar-actions{flex:0 0 auto;width:auto;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:nowrap}
  .admin-topbar-actions>.admin-home-link,.admin-topbar-actions>.admin-maintenance-quick-form,.admin-topbar-actions>.admin-lang-switcher{display:none}
  .admin-user-menu{margin-left:0;align-self:center}
  .admin-user-trigger{width:40px;height:40px}
  .admin-user-menu-panel{position:fixed;top:60px;right:.65rem;left:auto;width:min(290px,calc(100vw - 1.3rem));min-width:0}
  .admin-flash{margin-bottom:1rem}
  .admin-header{margin-bottom:1.15rem}
  .admin-header-actions-only{justify-content:stretch}
  .admin-header-actions-only .btn{width:100%;justify-content:center}
  .admin-header-dashboard.admin-header-actions-only{justify-content:flex-end}
  .admin-header-dashboard .dashboard-settings-trigger{width:auto;min-height:36px;padding:.48rem .72rem;font-size:.76rem}
  .admin-section{min-width:0;padding:1rem;border-radius:18px}
  .admin-section-title{overflow-wrap:anywhere}
  .admin-section>.table,.table-wrap{display:block;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
  .admin-section>.table th,.admin-section>.table td,.table-wrap .table th,.table-wrap .table td{white-space:nowrap}
  #admin-view :is(input,select,textarea,.form-input){max-width:100%}
  #admin-view :is(.form-row,.security-grid,.admin-grid){min-width:0}
  .dashboard-widget-grid{gap:1rem}
  .dashboard-sortable-card,.dashboard-sortable-card-half,.dashboard-sortable-card-wide{grid-column:1/-1;min-width:0;padding:1rem;border-radius:18px}
  .dashboard-drag-handle{display:none}
  .dashboard-list-title,.dashboard-list-meta,.dashboard-task-copy,.dashboard-relevant-activity{min-width:0;overflow-wrap:anywhere}
  .dashboard-revenue-chart,.payment-revenue-chart{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;padding-bottom:.35rem}
  .dashboard-revenue-bar,.payment-revenue-bar{min-width:42px}
  .dashboard-availability-grid{grid-template-columns:repeat(5,minmax(48px,1fr));overflow-x:auto;padding-bottom:.35rem}
  .account-topbar{gap:.85rem}
  .account-topbar-actions{width:100%;justify-content:space-between;align-items:center}
  .account-lang-switcher{order:1}
  .account-user-menu{order:2;margin-left:auto}
  .account-booking-summary{flex-direction:column;align-items:flex-start}
  .account-booking-badges{width:100%;justify-content:flex-start}
  .account-modal-tabs{width:100%}
  .account-modal-tab{flex:1;justify-content:center}
  .detail-card,.booking-form-wrap,.account-booking-card{border-radius:20px}
}
@media(max-width:640px){
  .section{padding:4rem 0}
  .container{padding:0 1rem}
  .subpage-nav .nav-inner{gap:.65rem}
  .subpage-nav .nav-logo{max-width:calc(100vw - 156px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  #nav{width:100%;max-width:100vw}
  #nav .nav-inner{width:100%;max-width:100vw;min-width:0;gap:.55rem}
  #nav .nav-logo{min-width:0;max-width:none;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.25rem}
  #nav .nav-actions{min-width:0;flex:0 0 auto;gap:.35rem}
  #nav .lang-switcher{flex:0 0 auto}
  .lang-switcher{gap:.2rem;padding:.22rem}
  .lang-link{min-width:38px;padding:.35rem .55rem;font-size:.7rem}
  .booking-steps{grid-template-columns:1fr;gap:.6rem}
  .booking-step{padding:.75rem .85rem}
  .account-topbar-actions{flex-direction:row;flex-wrap:wrap}
  .account-lang-switcher{width:auto;max-width:100%}
  .admin-user-menu-panel,.account-user-panel{right:0;left:auto;min-width:min(260px,calc(100vw - 2rem))}
  .admin-lang-switcher{justify-content:flex-start}
  .admin-lang-link{min-width:38px;padding:.32rem .55rem}
  .customer-account-card-grid,.customer-account-toggle-grid,.customer-account-card-grid-single{grid-template-columns:1fr!important}
}
@media(max-width:480px){
  #admin-view{--admin-mobile-drawer-width:min(92vw,310px)}
  #admin-view .admin-sidebar,#admin-view.is-sidebar-collapsed .admin-sidebar{padding:1.05rem .8rem .9rem}
  .admin-nav-item{padding:.72rem .8rem;font-size:.84rem}
  .admin-nav-subitem{padding:.56rem .8rem;font-size:.8rem}
  .admin-topbar-actions{gap:.65rem}
  .account-topbar-actions{gap:.6rem}
  .account-lang-switcher,.admin-lang-switcher{overflow-x:auto;max-width:100%}
  .account-lang-switcher::-webkit-scrollbar,.admin-lang-switcher::-webkit-scrollbar{height:0}
  #nav .lang-link{min-width:32px;padding:.32rem .38rem}
  #nav .nav-menu{padding:4px}
  .contact-mail-modal{border-radius:22px}
}


.customer-portal-items-toolbar-actions{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}
.customer-portal-items-editor.is-limit-reached [data-portal-item-add]{opacity:.58;pointer-events:none}





.account-login-help{display:flex;justify-content:flex-end;margin:-.35rem 0 .8rem}
.account-login-reset-link{border:none;background:transparent;color:var(--ocean);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;padding:0}
.account-login-reset-link:hover{text-decoration:underline}
.password-reset-overlay[hidden]{display:none!important}
.password-reset-overlay{position:fixed;inset:0;z-index:2800;display:grid;place-items:center;padding:1.25rem;overflow:auto}
.password-reset-backdrop{position:fixed;inset:0;border:0;background:rgba(21,27,23,.64);backdrop-filter:blur(5px);cursor:default}
.password-reset-dialog{position:relative;z-index:1;width:min(520px,100%);max-height:calc(100dvh - 2.5rem);overflow:auto;padding:clamp(1.35rem,4vw,2rem);border:1px solid rgba(95,122,102,.16);border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(20,27,22,.34);color:var(--text);text-align:left}
.password-reset-dialog h2{margin:.2rem 3rem .65rem 0;font-size:clamp(1.65rem,4vw,2.15rem)}
.password-reset-dialog>p{margin:0 0 1.2rem;color:var(--text-muted);line-height:1.65}
.password-reset-kicker{color:var(--ocean);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.password-reset-close{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:42px;min-width:42px;max-width:42px;height:42px;min-height:42px;max-height:42px;aspect-ratio:1/1;padding:0;border-radius:50%;border:1px solid #f2c9c4;background:#fff0ef;color:#c83f35;font-size:0;line-height:0;appearance:none;-webkit-appearance:none;cursor:pointer;box-sizing:border-box;box-shadow:0 8px 18px rgba(164,55,45,.12)}
.password-reset-close::before,.password-reset-close::after{content:"";position:absolute;inset:auto;width:17px;height:2px;border-radius:999px;background:currentColor;transform-origin:center}
.password-reset-close::before{transform:rotate(45deg)}
.password-reset-close::after{transform:rotate(-45deg)}
.password-reset-close:hover{background:#fde0dd;color:#a92f27;transform:translateY(-1px)}
.password-reset-close:focus-visible{outline:3px solid rgba(200,63,53,.22);outline-offset:2px}
.password-reset-form{display:grid;gap:.15rem}
.password-reset-form .btn{width:100%;justify-content:center;margin-top:.35rem}
.password-reset-message{margin:.8rem 0 1rem;padding:.85rem 1rem;border-radius:14px;font-size:.9rem;line-height:1.5}
.password-reset-message.is-success{background:#e8f6ef;color:#315e48;border:1px solid #c8e8d7}
.password-reset-message.is-error{background:#fde8e5;color:#8f3029;border:1px solid #f2c9c4}
body.password-reset-modal-open{overflow:hidden}
@media(max-width:600px){.password-reset-overlay{padding:.75rem}.password-reset-dialog{max-height:calc(100dvh - 1.5rem);padding:1.25rem;border-radius:19px}.password-reset-close{top:.75rem;right:.75rem}}


.contact-box-editor-title-group{margin-bottom:1rem}
.contact-box-editor-controls{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:1rem}
.contact-box-editor-toggle{display:inline-flex;align-items:center;gap:.55rem;padding:.65rem .85rem;background:#f7f8f5;border:1px solid rgba(95,122,102,.16);border-radius:12px;font-size:.85rem;cursor:pointer}
.contact-box-editor-toggle input[type=checkbox]{width:1.05rem;height:1.05rem;accent-color:var(--ocean);flex-shrink:0}
.contact-box-editor-top-row{display:grid;grid-template-columns:52px minmax(0,1fr);gap:1rem;align-items:start;margin-bottom:.85rem}
.contact-box-editor-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start;min-width:0}
.contact-box-editor-top-row .form-group{margin:0;min-width:0}
#admin-view .contact-box-editor-top-row .form-group>.form-label{min-height:1.25rem;margin-bottom:.5rem;line-height:1.4;align-items:flex-end}
.contact-box-editor-icon-group .admin-icon-picker-row-inline{min-height:52px;align-items:center;justify-content:flex-start}
.contact-box-editor-icon-group .admin-icon-preview{width:52px;height:52px;margin:0;padding:0;line-height:1;cursor:pointer}
.contact-box-editor-meta-grid .form-input{height:52px;min-width:0}
.contact-box-editor-note{margin:0 0 .85rem;line-height:1.5}
.contact-box-editor-custom-group{margin-bottom:0}
.contact-item.contact-item-no-hover{transition:none}
.contact-item.contact-item-no-hover:hover{transform:none;box-shadow:0 2px 8px rgba(0,0,0,.05);color:inherit}
@media (max-width:600px){
  .contact-box-editor-top-row{gap:.75rem}
  .contact-box-editor-meta-grid{grid-template-columns:minmax(0,1fr);gap:.75rem}
}

.dashboard-list-item-link{text-decoration:none;color:inherit;cursor:pointer}
.dashboard-list-item-link:hover{color:inherit;transform:translateY(-1px)}
.dashboard-list-item-link .btn{pointer-events:none}

.booking-code-link{color:var(--ocean);text-decoration:none;font-weight:700}
.booking-code-link:hover{text-decoration:underline}
.booking-drawer .customer-detail-panel{padding-top:3.6rem}
.booking-detail-header{padding:1.1rem 1.2rem;border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fcf8f1 100%);border:1px solid rgba(95,122,102,.12);box-shadow:0 14px 34px rgba(35,29,24,.06)}
.booking-detail-header-main{display:grid;gap:.3rem}
.booking-detail-code-row{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem}
.booking-detail-code{font-size:1.45rem}
.booking-detail-created{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.booking-detail-guest{font-size:1.18rem;font-weight:700;color:var(--text)}
.booking-detail-subline{font-size:.92rem}
.booking-detail-badges{align-items:flex-start;justify-content:flex-end}
.booking-detail-facts .customer-detail-fact-card{background:linear-gradient(180deg,#fff 0%,#fbf6ef 100%);border-color:rgba(95,122,102,.08);box-shadow:0 8px 24px rgba(35,29,24,.04)}
.booking-detail-original-period{grid-column:span 2}
@media(max-width:700px){.booking-detail-original-period{grid-column:auto}.booking-status-legend{align-items:flex-start}.booking-status-legend-item small{left:0;transform:translate(0,4px)}.booking-status-legend-item:hover small,.booking-status-legend-item:focus small,.booking-status-legend-item:focus-within small{transform:translate(0,0)}.booking-status-legend-item small:after{left:1.2rem}}
.booking-detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.booking-detail-meta-card{padding:1.1rem 1.15rem;border-radius:20px;background:#fff;border:1px solid rgba(95,122,102,.1);box-shadow:0 10px 28px rgba(35,29,24,.04)}
.booking-detail-meta-card span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.booking-detail-meta-card strong{font-size:1.08rem;color:var(--text)}
.booking-detail-meta-card-emphasis{background:linear-gradient(180deg,#f6fbf7 0%,#ffffff 100%);border-color:rgba(95,122,102,.18)}
@media(max-width:900px){.booking-detail-meta-grid{grid-template-columns:1fr}.booking-detail-code-row{align-items:flex-start}}


[data-customer-mail-panel][hidden]{display:none!important}
.customer-mail-reader-sheet:not([hidden]){display:grid}



.admin-pages-layout{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:1.5rem;align-items:start}
.admin-pages-sidebar{position:sticky;top:6.5rem;max-height:calc(100vh - 8rem);overflow:auto}
.admin-pages-editor{min-width:0}
.media-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.1rem}
.media-library-grid .media-card{min-width:0;transition:transform .18s ease,box-shadow .18s ease}
.media-library-grid .media-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(30,33,37,.08)}
@media (max-width:980px){.admin-pages-layout{grid-template-columns:1fr}.admin-pages-sidebar{position:static;max-height:none;overflow:visible}}

.customer-drawer-close,.admin-modal-card .lightbox-close,.lightbox-close,.account-modal-close{background:#fff0ef;color:#c83f35;border:1px solid #f2c9c4;box-shadow:0 8px 18px rgba(164,55,45,.12)}
.customer-drawer-close:hover,.admin-modal-card .lightbox-close:hover,.lightbox-close:hover,.account-modal-close:hover{background:#fde0dd;color:#a92f27;border-color:#e8aba3;transform:translateY(-1px)}
.customer-drawer-close:focus-visible,.admin-modal-card .lightbox-close:focus-visible,.lightbox-close:focus-visible,.account-modal-close:focus-visible{outline:3px solid rgba(200,63,53,.22);outline-offset:2px}
.pricing-settings{display:grid;gap:1.15rem}.pricing-settings-intro{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.35rem 1.45rem;border-radius:22px;background:linear-gradient(135deg,#f7f2e9,#fff);border:1px solid rgba(132,92,47,.13)}.pricing-settings-intro .admin-section-title{margin:0}.pricing-settings-intro p{margin:.35rem 0 0;color:var(--text-muted);line-height:1.55}.pricing-settings-eyebrow,.pricing-settings-card-kicker{font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--accent)}.pricing-settings-currency{display:grid;place-items:center;flex:0 0 auto;width:56px;height:56px;border-radius:18px;background:var(--ocean);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.08em}.pricing-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}.pricing-settings-card{padding:1.3rem;border:1px solid rgba(0,0,0,.06);border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fcfaf6 100%);box-shadow:0 10px 26px rgba(31,28,24,.035)}.pricing-settings-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.pricing-settings-card h3{margin:.15rem 0 0;font-size:1.22rem}.pricing-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}.pricing-field{margin:0}.pricing-field-wide{grid-column:1 / -1}.pricing-input-wrap{position:relative}.pricing-input-wrap .form-input{padding-right:3.3rem}.pricing-input-wrap span{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:.9rem;font-weight:700;color:var(--text-muted);pointer-events:none}.pricing-seasons-card{padding-bottom:1.05rem}.pricing-season-toggle{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;color:var(--ocean);white-space:nowrap}.pricing-season-toggle input{accent-color:var(--ocean)}.pricing-season-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.pricing-season-item{display:grid;gap:.75rem;padding:1rem;border-radius:16px;background:#f8f5ef;border:1px solid rgba(132,92,47,.1)}.pricing-season-item>div:first-child{display:grid;gap:.22rem}.pricing-season-item strong{font-size:.95rem}.pricing-season-item span{font-size:.8rem;line-height:1.4;color:var(--text-muted)}
.pricing-input-wrap-count{display:grid;grid-template-columns:minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#fff;transition:var(--transition)}.pricing-input-wrap-count:focus-within{border-color:var(--ocean);box-shadow:0 0 0 3px rgba(95,122,102,.12)}.pricing-input-wrap-count .form-input{min-width:0;padding-right:1rem;border:0;border-radius:0;box-shadow:none;background:transparent;-moz-appearance:textfield}.pricing-input-wrap-count .form-input:focus{border:0;box-shadow:none;outline:0}.pricing-input-wrap-count .form-input::-webkit-outer-spin-button,.pricing-input-wrap-count .form-input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.pricing-input-wrap-count span{position:static;display:flex;align-items:center;right:auto;top:auto;transform:none;padding:0 1rem;border-left:1px solid var(--border);background:#f7f5f0;white-space:nowrap;font-size:.82rem;font-weight:650;color:var(--text-muted)}
@media(max-width:900px){.pricing-settings-grid,.pricing-season-grid{grid-template-columns:1fr}.pricing-season-item{grid-template-columns:minmax(0,1fr) minmax(150px,200px);align-items:end}.pricing-season-item .pricing-input-wrap{min-width:0}}
@media(max-width:560px){.pricing-settings-intro{align-items:flex-start;padding:1.1rem;gap:.8rem}.pricing-settings-currency{width:46px;height:46px;border-radius:14px}.pricing-input-grid{grid-template-columns:1fr}.pricing-field-wide{grid-column:auto}.pricing-season-item{grid-template-columns:1fr}.pricing-settings-card{padding:1.05rem}}
.mail-log-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.mail-log-heading .admin-section-title{margin-bottom:.2rem}.mail-log-count{color:var(--muted);font-size:.9rem}.mail-log-clear-form{margin:0}.mail-log-clear-button{border:0;border-radius:999px;background:#fff0ef;color:#b53830;padding:.7rem 1rem;font:inherit;font-weight:700;cursor:pointer;transition:var(--transition)}.mail-log-clear-button:hover{background:#fde0dd;color:#922a24}.mail-log-pagination-gap{color:var(--muted);padding:0 .1rem}@media(max-width:560px){.mail-log-heading{align-items:stretch;flex-direction:column}.mail-log-clear-button{width:100%}}.mail-test-form{max-width:760px}.mail-test-form-wide{max-width:none}.mail-test-field-row .btn{align-self:stretch;min-height:100%}.mail-test-field{margin:0}.mail-test-field-row{display:flex;gap:.75rem;align-items:stretch}.mail-test-field-row .form-input{min-width:0;flex:1}.mail-test-field-row .btn{white-space:nowrap}.mail-log-table td:last-child{width:52px;text-align:right}.admin-mail-log-delete-form{display:inline-flex;justify-content:flex-end}.admin-mail-log-delete-button{display:inline-grid;place-items:center;width:30px;height:30px;border:0;border-radius:999px;background:#fff0ef;color:#c83f35;font-size:1.05rem;font-weight:700;line-height:1;cursor:pointer;transition:var(--transition)}.admin-mail-log-delete-button:hover{background:#fde0dd;color:#a92f27;transform:translateY(-1px)}.admin-mail-log-delete-button:focus-visible{outline:3px solid rgba(200,63,53,.22);outline-offset:2px}@media(max-width:560px){.mail-test-field-row{align-items:stretch;flex-direction:column}.mail-test-field-row .btn{width:100%}}
.mail-settings{display:grid;gap:1.15rem}.mail-settings-intro{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.35rem 1.45rem;border:1px solid rgba(132,92,47,.13);border-radius:22px;background:linear-gradient(135deg,#f7f2e9,#fff)}.mail-settings-intro p{margin:.35rem 0 0;color:var(--text-muted);line-height:1.55}.mail-settings-status{display:flex;align-items:center;gap:.7rem;flex:0 0 auto;padding:.75rem .9rem;border-radius:15px;background:#f5f8f5;border:1px solid rgba(95,122,102,.17)}.mail-settings-status>span{width:11px;height:11px;border-radius:50%;background:#c8443c;box-shadow:0 0 0 5px rgba(200,68,60,.1)}.mail-settings-status.is-ready>span{background:#4f9368;box-shadow:0 0 0 5px rgba(79,147,104,.12)}.mail-settings-status div{display:grid;gap:.1rem}.mail-settings-status strong{font-size:.85rem}.mail-settings-status small{color:var(--text-muted);font-size:.72rem}.mail-settings-warning{display:flex;align-items:flex-start;gap:.65rem;padding:.9rem 1rem;border:1px solid rgba(200,68,60,.2);border-radius:15px;background:#fff4f2;color:#7e302b;font-size:.84rem;line-height:1.5}.mail-settings-warning strong{white-space:nowrap}.mail-delivery-warning{margin-top:1.3rem}.mail-settings-card{padding:1.25rem;border:1px solid rgba(0,0,0,.06);border-radius:22px;background:#fff;box-shadow:0 10px 26px rgba(31,28,24,.035)}.mail-settings-card-head{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.9rem;align-items:start;margin-bottom:1.1rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.07)}.mail-settings-card-head>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eef3ee;color:var(--ocean);font-size:.75rem;font-weight:800}.mail-settings-card-head h3{margin:0;font-size:1.1rem}.mail-settings-card-head p{margin:.25rem 0 0;color:var(--text-muted);font-size:.83rem;line-height:1.45}.mail-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem}.mail-settings-grid+.mail-settings-grid{margin-top:.9rem}.mail-settings-grid .form-group{margin:0}.mail-settings-wide{grid-column:1/-1}.mail-placeholder-help{margin-bottom:1rem;border:1px solid rgba(95,122,102,.16);border-radius:14px;background:#f8faf8}.mail-placeholder-help summary{padding:.8rem 1rem;cursor:pointer;font-weight:700;color:var(--ocean)}.mail-placeholder-help div{padding:0 1rem 1rem;color:var(--text-muted);font:500 .78rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.mail-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mail-template-card{display:grid;align-content:start;gap:.9rem;padding:1rem;border:1px solid rgba(0,0,0,.07);border-radius:17px;background:#fcfaf6}.mail-template-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;min-height:88px}.mail-template-card-head>div{min-width:0}.mail-template-card-head span{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.mail-template-card-head h4{margin:.18rem 0;font-size:1rem}.mail-template-card-head p{margin:0;color:var(--text-muted);font-size:.76rem;line-height:1.4}.mail-template-card-head .btn{flex:0 0 auto;padding:.58rem .75rem}.mail-template-card .form-group{margin:0}.mail-template-body{min-height:220px;resize:vertical}.mail-preview-modal-card{width:min(980px,100%);padding:0;overflow:hidden}.mail-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;border-bottom:1px solid rgba(0,0,0,.08)}.mail-preview-toolbar>div{display:grid;gap:.18rem}.mail-preview-toolbar span,.mail-preview-address span{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.mail-preview-toolbar strong{font-size:1rem}.mail-preview-address{display:grid;gap:.3rem;padding:.85rem 1.25rem;background:#f8f6f1;border-bottom:1px solid rgba(0,0,0,.06)}.mail-preview-address strong{overflow-wrap:anywhere}.mail-preview-canvas{max-height:68vh;overflow:auto;padding:1.5rem;background:#f5efe5}.mail-preview-message{max-width:680px;margin:0 auto;border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 16px 40px rgba(43,36,29,.1)}.mail-preview-message header{padding:26px 30px;background:#587361;color:#fff}.mail-preview-message header small{font-size:13px;letter-spacing:.18em;text-transform:uppercase;opacity:.88}.mail-preview-message header h3{margin:12px 0 0;color:#fff;font:700 24px/1.35 Arial,sans-serif}.mail-preview-message main{padding:30px 30px 16px;color:#463a31;font:15px/1.8 Arial,sans-serif}.mail-preview-message main p{margin:0 0 1rem}.mail-preview-message main a{color:#587361}.mail-preview-message footer{display:grid;gap:.2rem;padding:18px 30px 28px;border-top:1px solid rgba(43,36,29,.08);color:#7b6d61;font:13px/1.7 Arial,sans-serif}.mail-preview-message footer strong{color:#5f5146}@media(max-width:900px){.mail-template-grid{grid-template-columns:1fr}}@media(max-width:700px){.mail-settings-intro{align-items:flex-start;flex-direction:column}.mail-settings-status{width:100%}.mail-settings-grid{grid-template-columns:1fr}.mail-settings-wide{grid-column:auto}.mail-template-card-head{min-height:0}.mail-settings-warning{display:grid}.mail-preview-canvas{padding:.75rem}.mail-preview-message header,.mail-preview-message main,.mail-preview-message footer{padding-left:20px;padding-right:20px}}
.mail-template-library-count{display:grid;place-items:center;min-width:126px;padding:.8rem 1rem;border:1px solid rgba(95,122,102,.18);border-radius:16px;background:#fff;color:var(--ocean)}.mail-template-library-count strong{font-size:1.35rem;line-height:1}.mail-template-library-count span{margin-top:.3rem;color:var(--text-muted);font-size:.7rem}.mail-template-info{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.45rem .8rem;padding:1rem 1.1rem;border:1px solid rgba(95,122,102,.2);border-radius:16px;background:#f4f8f4;color:var(--ocean);font-size:.83rem;line-height:1.55}.mail-template-info span{color:var(--text-muted)}.mail-template-card.is-system{background:#f8faf8}.mail-template-card.is-system .form-input[readonly]{background:#fff;color:#4f4942;cursor:default}.mail-template-card.is-system .mail-template-body{min-height:165px;resize:none}@media(max-width:700px){.mail-template-library-count{width:100%}.mail-template-info{grid-template-columns:1fr}.mail-template-card-head{display:grid}.mail-template-card-head .btn{justify-self:start}}
.inquiry-admin-page{display:grid;gap:1.2rem}.inquiry-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding-bottom:1.1rem;border-bottom:1px solid rgba(0,0,0,.08)}.inquiry-admin-head p{margin:.35rem 0 0;color:var(--text-muted);line-height:1.6}.inquiry-admin-head>span{max-width:360px;padding:.75rem .9rem;border-radius:13px;background:#f5f8f5;color:var(--text-muted);font-size:.78rem;line-height:1.5}.admin-record-empty{display:grid;place-items:center;gap:.45rem;min-height:190px;padding:2rem;text-align:center;border:1px dashed rgba(95,122,102,.24);border-radius:18px;background:#fbfcfa}.admin-record-empty strong{font-size:1rem}.admin-record-empty span{max-width:620px;color:var(--text-muted);font-size:.84rem;line-height:1.6}.inquiry-admin-card{border:1px solid rgba(0,0,0,.08);border-radius:17px;background:#fff;overflow:hidden}.inquiry-admin-card>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 32px;align-items:center;gap:1rem;padding:1rem 1.1rem;cursor:pointer;list-style:none}.inquiry-admin-card>summary::-webkit-details-marker{display:none}.inquiry-admin-card>summary>span:first-child{display:grid;gap:.2rem}.inquiry-admin-card>summary small{color:var(--text-muted);font-size:.72rem}.inquiry-admin-card>summary>b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f3f6f3;color:var(--ocean);transition:transform .18s ease}.inquiry-admin-card[open]>summary>b{transform:rotate(180deg)}.inquiry-admin-body{display:grid;gap:1rem;padding:1.1rem;border-top:1px solid rgba(0,0,0,.07);background:#fcfbf8}.inquiry-admin-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.inquiry-admin-facts>div{display:grid;gap:.25rem;padding:.85rem;border-radius:13px;background:#fff;border:1px solid rgba(0,0,0,.06)}.inquiry-admin-facts span,.inquiry-admin-message>span{font-size:.67rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.inquiry-admin-facts strong{overflow-wrap:anywhere;font-size:.84rem}.inquiry-admin-message{padding:1rem;border-radius:13px;background:#fff;border:1px solid rgba(0,0,0,.06)}.inquiry-admin-message p{margin:.45rem 0 0;line-height:1.65;overflow-wrap:anywhere}.inquiry-admin-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.inquiry-admin-actions form{display:flex;align-items:flex-end;gap:.7rem;margin:0}.inquiry-admin-actions form label{min-width:180px}.inquiry-admin-actions .form-label{margin-bottom:.35rem}@media(max-width:700px){.inquiry-admin-head,.inquiry-admin-actions{align-items:stretch;flex-direction:column}.inquiry-admin-head>span{max-width:none}.inquiry-admin-card>summary{grid-template-columns:minmax(0,1fr) auto}.inquiry-admin-card>summary>b{grid-column:2}.inquiry-admin-card>summary>.badge{grid-row:2;grid-column:1;justify-self:start}.inquiry-admin-actions form{align-items:stretch;flex-direction:column}.inquiry-admin-actions form label{min-width:0}}
.inquiry-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem;border:1px solid rgba(95,122,102,.14);border-radius:16px;background:#f8faf8}.inquiry-view-tabs{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem;border-radius:12px;background:#eef3ee}.inquiry-view-tabs a{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:38px;padding:.5rem .75rem;border-radius:9px;color:var(--text-muted);font-size:.8rem;font-weight:700;text-decoration:none}.inquiry-view-tabs a.is-active{background:#fff;color:var(--ocean);box-shadow:0 4px 12px rgba(45,35,24,.07)}.inquiry-view-tabs strong{display:grid;place-items:center;min-width:22px;height:22px;padding:0 .35rem;border-radius:999px;background:rgba(95,122,102,.12);font-size:.7rem}.inquiry-search-form{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;margin:0;min-width:min(100%,460px)}.inquiry-search-form label{flex:1;min-width:0}.inquiry-search-form .form-input{height:42px;min-height:42px}.inquiry-search-form .btn{min-height:42px;justify-content:center;white-space:nowrap}
@media(max-width:760px){.inquiry-admin-toolbar{align-items:stretch;flex-direction:column}.inquiry-view-tabs{width:100%}.inquiry-view-tabs a{flex:1}.inquiry-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;min-width:0}.inquiry-search-form>a{grid-column:1/-1;width:100%}}
.inquiry-conversion-modal-open{overflow:hidden}.inquiry-conversion-card{width:min(980px,100%)}.inquiry-conversion-form{display:grid;gap:1.1rem}.inquiry-conversion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.inquiry-conversion-grid .form-group{margin:0}.inquiry-conversion-wide{grid-column:span 2}.inquiry-conversion-warning{padding:.8rem .9rem;border:1px solid #edc7a5;border-radius:13px;background:#fff8ef;color:#8b531d;font-size:.83rem;line-height:1.5}.inquiry-conversion-confirm{display:flex;align-items:flex-start;gap:.7rem;padding:.9rem;border:1px solid rgba(95,122,102,.18);border-radius:14px;background:#f7faf7;font-size:.84rem;line-height:1.5}.inquiry-conversion-confirm input{margin-top:.15rem}.inquiry-conversion-actions{display:flex;justify-content:flex-end;gap:.65rem}.booking-source-inquiry{padding:0!important;overflow:hidden}.booking-source-inquiry>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;cursor:pointer;list-style:none}.booking-source-inquiry>summary::-webkit-details-marker{display:none}.booking-source-inquiry>summary span{display:grid;gap:.2rem}.booking-source-inquiry>summary small,.booking-source-reply small{color:var(--text-muted);font-size:.72rem}.booking-source-inquiry>summary b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#edf4ee;color:var(--ocean);transition:transform .18s ease}.booking-source-inquiry[open]>summary b{transform:rotate(180deg)}.booking-source-inquiry-body{display:grid;gap:.8rem;padding:1rem;border-top:1px solid rgba(0,0,0,.07);background:#fcfbf8}.booking-source-reply{display:grid;gap:.6rem;padding:1rem;border:1px solid rgba(0,0,0,.06);border-radius:13px;background:#fff}.booking-source-reply>div{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.booking-source-reply p{margin:0;line-height:1.6;white-space:normal;overflow-wrap:anywhere}
.account-setup-profile{display:grid;gap:1rem;padding:1.15rem;border:1px solid rgba(95,122,102,.16);border-radius:18px;background:#f8faf8}.account-setup-profile h2,.account-setup-password-heading h2{margin:0;font-size:1.3rem}.account-setup-profile>div:first-child{display:grid;gap:.25rem}.account-setup-profile .form-group{margin:0}.account-setup-password-heading{margin:1.35rem 0 .75rem}

/* One compact control size on phones. Native iOS date inputs otherwise keep an oversized intrinsic width. */
@media(max-width:700px){
  :is(.booking-form-wrap,.booking-request-card,.account-main) :is(.form-row,.form-group,label){box-sizing:border-box;min-width:0;max-width:100%}
  :is(.booking-form-wrap,.booking-request-card,.account-main) :is(input.form-input,select.form-input):not([type="checkbox"]):not([type="radio"]):not([type="file"]){display:block;box-sizing:border-box;inline-size:100%!important;width:100%!important;min-inline-size:0!important;min-width:0!important;max-inline-size:100%!important;max-width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;margin:0;padding:0 .85rem!important;font-size:16px!important;line-height:1.2!important;overflow:hidden}
  :is(.booking-form-wrap,.booking-request-card,.account-main) input.form-input[type="date"]{-webkit-appearance:none!important;appearance:none!important;border-radius:var(--radius)}
  :is(.booking-form-wrap,.booking-request-card,.account-main) input.form-input[type="date"]::-webkit-date-and-time-value{display:flex;align-items:center;box-sizing:border-box;width:100%;height:42px;min-height:42px;margin:0;padding:0;text-align:left}
  :is(.booking-form-wrap,.booking-request-card,.account-main) textarea.form-input{box-sizing:border-box;width:100%!important;min-width:0!important;max-width:100%!important}
}

@media(max-width:760px){.inquiry-conversion-grid{grid-template-columns:1fr 1fr}.inquiry-conversion-wide{grid-column:1/-1}.inquiry-conversion-actions{display:grid;grid-template-columns:1fr}.inquiry-conversion-actions .btn{width:100%;justify-content:center}.booking-source-reply>div{display:grid}}
@media(max-width:480px){.inquiry-conversion-grid{grid-template-columns:1fr}.inquiry-conversion-wide{grid-column:auto}}
.media-card-meta{display:grid!important;grid-template-rows:auto!important;align-content:start!important;overflow:visible!important}.media-card-file-name{display:block!important;max-height:none!important;white-space:normal!important;text-overflow:clip!important;-webkit-line-clamp:unset!important;overflow:visible!important;overflow-wrap:anywhere}.media-card-path{display:block!important;height:auto!important;max-height:none!important;min-height:3.5rem;white-space:normal!important;text-overflow:clip!important;overflow:visible!important;-webkit-line-clamp:unset!important;overflow-wrap:anywhere}.media-card-usage{grid-template-rows:auto auto auto!important;height:auto!important;max-height:none!important;min-height:172px;overflow:visible!important}.media-card-usage-note,.media-card-usage-list,.media-usage-link span,.media-usage-static span{max-height:none!important;white-space:normal!important;text-overflow:clip!important;overflow:visible!important;overflow-wrap:anywhere}.account-modal-close{display:grid!important;place-items:center!important;box-sizing:border-box!important;min-width:44px!important;width:44px!important;height:44px!important;aspect-ratio:1!important;padding:0!important;line-height:1!important}.account-modal-close svg{display:block;width:20px;height:20px;margin:auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
[data-mail-smtp-fields][hidden],[data-mail-smtp-option][hidden]{display:none!important}
.mail-smtp-test{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(320px,1.3fr);align-items:end;gap:1.2rem;margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid rgba(0,0,0,.07)}.mail-smtp-test-copy{display:grid;align-self:center;gap:.25rem}.mail-smtp-test-copy strong{font-size:.92rem}.mail-smtp-test-copy small{color:var(--text-muted);font-size:.78rem;line-height:1.5}.mail-smtp-test-controls{min-width:0}.mail-smtp-test-controls>.form-label{display:block;margin-bottom:.4rem}.mail-test-detached-form{display:none}@media(max-width:700px){.mail-smtp-test{grid-template-columns:1fr}}

.pricing-season-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-season-item{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.pricing-season-item .form-group{margin:0}.pricing-season-date{display:grid;gap:.42rem}.pricing-season-date>div{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:.5rem}.pricing-season-date .form-input{min-width:0}@media(max-width:760px){.pricing-season-grid,.pricing-season-item{grid-template-columns:1fr}}

/* Dialoge: Schließen-Button sichtbar über der rechten oberen Kante. */
.admin-modal{overflow:auto;padding:2.6rem}
.admin-modal-card{max-height:none;overflow:visible}
.admin-modal-card .admin-section-title{padding-right:1.5rem}
.admin-modal-card .lightbox-close{top:-1.25rem;right:-1.25rem;background:#fff0ef;color:#c83f35;border-color:#f2c9c4;z-index:12}
.account-modal{overflow:auto;padding:2.5rem}
.account-modal-backdrop{position:fixed}
.account-modal-dialog{max-height:none;overflow:visible;margin:0 auto}
.account-modal-close{top:-1.3rem;right:-1.3rem;background:#fff0ef;color:#c83f35;border-color:#f2c9c4;z-index:12}
@media(max-width:640px){.admin-modal{padding:1.25rem}.admin-modal-card .lightbox-close{top:-.85rem;right:-.45rem}.account-modal{padding:.75rem}.account-modal-dialog{width:100%;padding-top:4.5rem}.account-modal-close{top:.75rem;right:.75rem;border-radius:50%!important}}
/* Dashboard refinement */
.dashboard-widget-grid{margin-top:.5rem;gap:1.35rem}.dashboard-sortable-card{border:1px solid rgba(63,49,37,.07);border-radius:22px;padding:1.25rem;background:#fff;box-shadow:0 14px 34px rgba(45,35,24,.055)}.dashboard-sortable-card-wide{grid-column:1 / -1}.dashboard-widget-header{margin:0 0 1rem}.dashboard-kpi-grid-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}.dashboard-kpi-card{display:grid;gap:.5rem;min-height:126px;padding:1.1rem;border-radius:18px;background:#fbfaf7;border:1px solid rgba(63,49,37,.06);text-decoration:none;color:var(--text)}.dashboard-kpi-card span,.dashboard-activity-heading{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.dashboard-kpi-card strong{font-size:2rem;color:var(--ocean)}.dashboard-task-list{display:grid;gap:.75rem}.dashboard-task-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.05rem;border-radius:16px;text-decoration:none;color:var(--text);background:#fbfaf7;border:1px solid rgba(63,49,37,.06)}.dashboard-task-card strong{font-size:.95rem}.dashboard-task-card span{font-size:.84rem;color:var(--ocean);font-weight:700}.dashboard-task-card-warn{background:#fffaf1}.dashboard-task-card-ok{background:#f4faf5}.dashboard-list-item{align-items:center;text-decoration:none;color:var(--text);min-height:0;padding:.9rem 1rem;background:#fbfaf7}.dashboard-list-item span{display:grid;gap:.22rem}.dashboard-list-item small{color:var(--text-muted)}.dashboard-list-item em{font-style:normal;font-size:.82rem;font-weight:700;color:var(--ocean);white-space:nowrap}.dashboard-quick-card{align-items:center;justify-content:center;min-height:84px;text-align:center}.dashboard-settings-modal-card{position:relative}.dashboard-settings-modal-card .lightbox-close{position:absolute;top:.65rem;right:.65rem}.dashboard-settings-field{margin:1rem 0}.dashboard-drag-handle{opacity:.45}.dashboard-drag-handle span{width:4px;height:4px}.dashboard-sortable-card:hover .dashboard-drag-handle{opacity:1}@media (max-width:900px){.dashboard-kpi-grid-overview,.dashboard-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.dashboard-kpi-grid-overview,.dashboard-activity-grid{grid-template-columns:1fr}.dashboard-sortable-card{padding:1rem}.dashboard-task-card{align-items:flex-start;flex-direction:column;gap:.35rem}}
.dashboard-settings-divider{margin:1.25rem 0 .35rem;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.dashboard-settings-help{margin:0 0 .75rem;color:var(--text-muted);font-size:.84rem;line-height:1.5}.dashboard-quick-card-icon{display:flex;flex-direction:column;gap:.65rem}.dashboard-quick-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#eef4f0;font-size:1.2rem}.dashboard-quick-link-picker .dashboard-widget-option{align-items:center}


.dashboard-relevant-activities{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.85rem}.dashboard-relevant-activity{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.28rem .9rem;padding:1rem 1.05rem;border:1px solid rgba(95,122,102,.16);border-radius:16px;background:#fbfaf7;color:var(--text);text-decoration:none;transition:var(--transition)}.dashboard-relevant-activity-type{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.dashboard-relevant-activity-name{font-size:1rem;font-weight:700;line-height:1.3}.dashboard-relevant-activity-meta{grid-column:1 / 2;font-size:.84rem;color:var(--text-muted);line-height:1.45}.dashboard-relevant-activity .badge{grid-column:2;grid-row:1 / span 3;align-self:center;white-space:nowrap}@media(max-width:620px){.dashboard-relevant-activities{grid-template-columns:1fr}}

.pages-layout > .admin-section:first-child{align-self:start}.pages-info{margin-bottom:1rem;padding:1rem 1.1rem;border-radius:14px;background:#f8f6f1;color:var(--text-muted);font-size:.9rem;line-height:1.55}#pageSortable .sortable-item{display:block;padding:1rem;border-radius:14px;background:#f8f8f8;margin-bottom:.75rem;text-decoration:none;color:inherit;border:1px solid rgba(0,0,0,.04);transition:var(--transition)}#pageSortable .sortable-item:hover{border-color:rgba(26,107,138,.16);transform:translateY(-1px)}.page-sortable-hint{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem}@media(max-width:900px){.pages-layout{grid-template-columns:1fr!important}.pages-layout > .admin-section:first-child{align-self:stretch}}

.payment-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0 0 1rem}.payment-summary-card{display:grid;gap:.3rem;padding:1rem 1.1rem;border:1px solid rgba(0,0,0,.06);border-radius:16px;background:#faf8f4;color:var(--text);text-decoration:none}.payment-summary-card[href]:hover,.payment-summary-card[href]:focus-visible{border-color:rgba(26,107,138,.2);background:#fff;box-shadow:0 10px 24px rgba(45,35,24,.07);outline:none}.payment-summary-card-static{cursor:default}.payment-manual-row{scroll-margin-top:1.5rem}.payment-manual-row:target{border-color:rgba(26,107,138,.42);background:#fffdf8;box-shadow:0 0 0 3px rgba(26,107,138,.09)}.payment-summary-card span{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.payment-summary-card strong{font-size:1.7rem}.payment-summary-card small{color:var(--text-muted)}.payment-manual-notice{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;margin:0 0 .8rem;border-radius:16px;background:#fffaf2;border:1px solid rgba(211,160,98,.22)}.payment-manual-notice>div{display:grid;gap:.25rem}.payment-manual-notice span,.payment-manual-row span{font-size:.87rem;color:var(--text-muted);line-height:1.45}.payment-manual-list{display:grid;gap:.65rem;margin:0 0 1.2rem}.payment-manual-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid rgba(0,0,0,.05);border-radius:14px;background:#faf8f4}.payment-manual-row>div{display:grid;gap:.2rem}@media(max-width:700px){.payment-summary-grid{grid-template-columns:1fr}.payment-manual-notice,.payment-manual-row{align-items:flex-start;flex-direction:column}}
.payment-manual-customer{min-width:190px}.payment-manual-amounts{display:grid!important;grid-template-columns:repeat(3,minmax(90px,1fr));gap:.55rem;flex:1;max-width:430px}.payment-manual-amounts>span{display:grid;gap:.08rem;padding:.45rem .6rem;border-radius:10px;background:#fff}.payment-manual-amounts small{font-size:.69rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.payment-manual-amounts strong{font-size:.92rem;color:var(--text)}.payment-manual-amounts .payment-manual-open{background:#fff5e8}.payment-manual-amounts .payment-manual-open strong{color:#a45e1f}.payment-confirm-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:.45rem 0 1rem}.payment-confirm-summary>div{display:grid;gap:.15rem;padding:.75rem .85rem;border-radius:12px;background:#faf8f4}.payment-confirm-summary span{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.payment-confirm-options{display:grid;gap:.65rem;margin:0;padding:0;border:0}.payment-confirm-options legend{margin-bottom:.55rem;font-weight:700}.payment-confirm-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.9rem 1rem;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:#fff;cursor:pointer}.payment-confirm-option:has(input:checked){border-color:rgba(26,107,138,.38);background:#f3fafc;box-shadow:0 0 0 2px rgba(26,107,138,.08)}.payment-confirm-option input{accent-color:var(--ocean)}.payment-confirm-option>span{display:grid;gap:.18rem}.payment-confirm-option small{color:var(--text-muted)}.payment-confirm-option>b{white-space:nowrap;color:var(--ocean)}@media(max-width:900px){.payment-manual-row{align-items:flex-start;flex-wrap:wrap}.payment-manual-amounts{order:3;max-width:none;width:100%}}@media(max-width:700px){.payment-manual-amounts,.payment-confirm-summary{grid-template-columns:1fr}.payment-confirm-option{grid-template-columns:auto minmax(0,1fr)}.payment-confirm-option>b{grid-column:2}}
.dashboard-revenue-summary{display:grid;gap:.2rem;margin:0 0 1rem;padding:1rem 1.1rem;border-radius:16px;background:#f7fbf8;border:1px solid rgba(79,139,95,.15);color:var(--text);text-decoration:none}.dashboard-revenue-summary span,.dashboard-revenue-summary small{font-size:.82rem;color:var(--text-muted)}.dashboard-revenue-summary strong{font-size:1.8rem;color:var(--ocean)}.dashboard-revenue-chart{display:flex;align-items:end;gap:.7rem;min-height:180px;padding:.75rem .25rem 0}.dashboard-revenue-bar{display:grid;grid-template-rows:1fr auto;align-items:end;gap:.45rem;flex:1;height:160px;text-align:center;text-decoration:none;color:var(--text-muted);font-size:.76rem}.dashboard-revenue-bar-fill{display:block;width:100%;min-height:4px;border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,var(--ocean-light),var(--ocean));transform-origin:center bottom;animation:revenueBarGrow .72s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--revenue-delay,0ms)}.dashboard-revenue-bar:hover .dashboard-revenue-bar-fill{filter:brightness(1.08)}
.dashboard-kpi-card-link{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.dashboard-kpi-card-link:hover,.dashboard-kpi-card-link:focus-visible{transform:translateY(-2px);border-color:rgba(26,107,138,.24);box-shadow:0 12px 24px rgba(45,35,24,.08);outline:none}
.customer-mail-system-note{margin:0;padding:.7rem .9rem;border-radius:14px;background:#f7f4ee;color:var(--text-muted);font-size:.86rem;line-height:1.5}

.payment-revenue-panel{margin:0 0 1.2rem;padding:1.2rem;border:1px solid rgba(79,139,95,.16);border-radius:18px;background:linear-gradient(135deg,#fbfdfb,#f7faf7)}.payment-revenue-heading h2{margin:0;font-size:1.15rem}.payment-revenue-heading p{margin:.35rem 0 0;color:var(--text-muted);font-size:.9rem}.payment-revenue-controls{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(140px,1fr) minmax(140px,1fr) auto;align-items:end;gap:.75rem;margin-top:1rem}.payment-revenue-controls label{display:grid;gap:.35rem}.payment-revenue-controls label>span{font-size:.74rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.payment-revenue-controls select,.payment-revenue-controls input{min-height:42px}.payment-revenue-controls .btn{min-height:42px;white-space:nowrap}.payment-revenue-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem}.payment-revenue-metrics>div{display:grid;gap:.25rem;padding:.8rem .9rem;border-radius:14px;background:#fff;border:1px solid rgba(0,0,0,.05)}.payment-revenue-metrics span{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.payment-revenue-metrics strong{font-family:var(--font-heading);font-size:1.25rem;color:var(--ocean)}.payment-revenue-chart{display:flex;align-items:end;gap:.65rem;min-height:185px;margin-top:1.1rem;padding:.8rem .25rem 0;border-top:1px solid rgba(0,0,0,.06)}.payment-revenue-bar{display:grid;grid-template-rows:1fr auto;align-items:end;gap:.45rem;flex:1;height:160px;text-align:center;color:var(--text-muted);font-size:.74rem}.payment-revenue-bar-fill{display:block;width:100%;min-height:4px;border-radius:8px 8px 2px 2px;background:linear-gradient(180deg,var(--sand,#c88b5a),var(--ocean,#5f7a66));transform-origin:center bottom;animation:revenueBarGrow .78s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--revenue-delay,0ms)}@keyframes revenueBarGrow{from{opacity:.18;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.payment-revenue-bar-fill,.dashboard-revenue-bar-fill{animation:none}}@media(max-width:850px){.payment-revenue-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-revenue-controls .btn{width:100%}}@media(max-width:700px){.payment-revenue-metrics,.payment-revenue-controls{grid-template-columns:1fr}.payment-revenue-chart{gap:.35rem}.payment-revenue-bar{font-size:.66rem}}

#mediaOrderRetry[hidden],#mediaOrderForm[hidden]{display:none!important}

[data-media-save-retry][hidden]{display:none!important}
.media-save-status[data-state=failed]{color:#b42318}.media-save-status[data-state=saved]{color:#26713c}

.pricing-settings-layout{margin-top:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.pricing-settings-layout .security-card-wide{grid-column:1 / -1}.pricing-settings-layout .security-card{min-width:0}@media(max-width:700px){.pricing-settings-layout{grid-template-columns:1fr}}.pricing-settings-layout .security-card-title{margin:0 0 1rem}.pricing-season-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem;margin-top:1.25rem}.pricing-settings-layout .form-input{max-width:340px}
.admin-distance-entry{position:relative;padding-top:1.7rem}.admin-distance-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.admin-distance-toolbar [data-distance-count]{font-weight:700;color:var(--text-muted)}.admin-distance-toolbar button:disabled{opacity:.5;cursor:not-allowed}.admin-distance-remove{position:absolute;top:.1rem;right:.55rem;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;font-size:1.4rem;background:transparent;color:var(--text-muted);cursor:pointer}.admin-distance-remove:hover,.admin-distance-remove:focus-visible{color:#a12b26;background:#fcebea}[data-distance-empty][hidden]{display:none!important}
.admin-distances-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:1rem;margin-top:1.2rem}.admin-distance-entry{min-width:0;margin:0;padding:1rem;border:1px solid rgba(95,122,102,.16);border-radius:16px;background:#fafbf9}.admin-distance-entry legend{padding:0 .45rem;font-size:.8rem;font-weight:700;color:var(--ocean)}.admin-distance-fields{display:grid;grid-template-columns:60px minmax(0,1fr);gap:.85rem;align-items:start}.admin-distance-fields .form-group{margin:0;min-width:0}.admin-distance-value{grid-column:2}.admin-distance-symbol .amenity-icon-preview{width:48px;height:48px;padding:0;border:1px solid rgba(95,122,102,.2);background:#fff;cursor:pointer}.admin-distance-entry .form-label{font-size:.72rem;letter-spacing:.04em}.admin-distance-entry .admin-locale-tabs{flex-wrap:wrap}
.account-contact-home-item:hover{transform:none;box-shadow:0 2px 8px rgba(0,0,0,.05);cursor:default}
.dashboard-relevant-activity,[data-widget-key="upcoming_arrivals"] .dashboard-list-item-link{transition:var(--transition)}.dashboard-relevant-activity:hover,.dashboard-relevant-activity:focus-visible,[data-widget-key="upcoming_arrivals"] .dashboard-list-item-link:hover,[data-widget-key="upcoming_arrivals"] .dashboard-list-item-link:focus-visible{transform:translateY(-1px);color:var(--text);border-color:rgba(26,107,138,.28);background:#fff;box-shadow:0 10px 22px rgba(26,107,138,.07)}
@media(prefers-reduced-motion:reduce){.account-info-rotator-text{transition:none}.dashboard-list-item-link{transition:none!important}}
#designMediaPickerModal{overflow:hidden;padding:1.5rem;overscroll-behavior:contain}
#designMediaPickerModal .admin-media-picker-modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 3rem);max-height:calc(100dvh - 3rem);overflow:hidden;padding:1.25rem;min-height:0}
#designMediaPickerModal .admin-media-picker-modal-card>.admin-section-title{position:relative;top:auto;flex:0 0 auto;margin:0 0 .85rem;padding:0 3rem .85rem 0;min-height:2.5rem}
#designMediaPickerModal .lightbox-close{top:0;right:0}
#designMediaPickerModal .admin-media-picker-toolbar{flex:0 0 auto}
#designMediaPickerModal .admin-media-picker-grid{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding:.3rem .6rem .8rem .2rem;align-content:start}
#designMediaPickerModal .admin-media-picker-assets{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr))}
#designMediaPickerModal .admin-media-picker-asset{min-width:0}
@media(max-width:640px){#designMediaPickerModal{padding:.75rem}#designMediaPickerModal .admin-media-picker-modal-card{max-height:calc(100vh - 1.5rem);max-height:calc(100dvh - 1.5rem);padding:1rem}}
.dashboard-dismissible-notice{position:relative;padding-right:2.5rem}.dashboard-notice-dismiss-form{position:absolute;top:.4rem;right:.4rem;margin:0}.dashboard-notice-dismiss{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-muted);font-size:1.25rem;line-height:1;cursor:pointer}.dashboard-notice-dismiss:hover,.dashboard-notice-dismiss:focus-visible{background:rgba(0,0,0,.08);color:var(--text)}.dashboard-notice-dismiss:disabled{opacity:.5;cursor:wait}.dashboard-notice-restore{border:0;background:none;cursor:pointer;padding:.5rem 0;margin-top:.25rem}[data-dashboard-notices] [hidden]{display:none!important}

/* Inquiry labels must be block containers, not inline labels with ineffective margins. */
.inquiry-contact-grid{grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:clamp(1.25rem,3vw,2.4rem);align-items:start}
.inquiry-intro-card{display:grid;gap:1.15rem;padding:clamp(1.25rem,3vw,2rem);border:1px solid rgba(95,122,102,.14);border-radius:28px;background:linear-gradient(145deg,#fff 0%,#f3f7f3 100%);box-shadow:0 16px 38px rgba(75,64,51,.07)}
.inquiry-intro-kicker{font-size:.7rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--ocean)}
.inquiry-intro-card .section-title{margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.02}
.inquiry-intro-text{margin:0;color:var(--text-muted);font-size:.95rem;line-height:1.72}
.inquiry-benefits{display:grid;gap:.7rem;margin-top:.2rem}
.inquiry-benefit{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.75rem;align-items:start;padding:.8rem;border-radius:15px;background:rgba(255,255,255,.72)}
.inquiry-benefit>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--ocean-pale);color:var(--ocean);font-weight:800}
.inquiry-benefit>div{display:grid;gap:.16rem}.inquiry-benefit strong{font-size:.86rem}.inquiry-benefit small{color:var(--text-muted);font-size:.76rem;line-height:1.48}
.inquiry-contact-info{gap:.7rem;margin-top:.25rem;padding-top:1rem;border-top:1px solid rgba(95,122,102,.12)}
.inquiry-contact-info .contact-item{padding:.85rem;box-shadow:none;border:1px solid rgba(95,122,102,.1)}
.inquiry-contact-info .ci-icon{width:36px;height:36px;font-size:1rem}.inquiry-contact-info .ci-val{font-size:.82rem}
.booking-request-card {padding:clamp(1.2rem,2.4vw,1.7rem);min-width:0;}
.booking-request-card h3 {margin:0 0 1.5rem;line-height:1.35;}
.booking-request-card .form-group {display:flex;flex-direction:column;gap:.45rem;margin:0 0 1rem;min-width:0;}
.booking-request-card .form-row {gap:.85rem;align-items:start;}
.booking-request-card .form-label {margin:0;line-height:1.5;}
.booking-request-card .form-input {width:100%;min-height:44px;}
.booking-request-card textarea.form-input{min-height:105px!important}
.booking-request-card .captcha-field {display:grid;gap:.8rem;}
.booking-request-card .btn {margin-top:.4rem;min-height:46px;}
@media(max-width:900px){.inquiry-contact-grid{grid-template-columns:1fr}.inquiry-intro-card .section-title{max-width:15ch}.inquiry-benefits{grid-template-columns:repeat(3,minmax(0,1fr))}.inquiry-benefit{grid-template-columns:1fr}.inquiry-contact-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.inquiry-intro-card,.booking-request-card{border-radius:22px}.inquiry-benefits,.inquiry-contact-info{grid-template-columns:1fr}.booking-request-card .form-row{grid-template-columns:1fr}}
.contact-item-no-hover,.contact-item-no-hover:hover {transform:none!important;box-shadow:0 2px 8px rgba(0,0,0,.05)!important;}

.contact-item.contact-item-no-hover,.contact-item.contact-item-no-hover:hover,.contact-item.contact-item-no-hover:focus,.contact-item.contact-item-no-hover:focus-visible {transform:none!important;box-shadow:0 2px 8px rgba(0,0,0,.05)!important;color:inherit!important;transition:none!important;}
.contact-item.contact-item-no-hover .ci-icon {transform:none!important;}
.contact-sec > .container > .section-title {margin-bottom:.75rem;line-height:1.2;}
.contact-sec > .container > .section-sub {max-width:760px;margin-bottom:2.25rem;line-height:1.7;}
.booking-request-card {display:grid;gap:0;}
.booking-request-card > h3 {padding-bottom:1rem;border-bottom:1px solid rgba(95,122,102,.14);}
.booking-request-card .form-row + .form-group,.booking-request-card .form-group + .form-row {margin-top:.15rem;}
@media(max-width:700px){.contact-sec > .container > .section-sub{margin-bottom:1.5rem}.booking-request-card{padding:1.25rem}.booking-request-card .form-row{gap:0}}
/* Structured subpage editor */
.admin-pages-layout{display:grid;grid-template-columns:minmax(250px,290px) minmax(0,1fr);gap:1.5rem;align-items:start}
.admin-pages-sidebar{position:sticky;top:6.5rem;max-height:calc(100vh - 8rem);overflow:auto}
.admin-pages-editor{min-width:0;padding:0;overflow:hidden;background:#f7f5f0}
.admin-page-editor-head{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.35rem 1.5rem;background:#fff;border-bottom:1px solid rgba(95,122,102,.14)}
.admin-page-editor-heading{display:grid;gap:.18rem;min-width:0}
.admin-page-editor-kicker{font-size:.7rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--ocean)}
.admin-page-editor-heading h2{margin:0;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.2;color:var(--text);overflow-wrap:anywhere}
.admin-page-editor-path{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;color:var(--text-muted)}
.admin-page-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}
.admin-page-editor-actions .btn{min-height:38px;padding:.55rem .85rem}
.admin-page-editor-form{display:grid;gap:1rem;padding:1.25rem}
.admin-page-editor-card{display:grid;gap:1rem;margin:0;padding:1.15rem 1.2rem;border:1px solid rgba(95,122,102,.13);border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(45,35,24,.035)}
.admin-page-card-heading{display:flex;align-items:center;gap:.8rem;padding-bottom:.85rem;border-bottom:1px solid rgba(95,122,102,.11)}
.admin-page-card-heading>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:var(--ocean-pale);color:var(--ocean);font-size:.75rem;font-weight:800}
.admin-page-card-heading>div{display:grid;gap:.12rem}
.admin-page-card-heading strong{font-size:1rem;color:var(--text)}
.admin-page-card-heading small{font-size:.8rem;font-weight:400;color:var(--text-muted)}
.admin-page-builder,.admin-page-html{display:grid;gap:1rem}
.admin-page-editor-card .form-group:last-child{margin-bottom:0}
.admin-page-editor-card .highlight-admin-grid{margin-top:.15rem}
.admin-page-seo{margin:0!important;background:#fff;box-shadow:0 8px 22px rgba(45,35,24,.035)}
.admin-page-seo summary{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:0!important;list-style:none}
.admin-page-seo summary::-webkit-details-marker{display:none}
.admin-page-seo summary>span{font-weight:700;color:var(--text)}
.admin-page-seo summary>small{font-weight:400;color:var(--text-muted)}
.admin-page-seo[open] summary{padding-bottom:.85rem;margin-bottom:1rem!important;border-bottom:1px solid rgba(95,122,102,.11)}
.admin-page-editor-form>.btn{justify-self:start}
.admin-pages-editor>.form-help-text{margin:0 1.25rem 1.25rem}
.admin-pages-editor>form+form{margin:0 1.25rem 1.25rem!important}
@media(max-width:980px){.admin-pages-layout{grid-template-columns:1fr}.admin-pages-sidebar{position:static;max-height:none;overflow:visible}}
@media(max-width:700px){.admin-page-editor-head{align-items:flex-start;flex-direction:column;padding:1.1rem}.admin-page-editor-actions{justify-content:flex-start}.admin-page-editor-form{padding:1rem}.admin-page-editor-card{padding:1rem}.admin-page-card-heading small{display:none}}
.portal-contact-source-card{display:grid;gap:1rem;min-width:0;margin:0;padding:1rem;border:1px solid rgba(95,122,102,.14);border-radius:16px;background:#f8faf8}.portal-contact-source-card legend{padding:0 .35rem;color:var(--text);font-size:.82rem;font-weight:750}.portal-contact-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.portal-contact-choice{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:.7rem;min-width:0;padding:.85rem;border:1px solid rgba(95,122,102,.15);border-radius:13px;background:#fff;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.portal-contact-choice:hover{border-color:rgba(95,122,102,.4)}.portal-contact-choice.is-selected{border-color:var(--ocean);background:#f1f6f2;box-shadow:inset 0 0 0 1px var(--ocean)}.portal-contact-choice input{width:18px;height:18px;margin:.1rem 0 0;accent-color:var(--ocean)}.portal-contact-choice>span{display:grid;gap:.22rem;min-width:0}.portal-contact-choice strong{font-size:.86rem}.portal-contact-choice small{color:var(--text-muted);font-size:.75rem;line-height:1.4;overflow-wrap:anywhere}
.portal-contact-source-help{display:grid;gap:.35rem;padding:.75rem .85rem;border-radius:12px;background:#fff;color:var(--text-muted);font-size:.86rem;line-height:1.45}
.portal-contact-source-help p{margin:0}
.portal-contact-source-help strong{color:var(--text)}
.portal-contact-source-help small{padding-top:.35rem;border-top:1px solid rgba(95,122,102,.12);font-size:.78rem;color:var(--text-muted)}
.portal-contact-result-note{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.35rem .75rem;padding:.85rem 1rem;border-radius:14px;background:#f7f3eb;color:var(--text-muted);font-size:.78rem;line-height:1.5}.portal-contact-result-note strong{color:var(--text)}
[data-portal-manager-fields]{display:grid;gap:1rem;padding:1rem;border:1px dashed rgba(26,107,138,.22);border-radius:16px;background:#fbfdfe}
[data-portal-manager-fields][hidden],[data-portal-contact-help][hidden]{display:none!important}
@media(max-width:760px){.portal-contact-choice-grid{grid-template-columns:1fr}.portal-contact-result-note{grid-template-columns:1fr}}

/* Footer column editor */
.footer-columns-editor{gap:1rem}
.footer-columns-intro{margin:0;padding:.85rem 1rem;border-radius:14px;background:var(--ocean-pale);color:var(--text-muted);font-size:.88rem;line-height:1.55}
.footer-column-card{display:grid;gap:1rem;padding:1.1rem;border:1px solid rgba(95,122,102,.15);border-radius:18px;background:#fff;box-shadow:0 7px 20px rgba(45,35,24,.03)}
.footer-column-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.85rem;border-bottom:1px solid rgba(95,122,102,.11)}
.footer-column-identity{display:flex;align-items:center;gap:.8rem;min-width:0}
.footer-column-identity>div{display:grid;gap:.15rem;min-width:0}
.footer-column-identity strong{color:var(--text);font-size:1rem}
.footer-column-identity small{color:var(--text-muted);font-size:.8rem;line-height:1.4}
.footer-column-number{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:var(--ocean-pale);color:var(--ocean);font-size:.75rem;font-weight:800}
.footer-column-status{display:inline-flex;align-items:center;min-height:28px;padding:.3rem .65rem;border-radius:999px;background:#eef0ee;color:#68716b;font-size:.72rem;font-weight:750;white-space:nowrap}
.footer-column-status.is-active{background:#dcfce7;color:#15803d}
.footer-column-switch{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.8rem .9rem;border:1px solid rgba(95,122,102,.12);border-radius:14px;background:#fafbf9;cursor:pointer}
.footer-column-switch>span{display:grid;gap:.16rem}
.footer-column-switch strong{font-size:.88rem;color:var(--text)}
.footer-column-switch small{font-size:.78rem;line-height:1.4;color:var(--text-muted)}
.footer-column-switch input{margin:0}
.footer-column-fields{margin:0!important;transition:opacity .18s ease}
.footer-column-fields>.form-group,.footer-column-card>.footer-column-fields>.form-group,.footer-access-item>.form-group{margin:0}
.footer-column-fields.is-muted{opacity:.55}
.footer-column-note{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem 1rem;align-items:center;padding:.8rem .9rem;border-radius:14px;background:#f8f5ef;color:var(--text-muted);font-size:.8rem;line-height:1.45}
.footer-column-note strong{color:var(--text)}
.footer-column-note span{grid-column:1}
.footer-column-note a{grid-column:2;grid-row:1 / span 2;color:var(--ocean);font-weight:700;text-decoration:none;white-space:nowrap}
.footer-column-note a:hover,.footer-column-note a:focus-visible{text-decoration:underline}
.footer-navigation-title-field{margin:0 0 1rem!important;padding:1rem;border:1px solid rgba(95,122,102,.14);border-radius:16px;background:#f8faf8}.footer-navigation-title-field .admin-i18n-field{gap:.75rem}.footer-navigation-title-field .admin-i18n-field-head{min-height:auto!important;align-items:center!important}.footer-navigation-title-field .form-label{min-height:auto!important;align-items:center!important;margin:0}.footer-navigation-title-field .admin-i18n-control{min-height:46px;background:#fff}.footer-link-settings-head{display:grid;gap:.18rem;margin:0 0 .65rem}.footer-link-settings-head strong{font-size:.84rem;color:var(--text)}.footer-link-settings-head small{font-size:.75rem;line-height:1.45;color:var(--text-muted)}.footer-link-toggle-grid{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:.65rem}.footer-page-toggle-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.footer-link-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:66px;padding:.7rem .8rem;border:1px solid rgba(95,122,102,.14);border-radius:14px;background:#fbfcfa;cursor:pointer}.footer-link-toggle>span{display:grid;gap:.12rem;min-width:0}.footer-link-toggle strong{font-size:.82rem;color:var(--text);overflow-wrap:anywhere}.footer-link-toggle small{font-size:.72rem;color:var(--text-muted);overflow-wrap:anywhere}.footer-link-toggle input{margin:0}.footer-link-toggle.is-unpublished{opacity:.58;cursor:not-allowed}.footer-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.footer-access-item{display:grid;align-content:start;gap:1rem;padding:1rem;border:1px solid rgba(95,122,102,.12);border-radius:16px;background:#fbfaf7;transition:opacity .18s ease,border-color .18s ease}
.footer-access-item.is-inactive>.form-group{opacity:.55}
.footer-access-item .footer-column-switch{padding:0;border:0;background:transparent}
@media(max-width:1180px){.footer-link-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.footer-link-toggle-grid,.footer-page-toggle-list{grid-template-columns:1fr}.footer-navigation-title-field{padding:.85rem}.footer-column-card{padding:1rem}.footer-access-grid{grid-template-columns:1fr}.footer-column-note{grid-template-columns:1fr}.footer-column-note span,.footer-column-note a{grid-column:1;grid-row:auto}.footer-column-card-head{align-items:center}.footer-column-identity small{display:none}}



/* Pricing settings */
.pricing-settings-intro-actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;justify-content:flex-end}.pricing-settings-autosave{display:inline-flex;align-items:center;gap:.45rem;min-height:2rem;padding:.35rem .75rem;border-radius:999px;background:#eef5ef;color:#486451;font-size:.76rem;font-weight:750;white-space:nowrap}.pricing-settings-autosave:before{content:"";width:7px;height:7px;border-radius:999px;background:#4f8a61;box-shadow:0 0 0 4px rgba(79,138,97,.12)}
.pricing-settings-card-wide{grid-column:1/-1}.pricing-settings-card-head{padding-bottom:1rem;border-bottom:1px solid rgba(95,122,102,.12)}.pricing-settings-card-heading{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.8rem;align-items:center;min-width:0}.pricing-settings-card-heading>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e9f0ea;color:var(--ocean);font-size:.72rem;font-weight:800}.pricing-settings-card-heading>div{display:grid;gap:.15rem;min-width:0}.pricing-settings-card-heading h3{margin:0}.pricing-settings-card-heading p{margin:0;color:var(--text-muted);font-size:.8rem;line-height:1.45}.pricing-season-toggle-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:250px;padding:.7rem .8rem;border:1px solid rgba(95,122,102,.14);border-radius:14px;background:#f7faf7;cursor:pointer}.pricing-season-toggle-card>span{display:grid;gap:.12rem;color:var(--text);font-family:'Jost',sans-serif;font-size:inherit;font-weight:400;letter-spacing:0;line-height:1.35;text-transform:none}.pricing-season-toggle-card strong{color:var(--text);font-size:.86rem;font-weight:650;letter-spacing:0;line-height:1.35;text-transform:none}.pricing-season-toggle-card small{color:var(--text-muted);font-size:.74rem;font-weight:500;letter-spacing:0;line-height:1.4;text-transform:none}.pricing-season-toggle-card input{flex:0 0 auto}
.pricing-season-toggle-card.is-disabled{background:#f3f3f1}.pricing-input-grid [data-late-cancellation-field]{transition:opacity .18s ease,filter .18s ease}.pricing-input-grid [data-late-cancellation-field].is-disabled{opacity:.46;filter:grayscale(.35)}.pricing-input-grid [data-late-cancellation-field].is-disabled .form-input{cursor:not-allowed;background:#f1f1ef}
.pricing-standard-rate{max-width:430px;margin:1rem 0}.pricing-standard-rate .form-group{margin:0}.pricing-season-explanation{display:grid;gap:.25rem;margin:1rem 0;padding:.85rem 1rem;border-radius:14px;background:var(--ocean-pale)}.pricing-season-explanation strong{color:var(--ocean);font-size:.8rem}.pricing-season-explanation span{color:var(--text-muted);font-size:.78rem;line-height:1.5}
.pricing-subsection-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:1.4rem 0 1rem;padding:1.05rem 1.1rem;border:1px solid rgba(95,122,102,.14);border-radius:16px;background:linear-gradient(135deg,#f8faf8,#fff)}.pricing-subsection-head>div{display:grid;gap:.18rem}.pricing-subsection-head>div>span{color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.pricing-subsection-head h4{margin:0;color:var(--text);font-size:1.05rem}.pricing-subsection-head p{margin:.15rem 0 0;color:var(--text-muted);font-size:.8rem;line-height:1.5}.pricing-season-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:0}.pricing-season-item{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.9rem 1rem;padding:1rem;border-radius:16px;background:#f8f5ef;border:1px solid rgba(132,92,47,.1)}.pricing-season-item-head{grid-column:1/-1;display:flex;align-items:center;gap:.7rem;padding:0 3.25rem .75rem 0;border-bottom:1px solid rgba(132,92,47,.12)}.pricing-season-item-head>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#fff;color:var(--accent);font-size:.7rem;font-weight:800}.pricing-season-item-head>div{display:grid;gap:.1rem;min-width:0}.pricing-season-item-head strong{font-size:.92rem}.pricing-season-item-head small{color:var(--text-muted);font-size:.72rem}.pricing-season-item .pricing-field{margin:0}.pricing-season-item .pricing-input-wrap{max-width:none}.pricing-season-item>.season-date-editor{grid-column:1/-1;padding-top:.1rem}
.season-date-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.season-date-editor fieldset{min-width:0;border:0;padding:0;margin:0}.season-date-fields{display:grid;grid-template-columns:minmax(64px,.35fr) minmax(90px,.65fr);gap:.4rem}.season-date-fields .form-input{min-width:0}
.pricing-input-grid .form-group{margin:0}.pricing-field-wide>.form-group{margin:0}.pricing-payment-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}.pricing-payment-layout>.form-group{margin:0}.pricing-calculation-note{padding:.85rem 1rem;border-radius:14px;background:#f5f8f5;color:var(--text-muted);font-size:.8rem;line-height:1.5}
@media(max-width:900px){.pricing-settings-intro{align-items:flex-start}.pricing-settings-intro-actions{justify-content:flex-start}.pricing-settings-grid,.pricing-season-grid{grid-template-columns:1fr}.pricing-settings-card-wide{grid-column:auto}.pricing-season-toggle-card{min-width:0}.pricing-season-item{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media(max-width:620px){.pricing-settings-intro{align-items:stretch;flex-direction:column}.pricing-settings-intro-actions{justify-content:space-between}.pricing-settings-card-head{align-items:stretch;flex-direction:column}.pricing-subsection-head{align-items:stretch;flex-direction:column;padding:.9rem}.pricing-subsection-head .pricing-season-toggle-card{width:100%;min-width:0}.pricing-season-item{grid-template-columns:1fr}.pricing-season-item-head,.pricing-season-item>.season-date-editor{grid-column:auto}.season-date-editor{grid-template-columns:1fr}.pricing-input-grid{grid-template-columns:1fr}.pricing-field-wide{grid-column:auto}}
.pricing-season-item-head{align-items:flex-end;justify-content:space-between}.pricing-season-item-head .pricing-season-name{display:grid;flex:1;gap:.35rem;min-width:0}.pricing-season-name .form-label{margin:0}.pricing-season-name .form-input{width:100%;max-width:none;background:#fff;font-weight:400}.pricing-season-item-head .pricing-season-item-actions{display:flex;align-items:center;gap:.65rem;flex:0 0 auto}.pricing-season-active{display:inline-flex;align-items:center;gap:.48rem;min-height:38px;padding:.2rem .25rem .2rem .65rem;border:1px solid rgba(95,122,102,.16);border-radius:999px;background:#fff;color:var(--text-muted);font-size:.72rem;font-weight:650}.pricing-season-active input[type=checkbox]{margin:0}.pricing-season-remove{position:absolute;top:1rem;right:1rem;z-index:1;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #efcbc6;border-radius:12px;background:#fff3f1;color:#a44138;font:700 1.25rem/1 Arial,sans-serif;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.pricing-season-remove:hover{background:#ffe7e3;border-color:#dfaaa3}.pricing-season-remove:focus-visible{outline:3px solid rgba(168,65,56,.2);outline-offset:2px}.pricing-season-remove:active{transform:scale(.96)}.pricing-season-add{margin-top:1rem}.pricing-season-add:disabled{cursor:not-allowed;opacity:.55}.pricing-season-empty{margin:1rem 0 0;padding:1rem;border:1px dashed rgba(95,122,102,.24);border-radius:14px;background:#f8faf8;color:var(--text-muted);text-align:center}.pricing-season-empty[hidden]{display:none}@media(max-width:620px){.pricing-season-item-head{align-items:stretch;flex-direction:column}.pricing-season-item-head .pricing-season-item-actions{justify-content:flex-start}.pricing-season-active{flex:0 1 auto;justify-content:space-between}}

/* Contact settings */
.contact-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.contact-settings-head>div{display:grid;gap:.35rem}.contact-settings-head .admin-section-title{margin:0}.contact-settings-head p{margin:0;color:var(--text-muted);font-size:.88rem;line-height:1.55}.contact-settings-autosave{display:inline-flex;align-items:center;gap:.45rem;min-height:2rem;padding:.35rem .75rem;border-radius:999px;background:#eef5ef;color:#486451;font-size:.76rem;font-weight:750;white-space:nowrap}.contact-settings-autosave:before{content:"";width:7px;height:7px;border-radius:999px;background:#4f8a61;box-shadow:0 0 0 4px rgba(79,138,97,.12)}
.contact-settings-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;align-items:stretch}.contact-settings-card{grid-template-rows:auto minmax(0,1fr);align-content:start;height:100%;overflow:hidden}.contact-settings-card-head{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.8rem;align-items:center;padding:1.05rem 1.15rem;border-bottom:1px solid rgba(95,122,102,.12);background:linear-gradient(135deg,#fbfcfa,#f5f8f5)}.contact-settings-card-head>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e9f0ea;color:var(--ocean);font-size:.72rem;font-weight:800}.contact-settings-card-head>div{display:grid;gap:.2rem}.contact-settings-card-head p{margin:0;color:var(--text-muted);font-size:.8rem;line-height:1.45}.contact-settings-card .admin-edit-card-body{padding:1.15rem}
.contact-channel-list{display:grid;gap:.85rem}.contact-channel-card{display:grid;gap:.9rem;padding:1rem;border:1px solid rgba(95,122,102,.14);border-radius:16px;background:#fbfcfa}.contact-channel-identity{display:flex;align-items:center;gap:.75rem}.contact-channel-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:12px;background:var(--ocean-pale);color:var(--ocean);font-size:1rem}.contact-channel-identity>div{display:grid;gap:.1rem}.contact-channel-identity strong{font-size:.92rem}.contact-channel-identity small{color:var(--text-muted);font-size:.76rem}.contact-channel-fields{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(145px,.75fr);gap:.8rem}.contact-channel-fields .form-group{margin:0}
.contact-channel-fields-single{grid-template-columns:minmax(0,1fr)}
.contact-channel-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-address-privacy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-bottom:1rem}.contact-address-privacy>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.65rem;align-items:start;padding:.8rem;border-radius:14px;background:#f5f8f5}.contact-address-privacy>div>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;color:var(--ocean);font-size:1rem}.contact-address-privacy p{display:grid;gap:.15rem;margin:0}.contact-address-privacy strong{font-size:.8rem}.contact-address-privacy small{color:var(--text-muted);font-size:.73rem;line-height:1.4}
.contact-address-grid{display:grid;grid-template-columns:minmax(110px,.42fr) minmax(0,1fr) minmax(0,.55fr) minmax(100px,.28fr);gap:.85rem}.contact-address-grid .form-group{margin:0}.contact-address-street{grid-column:1/4}.contact-address-number{grid-column:4}.contact-address-postal{grid-column:1}.contact-address-city{grid-column:2/5}.contact-address-country{grid-column:1/-1}.contact-address-preview{display:grid;gap:.55rem;margin-top:1rem;padding:.9rem 1rem;border:1px solid rgba(26,107,138,.13);border-radius:15px;background:var(--ocean-pale)}.contact-address-preview-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.contact-address-preview-head span{font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ocean)}.contact-address-preview-head small{color:var(--text-muted);font-size:.73rem}.contact-address-preview .form-input{background:#fff;font-weight:650;color:var(--text)}
@media(max-width:1120px){.contact-settings-layout{grid-template-columns:1fr;align-items:start}.contact-settings-card{height:auto}.contact-channel-fields{grid-template-columns:minmax(0,1fr) minmax(180px,.5fr)}}@media(max-width:700px){.contact-settings-head{align-items:stretch;flex-direction:column}.contact-settings-autosave{align-self:flex-start}.contact-channel-fields,.contact-address-privacy,.contact-address-grid{grid-template-columns:1fr}.contact-address-street,.contact-address-number,.contact-address-postal,.contact-address-city,.contact-address-country{grid-column:auto;max-width:none}.contact-address-preview-head{align-items:flex-start;flex-direction:column}}
.bank-settings-head{margin-bottom:1.2rem}.bank-settings-head p{margin:.35rem 0 0;color:var(--text-muted);font-size:.88rem}.bank-settings-layout{display:block}.bank-settings-panel{overflow:hidden;border:1px solid rgba(95,122,102,.18);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(35,29,24,.045)}.bank-settings-panel-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1.15rem 1.25rem;background:linear-gradient(135deg,#f7faf7,#f2f6f2);border-bottom:1px solid rgba(95,122,102,.12)}.bank-settings-panel-head>div{display:grid;gap:.18rem}.cms-modern .bank-settings-panel .admin-edit-card-title{font-family:'Jost',sans-serif;font-style:normal;font-weight:700;letter-spacing:0}.bank-settings-panel-head p{margin:0;color:var(--text-muted);font-size:.8rem;line-height:1.45}.bank-settings-panel-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e4ede6;color:var(--ocean)}.bank-settings-panel-icon svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.bank-settings-state{display:inline-flex;align-items:center;gap:.4rem;padding:.48rem .7rem;border-radius:999px;background:#f3ece4;color:#856141;font-family:'Jost',sans-serif;font-size:.76rem;font-style:normal;font-weight:700;line-height:1.2;letter-spacing:0;white-space:nowrap;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.bank-settings-state::before{content:'';width:7px;height:7px;border-radius:50%;background:#b58a62}.bank-settings-state.is-active{background:#e8f2e9;color:#3f6f4c}.bank-settings-state.is-active::before{background:#4b9360}.bank-settings-panel-body{display:grid;gap:1.2rem;padding:1.3rem 1.25rem}.bank-settings-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(170px,.65fr);gap:1rem;align-items:end}.bank-settings-fields .form-group,.bank-settings-panel-body>.form-group{margin:0}.bank-settings-panel-footer{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:1rem;padding:1.05rem 1.25rem;border-top:1px solid rgba(95,122,102,.12);background:#fbfcfa}.bank-settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1rem 1.05rem;border:1px solid rgba(95,122,102,.18);border-radius:16px;background:#fff;cursor:pointer}.bank-settings-toggle-copy{display:grid;gap:.2rem}.bank-settings-toggle-copy strong{font-size:.9rem}.bank-settings-toggle-copy small{color:var(--text-muted);font-size:.78rem;line-height:1.5}.bank-settings-privacy-note{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:16px;background:#f0f5f1;color:var(--text)}.bank-settings-privacy-note>span{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:#dfeae1;color:var(--ocean)}.bank-settings-privacy-note svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bank-settings-privacy-note p{display:grid;gap:.16rem;margin:0}.bank-settings-privacy-note small{color:var(--text-muted);font-size:.76rem;line-height:1.45}@media(max-width:1050px){.bank-settings-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-settings-fields .form-group:last-child{grid-column:1/-1}.bank-settings-panel-footer{grid-template-columns:1fr}}@media(max-width:700px){.bank-settings-panel-head{grid-template-columns:42px minmax(0,1fr)}.bank-settings-panel-icon{width:42px;height:42px}.bank-settings-state{grid-column:1/-1;justify-self:start}.bank-settings-fields{grid-template-columns:1fr}.bank-settings-fields .form-group:last-child{grid-column:auto}.bank-settings-panel-body,.bank-settings-panel-footer{padding:1rem}.bank-settings-toggle-row{align-items:flex-start}.bank-settings-privacy-note{align-items:flex-start}}

/* Cancellation inbox and role-based notification settings */
.cancellation-inbox-head,.notification-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.cancellation-count-badge,.notification-settings-note{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .75rem;border-radius:999px;background:#eef3ee;color:#47614f;font-size:.78rem;font-weight:700;white-space:nowrap}
.cancellation-card-list,.cancellation-archive-list{display:grid;gap:.9rem}
.cancellation-card{padding:1.15rem;border:1px solid #e4ded4;border-left:4px solid #c88652;border-radius:16px;background:#fffdfa}
.cancellation-card-top,.cancellation-card-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;flex-wrap:wrap}
.cancellation-card h3{margin:.2rem 0}.cancellation-card-kicker{color:#91623f;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.cancellation-card-meta{color:#776d62;font-size:.9rem}
.cancellation-message{margin:1rem 0;padding:.85rem 1rem;border-radius:12px;background:#f5f1eb}.cancellation-message span{display:block;margin-bottom:.35rem;color:#796a5e;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.cancellation-message p{margin:0}.cancellation-card-actions{justify-content:flex-end}
.cancellation-archive-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid #e7e2da;border-radius:12px;color:inherit;text-decoration:none;background:#fff}.cancellation-archive-row span{display:grid;gap:.2rem}.cancellation-archive-row small{color:#7d7369}
.cancellation-pagination{margin-top:1.1rem}.customer-mail-pagination-btn.is-disabled{opacity:.4;pointer-events:none}
.cancellation-refund-card{scroll-margin-top:1.5rem;overflow:hidden;border:1px solid #e4ded4;border-radius:16px;background:#fffdfa;box-shadow:0 12px 30px rgba(65,54,43,.04)}
.cancellation-refund-disclosure>summary{list-style:none}.cancellation-refund-disclosure>summary::-webkit-details-marker{display:none}
.cancellation-refund-compact{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(210px,1fr) auto;align-items:center;gap:1rem;min-height:82px;padding:1rem 1.1rem;cursor:pointer;transition:background .18s ease}.cancellation-refund-compact:hover{background:#faf7f2}.cancellation-refund-disclosure[open]>.cancellation-refund-compact{background:#f7f4ee}.cancellation-refund-identity,.cancellation-refund-booking{display:grid;gap:.2rem;min-width:0}.cancellation-refund-identity>strong{overflow:hidden;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.cancellation-refund-booking strong{font-size:.88rem}.cancellation-refund-booking small{color:#7d7369;font-size:.78rem}.cancellation-refund-compact-state{display:flex;align-items:center;justify-content:flex-end;gap:.7rem}.cancellation-refund-status{display:inline-flex;align-items:center;justify-content:center;min-height:1.85rem;padding:.3rem .65rem;border-radius:999px;background:#f0eee9;color:#665e55;font-family:inherit;font-size:.73rem;font-weight:700;line-height:1.15;white-space:nowrap}.cancellation-refund-status.is-neutral{min-height:1.55rem;padding:.18rem .6rem;font-size:.72rem;font-weight:600;letter-spacing:0}.cancellation-refund-status.is-open{background:#fae9d9;color:#915d35}.cancellation-refund-status.is-pending{background:#fff3cf;color:#80651b}.cancellation-refund-status.is-complete{background:#e6f2e8;color:#3f704b}.cancellation-refund-chevron{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#fff;color:#5f7565;font-size:1.1rem;transition:transform .18s ease}.cancellation-refund-disclosure[open] .cancellation-refund-chevron{transform:rotate(180deg)}.cancellation-refund-body{padding:1.15rem;border-top:1px solid #e7e1d8}
.cancellation-refund-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.cancellation-refund-head h3{margin:.2rem 0}
.cancellation-refund-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-top:1rem}.cancellation-refund-summary>div{display:grid;gap:.25rem;padding:.8rem .9rem;border:1px solid #ebe5dc;border-radius:12px;background:#fff}.cancellation-refund-summary span{color:#796f65;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.cancellation-refund-summary strong{font-size:1.05rem}.cancellation-refund-summary .is-open{background:#faf2e8;border-color:#ead6c0}
.cancellation-refund-complete{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem;padding:.8rem 1rem;border-radius:12px;background:#eef5ef;color:#47614f}
.cancellation-refund-process{display:grid;gap:.75rem;margin-top:1rem}.cancellation-refund-option{padding:1rem;border:1px solid #e8e2d9;border-radius:14px;background:#fff}.cancellation-refund-option>div:first-child{display:flex;align-items:center;gap:.65rem}.cancellation-refund-option h4{margin:0}.cancellation-refund-option p{margin:.65rem 0 1rem;color:#756b61;font-size:.88rem;line-height:1.55}.cancellation-refund-provider{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.3rem .65rem;border-radius:9px;background:#eef3ee;color:#54705d;font-size:.72rem;font-weight:800}.cancellation-refund-stripe{border-color:#dce6df;background:#fbfdfb}.manual-refund-disclosure{display:grid;gap:.75rem}.manual-refund-disclosure>summary{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:2.65rem;padding:.65rem 1rem;border:1px solid #dcd5ca;border-radius:12px;background:#f5f1eb;color:#4c463f;cursor:pointer;font-size:.86rem;font-weight:750;list-style:none}.manual-refund-disclosure>summary::-webkit-details-marker{display:none}.manual-refund-disclosure[open]>summary{background:#ebe6de}.manual-refund-disclosure>.cancellation-refund-option{margin-top:.75rem}.cancellation-refund-process.is-manual-only .cancellation-refund-manual{max-width:820px}
.manual-refund-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.manual-refund-form label{display:grid;gap:.35rem}.manual-refund-form label>span{color:#675e55;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.manual-refund-form .is-wide{grid-column:1/-1}.manual-refund-form button{width:100%}
.cancellation-refund-history{margin-top:1rem;border-top:1px solid #ebe5dc;padding-top:.8rem}.cancellation-refund-history summary{cursor:pointer;color:#536c5b;font-weight:700}.cancellation-refund-history>div{display:grid;gap:.5rem;margin-top:.75rem}.cancellation-refund-history-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.7rem .8rem;border-radius:10px;background:#f6f3ee}.cancellation-refund-history-row span{display:grid;gap:.2rem}.cancellation-refund-history-row span:last-child{text-align:right}.cancellation-refund-history-row small{color:#7d7369}
.cancellation-refund-history.is-open-history>div{margin-top:0}.manual-refund-reversal-form{flex:0 0 auto;margin:0}.manual-refund-reversal-form .btn{min-height:2.25rem;padding:.45rem .7rem;font-size:.76rem}.cancellation-history-archive{background:#f8f7f4}.cancellation-refund-disclosure.is-archived{box-shadow:none}.cancellation-refund-disclosure.is-archived>.cancellation-refund-compact{background:#fbfaf7}.cancellation-reversal-modal-card{width:min(520px,100%)}.cancellation-reversal-warning{display:grid;place-items:center;width:48px;height:48px;margin:.25rem 0 1rem;border-radius:16px;background:#fff3e4;color:#9b662f;font-size:1.35rem;font-weight:800}.cancellation-reversal-modal-card>p{margin:0 0 1.25rem;color:#6f655c;line-height:1.6}.cancellation-reversal-modal-card .dashboard-settings-actions{justify-content:flex-end}
.payment-reminder-modal{z-index:1450}.payment-reminder-modal-card{width:min(960px,94vw);max-height:calc(100vh - 3rem);max-height:calc(100dvh - 3rem);overflow:auto;padding:1.35rem}.payment-reminder-modal-head{align-items:flex-start;margin-bottom:1rem;padding-right:2.75rem}.payment-reminder-modal-head>div{display:grid;gap:.2rem}.payment-reminder-modal-head h2{margin:0;font-family:var(--font-serif);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:500}.payment-reminder-modal-head p{margin:.2rem 0 0;color:#746a60;font-size:.9rem}.payment-reminder-modal-kicker{color:#607966;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.payment-reminder-readiness{display:flex;align-items:center;gap:.55rem;margin-bottom:1rem;padding:.75rem .9rem;border-radius:12px;background:#eef5ef;color:#496250;font-size:.86rem}.payment-reminder-readiness.is-error{align-items:flex-start;flex-direction:column;background:#fff1ef;color:#8c3e36}.payment-reminder-readiness a{color:inherit;font-weight:800}.payment-reminder-online-dot{width:.6rem;height:.6rem;border-radius:50%;background:#4b9564;box-shadow:0 0 0 4px rgba(75,149,100,.13)}
.payment-reminder-list{display:grid;gap:.8rem}.payment-reminder-item{display:grid;grid-template-columns:minmax(210px,1.2fr) minmax(320px,1.6fr) auto;align-items:center;gap:1rem;padding:1rem;border:1px solid #e8e2d9;border-radius:16px;background:#fffdfa}.payment-reminder-person{display:flex;align-items:center;gap:.75rem;min-width:0}.payment-reminder-person>span:last-child{display:grid;gap:.16rem;min-width:0}.payment-reminder-person small{overflow:hidden;color:#7c7167;text-overflow:ellipsis;white-space:nowrap}.payment-reminder-avatar{display:grid;place-items:center;flex:0 0 auto;width:2.5rem;height:2.5rem;border-radius:12px;background:#e8f0e9;color:#55705d;font-weight:800}.payment-reminder-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.payment-reminder-facts>span{display:grid;gap:.15rem}.payment-reminder-facts small{color:#81766c;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.payment-reminder-facts strong{font-size:.9rem}.payment-reminder-facts em{color:#a45f39;font-size:.72rem;font-style:normal;font-weight:700}.payment-reminder-action-form{margin:0}.payment-reminder-action-form .btn{white-space:nowrap}.payment-reminder-action-form .btn:disabled{opacity:.48;cursor:not-allowed}.payment-reminder-item-warning{grid-column:1/-1;display:flex;gap:.45rem .75rem;align-items:center;padding:.6rem .75rem;border-radius:10px;background:#fff3e4;color:#865b32;font-size:.8rem}.payment-reminder-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #ebe6df}.payment-reminder-modal-actions>span{color:#7c7268;font-size:.82rem}
.notification-role-matrix{overflow:hidden;border:1px solid #e2ddd5;border-radius:16px;background:#fff}.notification-role-row{display:grid;grid-template-columns:minmax(260px,1.4fr) repeat(2,minmax(170px,.8fr));align-items:stretch;border-top:1px solid #ece7df}.notification-role-row:first-child{border-top:0}.notification-role-row>div,.notification-role-toggle{padding:1rem;border-left:1px solid #ece7df}.notification-role-row>:first-child{border-left:0}
.notification-role-header{background:#f5f3ee;color:#675e54;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.notification-role-header div{display:grid;gap:.25rem}.notification-role-header small{color:#82776c;font-size:.72rem;font-weight:400;text-transform:none;letter-spacing:0}.notification-role-copy{display:grid;gap:.3rem}.notification-role-copy small{color:#776f66}.notification-role-copy span{width:fit-content;padding:.2rem .5rem;border-radius:999px;background:#f1eee8;color:#665e55;font-size:.72rem}.notification-role-toggle{display:flex;align-items:center;justify-content:center;gap:.55rem;cursor:pointer}.notification-role-toggle span{color:#686158;font-size:.82rem;font-weight:700}.notification-settings-info{display:grid;gap:.25rem;margin-top:1rem;padding:.9rem 1rem;border-radius:12px;background:#f3f6f3;color:#506257}
.notification-reminder-card{display:grid;gap:1rem;margin-top:1.25rem;padding:1.15rem;border:1px solid #e2ddd5;border-radius:16px;background:#fff}.notification-reminder-head{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.notification-reminder-head h3{margin:.2rem 0 .25rem;font-size:1.05rem}.notification-reminder-head p{max-width:760px;margin:0;color:#776f66;line-height:1.55}.notification-reminder-kicker{color:#62806c;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.notification-reminder-toggle{display:flex;flex:0 0 auto;align-items:center;gap:.65rem}.notification-reminder-toggle>span{color:#58675d;font-size:.75rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.notification-reminder-login-mode{display:grid;gap:.75rem;margin:0;padding:1rem;border:1px solid #e2e8e2;border-radius:14px;background:#f7f9f7}.notification-reminder-login-mode legend{padding:0 .35rem;color:#3f4e44;font-size:.76rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.notification-reminder-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.notification-reminder-mode-option{display:flex;align-items:flex-start;gap:.7rem;padding:.85rem;border:1px solid #dde3dd;border-radius:12px;background:#fff;cursor:pointer}.notification-reminder-mode-option:has(input:checked){border-color:#789681;box-shadow:0 0 0 2px rgba(98,128,108,.1)}.notification-reminder-mode-option input{flex:0 0 auto;margin-top:.2rem}.notification-reminder-mode-option span{display:grid;gap:.25rem}.notification-reminder-mode-option small,.notification-reminder-login-mode>p{color:#70685f;font-size:.8rem;line-height:1.45}.notification-reminder-login-mode>p{margin:0}.notification-reminder-status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.notification-reminder-status span{display:grid;gap:.25rem;padding:.85rem .9rem;border-radius:12px;background:#f5f7f4;color:#6f685f;font-size:.82rem;line-height:1.45}.notification-reminder-status strong{color:#3f4e44;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.notification-reminder-details{border-top:1px solid #ece7df;padding-top:.85rem;color:#6f685f}.notification-reminder-details summary{width:fit-content;cursor:pointer;color:#4f6657;font-weight:750}.notification-reminder-details p{margin:.75rem 0 0;line-height:1.55}.notification-reminder-details code{overflow-wrap:anywhere}.notification-reminder-warning{color:#9a2f22!important;font-weight:700}@media(max-width:720px){.notification-reminder-head{align-items:flex-start}.notification-reminder-toggle{align-items:flex-end;flex-direction:column}.notification-reminder-mode-grid,.notification-reminder-status{grid-template-columns:1fr}}
@media (max-width:900px){.notification-role-header{display:none}.notification-role-row{grid-template-columns:1fr}.notification-role-row>div,.notification-role-toggle{border-left:0;border-top:1px solid #ece7df}.notification-role-row>:first-child{border-top:0}.notification-role-toggle{justify-content:space-between}.cancellation-archive-row{align-items:flex-start;flex-direction:column}.cancellation-refund-compact{grid-template-columns:minmax(0,1fr) auto}.cancellation-refund-booking{grid-column:1}.cancellation-refund-compact-state{grid-column:2;grid-row:1/3}.cancellation-refund-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.cancellation-refund-option p{min-height:0}}
@media (max-width:560px){.cancellation-inbox-head{align-items:stretch;flex-direction:column}.cancellation-count-badge{align-self:flex-start}.cancellation-card-actions,.cancellation-card-actions form,.cancellation-card-actions .btn{width:100%}.cancellation-refund-compact{grid-template-columns:1fr;gap:.65rem}.cancellation-refund-booking,.cancellation-refund-compact-state{grid-column:auto;grid-row:auto}.cancellation-refund-compact-state{justify-content:space-between}.cancellation-refund-status{white-space:normal;text-align:left}.cancellation-refund-head .btn{width:100%}.cancellation-refund-summary{grid-template-columns:1fr 1fr}.manual-refund-disclosure>summary{width:100%}.manual-refund-form{grid-template-columns:1fr}.manual-refund-form .is-wide{grid-column:auto}.cancellation-refund-history-row{flex-direction:column}.cancellation-refund-history-row span:last-child{text-align:left}.manual-refund-reversal-form,.manual-refund-reversal-form .btn{width:100%}.cancellation-reversal-modal-card .dashboard-settings-actions{align-items:stretch;flex-direction:column}.cancellation-reversal-modal-card .dashboard-settings-actions .btn{width:100%}}
@media (max-width:900px){.payment-reminder-item{grid-template-columns:1fr auto}.payment-reminder-facts{grid-column:1/-1;grid-row:2}.payment-reminder-action-form{grid-column:2;grid-row:1}}
@media (max-width:600px){.payment-reminder-modal{padding:.65rem}.payment-reminder-modal-card{width:100%;max-height:calc(100dvh - 1.3rem);padding:1rem}.payment-reminder-item{grid-template-columns:1fr}.payment-reminder-facts{grid-column:auto;grid-row:auto;grid-template-columns:1fr 1fr}.payment-reminder-facts>span:last-child{grid-column:1/-1}.payment-reminder-action-form{grid-column:auto;grid-row:auto}.payment-reminder-action-form .btn{width:100%}.payment-reminder-modal-actions{align-items:stretch;flex-direction:column}.payment-reminder-modal-actions .btn{width:100%}}
.admin-nav-count{display:inline-grid;place-items:center;margin-left:auto;min-width:1.5rem;height:1.5rem;padding:0 .35rem;border-radius:999px;background:#b86f42;color:#fff;font-size:.7rem;font-weight:800}.notification-toggle-state::before{content:'Aus'}.notification-role-toggle input:checked+.notification-toggle-state::before{content:'Aktiv'}

/* Cookies & privacy settings */
.privacy-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.privacy-settings-head>div{display:grid;gap:.35rem}.privacy-settings-head .admin-section-title{margin:0}.privacy-settings-head p{margin:0;color:var(--text-muted);font-size:.88rem;line-height:1.55}.privacy-settings-autosave{display:inline-flex;align-items:center;gap:.45rem;min-height:2rem;padding:.35rem .75rem;border-radius:999px;background:#eef5ef;color:#486451;font-size:.76rem;font-weight:750;white-space:nowrap}.privacy-settings-autosave:before{content:"";width:7px;height:7px;border-radius:50%;background:#4f8a61;box-shadow:0 0 0 4px rgba(79,138,97,.12)}
.privacy-settings-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;align-items:start}.privacy-settings-card{overflow:hidden;min-width:0}.privacy-settings-card-wide{grid-column:1/-1}.privacy-settings-card-head{display:flex;align-items:center;gap:.8rem;padding:1.05rem 1.15rem;border-bottom:1px solid rgba(95,122,102,.12);background:linear-gradient(135deg,#fbfcfa,#f5f8f5)}.privacy-settings-card-head>span:first-child{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:#e9f0ea;color:var(--ocean);font-size:.72rem;font-weight:800}.privacy-settings-card-head>div{display:grid;gap:.2rem;min-width:0}.privacy-settings-card-head p{margin:0;color:var(--text-muted);font-size:.8rem;line-height:1.45}.privacy-settings-card .admin-edit-card-body{padding:1.15rem}.privacy-status-pill{margin-left:auto!important;display:inline-flex!important;width:auto!important;height:auto!important;flex:0 0 auto!important;padding:.4rem .7rem;border-radius:999px!important;background:#e7f3e9!important;color:#39704a!important;font-size:.75rem!important;white-space:nowrap}.privacy-consent-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.privacy-consent-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid rgba(95,122,102,.12);border-radius:16px;background:#fff}.privacy-consent-row>div,.privacy-page-card>div{display:grid;gap:.22rem}.privacy-consent-row small,.privacy-page-card small{color:var(--text-muted);font-size:.78rem;line-height:1.5}.privacy-consent-row>span{flex:0 0 auto;padding:.42rem .65rem;border-radius:999px;background:#e9f0ea;color:var(--ocean);font-size:.72rem;font-weight:750}.privacy-consent-row>span.privacy-consent-optional{background:#f5eee5;color:#87613c}.privacy-page-card{display:flex;align-items:center;justify-content:space-between;gap:1rem}.privacy-page-card .btn{flex:0 0 auto}
@media(max-width:850px){.privacy-settings-layout,.privacy-consent-overview{grid-template-columns:1fr}.privacy-settings-card-wide{grid-column:auto}}@media(max-width:620px){.privacy-settings-head,.privacy-page-card{align-items:stretch;flex-direction:column}.privacy-settings-autosave{align-self:flex-start}.privacy-settings-card-head{align-items:flex-start}.privacy-status-pill{margin-left:0!important}.privacy-consent-row{align-items:flex-start;flex-direction:column}.privacy-page-card .btn{width:100%}}

/* Adaptive layout profiles: viewport size decides layout; pointer capabilities decide interaction. */
html[data-layout="tablet"] .section{padding-left:1.5rem;padding-right:1.5rem}
html[data-layout="tablet"] .highlights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-layout="tablet"] .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-layout="tablet"] .footer-brand-column{grid-column:1/-1}
html[data-layout="tablet"][data-orientation="landscape"] .inquiry-contact-grid{grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr)}
html[data-layout="tablet"][data-orientation="landscape"] .inquiry-benefits{grid-template-columns:1fr}
html[data-layout="tablet"][data-orientation="portrait"] .inquiry-contact-grid{grid-template-columns:1fr}
html[data-layout="tablet"] .admin-modal-card{width:min(92vw,920px)}

html[data-layout="smartphone"]{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html[data-layout="smartphone"] .section{padding:3.5rem 1rem}
html[data-layout="smartphone"] .container{padding-left:0;padding-right:0}
html[data-layout="smartphone"] .highlights-grid,
html[data-layout="smartphone"] .footer-grid,
html[data-layout="smartphone"] .inquiry-benefits{grid-template-columns:1fr}
html[data-layout="smartphone"] .admin-modal{padding:.75rem}
html[data-layout="smartphone"] .admin-modal-card{width:100%;border-radius:20px}
html[data-layout="smartphone"] .update-progress-steps{grid-template-columns:1fr}
html[data-layout="smartphone"] .update-progress-actions{display:grid;grid-template-columns:1fr}
html[data-layout="smartphone"] .update-progress-actions .btn{width:100%;justify-content:center}

html[data-input="touch"] button,
html[data-input="touch"] .btn,
html[data-input="touch"] input:not([type="hidden"]),
html[data-input="touch"] select{min-height:44px;touch-action:manipulation}
html[data-input="touch"] .calendar-nav .cal-btn{box-sizing:border-box;flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;padding:0;border-radius:50%;aspect-ratio:1/1;line-height:1}
html[data-input="touch"] input,
html[data-input="touch"] select,
html[data-input="touch"] textarea{font-size:16px}
html[data-input="touch"] .contact-item:hover,
html[data-input="touch"] .highlight-card:hover,
html[data-input="touch"] .gallery-card:hover,
html[data-input="touch"] .nav-cta:hover{transform:none}

/* Final CMS mobile guardrails: keep every editor inside the viewport. */
@media(max-width:900px){
  .cms-modern #admin-view :is(.security-card-grid,.security-card-grid-single,.security-toggle-grid-two,.customer-account-card-grid,.customer-account-toggle-grid,.highlight-admin-grid,.admin-details-copy-grid,.admin-details-amenity-grid,.pricing-settings-layout,.privacy-settings-layout){grid-template-columns:minmax(0,1fr)!important}
  .cms-modern #admin-view :is(.security-card,.customer-account-card,.admin-edit-card,.highlight-admin-card,.pricing-settings-card,.privacy-settings-card,.payment-provider-card,.mail-settings-card){min-width:0;max-width:100%}
  .cms-modern #admin-view :is(.admin-edit-card-head,.security-card-head,.customer-account-card-head,.payment-provider-card-head){min-width:0}
  .cms-modern #admin-view :is(.admin-i18n-field-head,.customer-portal-items-toolbar,.media-section-head){max-width:100%}
  .cms-modern #admin-view .admin-i18n-tabs{max-width:100%;overflow-x:auto;scrollbar-width:thin}
  .cms-modern #admin-view .admin-richtext-toolbar{align-items:stretch}
  .cms-modern #admin-view .admin-richtext-select{flex-basis:min(100%,150px)}
  .cms-modern #admin-view .customer-drawer{width:100%;max-width:100%}
  .cms-modern #admin-view .customer-drawer-shell{border-left:0}
  .cms-modern #admin-view .customer-drawer-mobile-nav{min-height:56px;padding:max(.5rem,env(safe-area-inset-top)) .75rem .5rem}
  .cms-modern #admin-view .customer-drawer-mobile-back{min-height:44px;padding:.45rem .55rem .45rem .25rem}
  .cms-modern #admin-view .customer-drawer-scroll{height:auto;min-height:0;padding:.75rem;padding-bottom:max(1rem,env(safe-area-inset-bottom))}
  .cms-modern #admin-view .customer-detail-panel{padding:1rem .85rem 1.1rem}
  .cms-modern #admin-view :is(.admin-modal-card,.dashboard-settings-modal-card,.mail-preview-modal-card){max-width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem);overflow:auto}
  .cms-modern #admin-view .update-progress-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cms-modern #admin-view .media-library-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
  .cms-modern #admin-view .dashboard-list-item{min-width:0}
  .cms-modern #admin-view .dashboard-list-main{min-width:0}
}

/* Mobile CMS scrolling: let the document follow Safari's changing viewport.
   A nested 100dvh scroller can retain an unreachable top offset after the
   iPhone browser chrome collapses and expands. */
@media(max-width:900px){
  body.cms-modern{min-height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch}
  body.cms-modern.admin-mobile-nav-open{overflow:hidden}
  .cms-modern #admin-view.active{display:block;height:auto;min-height:100vh;min-height:100svh;overflow:visible}
  .cms-modern #admin-view .admin-main{width:100%;height:auto;min-height:100vh;min-height:100svh;overflow-x:hidden;overflow-y:visible;overscroll-behavior:auto;scrollbar-gutter:auto;padding-bottom:max(1.5rem,calc(env(safe-area-inset-bottom) + 1rem))}
  .cms-modern #admin-view .admin-topbar{top:0;padding-top:max(.7rem,env(safe-area-inset-top));scroll-margin-top:calc(64px + env(safe-area-inset-top))}
  .cms-modern #admin-view .admin-sidebar-toggle{top:max(.7rem,env(safe-area-inset-top))}
  .cms-modern #admin-view .admin-user-menu-panel{top:calc(60px + env(safe-area-inset-top))}
  .cms-modern #admin-view :is(.admin-panel-anchor,#passkeys){scroll-margin-top:calc(76px + env(safe-area-inset-top))}
}
@media(max-width:600px){
  .admin-user-login-grid{grid-template-columns:minmax(0,1fr)}
  .cms-modern #admin-view .admin-main{padding-right:.75rem;padding-left:.75rem}
  .cms-modern #admin-view .admin-topbar{margin-right:-.75rem;margin-left:-.75rem;padding-left:3.75rem;padding-right:.75rem}
  .cms-modern #admin-view .dashboard-kpi-grid-overview,
  .cms-modern #admin-view .dashboard-activity-grid,
  .cms-modern #admin-view .dashboard-quick-grid,
  .cms-modern #admin-view .dashboard-mini-stats{grid-template-columns:minmax(0,1fr)}
  .cms-modern #admin-view .dashboard-list-item{align-items:flex-start;flex-direction:column;gap:.65rem}
  .cms-modern #admin-view .dashboard-list-side{width:100%;justify-items:start}
  .cms-modern #admin-view .dashboard-relevant-activity{grid-template-columns:minmax(0,1fr)}
  .cms-modern #admin-view .dashboard-relevant-activity-meta,
  .cms-modern #admin-view .dashboard-relevant-activity .badge{grid-column:1;grid-row:auto;justify-self:start;white-space:normal}
  .cms-modern #admin-view .dashboard-timeline-item{grid-template-columns:64px 10px minmax(0,1fr);gap:.55rem;padding:.8rem}
  .cms-modern #admin-view .dashboard-availability-grid{grid-template-columns:repeat(5,minmax(46px,1fr))}
  .cms-modern #admin-view .dashboard-availability-day{min-height:52px}
  .cms-modern #admin-view .admin-section{padding:.85rem}
  .cms-modern #admin-view :is(.security-card,.customer-account-card,.admin-edit-card,.highlight-admin-card,.pricing-settings-card,.privacy-settings-card,.payment-provider-card,.mail-settings-card){padding:1rem;border-radius:18px}
  .cms-modern #admin-view .admin-i18n-field-head{align-items:stretch;flex-direction:column}
  .cms-modern #admin-view .admin-i18n-tabs{width:100%;margin-left:0}
  .cms-modern #admin-view .admin-i18n-tab{flex:1;min-width:44px}
  .cms-modern #admin-view .update-progress-steps{grid-template-columns:minmax(0,1fr)}
  .cms-modern #admin-view .update-progress-actions{display:grid;grid-template-columns:1fr}
  .cms-modern #admin-view .update-progress-actions .btn{width:100%;justify-content:center}
  .cms-modern #admin-view .cancellation-refund-summary{grid-template-columns:minmax(0,1fr)}
  .cms-modern #admin-view .payment-reminder-facts{grid-template-columns:minmax(0,1fr)}
  .cms-modern #admin-view .customer-search-control{display:grid;grid-template-columns:minmax(0,1fr);gap:.55rem}
  .cms-modern #admin-view .customer-search-input{padding:0 .9rem}
  .cms-modern #admin-view .customer-search-submit{position:static;width:100%;height:44px;min-height:44px;transform:none;border-radius:12px}
}
:is(.admin-password-modal-close,.admin-profile-modal-close){display:grid!important;place-items:center!important;box-sizing:border-box!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;padding:0!important;border-radius:50%!important;line-height:1!important}:is(.admin-password-modal-close,.admin-profile-modal-close) svg{display:block;width:20px;height:20px;margin:auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}

/* Customer records and mobile controls: single, centered icons without content overlap. */
.customer-drawer-resize-handle svg{display:block;width:17px;height:17px;margin:auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.customer-detail-contact-summary{list-style:none}
.customer-detail-contact-summary::marker{content:"";font-size:0}
.customer-detail-contact-arrow svg{display:block;width:16px;height:16px;margin:auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.customer-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}
.customer-delete-form{margin:0}
.customer-delete-button{min-height:34px;padding:.48rem .72rem;font-size:.76rem}
.customer-pagination-btn,.customer-pagination-number{flex:0 0 38px;width:38px;min-width:38px;height:38px;padding:0;border-radius:50%}
.customer-mail-pagination-btn{flex:0 0 40px;width:40px;min-width:40px;height:40px;padding:0;border-radius:50%}
html[data-input="touch"] .admin-user-trigger{flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border-radius:50%}
html[data-input="touch"] .admin-user-trigger svg{margin:auto}
html[data-input="touch"] :is(.customer-pagination-btn,.customer-pagination-number,.customer-mail-pagination-btn){flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;padding:0;border-radius:50%;line-height:1}
@media(max-width:900px){
  #admin-view.record-drawer-active .admin-sidebar-toggle{opacity:0;visibility:hidden;pointer-events:none}
  .customer-detail-actions{align-items:flex-start;justify-content:flex-start}
}
@media(max-width:600px){
  .cms-modern #admin-view .admin-modal-card{padding-top:3.75rem}
  .cms-modern #admin-view .admin-modal-card>.lightbox-close{top:.65rem;right:.65rem}
}
body.booking-legal-open{position:fixed;left:0;right:0;width:100%;overflow:hidden}
.apple-passkey-login{width:100%;justify-content:center;margin:0 0 .75rem;border-color:rgba(95,122,102,.3);background:#eef4ef;color:#365442}
.apple-passkey-login[hidden]{display:none!important}

/* Keep native iOS date controls and season date selects inside their cards. */
@media(max-width:640px){
  :is(.booking-form-wrap,.admin-main,.account-main) :is(.form-group,.form-row,fieldset,.season-date-editor,.season-date-fields){min-width:0;max-width:100%}
  :is(.booking-form-wrap,.admin-main,.account-main) input.form-input[type="date"]{display:block;box-sizing:border-box;inline-size:100%;width:100%;min-inline-size:0;min-width:0;max-width:100%;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0;padding:0 .75rem!important;border-width:1px;font-size:16px;line-height:normal;overflow:hidden}
  :is(.booking-form-wrap,.admin-main,.account-main) input.form-input[type="date"]::-webkit-date-and-time-value{display:flex;align-items:center;box-sizing:border-box;width:100%;height:40px;min-height:40px;margin:0;padding:0;line-height:normal;text-align:left}
  .season-date-editor{grid-template-columns:1fr;gap:.65rem}
  .season-date-fields{grid-template-columns:minmax(0,72px) minmax(0,1fr);width:100%}
  .season-date-fields .form-input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:42px;min-height:42px;max-height:42px;padding:.5rem .7rem;font-size:16px;line-height:1.2}
}

/* CMS preview mirrors the established green transactional-mail layout. */
.mail-preview-canvas{background:#f5efe5}
.mail-preview-message{border:1px solid #e7ded2;border-radius:24px;background:#fff;box-shadow:0 16px 40px rgba(43,36,29,.1)}
.mail-preview-message header{padding:26px 30px;background:#587361;color:#fff;border-bottom:0}
.mail-preview-message header small{color:#fff;font-size:12px;font-weight:700;letter-spacing:.16em;opacity:.88}
.mail-preview-message header h3{margin-top:12px;color:#fff;font:700 24px/1.35 Arial,sans-serif}
.mail-preview-message main{padding:30px 30px 16px;color:#463a31;line-height:1.8}
.mail-preview-message main a{color:#587361}
.mail-preview-message footer{padding:18px 30px 28px;border-top-color:#eee7df;background:#fff;color:#7b6d61;line-height:1.7}
.mail-preview-message footer strong{color:#5f5146}
.mail-template-static-field{display:grid;gap:.4rem;padding:.85rem .95rem;border:1px solid #eadbc8;border-radius:14px;background:#fffaf3}
.mail-template-static-field>span{font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#8b735e}
.mail-template-static-field>strong{font-size:.95rem;line-height:1.45;color:#3f352d}
.mail-template-static-copy>div{color:#5f5146;font-size:.84rem;line-height:1.65}
.mail-template-static-copy p{margin:0}
.mail-template-static-copy p+p{margin-top:.85rem}
.inquiry-reply-form{display:grid;gap:.8rem;padding:1rem;border:1px solid rgba(95,122,102,.14);border-radius:15px;background:#fff}.inquiry-reply-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.inquiry-reply-form-head>div{display:grid;gap:.2rem}.inquiry-reply-form-head small{color:var(--text-muted);font-size:.76rem;line-height:1.45}.inquiry-reply-form label{display:grid;gap:.35rem}.inquiry-reply-form textarea{resize:vertical}.inquiry-reply-form .btn{justify-content:center;text-align:center}
@media(max-width:700px){.inquiry-reply-form-head{align-items:stretch;flex-direction:column}.inquiry-reply-form-head .btn{width:100%;justify-content:center}.cms-modern #admin-view a[href*="section=security-overview"]{justify-content:center;text-align:center}}
.update-upload-card{border:1px solid rgba(95,122,102,.18);border-radius:18px;background:#fbfcfa;overflow:hidden}.update-upload-card>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;cursor:pointer;list-style:none}.update-upload-card>summary::-webkit-details-marker{display:none}.update-upload-card>summary>span{display:grid;gap:.2rem}.update-upload-card>summary small{color:var(--text-muted);font-size:.76rem;font-weight:500}.update-upload-card>summary>b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#edf3ee;color:var(--ocean);transition:transform .18s ease}.update-upload-card[open]>summary>b{transform:rotate(180deg)}.update-upload-card>form{display:grid;gap:1rem;margin:0;padding:1rem 1.1rem 1.15rem;border-top:1px solid rgba(95,122,102,.13)}.update-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.update-upload-grid .form-group{margin:0}.update-upload-security{display:grid;gap:.25rem;padding:.85rem 1rem;border-radius:14px;background:#eef4ef;color:#45604d;font-size:.8rem;line-height:1.5}.update-upload-card>form>.btn{justify-self:start;text-align:center}
@media(max-width:640px){.update-upload-grid{grid-template-columns:1fr}.update-upload-card>form>.btn{width:100%;justify-content:center}.update-upload-card>summary{align-items:flex-start}}

/* Mobile CMS toolbar: keep navigation and account access in the viewport while the document scrolls. */
@media(max-width:900px){
  .cms-modern #admin-view.active{--admin-mobile-topbar-height:calc(64px + env(safe-area-inset-top))}
  .cms-modern #admin-view .admin-main{padding-top:calc(var(--admin-mobile-topbar-height) + 1rem)}
  .cms-modern #admin-view .admin-topbar{position:fixed;z-index:60;inset:0 0 auto 0;box-sizing:border-box;width:100%;min-height:var(--admin-mobile-topbar-height);margin:0;padding:calc(.7rem + env(safe-area-inset-top)) .75rem .7rem 3.75rem;background:rgba(244,245,247,.97);box-shadow:0 8px 24px rgba(35,29,24,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  .cms-modern #admin-view .admin-sidebar-toggle{top:calc(.7rem + env(safe-area-inset-top));z-index:100}
  .cms-modern #admin-view .admin-user-menu-panel{top:calc(var(--admin-mobile-topbar-height) + .4rem);z-index:70}
  .cms-modern #admin-view :is(.admin-panel-anchor,#passkeys){scroll-margin-top:calc(var(--admin-mobile-topbar-height) + 1rem)}
}
/* CMS backup and restore */
.backup-admin-page{display:grid;gap:22px}.backup-admin-head,.backup-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.backup-admin-head p,.backup-panel-head p{margin:6px 0 0;color:var(--admin-muted,#735b48);max-width:850px}.backup-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.backup-status-grid article{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid #dce6df;border-radius:18px;background:#f7faf7}.backup-status-grid span,.backup-status-grid small{color:#735b48}.backup-status-grid strong{font-size:1.02rem;color:#263c30}.backup-status-grid small{font-size:.78rem;line-height:1.45}.backup-fingerprint{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88rem!important;overflow-wrap:anywhere}.backup-panel{padding:22px;border:1px solid #dce3de;border-radius:22px;background:#fff}.backup-panel-head{padding-bottom:16px}.backup-panel-head>span{white-space:nowrap}.backup-list{display:grid;gap:10px}.backup-item{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:18px;padding:16px;border:1px solid #e6e8e2;border-radius:16px;background:#faf9f6}.backup-item>div:first-child{display:grid;gap:4px;min-width:0}.backup-item code{font-size:.74rem;color:#6e746e;overflow-wrap:anywhere}.backup-item-state{display:grid;gap:5px;justify-items:start}.backup-error{max-width:260px;color:#ad3f37}.backup-item-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.backup-item-actions form{margin:0}.backup-two-column{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}.backup-settings-form,.backup-key-form,.backup-restore-form{display:grid;gap:16px}.backup-fields-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}.backup-field-wide{grid-column:1/-1}.backup-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #dce6df;border-radius:15px;background:#f7faf7}.backup-toggle-row label,.backup-toggle-row>span{display:grid;gap:3px}.backup-toggle-row small{color:#735b48;line-height:1.4}.backup-test-form{margin-top:12px}.backup-warning{padding:15px;border-radius:15px;background:#fff7d9;border:1px solid #eadc9a}.backup-warning p{margin:5px 0 0;line-height:1.5}.backup-restore-panel{border-color:#ecc9c5}.backup-restore-source{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.backup-restore-confirm{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:14px}.backup-restore-confirm .btn{min-height:46px}.backup-admin-page .btn-danger{background:#b94a42;color:#fff;border-color:#b94a42}.backup-admin-page .btn-danger:hover{background:#993d37}
@media(max-width:1050px){.backup-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-two-column{grid-template-columns:1fr}.backup-item{grid-template-columns:1fr auto}.backup-item-actions{grid-column:1/-1;justify-content:flex-start}.backup-restore-source{grid-template-columns:1fr}.backup-restore-confirm{grid-template-columns:1fr 1fr}.backup-restore-confirm .btn{grid-column:1/-1;justify-self:start}}
@media(max-width:640px){.backup-admin-head,.backup-panel-head{flex-direction:column}.backup-status-grid{grid-template-columns:1fr}.backup-panel{padding:16px}.backup-item{grid-template-columns:1fr}.backup-item-actions{display:grid;grid-template-columns:1fr}.backup-item-actions .btn,.backup-item-actions form{width:100%}.backup-fields-grid,.backup-restore-confirm{grid-template-columns:1fr}.backup-toggle-row{align-items:flex-start}.backup-restore-confirm .btn{width:100%}}

/* Unified, compact CMS page heads and account actions. */
.mail-settings-intro{padding:1.15rem 1.3rem;border-radius:20px}
.mail-settings-intro .settings-page-heading{font-size:1.08rem;font-weight:650}
.admin-user-menu-panel{min-width:285px}
.admin-user-menu-actions{justify-content:stretch;flex-wrap:nowrap}
.admin-user-menu-actions>.btn,.admin-user-menu-actions>.admin-topbar-logout{flex:1 1 0;min-width:0}
.admin-user-menu-actions .btn,.admin-user-menu-actions .admin-logout-btn{width:100%;white-space:nowrap;padding-left:.75rem;padding-right:.75rem}
.admin-user-menu-actions [data-profile-modal-open]{justify-content:center;text-align:center}

/* Contact settings follow the same visual hierarchy as pricing and mail. */
.contact-settings-intro{align-items:center;padding:1.15rem 1.3rem;border:1px solid rgba(132,92,47,.13);border-radius:20px;background:linear-gradient(135deg,#f7f2e9,#fff)}
.contact-settings-summary{display:grid!important;place-items:center;gap:.18rem!important;flex:0 0 auto;min-width:140px;padding:.72rem .9rem;border:1px solid rgba(95,122,102,.18);border-radius:15px;background:#fff;color:var(--ocean)}
.contact-settings-summary strong{font-size:1.25rem;line-height:1}
.contact-settings-summary span{color:var(--text-muted);font-size:.7rem;white-space:nowrap}
.contact-settings-layout{align-items:start}
.contact-settings-card-channels,.contact-settings-card-address{grid-column:1/-1}
.contact-settings-card-channels .contact-channel-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.contact-settings-card-channels .contact-channel-card{align-content:start}
.contact-settings-card-channels .contact-channel-fields{grid-template-columns:1fr}
.contact-settings-card-channels .contact-channel-card:first-child .contact-channel-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.backup-access-notice{max-width:760px}
.backup-access-notice .admin-section-title{margin-bottom:.65rem}
.backup-access-notice p{margin:0;color:var(--text-muted);line-height:1.65}

/* Keep the desktop control attached to the menu edge. When collapsed, reserve a
   narrow rail so the control can never cover form fields or content cards. */
@media(min-width:1181px){
  #admin-view .admin-sidebar-toggle{left:260px;width:30px;height:40px;border:1px solid rgba(255,255,255,.16);border-left:0;border-radius:0 10px 10px 0;background:var(--stone-dark);color:#fff;transform:translateY(-50%);box-shadow:6px 8px 20px rgba(35,29,24,.16)}
  #admin-view .admin-sidebar-toggle:hover{background:var(--stone-dark);color:#fff;box-shadow:6px 9px 22px rgba(35,29,24,.2)}
  #admin-view.is-sidebar-collapsed .admin-sidebar-toggle{left:.75rem;width:36px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:var(--stone-dark);transform:translateY(-50%);box-shadow:0 8px 20px rgba(35,29,24,.16)}
  #admin-view.is-sidebar-collapsed .admin-main{padding-left:4.5rem}
  #admin-view.is-sidebar-collapsed .admin-topbar{margin-left:-4.5rem;padding-left:4.5rem}
}
@media(min-width:901px) and (max-width:1180px){
  #admin-view .admin-sidebar-toggle{left:220px;width:30px;height:40px;border:1px solid rgba(255,255,255,.16);border-left:0;border-radius:0 10px 10px 0;background:var(--stone-dark);color:#fff;transform:translateY(-50%);box-shadow:6px 8px 20px rgba(35,29,24,.16)}
  #admin-view .admin-sidebar-toggle:hover{background:var(--stone-dark);color:#fff;box-shadow:6px 9px 22px rgba(35,29,24,.2)}
  #admin-view.is-sidebar-collapsed .admin-sidebar-toggle{left:.75rem;width:36px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:var(--stone-dark);transform:translateY(-50%);box-shadow:0 8px 20px rgba(35,29,24,.16)}
  #admin-view.is-sidebar-collapsed .admin-main{padding-left:4.5rem}
  #admin-view.is-sidebar-collapsed .admin-topbar{margin-left:-4.5rem;padding-left:4.5rem}
}
@media(max-width:1120px){
  .contact-settings-card-channels,.contact-settings-card-address{grid-column:auto}
  .contact-settings-card-channels .contact-channel-list{grid-template-columns:1fr}
  .contact-settings-card-channels .contact-channel-fields{grid-template-columns:minmax(0,1fr) minmax(180px,.5fr)}
  .contact-settings-card-channels .contact-channel-card:first-child .contact-channel-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .cms-modern #admin-view.is-mobile-nav-open .admin-sidebar-toggle{opacity:0;visibility:hidden;pointer-events:none}
}
@media(max-width:700px){
  .contact-settings-summary{width:100%;box-sizing:border-box}
  .contact-settings-card-channels .contact-channel-fields,.contact-settings-card-channels .contact-channel-card:first-child .contact-channel-fields{grid-template-columns:1fr}
}

/* Keep the iPhone navigation highlight aligned with the complete text row. */
@media(max-width:900px){
  .admin-nav-item,.admin-nav-subitem,.admin-nav-toggle{-webkit-tap-highlight-color:transparent}
  .admin-nav-entry-main{min-height:48px;align-items:center}
  .admin-nav-entry-main .admin-nav-item{align-self:stretch;min-height:44px;padding:.55rem .8rem;line-height:1.35}
  .admin-nav-subitem,.admin-nav-subitem-mobile-hidden,.admin-nav-subitem-mobile-rental-visible{display:flex;align-items:center;min-height:42px;padding:.55rem .8rem;line-height:1.35}
  .admin-nav-subitem:active{background:rgba(255,255,255,.08);color:var(--white)}
}

/* Restore controls share the same label and control baseline. */
.backup-restore-confirm{align-items:start}
.backup-restore-submit{min-width:230px}
.backup-restore-submit .btn{width:100%;justify-content:center}
.backup-action-spacer{display:block}
.backup-restore-source{grid-template-columns:repeat(2,minmax(0,1fr))}
.backup-selected-local{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #c9ddcf;border-radius:14px;background:#f1f7f2;color:#34523d}
.backup-selected-local[hidden]{display:none}
.backup-selected-local span{min-width:0;overflow-wrap:anywhere;color:#735b48}
.backup-selected-local .btn{margin-left:auto;flex:0 0 auto}
.backup-item[hidden]{display:none}
.backup-list-more{display:flex;justify-content:center;padding-top:14px}
@media(max-width:1050px){.backup-restore-source{grid-template-columns:1fr}.backup-restore-submit{min-width:0;grid-column:1/-1;justify-self:start}.backup-restore-submit .btn{width:auto}}
@media(max-width:640px){.backup-restore-submit{width:100%}.backup-restore-submit .btn{width:100%}.backup-selected-local{align-items:flex-start;flex-direction:column}.backup-selected-local .btn{margin-left:0;width:100%}}
.backup-overview-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid #e4e9e5}.backup-overview-actions>span{color:var(--admin-muted,#735b48);font-size:.82rem;line-height:1.5}.backup-overview-actions .btn{flex:0 0 auto}body.backup-list-modal-open{overflow:hidden}body.backup-list-modal-open .admin-sidebar-toggle{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.backup-list-modal{z-index:3100}.backup-list-modal-card{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1120px,calc(100vw - 2rem));max-height:88dvh!important;padding:0!important;overflow:hidden!important}.backup-list-modal-card .backup-list-modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:0;margin:0;padding:1rem 1.15rem!important;border-bottom:1px solid #dfe6e2;background:#f5f8f5}.backup-list-modal-head>div{display:grid;gap:.2rem;min-width:0}.backup-list-modal-head small{color:var(--admin-muted,#735b48);font-size:.75rem;font-weight:500}.backup-list-modal-card .backup-list-modal-head .lightbox-close{position:static!important;inset:auto!important;display:grid;place-items:center;box-sizing:border-box;flex:0 0 42px;width:42px;min-width:42px;height:42px;min-height:42px;margin-left:auto;padding:0!important;border-radius:13px;background:#fff0ef;line-height:1}.backup-list-modal-head .lightbox-close svg{display:block;width:18px;height:18px;margin:auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.backup-list-modal-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:1rem;scrollbar-gutter:stable}@media(max-width:640px){.backup-overview-actions{align-items:stretch;flex-direction:column}.backup-overview-actions .btn{width:100%}.backup-list-modal{padding:.6rem}.backup-list-modal-card{width:100%;max-height:calc(100dvh - 1.2rem)!important}.backup-list-modal-card .backup-list-modal-head{padding:.85rem!important}.backup-list-modal-body{padding:.75rem}}

/* Calendar workspace: distinct import, status, export and imported-period tasks. */
.calendar-sync-result{grid-template-columns:minmax(0,1fr) minmax(240px,auto);align-items:center;gap:.5rem 1.5rem;padding:1rem 1.1rem;background:#f7faf7}.calendar-sync-result>div{display:grid;gap:.22rem}.calendar-sync-result>span{text-align:right}.calendar-imported-periods-launcher{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid rgba(95,122,102,.18);border-radius:16px;background:#fafbf9}.calendar-imported-periods-launcher>div{display:grid;gap:.2rem}.calendar-imported-periods-launcher strong{font-size:.92rem}.calendar-imported-periods-launcher small{color:var(--text-muted);font-size:.78rem}.calendar-export-section{display:grid;gap:1rem}.calendar-export-head p{max-width:920px;margin:.35rem 0 0;color:var(--text-muted);font-size:.86rem;line-height:1.55}.calendar-export-section .calendar-export-copy-row{padding:1rem;border:1px solid rgba(95,122,102,.18);border-radius:16px;background:#f7faf7}.calendar-export-section .calendar-export-direction-note{border:1px solid rgba(95,122,102,.14);background:#fafbf9}
body.external-calendar-blocks-modal-open{overflow:hidden}body.external-calendar-blocks-modal-open .admin-sidebar-toggle{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.external-calendar-blocks-modal{z-index:3200}.external-calendar-blocks-modal.is-open{display:flex}.external-calendar-blocks-modal-card{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(880px,calc(100vw - 2rem));max-height:88dvh!important;padding:0!important;overflow:hidden!important}.external-calendar-blocks-modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid #dfe6e2;background:#f5f8f5}.external-calendar-blocks-modal-head>div:first-child{display:grid;gap:.2rem;min-width:0}.external-calendar-blocks-modal-head .admin-section-title{display:block;min-height:0;margin:0;padding:0}.external-calendar-blocks-modal-head p{margin:0;color:var(--text-muted);font-size:.78rem;line-height:1.45}.external-calendar-blocks-modal-actions{display:flex;align-items:center;gap:.7rem;flex:0 0 auto}.external-calendar-blocks-modal-actions>span{padding:.38rem .65rem;border-radius:999px;background:#e6f1e8;color:#3f664a;font-size:.72rem;font-weight:750;white-space:nowrap}.external-calendar-blocks-close{display:grid;place-items:center;box-sizing:border-box;width:42px;min-width:42px;height:42px;min-height:42px;margin:0;padding:0;border:1px solid #f2c9c4;border-radius:13px;background:#fff0ef;color:#c83f35;box-shadow:0 8px 18px rgba(164,55,45,.12);cursor:pointer}.external-calendar-blocks-close:hover{background:#fde0dd;color:#a92f27;border-color:#e8aba3}.external-calendar-blocks-close:focus-visible{outline:3px solid rgba(200,63,53,.22);outline-offset:2px}.external-calendar-blocks-close svg{display:block;width:18px;height:18px;margin:auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.external-calendar-blocks-modal-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:1rem;scrollbar-gutter:stable}
@media(max-width:700px){.calendar-sync-result{grid-template-columns:1fr}.calendar-sync-result>span{text-align:left}.calendar-imported-periods-launcher{align-items:stretch;flex-direction:column}.calendar-imported-periods-launcher .btn{width:100%}.calendar-export-section .calendar-export-copy-row{padding:.85rem}.external-calendar-blocks-modal{padding:.6rem}.external-calendar-blocks-modal-card{width:100%;max-height:calc(100dvh - 1.2rem)!important}.external-calendar-blocks-modal-head{align-items:flex-start;padding:.85rem}.external-calendar-blocks-modal-head p{max-width:30rem}.external-calendar-blocks-modal-actions>span{display:none}.external-calendar-blocks-modal-body{padding:.75rem}}

.dashboard-external-calendar-panel{gap:.85rem}.dashboard-external-calendar-title{display:flex;align-items:center;gap:.7rem}.dashboard-external-calendar-list{display:grid;gap:.65rem}.dashboard-external-calendar-item{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.85rem .95rem;border:1px solid rgba(95,122,102,.13);border-radius:15px;background:#fbfaf7;color:var(--text);text-decoration:none;transition:var(--transition)}.dashboard-external-calendar-item:hover,.dashboard-external-calendar-item:focus-visible{transform:translateY(-1px);border-color:rgba(95,122,102,.28);background:#fff;box-shadow:0 9px 20px rgba(45,35,24,.06);outline:none}.dashboard-external-calendar-period{display:grid;gap:.16rem;min-width:0}.dashboard-external-calendar-period strong{font-size:.9rem}.dashboard-external-calendar-period small{color:var(--text-muted);font-size:.75rem}.dashboard-external-calendar-state{padding:.35rem .6rem;border-radius:999px;background:#f1efe9;color:var(--text-muted);font-size:.7rem;font-weight:750;white-space:nowrap}.dashboard-external-calendar-state.is-current{background:#e6f1e8;color:#3f664a}.dashboard-external-calendar-more{padding:.2rem .2rem 0;color:var(--text-muted);font-size:.76rem;line-height:1.5}@media(max-width:640px){.dashboard-external-calendar-panel .admin-section-title{align-items:flex-start;flex-direction:column}.dashboard-external-calendar-panel .dashboard-widget-head-actions{width:100%;margin-left:0}.dashboard-external-calendar-panel .dashboard-widget-head-actions .action-btn{flex:1;text-align:center}.dashboard-external-calendar-item{grid-template-columns:1fr auto}.dashboard-external-calendar-item .external-calendar-provider{grid-column:1;justify-self:start}.dashboard-external-calendar-period{grid-column:1}.dashboard-external-calendar-state{grid-column:2;grid-row:1/3;align-self:center}}

.calendar-admin-page{display:grid;gap:1.2rem}.calendar-planner-section{display:grid;gap:1.15rem;overflow:hidden}.calendar-planner-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem}.calendar-planner-head .admin-section-title{margin:.18rem 0 .35rem}.calendar-planner-head p{max-width:760px;margin:0;color:var(--text-muted);font-size:.86rem;line-height:1.55}.calendar-planner-navigation{display:grid;grid-template-columns:42px minmax(150px,auto) 42px;align-items:center;gap:.55rem}.calendar-planner-navigation button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(95,122,102,.2);border-radius:50%;background:#fff;color:var(--ocean);box-shadow:0 7px 18px rgba(45,35,24,.06)}.calendar-planner-navigation button:hover{background:#eef4ef}.calendar-planner-navigation button svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.calendar-planner-navigation strong{text-align:center;font-size:.8rem;text-transform:capitalize;color:var(--text)}.calendar-planner-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.calendar-planner-month{display:grid;gap:.65rem;min-width:0;padding:1rem;border:1px solid rgba(95,122,102,.14);border-radius:18px;background:#fbfcfa}.calendar-planner-month h3{margin:0;text-align:center;font-size:1rem;text-transform:capitalize}.calendar-planner-weekdays,.calendar-planner-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}.calendar-planner-weekdays span{text-align:center;color:var(--text-muted);font-size:.66rem;font-weight:750;text-transform:uppercase}.calendar-planner-day{position:relative;display:grid;place-items:center;aspect-ratio:1;min-width:0;padding:0;border:1px solid rgba(95,122,102,.09);border-radius:11px;background:#f2f7f3;color:var(--ocean);font-size:.78rem;line-height:1;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.calendar-planner-day:not(:disabled):hover{transform:translateY(-1px);border-color:rgba(95,122,102,.32);box-shadow:0 6px 14px rgba(45,35,24,.08)}.calendar-planner-day.is-empty{border:0;background:transparent}.calendar-planner-day.is-past{opacity:.38}.calendar-planner-day.is-occupied{color:#fff;border-color:transparent}.calendar-planner-day.is-cms{background:#5f7a66}.calendar-planner-day.is-manual{background:#bd895f}.calendar-planner-day.is-airbnb{background:#d96472}.calendar-planner-day.is-booking{background:#2266a5}.calendar-planner-day.is-changeover{border-color:#9ab09f;background:repeating-linear-gradient(135deg,#e3eee5 0,#e3eee5 5px,#f4f8f4 5px,#f4f8f4 10px);color:#486250}.calendar-planner-day.is-selected{box-shadow:0 0 0 3px rgba(200,139,90,.28);border-color:#c88b5a;background:#f4dfc9;color:#5a3920}.calendar-planner-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.1rem}.calendar-planner-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem 1rem}.calendar-planner-legend span{display:inline-flex;align-items:center;gap:.38rem;color:var(--text-muted);font-size:.72rem}.calendar-planner-legend i{width:10px;height:10px;border-radius:3px}.calendar-planner-legend .is-cms{background:#5f7a66}.calendar-planner-legend .is-manual{background:#bd895f}.calendar-planner-legend .is-airbnb{background:#d96472}.calendar-planner-legend .is-booking{background:#2266a5}.calendar-planner-legend .is-changeover{border:1px solid #9ab09f;background:repeating-linear-gradient(135deg,#e3eee5 0,#e3eee5 3px,#f4f8f4 3px,#f4f8f4 6px)}.calendar-planner-selection-status{color:var(--text-muted);font-size:.74rem;text-align:right}.calendar-provider-heading{display:flex!important;align-items:center;gap:.7rem}.calendar-provider-heading>span:last-child{display:grid;gap:.2rem}.calendar-provider-logo{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;font-size:.76rem;font-weight:850;letter-spacing:-.04em}.calendar-provider-logo.is-airbnb{background:#ffebeE;color:#d64b5b}.calendar-provider-logo.is-booking{background:#e6f0fb;color:#15599a}.external-calendar-provider{align-items:center;gap:.4rem}.external-calendar-provider .calendar-provider-logo{width:22px;height:22px;flex-basis:22px;border-radius:7px;font-size:.58rem}
@media(max-width:760px){.calendar-planner-head{align-items:stretch;flex-direction:column}.calendar-planner-navigation{grid-template-columns:42px minmax(0,1fr) 42px}.calendar-planner-months{grid-template-columns:1fr}.calendar-planner-month.is-following{display:none}.calendar-planner-footer{align-items:flex-start;flex-direction:column}.calendar-planner-selection-status{text-align:left}.calendar-admin-page :is(.btn,.action-btn){display:inline-flex;width:auto!important;max-width:100%;min-height:42px;align-items:center;justify-content:center;padding:.65rem .9rem;text-align:center;line-height:1.25}.calendar-admin-page :is(.calendar-sync-now-form,.calendar-sync-toolbar form){width:auto}.calendar-sync-toolbar{align-items:flex-start}.calendar-imported-periods-launcher{align-items:flex-start}.calendar-export-copy-row .btn{justify-self:start}.calendar-admin-page .table .action-btn{min-height:36px;padding:.5rem .75rem}}
@media(max-width:420px){.calendar-planner-month{padding:.75rem}.calendar-planner-weekdays,.calendar-planner-grid{gap:.25rem}.calendar-planner-day{border-radius:9px;font-size:.72rem}.calendar-provider-heading{align-items:flex-start}.calendar-sync-toggle-card{gap:.65rem}}

/* Compact calendar editing replaces the former full-width manual-block form. */
.calendar-planner-section{gap:.85rem;padding:1rem 1.1rem}.calendar-planner-months{gap:.75rem}.calendar-planner-month{gap:.45rem;padding:.75rem}.calendar-planner-day{height:38px;aspect-ratio:auto;border-radius:9px}.calendar-planner-block-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:.75rem;padding:.8rem;border:1px solid rgba(95,122,102,.16);border-radius:14px;background:#f7faf7}.calendar-planner-note{display:grid;gap:.35rem;min-width:0}.calendar-planner-note .form-label{margin:0}.calendar-planner-note .form-input{min-height:42px}.calendar-planner-block-actions{display:flex;align-items:center;gap:.55rem}.calendar-planner-block-actions .btn{min-height:42px;white-space:nowrap}.calendar-planner-block-actions .btn:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:760px){.calendar-planner-section{padding:.85rem}.calendar-planner-day{height:36px}.calendar-planner-block-form{grid-template-columns:1fr}.calendar-planner-block-actions{flex-wrap:wrap}.calendar-planner-block-actions .btn{flex:0 1 auto}}
@media(max-width:420px){.calendar-planner-section{padding:.75rem}.calendar-planner-day{height:34px}.calendar-planner-block-actions{display:flex}.calendar-planner-block-actions .btn{width:auto!important;white-space:normal}}

.calendar-planner-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.calendar-planner-footer-actions .btn{min-height:36px;padding:.5rem .75rem}.manual-calendar-block-card>form{margin:0;justify-self:end}.manual-calendar-block-card .external-calendar-provider.is-manual{background:#f2e8dc;color:#805a38}
@media(max-width:760px){.calendar-planner-footer-actions{align-items:flex-start;flex-direction:column}.manual-calendar-block-card>form{justify-self:start}}

/* One visual language for CMS feature, connection and availability states. */
.system-state-pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.28rem!important;width:auto!important;min-width:0!important;min-height:24px!important;height:auto!important;padding:.25rem .55rem!important;border:0!important;border-radius:999px!important;background:#f1efeb!important;color:#6d706d!important;font-family:'Jost',sans-serif!important;font-size:.68rem!important;font-style:normal!important;font-weight:700!important;line-height:1.15!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important;box-shadow:none!important}
.system-state-pill::before{content:""!important;display:block!important;flex:0 0 6px!important;width:6px!important;height:6px!important;border-radius:50%!important;background:#9da19e!important;box-shadow:none!important}
.system-state-pill.is-active,.system-state-pill.is-online,.system-state-pill.is-ready{background:#e9f3eb!important;color:#3f664a!important}
.system-state-pill.is-active::before,.system-state-pill.is-online::before,.system-state-pill.is-ready::before{background:#4f8a61!important}
.system-state-pill.is-warning{background:#fff3d8!important;color:#86601c!important}.system-state-pill.is-warning::before{background:#c38b28!important}
.system-state-pill.is-error,.system-state-pill.is-offline,.system-state-pill.is-restricted{background:#fde8e5!important;color:#9a3e34!important}.system-state-pill.is-error::before,.system-state-pill.is-offline::before,.system-state-pill.is-restricted::before{background:#c85147!important}
.update-endpoint-static.system-state-pill{justify-self:start!important}.update-endpoint-static.system-state-pill strong{color:inherit!important;font:inherit!important}.license-status-grid .system-state-pill{justify-self:start}.mail-settings-status-copy{display:grid;justify-items:end;gap:.3rem;flex:0 0 auto}.mail-settings-status-copy small{max-width:260px;color:var(--text-muted);font-size:.72rem;line-height:1.4;text-align:right}
@media(max-width:700px){.mail-settings-status-copy{justify-items:start}.mail-settings-status-copy small{text-align:left}.system-state-pill{max-width:100%;white-space:normal!important;text-align:center!important}}

/* Calendar overview controls and unified block pagination. */
.calendar-planner-head-actions{display:grid;justify-items:end;gap:.65rem}.calendar-block-pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(95,122,102,.16)}.calendar-block-pagination[hidden]{display:none!important}.calendar-block-pagination>span{min-width:7rem;color:var(--text-muted);font-size:.76rem;font-weight:700;text-align:center}.calendar-block-pagination .btn{min-width:6.5rem;text-align:center}.external-calendar-block-card[hidden]{display:none!important}
@media(max-width:760px){.calendar-planner-head-actions{justify-items:stretch}.calendar-planner-head-actions>[data-calendar-blocks-open]{justify-self:start}.calendar-block-pagination{gap:.5rem}.calendar-block-pagination .btn{min-width:0;padding:.6rem .75rem}.calendar-block-pagination>span{min-width:0;flex:1}}

/* Interactive annual season calendar and compact price-period list. */
.pricing-season-calendar{display:grid;gap:1rem;margin:1rem 0 1.1rem;padding:1rem;border:1px solid rgba(95,122,102,.16);border-radius:18px;background:#fbfcfa}.pricing-season-calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.pricing-season-calendar-head>div:first-child{display:grid;gap:.22rem}.pricing-season-calendar-head strong{font-size:1rem}.pricing-season-calendar-head span{color:var(--text-muted);font-size:.78rem;line-height:1.45}.pricing-season-calendar-navigation{display:grid;grid-template-columns:42px minmax(135px,auto) 42px;align-items:center;gap:.5rem}.pricing-season-calendar-navigation button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(95,122,102,.2);border-radius:50%;background:#fff;color:var(--ocean);box-shadow:0 7px 18px rgba(45,35,24,.06)}.pricing-season-calendar-navigation button:hover{background:#eef4ef}.pricing-season-calendar-navigation svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pricing-season-calendar-navigation b{text-align:center;font-size:.78rem}.pricing-season-calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.pricing-season-calendar-month{display:grid;gap:.6rem;min-width:0;padding:.9rem;border:1px solid rgba(95,122,102,.12);border-radius:15px;background:#fff}.pricing-season-calendar-month h4{margin:0;text-align:center;font-size:.94rem}.pricing-season-calendar-weekdays,.pricing-season-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem}.pricing-season-calendar-weekdays span{text-align:center;color:var(--text-muted);font-size:.62rem;font-weight:750;text-transform:uppercase}.pricing-season-calendar-day{display:grid;place-items:center;aspect-ratio:1;min-width:0;padding:0;border:1px solid rgba(95,122,102,.08);border-radius:9px;background:#f3f7f3;color:var(--ocean);font:600 .72rem/1 'Jost',sans-serif;cursor:pointer}.pricing-season-calendar-day.is-empty{border:0;background:transparent;pointer-events:none}.pricing-season-calendar-day.is-season{color:#34493a}.pricing-season-calendar-day.is-season-0,.pricing-season-calendar-legend .is-season-0 i{background:#dfeee3}.pricing-season-calendar-day.is-season-1,.pricing-season-calendar-legend .is-season-1 i{background:#f1dfcc}.pricing-season-calendar-day.is-season-2,.pricing-season-calendar-legend .is-season-2 i{background:#dce8f2}.pricing-season-calendar-day.is-season-3,.pricing-season-calendar-legend .is-season-3 i{background:#eee1ee}.pricing-season-calendar-day.is-season-4,.pricing-season-calendar-legend .is-season-4 i{background:#f1e8bd}.pricing-season-calendar-day.is-season-5,.pricing-season-calendar-legend .is-season-5 i{background:#dceeed}.pricing-season-calendar-day.is-active-season{box-shadow:inset 0 0 0 2px var(--ocean)}.pricing-season-calendar-day.is-selection-start{background:var(--ocean)!important;color:#fff!important;box-shadow:0 0 0 3px rgba(95,122,102,.2)}.pricing-season-calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pricing-season-calendar-footer>span{color:var(--text-muted);font-size:.74rem;text-align:right}.pricing-season-calendar-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.pricing-season-calendar-legend button{display:inline-flex;align-items:center;gap:.35rem;min-height:30px;padding:.3rem .55rem;border:1px solid transparent;border-radius:999px;background:#fff;color:var(--text-muted);font-size:.7rem;cursor:pointer}.pricing-season-calendar-legend button.is-active{border-color:rgba(95,122,102,.35);color:var(--ocean)}.pricing-season-calendar-legend i{width:9px;height:9px;border-radius:3px}.pricing-season-calendar-edit{min-height:34px;padding:.42rem .65rem;border:1px solid rgba(95,122,102,.2);border-radius:10px;background:#f3f7f3;color:var(--ocean);font-size:.7rem;font-weight:700;cursor:pointer}
.pricing-seasons-card .pricing-season-grid{display:grid;grid-template-columns:1fr;gap:0;overflow:hidden;border:1px solid rgba(95,122,102,.15);border-radius:16px;background:#fff}.pricing-seasons-card .pricing-season-item{grid-template-columns:minmax(240px,1.2fr) minmax(140px,.6fr) minmax(140px,.6fr) minmax(280px,1fr);align-items:end;gap:.8rem;padding:.9rem 3.7rem .9rem .9rem;border:0;border-bottom:1px solid rgba(95,122,102,.12);border-radius:0;background:#fff;box-shadow:none}.pricing-seasons-card .pricing-season-item:last-child{border-bottom:0}.pricing-seasons-card .pricing-season-item.is-calendar-active{background:#f7faf7;box-shadow:inset 4px 0 0 var(--ocean)}.pricing-seasons-card .pricing-season-item-head{grid-column:auto;align-items:flex-end;padding:0;border:0}.pricing-seasons-card .pricing-season-item>.season-date-editor{grid-column:auto;padding:0}.pricing-seasons-card .pricing-season-item .season-month-editor{grid-column:1/-1}.pricing-seasons-card .pricing-season-remove{top:.8rem;right:.8rem;bottom:auto;transform:none}.pricing-seasons-card .pricing-season-remove:active{transform:scale(.96)}
@media(max-width:1100px){.pricing-seasons-card .pricing-season-item{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-seasons-card .pricing-season-item-head,.pricing-seasons-card .pricing-season-item>.season-date-editor{grid-column:1/-1}}
@media(max-width:700px){.pricing-season-calendar-head,.pricing-season-calendar-footer{align-items:stretch;flex-direction:column}.pricing-season-calendar-navigation{grid-template-columns:42px minmax(0,1fr) 42px}.pricing-season-calendar-months{grid-template-columns:1fr}.pricing-season-calendar-month.is-following{display:none}.pricing-season-calendar-footer>span{text-align:left}.pricing-seasons-card .pricing-season-item{grid-template-columns:1fr;padding:1rem}.pricing-seasons-card .pricing-season-item-head,.pricing-seasons-card .pricing-season-item>.season-date-editor{grid-column:auto}.pricing-seasons-card .pricing-season-item-head{padding-right:3rem}.pricing-seasons-card .pricing-season-item-head .pricing-season-item-actions{align-items:stretch;flex-direction:column}.pricing-season-calendar-edit{width:100%;text-align:center}.pricing-seasons-card .pricing-season-remove{top:1rem;right:1rem;bottom:auto;transform:none}.pricing-seasons-card .pricing-season-remove:active{transform:scale(.96)}}

/* Compact season editor: calendar proportions mirror the availability calendar; only one period is edited at once. */
.pricing-season-calendar{gap:.8rem;padding:.85rem}.pricing-season-calendar-month{gap:.45rem;padding:.75rem}.pricing-season-calendar-weekdays,.pricing-season-calendar-grid{gap:.25rem}.pricing-season-calendar-day{width:100%;height:38px;aspect-ratio:auto;border-radius:9px}.pricing-season-selector{display:flex;align-items:stretch;gap:.55rem;margin:0 0 .65rem;padding:.15rem 0 .55rem;overflow-x:auto;scrollbar-width:thin;scrollbar-gutter:stable}.pricing-season-selector-item{display:flex;align-items:center;gap:.55rem;flex:0 0 auto;min-width:170px;max-width:240px;padding:.6rem .7rem;border:1px solid rgba(95,122,102,.14);border-radius:12px;background:#fff;color:var(--text);text-align:left;cursor:pointer}.pricing-season-selector-item.is-active{border-color:var(--ocean);background:#f3f8f4;box-shadow:0 0 0 2px rgba(95,122,102,.1)}.pricing-season-selector-item>i{flex:0 0 10px;width:10px;height:10px;border-radius:3px}.pricing-season-selector-item.is-season-0>i{background:#bad7c2}.pricing-season-selector-item.is-season-1>i{background:#ddbc98}.pricing-season-selector-item.is-season-2>i{background:#aecbe1}.pricing-season-selector-item.is-season-3>i{background:#d5b8d5}.pricing-season-selector-item.is-season-4>i{background:#ddce83}.pricing-season-selector-item.is-season-5>i{background:#a9d5d1}.pricing-season-selector-item>span{display:grid;gap:.08rem;min-width:0}.pricing-season-selector-item strong,.pricing-season-selector-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pricing-season-selector-item strong{font-size:.78rem}.pricing-season-selector-item small{color:var(--text-muted);font-size:.68rem}.pricing-seasons-card .pricing-season-item[hidden]{display:none!important}.pricing-seasons-card .pricing-season-grid{overflow:visible}.pricing-seasons-card .pricing-season-item{border:1px solid rgba(95,122,102,.15);border-radius:14px}.pricing-seasons-card .pricing-season-item:last-child{border-bottom:1px solid rgba(95,122,102,.15)}
@media(max-width:700px){.pricing-season-calendar{padding:.7rem}.pricing-season-calendar-day{height:36px}.pricing-season-selector-item{min-width:150px}.dashboard-external-calendar-panel .admin-section-title{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center!important;gap:.6rem!important}.dashboard-external-calendar-panel .dashboard-external-calendar-title{min-width:0}.dashboard-external-calendar-panel .dashboard-widget-head-actions{width:auto!important;margin-left:0!important;justify-content:flex-end}.dashboard-external-calendar-panel .dashboard-widget-head-actions .action-btn{flex:0 0 auto!important;padding:.5rem .65rem!important;text-align:center}.dashboard-external-calendar-panel .dashboard-drag-handle{display:none!important}}
@media(max-width:420px){.pricing-season-calendar-day{height:34px}}

/* Keep the selected price period subtle and evenly outlined. */
.pricing-seasons-card .pricing-season-item.is-calendar-active{border-color:rgba(95,122,102,.34);background:#f7faf7;box-shadow:none}

/* Cards use even outlines; no thick one-sided status bars. */
.account-booking-card.is-cancelled::before,
.customer-overview-card::before{display:none}
.account-booking-card.is-cancelled .account-booking-summary{padding-left:1.2rem}
.customer-overview-card-arrival{border-color:rgba(44,123,229,.24)}
.customer-overview-card-active{border-color:rgba(79,139,95,.28)}
.customer-overview-card-pending{border-color:rgba(211,160,98,.3)}
.customer-overview-card-cancelled{border-color:rgba(188,127,122,.3)}
.cancellation-card{border:1px solid rgba(200,134,82,.34)}

/* Seasonal dates are edited directly in the calendar; selects remain only as submitted form values. */
.pricing-season-calendar{scroll-margin-top:6rem}
.pricing-seasons-card .pricing-season-item{grid-template-columns:minmax(240px,1.2fr) minmax(140px,.6fr) minmax(140px,.6fr)}
.pricing-seasons-card .season-date-editor{display:none!important}
@media(max-width:1100px){.pricing-seasons-card .pricing-season-item{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.pricing-seasons-card .pricing-season-item{grid-template-columns:1fr}}

.pricing-season-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.pricing-season-actions .pricing-season-add{margin:0}.pricing-season-autosave-note{color:var(--text-muted);font-size:.74rem;line-height:1.4;text-align:right}
.review-invitation-panel{display:grid;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;border:1px solid var(--border);border-radius:20px;background:var(--surface-soft)}.review-invitation-panel p{margin:.35rem 0 0;color:var(--text-muted)}.review-invitation-form{display:grid;grid-template-columns:1.1fr 1.1fr .65fr auto;gap:.75rem;align-items:end}.review-invitation-form label{display:grid;gap:.35rem}.review-invitation-form label>span{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.review-invitation-copy{display:flex;gap:.65rem}.review-invitation-copy .form-input{min-width:0}.review-invitation-result{padding:1rem;border:1px solid #bfd5c7;border-radius:15px;background:#f3faf5}.review-invitation-result small{display:block;margin-top:.45rem;color:var(--text-muted)}.review-invitation-active summary{cursor:pointer;font-weight:800}.review-invitation-active>div{display:grid;gap:.5rem;margin-top:.75rem}.review-invitation-active article{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:#fff}.review-invitation-active article span{display:grid}.review-invitation-active small{color:var(--text-muted)}
.public-review-page{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 5%,rgba(232,239,232,.9),transparent 35%),linear-gradient(145deg,#fbf7f0 0%,#f3eadf 100%);color:var(--text)}.public-review-shell{width:min(760px,calc(100% - 2rem));margin:0 auto;padding:clamp(1.5rem,5vw,4rem) 0 2rem}.public-review-header{display:flex;justify-content:center;margin-bottom:1.35rem}.public-review-brand{display:inline-flex;align-items:center;gap:.75rem;color:var(--ocean);font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(1.25rem,3vw,1.6rem);font-weight:650;text-decoration:none}.public-review-brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(95,122,102,.2);border-radius:50%;background:#fff;font:700 .72rem/1 'Jost',sans-serif;letter-spacing:.08em;box-shadow:0 8px 24px rgba(58,48,38,.07)}.public-review-card{overflow:hidden;padding:clamp(1.25rem,5vw,3rem);border:1px solid rgba(95,122,102,.18);border-radius:30px;background:rgba(255,255,255,.94);box-shadow:0 24px 70px rgba(58,48,38,.12)}.public-review-intro{text-align:center}.public-review-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto .9rem;border-radius:18px;background:var(--ocean-pale);color:var(--ocean);font:400 2rem/1 Georgia,serif}.public-review-card .settings-section-kicker{color:var(--ocean)}.public-review-card h1{margin:.38rem 0 .75rem;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(2rem,6vw,3rem);font-weight:500;line-height:1.08}.public-review-intro p{max-width:570px;margin:0 auto;color:var(--text-muted);font-size:.96rem;line-height:1.7}.public-review-guest{display:flex;align-items:center;gap:.75rem;margin:1.5rem 0 0;padding:.8rem .9rem;border:1px solid rgba(95,122,102,.13);border-radius:16px;background:#f3f7f3}.public-review-avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:var(--ocean);color:#fff;font-weight:800}.public-review-guest>span:last-child{display:grid;gap:.15rem;min-width:0}.public-review-guest strong{color:var(--text)}.public-review-guest small{color:var(--text-muted)}.public-review-form{display:grid;gap:1.15rem;margin-top:1.35rem}.public-review-rating{min-width:0;margin:0;padding:1rem 1.1rem;border:1px solid rgba(95,122,102,.14);border-radius:18px;background:#fbfcfa;text-align:center}.public-review-rating legend{width:100%;padding:0 .4rem;color:var(--text);font-size:.84rem;font-weight:750}.public-review-stars{display:flex;flex-direction:row-reverse;justify-content:center;gap:.3rem;margin-top:.35rem}.public-review-stars input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.public-review-stars label{padding:.08rem;color:#d9d5ce;font-size:clamp(2rem,8vw,2.65rem);line-height:1;cursor:pointer;transition:color .16s ease,transform .16s ease}.public-review-stars label:hover,.public-review-stars label:hover~label,.public-review-stars input:checked~label{color:#d99c51}.public-review-stars label:hover{transform:translateY(-2px)}.public-review-stars input:focus-visible+label{outline:3px solid rgba(95,122,102,.24);outline-offset:3px;border-radius:5px}.public-review-field{display:grid;gap:.5rem}.public-review-field>span{font-size:.78rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.public-review-card textarea.form-input{display:block;width:100%;min-height:170px;padding:1rem 1.05rem;line-height:1.6;border-color:rgba(95,122,102,.2);border-radius:16px;background:#fff}.public-review-card textarea.form-input:focus{border-color:var(--ocean);box-shadow:0 0 0 4px rgba(95,122,102,.12)}.public-review-privacy{color:var(--text-muted);font-size:.76rem;line-height:1.5}.public-review-submit,.public-review-home{justify-content:center;min-height:50px}.public-review-submit{width:100%;font-weight:750}.public-review-submit span{font-size:1.15rem}.public-review-success,.public-review-error{margin-top:1.5rem;padding:1rem 1.1rem;border-radius:15px;line-height:1.55;text-align:center}.public-review-success{border:1px solid #c5ddca;background:#edf7ef;color:#245d36}.public-review-error{border:1px solid #f0cbc7;background:#fff1ef;color:#8d2d27}.public-review-home{display:flex;width:min(100%,320px);margin:1rem auto 0}.public-review-back{display:block;width:max-content;margin:1.1rem auto 0;color:var(--ocean);font-size:.82rem;font-weight:700}.public-review-back:hover{text-decoration:underline}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.website-statistics-sources{margin-top:1.25rem;padding:1.15rem;border:1px solid var(--border);border-radius:18px;background:#fff}.website-statistics-source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.website-statistics-source-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-radius:13px;background:var(--surface-soft)}.website-statistics-source-list article span{display:grid}.website-statistics-source-list small{color:var(--text-muted)}.website-statistics-source-list b{color:var(--green)}.login-event-network details{margin-top:.35rem}.login-event-network summary{cursor:pointer;font-size:.7rem;color:var(--text-muted)}.login-event-network code{display:block;max-width:420px;margin-top:.35rem;white-space:normal;word-break:break-word;font-size:.68rem}
@media(max-width:850px){.review-invitation-form{grid-template-columns:1fr 1fr}.website-statistics-source-list{grid-template-columns:1fr}}
.public-review-rating-title{color:var(--text);font-size:.84rem;font-weight:750}
@media(max-width:600px){.review-invitation-form{grid-template-columns:1fr}.review-invitation-copy{flex-direction:column}.review-invitation-active article{align-items:flex-start}.public-review-shell{width:min(100% - 1rem,760px);padding:.75rem 0 1.5rem}.public-review-header{margin-bottom:.75rem}.public-review-card{padding:1.25rem 1rem;border-radius:23px}.public-review-card h1{font-size:2rem}.public-review-intro p{font-size:.9rem}.public-review-rating{padding:.9rem .5rem}.public-review-stars{gap:.12rem}.public-review-stars label{font-size:2.15rem}.public-review-card textarea.form-input{min-height:150px}.public-review-brand-mark{width:38px;height:38px}.public-review-guest{align-items:flex-start}}
@media(max-width:700px){.pricing-season-actions{align-items:stretch;flex-direction:column}.pricing-season-autosave-note{text-align:left}.pricing-season-actions .btn{width:100%;justify-content:center;text-align:center}}

/*
 * Authoritative mobile form geometry.
 * iOS assigns different intrinsic widths and heights to text, date and select
 * controls. Keep every single-line control inside its parent and on one shared
 * 44px rhythm across the public site, customer account, installer and CMS.
 */
@media(max-width:1100px) and (orientation:portrait){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body :is(form,fieldset,.form-row,.form-group,label,.pricing-input-wrap,.pricing-input-wrap-count,.website-statistics-controls,.season-date-editor,.season-date-fields){box-sizing:border-box;min-inline-size:0;min-width:0;max-inline-size:100%;max-width:100%}
  body :is(input.form-input,select.form-input,.website-statistics-controls input,.website-statistics-controls select):not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="button"]):not([type="submit"]):not([type="reset"]){display:block;box-sizing:border-box;inline-size:100%!important;width:100%!important;min-inline-size:0!important;min-width:0!important;max-inline-size:100%!important;max-width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;margin:0!important;padding-block:0!important;padding-inline:.8rem!important;border-width:1px;font-size:16px!important;line-height:1.2!important;overflow:hidden}
  body textarea.form-input{display:block;box-sizing:border-box;inline-size:100%!important;width:100%!important;min-inline-size:0!important;min-width:0!important;max-inline-size:100%!important;max-width:100%!important;margin:0!important}
  body input.form-input[type="date"],body .website-statistics-controls input[type="date"]{-webkit-appearance:none!important;appearance:none!important}
  body input.form-input[type="date"]::-webkit-date-and-time-value,body .website-statistics-controls input[type="date"]::-webkit-date-and-time-value{display:flex;align-items:center;box-sizing:border-box;width:100%;height:42px;min-height:42px;margin:0;padding:0;line-height:normal;text-align:left}
  body select.form-input,body .website-statistics-controls select{text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:700px){
  .pricing-seasons-card .pricing-season-item-head{box-sizing:border-box;width:100%;padding:3rem 0 0!important}
  .pricing-seasons-card .pricing-season-name,.pricing-seasons-card .pricing-season-name .form-input{box-sizing:border-box;width:100%!important;max-width:100%!important}
}

/* Start-page rich-text fields use contenteditable controls instead of inputs. */
@media(max-width:1100px) and (orientation:portrait){
  body :is(.admin-i18n-field,.admin-i18n-control,.admin-richtext-panel){box-sizing:border-box;inline-size:100%;width:100%;min-inline-size:0;min-width:0;max-inline-size:100%;max-width:100%}
  body .admin-richtext-editor.is-singleline{display:flex!important;align-items:center;box-sizing:border-box;inline-size:100%!important;width:100%!important;min-inline-size:0!important;min-width:0!important;max-inline-size:100%!important;max-width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;margin:0!important;padding:0 .8rem!important;font-size:16px!important;line-height:1.2!important;overflow:hidden!important}
  body .admin-richtext-toolbar .admin-richtext-select{box-sizing:border-box;height:44px!important;min-height:44px!important;max-height:44px!important;margin:0;min-inline-size:0;min-width:0;max-inline-size:100%;max-width:100%;font-size:16px!important}
}

/* Every destructive CMS icon keeps one fixed square footprint on iOS. */
.admin-delete-icon-button{box-sizing:border-box!important;display:inline-grid!important;place-items:center!important;flex:0 0 36px!important;width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important;aspect-ratio:1/1!important;margin:0!important;padding:0!important;border-radius:10px!important;line-height:1!important;text-align:center!important}

/* X controls must never be stretched by responsive form or grid rules. */
:is(.lightbox-close,.password-reset-close,.booking-legal-close,.contact-mail-close,.cookie-consent-close,.account-modal-close,.customer-drawer-close,.external-calendar-blocks-close){box-sizing:border-box!important;flex:0 0 42px!important;inline-size:42px!important;width:42px!important;min-inline-size:42px!important;min-width:42px!important;max-inline-size:42px!important;max-width:42px!important;block-size:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;aspect-ratio:1/1!important;margin-inline:0;padding:0!important}
:is(.admin-delete-icon-button,.customer-portal-item-remove){box-sizing:border-box!important;flex:0 0 36px!important;inline-size:36px!important;width:36px!important;min-inline-size:36px!important;min-width:36px!important;max-inline-size:36px!important;max-width:36px!important;block-size:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important;aspect-ratio:1/1!important;padding:0!important}
.pricing-season-remove{box-sizing:border-box!important;flex:0 0 38px!important;inline-size:38px!important;width:38px!important;min-inline-size:38px!important;min-width:38px!important;max-inline-size:38px!important;max-width:38px!important;block-size:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;aspect-ratio:1/1!important;padding:0!important}
.admin-mail-log-delete-button{box-sizing:border-box!important;flex:0 0 30px!important;inline-size:30px!important;width:30px!important;min-inline-size:30px!important;min-width:30px!important;max-inline-size:30px!important;max-width:30px!important;block-size:30px!important;height:30px!important;min-height:30px!important;max-height:30px!important;aspect-ratio:1/1!important;padding:0!important}

/* Keep the about image balanced when the two-column layout collapses on tablets. */
@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){
  .about-grid{gap:2rem;margin-top:2rem}
  .about-image-wrap{box-sizing:border-box;width:min(100%,580px);height:clamp(360px,46vw,470px);min-height:0;aspect-ratio:auto;margin:0 auto}
}
.cancellation-tier-editor{display:grid;gap:.85rem}.cancellation-tier-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.cancellation-tier-list{display:grid;gap:.65rem}.cancellation-tier-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) 42px;align-items:end;gap:.7rem;padding:.75rem;border:1px solid rgba(132,92,47,.12);border-radius:14px;background:#fff}.cancellation-tier-row label{display:grid;gap:.35rem;font-size:.78rem;font-weight:700}.cancellation-tier-row .icon-button{width:42px!important;height:42px!important;min-width:42px!important;aspect-ratio:1;border-radius:12px}.cancellation-tier-row .icon-button:disabled{opacity:.35;cursor:not-allowed}@media(max-width:620px){.cancellation-tier-head{align-items:stretch;flex-direction:column}.cancellation-tier-row{grid-template-columns:1fr 1fr 42px}}
