/* Mobile navigation, calendar and owner visual parity. No booking functionality changed. */
#bbCreateSchedule{display:none!important} /* Duplicate of the primary calendar Create action. */
#member>nav.bb-nav a,#member>nav.bb-nav #bbOwnerNav a{
  text-decoration:none;
}
#member>nav.bb-nav a > svg.bb-lucide-svg,#member>nav.bb-nav #bbOwnerNav a > svg.bb-lucide-svg{
  display:inline-block;width:19px;height:19px;min-width:19px;max-width:19px;
  flex:0 0 19px;margin-right:10px;vertical-align:middle;
}
#member>nav.bb-nav a > svg.bb-real-icon:has(~svg.bb-lucide-svg),
#member>nav.bb-nav #bbOwnerNav a > svg.bb-real-icon:has(~svg.bb-lucide-svg){display:none!important}
body.bb-owner-mode #bbOwnerDashboard{
  border:1px solid #e4e1f4!important;background:#fff!important;
  border-radius:21px!important;padding:22px!important;
  box-shadow:0 12px 30px #291a610b!important;color:#23194e;
}
body.bb-owner-mode #bbOwnerDashboard>h2{
  color:#23194e;font-size:clamp(20px,2.5vw,27px);font-weight:800;
  margin:0 0 5px;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpis{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;margin:16px 0!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi{
  min-width:0!important;min-height:125px!important;gap:9px!important;
  border:1px solid #e7e5f6!important;
  border-radius:15px!important;padding:16px!important;
  background:linear-gradient(130deg,#f9f7ff,#fff)!important;
  box-shadow:none!important;color:#35237d!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>span{
  font-size:12px!important;line-height:1.3!important;
  font-weight:700!important;color:#615c7d!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>strong{
  font-size:clamp(20px,2.3vw,27px)!important;
  line-height:1.2!important;margin:0!important;color:#35237d!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>small{
  font-size:12px!important;line-height:1.3!important;color:#696784!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-upcoming{
  border:1px solid #e8e3f3;border-radius:15px;background:#fff;padding:14px;
}
@media(max-width:780px){
 #member>nav.bb-nav,#member>nav.bb-nav #bbOwnerNav{
   box-sizing:border-box!important;max-width:100%!important;
 }
 #member>nav.bb-nav>a,#member>nav.bb-nav #bbOwnerNav>a{
   display:flex;align-items:center;justify-content:flex-start;
   width:100%!important;min-width:0!important;min-height:46px!important;
   padding:11px 12px!important;border-radius:11px!important;
   font-size:14px!important;line-height:1.35!important;
   white-space:normal!important;word-break:normal!important;
   overflow-wrap:break-word!important;flex-shrink:0;
 }
 #member>nav.bb-nav #bbOwnerNav{
   display:flex;flex-direction:column;align-items:stretch;gap:3px;
 }
 #member>nav.bb-nav .bb-owner-brand img,
 #member>nav.bb-nav .bb-side-brand img{
   width:min(180px,100%)!important;height:auto!important;object-fit:contain!important;
 }
 body.bb-mobile-authenticated #member>nav.bb-nav{
   width:min(86vw,320px)!important;
   padding:calc(14px + env(safe-area-inset-top)) 12px
     calc(22px + env(safe-area-inset-bottom))!important;
   -webkit-overflow-scrolling:touch;
 }
 body.bb-owner-mode #bbOwnerDashboard{padding:15px!important;border-radius:17px!important}
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpis{
   grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi{
   min-height:106px!important;padding:10px 6px!important;
   border-radius:11px!important;gap:6px!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>span{
   font-size:clamp(10px,2.7vw,12px)!important;
   overflow-wrap:anywhere!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>strong{
   font-size:clamp(16px,4.3vw,22px)!important;overflow-wrap:anywhere!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>small{
   font-size:10px!important;overflow-wrap:anywhere!important;
 }
}
@media(max-width:650px){
 /* Month: all seven dates across in compact cells, never vertically wrapped ISO dates. */
 #member .bb-month-grid{
   display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;
   gap:3px!important;min-width:0!important;max-width:100%!important;
   padding:4px!important;
 }
 #member .bb-month-grid.bb-focused-grid:not(.bb-one-day){
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
   gap:8px!important;
 }
 #member .bb-month-grid.bb-one-day{
   grid-template-columns:minmax(0,1fr)!important;
 }
 #member .bb-month-grid .bb-month-cell{
   min-width:0!important;min-height:54px!important;
   padding:3px 1px!important;overflow:hidden!important;
   border-radius:8px!important;
 }
 #member .bb-month-grid .bb-date-trigger{
   display:block!important;width:100%!important;max-width:100%!important;
   white-space:nowrap!important;word-break:normal!important;
   overflow-wrap:normal!important;overflow:hidden!important;
   text-align:center!important;text-overflow:clip!important;
   min-height:29px!important;line-height:1.25!important;
   padding:5px 0!important;font-size:12px!important;
 }
 #member .bb-month-grid .bb-calendar-slot{
   display:block!important;width:100%!important;max-width:100%!important;
   white-space:nowrap!important;word-break:normal!important;
   overflow-wrap:normal!important;overflow:hidden!important;
   text-overflow:ellipsis!important;margin:2px 0!important;
   min-height:22px!important;padding:3px 1px!important;
   font-size:9px!important;line-height:1.25!important;
 }
 #member .bb-month-grid.bb-focused-grid .bb-month-cell{
   min-height:92px!important;padding:7px!important;
 }
 #member .bb-month-grid.bb-focused-grid .bb-date-trigger{
   font-size:14px!important;text-align:left!important;
 }
 #member .bb-month-grid.bb-focused-grid .bb-calendar-slot{
   font-size:12px!important;padding:7px 4px!important;
 }
 #member .bb-calendar-toolbar{
   display:flex;justify-content:space-between;align-items:center;
   flex-wrap:wrap!important;gap:8px!important;
 }
 #member .bb-calendar-title{font-size:16px!important;max-width:62vw!important}
 #member .bb-view-options{
   display:flex!important;flex-wrap:nowrap!important;gap:4px!important;
 }
 #member .bb-view-options button{
   min-width:0!important;padding:8px 10px!important;font-size:12px!important;
 }
 #member .bb-calendar-action-buttons button{min-height:43px}
}

