:root{
  --bg:#050505;
  --bg-soft:#0b0b0c;
  --panel:#101011;
  --panel-2:#141416;
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(255,255,255,.12);
  --text:#f5f3ef;
  --muted:rgba(255,255,255,.68);
  --muted-2:rgba(255,255,255,.52);
  --gold:#d0b28a;
  --gold-2:#b88f60;
  --gold-3:#8f6b43;
  --shadow:0 30px 80px rgba(0,0,0,.42);
  --body-overlay-1:color-mix(in srgb, var(--gold) 16%, transparent);
  --body-overlay-2:color-mix(in srgb, var(--gold-2) 12%, transparent);
  --body-overlay-3:rgba(255,255,255,.04);
  --body-gradient:linear-gradient(180deg, #090909 0%, #050505 45%, #030303 100%);
  --sidebar-bg:rgba(10,10,10,.72);
  --card-bg:#0d0d0d;
  --panel-grad-top:rgba(255,255,255,.03);
  --panel-grad-bottom:rgba(255,255,255,.02);
  --soft-bg:rgba(255,255,255,.04);
  --soft-bg-2:rgba(255,255,255,.05);
}

html[data-theme="light"]{
  --bg:#f4f1eb;
  --bg-soft:#ece7df;
  --panel:#ffffff;
  --panel-2:#fbf8f4;
  --line:rgba(24,24,27,.08);
  --line-strong:rgba(24,24,27,.12);
  --text:#18181b;
  --muted:rgba(24,24,27,.68);
  --muted-2:rgba(24,24,27,.50);
  --gold:#b88f60;
  --gold-2:#9f784d;
  --gold-3:#7e5e3c;
  --shadow:0 24px 70px rgba(17,17,17,.08);
  --body-overlay-1:rgba(184,143,96,.10);
  --body-overlay-2:rgba(159,120,77,.07);
  --body-overlay-3:rgba(255,255,255,.45);
  --body-gradient:linear-gradient(180deg, #f9f6f1 0%, #f3efe8 48%, #ece7df 100%);
  --sidebar-bg:rgba(255,255,255,.72);
  --card-bg:#ffffff;
  --panel-grad-top:rgba(255,255,255,.92);
  --panel-grad-bottom:rgba(248,244,238,.88);
  --soft-bg:rgba(17,17,17,.03);
  --soft-bg-2:rgba(17,17,17,.04);
}

html[data-theme="pink"]{
  --bg:#050505;
  --bg-soft:#0b0b0c;
  --panel:#101011;
  --panel-2:#141416;
  --line:rgba(255,255,255,.08);
  --line-strong:rgba(255,255,255,.12);
  --text:#f8eff5;
  --muted:rgba(255,255,255,.68);
  --muted-2:rgba(255,255,255,.52);
  --gold:#f08ab7;
  --gold-2:#db5f9b;
  --gold-3:#a93b73;
  --shadow:0 30px 80px rgba(0,0,0,.42);
  --body-overlay-1:color-mix(in srgb, var(--gold) 16%, transparent);
  --body-overlay-2:color-mix(in srgb, var(--gold-2) 12%, transparent);
  --body-overlay-3:rgba(255,255,255,.04);
  --body-gradient:linear-gradient(180deg, #090909 0%, #050505 45%, #030303 100%);
  --sidebar-bg:rgba(10,10,10,.72);
  --card-bg:#0d0d0d;
  --panel-grad-top:rgba(255,255,255,.03);
  --panel-grad-bottom:rgba(255,255,255,.02);
  --soft-bg:rgba(255,255,255,.04);
  --soft-bg-2:rgba(255,255,255,.05);
}

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body.bce-admin-body{
  margin:0;
  min-height:100vh;
  background:var(--bg);
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

.bce-admin-body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(circle at 15% 20%, var(--body-overlay-1), transparent 28%),
    radial-gradient(circle at 82% 16%, var(--body-overlay-2), transparent 22%),
    radial-gradient(circle at 50% 100%, var(--body-overlay-3), transparent 30%),
    var(--body-gradient);
}

.bce-admin-shell{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  min-height:100vh;
  transition:grid-template-columns .22s ease;
}

body.bce-admin-body.is-sidebar-collapsed .bce-admin-shell{
  grid-template-columns:92px minmax(0,1fr);
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-admin-shell{
  grid-template-columns:280px minmax(0,1fr);
}

.bce-admin-main{
  min-width:0;
  padding:28px 24px 32px;
}

/* Sidebar */

.bce-sidebar{
  position:sticky;
  top:0;
  height:100vh;
  display:flex;
  flex-direction:column;
  padding:18px 16px;
  border-right:1px solid var(--line);
  background:var(--sidebar-bg);
  backdrop-filter:blur(12px);
  box-shadow:0 10px 40px rgba(0,0,0,.25);
  overflow:hidden;
  z-index:40;
  transition:padding .22s ease, box-shadow .22s ease, background .22s ease;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar{
  padding-left:10px;
  padding-right:10px;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar{
  padding-left:16px;
  padding-right:16px;
}

.bce-sidebar__top{
  display:flex;
  flex-direction:column;
  gap:18px;
  flex:1 1 auto;
  min-height:0;
}

.bce-sidebar__brand{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
  padding:8px 6px 14px;
  text-decoration:none;
  color:var(--text);
  transition:padding .22s ease, gap .22s ease, justify-content .22s ease;
}

.bce-sidebar__notify{
  position:relative;
}

.bce-sidebar__notify-trigger{
  width:100%;
  display:flex;
  align-items:center;
  gap:14px;
  padding:8px 6px 14px;
  border:0;
  background:transparent;
  color:var(--text);
  cursor:pointer;
  text-align:left;
}

.bce-sidebar__notify-dot{
  position:absolute;
  top:2px;
  right:2px;
  width:10px;
  height:10px;
  border-radius:999px;
  background:#d92d20;
  border:2px solid var(--panel);
}

.bce-sidebar__notify-panel{
  position:absolute;
  top:calc(100% - 6px);
  left:0;
  right:0;
  width:auto;
  max-width:248px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(14,14,15,.96);
  box-shadow:0 24px 50px rgba(0,0,0,.34);
  padding:12px;
  z-index:80;
}

.bce-sidebar__notify.is-open .bce-sidebar__notify-panel{
  display:block;
}

.bce-sidebar__notify-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  margin-bottom:10px;
  border-bottom:1px solid var(--line);
}

.bce-sidebar__notify-head strong{
  font-size:13px;
}

.bce-sidebar__notify-head span{
  font-size:11px;
  color:var(--muted-2);
}

.bce-sidebar__notify-list{
  display:grid;
  gap:6px;
  max-height:300px;
  overflow:auto;
}

.bce-sidebar__notify-item{
  display:grid;
  gap:3px;
  padding:9px 10px;
  border-radius:14px;
  text-decoration:none;
  color:var(--text);
  background:var(--soft-bg);
  border:1px solid transparent;
}

.bce-sidebar__notify-item:hover{
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
  background:var(--soft-bg-2);
}

.bce-sidebar__notify-item strong{
  font-size:12px;
  line-height:1.35;
}

.bce-sidebar__notify-item span{
  font-size:11px;
  line-height:1.4;
  color:var(--muted);
}

.bce-sidebar__notify-item small,
.bce-sidebar__notify-empty{
  font-size:10px;
  color:var(--muted-2);
}

.bce-sidebar__notify-actions{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  padding-top:10px;
  margin-top:10px;
  border-top:1px solid var(--line);
}

.bce-sidebar__notify-actions form{
  margin:0;
}

.bce-sidebar__notify-actions .bce-btn{
  min-height:36px;
  padding:10px 12px;
  border-radius:12px;
  font-size:12px;
  font-weight:800;
}

.bce-sidebar__brand-mark{
  width:42px;
  height:42px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg, color-mix(in srgb, var(--gold) 22%, transparent), color-mix(in srgb, var(--gold-3) 18%, transparent));
  border:1px solid color-mix(in srgb, var(--gold) 22%, transparent);
  overflow:hidden;
  flex:0 0 auto;
}

.bce-sidebar__brand-mark img{
  width:18px !important;
  height:18px !important;
  max-width:18px !important;
  max-height:18px !important;
  object-fit:contain;
  display:block;
  flex:0 0 auto;
}

.bce-sidebar__brand-text{
  min-width:0;
  display:flex;
  flex-direction:column;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar__brand{
  justify-content:center;
  padding-left:0;
  padding-right:0;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar__brand-text{
  display:none;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar__notify-trigger{
  justify-content:center;
  padding-left:0;
  padding-right:0;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar__notify-trigger .bce-sidebar__brand-text{
  display:none;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar__brand{
  justify-content:flex-start;
  padding-left:6px;
  padding-right:6px;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar__brand-text{
  display:flex;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar__notify-trigger{
  justify-content:flex-start;
  padding-left:6px;
  padding-right:6px;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar__notify-trigger .bce-sidebar__brand-text{
  display:flex;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar__notify-panel{
  left:calc(100% + 10px);
  right:auto;
  width:220px;
  max-width:220px;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar__notify-panel{
  left:0;
  right:0;
  width:auto;
  max-width:248px;
}

.bce-sidebar__brand-text strong{
  font-size:18px;
  font-weight:900;
  letter-spacing:.04em;
  color:var(--text);
}

.bce-sidebar__brand-text small{
  margin-top:2px;
  color:var(--muted-2);
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-transform:uppercase;
  letter-spacing:.10em;
}

.bce-sidebar__nav,
.bce-sidebar__bottom{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.bce-sidebar__nav{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  padding-right:4px;
  padding-bottom:24px;
  scrollbar-width:thin;
  overscroll-behavior:contain;
}

.bce-sidebar__nav::-webkit-scrollbar{
  width:8px;
}

.bce-sidebar__nav::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.12);
  border-radius:999px;
}

.bce-sidebar__bottom{
  flex:0 0 auto;
  padding-top:14px;
  margin-top:14px;
  border-top:1px solid var(--line);
}

.bce-sidebar__collapse{
  position:absolute;
  top:22px;
  right:-14px;
  width:30px;
  height:30px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--sidebar-bg);
  color:var(--text);
  box-shadow:0 8px 24px rgba(0,0,0,.22);
  backdrop-filter:blur(12px);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:45;
}

.bce-sidebar__collapse:hover{
  border-color:color-mix(in srgb, var(--gold) 28%, transparent);
}

.bce-sidebar__collapse-icon{
  font-size:12px;
  line-height:1;
  transition:transform .2s ease;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar__collapse-icon{
  transform:rotate(180deg);
}

.bce-sidebar__mobile-head,
.bce-sidebar-backdrop,
.bce-sidebar-mobile-toggle{
  display:none;
}

.bce-nav-item,
.bce-theme-toggle,
.bce-logout{
  min-height:52px;
  padding:0 14px;
  border-radius:16px;
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:var(--text);
  border:1px solid transparent;
  background:transparent;
  backdrop-filter:blur(12px);
  transition:transform .22s ease, border-color .22s ease, background .22s ease;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

body.bce-admin-body.is-sidebar-collapsed .bce-nav-item,
body.bce-admin-body.is-sidebar-collapsed .bce-theme-toggle,
body.bce-admin-body.is-sidebar-collapsed .bce-logout,
body.bce-admin-body.is-sidebar-collapsed .bce-nav-item--parent .bce-nav-item__toggle{
  transition:padding .22s ease, justify-content .22s ease, gap .22s ease, transform .22s ease, border-color .22s ease, background .22s ease;
}

.bce-nav-item:hover,
.bce-theme-toggle:hover,
.bce-logout:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb, var(--gold) 28%, transparent);
  background:var(--soft-bg);
}

.bce-nav-item.is-active{
  border-color:color-mix(in srgb, var(--gold) 28%, transparent);
  background:linear-gradient(180deg, color-mix(in srgb, var(--gold) 16%, transparent), color-mix(in srgb, var(--gold-3) 10%, transparent));
  box-shadow:0 0 0 1px color-mix(in srgb, var(--gold) 12%, transparent), 0 0 24px color-mix(in srgb, var(--gold) 8%, transparent);
}

.bce-nav-item.is-disabled{
  opacity:.42;
  cursor:not-allowed;
}

.bce-nav-item__icon{
  width:36px;
  height:36px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:var(--soft-bg-2);
  border:1px solid var(--line);
  color:var(--gold);
  font-size:13px;
  font-weight:900;
  flex:0 0 auto;
}

.bce-nav-item__label{
  font-size:14px;
  font-weight:800;
  color:var(--text);
}

body.bce-admin-body.is-sidebar-collapsed .bce-nav-item,
body.bce-admin-body.is-sidebar-collapsed .bce-theme-toggle,
body.bce-admin-body.is-sidebar-collapsed .bce-logout{
  justify-content:center;
  padding-left:0;
  padding-right:0;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-nav-item,
body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-theme-toggle,
body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-logout{
  justify-content:flex-start;
  padding-left:14px;
  padding-right:14px;
}

body.bce-admin-body.is-sidebar-collapsed .bce-nav-item--parent{
  padding-left:0;
  padding-right:0;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-nav-item--parent{
  padding-left:14px;
  padding-right:14px;
}

body.bce-admin-body.is-sidebar-collapsed .bce-nav-item--parent .bce-nav-item__toggle{
  justify-content:center;
  gap:0;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-nav-item--parent .bce-nav-item__toggle{
  justify-content:flex-start;
  gap:12px;
}

body.bce-admin-body.is-sidebar-collapsed .bce-nav-item__label{
  display:none;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-nav-item__label{
  display:inline;
}

body.bce-admin-body.is-sidebar-collapsed .bce-nav-item__chevron{
  display:none;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-nav-item__chevron{
  display:inline-flex;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar-group .bce-sidebar-children{
  display:none;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar-group.is-open .bce-sidebar-children{
  display:none;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar-group.is-open .bce-sidebar-children{
  display:grid;
}

body.bce-admin-body.is-sidebar-collapsed .bce-sidebar__nav{
  overflow:visible;
  padding-right:0;
}

body.bce-admin-body.is-sidebar-collapsed.is-sidebar-hover-open .bce-sidebar__nav{
  overflow:auto;
  padding-right:4px;
}

/* Dashboard */

.bce-dash{
  max-width:1400px;
  margin:0 auto;
}

.bce-dash__hero{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  margin-bottom:24px;
}

.bce-dash__hero-left{
  display:flex;
  gap:16px;
  align-items:flex-start;
}

.bce-dash__hero-mark{
  width:52px;
  height:52px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:linear-gradient(180deg, color-mix(in srgb, var(--gold) 22%, transparent), color-mix(in srgb, var(--gold-3) 18%, transparent));
  border:1px solid color-mix(in srgb, var(--gold) 22%, transparent);
  color:var(--gold);
  font-size:22px;
  font-weight:900;
  flex:0 0 auto;
}

.bce-dash__eyebrow{
  color:var(--gold);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  margin:0 0 10px;
  text-transform:uppercase;
}

.bce-dash__title{
  margin:0;
  font-size:clamp(34px, 4vw, 52px);
  line-height:1.02;
  letter-spacing:-.03em;
  font-weight:900;
  color:var(--text);
}

.bce-dash__subtitle{
  max-width:760px;
  margin:14px 0 0;
  font-size:17px;
  line-height:1.7;
  color:var(--muted);
}

.bce-dash__userbox{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  backdrop-filter:blur(12px);
}

.bce-dash__user-name{
  font-size:14px;
  font-weight:900;
  color:var(--text);
}

.bce-dash__user-role{
  font-size:12px;
  color:var(--muted-2);
  text-transform:uppercase;
  letter-spacing:.08em;
}

.bce-dash__logout{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:var(--soft-bg);
  color:var(--text);
  text-decoration:none;
  font-weight:800;
  transition:transform .22s ease, border-color .22s ease, background .22s ease;
}

.bce-dash__logout:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
  background:rgba(255,255,255,.06);
}

.bce-dash__activity-bell{
  position:relative;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--card);
  color:var(--text);
  text-decoration:none;
  font-size:18px;
  flex:0 0 auto;
}

.bce-dash__activity-bell-badge{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:22px;
  height:22px;
  padding:0 6px;
  border-radius:999px;
  background:var(--danger);
  color:#fff;
  font-size:11px;
  font-weight:900;
  display:grid;
  place-items:center;
  box-shadow:0 10px 18px rgba(0,0,0,.22);
}

.bce-activity-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:18px;
}

.bce-activity-stat,
.bce-activity-filters,
.bce-activity-empty,
.bce-activity-item{
  border:1px solid var(--line);
  background:var(--card);
  border-radius:22px;
}

.bce-activity-stat{
  padding:18px 20px;
  display:grid;
  gap:8px;
}

.bce-activity-stat__label{
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted-2);
}

.bce-activity-stat strong{
  font-size:34px;
  line-height:1;
  color:var(--text);
}

.bce-activity-stat small{
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.bce-activity-filters{
  padding:18px;
  margin-bottom:18px;
}

.bce-activity-filters__grid{
  display:grid;
  grid-template-columns:1.1fr 1fr 1.6fr auto;
  gap:14px;
}

.bce-activity-field{
  display:grid;
  gap:8px;
}

.bce-activity-field label{
  font-size:12px;
  font-weight:800;
  color:var(--muted-2);
  text-transform:uppercase;
  letter-spacing:.08em;
}

.bce-activity-field input,
.bce-activity-field select{
  width:100%;
  border-radius:14px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  padding:13px 14px;
  font:inherit;
}

.bce-activity-field--check{
  align-content:end;
}

.bce-activity-field--check label{
  text-transform:none;
  letter-spacing:0;
  font-size:14px;
  color:var(--text);
}

.bce-activity-filters__actions{
  display:flex;
  gap:10px;
  margin-top:14px;
}

.bce-activity-feed{
  display:grid;
  gap:22px;
}

.bce-activity-day{
  display:grid;
  gap:12px;
}

.bce-activity-day__label{
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gold);
}

.bce-activity-list{
  display:grid;
  gap:12px;
}

.bce-activity-item{
  padding:18px 20px;
  display:grid;
  gap:14px;
}

.bce-activity-item.is-error{
  border-color:color-mix(in srgb, var(--danger) 50%, var(--line));
}

.bce-activity-item.is-warning{
  border-color:color-mix(in srgb, var(--gold) 40%, var(--line));
}

.bce-activity-item.is-success{
  border-color:color-mix(in srgb, #22c55e 34%, var(--line));
}

.bce-activity-item__meta{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.bce-activity-item__module,
.bce-activity-item__status{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:800;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--muted);
}

.bce-activity-item__status.is-success{
  color:#8ff0b5;
}

.bce-activity-item__status.is-warning{
  color:#f7d774;
}

.bce-activity-item__status.is-error{
  color:#ff8e8e;
}

.bce-activity-item__time{
  color:var(--muted-2);
  font-size:13px;
}

.bce-activity-item__body{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.bce-activity-item h3{
  margin:0 0 6px;
  font-size:20px;
  line-height:1.2;
  color:var(--text);
}

.bce-activity-item p{
  margin:0;
  color:var(--muted);
  line-height:1.6;
}

.bce-activity-empty{
  padding:24px;
}

.bce-activity-empty strong{
  display:block;
  margin-bottom:8px;
  color:var(--text);
  font-size:18px;
}

.bce-activity-empty p{
  margin:0;
  color:var(--muted);
  line-height:1.6;
}

.bce-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  margin-bottom:22px;
}

.bce-metric-card,
.bce-panel{
  background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom));
  border:1px solid var(--line);
  border-radius:26px;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}

.bce-metric-card{
  padding:22px;
}

.bce-metric-card:hover,
.bce-panel:hover{
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
  box-shadow:
    0 22px 50px rgba(0,0,0,.28),
    0 0 0 1px color-mix(in srgb, var(--gold) 15%, transparent),
    0 0 25px color-mix(in srgb, var(--gold) 12%, transparent);
}

.bce-metric-card__label{
  margin:0 0 14px;
  color:var(--muted-2);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.bce-metric-card__value{
  margin:0 0 10px;
  color:var(--text);
  font-size:34px;
  line-height:1.05;
  font-weight:900;
}

.bce-metric-card__note{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.7;
}

.bce-dash-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:22px;
  margin-bottom:22px;
}

.bce-panel{
  padding:24px;
}

.bce-panel__head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}

.bce-panel__title{
  margin:0;
  color:var(--text);
  font-size:36px;
  line-height:1.02;
  letter-spacing:-.03em;
}

.bce-panel__subtitle{
  margin:10px 0 0;
  color:var(--muted);
  font-size:15px;
  line-height:1.7;
}

.bce-stack{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.bce-list-card,
.bce-event-card{
  padding:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:var(--card-bg);
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:14px;
  align-items:center;
}

.bce-badge{
  min-width:46px;
  height:36px;
  padding:0 12px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--soft-bg-2);
  color:var(--text);
  border:1px solid rgba(255,255,255,.08);
  font-size:12px;
  font-weight:900;
}

.bce-list-card__title{
  margin:0;
  font-size:15px;
  font-weight:800;
  color:var(--text);
  line-height:1.35;
}

.bce-list-card__meta{
  margin-top:4px;
  font-size:13px;
  color:var(--muted);
  line-height:1.5;
}

.bce-list-card__aside{
  display:flex;
  align-items:center;
  gap:10px;
}

.bce-list-card__date{
  font-size:13px;
  color:var(--muted);
  text-align:right;
  line-height:1.45;
}

.bce-btn{
  min-height:46px;
  padding:0 18px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:14px;
  font-weight:800;
  transition:transform .22s ease, border-color .22s ease, background .22s ease;
}

.bce-btn:hover{
  transform:translateY(-2px);
}

.bce-btn--soft{
  border:1px solid rgba(255,255,255,.08);
  background:var(--soft-bg);
  color:var(--text);
}

.bce-btn--gold{
  border:1px solid rgba(208,178,138,.24);
  background:linear-gradient(180deg, rgba(208,178,138,.16), rgba(143,107,67,.12));
  color:var(--text);
}

.bce-event-link{
  text-decoration:none;
  color:inherit;
}

.bce-event-card{
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}

.bce-event-card:hover{
  transform:translateY(-4px);
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
  box-shadow:0 16px 36px rgba(0,0,0,.24);
}

.bce-event-card.is-pending{
  box-shadow:inset 4px 0 0 #d84d4d;
}

.bce-event-card.is-paid{
  box-shadow:inset 4px 0 0 #2fb46f;
}

.bce-event-card__amount{
  font-size:16px;
  font-weight:900;
  text-align:right;
  color:var(--text);
}

.bce-event-card__amount small{
  display:block;
  margin-top:4px;
  font-size:12px;
  color:var(--muted);
  font-weight:700;
}

.bce-status-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.bce-status-card{
  padding:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:var(--card-bg);
}

.bce-status-card h3{
  margin:0 0 8px;
  color:var(--muted-2);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.10em;
}

.bce-status-card p{
  margin:0;
  color:var(--text);
  font-size:28px;
  font-weight:900;
}

.bce-channel-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:16px;
}

.bce-channel-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:var(--card-bg);
}

.bce-channel-row span{
  font-size:14px;
  color:var(--muted);
}

.bce-channel-row strong{
  color:var(--text);
  font-size:15px;
}

.bce-empty{
  padding:18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:var(--card-bg);
  color:var(--muted);
  font-size:14px;
}

/* Responsive */

@media (max-width: 1180px){
  .bce-metrics,
  .bce-dash-grid{
    grid-template-columns:1fr;
  }

  .bce-panel__title{
    font-size:28px;
  }
}

@media (max-width: 900px){
  body.bce-admin-body.is-sidebar-collapsed .bce-admin-shell{
    grid-template-columns:minmax(0,1fr);
  }

  .bce-admin-shell{
    grid-template-columns:minmax(0,1fr);
  }

  .bce-sidebar-mobile-toggle{
    position:fixed;
    left:14px;
    top:14px;
    z-index:65;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    border-radius:16px;
    border:1px solid var(--line);
    background:var(--sidebar-bg);
    color:var(--text);
    box-shadow:0 10px 32px rgba(0,0,0,.28);
    backdrop-filter:none;
    font-size:18px;
    cursor:pointer;
  }

  .bce-sidebar-backdrop{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.58);
    backdrop-filter:none;
    z-index:54;
  }

  .bce-sidebar-backdrop.is-open{
    display:block;
  }

  .bce-sidebar{
    position:fixed;
    left:0;
    top:0;
    width:min(320px, calc(100vw - 36px));
    max-width:320px;
    height:100dvh;
    transform:translateX(-104%);
    transition:transform .24s ease;
    padding:14px 14px 18px;
    border-right:1px solid var(--line);
    border-radius:0 24px 24px 0;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
    background:rgba(12,12,13,.96);
    z-index:60;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
  }

  .bce-sidebar__collapse{
    display:none;
  }

  .bce-sidebar.is-open{
    transform:translateX(0);
  }

  .bce-nav-item,
  .bce-theme-toggle,
  .bce-logout,
  .bce-sidebar__collapse{
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }

  .bce-sidebar__mobile-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }

  .bce-sidebar__top{
    min-height:auto;
  }

  .bce-sidebar__nav{
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
    padding-bottom:12px;
  }

  .bce-sidebar__mobile-close{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border-radius:14px;
    border:1px solid var(--line);
    background:var(--soft-bg);
    color:var(--text);
    cursor:pointer;
    font-size:20px;
  }

  .bce-sidebar__brand{
    padding-right:0;
  }

  .bce-sidebar__top > .bce-sidebar__brand{
    display:none;
  }

  .bce-sidebar__brand-text,
  .bce-nav-item__label{
    display:block;
  }

  .bce-nav-item,
  .bce-theme-toggle,
  .bce-logout{
    justify-content:flex-start;
    padding:0 14px;
  }

  .bce-admin-main{
    padding:76px 14px 24px;
  }
}

@media (max-width: 760px){
  .bce-dash__hero{
    flex-direction:column;
    align-items:flex-start;
  }

  .bce-activity-stats,
  .bce-activity-filters__grid{
    grid-template-columns:1fr;
  }

  .bce-activity-item__body{
    flex-direction:column;
  }

  .bce-panel__head{
    flex-direction:column;
    align-items:flex-start;
  }

  .bce-list-card,
  .bce-event-card{
    grid-template-columns:1fr;
  }

  .bce-list-card__aside{
    flex-direction:column;
    align-items:flex-start;
  }

  .bce-list-card__date,
  .bce-event-card__amount{
    text-align:left;
  }

  .bce-status-grid{
    grid-template-columns:1fr;
  }

  .bce-panel__title{
    font-size:24px;
  }

  .bce-dash__title{
    font-size:38px;
  }

  .bce-dash__subtitle{
    font-size:16px;
  }
}


html[data-theme="light"] .bce-sidebar__brand-text strong,
html[data-theme="light"] .bce-nav-item__label,
html[data-theme="light"] .bce-theme-toggle,
html[data-theme="light"] .bce-logout,
html[data-theme="light"] .bce-dash__title,
html[data-theme="light"] .bce-panel__title,
html[data-theme="light"] .bce-metric-card__value,
html[data-theme="light"] .bce-list-card__title,
html[data-theme="light"] .bce-status-card p,
html[data-theme="light"] .bce-channel-row strong,
html[data-theme="light"] .bce-event-card__amount,
html[data-theme="light"] .bce-dash__user-name{
  color:var(--text);
}

html[data-theme="light"] .bce-dash__subtitle,
html[data-theme="light"] .bce-panel__subtitle,
html[data-theme="light"] .bce-metric-card__note,
html[data-theme="light"] .bce-list-card__meta,
html[data-theme="light"] .bce-list-card__date,
html[data-theme="light"] .bce-status-card h3,
html[data-theme="light"] .bce-channel-row span,
html[data-theme="light"] .bce-dash__user-role,
html[data-theme="light"] .bce-empty{
  color:var(--muted);
}

html[data-theme="light"] .bce-dash__userbox,
html[data-theme="light"] .bce-dash__logout,
html[data-theme="light"] .bce-btn--soft{
  background:rgba(255,255,255,.72);
}

/* =========================
   BCE SERVICES
   ========================= */

.bce-service-card{
  padding:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:#0d0d0d;
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:16px;
  align-items:stretch;
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}

html[data-theme="light"] .bce-service-card{
  background:#ffffff;
  border-color:rgba(17,17,17,.08);
}

.bce-service-card:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
  box-shadow:0 16px 36px rgba(0,0,0,.20);
}

.bce-service-card.is-active{ box-shadow:inset 4px 0 0 #2fb46f; }
.bce-service-card.is-inactive{ box-shadow:inset 4px 0 0 #d84d4d; }

.bce-service-card__left{ min-width:0; display:flex; flex-direction:column; gap:8px; }
.bce-service-card__right{ display:flex; flex-direction:column; justify-content:space-between; gap:14px; padding-left:10px; }

.bce-service-form-panel{ overflow:visible; }
.bce-service-form-panel .alert{ margin-bottom:16px; padding:14px 16px; border-radius:16px; }
.bce-service-form-panel .alert.danger{ background:rgba(216,77,77,.12); border:1px solid rgba(216,77,77,.20); color:#ffb4b4; }

#serviceForm{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#serviceForm .full{ grid-column:1 / -1; }
#serviceForm label{ display:block; margin:0 0 8px; color:var(--muted); font-size:13px; font-weight:800; letter-spacing:.03em; }
#serviceForm input:not([type="checkbox"]):not([type="file"]),
#serviceForm textarea,
#serviceForm select,
#serviceForm .input{
  width:100%; min-height:48px; border-radius:16px; border:1px solid rgba(255,255,255,.08);
  background:#0d0d0d; color:var(--text); padding:12px 16px; font:inherit; outline:none;
}
#serviceForm textarea{ min-height:110px; resize:vertical; }
html[data-theme="light"] #serviceForm input:not([type="checkbox"]):not([type="file"]),
html[data-theme="light"] #serviceForm textarea,
html[data-theme="light"] #serviceForm select,
html[data-theme="light"] #serviceForm .input{ background:#ffffff; border-color:rgba(17,17,17,.08); }
#serviceForm input:focus, #serviceForm textarea:focus, #serviceForm select:focus, #serviceForm .input:focus{
  border-color:color-mix(in srgb, var(--gold) 26%, transparent); box-shadow:0 0 0 3px color-mix(in srgb, var(--gold) 12%, transparent);
}
#serviceForm input[type="file"]{ width:100%; padding:12px 0; color:var(--muted); font:inherit; }
#serviceForm .checks{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
#serviceForm .check{ display:flex; align-items:flex-start; gap:12px; padding:14px; border-radius:18px; border:1px solid rgba(255,255,255,.08); background:#0d0d0d; }
html[data-theme="light"] #serviceForm .check{ background:#ffffff; border-color:rgba(17,17,17,.08); }
#serviceForm .check input[type="checkbox"]{ width:auto; margin-top:2px; }
#serviceForm .muted{ color:var(--muted); }
#serviceForm .small{ font-size:12px; }
#serviceForm .sep{ border:none; border-top:1px solid rgba(255,255,255,.08); margin:8px 0 14px; }
html[data-theme="light"] #serviceForm .sep{ border-top-color:rgba(17,17,17,.08); }
#serviceForm h3{ color:var(--text); font-size:24px; line-height:1.1; }
#serviceForm .thumbs{ display:flex; flex-wrap:wrap; gap:12px; }
#serviceForm .thumbwrap{ display:flex; flex-direction:column; align-items:flex-start; }
#serviceForm .thumb{ width:120px; height:120px; border-radius:18px; overflow:hidden; border:1px solid rgba(255,255,255,.08); background:#0d0d0d; display:block; }
html[data-theme="light"] #serviceForm .thumb{ background:#fff; border-color:rgba(17,17,17,.08); }
#serviceForm .thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
#serviceForm .variant-table{ display:flex; flex-direction:column; gap:12px; }
#serviceForm .variant-head, #serviceForm .variant-row{ display:grid; grid-template-columns:1.3fr .9fr .8fr .8fr .6fr 2fr; gap:10px; align-items:start; }
#serviceForm .variant-head{ padding:0 6px; color:var(--muted-2); font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
#serviceForm .variant-row{ padding:14px; border-radius:18px; border:1px solid rgba(255,255,255,.08); background:#0d0d0d; }
html[data-theme="light"] #serviceForm .variant-row{ background:#ffffff; border-color:rgba(17,17,17,.08); }
#serviceForm .variant-row.extra-row{ grid-template-columns:2fr 1fr 1fr 1fr .7fr !important; }
#serviceForm .tr{ text-align:center; }
#serviceForm .btn{ min-height:44px; padding:0 16px; border-radius:14px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; font-size:14px; font-weight:800; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.04); color:var(--text); cursor:pointer; }
#serviceForm .btn:hover{ transform:translateY(-2px); }
#serviceForm .btn.primary{ border-color:rgba(208,178,138,.24); background:linear-gradient(180deg, rgba(208,178,138,.16), rgba(143,107,67,.12)); }
#serviceForm .btn.secondary, #serviceForm .btn.ghost{ background:rgba(255,255,255,.04); }
#serviceForm .btn.danger{ background:rgba(216,77,77,.12); border-color:rgba(216,77,77,.20); }
#serviceForm .btn.small{ min-height:36px; padding:0 12px; font-size:12px; }
#serviceForm .btn.tiny{ min-height:32px; padding:0 10px; font-size:12px; }
#serviceForm .item-picker{ border:1px solid rgba(255,255,255,.08); border-radius:16px; padding:10px; background:rgba(255,255,255,.03); }
html[data-theme="light"] #serviceForm .item-picker{ border-color:rgba(17,17,17,.08); background:#f8f6f2; }
#serviceForm .item-picker-head{ display:flex; gap:8px; align-items:center; justify-content:space-between; margin-bottom:8px; }
#serviceForm .item-search{position:relative}
#serviceForm .item-suggestions{ display:none; position:absolute; left:0; right:0; top:52px; z-index:50; max-height:220px; overflow:auto; border-radius:14px; border:1px solid rgba(255,255,255,.10); background:rgba(10,10,10,.98); box-shadow:0 10px 30px rgba(0,0,0,.35); }
html[data-theme="light"] #serviceForm .item-suggestions{ background:#ffffff; border-color:rgba(17,17,17,.08); }
#serviceForm .item-suggestions.show{display:block}
#serviceForm .item-sug-row{ display:flex; justify-content:space-between; gap:12px; align-items:center; padding:10px 12px; cursor:pointer; }
#serviceForm .item-sug-row:hover{background:rgba(255,255,255,.06)}
#serviceForm .item-sug-name{font-size:13px;color:var(--text)}
#serviceForm .item-sug-tag{font-size:12px;color:var(--muted)}
#serviceForm .item-selected{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
#serviceForm .chip{ display:inline-flex; gap:8px; align-items:center; padding:6px 10px; border-radius:999px; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.03); color:var(--text); }
#serviceForm .chip-x{ border:0; background:transparent; color:var(--muted); cursor:pointer; font-size:16px; line-height:1; padding:0 2px; }
#serviceForm .chip-x:hover{color:var(--text)}
#serviceForm .item-picker-add{ display:flex; gap:8px; margin-top:10px; }

@media (max-width: 1180px){
  .bce-service-card{ grid-template-columns:1fr; }
  .bce-service-card__right{ padding-left:0; }
  #serviceForm .variant-head, #serviceForm .variant-row{ grid-template-columns:1fr 1fr; }
  #serviceForm .variant-row.extra-row{ grid-template-columns:1fr 1fr !important; }
}
@media (max-width: 900px){
  #serviceForm .checks, #serviceForm .item-picker-add{ grid-template-columns:1fr; }
  #serviceForm{ grid-template-columns:1fr; }
  #serviceForm .variant-head{ display:none; }
  #serviceForm .variant-row, #serviceForm .variant-row.extra-row{ grid-template-columns:1fr !important; }
}



/* =========================
   BCE SERVICES SEARCH
   ========================= */

.bce-bookings-filters{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}

.bce-bookings-filters .bce-input{
  width:100%;
  min-height:52px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  padding:0 18px;
  font:inherit;
  font-size:15px;
  font-weight:700;
  outline:none;
  box-shadow:none;
}

.bce-bookings-filters .bce-input::placeholder{
  color:var(--muted);
  opacity:1;
}

.bce-bookings-filters .bce-input:focus{
  border-color:color-mix(in srgb, var(--gold) 28%, transparent);
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--gold) 14%, transparent),
    0 0 0 5px color-mix(in srgb, var(--gold) 10%, transparent);
  background:var(--soft-bg-2);
}

.bce-bookings-filters .bce-btn{
  min-width:140px;
}

html[data-theme="light"] .bce-bookings-filters .bce-input{
  background:#ffffff;
}

@media (max-width: 760px){
  .bce-bookings-filters{
    grid-template-columns:1fr;
  }

  .bce-bookings-filters .bce-btn{
    width:100%;
  }
}

/* =========================
   BCE SERVICES LIST V2
   ========================= */

.bce-service-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
}

.bce-service-tile{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  min-height:100%;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom));
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}

.bce-service-tile:hover{
  transform:translateY(-4px);
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
  box-shadow:
    0 22px 50px rgba(0,0,0,.28),
    0 0 0 1px color-mix(in srgb, var(--gold) 15%, transparent),
    0 0 25px color-mix(in srgb, var(--gold) 12%, transparent);
}

.bce-service-tile__media{
  display:block;
  aspect-ratio:16/9.6;
  background:var(--card-bg);
  overflow:hidden;
}

.bce-service-tile__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.bce-service-tile__placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  font-size:46px;
  font-weight:900;
  letter-spacing:-.03em;
  color:var(--gold);
  background:
    radial-gradient(circle at 20% 18%, color-mix(in srgb, var(--gold) 14%, transparent), transparent 30%),
    linear-gradient(180deg, color-mix(in srgb, var(--gold) 10%, transparent), transparent 70%),
    var(--card-bg);
}

.bce-service-tile__body,
.bce-service-tile__content{
  padding:18px 18px 14px;
  display:flex;
  flex-direction:column;
  gap:14px;
  flex:1;
  min-height:0;
}

.bce-service-tile__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.bce-service-state{
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  border:1px solid var(--line);
  white-space:nowrap;
  flex:0 0 auto;
}

.bce-service-state.is-on{
  background:rgba(47,180,111,.12);
  color:#7be0a4;
  border-color:rgba(47,180,111,.20);
}

.bce-service-state.is-off{
  background:rgba(216,77,77,.12);
  color:#ff9c9c;
  border-color:rgba(216,77,77,.20);
}

.bce-service-tile__title{
  margin:0;
  color:var(--text);
  font-size:24px;
  line-height:1.06;
  letter-spacing:-.03em;
  text-wrap:balance;
}

.bce-service-tile__desc{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.72;
}

.bce-service-tile__meta{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.bce-service-stat{
  padding:13px 12px 12px;
  border-radius:16px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  min-width:0;
}

.bce-service-stat span{
  display:block;
  margin-bottom:7px;
  color:var(--muted-2);
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
  line-height:1.15;
  overflow-wrap:anywhere;
}

.bce-service-stat strong{
  color:var(--text);
  font-size:16px;
  font-weight:900;
  line-height:1.2;
  display:block;
  overflow-wrap:anywhere;
}

.bce-service-variants{
  display:grid;
  gap:8px;
  padding-top:2px;
}

.bce-service-variants__label{
  margin:0;
  color:var(--muted-2);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.2;
}

.bce-service-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-content:flex-start;
}

.bce-service-tag{
  min-height:34px;
  padding:6px 11px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  font-size:11px;
  font-weight:800;
  line-height:1.3;
  text-align:center;
  overflow-wrap:anywhere;
}

.bce-service-tag.is-empty{
  color:var(--muted);
}

.bce-service-tile__footer{
  padding:2px 18px 18px;
  display:flex;
  justify-content:flex-end;
  margin-top:auto;
}

html[data-theme="light"] .bce-service-tile__media{
  background:#f3eee7;
}

html[data-theme="light"] .bce-service-stat,
html[data-theme="light"] .bce-service-tag{
  background:#f8f4ee;
}

@media (max-width: 1280px){
  .bce-service-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 980px){
  .bce-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 760px){
  .bce-service-grid{
    grid-template-columns:1fr;
  }

  .bce-service-tile__title{
    font-size:24px;
  }

  .bce-service-tile__meta{
    grid-template-columns:1fr;
  }

  .bce-service-tile__footer{
    justify-content:stretch;
  }

  .bce-service-tile__footer .bce-btn{
    width:100%;
  }
}

/* =========================
   BCE BOOKING DETAIL
   ========================= */

.bce-btn--danger{
  border:1px solid rgba(216,77,77,.20);
  background:rgba(216,77,77,.12);
  color:#ffb4b4;
}

.bce-detail{
  max-width:1440px;
  margin:0 auto;
}

.bce-detail__hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}

.bce-detail__title{
  margin:0;
  color:var(--text);
  font-size:clamp(34px,4vw,54px);
  line-height:1.02;
  letter-spacing:-.03em;
  font-weight:900;
}

.bce-detail__subtitle{
  margin:12px 0 0;
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
}

.bce-detail__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.bce-detail__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.bce-detail__chip,
.bce-detail__status{
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  font-size:12px;
  font-weight:800;
}

.bce-detail__stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-bottom:22px;
}

.bce-detail__stat{
  padding:20px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom));
}

