/* ═══════════════════════════════════════════════════════════
   RHCP Frontend — Premium Enterprise Design System v3
   ═══════════════════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html.rhcp-html{height:100%;overflow:hidden;}

/* ── DESIGN TOKENS ───────────────────────────────────────── */
:root{
  --navy:#0B1D3A;--navy2:#102244;--navy3:#0d1e38;--navy-light:#1a3260;
  --gold:#D4A017;--gold2:#e6b420;--gold3:#f0c842;--gold-dim:#b8890f;
  --bg:#f0f4f9;--bg2:#e8edf5;--surface:#ffffff;--surface2:#f5f7fa;
  --border:#d1d9e6;--border2:#b6c3d4;
  --txt:#0d1b2e;--txt2:#1e3a5f;--txt3:#374f6b;--muted:#4a6480;
  --green:#16a34a;--red:#dc2626;--amber:#b45309;--blue:#1d4ed8;--purple:#7c3aed;
  --sidebar-w:268px;--topbar-h:68px;--radius:14px;--radius-sm:8px;--radius-lg:20px;
  --shadow-sm:0 1px 4px rgba(11,29,58,.08);
  --shadow:0 4px 20px rgba(11,29,58,.10);
  --shadow-md:0 8px 32px rgba(11,29,58,.14);
  --shadow-gold:0 4px 20px rgba(212,160,23,.30);
  --ease:.2s cubic-bezier(.4,0,.2,1);
}
[data-theme="dark"]{
  --bg:#070f1e;--bg2:#0a1628;--surface:#0f1e38;--surface2:#0c1730;
  --border:#1e3460;--border2:#243d70;
  --txt:#f1f5f9;--txt2:#c8d8e8;--txt3:#96afc5;--muted:#7a9ab5;
  --shadow:0 4px 20px rgba(0,0,0,.35);--shadow-md:0 8px 32px rgba(0,0,0,.4);
}

/* ═══════════════════════════════════════════════════════════
   AUTH PAGE — Pixel-perfect match to reference image
   Background slides untouched. Logo prominent above card.
   ═══════════════════════════════════════════════════════════ */
body.rhcp-auth-body{
  background:
    radial-gradient(ellipse at 20% 30%, rgba(26,74,170,.35) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 70%, rgba(30,86,200,.25) 0%, transparent 55%),
    linear-gradient(145deg,#050e20 0%,#091835 40%,#060f22 100%);
  min-height:100vh;
  overflow-x:hidden;
  overflow-y:auto;
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;
  width:100%;
  /* Do NOT use position:fixed — it clips inputs on Android */
}

/* ── SLIDESHOW BACKGROUND ──────────────────────────────────── */
.rhcp-bg-slideshow{position:fixed;inset:0;z-index:0;overflow:hidden;}
.rhcp-bg-slide{position:absolute;inset:-8%;background-size:cover;background-position:center;opacity:0;transition:opacity 1.8s ease-in-out;will-change:transform,opacity;}
.rhcp-bg-slide.is-active{opacity:1;}
/* Slide 1 — 5-star resort pool at golden hour */
.rhcp-bg-slide--1{background-image:url('https://images.unsplash.com/photo-1571003123894-1f0594d2b5d9?w=1920&q=95&auto=format&fit=crop');animation:rhcp-slide-zoom-1 22s ease-in-out infinite;}
/* Slide 2 — 5-star luxury hotel suite interior */
.rhcp-bg-slide--2{background-image:url('https://images.unsplash.com/photo-1618773928121-c32242e63f39?w=1920&q=95&auto=format&fit=crop');animation:rhcp-slide-zoom-2 22s ease-in-out infinite;}
/* Slide 3 — modern 5-star hotel lobby atrium */
.rhcp-bg-slide--3{background-image:url('https://images.unsplash.com/photo-1542314831-068cd1dbfeeb?w=1920&q=95&auto=format&fit=crop');animation:rhcp-slide-zoom-3 22s ease-in-out infinite;}

/* Each slide has its own drift direction for 360° feel */
@keyframes rhcp-slide-zoom-1{0%{transform:scale(1.00) translate(0,0);}50%{transform:scale(1.14) translate(-2.5%,-1.5%);}100%{transform:scale(1.00) translate(0,0);}}
@keyframes rhcp-slide-zoom-2{0%{transform:scale(1.00) translate(0,0);}50%{transform:scale(1.12) translate(2.5%,-2%);}100%{transform:scale(1.00) translate(0,0);}}
@keyframes rhcp-slide-zoom-3{0%{transform:scale(1.00) translate(0,0);}50%{transform:scale(1.16) translate(-1.5%,2.5%);}100%{transform:scale(1.00) translate(0,0);}}

/* Deep navy overlay — preserves image vibrancy while ensuring readability */
.rhcp-bg-master-overlay{position:fixed;inset:0;z-index:1;background:linear-gradient(160deg,rgba(4,13,30,.38) 0%,rgba(11,29,58,.22) 45%,rgba(4,13,30,.38) 100%);}

/* Floating star particles */
.rhcp-stars{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden;}
.rhcp-star{position:absolute;background:#fff;border-radius:50%;opacity:0;animation:rhcp-star-twinkle var(--dur,3s) ease-in-out infinite;}
@keyframes rhcp-star-twinkle{0%,100%{opacity:0;transform:scale(.6);}50%{opacity:.8;transform:scale(1);}}

/* Gold shimmer line at very top */
.rhcp-auth-page::before{content:'';position:fixed;top:0;left:0;right:0;height:3px;z-index:10;background:linear-gradient(90deg,transparent 0%,var(--gold) 20%,var(--gold3) 50%,var(--gold) 80%,transparent 100%);}

/* ── AUTH PAGE LAYOUT ──────────────────────────────────────── */
/* PAGE WRAPPER — full viewport, no scroll */
.rhcp-auth-page{
  position:relative;z-index:5;
  width:100%;min-height:100vh;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  padding:20px 16px;
  gap:0;
  /* Allow scroll on small phones so nothing is cut off */
}

/* ABOVE-CARD: logo + headline + tagline */
.rhcp-auth-above{
  text-align:center;z-index:6;
  margin-top:0;
  margin-bottom:8px;
  display:flex;flex-direction:column;align-items:center;
}
.rhcp-auth-logo-wrap{
  display:flex;justify-content:center;align-items:center;
  padding-top:16px; /* ensure stars/crescent never clip at top */
  margin-bottom:14px;
  overflow:visible;
}
.rhcp-auth-logo-card{
  display:inline-flex;
}
.rhcp-auth-logo-img{
  width:270px;
  height:auto;
  max-width:75vw;
  display:block;
  animation:none !important;
  filter:
    drop-shadow(0 0 3px rgba(255,255,255,.6))
    drop-shadow(0 4px 16px rgba(0,0,0,.9));
}
.rhcp-auth-headline{
  font-size:1.1rem;font-weight:700;color:#fff;
  text-shadow:0 2px 20px rgba(0,0,0,.9);
  letter-spacing:.02em;margin-bottom:5px;
  line-height:1.3;
}
.rhcp-auth-tagline{
  display:flex;align-items:center;justify-content:center;gap:12px;
  font-size:.78rem;color:rgba(255,255,255,.7);
  letter-spacing:.07em;
  text-shadow:0 1px 8px rgba(0,0,0,.7);
}
.rhcp-tline{
  display:block;width:40px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(212,160,23,.9));
}
.rhcp-tline:last-child{background:linear-gradient(90deg,rgba(212,160,23,.9),transparent);}

/* LOGIN CARD */
.rhcp-auth-container{
  position:relative;z-index:6;
  /* Frosted glass — background image visible through card */
  background:rgba(6,12,30,.38);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(32px) saturate(1.8) brightness(0.9);
  -webkit-backdrop-filter:blur(32px) saturate(1.8) brightness(0.9);
  border-radius:18px;
  padding:20px 24px 18px;
  width:100%;max-width:460px;
  box-sizing:border-box;
  /* Do NOT use overflow:hidden — it kills backdrop-filter in Safari/Chrome */
  overflow:visible;
  box-shadow:
    0 8px 32px rgba(0,0,0,.45),
    0 30px 80px rgba(0,0,0,.35),
    0 0 0 1px rgba(255,255,255,.08) inset;
}

/* Card top section */
.rhcp-auth-card-top{text-align:center;margin-bottom:12px;}
.rhcp-auth-card-title{
  font-family:'Playfair Display',Georgia,serif;
  font-size:1.6rem;font-weight:700;color:#fff;
  letter-spacing:.01em;margin-bottom:8px;
}
.rhcp-auth-card-bar{
  display:block;width:40px;height:2.5px;
  background:linear-gradient(90deg,var(--gold),var(--gold3),var(--gold));
  border-radius:2px;margin:0 auto 10px;
}
.rhcp-auth-subtitle{
  font-size:.84rem;color:rgba(255,255,255,.5);line-height:1.4;
}

/* Alerts */
.rhcp-alert{padding:10px 14px;border-radius:var(--radius-sm);font-size:.84rem;margin-bottom:12px;line-height:1.45;display:flex;align-items:flex-start;gap:8px;}
.rhcp-alert--success{background:rgba(34,197,94,.12);color:#4ade80;border:1px solid rgba(34,197,94,.28);}
.rhcp-alert--error{background:rgba(239,68,68,.12);color:#f87171;border:1px solid rgba(239,68,68,.28);}
.rhcp-alert--warning{background:rgba(245,158,11,.12);color:#fbbf24;border:1px solid rgba(245,158,11,.28);}

/* Fields */
.rhcp-auth-form{display:flex;flex-direction:column;gap:8px;}
.rhcp-field{display:flex;flex-direction:column;gap:6px;}
.rhcp-label{
  font-size:.7rem;font-weight:700;
  color:rgba(255,255,255,.75);
  letter-spacing:.12em;text-transform:uppercase;
}
.rhcp-input-wrap{position:relative;}
.rhcp-input-icon{
  position:absolute;left:15px;top:50%;transform:translateY(-50%);
  width:18px;height:18px;color:rgba(255,255,255,.35);
  pointer-events:none;transition:color var(--ease);
}
/* ═══════════════════════════════════════════════════
   LOGIN INPUTS — solid black, white text
   Works on ALL phones, ALL browsers, ALL conditions
═══════════════════════════════════════════════════ */
.rhcp-input{
  width:100%;
  box-sizing:border-box;
  max-width:100%;
  padding:13px 14px 13px 46px;
  /* SOLID BLACK — no transparency, no tricks */
  background:#000000 !important;
  border:2px solid #ffffff !important;
  border-radius:10px;
  /* WHITE TEXT — forced on every browser/OS */
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-size:16px !important; /* 16px stops iOS auto-zoom */
  font-family:inherit;
  outline:none;
  -webkit-appearance:none;
  appearance:none;
  caret-color:#ffffff !important;
}
.rhcp-input::placeholder{
  color:#aaaaaa !important;
  -webkit-text-fill-color:#aaaaaa !important;
  opacity:1 !important;
}
/* Autofill override — Chrome/Safari fill turns bg yellow/white */
.rhcp-input:-webkit-autofill,
.rhcp-input:-webkit-autofill:hover,
.rhcp-input:-webkit-autofill:focus,
.rhcp-input:-webkit-autofill:active{
  -webkit-box-shadow:0 0 0 100px #000000 inset !important;
  box-shadow:0 0 0 100px #000000 inset !important;
  -webkit-text-fill-color:#ffffff !important;
  background-color:#000000 !important;
  color:#ffffff !important;
  caret-color:#ffffff !important;
}
.rhcp-input:focus{
  background:#000000 !important;
  border-color:#D4A017 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 0 0 3px rgba(212,160,23,.35) !important;
}
/* Mobile: same rules reinforced */
@media (max-width:768px){
  .rhcp-input,
  .rhcp-auth-body .rhcp-input,
  .rhcp-auth-body input[type="text"],
  .rhcp-auth-body input[type="password"],
  .rhcp-auth-body input[type="email"]{
    background:#000000 !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    border:2px solid #ffffff !important;
    font-size:16px !important;
    box-sizing:border-box !important;
    max-width:100% !important;
    caret-color:#ffffff !important;
  }
  .rhcp-auth-container{
    padding:18px 16px 16px !important;
    width:100% !important;
    box-sizing:border-box !important;
  }
  .rhcp-auth-page{
    padding:16px 12px !important;
  }
  .rhcp-input-wrap{
    width:100%;
    box-sizing:border-box;
  }
}
/* Global backstop — targets raw input tags inside the login page on ALL screen sizes */
.rhcp-auth-body input[type="text"],
.rhcp-auth-body input[type="password"],
.rhcp-auth-body input[type="email"]{
  background:#000000 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border:2px solid #ffffff !important;
  caret-color:#ffffff !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}
.rhcp-auth-body input[type="text"]::placeholder,
.rhcp-auth-body input[type="password"]::placeholder,
.rhcp-auth-body input[type="email"]::placeholder{
  color:#aaaaaa !important;
  opacity:1 !important;
}
.rhcp-input-wrap:focus-within .rhcp-input-icon{color:var(--gold);}
.rhcp-toggle-pw{
  position:absolute;right:14px;top:50%;transform:translateY(-50%);
  background:none;border:none;cursor:pointer;
  color:rgba(212,160,23,.65);padding:4px;
  transition:color var(--ease);
}
.rhcp-toggle-pw svg{width:18px;height:18px;display:block;}
.rhcp-toggle-pw:hover{color:var(--gold3);}

/* Remember + Forgot row */
.rhcp-form-row{
  display:flex;justify-content:space-between;align-items:center;
  gap:12px;margin-top:2px;
}
.rhcp-remember{
  display:flex;align-items:center;gap:8px;
  font-size:.86rem;color:rgba(255,255,255,.7);cursor:pointer;
}
.rhcp-remember input{accent-color:var(--gold);width:16px;height:16px;cursor:pointer;}
.rhcp-forgot-link{
  font-size:.86rem;color:var(--gold);
  text-decoration:none;font-weight:600;
  transition:color var(--ease);
}
.rhcp-forgot-link:hover{color:var(--gold3);text-decoration:underline;}

/* SIGN IN BUTTON — full gold like reference */
.rhcp-submit-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  width:100%;padding:15px 20px;
  background:linear-gradient(90deg,#f0a500 0%,#f5c400 35%,#ffd84d 65%,#f0a500 100%);
  background-size:250% 100%;background-position:0% 50%;
  color:#1a1a00;border:none;border-radius:12px;
  font-size:1.02rem;font-weight:800;font-family:inherit;
  cursor:pointer;letter-spacing:.05em;
  transition:background-position .5s ease,transform .15s,box-shadow .15s;
  margin-top:4px;
  box-shadow:0 6px 24px rgba(212,160,23,.45);
}
.rhcp-submit-btn:hover{
  background-position:100% 50%;
  transform:translateY(-2px);
  box-shadow:0 10px 32px rgba(212,160,23,.6);
}
.rhcp-submit-btn:active{transform:translateY(0);}

/* OR divider */
.rhcp-auth-or-divider{
  display:flex;align-items:center;gap:12px;
  margin:6px 0 4px;
  font-size:.78rem;color:rgba(255,255,255,.35);
  letter-spacing:.1em;
}
.rhcp-auth-or-divider::before,
.rhcp-auth-or-divider::after{
  content:'';flex:1;height:1px;
  background:rgba(255,255,255,.12);
}

/* Try Demo button row */
.rhcp-demo-row{
  display:flex;justify-content:center;
  margin-top:10px;
}
.rhcp-demo-btn{
  display:inline-flex;align-items:center;gap:7px;
  padding:9px 20px;
  background:transparent;
  border:1px solid rgba(212,160,23,.35);
  border-radius:8px;
  color:rgba(212,160,23,.9);
  font-size:.84rem;font-weight:600;font-family:inherit;
  cursor:pointer;
  transition:background var(--ease),border-color var(--ease),color var(--ease),transform .15s;
  letter-spacing:.02em;
}
.rhcp-demo-btn svg{flex-shrink:0;fill:currentColor;}
.rhcp-demo-btn:hover{
  background:rgba(212,160,23,.1);
  border-color:rgba(212,160,23,.7);
  color:#f5c400;
  transform:translateY(-1px);
}
.rhcp-demo-btn:active{transform:translateY(0);}

/* BELOW-CARD LINKS */
.rhcp-auth-below-links{
  margin-top:6px;z-index:6;
  display:flex;align-items:center;gap:10px;
  font-size:.75rem;
}
.rhcp-auth-below-links a{color:rgba(255,255,255,.55);text-decoration:none;transition:color var(--ease);}
.rhcp-auth-below-links a:hover{color:var(--gold);}
.rhcp-below-sep{color:rgba(255,255,255,.22);}

/* PLATFORM CREDIT — SaaS branding, always shown on auth pages */
.rhcp-auth-platform-credit{
  margin-top:14px;
  z-index:6;
  display:flex;align-items:center;gap:8px;
  font-size:.7rem;
  color:rgba(255,255,255,.35);
  letter-spacing:.02em;
}
.rhcp-auth-platform-credit strong{color:rgba(255,255,255,.55);font-weight:600;}

/* ── FEATURE STRIP — card footer, 4-column grid ──────────── */
.rhcp-feature-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:16px -30px -18px; /* bleed to card edges */
  border-top:1px solid rgba(255,255,255,.08);
  border-radius:0 0 18px 18px;
  overflow:hidden;
  background:rgba(0,0,0,.18);
}

/* Individual feature cell */
.rhcp-feature-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  padding:14px 8px 14px;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.06);
  transition:background .2s ease, transform .15s ease;
  cursor:default;
}
.rhcp-feature-item:last-child{ border-right:none; }

/* Hover */
.rhcp-feature-item:hover{
  background:rgba(212,160,23,.06);
  transform:translateY(-1px);
}
.rhcp-feature-item:hover .rhcp-feature-icon{
  background:rgba(212,160,23,.2);
  border-color:rgba(212,160,23,.55);
  box-shadow:0 0 14px rgba(212,160,23,.22);
}
.rhcp-feature-item:hover .rhcp-feature-icon svg{
  stroke:#f5c400;
}

/* Gold icon circle — 36×36, perfectly centered */
.rhcp-feature-icon{
  width:36px;
  height:36px;
  min-width:36px;
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(212,160,23,.09);
  border:1.5px solid rgba(212,160,23,.32);
  border-radius:50%;
  box-shadow:0 0 8px rgba(212,160,23,.10);
  transition:background .2s,border-color .2s,box-shadow .2s;
  flex-shrink:0;
}
.rhcp-feature-icon svg{
  display:block;
  width:16px;
  height:16px;
  stroke:#D4A017;
  fill:none;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:stroke .2s;
}

/* Text block below icon */
.rhcp-feature-text{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  min-width:0;
  width:100%;
}
.rhcp-feature-text strong{
  display:block;
  font-size:.65rem;
  font-weight:700;
  color:#fff;
  line-height:1.25;
  letter-spacing:.01em;
  white-space:nowrap;
}
.rhcp-feature-text span{
  display:block;
  font-size:.56rem;
  color:rgba(255,255,255,.45);
  line-height:1.3;
  white-space:nowrap;
}

/* 2×2 on tablet */
@media(max-width:600px){
  .rhcp-feature-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:14px -18px -14px;
  }
  .rhcp-feature-item:nth-child(2){ border-right:none; }
  .rhcp-feature-item:nth-child(3){ border-top:1px solid rgba(255,255,255,.06); }
  .rhcp-feature-item:nth-child(4){ border-top:1px solid rgba(255,255,255,.06); border-right:none; }
  .rhcp-feature-text strong{ font-size:.62rem; }
}
@media(max-width:360px){
  .rhcp-feature-strip{ display:none; }
}
.rhcp-auth-trust-item svg{width:13px;height:13px;stroke:var(--gold);opacity:.65;}

/* ── DASHBOARD WELCOME FLASH */
.rhcp-dashboard-flash{
  display:flex;align-items:center;gap:10px;
  margin:0 0 16px;padding:12px 18px;
  border-radius:10px;font-size:.9rem;font-weight:600;
  animation:rhcp-flash-in .5s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes rhcp-flash-in{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}
.rhcp-dashboard-flash svg{flex-shrink:0;fill:var(--gold);}

/* ── AUTH MOBILE RESPONSIVE */
@media(max-width:520px){
  .rhcp-auth-logo-img{width:210px;}
  .rhcp-auth-container{padding:16px 18px 14px;border-radius:14px;}
  .rhcp-auth-headline{font-size:.98rem;}
  .rhcp-auth-card-title{font-size:1.35rem;}
  .rhcp-submit-btn{padding:13px 16px;font-size:.95rem;}
  .rhcp-feature-item{padding:11px 4px 11px;gap:5px;}
  .rhcp-feature-icon{width:30px;height:30px;min-width:30px;min-height:30px;}
  .rhcp-feature-icon svg{width:14px;height:14px;}
  .rhcp-feature-text strong{font-size:.6rem;}
  .rhcp-feature-text span{font-size:.52rem;}
}
@media(max-width:360px){
  .rhcp-auth-logo-img{width:165px;}
  .rhcp-trust-bar{display:none;}
}

/* ── APP SHELL BODY ─────────────────────────────────────── */
body.rhcp-app-body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;background:var(--bg);color:var(--txt);transition:background var(--ease),color var(--ease);}
.rhcp-app-layout{display:flex;min-height:100vh;}
/* ═══════════════════════════════════════════════
   ACCORDION SIDEBAR — modern SaaS nav
   Fixed 240px sidebar, collapsible groups
   ═══════════════════════════════════════════════ */
:root{--sb-w:240px;}

/* ── Sidebar shell ── */
.rhcp-sidebar{
  width:var(--sb-w);
  background:linear-gradient(180deg,#0b1d3a 0%,#081428 100%);
  display:flex;flex-direction:column;
  position:fixed;top:0;left:0;height:100vh;
  z-index:300;
  border-right:1px solid rgba(255,255,255,.07);
  box-shadow:4px 0 28px rgba(0,0,0,.3);
  overflow:hidden;
  transition:transform .28s cubic-bezier(.4,0,.2,1);
}
.rhcp-sidebar::after{
  content:'';position:absolute;top:0;right:0;width:1px;height:100%;
  background:linear-gradient(180deg,rgba(212,160,23,.5) 0%,transparent 40%,transparent 60%,rgba(212,160,23,.5) 100%);
  pointer-events:none;
}

/* ── Brand header ── */
.rhcp-sb-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 16px 14px;
  border-bottom:1px solid rgba(255,255,255,.07);
  flex-shrink:0;
  gap:10px;
}
.rhcp-sb-logo-link{
  display:flex;align-items:center;gap:10px;
  text-decoration:none;min-width:0;
}
.rhcp-sb-logo-img{
  width:36px;height:36px;border-radius:9px;
  box-shadow:0 2px 10px rgba(212,160,23,.3);flex-shrink:0;
  object-fit:contain;
}
/* Platform admin brand logo — full-width, no crop */
.rhcp-sb-header--platform .rhcp-sb-logo-img{
  width:148px;height:46px;border-radius:6px;
  box-shadow:none;background:transparent;
  object-fit:contain;object-position:left center;
}
.rhcp-sb-header--platform .rhcp-sb-brand{
  display:none; /* logo image already contains brand text */
}
.rhcp-sb-brand{display:flex;flex-direction:column;min-width:0;}
.rhcp-sb-brand-name{
  font-size:.82rem;font-weight:700;color:var(--cm-txt);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.rhcp-sb-brand-tag{
  font-size:.64rem;color:var(--gold);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.rhcp-sb-close{
  background:none;border:none;color:rgba(255,255,255,.4);
  cursor:pointer;font-size:1rem;padding:4px;flex-shrink:0;
  display:none; /* shown only on mobile */
}
.rhcp-sb-close:hover{color:rgba(255,255,255,.8);}

/* ── User pill ── */
.rhcp-sb-user{
  display:flex;align-items:center;gap:10px;
  padding:12px 16px;
  border-bottom:1px solid rgba(255,255,255,.05);
  flex-shrink:0;
}
.rhcp-sb-avatar{
  width:32px;height:32px;border-radius:50%;
  background:linear-gradient(135deg,var(--gold),#b8860b);
  color:var(--navy);display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:.78rem;flex-shrink:0;
  box-shadow:0 2px 8px rgba(212,160,23,.25);
}
.rhcp-sb-userinfo{display:flex;flex-direction:column;min-width:0;}
.rhcp-sb-uname{font-size:.78rem;font-weight:600;color:var(--cm-txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rhcp-sb-urole{font-size:.68rem;color:rgba(200,218,240,.78);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* ── Nav scroll area ── */
.rhcp-sb-nav{
  flex:1;overflow-y:auto;overflow-x:hidden;
  padding:10px 0 6px;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.07) transparent;
}
.rhcp-sb-nav::-webkit-scrollbar{width:3px;}
.rhcp-sb-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.08);border-radius:2px;}

/* ── Solo link (e.g. Dashboard) ── */
.rhcp-sb-link--solo{
  display:flex;align-items:center;gap:10px;
  padding:9px 16px;
  color:rgba(200,218,240,.88);text-decoration:none;
  font-size:.82rem;font-weight:500;
  border-radius:0;
  transition:background .15s,color .15s;
  position:relative;
  margin-bottom:4px;
}
.rhcp-sb-link--solo:hover{background:rgba(255,255,255,.05);color:var(--cm-txt);}
.rhcp-sb-link--solo.rhcp-sb-link--active{
  background:rgba(212,160,23,.12);color:var(--gold);font-weight:600;
}
.rhcp-sb-link--solo.rhcp-sb-link--active::before{
  content:'';position:absolute;left:0;top:20%;bottom:20%;
  width:3px;background:var(--gold);border-radius:0 3px 3px 0;
}

/* ── Group ── */
.rhcp-sb-group{margin-bottom:2px;}

/* Group toggle button */
.rhcp-sb-group-btn{
  display:flex;align-items:center;gap:10px;
  width:100%;padding:9px 14px 9px 16px;
  background:none;border:none;cursor:pointer;
  color:rgba(200,218,240,.82);
  font-size:.78rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;
  transition:background .15s,color .15s;
  position:relative;
}
.rhcp-sb-group-btn:hover{background:rgba(255,255,255,.04);color:rgba(200,218,240,.96);}
.rhcp-sb-group--open .rhcp-sb-group-btn{color:rgba(200,218,240,.96);}

.rhcp-sb-group-icon{
  width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.rhcp-sb-group-icon .rhcp-nav-icon{background:none;width:auto;height:auto;}
.rhcp-sb-group-icon .rhcp-nav-icon svg{width:14px;height:14px;stroke:currentColor;}

.rhcp-sb-group-label{flex:1;text-align:left;}

.rhcp-sb-group-chevron{
  display:flex;align-items:center;justify-content:center;
  width:16px;height:16px;flex-shrink:0;
  transition:transform .22s cubic-bezier(.4,0,.2,1);
  opacity:.5;
}
.rhcp-sb-group--open .rhcp-sb-group-chevron{transform:rotate(180deg);opacity:.8;}

/* Accordion items container — height-based transition */
.rhcp-sb-group-items{
  overflow:hidden;
  max-height:0;
  transition:max-height .26s cubic-bezier(.4,0,.2,1);
}
.rhcp-sb-group--open .rhcp-sb-group-items{
  max-height:800px; /* large enough for any group */
}

/* Nav link inside group */
.rhcp-sb-link{
  display:flex;align-items:center;gap:10px;
  padding:8px 16px 8px 30px; /* indented */
  color:rgba(200,218,240,.84);text-decoration:none;
  font-size:.81rem;font-weight:500;
  transition:background .15s,color .15s;
  position:relative;
}
.rhcp-sb-link:hover{background:rgba(255,255,255,.05);color:#eaf1fb;padding-left:33px;}
.rhcp-sb-link--active{
  color:var(--gold);font-weight:600;
  background:linear-gradient(90deg,rgba(212,160,23,.16) 0%,rgba(212,160,23,.04) 70%,transparent 100%);
}
.rhcp-sb-link--active::before{
  content:'';position:absolute;left:0;top:14%;bottom:14%;
  width:3px;background:linear-gradient(180deg,var(--gold3),var(--gold));border-radius:0 3px 3px 0;
  box-shadow:0 0 10px rgba(212,160,23,.55);
}

/* Icon inside link */
.rhcp-sb-link-icon{
  width:24px;height:24px;border-radius:6px;
  background:rgba(255,255,255,.04);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;transition:background .15s;
}
.rhcp-sb-link-icon .rhcp-nav-icon{background:none;width:auto;height:auto;}
.rhcp-sb-link-icon .rhcp-nav-icon svg{width:13px;height:13px;stroke:currentColor;}
.rhcp-sb-link:hover .rhcp-sb-link-icon{background:rgba(255,255,255,.08);}
.rhcp-sb-link--active .rhcp-sb-link-icon{background:rgba(212,160,23,.15);}
.rhcp-sb-link--active .rhcp-sb-link-icon .rhcp-nav-icon svg{stroke:var(--gold);}

.rhcp-sb-link-text{flex:1;}

/* Badge */
.rhcp-nav-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--gold);color:var(--navy);font-size:.63rem;font-weight:800;display:flex;align-items:center;justify-content:center;}
/* Locked nav items */
.rhcp-sb-link--locked{opacity:.6;}
.rhcp-sb-link--locked .rhcp-sb-link-text{color:#8b949e;}
.rhcp-nav-lock{margin-left:auto;font-size:.7rem;opacity:.7;line-height:1;}

/* Sign out */
.rhcp-sb-logout{
  display:flex;align-items:center;gap:10px;
  padding:12px 16px;
  border-top:1px solid rgba(255,255,255,.06);
  color:rgba(200,218,240,.72);text-decoration:none;
  font-size:.79rem;font-weight:500;
  flex-shrink:0;
  transition:background .15s,color .15s;
}
.rhcp-sb-logout:hover{background:rgba(239,68,68,.08);color:#ef4444;}
.rhcp-sb-logout svg{flex-shrink:0;}

/* Shared icon wrapper (keep for other modules) */
.rhcp-nav-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;background:rgba(255,255,255,.04);flex-shrink:0;transition:background var(--ease);}
.rhcp-nav-icon svg{width:16px;height:16px;stroke:currentColor;flex-shrink:0;}
.rhcp-nav-divider{height:1px;background:rgba(255,255,255,.06);margin:6px 8px 10px;}

/* Overlay (mobile backdrop) */
.rhcp-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:290;backdrop-filter:blur(2px);}

/* TOPBAR */
.rhcp-main-content{flex:1;min-width:0;overflow-x:hidden;margin-left:var(--sb-w);display:flex;flex-direction:column;min-height:100vh;}
.rhcp-topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 28px;gap:16px;position:sticky;top:0;z-index:100;box-shadow:0 1px 10px rgba(0,0,0,.05);transition:background var(--ease),border-color var(--ease);}
.rhcp-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;}
.rhcp-hamburger span{display:block;width:22px;height:2px;background:var(--txt3);border-radius:2px;}
.rhcp-topbar-title{font-size:1.05rem;font-weight:800;color:var(--txt);}
.rhcp-topbar-breadcrumb{font-size:.82rem;color:var(--txt3);display:flex;align-items:center;gap:6px;}
.rhcp-topbar-breadcrumb a{color:var(--txt3);text-decoration:none;transition:color var(--ease);}
.rhcp-topbar-breadcrumb a:hover{color:var(--gold);}
.rhcp-topbar-breadcrumb span{color:var(--txt2);font-weight:700;}
.rhcp-topbar-right{margin-left:auto;display:flex;align-items:center;gap:10px;}
/* ── GLOBAL SEARCH (premium PMS pattern) ──────────────── */
.rhcp-topbar-search{position:relative;margin-left:24px;display:flex;align-items:center;gap:9px;width:min(380px,36vw);height:42px;padding:0 6px 0 14px;background:var(--surface2);border:1px solid var(--border);border-radius:22px;transition:border-color var(--ease),box-shadow var(--ease),background var(--ease);}
.rhcp-topbar-search:hover{border-color:var(--gold-dim);}
.rhcp-topbar-search:focus-within{border-color:var(--gold);background:var(--surface);box-shadow:0 0 0 4px rgba(212,160,23,.16);}
.rhcp-topbar-search-go{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border:none;border-radius:50%;cursor:pointer;background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:var(--navy);transition:transform var(--ease),box-shadow var(--ease);box-shadow:0 2px 8px rgba(212,160,23,.3);}
.rhcp-topbar-search-go svg{width:15px;height:15px;}
.rhcp-topbar-search-go:hover{transform:scale(1.08);box-shadow:0 3px 12px rgba(212,160,23,.5);}
.rhcp-topbar-search-go:active{transform:scale(.95);}
.rhcp-search-suggest{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 50px rgba(8,20,40,.28);padding:6px;z-index:1200;max-height:60vh;overflow-y:auto;animation:rhcp-acct-in .15s ease;}
.rhcp-search-suggest[hidden]{display:none;}
.rhcp-search-group{font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--txt3);padding:9px 12px 4px;}
.rhcp-search-item{display:flex;align-items:center;gap:11px;padding:8px 12px;border-radius:9px;text-decoration:none;color:var(--txt);transition:background var(--ease);}
.rhcp-search-item-ic{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:8px;background:var(--surface2);color:var(--gold);}
.rhcp-search-item-txt{display:flex;flex-direction:column;min-width:0;}
.rhcp-search-item-label{font-size:.83rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rhcp-search-item-sub{font-size:.71rem;color:var(--txt3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px;}
.rhcp-search-item:hover,.rhcp-search-item.is-active{background:var(--surface2);}
.rhcp-search-item:hover .rhcp-search-item-ic,.rhcp-search-item.is-active .rhcp-search-item-ic{background:rgba(212,160,23,.16);}
.rhcp-search-empty{padding:14px 14px;font-size:.8rem;color:var(--txt3);text-align:center;}
.rhcp-topbar-search-ic{display:flex;color:var(--muted);flex-shrink:0;}
.rhcp-topbar-search-ic svg{width:16px;height:16px;}
.rhcp-topbar-search:focus-within .rhcp-topbar-search-ic{color:var(--gold);}
.rhcp-topbar-search-input{flex:1;border:none;background:transparent;outline:none;font-family:inherit;font-size:.85rem;color:var(--txt);min-width:0;}
.rhcp-topbar-search-input::placeholder{color:var(--muted);}
.rhcp-topbar-search-input::-webkit-search-cancel-button{-webkit-appearance:none;}
.rhcp-topbar-search-kbd{flex-shrink:0;font-size:.7rem;font-weight:700;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:1px 7px;line-height:1.4;}
.rhcp-topbar-search:focus-within .rhcp-topbar-search-kbd{display:none;}
@media(max-width:980px){.rhcp-topbar-search{display:none;}}
.rhcp-topbar-time{font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;background:var(--surface2);padding:5px 12px;border-radius:20px;border:1px solid var(--border);letter-spacing:.3px;animation:rhcp-clock-cycle 6s linear infinite;}
/* Color-cycling clock — smooth blink through vibrant hues with a soft glow. */
@keyframes rhcp-clock-cycle{
  0%   {color:#D4A017;border-color:rgba(212,160,23,.45);text-shadow:0 0 8px rgba(212,160,23,.55);}
  20%  {color:#22c55e;border-color:rgba(34,197,94,.45);text-shadow:0 0 8px rgba(34,197,94,.55);}
  40%  {color:#3b82f6;border-color:rgba(59,130,246,.45);text-shadow:0 0 8px rgba(59,130,246,.55);}
  60%  {color:#8b5cf6;border-color:rgba(139,92,246,.45);text-shadow:0 0 8px rgba(139,92,246,.55);}
  80%  {color:#ec4899;border-color:rgba(236,72,153,.45);text-shadow:0 0 8px rgba(236,72,153,.55);}
  100% {color:#D4A017;border-color:rgba(212,160,23,.45);text-shadow:0 0 8px rgba(212,160,23,.55);}
}
@media(prefers-reduced-motion:reduce){
  .rhcp-topbar-time{animation:none;color:var(--muted);text-shadow:none;border-color:var(--border);}
}
.rhcp-theme-toggle{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--txt3);transition:background var(--ease),color var(--ease),border-color var(--ease);}
.rhcp-theme-toggle svg{width:16px;height:16px;}
.rhcp-theme-toggle:hover{background:var(--gold);color:var(--navy);border-color:var(--gold);}
.rhcp-topbar-bell{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--txt3);transition:background var(--ease),color var(--ease);position:relative;}
.rhcp-topbar-bell svg{width:16px;height:16px;}
.rhcp-topbar-bell:hover{background:var(--navy);color:#fff;border-color:var(--navy);}
.rhcp-bell-dot{position:absolute;top:7px;right:7px;width:7px;height:7px;background:var(--red);border-radius:50%;border:2px solid var(--surface);}
.rhcp-topbar-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.78rem;cursor:pointer;box-shadow:0 2px 8px rgba(212,160,23,.25);transition:transform var(--ease);}
.rhcp-topbar-avatar:hover{transform:scale(1.08);}
/* ══ ACCOUNT MENU (avatar dropdown) ══ */
.rhcp-acct-wrap{position:relative;display:inline-flex;}
.rhcp-acct-btn{border:none;padding:0;font-family:inherit;outline:none;}
.rhcp-acct-btn:focus-visible{box-shadow:0 0 0 3px rgba(212,160,23,.45);}
.rhcp-acct-wrap--open .rhcp-acct-btn{transform:scale(1.08);box-shadow:0 0 0 3px rgba(212,160,23,.35);}
.rhcp-acct-dropdown{position:absolute;top:calc(100% + 10px);right:0;min-width:236px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 50px rgba(8,20,40,.28);padding:6px;z-index:1200;animation:rhcp-acct-in .16s ease;}
.rhcp-acct-dropdown[hidden]{display:none;}
@keyframes rhcp-acct-in{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}
@media(prefers-reduced-motion:reduce){.rhcp-acct-dropdown{animation:none;}}
.rhcp-acct-head{display:flex;align-items:center;gap:11px;padding:10px 12px 12px;border-bottom:1px solid var(--border);margin-bottom:6px;}
.rhcp-acct-head-avatar{width:38px;height:38px;flex-shrink:0;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:var(--navy);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.8rem;}
.rhcp-acct-head-meta{display:flex;flex-direction:column;min-width:0;}
.rhcp-acct-head-name{font-weight:700;font-size:.84rem;color:var(--txt);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rhcp-acct-head-role{font-size:.7rem;color:var(--txt3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rhcp-acct-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;color:var(--txt2);font-size:.82rem;font-weight:600;text-decoration:none;transition:background var(--ease),color var(--ease);}
.rhcp-acct-item svg{flex-shrink:0;color:var(--txt3);transition:color var(--ease);}
.rhcp-acct-item:hover{background:var(--surface2);color:var(--txt);}
.rhcp-acct-item:hover svg{color:var(--gold);}
.rhcp-acct-sep{height:1px;background:var(--border);margin:6px 4px;}
.rhcp-acct-item--logout{color:#dc2626;}
.rhcp-acct-item--logout svg{color:#dc2626;}
.rhcp-acct-item--logout:hover{background:rgba(220,38,38,.1);color:#dc2626;}
.rhcp-acct-item--logout:hover svg{color:#dc2626;}
[data-theme="dark"] .rhcp-acct-item--logout{color:#f87171;}
[data-theme="dark"] .rhcp-acct-item--logout svg{color:#f87171;}
[data-theme="dark"] .rhcp-acct-item--logout:hover{background:rgba(248,113,113,.14);color:#fca5a5;}
/* ══ FRONT DESK + MANAGER FLASH (Phase 1) ══ */
.rhcp-fd-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;}
.rhcp-fd-kpi{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:14px;background:var(--surface);border:1px solid var(--border);position:relative;overflow:hidden;}
.rhcp-fd-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold);}
.rhcp-fd-kpi--arrivals::before{background:#22c55e;}
.rhcp-fd-kpi--departures::before{background:#3b82f6;}
.rhcp-fd-kpi--inhouse::before{background:#8b5cf6;}
.rhcp-fd-kpi--occ::before{background:var(--gold);}
.rhcp-fd-kpi-num{font-size:1.6rem;font-weight:800;color:var(--txt);line-height:1;}
.rhcp-fd-kpi-lbl{font-size:.76rem;color:var(--txt3);font-weight:600;}
.rhcp-fd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.rhcp-fd-col .rhcp-card-header{display:flex;align-items:center;justify-content:space-between;}
.rhcp-fd-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:var(--surface2);color:var(--txt2);font-size:.74rem;font-weight:800;margin-left:6px;}
.rhcp-fd-list{display:flex;flex-direction:column;}
.rhcp-fd-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 4px;border-bottom:1px solid var(--border);}
.rhcp-fd-item:last-child{border-bottom:none;}
.rhcp-fd-item-main{display:flex;flex-direction:column;min-width:0;}
.rhcp-fd-item-name{font-weight:700;font-size:.86rem;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rhcp-fd-item-meta{font-size:.74rem;color:var(--txt3);margin-top:2px;}
.rhcp-fd-item-side{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.rhcp-btn--xs{padding:4px 10px;font-size:.74rem;}
.rhcp-fd-empty{padding:22px 4px;text-align:center;color:var(--txt3);font-size:.82rem;}
/* Manager Flash */
.rhcp-mf-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px;}
.rhcp-mf-metric{padding:20px;border-radius:16px;background:linear-gradient(135deg,var(--surface),var(--surface2));border:1px solid var(--border);display:flex;flex-direction:column;gap:6px;}
.rhcp-mf-metric-lbl{font-size:.78rem;font-weight:700;color:var(--txt3);text-transform:uppercase;letter-spacing:.04em;}
.rhcp-mf-metric-lbl small{font-weight:500;text-transform:none;letter-spacing:0;}
.rhcp-mf-metric-val{font-size:2rem;font-weight:800;color:var(--gold);line-height:1;}
.rhcp-mf-metric-sub{font-size:.74rem;color:var(--txt3);}
.rhcp-mf-bar{height:6px;border-radius:3px;background:var(--surface2);overflow:hidden;margin-top:4px;}
.rhcp-mf-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-dim));border-radius:3px;}
.rhcp-mf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.rhcp-mf-list{list-style:none;margin:0;padding:0;}
.rhcp-mf-list li{display:flex;align-items:center;justify-content:space-between;padding:11px 2px;border-bottom:1px solid var(--border);font-size:.86rem;color:var(--txt2);}
.rhcp-mf-list li:last-child{border-bottom:none;}
.rhcp-mf-list li strong{color:var(--txt);font-weight:800;}
.rhcp-mf-list-warn strong{color:#dc2626;}
[data-theme="dark"] .rhcp-mf-list-warn strong{color:#f87171;}
@media(max-width:980px){.rhcp-fd-kpis{grid-template-columns:repeat(2,1fr);}.rhcp-fd-grid,.rhcp-mf-grid,.rhcp-mf-metrics{grid-template-columns:1fr;}}
/* ══ RATE MANAGER (Phase 2) ══ */
.rhcp-rate-legend{font-size:.74rem;color:var(--txt3);display:flex;gap:12px;}
.rhcp-rate-legend .rhcp-rate-up{color:#16a34a;font-weight:700;}
.rhcp-rate-legend .rhcp-rate-down{color:#dc2626;font-weight:700;}
.rhcp-rate-matrix th{text-align:center;font-size:.72rem;white-space:nowrap;}
.rhcp-rate-matrix th span{display:block;font-weight:700;}
.rhcp-rate-matrix th small{display:block;color:var(--txt3);font-weight:500;}
.rhcp-rate-matrix td{text-align:center;font-variant-numeric:tabular-nums;}
.rhcp-rate-matrix td:first-child,.rhcp-rate-rack{text-align:left;}
.rhcp-rate-rack{color:var(--txt3);font-weight:600;}
.rhcp-rate-cell{font-weight:700;color:var(--txt2);}
.rhcp-rate-cell.rhcp-rate-up{color:#16a34a;background:rgba(34,197,94,.08);}
.rhcp-rate-cell.rhcp-rate-down{color:#dc2626;background:rgba(220,38,38,.08);}
[data-theme="dark"] .rhcp-rate-cell.rhcp-rate-up{color:#4ade80;background:rgba(34,197,94,.14);}
[data-theme="dark"] .rhcp-rate-cell.rhcp-rate-down{color:#f87171;background:rgba(248,113,113,.14);}
.rhcp-rate-dow{display:flex;gap:8px;flex-wrap:wrap;}
.rhcp-rate-dow-chip{position:relative;cursor:pointer;user-select:none;}
.rhcp-rate-dow-chip input{position:absolute;opacity:0;width:0;height:0;}
.rhcp-rate-dow-chip span{display:inline-block;padding:7px 14px;border-radius:9px;border:1.5px solid var(--border);background:var(--surface);font-size:.8rem;font-weight:600;color:var(--txt2);transition:all .15s;}
.rhcp-rate-dow-chip input:checked+span{background:var(--gold);border-color:var(--gold);color:#1a1f2e;}
.rhcp-rate-dow-chip input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px;}
.rhcp-btn--danger{background:#dc2626;color:#fff;border:none;}
.rhcp-btn--danger:hover{background:#b91c1c;}
@media(max-width:760px){.rhcp-rate-matrix{font-size:.72rem;}}
@media(prefers-reduced-motion:reduce){.rhcp-rate-dow-chip span{transition:none;}}
/* ══ PAYMENTS / CARDS ON FILE (Phase 2) ══ */
.rhcp-pay-picker .rhcp-input{max-width:380px;}
.rhcp-pay-notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.25);color:var(--txt2);font-size:.82rem;line-height:1.5;margin-bottom:16px;}
.rhcp-pay-notice svg{color:#16a34a;flex-shrink:0;margin-top:1px;}
[data-theme="dark"] .rhcp-pay-notice{background:rgba(34,197,94,.12);}
.rhcp-pay-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;}
.rhcp-pay-card{padding:18px;border-radius:16px;background:linear-gradient(135deg,#1f2638,#2b3450);color:#fff;border:1px solid var(--border);box-shadow:0 4px 14px rgba(0,0,0,.18);}
.rhcp-pay-card-top{display:flex;align-items:center;justify-content:space-between;}
.rhcp-pay-brand{font-weight:800;letter-spacing:.03em;color:var(--gold);}
.rhcp-pay-num{font-size:1.15rem;letter-spacing:.08em;margin:16px 0 12px;font-variant-numeric:tabular-nums;}
.rhcp-pay-card-bot{display:flex;justify-content:space-between;font-size:.78rem;color:#c7cfde;text-transform:uppercase;letter-spacing:.04em;}
.rhcp-pay-gw{margin-top:10px;font-size:.7rem;color:#9aa6bd;}
.rhcp-pay-gw code{background:rgba(255,255,255,.08);padding:1px 5px;border-radius:5px;color:#c7cfde;}
.rhcp-check{display:inline-flex;gap:8px;align-items:center;font-size:.85rem;color:var(--txt2);cursor:pointer;}
@media(max-width:760px){.rhcp-pay-cards{grid-template-columns:1fr;}}
/* ══ ONLINE CHECK-IN PUBLIC PAGE (Phase 3) ══ */
.rhcp-checkin-body{margin:0;background:linear-gradient(135deg,#0f1320,#1b2336 60%,#0f1320);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:#e8ecf3;padding:28px 16px;}
.rhcp-checkin-wrap{max-width:680px;margin:0 auto;}
.rhcp-checkin-card{background:#fff;color:#1c2433;border-radius:20px;padding:30px;box-shadow:0 18px 50px rgba(0,0,0,.35);}
.rhcp-checkin-head{text-align:center;margin-bottom:22px;}
.rhcp-checkin-badge{display:inline-block;padding:5px 14px;border-radius:20px;background:rgba(212,175,55,.16);color:#9a7b1f;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;}
.rhcp-checkin-head h1{margin:0 0 6px;font-size:1.6rem;color:#11192b;}
.rhcp-checkin-head p{margin:0;color:#5b6678;font-size:.92rem;}
.rhcp-checkin-stayline{display:flex;justify-content:space-around;gap:12px;background:#f5f7fb;border-radius:14px;padding:16px;margin-bottom:22px;text-align:center;flex-wrap:wrap;}
.rhcp-checkin-stayline span{display:flex;flex-direction:column;gap:2px;}
.rhcp-checkin-stayline strong{font-size:1rem;color:#11192b;}
.rhcp-checkin-stayline small{font-size:.7rem;color:#7a8699;text-transform:uppercase;letter-spacing:.05em;}
.rhcp-checkin-section{margin:22px 0 10px;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#9aa3b5;border-bottom:1px solid #eef1f6;padding-bottom:6px;}
.rhcp-checkin-body .rhcp-checkin-form .rhcp-input{background:#fff !important;border:1.5px solid #d8deea !important;color:#1c2433 !important;border-radius:10px !important;padding:12px 14px !important;width:100% !important;}
.rhcp-checkin-body .rhcp-checkin-form .rhcp-input::placeholder{color:#9aa7bb !important;}
.rhcp-checkin-body .rhcp-checkin-form .rhcp-input:focus{border-color:#d4af37 !important;outline:none;box-shadow:0 0 0 3px rgba(212,175,55,.18) !important;}
.rhcp-checkin-body .rhcp-checkin-form .rhcp-label{color:#404b5f !important;font-weight:600;font-size:.82rem;}
.rhcp-checkin-body .rhcp-checkin-form .rhcp-label small{color:#7a8699 !important;font-weight:400;}
.rhcp-checkin-form .rhcp-check{color:#404b5f;font-size:.86rem;align-items:flex-start;}
.rhcp-checkin-sign{font-family:'Brush Script MT','Segoe Script',cursive;font-size:1.3rem;}
.rhcp-checkin-submit{width:100%;justify-content:center;margin-top:4px;font-size:1rem;padding:14px;}
.rhcp-checkin-msg{text-align:center;}
.rhcp-checkin-msg h1{font-size:1.5rem;margin:8px 0;color:#11192b;}
.rhcp-checkin-msg p{color:#5b6678;}
.rhcp-checkin-tick{width:64px;height:64px;margin:0 auto 6px;border-radius:50%;background:#16a34a;color:#fff;font-size:2rem;display:flex;align-items:center;justify-content:center;}
.rhcp-checkin-foot{text-align:center;color:#7e8aa3;font-size:.76rem;margin-top:18px;}
.rhcp-fd-ci{font-size:.6rem !important;padding:2px 7px !important;}
.rhcp-fd-cilink{padding:4px 9px;font-size:.7rem;}

/* SECURITY CENTER (2FA + sessions) */
.rhcp-sec-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;}
@media(max-width:920px){.rhcp-sec-grid{grid-template-columns:1fr;}}
.rhcp-sec-statuschip{font-size:.78rem;font-weight:700;padding:7px 14px;border-radius:999px;letter-spacing:.02em;}
.rhcp-sec-statuschip.is-on{background:rgba(39,174,96,.14);color:#1e8a4d;border:1px solid rgba(39,174,96,.35);}
.rhcp-sec-statuschip.is-off{background:var(--surface2);color:var(--txt3);border:1px solid var(--border);}
.rhcp-sec-card{padding:24px;}
.rhcp-sec-lead{color:var(--txt2);line-height:1.6;font-size:.92rem;margin:.4rem 0 1rem;}
.rhcp-sec-steps{margin:0 0 18px;padding-left:18px;color:var(--txt2);line-height:1.7;font-size:.9rem;}
.rhcp-sec-steps li{margin-bottom:6px;}.rhcp-sec-steps strong{color:var(--txt);}
.rhcp-sec-enroll{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:18px;margin-bottom:18px;}
.rhcp-sec-deeplink{display:inline-flex;margin-bottom:14px;}
.rhcp-sec-key-lbl{display:block;font-size:.8rem;color:var(--txt3);margin-bottom:6px;}
.rhcp-sec-keyrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.rhcp-sec-key-val{font-family:ui-monospace,'SF Mono',Menlo,monospace;font-size:1rem;letter-spacing:.08em;background:var(--surface);border:1px dashed var(--gold);color:var(--gold);padding:8px 12px;border-radius:8px;}
.rhcp-sec-key-hint{display:block;font-size:.74rem;color:var(--txt3);margin-top:8px;}
.rhcp-sec-form{margin-top:4px;}
.rhcp-sec-coderow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px;}
.rhcp-sec-codeinput{max-width:180px;font-family:ui-monospace,monospace;font-size:1.25rem;letter-spacing:.35em;text-align:center;}
.rhcp-sec-hint{font-size:.8rem;color:var(--txt3);margin:.2rem 0 .4rem;}
.rhcp-sec-disable{margin-top:18px;border-top:1px solid var(--border);padding-top:16px;}
.rhcp-sec-recovery{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:16px;}
.rhcp-sec-recovery--fresh{border-color:var(--gold);background:rgba(212,175,55,.08);}
.rhcp-sec-recovery-head{font-weight:700;color:var(--txt);margin-bottom:6px;}
.rhcp-sec-recovery p{font-size:.86rem;color:var(--txt2);line-height:1.6;margin:0 0 10px;}
.rhcp-sec-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.rhcp-sec-codes code{font-family:ui-monospace,monospace;font-size:.95rem;letter-spacing:.06em;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:7px 10px;text-align:center;color:var(--txt);}
.rhcp-sec-count{background:var(--surface2);border:1px solid var(--border);color:var(--txt2);font-size:.78rem;font-weight:700;padding:2px 10px;border-radius:999px;}
.rhcp-sec-sessions{list-style:none;margin:0 0 16px;padding:0;}
.rhcp-sec-session{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);}
.rhcp-sec-session:last-child{border-bottom:none;}
.rhcp-sec-session-dev{display:block;font-weight:600;color:var(--txt);font-size:.92rem;}
.rhcp-sec-session-meta{display:block;font-size:.78rem;color:var(--txt3);margin-top:2px;}
.rhcp-sec-empty{color:var(--txt3);font-size:.88rem;padding:8px 0;}
@media(max-width:560px){.rhcp-checkin-card{padding:22px 18px;}}
/* NOTIFICATION BELL DROPDOWN */
.rhcp-bell-wrap{position:relative;}
.rhcp-bell-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--txt3);transition:background var(--ease),color var(--ease);position:relative;}
.rhcp-bell-btn svg{width:16px;height:16px;}
.rhcp-bell-btn:hover{background:var(--navy);color:#fff;border-color:var(--navy);}
.rhcp-bell-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;background:#ef4444;border-radius:20px;color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--surface);line-height:1;}
.rhcp-bell-badge--hidden{display:none;}
.rhcp-bell-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:320px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.18);z-index:9999;overflow:hidden;animation:rhcpDropIn .15s ease;}
@keyframes rhcpDropIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.rhcp-bell-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);font-size:.82rem;font-weight:700;color:var(--txt);}
.rhcp-bell-mark-all{background:none;border:none;color:var(--gold);cursor:pointer;font-size:.78rem;font-weight:700;padding:0;}
.rhcp-bell-list{max-height:300px;overflow-y:auto;}
.rhcp-bell-empty{padding:24px 16px;text-align:center;color:var(--muted);font-size:.85rem;}
.rhcp-bell-item{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border);text-decoration:none;transition:background var(--ease);}
.rhcp-bell-item:hover{background:var(--surface2);}
.rhcp-bell-item--unread{background:rgba(212,160,23,.06);border-left:3px solid var(--gold);}
.rhcp-bell-item-icon{font-size:18px;flex-shrink:0;margin-top:2px;}
.rhcp-bell-item-body{flex:1;min-width:0;}
.rhcp-bell-item-title{font-size:.82rem;font-weight:700;color:var(--txt);line-height:1.3;}
.rhcp-bell-item-msg{font-size:.76rem;color:var(--muted);margin-top:2px;line-height:1.4;}
.rhcp-bell-item-age{font-size:.72rem;color:var(--muted);margin-top:4px;}
.rhcp-bell-footer{padding:10px 16px;text-align:center;border-top:1px solid var(--border);}
.rhcp-bell-footer a{font-size:.78rem;color:var(--gold);text-decoration:none;font-weight:600;}
/* STATS ROW (HK summary strip) */
.rhcp-stats-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;}
.rhcp-stat-pill{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--surface);border:1px solid var(--border);border-radius:8px;font-size:.82rem;}
.rhcp-stat-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;}
.rhcp-stat-pill span:last-of-type{color:var(--txt3);font-size:.80rem;}
.rhcp-stat-pill strong{font-weight:800;color:var(--txt);font-size:.95rem;margin-left:4px;}
/* WELCOME BANNER */
.rhcp-welcome-banner{position:relative;overflow:hidden;height:200px;background:linear-gradient(135deg,#071428 0%,#0e2248 100%);}
.rhcp-welcome-banner-img{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1566073771259-6a8506099945?w=1400&q=70&auto=format&fit=crop');background-size:cover;background-position:center 40%;opacity:.22;}
.rhcp-welcome-banner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,20,40,.98) 0%,rgba(11,29,58,.92) 50%,rgba(11,29,58,.70) 100%);}
.rhcp-welcome-banner-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 32px;}
.rhcp-welcome-left{display:flex;align-items:center;gap:20px;}
.rhcp-welcome-hotel-logo{width:64px;height:64px;border-radius:16px;background:rgba(212,160,23,.15);border:2px solid rgba(212,160,23,.3);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 8px 24px rgba(0,0,0,.25);}
.rhcp-welcome-hotel-logo img{width:44px;height:44px;border-radius:10px;object-fit:contain;}
.rhcp-welcome-greeting{font-size:.75rem;color:rgba(255,255,255,.82);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-weight:600;}
.rhcp-welcome-name{font-family:'Playfair Display',Georgia,serif;font-size:1.75rem;font-weight:800;color:#fff;line-height:1.2;margin-bottom:6px;text-shadow:0 2px 8px rgba(0,0,0,.4);}
.rhcp-welcome-name span{color:var(--gold3);}
.rhcp-welcome-sub{font-size:.84rem;color:rgba(255,255,255,.78);display:flex;align-items:center;gap:8px;font-weight:500;}
.rhcp-welcome-sub-dot{width:4px;height:4px;background:var(--gold);border-radius:50%;}
.rhcp-welcome-stats-quick{display:flex;gap:28px;}
.rhcp-welcome-stat{text-align:center;}
.rhcp-welcome-stat-value{font-size:1.55rem;font-weight:800;color:var(--gold);font-family:'Playfair Display',Georgia,serif;}
.rhcp-welcome-stat-label{font-size:.7rem;color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-weight:600;}
/* CONTENT */
.rhcp-content-area{padding:28px;flex:1;transition:background var(--ease);}
.rhcp-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap;}
.rhcp-page-title{font-size:1.6rem;font-weight:800;color:var(--txt);margin-bottom:6px;letter-spacing:-.02em;}
.rhcp-page-subtitle{font-size:.88rem;color:var(--txt3);font-weight:500;}
/* KPI CARDS */
.rhcp-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:24px;}
.rhcp-kpi-grid--4{grid-template-columns:repeat(4,1fr);}
.rhcp-kpi-card{background:var(--surface);border-radius:var(--radius);padding:22px 20px;display:flex;gap:16px;align-items:flex-start;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);position:relative;overflow:hidden;}
.rhcp-kpi-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--kpi-color,var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.4,0,.2,1);}
.rhcp-kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--kpi-color,var(--gold));}
.rhcp-kpi-card:hover::after{transform:scaleX(1);}
.rhcp-kpi-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--ease);}
.rhcp-kpi-card:hover .rhcp-kpi-icon{transform:scale(1.08) rotate(-4deg);}
.rhcp-kpi-icon svg{width:22px;height:22px;}
.rhcp-kpi-label{font-size:.72rem;color:var(--txt3);text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin-bottom:7px;}
.rhcp-kpi-value{font-size:1.9rem;font-weight:800;color:var(--txt);line-height:1;margin-bottom:5px;letter-spacing:-.02em;font-variant-numeric:tabular-nums;}
.rhcp-kpi-sub{font-size:.78rem;color:var(--txt3);}
.rhcp-kpi-trend{font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:4px;display:inline-block;margin-top:3px;}
.rhcp-kpi-trend--up{background:rgba(22,163,74,.12);color:var(--green);font-weight:700;}
.rhcp-kpi-trend--down{background:rgba(220,38,38,.10);color:var(--red);font-weight:700;}

/* ── KPI / HEADER PREMIUM REFINEMENT (navy/gold) ───────────── */
.rhcp-page-header{margin-bottom:30px;}
.rhcp-page-title{position:relative;font-size:1.7rem;padding-bottom:10px;}
.rhcp-page-title::after{content:'';position:absolute;left:0;bottom:0;width:44px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--gold),var(--gold3));}
.rhcp-page-subtitle{margin-top:4px;}
.rhcp-kpi-grid{gap:18px;}
.rhcp-kpi-card{padding:24px 22px;border-radius:var(--radius-lg);align-items:center;background:linear-gradient(160deg,var(--surface) 0%,var(--surface2) 140%);}
.rhcp-kpi-card::before{content:'';position:absolute;inset:0;background:radial-gradient(120% 120% at 100% 0%,color-mix(in srgb,var(--kpi-color,var(--gold)) 9%,transparent) 0%,transparent 60%);opacity:0;transition:opacity var(--ease);pointer-events:none;}
.rhcp-kpi-card:hover{transform:translateY(-5px);}
.rhcp-kpi-card:hover::before{opacity:1;}
.rhcp-kpi-icon{width:52px;height:52px;border-radius:14px;background:color-mix(in srgb,var(--kpi-color,var(--gold)) 14%,var(--surface));color:var(--kpi-color,var(--gold));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--kpi-color,var(--gold)) 22%,transparent);}
.rhcp-kpi-card:hover .rhcp-kpi-icon{transform:scale(1.06) rotate(-3deg);}
.rhcp-kpi-value{font-size:2.05rem;}
/* DASHBOARD GRID */
.rhcp-dashboard-grid{display:grid;grid-template-columns:1fr 340px;gap:20px;margin-bottom:20px;}
.rhcp-dashboard-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:26px;margin-bottom:20px;transition:background var(--ease),border-color var(--ease),box-shadow var(--ease);}
.rhcp-dashboard-card:hover{box-shadow:var(--shadow);}
.rhcp-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border);}
.rhcp-card-header h3{font-size:1.02rem;font-weight:700;color:var(--txt);letter-spacing:-.01em;display:flex;align-items:center;gap:9px;}
.rhcp-card-header h3::before{content:'';width:4px;height:16px;border-radius:3px;background:linear-gradient(180deg,var(--gold3),var(--gold));flex-shrink:0;}
.rhcp-card-link{font-size:.78rem;color:var(--gold);text-decoration:none;font-weight:600;transition:color var(--ease);}
.rhcp-card-link:hover{color:var(--gold3);}
/* TABLES */
.rhcp-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);}
/* ── PREMIUM TABLE REFINEMENT ──────────────────── */
.rhcp-dashboard-card .rhcp-table-wrap{border:none;border-radius:0;}
.rhcp-table th{position:sticky;top:0;background:var(--surface2);border-bottom:1px solid var(--border2);}
.rhcp-table td{padding:15px 16px;}
.rhcp-table th{padding:13px 16px;}
.rhcp-table tbody tr{position:relative;}
.rhcp-table tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--gold);}
.rhcp-table{width:100%;border-collapse:collapse;font-size:.855rem;}
.rhcp-table th{text-align:left;padding:12px 14px;font-size:.72rem;font-weight:700;color:var(--txt3);text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--border2);background:var(--surface2);white-space:nowrap;}
.rhcp-table td{padding:13px 14px;border-bottom:1px solid var(--border);color:var(--txt);vertical-align:middle;font-size:.875rem;}
.rhcp-table tr:last-child td{border-bottom:none;}
.rhcp-table tbody tr{transition:background var(--ease);}
.rhcp-table tbody tr:hover td{background:var(--surface2);}
/* BADGES */
.rhcp-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:.68rem;font-weight:700;letter-spacing:.04em;white-space:nowrap;}
/* BUTTONS */
.rhcp-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:var(--radius-sm);font-size:.855rem;font-weight:700;font-family:inherit;text-decoration:none;cursor:pointer;transition:transform var(--ease),box-shadow var(--ease),background var(--ease);border:2px solid transparent;white-space:nowrap;}
.rhcp-btn--gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy);border-color:transparent;}
.rhcp-btn--gold:hover{transform:translateY(-2px);box-shadow:var(--shadow-gold);}
.rhcp-btn--outline{background:transparent;color:var(--txt);border-color:var(--border2);}
.rhcp-btn--outline:hover{background:var(--navy);color:#fff;border-color:var(--navy);}
.rhcp-btn:active{transform:translateY(0)!important;}
/* ── PREMIUM BUTTON REFINEMENT (navy/gold) ──────────── */
.rhcp-btn{position:relative;overflow:hidden;padding:11px 24px;border-radius:10px;letter-spacing:.01em;}
.rhcp-btn::after{content:'';position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-18deg);transition:left .6s cubic-bezier(.4,0,.2,1);pointer-events:none;}
.rhcp-btn:hover::after{left:140%;}
.rhcp-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(212,160,23,.35);}
.rhcp-btn--gold{background:linear-gradient(135deg,var(--gold3) 0%,var(--gold) 45%,var(--gold-dim) 100%);box-shadow:0 2px 10px rgba(212,160,23,.28),inset 0 1px 0 rgba(255,255,255,.35);}
.rhcp-btn--gold:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(212,160,23,.42),inset 0 1px 0 rgba(255,255,255,.4);}
.rhcp-btn--outline{background:var(--surface);box-shadow:var(--shadow-sm);}
.rhcp-btn--outline:hover{transform:translateY(-2px);box-shadow:var(--shadow);}
.rhcp-action-btn{display:inline-flex;align-items:center;padding:5px 11px;border-radius:6px;font-size:.72rem;font-weight:700;cursor:pointer;border:1px solid transparent;text-decoration:none;font-family:inherit;transition:opacity var(--ease),transform var(--ease);margin-right:4px;white-space:nowrap;}
.rhcp-action-btn--edit{background:rgba(59,130,246,.10);color:var(--blue);border-color:rgba(59,130,246,.22);}
.rhcp-action-btn--delete{background:rgba(239,68,68,.10);color:var(--red);border-color:rgba(239,68,68,.20);}
.rhcp-action-btn--checkin{background:rgba(34,197,94,.10);color:var(--green);border-color:rgba(34,197,94,.22);}
.rhcp-action-btn--print{background:rgba(212,160,23,.10);color:#D4A017;border-color:rgba(212,160,23,.28);}
.rhcp-action-btn--print:hover{background:rgba(212,160,23,.20);color:#f5c400;}
/* Export bar */
.rhcp-export-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.rhcp-btn--export{
  display:inline-flex;align-items:center;gap:5px;
  padding:7px 14px;
  background:rgba(212,160,23,.08);
  border:1px solid rgba(212,160,23,.28);
  border-radius:8px;
  color:rgba(212,160,23,.95);
  font-size:.8rem;font-weight:600;font-family:inherit;
  text-decoration:none;cursor:pointer;
  transition:background .18s,border-color .18s,color .18s,transform .15s;
  white-space:nowrap;
}
.rhcp-btn--export:hover{
  background:rgba(212,160,23,.18);
  border-color:rgba(212,160,23,.55);
  color:#f5c400;
  transform:translateY(-1px);
}
.rhcp-action-btn--checkout{background:rgba(245,158,11,.10);color:var(--amber);border-color:rgba(245,158,11,.22);}
.rhcp-action-btn:hover{opacity:.78;transform:translateY(-1px);}
.rhcp-actions-cell{white-space:nowrap;}
/* FORMS */
.rhcp-form-card{background:var(--surface);border-radius:var(--radius);padding:30px;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:background var(--ease),border-color var(--ease);}
.rhcp-form-card-title{font-size:1rem;font-weight:700;margin-bottom:22px;color:var(--txt);}
.rhcp-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 24px;margin-bottom:24px;}
.rhcp-field--full{grid-column:1/-1;}
.rhcp-form-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid var(--border);}
.rhcp-app-body .rhcp-label{font-size:.73rem;font-weight:700;color:var(--txt2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;display:block;}
.rhcp-app-body .rhcp-input{width:100%;padding:12px 15px;background:var(--surface2);border:1px solid var(--border);border-radius:10px;color:var(--txt);font-size:.9rem;font-family:inherit;outline:none;transition:border-color var(--ease),box-shadow var(--ease),background var(--ease);}
.rhcp-app-body .rhcp-input:hover{border-color:var(--border2);}
.rhcp-app-body .rhcp-input:focus{border-color:var(--gold);background:var(--surface);box-shadow:0 0 0 3px rgba(212,160,23,.13);}
.rhcp-app-body select.rhcp-input,.rhcp-app-body textarea.rhcp-input{border-radius:10px;}
.rhcp-app-body .rhcp-input:focus{border-color:var(--gold);}
.rhcp-textarea{resize:vertical;min-height:80px;}
.rhcp-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
/* STATS PILLS */
.rhcp-stats-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;}
.rhcp-stat-pill{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:30px;border:1px solid;font-size:.82rem;color:var(--txt2);background:var(--surface);transition:transform var(--ease),box-shadow var(--ease);}
.rhcp-stat-pill:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);}
.rhcp-stat-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.rhcp-stat-pill strong{font-weight:800;color:var(--txt);margin-left:2px;}
/* MISC */
.rhcp-hk-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border);}
.rhcp-hk-row:last-child{border-bottom:none;}
.rhcp-hk-info{display:flex;flex-direction:column;gap:2px;}
.rhcp-hk-info strong{font-size:.875rem;color:var(--txt);}
.rhcp-hk-info span{font-size:.76rem;color:var(--txt3);}
.rhcp-room-status-wrap .rhcp-status-row{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.rhcp-status-label{font-size:.8rem;font-weight:600;color:var(--txt2);width:100px;flex-shrink:0;}
.rhcp-status-bar-track{flex:1;height:8px;background:var(--border);border-radius:4px;overflow:hidden;}
.rhcp-status-bar-fill{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1);}
.rhcp-status-count{font-size:.75rem;color:var(--muted);width:80px;text-align:right;font-weight:600;}
.rhcp-staff-name-cell{display:flex;align-items:center;gap:10px;}
.rhcp-mini-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--navy2));color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:800;flex-shrink:0;border:2px solid rgba(212,160,23,.18);}
.rhcp-billing-summary{background:var(--surface2);border-radius:var(--radius-sm);padding:20px;margin-bottom:8px;border:1px solid var(--border);}
.rhcp-billing-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border);font-size:.9rem;color:var(--txt);}
.rhcp-billing-row:last-child{border-bottom:none;}
.rhcp-billing-row strong{font-size:.95rem;}
.rhcp-empty-state{text-align:center;padding:48px 24px;background:var(--surface);border:1px solid var(--border);border-radius:16px;color:var(--txt3);font-size:.92rem;font-weight:500;}
.rhcp-empty-state__icon{display:flex;justify-content:center;margin-bottom:16px}
.rhcp-empty-state__title{font-size:18px;font-weight:700;margin:0 0 8px;color:var(--txt)}
.rhcp-empty-state__text{font-size:14px;color:var(--txt-muted);max-width:420px;margin:0 auto;line-height:1.6}
.rhcp-filters-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rhcp-input--sm{padding:7px 10px;font-size:13px;height:36px}
.rhcp-btn--sm{padding:6px 14px;font-size:13px;height:36px;line-height:1}
.rhcp-btn--ghost{background:transparent;border-color:transparent;color:var(--txt-muted)}
.rhcp-btn--ghost:hover{color:var(--txt);background:var(--surface2)}
.rhcp-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:12px;font-weight:600}
.rhcp-loyalty-wrap,.rhcp-corp-wrap{width:100%}
/* QUICK ACTIONS */
.rhcp-dash-quick-links{margin-top:20px;}
.rhcp-quick-links-title{font-size:1rem;font-weight:700;color:var(--txt);margin-bottom:16px;}
.rhcp-quick-links-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;}
.rhcp-quick-link{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--txt);font-size:.82rem;font-weight:700;text-align:center;transition:border-color var(--ease),background var(--ease),transform var(--ease),box-shadow var(--ease);}
.rhcp-quick-link svg{width:26px;height:26px;stroke:var(--gold);transition:transform var(--ease);}
.rhcp-quick-link:hover{border-color:var(--gold);background:rgba(212,160,23,.05);transform:translateY(-3px);box-shadow:0 6px 20px rgba(212,160,23,.12);color:var(--txt);}
.rhcp-quick-link:hover svg{transform:scale(1.15) rotate(-5deg);}
/* REPORT BARS */
.rhcp-report-bar-row{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.rhcp-report-bar-label{font-size:.8rem;font-weight:600;color:var(--txt2);width:140px;flex-shrink:0;}
.rhcp-report-bar-track{flex:1;height:10px;background:var(--border);border-radius:5px;overflow:hidden;}
.rhcp-report-bar-fill{height:100%;border-radius:5px;background:linear-gradient(90deg,var(--gold),var(--gold2));transition:width .6s cubic-bezier(.4,0,.2,1);}
.rhcp-report-bar-val{font-size:.78rem;color:var(--muted);width:100px;text-align:right;font-weight:600;}
/* CHARTS */
.rhcp-charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;}
.rhcp-chart-card{background:var(--surface);border-radius:var(--radius);padding:22px 24px;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform var(--ease),box-shadow var(--ease),background var(--ease);}
.rhcp-chart-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.rhcp-chart-title{font-size:.92rem;font-weight:800;color:var(--txt);margin-bottom:3px;display:flex;align-items:center;gap:8px;letter-spacing:-.01em;}
.rhcp-chart-title::before{content:'';width:4px;height:16px;border-radius:3px;background:linear-gradient(180deg,var(--gold3),var(--gold));flex:none;}
.rhcp-chart-sub{font-size:.76rem;color:var(--txt3);margin:0 0 16px 12px;font-weight:500;padding-bottom:14px;border-bottom:1px solid var(--border);}
.rhcp-chart-wrap{position:relative;height:220px;}
.rhcp-chart-wrap canvas{width:100%!important;height:100%!important;display:block;}
.rhcp-revenue-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);margin-bottom:20px;}
.rhcp-revenue-stat{background:var(--surface);padding:20px;text-align:center;transition:background var(--ease);}
.rhcp-revenue-stat:hover{background:var(--surface2);}
.rhcp-revenue-stat-value{font-size:1.55rem;font-weight:800;color:var(--txt);font-variant-numeric:tabular-nums;}
.rhcp-revenue-stat-label{font-size:.73rem;color:var(--txt3);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-weight:600;}
.rhcp-revenue-stat-trend{font-size:.75rem;font-weight:700;margin-top:6px;}
.rhcp-revenue-stat-trend.up{color:var(--green);}
.rhcp-revenue-stat-trend.down{color:var(--red);}
/* PROFILE */
.rhcp-profile-grid{display:grid;grid-template-columns:300px 1fr;gap:24px;}
.rhcp-profile-card{background:linear-gradient(160deg,var(--navy2) 0%,var(--navy) 100%);border-radius:var(--radius);text-align:center;color:#fff;overflow:hidden;border:1px solid rgba(255,255,255,.07);box-shadow:var(--shadow-md);}
.rhcp-profile-cover{height:100px;position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(212,160,23,.28),rgba(11,29,58,.5));}
.rhcp-profile-cover-bg{width:100%;height:100%;background-image:url('https://images.unsplash.com/photo-1551882547-ff40c63fe5fa?w=600&q=65&auto=format&fit=crop');background-size:cover;background-position:center;opacity:.55;}
.rhcp-profile-cover-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 0%,rgba(11,29,58,.75) 100%);}
.rhcp-profile-avatar-wrap{position:relative;display:flex;justify-content:center;margin-top:-36px;margin-bottom:12px;}
.rhcp-profile-avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:var(--navy);display:flex;align-items:center;justify-content:center;font-size:1.7rem;font-weight:800;border:3px solid rgba(11,29,58,.9);box-shadow:0 4px 16px rgba(212,160,23,.4);}
.rhcp-profile-body{padding:0 20px 20px;}
.rhcp-profile-name{font-family:'Playfair Display',Georgia,serif;font-size:1.1rem;font-weight:700;margin-bottom:4px;}
.rhcp-profile-role{font-size:.7rem;color:var(--gold);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;}
.rhcp-profile-email{font-size:.77rem;color:rgba(255,255,255,.42);margin-bottom:16px;}
.rhcp-profile-stats{display:flex;border-top:1px solid rgba(255,255,255,.07);}
.rhcp-profile-stat{flex:1;padding:14px 8px;border-right:1px solid rgba(255,255,255,.07);}
.rhcp-profile-stat:last-child{border-right:none;}
.rhcp-profile-stat-value{font-size:1.2rem;font-weight:800;color:var(--gold);}
.rhcp-profile-stat-label{font-size:.65rem;color:rgba(255,255,255,.32);text-transform:uppercase;letter-spacing:.05em;margin-top:2px;}
.rhcp-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;}
.rhcp-gallery-item{aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface2);border:1px solid var(--border);}
.rhcp-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;}
.rhcp-gallery-item:hover img{transform:scale(1.06);}
.rhcp-gallery-add{aspect-ratio:1;border-radius:var(--radius-sm);border:2px dashed var(--border2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:.75rem;cursor:pointer;background:var(--surface2);transition:border-color var(--ease),color var(--ease);}
.rhcp-gallery-add svg{width:20px;height:20px;}
.rhcp-gallery-add:hover{border-color:var(--gold);color:var(--gold);}
.rhcp-logo-upload{border:2px dashed var(--border2);border-radius:var(--radius);padding:28px;text-align:center;color:var(--muted);cursor:pointer;background:var(--surface2);transition:border-color var(--ease),background var(--ease),color var(--ease);}
.rhcp-logo-upload svg{width:32px;height:32px;stroke:var(--muted);margin-bottom:8px;display:block;margin-left:auto;margin-right:auto;transition:stroke var(--ease);}
.rhcp-logo-upload:hover{border-color:var(--gold);background:rgba(212,160,23,.04);color:var(--gold);}
.rhcp-logo-upload:hover svg{stroke:var(--gold);}
.rhcp-logo-upload-label{font-size:.82rem;font-weight:600;}
.rhcp-logo-upload-sub{font-size:.72rem;margin-top:4px;}
/* SETTINGS */
.rhcp-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px;}
.rhcp-settings-card{background:var(--surface);border-radius:var(--radius);padding:24px;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:background var(--ease),border-color var(--ease);}
.rhcp-settings-card-header{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border);}
.rhcp-settings-card-header svg{width:18px;height:18px;stroke:var(--gold);}
.rhcp-settings-card-header h3{font-size:.9rem;font-weight:700;color:var(--txt);}
.rhcp-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--border);font-size:.855rem;color:var(--txt2);}
.rhcp-toggle-row:last-child{border-bottom:none;}
.rhcp-toggle{position:relative;display:inline-block;width:42px;height:24px;}
.rhcp-toggle input{opacity:0;width:0;height:0;}
.rhcp-toggle-slider{position:absolute;inset:0;background:var(--border2);border-radius:24px;cursor:pointer;transition:background var(--ease);}
.rhcp-toggle-slider::before{content:'';position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform var(--ease);box-shadow:0 1px 4px rgba(0,0,0,.2);}
.rhcp-toggle input:checked+.rhcp-toggle-slider{background:var(--gold);}
.rhcp-toggle input:checked+.rhcp-toggle-slider::before{transform:translateX(18px);}
/* RESPONSIVE ──────────────────────────────────────────────── */
@media(max-width:1100px){.rhcp-dashboard-grid{grid-template-columns:1fr;}.rhcp-charts-grid{grid-template-columns:1fr;}.rhcp-revenue-strip{grid-template-columns:repeat(2,1fr);}.rhcp-kpi-grid--4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:900px){.rhcp-profile-grid{grid-template-columns:1fr;}.rhcp-welcome-stats-quick{display:none;}}

/* ─ Tablet (≤900px): sidebar stays but narrower ─ */
@media(max-width:900px) and (min-width:769px){
  :root{--sb-w:200px;}
}

/* ─ Mobile (≤768px): slide-in full drawer ─ */
@media(max-width:768px){
  :root{--sb-w:0px;}
  .rhcp-sidebar{
    width:260px;
    transform:translateX(-100%);
  }
  .rhcp-sidebar.rhcp-sidebar--open{transform:translateX(0);}
  .rhcp-sb-close{display:block;}
  .rhcp-hamburger{display:flex!important;}
  .rhcp-main-content{margin-left:0;}
  .rhcp-overlay.is-active{display:block;}
  /* Accordion works the same on mobile — no special overrides needed */
  .rhcp-content-area{padding:20px 16px;}
  .rhcp-field-row{grid-template-columns:1fr;}
  .rhcp-page-header{flex-direction:column;align-items:flex-start;}
  .rhcp-welcome-banner{height:160px;}
  .rhcp-welcome-name{font-size:1.3rem;}
  .rhcp-revenue-strip{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:640px){.rhcp-form-grid{grid-template-columns:1fr;}.rhcp-field--full{grid-column:1;}.rhcp-stats-row{gap:8px;}.rhcp-quick-links-grid{grid-template-columns:repeat(3,1fr);}.rhcp-kpi-grid--4{grid-template-columns:repeat(2,1fr);}.rhcp-revenue-strip{grid-template-columns:1fr 1fr;}.rhcp-charts-grid{grid-template-columns:1fr;}.rhcp-gallery-grid{grid-template-columns:repeat(2,1fr);}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;}}

/* ═══════════════════════════════════════════
   ADMINISTRATION MODULE
═══════════════════════════════════════════ */
.rhcp-admin-tabs{display:flex;gap:4px;margin-bottom:24px;background:var(--bg-alt);border-radius:12px;padding:5px;border:1px solid var(--border);flex-wrap:wrap;}
.rhcp-atab{padding:9px 18px;border-radius:9px;font-size:.85rem;font-weight:600;color:var(--txt-muted);text-decoration:none;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;}
.rhcp-atab:hover{background:var(--surface);color:var(--txt);}
.rhcp-atab--active{background:var(--surface);color:var(--gold);box-shadow:0 1px 4px rgba(0,0,0,.12);border:1px solid var(--border);}
.rhcp-admin-kpi-section{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--txt-muted);margin:20px 0 10px;padding-left:2px;}
.rhcp-admin-filter-bar{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap;}
.rhcp-filter-pill{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;color:var(--txt-muted);background:var(--bg-alt);border:1px solid var(--border);text-decoration:none;transition:all .18s;display:inline-flex;align-items:center;gap:6px;}
.rhcp-filter-pill:hover{background:var(--surface);color:var(--txt);}
.rhcp-filter-pill--active{background:rgba(212,160,23,.12);color:var(--gold);border-color:rgba(212,160,23,.35);}
.rhcp-filter-count{background:var(--surface);border-radius:10px;padding:1px 7px;font-size:11px;font-weight:700;border:1px solid var(--border);}
.rhcp-badge-plan{font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;letter-spacing:.03em;border:1px solid;}
.rhcp-plan-starter{background:rgba(59,130,246,.1);color:#3b82f6;border-color:rgba(59,130,246,.3);}
.rhcp-plan-professional{background:rgba(139,92,246,.1);color:#8b5cf6;border-color:rgba(139,92,246,.3);}
.rhcp-plan-enterprise{background:rgba(212,160,23,.1);color:var(--gold);border-color:rgba(212,160,23,.3);}
.rhcp-plan-none{background:var(--bg-alt);color:var(--txt-muted);border-color:var(--border);}
.rhcp-detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--border);gap:12px;}
.rhcp-detail-row:last-child{border-bottom:none;}
.rhcp-detail-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--txt-muted);min-width:100px;flex-shrink:0;}
.rhcp-detail-val{font-size:13px;font-weight:500;color:var(--txt);text-align:right;word-break:break-word;}
.rhcp-plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;}
.rhcp-plan-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;}
.rhcp-empty-row{text-align:center;padding:28px;color:var(--txt-muted);font-size:13px;}
.rhcp-kpi-sub{font-size:11px;color:var(--txt-muted);margin-top:2px;}
@media(max-width:768px){.rhcp-admin-tabs{gap:2px;}.rhcp-atab{padding:7px 12px;font-size:.8rem;}.rhcp-plans-grid{grid-template-columns:1fr;}}

/* Hotel View — header, banner, logo */
.rhcp-hotel-view-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;flex-wrap:wrap;}
.rhcp-hotel-view-identity{display:flex;align-items:center;gap:16px;}
.rhcp-hotel-view-logo{width:64px;height:64px;border-radius:12px;object-fit:contain;background:var(--surface);border:2px solid var(--border);padding:4px;flex-shrink:0;}
.rhcp-hotel-view-logo-placeholder{width:64px;height:64px;border-radius:12px;background:linear-gradient(135deg,var(--gold),#b8860b);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:#fff;flex-shrink:0;letter-spacing:.02em;}
.rhcp-hotel-view-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.rhcp-hotel-view-banner{width:100%;height:160px;border-radius:14px;background-size:cover;background-position:center;background-color:var(--bg-alt);margin-bottom:20px;border:1px solid var(--border);}
@media(max-width:768px){.rhcp-hotel-view-header{flex-direction:column;}.rhcp-hotel-view-actions{width:100%;}.rhcp-hotel-view-banner{height:100px;}}

/* ══ BRANDING MODULE ══ */
.rhcp-branding-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:4px;}
.rhcp-upload-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:12px;transition:border-color .2s;}
.rhcp-upload-card:hover{border-color:var(--gold);}
.rhcp-upload-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;}
.rhcp-upload-card-title{font-size:13px;font-weight:700;color:var(--txt);margin-bottom:2px;}
.rhcp-upload-card-desc{font-size:11px;color:var(--txt-muted);}
.rhcp-upload-preview{min-height:90px;background:var(--bg-alt);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.rhcp-upload-empty-state{text-align:center;padding:16px;}
.rhcp-upload-empty-icon{font-size:28px;margin-bottom:6px;}
.rhcp-upload-dropzone{border:2px dashed var(--border);border-radius:10px;padding:14px 10px;text-align:center;cursor:pointer;transition:all .2s;}
.rhcp-upload-dropzone:hover,.rhcp-dz-active{border-color:var(--gold);background:rgba(212,160,23,.05);}
.rhcp-dz-inner{pointer-events:none;}
.rhcp-dz-icon{font-size:20px;margin-bottom:4px;}
.rhcp-dz-text{font-size:12px;color:var(--txt-muted);pointer-events:all;}
.rhcp-dz-browse{background:none;border:none;color:var(--gold);font-weight:700;cursor:pointer;font-size:12px;padding:0;text-decoration:underline;pointer-events:all;}
.rhcp-dz-hint{font-size:10px;color:var(--txt-muted);margin-top:4px;}
.rhcp-upload-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden;margin-top:4px;}
.rhcp-upload-bar-fill{height:100%;width:0;background:var(--gold);transition:width .2s;border-radius:3px;}
/* Colour fields */
.rhcp-branding-colors-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px;}
.rhcp-color-field{display:flex;flex-direction:column;gap:6px;}
.rhcp-color-input-wrap{display:flex;align-items:center;gap:8px;}
.rhcp-color-swatch{width:42px;height:38px;padding:2px 3px;border-radius:8px;border:1px solid var(--border);cursor:pointer;background:var(--bg-alt);flex-shrink:0;}
.rhcp-color-preview{width:22px;height:22px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;transition:background .2s;}
/* Preview bar */
.rhcp-brand-preview-bar{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-alt);border-radius:10px;border:1px solid var(--border);flex-wrap:wrap;}
.rhcp-brand-preview-label{font-size:11px;font-weight:700;color:var(--txt-muted);text-transform:uppercase;letter-spacing:.06em;margin-right:4px;}
.rhcp-brand-preview-swatch{padding:5px 14px;border-radius:20px;font-size:11px;font-weight:700;transition:background .2s;}
/* Mockup */
.rhcp-brand-mockup{border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--mock-bg,#fff);}
.rhcp-mock-header{background:var(--mock-accent,#0B1D3A);padding:12px 18px;display:flex;align-items:center;gap:12px;}
.rhcp-mock-logo{height:32px;width:32px;object-fit:contain;border-radius:6px;background:#fff;padding:2px;}
.rhcp-mock-logo-placeholder{width:32px;height:32px;border-radius:6px;background:var(--mock-primary,#D4A017);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#fff;flex-shrink:0;}
.rhcp-mock-name{font-weight:700;font-size:13px;color:#fff;flex:1;}
.rhcp-mock-nav{display:flex;gap:14px;}
.rhcp-mock-nav span{font-size:11px;color:rgba(255,255,255,.6);cursor:pointer;}
.rhcp-mock-body{display:flex;gap:12px;padding:16px 18px;align-items:center;background:var(--mock-bg,#fff);flex-wrap:wrap;}
.rhcp-mock-stat{background:rgba(0,0,0,.04);border-radius:8px;padding:10px 14px;text-align:center;}
.rhcp-mock-stat-val{font-size:15px;font-weight:800;color:var(--mock-primary,#D4A017);}
.rhcp-mock-stat-label{font-size:10px;color:var(--mock-text,#1A1A1A);margin-top:2px;}
.rhcp-mock-btn{margin-left:auto;background:var(--mock-primary,#D4A017);color:#fff;padding:8px 18px;border-radius:8px;font-weight:700;font-size:12px;cursor:pointer;}
@media(max-width:900px){.rhcp-branding-upload-grid{grid-template-columns:1fr 1fr;}.rhcp-branding-colors-grid{grid-template-columns:1fr 1fr;}.rhcp-bds-color-grid{grid-template-columns:1fr 1fr !important;}}
@media(max-width:600px){.rhcp-branding-upload-grid{grid-template-columns:1fr;}.rhcp-branding-colors-grid{grid-template-columns:1fr 1fr;}.rhcp-bds-color-grid{grid-template-columns:1fr !important;}}

/* ════════════════════════════════════════════════════════════
   BRANDING DESIGN SYSTEM v2
   Premium hotel branding: banner overlay, live preview, contrast detection
════════════════════════════════════════════════════════════ */

/* --- Banner preview card --- */
.rhcp-bds-banner-preview{position:relative;border-radius:16px;overflow:hidden;min-height:220px;display:flex;align-items:flex-end;background:linear-gradient(135deg,#0B1D3A 0%,#1a3560 60%,#0f2a50 100%);border:1px solid var(--border);margin-bottom:4px;}
.rhcp-bds-banner-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .4s;}
.rhcp-bds-banner-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.10) 100%);transition:opacity .3s;pointer-events:none;}
.rhcp-bds-banner-default-pattern{position:absolute;inset:0;opacity:.08;background-image:repeating-linear-gradient(45deg,#D4A017 0,#D4A017 1px,transparent 0,transparent 50%);background-size:24px 24px;}
.rhcp-bds-banner-content{position:relative;z-index:2;padding:22px 24px;width:100%;display:flex;align-items:flex-end;gap:18px;}
.rhcp-bds-banner-logo{width:64px;height:64px;border-radius:12px;object-fit:contain;background:#fff;padding:5px;box-shadow:0 4px 20px rgba(0,0,0,.35);flex-shrink:0;}
.rhcp-bds-banner-logo-placeholder{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900;background:var(--bds-primary,#D4A017);color:#fff;box-shadow:0 4px 20px rgba(0,0,0,.35);flex-shrink:0;}
.rhcp-bds-banner-info{flex:1;min-width:0;}
.rhcp-bds-banner-name{font-size:1.45rem;font-weight:800;line-height:1.15;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rhcp-bds-banner-tagline{font-size:.8rem;color:rgba(255,255,255,.82);text-shadow:0 1px 4px rgba(0,0,0,.5);margin-bottom:10px;}
.rhcp-bds-banner-book-btn{display:inline-block;padding:9px 22px;border-radius:8px;font-size:.82rem;font-weight:800;background:var(--bds-primary,#D4A017);color:#fff;box-shadow:0 3px 12px rgba(0,0,0,.35);cursor:pointer;transition:transform .15s,box-shadow .15s;border:none;letter-spacing:.02em;}
.rhcp-bds-banner-book-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.45);}
.rhcp-bds-contrast-chip{position:absolute;top:12px;right:12px;z-index:3;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;}
.rhcp-bds-contrast-chip--good{background:rgba(34,197,94,.2);color:#22c55e;border:1px solid rgba(34,197,94,.4);}
.rhcp-bds-contrast-chip--warn{background:rgba(245,158,11,.2);color:#d97706;border:1px solid rgba(245,158,11,.4);}
.rhcp-bds-contrast-chip--bad{background:rgba(239,68,68,.2);color:#ef4444;border:1px solid rgba(239,68,68,.4);}
/* --- Overlay opacity slider --- */
.rhcp-bds-overlay-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--bg-alt);border:1px solid var(--border);border-radius:10px;margin-top:12px;}
.rhcp-bds-overlay-label{font-size:12px;font-weight:700;color:var(--txt);white-space:nowrap;}
.rhcp-bds-overlay-slider{flex:1;height:6px;accent-color:var(--gold);cursor:pointer;}
.rhcp-bds-overlay-val{font-size:12px;font-weight:700;color:var(--gold);min-width:34px;text-align:right;}
/* --- Color design system panel --- */
.rhcp-bds-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px;}
.rhcp-bds-color-field{display:flex;flex-direction:column;gap:6px;}
.rhcp-bds-color-label{font-size:12px;font-weight:700;color:var(--txt);}
.rhcp-bds-color-hint{font-size:10px;color:var(--txt-muted);margin-top:2px;}
.rhcp-bds-color-row{display:flex;align-items:center;gap:8px;}
.rhcp-bds-swatch{width:42px;height:38px;padding:2px 3px;border-radius:8px;border:1px solid var(--border);cursor:pointer;background:var(--bg-alt);flex-shrink:0;}
.rhcp-bds-hex{font-family:monospace;font-size:12px;letter-spacing:.06em;border:1px solid var(--border);border-radius:8px;padding:7px 10px;background:var(--surface);color:var(--txt);flex:1;min-width:0;}
.rhcp-bds-circle{width:24px;height:24px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;transition:background .2s;}
.rhcp-bds-contrast-pair{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--txt-muted);margin-top:2px;}
.rhcp-bds-aa-badge{padding:2px 7px;border-radius:10px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;}
.rhcp-bds-aa-pass{background:rgba(34,197,94,.15);color:#16a34a;border:1px solid rgba(34,197,94,.3);}
.rhcp-bds-aa-fail{background:rgba(239,68,68,.12);color:#dc2626;border:1px solid rgba(239,68,68,.3);}
/* --- Live mockup v2 --- */
.rhcp-bds-mockup-wrap{border:1px solid var(--border);border-radius:14px;overflow:hidden;}
.rhcp-bds-mock-nav{background:var(--bds-accent,#0B1D3A);padding:10px 18px;display:flex;align-items:center;gap:14px;}
.rhcp-bds-mock-nav-logo{height:28px;width:28px;border-radius:6px;object-fit:contain;background:#fff;padding:2px;flex-shrink:0;}
.rhcp-bds-mock-nav-logo-ph{width:28px;height:28px;border-radius:6px;background:var(--bds-primary,#D4A017);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;flex-shrink:0;}
.rhcp-bds-mock-nav-name{font-size:12px;font-weight:700;color:#fff;flex:1;}
.rhcp-bds-mock-nav-links{display:flex;gap:12px;}
.rhcp-bds-mock-nav-links span{font-size:10px;color:rgba(255,255,255,.55);}
.rhcp-bds-mock-body{padding:16px 18px;background:var(--bds-bg,#fff);}
.rhcp-bds-mock-stats{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap;}
.rhcp-bds-mock-stat{flex:1;min-width:70px;background:rgba(0,0,0,.04);border-radius:8px;padding:10px 12px;text-align:center;}
.rhcp-bds-mock-stat-val{font-size:14px;font-weight:800;color:var(--bds-primary,#D4A017);}
.rhcp-bds-mock-stat-label{font-size:9px;color:var(--bds-text,#1A1A1A);margin-top:2px;}
.rhcp-bds-mock-book-btn{display:inline-block;padding:9px 20px;border-radius:8px;font-size:12px;font-weight:800;background:var(--bds-primary,#D4A017);color:#fff;border:none;cursor:pointer;transition:filter .15s;}
.rhcp-bds-mock-book-btn:hover{filter:brightness(1.1);}
.rhcp-bds-mock-secondary-btn{display:inline-block;padding:9px 20px;border-radius:8px;font-size:12px;font-weight:700;margin-left:8px;background:var(--bds-secondary,#1a3a6b);color:#fff;border:none;cursor:pointer;}
/* --- Default banner (no upload) --- */
.rhcp-bds-default-banner{background:linear-gradient(135deg,#0B1D3A 0%,#163566 40%,#0d2a52 70%,#0B1D3A 100%);}
.rhcp-bds-default-badge{position:absolute;top:12px;left:14px;z-index:3;padding:3px 10px;border-radius:12px;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(212,160,23,.18);color:#D4A017;border:1px solid rgba(212,160,23,.35);}

/* ════════════════════════════════════════════════════════════
   COLOUR THEME PICKER — topbar dropdown
   Tokens only: --gold / --navy / --navy-light change per theme.
   Sidebar and layout stay untouched.
════════════════════════════════════════════════════════════ */

/* --- Six theme token sets --- */
/* Hotel Gold (default) — no override needed, already in :root */
[data-colour-theme="ocean-blue"]{
  --gold:#1565C0;--gold2:#1976D2;--gold3:#42A5F5;--gold-dim:#0D47A1;
  --navy:#0a1929;--navy2:#0d2137;--navy-light:#1565C0;
}
[data-colour-theme="midnight-black"]{
  --gold:#e0e0e0;--gold2:#eeeeee;--gold3:#f5f5f5;--gold-dim:#bdbdbd;
  --navy:#111111;--navy2:#1a1a1a;--navy-light:#2d2d2d;
}
[data-colour-theme="executive-gray"]{
  --gold:#546E7A;--gold2:#607D8B;--gold3:#90A4AE;--gold-dim:#37474F;
  --navy:#1c2b35;--navy2:#243340;--navy-light:#37474F;
}
[data-colour-theme="emerald-green"]{
  --gold:#2E7D32;--gold2:#388E3C;--gold3:#66BB6A;--gold-dim:#1B5E20;
  --navy:#0a1f0b;--navy2:#0d2710;--navy-light:#2E7D32;
}
[data-colour-theme="royal-purple"]{
  --gold:#6A1B9A;--gold2:#7B1FA2;--gold3:#AB47BC;--gold-dim:#4A148C;
  --navy:#12072a;--navy2:#180a35;--navy-light:#4A148C;
}
/* hotel-gold = :root defaults, no override block needed */

/* --- Button in topbar --- */
.rhcp-tp-wrap{position:relative;display:inline-flex;}
.rhcp-tp-btn{
  width:36px;height:36px;border-radius:50%;
  border:1px solid var(--border);
  background:var(--surface2);
  color:var(--txt3);
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background var(--ease),color var(--ease),border-color var(--ease);
  flex-shrink:0;
}
.rhcp-tp-btn:hover,.rhcp-tp-btn[aria-expanded="true"]{
  background:var(--gold);
  color:#fff;
  border-color:var(--gold);
}
/* --- Dropdown panel --- */
.rhcp-tp-dropdown{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  width:210px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow:var(--shadow-md);
  z-index:9999;
  overflow:hidden;
  animation:rhcp-tp-pop .15s cubic-bezier(.4,0,.2,1);
}
@keyframes rhcp-tp-pop{
  from{opacity:0;transform:translateY(-6px) scale(.97);}
  to  {opacity:1;transform:translateY(0)   scale(1);}
}
.rhcp-tp-dropdown[hidden]{display:none;}
.rhcp-tp-header{
  padding:11px 14px 8px;
  font-size:10px;font-weight:800;
  letter-spacing:.09em;text-transform:uppercase;
  color:var(--txt3);
  border-bottom:1px solid var(--border);
}
/* --- Each theme row --- */
.rhcp-tp-item{
  width:100%;display:flex;align-items:center;gap:10px;
  padding:9px 14px;
  background:none;border:none;cursor:pointer;
  text-align:left;
  color:var(--txt);
  font-size:13px;font-weight:500;
  transition:background var(--ease);
}
.rhcp-tp-item:hover{background:var(--bg2);}
.rhcp-tp-item--active{
  background:rgba(212,160,23,.08);
  font-weight:700;
  color:var(--gold);
}
[data-colour-theme="ocean-blue"]   .rhcp-tp-item--active{background:rgba(21,101,192,.08);color:#1565C0;}
[data-colour-theme="midnight-black"].rhcp-tp-item--active{background:rgba(224,224,224,.10);color:#e0e0e0;}
[data-colour-theme="executive-gray"].rhcp-tp-item--active{background:rgba(84,110,122,.10);color:#546E7A;}
[data-colour-theme="emerald-green"] .rhcp-tp-item--active{background:rgba(46,125,50,.10);color:#2E7D32;}
[data-colour-theme="royal-purple"]  .rhcp-tp-item--active{background:rgba(106,27,154,.10);color:#6A1B9A;}
.rhcp-tp-swatch{
  width:20px;height:20px;border-radius:50%;
  flex-shrink:0;
  box-shadow:0 1px 4px rgba(0,0,0,.18);
  border:2px solid rgba(255,255,255,.25);
}
.rhcp-tp-label{flex:1;}
.rhcp-tp-check{
  flex-shrink:0;
  stroke:var(--gold);
  opacity:.9;
}
[data-colour-theme="ocean-blue"]    .rhcp-tp-check{stroke:#1565C0;}
[data-colour-theme="midnight-black"] .rhcp-tp-check{stroke:#e0e0e0;}
[data-colour-theme="executive-gray"] .rhcp-tp-check{stroke:#546E7A;}
[data-colour-theme="emerald-green"]  .rhcp-tp-check{stroke:#2E7D32;}
[data-colour-theme="royal-purple"]   .rhcp-tp-check{stroke:#6A1B9A;}

/* --- Topbar bell & avatar: inherit gold via var(--gold) already — no extra rules needed --- */

/* ══ SUBSCRIPTION MODULE ══ */
.rhcp-expiry-warning{font-size:12px;color:#d97706;font-weight:600;margin-top:6px;background:rgba(245,158,11,.1);padding:6px 10px;border-radius:6px;display:inline-block}
.rhcp-expiry-critical{font-size:12px;color:#ef4444;font-weight:600;margin-top:6px;background:rgba(239,68,68,.1);padding:6px 10px;border-radius:6px;display:inline-block}
.rhcp-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;margin-left:8px;vertical-align:middle}

/* ═══════════════════════════════════════════
   SETTINGS MODULE — TABS & PANELS
═══════════════════════════════════════════ */
.rhcp-settings-tabs{display:flex;gap:4px;margin-bottom:24px;background:var(--bg-alt);border-radius:12px;padding:5px;border:1px solid var(--border);flex-wrap:wrap;}
.rhcp-stab{padding:9px 18px;border-radius:9px;font-size:.85rem;font-weight:600;color:var(--txt-muted);text-decoration:none;transition:all .2s;white-space:nowrap;}
.rhcp-stab:hover{background:var(--surface);color:var(--txt);}
.rhcp-stab--active{background:var(--surface);color:var(--gold);box-shadow:0 1px 4px rgba(0,0,0,.12);border:1px solid var(--border);}
.rhcp-card-section-title{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--txt-muted);padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:20px;}
.rhcp-field-hint{font-size:11px;color:var(--txt-muted);margin-top:4px;line-height:1.4;}
.rhcp-required{color:#ef4444;}
.rhcp-media-preview{margin-bottom:10px;padding:10px;background:var(--bg-alt);border-radius:8px;border:1px solid var(--border);}

/* Subscription info grid */
.rhcp-sub-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;padding:4px 0 12px;}
.rhcp-sub-info-item{background:var(--bg-alt);border:1px solid var(--border);border-radius:10px;padding:14px 16px;}
.rhcp-sub-info-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--txt-muted);margin-bottom:4px;}
.rhcp-sub-info-val{font-size:15px;font-weight:600;color:var(--txt);word-break:break-all;}

/* Hotels module — status pills */
.rhcp-hotel-status-active{color:#22c55e;font-weight:700;}
.rhcp-hotel-status-trial{color:#3b82f6;font-weight:700;}
.rhcp-hotel-status-suspended{color:#f59e0b;font-weight:700;}
.rhcp-hotel-status-expired{color:#ef4444;font-weight:700;}

/* ── DATE FILTER BAR (Reports) ────────────────────────────── */
.rhcp-date-filter-bar{
  display:flex;align-items:center;flex-wrap:wrap;gap:6px;
  padding:12px 16px;
  background:var(--card-bg);
  border:1px solid var(--border);
  border-radius:10px;
  margin-bottom:20px;
}
.rhcp-filter-btn{
  display:inline-flex;align-items:center;
  padding:6px 16px;
  border-radius:20px;
  font-size:12px;font-weight:600;
  border:1px solid var(--border);
  color:var(--txt-muted);
  background:transparent;
  text-decoration:none;
  transition:all .15s;
  cursor:pointer;
}
.rhcp-filter-btn:hover,.rhcp-filter-btn--active{
  background:var(--gold);color:#0B1D3A;
  border-color:var(--gold);
}
@media(max-width:600px){.rhcp-date-filter-bar{gap:4px;}.rhcp-filter-btn{padding:5px 12px;font-size:11px;}}

/* ── APP FOOTER ─────────────────────────────────────────────── */
.rhcp-app-footer{
  display:flex;align-items:center;justify-content:center;
  flex-wrap:wrap;gap:6px 12px;
  padding:14px 28px;
  font-size:11px;
  color:var(--txt-muted);
  border-top:1px solid var(--border);
  background:var(--bg);
  margin-top:auto;
}
.rhcp-app-footer strong{color:var(--gold);font-weight:700;}
.rhcp-footer-sep{opacity:.35;}
@media(max-width:600px){.rhcp-app-footer{padding:10px 16px;font-size:10px;}}

/* ══════════════════════════════════════════════════════════════
   PHASE 7 — MOBILE RESPONSIVE (320px – 1024px)
   All breakpoints: 320, 480, 768, 1024
══════════════════════════════════════════════════════════════ */

/* 1024px — Tablet landscape */
@media(max-width:1024px){
  :root{--sidebar-w:220px;}
  .rhcp-kpi-grid--4,.rhcp-kpi-grid{grid-template-columns:repeat(2,1fr);}
  .rhcp-welcome-banner-stats{gap:16px;}
  .rp-two-col{grid-template-columns:1fr;}
  .rp-receipt-layout{grid-template-columns:1fr;}
  .rp-meta-grid,.rp-info-grid{grid-template-columns:repeat(2,1fr);}
}

/* 768px — Tablet portrait */
@media(max-width:768px){
  :root{--sidebar-w:0px;}
  .rhcp-sidebar{transform:translateX(-100%);width:260px;position:fixed;z-index:500;transition:transform .25s ease;}
  .rhcp-sidebar--open{transform:translateX(0);}
  .rhcp-main-content{margin-left:0;}
  .rhcp-hamburger{display:flex !important;}
  .rhcp-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:490;}
  .rhcp-overlay--active{display:block;}
  .rhcp-topbar{padding:0 16px;}
  .rhcp-topbar-time{display:none;}
  .rhcp-welcome-banner{height:auto;padding:20px 16px;}
  .rhcp-welcome-banner-content{flex-direction:column;gap:12px;}
  .rhcp-welcome-banner-stats{flex-wrap:wrap;gap:10px;}
  .rhcp-kpi-grid,.rhcp-kpi-grid--4{grid-template-columns:repeat(2,1fr);gap:10px;}
  .rhcp-dashboard-card{padding:16px;}
  .rhcp-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .rhcp-table{min-width:600px;}
  .rhcp-page-header{flex-direction:column;align-items:flex-start;gap:12px;}
  .rhcp-form-grid{grid-template-columns:1fr !important;}
  .rhcp-form-row{flex-direction:column;}
  .rhcp-stats-row{gap:6px;}
  .rhcp-stat-pill{flex:1;min-width:calc(50% - 6px);}
  .rhcp-filters-bar{flex-direction:column;align-items:stretch;}
  .rhcp-filters-bar .rhcp-form-group{min-width:unset;}
  .rp-page{padding:20px 16px;}
  .rp-kpi-grid,.rp-kpi-4{grid-template-columns:repeat(2,1fr);}
  .rp-meta-grid,.rp-info-grid{grid-template-columns:1fr;}
  .rp-signature-row{grid-template-columns:1fr;gap:16px;}
  .rhcp-bell-dropdown{width:290px;right:-60px;}
  .rhcp-module-actions{flex-wrap:wrap;gap:6px;}
  .rhcp-btn{padding:7px 14px;font-size:.82rem;}
}

/* 480px — Large phone */
@media(max-width:480px){
  .rhcp-kpi-grid,.rhcp-kpi-grid--4{grid-template-columns:repeat(2,1fr);gap:8px;}
  .rhcp-kpi-card{padding:12px 10px;}
  .rhcp-kpi-value{font-size:1.6rem;}
  .rhcp-page-title{font-size:1.1rem;}
  .rhcp-topbar{padding:0 12px;gap:8px;}
  .rhcp-module-content{padding:12px;}
  .rhcp-table{font-size:.78rem;}
  .rhcp-table th,.rhcp-table td{padding:7px 8px;}
  .rhcp-action-btn{padding:3px 8px;font-size:.72rem;}
  .rhcp-bell-dropdown{width:280px;right:-40px;}
  .rp-page{padding:14px 10px;}
  .rp-kpi-4{grid-template-columns:repeat(2,1fr);}
  .rp-hotel-name{font-size:15px;}
  .rp-doc-title{font-size:16px;}
  .rhcp-auth-box{padding:24px 16px;}
  .rhcp-print-bar{flex-direction:column;}
  .rhcp-welcome-banner-stats{gap:8px;}
  .rhcp-sidebar-nav .rhcp-nav-link{padding:8px 12px;font-size:.82rem;}
  .rhcp-nav-group-header{padding:6px 12px;font-size:.65rem;}
  .rhcp-nav-link--solo{padding:9px 14px;font-size:.82rem;}
}

/* 320px — Small phone */
@media(max-width:380px){
  .rhcp-kpi-grid,.rhcp-kpi-grid--4{grid-template-columns:1fr 1fr;gap:6px;}
  .rhcp-kpi-value{font-size:1.4rem;}
  .rhcp-topbar-breadcrumb{display:none;}
  .rhcp-page-header h1{font-size:1rem;}
  .rhcp-table th{font-size:.7rem;}
  .rhcp-table td{font-size:.75rem;}
  .rp-two-col{grid-template-columns:1fr;}
  .rp-pd-grid{grid-template-columns:1fr 1fr;}
  .rhcp-btn{padding:6px 10px;font-size:.78rem;}
  .rhcp-welcome-hotel-logo{display:none;}
}

/* ═══════════════════════════════════════════════════════
   EDITION HEADERS + BADGES
   Cloud = blue accent | Enterprise = green accent
   Platform = gold accent (existing admin styles)
═══════════════════════════════════════════════════════ */
.rhcp-edition-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 22px;border-radius:14px;margin-bottom:20px;
  border:1px solid var(--border);gap:16px;flex-wrap:wrap;
}
.rhcp-edition-header--cloud{
  background:linear-gradient(135deg,rgba(59,130,246,.12) 0%,rgba(11,29,58,.6) 100%);
  border-color:rgba(59,130,246,.3);
}
.rhcp-edition-header--enterprise{
  background:linear-gradient(135deg,rgba(34,197,94,.12) 0%,rgba(11,29,58,.6) 100%);
  border-color:rgba(34,197,94,.3);
}
.rhcp-edition-header--platform{
  background:linear-gradient(135deg,rgba(212,160,23,.12) 0%,rgba(11,29,58,.6) 100%);
  border-color:rgba(212,160,23,.3);
}
.rhcp-edition-header-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.rhcp-edition-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0;flex-wrap:wrap;}
.rhcp-edition-title{font-size:1.35rem;font-weight:800;color:var(--navy);line-height:1.2;margin:0;}
.rhcp-edition-subtitle{font-size:.8rem;color:var(--txt-muted);margin-top:3px;}

/* Edition badge pill */
.rhcp-edition-badge{
  display:inline-flex;align-items:center;gap:5px;
  padding:4px 12px;border-radius:20px;font-size:.68rem;
  font-weight:800;letter-spacing:.08em;white-space:nowrap;
  text-transform:uppercase;
}
.rhcp-edition-badge--cloud{
  background:rgba(59,130,246,.18);color:#60a5fa;
  border:1px solid rgba(59,130,246,.4);
}
.rhcp-edition-badge--enterprise{
  background:rgba(34,197,94,.18);color:#4ade80;
  border:1px solid rgba(34,197,94,.4);
}
.rhcp-edition-badge--platform{
  background:rgba(212,160,23,.18);color:#D4A017;
  border:1px solid rgba(212,160,23,.4);
}

/* Renewal alert pill */
.rhcp-renewal-alert{
  padding:5px 12px;background:rgba(245,158,11,.18);color:#f59e0b;
  border:1px solid rgba(245,158,11,.4);border-radius:20px;
  font-size:.72rem;font-weight:700;
}

/* Subscription widget */
.rhcp-sub-widget,.rhcp-license-widget{
  border-top:3px solid;
}
.rhcp-sub-widget{border-color:#3b82f6;}
.rhcp-license-widget{border-color:#22c55e;}

/* Edition topbar pill (shown in topbar) */
.rhcp-topbar-edition-pill{
  display:inline-flex;align-items:center;gap:5px;padding:3px 10px;
  border-radius:14px;font-size:.65rem;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;margin-left:4px;
}
.rhcp-topbar-edition-pill--cloud{background:rgba(59,130,246,.2);color:#60a5fa;border:1px solid rgba(59,130,246,.3);}
.rhcp-topbar-edition-pill--enterprise{background:rgba(34,197,94,.2);color:#4ade80;border:1px solid rgba(34,197,94,.3);}
.rhcp-topbar-edition-pill--platform{background:rgba(212,160,23,.2);color:#D4A017;border:1px solid rgba(212,160,23,.3);}
.rhcp-topbar-edition-pill--white_label{background:rgba(139,92,246,.2);color:#a78bfa;border:1px solid rgba(139,92,246,.3);}
.rhcp-topbar-edition-pill---white_label{background:rgba(139,92,246,.2);color:#a78bfa;border:1px solid rgba(139,92,246,.3);}
.rhcp-topbar-edition-pill---ent-wl{background:rgba(139,92,246,.15);color:#c4b5fd;border:1px solid rgba(139,92,246,.3);}
.rhcp-topbar-edition-pill---cloud{background:rgba(59,130,246,.2);color:#93c5fd;border:1px solid rgba(59,130,246,.3);}
.rhcp-topbar-edition-pill---enterprise{background:rgba(34,197,94,.2);color:#86efac;border:1px solid rgba(34,197,94,.3);}
/* Cloud Premium badge */
.rhcp-edition-badge--cloud-prem{
  background:rgba(99,102,241,.18);color:#a5b4fc;
  border:1px solid rgba(99,102,241,.4);
}
/* Enterprise White Label badge */
.rhcp-edition-badge--ent-wl{
  background:rgba(139,92,246,.18);color:#c4b5fd;
  border:1px solid rgba(139,92,246,.4);
}

/* White Label edition badge */
.rhcp-edition-badge--wl{
  background:rgba(139,92,246,.18);color:#a78bfa;
  border:1px solid rgba(139,92,246,.4);
}
.rhcp-edition-header--wl{
  background:linear-gradient(135deg,rgba(139,92,246,.12) 0%,rgba(11,29,58,.6) 100%);
  border-color:rgba(139,92,246,.3);
}

/* Platform dashboard specific */
.rhcp-platform-kpi .rhcp-kpi-card{border-top:3px solid var(--gold);}

@media(max-width:768px){
  .rhcp-edition-header{flex-direction:column;align-items:flex-start;}
  .rhcp-edition-header-right{width:100%;}
  .rhcp-dash-2col{grid-template-columns:1fr!important;}
}

/* ═══════════════════════════════════════════════════════
   SOCIAL MEDIA HOUSE
   Premium in-house digital marketing department UI
═══════════════════════════════════════════════════════ */

/* Hero banner */
.smh-hero{
  display:flex;align-items:center;justify-content:space-between;
  background:linear-gradient(135deg,#0d2347 0%,#0B1D3A 60%,#1a1a2e 100%);
  border:1px solid rgba(212,160,23,.2);
  border-radius:16px;padding:28px 32px;margin-bottom:20px;gap:24px;flex-wrap:wrap;
}
.smh-hero__left{flex:1;min-width:240px;}
.smh-hero__badge{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(212,160,23,.12);border:1px solid rgba(212,160,23,.3);
  color:#D4A017;font-size:10px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;border-radius:20px;padding:4px 12px;margin-bottom:12px;
}
.smh-hero__title{
  font-size:26px;font-weight:900;color:#fff;margin:0 0 8px;
  letter-spacing:-.3px;line-height:1.1;
}
.smh-hero__sub{font-size:13px;color:rgba(255,255,255,.6);margin:0 0 18px;line-height:1.5;max-width:480px;}
.smh-hero__actions{display:flex;gap:10px;flex-wrap:wrap;}
.smh-hero__outline-btn{
  background:transparent;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.75);
  padding:9px 18px;border-radius:8px;font-size:13px;font-weight:600;
  text-decoration:none;transition:background .2s,border-color .2s;
}
.smh-hero__outline-btn:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.45);}
.smh-hero__stats{
  display:flex;align-items:center;gap:0;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;flex-shrink:0;
}
.smh-hero__stat{
  padding:18px 22px;text-align:center;display:flex;flex-direction:column;gap:4px;
}
.smh-hero__stat--div{width:1px;background:rgba(255,255,255,.1);align-self:stretch;padding:0;}
.smh-hero__stat-val{font-size:22px;font-weight:800;color:#D4A017;line-height:1;}
.smh-hero__stat-lbl{font-size:11px;color:rgba(255,255,255,.5);white-space:nowrap;}

/* Section navigation */
.smh-nav{
  display:flex;gap:0 24px;flex-wrap:wrap;margin-bottom:22px;
  border-bottom:1px solid var(--border);padding-bottom:4px;
}
.smh-nav__group{
  display:flex;flex-direction:column;gap:2px;min-width:0;
  padding-bottom:10px;
}
.smh-nav__group-label{
  font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--txt-muted);padding:4px 10px 6px;opacity:.7;
}
.smh-nav__item{
  display:flex;align-items:center;gap:8px;
  padding:7px 12px;border-radius:8px;
  font-size:12.5px;font-weight:500;color:var(--txt-muted);
  text-decoration:none;white-space:nowrap;
  border:1px solid transparent;
  transition:background .15s,color .15s,border-color .15s;
}
.smh-nav__item:hover{background:var(--surface);color:var(--txt-main);}
.smh-nav__item--active{
  background:var(--surface);color:var(--smh-accent,var(--gold));
  border-color:var(--smh-accent,var(--gold));font-weight:700;
  border-color:color-mix(in srgb,var(--smh-accent,var(--gold)) 40%,transparent);
}
.smh-nav__dot{
  width:8px;height:8px;border-radius:50%;flex-shrink:0;
  background:var(--smh-accent,var(--gold));opacity:.6;
}
.smh-nav__item--active .smh-nav__dot{opacity:1;}

/* Section wrapper */
.smh-section{}

/* Platform header */
.smh-plat-header{
  display:flex;align-items:center;justify-content:space-between;
  background:var(--surface);border:1px solid var(--border);
  border-radius:12px;padding:18px 22px;margin-bottom:16px;gap:16px;flex-wrap:wrap;
}
.smh-plat-header__left{flex:1;}
.smh-plat-header__title{margin:0 0 4px;font-size:20px;font-weight:800;}
.smh-plat-header__sub{margin:0;font-size:12px;color:var(--txt-muted);}

/* Stats row */
.smh-stat-row{
  display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;
}
.smh-stat-card{
  flex:1;min-width:100px;background:var(--surface);border:1px solid var(--border);
  border-radius:10px;padding:14px 16px;text-align:center;
}
.smh-stat-card__val{font-size:20px;font-weight:800;line-height:1;margin-bottom:4px;}
.smh-stat-card__lbl{font-size:11px;color:var(--txt-muted);}

/* Pro tips bar */
.smh-tips{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  border:1px solid;border-radius:10px;padding:10px 16px;margin-bottom:16px;
  font-size:12px;
}
.smh-tips__label{font-weight:800;font-size:11px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;}
.smh-tips__item{display:flex;align-items:center;gap:5px;color:var(--txt-muted);}
.smh-tips__dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}

/* Post filters */
.smh-post-filters{margin-bottom:16px;}
.smh-filter-tabs{display:flex;border-bottom:1px solid var(--border);}
.smh-filter-tab{
  padding:8px 14px;font-size:12.5px;font-weight:500;color:var(--txt-muted);
  text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px;
  transition:color .15s,border-color .15s;white-space:nowrap;
}
.smh-filter-tab:hover{color:var(--txt-main);}
.smh-filter-tab--active{font-weight:700;}
.smh-filter-count{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--surface);border:1px solid var(--border);
  border-radius:10px;font-size:10px;padding:1px 6px;margin-left:4px;
}

/* Post card grid */
.smh-post-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;
}
.smh-post-card{
  background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;
  display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s;
}
.smh-post-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.15);border-color:rgba(212,160,23,.25);}
.smh-post-card__img{
  height:140px;background-size:cover;background-position:center;
  display:flex;align-items:center;justify-content:center;
}
.smh-post-card__img--placeholder{height:100px;}
.smh-post-card__body{padding:14px;flex:1;display:flex;flex-direction:column;gap:6px;}
.smh-post-card__meta{display:flex;justify-content:space-between;align-items:center;}
.smh-post-card__status{font-size:11px;font-weight:700;}
.smh-post-card__type{font-size:10px;color:var(--txt-muted);background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:2px 6px;}
.smh-post-card__title{font-size:13px;font-weight:700;line-height:1.3;}
.smh-post-card__content{font-size:12px;color:var(--txt-muted);line-height:1.4;}
.smh-post-card__tags{font-size:11px;word-break:break-all;}
.smh-post-card__engagements{display:flex;gap:10px;font-size:11px;color:var(--txt-muted);flex-wrap:wrap;}
.smh-lead-badge{
  background:rgba(34,197,94,.12);color:#22c55e;
  border:1px solid rgba(34,197,94,.3);border-radius:10px;padding:1px 7px;
  font-size:10px;font-weight:700;
}
.smh-post-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;}
.smh-post-card__time{font-size:11px;color:var(--txt-muted);}
.smh-post-card__actions{display:flex;gap:5px;}

/* Empty state */
.smh-empty-state{
  text-align:center;padding:60px 40px;
  background:var(--surface);border:1px solid var(--border);border-radius:14px;
}
.smh-empty-state__icon{margin-bottom:16px;}
.smh-empty-state__title{font-size:18px;font-weight:700;margin:0 0 8px;}
.smh-empty-state__sub{color:var(--txt-muted);font-size:13px;margin:0 0 20px;}

/* Media Library grid */
.smh-media-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;
  margin-bottom:16px;
}
.smh-media-card{
  border-radius:10px;overflow:hidden;border:1px solid var(--border);
  cursor:pointer;transition:box-shadow .2s,border-color .2s;
  background:var(--surface);
}
.smh-media-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.2);border-color:#06B6D4;}
.smh-media-card__img{
  height:100px;background-size:cover;background-position:center;position:relative;overflow:hidden;
}
.smh-media-card__overlay{
  position:absolute;inset:0;background:rgba(0,0,0,.6);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .2s;
}
.smh-media-card:hover .smh-media-card__overlay{opacity:1;}
.smh-media-card__copy-lbl{color:#fff;font-size:11px;font-weight:700;}
.smh-media-card__info{padding:7px 10px;}
.smh-media-card__name{font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.smh-media-card__dims{font-size:10px;color:var(--txt-muted);margin-top:1px;}
.smh-media-note{
  display:flex;align-items:center;gap:8px;
  font-size:12px;color:var(--txt-muted);padding:10px 14px;
  background:var(--surface);border:1px solid var(--border);border-radius:8px;
}

/* Scheduled queue */
.smh-queue-list{display:flex;flex-direction:column;gap:16px;}
.smh-queue-day{}
.smh-queue-day__label{
  font-size:12px;font-weight:700;color:var(--txt-muted);
  padding:8px 0 10px;border-bottom:1px solid var(--border);margin-bottom:10px;
  text-transform:uppercase;letter-spacing:.05em;
}
.smh-queue-day__today{color:#D4A017;}
.smh-queue-item{
  display:flex;align-items:flex-start;gap:14px;
  background:var(--surface);border:1px solid var(--border);
  border-left:3px solid var(--gold);border-radius:10px;padding:14px 16px;
  transition:box-shadow .2s;
}
.smh-queue-item:hover{box-shadow:0 2px 12px rgba(0,0,0,.12);}
.smh-queue-item__left{display:flex;flex-direction:column;gap:4px;min-width:90px;flex-shrink:0;}
.smh-queue-item__platform{font-size:12px;font-weight:700;}
.smh-queue-item__time{font-size:18px;font-weight:800;color:var(--txt-main);}
.smh-queue-item__main{flex:1;min-width:0;}
.smh-queue-item__title{font-size:13px;font-weight:700;margin-bottom:4px;}
.smh-queue-item__excerpt{font-size:12px;color:var(--txt-muted);line-height:1.4;margin-bottom:4px;}
.smh-queue-item__tags{font-size:11px;word-break:break-all;}
.smh-queue-item__right{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex-shrink:0;}
.smh-queue-item__status{font-size:11px;font-weight:700;}
.smh-queue-item__actions{display:flex;gap:5px;}

/* Responsive */
@media(max-width:768px){
  .smh-hero{padding:20px 18px;flex-direction:column;}
  .smh-hero__stats{width:100%;}
  .smh-hero__stat{padding:12px 14px;}
  .smh-hero__stat-val{font-size:18px;}
  .smh-hero__title{font-size:20px;}
  .smh-nav{gap:0 12px;}
  .smh-post-grid{grid-template-columns:1fr 1fr;}
  .smh-media-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));}
  .smh-queue-item{flex-wrap:wrap;}
  .smh-queue-item__left{min-width:60px;}
}
@media(max-width:480px){
  .smh-post-grid{grid-template-columns:1fr;}
  .smh-hero__stats{flex-wrap:wrap;}
}

/* ══════════════════════════════════════════════════════
   WHATSAPP MARKETING — Standalone Module
══════════════════════════════════════════════════════ */

/* Hero */
.wah-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0a2a12 0%,#0d1f0f 60%,#0B1D3A 100%);border:1px solid rgba(37,211,102,.2);border-radius:16px;padding:28px 32px;margin-bottom:18px;gap:24px;flex-wrap:wrap;}
.wah-hero__left{flex:1;min-width:240px;}
.wah-hero__badge{display:inline-flex;align-items:center;background:rgba(37,211,102,.12);border:1px solid rgba(37,211,102,.3);color:#25D366;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border-radius:20px;padding:4px 12px;margin-bottom:12px;}
.wah-hero__title{font-size:26px;font-weight:900;color:#fff;margin:0 0 8px;}
.wah-hero__sub{font-size:13px;color:rgba(255,255,255,.6);margin:0;line-height:1.5;max-width:480px;}
.wah-hero__stats{display:flex;align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;flex-shrink:0;}
.wah-stat{padding:16px 20px;text-align:center;display:flex;flex-direction:column;gap:4px;}
.wah-stat--div{width:1px;background:rgba(255,255,255,.1);align-self:stretch;padding:0;}
.wah-stat__val{font-size:22px;font-weight:800;color:#25D366;line-height:1;}
.wah-stat__lbl{font-size:11px;color:rgba(255,255,255,.5);white-space:nowrap;}

/* API notice */
.wah-api-notice{display:flex;align-items:center;gap:10px;background:rgba(37,211,102,.07);border:1px solid rgba(37,211,102,.2);border-radius:10px;padding:11px 16px;margin-bottom:18px;font-size:13px;color:#22c55e;}

/* Tab nav */
.wah-nav{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:20px;padding-bottom:4px;border-bottom:1px solid var(--border);overflow-x:auto;}
.wah-nav__item{display:flex;align-items:center;gap:7px;padding:9px 14px;border-radius:8px;font-size:12.5px;font-weight:500;color:var(--txt-muted);text-decoration:none;border:1px solid transparent;transition:background .15s,color .15s;white-space:nowrap;}
.wah-nav__item:hover{background:var(--surface);color:var(--txt-main);}
.wah-nav__item--active{background:rgba(37,211,102,.1);color:#25D366;border-color:rgba(37,211,102,.3);font-weight:700;}
.wah-nav__icon{font-size:15px;}
.wah-nav__label{font-size:12.5px;}

/* Section header */
.wah-section-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px;gap:14px;flex-wrap:wrap;}
.wah-section-title{font-size:18px;font-weight:800;margin:0 0 4px;}
.wah-section-sub{font-size:12px;color:var(--txt-muted);margin:0;}

/* Compose */
.wah-compose-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.wah-compose-form{margin:0;}
.wah-compose-actions{display:flex;gap:8px;margin-top:4px;}
.wah-send-btn{background:#25D366;color:#fff;border:none;display:flex;align-items:center;gap:6px;}
.wah-send-btn:hover{background:#1ea855;}
.wah-send-btn--sm{padding:7px 12px;font-size:11px;}
.wah-history{margin:0;}
.wah-history-list{max-height:440px;overflow-y:auto;}
.wah-history-item{padding:12px 16px;border-bottom:1px solid var(--border);}
.wah-history-item:last-child{border-bottom:none;}
.wah-history-item__top{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px;}
.wah-history-item__name{font-size:13px;font-weight:600;}
.wah-history-item__status{font-size:11px;white-space:nowrap;}
.wah-history-item__camp{font-size:11px;color:var(--gold);margin-bottom:3px;}
.wah-history-item__msg{font-size:12px;color:var(--txt-muted);line-height:1.4;}
.wah-history-item__time{font-size:11px;color:var(--txt-muted);margin-top:4px;}

/* Broadcast */
.wah-broadcast-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.wah-audience-pill{background:rgba(37,211,102,.1);border:1px solid rgba(37,211,102,.25);border-radius:8px;padding:8px 12px;font-size:12px;color:#25D366;margin-top:8px;display:flex;align-items:center;gap:6px;}
.wah-audience-pill__dot{width:8px;height:8px;border-radius:50%;background:#25D366;flex-shrink:0;}
.wah-broadcast-warning{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--txt-muted);background:rgba(245,158,11,.06);border:1px solid rgba(245,158,11,.2);border-radius:8px;padding:9px 12px;margin-bottom:12px;}
.wah-segment-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.wah-segment-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px;}
.wah-segment-card__name{font-size:11px;color:var(--txt-muted);margin-bottom:4px;}
.wah-segment-card__count{font-size:20px;font-weight:800;color:#25D366;}
.wah-segment-card__bar{height:4px;background:var(--bg);border-radius:2px;margin:6px 0 3px;overflow:hidden;}
.wah-segment-card__fill{height:100%;background:rgba(37,211,102,.5);border-radius:2px;}
.wah-segment-card__pct{font-size:10px;color:var(--txt-muted);}

/* Reminder cards */
.wah-reminder-list{display:flex;flex-direction:column;gap:10px;}
.wah-reminder-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--border);border-left:3px solid #25D366;border-radius:10px;padding:14px 16px;}
.wah-reminder-card__left{min-width:72px;text-align:center;flex-shrink:0;}
.wah-reminder-card__days{font-size:20px;font-weight:800;line-height:1;}
.wah-reminder-card__label{font-size:10px;color:var(--txt-muted);margin-top:2px;}
.wah-reminder-card__main{flex:1;min-width:0;}
.wah-reminder-card__name{font-size:13px;font-weight:700;margin-bottom:3px;}
.wah-reminder-card__details{font-size:12px;color:var(--txt-muted);}
.wah-reminder-card__phone{font-size:11px;color:#25D366;margin-top:2px;}
.wah-reminder-card__action{flex-shrink:0;}

/* Template bar */
.wah-template-bar{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:16px;}
.wah-template-box{font-size:12px;color:var(--txt-muted);line-height:1.5;margin-top:8px;font-style:italic;}

/* Loyalty */
.wah-mini-stat{display:flex;flex-direction:column;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 14px;font-size:11px;color:var(--txt-muted);}
.wah-mini-stat__val{font-size:18px;font-weight:800;color:#25D366;}
.wah-loyalty-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;}
.wah-loyalty-item{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px;}
.wah-loyalty-item__tier{font-size:10px;font-weight:700;border-radius:4px;padding:3px 7px;white-space:nowrap;}
.wah-loyalty-item__main{flex:1;min-width:0;}
.wah-loyalty-item__name{font-size:12px;font-weight:700;}
.wah-loyalty-item__pts{font-size:11px;color:var(--txt-muted);}

/* Empty states */
.wah-empty{text-align:center;padding:40px 20px;color:var(--txt-muted);font-size:13px;}
.wah-empty-full{text-align:center;padding:60px 40px;background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-top:8px;}
.wah-empty-full h4{margin:0 0 8px;font-size:16px;}

/* Automated Messages */
.wah-auto-notice{display:flex;align-items:center;gap:8px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.2);border-radius:10px;padding:10px 14px;font-size:12px;color:#818cf8;margin-bottom:16px;}
.wah-auto-notice--blue{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.2);color:#60a5fa;}
.wah-auto-grid{display:flex;flex-direction:column;gap:10px;}
.wah-auto-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:0;overflow:hidden;transition:border-color .2s;}
.wah-auto-card--on{border-color:rgba(37,211,102,.4);}
.wah-auto-card__head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;gap:12px;}
.wah-auto-card__label{font-size:13px;font-weight:700;margin-bottom:2px;}
.wah-auto-card__trigger{font-size:11px;color:var(--txt-muted);}
.wah-auto-card__body{padding:0 16px 14px;border-top:1px solid var(--border);}
.wah-auto-badge{font-size:10px;font-weight:800;padding:3px 8px;border-radius:4px;background:var(--bg);color:var(--txt-muted);}
.wah-auto-badge--on{background:rgba(37,211,102,.12);color:#25D366;}
.wah-toggle{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0;cursor:pointer;}
.wah-toggle__input{opacity:0;width:0;height:0;}
.wah-toggle__track{position:absolute;inset:0;background:var(--bg);border:1px solid var(--border);border-radius:11px;transition:background .2s,border-color .2s;}
.wah-toggle__thumb{position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:2px;left:2px;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.3);}
.wah-toggle__input:checked~.wah-toggle__track{background:#25D366;border-color:#25D366;}
.wah-toggle__input:checked~.wah-toggle__track .wah-toggle__thumb{transform:translateX(18px);}

/* Chatbot Builder */
.wah-chatbot-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.wah-chatbot-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;}
.wah-chatbot-card__head{display:flex;align-items:flex-start;gap:10px;}
.wah-chatbot-card__label{font-size:13px;font-weight:700;margin-bottom:3px;}
.wah-chatbot-card__keywords{font-size:11px;color:var(--txt-muted);}
.wah-chatbot-card__preview{font-size:12px;color:var(--txt-muted);line-height:1.4;margin-top:8px;font-style:italic;}

/* Message Templates */
.wah-tpl-cats{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;}
.wah-tpl-cat{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:12.5px;color:var(--txt-muted);text-decoration:none;border:1px solid var(--border);background:var(--surface);transition:all .15s;}
.wah-tpl-cat:hover{color:var(--txt-main);border-color:rgba(37,211,102,.3);}
.wah-tpl-cat--active{background:rgba(37,211,102,.1);color:#25D366;border-color:rgba(37,211,102,.4);font-weight:700;}
.wah-tpl-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.wah-tpl-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;}
.wah-tpl-card__head{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.wah-tpl-card__name{font-size:13px;font-weight:700;}
.wah-tpl-card__preview{font-size:12px;color:var(--txt-muted);line-height:1.4;margin-top:8px;font-style:italic;}

/* Guest Support Inbox */
.wah-inbox-stats{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;}
.wah-inbox-stat{flex:1;min-width:100px;display:flex;flex-direction:column;align-items:center;background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--sc);border-radius:10px;padding:12px;}
.wah-inbox-stat__val{font-size:22px;font-weight:800;color:var(--sc);}
.wah-inbox-stat__lbl{font-size:11px;color:var(--txt-muted);margin-top:2px;}
.wah-inbox-list{display:flex;flex-direction:column;gap:8px;}
.wah-inbox-item{display:flex;align-items:flex-start;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 14px;}
.wah-inbox-item__avatar{width:38px;height:38px;border-radius:50%;background:rgba(37,211,102,.15);color:#25D366;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.wah-inbox-item__main{flex:1;min-width:0;}
.wah-inbox-item__top{display:flex;justify-content:space-between;gap:6px;margin-bottom:2px;}
.wah-inbox-item__name{font-size:13px;font-weight:700;}
.wah-inbox-item__time{font-size:11px;color:var(--txt-muted);white-space:nowrap;}
.wah-inbox-item__phone{font-size:11px;color:#25D366;}
.wah-inbox-item__msg{font-size:12px;color:var(--txt-muted);line-height:1.4;margin-top:3px;}
.wah-inbox-item__status{font-size:12px;font-weight:600;white-space:nowrap;flex-shrink:0;}

/* Campaign Analytics */
.wah-analytics-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:16px;}
.wah-ana-kpi{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--kc);border-radius:10px;padding:14px;text-align:center;}
.wah-ana-kpi__ico{font-size:20px;margin-bottom:4px;}
.wah-ana-kpi__val{font-size:20px;font-weight:800;color:var(--kc);}
.wah-ana-kpi__lbl{font-size:11px;color:var(--txt-muted);margin-top:2px;}
.wah-analytics-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px;}

/* Responsive */
@media(max-width:900px){
  .wah-compose-grid,.wah-broadcast-grid,.wah-chatbot-grid,.wah-tpl-grid{grid-template-columns:1fr;}
  .wah-analytics-grid{grid-template-columns:1fr;}
  .wah-analytics-kpis{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:768px){
  .wah-hero{padding:20px 18px;flex-direction:column;}
  .wah-hero__stats{width:100%;}
  .wah-nav{gap:4px;overflow-x:auto;flex-wrap:nowrap;}
  .wah-segment-grid{grid-template-columns:1fr;}
  .wah-reminder-card{flex-wrap:wrap;}
  .wah-analytics-kpis{grid-template-columns:repeat(2,1fr);}
  .wah-inbox-stats{gap:8px;}
  .wah-cbot-tabs{gap:4px;}
  .wah-chatbot-grid{grid-template-columns:1fr!important;}
}

/* ══ CHATBOT BUILDER v2 ══ */
/* Chatbot badge */
.wah-cbot-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(37,211,102,.1);border:1px solid rgba(37,211,102,.25);color:#25D366;font-size:11px;font-weight:700;border-radius:20px;padding:5px 12px;}
.wah-cbot-badge__dot{width:7px;height:7px;border-radius:50%;background:#25D366;animation:wah-pulse 2s infinite;}
@keyframes wah-pulse{0%,100%{opacity:1}50%{opacity:.4}}
/* Chatbot sub-tabs */
.wah-cbot-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;border-bottom:1px solid var(--border);padding-bottom:10px;}
.wah-cbot-tab{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:12.5px;color:var(--txt-muted);text-decoration:none;border:1px solid transparent;transition:all .15s;}
.wah-cbot-tab:hover{background:var(--surface);color:var(--txt-main);}
.wah-cbot-tab--active{background:rgba(37,211,102,.1);color:#25D366;border-color:rgba(37,211,102,.3);font-weight:700;}
.wah-cbot-tab__lbl{font-size:12.5px;}
/* Inline badges */
.wah-cbot-badge-inline{font-size:9px;font-weight:800;padding:2px 6px;border-radius:10px;letter-spacing:.04em;}
.wah-cbot-badge-inline--green{background:rgba(37,211,102,.12);color:#25D366;}
.wah-cbot-badge-inline--violet{background:rgba(139,92,246,.12);color:#8b5cf6;}
.wah-cbot-data-badge{font-size:10px;color:#25D366;margin-top:2px;background:rgba(37,211,102,.07);border-radius:4px;padding:2px 6px;display:inline-block;}
.wah-cbot-auto-label{display:flex;align-items:center;gap:5px;font-size:11px;color:#25D366;margin-top:8px;padding:6px 8px;background:rgba(37,211,102,.06);border-radius:6px;border:1px solid rgba(37,211,102,.2);}
/* Phone mockup */
.wah-phone-wrap{display:flex;justify-content:center;}
.wah-phone{width:100%;max-width:360px;border:2px solid var(--border);border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:0 8px 32px rgba(0,0,0,.3);}
.wah-phone__bar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(37,211,102,.15);border-bottom:1px solid rgba(37,211,102,.2);}
.wah-phone__dot{width:8px;height:8px;border-radius:50%;background:#25D366;}
.wah-phone__name{font-size:13px;font-weight:700;flex:1;}
.wah-phone__status{font-size:10px;color:#25D366;}
.wah-phone__chat{height:320px;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px;}
.wah-phone__input{display:flex;gap:6px;padding:8px;border-top:1px solid var(--border);}
.wah-phone__field{flex:1;border:1px solid var(--border);border-radius:20px;padding:8px 14px;font-size:12px;background:var(--bg);color:var(--txt-main);}
.wah-phone__send{background:#25D366;color:#fff;border:none;border-radius:50%;width:34px;height:34px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;}
/* Chat messages */
.wah-msg{display:flex;max-width:85%;}
.wah-msg--bot{align-self:flex-start;}
.wah-msg--user{align-self:flex-end;margin-left:auto;}
.wah-msg__bubble{padding:8px 12px;border-radius:12px;font-size:12px;line-height:1.5;white-space:pre-wrap;}
.wah-msg--bot .wah-msg__bubble{background:var(--bg);border:1px solid var(--border);border-bottom-left-radius:2px;}
.wah-msg--user .wah-msg__bubble{background:rgba(37,211,102,.15);border:1px solid rgba(37,211,102,.25);border-bottom-right-radius:2px;text-align:right;}
/* Sim log */
.wah-sim-log{height:280px;overflow-y:auto;border:1px solid var(--border);border-radius:10px;background:var(--bg);}
.wah-sim-entry{padding:10px 12px;border-bottom:1px solid var(--border);}
.wah-sim-entry:last-child{border-bottom:none;}
.wah-sim-entry__intent{font-size:11px;color:#25D366;margin-bottom:3px;}
.wah-sim-entry__in{font-size:11px;color:var(--txt-muted);margin-bottom:2px;}
.wah-sim-entry__out{font-size:11px;color:var(--txt-main);}
/* Scenario buttons */
.wah-scenario{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color .15s;}
.wah-scenario:hover{border-color:rgba(37,211,102,.4);}
/* Data rows */
.wah-data-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);}
.wah-data-row:last-child{border-bottom:none;}

/* ════════════════════════════════════════════
   MARKETPLACE v2 — PREMIUM SAAS
   ════════════════════════════════════════════ */
/* === shell === */
.mp2-shell{max-width:1140px;margin:0 auto;}
/* === header === */
.mp2-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap;}
.mp2-header-eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--gold,#D4A017);text-transform:uppercase;margin-bottom:4px;}
.mp2-header-title{font-size:1.6rem;font-weight:700;color:var(--txt-main);margin:0;}
.mp2-header-stats{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start;}
.mp2-hstat{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 18px;text-align:center;min-width:80px;}
.mp2-hstat-n{display:block;font-size:1.4rem;font-weight:700;color:var(--gold,#D4A017);}
.mp2-hstat-l{font-size:10px;color:var(--txt-muted);text-transform:uppercase;letter-spacing:.5px;}
/* === nav === */
.mp2-nav{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:24px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:6px;}
.mp2-nav-item{display:flex;align-items:center;gap:6px;padding:9px 14px;border-radius:10px;text-decoration:none;color:var(--txt-muted);font-size:.82rem;font-weight:500;transition:all .15s;white-space:nowrap;position:relative;}
.mp2-nav-item:hover{background:rgba(255,255,255,.06);color:var(--txt-main);}
.mp2-nav-item--active{background:var(--gold,#D4A017);color:#0B1D3A;font-weight:700;}
.mp2-nav-icon{display:inline-flex;width:15px;height:15px;flex-shrink:0;}
.mp2-nav-icon svg{width:15px;height:15px;}
.mp2-nav-label{}
.mp2-nav-badge{background:rgba(255,255,255,.2);border-radius:20px;font-size:9px;font-weight:700;padding:1px 6px;margin-left:2px;}
.mp2-nav-item--active .mp2-nav-badge{background:rgba(11,29,58,.25);}
/* === content === */
.mp2-content{}
/* === section titles === */
.mp2-section-title{font-size:1.2rem;font-weight:700;color:var(--txt-main);margin:0 0 6px;}
.mp2-section-desc{font-size:.87rem;color:var(--txt-muted);margin:0 0 20px;line-height:1.6;}
/* === shared buttons === */
.mp2-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:var(--gold,#D4A017);border:1px solid var(--gold,#D4A017);border-radius:8px;color:#0B1D3A;font-size:.82rem;font-weight:700;text-decoration:none;cursor:pointer;transition:opacity .15s;white-space:nowrap;}
.mp2-btn-primary:hover{opacity:.88;}
.mp2-btn-primary svg,.mp2-btn-primary .rhcp-nav-icon{width:13px;height:13px;}
.mp2-btn-outline{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--txt-main);font-size:.82rem;font-weight:500;text-decoration:none;cursor:pointer;transition:border-color .15s;white-space:nowrap;}
.mp2-btn-outline:hover{border-color:var(--gold,#D4A017);color:var(--gold,#D4A017);}
.mp2-btn-ghost{display:inline-flex;align-items:center;padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--txt-muted);font-size:.82rem;text-decoration:none;transition:all .15s;}
.mp2-btn-ghost:hover{border-color:var(--txt-muted);color:var(--txt-main);}
.mp2-btn-ghost-sm{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:var(--bg-alt);border:1px solid var(--border);border-radius:8px;color:var(--txt-muted);text-decoration:none;transition:border-color .15s;}
.mp2-btn-ghost-sm:hover{border-color:var(--gold,#D4A017);color:var(--gold,#D4A017);}
.mp2-btn-ghost-sm svg,.mp2-btn-ghost-sm .rhcp-nav-icon{width:14px;height:14px;}
/* === cat pill === */
.mp2-cat-pill{display:inline-block;font-size:10px;font-weight:600;padding:2px 8px;border-radius:20px;background:color-mix(in srgb,var(--pill-c,#9CA3AF) 15%,transparent);color:var(--pill-c,#9CA3AF);border:1px solid color-mix(in srgb,var(--pill-c,#9CA3AF) 30%,transparent);}
/* === stars === */
.mp2-star{color:rgba(255,255,255,.15);font-size:11px;}
.mp2-star--on{color:#F59E0B;}
.mp2-star--half{color:#F59E0B;opacity:.6;}
/* === verified badge === */
.mp2-verified-badge{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.3);color:#22C55E;margin-left:auto;flex-shrink:0;}
.mp2-verified-badge svg,.mp2-verified-badge .rhcp-nav-icon{width:14px;height:14px;}
.mp2-verified-dot{position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:50%;background:#22C55E;}
/* === empty state === */
.mp2-empty-state{text-align:center;padding:60px 24px;}
.mp2-empty-icon{width:56px;height:56px;margin:0 auto 16px;opacity:.35;color:var(--txt-muted);}
.mp2-empty-icon svg,.mp2-empty-icon .rhcp-nav-icon{width:56px;height:56px;}
.mp2-empty-state h3{font-size:1rem;color:var(--txt-main);margin:0 0 6px;}
.mp2-empty-state p{font-size:.85rem;color:var(--txt-muted);margin:0 0 16px;}
/* === overview dashboard cards === */
.mp2-overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px;}
.mp2-ov-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px 20px;text-decoration:none;color:var(--txt-main);transition:border-color .2s,transform .15s;position:relative;overflow:hidden;}
.mp2-ov-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ov-c,#D4A017);border-radius:14px 0 0 14px;}
.mp2-ov-card:hover{border-color:var(--ov-c,#D4A017);transform:translateY(-2px);}
.mp2-ov-card-icon{width:44px;height:44px;border-radius:10px;background:color-mix(in srgb,var(--ov-c,#D4A017) 15%,transparent);border:1px solid color-mix(in srgb,var(--ov-c,#D4A017) 25%,transparent);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ov-c,#D4A017);}
.mp2-ov-card-icon svg,.mp2-ov-card-icon .rhcp-nav-icon{width:20px;height:20px;}
.mp2-ov-card-body{flex:1;min-width:0;}
.mp2-ov-card-val{font-size:1.5rem;font-weight:800;color:var(--txt-main);line-height:1;}
.mp2-ov-card-title{font-size:.85rem;font-weight:600;color:var(--txt-main);margin:2px 0;}
.mp2-ov-card-sub{font-size:.75rem;color:var(--txt-muted);}
.mp2-ov-card-arrow{color:var(--txt-muted);flex-shrink:0;width:16px;height:16px;}
.mp2-ov-card-arrow svg,.mp2-ov-card-arrow .rhcp-nav-icon{width:16px;height:16px;}
/* overview section headings */
.mp2-ov-section{margin-bottom:28px;}
.mp2-ov-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.mp2-ov-section-title{font-size:1rem;font-weight:700;color:var(--txt-main);margin:0;}
.mp2-ov-see-all{font-size:.8rem;color:var(--gold,#D4A017);text-decoration:none;}
.mp2-ov-see-all:hover{text-decoration:underline;}
/* mini cards row */
.mp2-card-row{display:flex;gap:12px;flex-wrap:wrap;}
.mp2-mini-card{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 16px;flex:1;min-width:200px;position:relative;}
.mp2-mini-avatar{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0;background:color-mix(in srgb,var(--mc,#D4A017) 18%,transparent);color:var(--mc,#D4A017);}
.mp2-mini-name{font-size:.87rem;font-weight:600;color:var(--txt-main);margin-bottom:4px;}
.mp2-mini-stars{font-size:.75rem;color:var(--txt-muted);margin-top:4px;}
.mp2-mini-stars .mp2-star{font-size:10px;}
/* deals row */
.mp2-deals-row{display:flex;gap:12px;flex-wrap:wrap;}
.mp2-deal-mini{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px;flex:1;min-width:180px;position:relative;}
.mp2-deal-mini--hot{border-color:rgba(212,160,23,.4);}
.mp2-deal-hot-badge{position:absolute;top:-1px;right:10px;font-size:8px;font-weight:700;background:#D4A017;color:#0B1D3A;padding:2px 8px;border-radius:0 0 6px 6px;letter-spacing:1px;}
.mp2-deal-type-badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:20px;display:inline-block;margin-bottom:6px;}
.mp2-deal-free{background:rgba(34,197,94,.15);color:#22C55E;}
.mp2-deal-pct{background:rgba(212,160,23,.15);color:#D4A017;}
.mp2-deal-mini-title{font-size:.82rem;font-weight:600;color:var(--txt-main);margin-bottom:4px;line-height:1.4;}
.mp2-deal-mini-until{font-size:.73rem;color:var(--txt-muted);margin-bottom:10px;}
.mp2-deal-cta{display:inline-block;font-size:.75rem;font-weight:600;padding:5px 12px;background:var(--gold,#D4A017);color:#0B1D3A;border-radius:6px;text-decoration:none;}
/* === listing layout (2-col: sidebar + main) === */
.mp2-listing-layout{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:start;}
/* === filter sidebar === */
.mp2-filter-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px;position:sticky;top:20px;}
.mp2-filter-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--txt-muted);margin-bottom:14px;}
.mp2-search-wrap{position:relative;margin-bottom:14px;}
.mp2-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:14px;height:14px;color:var(--txt-muted);pointer-events:none;}
.mp2-search-icon svg,.mp2-search-icon .rhcp-nav-icon{width:14px;height:14px;}
.mp2-search-input{width:100%;padding:8px 10px 8px 32px;background:var(--bg-alt);border:1px solid var(--border);border-radius:8px;color:var(--txt-main);font-size:.83rem;box-sizing:border-box;}
.mp2-search-input:focus{outline:none;border-color:var(--gold,#D4A017);}
.mp2-filter-group{margin-bottom:14px;}
.mp2-filter-group-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--txt-muted);margin-bottom:8px;}
.mp2-filter-radio{display:flex;align-items:center;gap:7px;font-size:.8rem;color:var(--txt-muted);padding:5px 6px;border-radius:7px;cursor:pointer;transition:background .1s;margin-bottom:2px;}
.mp2-filter-radio input{accent-color:var(--gold,#D4A017);}
.mp2-filter-radio:hover{background:rgba(255,255,255,.05);}
.mp2-filter-radio--active{background:rgba(212,160,23,.08);color:var(--txt-main);font-weight:600;}
.mp2-filter-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.mp2-filter-count{margin-left:auto;font-size:.72rem;background:var(--bg-alt);border-radius:20px;padding:1px 6px;color:var(--txt-muted);}
.mp2-filter-btn{width:100%;padding:8px;background:var(--gold,#D4A017);border:none;border-radius:8px;color:#0B1D3A;font-size:.82rem;font-weight:700;cursor:pointer;margin-top:6px;}
/* === main listing area === */
.mp2-listing-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap;}
.mp2-listing-count{font-size:.85rem;color:var(--txt-muted);}
.mp2-listing-count strong{color:var(--txt-main);}
.mp2-clear-filter{font-size:.78rem;color:var(--txt-muted);text-decoration:underline;cursor:pointer;margin-left:auto;}
/* === vendor card grid === */
.mp2-vendor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;}
.mp2-vendor-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:10px;position:relative;transition:border-color .15s,box-shadow .15s;}
.mp2-vendor-card:hover{border-color:rgba(212,160,23,.25);box-shadow:0 4px 24px rgba(0,0,0,.25);}
.mp2-vendor-card--featured{border-color:rgba(212,160,23,.4);}
.mp2-vendor-featured-ribbon{position:absolute;top:0;right:16px;font-size:9px;font-weight:700;background:var(--gold,#D4A017);color:#0B1D3A;padding:3px 10px;border-radius:0 0 8px 8px;letter-spacing:.5px;text-transform:uppercase;}
.mp2-vendor-card-head{display:flex;align-items:center;gap:12px;}
.mp2-vendor-avatar{width:46px;height:46px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;flex-shrink:0;}
.mp2-vendor-head-info{flex:1;min-width:0;}
.mp2-vendor-name{font-size:.95rem;font-weight:700;color:var(--txt-main);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mp2-vendor-tagline{font-size:.78rem;color:var(--txt-muted);margin:0;line-height:1.5;border-left:2px solid rgba(212,160,23,.3);padding-left:8px;}
.mp2-vendor-meta{display:flex;flex-wrap:wrap;gap:8px;}
.mp2-vmeta-item{display:flex;align-items:center;gap:4px;font-size:.76rem;color:var(--txt-muted);}
.mp2-vmeta-item svg,.mp2-vmeta-item .rhcp-nav-icon{width:11px;height:11px;flex-shrink:0;}
.mp2-price-tag{color:var(--gold,#D4A017);font-weight:600;}
.mp2-vendor-desc{font-size:.8rem;color:var(--txt-muted);margin:0;line-height:1.55;}
.mp2-contact-name{font-size:.76rem;color:var(--txt-muted);display:flex;align-items:center;gap:4px;}
.mp2-contact-name svg,.mp2-contact-name .rhcp-nav-icon{width:11px;height:11px;}
.mp2-vendor-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:10px;border-top:1px solid var(--border);}
.mp2-vendor-phone{font-size:.75rem;}
.mp2-vendor-phone a{color:var(--txt-muted);text-decoration:none;display:flex;align-items:center;gap:4px;}
.mp2-vendor-phone a:hover{color:var(--gold,#D4A017);}
.mp2-vendor-phone .rhcp-nav-icon{width:11px;height:11px;}
/* === tech partners === */
.mp2-tech-wrap{}
.mp2-tech-intro{margin-bottom:24px;}
.mp2-tech-section{margin-bottom:28px;}
.mp2-tech-section-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border);}
.mp2-tech-section-head h3{font-size:1rem;font-weight:700;color:var(--txt-main);margin:0;}
.mp2-tech-icon{width:22px;height:22px;color:var(--tc,#D4A017);display:flex;align-items:center;}
.mp2-tech-icon svg,.mp2-tech-icon .rhcp-nav-icon{width:20px;height:20px;color:var(--tc,#D4A017);}
.mp2-tech-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;}
.mp2-tech-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:16px;display:flex;align-items:flex-start;gap:12px;position:relative;transition:border-color .15s;}
.mp2-tech-card:hover{border-color:rgba(212,160,23,.25);}
.mp2-tech-card--featured{border-color:rgba(212,160,23,.3);}
.mp2-tech-badge{position:absolute;top:10px;right:10px;font-size:9px;font-weight:700;background:rgba(212,160,23,.15);color:#D4A017;padding:2px 7px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;}
.mp2-tech-logo{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0;border:1px solid;}
.mp2-tech-info{flex:1;min-width:0;}
.mp2-tech-name{font-size:.9rem;font-weight:700;color:var(--txt-main);margin-bottom:4px;}
.mp2-tech-desc{font-size:.78rem;color:var(--txt-muted);margin:0 0 10px;line-height:1.5;}
.mp2-tech-btn{display:inline-block;font-size:.75rem;font-weight:600;padding:5px 12px;border:1px solid color-mix(in srgb,var(--tc,#D4A017) 50%,transparent);border-radius:6px;color:var(--tc,#D4A017);text-decoration:none;transition:background .15s;}
.mp2-tech-btn:hover{background:color-mix(in srgb,var(--tc,#D4A017) 12%,transparent);}
/* === featured partners === */
.mp2-partners-wrap{}
.mp2-partner-banner{background:linear-gradient(135deg,rgba(212,160,23,.1),rgba(212,160,23,.03));border:1px solid rgba(212,160,23,.2);border-radius:16px;padding:20px 24px;margin-bottom:28px;}
.mp2-partner-banner-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.mp2-pb-star{width:36px;height:36px;color:#D4A017;flex-shrink:0;}
.mp2-pb-star svg,.mp2-pb-star .rhcp-nav-icon{width:36px;height:36px;}
.mp2-partner-banner-inner h3{font-size:.95rem;font-weight:700;color:var(--txt-main);margin:0 0 3px;}
.mp2-partner-banner-inner p{font-size:.83rem;color:var(--txt-muted);margin:0;}
.mp2-partner-apply-btn{margin-left:auto;padding:9px 20px;background:var(--gold,#D4A017);color:#0B1D3A;font-weight:700;border-radius:8px;text-decoration:none;font-size:.82rem;white-space:nowrap;}
.mp2-partners-sub{font-size:.9rem;font-weight:700;color:var(--txt-main);margin:0 0 14px;text-transform:uppercase;letter-spacing:.5px;}
.mp2-partners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:12px;}
.mp2-partners-grid--sm{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));}
.mp2-partner-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--pc,#D4A017);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s;}
.mp2-partner-card:hover{border-color:rgba(212,160,23,.3);}
.mp2-partner-card--feat{border-top:2px solid var(--pc,#D4A017);}
.mp2-pcard-top{display:flex;align-items:center;justify-content:space-between;}
.mp2-partner-logo{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;}
.mp2-partner-logo--sm{width:40px;height:40px;border-radius:8px;}
.mp2-pbadge{font-size:9px;font-weight:700;padding:2px 8px;border-radius:20px;background:rgba(156,163,175,.12);color:#9CA3AF;text-transform:uppercase;letter-spacing:.5px;}
.mp2-pbadge-gold{background:rgba(212,160,23,.15);color:#D4A017;}
.mp2-pname{font-size:.95rem;font-weight:700;color:var(--txt-main);margin:0;}
.mp2-ptagline{font-size:.8rem;color:var(--txt-muted);margin:0;line-height:1.5;}
.mp2-pdesc{font-size:.78rem;color:var(--txt-muted);margin:0;line-height:1.5;}
.mp2-pdeal{display:flex;align-items:center;gap:7px;background:rgba(34,197,94,.07);border:1px solid rgba(34,197,94,.18);border-radius:8px;padding:7px 10px;font-size:.78rem;color:#22C55E;}
.mp2-pdeal svg,.mp2-pdeal .rhcp-nav-icon{width:12px;height:12px;}
.mp2-pactions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:10px;border-top:1px solid var(--border);}
/* === deals === */
.mp2-deals-wrap{}
.mp2-deals-header{margin-bottom:20px;}
.mp2-deals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;}
.mp2-deal-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:8px;position:relative;transition:border-color .15s;}
.mp2-deal-card:hover{border-color:rgba(212,160,23,.25);}
.mp2-deal-card--hot{border-color:rgba(212,160,23,.4);}
.mp2-deal-hotbar{position:absolute;top:0;left:0;right:0;background:linear-gradient(135deg,#D4A017,#b8860b);color:#0B1D3A;font-size:9px;font-weight:800;letter-spacing:2px;padding:4px 16px;border-radius:16px 16px 0 0;text-align:center;}
.mp2-deal-card--hot{padding-top:32px;}
.mp2-deal-top{display:flex;align-items:center;gap:10px;}
.mp2-deal-logo{width:42px;height:42px;border-radius:10px;background:var(--bg-alt);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:var(--txt-muted);flex-shrink:0;}
.mp2-deal-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.mp2-deal-type{font-size:10px;font-weight:600;padding:2px 8px;border-radius:20px;}
.mp2-deal-pct{font-size:10px;font-weight:700;background:rgba(212,160,23,.15);color:#D4A017;padding:2px 8px;border-radius:20px;}
.mp2-deal-free{background:rgba(34,197,94,.15);color:#22C55E;}
.mp2-deal-title{font-size:.9rem;font-weight:700;color:var(--txt-main);margin:0;line-height:1.4;}
.mp2-deal-desc{font-size:.8rem;color:var(--txt-muted);margin:0;line-height:1.5;}
.mp2-deal-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--border);}
.mp2-deal-exp{font-size:.75rem;color:var(--txt-muted);display:flex;align-items:center;gap:4px;}
.mp2-deal-exp .rhcp-nav-icon,.mp2-deal-exp svg{width:11px;height:11px;}
.mp2-deal-exp--soon{color:#F59E0B;}
.mp2-deal-prov{font-size:.75rem;font-weight:600;color:var(--txt-muted);}
.mp2-deal-btn{margin-top:auto;align-self:flex-start;}
/* === analytics === */
.mp2-analytics-wrap{}
.mp2-snap-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px;}
.mp2-snap-card{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--sc,#D4A017);border-radius:12px;padding:16px;text-align:center;}
.mp2-snap-val{font-size:1.6rem;font-weight:800;color:var(--sc,#D4A017);}
.mp2-snap-lbl{font-size:.75rem;color:var(--txt-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:3px;}
.mp2-analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.mp2-ana-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;}
.mp2-ana-card--full{grid-column:1/-1;}
.mp2-ana-title{font-size:.87rem;font-weight:700;color:var(--txt-main);margin:0 0 14px;text-transform:uppercase;letter-spacing:.5px;}
.mp2-bar-list{display:flex;flex-direction:column;gap:8px;}
.mp2-bar-row{display:flex;align-items:center;gap:8px;}
.mp2-bar-lbl{font-size:.76rem;color:var(--txt-muted);width:140px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mp2-bar-track{flex:1;height:6px;background:var(--bg-alt);border-radius:3px;overflow:hidden;}
.mp2-bar-fill{height:100%;border-radius:3px;transition:width .5s;}
.mp2-bar-n{font-size:.75rem;font-weight:700;color:var(--txt-muted);width:20px;text-align:right;}
.mp2-top-grid{display:flex;flex-direction:column;gap:8px;}
.mp2-top-row{display:flex;align-items:center;gap:12px;padding:8px 10px;background:var(--bg-alt);border-radius:8px;}
.mp2-top-rank{font-size:.82rem;font-weight:800;width:28px;flex-shrink:0;}
.mp2-top-name{font-size:.84rem;font-weight:600;color:var(--txt-main);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mp2-top-stars{font-size:11px;display:flex;gap:1px;}
.mp2-top-score{font-size:.78rem;color:var(--txt-muted);white-space:nowrap;}
.mp2-top-chip{font-size:9px;font-weight:700;padding:2px 7px;border-radius:20px;background:rgba(59,130,246,.12);color:#3B82F6;white-space:nowrap;}
/* === responsive === */
@media(max-width:1000px){.mp2-overview-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:768px){
.mp2-overview-grid{grid-template-columns:1fr;}
.mp2-listing-layout{grid-template-columns:1fr;}
.mp2-filter-panel{position:static;}
.mp2-nav{overflow-x:auto;flex-wrap:nowrap;padding:4px;}
.mp2-nav-label{display:none;}
.mp2-nav-item{padding:8px 10px;}
.mp2-nav-item--active .mp2-nav-label{display:block;}
.mp2-header{flex-direction:column;}
.mp2-analytics-grid{grid-template-columns:1fr;}
.mp2-snap-row{grid-template-columns:repeat(2,1fr);}
.mp2-partners-grid,.mp2-deals-grid,.mp2-tech-grid{grid-template-columns:1fr;}
.mp2-partner-banner-inner,.mp2-partner-apply-btn{flex-direction:column;}
.mp2-partner-apply-btn{margin-left:0;width:100%;text-align:center;}
}
.rhcp-mp-stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px 20px;text-align:center;min-width:80px;}
.rhcp-mp-stat span{display:block;font-size:1.6rem;font-weight:700;color:#D4A017;}
.rhcp-mp-stat small{font-size:11px;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.5px;}

/* Tab nav */
.rhcp-mp-tabs{display:flex;gap:6px;margin-bottom:24px;flex-wrap:wrap;}
/* old v1 classes removed — see mp2-* above */

/* Section head */
.rhcp-mp-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap;}
.rhcp-mp-section-title{font-size:1.3rem;font-weight:700;color:var(--txt-main);margin:0 0 4px;}
.rhcp-mp-section-desc{font-size:.87rem;color:var(--txt-muted);margin:0;}

/* Filter bar */
.rhcp-mp-filter-bar{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 16px;margin-bottom:20px;}
.rhcp-mp-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.rhcp-mp-search-input{flex:1;min-width:180px;padding:8px 12px;background:var(--bg-alt);border:1px solid var(--border);border-radius:8px;color:var(--txt-main);font-size:.85rem;}
.rhcp-mp-filter-select{padding:8px 12px;background:var(--bg-alt);border:1px solid var(--border);border-radius:8px;color:var(--txt-main);font-size:.85rem;}

/* Card grid */
.rhcp-mp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;}
.rhcp-mp-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;position:relative;transition:border-color .15s;}
.rhcp-mp-card:hover{border-color:rgba(212,160,23,.3);}
.rhcp-mp-card--featured{border-color:rgba(212,160,23,.4);box-shadow:0 0 0 1px rgba(212,160,23,.15);}
.rhcp-mp-card-badge{position:absolute;top:12px;right:12px;font-size:10px;font-weight:600;padding:3px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;}
.rhcp-mp-card-badge--featured{background:rgba(212,160,23,.2);color:#D4A017;}
.rhcp-mp-card-badge--verified{position:static;display:inline-flex;margin-left:6px;background:rgba(34,197,94,.15);color:#22C55E;}
.rhcp-mp-card-logo{width:52px;height:52px;border-radius:10px;background:var(--bg-alt);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:12px;overflow:hidden;}
.rhcp-mp-card-logo img{width:100%;height:100%;object-fit:contain;}
.rhcp-mp-logo-init{width:52px;height:52px;border-radius:10px;background:linear-gradient(135deg,#1e3a5f,#0d2247);border:1px solid rgba(212,160,23,.2);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#D4A017;}
.rhcp-mp-logo-init--svc{background:linear-gradient(135deg,#1e2f5f,#0d1b47);}
.rhcp-mp-logo-init--partner{width:56px;height:56px;border-radius:12px;font-size:1.1rem;}
.rhcp-mp-card-name{font-size:1rem;font-weight:600;color:var(--txt-main);margin:0 0 4px;}
.rhcp-mp-card-cat{font-size:11px;font-weight:600;background:rgba(59,130,246,.15);color:#3B82F6;padding:2px 8px;border-radius:20px;display:inline-block;margin-bottom:8px;}
.rhcp-mp-card-desc{font-size:.82rem;color:var(--txt-muted);margin:0 0 10px;line-height:1.5;}
.rhcp-mp-card-meta{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;font-size:.78rem;color:var(--txt-muted);}
.rhcp-mp-card-meta span{display:flex;align-items:center;gap:5px;}
.rhcp-mp-card-meta svg{width:12px;height:12px;}
.rhcp-mp-card-footer{display:flex;gap:6px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--border);}
.rhcp-mp-card-btn{font-size:.78rem;padding:5px 12px;background:var(--bg-alt);border:1px solid var(--border);border-radius:6px;color:var(--txt-main);text-decoration:none;transition:all .15s;}
.rhcp-mp-card-btn:hover{border-color:var(--gold);color:var(--gold);}

/* Empty state */
.rhcp-mp-empty{text-align:center;padding:60px 20px;}
.rhcp-mp-empty-icon{width:64px;height:64px;margin:0 auto 16px;color:var(--txt-muted);opacity:.4;}
.rhcp-mp-empty-icon svg{width:64px;height:64px;}
.rhcp-mp-empty p{color:var(--txt-muted);font-size:.95rem;}
.rhcp-mp-empty a{color:var(--gold);}

/* Service cards */
.rhcp-mp-grid--services{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));}
.rhcp-mp-service-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;position:relative;transition:border-color .15s;}
.rhcp-mp-service-card:hover{border-color:rgba(212,160,23,.3);}
.rhcp-mp-service-top{display:flex;gap:14px;align-items:flex-start;margin-bottom:12px;}
.rhcp-mp-service-info{flex:1;}
.rhcp-mp-rating{display:flex;align-items:center;gap:2px;margin-top:4px;font-size:12px;}
.rhcp-mp-star{color:var(--border);}
.rhcp-mp-star--on{color:#F59E0B;}
.rhcp-mp-pricing{display:flex;gap:10px;margin-bottom:10px;flex-wrap:wrap;}
.rhcp-mp-price{font-size:.9rem;font-weight:600;color:var(--txt-main);}
.rhcp-mp-price small{font-size:.7rem;color:var(--txt-muted);font-weight:400;margin-left:2px;}
.rhcp-mp-verified-badge{font-size:10px;font-weight:600;background:rgba(34,197,94,.12);color:#22C55E;padding:2px 8px;border-radius:20px;}

/* Inline add form */
.rhcp-mp-form-card{background:var(--surface);border:1px solid rgba(212,160,23,.3);border-radius:14px;padding:24px;margin-bottom:24px;}
.rhcp-mp-form-title{font-size:1.1rem;font-weight:600;color:var(--txt-main);margin:0 0 18px;}
.rhcp-mp-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px;}
.rhcp-mp-form-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;}

/* Partners */
.rhcp-mp-partner-banner{background:linear-gradient(135deg,rgba(212,160,23,.12),rgba(212,160,23,.04));border:1px solid rgba(212,160,23,.25);border-radius:14px;padding:20px 24px;margin-bottom:24px;}
.rhcp-mp-partner-banner-inner{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.rhcp-mp-partner-banner-icon{width:40px;height:40px;flex-shrink:0;color:#D4A017;}
.rhcp-mp-partner-banner-icon svg{width:40px;height:40px;}
.rhcp-mp-partner-banner-inner h3{font-size:1rem;font-weight:600;color:var(--txt-main);margin:0 0 4px;}
.rhcp-mp-partner-banner-inner p{font-size:.85rem;color:var(--txt-muted);margin:0;}
.rhcp-mp-partner-cta{margin-left:auto;padding:9px 20px;background:var(--gold);color:#0B1D3A;font-weight:600;border-radius:8px;text-decoration:none;font-size:.85rem;white-space:nowrap;}
.rhcp-mp-partner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:24px;}
.rhcp-mp-partner-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px;position:relative;transition:border-color .15s;}
.rhcp-mp-partner-card:hover{border-color:rgba(212,160,23,.3);}
.rhcp-mp-partner-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.rhcp-mp-partner-logo-wrap{width:52px;height:52px;}
.rhcp-mp-ptag{font-size:10px;font-weight:600;padding:3px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;}
.rhcp-mp-ptag--gold{background:rgba(212,160,23,.18);color:#D4A017;border:1px solid rgba(212,160,23,.3);}
.rhcp-mp-ptag--silver{background:rgba(156,163,175,.12);color:#9CA3AF;border:1px solid rgba(156,163,175,.2);}
.rhcp-mp-partner-name{font-size:1.05rem;font-weight:600;color:var(--txt-main);margin:0 0 4px;}
.rhcp-mp-partner-type{font-size:.78rem;color:var(--txt-muted);display:flex;align-items:center;gap:5px;margin-bottom:10px;}
.rhcp-mp-partner-type svg{width:13px;height:13px;}
.rhcp-mp-partner-tagline{font-size:.85rem;color:var(--txt-muted);margin:0 0 12px;line-height:1.5;}
.rhcp-mp-partner-deal{display:flex;align-items:center;gap:8px;background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.2);border-radius:8px;padding:8px 12px;margin-bottom:14px;font-size:.82rem;color:#22C55E;}
.rhcp-mp-deal-icon svg{width:14px;height:14px;}
.rhcp-mp-partner-footer{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.rhcp-mp-partner-btn{padding:8px 18px;font-size:.82rem;}
.rhcp-mp-int-request{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;text-align:center;}
.rhcp-mp-int-request h3{font-size:1rem;font-weight:600;color:var(--txt-main);margin:0 0 6px;}
.rhcp-mp-int-request p{font-size:.85rem;color:var(--txt-muted);margin:0 0 14px;}

/* Coming Soon / Roadmap */
.rhcp-mp-vote-banner{background:linear-gradient(135deg,rgba(59,130,246,.12),rgba(59,130,246,.04));border:1px solid rgba(59,130,246,.2);border-radius:14px;padding:18px 22px;margin-bottom:24px;}
.rhcp-mp-vote-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.rhcp-mp-vote-icon{width:36px;height:36px;color:#3B82F6;flex-shrink:0;}
.rhcp-mp-vote-icon svg{width:36px;height:36px;}
.rhcp-mp-vote-inner strong{display:block;font-size:.95rem;font-weight:600;color:var(--txt-main);margin-bottom:2px;}
.rhcp-mp-vote-inner p{font-size:.83rem;color:var(--txt-muted);margin:0;}
.rhcp-mp-roadmap-quarter{margin-bottom:32px;}
.rhcp-mp-roadmap-qhead{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.rhcp-mp-roadmap-qtitle{font-size:1.1rem;font-weight:700;color:var(--txt-main);margin:0;}
.rhcp-mp-qs{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;}
.rhcp-mp-qs--green{background:rgba(34,197,94,.12);color:#22C55E;}
.rhcp-mp-qs--blue{background:rgba(59,130,246,.12);color:#3B82F6;}
.rhcp-mp-qs--violet{background:rgba(139,92,246,.12);color:#8B5CF6;}
.rhcp-mp-roadmap-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;}
.rhcp-mp-roadmap-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;gap:14px;align-items:flex-start;}
.rhcp-mp-roadmap-item-icon{width:36px;height:36px;border-radius:8px;background:var(--bg-alt);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.rhcp-mp-roadmap-item-icon svg{width:18px;height:18px;color:var(--txt-muted);}
.rhcp-mp-roadmap-item-body{flex:1;min-width:0;}
.rhcp-mp-roadmap-item-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;}
.rhcp-mp-roadmap-item-head h4{font-size:.9rem;font-weight:600;color:var(--txt-main);margin:0;}
.rhcp-mp-roadmap-pct{font-size:.75rem;color:var(--txt-muted);font-weight:600;}
.rhcp-mp-roadmap-desc{font-size:.8rem;color:var(--txt-muted);margin:0 0 10px;line-height:1.5;}
.rhcp-mp-progress-bar{height:5px;background:var(--bg-alt);border-radius:3px;overflow:hidden;}
.rhcp-mp-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),#f0c040);border-radius:3px;transition:width .4s;}

/* Icon sizing within marketplace context — hard constrain all SVGs */
.rhcp-mp-wrap .rhcp-nav-icon,.rhcp-mp-wrap .rhcp-nav-icon svg{max-width:16px;max-height:16px;width:16px;height:16px;display:inline-flex;flex-shrink:0;vertical-align:middle;}
.rhcp-mp-empty-icon .rhcp-nav-icon,.rhcp-mp-empty-icon .rhcp-nav-icon svg{max-width:48px;max-height:48px;width:48px;height:48px;}
.rhcp-mp-partner-banner-icon .rhcp-nav-icon,.rhcp-mp-partner-banner-icon .rhcp-nav-icon svg{max-width:36px;max-height:36px;width:36px;height:36px;}
.rhcp-mp-vote-icon .rhcp-nav-icon,.rhcp-mp-vote-icon .rhcp-nav-icon svg{max-width:32px;max-height:32px;width:32px;height:32px;}
.rhcp-mp-roadmap-item-icon .rhcp-nav-icon,.rhcp-mp-roadmap-item-icon .rhcp-nav-icon svg{max-width:18px;max-height:18px;width:18px;height:18px;}
.rhcp-mp-tab-icon .rhcp-nav-icon,.rhcp-mp-tab-icon .rhcp-nav-icon svg{max-width:15px;max-height:15px;width:15px;height:15px;}

/* Responsive */
@media(max-width:768px){
  .rhcp-mp-stats{gap:12px;}
  .rhcp-mp-grid,.rhcp-mp-grid--services,.rhcp-mp-partner-grid{grid-template-columns:1fr;}
  .rhcp-mp-form-grid{grid-template-columns:1fr;}
  .rhcp-mp-roadmap-items{grid-template-columns:1fr;}
  .rhcp-mp-partner-banner-inner,.rhcp-mp-vote-inner{flex-direction:column;align-items:flex-start;}
  .rhcp-mp-partner-cta{margin-left:0;}
  .rhcp-mp-section-head{flex-direction:column;align-items:flex-start;}
}

/* ===================================================================
   TEAM COMMUNICATION HOUSE — tch-* classes
   =================================================================== */
.tch-shell{max-width:1140px;margin:0 auto;}
.tch-header{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,rgba(11,29,58,.9),rgba(15,40,80,.8));border:1px solid rgba(212,160,23,.25);border-radius:16px;padding:24px 28px;margin-bottom:20px;flex-wrap:wrap;}
.tch-header__left{display:flex;align-items:center;gap:16px;}
.tch-header__icon{width:52px;height:52px;background:rgba(212,160,23,.15);border:1px solid rgba(212,160,23,.3);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#D4A017;flex-shrink:0;}
.tch-header__icon svg{width:26px;height:26px;}
.tch-header__title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 2px;}
.tch-header__sub{font-size:.85rem;color:rgba(200,218,240,.86);margin:0;}
.tch-header__stats{display:flex;gap:10px;flex-wrap:wrap;}
.tch-stat-chip{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:5px 12px;font-size:.78rem;color:rgba(200,218,240,.94);}
.tch-stat-chip--green{border-color:rgba(34,197,94,.3);}
.tch-stat-chip--amber{border-color:rgba(245,158,11,.3);}
.tch-stat-chip--red{border-color:rgba(239,68,68,.3);}
.tch-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0;}
.tch-dot--green{background:#22c55e;box-shadow:0 0 6px rgba(34,197,94,.6);}
.tch-dot--grey{background:#6b7280;}
.tch-dot--presence{position:absolute;bottom:0;right:0;width:9px;height:9px;border:2px solid var(--surface,#1a2844);}
.tch-plan-notice{display:flex;align-items:center;gap:10px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:10px;padding:12px 18px;margin-bottom:16px;font-size:.84rem;color:rgba(200,218,240,.94);flex-wrap:wrap;}
.tch-plan-notice--blue{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.2);}
.tch-plan-upgrade{margin-left:auto;background:#D4A017;color:#0B1D3A;padding:5px 14px;border-radius:20px;font-size:.78rem;font-weight:600;text-decoration:none;}
.tch-tabnav{display:flex;gap:4px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:5px;margin-bottom:20px;overflow-x:auto;flex-wrap:nowrap;}
.tch-tab{display:flex;align-items:center;gap:7px;padding:9px 14px;border-radius:9px;font-size:.83rem;font-weight:500;color:rgba(210,225,245,.90);text-decoration:none;white-space:nowrap;transition:all .15s;position:relative;}
.tch-tab:hover{background:rgba(255,255,255,.07);color:var(--cm-txt);}
.tch-tab--active{background:rgba(212,160,23,.18);color:#f0c040;border:1px solid rgba(212,160,23,.4);font-weight:700;}
.tch-tab--locked{opacity:.55;cursor:not-allowed;}
.tch-tab--locked:hover{background:none;color:rgba(200,218,240,.88);}
.tch-lock-badge{font-size:9px;font-weight:700;background:rgba(212,160,23,.25);color:#D4A017;padding:2px 6px;border-radius:4px;text-transform:uppercase;}
.tch-tab .rhcp-nav-icon,.tch-tab .rhcp-nav-icon svg{width:15px;height:15px;max-width:15px;max-height:15px;}
.tch-content{}
/* KPI cards */
.tch-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-bottom:20px;}
.tch-kpi{display:flex;align-items:center;gap:14px;background:var(--surface,#1a2844);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:16px 18px;}
.tch-kpi__icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.tch-kpi__icon .rhcp-nav-icon,.tch-kpi__icon .rhcp-nav-icon svg{width:20px;height:20px;max-width:20px;max-height:20px;}
.tch-kpi--green .tch-kpi__icon{background:rgba(34,197,94,.12);color:#22c55e;}
.tch-kpi--blue .tch-kpi__icon{background:rgba(59,130,246,.12);color:#3b82f6;}
.tch-kpi--violet .tch-kpi__icon{background:rgba(139,92,246,.12);color:#8b5cf6;}
.tch-kpi--amber .tch-kpi__icon{background:rgba(245,158,11,.12);color:#f59e0b;}
.tch-kpi--indigo .tch-kpi__icon{background:rgba(99,102,241,.12);color:#6366f1;}
.tch-kpi--red .tch-kpi__icon{background:rgba(239,68,68,.12);color:#ef4444;}
.tch-kpi__val{font-size:1.6rem;font-weight:700;color:#fff;line-height:1;}
.tch-kpi__label{font-size:.79rem;font-weight:600;color:var(--cm-txt);margin:2px 0 1px;}
.tch-kpi__sub{font-size:.72rem;color:rgba(200,218,240,.80);}
/* Quick actions */
.tch-quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px;}
.tch-qa{display:flex;align-items:center;gap:7px;padding:9px 16px;border-radius:9px;font-size:.83rem;font-weight:500;text-decoration:none;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:var(--cm-txt);transition:all .15s;}
.tch-qa:hover{background:rgba(255,255,255,.1);}
.tch-qa--blue{border-color:rgba(59,130,246,.3);color:#3b82f6;}
.tch-qa--green{border-color:rgba(34,197,94,.3);color:#22c55e;}
.tch-qa--amber{border-color:rgba(245,158,11,.3);color:#f59e0b;}
.tch-qa--red{border-color:rgba(239,68,68,.3);color:#ef4444;}
.tch-qa .rhcp-nav-icon,.tch-qa .rhcp-nav-icon svg{width:15px;height:15px;max-width:15px;max-height:15px;}
/* Overview grid */
.tch-ov-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.tch-ov-panel{background:var(--surface,#1a2844);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:20px;}
.tch-ov-panel__head{display:flex;align-items:center;gap:8px;margin-bottom:14px;}
.tch-ov-panel__head h3{font-size:.95rem;font-weight:600;color:var(--cm-txt);margin:0;flex:1;}
.tch-ov-panel__head .rhcp-nav-icon,.tch-ov-panel__head .rhcp-nav-icon svg{width:16px;height:16px;max-width:16px;max-height:16px;color:#D4A017;}
.tch-ov-panel__link{font-size:.77rem;color:#D4A017;text-decoration:none;}
.tch-empty{font-size:.83rem;color:rgba(200,218,240,.80);padding:12px 0;}
/* Message feed */
.tch-msg-feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.tch-msg-feed__item{display:flex;gap:10px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.03);}
.tch-msg-feed__item--urgent{border-left:3px solid #ef4444;background:rgba(239,68,68,.05);}
.tch-msg-feed__body{flex:1;min-width:0;}
.tch-msg-feed__name{font-size:.8rem;font-weight:600;color:#D4A017;}
.tch-msg-feed__text{font-size:.82rem;color:rgba(200,218,240,.94);margin:3px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tch-msg-feed__time{font-size:.72rem;color:rgba(200,218,240,.78);}
/* Task mini */
.tch-task-stat-row{display:flex;gap:10px;margin-bottom:14px;}
.tch-task-stat{flex:1;text-align:center;background:rgba(255,255,255,.04);border-radius:9px;padding:10px 6px;font-size:.75rem;color:rgba(200,218,240,.88);}
.tch-task-stat span{display:block;font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:3px;}
.tch-task-stat--amber span{color:#f59e0b;}
.tch-task-stat--blue span{color:#3b82f6;}
.tch-task-stat--green span{color:#22c55e;}
.tch-task-stat--red span{color:#ef4444;}
.tch-task-mini{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;}
.tch-task-mini__item{display:flex;align-items:center;gap:8px;font-size:.8rem;}
.tch-task-mini__title{flex:1;color:var(--cm-txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tch-task-mini__meta{font-size:.72rem;color:rgba(200,218,240,.80);white-space:nowrap;}
/* Announcements */
.tch-annc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.tch-annc-item{padding:10px 12px;border-radius:9px;background:rgba(255,255,255,.03);border-left:2px solid rgba(212,160,23,.3);}
.tch-annc-item--urgent{border-left-color:#ef4444;background:rgba(239,68,68,.06);}
.tch-annc-item p{font-size:.82rem;color:rgba(200,218,240,.96);margin:4px 0 6px;}
.tch-annc-meta{font-size:.72rem;color:rgba(200,218,240,.78);}
/* Requests mini */
.tch-req-mini{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.tch-req-mini__item{display:flex;align-items:center;gap:8px;padding:8px 10px;background:rgba(255,255,255,.03);border-radius:9px;flex-wrap:wrap;}
.tch-req-mini__route{display:flex;align-items:center;gap:5px;}
.tch-req-mini__title{flex:1;font-size:.8rem;color:var(--cm-txt);}
/* Badges */
.tch-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;}
.tch-badge--red{background:rgba(239,68,68,.15);color:#ef4444;}
.tch-badge--amber{background:rgba(245,158,11,.15);color:#f59e0b;}
.tch-badge--green{background:rgba(34,197,94,.15);color:#22c55e;}
.tch-badge--blue{background:rgba(59,130,246,.15);color:#3b82f6;}
.tch-badge--violet{background:rgba(139,92,246,.15);color:#8b5cf6;}
.tch-badge--indigo{background:rgba(99,102,241,.15);color:#6366f1;}
.tch-badge--gold{background:rgba(212,160,23,.18);color:#D4A017;}
.tch-badge--sm{font-size:.65rem;padding:1px 6px;}
/* Avatar */
.tch-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#1a4070,#0b2a4a);color:#D4A017;font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.tch-avatar--xs{width:28px;height:28px;font-size:.72rem;position:relative;}
.tch-avatar--sm{width:34px;height:34px;font-size:.82rem;}
.tch-avatar--lg{width:52px;height:52px;font-size:1.2rem;}
/* Channels layout */
.tch-channels-layout{display:grid;grid-template-columns:220px 1fr;gap:0;background:var(--surface,#1a2844);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;min-height:520px;}
.tch-ch-sidebar{background:rgba(0,0,0,.18);border-right:1px solid rgba(255,255,255,.07);padding:0;display:flex;flex-direction:column;}
.tch-ch-sidebar__head{display:flex;align-items:center;gap:8px;padding:16px 16px 10px;font-size:.78rem;font-weight:600;color:rgba(200,218,240,.80);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid rgba(255,255,255,.06);}
.tch-ch-item{display:flex;align-items:center;gap:8px;padding:9px 16px;font-size:.83rem;color:rgba(200,218,240,.92);text-decoration:none;transition:all .12s;}
.tch-ch-item:hover{background:rgba(255,255,255,.05);color:var(--cm-txt);}
.tch-ch-item--active{background:rgba(212,160,23,.12);color:#D4A017;border-left:3px solid #D4A017;}
.tch-ch-hash{font-size:1rem;color:rgba(200,218,240,.75);font-weight:700;}
.tch-ch-hash--lg{font-size:1.4rem;}
.tch-ch-name{flex:1;}
.tch-ch-count{background:rgba(212,160,23,.2);color:#D4A017;border-radius:10px;padding:1px 7px;font-size:.7rem;font-weight:600;}
.tch-ch-empty{font-size:.8rem;color:rgba(200,218,240,.75);padding:16px;}
.tch-ch-main{display:flex;flex-direction:column;}
.tch-ch-main__head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.07);gap:12px;}
.tch-ch-main__head-left{display:flex;align-items:center;gap:12px;}
.tch-ch-main__head h3{font-size:1rem;font-weight:600;color:#fff;margin:0 0 2px;}
.tch-ch-main__desc{font-size:.77rem;color:rgba(200,218,240,.80);margin:0;}
.tch-ch-main__head-right{display:flex;gap:8px;}
.tch-pinned-msg{display:flex;align-items:center;gap:8px;padding:8px 20px;background:rgba(212,160,23,.07);border-bottom:1px solid rgba(212,160,23,.15);font-size:.8rem;color:#D4A017;}
.tch-ch-messages{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px;max-height:360px;}
.tch-date-divider{text-align:center;margin:8px 0;}
.tch-date-divider span{background:rgba(255,255,255,.06);color:rgba(200,218,240,.78);font-size:.72rem;padding:3px 12px;border-radius:10px;}
.tch-msg{display:flex;gap:10px;max-width:85%;}
.tch-msg--mine{flex-direction:row-reverse;align-self:flex-end;}
.tch-msg--urgent .tch-msg__bubble{border-left:3px solid #ef4444;}
.tch-msg--announce .tch-msg__bubble{border-left:3px solid #f59e0b;}
.tch-msg__bubble{background:rgba(255,255,255,.06);border-radius:12px;padding:10px 14px;font-size:.84rem;color:var(--cm-txt);max-width:100%;}
.tch-msg--mine .tch-msg__bubble{background:rgba(212,160,23,.15);}
.tch-msg__meta{font-size:.72rem;color:rgba(200,218,240,.82);margin-bottom:4px;}
.tch-msg__meta strong{color:#D4A017;margin-right:5px;}
.tch-msg__bubble p{margin:0;line-height:1.5;}
.tch-msg__time-r{font-size:.7rem;color:rgba(200,218,240,.75);text-align:right;margin-top:4px;display:flex;align-items:center;justify-content:flex-end;gap:4px;}
.tch-ch-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:40px;text-align:center;color:rgba(200,218,240,.75);gap:12px;}
.tch-ch-empty-sub{font-size:.8rem;color:rgba(200,218,240,.72);}
.tch-ch-input-area{padding:12px 16px;border-top:1px solid rgba(255,255,255,.07);background:rgba(0,0,0,.1);}
.tch-ch-form{display:flex;flex-direction:column;gap:8px;}
.tch-ch-textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:9px;color:var(--cm-txt);padding:10px 14px;font-size:.85rem;resize:none;font-family:inherit;}
.tch-ch-textarea:focus{outline:none;border-color:rgba(212,160,23,.4);}
.tch-ch-form__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.tch-ch-toggle{display:flex;align-items:center;gap:5px;font-size:.78rem;cursor:pointer;color:rgba(200,218,240,.90);}
.tch-ch-file-hint{font-size:.75rem;color:rgba(200,218,240,.75);display:flex;align-items:center;gap:5px;margin-top:4px;}
/* Buttons */
.tch-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:9px;font-size:.83rem;font-weight:500;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);color:var(--cm-txt);cursor:pointer;text-decoration:none;transition:all .15s;}
.tch-btn:hover{background:rgba(255,255,255,.12);}
.tch-btn--gold{background:rgba(212,160,23,.18);border-color:rgba(212,160,23,.4);color:#D4A017;}
.tch-btn--gold:hover{background:rgba(212,160,23,.28);}
.tch-btn--send{background:#D4A017;color:#0B1D3A;border-color:#D4A017;font-weight:600;}
.tch-btn--send:hover{background:#c49010;}
.tch-btn--xs{padding:4px 10px;font-size:.75rem;}
.tch-btn .rhcp-nav-icon,.tch-btn .rhcp-nav-icon svg{width:14px;height:14px;max-width:14px;max-height:14px;}
/* Form elements */
.tch-input{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:9px;color:var(--cm-txt);padding:9px 13px;font-size:.85rem;font-family:inherit;}
.tch-input:focus{outline:none;border-color:rgba(212,160,23,.4);}
.tch-input--sm{width:auto;padding:5px 10px;font-size:.78rem;}
.tch-input--search{max-width:320px;}
.tch-form-panel{background:var(--surface,#1a2844);border:1px solid rgba(212,160,23,.25);border-radius:13px;padding:20px;margin-bottom:20px;}
.tch-form-panel__head{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:600;color:var(--cm-txt);margin-bottom:16px;}
.tch-form-panel__head .rhcp-nav-icon,.tch-form-panel__head .rhcp-nav-icon svg{width:16px;height:16px;max-width:16px;max-height:16px;}
.tch-form-close{margin-left:auto;background:none;border:none;color:rgba(200,218,240,.80);font-size:1.3rem;cursor:pointer;padding:0 4px;}
.tch-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.tch-form-row{display:flex;flex-direction:column;gap:5px;}
.tch-form-row label{font-size:.8rem;color:rgba(200,218,240,.90);font-weight:500;}
.tch-form-row--full{grid-column:1/-1;}
.tch-form-row--actions{grid-column:1/-1;flex-direction:row;gap:10px;align-items:center;}
.tch-inline-form{display:inline-flex;align-items:center;}
/* Tasks/Requests */
.tch-tasks-wrap{}
.tch-tasks-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap;}
.tch-tasks-header__left h2{display:flex;align-items:center;gap:8px;font-size:1.15rem;font-weight:600;color:var(--cm-txt);margin:0 0 4px;}
.tch-tasks-header__left h2 .rhcp-nav-icon,.tch-tasks-header__left h2 .rhcp-nav-icon svg{width:18px;height:18px;max-width:18px;max-height:18px;color:#D4A017;}
.tch-tasks-header__left p{font-size:.83rem;color:rgba(200,218,240,.82);margin:0;}
.tch-task-stat-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;background:rgba(255,255,255,.03);border-radius:10px;padding:8px;}
.tch-task-stat-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:8px;font-size:.8rem;color:rgba(200,218,240,.86);text-decoration:none;transition:all .12s;}
.tch-task-stat-btn:hover{background:rgba(255,255,255,.06);color:var(--cm-txt);}
.tch-task-stat-btn.active{background:rgba(212,160,23,.12);color:#D4A017;}
.tch-task-list{display:flex;flex-direction:column;gap:12px;}
.tch-task-card{background:var(--surface,#1a2844);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:18px 20px;}
.tch-task-card--overdue{border-left:3px solid #ef4444;}
.tch-task-card__top{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap;}
.tch-task-card__badges{display:flex;align-items:center;gap:6px;flex:1;flex-wrap:wrap;}
.tch-task-card__body h4{font-size:.95rem;font-weight:600;color:#fff;margin:0 0 5px;}
.tch-task-card__desc{font-size:.82rem;color:rgba(200,218,240,.88);margin:0;}
.tch-task-card__footer{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);font-size:.77rem;color:rgba(200,218,240,.80);flex-wrap:wrap;}
.tch-task-card__footer .rhcp-nav-icon,.tch-task-card__footer .rhcp-nav-icon svg{width:12px;height:12px;max-width:12px;max-height:12px;}
.tch-completed-tag{display:flex;align-items:center;gap:4px;color:#22c55e;font-size:.75rem;margin-left:auto;}
.tch-req-route{display:flex;align-items:center;gap:5px;}
/* Staff directory */
.tch-search-row{display:flex;gap:8px;align-items:center;}
.tch-dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:20px;}
.tch-dir-card{background:var(--surface,#1a2844);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:18px;display:flex;flex-direction:column;gap:12px;}
.tch-dir-card__avatar{position:relative;width:fit-content;}
.tch-dot--dir{position:absolute;bottom:2px;right:2px;width:10px;height:10px;}
.tch-dir-card__body{flex:1;}
.tch-dir-card__body h4{font-size:.95rem;font-weight:600;color:#fff;margin:0 0 6px;}
.tch-dir-card__position{font-size:.78rem;color:rgba(200,218,240,.86);margin:5px 0 0;}
.tch-dir-card__email,.tch-dir-card__phone{font-size:.77rem;color:rgba(200,218,240,.80);display:flex;align-items:center;gap:5px;margin:3px 0 0;}
.tch-dir-card__footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);}
.tch-dir-presence{display:flex;align-items:center;gap:5px;font-size:.75rem;color:rgba(200,218,240,.80);}
.tch-dir-presence--on{color:#22c55e;}
/* Announcements full tab */
.tch-annc-wrap{}
.tch-scheduled-banner{display:flex;align-items:center;gap:8px;background:rgba(245,158,11,.07);border:1px solid rgba(245,158,11,.2);border-radius:10px;padding:10px 16px;margin-bottom:16px;font-size:.82rem;color:#f59e0b;flex-wrap:wrap;}
.tch-annc-feed{display:flex;flex-direction:column;gap:14px;}
.tch-annc-card{background:var(--surface,#1a2844);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:18px 20px;}
.tch-annc-card--urgent{border-left:4px solid #ef4444;}
.tch-annc-card__alert{display:flex;align-items:center;gap:7px;color:#ef4444;font-size:.8rem;font-weight:600;margin-bottom:10px;}
.tch-annc-card__body p{font-size:.88rem;color:var(--cm-txt);line-height:1.55;margin:0 0 12px;}
.tch-annc-card__footer{display:flex;align-items:center;gap:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);font-size:.77rem;flex-wrap:wrap;}
/* AI assistant */
.tch-ai-wrap{max-width:900px;}
.tch-ai-header{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(99,102,241,.08));border:1px solid rgba(139,92,246,.25);border-radius:14px;padding:20px 24px;margin-bottom:20px;flex-wrap:wrap;}
.tch-ai-icon{width:56px;height:56px;background:rgba(139,92,246,.15);border:1px solid rgba(139,92,246,.3);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#8b5cf6;flex-shrink:0;}
.tch-ai-title{font-size:1.2rem;font-weight:700;color:#fff;margin:0 0 2px;}
.tch-ai-sub{font-size:.8rem;color:rgba(200,218,240,.82);margin:0;}
.tch-ai-badge{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap;}
.tch-ai-chat{background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:16px 20px;margin-bottom:14px;max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;}
.tch-ai-msg{display:flex;gap:10px;}
.tch-ai-msg--user{flex-direction:row-reverse;}
.tch-ai-msg__avatar{width:32px;height:32px;border-radius:50%;background:rgba(139,92,246,.2);color:#8b5cf6;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.tch-ai-msg__bubble{background:rgba(255,255,255,.06);border-radius:12px;padding:12px 16px;font-size:.84rem;color:var(--cm-txt);max-width:85%;}
.tch-ai-msg--user .tch-ai-msg__bubble{background:rgba(212,160,23,.12);}
.tch-ai-msg__bubble p{margin:0 0 6px;}
.tch-ai-msg__bubble p:last-child{margin-bottom:0;}
.tch-ai-input-wrap{display:flex;gap:10px;margin-bottom:14px;}
.tch-ai-input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:9px;color:var(--cm-txt);padding:10px 14px;font-size:.85rem;}
.tch-ai-input:focus{outline:none;border-color:rgba(139,92,246,.4);}
.tch-ai-prompts{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:20px;}
.tch-ai-prompts__label{font-size:.75rem;color:rgba(200,218,240,.80);}
.tch-ai-prompt{background:rgba(139,92,246,.1);border:1px solid rgba(139,92,246,.2);color:#8b5cf6;padding:5px 12px;border-radius:20px;font-size:.77rem;text-decoration:none;transition:all .12s;}
.tch-ai-prompt:hover{background:rgba(139,92,246,.2);}
.tch-ai-caps{margin-bottom:20px;}
.tch-ai-caps__title{font-size:.9rem;font-weight:600;color:var(--cm-txt);margin:0 0 12px;}
.tch-ai-caps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;}
.tch-ai-cap{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:11px;padding:12px 14px;}
.tch-ai-cap--coming_soon{opacity:.65;}
.tch-ai-cap__icon{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.tch-ai-cap__icon .rhcp-nav-icon,.tch-ai-cap__icon .rhcp-nav-icon svg{width:18px;height:18px;max-width:18px;max-height:18px;color:#8b5cf6;}
.tch-ai-cap--coming_soon .tch-ai-cap__icon .rhcp-nav-icon svg{color:rgba(200,218,240,.75);}
.tch-ai-cap__body{flex:1;}
.tch-ai-cap__body h4{font-size:.82rem;font-weight:600;color:var(--cm-txt);margin:0 0 2px;}
.tch-ai-cap__body p{font-size:.75rem;color:rgba(200,218,240,.80);margin:0;}
.tch-ai-cap__status{flex-shrink:0;}
.tch-ai-data-snap{background:rgba(139,92,246,.06);border:1px solid rgba(139,92,246,.15);border-radius:13px;padding:18px 20px;}
.tch-ai-data-snap h3{font-size:.9rem;font-weight:600;color:var(--cm-txt);margin:0 0 12px;}
.tch-ai-snap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;}
.tch-ai-snap-item{text-align:center;background:rgba(255,255,255,.04);border-radius:10px;padding:12px 8px;}
.tch-ai-snap-val{display:block;font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:4px;}
.tch-ai-snap-item span:last-child{font-size:.72rem;color:rgba(200,218,240,.80);}
.tch-ai-snap-item--blue .tch-ai-snap-val{color:#3b82f6;}
.tch-ai-snap-item--green .tch-ai-snap-val{color:#22c55e;}
.tch-ai-snap-item--amber .tch-ai-snap-val{color:#f59e0b;}
.tch-ai-snap-item--red .tch-ai-snap-val{color:#ef4444;}
.tch-ai-snap-item--violet .tch-ai-snap-val{color:#8b5cf6;}
/* Locked tab */
.tch-locked-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center;gap:16px;}
.tch-locked-tab__icon{color:rgba(200,210,240,.2);}
.tch-locked-tab__title{font-size:1.3rem;font-weight:600;color:var(--cm-txt);margin:0;}
.tch-locked-tab__desc{font-size:.88rem;color:rgba(200,218,240,.82);margin:0;}
/* Empty state */
.tch-empty-state-lg{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;text-align:center;gap:12px;color:rgba(200,218,240,.72);}
.tch-empty-state-lg .rhcp-nav-icon,.tch-empty-state-lg .rhcp-nav-icon svg{width:48px;height:48px;max-width:48px;max-height:48px;}
.tch-empty-state-lg h3{font-size:1.1rem;color:rgba(200,218,240,.86);margin:0;}
.tch-empty-state-lg p{font-size:.83rem;color:rgba(200,218,240,.75);margin:0;}
/* === TCH Enhancement Styles === */
/* Search bar */
.tch-ch-search-wrap{padding:10px 12px 6px;border-bottom:1px solid rgba(255,255,255,.05);}
.tch-ch-search-row{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:5px 10px;}
.tch-ch-search-icon{color:rgba(200,218,240,.75);flex-shrink:0;}
.tch-ch-search-input{flex:1;background:none;border:none;color:var(--cm-txt);font-size:.8rem;outline:none;}
.tch-ch-search-input::placeholder{color:rgba(200,218,240,.72);}
.tch-ch-search-clear{color:rgba(200,218,240,.75);font-size:1rem;cursor:pointer;text-decoration:none;}
/* Unread badge */
.tch-ch-unread{background:#ef4444;color:#fff;border-radius:10px;font-size:.65rem;font-weight:700;padding:1px 6px;min-width:18px;text-align:center;margin-left:auto;}
/* Presence bar at bottom of sidebar */
.tch-ch-presence-bar{margin-top:auto;padding:10px 14px;font-size:.74rem;color:rgba(200,218,240,.78);display:flex;align-items:center;gap:6px;border-top:1px solid rgba(255,255,255,.05);}
/* Pin indicator on message */
.tch-msg-pin-indicator{color:#D4A017;margin-right:4px;}
.tch-msg--pinned .tch-msg__bubble{border-left:2px solid #D4A017;}
/* Pin/unpin button */
.tch-pin-unpin{background:none;border:none;color:rgba(200,218,240,.80);cursor:pointer;font-size:1.1rem;padding:0 4px;margin-left:auto;}
.tch-pin-unpin:hover{color:#ef4444;}
/* Message actions (hover reveal) */
.tch-msg-actions{display:none;gap:4px;margin-top:5px;}
.tch-msg:hover .tch-msg-actions{display:flex;}
.tch-msg-action-btn{display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:3px 8px;font-size:.7rem;color:rgba(200,218,240,.90);cursor:pointer;}
.tch-msg-action-btn:hover{background:rgba(212,160,23,.12);color:#D4A017;border-color:rgba(212,160,23,.3);}
/* Read receipts */
.tch-read-count{font-size:.65rem;color:rgba(200,218,240,.75);margin-left:2px;}
/* @mention highlight */
.tch-mention{background:rgba(212,160,23,.18);color:#D4A017;border-radius:4px;padding:0 4px;font-weight:600;}
/* Mention autocomplete dropdown */
.tch-mention-list{position:absolute;bottom:100%;left:0;right:0;background:#1a2844;border:1px solid rgba(212,160,23,.3);border-radius:10px;margin-bottom:6px;z-index:200;max-height:180px;overflow-y:auto;box-shadow:0 -4px 20px rgba(0,0,0,.4);}
.tch-mention-item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;font-size:.82rem;color:var(--cm-txt);}
.tch-mention-item:hover{background:rgba(212,160,23,.1);}
.tch-mention-item em{font-size:.75rem;color:rgba(200,218,240,.80);font-style:normal;}
/* File / image message */
.tch-msg-file{margin:4px 0;}
.tch-msg-image{max-width:240px;max-height:180px;border-radius:8px;cursor:pointer;}
.tch-msg-file-name{font-size:.74rem;color:rgba(200,218,240,.82);margin:3px 0 0;}
.tch-file-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:6px 12px;font-size:.8rem;color:var(--cm-txt);text-decoration:none;}
.tch-file-pill:hover{background:rgba(255,255,255,.12);}
/* Voice note */
.tch-voice-note{display:flex;align-items:center;gap:8px;background:rgba(139,92,246,.1);border:1px solid rgba(139,92,246,.2);border-radius:8px;padding:8px 12px;font-size:.8rem;color:#8b5cf6;}
/* Task-from-chat quick form */
.tch-task-chat-panel{background:rgba(212,160,23,.07);border:1px solid rgba(212,160,23,.2);border-radius:10px;padding:12px 16px;margin:0 0 8px;}
.tch-task-chat-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.tch-task-chat-row .tch-input{flex:1;min-width:180px;}
/* Task reference in message */
.tch-msg-task-ref{display:flex;align-items:center;gap:6px;background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.15);border-radius:7px;padding:6px 10px;font-size:.78rem;margin-top:6px;}
.tch-msg-task-ref .rhcp-nav-icon,.tch-msg-task-ref .rhcp-nav-icon svg{width:13px;height:13px;max-width:13px;max-height:13px;color:#3b82f6;}
/* Attach button */
.tch-attach-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);color:rgba(200,218,240,.86);cursor:pointer;flex-shrink:0;}
.tch-attach-btn:hover{background:rgba(255,255,255,.12);color:#D4A017;}
.tch-file-hidden{display:none;}
.tch-file-name{font-size:.74rem;color:#D4A017;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
/* Input row */
.tch-ch-input-row{position:relative;}
/* DM online label */
.tch-dm-online-label{font-size:.65rem;background:rgba(34,197,94,.12);color:#22c55e;border-radius:10px;padding:1px 6px;margin-left:auto;}
/* Responsive */
@media(max-width:900px){
  .tch-ov-grid{grid-template-columns:1fr;}
  .tch-channels-layout{grid-template-columns:1fr;}
  .tch-ch-sidebar{display:none;}
  .tch-dir-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));}
  .tch-form-grid{grid-template-columns:1fr;}
  .tch-form-row--actions{flex-wrap:wrap;}
}
@media(max-width:640px){
  .tch-header{flex-direction:column;align-items:flex-start;}
  .tch-header__stats{gap:6px;}
  .tch-kpi-grid{grid-template-columns:1fr 1fr;}
  .tch-tabnav{gap:2px;}
  .tch-tab{padding:7px 10px;font-size:.78rem;}
  .tch-ai-caps-grid{grid-template-columns:1fr;}
  .tch-ai-snap-grid{grid-template-columns:repeat(3,1fr);}
}

/* ═══════════════════════════════════════════════════════════
   BOOKING ENGINE STYLES
   ═══════════════════════════════════════════════════════════ */
:root{--be-surface:var(--surface);--be-alt:var(--surface2);--be-border:var(--border);--be-muted:var(--txt3);--be-txt:var(--txt);--be-txt2:var(--txt2);--be-gold:#D4A017;--be-blue:#2563eb;--be-green:#16a34a;--be-amber:#b45309;--be-violet:#7c3aed;--be-red:#dc2626;}
[data-theme="dark"]{--be-surface:#182040;--be-alt:#0d1527;--be-border:rgba(255,255,255,.10);--be-muted:rgba(200,220,245,.86);--be-txt:#f1f5f9;--be-txt2:rgba(200,220,245,.92);--be-blue:#60a5fa;--be-green:#4ade80;--be-amber:#fbbf24;--be-violet:#a78bfa;--be-red:#f87171;}
.be-shell{display:flex;flex-direction:column;gap:0;}
/* Header */
.be-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0 18px;border-bottom:1px solid var(--be-border);flex-wrap:wrap;}
.be-header__left{display:flex;align-items:center;gap:14px;}
.be-header__icon{width:42px;height:42px;background:rgba(212,160,23,.12);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--be-gold);flex-shrink:0;}
.be-header__icon .rhcp-nav-icon,.be-header__icon .rhcp-nav-icon svg{width:20px;height:20px;max-width:20px;max-height:20px;}
.be-header__title{font-size:1.35rem;font-weight:700;color:var(--cm-txt);margin:0;}
.be-header__sub{font-size:.8rem;color:var(--be-muted);margin:2px 0 0;}
.be-header__stats{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.be-stat-chip{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:600;}
.be-stat-chip span{font-size:1rem;font-weight:700;}
.be-stat-chip--amber{background:rgba(245,158,11,.12);color:var(--be-amber);border:1px solid rgba(245,158,11,.2);}
.be-stat-chip--green{background:rgba(34,197,94,.1);color:var(--be-green);border:1px solid rgba(34,197,94,.2);}
/* Tab nav */
.be-tabnav{display:flex;gap:4px;padding:16px 0 0;border-bottom:1px solid var(--be-border);overflow-x:auto;scrollbar-width:none;}
.be-tabnav::-webkit-scrollbar{display:none;}
.be-tab{display:flex;align-items:center;gap:7px;padding:9px 16px;border-radius:8px 8px 0 0;font-size:.82rem;font-weight:600;color:var(--be-txt2);text-decoration:none;white-space:nowrap;border:1px solid transparent;border-bottom:none;transition:all .18s;position:relative;bottom:-1px;}
.be-tab:hover{color:var(--cm-txt);background:rgba(255,255,255,.05);}
.be-tab--active{color:var(--be-gold);background:var(--be-surface);border-color:var(--be-border);border-bottom-color:var(--be-surface);font-weight:600;}
.be-tab .rhcp-nav-icon,.be-tab .rhcp-nav-icon svg{width:14px;height:14px;max-width:14px;max-height:14px;}
.be-tab-badge{background:var(--be-amber);color:#fff;border-radius:10px;font-size:.62rem;font-weight:700;padding:1px 5px;min-width:16px;text-align:center;}
/* Content area */
.be-content{padding:20px 0 0;}
/* Status pills */
.be-status-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:18px;}
.be-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;font-size:.78rem;font-weight:600;text-decoration:none;border:1px solid transparent;transition:all .15s;}
.be-pill-count{background:rgba(255,255,255,.1);border-radius:10px;padding:0 6px;font-size:.7rem;}
.be-pill--active{border-color:currentColor!important;}
.be-pill--all{background:rgba(255,255,255,.06);color:var(--cm-txt);border-color:rgba(255,255,255,.12);}
.be-pill--pending{background:rgba(245,158,11,.1);color:var(--be-amber);border-color:rgba(245,158,11,.15);}
.be-pill--confirmed{background:rgba(59,130,246,.1);color:var(--be-blue);border-color:rgba(59,130,246,.15);}
.be-pill--checkedin{background:rgba(34,197,94,.1);color:var(--be-green);border-color:rgba(34,197,94,.15);}
.be-pill--checkedout{background:rgba(139,92,246,.1);color:var(--be-violet);border-color:rgba(139,92,246,.15);}
.be-pill--cancelled{background:rgba(239,68,68,.1);color:var(--be-red);border-color:rgba(239,68,68,.15);}
.be-pill--sm{font-size:.68rem;padding:2px 8px;}
.be-new-badge{background:rgba(34,197,94,.12);color:var(--be-green);border:1px solid rgba(34,197,94,.2);border-radius:12px;padding:3px 10px;font-size:.74rem;font-weight:600;}
/* Search form */
.be-search-form{display:flex;align-items:center;gap:6px;margin-left:auto;}
.be-search-input{background:rgba(255,255,255,.05);border:1px solid var(--be-border);border-radius:8px;padding:6px 12px;color:var(--cm-txt);font-size:.8rem;width:220px;outline:none;}
.be-search-input:focus{border-color:rgba(212,160,23,.4);background:rgba(255,255,255,.08);}
/* Table */
.be-table-wrap{overflow-x:auto;border:1px solid var(--be-border);border-radius:12px;}
.be-ref-num{color:var(--be-gold);font-family:monospace;font-size:.85rem;}
.be-guest-cell{display:flex;align-items:center;gap:10px;}
.be-guest-avatar{width:32px;height:32px;border-radius:50%;background:rgba(212,160,23,.2);color:var(--be-gold);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0;}
.be-pay-bar{height:4px;background:rgba(255,255,255,.08);border-radius:2px;width:80px;margin:3px 0;}
.be-pay-bar__fill{height:100%;background:var(--be-green);border-radius:2px;max-width:100%;}
.be-source-tag{background:rgba(59,130,246,.1);color:var(--be-blue);border-radius:6px;padding:2px 8px;font-size:.72rem;white-space:nowrap;}
/* Action buttons */
.be-action-group{display:flex;gap:4px;flex-wrap:wrap;}
.be-act-btn{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:.74rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;white-space:nowrap;}
.be-act-btn--confirm{background:rgba(34,197,94,.15);color:var(--be-green);}
.be-act-btn--confirm:hover{background:rgba(34,197,94,.3);}
.be-act-btn--cancel{background:rgba(239,68,68,.12);color:var(--be-red);}
.be-act-btn--cancel:hover{background:rgba(239,68,68,.25);}
.be-act-btn--checkin{background:rgba(59,130,246,.13);color:var(--be-blue);}
.be-act-btn--checkin:hover{background:rgba(59,130,246,.28);}
.be-act-btn--checkout{background:rgba(139,92,246,.13);color:var(--be-violet);}
.be-act-btn--checkout:hover{background:rgba(139,92,246,.28);}
.be-act-btn--edit{background:rgba(212,160,23,.12);color:var(--be-gold);}
.be-act-btn--edit:hover{background:rgba(212,160,23,.25);}
/* Empty state */
.be-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:60px 24px;color:var(--be-muted);text-align:center;}
.be-empty-state .rhcp-nav-icon,.be-empty-state .rhcp-nav-icon svg{width:48px;height:48px;max-width:48px;max-height:48px;opacity:.3;}
.be-empty-state h3{font-size:1.05rem;color:rgba(200,218,240,.82);margin:0;}
.be-empty-state p{font-size:.83rem;max-width:320px;margin:0;}
/* New booking panel */
.be-new-booking-panel{background:var(--be-surface);border:1px solid var(--be-border);border-radius:14px;padding:20px;margin-bottom:20px;}
.be-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.be-panel-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:600;color:var(--cm-txt);margin:0;}
/* Analytics KPI */
.be-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;}
.be-kpi-card{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;padding:16px;display:flex;align-items:center;gap:14px;}
.be-kpi-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.be-kpi-icon .rhcp-nav-icon,.be-kpi-icon .rhcp-nav-icon svg{width:18px;height:18px;max-width:18px;max-height:18px;}
.be-kpi-icon--gold{background:rgba(212,160,23,.12);color:var(--be-gold);}
.be-kpi-icon--blue{background:rgba(59,130,246,.12);color:var(--be-blue);}
.be-kpi-icon--green{background:rgba(34,197,94,.12);color:var(--be-green);}
.be-kpi-icon--violet{background:rgba(139,92,246,.12);color:var(--be-violet);}
.be-kpi-icon--amber{background:rgba(245,158,11,.12);color:var(--be-amber);}
.be-kpi-val{font-size:1.25rem;font-weight:700;color:var(--cm-txt);line-height:1.1;}
.be-kpi-lbl{font-size:.75rem;color:var(--be-muted);margin-top:2px;line-height:1.3;}
.be-kpi-delta{font-size:.7rem;font-weight:600;margin-top:4px;}
.be-kpi-delta--up{color:var(--be-green);}
.be-kpi-delta--down{color:var(--be-red);}
/* Charts */
.be-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;}
.be-chart-card{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;padding:16px;}
.be-chart-card__head h3{font-size:.88rem;font-weight:600;color:var(--cm-txt);margin:0 0 16px;}
.be-bar-chart{display:flex;align-items:flex-end;gap:8px;height:120px;padding:0 4px;}
.be-bar-item{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;height:100%;}
.be-bar-wrap{flex:1;width:100%;display:flex;align-items:flex-end;}
.be-bar-fill{width:100%;border-radius:4px 4px 0 0;min-height:4px;position:relative;transition:height .3s;}
.be-bar-fill--gold{background:linear-gradient(180deg,#D4A017,rgba(212,160,23,.5));}
.be-bar-fill--blue{background:linear-gradient(180deg,var(--be-blue),rgba(59,130,246,.4));}
.be-bar-fill:hover .be-bar-tip{display:block;}
.be-bar-tip{display:none;position:absolute;bottom:calc(100%+4px);left:50%;transform:translateX(-50%);background:#1a2844;border:1px solid var(--be-border);border-radius:6px;padding:3px 8px;font-size:.68rem;color:var(--cm-txt);white-space:nowrap;z-index:10;}
.be-bar-lbl{font-size:.68rem;color:var(--be-muted);text-align:center;}
/* Popular rooms */
.be-section-card{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;padding:16px;margin-bottom:20px;}
.be-section-card__head h3{font-size:.88rem;font-weight:600;color:var(--cm-txt);margin:0 0 14px;}
.be-popular-rooms{display:flex;flex-direction:column;gap:10px;}
.be-pop-room{display:grid;grid-template-columns:28px 140px 1fr 160px;align-items:center;gap:12px;}
.be-pop-room__rank{width:24px;height:24px;border-radius:50%;background:rgba(212,160,23,.15);color:var(--be-gold);display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;}
.be-pop-room__info{display:flex;flex-direction:column;gap:1px;}
.be-pop-room__info strong{font-size:.84rem;color:var(--cm-txt);}
.be-pop-room__info span{font-size:.72rem;color:var(--be-muted);}
.be-pop-room__bar{height:8px;background:rgba(255,255,255,.06);border-radius:4px;overflow:hidden;}
.be-pop-bar__fill{height:100%;background:linear-gradient(90deg,var(--be-gold),rgba(212,160,23,.5));border-radius:4px;}
.be-pop-room__stats{display:flex;gap:12px;font-size:.78rem;}
.be-pop-room__stats span:first-child{color:var(--cm-txt);font-weight:600;}
.be-pop-room__stats span:last-child{color:var(--be-green);}
/* Sources */
.be-sources-header{margin-bottom:18px;}
.be-sources-header h2{font-size:1rem;color:var(--cm-txt);margin:0 0 4px;}
.be-sources-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;}
.be-source-card{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;padding:16px;display:flex;gap:14px;}
.be-source-card__icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.be-source-card__icon .rhcp-nav-icon,.be-source-card__icon .rhcp-nav-icon svg{width:16px;height:16px;max-width:16px;max-height:16px;}
.be-source-card__body{flex:1;min-width:0;}
.be-source-card__body h3{font-size:.86rem;font-weight:600;color:var(--cm-txt);margin:0 0 8px;}
.be-source-bar{height:6px;background:rgba(255,255,255,.06);border-radius:3px;margin-bottom:6px;overflow:hidden;}
.be-source-bar__fill{height:100%;border-radius:3px;}
.be-source-stats{display:flex;gap:10px;font-size:.74rem;color:var(--be-muted);flex-wrap:wrap;}
.be-source-stats span:first-child{color:var(--cm-txt);}
.be-ota-notice{display:flex;align-items:center;gap:16px;background:rgba(139,92,246,.07);border:1px solid rgba(139,92,246,.15);border-radius:12px;padding:16px 20px;}
.be-ota-notice__icon .rhcp-nav-icon,.be-ota-notice__icon .rhcp-nav-icon svg{width:24px;height:24px;max-width:24px;max-height:24px;color:var(--be-violet);}
.be-ota-notice strong{display:block;font-size:.9rem;color:var(--cm-txt);margin-bottom:4px;}
.be-ota-notice p{font-size:.8rem;color:var(--be-muted);margin:0;}
.be-ota-badge{margin-left:auto;white-space:nowrap;background:rgba(245,158,11,.12);color:var(--be-amber);border:1px solid rgba(245,158,11,.2);border-radius:8px;padding:4px 10px;font-size:.72rem;font-weight:700;}
/* Promo codes */
.be-promo-wrap{display:grid;grid-template-columns:320px 1fr;gap:20px;}
.be-promo-form{display:flex;flex-direction:column;gap:12px;}
.be-promo-form-col,.be-promo-list-col{display:flex;flex-direction:column;gap:12px;}
.be-promo-form-col{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;padding:16px;}
.be-promo-list{display:flex;flex-direction:column;gap:12px;}
.be-promo-card{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;padding:16px;}
.be-promo-card--inactive{opacity:.6;}
.be-promo-card__top{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap;}
.be-promo-code-badge{font-family:monospace;font-size:1.05rem;font-weight:700;background:rgba(212,160,23,.15);color:var(--be-gold);border-radius:8px;padding:4px 12px;letter-spacing:1px;}
.be-promo-card__meta{display:flex;gap:6px;flex-wrap:wrap;}
.be-promo-card__actions{display:flex;gap:6px;margin-left:auto;}
.be-promo-card__body>p{font-size:.82rem;color:var(--be-muted);margin:0 0 12px;}
.be-promo-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px;}
.be-promo-stat{display:flex;flex-direction:column;gap:2px;}
.be-promo-stat strong{font-size:.9rem;color:var(--cm-txt);}
.be-promo-stat span{font-size:.7rem;color:var(--be-muted);}
.be-promo-bar{height:4px;background:rgba(255,255,255,.06);border-radius:2px;margin-bottom:6px;overflow:hidden;}
.be-promo-bar__fill{height:100%;background:var(--be-gold);border-radius:2px;}
.be-promo-dates{display:flex;gap:12px;font-size:.72rem;color:var(--be-muted);}
/* Designer */
.be-designer-wrap{display:grid;grid-template-columns:320px 1fr;gap:20px;align-items:start;}
.be-designer-sidebar{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;overflow:hidden;}
.be-designer-sidebar__head{display:flex;align-items:center;gap:8px;padding:14px 16px;background:rgba(212,160,23,.07);border-bottom:1px solid var(--be-border);font-size:.88rem;font-weight:600;color:var(--be-gold);}
.be-designer-sidebar__head .rhcp-nav-icon,.be-designer-sidebar__head .rhcp-nav-icon svg{width:14px;height:14px;max-width:14px;max-height:14px;}
.be-designer-form{padding:14px 16px;display:flex;flex-direction:column;gap:0;}
.be-designer-section{border-bottom:1px solid var(--be-border);padding-bottom:12px;margin-bottom:12px;}
.be-designer-section:last-child{border-bottom:none;margin-bottom:0;}
.be-designer-section__title{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--be-muted);margin:0 0 10px;}
.be-designer-form__actions{margin-top:4px;}
/* Preview */
.be-designer-preview{display:flex;flex-direction:column;gap:10px;}
.be-preview-toggle{display:flex;gap:6px;justify-content:center;}
.be-preview-toggle__btn{padding:6px 16px;border-radius:8px;font-size:.78rem;font-weight:600;color:var(--be-muted);background:var(--be-surface);border:1px solid var(--be-border);text-decoration:none;}
.be-preview-toggle__btn--active{color:var(--be-gold);border-color:rgba(212,160,23,.3);background:rgba(212,160,23,.07);}
.be-preview-frame{background:var(--be-surface);border:1px solid var(--be-border);border-radius:14px;overflow:hidden;}
.be-preview-frame--desktop{width:100%;}
.be-preview-frame--tablet{max-width:600px;margin:0 auto;}
.be-preview-frame--mobile{max-width:375px;margin:0 auto;}
/* BPD preview */
.bpd-preview{font-family:system-ui,sans-serif;font-size:14px;}
.bpd-hero{background:linear-gradient(135deg,#0B1D3A,#1a3060);padding:32px 24px;text-align:center;background-size:cover;background-position:center;position:relative;}
.bpd-hero::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.45);pointer-events:none;}
.bpd-hero>*{position:relative;z-index:1;}
.bpd-logo{max-height:56px;margin:0 auto 12px;display:block;border-radius:6px;}
.bpd-hotel-name{color:#fff;font-size:1.4rem;font-weight:700;margin:0 0 8px;}
.bpd-desc{color:rgba(255,255,255,.7);font-size:.84rem;max-width:400px;margin:0 auto;}
.bpd-booking-bar{display:flex;gap:0;background:#fff;box-shadow:0 2px 20px rgba(0,0,0,.15);flex-wrap:wrap;}
.bpd-bb-field{flex:1;min-width:140px;display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-right:1px solid #e5e7eb;}
.bpd-bb-field label{font-size:.7rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;}
.bpd-bb-input{border:none;font-size:.84rem;color:#111;background:none;outline:none;}
.bpd-bb-btn{padding:12px 24px;font-size:.88rem;font-weight:700;color:#fff;border:none;cursor:pointer;white-space:nowrap;}
.bpd-section{padding:16px 20px;border-bottom:1px solid #f1f5f9;}
.bpd-section-title{font-size:.9rem;font-weight:700;color:#1e293b;margin:0 0 12px;}
.bpd-room-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.bpd-room-card{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;}
.bpd-room-card img{width:100%;height:100px;object-fit:cover;}
.bpd-room-info{padding:8px 10px;display:flex;flex-direction:column;gap:2px;}
.bpd-room-info strong{font-size:.82rem;color:#1e293b;}
.bpd-room-info span{font-size:.74rem;color:#6b7280;}
.bpd-room-price{color:#16a34a;font-size:.82rem;}
.bpd-amenities-grid{display:flex;flex-wrap:wrap;gap:8px;}
.bpd-amenity{display:flex;align-items:center;gap:5px;font-size:.78rem;color:#374151;}
.bpd-footer{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#f8fafc;flex-wrap:wrap;font-size:.8rem;color:#6b7280;border-top:1px solid #f1f5f9;}
.bpd-wa-btn{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;color:#fff;font-size:.78rem;font-weight:600;text-decoration:none;}
.bpd-social{display:flex;gap:6px;margin-left:auto;}
.bpd-social-link{display:inline-flex;padding:4px 10px;background:#e5e7eb;border-radius:6px;font-size:.72rem;font-weight:600;color:#374151;text-decoration:none;}
.bpd-terms{padding:10px 20px;background:#f1f5f9;}
.bpd-terms small{font-size:.7rem;color:#9ca3af;}
/* Settings */
.be-settings-wrap{max-width:700px;}
.be-settings-form{display:flex;flex-direction:column;gap:0;}
.be-settings-section{background:var(--be-surface);border:1px solid var(--be-border);border-radius:12px;padding:20px;margin-bottom:14px;}
.be-settings-section__title{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--cm-txt);margin:0 0 16px;}
.be-settings-section__title .rhcp-nav-icon,.be-settings-section__title .rhcp-nav-icon svg{width:16px;height:16px;max-width:16px;max-height:16px;color:var(--be-gold);}
.be-settings-form__actions{display:flex;align-items:center;gap:16px;padding-top:4px;}
/* Integrations */
.be-integrations-grid{display:flex;flex-direction:column;gap:10px;}
.be-integration-item{display:flex;align-items:center;gap:14px;padding:12px 14px;background:rgba(255,255,255,.03);border:1px solid var(--be-border);border-radius:10px;}
.be-integration-item--inactive{opacity:.55;}
.be-int-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.be-int-icon .rhcp-nav-icon,.be-int-icon .rhcp-nav-icon svg{width:14px;height:14px;max-width:14px;max-height:14px;}
.be-int-icon--green{background:rgba(34,197,94,.1);color:var(--be-green);}
.be-int-icon--blue{background:rgba(59,130,246,.1);color:var(--be-blue);}
.be-int-icon--gold{background:rgba(212,160,23,.1);color:var(--be-gold);}
.be-int-icon--violet{background:rgba(139,92,246,.1);color:var(--be-violet);}
.be-integration-item>div:nth-child(2){flex:1;}
.be-integration-item>div:nth-child(2) strong{display:block;font-size:.84rem;color:var(--cm-txt);margin-bottom:2px;}
.be-integration-item>div:nth-child(2) p{font-size:.74rem;color:var(--be-muted);margin:0;}
.be-int-badge{margin-left:auto;white-space:nowrap;padding:3px 10px;border-radius:8px;font-size:.7rem;font-weight:700;}
.be-int-badge--green{background:rgba(34,197,94,.12);color:var(--be-green);}
.be-int-badge--amber{background:rgba(245,158,11,.12);color:var(--be-amber);}
/* Responsive */
@media(max-width:1100px){.be-kpi-grid{grid-template-columns:repeat(2,1fr);}.be-charts-row{grid-template-columns:1fr;}.be-pop-room{grid-template-columns:28px 100px 1fr 120px;}}
@media(max-width:900px){.be-sources-grid{grid-template-columns:1fr 1fr;}.be-promo-wrap{grid-template-columns:1fr;}.be-designer-wrap{grid-template-columns:1fr;}.be-preview-frame--tablet,.be-preview-frame--mobile{max-width:100%;}.be-kpi-grid{grid-template-columns:1fr 1fr;}.be-promo-stats{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.be-kpi-grid{grid-template-columns:1fr;}.be-sources-grid{grid-template-columns:1fr;}.be-pop-room{grid-template-columns:28px 1fr 80px;}.be-pop-room__bar{display:none;}.be-tabnav{gap:2px;}.be-tab{padding:7px 10px;font-size:.75rem;}.be-bpd-room-grid{grid-template-columns:1fr;}.be-stat-chip{font-size:.72rem;}.be-search-form{margin-left:0;width:100%;}.be-search-input{width:100%;}}

/* ═══════════════════════════════════════════════════════════
   CHANNEL MANAGER STYLES
   ═══════════════════════════════════════════════════════════ */
:root{--cm-gold:#D4A017;--cm-green:#16a34a;--cm-blue:#2563eb;--cm-amber:#b45309;--cm-red:#dc2626;--cm-violet:#7c3aed;--cm-grey:#94a3b8;--cm-surface:var(--surface);--cm-border:var(--border);--cm-muted:var(--txt3);--cm-txt:var(--txt);--cm-txt2:var(--txt2);}
[data-theme="dark"]{--cm-green:#4ade80;--cm-blue:#60a5fa;--cm-amber:#fbbf24;--cm-red:#f87171;--cm-violet:#a78bfa;--cm-surface:#182040;--cm-border:rgba(255,255,255,.10);--cm-muted:rgba(200,220,245,.88);--cm-txt:#f1f5f9;--cm-txt2:rgba(200,220,245,.92);}
/* Shell */
.cm-shell{display:flex;flex-direction:column;gap:0;}
/* Header */
.cm-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0 18px;border-bottom:1px solid var(--cm-border);flex-wrap:wrap;}
.cm-header__left{display:flex;align-items:center;gap:14px;}
.cm-header__icon{width:42px;height:42px;background:rgba(212,160,23,.12);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--cm-gold);flex-shrink:0;}
.cm-header__icon .rhcp-nav-icon,.cm-header__icon .rhcp-nav-icon svg{width:20px;height:20px;max-width:20px;max-height:20px;}
.cm-header__title{font-size:1.35rem;font-weight:700;color:var(--cm-txt);margin:0;}
.cm-header__sub{font-size:.8rem;color:var(--cm-muted);margin:2px 0 0;}
.cm-header__stats{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.cm-stat-chip{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:600;border:1px solid transparent;}
.cm-stat-chip span{font-size:1rem;font-weight:700;}
.cm-stat-chip--green{background:rgba(34,197,94,.1);color:var(--cm-green);border-color:rgba(34,197,94,.2);}
.cm-stat-chip--blue{background:rgba(59,130,246,.1);color:var(--cm-blue);border-color:rgba(59,130,246,.2);}
/* Tab nav */
.cm-tabnav{display:flex;gap:4px;padding:16px 0 0;border-bottom:1px solid var(--cm-border);overflow-x:auto;scrollbar-width:none;}
.cm-tabnav::-webkit-scrollbar{display:none;}
.cm-tab{display:flex;align-items:center;gap:7px;padding:9px 14px;border-radius:8px 8px 0 0;font-size:.82rem;font-weight:600;color:var(--cm-muted);text-decoration:none;white-space:nowrap;border:1px solid transparent;border-bottom:none;transition:all .18s;position:relative;bottom:-1px;}
.cm-tab:hover{color:var(--cm-txt);background:rgba(255,255,255,.05);}
.cm-tab--active{color:var(--cm-gold);background:var(--cm-surface);border-color:var(--cm-border);border-bottom-color:var(--cm-surface);font-weight:600;}
.cm-tab .rhcp-nav-icon,.cm-tab .rhcp-nav-icon svg{width:14px;height:14px;max-width:14px;max-height:14px;}
.cm-content{padding:20px 0 0;}
/* Badges */
.cm-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;}
.cm-badge--green{background:rgba(34,197,94,.12);color:var(--cm-green);}
.cm-badge--amber{background:rgba(245,158,11,.12);color:var(--cm-amber);}
.cm-badge--red{background:rgba(239,68,68,.12);color:var(--cm-red);}
.cm-badge--blue{background:rgba(59,130,246,.12);color:var(--cm-blue);}
.cm-badge--violet{background:rgba(139,92,246,.12);color:var(--cm-violet);}
.cm-badge--grey{background:rgba(107,114,128,.12);color:var(--cm-grey);}
/* Channel cards */
.cm-ch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin-bottom:20px;}
.cm-ch-card{background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s;}
.cm-ch-card--active{border-color:rgba(34,197,94,.3);}
.cm-ch-card__top{display:flex;align-items:flex-start;gap:14px;}
.cm-ch-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cm-ch-icon .rhcp-nav-icon,.cm-ch-icon .rhcp-nav-icon svg{width:18px;height:18px;max-width:18px;max-height:18px;}
.cm-ch-icon--sm{width:32px;height:32px;border-radius:8px;}
.cm-ch-icon--sm .rhcp-nav-icon,.cm-ch-icon--sm .rhcp-nav-icon svg{width:14px;height:14px;max-width:14px;max-height:14px;}
.cm-ch-icon--xs{width:28px;height:28px;border-radius:7px;}
.cm-ch-icon--xs .rhcp-nav-icon,.cm-ch-icon--xs .rhcp-nav-icon svg{width:12px;height:12px;max-width:12px;max-height:12px;}
.cm-ch-info{flex:1;min-width:0;}
.cm-ch-info h3{font-size:.9rem;font-weight:600;color:var(--cm-txt);margin:0 0 3px;}
.cm-ch-info p{font-size:.76rem;color:var(--cm-muted);margin:0;}
.cm-ch-card__badges{display:flex;gap:5px;flex-wrap:wrap;flex-shrink:0;}
.cm-ch-last-sync{font-size:.72rem;color:var(--cm-muted);}
.cm-ch-commission{font-size:.72rem;color:var(--cm-amber);}
.cm-ch-actions{display:flex;gap:6px;flex-wrap:wrap;padding-top:4px;border-top:1px solid var(--cm-border);margin-top:4px;}
/* Action buttons */
.cm-act-btn{display:inline-flex;align-items:center;padding:5px 12px;border-radius:7px;font-size:.76rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;white-space:nowrap;}
.cm-act-btn--connect{background:rgba(34,197,94,.12);color:var(--cm-green);}
.cm-act-btn--connect:hover{background:rgba(34,197,94,.25);}
.cm-act-btn--disconnect{background:rgba(239,68,68,.1);color:var(--cm-red);}
.cm-act-btn--disconnect:hover{background:rgba(239,68,68,.22);}
.cm-act-btn--sync{background:rgba(59,130,246,.1);color:var(--cm-blue);}
.cm-act-btn--sync:hover{background:rgba(59,130,246,.22);}
.cm-act-btn--edit{background:rgba(212,160,23,.1);color:var(--cm-gold);}
.cm-act-btn--edit:hover{background:rgba(212,160,23,.22);}
.cm-act-btn--planned{background:rgba(107,114,128,.08);color:var(--cm-grey);cursor:not-allowed;}
/* Connect panel */
.cm-connections-wrap{display:flex;flex-direction:column;gap:20px;}
.cm-connect-panel{background:var(--cm-surface);border:1px solid rgba(212,160,23,.3);border-radius:14px;padding:20px;}
.cm-connect-panel__head{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.cm-connect-panel__head h2{font-size:1rem;font-weight:600;color:var(--cm-txt);margin:0;flex:1;}
.cm-close-btn{color:var(--cm-muted);font-size:1.3rem;text-decoration:none;}
.cm-connect-form{display:flex;flex-direction:column;gap:12px;}
.cm-info-box{display:flex;align-items:flex-start;gap:10px;background:rgba(59,130,246,.07);border:1px solid rgba(59,130,246,.15);border-radius:10px;padding:12px 14px;font-size:.82rem;color:var(--cm-txt);}
/* Coming soon */
.cm-coming-soon{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;text-align:center;}
.cm-coming-soon__icon .rhcp-nav-icon,.cm-coming-soon__icon .rhcp-nav-icon svg{width:40px;height:40px;max-width:40px;max-height:40px;color:var(--cm-muted);opacity:.5;}
.cm-coming-soon h3{font-size:1rem;color:var(--cm-txt);margin:0;}
.cm-coming-soon p{font-size:.82rem;color:var(--cm-muted);max-width:360px;margin:0;}
/* Section card */
.cm-section-card{background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:12px;padding:16px;margin-bottom:14px;}
.cm-section-card__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.cm-section-card__head h3{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600;color:var(--cm-txt);margin:0;}
.cm-section-card__head h3 .rhcp-nav-icon,.cm-section-card__head h3 .rhcp-nav-icon svg{width:14px;height:14px;max-width:14px;max-height:14px;color:var(--cm-gold);}
/* Sync header */
.cm-sync-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap;}
.cm-sync-header h2{font-size:1rem;font-weight:600;color:var(--cm-txt);margin:0 0 4px;}
.cm-sync-header p{font-size:.8rem;color:var(--cm-muted);margin:0;}
/* Notice / empty */
.cm-notice{display:flex;align-items:center;gap:12px;background:rgba(59,130,246,.07);border:1px solid rgba(59,130,246,.15);border-radius:10px;padding:14px 16px;font-size:.82rem;color:var(--cm-txt);margin-bottom:14px;}
.cm-notice .rhcp-nav-icon,.cm-notice .rhcp-nav-icon svg{width:16px;height:16px;max-width:16px;max-height:16px;color:var(--cm-blue);flex-shrink:0;}
.cm-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:50px 24px;color:var(--cm-muted);text-align:center;}
.cm-empty-state .rhcp-nav-icon,.cm-empty-state .rhcp-nav-icon svg{width:40px;height:40px;max-width:40px;max-height:40px;opacity:.3;}
/* Availability calendar */
.cm-avail-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;}
.cm-avail-kpi{background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:10px;padding:14px;text-align:center;}
.cm-avail-kpi__val{font-size:1.5rem;font-weight:700;color:var(--cm-txt);}
.cm-avail-kpi__lbl{font-size:.74rem;color:var(--cm-muted);margin-top:2px;}
.cm-avail-kpi--green .cm-avail-kpi__val{color:var(--cm-green);}
.cm-avail-kpi--red .cm-avail-kpi__val{color:var(--cm-red);}
.cm-avail-kpi--blue .cm-avail-kpi__val{color:var(--cm-blue);}
.cm-avail-calendar{display:flex;gap:6px;overflow-x:auto;padding:8px 0 4px;scrollbar-width:thin;}
.cm-avail-day{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:52px;}
.cm-avail-day__lbl{font-size:.66rem;color:var(--cm-muted);text-align:center;white-space:nowrap;}
.cm-avail-day__bar{width:32px;height:80px;background:rgba(255,255,255,.05);border-radius:4px;position:relative;overflow:hidden;display:flex;align-items:flex-end;}
.cm-avail-day__fill{width:100%;border-radius:4px;min-height:3px;transition:height .3s;}
.cm-avail-day--free .cm-avail-day__fill{background:var(--cm-green);}
.cm-avail-day--busy .cm-avail-day__fill{background:var(--cm-amber);}
.cm-avail-day--full .cm-avail-day__fill{background:var(--cm-red);}
.cm-avail-day__num{font-size:.68rem;color:var(--cm-muted);}
/* Channel sync list */
.cm-ch-sync-list{display:flex;flex-direction:column;gap:10px;}
.cm-ch-sync-row{display:flex;align-items:center;gap:12px;padding:10px 12px;background:rgba(255,255,255,.02);border-radius:8px;}
.cm-ch-sync-info{flex:1;display:flex;flex-direction:column;gap:2px;}
.cm-ch-sync-info strong{font-size:.84rem;color:var(--cm-txt);}
.cm-ch-sync-info span{font-size:.74rem;color:var(--cm-muted);}
/* Status tab */
.cm-status-wrap{display:flex;flex-direction:column;gap:20px;}
.cm-status-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;}
.cm-status-card{background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;}
.cm-status-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;}
.cm-status-dot--green{background:var(--cm-green);box-shadow:0 0 8px rgba(34,197,94,.5);}
.cm-status-dot--amber{background:var(--cm-amber);box-shadow:0 0 8px rgba(245,158,11,.5);}
.cm-status-dot--grey{background:#374151;}
.cm-status-info{display:flex;flex-direction:column;gap:2px;}
.cm-status-info strong{font-size:.84rem;color:var(--cm-txt);}
.cm-status-lbl{font-size:.74rem;font-weight:600;}
.cm-status-txt--green{color:var(--cm-green);}
.cm-status-txt--amber{color:var(--cm-amber);}
.cm-status-txt--grey{color:var(--cm-grey);}
.cm-status-meta{font-size:.7rem;color:var(--cm-muted);}
/* Log table */
.cm-log-table{overflow-x:auto;}
/* Reservation flow diagram */
.cm-flow-diagram{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:16px;background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:12px;margin-bottom:16px;justify-content:center;}
.cm-flow-channel{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;min-width:90px;text-align:center;}
.cm-flow-channel strong{font-size:.78rem;color:var(--cm-txt);}
.cm-flow-channel small{font-size:.68rem;color:var(--cm-muted);}
.cm-flow-dot{width:8px;height:8px;border-radius:50%;}
.cm-flow-core{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 16px;border:2px solid rgba(212,160,23,.4);border-radius:10px;background:rgba(212,160,23,.06);min-width:100px;text-align:center;}
.cm-flow-core strong{font-size:.8rem;color:var(--cm-gold);}
.cm-flow-core small{font-size:.68rem;color:var(--cm-muted);}
.cm-flow-arrow{font-size:1.2rem;color:var(--cm-muted);flex-shrink:0;}
/* Analytics */
.cm-analytics-wrap{display:flex;flex-direction:column;gap:0;}
.cm-an-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;}
.cm-an-kpi{background:var(--cm-surface);border:1px solid var(--cm-border);border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px;}
.cm-an-kpi__icon{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cm-an-kpi__icon .rhcp-nav-icon,.cm-an-kpi__icon .rhcp-nav-icon svg{width:16px;height:16px;max-width:16px;max-height:16px;}
.cm-an-kpi__icon--gold{background:rgba(212,160,23,.12);color:var(--cm-gold);}
.cm-an-kpi__icon--blue{background:rgba(59,130,246,.12);color:var(--cm-blue);}
.cm-an-kpi__icon--green{background:rgba(34,197,94,.12);color:var(--cm-green);}
.cm-an-kpi__icon--violet{background:rgba(139,92,246,.12);color:var(--cm-violet);}
.cm-an-kpi__val{font-size:1.15rem;font-weight:700;color:var(--cm-txt);}
.cm-an-kpi__lbl{font-size:.74rem;color:var(--cm-muted);margin-top:1px;}
.cm-an-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
/* Channel breakdown */
.cm-ch-breakdown{display:flex;flex-direction:column;gap:10px;}
.cm-ch-brk-row{display:grid;grid-template-columns:10px 140px 1fr 40px 40px 90px;align-items:center;gap:10px;}
.cm-ch-brk-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.cm-ch-brk-name{font-size:.82rem;color:var(--cm-txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cm-ch-brk-bar{height:8px;background:rgba(255,255,255,.06);border-radius:4px;overflow:hidden;}
.cm-ch-brk-fill{height:100%;border-radius:4px;}
.cm-ch-brk-cnt{font-size:.8rem;color:var(--cm-txt);font-weight:600;text-align:right;}
.cm-ch-brk-pct{font-size:.74rem;color:var(--cm-muted);text-align:right;}
.cm-ch-brk-rev{font-size:.74rem;color:var(--cm-green);text-align:right;white-space:nowrap;}
/* Responsive */
@media(max-width:1100px){.cm-an-kpis{grid-template-columns:repeat(2,1fr);}.cm-an-grid{grid-template-columns:1fr;}.cm-ch-brk-row{grid-template-columns:10px 1fr 1fr 36px;}.cm-ch-brk-bar,.cm-ch-brk-pct,.cm-ch-brk-rev{display:none;}}
@media(max-width:900px){.cm-ch-grid{grid-template-columns:1fr;}.cm-avail-kpis{grid-template-columns:1fr 1fr;}.cm-status-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){.cm-an-kpis{grid-template-columns:1fr;}.cm-avail-kpis{grid-template-columns:1fr 1fr;}.cm-tabnav{gap:2px;}.cm-tab{padding:7px 10px;font-size:.75rem;}.cm-flow-diagram{flex-direction:column;}.cm-flow-arrow{transform:rotate(90deg);}.cm-status-grid{grid-template-columns:1fr 1fr;}}
/* ═══════════════════════════════════════════════
   INTELLIGENCE HOUSE
   ═══════════════════════════════════════════════════════════ */

/* ── Keyframes ─────────────────────────────────────────────────────────── */
@keyframes intel-breathe{
  0%,100%{transform:scale(1);opacity:.85;}
  50%{transform:scale(1.08);opacity:1;}
}
@keyframes intel-glow-pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(212,160,23,0),0 0 8px rgba(212,160,23,.15);}
  50%{box-shadow:0 0 0 5px rgba(212,160,23,.12),0 0 18px rgba(212,160,23,.28);}
}
@keyframes intel-spark-spin{
  0%{transform:rotate(0deg) scale(1);opacity:.6;}
  50%{transform:rotate(180deg) scale(1.3);opacity:1;}
  100%{transform:rotate(360deg) scale(1);opacity:.6;}
}
@keyframes intel-pulse-ring{
  0%{transform:scale(.8);opacity:.7;}
  100%{transform:scale(2.2);opacity:0;}
}
@keyframes intel-float{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-3px);}
}
@keyframes intel-dot-bounce{
  0%,80%,100%{transform:translateY(0);opacity:.5;}
  40%{transform:translateY(-6px);opacity:1;}
}
@keyframes intel-orb-drift{
  0%,100%{transform:translate(0,0) scale(1);}
  33%{transform:translate(24px,-16px) scale(1.1);}
  66%{transform:translate(-16px,12px) scale(.93);}
}
@keyframes intel-type-cursor{
  0%,100%{opacity:1;} 50%{opacity:0;}
}
@keyframes intel-search-ring{
  0%{transform:scale(1);opacity:.6;}
  100%{transform:scale(2.6);opacity:0;}
}
@keyframes intel-live-blink{
  0%,100%{opacity:1;} 50%{opacity:.3;}
}
@keyframes intel-brain-ring-out{
  0%{transform:scale(1);opacity:.5;}
  100%{transform:scale(1.9);opacity:0;}
}
@keyframes intel-grid-scroll{
  0%{background-position:0 0;}
  100%{background-position:0 60px;}
}

/* ── Sidebar: Intelligence House group ─────────────────────────────────── */
.rhcp-sb-group--intel > .rhcp-sb-group-btn--intel{
  position:relative;
  background:linear-gradient(135deg,rgba(212,160,23,.10) 0%,rgba(139,92,246,.08) 100%);
  border-left:2px solid rgba(212,160,23,.45);
  border-radius:0 8px 8px 0;
  margin:2px 8px 2px 0;
  padding-left:14px;
  transition:background .25s,box-shadow .25s,border-color .25s;
}
.rhcp-sb-group--intel > .rhcp-sb-group-btn--intel:hover{
  background:linear-gradient(135deg,rgba(212,160,23,.18) 0%,rgba(139,92,246,.14) 100%);
  border-color:rgba(212,160,23,.75);
  box-shadow:inset 0 0 20px rgba(212,160,23,.06),0 0 16px rgba(212,160,23,.10);
  transform:scale(1.015);
}
.rhcp-sb-group--open.rhcp-sb-group--intel > .rhcp-sb-group-btn--intel{
  border-color:var(--gold);
  background:linear-gradient(135deg,rgba(212,160,23,.18) 0%,rgba(139,92,246,.12) 100%);
  box-shadow:0 0 20px rgba(212,160,23,.15);
}
/* Brain icon */
.rhcp-intel-icon{
  width:22px;height:22px;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;position:relative;
}
.rhcp-intel-brain{
  stroke:var(--gold);
  animation:intel-breathe 3.6s ease-in-out infinite,intel-float 4.2s ease-in-out infinite;
  filter:drop-shadow(0 0 4px rgba(212,160,23,.45));
}
.rhcp-sb-group--intel > .rhcp-sb-group-btn--intel:hover .rhcp-intel-brain{
  filter:drop-shadow(0 0 8px rgba(212,160,23,.75));
  animation:intel-breathe 1.8s ease-in-out infinite,intel-float 2.4s ease-in-out infinite;
}
/* Pulse ring */
.rhcp-intel-pulse{
  position:absolute;inset:-4px;
  border-radius:50%;
  border:1.5px solid rgba(212,160,23,.5);
  animation:intel-pulse-ring 2.8s ease-out infinite;
  pointer-events:none;
}
/* Spark icon */
.rhcp-intel-spark{
  margin-left:auto;
  color:var(--gold);
  display:flex;align-items:center;
  animation:intel-spark-spin 5s linear infinite;
  opacity:.7;
  flex-shrink:0;
}
.rhcp-sb-group--intel > .rhcp-sb-group-btn--intel:hover .rhcp-intel-spark{
  opacity:1;
  animation:intel-spark-spin 1.8s linear infinite;
}
/* Group label color */
.rhcp-sb-group--intel > .rhcp-sb-group-btn--intel .rhcp-sb-group-label{
  color:#f0c040;
  font-weight:700;
  letter-spacing:.05em;
}
/* Links inside intel group */
.rhcp-sb-group--intel .rhcp-sb-link{
  padding-left:34px;
  border-left:2px solid transparent;
  transition:border-color .18s,background .18s,color .18s;
}
.rhcp-sb-group--intel .rhcp-sb-link:hover{
  border-left-color:rgba(212,160,23,.4);
  background:rgba(212,160,23,.06);
  color:#f0c040;
}
.rhcp-sb-group--intel .rhcp-sb-link--active{
  border-left-color:var(--gold);
  background:rgba(212,160,23,.12);
  color:#f0c040;
}
.rhcp-sb-group--intel .rhcp-sb-link--active .rhcp-sb-link-icon .rhcp-nav-icon svg{
  stroke:#f0c040;
}

/* ── Intelligence House PAGE ───────────────────────────────────────────── */
.intel-wrap,.intel-house{background:var(--bg);min-height:100%;}

/* Compact hero (with tab nav) */
.intel-hero--compact{padding:20px 24px 0;margin-bottom:0;border-radius:var(--radius) var(--radius) 0 0;}
.intel-hero--compact .intel-hero__content{margin-bottom:14px;gap:14px;}
.intel-hero--compact .intel-hero__title{font-size:1.35rem;}
/* Hero KPI strip */
/* Hero KPI strip: always on dark hero bg */
.intel-hero__kpi-strip{display:flex;gap:10px;margin-left:auto;flex-wrap:wrap;}
.intel-hero__kpi{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  padding:8px 14px;
  background:rgba(255,255,255,.08);
  border-radius:8px;
  border:1px solid rgba(212,160,23,.25);
  white-space:nowrap;
}
.intel-hero__kpi span,
[data-theme="light"] .intel-hero__kpi span,
[data-theme="dark"] .intel-hero__kpi span {
  font-size:1.1rem!important;font-weight:800!important;
  color:#f5d060!important;line-height:1!important;
}
.intel-hero__kpi small,
[data-theme="light"] .intel-hero__kpi small,
[data-theme="dark"] .intel-hero__kpi small {
  font-size:.69rem!important;
  color:rgba(220,232,250,.85)!important;
  text-transform:uppercase!important;letter-spacing:.04em!important;
}

/* Tab nav */
/* Intelligence House tab nav — always on dark bg, so hard-coded light text */
/* =================================================================
   INTEL TAB NAV — complete redesign for maximum readability
   Tab bar sits on the dark hero. We use a clearly lighter surface
   so white text has real contrast.
================================================================= */
.intel-tabnav{
  display:flex;
  gap:0;
  padding:0 16px;
  background:#0d1f3c;           /* mid-navy — lighter than the hero */
  border-bottom:3px solid #D4A017;
  overflow-x:auto;
  scrollbar-width:none;
}
.intel-tabnav::-webkit-scrollbar{display:none;}

/* INACTIVE tabs — solid white text, no opacity fade */
.intel-tab,
[data-theme="light"] .intel-tab,
[data-theme="dark"]  .intel-tab {
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:13px 20px!important;
  font-size:.85rem!important;
  font-weight:700!important;
  color:#ffffff!important;          /* pure white — max contrast */
  text-decoration:none!important;
  white-space:nowrap!important;
  border-bottom:3px solid transparent!important;
  margin-bottom:-3px!important;     /* overlap the nav border */
  background:transparent!important;
  transition:color .15s,border-color .15s,background .15s!important;
  position:relative!important;
  opacity:1!important;
  letter-spacing:.01em!important;
}

/* Icons: white */
.intel-tab .rhcp-nav-icon,
.intel-tab .rhcp-nav-icon svg {
  width:14px!important;
  height:14px!important;
  stroke:#ffffff!important;
  opacity:1!important;
}

/* HOVER — gold text + subtle gold bg tint */
.intel-tab:hover,
[data-theme="light"] .intel-tab:hover,
[data-theme="dark"]  .intel-tab:hover {
  color:#f5d060!important;
  background:rgba(212,160,23,.12)!important;
}
.intel-tab:hover .rhcp-nav-icon svg{ stroke:#f5d060!important; }

/* ACTIVE tab — bright gold, bold, gold bottom border */
.intel-tab--active,
[data-theme="light"] .intel-tab--active,
[data-theme="dark"]  .intel-tab--active {
  color:#f5d060!important;          /* gold */
  font-weight:800!important;
  border-bottom-color:#D4A017!important;
  background:rgba(212,160,23,.15)!important;
}
.intel-tab--active .rhcp-nav-icon,
.intel-tab--active .rhcp-nav-icon svg {
  stroke:#f5d060!important;
}

/* View container */
.intel-view{padding:20px 0;}
.intel-view-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;}
/* View titles on light/dark body bg */
.intel-view-title{
  font-size:1.45rem!important;font-weight:800!important;
  color:var(--txt)!important;margin:0!important;
}
.intel-view-sub{
  font-size:.875rem!important;
  color:var(--txt2)!important;
  margin:0 auto 0 0!important;
  line-height:1.55!important;
}
[data-theme="dark"] .intel-view-title{color:#f1f5f9!important;}
[data-theme="dark"] .intel-view-sub{color:#c8d8e8!important;}

/* Smart Search view */
.intel-search-view,.intel-ai-view,.intel-crm-view{max-width:none;}
.intel-search-header{margin-bottom:18px;}
.intel-smart-search-form{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;}
.intel-smart-search-field{
  display:flex;align-items:center;gap:10px;
  background:var(--bg2);border:1.5px solid rgba(212,160,23,.25);
  border-radius:10px;padding:0 16px;
  transition:border-color .2s,box-shadow .2s;
}
.intel-smart-search-field:focus-within{
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(212,160,23,.12);
}
.intel-smart-search-input{
  flex:1;background:transparent;border:none;outline:none;
  color:var(--txt)!important;font-size:.95rem!important;
  font-family:inherit;padding:14px 0;
}
[data-theme="dark"] .intel-smart-search-input{color:#f1f5f9!important;}
.intel-smart-search-input::placeholder{color:var(--muted)!important;opacity:1!important;}
[data-theme="light"] .intel-smart-search-input::placeholder{color:#4a6480!important;}
[data-theme="dark"] .intel-smart-search-input::placeholder{color:#7a9ab5!important;}
.intel-search-scopes{display:flex;gap:6px;flex-wrap:wrap;}
.intel-scope-chip{
  padding:6px 14px;border-radius:20px;font-size:.78rem;font-weight:700;
  background:var(--surface2);border:1.5px solid var(--border);
  color:var(--txt)!important;cursor:pointer;
  transition:background .15s,border-color .15s,color .15s;
}
[data-theme="dark"] .intel-scope-chip{color:#c8d8e8!important;}
.intel-scope-chip--active{
  background:rgba(212,160,23,.12)!important;border-color:var(--gold)!important;color:var(--gold)!important;
}
.intel-scope-chip:hover{border-color:var(--gold);color:var(--gold)!important;}
/* Results */
.intel-search-results{margin-top:8px;}
.intel-search-count{font-size:.86rem;color:var(--txt2)!important;font-weight:600;margin-bottom:12px;}
[data-theme="dark"] .intel-search-count{color:#c8d8e8!important;}
.intel-results-list{display:flex;flex-direction:column;gap:6px;}
.intel-result-item{
  display:flex;align-items:center;gap:12px;
  padding:12px 16px;border-radius:10px;
  background:var(--surface);border:1px solid var(--border);
  text-decoration:none;color:var(--txt);
  transition:border-color .15s,background .15s,transform .15s;
}
.intel-result-item:hover{border-color:var(--gold);background:rgba(212,160,23,.04);transform:translateX(3px);}
.intel-result-icon{width:34px;height:34px;border-radius:8px;background:rgba(212,160,23,.10);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.intel-result-icon .rhcp-nav-icon svg{stroke:var(--gold);width:14px;height:14px;}
.intel-result-body{flex:1;display:flex;flex-direction:column;gap:2px;}
.intel-result-body strong{font-size:.875rem;color:var(--txt)!important;font-weight:700;}
[data-theme="dark"] .intel-result-body strong{color:#f1f5f9!important;}
.intel-result-body span{font-size:.78rem;color:var(--txt2)!important;}
[data-theme="dark"] .intel-result-body span{color:#96afc5!important;}
.intel-result-type{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;}
/* Search tips */
.intel-search-tips h3{font-size:1rem;font-weight:800;color:var(--txt)!important;margin-bottom:12px;}
[data-theme="dark"] .intel-search-tips h3{color:#f1f5f9!important;}
.intel-tips-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;}
.intel-tip-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:6px;}
.intel-tip-icon{width:28px;height:28px;border-radius:7px;background:rgba(212,160,23,.10);display:flex;align-items:center;justify-content:center;}
.intel-tip-icon .rhcp-nav-icon svg{stroke:var(--gold);width:13px;height:13px;}
.intel-tip-card strong{font-size:.84rem;color:var(--txt)!important;font-weight:700;}
[data-theme="dark"] .intel-tip-card strong{color:#f1f5f9!important;}
.intel-tip-card p{font-size:.78rem;color:var(--txt3)!important;margin:0;line-height:1.45;}
[data-theme="dark"] .intel-tip-card p{color:#96afc5!important;}

/* AI Assistant view */
.intel-ai-header{display:flex;align-items:center;gap:14px;margin-bottom:18px;background:linear-gradient(135deg,rgba(212,160,23,.06) 0%,rgba(139,92,246,.06) 100%);border:1px solid rgba(212,160,23,.15);border-radius:12px;padding:16px 20px;}
.intel-ai-icon-wrap{width:48px;height:48px;border-radius:50%;background:rgba(212,160,23,.10);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;}
.intel-ai-icon-wrap svg{stroke:#D4A017;}
.intel-ai-badge--lg{font-size:.78rem;padding:5px 14px;margin-left:auto;}
.intel-ai-form{display:flex;margin-bottom:12px;}
.intel-ai-field{
  display:flex;align-items:center;width:100%;
  background:var(--surface);border:1.5px solid rgba(212,160,23,.3);
  border-radius:12px;overflow:hidden;
  transition:border-color .2s,box-shadow .2s;
}
.intel-ai-field:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,160,23,.12);}
.intel-ai-input{
  flex:1;background:transparent;border:none;outline:none;
  color:var(--txt)!important;font-size:.95rem!important;
  font-family:inherit;padding:14px 16px;
}
[data-theme="dark"] .intel-ai-input{color:#f1f5f9!important;}
.intel-ai-input::placeholder{color:var(--muted)!important;opacity:1!important;}
[data-theme="light"] .intel-ai-input::placeholder{color:#4a6480!important;}
[data-theme="dark"] .intel-ai-input::placeholder{color:#7a9ab5!important;}
.intel-ai-send{
  padding:0 18px;background:rgba(212,160,23,.12);border:none;
  color:var(--gold);cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:background .2s;
}
.intel-ai-send:hover{background:rgba(212,160,23,.25);}
.intel-ai-send svg{fill:none;stroke:var(--gold);}
/* Category buttons */
.intel-ai-categories{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.intel-ai-cat{
  display:flex;align-items:center;gap:7px;
  padding:7px 14px;border-radius:8px;
  background:var(--surface);border:1.5px solid var(--border);
  color:var(--txt)!important;font-size:.82rem!important;font-weight:700!important;
  cursor:pointer;font-family:inherit;
  transition:border-color .15s,background .15s,color .15s;
}
[data-theme="dark"] .intel-ai-cat{color:#c8d8e8!important;}
.intel-ai-cat .rhcp-nav-icon svg{width:13px;height:13px;stroke:var(--txt2);}
.intel-ai-cat:hover{border-color:var(--gold);color:var(--gold)!important;background:rgba(212,160,23,.06);}
.intel-ai-cat--active{background:rgba(212,160,23,.10);border-color:var(--gold);color:var(--gold)!important;}
/* AI Response */
.intel-ai-response{
  background:linear-gradient(135deg,rgba(212,160,23,.05) 0%,rgba(139,92,246,.05) 100%);
  border:1px solid rgba(212,160,23,.2);border-radius:12px;padding:20px;
  margin-bottom:16px;
}
.intel-ai-response__header{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap;}
.intel-ai-q{font-size:.82rem;color:var(--txt3)!important;font-style:italic;}
[data-theme="dark"] .intel-ai-q{color:#96afc5!important;}
.intel-ai-response__body,.intel-ai-response__data{
  font-size:.92rem!important;color:var(--txt)!important;line-height:1.7!important;font-weight:500;
}
[data-theme="dark"] .intel-ai-response__body,[data-theme="dark"] .intel-ai-response__data{color:#c8d8e8!important;}
.intel-ai-response__data{display:none;}
/* Prompt groups */
.intel-prompt-group{margin-bottom:12px;}
.intel-prompt-group h4{font-size:.82rem;font-weight:700;color:var(--txt3);margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em;}
.intel-prompt-chips{display:flex;flex-wrap:wrap;gap:8px;}
.intel-prompt-chip{
  padding:6px 14px;border-radius:20px;
  background:var(--surface);border:1.5px solid var(--border);
  color:var(--txt)!important;font-size:.8rem;font-weight:600;
  cursor:pointer;font-family:inherit;
  transition:border-color .15s,background .15s,color .15s;
}
[data-theme="dark"] .intel-prompt-chip{color:#c8d8e8!important;}
.intel-prompt-chip:hover{border-color:var(--gold);background:rgba(212,160,23,.08);color:var(--gold)!important;}

/* CRM Intelligence view */
.intel-crm-view .intel-view-heading{margin-bottom:16px;}
/* Segment bars */
.intel-segment-bars{display:flex;flex-direction:column;gap:12px;}
.intel-seg-bar{display:flex;flex-direction:column;gap:5px;}
.intel-seg-bar__label{display:flex;justify-content:space-between;font-size:.84rem;}
.intel-seg-bar__label span{color:var(--txt)!important;font-weight:600;}
[data-theme="dark"] .intel-seg-bar__label span{color:#c8d8e8!important;}
.intel-seg-bar__label strong{color:var(--txt)!important;font-weight:800;}
[data-theme="dark"] .intel-seg-bar__label strong{color:#f1f5f9!important;}
.intel-seg-bar__track{height:8px;background:var(--border);border-radius:4px;overflow:hidden;}
.intel-seg-bar__fill{height:100%;border-radius:4px;transition:width .6s ease;}

/* Responsive */
@media(max-width:900px){
  .intel-hero__kpi-strip{display:none;}
  .intel-tabnav{padding:0 12px;}
  .intel-tab{padding:9px 12px;font-size:.78rem;}
  .intel-view{padding:16px 0;}
}
@media(max-width:640px){
  .intel-tabnav{gap:0;}
  .intel-tab{padding:8px 10px;font-size:.75rem;}
  .intel-ai-categories{gap:5px;}
  .intel-ai-cat{padding:5px 10px;font-size:.75rem;}
}

/* Hero */
.intel-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(145deg,#060f1e 0%,#0b1d3a 55%,#0f1c3a 100%);
  border-radius:var(--radius);margin-bottom:20px;
  padding:28px 28px 20px;border:1px solid rgba(212,160,23,.15);
  box-shadow:0 8px 40px rgba(0,0,0,.35);
}
.intel-hero__bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.intel-hero__grid{
  position:absolute;inset:0;
  background-image:linear-gradient(rgba(212,160,23,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(212,160,23,.05) 1px,transparent 1px);
  background-size:40px 40px;
  animation:intel-grid-scroll 12s linear infinite;
  opacity:.6;
}
.intel-orb{
  position:absolute;border-radius:50%;pointer-events:none;
  animation:intel-orb-drift 14s ease-in-out infinite;
}
.intel-orb--1{
  width:280px;height:280px;right:-80px;top:-100px;
  background:radial-gradient(circle,rgba(212,160,23,.12) 0%,transparent 70%);
}
.intel-orb--2{
  width:200px;height:200px;left:-60px;bottom:-60px;
  background:radial-gradient(circle,rgba(139,92,246,.10) 0%,transparent 70%);
  animation-delay:-7s;
}
.intel-hero__content{display:flex;align-items:center;gap:18px;position:relative;z-index:1;margin-bottom:20px;}
.intel-hero__icon-wrap{
  width:60px;height:60px;border-radius:50%;
  background:rgba(212,160,23,.10);border:1.5px solid rgba(212,160,23,.3);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;position:relative;
  animation:intel-glow-pulse 3.5s ease-in-out infinite;
}
.intel-hero__brain-ring{
  position:absolute;inset:-8px;border-radius:50%;
  border:1.5px solid rgba(212,160,23,.3);
  animation:intel-brain-ring-out 3s ease-out infinite;
}
.intel-hero__brain-ring--2{animation-delay:-1.5s;}
.intel-hero__brain-svg{
  stroke:#D4A017;
  filter:drop-shadow(0 0 6px rgba(212,160,23,.5));
  animation:intel-breathe 3s ease-in-out infinite,intel-float 4s ease-in-out infinite;
}
/* Hero title + sub: always on dark bg — hard-code white */
.intel-hero__title,
[data-theme="light"] .intel-hero__title,
[data-theme="dark"] .intel-hero__title {
  font-size:1.65rem!important;font-weight:800!important;
  color:#f1f5f9!important;
  margin:0 0 4px!important;
  text-shadow:0 2px 12px rgba(0,0,0,.4);
}
.intel-hero__sub,
[data-theme="light"] .intel-hero__sub,
[data-theme="dark"] .intel-hero__sub {
  font-size:.88rem!important;
  color:rgba(220,232,250,.88)!important;
  margin:0!important;font-weight:500!important;
}

/* Search */
.intel-search-wrap{position:relative;z-index:1;max-width:600px;}
.intel-search-form{display:flex;gap:8px;}
.intel-search-field{
  flex:1;display:flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.07);border:1.5px solid rgba(212,160,23,.25);
  border-radius:10px;padding:0 14px;
  transition:border-color .25s,box-shadow .25s,background .25s;
  position:relative;
}
.intel-search-wrap--active .intel-search-field{
  border-color:rgba(212,160,23,.65);
  background:rgba(255,255,255,.10);
  box-shadow:0 0 0 3px rgba(212,160,23,.12);
}
.intel-search-icon{color:rgba(200,220,245,.55);flex-shrink:0;}
.intel-search-wrap--active .intel-search-icon{color:var(--gold);}
.intel-search-input{
  flex:1;background:transparent;border:none;outline:none;
  color:#f1f5f9;font-size:.875rem;font-family:inherit;padding:11px 0;
}
.intel-search-input::placeholder{color:rgba(200,220,245,.45);}
.intel-search-btn{
  padding:0 18px;background:rgba(212,160,23,.15);
  border:1.5px solid rgba(212,160,23,.35);border-radius:10px;
  color:var(--gold);font-weight:700;font-size:.82rem;font-family:inherit;
  cursor:pointer;white-space:nowrap;
  transition:background .2s,border-color .2s;
}
.intel-search-btn:hover{background:rgba(212,160,23,.28);border-color:var(--gold);}
/* Search pulse */
.intel-search-pulse{
  position:absolute;right:12px;top:50%;transform:translateY(-50%);
  width:8px;height:8px;border-radius:50%;
  background:var(--gold);opacity:0;
  transition:opacity .2s;
}
.intel-search-pulse--active{
  opacity:1;
  animation:intel-search-ring 1s ease-out infinite;
}
/* Suggestions */
.intel-search-suggestions{
  position:absolute;top:calc(100% + 6px);left:0;right:0;
  background:#0f1e38;border:1px solid rgba(212,160,23,.25);
  border-radius:10px;overflow:hidden;
  box-shadow:0 8px 24px rgba(0,0,0,.35);
  z-index:99;
}
.intel-suggestion-item{
  display:flex;align-items:center;width:100%;
  padding:10px 16px;background:transparent;border:none;
  color:rgba(200,220,245,.82);font-size:.82rem;font-family:inherit;
  cursor:pointer;text-align:left;
  transition:background .12s,color .12s;
  animation:intel-fade-in .2s ease;
}
@keyframes intel-fade-in{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:translateY(0);}}
.intel-suggestion-item:hover{background:rgba(212,160,23,.10);color:#f0c040;}

/* Insights strip */
.intel-insights-strip{
  background:rgba(212,160,23,.05);border:1px solid rgba(212,160,23,.12);
  border-radius:12px;padding:14px 18px;margin-bottom:20px;
  min-height:56px;display:flex;align-items:center;
}
.intel-thinking{display:flex;align-items:center;gap:8px;width:100%;}
.intel-thinking__dot{
  width:8px;height:8px;border-radius:50%;background:var(--gold);
  animation:intel-dot-bounce 1.2s ease-in-out infinite;
}
.intel-thinking__dot:nth-child(2){animation-delay:.2s;}
.intel-thinking__dot:nth-child(3){animation-delay:.4s;}
.intel-thinking__label{font-size:.82rem;color:rgba(200,220,245,.75);font-style:italic;margin-left:4px;}
.intel-insights-inner{display:flex;gap:12px;flex-wrap:wrap;width:100%;}
.intel-insight-card{
  display:flex;align-items:flex-start;gap:10px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:10px;padding:10px 14px;flex:1;min-width:200px;
}
.intel-insight-card--success{border-color:rgba(34,197,94,.2);background:rgba(34,197,94,.05);}
.intel-insight-card--warning{border-color:rgba(245,158,11,.2);background:rgba(245,158,11,.05);}
.intel-insight-card--info{border-color:rgba(59,130,246,.2);background:rgba(59,130,246,.05);}
.intel-insight-icon{font-size:1.2rem;flex-shrink:0;margin-top:1px;}
.intel-insight-body{display:flex;flex-direction:column;gap:3px;}
.intel-insight-body strong{font-size:.82rem;color:#f1f5f9;font-weight:700;}
.intel-type-text{font-size:.79rem;color:rgba(200,220,245,.82);min-height:1.2em;}
.intel-cursor{animation:intel-type-cursor .7s step-end infinite;color:var(--gold);}

/* KPI row */
.intel-kpi-row{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;}
.intel-kpi{
  flex:1;min-width:140px;
  background:var(--surface);border:1px solid var(--border);
  border-radius:12px;padding:16px 14px;
  display:flex;align-items:center;gap:12px;
  border-top:3px solid var(--kc,var(--gold));
  transition:transform .2s,box-shadow .2s;
}
.intel-kpi:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,.12);}
.intel-kpi__icon{width:36px;height:36px;border-radius:9px;background:color-mix(in srgb,var(--kc,var(--gold)) 12%,transparent);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.intel-kpi__icon .rhcp-nav-icon svg{width:16px;height:16px;stroke:var(--kc,var(--gold));}
.intel-kpi__body{display:flex;flex-direction:column;gap:2px;flex:1;}
.intel-kpi__val{font-size:1.45rem;font-weight:800;color:var(--txt);line-height:1;}
.intel-kpi__lbl{font-size:.7rem;color:var(--txt3);text-transform:uppercase;letter-spacing:.05em;font-weight:600;}
.intel-kpi__trend{font-size:.72rem;font-weight:700;}
.intel-kpi__trend--up{color:#16a34a;}
.intel-kpi__trend--down{color:#dc2626;}
.intel-kpi__trend--neutral{color:var(--txt3);}

/* Grid */
.intel-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.intel-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius);padding:20px;
  box-shadow:var(--shadow-sm);
}
.intel-card--ai{
  background:linear-gradient(145deg,#0a1628 0%,#0f1e38 100%);
  border-color:rgba(212,160,23,.2);
}
.intel-card__head{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:16px;
}
.intel-card__head h3{font-size:.95rem;font-weight:700;color:var(--txt);margin:0;}
.intel-card__link{font-size:.78rem;color:var(--gold);text-decoration:none;font-weight:600;}
.intel-card__link:hover{color:var(--gold3);}
.intel-live-dot{
  width:8px;height:8px;border-radius:50%;background:#22c55e;
  animation:intel-live-blink 2s ease-in-out infinite;
}
.intel-ai-badge{
  display:inline-flex;align-items:center;gap:4px;
  background:rgba(212,160,23,.15);border:1px solid rgba(212,160,23,.3);
  color:var(--gold);font-size:.68rem;font-weight:800;
  padding:2px 8px;border-radius:20px;
  animation:intel-breathe 3s ease-in-out infinite;
}
.intel-chart-wrap{position:relative;height:180px;}
.intel-chart-wrap canvas{width:100%!important;height:100%!important;}

/* Recommendations */
.intel-rec-list{list-style:none;display:flex;flex-direction:column;gap:10px;}
.intel-rec-item{display:flex;align-items:flex-start;gap:10px;font-size:.83rem;color:rgba(200,220,245,.86);padding:8px 12px;background:rgba(255,255,255,.04);border-radius:8px;border:1px solid rgba(255,255,255,.06);}
.intel-rec-text{line-height:1.45;}

/* Room chips */
.intel-room-grid{display:flex;flex-wrap:wrap;gap:8px;}
.intel-room-chip{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid;border-radius:8px;font-size:.8rem;}
.intel-room-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.intel-room-chip strong{color:var(--txt);font-weight:700;}
.intel-room-chip small{color:var(--txt3);}

/* Shortcuts */
.intel-shortcuts{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;}
.intel-shortcut{
  display:flex;align-items:center;gap:10px;
  padding:12px 14px;border-radius:10px;
  background:var(--surface2);border:1px solid var(--border);
  text-decoration:none;color:var(--txt2);
  font-size:.82rem;font-weight:600;
  transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;
}
.intel-shortcut:hover{
  transform:translateY(-2px);
  border-color:var(--sc,var(--gold));
  background:color-mix(in srgb,var(--sc,var(--gold)) 6%,var(--surface));
  box-shadow:0 4px 16px rgba(0,0,0,.1);
  color:var(--txt);
}
.intel-shortcut__icon{width:28px;height:28px;border-radius:7px;background:color-mix(in srgb,var(--sc,var(--gold)) 12%,transparent);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.intel-shortcut__icon .rhcp-nav-icon svg{width:14px;height:14px;stroke:var(--sc,var(--gold));}
.intel-shortcut__label{flex:1;}

/* Responsive */
@media(max-width:900px){.intel-grid{grid-template-columns:1fr;}.intel-kpi-row{gap:8px;}}
@media(max-width:640px){.intel-kpi-row{grid-template-columns:repeat(2,1fr);display:grid;}.intel-shortcuts{grid-template-columns:1fr 1fr;}.intel-hero{padding:20px 16px;}.intel-search-form{flex-direction:column;}.intel-hero__icon-wrap{width:48px;height:48px;}}

/* prefers-reduced-motion */
@media(prefers-reduced-motion:reduce){
  .rhcp-intel-brain,.intel-hero__brain-svg,.intel-orb,.intel-hero__grid,
  .rhcp-intel-spark,.rhcp-intel-pulse,.intel-hero__brain-ring,
  .intel-kpi,.intel-shortcut,.intel-insight-card{animation:none!important;transition:none!important;}
  .intel-thinking__dot{animation:none!important;opacity:1;}
  .intel-live-dot{animation:none!important;}
  .intel-ai-badge{animation:none!important;}
}

/* ══════════════════════════════════════════════════════════
   STAFF MANAGEMENT v2
   ═══════════════════════════════════════════════ */
/* Shell & header */
.sm-shell{display:flex;flex-direction:column;gap:0}
.sm-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0 18px;border-bottom:1px solid var(--border);flex-wrap:wrap}
.sm-header__left{display:flex;align-items:center;gap:14px}
.sm-header__icon{width:46px;height:46px;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 18%,transparent),color-mix(in srgb,var(--gold) 8%,transparent));border:1px solid color-mix(in srgb,var(--gold) 22%,transparent);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0}
.sm-header__icon .rhcp-nav-icon svg{width:20px;height:20px}
.sm-header__title{font-size:1.35rem;font-weight:800;color:var(--txt);margin:0;letter-spacing:-.02em}
.sm-header__sub{font-size:.8rem;color:var(--txt3);margin:3px 0 0}
/* KPI strip */
.sm-kpi-strip{display:flex;gap:8px;flex-wrap:wrap}
.sm-kpi{display:flex;flex-direction:column;align-items:center;padding:9px 15px;border-radius:11px;border:1px solid var(--border);min-width:74px;text-align:center;box-shadow:var(--shadow-sm)}
.sm-kpi__val{font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums}
.sm-kpi__lbl{font-size:.66rem;color:var(--txt3);margin-top:1px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.sm-kpi--blue{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.2)}.sm-kpi--blue .sm-kpi__val{color:#3b82f6}
.sm-kpi--green{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.2)}.sm-kpi--green .sm-kpi__val{color:#22c55e}
.sm-kpi--gold{background:rgba(212,160,23,.1);border-color:rgba(212,160,23,.2)}.sm-kpi--gold .sm-kpi__val{color:#D4A017}
.sm-kpi--amber{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.2)}.sm-kpi--amber .sm-kpi__val{color:#f59e0b}
/* Tab nav */
.sm-tabnav{display:flex;gap:4px;padding:14px 0 0;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;flex-shrink:0}
.sm-tabnav::-webkit-scrollbar{display:none}
.sm-tab{display:flex;align-items:center;gap:6px;padding:9px 15px;border-radius:8px 8px 0 0;font-size:.8rem;font-weight:700;color:var(--txt3);text-decoration:none;white-space:nowrap;border:none;border-bottom:2px solid transparent;transition:color var(--ease),background var(--ease),border-color var(--ease);position:relative;bottom:-1px}
.sm-tab .rhcp-nav-icon svg{width:13px;height:13px}
.sm-tab:hover{color:var(--txt);background:var(--surface2)}
.sm-tab--active{color:var(--gold-dim);background:color-mix(in srgb,var(--gold) 7%,transparent);border-bottom-color:var(--gold);font-weight:700}
.sm-tab--cta{background:rgba(212,160,23,.12);color:#D4A017;border-color:rgba(212,160,23,.2)}
.sm-tab--cta:hover{background:rgba(212,160,23,.22)}
.sm-content{padding:18px 0 0}
/* Section header */
.sm-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}
.sm-section-header h2{font-size:1rem;font-weight:700;color:#f1f5f9;margin:0}
.sm-sub{font-size:.78rem;color:rgba(200,218,240,.80);margin:3px 0 0}
/* Section card */
.sm-section-card{background:#182040;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px;margin-bottom:14px;overflow:hidden}
.sm-section-card--amber{border-color:rgba(245,158,11,.25);background:rgba(245,158,11,.04)}
/* Toolbar */
.sm-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
/* Staff grid */
.sm-staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-bottom:14px}
.sm-staff-card{background:#182040;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s}
.sm-staff-card:hover{border-color:rgba(212,160,23,.25)}
.sm-staff-card__top{display:flex;align-items:flex-start;gap:12px;padding:14px 14px 12px}
.sm-staff-avatar{width:44px;height:44px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;flex-shrink:0}
.sm-staff-card__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sm-staff-name{font-size:.88rem;font-weight:600;color:var(--cm-txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sm-staff-role{font-size:.76rem;color:rgba(200,218,240,.82)}
.sm-staff-dept{font-size:.72rem;font-weight:600}
.sm-staff-card__body{padding:0 14px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.sm-sd{font-size:.78rem;color:rgba(200,218,240,.82)}
.sm-staff-card__actions{display:flex;gap:6px;padding:10px 14px;border-top:1px solid rgba(255,255,255,.06)}
.sm-card-btn{padding:5px 12px;border-radius:7px;font-size:.76rem;font-weight:600;background:rgba(255,255,255,.06);color:rgba(200,218,240,.92);border:none;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:background .15s,color .15s}
.sm-card-btn:hover{background:rgba(255,255,255,.12);color:var(--cm-txt)}
.sm-card-btn--edit{background:rgba(212,160,23,.1);color:#D4A017}
.sm-card-btn--edit:hover{background:rgba(212,160,23,.2)}
.sm-card-btn--green{background:rgba(34,197,94,.1);color:#22c55e}
.sm-card-btn--green:hover{background:rgba(34,197,94,.2)}
.sm-card-btn--red{background:rgba(239,68,68,.1);color:#ef4444}
.sm-card-btn--red:hover{background:rgba(239,68,68,.2)}
/* Badge */
.sm-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:.7rem;font-weight:600;white-space:nowrap}
.sm-badge--amber{background:rgba(245,158,11,.12);color:#f59e0b}
.sm-badge--blue{background:rgba(59,130,246,.12);color:#3b82f6}
/* Form */
.sm-form-wrap{background:#182040;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;margin-bottom:14px}
.sm-form-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:8px}
.sm-form-head h2{font-size:1rem;font-weight:600;color:var(--cm-txt);margin:0}
.sm-form-section{margin-bottom:20px}
.sm-form-section h3{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(200,218,240,.75);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06)}
.sm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sm-field{display:flex;flex-direction:column;gap:5px}
.sm-field label{font-size:.78rem;font-weight:600;color:rgba(200,218,240,.90)}
.sm-field--full{grid-column:1/-1}
.sm-form-actions{display:flex;gap:8px;flex-wrap:wrap;padding-top:4px}
/* Attendance */
.sm-att-kpis{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.sm-att-k{display:flex;flex-direction:column;align-items:center;padding:10px 20px;border-radius:10px;border:1px solid transparent;min-width:80px;text-align:center}
.sm-att-k span{font-size:1.4rem;font-weight:700}
.sm-att-k small{font-size:.7rem;color:rgba(200,218,240,.80);margin-top:1px}
.sm-att-k--green{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.2);color:#22c55e}
.sm-att-k--red{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.2);color:#ef4444}
.sm-att-k--amber{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.2);color:#f59e0b}
.sm-att-k--grey{background:rgba(107,114,128,.1);border-color:rgba(107,114,128,.2);color:#6b7280}
.sm-mini-av{width:30px;height:30px;border-radius:8px;background:rgba(212,160,23,.15);color:#D4A017;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0}
.sm-shift-pill{font-size:.72rem;padding:2px 8px;border-radius:6px;background:rgba(59,130,246,.1);color:#3b82f6;font-weight:600}
/* Modal */
.sm-modal{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center}
.sm-modal-inner{background:#0f1e3a;border:1px solid rgba(255,255,255,.1);border-radius:16px;width:100%;max-width:500px;padding:0;overflow:hidden}
.sm-modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}
.sm-modal-head h3{font-size:.95rem;font-weight:600;color:var(--cm-txt);margin:0}
.sm-modal-close{background:none;border:none;color:rgba(200,218,240,.75);cursor:pointer;font-size:1.2rem;padding:4px}
.sm-modal-close:hover{color:var(--cm-txt)}
.sm-modal .sm-form{padding:20px}
/* Shift table */
.sm-shift-table th{background:#0f1e3a}
.sm-shift-chip{display:inline-flex;flex-direction:column;align-items:center;padding:4px 8px;border-radius:6px;font-size:.72rem;font-weight:600;white-space:nowrap}
.sm-shift-chip small{font-size:.64rem;margin-top:1px}
.sm-shift-empty{color:rgba(200,210,240,.15);font-size:.8rem}
.sm-shift-legend{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
/* Leaves */
.sm-leave-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:8px;background:rgba(255,255,255,.02);margin-bottom:6px;flex-wrap:wrap}
.sm-leave-actions{display:flex;gap:6px}
/* Performance */
.sm-perf-bars{display:flex;flex-direction:column;gap:8px}
.sm-perf-row{display:flex;align-items:center;gap:10px}
.sm-perf-row span{min-width:110px;font-size:.8rem;color:rgba(200,218,240,.90)}
.sm-perf-track{flex:1;height:6px;background:rgba(255,255,255,.06);border-radius:3px;overflow:hidden}
.sm-perf-fill{height:100%;background:linear-gradient(90deg,#D4A017,#f0c040);border-radius:3px}
.sm-perf-row strong{min-width:32px;text-align:right;font-size:.8rem;color:var(--cm-txt)}
.sm-perf-note{font-size:.78rem;color:rgba(200,218,240,.80);margin-top:8px}
/* Departments */
.sm-dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:14px}
.sm-dept-card{background:#182040;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:flex-start}
.sm-dept-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:8px}
.sm-dept-icon .rhcp-nav-icon svg{width:16px;height:16px}
.sm-dept-name{font-size:.9rem;font-weight:600;color:var(--cm-txt);margin:0 0 4px}
.sm-dept-members{display:flex;flex-direction:column;gap:3px;width:100%;margin-top:6px}
.sm-dept-member{font-size:.76rem;color:rgba(200,218,240,.88)}
.sm-dept-empty{font-size:.76rem;color:rgba(200,218,240,.72);font-style:italic}
/* Permissions */
.sm-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.sm-perm-card{background:#182040;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px}
.sm-perm-role{display:flex;align-items:center;gap:8px;font-size:.86rem;font-weight:700;color:var(--cm-txt);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.07)}
.sm-perm-role .rhcp-nav-icon svg{width:13px;height:13px;color:#D4A017}
.sm-perm-list{display:flex;flex-direction:column;gap:4px}
.sm-perm-item{font-size:.77rem;padding:3px 8px;border-radius:5px}
.sm-perm-item--yes{color:#22c55e;background:rgba(34,197,94,.08)}
.sm-perm-item--no{color:rgba(200,218,240,.72)}
/* Profile */
.sm-profile-bar{display:flex;gap:8px;margin-bottom:16px}
.sm-profile-layout{display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:start}
.sm-profile-sidebar-card{background:#182040;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}
.sm-profile-ava{width:68px;height:68px;border-radius:50%;background:linear-gradient(135deg,rgba(212,160,23,.3),rgba(212,160,23,.1));color:#D4A017;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;margin-bottom:4px}
.sm-profile-name{font-size:1.1rem;font-weight:700;color:var(--cm-txt);margin:0}
.sm-profile-role{font-size:.82rem;color:rgba(200,218,240,.82);margin:0}
.sm-profile-fields{width:100%;margin-top:12px;display:flex;flex-direction:column;gap:6px;text-align:left}
.sm-profile-field{display:flex;justify-content:space-between;gap:8px;font-size:.78rem;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.sm-pf-label{color:rgba(200,218,240,.78)}
.sm-pf-val{color:var(--cm-txt);text-align:right;font-weight:500}
.sm-profile-main{display:flex;flex-direction:column;gap:12px}
.sm-profile-kpis{display:flex;gap:10px;flex-wrap:wrap}
.sm-pro-kpi{display:flex;flex-direction:column;align-items:center;padding:12px 18px;border-radius:10px;border:1px solid rgba(255,255,255,.07);text-align:center}
.sm-pro-kpi span{font-size:1.3rem;font-weight:700}
.sm-pro-kpi small{font-size:.7rem;color:rgba(200,218,240,.80);margin-top:1px}
.sm-pro-kpi--green{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.2);color:#22c55e}
.sm-pro-kpi--blue{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.2);color:#3b82f6}
.sm-pro-kpi--gold{background:rgba(212,160,23,.1);border-color:rgba(212,160,23,.2);color:#D4A017}
.sm-att-strip{display:flex;gap:5px;flex-wrap:wrap;padding:8px 0}
.sm-att-dot{width:20px;height:20px;border-radius:5px;flex-shrink:0}
/* Empty state */
.sm-empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 24px;color:rgba(200,218,240,.72);text-align:center}
.sm-empty-state .rhcp-nav-icon svg{width:40px;height:40px;opacity:.3}
/* Responsive */
@media(max-width:900px){.sm-profile-layout{grid-template-columns:1fr;}.sm-staff-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.sm-staff-grid{grid-template-columns:1fr;}.sm-form-grid{grid-template-columns:1fr;}.sm-att-kpis{flex-wrap:wrap;}.sm-kpi-strip{gap:4px;}.sm-tabnav{gap:2px;}.sm-tab{padding:7px 10px;font-size:.75rem;}.sm-perm-grid{grid-template-columns:1fr;}.sm-dept-grid{grid-template-columns:1fr 1fr;}}
/* Inbox-arrow-down icon stub */

/* ═══════════════════════════════════════════════
   WCAG ACCESSIBILITY OVERRIDES
   Applied last to ensure contrast compliance
   ═══════════════════════════════════════════════ */

/* ─ Focus rings — WCAG 2.4.11 ─ */
.rhcp-app-body *:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:2px;
  border-radius:4px;
}
.rhcp-app-body a:focus-visible,
.rhcp-app-body button:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:3px;
}

/* ─ Table rows: stronger zebra + hover ─ */
.rhcp-table tbody tr:nth-child(even) td{background:var(--surface2);}
.rhcp-table tbody tr:hover td{background:rgba(212,160,23,.05);}
[data-theme="dark"] .rhcp-table tbody tr:nth-child(even) td{background:rgba(255,255,255,.028);}
[data-theme="dark"] .rhcp-table tbody tr:hover td{background:rgba(212,160,23,.07);}

/* ─ Ensure table td color on dark theme ─ */
[data-theme="dark"] .rhcp-table td{color:var(--txt);}
[data-theme="dark"] .rhcp-table th{color:var(--txt3);background:rgba(255,255,255,.03);}

/* ─ KPI card strong contrast in dark mode ─ */
[data-theme="dark"] .rhcp-kpi-value{color:var(--txt);}
[data-theme="dark"] .rhcp-kpi-label{color:var(--txt3);}
[data-theme="dark"] .rhcp-kpi-sub{color:var(--txt3);}

/* ─ Page header in dark mode ─ */
[data-theme="dark"] .rhcp-page-title{color:var(--txt);}
[data-theme="dark"] .rhcp-page-subtitle{color:var(--txt3);}

/* ─ Card text in dark mode ─ */
[data-theme="dark"] .rhcp-card-header h3{color:var(--txt);}
[data-theme="dark"] .rhcp-dashboard-card{border-color:var(--border2);}
[data-theme="dark"] .rhcp-form-card-title{color:var(--txt);}

/* ─ Badges: always legible ─ */
.rhcp-badge[style*="background"]{font-weight:700;}

/* ─ Sidebar nav legibility ─ */
.rhcp-sb-link-text{font-weight:500;}
.rhcp-sb-link--active .rhcp-sb-link-text{font-weight:700;}
.rhcp-sb-group-label{font-weight:700;letter-spacing:.05em;}

/* ─ Admin/section headers on dark cards ─ */
.sm-header__title,.sm-kpi__val{color:#f1f5f9;}
.sm-kpi__lbl{color:rgba(200,220,245,.88);font-weight:600;}
.sm-pf-label{color:rgba(200,220,245,.80);font-weight:600;}
.sm-pf-val{color:#f1f5f9;font-weight:600;}
.sm-staff-name{color:#f1f5f9;font-weight:700;}
.sm-dept-name{color:#f1f5f9;font-weight:700;}

/* ─ Banner stat values: ensure always visible ─ */
.rhcp-welcome-stat-value{color:#f0c040;text-shadow:0 2px 8px rgba(0,0,0,.5);}

/* ─ Topbar: always solid bg, never transparent ─ */
.rhcp-topbar{background:var(--surface);}

/* ─ Revenue strip fix ─ */
[data-theme="dark"] .rhcp-revenue-stat{background:var(--surface);}
[data-theme="dark"] .rhcp-revenue-stat-value{color:var(--txt);}
[data-theme="dark"] .rhcp-revenue-stat-label{color:var(--txt3);}

/* ─ Input placeholder contrast ─ */
.rhcp-app-body .rhcp-input::placeholder{color:var(--txt3);opacity:1;}
[data-theme="dark"] .rhcp-app-body .rhcp-input::placeholder{color:rgba(200,220,245,.55);}

/* ─ Ensure minimum font sizes ─ */
.rhcp-kpi-label,.rhcp-revenue-stat-label,.sm-kpi__lbl{font-size:max(.72rem,11px)!important;}
.rhcp-table td{font-size:max(.855rem,13px);}
.rhcp-table th{font-size:max(.72rem,11px);}

/* ─ Horizontal rule dividers ─ */
[data-theme="dark"] .rhcp-form-actions{border-top-color:var(--border2);}
[data-theme="dark"] .rhcp-billing-row{border-bottom-color:var(--border2);}

/* ══════════════════════════════════════════════════════════════════════════
   UI VISIBILITY & COLOR ENHANCEMENT PASS v2
   — Enterprise-grade legibility, status colours, tab clarity
   ══════════════════════════════════════════════════════════════════════════ */

/* ── 1. GLOBAL STATUS COLOR SYSTEM ──────────────────────────────────────── */
:root {
  /* Status palette — light */
  --status-green:       #15803d;   /* Connected / Active / Paid / Success */
  --status-green-bg:    #dcfce7;
  --status-green-border:#bbf7d0;
  --status-red:         #b91c1c;   /* Disconnected / Failed / Overdue / Critical */
  --status-red-bg:      #fee2e2;
  --status-red-border:  #fecaca;
  --status-orange:      #c2410c;   /* Pending / Awaiting / Warning */
  --status-orange-bg:   #ffedd5;
  --status-orange-border:#fed7aa;
  --status-yellow:      #a16207;   /* Attention Needed */
  --status-yellow-bg:   #fef9c3;
  --status-yellow-border:#fde68a;
  --status-blue:        #1d4ed8;   /* Info / Analytics / Neutral */
  --status-blue-bg:     #dbeafe;
  --status-blue-border: #bfdbfe;
  --status-purple:      #7c3aed;   /* Coming Soon / Beta / AI */
  --status-purple-bg:   #ede9fe;
  --status-purple-border:#ddd6fe;
}
[data-theme="dark"] {
  --status-green:       #4ade80;
  --status-green-bg:    rgba(74,222,128,.12);
  --status-green-border:rgba(74,222,128,.25);
  --status-red:         #f87171;
  --status-red-bg:      rgba(248,113,113,.12);
  --status-red-border:  rgba(248,113,113,.25);
  --status-orange:      #fb923c;
  --status-orange-bg:   rgba(251,146,60,.12);
  --status-orange-border:rgba(251,146,60,.25);
  --status-yellow:      #fbbf24;
  --status-yellow-bg:   rgba(251,191,36,.10);
  --status-yellow-border:rgba(251,191,36,.25);
  --status-blue:        #60a5fa;
  --status-blue-bg:     rgba(96,165,250,.12);
  --status-blue-border: rgba(96,165,250,.25);
  --status-purple:      #c084fc;
  --status-purple-bg:   rgba(192,132,252,.12);
  --status-purple-border:rgba(192,132,252,.25);
}

/* ── 2. UNIVERSAL BADGE SYSTEM ───────────────────────────────────────────── */
.rhcp-status-badge {
  display:inline-flex;align-items:center;gap:5px;
  padding:3px 10px;border-radius:20px;
  font-size:.72rem;font-weight:700;letter-spacing:.04em;
  white-space:nowrap;border:1px solid;
  line-height:1.5;
}
.rhcp-status-badge::before {
  content:'';display:inline-block;
  width:6px;height:6px;border-radius:50%;flex-shrink:0;
  background:currentColor;
}
/* Color variants */
.rhcp-status-badge--green  {color:var(--status-green); background:var(--status-green-bg); border-color:var(--status-green-border);}
.rhcp-status-badge--red    {color:var(--status-red);   background:var(--status-red-bg);   border-color:var(--status-red-border);}
.rhcp-status-badge--orange {color:var(--status-orange);background:var(--status-orange-bg);border-color:var(--status-orange-border);}
.rhcp-status-badge--yellow {color:var(--status-yellow);background:var(--status-yellow-bg);border-color:var(--status-yellow-border);}
.rhcp-status-badge--blue   {color:var(--status-blue);  background:var(--status-blue-bg);  border-color:var(--status-blue-border);}
.rhcp-status-badge--purple {color:var(--status-purple);background:var(--status-purple-bg);border-color:var(--status-purple-border);}
/* Semantic aliases */
.rhcp-status-badge--connected,.rhcp-status-badge--active,.rhcp-status-badge--paid,.rhcp-status-badge--success
  {color:var(--status-green);background:var(--status-green-bg);border-color:var(--status-green-border);}
.rhcp-status-badge--disconnected,.rhcp-status-badge--failed,.rhcp-status-badge--overdue,.rhcp-status-badge--critical
  {color:var(--status-red);background:var(--status-red-bg);border-color:var(--status-red-border);}
.rhcp-status-badge--pending,.rhcp-status-badge--awaiting,.rhcp-status-badge--warning
  {color:var(--status-orange);background:var(--status-orange-bg);border-color:var(--status-orange-border);}
.rhcp-status-badge--attention
  {color:var(--status-yellow);background:var(--status-yellow-bg);border-color:var(--status-yellow-border);}
.rhcp-status-badge--info,.rhcp-status-badge--analytics
  {color:var(--status-blue);background:var(--status-blue-bg);border-color:var(--status-blue-border);}
.rhcp-status-badge--coming-soon,.rhcp-status-badge--beta,.rhcp-status-badge--ai
  {color:var(--status-purple);background:var(--status-purple-bg);border-color:var(--status-purple-border);}

/* ── 3. PAGE TITLES — bolder, higher contrast ────────────────────────────── */
.rhcp-page-title {
  font-size:1.75rem!important;
  font-weight:900!important;
  color:var(--txt)!important;
  letter-spacing:-.025em;
  line-height:1.15;
  margin-bottom:4px;
}
.rhcp-page-subtitle {
  font-size:.92rem!important;
  color:var(--txt2)!important;
  font-weight:500;
  line-height:1.55;
}
[data-theme="dark"] .rhcp-page-title   {color:#f8fafc!important;}
[data-theme="dark"] .rhcp-page-subtitle{color:#c8d8e8!important;}

/* Module section headings */
.rhcp-section-title,
.intel-card__head h3,
.cm-section-title,
.be-section-title,
.sm-section-title,
.tch-section-title {
  font-size:1.05rem!important;
  font-weight:800!important;
  color:var(--txt)!important;
}
[data-theme="dark"] .rhcp-section-title,
[data-theme="dark"] .intel-card__head h3,
[data-theme="dark"] .cm-section-title,
[data-theme="dark"] .be-section-title,
[data-theme="dark"] .tch-section-title { color:#f1f5f9!important; }

/* Card descriptions, help text */
.rhcp-card-desc,.rhcp-help-text,.cm-ch-info p,.be-desc,.tch-desc,.sm-staff-card__role {
  color:var(--txt3)!important;
  font-size:.84rem;
  line-height:1.55;
}
[data-theme="dark"] .rhcp-card-desc,
[data-theme="dark"] .cm-ch-info p,
[data-theme="dark"] .rhcp-help-text   {color:#96afc5!important;}

/* ── 4. UNIVERSAL TAB NAVIGATION ─────────────────────────────────────────── */
/* Base tab styles — non-intel families (light/dark aware) */
.rhcp-tab,
.sm-tab,
.be-tab,
.cm-tab,
.tch-tab,
.mkt-tab,
.wa-tab,
.mp-tab,
.crm-tab {
  font-size:.84rem!important;
  font-weight:600!important;
  color:var(--txt2)!important;
  opacity:1!important;
  transition:color .18s,background .18s,border-color .18s,box-shadow .18s;
  position:relative;
}
[data-theme="dark"] .rhcp-tab,
[data-theme="dark"] .sm-tab,
[data-theme="dark"] .be-tab,
[data-theme="dark"] .cm-tab,
[data-theme="dark"] .tch-tab,
[data-theme="dark"] .mkt-tab,
[data-theme="dark"] .wa-tab,
[data-theme="dark"] .mp-tab,
[data-theme="dark"] .crm-tab {
  color:rgba(200,220,245,.88)!important;
}
/* Hover state — all tabs */
.rhcp-tab:hover,.sm-tab:hover,.be-tab:hover,.cm-tab:hover,
.tch-tab:hover,.mkt-tab:hover,.wa-tab:hover,.mp-tab:hover,.crm-tab:hover {
  color:var(--gold)!important;
  background:rgba(212,160,23,.08)!important;
}
/* Active tab — all families */
.sm-tab--active,.be-tab--active,.cm-tab--active,.tch-tab--active,
.mkt-tab--active,.wa-tab--active,.mp-tab--active,.crm-tab--active {
  color:var(--gold)!important;
  font-weight:700!important;
  background:rgba(212,160,23,.10)!important;
  border-color:rgba(212,160,23,.3)!important;
  box-shadow:inset 0 -2px 0 var(--gold)!important;
}
[data-theme="dark"] .sm-tab--active,[data-theme="dark"] .be-tab--active,
[data-theme="dark"] .cm-tab--active,[data-theme="dark"] .tch-tab--active {
  color:#f0c040!important;
  background:rgba(212,160,23,.12)!important;
  box-shadow:inset 0 -2px 0 #f0c040!important;
}
/* Active tab underline indicator */
.sm-tab--active::after,.be-tab--active::after,.cm-tab--active::after,
.tch-tab--active::after,.mkt-tab--active::after,.wa-tab--active::after {
  content:'';
  position:absolute;bottom:-1px;left:0;right:0;height:2px;
  background:var(--gold);
  border-radius:2px 2px 0 0;
}

/* ── 5. CHANNEL MANAGER CARDS — enhanced status visibility ──────────────── */
/* Upgrade cm-badge to match new status system */
.cm-badge--green {
  background:var(--status-green-bg)!important;
  color:var(--status-green)!important;
  border:1px solid var(--status-green-border)!important;
  font-weight:700!important;
}
.cm-badge--amber {
  background:var(--status-orange-bg)!important;
  color:var(--status-orange)!important;
  border:1px solid var(--status-orange-border)!important;
  font-weight:700!important;
}
.cm-badge--red {
  background:var(--status-red-bg)!important;
  color:var(--status-red)!important;
  border:1px solid var(--status-red-border)!important;
  font-weight:700!important;
}
.cm-badge--grey {
  background:var(--status-red-bg)!important;
  color:var(--status-red)!important;
  border:1px solid var(--status-red-border)!important;
  font-weight:700!important;
}
.cm-badge--violet {
  background:var(--status-purple-bg)!important;
  color:var(--status-purple)!important;
  border:1px solid var(--status-purple-border)!important;
  font-weight:700!important;
}
/* Channel card left border status indicator */
.cm-ch-card {
  border-left:3px solid var(--status-red-border)!important;
  transition:box-shadow .2s,border-color .2s,transform .2s!important;
}
.cm-ch-card:hover {
  transform:translateY(-2px);
  box-shadow:0 6px 24px rgba(0,0,0,.10);
}
.cm-ch-card--active {
  border-left-color:var(--status-green)!important;
  box-shadow:0 2px 12px rgba(74,222,128,.08);
}
/* Pending: orange left border */
.cm-ch-card:has(.cm-badge--amber) {
  border-left-color:var(--status-orange)!important;
}
/* Coming soon: purple left border */
.cm-ch-card:has(.cm-badge--violet) {
  border-left-color:var(--status-purple)!important;
}
/* Channel name text */
.cm-ch-info h3 {
  font-size:.95rem!important;
  font-weight:800!important;
  color:var(--txt)!important;
}
[data-theme="dark"] .cm-ch-info h3{color:#f1f5f9!important;}

/* ── 6. EXISTING rhcp-badge SYSTEM UPGRADE ───────────────────────────────── */
/* Map old inline-style badges to new system */
.rhcp-badge[style*="#15803d"],[class*="rhcp-badge"][style*="green"],
.rhcp-badge[style*="22c55e"],.rhcp-badge[style*="16a34a"] {
  background:var(--status-green-bg)!important;
  color:var(--status-green)!important;
  border:1px solid var(--status-green-border)!important;
}
.rhcp-badge[style*="ef4444"],.rhcp-badge[style*="dc2626"],.rhcp-badge[style*="b91c1c"],.rhcp-badge[style*="red"] {
  background:var(--status-red-bg)!important;
  color:var(--status-red)!important;
  border:1px solid var(--status-red-border)!important;
}
.rhcp-badge[style*="f59e0b"],.rhcp-badge[style*="orange"],.rhcp-badge[style*="pending"] {
  background:var(--status-orange-bg)!important;
  color:var(--status-orange)!important;
  border:1px solid var(--status-orange-border)!important;
}
/* Badge dot prefix for all rhcp-badge */
.rhcp-badge {
  border:1px solid transparent;
  font-weight:700!important;
  font-size:.72rem!important;
}

/* ── 7. TABLE STATUS CELLS ───────────────────────────────────────────────── */
/* Room status */
.rhcp-table td .status-available,.rhcp-table td .room-available,
.rhcp-table td [class*="status-available"] {
  color:var(--status-green)!important;font-weight:700;
}
.rhcp-table td .status-occupied,.rhcp-table td .room-occupied,
.rhcp-table td [class*="status-occupied"] {
  color:var(--status-red)!important;font-weight:700;
}
.rhcp-table td .status-maintenance,.rhcp-table td .room-maintenance,
.rhcp-table td [class*="status-maintenance"] {
  color:var(--status-orange)!important;font-weight:700;
}
.rhcp-table td .status-cleaning,[class*="status-cleaning"] {
  color:var(--status-blue)!important;font-weight:700;
}
/* Reservation status */
.rhcp-table td .status-confirmed,.rhcp-table td [class*="status-confirmed"] {color:var(--status-blue)!important;font-weight:700;}
.rhcp-table td .status-checked_in,.rhcp-table td [class*="status-checked_in"] {color:var(--status-green)!important;font-weight:700;}
.rhcp-table td .status-checked_out,.rhcp-table td [class*="status-checked_out"]{color:var(--status-purple)!important;font-weight:700;}
.rhcp-table td .status-cancelled,.rhcp-table td [class*="status-cancelled"] {color:var(--status-red)!important;font-weight:700;}
/* Billing status */
.rhcp-table td .status-paid,.rhcp-table td [class*="status-paid"]     {color:var(--status-green)!important;font-weight:700;}
.rhcp-table td .status-pending,.rhcp-table td [class*="status-pending"]{color:var(--status-orange)!important;font-weight:700;}
.rhcp-table td .status-overdue,.rhcp-table td [class*="status-overdue"]{color:var(--status-red)!important;font-weight:700;}

/* ── 8. KPI CARDS — boost visibility ─────────────────────────────────────── */
.rhcp-kpi-val,.rhcp-kpi-value,.rhcp-stat-value {
  font-size:1.9rem!important;
  font-weight:800!important;
  color:var(--txt)!important;
  line-height:1!important;
}
.rhcp-kpi-label,.rhcp-stat-label,.rhcp-kpi .label {
  font-size:.72rem!important;
  font-weight:700!important;
  color:var(--txt3)!important;
  text-transform:uppercase;
  letter-spacing:.06em;
}
[data-theme="dark"] .rhcp-kpi-val,[data-theme="dark"] .rhcp-kpi-value,[data-theme="dark"] .rhcp-stat-value {
  color:#f1f5f9!important;
}
[data-theme="dark"] .rhcp-kpi-label,[data-theme="dark"] .rhcp-stat-label {
  color:#96afc5!important;
}

/* ── 9. DASHBOARD READABILITY — 3-second comprehension ──────────────────── */
/* Section headers with visual separator */
.rhcp-section-heading {
  display:flex;align-items:center;gap:10px;
  font-size:1.05rem;font-weight:800;
  color:var(--txt);margin-bottom:12px;
  padding-bottom:8px;
  border-bottom:2px solid var(--border);
}
.rhcp-section-heading::before {
  content:'';
  display:inline-block;width:4px;height:18px;
  background:var(--gold);border-radius:2px;flex-shrink:0;
}
[data-theme="dark"] .rhcp-section-heading{color:#f1f5f9;border-bottom-color:var(--border2);}

/* Card titles */
.rhcp-card-title,.rhcp-widget-title {
  font-size:.97rem!important;
  font-weight:800!important;
  color:var(--txt)!important;
}
[data-theme="dark"] .rhcp-card-title,[data-theme="dark"] .rhcp-widget-title {
  color:#f1f5f9!important;
}

/* Flash/alert messages */
.rhcp-flash-success{background:var(--status-green-bg);color:var(--status-green);border:1.5px solid var(--status-green-border);font-weight:600;}
.rhcp-flash-error  {background:var(--status-red-bg);  color:var(--status-red);  border:1.5px solid var(--status-red-border);  font-weight:600;}
.rhcp-flash-warning{background:var(--status-orange-bg);color:var(--status-orange);border:1.5px solid var(--status-orange-border);font-weight:600;}
.rhcp-flash-info   {background:var(--status-blue-bg); color:var(--status-blue); border:1.5px solid var(--status-blue-border); font-weight:600;}

/* ── 10. SIDEBAR — active link higher contrast ────────────────────────────── */
.rhcp-sb-link--active {
  color:var(--gold)!important;
  font-weight:700!important;
}
.rhcp-sb-link {
  color:rgba(200,220,245,.85)!important;
  font-size:.82rem;
  font-weight:500;
}
.rhcp-sb-link:hover {
  color:#f0c040!important;
  background:rgba(212,160,23,.07)!important;
}
.rhcp-sb-group-label {
  font-size:.76rem!important;
  font-weight:700!important;
  letter-spacing:.05em;
  color:rgba(200,220,245,.90)!important;
  text-transform:uppercase;
}
.rhcp-sb-group--open .rhcp-sb-group-label {
  color:#f0c040!important;
}

/* ── 11. FORM LABELS & INPUTS — higher contrast ──────────────────────────── */
.rhcp-label,.rhcp-form-label {
  font-weight:700!important;
  color:var(--txt2)!important;
  font-size:.82rem!important;
  letter-spacing:.02em;
}
[data-theme="dark"] .rhcp-label,[data-theme="dark"] .rhcp-form-label {
  color:#c8d8e8!important;
}
.rhcp-input,.rhcp-select,.rhcp-textarea {
  color:var(--txt)!important;
  font-size:.875rem!important;
}
[data-theme="dark"] .rhcp-input,[data-theme="dark"] .rhcp-select {
  color:#f1f5f9!important;
}

/* ── 12. BUTTON LABELS — always legible ─────────────────────────────────── */
.rhcp-btn { font-weight:700!important; }
.cm-act-btn { font-weight:700!important; font-size:.78rem!important; }
.rhcp-btn--gold { color:#0a1020!important; } /* dark text on gold background */

/* ── 13. RESPONSIVE ─────────────────────────────────────────────────────── */
@media(max-width:768px) {
  .rhcp-page-title  {font-size:1.35rem!important;}
  .rhcp-page-subtitle{font-size:.84rem!important;}
}

/* SUBSCRIPTION STATUS INDICATOR -- Topbar Pill */
.rhcp-sub-pill{position:relative;display:flex;align-items:center;}
.rhcp-sub-pill__trigger{
  display:flex;align-items:center;gap:6px;
  padding:4px 10px 4px 8px;
  background:var(--surface2);
  border:1px solid var(--border);
  border-radius:20px;
  text-decoration:none;
  cursor:pointer;
  transition:background .18s,border-color .18s,transform .18s;
  max-width:184px;min-width:90px;
}
.rhcp-sub-pill__trigger:hover{
  background:rgba(212,160,23,.1);
  border-color:var(--gold);
  transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(212,160,23,.18);
}
.rhcp-sub-pill__icon{font-size:1rem;line-height:1;flex-shrink:0;}
.rhcp-sub-pill__body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;}
.rhcp-sub-pill__name{
  font-size:.72rem;font-weight:700;
  color:var(--txt);white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis;line-height:1.2;
}
.rhcp-sub-pill__meta{font-size:.65rem;font-weight:600;line-height:1.1;white-space:nowrap;}
.rhcp-sub-pill__bar-wrap{display:flex;align-items:center;gap:5px;}
.rhcp-sub-pill__bar-track{
  flex:1;height:4px;
  background:var(--border);border-radius:2px;overflow:hidden;
}
.rhcp-sub-pill__bar-fill{height:100%;border-radius:2px;transition:width .4s ease;}
.rhcp-sub-pill__days{font-size:.62rem;font-weight:700;white-space:nowrap;flex-shrink:0;}
[data-theme="dark"] .rhcp-sub-pill__trigger{
  background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);
}
[data-theme="dark"] .rhcp-sub-pill__name{color:#f1f5f9;}
[data-theme="dark"] .rhcp-sub-pill__bar-track{background:rgba(255,255,255,.12);}
@media(max-width:900px){
  .rhcp-sub-pill__bar-wrap{display:none;}
  .rhcp-sub-pill__trigger{max-width:130px;padding:4px 8px 4px 6px;}
}
@media(max-width:600px){.rhcp-sub-pill{display:none;}}

/* ════════════════════════════════════════
   MARKETPLACE ADMIN + HOTEL CSS
═══════════════════════════════════════ */
.rhcp-mpa-tabnav{display:flex;flex-wrap:wrap;gap:6px;padding:16px 24px 0;border-bottom:1px solid var(--border);background:var(--surface);margin-bottom:0;}
.rhcp-mpa-tab{display:flex;align-items:center;gap:6px;padding:9px 16px;border-radius:8px 8px 0 0;font-size:13px;font-weight:600;color:var(--txt2);text-decoration:none;border:1px solid transparent;border-bottom:none;transition:all .18s;}
.rhcp-mpa-tab:hover{background:var(--surface2);color:var(--txt);}
.rhcp-mpa-tab--active{background:var(--card);border-color:var(--border);color:var(--gold);border-bottom:2px solid var(--gold);}
.rhcp-mpa-badge{background:#ef4444;color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px;}
.rhcp-mpa-body{padding:24px;}
.rhcp-mpa-dash-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-bottom:24px;}
.rhcp-mpa-kpi{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;text-align:center;}
.rhcp-mpa-kpi-icon{font-size:24px;margin-bottom:6px;}
.rhcp-mpa-kpi-val{font-size:1.8rem;font-weight:800;line-height:1;margin-bottom:4px;}
.rhcp-mpa-kpi-lbl{font-size:11px;color:var(--txt-muted);font-weight:600;text-transform:uppercase;letter-spacing:.4px;}
.rhcp-mpa-alert-banner{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.3);border-radius:10px;padding:12px 16px;margin-bottom:20px;font-size:13px;color:var(--txt);}
.rhcp-mpa-panel{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:24px;}
.rhcp-mpa-panel-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);gap:12px;}
.rhcp-mpa-panel-head h3{font-size:14px;font-weight:700;margin:0;color:var(--txt);}
.rhcp-mpa-link{font-size:12px;color:var(--gold);text-decoration:none;font-weight:600;}
.rhcp-mpa-featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;padding:20px;}
.rhcp-mpa-featured-card{background:var(--surface2);border:1px solid var(--gold);border-radius:12px;padding:20px;text-align:center;position:relative;}
.rhcp-mpa-featured-badge{background:var(--gold);color:#0b1d3a;font-size:10px;font-weight:800;padding:3px 10px;border-radius:0 10px 0 10px;position:absolute;top:0;right:0;}
.rhcp-mpa-vendor-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#1e3a6b,#0b1d3a);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;margin:0 auto 10px;border:2px solid var(--gold);}
.rhcp-mpa-vendor-name{font-size:14px;font-weight:700;color:var(--txt);margin-bottom:4px;}
.rhcp-mpa-vendor-cat{font-size:11px;color:var(--txt-muted);margin-bottom:8px;}
.rhcp-btn--xs{padding:4px 10px;font-size:11px;border-radius:6px;}
.rhcp-btn--green{background:rgba(34,197,94,.12);color:#22c55e;border:1px solid rgba(34,197,94,.3);}
.rhcp-btn--green:hover{background:rgba(34,197,94,.2);}
.rhcp-btn--amber{background:rgba(245,158,11,.12);color:#f59e0b;border:1px solid rgba(245,158,11,.3);}
.rhcp-btn--amber:hover{background:rgba(245,158,11,.2);}
.rhcp-btn--sm{padding:7px 14px;font-size:12px;}
.rhcp-hidden{display:none!important;}
/* Hotel marketplace */
.rhcp-mp-tabnav{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:16px;}
.rhcp-mp-tab{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;color:var(--txt2);text-decoration:none;border:1px solid var(--border);transition:all .18s;}
.rhcp-mp-tab:hover{background:var(--surface2);color:var(--txt);}
.rhcp-mp-tab--active{background:var(--gold);color:#0b1d3a;border-color:var(--gold);}
.rhcp-mp-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:20px;}
.rhcp-mp-search{max-width:240px;}
.rhcp-mp-vendor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;}
.rhcp-mp-vendor-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:22px;text-align:center;position:relative;transition:box-shadow .2s,transform .2s;}
.rhcp-mp-vendor-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.12);transform:translateY(-2px);}
.rhcp-mp-vendor-card--featured{border-color:var(--gold);box-shadow:0 0 0 1px rgba(212,160,23,.3);}
.rhcp-mp-featured-ribbon{position:absolute;top:0;right:0;background:var(--gold);color:#0b1d3a;font-size:10px;font-weight:800;padding:3px 12px;border-radius:0 12px 0 10px;}
.rhcp-mp-vendor-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#1e3a6b,#0b1d3a);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;margin:0 auto 12px;border:2px solid var(--gold);}
.rhcp-mp-vendor-name{font-size:15px;font-weight:700;color:var(--txt);margin-bottom:4px;}
.rhcp-mp-vendor-cat{font-size:11px;color:var(--txt-muted);background:var(--surface2);display:inline-block;padding:2px 8px;border-radius:10px;margin-bottom:8px;}
.rhcp-mp-demo-badge{font-size:10px;background:rgba(55,65,81,.6);color:#9ca3af;padding:2px 8px;border-radius:8px;display:inline-block;margin-bottom:8px;border:1px solid rgba(107,114,128,.3);}
.rhcp-mp-vendor-desc{font-size:12px;color:var(--txt2);line-height:1.5;margin-bottom:12px;text-align:left;}
.rhcp-mp-vendor-contact{font-size:12px;color:var(--txt-muted);text-align:left;display:flex;flex-direction:column;gap:4px;}
.rhcp-mp-vendor-contact a{text-decoration:none;}
.rhcp-mp-empty-state{grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--txt-muted);}
.rhcp-mp-empty-state p{margin-top:12px;font-size:14px;}

/* ════ Platform Admin — Users: action button XS ════ */
.rhcp-btn-xs{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;font-size:14px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:all .15s;flex-shrink:0;}
.rhcp-btn-xs--blue{background:rgba(59,130,246,.12);border-color:rgba(59,130,246,.25);color:#3b82f6;}.rhcp-btn-xs--blue:hover{background:rgba(59,130,246,.25);}
.rhcp-btn-xs--orange{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.25);color:#d97706;}.rhcp-btn-xs--orange:hover{background:rgba(245,158,11,.22);}
.rhcp-btn-xs--green{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.25);color:#16a34a;}.rhcp-btn-xs--green:hover{background:rgba(34,197,94,.22);}
.rhcp-btn-xs--purple{background:rgba(139,92,246,.1);border-color:rgba(139,92,246,.25);color:#7c3aed;}.rhcp-btn-xs--purple:hover{background:rgba(139,92,246,.22);}
.rhcp-btn-xs--navy{background:rgba(11,29,58,.1);border-color:rgba(11,29,58,.25);color:#0B1D3A;}.rhcp-btn-xs--navy:hover{background:rgba(11,29,58,.22);}
[data-theme="dark"] .rhcp-btn-xs--navy{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);color:#94a3b8;}.rhcp-btn-xs--red{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.25);color:#dc2626;}.rhcp-btn-xs--red:hover{background:rgba(239,68,68,.22);}

/* ══ RESERVATIONS TIMELINE CALENDAR ══════════════════ */
.rhcp-view-toggle{display:inline-flex;background:var(--surface2);border:1px solid var(--border);border-radius:11px;padding:4px;gap:2px;margin-bottom:18px;}
.rhcp-view-tab{appearance:none;border:none;background:transparent;font-family:inherit;font-size:.82rem;font-weight:700;color:var(--txt3);padding:7px 18px;border-radius:8px;cursor:pointer;transition:background var(--ease),color var(--ease),box-shadow var(--ease);}
.rhcp-view-tab.is-active{background:var(--surface);color:var(--gold-dim);box-shadow:var(--shadow-sm);}
.rhcp-cal-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;}
.rhcp-cal-key{font-size:.7rem;font-weight:700;color:var(--txt3);display:inline-flex;align-items:center;gap:6px;}
.rhcp-cal-key::before{content:'';width:12px;height:12px;border-radius:3px;}
.rhcp-cal-key--confirmed::before{background:#2563eb;}
.rhcp-cal-key--checked_in::before{background:#16a34a;}
.rhcp-cal-key--pending::before{background:#b45309;}
.rhcp-cal-wrap{overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius-sm);max-height:620px;}
.rhcp-cal{display:grid;grid-template-columns:132px repeat(var(--cal-days),minmax(74px,1fr));min-width:760px;}
.rhcp-cal-corner{position:sticky;left:0;top:0;z-index:4;background:var(--surface2);border-bottom:1px solid var(--border2);border-right:1px solid var(--border2);padding:10px 12px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3);display:flex;align-items:center;}
.rhcp-cal-dayhead{position:sticky;top:0;z-index:3;border-bottom:1px solid var(--border2);border-right:1px solid var(--border);padding:6px 4px;text-align:center;display:flex;flex-direction:column;gap:0;background:var(--surface2);}
.rhcp-cal-dayhead.is-weekend{background:color-mix(in srgb,var(--gold) 6%,var(--surface2));}
.rhcp-cal-dayhead.is-today{background:color-mix(in srgb,var(--gold) 16%,var(--surface));box-shadow:inset 0 -2px 0 var(--gold);}
.rhcp-cal-dow{font-size:.62rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;}
.rhcp-cal-dom{font-size:1rem;font-weight:800;color:var(--txt);line-height:1.1;}
.rhcp-cal-mon{font-size:.58rem;color:var(--muted);text-transform:uppercase;}
.rhcp-cal-room{position:sticky;left:0;z-index:2;background:var(--surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border2);padding:6px 12px;display:flex;flex-direction:column;justify-content:center;min-height:40px;}
.rhcp-cal-room-no{font-size:.85rem;font-weight:800;color:var(--txt);}
.rhcp-cal-room-type{font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;}
.rhcp-cal-track{grid-column:2 / -1;display:grid;grid-template-columns:repeat(var(--cal-days),minmax(60px,1fr));position:relative;border-bottom:1px solid var(--border);}
.rhcp-cal-cell{border-right:1px solid var(--border);min-height:40px;}
.rhcp-cal-cell.is-weekend{background:color-mix(in srgb,var(--gold) 4%,transparent);}
.rhcp-cal-bar{grid-row:1;grid-column:calc(var(--c0) + 1) / span var(--cs);align-self:center;margin:4px 3px;height:26px;border-radius:6px;display:flex;align-items:center;padding:0 8px;font-size:.7rem;font-weight:700;color:#fff;text-decoration:none;overflow:hidden;white-space:nowrap;box-shadow:0 2px 6px rgba(11,29,58,.18);transition:transform var(--ease),box-shadow var(--ease),filter var(--ease);}
.rhcp-cal-bar span{overflow:hidden;text-overflow:ellipsis;}
.rhcp-cal-bar:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(11,29,58,.28);filter:brightness(1.06);}
.rhcp-cal-bar--confirmed{background:linear-gradient(135deg,#2563eb,#1d4ed8);}
.rhcp-cal-bar--checked_in,.rhcp-cal-bar--checked-in{background:linear-gradient(135deg,#16a34a,#15803d);}
.rhcp-cal-bar--pending{background:linear-gradient(135deg,#d97706,#b45309);}
.rhcp-cal-bar--checked_out,.rhcp-cal-bar--checked-out{background:linear-gradient(135deg,#64748b,#475569);}
.rhcp-cal-bar--cancelled{background:linear-gradient(135deg,#9ca3af,#6b7280);opacity:.55;text-decoration:line-through;}
.rhcp-cal-empty{padding:30px;text-align:center;color:var(--muted);}
@media(prefers-reduced-motion:reduce){.rhcp-cal-bar{transition:none;}}

/* ══ ROOM STATUS BOARD ═══════════════════════ */
.rhcp-room-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:11px;}
.rhcp-room-tile{position:relative;display:flex;flex-direction:column;gap:2px;padding:12px 13px 11px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--rs,var(--gold));box-shadow:var(--shadow-sm);text-decoration:none;overflow:hidden;transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);}
.rhcp-room-tile::after{content:'';position:absolute;inset:0;background:radial-gradient(120% 100% at 100% 0%,color-mix(in srgb,var(--rs,var(--gold)) 12%,transparent),transparent 55%);opacity:.7;pointer-events:none;}
.rhcp-room-tile:not(.is-static):hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--rs,var(--gold));}
.rhcp-room-tile.is-static{cursor:default;}
.rhcp-room-tile-status{font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--rs,var(--gold));align-self:flex-start;background:color-mix(in srgb,var(--rs,var(--gold)) 14%,transparent);padding:2px 8px;border-radius:20px;position:relative;z-index:1;}
.rhcp-room-tile-no{font-size:1.35rem;font-weight:800;color:var(--txt);line-height:1.05;margin-top:5px;letter-spacing:-.02em;position:relative;z-index:1;}
.rhcp-room-tile-type{font-size:.7rem;color:var(--txt3);font-weight:600;position:relative;z-index:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rhcp-room-tile-meta{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-top:7px;padding-top:7px;border-top:1px solid var(--border);position:relative;z-index:1;}
.rhcp-room-tile-floor{font-size:.68rem;color:var(--muted);font-weight:600;}
.rhcp-room-tile-price{font-size:.78rem;color:var(--txt2);font-weight:800;font-variant-numeric:tabular-nums;}
.rhcp-room-tile--available{--rs:#16a34a;}
.rhcp-room-tile--occupied{--rs:#dc2626;}
.rhcp-room-tile--cleaning{--rs:#d97706;}
.rhcp-room-tile--maintenance{--rs:#7c3aed;}
@media(prefers-reduced-motion:reduce){.rhcp-room-tile{transition:none;}}

/* ══ GUESTS / CRM ═════════════════════════ */
.rhcp-crm-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 6px;}
.rhcp-crm-stat{position:relative;display:flex;flex-direction:column;gap:2px;padding:16px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden;}
.rhcp-crm-stat::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cs,var(--gold));}
.rhcp-crm-stat-ico{position:absolute;top:14px;right:14px;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;font-size:18px;background:color-mix(in srgb,var(--cs,var(--gold)) 13%,transparent);}
.rhcp-crm-stat-val{font-size:1.7rem;font-weight:800;color:var(--txt);letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums;}
.rhcp-crm-stat-lbl{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);}
.rhcp-tabbar{display:flex;gap:4px;flex-wrap:nowrap;overflow-x:auto;margin:18px 0 20px;padding-bottom:0;border-bottom:1px solid var(--border);}
.rhcp-tabbar .rhcp-tab-btn{white-space:nowrap;font-size:.82rem;font-weight:700;padding:10px 18px;color:var(--txt3);text-decoration:none;border:none;border-bottom:2px solid transparent;border-radius:8px 8px 0 0;transition:color var(--ease),background var(--ease),border-color var(--ease);}
.rhcp-tabbar .rhcp-tab-btn:hover{color:var(--txt);background:var(--surface2);}
.rhcp-tabbar .rhcp-tab-btn--active{color:var(--gold-dim);border-bottom-color:var(--gold);background:color-mix(in srgb,var(--gold) 7%,transparent);}
@media(max-width:640px){.rhcp-crm-strip{grid-template-columns:repeat(2,1fr);}}

/* ══ BILLING / FINANCE ════════════════════ */
.rhcp-crm-strip--3{grid-template-columns:repeat(3,1fr);}
@media(max-width:640px){.rhcp-crm-strip--3{grid-template-columns:1fr;}}
.rhcp-collect-card{margin:14px 0 22px;padding:18px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);}
.rhcp-collect-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;}
.rhcp-collect-title{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--txt3);}
.rhcp-collect-pct{font-size:1.45rem;font-weight:800;color:var(--txt);font-variant-numeric:tabular-nums;letter-spacing:-.02em;}
.rhcp-collect-bar{height:12px;border-radius:20px;background:color-mix(in srgb,var(--txt) 8%,transparent);overflow:hidden;}
.rhcp-collect-fill{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,var(--gold),#16a34a);box-shadow:0 1px 4px rgba(22,163,74,.3);transition:width .8s cubic-bezier(.4,0,.2,1);}
.rhcp-collect-foot{display:flex;gap:22px;margin-top:9px;font-size:.76rem;color:var(--muted);}
.rhcp-collect-foot strong{color:var(--txt);font-weight:800;}

/* ══ HOUSEKEEPING KANBAN ═══════════════════ */
.rhcp-kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:start;}
.rhcp-kan-col{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;}
.rhcp-kan-head{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:2px solid var(--kc,var(--gold));background:color-mix(in srgb,var(--kc,var(--gold)) 8%,var(--surface));}
.rhcp-kan-dot{width:9px;height:9px;border-radius:50%;background:var(--kc,var(--gold));box-shadow:0 0 0 3px color-mix(in srgb,var(--kc,var(--gold)) 22%,transparent);}
.rhcp-kan-title{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--txt);}
.rhcp-kan-count{margin-left:auto;font-size:.72rem;font-weight:800;color:var(--kc,var(--gold));background:color-mix(in srgb,var(--kc,var(--gold)) 14%,transparent);min-width:22px;height:22px;display:grid;place-items:center;border-radius:11px;padding:0 6px;}
.rhcp-kan-body{padding:10px;display:flex;flex-direction:column;gap:9px;min-height:60px;max-height:560px;overflow-y:auto;}
.rhcp-kan-empty{font-size:.76rem;color:var(--muted);text-align:center;padding:18px 0;font-style:italic;}
.rhcp-kan-card{display:block;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--pc,var(--gold));border-radius:var(--radius-sm);padding:11px 12px;text-decoration:none;box-shadow:var(--shadow-sm);transition:transform var(--ease),box-shadow var(--ease);}
.rhcp-kan-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);}
.rhcp-kan-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px;}
.rhcp-kan-room{font-size:.86rem;font-weight:800;color:var(--txt);}
.rhcp-kan-task{font-size:.78rem;color:var(--txt2);font-weight:600;}
.rhcp-kan-meta{font-size:.7rem;color:var(--muted);margin-top:5px;display:flex;align-items:center;gap:5px;}
.rhcp-kan-meta::before{content:'\1F464';font-size:.7rem;}
.rhcp-kan-pri{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:20px;}
.rhcp-kan-pri--urgent{background:rgba(220,38,38,.13);color:#dc2626;}
.rhcp-kan-pri--high{background:rgba(217,119,6,.14);color:#b45309;}
.rhcp-kan-pri--normal{background:rgba(59,130,246,.12);color:#2563eb;}
.rhcp-kan-pri--low{background:rgba(100,116,139,.14);color:#64748b;}
.rhcp-kan-card--urgent{--pc:#dc2626;}.rhcp-kan-card--high{--pc:#d97706;}.rhcp-kan-card--normal{--pc:#3b82f6;}.rhcp-kan-card--low{--pc:#94a3b8;}
@media(max-width:900px){.rhcp-kanban{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.rhcp-kanban{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.rhcp-kan-card{transition:none;}}

/* ══ TEAM HUB (.tch-*) — THEME-TOKEN ALIGNMENT (light + dark) ════ */
.tch-kpi,.tch-ov-panel,.tch-channels-layout,.tch-form-panel{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm);}
.tch-kpi__val,.tch-kpi__label,.tch-ov-panel__head h3,.tch-task-mini__title,.tch-req-mini__title,.tch-form-panel__head{color:var(--txt);}
.tch-kpi__sub,.tch-empty,.tch-task-mini__meta,.tch-annc-meta,.tch-stat-chip{color:var(--txt3);}
.tch-stat-chip{background:var(--surface2);border-color:var(--border);}
.tch-task-stat,.tch-msg-feed__item,.tch-annc-item,.tch-req-mini__item{background:var(--surface2);}
.tch-task-stat,.tch-task-stat span{color:var(--txt2);}
.tch-msg-feed__text,.tch-annc-item p{color:var(--txt2);}
.tch-msg-feed__time{color:var(--muted);}
.tch-tabnav{background:var(--surface2);border-color:var(--border);}
.tch-tab{color:var(--txt3);}
.tch-tab:hover{background:var(--surface);color:var(--txt);}
.tch-tab--active{background:color-mix(in srgb,var(--gold) 14%,transparent);color:var(--gold-dim);border-color:color-mix(in srgb,var(--gold) 35%,transparent);}
.tch-qa{background:var(--surface2);border-color:var(--border);color:var(--txt2);}
.tch-qa:hover{background:var(--surface);}
.tch-btn{background:var(--surface2);border-color:var(--border);color:var(--txt2);}
.tch-btn:hover{background:color-mix(in srgb,var(--txt) 8%,var(--surface2));}
.tch-input,.tch-ch-textarea{background:var(--surface2);border-color:var(--border);color:var(--txt);}

/* Team Hub — chat interface surfaces */
.tch-ch-sidebar{background:var(--surface2);border-right-color:var(--border);}
.tch-ch-sidebar__head{color:var(--txt3);border-bottom-color:var(--border);}
.tch-ch-item{color:var(--txt2);}
.tch-ch-item:hover{background:var(--surface);color:var(--txt);}
.tch-ch-item--active{background:color-mix(in srgb,var(--gold) 12%,transparent);color:var(--gold-dim);}
.tch-ch-hash,.tch-ch-empty{color:var(--muted);}
.tch-ch-main__head{border-bottom-color:var(--border);}
.tch-ch-main__head h3{color:var(--txt);}
.tch-ch-main__desc{color:var(--txt3);}
.tch-date-divider span{background:var(--surface2);color:var(--txt3);}
.tch-msg__bubble{background:var(--surface2);color:var(--txt);}
.tch-msg--mine .tch-msg__bubble{background:color-mix(in srgb,var(--gold) 14%,transparent);}
.tch-msg__meta,.tch-msg__time-r{color:var(--txt3);}
.tch-ch-empty-state,.tch-ch-empty-sub{color:var(--muted);}
.tch-ch-input-area{border-top-color:var(--border);background:var(--surface2);}
.tch-ch-toggle,.tch-ch-file-hint{color:var(--txt3);}
.tch-form-close{color:var(--txt3);}
/* Team Hub — Tasks / Directory / Announcements / AI / locked / empty */
.tch-task-card,.tch-dir-card,.tch-annc-card{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm);}
.tch-tasks-header__left h2,.tch-task-card__body h4,.tch-dir-card__body h4,.tch-locked-tab__title{color:var(--txt);}
.tch-tasks-header__left p,.tch-task-card__desc,.tch-task-card__footer,.tch-dir-card__position,.tch-dir-card__email,.tch-dir-card__phone,.tch-dir-presence,.tch-locked-tab__desc,.tch-form-row label{color:var(--txt3);}
.tch-task-stat-bar,.tch-task-stat-btn:hover{background:var(--surface2);}
.tch-task-stat-btn{color:var(--txt3);}
.tch-task-stat-btn:hover{color:var(--txt);}
.tch-task-card__footer,.tch-dir-card__footer{border-top-color:var(--border);}
.tch-annc-card__body p{color:var(--txt2);}
.tch-annc-card__footer{border-top-color:var(--border);}
.tch-empty-state-lg,.tch-empty-state-lg p{color:var(--muted);}
.tch-empty-state-lg h3{color:var(--txt2);}
/* Team Hub — AI assistant (keep violet accent, fix surfaces/text) */
.tch-ai-msg__bubble,.tch-ai-cap,.tch-ai-snap-item{background:var(--surface2);}
.tch-ai-msg__bubble{color:var(--txt);}
.tch-ai-chat{background:var(--surface2);border-color:var(--border);}
.tch-ai-title,.tch-ai-snap-val,.tch-ai-cap__body h4,.tch-ai-caps__title,.tch-ai-data-snap h3{color:var(--txt);}
.tch-ai-sub,.tch-ai-cap__body p,.tch-ai-prompts__label,.tch-ai-snap-item span:last-child{color:var(--txt3);}
.tch-ai-cap{border-color:var(--border);}
.tch-ai-input{background:var(--surface2);border-color:var(--border);color:var(--txt);}
/* Team Hub — search / presence / unread */
.tch-ch-search-row{background:var(--surface);border-color:var(--border);}
.tch-ch-search-input{color:var(--txt);}
.tch-ch-search-icon,.tch-ch-search-clear,.tch-ch-presence-bar,.tch-pin-unpin{color:var(--txt3);}
.tch-ch-search-wrap,.tch-ch-presence-bar{border-color:var(--border);}

/* ══ BOOKING ENGINE (.be-*) + CHANNEL MGR (.cm-*) literal fixes ══ */
.be-header__title,.be-panel-title,.be-kpi-val,.be-chart-card__head h3,.be-section-card__head h3,.be-pop-room__info strong,.be-pop-room__stats span:first-child,.be-sources-header h2,.be-source-card__body h3,.be-source-stats span:first-child,.be-ota-notice strong,.be-promo-stat strong,.be-settings-section__title,.be-integration-item>div:nth-child(2) strong,.cm-header__title,.cm-ch-info h3,.cm-connect-panel__head h2,.cm-coming-soon h3,.cm-section-card__head h3,.cm-sync-header h2,.cm-avail-kpi__val,.cm-ch-sync-info strong{color:var(--txt);}
.be-tab:hover,.cm-tab:hover{color:var(--txt);background:var(--surface2);}
.be-pill--all{background:var(--surface2);color:var(--txt2);border-color:var(--border);}
.be-search-input{background:var(--surface2);color:var(--txt);}
.be-search-input:focus{background:var(--surface);}
.be-bar-tip,.be-mention-list,.tch-mention-list{background:var(--surface);color:var(--txt);border-color:var(--border);}
.be-pay-bar,.be-pill-count{background:color-mix(in srgb,var(--txt) 8%,transparent);}
.cm-info-box,.cm-notice{color:var(--txt2);}

/* ══ STAFF MODULE — THEME-TOKEN ALIGNMENT (light + dark) ══════ */
.sm-section-header h2{color:var(--txt);}
.sm-sub,.sm-staff-role,.sm-sd,.sm-staff-card__body .sm-sd{color:var(--txt3);}
.sm-section-card,.sm-staff-card,.sm-form-wrap{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm);}
.sm-staff-card{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);}
.sm-staff-card:hover{border-color:color-mix(in srgb,var(--gold) 35%,transparent);transform:translateY(-3px);box-shadow:var(--shadow-md);}
.sm-staff-name,.sm-form-head h2{color:var(--txt);}
.sm-staff-card__actions{border-top-color:var(--border);}
.sm-card-btn{background:var(--surface2);color:var(--txt2);}
.sm-card-btn:hover{background:color-mix(in srgb,var(--txt) 8%,var(--surface2));color:var(--txt);}
.sm-form-section h3{color:var(--txt3);border-bottom-color:var(--border);}

/* ═══════════════════════════════════════════════════════════
   ENTERPRISE MODULES — Revenue, Maintenance, Folio, Night Audit, Portal
═══════════════════════════════════════════════════════════ */

/* ── Shared layout ────────────────────────────────────────── */
.rhcp-revenue-wrap,.rhcp-maint-wrap,.rhcp-folio-wrap,.rhcp-audit-wrap,.rhcp-portal-wrap{padding:0 4px 40px;}
.rhcp-rev-section{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px 24px;margin-bottom:20px;}
.rhcp-section-title{font-size:15px;font-weight:700;color:var(--txt);margin:0 0 16px;display:flex;align-items:center;gap:8px;}
.rhcp-rev-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media(max-width:768px){.rhcp-rev-two-col{grid-template-columns:1fr;}}
.rhcp-form-row-inline{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;}
.rhcp-form-row-inline .rhcp-field{flex:1;min-width:160px;}
.rhcp-form-row-inline .rhcp-field--submit{flex:0 0 auto;}
.rhcp-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;}
.rhcp-field--full{grid-column:1/-1;}

/* ── Revenue KPI grid ─────────────────────────────────────── */
.rhcp-rev-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:20px;}
.rhcp-kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px 16px;text-align:center;transition:transform .2s,box-shadow .2s;}
.rhcp-kpi-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.12);}
.rhcp-kpi-code{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--txt3);margin-bottom:6px;}
.rhcp-kpi-val{font-size:1.5rem;font-weight:800;color:var(--gold);font-family:'Playfair Display',Georgia,serif;line-height:1;margin-bottom:6px;}
.rhcp-kpi-label{font-size:11px;color:var(--txt3);line-height:1.4;}
.rhcp-kpi--gold .rhcp-kpi-val{color:#D4A017;}
.rhcp-kpi--blue .rhcp-kpi-val{color:#3B82F6;}
.rhcp-kpi--green .rhcp-kpi-val{color:#10B981;}
.rhcp-kpi--purple .rhcp-kpi-val{color:#A855F7;}
.rhcp-kpi--teal .rhcp-kpi-val{color:#14B8A6;}
.rhcp-kpi--orange .rhcp-kpi-val{color:#F97316;}
.rhcp-kpi--navy .rhcp-kpi-val{color:#6366F1;}
.rhcp-kpi--red .rhcp-kpi-val{color:#EF4444;}

/* ── Chart wrapper ────────────────────────────────────────── */
.rhcp-chart-wrap{position:relative;width:100%;margin-bottom:16px;}

/* ── Period form ──────────────────────────────────────────── */
.rhcp-period-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.rhcp-select-sm{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--txt);padding:7px 12px;font-size:13px;cursor:pointer;}
.rhcp-input-sm{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--txt);padding:7px 12px;font-size:13px;}
.rhcp-btn--sm{padding:7px 14px;font-size:13px;}
.rhcp-btn--xs{padding:4px 10px;font-size:11px;border-radius:6px;}

/* ── KPI explainer cards ──────────────────────────────────── */
.rhcp-kpi-explainer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:20px;}
.rhcp-kpi-explainer{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;}
.rhcp-kpi-ex-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.rhcp-kpi-ex-code{font-size:13px;font-weight:800;color:var(--gold);background:rgba(212,160,23,.1);padding:4px 10px;border-radius:20px;}
.rhcp-kpi-ex-val{font-size:18px;font-weight:800;color:var(--txt);}
.rhcp-kpi-ex-name{font-size:13px;font-weight:700;color:var(--txt);margin-bottom:6px;}
.rhcp-kpi-ex-def{font-size:12px;color:var(--txt3);line-height:1.6;margin-bottom:8px;}
.rhcp-kpi-ex-tip{font-size:11px;color:var(--txt3);background:var(--surface2);padding:8px 10px;border-radius:8px;line-height:1.5;}

/* ── Forecast ─────────────────────────────────────────────── */
.rhcp-forecast-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:20px;}
.rhcp-forecast-stat{background:var(--surface2);border-radius:10px;padding:14px 16px;}
.rhcp-forecast-stat-lbl{display:block;font-size:11px;color:var(--txt3);margin-bottom:4px;}
.rhcp-forecast-stat-val{font-size:1.25rem;font-weight:800;color:var(--gold);}
.rhcp-forecast-note{font-size:12px;color:var(--txt3);background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.2);border-radius:8px;padding:10px 14px;margin-top:12px;}

/* ── Goals ────────────────────────────────────────────────── */
.rhcp-goals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;}
.rhcp-goal-card{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:18px;}
.rhcp-goal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.rhcp-goal-metric{font-weight:700;font-size:15px;color:var(--txt);}
.rhcp-goal-period{font-size:12px;color:var(--txt3);background:var(--surface);padding:3px 8px;border-radius:20px;}
.rhcp-goal-vals{display:flex;justify-content:space-between;margin-bottom:10px;}
.rhcp-goal-current{font-size:14px;font-weight:700;color:var(--gold);}
.rhcp-goal-target{font-size:13px;color:var(--txt3);}
.rhcp-goal-current small,.rhcp-goal-target small{font-size:10px;font-weight:400;margin-left:3px;}
.rhcp-goal-bar-wrap{height:8px;background:var(--border);border-radius:4px;overflow:hidden;margin-bottom:8px;}
.rhcp-goal-bar{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1);}
.rhcp-goal-pct{font-size:12px;font-weight:700;text-align:right;}

/* ── Page sub-title (housekeeping board, etc.) ──────────── */
.rhcp-page-sub{font-size:.88rem;color:var(--txt3);font-weight:500;margin-top:4px;}
[data-theme="dark"] .rhcp-page-sub{color:#96afc5!important;}

/* ── Stat row (maintenance / audit / portal) ─────────────── */
.rhcp-stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px;margin-bottom:20px;}
.rhcp-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 14px;text-align:center;}
.rhcp-stat-val{display:block;font-size:1.6rem;font-weight:800;color:var(--gold);line-height:1;margin-bottom:4px;}
.rhcp-stat-lbl{display:block;font-size:11px;font-weight:600;color:var(--txt3);margin-top:4px;}
.rhcp-stat-card--red   .rhcp-stat-val{color:#EF4444;}
.rhcp-stat-card--amber .rhcp-stat-val{color:#F59E0B;}
.rhcp-stat-card--green .rhcp-stat-val{color:#10B981;}
/* Light mode: use darker accessible colours for coloured stat values */
[data-theme="light"] .rhcp-stat-card--red   .rhcp-stat-val{color:#dc2626;}
[data-theme="light"] .rhcp-stat-card--amber .rhcp-stat-val{color:#b45309;}
[data-theme="light"] .rhcp-stat-card--green .rhcp-stat-val{color:#16a34a;}

/* ── Filter bar ───────────────────────────────────────────── */
.rhcp-filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.rhcp-filter-btn{padding:6px 14px;border-radius:20px;font-size:12px;color:var(--txt3);background:var(--surface2);border:1px solid var(--border);text-decoration:none;transition:all .2s;}
.rhcp-filter-btn:hover,.rhcp-filter-btn--active{background:var(--gold);color:#0B1D3A;border-color:var(--gold);font-weight:700;}

/* ── Night Audit checklist ────────────────────────────────── */
.rhcp-audit-checklist{display:flex;flex-direction:column;gap:12px;}
.rhcp-audit-check{display:flex;align-items:flex-start;gap:14px;background:var(--surface2);border-radius:10px;padding:14px 16px;}
.rhcp-audit-check-icon{font-size:20px;flex-shrink:0;}

/* ── Folio layout ─────────────────────────────────────────── */
.rhcp-folio-sidebar{display:flex;flex-direction:column;gap:8px;max-height:700px;overflow-y:auto;}
.rhcp-folio-res{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:12px 14px;text-decoration:none;display:block;transition:border-color .2s;}
.rhcp-folio-res:hover,.rhcp-folio-res--active{border-color:var(--gold);background:rgba(212,160,23,.06);}
.rhcp-folio-res-name{display:block;font-weight:700;color:var(--txt);font-size:13px;}
.rhcp-folio-res-meta{display:block;font-size:11px;color:var(--txt3);margin:2px 0;}
.rhcp-folio-res-amt{display:block;font-size:12px;color:var(--gold);font-weight:700;}
.rhcp-folio-header-card{background:var(--surface2);border-radius:10px;padding:14px 16px;margin-bottom:16px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--txt3);}
.rhcp-folio-totals{display:flex;gap:20px;margin-top:4px;font-size:14px;}
.rhcp-input-xs{background:var(--surface2);border:1px solid var(--border);border-radius:6px;color:var(--txt);padding:4px 8px;font-size:11px;}

/* ── Guest Portal steps ───────────────────────────────────── */
.rhcp-portal-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;}
.rhcp-portal-step{display:flex;align-items:flex-start;gap:14px;background:var(--surface2);border-radius:10px;padding:16px;}
.rhcp-portal-step-num{width:32px;height:32px;border-radius:50%;background:var(--gold);color:#0B1D3A;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.rhcp-portal-step strong{display:block;font-size:13px;color:var(--txt);margin-bottom:4px;}
.rhcp-portal-step p{font-size:12px;color:var(--txt3);margin:0;line-height:1.6;}

/* ── Utility: hidden ──────────────────────────────────────── */
.rhcp-hidden{display:none!important;}
.rhcp-empty{color:var(--txt3);font-size:13px;padding:24px;text-align:center;}
.rhcp-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;background:var(--surface2);color:var(--txt3);}

/* ═══════════════════════════════════════════════════════════
   HOUSEKEEPING KANBAN BOARD
═══════════════════════════════════════════════════════════ */
.rhcp-hk-board{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:30px;align-items:start;}
.rhcp-hk-col{background:var(--surface2);border-radius:14px;padding:14px;min-height:300px;}
.rhcp-hk-col-header{display:flex;align-items:center;justify-content:space-between;padding:10px 10px 14px;border-top:3px solid var(--border);margin:-14px -14px 12px;border-radius:14px 14px 0 0;font-size:.82rem;}
.rhcp-hk-cards{display:flex;flex-direction:column;gap:10px;min-height:200px;}
.rhcp-hk-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px;cursor:grab;transition:box-shadow .2s,transform .15s;user-select:none;}
.rhcp-hk-card:active{cursor:grabbing;box-shadow:0 12px 32px rgba(0,0,0,.25);transform:rotate(1.5deg) scale(1.02);}
.rhcp-hk-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;}
.rhcp-hk-room-num{font-size:14px;font-weight:800;color:var(--txt);}
.rhcp-hk-card-meta{margin-bottom:4px;}
.rhcp-hk-card-guest{background:rgba(212,160,23,.08);border:1px solid rgba(212,160,23,.2);border-radius:6px;padding:4px 7px;margin-top:6px;}
.rhcp-hk-card-edit{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--txt3);font-size:11px;padding:5px 8px;cursor:pointer;transition:all .2s;}
.rhcp-hk-card-edit:hover{background:var(--gold);color:#0B1D3A;border-color:var(--gold);font-weight:600;}
@media(max-width:1100px){.rhcp-hk-board{grid-template-columns:repeat(3,1fr);}}
@media(max-width:760px) {.rhcp-hk-board{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px) {.rhcp-hk-board{grid-template-columns:1fr;}}

/* ═══════════════════════════════════════════════════════════
   POS / F&B
═══════════════════════════════════════════════════════════ */
/* ══ POS v2 — image card grid ════════════════════════════════ */
.rhcp-pos-grid{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start;}
@media(max-width:900px){.rhcp-pos-grid{grid-template-columns:1fr;}}
.rhcp-pos-menu-panel{min-height:300px;}
.rhcp-pos-order-panel{background:var(--surface2);border:1px solid var(--border);border-radius:14px;padding:20px;position:sticky;top:90px;}
.rhcp-pos-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px;}
.rhcp-pos-item-tile{display:flex;flex-direction:column;background:var(--surface);border:2px solid var(--border);border-radius:14px;overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s;position:relative;}
.rhcp-pos-item-tile:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(212,160,23,.15);}
.rhcp-pos-item-tile--sel{border-color:var(--gold)!important;background:rgba(212,160,23,.05)!important;}
.rhcp-pos-item-tile input[type=checkbox]{position:absolute;top:8px;right:8px;width:18px;height:18px;cursor:pointer;}
.rhcp-pos-tile-img{width:100%;height:100px;overflow:hidden;background:var(--surface2);display:flex;align-items:center;justify-content:center;}
.rhcp-pos-img{width:100%;height:100%;object-fit:cover;}
.rhcp-pos-img-placeholder{font-size:36px;line-height:1;}
.rhcp-pos-tile-body{padding:8px 10px 10px;flex:1;display:flex;flex-direction:column;gap:3px;}
.rhcp-pos-tile-name{font-size:13px;font-weight:700;color:var(--txt);line-height:1.3;}
.rhcp-pos-tile-desc{font-size:11px;color:var(--txt3);line-height:1.4;}
.rhcp-pos-tile-footer{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:4px;}
.rhcp-pos-tile-price{font-size:14px;font-weight:800;color:var(--gold);}
.rhcp-pos-badge{display:inline-block;font-size:9px;font-weight:800;padding:2px 6px;border-radius:10px;text-transform:uppercase;letter-spacing:.05em;}
.rhcp-pos-badge--promo{background:#10B98120;color:#10B981;}
.rhcp-pos-badge--hh{background:#F59E0B20;color:#F59E0B;}
.rhcp-pos-stock{display:inline-block;font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px;}
.rhcp-pos-stock--ok{background:#10B98120;color:#10B981;}
.rhcp-pos-stock--low{background:#F59E0B20;color:#F59E0B;}
.rhcp-pos-stock--out{background:#EF444420;color:#EF4444;}
.rhcp-pos-summary{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px;min-height:60px;}
.rhcp-pos-summary-empty{font-size:13px;color:var(--txt3);text-align:center;padding:12px 0;}

/* ══ POS — Kitchen Display (KOT) ══════════════════════════ */
.rhcp-kot-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;}
.rhcp-kot-card{background:var(--surface);border:2px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;}
.rhcp-kot-head{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 14px;}
.rhcp-kot-num{font-size:16px;font-weight:800;font-family:monospace;color:var(--txt);display:block;}
.rhcp-kot-outlet{font-size:11px;color:var(--txt3);font-weight:500;display:block;}
.rhcp-kot-time{font-size:11px;font-weight:700;}
.rhcp-kot-stat{font-size:10px;font-weight:800;letter-spacing:.08em;}
.rhcp-kot-items{padding:10px 14px;flex:1;display:flex;flex-direction:column;gap:6px;}
.rhcp-kot-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:var(--surface2);border:1px solid var(--border);transition:background .15s;}
.rhcp-kot-item:hover{background:rgba(212,160,23,.07);}
.rhcp-kot-qty{font-size:14px;font-weight:800;color:var(--gold);min-width:28px;}
.rhcp-kot-name{font-size:13px;font-weight:600;flex:1;}
.rhcp-kot-note{font-size:11px;color:#F59E0B;font-style:italic;}
.rhcp-kot-stat-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.rhcp-kot-actions{display:flex;gap:8px;padding:10px 14px;border-top:1px solid var(--border);flex-wrap:wrap;}

/* ══ POS — Floor Plan / Table Grid ════════════════════════ */
.rhcp-table-floor{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;}
.rhcp-floor-table{width:80px;height:80px;border:2px solid var(--border);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px;position:relative;transition:border-color .2s,box-shadow .2s;cursor:pointer;}
.rhcp-floor-table:hover{box-shadow:0 4px 16px rgba(0,0,0,.2);}
.rhcp-floor-table-name{font-size:14px;font-weight:800;color:var(--txt);}
.rhcp-floor-table-cap{font-size:10px;color:var(--txt3);}
.rhcp-floor-table-status{font-size:9px;font-weight:800;letter-spacing:.06em;margin-top:2px;}
.rhcp-floor-table-actions{position:absolute;top:-30px;left:50%;transform:translateX(-50%);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:3px 6px;display:none;gap:4px;z-index:10;white-space:nowrap;}
.rhcp-floor-table:hover .rhcp-floor-table-actions{display:flex;}
.rhcp-tbl-btn{font-size:11px;padding:2px 6px;border-radius:5px;background:var(--surface2);border:1px solid var(--border);cursor:pointer;color:var(--txt);}
.rhcp-tbl-btn:hover{background:rgba(212,160,23,.1);border-color:var(--gold);}

/* ══ Language switcher ═══════════════════════════════════ */
.rhcp-lang-switcher{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
.rhcp-lang-btn{padding:5px 10px;border-radius:8px;font-size:11px;font-weight:700;background:var(--surface2);color:var(--txt3);text-decoration:none;border:1px solid var(--border);transition:all .2s;text-transform:uppercase;letter-spacing:.06em;}
.rhcp-lang-btn:hover{background:var(--surface);color:var(--txt);}
.rhcp-lang-btn--active{background:var(--gold)!important;color:#0B1D3A!important;border-color:var(--gold)!important;}

/* ══════════════════════════════════════════════════════════════
   AI ASSISTANT VIEW — Full Readability Fix
   The AI page has its own dark-panel design.
   Force all elements to be fully visible in both light & dark themes.
   ══════════════════════════════════════════════════════════════ */

/* Whole AI view panel: always dark card */
.intel-ai-view {
  background: #0f1e38;
  border: 1px solid rgba(212,160,23,.18);
  border-radius: 14px;
  padding: 24px;
  margin-top: 4px;
}

/* Header row */
.intel-ai-header {
  background: linear-gradient(135deg,rgba(212,160,23,.10) 0%,rgba(139,92,246,.10) 100%) !important;
  border: 1px solid rgba(212,160,23,.3) !important;
  border-radius: 12px !important;
  padding: 18px 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin-bottom: 20px !important;
  flex-wrap: wrap;
}

/* Title and sub inside the dark header — always white */
.intel-ai-header .intel-view-title,
.intel-ai-view .intel-view-title,
[data-theme="light"] .intel-ai-view .intel-view-title,
[data-theme="dark"]  .intel-ai-view .intel-view-title {
  color: #f1f5f9 !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  margin: 0 0 4px !important;
}

.intel-ai-header .intel-view-sub,
.intel-ai-view .intel-view-sub,
[data-theme="light"] .intel-ai-view .intel-view-sub,
[data-theme="dark"]  .intel-ai-view .intel-view-sub {
  color: #c8d8e8 !important;
  font-size: .875rem !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}

/* AI Powered badge */
.intel-ai-badge,
.intel-ai-badge--lg {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: rgba(212,160,23,.15) !important;
  border: 1px solid rgba(212,160,23,.35) !important;
  color: #D4A017 !important;
  font-size: .75rem !important;
  font-weight: 800 !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  white-space: nowrap !important;
}
.intel-ai-badge--lg {
  font-size: .78rem !important;
  padding: 5px 14px !important;
  margin-left: auto !important;
}

/* Icon wrap */
.intel-ai-icon-wrap {
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: rgba(212,160,23,.15) !important;
  border: 1.5px solid rgba(212,160,23,.4) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}
.intel-ai-icon-wrap svg { stroke: #D4A017 !important; }

/* Search / question input field */
.intel-ai-form {
  display: flex !important;
  margin-bottom: 14px !important;
}

.intel-ai-field {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  background: rgba(255,255,255,.06) !important;
  border: 1.5px solid rgba(212,160,23,.35) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  transition: border-color .2s, box-shadow .2s !important;
}
.intel-ai-field:focus-within {
  border-color: #D4A017 !important;
  box-shadow: 0 0 0 3px rgba(212,160,23,.15) !important;
}

.intel-ai-input,
[data-theme="light"] .intel-ai-input,
[data-theme="dark"]  .intel-ai-input {
  flex: 1 !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  color: #f1f5f9 !important;
  font-size: .95rem !important;
  font-family: inherit !important;
  padding: 14px 16px !important;
}
.intel-ai-input::placeholder,
[data-theme="light"] .intel-ai-input::placeholder,
[data-theme="dark"]  .intel-ai-input::placeholder {
  color: rgba(200,220,245,.5) !important;
  opacity: 1 !important;
}

/* Send / submit button */
.intel-ai-send {
  padding: 0 20px !important;
  height: 100% !important;
  min-height: 50px !important;
  background: rgba(212,160,23,.18) !important;
  border: none !important;
  border-left: 1.5px solid rgba(212,160,23,.3) !important;
  color: #D4A017 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background .2s !important;
  flex-shrink: 0 !important;
}
.intel-ai-send:hover { background: rgba(212,160,23,.35) !important; }
.intel-ai-send svg { fill: none !important; stroke: #D4A017 !important; width: 20px !important; height: 20px !important; }

/* Category filter chips */
.intel-ai-categories {
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-bottom: 18px !important;
}

.intel-ai-cat,
[data-theme="light"] .intel-ai-cat,
[data-theme="dark"]  .intel-ai-cat {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 8px 14px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.06) !important;
  border: 1.5px solid rgba(255,255,255,.12) !important;
  color: #c8d8e8 !important;
  font-size: .82rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: inherit !important;
  transition: border-color .15s, background .15s, color .15s !important;
}
.intel-ai-cat:hover,
[data-theme="light"] .intel-ai-cat:hover,
[data-theme="dark"]  .intel-ai-cat:hover {
  border-color: #D4A017 !important;
  color: #D4A017 !important;
  background: rgba(212,160,23,.08) !important;
}
.intel-ai-cat--active,
[data-theme="light"] .intel-ai-cat--active,
[data-theme="dark"]  .intel-ai-cat--active {
  background: rgba(212,160,23,.15) !important;
  border-color: #D4A017 !important;
  color: #D4A017 !important;
}
.intel-ai-cat .rhcp-nav-icon svg { width: 14px !important; height: 14px !important; stroke: currentColor !important; }

/* AI Response box */
.intel-ai-response {
  background: linear-gradient(135deg,rgba(212,160,23,.07) 0%,rgba(139,92,246,.07) 100%) !important;
  border: 1px solid rgba(212,160,23,.3) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 18px !important;
}
.intel-ai-response__header {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
  flex-wrap: wrap !important;
}
.intel-ai-q,
[data-theme="light"] .intel-ai-q,
[data-theme="dark"]  .intel-ai-q {
  font-size: .82rem !important;
  color: #96afc5 !important;
  font-style: italic !important;
}

.intel-ai-response__body,
.intel-ai-response__data,
[data-theme="light"] .intel-ai-response__body,
[data-theme="dark"]  .intel-ai-response__body,
[data-theme="light"] .intel-ai-response__data,
[data-theme="dark"]  .intel-ai-response__data {
  font-size: .92rem !important;
  color: #e2eaf4 !important;
  line-height: 1.75 !important;
  font-weight: 400 !important;
}
.intel-ai-response__data { display: none !important; }

/* Prompt groups */
.intel-prompt-group { margin-bottom: 14px; }
.intel-prompt-group h4 {
  font-size: .8rem !important;
  font-weight: 700 !important;
  color: #96afc5 !important;
  margin-bottom: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
}
.intel-prompt-chips { display: flex; flex-wrap: wrap; gap: 8px; }

.intel-prompt-chip,
[data-theme="light"] .intel-prompt-chip,
[data-theme="dark"]  .intel-prompt-chip {
  padding: 7px 16px !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.06) !important;
  border: 1.5px solid rgba(255,255,255,.14) !important;
  color: #c8d8e8 !important;
  font-size: .8rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  font-family: inherit !important;
  transition: border-color .15s, background .15s, color .15s !important;
}
.intel-prompt-chip:hover,
[data-theme="light"] .intel-prompt-chip:hover,
[data-theme="dark"]  .intel-prompt-chip:hover {
  border-color: #D4A017 !important;
  background: rgba(212,160,23,.10) !important;
  color: #D4A017 !important;
}

/* Chat history (conversation log) */
.rhcp-ai-chat-wrap {
  background: rgba(255,255,255,.03) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}
.rhcp-ai-chat-history {
  padding: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  max-height: 320px !important;
  overflow-y: auto !important;
}
.rhcp-ai-full-msg { display: flex; gap: 10px; }
.rhcp-ai-full-msg--user { justify-content: flex-end; }
.rhcp-ai-full-msg--ai   { justify-content: flex-start; }
.rhcp-ai-full-msg__bubble {
  max-width: 78% !important;
  padding: 10px 14px !important;
  border-radius: 12px !important;
  font-size: .875rem !important;
  line-height: 1.65 !important;
}
.rhcp-ai-full-msg--user .rhcp-ai-full-msg__bubble {
  background: rgba(212,160,23,.22) !important;
  color: #ffe8a0 !important;
  border-bottom-right-radius: 4px !important;
}
.rhcp-ai-full-msg--ai .rhcp-ai-full-msg__bubble {
  background: rgba(255,255,255,.07) !important;
  color: #d4e4f4 !important;
  border-bottom-left-radius: 4px !important;
}
.rhcp-ai-full-msg__bubble strong { color: #D4A017 !important; }
.rhcp-ai-full-msg__bubble p  { margin: 0 0 5px !important; }
.rhcp-ai-full-msg__bubble li { margin: 3px 0 3px 16px !important; list-style: disc !important; color: #d4e4f4 !important; }

/* "Clear History" button — keep it visible */
.intel-ai-view .rhcp-btn--outline {
  border-color: rgba(212,160,23,.4) !important;
  color: #D4A017 !important;
  background: transparent !important;
}
.intel-ai-view .rhcp-btn--outline:hover {
  background: rgba(212,160,23,.1) !important;
  border-color: #D4A017 !important;
}

/* Tip note */
.intel-ai-view [style*="font-size:12px"],
.intel-ai-view [style*="font-size: 12px"] {
  color: #96afc5 !important;
}

/* Cursor blink in typewriter effect */
.intel-cursor { color: #D4A017; animation: rhcp-blink .7s step-end infinite; }
@keyframes rhcp-blink { 0%,100%{opacity:1} 50%{opacity:0} }

/* ══════════════════════════════════════════════════════════════════
   LIGHT MODE OVERRIDES — ensure all text is readable in light mode
   data-theme="light" is the DEFAULT. These rules fix components
   that had hardcoded colours designed only for dark mode.
══════════════════════════════════════════════════════════════════ */

/* ── 1. Edition pills — lighten accent colours for light bg ── */
[data-theme="light"] .rhcp-topbar-edition-pill--cloud        { background:rgba(29,78,216,.1); color:#1d4ed8; border-color:rgba(29,78,216,.25); }
[data-theme="light"] .rhcp-topbar-edition-pill--enterprise   { background:rgba(22,163,74,.1); color:#16a34a; border-color:rgba(22,163,74,.25); }
[data-theme="light"] .rhcp-topbar-edition-pill--platform     { background:rgba(180,83,9,.1);  color:#b45309; border-color:rgba(180,83,9,.25); }
[data-theme="light"] .rhcp-topbar-edition-pill--white_label,
[data-theme="light"] .rhcp-topbar-edition-pill---white_label,
[data-theme="light"] .rhcp-topbar-edition-pill---ent-wl      { background:rgba(109,40,217,.1); color:#6d28d9; border-color:rgba(109,40,217,.25); }
[data-theme="light"] .rhcp-topbar-edition-pill---cloud       { background:rgba(29,78,216,.1); color:#1d4ed8; border-color:rgba(29,78,216,.25); }
[data-theme="light"] .rhcp-topbar-edition-pill---enterprise  { background:rgba(22,163,74,.1); color:#166534; border-color:rgba(22,163,74,.25); }

/* ── 2. Nav link text in sidebar (sidebar always stays dark navy — fine) ── */
/* Sidebar is intentionally always dark; no override needed */

/* ── 3. Table cells — force var(--txt) in light mode ── */
[data-theme="light"] .rhcp-table td,
[data-theme="light"] .rhcp-table th { color: var(--txt); }
[data-theme="light"] .rhcp-table tbody tr:hover td { background: rgba(212,160,23,.06); }
[data-theme="light"] .rhcp-table thead th { background: var(--surface2); }

/* ── 4. KPI cards / stat blocks ── */
[data-theme="light"] .rhcp-kpi-value  { color: var(--txt); }
[data-theme="light"] .rhcp-kpi-label  { color: var(--txt3); }
[data-theme="light"] .rhcp-kpi-sub    { color: var(--txt3); }

/* ── 5. Page titles / subtitles ── */
[data-theme="light"] .rhcp-page-title    { color: var(--txt); }
[data-theme="light"] .rhcp-page-subtitle { color: var(--txt3); }

/* ── 6. Form labels & inputs ── */
[data-theme="light"] .rhcp-label,
[data-theme="light"] .rhcp-form-label { color: var(--txt2) !important; }
[data-theme="light"] .rhcp-input,
[data-theme="light"] .rhcp-select,
[data-theme="light"] .rhcp-textarea {
  color: var(--txt) !important;
  background: var(--surface2) !important;
  border-color: var(--border) !important;
}
[data-theme="light"] .rhcp-input::placeholder,
[data-theme="light"] .rhcp-select::placeholder { color: var(--muted) !important; }

/* ── 7. Dashboard cards ── */
[data-theme="light"] .rhcp-dashboard-card  { background: var(--surface); border-color: var(--border); }
[data-theme="light"] .rhcp-card-header h3  { color: var(--txt); }
[data-theme="light"] .rhcp-form-card-title { color: var(--txt); }

/* ── 8. Badges — dark-only accent colours → light mode equivalents ── */
[data-theme="light"] .rhcp-badge { color: var(--txt2); background: var(--surface2); border-color: var(--border); }
[data-theme="light"] .rhcp-badge--success { background: rgba(22,163,74,.12); color: #166534; }
[data-theme="light"] .rhcp-badge--danger  { background: rgba(220,38,38,.1);  color: #b91c1c; }
[data-theme="light"] .rhcp-badge--warning { background: rgba(245,158,11,.12); color: #92400e; }
[data-theme="light"] .rhcp-badge--info    { background: rgba(29,78,216,.1);  color: #1d4ed8; }

/* ── 9. Status badges ── */
[data-theme="light"] .rhcp-status-badge { color: var(--txt2); }

/* ── 10. Revenue / stat cards with hardcoded dark backgrounds ── */
[data-theme="light"] .rhcp-revenue-stat       { background: var(--surface); border: 1px solid var(--border); }
[data-theme="light"] .rhcp-revenue-stat-value { color: var(--txt); }
[data-theme="light"] .rhcp-revenue-stat-label { color: var(--txt3); }
[data-theme="light"] .rhcp-stat-card          { background: var(--surface); border: 1px solid var(--border); }
[data-theme="light"] .rhcp-stat-card .rhcp-stat-val { color: var(--txt); }
[data-theme="light"] .rhcp-stat-card .rhcp-stat-lbl { color: var(--txt3); }

/* ── 11. Alert / flash messages ── */
[data-theme="light"] .rhcp-alert--success { background: rgba(22,163,74,.08);  color: #166534; border-color: rgba(22,163,74,.25); }
[data-theme="light"] .rhcp-alert--error   { background: rgba(220,38,38,.08);  color: #b91c1c; border-color: rgba(220,38,38,.25); }
[data-theme="light"] .rhcp-alert--warning { background: rgba(245,158,11,.08); color: #92400e; border-color: rgba(245,158,11,.25); }
[data-theme="light"] .rhcp-alert--info    { background: rgba(29,78,216,.08);  color: #1e3a8a; border-color: rgba(29,78,216,.25); }

/* ── 12. Tabs ── */
[data-theme="light"] .rhcp-tab,
[data-theme="light"] .sm-tab,
[data-theme="light"] .be-tab,
[data-theme="light"] .cm-tab,
[data-theme="light"] .mkt-tab,
[data-theme="light"] .wa-tab {
  color: var(--txt2) !important;
  background: transparent !important;
}
[data-theme="light"] .rhcp-tab:hover,
[data-theme="light"] .sm-tab:hover  { color: var(--txt) !important; background: var(--surface2) !important; }
[data-theme="light"] .rhcp-tab--active,
[data-theme="light"] .sm-tab--active,
[data-theme="light"] .be-tab--active,
[data-theme="light"] .cm-tab--active { color: var(--gold) !important; }

/* ── 13. Rate manager cells ── */
[data-theme="light"] .rhcp-rate-cell          { color: var(--txt2); }
[data-theme="light"] .rhcp-rate-cell.rhcp-rate-up   { color: #166534; background: rgba(22,163,74,.1); }
[data-theme="light"] .rhcp-rate-cell.rhcp-rate-down { color: #b91c1c; background: rgba(220,38,38,.1); }

/* ── 14. Housekeeping board stat cards ── */
[data-theme="light"] .rhcp-stat-card--red   { background: rgba(220,38,38,.08);  border: 1px solid rgba(220,38,38,.2); }
[data-theme="light"] .rhcp-stat-card--amber { background: rgba(245,158,11,.08); border: 1px solid rgba(245,158,11,.2); }
[data-theme="light"] .rhcp-stat-card--green { background: rgba(22,163,74,.08);  border: 1px solid rgba(22,163,74,.2); }
[data-theme="light"] .rhcp-stat-card--red   .rhcp-stat-val { color: #b91c1c; }
[data-theme="light"] .rhcp-stat-card--amber .rhcp-stat-val { color: #92400e; }
[data-theme="light"] .rhcp-stat-card--green .rhcp-stat-val { color: #166534; }

/* ── 15. Section headings ── */
[data-theme="light"] .rhcp-section-heading,
[data-theme="light"] .rhcp-section-title { color: var(--txt); border-bottom-color: var(--border); }
[data-theme="light"] .rhcp-card-title,
[data-theme="light"] .rhcp-widget-title { color: var(--txt); }

/* ── 16. Buttons in light mode ── */
[data-theme="light"] .rhcp-btn--outline {
  color: var(--txt2) !important;
  border-color: var(--border2) !important;
  background: transparent !important;
}
[data-theme="light"] .rhcp-btn--outline:hover {
  background: var(--surface2) !important;
  color: var(--txt) !important;
}

/* ── 17. Welcome banner always stays dark — OK (it has a photo overlay) ── */

/* ── 18. Topbar clock/time widget ── */
[data-theme="light"] .rhcp-topbar-time { color: var(--txt2); background: var(--surface2); border-color: var(--border); }

/* ── 19. Notification bell ── */
[data-theme="light"] .rhcp-topbar-bell { color: var(--txt3); background: var(--surface2); border-color: var(--border); }
[data-theme="light"] .rhcp-topbar-bell:hover { background: var(--navy); color: #fff; border-color: var(--navy); }

/* ── 20. Intelligence / AI module ── */
[data-theme="light"] .intel-view-title { color: var(--txt) !important; }
[data-theme="light"] .intel-view-sub   { color: var(--txt3) !important; }
[data-theme="light"] .intel-result-body strong { color: var(--txt) !important; }
[data-theme="light"] .intel-result-body span   { color: var(--txt3) !important; }
[data-theme="light"] .intel-prompt-chip { color: var(--txt2) !important; background: var(--surface2) !important; border-color: var(--border) !important; }
[data-theme="light"] .intel-prompt-chip:hover { background: var(--gold) !important; color: #0b1d3a !important; border-color: var(--gold) !important; }

/* ── 21. Modal / overlay dialogs ── */
[data-theme="light"] .rhcp-modal-inner,
[data-theme="light"] [style*="background:var(--surface)"] { background: var(--surface); color: var(--txt); }

/* ── 22. Impersonation banner ── */
[data-theme="light"] .rhcp-impersonate-bar { background: #b45309; color: #fff; }

/* ── 23. Billing rows ── */
[data-theme="light"] .rhcp-billing-row { border-bottom-color: var(--border); color: var(--txt); }

/* ── 24. Subscription pill ── */
[data-theme="light"] .rhcp-sub-pill__trigger { background: var(--surface2); border-color: var(--border); }
[data-theme="light"] .rhcp-sub-pill__name    { color: var(--txt); }
[data-theme="light"] .rhcp-sub-pill__bar-track { background: var(--border); }

/* ── 25. Page-level text (catch-all safety net) ── */
[data-theme="light"] .rhcp-content-area,
[data-theme="light"] .rhcp-app-body { color: var(--txt); }
[data-theme="light"] strong,
[data-theme="light"] b { color: inherit; }


/* ═══════════════════════════════════════════════════════════
   UNIVERSAL KPI CARDS  — used by all modules
   ═══════════════════════════════════════════════════════════ */
.rhcp-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-bottom:26px}
.rhcp-kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px 16px;display:flex;align-items:center;gap:14px;position:relative;overflow:hidden;transition:transform .15s,box-shadow .15s;cursor:default}
.rhcp-kpi-card:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(0,0,0,.09)}
.rhcp-kpi-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--rhcp-kpi-accent,#D4A017);border-radius:14px 0 0 14px}
.rhcp-kpi-ico{font-size:26px;flex-shrink:0;margin-left:4px}
.rhcp-kpi-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.rhcp-kpi-val{font-size:22px;font-weight:800;color:var(--rhcp-kpi-accent,var(--gold));line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rhcp-kpi-lbl{font-size:11px;font-weight:600;color:var(--txt3);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}
/* accent colour helpers */
.rhcp-kpi--gold{--rhcp-kpi-accent:#D4A017}
.rhcp-kpi--green{--rhcp-kpi-accent:#10B981}
.rhcp-kpi--red{--rhcp-kpi-accent:#EF4444}
.rhcp-kpi--amber{--rhcp-kpi-accent:#F59E0B}
.rhcp-kpi--blue{--rhcp-kpi-accent:#3B82F6}
.rhcp-kpi--purple{--rhcp-kpi-accent:#8B5CF6}
.rhcp-kpi--teal{--rhcp-kpi-accent:#14B8A6}
.rhcp-kpi--pink{--rhcp-kpi-accent:#EC4899}
.rhcp-kpi--slate{--rhcp-kpi-accent:#6B7280}
/* responsive */
@media(max-width:900px){.rhcp-kpi-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.rhcp-kpi-grid{grid-template-columns:repeat(2,1fr)}}
/* light-mode safety */
[data-theme="light"] .rhcp-kpi-card{background:var(--surface);border-color:var(--border)}
[data-theme="light"] .rhcp-kpi-lbl{color:var(--txt3)}



/* ══ CM/BE/TCH LIGHT MODE FIX ══ */
[data-theme="light"] .cm-ch-info h3,
[data-theme="light"] .cm-header__title,
[data-theme="light"] .cm-section-card__head h3,
[data-theme="light"] .cm-sync-header h2,
[data-theme="light"] .cm-avail-kpi__val,
[data-theme="light"] .cm-connect-panel__head h2,
[data-theme="light"] .cm-coming-soon h3,
[data-theme="light"] .cm-ch-sync-info strong,
[data-theme="light"] .cm-ch-brk-name,
[data-theme="light"] .cm-ch-brk-cnt,
[data-theme="light"] .cm-an-kpi__val,
[data-theme="light"] .cm-status-name {
    color:#0d1b2e!important;
}
[data-theme="light"] .cm-ch-info p,
[data-theme="light"] .cm-header__sub,
[data-theme="light"] .cm-avail-kpi__lbl,
[data-theme="light"] .cm-an-kpi__lbl,
[data-theme="light"] .cm-ch-last-sync,
[data-theme="light"] .cm-ch-commission,
[data-theme="light"] .cm-ch-brk-pct,
[data-theme="light"] .cm-avail-day__lbl,
[data-theme="light"] .cm-avail-day__num,
[data-theme="light"] .cm-flow-arrow,
[data-theme="light"] .cm-flow-channel small,
[data-theme="light"] .cm-flow-core small,
[data-theme="light"] .cm-ch-sync-info span,
[data-theme="light"] .cm-status-meta,
[data-theme="light"] .cm-coming-soon p,
[data-theme="light"] .cm-tab,
[data-theme="light"] .cm-notice {
    color:#374f6b!important;
}
[data-theme="light"] .cm-ch-card,
[data-theme="light"] .cm-section-card,
[data-theme="light"] .cm-connect-panel,
[data-theme="light"] .cm-avail-kpi,
[data-theme="light"] .cm-status-card,
[data-theme="light"] .cm-an-kpi,
[data-theme="light"] .cm-flow-diagram {
    background:#ffffff!important;
    border-color:#d1d9e6!important;
    box-shadow:0 1px 4px rgba(0,0,0,.07)!important;
}
[data-theme="light"] .cm-ch-sync-row { background:rgba(0,0,0,.03)!important; }
[data-theme="light"] .cm-ch-brk-bar,
[data-theme="light"] .cm-avail-day__bar { background:rgba(0,0,0,.08)!important; }
[data-theme="light"] .cm-shell input,
[data-theme="light"] .cm-shell select,
[data-theme="light"] .cm-shell textarea {
    color:#0d1b2e!important;
    background:#ffffff!important;
    border-color:#d1d9e6!important;
}
[data-theme="light"] .be-shell h1,[data-theme="light"] .be-shell h2,
[data-theme="light"] .be-shell h3,[data-theme="light"] .be-shell p,
[data-theme="light"] .be-shell strong,[data-theme="light"] .be-shell td,
[data-theme="light"] .be-shell th,[data-theme="light"] .be-shell span { color:#0d1b2e!important; }
[data-theme="light"] .tch-shell h1,[data-theme="light"] .tch-shell h2,
[data-theme="light"] .tch-shell h3,[data-theme="light"] .tch-shell p,
[data-theme="light"] .tch-shell strong,[data-theme="light"] .tch-shell td,
[data-theme="light"] .tch-shell th { color:#0d1b2e!important; }
[data-theme="light"] .tch-msg__bubble,[data-theme="light"] .tch-ai-msg__bubble,
[data-theme="light"] .tch-btn,[data-theme="light"] .tch-qa,
[data-theme="light"] .tch-input,[data-theme="light"] .tch-ch-textarea,
[data-theme="light"] .tch-ai-input,[data-theme="light"] .tch-file-pill {
    background:rgba(0,0,0,.04)!important;
    border-color:rgba(0,0,0,.1)!important;
    color:#0d1b2e!important;
}
