/* KB Business Portal V21.6.217 — operational workflow and mobile first.
 * Strictly inside .kbbp-app; KB PRO CLEAN keeps ownership of its views.
 * No hiding of financial totals, client data, form errors or operational warnings. */
.kbbp-app {
  --kbbp217-navy:#102b44;
  --kbbp217-accent:#c99746;
  --kbbp217-bg:#f5f8fb;
  --kbbp217-stroke:#e2e9f0;
  --kbbp217-focus:#bc862c;
}
.kbbp-app[data-kbbp-trade="pro_clean"] .kbbp-main {
  background:var(--kbbp217-bg)!important;
  min-width:0;
}
.kbbp-app .kbbp217-dashboard-controls,
.kbbp-app .kbbp217-workflow-nav {
  display:flex;align-items:center;gap:12px;
  background:#fff;border:1px solid var(--kbbp217-stroke);
  box-shadow:0 3px 16px rgba(16,43,68,.04);
  border-radius:15px;padding:10px 14px;margin:0 0 15px;
}
.kbbp-app .kbbp217-dashboard-controls {justify-content:space-between;}
.kbbp-app .kbbp217-controls-copy {display:flex;flex-direction:column;gap:3px;min-width:0;}
.kbbp-app .kbbp217-controls-copy strong {font-size:14px;line-height:1.25;letter-spacing:-.01em;color:#183752;}
.kbbp-app .kbbp217-controls-copy small {font-size:12px;line-height:1.35;color:#64798e;}
.kbbp-app .kbbp217-workflow-nav a:focus-visible {
  outline:3px solid var(--kbbp217-focus);outline-offset:3px;
}
.kbbp-app .kbbp217-workflow-nav {flex-wrap:wrap;gap:7px;padding:7px;}
.kbbp-app .kbbp217-workflow-link,
.kbbp-app .kbbp217-workflow-tool {
  display:inline-flex;align-items:center;min-height:41px;padding:9px 15px;
  border-radius:10px;text-decoration:none;font-size:13px;font-weight:750;
  line-height:1.2;color:#415c74;background:transparent;
  border:1px solid transparent;white-space:nowrap;
}
.kbbp-app .kbbp217-workflow-link:is(:hover,:focus-visible) {background:#eff5fa;}
.kbbp-app .kbbp217-workflow-link.is-active,
.kbbp-app .kbbp217-workflow-link[aria-current="page"] {background:#14334f;color:#fff;border-color:#14334f;}
.kbbp-app .kbbp217-workflow-tool {margin-left:auto;background:#fbf6ec;color:#73521a;border-color:#e9d5ac;}
.kbbp-app .kbbp217-workflow-tool:hover {background:#f8edda;}

/* Dashboard: compact WORK mode removes duplicate promotional blocks while preserving
 * KPI figures, daily events, priority actions, goal editor and métier shortcuts. */
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-dashboard {
  display:flex;flex-direction:column;gap:0;min-width:0;
}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero {
  order:0;min-height:144px!important;border-radius:17px;padding:22px 26px!important;
}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero-inner {max-width:75%;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero h1,
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero p,
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-signature {display:none!important;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero .kbpc79-eyebrow {display:block;margin:0 0 14px;font-size:12px;letter-spacing:.07em;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-kpis {order:1;gap:12px;margin:14px 0!important;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid {
  order:2;display:grid;grid-template-columns:minmax(0,1.72fr) minmax(280px,.92fr);
  grid-auto-flow:row;gap:13px;align-items:start;
}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid>.kbpc79-day {grid-column:1;grid-row:1/span 2;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid>.kbpc79-advice {grid-column:2;grid-row:1;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid>.kbpc79-goals {grid-column:2;grid-row:2;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-panel {
  border-radius:16px;padding:19px;box-shadow:0 5px 20px rgba(16,43,68,.045);
}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-advice-media,
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-footer {display:none!important;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-advice h3 {margin:4px 0 9px;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcuts {
  order:3;margin:14px 0!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;
}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcut {min-height:58px;padding:8px 10px;gap:8px;border-radius:11px;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcut>span {flex-basis:30px;height:30px;font-size:17px;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcut small,
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcut b {display:none!important;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-donut {width:105px;margin:12px auto 7px;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-donut strong {font-size:22px!important;}
.kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-goal-trio {margin-top:10px;padding:10px 0;}
.kbbp-app[data-kbbp-trade="pro_clean"] .kbpc79-timeline {max-width:100%;}
.kbbp-app[data-kbbp-trade="pro_clean"] .kbpc79-event {gap:11px;}
.kbbp-app[data-kbbp-trade="pro_clean"] .kbpc79-event-cta {min-height:37px;display:inline-flex;align-items:center;justify-content:center;}

/* Daily route: true appointment and status information remains visible. */
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc74-hero {
  border-radius:17px!important;min-height:194px;
}
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc74-action-strip {
  border-radius:14px;margin-block:12px;min-width:0;
}
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc74-metrics {gap:10px;}
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc-day-nav {
  display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:14px 0;
}
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc-day-chip {
  min-height:42px;display:inline-flex;align-items:center;justify-content:center;
  padding:9px 14px;border-radius:11px;line-height:1.25;
}
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc :is(.kbpc75-day-panel,#kbpc-day-backlog,#kbpc-day-week) {
  border-radius:16px;min-width:0;scroll-margin-top:25px;
}
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc75-timeline {min-width:0;}
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc75-appointment {min-width:0;}
/* The educational 3-step journey stays available on the page but is visually lighter. */
.kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc74-journey {margin-top:24px;}

/* Booking screen: remove repeated marketing banner. Its planning link already lives
 * in the module's accessible section navigation. Keep the live calendar and forms. */
.kbbp-app.kbbp-view-metier_pro_clean_bookings .kbpc .kbpc73-photo-banner {display:none!important;}
.kbbp-app.kbbp-view-metier_pro_clean_bookings .kbpc :is(#kbpc-booking-calendar,#kbpc-booking-search,#kbpc-booking-create,#kbpc-bookings-week,#kbpc-booking-focus) {
  border-radius:16px;scroll-margin-top:26px;
}
.kbbp-app.kbbp-view-metier_pro_clean_bookings .kbpc .kbpc-booking-create[open] > summary {
  background:#fff4e0;color:#593b0a;border-radius:10px;
}
.kbbp-app.kbbp-view-metier_pro_clean_bookings .kbpc :is(.kbpc-booking-form-grid,.kbpc-booking-filter) {
  min-width:0;
}
.kbbp-app.kbbp-view-metier_pro_clean_bookings .kbpc :is(input,select,textarea,button) {max-width:100%;}
.kbbp-app.kbbp-view-metier_pro_clean_bookings .kbpc :is(input,select,textarea):focus-visible {outline:3px solid #ba8e3d;outline-offset:1px;}

/* Improve mobile dock density, accessibility and ensure current day is visible. */
@media(max-width:980px) {
  .kbbp-app[data-kbbp-trade="pro_clean"] .kbbp-clean-mobile-dock {
    border:1px solid rgba(255,255,255,.24);border-radius:18px;
    background:rgba(12,39,65,.97);box-shadow:0 9px 27px rgba(9,31,57,.2);
  }
  .kbbp-app[data-kbbp-trade="pro_clean"] .kbbp-clean-mobile-dock .kbbp-dock-link {min-height:55px;}
  .kbbp-app[data-kbbp-trade="pro_clean"] .kbbp-clean-mobile-dock .kbbp-dock-icon {font-size:21px;}
  .kbbp-app[data-kbbp-trade="pro_clean"] .kbbp-clean-mobile-dock .kbbp-dock-link.is-active {background:#1b4f77;box-shadow:inset 0 0 0 1px #bb985b;}
  .kbbp-app[data-kbbp-trade="pro_clean"] .kbbp-dock-more-panel {grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid {grid-template-columns:1fr 1fr;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid>.kbpc79-day {grid-column:1/-1;grid-row:auto;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid>.kbpc79-advice {grid-column:1;grid-row:auto;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid>.kbpc79-goals {grid-column:2;grid-row:auto;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcuts {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:700px) {
  .kbbp-app .kbbp217-dashboard-controls {align-items:center;gap:8px;padding:10px;}
  .kbbp-app .kbbp217-controls-copy small {display:none;}
  .kbbp-app .kbbp217-workflow-nav {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  .kbbp-app .kbbp217-workflow-link {justify-content:center;min-width:0;padding-inline:6px;}
  .kbbp-app .kbbp217-workflow-tool {grid-column:1/-1;justify-content:center;margin-left:0;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero {min-height:126px!important;padding:17px!important;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero-inner {max-width:100%;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-hero-actions {display:flex;gap:8px;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79 .kbpc79-btn {width:auto;min-height:43px;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid {grid-template-columns:minmax(0,1fr);}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-bottom-grid>:is(.kbpc79-day,.kbpc79-advice,.kbpc79-goals) {grid-column:auto;grid-row:auto;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcuts {grid-template-columns:repeat(2,minmax(0,1fr));}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcut {min-height:56px;}
  .kbbp-app[data-kbbp-trade="pro_clean"] .kbpc79-event {flex-wrap:wrap;}
  .kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc74-hero {min-height:165px;}
  .kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc-day-nav {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;}
  .kbbp-app.kbbp-view-metier_pro_clean_today .kbpc .kbpc-day-chip {padding:8px 5px;text-align:center;font-size:12px;white-space:normal;}
}
@media(max-width:420px) {
  .kbbp-app .kbbp217-controls-copy strong {font-size:12px;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79 .kbpc79-kpi strong {font-size:23px;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcut>span {flex:0 0 25px;height:25px;font-size:15px;}
  .kbbp-app[data-kbbp-trade="pro_clean"].kbbp-view-dashboard .kbpc79-shortcut strong {font-size:11px;}
  .kbbp-app[data-kbbp-trade="pro_clean"] .kbbp-clean-mobile-dock .kbbp-dock-link {font-size:10px;}
}
@media(prefers-reduced-motion:reduce) {
  .kbbp-app :is(.kbbp217-workflow-link,.kbbp217-workflow-tool) {transition:none!important;}
}
@media(forced-colors:active) {
  .kbbp-app .kbbp217-workflow-link.is-active {border:2px solid Highlight;}
}