.bce-detail__stat-label{
  margin:0 0 10px;
  color:var(--muted-2);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.bce-detail__stat-value{
  margin:0;
  color:var(--text);
  font-size:34px;
  line-height:1.05;
  font-weight:900;
}

.bce-detail__grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:22px;
}

.bce-detail__col{
  display:flex;
  flex-direction:column;
  gap:22px;
  min-width:0;
}

.bce-detail__panel{
  padding:24px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom));
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}

.bce-detail__panel-title{
  margin:0;
  color:var(--text);
  font-size:28px;
  line-height:1.04;
  letter-spacing:-.03em;
  font-weight:900;
}

.bce-detail__panel-note{
  margin:10px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:1.7;
}

.bce-detail-form{
  display:grid;
  gap:14px;
  margin-top:16px;
}

.bce-detail-form__split-2,
.bce-detail-form__split-3,
.bce-detail-form__split-4{
  display:grid;
  gap:12px;
}

.bce-detail-form__split-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.bce-detail-form__split-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.bce-detail-form__split-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }

.bce-detail-field{
  display:grid;
  gap:8px;
}

.bce-detail-field label{
  color:var(--muted);
  font-size:13px;
  font-weight:800;
  letter-spacing:.03em;
}

.bce-detail-field input,
.bce-detail-field select,
.bce-detail-field textarea,
.bce-detail-inline input,
.bce-detail-inline select,
.bce-detail-inline textarea{
  width:100%;
  min-height:48px;
  border-radius:16px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  padding:12px 16px;
  font:inherit;
  outline:none;
}