/* Install from the public homepage; never float over the signed-in phone workspace. */
@media(max-width:1000px){body.bb-mobile-authenticated>.bb-install-app:not(.bb-install-in-nav){display:none!important}}

/* Unified tutor/student/owner dashboard presentation. */
body.bb-owner-mode #member>#bbOwnerDashboard.bb-owner-dashboard-matched{
 background:transparent!important;border:0!important;box-shadow:none!important;
 padding:0!important;margin:0!important;max-width:100%!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-dashboard-head{margin:0 0 16px;padding:0}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-dashboard-head .bb-overline,
body.bb-owner-mode #bbOwnerDashboard .bb-owner-upcoming .bb-overline{
 color:#7965bd!important;letter-spacing:1.6px;font-size:11px;font-weight:850;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-dashboard-head h2{
 margin:7px 0 8px!important;color:#261d5d!important;font-size:clamp(27px,5.5vw,34px)!important;
 letter-spacing:-.7px;font-weight:850;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-dashboard-head p:not(.bb-overline){
 margin:0;color:#788098;font-size:15px;line-height:1.55;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-overview-card,
body.bb-owner-mode #bbOwnerDashboard .bb-owner-upcoming{
 background:#fff!important;border:1px solid #dfdff4!important;border-radius:21px!important;
 box-shadow:0 9px 32px #3022770b!important;padding:23px!important;margin:0 0 16px!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-overview-card>h2{
 margin:0!important;font-size:22px!important;color:#261d5d!important;font-weight:850!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpis{
 margin:18px 0 0!important;gap:12px!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi{
 min-height:138px!important;border-radius:17px!important;padding:17px 12px!important;
 box-shadow:none!important;background:linear-gradient(135deg,#f1edff,#fff)!important;
 border:1px solid #e1d5fa!important;display:flex;flex-direction:column;gap:9px!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi:nth-child(2){
 background:linear-gradient(135deg,#eaf9f6,#fff)!important;border-color:#c9eee1!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi:nth-child(3){
 background:linear-gradient(135deg,#fff1df,#fff)!important;border-color:#ffe1b9!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>span{
 font-size:13px!important;color:#5c5875!important;line-height:1.35!important;overflow-wrap:normal!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>strong{
 color:#352194!important;font-size:clamp(20px,2.2vw,31px)!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>small{
 color:#74718c!important;font-size:11px!important;line-height:1.35!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-upcoming h3{
 margin:7px 0 14px!important;color:#261d5d!important;font-size:24px!important;
}
body.bb-owner-mode #bbOwnerDashboard .bb-owner-upcoming>p.muted{
 color:#7b809b!important;font-size:14px!important;line-height:1.5;
}
body.bb-owner-mode #bbOwnerDashboard #bbOwnerUpcomingLessons{
 border-radius:15px;min-width:0;
}
/* The mobile menu is a full-height drawer. Every entry fits inside its content box. */
@media(max-width:1000px){
 body.bb-mobile-authenticated #member>nav.bb-nav{
   display:flex!important;flex-direction:column!important;align-items:stretch!important;
   justify-content:flex-start!important;gap:5px!important;
   width:min(88vw,336px)!important;max-width:min(88vw,336px)!important;
   min-width:0!important;overflow-y:auto!important;overflow-x:hidden!important;
   transform:translateX(-105%);padding:calc(env(safe-area-inset-top) + 14px) 12px
   calc(env(safe-area-inset-bottom) + 24px)!important;
   box-sizing:border-box!important;
 }
 body.bb-mobile-menu-open #member>nav.bb-nav{transform:translateX(0)!important}
 #member>nav.bb-nav a,
 #member>nav.bb-nav #bbOwnerNav a,
 #member>nav.bb-nav button{
   box-sizing:border-box!important;position:static!important;max-width:100%!important;
   width:100%!important;min-width:0!important;margin:0!important;
   flex-shrink:0!important;align-self:stretch!important;
   white-space:normal!important;word-break:normal!important;
 }
 #member>nav.bb-nav a,#member>nav.bb-nav #bbOwnerNav a{
   display:flex;align-items:center!important;justify-content:flex-start!important;
   gap:10px!important;line-height:1.3!important;padding:11px 12px!important;
   min-height:45px!important;text-align:left!important;font-size:14px!important;
 }
 #member>nav.bb-nav #bbOwnerNav{position:static!important;width:100%!important;
   min-width:0!important;max-width:100%!important;gap:4px!important;
   padding:0!important;margin:0!important;
 }
 #member>nav.bb-nav a svg.bb-lucide-svg,
 #member>nav.bb-nav a svg.bb-real-icon{width:19px!important;height:19px!important;
   min-width:19px!important;flex:0 0 19px!important;margin:0!important;
 }
 #member>nav.bb-nav .bb-owner-brand,#member>nav.bb-nav .bb-side-brand{
   width:100%!important;max-width:100%!important;margin:0 0 8px!important;
   padding:8px 10px!important;flex-shrink:0!important;
 }
 #member>nav.bb-nav .bb-owner-brand img,#member>nav.bb-nav .bb-side-brand img{
   width:min(200px,100%)!important;max-width:100%!important;
   height:auto!important;object-fit:contain!important;
 }
 #member>nav.bb-nav #signout{margin:10px 0 0!important;min-height:46px!important}
 #member>nav.bb-nav #bbReturnSidebar{padding:12px!important}
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-overview-card,
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-upcoming{padding:18px!important}
}
@media(max-width:650px){
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpis{
   grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi{
   min-height:128px!important;padding:12px 8px!important;gap:9px!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>span{
   font-size:clamp(10px,2.8vw,13px)!important;line-height:1.3!important;
   overflow-wrap:break-word!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>strong{
   font-size:clamp(17px,4.8vw,24px)!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-kpi>small{
   font-size:10px!important;overflow-wrap:break-word!important;
 }
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-dashboard-head h2{font-size:28px!important}
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-overview-card,
 body.bb-owner-mode #bbOwnerDashboard .bb-owner-upcoming{
   border-radius:18px!important;padding:17px 13px!important;
 }
}

/* Keep existing role-based menu visibility: visual alignment must not expose hidden tabs. */
@media(max-width:1000px){
 #member>nav.bb-nav a[hidden],
 #member>nav.bb-nav #bbOwnerNav[hidden],
 #member>nav.bb-nav a[aria-hidden="true"]{display:none!important}
 body.bb-owner-mode #member>nav.bb-nav>a{display:none!important}
 body.bb-owner-preview #member>nav.bb-nav #bbOwnerNav{display:none!important}
}

/* Icons inside individual menu pages match the Lucide navigation treatment. */
#member .bb-page-lucide-heading{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
#member .bb-page-lucide-heading>svg.bb-lucide-svg{width:21px;height:21px;min-width:21px;flex:0 0 21px;color:#6543c5;stroke-width:2;margin:0}
#member .bb-page-lucide-button{display:inline-flex;align-items:center;justify-content:center;gap:7px}
#member .bb-page-lucide-button>svg.bb-lucide-svg{width:16px;height:16px;min-width:16px;flex:0 0 16px;stroke-width:2;margin:0}
@media(max-width:650px){#member .bb-page-lucide-heading>svg.bb-lucide-svg{width:19px;height:19px;min-width:19px;flex-basis:19px}}

/* Tutor introduction consent: prevent the global 100%-wide input rule from
   pushing confirmation text into a one-letter column on iPhone. */
#evidenceForm .bb-intro-english-confirm{
  display:flex!important;
  align-items:flex-start!important;
  gap:12px!important;
  width:100%;
  max-width:100%;
  min-width:0;
}
#evidenceForm .bb-intro-english-confirm input[type="checkbox"]{
  display:block;
  width:20px!important;
  min-width:20px!important;
  max-width:20px!important;
  height:20px!important;
  min-height:20px!important;
  flex:0 0 20px!important;
  padding:0!important;
  margin:3px 0 0!important;
}
#evidenceForm .bb-intro-english-confirm span{
  display:block;
  flex:1 1 0%;
  min-width:0;
  width:auto;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}

/* Consistent Lucide icon treatment for owner, tutor and student metric cards. */
#member .bb-summary-icon-label{display:flex!important;align-items:flex-start;gap:7px;min-width:0}
#member .bb-summary-icon-label .bb-summary-card-icon{width:18px;height:18px;min-width:18px;flex:0 0 18px;stroke-width:2;color:#6543c5;margin-top:1px}
#member .bb-owner-kpi:nth-child(2) .bb-summary-card-icon,
#member .bb-finance-metric:nth-child(2) .bb-summary-card-icon{color:#278a84}
#member .bb-owner-kpi:nth-child(3) .bb-summary-card-icon,
#member .bb-finance-metric:nth-child(3) .bb-summary-card-icon{color:#c98228}
@media(max-width:650px){
 #member .bb-summary-icon-label{gap:5px}
 #member .bb-summary-icon-label .bb-summary-card-icon{width:15px;height:15px;min-width:15px;flex-basis:15px}
}
