/* Abidjan Residence Backend Redesign v2 */
:root{
  --ar-bg:#f4f7fb;
  --ar-card:#ffffff;
  --ar-ink:#132033;
  --ar-muted:#68758a;
  --ar-line:#e4eaf2;
  --ar-navy:#071a2f;
  --ar-navy-2:#0b2748;
  --ar-blue:#2563eb;
  --ar-teal:#0f766e;
  --ar-green:#16a34a;
  --ar-orange:#f97316;
  --ar-red:#dc2626;
  --ar-yellow:#ca8a04;
  --ar-shadow:0 18px 50px rgba(15,23,42,.10);
  --ar-radius:18px;
}

html{background:var(--ar-bg)!important;}
body{
  margin:0!important;
  background:linear-gradient(135deg,#f8fbff 0%,#eef5ff 45%,#fff7ed 100%)!important;
  color:var(--ar-ink)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  min-height:100vh;
}

a{color:var(--ar-blue);text-decoration:none} a:hover{text-decoration:none;color:#1d4ed8}

/* Top/backend navs */
.admin-header,.seller-header,header.admin-header,header.seller-header,.backend-header,.topbar,.admin-topbar,.seller-topbar,
nav.admin-nav,nav.seller-nav,.sidebar,.admin-sidebar,.seller-sidebar{
  background:linear-gradient(135deg,var(--ar-navy),var(--ar-navy-2))!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 16px 40px rgba(7,26,47,.22)!important;
}
.admin-header a,.seller-header a,.backend-header a,.topbar a,.admin-topbar a,.seller-topbar a,
nav.admin-nav a,nav.seller-nav a,.sidebar a,.admin-sidebar a,.seller-sidebar a{
  color:rgba(255,255,255,.88)!important;
  border-radius:12px!important;
  padding:10px 12px!important;
  display:inline-flex!important;
  gap:8px!important;
  align-items:center!important;
}
.admin-header a:hover,.seller-header a:hover,.backend-header a:hover,.topbar a:hover,
nav.admin-nav a:hover,nav.seller-nav a:hover,.sidebar a:hover,.admin-sidebar a:hover,.seller-sidebar a:hover,
.admin-header a.active,.seller-header a.active,.sidebar a.active{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
}

/* Containers */
main,.main,.content,.admin-content,.seller-content,.dashboard,.dashboard-content,.page,.page-content,.container{
  max-width:1200px;
  margin-left:auto!important;
  margin-right:auto!important;
}
main,.main,.content,.admin-content,.seller-content,.dashboard,.dashboard-content{
  padding:28px 20px!important;
}

/* Page headings */
h1,h2,h3{
  color:var(--ar-ink)!important;
  letter-spacing:-.03em!important;
}
h1{font-size:clamp(28px,3vw,42px)!important;line-height:1.05!important;margin:0 0 18px!important;}
h2{font-size:clamp(22px,2vw,30px)!important;margin:24px 0 14px!important;}
h3{font-size:20px!important;margin:18px 0 10px!important;}

/* Cards / panels */
.card,.panel,.box,.widget,.stat-card,.dashboard-card,.admin-card,.seller-card,.summary-card,
form,.form-card,.table-card,.login-card,.profile-card,.booking-card,.lead-card{
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(226,232,240,.95)!important;
  border-radius:var(--ar-radius)!important;
  box-shadow:var(--ar-shadow)!important;
}
.card,.panel,.box,.widget,.dashboard-card,.admin-card,.seller-card,.summary-card,.table-card,.profile-card,.booking-card,.lead-card{
  padding:22px!important;
  margin-bottom:20px!important;
}

/* Stats */
.stats,.dashboard-stats,.admin-stats,.seller-stats,.stat-grid,.cards-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:18px!important;
  margin:22px 0!important;
}
.stat,.stat-card,.summary-card{
  position:relative!important;
  overflow:hidden!important;
}
.stat:before,.stat-card:before,.summary-card:before{
  content:"";
  position:absolute;right:-35px;top:-35px;width:110px;height:110px;border-radius:999px;
  background:linear-gradient(135deg,rgba(249,115,22,.20),rgba(37,99,235,.12));
}
.stat strong,.stat-card strong,.summary-card strong,.stat-number{
  font-size:34px!important;
  display:block!important;
  color:var(--ar-navy)!important;
  line-height:1!important;
}
.stat span,.stat-card span,.summary-card span,.stat-label{color:var(--ar-muted)!important;font-weight:700!important;}

/* Tables */
table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:#fff!important;
  border:1px solid var(--ar-line)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  box-shadow:var(--ar-shadow)!important;
  margin:18px 0!important;
}
thead,table tr:first-child{background:linear-gradient(135deg,#f8fafc,#eef5ff)!important;}
th{
  text-align:left!important;
  color:#334155!important;
  font-size:13px!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  padding:15px 16px!important;
  border-bottom:1px solid var(--ar-line)!important;
}
td{
  padding:15px 16px!important;
  border-bottom:1px solid #edf2f7!important;
  color:#263447!important;
  vertical-align:middle!important;
}
tr:last-child td{border-bottom:0!important;}
tbody tr:hover{background:#f8fbff!important;}

/* Forms */
form{padding:22px!important;}
label{display:block!important;font-weight:800!important;color:#334155!important;margin:12px 0 7px!important;}
input,select,textarea{
  width:100%;
  max-width:100%;
  border:1px solid #dbe3ee!important;
  background:#fff!important;
  border-radius:14px!important;
  padding:12px 14px!important;
  color:var(--ar-ink)!important;
  font:inherit!important;
  outline:none!important;
  transition:border .2s,box-shadow .2s,transform .2s!important;
  box-sizing:border-box!important;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--ar-blue)!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12)!important;
}
textarea{min-height:120px!important;resize:vertical!important;}

/* Buttons and actions */
button,.btn,input[type="submit"],.button,a.button,a.btn,.action-btn,.primary-btn,.secondary-btn,
.actions a,.actions button,.table-actions a,.table-actions button{
  border:0!important;
  border-radius:14px!important;
  padding:11px 16px!important;
  font-weight:900!important;
  cursor:pointer!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  line-height:1!important;
  background:linear-gradient(135deg,var(--ar-orange),#fb923c)!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(249,115,22,.22)!important;
  transition:transform .18s,box-shadow .18s,filter .18s!important;
  text-decoration:none!important;
}
button:hover,.btn:hover,input[type="submit"]:hover,.button:hover,a.button:hover,a.btn:hover,.action-btn:hover,
.actions a:hover,.actions button:hover,.table-actions a:hover,.table-actions button:hover{
  transform:translateY(-1px)!important;
  filter:saturate(1.08)!important;
  box-shadow:0 16px 30px rgba(249,115,22,.27)!important;
  color:#fff!important;
}
.btn.secondary,.button.secondary,.secondary-btn,a.secondary{background:linear-gradient(135deg,#334155,#64748b)!important;box-shadow:0 12px 24px rgba(51,65,85,.17)!important;}
.btn.danger,.button.danger,.danger,button.danger,a.danger{background:linear-gradient(135deg,#dc2626,#ef4444)!important;box-shadow:0 12px 24px rgba(220,38,38,.20)!important;}
.btn.success,.button.success,.success,button.success,a.success{background:linear-gradient(135deg,#0f766e,#14b8a6)!important;box-shadow:0 12px 24px rgba(20,184,166,.20)!important;}

/* Badges */
.badge,.status,.label,.pill,.tag{
  display:inline-flex!important;
  align-items:center!important;
  border-radius:999px!important;
  padding:7px 11px!important;
  font-size:12px!important;
  font-weight:900!important;
  background:#e8f1ff!important;
  color:#1d4ed8!important;
  border:1px solid #bfdbfe!important;
}
.badge.available,.status.available,.status-disponible,.badge-success,.verified{background:#dcfce7!important;color:#15803d!important;border-color:#bbf7d0!important;}
.badge.occupied,.status.occupied,.status-occupe,.badge-danger{background:#fee2e2!important;color:#b91c1c!important;border-color:#fecaca!important;}
.badge.maintenance,.status.maintenance,.badge-warning{background:#fef3c7!important;color:#a16207!important;border-color:#fde68a!important;}
.badge.hidden,.status.hidden,.badge-muted{background:#f1f5f9!important;color:#475569!important;border-color:#e2e8f0!important;}

/* Alerts */
.alert,.notice,.message,.success-message,.error-message,.warning-message{
  border-radius:16px!important;
  padding:14px 16px!important;
  margin:14px 0!important;
  border:1px solid var(--ar-line)!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,23,42,.06)!important;
}
.alert-success,.success-message{background:#ecfdf5!important;color:#065f46!important;border-color:#a7f3d0!important;}
.alert-error,.error-message{background:#fef2f2!important;color:#991b1b!important;border-color:#fecaca!important;}
.alert-warning,.warning-message{background:#fffbeb!important;color:#92400e!important;border-color:#fde68a!important;}

/* Backend login pages */
body:has(.admin-login),body:has(.seller-login),body.login-page{
  background:radial-gradient(circle at top left,rgba(249,115,22,.22),transparent 30%),linear-gradient(135deg,#071a2f,#0b2748 45%,#0f766e)!important;
}
.login-wrap,.login-container,.auth-container,.admin-login,.seller-login{
  min-height:100vh!important;
  display:grid!important;
  place-items:center!important;
  padding:24px!important;
}
.login-box,.auth-card,.admin-login form,.seller-login form{
  width:min(440px,100%)!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(255,255,255,.45)!important;
  border-radius:26px!important;
  box-shadow:0 30px 80px rgba(0,0,0,.28)!important;
}

/* Images/uploads */
img{max-width:100%;height:auto}.thumb,.avatar,.room-thumb{border-radius:14px!important;object-fit:cover!important;box-shadow:0 8px 22px rgba(15,23,42,.12)!important;}

/* Utility fallback */
.actions,.table-actions,.form-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;}
.grid,.backend-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:18px!important;}

@media(max-width:820px){
  main,.main,.content,.admin-content,.seller-content,.dashboard,.dashboard-content{padding:18px 12px!important;}
  table{display:block!important;overflow-x:auto!important;white-space:nowrap!important;}
  .admin-header,.seller-header,.backend-header,.topbar,.admin-topbar,.seller-topbar,nav.admin-nav,nav.seller-nav{
    overflow-x:auto!important;white-space:nowrap!important;
  }
  h1{font-size:29px!important;}
}
@import url("logo-force.css?v=20260519");
@import url("logo-direct-fix.css?v=20260519b");
@import url("/assets/css/abidjan-logo.css?v=clean1");

@import url('/assets/css/abidjan-logo-final.css?v=final1');
@import url("/assets/css/backend-language.css?v=lang1");
@import url("/assets/css/availability.css?v=phase8");
@import url("/assets/css/heading-calendar-fix.css?v=calfix1");

/* ===== ABIDJAN RESIDENCE FORCE VISIBILITY COLORS ===== */
html body h1,
html body h2,
html body h3,
html body h4,
html body .page-title,
html body .section-title,
html body .room-title,
html body .room-detail h1,
html body .room-detail h2,
html body .room-details h1,
html body .room-details h2,
html body .backend-main h1,
html body .backend-main h2,
html body .backend-card h1,
html body .backend-card h2,
html body .room-calendar-head h2,
html body .calendar-toolbar strong {
    color: #0f1f33 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
    font-weight: 900 !important;
}

html body .hero h1,
html body .hero-title,
html body .hero h2,
html body .hero p {
    color: #ffffff !important;
    text-shadow: 0 8px 28px rgba(0,0,0,.45) !important;
}

html body .eyebrow,
html body .section-eyebrow {
    color: #d97706 !important;
    font-weight: 900 !important;
}

/* ===== CALENDAR COLORS FORCE ===== */

/* Default */
html body .calendar-day {
    background: #f8fafc !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f1f33 !important;
    opacity: 1 !important;
}

/* Available = GREEN */
html body .calendar-day.available,
html body button.calendar-day.available,
html body .calendar-grid .calendar-day.available:not(.past):not(.unavailable) {
    background: #dcfce7 !important;
    border-color: #16a34a !important;
    color: #14532d !important;
}

html body .calendar-day.available small {
    color: #166534 !important;
}

/* Booked / unavailable = ORANGE */
html body .calendar-day.unavailable,
html body button.calendar-day.unavailable,
html body .calendar-grid .calendar-day.unavailable {
    background: #fed7aa !important;
    border-color: #f97316 !important;
    color: #9a3412 !important;
    opacity: 1 !important;
}

html body .calendar-day.unavailable small {
    color: #9a3412 !important;
}

/* Past = GRAY */
html body .calendar-day.past,
html body button.calendar-day.past,
html body .calendar-grid .calendar-day.past {
    background: #e5e7eb !important;
    border-color: #94a3b8 !important;
    color: #475569 !important;
    opacity: .9 !important;
}

html body .calendar-day.past small {
    color: #64748b !important;
}

/* Selected = NAVY */
html body .calendar-day.selected,
html body button.calendar-day.selected {
    background: #172533 !important;
    border-color: #172533 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(23,37,51,.30) !important;
}

html body .calendar-day.selected small {
    color: #ffffff !important;
}

html body .calendar-day.in-range {
    outline: 3px solid rgba(23,37,51,.22) !important;
}

/* Legend */
html body .calendar-legend .dot.available,
html body .calendar-legend .available {
    background: #16a34a !important;
}

html body .calendar-legend .dot.unavailable,
html body .calendar-legend .unavailable {
    background: #f97316 !important;
}

html body .calendar-legend .dot.selected,
html body .calendar-legend .selected {
    background: #172533 !important;
}

html body .availability-result.is-available {
    background: #dcfce7 !important;
    border: 1px solid #16a34a !important;
    color: #14532d !important;
}

html body .availability-result.is-unavailable {
    background: #fed7aa !important;
    border: 1px solid #f97316 !important;
    color: #9a3412 !important;
}
@import url("/assets/css/phase10-bookings.css?v=phase10");
@import url("/assets/css/phase11-commission.css?v=phase11");
@import url("/assets/css/phase12-reports.css?v=phase12");
@import url("/assets/css/booking-conflict-check.css?v=phase13");
@import url("/assets/css/phase14-whatsapp.css?v=phase14");
@import url("/assets/css/phase15-leads.css?v=phase15");
@import url("/assets/css/phase16-dashboard.css?v=phase16");
@import url("/assets/css/phase17-media.css?v=phase17");
@import url("/assets/css/phase18-room-form-images.css?v=phase18");
@import url("/assets/css/phase19-client-documents.css?v=phase19");
@import url("/assets/css/seller-client-visibility.css?v=clientfix");
@import url("/assets/css/phase20-manual-clients.css?v=phase20");
@import url("/assets/css/admin-nav-force-visible.css?v=navvisible1");
@import url("/assets/css/admin-nav-size-fix.css?v=navsize1");
@import url("/assets/css/phase21-frontend-gallery.css?v=phase21");
@import url("/assets/css/phase22-receipts.css?v=phase22");
@import url("/assets/css/phase23-payments.css?v=phase23");
@import url("/assets/css/phase24-booking-adjust.css?v=phase24");
@import url("/assets/css/phase25-booking-editor.css?v=phase25");
@import url("/assets/css/public-room-calendar.css?v=publiccal1");
@import url("/assets/css/phase26-date-blocks.css?v=phase26");
@import url("/assets/css/room-details-h1-gallery-fix.css?v=h1gallery1");
@import url("/assets/css/phase27-booking-status.css?v=phase27");