.bce-detail-field textarea,
.bce-detail-inline textarea{
  min-height:110px;
  resize:vertical;
}

.bce-detail-field input:focus,
.bce-detail-field select:focus,
.bce-detail-field textarea:focus,
.bce-detail-inline input:focus,
.bce-detail-inline select:focus,
.bce-detail-inline textarea:focus{
  border-color:color-mix(in srgb, var(--gold) 28%, transparent);
  box-shadow:0 0 0 1px color-mix(in srgb, var(--gold) 14%, transparent),0 0 0 5px color-mix(in srgb, var(--gold) 10%, transparent);
  background:var(--soft-bg-2);
}

.bce-detail-field input[disabled],
.bce-detail-inline input[disabled]{
  opacity:.95;
}

.bce-detail-hint{
  padding:12px 14px;
  border-radius:16px;
  border:1px dashed color-mix(in srgb, var(--gold) 16%, transparent);
  background:var(--soft-bg);
  color:var(--muted);
  font-size:12px;
  line-height:1.7;
}

.bce-detail-kv{
  display:grid;
  grid-template-columns:170px 1fr;
  gap:10px 14px;
  margin-top:14px;
}

.bce-detail-kv .k{
  color:var(--muted);
  font-size:12px;
}

.bce-detail-kv .v{
  color:var(--text);
  font-size:15px;
  font-weight:700;
}

