:root{--ink:#102936;--deep:#071821;--muted:#667085;--cream:#fbf7ef;--card:#fffdf8;--gold:#b8954b;--gold2:#d8bd73;--line:rgba(16,41,54,.12);--shadow:0 18px 50px rgba(7,24,33,.10);--radius:22px}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:linear-gradient(135deg,#fbf7ef,#f4ead5);color:var(--ink);font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}.admin-shell{min-height:100vh;display:grid;grid-template-columns:286px 1fr}.admin-sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#071821,#102936);color:#fff;padding:22px;display:flex;flex-direction:column;gap:22px}.admin-brand{display:flex;align-items:center;gap:12px;padding:10px 8px 18px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-mark{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#161005;font-size:30px;font-weight:900}.admin-brand strong{display:block;font-size:18px}.admin-brand span{display:block;color:rgba(255,255,255,.62);font-size:12px}.admin-nav{display:grid;gap:9px}.admin-nav a{padding:12px 14px;border-radius:15px;color:rgba(255,255,255,.78);font-weight:500;transition:.2s}.admin-nav a:hover,.admin-nav a.active{background:linear-gradient(135deg,rgba(184,149,75,.95),rgba(216,189,115,.95));color:#161005;box-shadow:0 14px 34px rgba(184,149,75,.22)}.admin-side-footer{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-side-footer a{padding:10px;border-radius:13px;background:rgba(255,255,255,.09);text-align:center;color:rgba(255,255,255,.88);font-weight:500}.admin-main{padding:28px;min-width:0}.admin-topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px}.eyebrow{margin:0 0 4px;color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:600}.admin-topbar h1{margin:0;font-family:Georgia,serif;font-size:clamp(30px,4vw,46px);letter-spacing:-.04em}.top-button,.admin-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:11px 17px;font-weight:600;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#161005;box-shadow:0 14px 30px rgba(184,149,75,.25);cursor:pointer}.admin-btn.dark{background:#102936;color:#fff;box-shadow:none}.admin-btn.danger{background:#991b1b;color:#fff;box-shadow:none}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.admin-card{background:rgba(255,253,248,.94);border:1px solid rgba(184,149,75,.22);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);margin-bottom:18px}.admin-card h2,.admin-card h3{margin:0 0 14px;color:var(--ink);font-weight:500}.admin-card p{color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat{background:linear-gradient(145deg,#fff,#fbf1db);border:1px solid rgba(184,149,75,.22);border-radius:20px;padding:20px;box-shadow:var(--shadow)}.stat small{display:block;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.1em}.stat strong{font-family:Georgia,serif;font-size:38px;color:var(--ink)}label{display:block;font-weight:500;font-size:13px;color:#273c47}input,textarea,select{width:100%;margin-top:7px;padding:12px 13px;border:1px solid #d8d4c9;border-radius:14px;background:#fff;font:inherit;color:var(--ink)}textarea{min-height:126px;resize:vertical}.admin-table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--line);background:#fff}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th{background:#f6edda;color:#273c47;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:500}.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid rgba(16,41,54,.08);vertical-align:top}.admin-table tr:last-child td{border-bottom:0}.thumb{width:96px;height:62px;border-radius:12px;object-fit:cover;background:#eee;border:1px solid var(--line)}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-alert{padding:13px 16px;border-radius:16px;margin:0 0 18px;font-weight:500}.admin-alert.success{background:#ecfdf5;color:#065f46;border:1px solid #bbf7d0}.admin-alert.danger{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.help{font-size:13px;color:var(--muted);margin-top:6px}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;background:#f6edda;color:#715b28;font-size:12px;font-weight:500}.section-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.nested-card{border:1px solid rgba(16,41,54,.1);border-radius:18px;padding:16px;background:#fff;margin-top:14px}@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto}.admin-main{padding:16px}.admin-topbar{align-items:flex-start;flex-direction:column}.split{grid-template-columns:1fr}.admin-nav{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.admin-nav{grid-template-columns:1fr}.admin-side-footer{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}.top-button{width:100%}}
/* V3 relaxing admin typography + checkbox controls */
.admin-brand strong{font-weight:600}.admin-brand span{font-weight:400}.admin-topbar h1{font-weight:500}.admin-card strong,.admin-table strong{font-weight:600}.admin-table td{font-weight:400}.soft-note{color:var(--muted);font-size:14px;margin:-6px 0 16px}.check-col{width:54px;text-align:center}.check-col input,.bulk-row input[type=checkbox],.admin-table input[type=checkbox]{width:auto;margin:0;transform:scale(1.1)}.bulk-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px;padding:12px 14px;border:1px solid rgba(184,149,75,.18);border-radius:18px;background:#fffaf0}.bulk-row label{display:inline-flex;align-items:center;gap:8px;margin:0}.admin-btn.ghost{background:#fff;color:var(--ink);border:1px solid rgba(16,41,54,.16);box-shadow:none}.module-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.module-tabs a{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(16,41,54,.12);font-weight:500;color:var(--ink)}.module-tabs a.active{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#161005;border-color:transparent}

/* V4 Analytics module */
.analytics-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.analytics-tabs a{padding:9px 13px;border-radius:999px;background:#fff;border:1px solid rgba(16,41,54,.12);font-weight:500;color:var(--ink)}.analytics-intro{display:flex;align-items:center;justify-content:space-between;gap:16px}.analytics-intro h2{margin-bottom:4px}.analytics-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:18px}.analytics-chart{height:390px;margin-top:14px}.analytics-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.note{background:#fffaf0;border:1px solid rgba(184,149,75,.2);border-radius:16px;padding:14px}.note span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.note strong{display:block;font-size:24px;font-family:Georgia,serif;font-weight:500;color:var(--ink)}.note small{color:var(--muted)}.analytics-table{min-width:940px}.today-table{min-width:360px}.activity-list{display:grid;gap:10px}.activity-row{display:grid;grid-template-columns:160px 180px 1fr 110px;gap:10px;align-items:center;background:#fffaf0;border:1px solid rgba(184,149,75,.2);border-radius:16px;padding:12px}.activity-row small{display:block;color:var(--muted);font-size:12px}.activity-row span{display:block}.type-badges{display:flex;gap:6px;flex-wrap:wrap}.type-badges span{display:inline-flex;width:max-content;padding:6px 10px;border-radius:999px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#161005;font-weight:500;font-size:12px}@media(max-width:1100px){.analytics-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.analytics-intro{display:block}.analytics-grid{grid-template-columns:repeat(2,1fr)}.analytics-notes,.analytics-split{grid-template-columns:1fr}.analytics-chart{height:300px}.activity-row{grid-template-columns:1fr;gap:5px}.type-badges span{font-size:11px;padding:5px 8px}}@media(max-width:520px){.analytics-grid{grid-template-columns:1fr 1fr}.analytics-chart{height:260px}.note strong{font-size:20px}}

/* V5 organized content/settings editor */
.settings-clean-card{padding:0;overflow:hidden}.settings-clean-card>.section-title{padding:22px 22px 4px;margin-bottom:0}.settings-sections{display:grid;gap:0}.settings-section{padding:22px;border-top:1px solid rgba(16,41,54,.08)}.settings-section:nth-child(even){background:rgba(255,250,240,.55)}.settings-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.settings-section-head h3{font-family:Georgia,serif;font-size:24px;font-weight:500;margin:0;color:var(--ink)}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:16px}.compact-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.setting-field.wide,.settings-grid .wide{grid-column:1/-1}.field-label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#40535c;font-weight:600;margin-bottom:6px}label.setting-field,label.check-label{font-weight:400}.setting-field textarea{min-height:118px}.setting-field.wide textarea{min-height:210px}.sticky-save-bar{position:sticky;bottom:0;z-index:5;display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:16px 22px;background:rgba(255,253,248,.94);border-top:1px solid rgba(16,41,54,.1);backdrop-filter:blur(12px)}.form-actions{display:flex;align-items:end}.check-label{display:flex!important;align-items:center;gap:9px;padding-top:30px}.check-label input{width:auto;margin:0}.admin-card .soft-note strong{font-weight:600;color:var(--ink)}
@media(max-width:900px){.settings-grid{grid-template-columns:1fr}.settings-section{padding:16px}.settings-clean-card>.section-title{padding:18px 18px 2px}.sticky-save-bar{justify-content:stretch}.sticky-save-bar .admin-btn{width:100%}.settings-section-head h3{font-size:21px}}


/* V6 Analytics recent IP professional table */
.recent-ip-wrap{border-radius:20px;background:#fff;box-shadow:0 14px 36px rgba(7,24,33,.06)}
.recent-ip-table{min-width:1180px}
.recent-ip-table th{text-align:center;white-space:nowrap}
.recent-ip-table th.ip-col{text-align:left;min-width:230px}
.recent-ip-table td{text-align:center;vertical-align:middle}
.recent-ip-table .visitor-cell{text-align:left;min-width:230px}
.visitor-cell strong{display:block;font-size:14px;color:var(--ink);font-weight:600}
.visitor-cell small,.last-seen-cell small{display:block;color:var(--muted);font-size:12px;margin-top:2px;line-height:1.35}
.last-seen-cell span{display:block;white-space:nowrap;font-weight:500;color:#263f4a}
.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:30px;padding:0 10px;border-radius:999px;background:#eef6f8;color:#0e7490;font-weight:600;border:1px solid rgba(14,116,144,.14)}
.count-pill.lead{background:#ecfdf5;color:#047857;border-color:rgba(4,120,87,.14)}
.count-pill.villa{background:#fff7e6;color:#7a5c16;border-color:rgba(184,149,75,.22)}
.zero{display:inline-flex;align-items:center;justify-content:center;min-width:28px;color:#a2a8ad;font-size:13px}
.total-pill{min-width:42px;justify-content:center;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#161005;border:0}
@media(max-width:900px){.recent-ip-table{min-width:1060px}.recent-ip-table th,.recent-ip-table td{padding:10px 9px}.visitor-cell strong{font-size:13px}}

/* V7 Villa gallery bulk image controls */
.villa-title-row{align-items:flex-start}.villa-counts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.gallery-bulk-panel{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin:16px 0;padding:15px;border-radius:20px;background:linear-gradient(145deg,#fffaf0,#fff);border:1px solid rgba(184,149,75,.22)}.gallery-bulk-left{display:grid;gap:10px;min-width:240px}.bulk-check{display:inline-flex!important;align-items:center;gap:9px;font-weight:500;color:#273c47}.bulk-check input{width:auto;margin:0;transform:scale(1.08)}.danger-check{color:#991b1b}.gallery-bulk-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.gallery-admin-table{min-width:1040px}.gallery-admin-table td{vertical-align:middle}.gallery-admin-table input[type="text"],.gallery-admin-table input:not([type]),.gallery-admin-table input[type="number"]{min-width:120px}.gallery-admin-table .check-col{text-align:center;width:72px}.row-active{display:inline-flex!important;align-items:center;gap:8px;white-space:nowrap;font-weight:500}.row-active input{width:auto;margin:0}.empty-cell{text-align:center;color:var(--muted);padding:22px!important}.villa-admin-card{scroll-margin-top:24px}@media(max-width:900px){.gallery-bulk-panel{display:block}.gallery-bulk-left{margin-bottom:12px}.gallery-bulk-actions{justify-content:flex-start}.gallery-bulk-actions .admin-btn{width:100%}.villa-counts{justify-content:flex-start}}

/* V8 Analytics compact summary cards */
.analytics-grid{
  grid-template-columns:repeat(6,minmax(118px,1fr));
  gap:10px;
  margin-bottom:16px;
}
.analytics-grid .stat{
  padding:12px 14px;
  border-radius:16px;
  box-shadow:0 10px 26px rgba(7,24,33,.07);
  min-height:86px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.analytics-grid .stat small{
  font-size:10px;
  letter-spacing:.09em;
  line-height:1.1;
  margin-bottom:7px;
}
.analytics-grid .stat strong{
  font-size:28px;
  line-height:1;
  font-weight:500;
}
@media(max-width:1200px){
  .analytics-grid{grid-template-columns:repeat(3,minmax(120px,1fr));}
}
@media(max-width:700px){
  .analytics-grid{grid-template-columns:repeat(2,minmax(110px,1fr));gap:8px;}
  .analytics-grid .stat{padding:10px 12px;min-height:78px;border-radius:14px;}
  .analytics-grid .stat strong{font-size:24px;}
  .analytics-grid .stat small{font-size:9px;}
}


/* V12 fixed admin logo patch - preserves full admin layout */
.admin-brand{
  align-items:center;
  min-height:76px;
}
.admin-logo-img{
  width:86px;
  max-width:86px;
  height:auto;
  object-fit:contain;
  flex:0 0 auto;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.25));
}
.admin-brand .brand-mark{
  display:none;
}
@media(max-width:900px){
  .admin-logo-img{
    width:78px;
    max-width:78px;
  }
}


/* V14 simple image manager controls */
.gallery-simple-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0;background:#fffaf0;border:1px solid rgba(184,149,75,.22);border-radius:18px;padding:14px}.gallery-toolbar-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px;border-radius:14px;background:#fff}.gallery-toolbar-group.active-zone{justify-content:flex-end}.bulk-check{display:inline-flex;align-items:center;gap:8px;font-weight:500;color:#233}.active-col{text-align:center;white-space:nowrap}.row-active{display:inline-flex;align-items:center;gap:7px;font-weight:500}@media(max-width:900px){.gallery-simple-toolbar{grid-template-columns:1fr}.gallery-toolbar-group.active-zone{justify-content:flex-start}}


/* V15: Main Hero + Story Images toolbar alignment like Villa Gallery */
.image-manager-toolbar{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:center !important;
  gap:18px !important;
  padding:14px 18px !important;
}
.image-manager-toolbar .danger-zone{
  justify-content:flex-start !important;
  width:100%;
}
.image-manager-toolbar .active-zone{
  justify-content:flex-end !important;
  width:auto;
  min-width:360px;
  margin-left:auto;
  border-left:1px solid rgba(184,149,75,.18);
  padding-left:18px;
}
.image-manager-toolbar .active-zone .admin-btn{
  white-space:nowrap;
}
@media(max-width:900px){
  .image-manager-toolbar{
    grid-template-columns:1fr !important;
  }
  .image-manager-toolbar .active-zone{
    justify-content:flex-start !important;
    min-width:0;
    width:100%;
    margin-left:0;
    border-left:0;
    padding-left:10px;
  }
}