.bce-detail-inline{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.bce-detail-item-card{
  padding:16px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--card-bg);
  margin-top:14px;
}

.bce-detail-item-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.bce-detail-item-card__title{
  margin:0;
  color:var(--text);
  font-size:18px;
  font-weight:900;
}

.bce-detail-item-card__meta{
  margin-top:6px;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}

.bce-detail-table{
  width:100%;
  border-collapse:collapse;
  margin-top:14px;
}

.bce-detail-table th,
.bce-detail-table td{
  padding:10px 8px;
  border-bottom:1px solid var(--line);
  text-align:left;
  vertical-align:top;
}

.bce-detail-table th{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.bce-detail-right{
  text-align:right;
}

.bce-detail-signature{
  margin-top:14px;
  padding:14px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
}

.bce-detail-signature img{
  max-width:100%;
  display:block;
  border-radius:14px;
  background:#fff;
}

.bce-detail-thumb{
  width:84px;
  height:84px;
  object-fit:cover;
  border-radius:14px;
  border:1px solid var(--line);
  background:#111;
}

.bce-detail-actions-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.bce-detail-builder{
  padding:16px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--card-bg);
  margin-top:14px;
}

.bce-detail-extras{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:10px;
}

.bce-detail-extra{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--soft-bg);
}

.bce-detail-extra input{
  width:auto;
  margin-top:2px;
}

.bce-detail-mini{
  color:var(--muted);
  font-size:12px;
  line-height:1.6;
}

.bce-detail-total-box{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.bce-detail-money-box{
  padding:14px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
}

.bce-detail-money-box span{
  display:block;
  margin-bottom:6px;
  color:var(--muted-2);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.bce-detail-money-box strong{
  color:var(--text);
  font-size:20px;
  font-weight:900;
}

@media (max-width: 1180px){
  .bce-detail__stats,
  .bce-detail__grid,
  .bce-detail-total-box{
    grid-template-columns:1fr;
  }
}

@media (max-width: 900px){
  .bce-detail-form__split-2,
  .bce-detail-form__split-3,
  .bce-detail-form__split-4,
  .bce-detail-kv{
    grid-template-columns:1fr;
  }
}

/* Links dentro de BCE */
.bce-dash a {
  color: #e5e7eb; /* gris claro, consistente con UI */
  text-decoration: none;
  transition: color .2s ease;
}

.bce-dash a:hover {
  color: #c8a95b; /* dorado Stellar */
}

.bce-dash a:visited {
  color: #e5e7eb; /* evita morado */
}

.bce-dash a:active {
  color: #c8a95b;
}

/* =========================
   BCE BOOKING DETAIL TWEAKS
   ========================= */

.bce-detail-wrap{
  max-width: 1440px;
  margin: 0 auto;
}

.bce-detail-hero{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}

.bce-detail-hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.bce-detail-summary{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}

.bce-detail-chip{
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  font-size:12px;
  font-weight:800;
}

.bce-detail-chip--paid{
  background:rgba(47,180,111,.12);
  color:#7be0a4;
  border-color:rgba(47,180,111,.20);
}

.bce-detail-chip--pending{
  background:rgba(216,77,77,.12);
  color:#ffb4b4;
  border-color:rgba(216,77,77,.20);
}

.bce-detail-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-bottom:22px;
}

.bce-detail-stat{
  padding:20px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom));
}

.bce-detail-stat__label{
  margin:0 0 10px;
  color:var(--muted-2);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.bce-detail-stat__value{
  margin:0;
  color:var(--text);
  font-size:34px;
  line-height:1.05;
  font-weight:900;
}

.bce-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:22px;
}

.bce-detail-col{
  display:flex;
  flex-direction:column;
  gap:22px;
  min-width:0;
}

.bce-detail-section{
  padding:24px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom));
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}

.bce-detail-section--paid{ box-shadow: inset 4px 0 0 #2fb46f, 0 8px 24px rgba(0,0,0,.18); }
.bce-detail-section--pending{ box-shadow: inset 4px 0 0 #d84d4d, 0 8px 24px rgba(0,0,0,.18); }

.bce-detail-section__head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}

.bce-detail-title{
  margin:0;
  color:var(--text);
  font-size:36px;
  line-height:1.02;
  letter-spacing:-.03em;
}

.bce-detail-subtitle{
  margin:10px 0 0;
  color:var(--muted);
  font-size:15px;
  line-height:1.7;
}

.bce-detail-form{
  display:grid;
  gap:14px;
}

.bce-detail-grid-2,.bce-detail-grid-3,.bce-detail-grid-4{ display:grid; gap:12px; }
.bce-detail-grid-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.bce-detail-grid-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.bce-detail-grid-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }

.bce-detail-form label{
  display:block;
  margin:0 0 8px;
  color:var(--muted);
  font-size:13px;
  font-weight:800;
  letter-spacing:.03em;
}

.bce-detail-form input:not([type="checkbox"]):not([type="file"]),
.bce-detail-form textarea,
.bce-detail-form select,
.bce-detail-form .input{
  width:100%;
  min-height:52px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  padding:12px 16px;
  font:inherit;
  outline:none;
}

.bce-detail-form textarea{ min-height:110px; resize:vertical; }

.bce-detail-form input:focus,
.bce-detail-form textarea:focus,
.bce-detail-form select:focus,
.bce-detail-form .input:focus{
  border-color:color-mix(in srgb, var(--gold) 26%, transparent);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--gold) 12%, transparent);
  background:var(--soft-bg-2);
}

.bce-detail-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.bce-detail-hint{
  padding:12px 14px;
  border-radius:16px;
  border:1px dashed color-mix(in srgb, var(--gold) 16%, transparent);
  background:var(--soft-bg);
  color:var(--muted);
  font-size:12px;
  line-height:1.7;
}

.bce-detail-kv{
  display:grid;
  grid-template-columns:170px 1fr;
  gap:10px 14px;
  margin-top:14px;
}
.bce-detail-kv .k{ color:var(--muted); font-size:12px; }
.bce-detail-kv .v{ color:var(--text); font-size:15px; font-weight:700; }

.bce-detail-inline-delete--compact{
  margin:0;
  display:inline-flex;
  align-items:center;
}

.bce-detail-inline-delete--compact .bce-btn{
  min-height:44px;
}

.bce-detail-table{
  width:100%;
  border-collapse:collapse;
  margin-top:14px;
  table-layout:fixed;
}

.bce-detail-table th, .bce-detail-table td{
  padding:14px 8px;
  border-bottom:1px solid var(--line);
  text-align:left;
  vertical-align:middle;
}

.bce-detail-table th{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.bce-detail-table td.right{ text-align:right; }

.bce-detail-doc-link a{
  color:var(--text);
  text-decoration:underline;
  text-underline-offset:3px;
  word-break:break-word;
}

.bce-detail-doc-link a:visited,
.bce-detail-doc-link a:hover,
.bce-detail-doc-link a:active{
  color:var(--text);
}

.bce-detail-file-input{
  width:100%;
  min-height:52px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--muted);
  padding:10px 12px;
  font:inherit;
  overflow:hidden;
}

.bce-detail-file-input::file-selector-button{
  margin-right:12px;
  min-height:36px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:var(--soft-bg-2);
  color:var(--text);
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

.bce-detail-file-input:hover::file-selector-button{
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
}

.bce-detail-footer-note{
  color:var(--muted);
  font-size:12px;
  line-height:1.6;
}

html[data-theme="light"] .bce-detail-form input:not([type="checkbox"]):not([type="file"]),
html[data-theme="light"] .bce-detail-form textarea,
html[data-theme="light"] .bce-detail-form select,
html[data-theme="light"] .bce-detail-file-input{
  background:#ffffff;
  border-color:rgba(17,17,17,.08);
}

@media (max-width:1180px){
  .bce-detail-stats,.bce-detail-grid{ grid-template-columns:1fr; }
}

@media (max-width:900px){
  .bce-detail-grid-2,.bce-detail-grid-3,.bce-detail-grid-4,.bce-detail-kv{ grid-template-columns:1fr; }
}


/* Booking detail pricing + service money refinements */
.bce-detail-money{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.bce-detail-money--service{
  grid-template-columns:minmax(220px, 320px) minmax(0,1fr);
  align-items:stretch;
}

.bce-detail-money--pricing{
  grid-template-columns:repeat(5, minmax(0,1fr));
}

.bce-detail-money__card{
  min-height:118px;
  padding:18px 20px;
  border-radius:22px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, var(--panel-grad-top), var(--panel-grad-bottom));
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:10px;
  box-shadow:0 8px 24px rgba(0,0,0,.14);
}

.bce-detail-money__card span{
  display:block;
  color:var(--muted-2);
  font-size:12px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.bce-detail-money__card strong{
  display:block;
  color:var(--text);
  font-size:20px;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.02em;
}

.bce-detail-money__card--price strong{
  font-size:22px;
}

.bce-detail-money__card--action{
  align-items:flex-end;
  justify-content:flex-end;
}

.bce-detail-money__card--action .bce-btn{
  width:100%;
}

.bce-detail-hint--inline{
  min-height:118px;
  display:flex;
  align-items:center;
  margin:0;
}

.bce-detail-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:4px 6px 0 0;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  font-size:12px;
  font-weight:700;
}

@media (max-width: 1180px){
  .bce-detail-money--pricing{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}

@media (max-width: 900px){
  .bce-detail-money--service,
  .bce-detail-money--pricing{
    grid-template-columns:1fr;
  }

  .bce-detail-money__card,
  .bce-detail-hint--inline{
    min-height:auto;
  }
}

/* BCE BOOKINGS CARDS REFINED */
.bce-bookings-shell{max-width:1440px;margin:0 auto;}
.bce-bookings-list{display:flex;flex-direction:column;gap:20px;}

.bce-booking-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:22px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:28px;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--gold) 10%, transparent), transparent 28%),
    linear-gradient(180deg,var(--panel-grad-top),var(--panel-grad-bottom));
  box-shadow:0 12px 30px rgba(0,0,0,.18);
  position:relative;
  overflow:hidden;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.bce-booking-card:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
  box-shadow:
    0 22px 50px rgba(0,0,0,.28),
    0 0 0 1px color-mix(in srgb, var(--gold) 10%, transparent);
}

.bce-booking-card.is-paid{
  box-shadow:inset 4px 0 0 #2fb46f,0 12px 30px rgba(0,0,0,.18);
}

.bce-booking-card.is-pending{
  box-shadow:inset 4px 0 0 #d84d4d,0 12px 30px rgba(0,0,0,.18);
}

.bce-booking-card__left{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.bce-booking-card__top{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  flex-wrap:wrap;
}

.bce-paid-pill{
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  font-size:12px;
  font-weight:800;
}

.bce-paid-pill.is-paid{
  background:rgba(47,180,111,.12);
  border-color:rgba(47,180,111,.20);
  color:#7be0a4;
}

.bce-paid-pill.is-due{
  background:rgba(216,77,77,.12);
  border-color:rgba(216,77,77,.20);
  color:#ffb4b4;
}

.bce-booking-card__head{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.bce-booking-card__title{
  margin:0;
  color:var(--text);
  font-size:30px;
  line-height:1.02;
  font-weight:900;
  letter-spacing:-.04em;
}

.bce-booking-card__meta{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
}

.bce-booking-card__info{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.bce-booking-card__info-block{
  padding:14px 16px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
}

.bce-booking-card__info-label{
  display:block;
  margin-bottom:8px;
  color:var(--muted-2);
  font-size:11px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.bce-booking-card__info-value{
  margin:0;
  color:var(--text);
  font-size:15px;
  font-weight:700;
  line-height:1.6;
  word-break:break-word;
}

.bce-booking-card__right{
  display:grid;
  grid-template-columns:minmax(0,1fr) 62px;
  gap:16px;
  align-items:stretch;
}

.bce-booking-card__right-main{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.bce-booking-money{
  display:grid;
  gap:10px;
}

.bce-booking-money__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
}

.bce-booking-money__row span{
  color:var(--muted-2);
  font-size:11px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.bce-booking-money__row strong{
  color:var(--text);
  font-size:20px;
  line-height:1.05;
  font-weight:900;
}

.bce-booking-money__row.is-strong{
  border-color:color-mix(in srgb, var(--gold) 18%, transparent);
  background:linear-gradient(180deg, color-mix(in srgb, var(--gold) 10%, transparent), rgba(255,255,255,.02));
}

.bce-booking-flags{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:10px;
  padding-left:16px;
  border-left:1px solid var(--line);
}

.bce-booking-flag{
  min-height:42px;
  width:100%;
  padding:0 10px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--text);
  font-size:12px;
  font-weight:900;
  text-align:center;
  white-space:nowrap;
}

.bce-booking-flag.is-ok{
  background:rgba(47,180,111,.12);
  border-color:rgba(47,180,111,.20);
  color:#7be0a4;
}

.bce-booking-flag.is-bad{
  background:rgba(216,77,77,.12);
  border-color:rgba(216,77,77,.20);
  color:#ffb4b4;
}

.bce-booking-flag.is-na{
  color:var(--muted);
}

.bce-booking-card__footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
}

.bce-booking-card__cta{
  color:var(--text);
  font-size:14px;
  font-weight:800;
  white-space:nowrap;
}

.bce-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
}

.bce-pagination__meta{
  color:var(--muted);
  font-size:14px;
  font-weight:700;
}

.bce-btn.is-disabled{
  pointer-events:none;
  opacity:.45;
}

@media (max-width:1180px){
  .bce-booking-card{grid-template-columns:1fr;}
  .bce-booking-card__right{grid-template-columns:1fr;}
  .bce-booking-flags{
    flex-direction:row;
    flex-wrap:wrap;
    padding-left:0;
    padding-top:14px;
    border-left:none;
    border-top:1px solid var(--line);
  }
}

@media (max-width:760px){
  .bce-booking-card{padding:18px;}
  .bce-booking-card__title{font-size:24px;}
  .bce-booking-card__info{grid-template-columns:1fr;}
  .bce-booking-card__footer{flex-direction:column;align-items:flex-start;}
  .bce-pagination{flex-direction:column;align-items:stretch;}
  .bce-pagination .bce-btn{width:100%;}
}


/* =========================
   BCE DETAIL SAFE FIXES
   ========================= */
/* Document links white and underlined */
.bce-detail-section#documents .bce-detail-table td a,
.bce-detail-section#documents .bce-detail-table td a:visited,
.bce-detail-section#documents .bce-detail-table td a:hover,
.bce-detail-section#documents .bce-detail-table td a:active{
  color:var(--text);
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Better file input only inside booking detail documents */
.bce-detail-section#documents input[type="file"]{
  width:100%;
  min-height:52px;
  border-radius:18px;
  border:1px solid var(--line);
  background:var(--soft-bg);
  color:var(--muted);
  padding:10px 12px;
  font:inherit;
  overflow:hidden;
}

.bce-detail-section#documents input[type="file"]::file-selector-button{
  margin-right:12px;
  min-height:36px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:var(--soft-bg-2);
  color:var(--text);
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

.bce-detail-section#documents input[type="file"]:hover::file-selector-button{
  border-color:color-mix(in srgb, var(--gold) 24%, transparent);
}

html[data-theme="light"] .bce-detail-section#documents input[type="file"]{
  background:#ffffff;
  border-color:rgba(17,17,17,.08);
}

/* Prevent ugly overflow text from file input on narrow widths */
.bce-detail-section#documents .bce-detail-grid-2 > div{
  min-width:0;
}

.bce-detail-section#documents .bce-detail-table td:last-child .bce-btn--danger{
  box-shadow:none;
  background:rgba(216,77,77,.12);
}

/* Refine booking cards right rail */
.bce-booking-card__right{
  align-items:stretch;
}

.bce-booking-card__right-main{
  justify-content:space-between;
}

.bce-booking-flags{
  align-items:center;
}

.bce-booking-flag{
  min-height:44px;
  width:100%;
  border-radius:18px;
  font-size:14px;
}


/* =========================
   BCE SUPERADMIN DASHBOARD
   ========================= */
.bce-analytics{
  display:grid;
  gap:24px;
}

.bce-analytics__hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  padding:26px 28px;
  border:1px solid var(--line);
  border-radius:28px;
  background:linear-gradient(135deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}

.bce-analytics__eyebrow{
  margin:0 0 8px;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--muted);
}

.bce-analytics__title{
  margin:0;
  font-size:34px;
  line-height:1;
}

.bce-analytics__subtitle{
  margin:10px 0 0;
  max-width:820px;
  color:var(--muted);
}

.bce-analytics__user{
  display:grid;
  gap:4px;
  min-width:240px;
  padding:14px 16px;
  border-radius:20px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
}

.bce-analytics__user span{
  color:var(--muted);
  word-break:break-word;
}

.bce-kpi-pills{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:14px;
}

.bce-kpi-pill{
  display:grid;
  gap:8px;
  padding:18px 18px 16px;
  border-radius:24px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.015));
  box-shadow:0 14px 38px rgba(0,0,0,.12);
}

.bce-kpi-pill__label{
  font-size:13px;
  color:var(--muted);
}

.bce-kpi-pill__value{
  font-size:30px;
  line-height:1.05;
}

.bce-kpi-pill__note{
  color:var(--muted);
  font-size:12px;
}

.bce-analytics-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.bce-analytics-grid--pies{
  align-items:start;
}

.bce-chart-card{
  display:grid;
  gap:16px;
  padding:22px;
  border-radius:28px;
  border:1px solid var(--line);
  background:var(--panel-bg, rgba(255,255,255,.02));
  box-shadow:0 18px 42px rgba(0,0,0,.14);
}

.bce-chart-card__head h2{
  margin:0;
  font-size:22px;
}

.bce-chart-card__head p{
  margin:6px 0 0;
  color:var(--muted);
}

.bce-chart-wrap{
  position:relative;
  min-height:340px;
}

.bce-chart-wrap--pie{
  min-height:420px;
}

html[data-theme="light"] .bce-analytics__hero,
html[data-theme="light"] .bce-kpi-pill,
html[data-theme="light"] .bce-chart-card,
html[data-theme="light"] .bce-analytics__user{
  background:#fff;
}

@media (max-width: 1320px){
  .bce-kpi-pills{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px){
  .bce-analytics__hero{
    grid-template-columns:1fr;
    display:grid;
    align-items:start;
  }

  .bce-kpi-pills,
  .bce-analytics-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 720px){
  .bce-analytics__title{
    font-size:28px;
  }

  .bce-chart-wrap{
    min-height:300px;
  }

  .bce-chart-wrap--pie{
    min-height:360px;
  }
}

/* =========================
   BCE SUPERADMIN DASHBOARD V2
   ========================= */
.bce-kpi-pills--dense{
  grid-template-columns:repeat(auto-fit, minmax(210px, 1fr));
}

.bce-kpi-pill{
  min-height:132px;
}

.bce-kpi-pill__value{
  font-size:28px;
}

.bce-chart-card{
  overflow:hidden;
}

.bce-chart-card__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.bce-chart-card__head code{
  padding:3px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  font-size:12px;
}

.bce-chart-wrap--compact{
  min-height:390px;
}

.bce-chart-wrap--donut{
  min-height:320px;
}

.bce-donut-shell{
  display:grid;
  grid-template-columns:minmax(0, 320px) minmax(0, 1fr);
  gap:18px;
  align-items:center;
}

.bce-donut-legend{
  display:grid;
  gap:10px;
}

.bce-donut-legend__item{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.025);
}

.bce-donut-legend__swatch{
  width:12px;
  height:12px;
  border-radius:999px;
  flex:0 0 auto;
  box-shadow:0 0 0 4px rgba(255,255,255,.04);
}

.bce-donut-legend__text{
  display:grid;
  gap:3px;
}

.bce-donut-legend__text strong{
  font-size:14px;
}

.bce-donut-legend__text span{
  color:var(--muted);
  font-size:12px;
}

html[data-theme="light"] .bce-chart-card__head code,
html[data-theme="light"] .bce-donut-legend__item{
  background:#f7f8fc;
}

@media (max-width: 1180px){
  .bce-donut-shell{
    grid-template-columns:1fr;
  }
}

@media (max-width: 720px){
  .bce-kpi-pills--dense{
    grid-template-columns:1fr;
  }

  .bce-chart-wrap--compact{
    min-height:340px;
  }

  .bce-chart-wrap--donut{
    min-height:280px;
  }
}
