:root{
  --fr-bg:#f6f8ff;
  --fr-surface:#ffffff;
  --fr-text:#0b123d;
  --fr-muted:#667085;
  --fr-soft:#eef3ff;
  --fr-line:#e5ebf8;
  --fr-primary:#4f46e5;
  --fr-primary-2:#6366f1;
  --fr-indigo:#1c2b6e;
  --fr-success:#22c55e;
  --fr-warning:#f59e0b;
  --fr-error:#ef4444;
  --fr-radius:24px;
  --fr-shadow:0 18px 45px rgba(30,41,90,.08);
  --fr-shadow-soft:0 10px 30px rgba(30,41,90,.06);
}
html{background:var(--fr-bg)!important;}
body{
  color:var(--fr-text)!important;
  background:
    radial-gradient(circle at 15% -10%, rgba(99,102,241,.13), transparent 34%),
    radial-gradient(circle at 100% 8%, rgba(56,189,248,.16), transparent 30%),
    linear-gradient(180deg,#fbfcff 0%,#f4f7ff 100%)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
#main-content>div{background:transparent!important;}
#sidebar{
  background:linear-gradient(180deg,#111a52 0%,#17246d 48%,#0b123d 100%)!important;
  color:#e9efff!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
  box-shadow:24px 0 60px rgba(21,33,91,.18)!important;
}
#desktop-toggle,#mobile-toggle{color:#cbd7ff!important;}
#sidebar .brand-shell{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
}
#sidebar .brand-logo-tile{box-shadow:none!important;border-color:rgba(255,255,255,.15)!important;}
#sidebar .brand-connector{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.18)!important;}
#sidebar .menu-item-fixed,#sidebar .menu-item-children-fixed,#sidebar .menu-hover a{color:#d9e2ff!important;font-weight:700!important;}
#sidebar .menu-hover{border-radius:18px!important;margin-bottom:6px!important;}
#sidebar .menu-hover:hover{background:rgba(255,255,255,.09)!important;}
#sidebar .menu-active,#sidebar .menu-active:hover{
  background:linear-gradient(135deg,#4f46e5 0%,#6366f1 60%,#7c8cff 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 32px rgba(99,102,241,.32)!important;
}
#sidebar .menu-active a,#sidebar .menu-active i,#sidebar .menu-active svg,#sidebar .menu-active span{color:#fff!important;}
#sidebar .text-text-primary{color:#d9e2ff!important;}
#sidebar .menu-item-children-fixed{margin-left:30px!important;padding-left:14px!important;font-size:14px!important;}
#sidebar .sidebar-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22)!important;}
#mobile-hamburger{border-radius:18px!important;box-shadow:var(--fr-shadow-soft)!important;}

.crm-redesign-page{min-height:100%;padding:28px 32px 54px;background:transparent;}
.crm-page-shell{max-width:1420px;margin:0 auto;display:flex;flex-direction:column;gap:20px;}
.crm-page-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:2px;}
.crm-eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(99,102,241,.12);background:rgba(255,255,255,.76);color:#4f46e5;border-radius:999px;padding:8px 12px;font-weight:800;font-size:12px;box-shadow:var(--fr-shadow-soft);}
.crm-page-title{margin:10px 0 0;font-size:34px;line-height:1.08;font-weight:900;letter-spacing:-.035em;color:var(--fr-text);}
.crm-page-subtitle{margin:8px 0 0;color:#65718c;font-size:15px;line-height:1.55;max-width:780px;}
.crm-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.crm-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:16px;padding:12px 17px;font-weight:800;font-size:14px;line-height:1;text-decoration:none;transition:.18s ease;white-space:nowrap;cursor:pointer;}
.crm-btn-primary{background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff!important;box-shadow:0 16px 32px rgba(79,70,229,.24);}
.crm-btn-primary:hover{transform:translateY(-1px);box-shadow:0 20px 40px rgba(79,70,229,.28);}
.crm-btn-soft{background:#fff;color:#4f46e5!important;border:1px solid rgba(99,102,241,.13);box-shadow:var(--fr-shadow-soft);}
.crm-btn-soft:hover{background:#f7f9ff;transform:translateY(-1px);}
.crm-btn-danger{background:#fff;color:#ef4444!important;border:1px solid rgba(239,68,68,.18);box-shadow:var(--fr-shadow-soft);}
.crm-card{background:rgba(255,255,255,.88)!important;border:1px solid rgba(226,232,240,.9)!important;border-radius:var(--fr-radius)!important;box-shadow:var(--fr-shadow-soft)!important;}
.crm-card-strong{background:#fff!important;border:1px solid rgba(226,232,240,.95)!important;border-radius:28px!important;box-shadow:var(--fr-shadow)!important;}
.crm-calendar-hero{position:relative;overflow:hidden;border-radius:30px;padding:24px;background:linear-gradient(135deg,#ffffff 0%,#f8faff 100%);border:1px solid rgba(226,232,240,.9);box-shadow:var(--fr-shadow);}
.crm-calendar-hero:after{content:"";position:absolute;right:-70px;top:-90px;width:280px;height:280px;border-radius:80px;background:linear-gradient(135deg,rgba(99,102,241,.22),rgba(56,189,248,.15));transform:rotate(-12deg);filter:blur(1px);pointer-events:none;}
.crm-calendar-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:22px;align-items:stretch;}
.crm-calendar-copy{display:flex;flex-direction:column;justify-content:center;}
.crm-calendar-copy h1{font-size:36px;line-height:1.06;font-weight:900;letter-spacing:-.04em;color:var(--fr-text);margin:0;max-width:760px;}
.crm-calendar-copy p{font-size:15px;line-height:1.6;color:#68718e;margin:14px 0 0;max-width:760px;}
.crm-progress-card{border-radius:24px;background:linear-gradient(135deg,#4f46e5,#7585ff);color:#fff;padding:22px;min-height:172px;box-shadow:0 20px 50px rgba(79,70,229,.24);}
.crm-progress-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;}
.crm-progress-percent{font-size:38px;line-height:1;font-weight:900;letter-spacing:-.03em;}
.crm-progress-caption{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800;color:rgba(255,255,255,.68);}
.crm-progress-badge{min-width:70px;border-radius:20px;background:rgba(255,255,255,.16);padding:10px;text-align:center;font-weight:800;}
.crm-progress-line{height:10px;border-radius:999px;background:rgba(255,255,255,.2);overflow:hidden;margin-top:18px;}
.crm-progress-line span{display:block;height:100%;border-radius:inherit;background:#fff;}
.crm-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;}
.crm-kpi-card{background:#fff;border:1px solid rgba(226,232,240,.95);border-radius:22px;padding:18px 18px;box-shadow:var(--fr-shadow-soft);display:flex;align-items:center;gap:13px;min-height:92px;}
.crm-kpi-icon{width:44px;height:44px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#eef2ff;color:#4f46e5;font-size:18px;flex-shrink:0;}
.crm-kpi-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#8a96b3;}
.crm-kpi-value{font-size:26px;line-height:1.05;font-weight:900;color:var(--fr-text);letter-spacing:-.035em;margin-top:4px;}
.crm-controls-card{background:#fff;border:1px solid rgba(226,232,240,.95);border-radius:26px;box-shadow:var(--fr-shadow-soft);padding:14px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.crm-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.crm-tab-btn{border:0;background:transparent;color:#536080;font-weight:800;border-radius:16px;padding:11px 16px;transition:.18s ease;cursor:pointer;}
.crm-tab-btn.active,.crm-tab-btn:hover{background:#eef2ff;color:#4f46e5;}
.crm-format-toggle{display:flex;gap:4px;background:#f1f4ff;border-radius:18px;padding:5px;}
.crm-format-toggle button{border:0;background:transparent;border-radius:14px;color:#586487;font-weight:800;padding:10px 18px;cursor:pointer;transition:.18s ease;}
.crm-format-toggle button.active{background:#fff;color:#4f46e5;box-shadow:0 8px 18px rgba(30,41,90,.08);}
.crm-calendar-section{background:#fff!important;border:1px solid rgba(226,232,240,.9)!important;border-radius:30px!important;box-shadow:var(--fr-shadow)!important;padding:20px!important;}
.crm-calendar-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-bottom:18px;}
.crm-calendar-title{text-align:center;}
.crm-calendar-title h2{margin:0;color:var(--fr-text);font-weight:900;font-size:20px;letter-spacing:-.02em;}
.crm-calendar-title p{margin:4px 0 0;color:#64748b;font-size:13px;font-weight:700;}
.crm-nav-round{width:44px;height:44px;border:0;border-radius:16px;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;box-shadow:none;cursor:pointer;transition:.18s ease;}
.crm-nav-round:hover{background:#4f46e5;color:#fff;transform:translateY(-1px);}
.crm-today-btn{border:0;border-radius:14px;background:#4f46e5;color:#fff;font-weight:800;padding:10px 16px;margin-top:8px;cursor:pointer;box-shadow:0 12px 24px rgba(79,70,229,.22);}
.crm-day-shell{max-width:860px;margin:0 auto;border:1px solid #e7ecf8;border-radius:26px;background:#fff;overflow:hidden;}
.crm-day-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;padding:16px 20px;border-bottom:1px solid #eef2f8;align-items:start;}
.crm-day-row:last-child{border-bottom:0;}
.crm-day-time{display:flex;justify-content:flex-end;padding-top:4px;}
.crm-day-time span{display:inline-flex;min-width:70px;justify-content:center;border-radius:14px;background:#eef2ff;color:#4f46e5;font-size:13px;font-weight:900;padding:8px 10px;}
.crm-day-card-wrap{max-width:620px;}
.crm-booking-card{border-radius:22px!important;padding:15px!important;box-shadow:0 14px 30px rgba(30,41,90,.06)!important;}
.crm-booking-card.compact-day{max-width:620px;}
.crm-week-grid{display:grid!important;grid-template-columns:repeat(7,minmax(190px,1fr))!important;gap:12px!important;}
.crm-week-day{border:1px solid #e7ecf8;border-radius:24px;background:#fff;overflow:hidden;min-width:0;box-shadow:0 10px 28px rgba(30,41,90,.05);}
.crm-week-day-head{padding:14px;background:#f8faff;border-bottom:1px solid #eef2f8;}
.crm-week-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;}
.crm-week-stat{background:#fff;border:1px solid #eef2f8;border-radius:16px;padding:8px;min-width:0;}
.crm-week-stat-label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:#94a3b8;white-space:nowrap;}
.crm-week-stat-value{font-size:14px;font-weight:900;color:var(--fr-text);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.crm-status-pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;white-space:nowrap;}
.crm-form-shell{max-width:1220px;margin:0 auto;padding:30px 32px 60px;}
.crm-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:22px;align-items:start;}
.crm-form-card{background:#fff;border:1px solid #e7ecf8;border-radius:28px;box-shadow:var(--fr-shadow-soft);padding:22px;}
.crm-status-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.crm-status-choice{border:1px solid #dbe6ff;border-radius:20px;background:#f8faff;padding:16px;cursor:pointer;transition:.18s ease;min-height:128px;}
.crm-status-choice:hover{border-color:#8b94ff;transform:translateY(-1px);box-shadow:0 12px 25px rgba(99,102,241,.1);}
.crm-status-choice.active{border-color:#4f46e5;background:#eef2ff;box-shadow:0 14px 30px rgba(79,70,229,.14);}
.crm-status-choice-title{font-size:15px;line-height:1.25;font-weight:900;color:#15204d;margin-top:6px;}
.crm-status-choice-caption{font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.07em;color:#7b86a6;font-weight:900;}
.crm-status-choice-text{font-size:12px;line-height:1.45;color:#5c6785;margin-top:8px;font-weight:600;}
.crm-search-field,input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="date"],input[type="time"],input[type="password"],textarea,select{
  border-radius:16px!important;border:1px solid #dfe7f7!important;background:#fff!important;color:#111827!important;box-shadow:none!important;
}
input:focus,textarea:focus,select:focus{border-color:#6366f1!important;box-shadow:0 0 0 4px rgba(99,102,241,.10)!important;outline:0!important;}
button,.btn,a[class*="bg-[#3047EC]"],a[class*="bg-[#6374F6]"]{transition:.18s ease;}
.table-wrapper,table{border-radius:22px;overflow:hidden;}
table{border-collapse:separate!important;border-spacing:0!important;background:#fff!important;}
th{background:#f8faff!important;color:#667085!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:11px!important;font-weight:900!important;}
td{border-bottom:1px solid #eef2f8!important;color:#172554!important;}
@media (max-width:1200px){.crm-calendar-hero-inner{grid-template-columns:1fr}.crm-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-week-grid{grid-template-columns:repeat(7,minmax(230px,1fr))!important;overflow-x:auto}.crm-form-grid{grid-template-columns:1fr}}
@media (max-width:768px){.crm-redesign-page,.crm-form-shell{padding:18px 14px 34px}.crm-page-topbar{align-items:flex-start;flex-direction:column}.crm-page-title,.crm-calendar-copy h1{font-size:28px}.crm-kpi-grid{grid-template-columns:1fr}.crm-controls-card{align-items:stretch}.crm-format-toggle{width:100%;overflow:auto}.crm-day-row{grid-template-columns:70px minmax(0,1fr);padding:14px}.crm-day-card-wrap{max-width:100%}.crm-status-panel{grid-template-columns:1fr}}
/* broad retrofit for legacy templates */
.content-transition [class*="bg-\[\#f5f7fe\]"],
.content-transition .bg-background{background:transparent!important;}
.content-transition .ml-10{margin-left:0!important;}
.content-transition h1{letter-spacing:-.03em;color:var(--fr-text)!important;}
.content-transition h2,.content-transition h3{letter-spacing:-.02em;color:var(--fr-text)!important;}
.content-transition .rounded-xl{border-radius:20px!important;}
.content-transition .rounded-2xl{border-radius:22px!important;}
.content-transition .rounded-3xl{border-radius:28px!important;}
.content-transition .shadow-sm{box-shadow:var(--fr-shadow-soft)!important;}
.content-transition .shadow-lg,.content-transition .shadow-xl{box-shadow:var(--fr-shadow)!important;}
.content-transition [class*="text-\[\#8A97F6\]"],
.content-transition [class*="text-\[\#6374F6\]"]{color:#4f46e5!important;}
.content-transition [class*="bg-\[\#6374F6\]"],
.content-transition [class*="bg-\[\#3047EC\]"],
.content-transition [class*="bg-\[\#4754B1\]"]{background:linear-gradient(135deg,#4f46e5,#6366f1)!important;color:#fff!important;box-shadow:0 14px 30px rgba(79,70,229,.22)!important;}
.content-transition [class*="bg-\[\#8A97F647\]"],
.content-transition [class*="bg-\[\#D7DCFC\]"],
.content-transition [class*="bg-\[\#E5EEFF\]"]{background:#eef2ff!important;color:#4f46e5!important;}
.content-transition .bg-white{border-color:rgba(226,232,240,.95)!important;}
.content-transition form .space-y-4 > * + *{margin-top:14px!important;}
.payment-status-card{border-radius:20px!important;min-height:136px!important;padding:16px!important;}
.payment-status-card.active{border-color:#4f46e5!important;background:#eef2ff!important;box-shadow:0 16px 34px rgba(79,70,229,.14)!important;}
.payment-status-title{font-size:15px!important;line-height:1.28!important;color:#0b123d!important;}
.payment-status-description{font-size:12px!important;color:#5f6d8d!important;}
.step-switcher{border-radius:20px!important;box-shadow:var(--fr-shadow-soft)!important;}
.step-switcher button.active{background:linear-gradient(135deg,#4f46e5,#6366f1)!important;color:#fff!important;}
.chat-item,.client-card,.service-card,.specialist-card{border-radius:24px!important;box-shadow:var(--fr-shadow-soft)!important;border:1px solid #e7ecf8!important;background:#fff!important;}
.time-slot.free{background:#eef2ff!important;color:#4f46e5!important;}
.time-slot.selected{background:#4f46e5!important;color:#fff!important;box-shadow:0 12px 24px rgba(79,70,229,.22)!important;}
.day-block.selected{background:#4f46e5!important;color:#fff!important;box-shadow:0 10px 22px rgba(79,70,229,.2)!important;}

/* final pass: keep real CRM focused on work, not marketing hero */
.crm-calendar-page .crm-calendar-hero{display:none!important;}
.crm-calendar-page .crm-page-topbar{padding:0 2px 4px;}
.crm-calendar-page .crm-controls-card{order:2;}
.crm-calendar-page .crm-calendar-section{order:3;}
.crm-calendar-page .crm-kpi-grid{order:1;}
.crm-day-shell{overflow:hidden;}
.crm-day-card-wrap{max-width:560px;width:100%;}
.crm-booking-card.compact-day{width:100%;max-width:560px;padding:14px 16px!important;}
.crm-booking-card.compact-day [class*="text-xl"],.crm-booking-card.compact-day [class*="text-2xl"]{font-size:16px!important;}
.crm-booking-card.compact-day .grid{gap:10px!important;}
.crm-booking-card.compact-day:hover{transform:translateY(-1px);}

/* legacy pages adopt approved calm SaaS look */
.content-transition > div:not(#sidebar),
.content-transition .bg-\[\#f5f7fe\],
.content-transition .payments-shell,
.content-transition .company-settings-shell,
.content-transition .company-data-shell{
  background:transparent!important;
}
.content-transition input,
.content-transition select,
.content-transition textarea{
  border-radius:16px!important;
  border:1px solid #dfe7f6!important;
  background:#fff!important;
  min-height:44px;
}
.content-transition input:focus,
.content-transition select:focus,
.content-transition textarea:focus{
  border-color:#6366f1!important;
  box-shadow:0 0 0 4px rgba(99,102,241,.10)!important;
}
.content-transition button,
.content-transition a[class*="rounded"]{transition:all .18s ease!important;}
.content-transition button:hover,
.content-transition a[class*="rounded"]:hover{transform:translateY(-1px);}
.content-transition .border{border-color:#e4eaf7!important;}
.content-transition [class*="rounded-xl"],
.content-transition [class*="rounded-2xl"],
.content-transition [class*="rounded-3xl"]{box-shadow:var(--fr-shadow-soft);}
.content-transition .glass-card,
.content-transition .section-card{
  border-radius:28px!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid #e4eaf7!important;
  box-shadow:var(--fr-shadow-soft)!important;
}
.crm-page-mini-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px;}
.crm-page-mini-header .title{font-size:34px;line-height:1.05;font-weight:900;letter-spacing:-.04em;color:var(--fr-text);}
.crm-page-mini-header .subtitle{margin-top:8px;max-width:760px;color:#68718e;font-size:15px;line-height:1.55;}
.crm-module-grid{display:grid;gap:18px;}
.crm-legacy-shell{max-width:1420px;margin:0 auto;padding:28px 32px 52px;}
.crm-legacy-shell .bg-white,.crm-legacy-shell table,.crm-legacy-shell form{box-shadow:var(--fr-shadow-soft);}
@media(max-width:768px){.crm-legacy-shell{padding:18px 14px 34px}.crm-page-mini-header{flex-direction:column;align-items:flex-start}.crm-page-mini-header .title{font-size:28px}}

/* ===== Flyer approved redesign final pass ===== */
:root{
  --fr-bg-2:#f7f9ff;
  --fr-card:rgba(255,255,255,.94);
  --fr-deep:#0b123d;
  --fr-accent:#4f46e5;
  --fr-accent-2:#6366f1;
}
body{font-feature-settings:"liga" 1,"kern" 1;}
#main-content .crm-legacy-shell{width:100%;box-sizing:border-box;}
.crm-legacy-shell > [class*="bg-[#f5f7fe]"],
.crm-legacy-shell > .bg-gray-50,
.crm-legacy-shell > .min-h-screen{
  background:transparent!important;
  padding:0!important;
  min-height:auto!important;
}
.crm-legacy-shell > .crm-card-strong{overflow:visible!important;}
.crm-legacy-shell .max-w-7xl,
.crm-legacy-shell .max-w-6xl,
.crm-legacy-shell .max-w-5xl,
.crm-legacy-shell .max-w-4xl{max-width:1420px!important;}
.crm-page-mini-header{
  position:relative;
  padding:22px 0 2px;
}
.crm-page-mini-header:after{
  content:"";
  position:absolute;
  right:0;
  top:10px;
  width:160px;
  height:80px;
  border-radius:34px;
  background:linear-gradient(135deg,rgba(99,102,241,.14),rgba(56,189,248,.10));
  transform:rotate(-8deg);
  pointer-events:none;
}
.crm-page-mini-header .title,
.crm-page-title{font-family:Montserrat,system-ui,sans-serif!important;}
.crm-legacy-shell .mb-8.flex.items-center.gap-4,
.crm-legacy-shell .mb-6.flex.items-center.gap-4,
.crm-legacy-shell .flex.items-center.gap-4.mb-8{
  background:var(--fr-card)!important;
  border:1px solid var(--fr-line)!important;
  border-radius:28px!important;
  box-shadow:var(--fr-shadow-soft)!important;
  padding:14px!important;
  margin-bottom:20px!important;
}
.crm-legacy-shell .mb-8.flex.items-center.gap-4 > .flex-1 > .flex,
.crm-legacy-shell .mb-6.flex.items-center.gap-4 > .flex-1 > .flex,
.crm-legacy-shell .flex.items-center.bg-\[\#E5EEFF\]{
  background:#f8faff!important;
  border:1px solid #e3e9f7!important;
  border-radius:18px!important;
  min-height:54px;
}
.crm-legacy-shell a[href*="add_"],
.crm-legacy-shell a[href*="create"],
.crm-legacy-shell a[href*="new"],
.crm-legacy-shell button[type="submit"],
.crm-legacy-shell .bg-\[\#D7DCFC\],
.crm-legacy-shell .bg-\[\#6374F6\],
.crm-legacy-shell .bg-\[\#3047EC\]{
  border-radius:16px!important;
  font-weight:900!important;
  text-transform:none!important;
}
.crm-legacy-shell .bg-\[\#D7DCFC\]{
  background:#eef2ff!important;
  color:#4f46e5!important;
  border:1px solid rgba(99,102,241,.16)!important;
  box-shadow:var(--fr-shadow-soft)!important;
}
.crm-legacy-shell .bg-\[\#D7DCFC\]:hover{background:#e4e9ff!important;}
.crm-legacy-shell .grid > .bg-white,
.crm-legacy-shell .space-y-4 > .bg-white,
.crm-legacy-shell .space-y-6 > .bg-white,
.crm-legacy-shell .rounded-xl.bg-white,
.crm-legacy-shell .rounded-2xl.bg-white,
.crm-legacy-shell .rounded-3xl.bg-white{
  background:var(--fr-card)!important;
  border:1px solid var(--fr-line)!important;
  border-radius:26px!important;
  box-shadow:var(--fr-shadow-soft)!important;
}
.crm-legacy-shell table{width:100%;border-radius:24px!important;box-shadow:var(--fr-shadow-soft)!important;}
.crm-legacy-shell thead th:first-child{border-top-left-radius:22px;}
.crm-legacy-shell thead th:last-child{border-top-right-radius:22px;}
.crm-legacy-shell tbody tr:hover td{background:#f8faff!important;}
.crm-legacy-shell .overflow-x-auto,
.crm-legacy-shell .overflow-hidden{border-radius:26px!important;}
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br,
.crm-legacy-shell section.bg-gradient-to-br{
  background:linear-gradient(135deg,#ffffff 0%,#f8faff 100%)!important;
  color:var(--fr-text)!important;
  border:1px solid var(--fr-line)!important;
  box-shadow:var(--fr-shadow)!important;
}
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br .text-white,
.crm-legacy-shell section.bg-gradient-to-br .text-white{color:var(--fr-text)!important;}
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br .text-white\/90,
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br .text-white\/80,
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br .text-white\/70,
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br .text-white\/65,
.crm-legacy-shell section.bg-gradient-to-br .text-white\/90,
.crm-legacy-shell section.bg-gradient-to-br .text-white\/80,
.crm-legacy-shell section.bg-gradient-to-br .text-white\/70,
.crm-legacy-shell section.bg-gradient-to-br .text-white\/65{color:#667085!important;}
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br .bg-white\/12,
.crm-legacy-shell .rounded-3xl.bg-gradient-to-br .bg-white\/8{
  background:#fff!important;
  border:1px solid var(--fr-line)!important;
  box-shadow:var(--fr-shadow-soft)!important;
}
.crm-legacy-shell .inline-flex.items-center.gap-2.rounded-full{
  background:#eef2ff!important;
  color:#4f46e5!important;
  border:1px solid rgba(99,102,241,.12)!important;
}
.crm-form-page .crm-form-card{box-shadow:var(--fr-shadow)!important;}
.crm-form-page .crm-form-grid{grid-template-columns:minmax(0,1.05fr) 420px;}
.crm-form-page .step-switcher{position:sticky;top:16px;z-index:10;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);}
.payment-status-card{background:#fff!important;border:1px solid #dfe7f8!important;}
.payment-status-card .payment-status-title{font-size:15px!important;line-height:1.25!important;}
.payment-status-card .payment-status-description{line-height:1.42!important;}
.crm-calendar-page .crm-page-topbar{align-items:center!important;background:rgba(255,255,255,.72);border:1px solid var(--fr-line);border-radius:30px;padding:20px 22px;box-shadow:var(--fr-shadow-soft);backdrop-filter:blur(16px);}
.crm-calendar-page .crm-kpi-grid{grid-template-columns:repeat(5,minmax(150px,1fr));}
.crm-calendar-page .crm-kpi-card{min-height:82px;padding:14px 15px;}
.crm-calendar-page .crm-kpi-value{font-size:22px;}
.crm-calendar-page .crm-controls-card{position:sticky;top:0;z-index:20;backdrop-filter:blur(18px);background:rgba(255,255,255,.88)!important;}
.crm-calendar-page .crm-calendar-section{min-height:520px;}
.crm-day-shell{max-width:760px!important;margin-left:0!important;margin-right:auto!important;}
.crm-day-row{grid-template-columns:88px minmax(0,1fr)!important;gap:14px!important;padding:12px 16px!important;}
.crm-day-card-wrap{max-width:520px!important;}
.crm-booking-card.compact-day{max-width:520px!important;}
.crm-week-grid{grid-template-columns:repeat(7,minmax(205px,1fr))!important;}
.crm-week-day{min-height:410px;}
.crm-week-day-head{position:sticky;top:0;z-index:4;}
.crm-week-stats{grid-template-columns:1fr!important;}
.crm-week-stat{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px!important;}
.crm-week-stat-value{font-size:13px!important;}
#weekCalendar .crm-booking-card{padding:12px!important;border-radius:20px!important;}
#monthCalendar > div{border-radius:24px!important;}
#monthCalendar .rounded-xl{border-radius:16px!important;}
/* support/chats approved messenger feel */
.crm-legacy-shell .chat-hover,
.crm-legacy-shell [class*="chat"].bg-white,
.crm-legacy-shell .ticket-card{
  border-radius:24px!important;
  border:1px solid var(--fr-line)!important;
  box-shadow:var(--fr-shadow-soft)!important;
}
/* timetable: sticky weekday header and fixed arrows */
.timetable-table thead,
.specialists-timetable-table thead,
.crm-legacy-shell table thead{position:sticky;top:0;z-index:15;}
.timetable-scroll-arrows,
.scroll-arrows,
.horizontal-scroll-controls{display:flex!important;flex-wrap:nowrap!important;gap:10px!important;align-items:center!important;}
.timetable-scroll-arrows button,
.scroll-arrows button,
.horizontal-scroll-controls button{flex:0 0 auto!important;}
@media(max-width:1200px){
  .crm-calendar-page .crm-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .crm-form-page .crm-form-grid{grid-template-columns:1fr;}
}
@media(max-width:760px){
  .crm-calendar-page .crm-page-topbar{align-items:flex-start!important;}
  .crm-calendar-page .crm-kpi-grid{grid-template-columns:1fr;}
  .crm-legacy-shell .mb-8.flex.items-center.gap-4,
  .crm-legacy-shell .mb-6.flex.items-center.gap-4{flex-direction:column!important;align-items:stretch!important;}
}

/* === Flyer CRM final redesign pass: approved calm social/SaaS style === */
.flyer-crm-final {
  --fr-page-pad-x: 32px;
  --fr-card-radius: 28px;
  --fr-tile-radius: 22px;
}
.flyer-crm-final #main-content > div {
  background:
    radial-gradient(circle at 8% -8%, rgba(124,140,255,.18), transparent 28%),
    radial-gradient(circle at 96% 4%, rgba(56,189,248,.17), transparent 32%),
    linear-gradient(180deg,#fbfcff 0%,#f4f7ff 100%) !important;
}
.flyer-crm-final #sidebar {
  width: 276px;
}
.flyer-crm-final #main-content.lg\:ml-64,
.flyer-crm-final #main-content { }
.flyer-crm-final #sidebar .brand-shell::before {
  content:'Flyer CRM';
  display:block;
  margin:0 0 10px 2px;
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:900;
  color:rgba(255,255,255,.62);
}
.flyer-crm-final #sidebar nav { padding-left: 10px; padding-right: 10px; }
.flyer-crm-final #sidebar .menu-hover { position:relative; overflow:hidden; }
.flyer-crm-final #sidebar .menu-hover::before {
  content:'';
  position:absolute;
  left:0; top:10px; bottom:10px;
  width:3px;
  border-radius:999px;
  background:transparent;
  transition:.18s ease;
}
.flyer-crm-final #sidebar .menu-active::before { background:#fff; }
.flyer-crm-final #sidebar .menu-item-fixed,
.flyer-crm-final #sidebar .menu-item-children-fixed { gap:2px; }
.flyer-crm-final #sidebar .menu-item-fixed i,
.flyer-crm-final #sidebar .menu-item-children-fixed svg,
.flyer-crm-final #sidebar .menu-item-children-fixed i { opacity:.9; }

/* Shared CRM page composition */
.crm-redesign-page,
.crm-legacy-shell {
  position:relative;
}
.crm-redesign-page::before,
.crm-legacy-shell::before {
  content:'';
  position:fixed;
  right:44px;
  top:24px;
  width:164px;
  height:164px;
  border-radius:46px;
  background:linear-gradient(135deg,rgba(99,102,241,.17),rgba(56,189,248,.11));
  transform:rotate(-11deg);
  pointer-events:none;
  z-index:0;
}
.crm-page-shell,
.crm-legacy-shell > * { position:relative; z-index:1; }
.crm-page-topbar,
.crm-page-mini-header {
  border-radius:30px;
  background:rgba(255,255,255,.68);
  border:1px solid rgba(226,232,240,.8);
  padding:22px 24px;
  box-shadow:0 14px 40px rgba(30,41,90,.05);
  backdrop-filter:blur(14px);
}
.crm-page-mini-header { margin-bottom:20px; }
.crm-page-title,
.crm-page-mini-header .title { font-size:36px!important; letter-spacing:-.045em!important; }
.crm-page-subtitle,
.crm-page-mini-header .subtitle { color:#667085!important; font-weight:600; }
.crm-eyebrow {
  background:linear-gradient(135deg,#eef2ff,#f7faff)!important;
  border-color:#dfe6ff!important;
  box-shadow:none!important;
}
.crm-actions .crm-btn, .crm-btn { min-height:46px; }

/* CRM form/workspace final layout */
.crm-form-page .crm-page-shell { max-width:1280px; }
.crm-form-page #content-client:not(.hidden) {
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  gap:20px;
  max-width:1180px!important;
}
.crm-form-page #content-client > div,
.crm-form-page #content-service > div,
.crm-form-page .bg-white.rounded-xl,
.crm-form-page .bg-white.rounded-2xl,
.crm-form-page .rounded-2xl.bg-white {
  border-radius:28px!important;
  background:#fff!important;
  border:1px solid #e4eaf7!important;
  box-shadow:0 16px 42px rgba(30,41,90,.07)!important;
  padding:22px!important;
}
.crm-form-page #content-service:not(.hidden) {
  max-width:1180px!important;
  display:block;
}
.crm-form-page h2.text-lg,
.crm-form-page .text-lg.font-semibold { color:#0b123d!important; font-weight:900!important; }
.crm-form-page .step-switcher {
  display:inline-flex;
  gap:6px;
  padding:6px;
  background:#eef2ff;
  border:1px solid #e1e8ff;
  border-radius:22px;
}
.crm-form-page .step-switcher button {
  min-height:42px;
  border-radius:16px;
  padding:0 16px;
  color:#536080;
  font-weight:900;
}
.crm-form-page .step-switcher button.active { color:#fff!important; }
.payment-status-card,
.crm-status-choice {
  display:flex!important;
  flex-direction:column!important;
  gap:7px;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid #e3eaff!important;
  box-shadow:0 10px 26px rgba(30,41,90,.05)!important;
  color:#0b123d!important;
}
.payment-status-card input { position:absolute; opacity:0; pointer-events:none; }
.payment-status-caption,
.crm-status-choice-caption {
  color:#7a86a6!important;
  font-size:11px!important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}
.payment-status-title,
.crm-status-choice-title { color:#0b123d!important; font-size:15px!important; font-weight:900!important; line-height:1.25!important; }
.payment-status-description,
.crm-status-choice-text { color:#667085!important; font-size:12px!important; line-height:1.45!important; font-weight:600!important; }
.payment-status-card.active,
.crm-status-choice.active {
  background:linear-gradient(180deg,#f2f5ff 0%,#fff 100%)!important;
  border-color:#6366f1!important;
  box-shadow:0 16px 36px rgba(79,70,229,.14)!important;
}
#confirmation-settings {
  border-radius:26px!important;
  border:1px solid #dfe6ff!important;
  background:linear-gradient(180deg,#f8faff 0%,#fff 100%)!important;
  box-shadow:0 12px 30px rgba(30,41,90,.05)!important;
}
#btn-search-clients,
#btn-search-services,
button[id^="btn-"] {
  border-radius:16px!important;
  text-transform:none!important;
}

/* Calendar final */
.crm-calendar-section { padding:22px!important; }
.crm-calendar-header {
  grid-template-columns:56px minmax(0,1fr) 56px!important;
  background:#f8faff;
  border:1px solid #e7ecf8;
  border-radius:24px;
  padding:12px;
}
.crm-today-btn { margin-top:10px!important; min-width:104px; }
.crm-week-grid { align-items:stretch; }
.crm-week-day { background:linear-gradient(180deg,#fff 0%,#fbfcff 100%); }
.crm-week-day-head { min-height:154px; }
.crm-week-day .p-3 { background:#fff; }
.crm-booking-card {
  background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%)!important;
  border-color:#e4eaf7!important;
}
.crm-booking-card:hover { box-shadow:0 20px 44px rgba(30,41,90,.10)!important; }
.crm-day-shell {
  max-width:820px!important;
  background:#fff;
  box-shadow:0 14px 36px rgba(30,41,90,.06);
}
.crm-day-row { grid-template-columns:92px minmax(0, 1fr)!important; gap:16px!important; }
.crm-day-card-wrap { max-width:520px!important; }
.crm-booking-card.compact-day { max-width:520px!important; }
.crm-booking-card.compact-day .mt-3 { margin-top:8px!important; }
.crm-booking-card.compact-day .border-t { padding-top:8px!important; }

/* Clients/services/search pages */
.crm-legacy-shell > .bg-\[\#f5f7fe\],
.crm-legacy-shell > div.bg-\[\#f5f7fe\],
.crm-legacy-shell .bg-\[\#f5f7fe\] {
  background:transparent!important;
  padding:0!important;
}
#clients-container,
#services-grid,
#chats-grid,
.support-layout,
.company-settings-shell,
.payments-shell,
.company-data-shell {
  position:relative;
}
#clients-container {
  border-radius:28px!important;
  border:1px solid #e4eaf7!important;
  box-shadow:0 18px 46px rgba(30,41,90,.07)!important;
  overflow:hidden!important;
}
#clients-container > div:first-child {
  background:#f8faff!important;
  color:#667085!important;
  border-bottom:1px solid #e4eaf7!important;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:12px;
}
#clients-grid > div:not(.text-center) {
  background:#fff!important;
  transition:.18s ease;
}
#clients-grid > div:not(.text-center):hover {
  background:#f8faff!important;
  transform:translateY(-1px);
}
#services-grid {
  gap:18px!important;
}
#services-grid > div.bg-white {
  align-items:stretch!important;
  border-radius:28px!important;
  border:1px solid #e4eaf7!important;
  box-shadow:0 18px 42px rgba(30,41,90,.07)!important;
  padding:18px!important;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#fbfcff 100%)!important;
}
#services-grid > div.bg-white:hover { transform:translateY(-3px); box-shadow:0 24px 50px rgba(30,41,90,.11)!important; }
#services-grid > div.bg-white > div:first-child {
  width:100%!important;
  height:136px!important;
  border:0!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,#eef2ff,#f8faff)!important;
  margin-bottom:14px!important;
}
#services-grid h3 { color:#0b123d!important; text-align:left!important; font-size:16px!important; line-height:1.3!important; min-height:42px; }
#services-grid a,
#services-grid button { border-radius:16px!important; text-transform:none!important; }
#services-grid form button { background:#fff1f2!important; color:#e11d48!important; border:1px solid #fecdd3!important; }

/* Legacy tables and cards across modules */
.crm-legacy-shell .bg-white,
.crm-legacy-shell .rounded-xl,
.crm-legacy-shell .rounded-2xl,
.crm-legacy-shell .rounded-3xl {
  border-radius:24px!important;
}
.crm-legacy-shell .bg-white:not(.no-redesign-card) {
  border:1px solid #e4eaf7!important;
  box-shadow:0 14px 36px rgba(30,41,90,.06)!important;
}
.crm-legacy-shell [class*="bg-\[\#E5EEFF\]"],
.crm-legacy-shell [class*="bg-\[\#8A97F647\]"] {
  background:#eef2ff!important;
}
.crm-legacy-shell [class*="text-\[\#6374F6\]"],
.crm-legacy-shell [class*="text-\[\#3047EC\]"] { color:#4f46e5!important; }
.crm-legacy-shell [class*="bg-\[\#6374F6\]"],
.crm-legacy-shell [class*="bg-\[\#3047EC\]"],
.crm-legacy-shell [class*="bg-\[\#4754B1\]"] {
  background:linear-gradient(135deg,#4f46e5,#6366f1)!important;
  color:white!important;
}
.crm-legacy-shell a[class*="bg-"],
.crm-legacy-shell button[class*="bg-"] {
  text-transform:none!important;
  border-radius:16px!important;
  font-weight:800!important;
}
.crm-legacy-shell .flex.items-center.bg-\[\#E5EEFF\] {
  background:#fff!important;
  border:1px solid #e4eaf7!important;
  box-shadow:0 12px 28px rgba(30,41,90,.05);
  border-radius:20px!important;
}
.crm-legacy-shell input::placeholder,
.crm-legacy-shell textarea::placeholder { color:#98a2b3!important; }

/* Company/payments/support/support-ticket visual target */
.payments-shell .payment-card,
.company-settings-shell .settings-card,
.company-data-shell .data-card,
.support-ticket-card,
.review-card,
.document-card {
  border-radius:28px!important;
  background:#fff!important;
  border:1px solid #e4eaf7!important;
  box-shadow:0 18px 46px rgba(30,41,90,.07)!important;
}
.support-chat-pane,
.crm-messenger-pane,
.chat-conversation-pane {
  border-radius:28px!important;
  border:1px solid #e4eaf7!important;
  background:#fff!important;
  box-shadow:0 18px 46px rgba(30,41,90,.07)!important;
}

/* timetable sticky approved behaviour */
.specialists-timetable-page .weekday-row,
.specialists-timetable-page thead,
.specialists-timetable-page .days-header,
.specialists-timetable-page .schedule-days-header {
  position:sticky!important;
  top:0!important;
  z-index:20!important;
  background:#fff!important;
  box-shadow:0 12px 24px rgba(30,41,90,.07)!important;
}
.specialists-timetable-page .scroll-arrow,
.specialists-timetable-page .scroll-btn,
.specialists-timetable-page .timetable-nav-arrows {
  position:sticky!important;
  top:78px!important;
  z-index:21!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  align-items:center!important;
}

@media (max-width: 1024px) {
  .crm-form-page #content-client:not(.hidden) { grid-template-columns:1fr; }
  .crm-page-title,
  .crm-page-mini-header .title { font-size:30px!important; }
  .crm-page-topbar,
  .crm-page-mini-header { padding:18px; }
}
@media (max-width: 720px) {
  .crm-redesign-page::before,
  .crm-legacy-shell::before { display:none; }
  .crm-day-row { grid-template-columns:1fr!important; }
  .crm-day-time { justify-content:flex-start!important; }
  .crm-day-card-wrap,
  .crm-booking-card.compact-day { max-width:100%!important; }
}

/* === Flyer CRM global redesign final layer: approved clear social-SaaS style === */
:root{
  --fr-page-pad: clamp(18px, 2.4vw, 34px);
  --fr-card-radius: 28px;
  --fr-card-radius-sm: 20px;
  --fr-primary-grad: linear-gradient(135deg,#4f46e5 0%,#6366f1 62%,#7c8cff 100%);
  --fr-soft-grad: linear-gradient(135deg,#ffffff 0%,#f8fbff 55%,#eef4ff 100%);
  --fr-glass: rgba(255,255,255,.90);
  --fr-text-strong:#0b123d;
  --fr-text-soft:#667085;
  --fr-border:#e4eaf7;
  --fr-shadow-deep:0 24px 70px rgba(31,41,88,.10);
  --fr-shadow-card:0 14px 38px rgba(31,41,88,.075);
}
body::before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(circle at 18% 4%,rgba(99,102,241,.14),transparent 28%),radial-gradient(circle at 92% 0%,rgba(56,189,248,.16),transparent 30%),linear-gradient(180deg,#fbfcff 0%,#f5f7ff 100%);} 
body::after{content:"";position:fixed;right:28px;top:24px;width:260px;height:260px;border-radius:72px;background:linear-gradient(135deg,rgba(99,102,241,.14),rgba(56,189,248,.10));transform:rotate(-12deg);z-index:-1;pointer-events:none;filter:blur(.2px);} 
#main-content>div{padding:0!important;background:transparent!important;}
#main-content>div>.crm-redesign-page,#main-content>div>.crm-form-shell,#main-content>div>.crm-legacy-shell{padding-top:var(--fr-page-pad)!important;}
#sidebar{width:288px!important;background:linear-gradient(180deg,#111a52 0%,#17246d 46%,#0b123d 100%)!important;padding:10px 8px 0!important;}
#main-content.lg\:ml-64{margin-left:288px!important;}
#sidebar.lg\:w-16{width:76px!important;}
#main-content.lg\:ml-16{margin-left:76px!important;}
#sidebar .brand-shell{border-radius:28px!important;padding:14px!important;background:rgba(255,255,255,.10)!important;}
#sidebar .brand-logos{display:flex!important;gap:12px!important;align-items:center!important;justify-content:flex-start!important;}
#sidebar .brand-connector{display:none!important;}
#sidebar .brand-logo-tile:first-child{width:46px!important;height:46px!important;flex:0 0 46px!important;background:#fff!important;}
#sidebar .brand-logo-tile:last-child{width:42px!important;height:42px!important;flex:0 0 42px!important;}
#sidebar .brand-shell::after{content:"Flyer CRM";font-weight:900;color:#fff;font-size:16px;letter-spacing:-.02em;white-space:nowrap;}
#sidebar .menu-item-fixed,#sidebar .menu-item-children-fixed{border-radius:18px!important;min-height:46px!important;gap:2px!important;}
#sidebar .menu-item-fixed i,#sidebar .menu-item-children-fixed svg,#sidebar .menu-item-children-fixed i{opacity:.92;}
#sidebar .menu-hover{border-radius:18px!important;}
#sidebar .menu-hover:hover{background:rgba(255,255,255,.10)!important;}
#sidebar .menu-active{background:var(--fr-primary-grad)!important;}
.crm-page-shell,.crm-legacy-shell,.crm-form-shell{max-width:1460px!important;margin:0 auto!important;padding-left:var(--fr-page-pad)!important;padding-right:var(--fr-page-pad)!important;padding-bottom:64px!important;}
.crm-page-topbar,.crm-page-mini-header,.crm-auto-header{position:relative;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:22px!important;margin:0 0 22px!important;padding:0!important;}
.crm-page-topbar::after,.crm-page-mini-header::after,.crm-auto-header::after{content:"";position:absolute;right:0;top:-22px;width:170px;height:120px;border-radius:42px;background:linear-gradient(135deg,rgba(99,102,241,.13),rgba(56,189,248,.09));transform:rotate(-8deg);z-index:-1;}
.crm-page-title,.crm-page-mini-header .title,.crm-auto-title{font-size:clamp(30px,3vw,42px)!important;line-height:1.03!important;font-weight:900!important;letter-spacing:-.055em!important;color:var(--fr-text-strong)!important;margin:6px 0 0!important;}
.crm-page-subtitle,.crm-page-mini-header .subtitle,.crm-auto-subtitle{font-size:15px!important;line-height:1.58!important;font-weight:600!important;color:var(--fr-text-soft)!important;max-width:780px!important;margin:9px 0 0!important;}
.crm-eyebrow,.crm-auto-eyebrow{display:inline-flex!important;align-items:center!important;gap:8px!important;border-radius:999px!important;padding:8px 13px!important;background:rgba(255,255,255,.88)!important;border:1px solid rgba(99,102,241,.14)!important;color:#4f46e5!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.06em!important;box-shadow:var(--fr-shadow-card)!important;}
.crm-actions{gap:10px!important;}
.crm-btn,.content-transition .btn,.content-transition a.btn{height:44px!important;border-radius:16px!important;padding:0 17px!important;font-weight:900!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;text-decoration:none!important;}
.crm-btn-primary,.content-transition .btn-primary,.content-transition [class*="bg-[#3047EC]"],.content-transition [class*="bg-[#6374F6]"],.content-transition [class*="bg-[#4754B1]"]{background:var(--fr-primary-grad)!important;color:#fff!important;box-shadow:0 16px 34px rgba(79,70,229,.23)!important;border:0!important;}
.crm-btn-soft,.content-transition .btn-secondary{background:#fff!important;color:#4f46e5!important;border:1px solid rgba(99,102,241,.14)!important;box-shadow:var(--fr-shadow-card)!important;}
.crm-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))!important;gap:16px!important;}
.crm-kpi-card,.crm-card,.crm-card-strong,.crm-controls-card,.crm-calendar-section,.crm-form-card,.section-card,.glass-card{background:var(--fr-glass)!important;border:1px solid var(--fr-border)!important;border-radius:var(--fr-card-radius)!important;box-shadow:var(--fr-shadow-card)!important;backdrop-filter:blur(10px)!important;}
.crm-kpi-card{min-height:108px!important;padding:20px!important;}
.crm-kpi-icon{background:#eef2ff!important;color:#4f46e5!important;border-radius:18px!important;width:48px!important;height:48px!important;}
.crm-kpi-label{font-size:11px!important;line-height:1.1!important;color:#7a86a6!important;}
.crm-kpi-value{font-size:clamp(22px,2vw,30px)!important;}
.crm-controls-card{padding:12px!important;}
.crm-tab-btn,.crm-format-toggle button{font-size:14px!important;}
.crm-tab-btn.active,.crm-format-toggle button.active{background:#fff!important;color:#4f46e5!important;box-shadow:0 10px 24px rgba(31,41,88,.08)!important;}
.crm-format-toggle{background:#eef2ff!important;border-radius:18px!important;padding:5px!important;}
.crm-calendar-section{padding:22px!important;}
.crm-calendar-header{grid-template-columns:auto minmax(0,1fr) auto!important;}
.crm-calendar-title h2{font-size:24px!important;}
.crm-today-btn{height:38px!important;border-radius:14px!important;background:#fff!important;color:#4f46e5!important;border:1px solid rgba(99,102,241,.16)!important;box-shadow:var(--fr-shadow-card)!important;}
.crm-nav-round{background:#eef2ff!important;color:#4f46e5!important;border-radius:16px!important;}
.crm-week-grid{grid-template-columns:repeat(7,minmax(205px,1fr))!important;}
.crm-week-day{border-radius:24px!important;background:#fff!important;border:1px solid var(--fr-border)!important;box-shadow:0 12px 32px rgba(31,41,88,.055)!important;}
.crm-week-day-head{background:linear-gradient(180deg,#fbfcff,#f6f8ff)!important;padding:15px!important;}
.crm-week-stats{gap:8px!important;}
.crm-week-stat{border-radius:15px!important;background:#fff!important;}
.crm-day-shell{max-width:920px!important;border-radius:28px!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;border:1px solid var(--fr-border)!important;box-shadow:var(--fr-shadow-card)!important;}
.crm-day-row{grid-template-columns:92px minmax(0,1fr)!important;gap:16px!important;min-height:82px!important;padding:15px 18px!important;background:#fff!important;}
.crm-day-row:nth-child(odd){background:#fbfcff!important;}
.crm-day-time span{background:#eef2ff!important;color:#4f46e5!important;font-size:13px!important;min-width:70px!important;border-radius:14px!important;}
.crm-day-card-wrap,.crm-booking-card.compact-day{max-width:560px!important;}
.crm-booking-card{background:#fff!important;border:1px solid var(--fr-border)!important;border-radius:20px!important;box-shadow:0 12px 26px rgba(31,41,88,.06)!important;}
.crm-status-pill{font-size:11px!important;border-radius:999px!important;line-height:1!important;padding:6px 9px!important;}
.crm-form-grid{grid-template-columns:minmax(0,1fr) 420px!important;gap:22px!important;}
.crm-form-card{padding:24px!important;}
.crm-status-panel{grid-template-columns:1fr!important;}
.crm-status-choice,.payment-status-card{border-radius:22px!important;background:#fff!important;border:1px solid #dfe7f6!important;min-height:auto!important;padding:16px!important;}
.crm-status-choice.active,.payment-status-card.active{background:#eef2ff!important;border-color:#4f46e5!important;box-shadow:0 14px 34px rgba(79,70,229,.14)!important;}
/* legacy page universal content: make old screens visually match the approved design */
.content-transition #main-content, #main-content{background:transparent!important;}
#main-content main,#main-content section,#main-content article{scroll-margin-top:24px;}
#main-content h1:not(.crm-page-title):not(.crm-auto-title),#main-content h2:not(.crm-auto-title){letter-spacing:-.04em!important;color:var(--fr-text-strong)!important;font-weight:900!important;}
#main-content p,#main-content label,#main-content .text-gray-500,#main-content .text-slate-500,#main-content .text-gray-600,#main-content .text-slate-600{color:var(--fr-text-soft)!important;}
#main-content .bg-white,#main-content [class*="bg-white"],#main-content form,#main-content table,#main-content .card,#main-content .rounded-lg,#main-content .rounded-xl,#main-content .rounded-2xl,#main-content .rounded-3xl{border-color:var(--fr-border)!important;}
#main-content .bg-white:not(#sidebar):not(.brand-logo-tile),#main-content [class*="bg-white"]:not(#sidebar):not(.brand-logo-tile){background:rgba(255,255,255,.92)!important;}
#main-content .shadow,#main-content .shadow-sm,#main-content .shadow-md,#main-content .shadow-lg,#main-content .shadow-xl{box-shadow:var(--fr-shadow-card)!important;}
#main-content table{width:100%!important;border-radius:24px!important;overflow:hidden!important;border:1px solid var(--fr-border)!important;box-shadow:var(--fr-shadow-card)!important;}
#main-content thead th{background:#f8faff!important;color:#7a86a6!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-size:11px!important;font-weight:900!important;padding:14px!important;}
#main-content tbody td{padding:15px!important;border-bottom:1px solid #eef2f8!important;font-weight:600!important;}
#main-content tbody tr:hover{background:#f8faff!important;}
#main-content input,#main-content textarea,#main-content select{min-height:46px!important;border-radius:16px!important;border:1px solid #dfe7f6!important;background:#fff!important;color:#101828!important;font-weight:600!important;}
#main-content input:focus,#main-content textarea:focus,#main-content select:focus{border-color:#6366f1!important;box-shadow:0 0 0 4px rgba(99,102,241,.10)!important;outline:0!important;}
#main-content button:not(.crm-nav-round):not(.crm-today-btn),#main-content a[class*="px-"][class*="py-"]{border-radius:16px!important;font-weight:900!important;}
#main-content [class*="text-[#3047EC]"],#main-content [class*="text-[#6374F6]"],#main-content [class*="text-[#8A97F6]"]{color:#4f46e5!important;}
#main-content [class*="bg-[#E5EEFF]"],#main-content [class*="bg-[#D7DCFC]"],#main-content [class*="bg-[#8A97F647]"]{background:#eef2ff!important;color:#4f46e5!important;}
#main-content [class*="border-[#1DA6E9]"],#main-content [class*="border-[#6374F6]"]{border-color:#dfe7f6!important;}
/* automatic module shell for legacy templates */
.crm-legacy-shell{display:block!important;}
.crm-legacy-shell>.container,.crm-legacy-shell>.mx-auto,.crm-legacy-shell>.max-w-7xl,.crm-legacy-shell>.max-w-6xl,.crm-legacy-shell>.max-w-5xl{max-width:100%!important;padding:0!important;margin:0!important;}
.crm-legacy-shell>div:not(.crm-page-mini-header):not(.crm-auto-header),.crm-legacy-shell>form,.crm-legacy-shell>section{border-radius:28px;}
/* support, chats, services, clients specific clarity */
.chat-container,.chats-layout,.support-layout,.services-layout,.clients-layout{display:grid;gap:18px;}
.chat-item,.service-card,.client-card,.specialist-card,.moderator-card,.ticket-card{background:#fff!important;border:1px solid var(--fr-border)!important;border-radius:22px!important;box-shadow:var(--fr-shadow-card)!important;}
/* schedule/timetable: sticky headers and navigation always visible */
.timetable-header,.days-header,.schedule-header,[data-sticky-weekdays]{position:sticky!important;top:0!important;z-index:30!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(10px)!important;box-shadow:0 10px 24px rgba(31,41,88,.06)!important;}
.scroll-arrow,.timetable-arrow,.nav-scroll-arrow{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;white-space:nowrap!important;border-radius:16px!important;background:#eef2ff!important;color:#4f46e5!important;box-shadow:var(--fr-shadow-card)!important;}
/* payments and confirmations: never merge visually */
.payment-status-section,.booking-confirmation-section{border-radius:24px!important;border:1px solid var(--fr-border)!important;background:#fff!important;box-shadow:var(--fr-shadow-card)!important;padding:18px!important;margin-top:16px!important;}
.payment-status-section{border-left:4px solid #22c55e!important;}
.booking-confirmation-section{border-left:4px solid #6366f1!important;}
@media(max-width:1200px){#sidebar{width:264px!important}#main-content.lg\:ml-64{margin-left:264px!important}.crm-form-grid{grid-template-columns:1fr!important}.crm-week-grid{grid-template-columns:repeat(7,minmax(235px,1fr))!important}.crm-page-topbar,.crm-page-mini-header,.crm-auto-header{align-items:flex-start!important;flex-direction:column!important}}
@media(max-width:1023px){#sidebar{width:288px!important}#main-content.lg\:ml-64{margin-left:0!important}#main-content>div>.crm-redesign-page,#main-content>div>.crm-form-shell,#main-content>div>.crm-legacy-shell{padding-top:70px!important}}
@media(max-width:768px){body::after{display:none}.crm-page-shell,.crm-legacy-shell,.crm-form-shell{padding-left:16px!important;padding-right:16px!important}.crm-kpi-grid{grid-template-columns:1fr!important}.crm-week-grid{grid-template-columns:repeat(7,minmax(230px,1fr))!important}.crm-day-row{grid-template-columns:72px minmax(0,1fr)!important;gap:12px!important}.crm-day-card-wrap,.crm-booking-card.compact-day{max-width:100%!important}.crm-actions{width:100%;}.crm-actions .crm-btn{flex:1 1 auto}}

/* ------------------------------------------------------------------
   Flyer CRM redesign v3 — approved presentation-aligned interface
   ------------------------------------------------------------------ */
:root{
  --fr-glass: rgba(255,255,255,.82);
  --fr-glass-strong: rgba(255,255,255,.95);
  --fr-blue-soft:#eef5ff;
  --fr-purple-soft:#f3f0ff;
  --fr-page-max:1480px;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 9% 8%, rgba(79,70,229,.13), transparent 26%),
    radial-gradient(circle at 86% 4%, rgba(56,189,248,.18), transparent 25%),
    radial-gradient(circle at 76% 95%, rgba(167,139,250,.12), transparent 30%),
    linear-gradient(180deg,#fbfcff 0%,#f5f7ff 58%,#f8faff 100%);
}
body::after{
  content:"";
  position:fixed;
  top:34px;
  right:42px;
  width:250px;
  height:250px;
  z-index:-1;
  pointer-events:none;
  opacity:.8;
  background:
    linear-gradient(135deg, rgba(99,102,241,.22), rgba(56,189,248,.16));
  border-radius:70px;
  transform:rotate(-12deg);
  filter:blur(.5px);
}

/* Shell/navigation: CRM should feel like a modern SaaS/social dashboard */
#sidebar{
  width:272px!important;
  padding:12px!important;
  background:linear-gradient(180deg,#0f1646 0%,#17246d 50%,#0b123d 100%)!important;
}
#main-content.lg\:ml-64{margin-left:272px!important;}
#sidebar.lg\:w-16{width:82px!important;}
#main-content.lg\:ml-16{margin-left:82px!important;}
#sidebar .menu-item-fixed,
#sidebar .menu-item-children-fixed{
  min-height:48px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  color:rgba(233,239,255,.86)!important;
}
#sidebar .menu-item-children-fixed{margin-left:0!important;padding-left:16px!important;}
#sidebar .menu-item-fixed i,
#sidebar .menu-item-children-fixed svg,
#sidebar .menu-item-children-fixed i{
  color:rgba(217,226,255,.88)!important;
}
#sidebar .menu-hover:hover{background:rgba(255,255,255,.095)!important;}
#sidebar .menu-active,
#sidebar .menu-hover.menu-active{
  background:linear-gradient(135deg,#4f46e5,#6366f1 70%,#7c8cff)!important;
  box-shadow:0 16px 34px rgba(76,88,255,.34)!important;
}
#sidebar .mt-6{margin-top:20px!important;padding-top:16px!important;border-top:1px solid rgba(255,255,255,.10)!important;}
#sidebar .mt-6 > .menu-item-fixed{opacity:.78;min-height:36px!important;padding-top:4px!important;padding-bottom:4px!important;}
#sidebar .mt-6 > .menu-item-fixed span{
  text-transform:uppercase!important;
  letter-spacing:.10em!important;
  font-size:11px!important;
}
#crm-chat-badge{background:#ef4444!important;box-shadow:0 7px 18px rgba(239,68,68,.36)!important;}

/* Page skeleton */
.crm-redesign-page,
.crm-legacy-shell,
.crm-form-shell{
  max-width:var(--fr-page-max)!important;
  width:100%!important;
  margin:0 auto!important;
  padding:30px 32px 64px!important;
}
.crm-page-shell{max-width:var(--fr-page-max)!important;}
.crm-page-topbar,
.crm-page-mini-header{
  position:relative;
  margin-bottom:22px!important;
  padding:0!important;
}
.crm-page-topbar::after,
.crm-page-mini-header::after{
  content:"";
  position:absolute;
  right:12px;
  top:0;
  width:130px;
  height:86px;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(99,102,241,.15),rgba(56,189,248,.11));
  transform:rotate(-8deg);
  pointer-events:none;
}
.crm-eyebrow{
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(14px)!important;
  border-color:rgba(99,102,241,.15)!important;
  box-shadow:0 12px 30px rgba(32,45,115,.07)!important;
}
.crm-page-title,
.crm-page-mini-header .title{
  font-size:clamp(30px,3vw,42px)!important;
  letter-spacing:-.055em!important;
  color:#0b123d!important;
}
.crm-page-subtitle,
.crm-page-mini-header .subtitle{
  color:#64708f!important;
  font-weight:600!important;
}

/* Approved app-like cards and controls across legacy pages */
.crm-legacy-shell > div[class*="bg-"],
.crm-form-page form:not(.m-0),
.crm-legacy-shell section,
.crm-legacy-shell .bg-white,
.crm-redesign-page section.bg-white,
.crm-redesign-page .bg-white,
.crm-form-page .bg-white{
  border-radius:28px!important;
  border:1px solid rgba(226,232,240,.95)!important;
  box-shadow:0 16px 42px rgba(30,41,90,.065)!important;
}
.crm-legacy-shell > div[class*="bg-"]{
  background:rgba(255,255,255,.60)!important;
  backdrop-filter:blur(18px)!important;
}
.crm-legacy-shell .flex.items-center.gap-4.mb-8,
.crm-legacy-shell .flex.items-center.gap-4.mb-6{
  background:rgba(255,255,255,.9)!important;
  border:1px solid #e5ebf8!important;
  border-radius:26px!important;
  padding:12px!important;
  box-shadow:0 14px 34px rgba(30,41,90,.055)!important;
}
.crm-legacy-shell input[id="search-input"],
.crm-legacy-shell input[placeholder*="Поиск"]{
  height:52px!important;
  font-size:15px!important;
  font-weight:700!important;
}
.crm-legacy-shell a[href*="add"],
.crm-legacy-shell a[href*="create"],
.crm-legacy-shell button[type="submit"],
.crm-legacy-shell .bg-\[\#D7DCFC\]{
  border-radius:18px!important;
  min-height:46px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}

/* Tables as modern list/table hybrid */
.crm-legacy-shell table,
.crm-redesign-page table{
  width:100%!important;
  overflow:hidden!important;
  border:1px solid #e5ebf8!important;
  border-radius:24px!important;
  box-shadow:0 14px 34px rgba(30,41,90,.05)!important;
}
.crm-legacy-shell thead th,
.crm-redesign-page thead th{
  height:50px!important;
  background:#f8faff!important;
  color:#7b86a6!important;
  font-weight:900!important;
  font-size:11px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.crm-legacy-shell tbody tr,
.crm-redesign-page tbody tr{
  transition:.16s ease!important;
}
.crm-legacy-shell tbody tr:hover,
.crm-redesign-page tbody tr:hover{
  background:#f8faff!important;
}
.crm-legacy-shell td,
.crm-redesign-page td{
  padding-top:14px!important;
  padding-bottom:14px!important;
  vertical-align:middle!important;
}

/* CRM calendar: match agreed compact desk */
.crm-calendar-page .crm-page-topbar{
  background:rgba(255,255,255,.72)!important;
  border:1px solid #e5ebf8!important;
  border-radius:30px!important;
  padding:22px 24px!important;
  box-shadow:0 16px 42px rgba(30,41,90,.065)!important;
  backdrop-filter:blur(18px)!important;
}
.crm-calendar-page .crm-page-topbar::after{right:24px;top:18px;}
.crm-calendar-page .crm-kpi-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
}
.crm-kpi-card{
  min-height:88px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.92)!important;
  position:relative!important;
  overflow:hidden!important;
}
.crm-kpi-card::after{
  content:"";
  position:absolute;
  right:-26px;
  top:-30px;
  width:92px;
  height:92px;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(79,70,229,.12),rgba(56,189,248,.08));
  transform:rotate(-14deg);
}
.crm-kpi-card > *{position:relative;z-index:1;}
.crm-kpi-value{font-size:24px!important;}
.crm-controls-card{
  border-radius:28px!important;
  padding:12px!important;
  background:rgba(255,255,255,.92)!important;
  backdrop-filter:blur(18px)!important;
}
.crm-format-toggle,
.crm-tabs{background:#f1f5ff!important;border-radius:20px!important;padding:6px!important;}
.crm-format-toggle button,
.crm-tab-btn{min-height:42px!important;border-radius:16px!important;}
.crm-calendar-section{
  padding:18px!important;
  border-radius:32px!important;
  background:rgba(255,255,255,.96)!important;
}
.crm-calendar-header{
  background:#f8faff!important;
  border:1px solid #e7ecf8!important;
  border-radius:24px!important;
  padding:12px!important;
}
.crm-week-grid{gap:14px!important;}
.crm-week-day{
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff,#fbfcff)!important;
}
.crm-week-day-head{background:#f8faff!important;padding:14px!important;}
.crm-booking-card{
  border-radius:22px!important;
  border:1px solid #e8eef9!important;
  background:linear-gradient(180deg,#fff,#fcfdff)!important;
}
.crm-booking-card:hover{
  box-shadow:0 18px 44px rgba(79,70,229,.11)!important;
}
.crm-day-shell{
  max-width:960px!important;
  background:#fbfcff!important;
  border-radius:28px!important;
  border:1px solid #e5ebf8!important;
}
.crm-day-row{
  grid-template-columns:96px minmax(0,640px)!important;
  justify-content:start!important;
  gap:18px!important;
  padding:14px 18px!important;
  background:#fff!important;
}
.crm-day-row:nth-child(even){background:#fbfcff!important;}
.crm-day-time span{
  width:70px!important;
  background:#eef2ff!important;
  color:#4f46e5!important;
}
.crm-day-card-wrap,
.crm-booking-card.compact-day{max-width:640px!important;}
.crm-booking-card.compact-day{padding:14px!important;}

/* Booking create/edit: approved two-column working layout */
.crm-form-page .crm-page-topbar{
  background:rgba(255,255,255,.78)!important;
  border:1px solid #e5ebf8!important;
  border-radius:30px!important;
  padding:22px 24px!important;
  box-shadow:0 16px 42px rgba(30,41,90,.065)!important;
}
.step-switcher{
  width:100%!important;
  max-width:520px!important;
  background:#f1f5ff!important;
  padding:6px!important;
  border:1px solid #e5ebf8!important;
}
.step-switcher button{flex:1!important;min-height:44px!important;border-radius:16px!important;}
.payment-status-card{
  min-height:148px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  border-radius:22px!important;
  background:#f8faff!important;
}
.payment-status-card.active{
  background:#eef2ff!important;
  border-color:#4f46e5!important;
}
.payment-status-title{font-size:16px!important;font-weight:900!important;color:#0b123d!important;}
.payment-status-description{font-size:12px!important;font-weight:600!important;color:#5c6785!important;}
.crm-form-page .floating-label input,
.crm-form-page .floating-label textarea,
.crm-form-page .floating-label select{
  min-height:54px!important;
  background:#fff!important;
  border:1px solid #dfe7f6!important;
  border-radius:18px!important;
}
.crm-form-page .floating-label label{color:#7b86a6!important;font-weight:800!important;}
.crm-form-page .time-slot{border-radius:14px!important;min-height:38px!important;font-weight:800!important;}
.crm-form-page .nav-arrow{width:48px!important;height:48px!important;border-radius:16px!important;background:#eef2ff!important;color:#4f46e5!important;}
.crm-form-page .day-block{border-radius:16px!important;border:1px solid #e7ecf8!important;}

/* Module-specific approved feel */
body:has(#search-input) .crm-page-mini-header,
.crm-legacy-shell .crm-page-mini-header{
  background:rgba(255,255,255,.78)!important;
  border:1px solid #e5ebf8!important;
  border-radius:30px!important;
  padding:22px 24px!important;
  box-shadow:0 16px 42px rgba(30,41,90,.065)!important;
  backdrop-filter:blur(18px)!important;
}
.crm-legacy-shell .grid,
.crm-legacy-shell .flex{min-width:0;}
.crm-legacy-shell img{object-fit:cover;}
.crm-legacy-shell [class*="from-\[\#3047EC\]"],
.crm-legacy-shell [class*="via-\[\#6374F6\]"]{
  background:linear-gradient(135deg,#4f46e5,#6366f1 72%,#8b5cf6)!important;
}
.crm-legacy-shell [class*="bg-slate-50"]{background:#f8faff!important;}
.crm-legacy-shell [class*="bg-blue-50"],
.crm-legacy-shell [class*="bg-\[\#EEF2FF\]"]{background:#eef2ff!important;}
.crm-legacy-shell [class*="text-blue-"],
.crm-legacy-shell [class*="text-\[\#3047EC\]"]{color:#4f46e5!important;}
.crm-legacy-shell [class*="text-slate-500"]{color:#71809f!important;}
.crm-legacy-shell [class*="text-slate-900"]{color:#0b123d!important;}

/* Chats/support resemble messenger */
.crm-legacy-shell .chat-container,
.crm-legacy-shell [class*="chat"],
.crm-legacy-shell [class*="ticket"]{
  scrollbar-width:thin;
  scrollbar-color:rgba(99,102,241,.25) transparent;
}
.crm-legacy-shell [class*="message"],
.crm-legacy-shell [class*="bubble"]{
  border-radius:22px!important;
}

/* Safety: avoid compressed stat text and old overflow */
.crm-week-stat-label,.crm-week-stat-value{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.15!important;}
.crm-week-stat{min-height:52px!important;}
.crm-week-stat-value{font-size:13px!important;word-break:keep-all!important;}

@media(max-width:1280px){
  .crm-calendar-page .crm-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .crm-day-row{grid-template-columns:82px minmax(0,1fr)!important;}
  .crm-day-card-wrap,.crm-booking-card.compact-day{max-width:100%!important;}
}
@media(max-width:1024px){
  #sidebar{width:256px!important;}
  #main-content.lg\:ml-64{margin-left:256px!important;}
  .crm-redesign-page,.crm-legacy-shell,.crm-form-shell{padding:22px 18px 48px!important;}
  .crm-calendar-page .crm-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:768px){
  body::after{display:none;}
  #main-content.lg\:ml-64{margin-left:0!important;}
  .crm-calendar-page .crm-kpi-grid{grid-template-columns:1fr!important;}
  .crm-page-topbar,.crm-page-mini-header{border-radius:24px!important;padding:18px!important;}
  .crm-day-row{grid-template-columns:68px minmax(0,1fr)!important;padding:12px!important;gap:10px!important;}
  .crm-day-time span{width:58px!important;font-size:11px!important;}
}

/* v3 comprehensive CRM redesign pass */
.crm-polished .crm-legacy-inner{background:transparent!important;min-height:auto!important;padding:0!important;}
.crm-polished .crm-legacy-inner>.max-w-7xl,.crm-polished .crm-legacy-inner>.max-w-6xl,.crm-polished .crm-legacy-inner>.max-w-5xl{max-width:none!important;margin:0!important;}
.crm-polished .crm-legacy-gradient-hero{display:none!important;}
.crm-polished .crm-table-shell{width:100%;overflow:auto;border-radius:26px;background:#fff;border:1px solid #e4eaf7;box-shadow:var(--fr-shadow-soft);}
.crm-polished .crm-table-shell table{min-width:760px;width:100%;box-shadow:none!important;border-radius:0!important;}
.crm-polished .crm-form-polish{border-radius:28px!important;background:rgba(255,255,255,.94)!important;border:1px solid #e4eaf7!important;box-shadow:var(--fr-shadow-soft)!important;}
.crm-polished .crm-auto-primary-action{border-radius:16px!important;font-weight:900!important;}
.crm-polished .grid>div,.crm-polished section,.crm-polished article{scroll-margin-top:24px;}
.crm-polished [class*="bg-white"],.crm-polished [class*="bg-slate-50"],.crm-polished [class*="from-white"]{border-color:#e4eaf7!important;}
.crm-polished [class*="border-slate"],.crm-polished [class*="border-gray"],.crm-polished [class*="border-[#e7eef8]"]{border-color:#e4eaf7!important;}
.crm-polished [class*="text-slate-900"],.crm-polished [class*="text-gray-900"],.crm-polished [class*="text-[#013499]"]{color:#0b123d!important;}
.crm-polished [class*="text-slate-600"],.crm-polished [class*="text-gray-500"],.crm-polished [class*="text-[#5E6B8B]"]{color:#667085!important;}
.crm-polished [class*="rounded-lg"]{border-radius:16px!important;}
.crm-polished [class*="rounded-xl"]{border-radius:20px!important;}
.crm-polished [class*="rounded-2xl"]{border-radius:22px!important;}
.crm-polished [class*="rounded-3xl"]{border-radius:28px!important;}
.crm-polished .shadow,.crm-polished .shadow-sm,.crm-polished .shadow-md,.crm-polished .shadow-lg,.crm-polished .shadow-xl,.crm-polished .shadow-2xl{box-shadow:var(--fr-shadow-soft)!important;}
.crm-polished [class*="bg-blue-"],.crm-polished [class*="bg-indigo-"]{--tw-bg-opacity:1;background-color:#eef2ff!important;color:#4f46e5!important;}
.crm-polished [class*="bg-green-"],.crm-polished [class*="bg-emerald-"]{background-color:#ecfdf3!important;color:#16a34a!important;}
.crm-polished [class*="bg-yellow-"],.crm-polished [class*="bg-orange-"]{background-color:#fff7ed!important;color:#c2410c!important;}
.crm-polished [class*="bg-red-"]{background-color:#fef2f2!important;color:#dc2626!important;}
.crm-polished a[class*="bg-[#3047EC]"],.crm-polished button[class*="bg-[#3047EC]"],.crm-polished a[class*="bg-[#6374F6]"],.crm-polished button[class*="bg-[#6374F6]"]{background:linear-gradient(135deg,#4f46e5,#6366f1)!important;color:#fff!important;box-shadow:0 16px 32px rgba(79,70,229,.22)!important;}
.crm-polished input[type="checkbox"],.crm-polished input[type="radio"]{accent-color:#4f46e5;}
.crm-polished label{color:#34405f;font-weight:700;}
.crm-polished .floating-label label{color:#667085!important;}
.crm-polished .floating-label>label{background:#fff!important;}
.crm-polished textarea{min-height:118px;}
.crm-polished .card,.crm-polished .stat-card,.crm-polished .review-card{border-radius:24px!important;border:1px solid #e4eaf7!important;box-shadow:var(--fr-shadow-soft)!important;background:#fff!important;}
.crm-table-shell th:first-child{border-top-left-radius:0!important}.crm-table-shell th:last-child{border-top-right-radius:0!important}
.crm-page-mini-header{padding:4px 2px 2px;border-bottom:0;}
.crm-page-mini-header:after{content:"";display:block;position:absolute;}
.crm-legacy-shell{position:relative;}
.crm-legacy-shell:before{content:"";position:fixed;right:-120px;top:-120px;width:360px;height:360px;border-radius:96px;background:linear-gradient(135deg,rgba(99,102,241,.12),rgba(56,189,248,.10));transform:rotate(-12deg);pointer-events:none;z-index:-1;}
@media(max-width:1024px){.crm-polished .crm-table-shell table{min-width:680px}.crm-page-mini-header .title{font-size:30px}}

.fr-context-strip{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  min-width:280px;
  max-width:560px;
  z-index:1;
}
.fr-context-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  border-radius:999px;
  padding:8px 12px;
  background:#f1f5ff;
  color:#526083;
  font-size:12px;
  line-height:1.1;
  font-weight:900;
  border:1px solid #e5ebf8;
  white-space:nowrap;
}
.fr-context-chip.is-primary{
  color:#fff;
  background:linear-gradient(135deg,#4f46e5,#6366f1);
  border-color:transparent;
  box-shadow:0 12px 24px rgba(79,70,229,.20);
}
.fr-main-panel{
  border-radius:30px!important;
  border:1px solid #e5ebf8!important;
  background:rgba(255,255,255,.68)!important;
  box-shadow:0 16px 42px rgba(30,41,90,.065)!important;
}
.fr-table-wrap{
  border-radius:26px!important;
  border:1px solid #e5ebf8!important;
  background:#fff!important;
  box-shadow:0 16px 38px rgba(30,41,90,.055)!important;
  overflow:auto!important;
}
.fr-table-wrap table{box-shadow:none!important;border:0!important;border-radius:0!important;}
.fr-search-box{
  border-radius:22px!important;
  background:#f8faff!important;
  border:1px solid #e5ebf8!important;
}
.fr-search-input{background:transparent!important;border:0!important;box-shadow:none!important;}
.fr-status-helper{
  margin-top:14px;
  padding:14px 16px;
  border-radius:18px;
  background:#f8faff;
  border:1px dashed #cfd9ff;
  color:#5b6686;
  font-size:13px;
  line-height:1.45;
  font-weight:600;
}
.fr-status-helper strong{color:#4f46e5;}
@media(max-width:900px){.fr-context-strip{justify-content:flex-start;min-width:0;width:100%;}.fr-context-chip{font-size:11px;}}

/* mini final classes */
.crm-auto-primary{background:var(--fr-primary-grad)!important;color:#fff!important;border:0!important;box-shadow:0 16px 34px rgba(79,70,229,.23)!important;}
.crm-retro-card{border-radius:28px!important;border:1px solid var(--fr-border)!important;box-shadow:var(--fr-shadow-card)!important;}
.crm-table-wrap{border-radius:26px!important;overflow:auto!important;box-shadow:var(--fr-shadow-card)!important;border:1px solid var(--fr-border)!important;background:#fff!important;}
.crm-modern-form{border-radius:28px!important;background:rgba(255,255,255,.92)!important;border:1px solid var(--fr-border)!important;box-shadow:var(--fr-shadow-card)!important;}
.crm-modern-checkbox,.crm-modern-radio{accent-color:#4f46e5!important;min-height:auto!important;}
.crm-clean-today{background:#fff!important;color:#4f46e5!important;border:1px solid rgba(99,102,241,.16)!important;box-shadow:var(--fr-shadow-card)!important;}


/* ==========================================================================
   CRM cleanup after visual QA — remove noisy generated helper rails and fix
   readability/mobile without changing backend functionality.
   ========================================================================== */
body.flyer-crm-final #sidebar .brand-shell::before,
body.flyer-crm-final #sidebar .brand-shell::after,
#sidebar .brand-shell::before,
#sidebar .brand-shell::after{
  content:none!important;
  display:none!important;
}
#sidebar .brand-shell{
  padding:16px!important;
}
#sidebar .brand-logos{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
}
#sidebar .brand-connector{
  display:none!important;
}
#sidebar .brand-logo-tile:first-child{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  padding:8px!important;
}
#sidebar .brand-logo-tile:last-child{
  width:52px!important;
  height:52px!important;
  flex:0 0 52px!important;
}
#sidebar.lg\:w-16 .brand-shell{
  padding:8px!important;
}
#sidebar.lg\:w-16 .brand-logo-tile:last-child{
  display:none!important;
}
#sidebar.lg\:w-16 .brand-logo-tile:first-child{
  width:44px!important;
  height:44px!important;
  flex-basis:44px!important;
}

/* Remove old generated rails, duplicate legacy headers and extra hints. */
.fr-action-strip,
.fr-module-steps,
.fr-context-rail,
.fr-simple-user-hint,
.fr-comfort-strip,
.fr-retired-legacy-header,
.crm-legacy-shell > .crm-page-mini-header{
  display:none!important;
}
body.fr-final-redesign .fr-comfort-strip,
body.fr-final-redesign .fr-simple-user-hint{
  display:none!important;
}

/* Keep one clean final header per legacy section. */
body.fr-final-redesign .fr-final-screen-summary{
  margin:0 0 18px!important;
  border-radius:28px!important;
  padding:20px 22px!important;
  overflow:visible!important;
}
body.fr-page-chats .fr-final-screen-summary p{
  display:none!important;
}

/* Calendar: controls directly above the calendar; no duplicate helper chips. */
.crm-calendar-page .crm-calendar-hero,
.crm-calendar-page .crm-kpi-grid{
  display:none!important;
}
.crm-calendar-page .crm-page-shell{
  gap:18px!important;
}
.crm-calendar-page .crm-controls-card{
  order:0!important;
  position:relative!important;
  top:auto!important;
  z-index:5!important;
  margin:0 0 2px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:12px!important;
}
.crm-calendar-page .tab-content{
  order:1!important;
}
.crm-calendar-page .crm-tabs,
.crm-calendar-page .crm-format-toggle{
  background:#f1f5ff!important;
  border:1px solid #e5ebf8!important;
  border-radius:20px!important;
  padding:5px!important;
  box-shadow:none!important;
}
.crm-calendar-page .crm-tabs .crm-tab-btn,
.crm-calendar-page .crm-format-toggle button,
.crm-calendar-page .crm-cancelled-toggle{
  min-height:40px!important;
  border-radius:15px!important;
  padding:0 15px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#536080!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:900!important;
  background:transparent!important;
  border:0!important;
  cursor:pointer!important;
  user-select:none!important;
  white-space:nowrap!important;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease;
}
.crm-calendar-page .crm-tabs .crm-tab-btn.active,
.crm-calendar-page .crm-format-toggle button.active,
.crm-calendar-page .crm-cancelled-toggle.active{
  background:#fff!important;
  color:#4f46e5!important;
  box-shadow:0 10px 22px rgba(31,41,88,.08)!important;
}
.crm-calendar-page .crm-cancelled-toggle input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
  width:1px!important;
  height:1px!important;
}
.crm-calendar-page .crm-view-toggle-group{
  gap:4px!important;
  flex-wrap:wrap!important;
}
.crm-calendar-page .crm-calendar-section{
  margin-top:12px!important;
}

/* Calendar day view: compact and readable. */
.crm-day-shell,
body.fr-final-redesign .fr-page-calendar .crm-day-shell{
  max-width:860px!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow:hidden!important;
}
.crm-day-row,
.crm-day-timeline-row{
  grid-template-columns:82px minmax(0, 1fr)!important;
  gap:14px!important;
  align-items:start!important;
}
.crm-day-slot,
.crm-day-card-wrap{
  max-width:620px!important;
  width:100%!important;
}
.crm-day-card-stack{
  max-width:620px!important;
  width:100%!important;
}
.crm-booking-card.compact-day,
body.fr-final-redesign .fr-page-calendar .crm-booking-card.compact-day{
  max-width:620px!important;
  width:100%!important;
  padding:14px 16px!important;
  border-radius:22px!important;
}

/* Booking create/edit: visible text, calm color palette and clearer confirmation action. */
.crm-form-page,
.crm-form-page *{
  text-rendering:optimizeLegibility;
}
.crm-form-page .crm-page-topbar{
  overflow:visible!important;
}
.crm-form-page .step-switcher + .mt-3{
  color:#667085!important;
}
.crm-form-page .payment-status-card,
.crm-form-page .crm-status-choice{
  border-radius:22px!important;
  background:#fff!important;
  color:#0b123d!important;
  min-height:132px!important;
  overflow:visible!important;
  word-break:normal!important;
}
.crm-form-page .payment-status-card.active,
.crm-form-page .crm-status-choice.active{
  background:linear-gradient(180deg,#eef2ff 0%,#ffffff 100%)!important;
  color:#0b123d!important;
}
.crm-form-page .payment-status-card *,
.crm-form-page .crm-status-choice *{
  color:inherit;
}
.crm-form-page .payment-status-caption,
.crm-form-page .crm-status-choice-caption{
  color:#7b86a6!important;
}
.crm-form-page .payment-status-title,
.crm-form-page .crm-status-choice-title{
  color:#0b123d!important;
  line-height:1.25!important;
}
.crm-form-page .payment-status-description,
.crm-form-page .crm-status-choice-text{
  color:#5f6b88!important;
  line-height:1.45!important;
}
.booking-confirmation-card,
#confirmation-settings.booking-confirmation-card,
#confirmation-settings.fr-confirmation-panel{
  border-radius:24px!important;
  border:1px solid #dfe7ff!important;
  background:linear-gradient(135deg,#f8faff 0%,#ffffff 100%)!important;
  box-shadow:0 16px 36px rgba(31,41,88,.06)!important;
  padding:14px!important;
  color:#0b123d!important;
}
.booking-confirmation-toggle{
  display:grid!important;
  grid-template-columns:22px 44px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
}
.booking-confirmation-checkbox{
  width:20px!important;
  height:20px!important;
  min-height:20px!important;
  accent-color:#4f46e5!important;
  margin-top:10px!important;
}
.booking-confirmation-icon{
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  background:#eef2ff!important;
  color:#4f46e5!important;
  flex:0 0 auto!important;
}
.booking-confirmation-title{
  display:block!important;
  color:#0b123d!important;
  font-size:15px!important;
  font-weight:950!important;
  line-height:1.25!important;
}
.booking-confirmation-text{
  display:block!important;
  margin-top:5px!important;
  color:#667085!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:650!important;
}

/* Prevent decorative rounded blocks from covering text. */
.crm-page-topbar::after,
.crm-page-mini-header::after,
.crm-auto-header::after,
.fr-final-screen-summary::after{
  pointer-events:none!important;
  z-index:-1!important;
}
#main-content .crm-page-topbar,
#main-content .fr-final-screen-summary,
#main-content .crm-form-card,
#main-content .fr-modern-card,
#main-content .bg-white{
  overflow:visible!important;
}

/* Safer text colors across old Tailwind fragments. */
#main-content .text-white:not(.crm-btn):not(.crm-btn *):not(button):not(button *):not(a[class*="bg-"]):not(a[class*="bg-"] *){
  color:#0b123d!important;
}
#main-content [class*="bg-[#E5EEFF]"] .text-white,
#main-content [class*="bg-[#D7DCFC]"] .text-white,
#main-content [class*="bg-[#8A97F647]"] .text-white,
#main-content .bg-white .text-white{
  color:#0b123d!important;
}
#main-content button[class*="bg-[#3047EC]"],
#main-content button[class*="bg-[#6374F6]"],
#main-content a[class*="bg-[#3047EC]"],
#main-content a[class*="bg-[#6374F6]"],
#main-content .crm-btn-primary{
  color:#fff!important;
}
#main-content button[class*="bg-[#3047EC]"] *,
#main-content button[class*="bg-[#6374F6]"] *,
#main-content a[class*="bg-[#3047EC]"] *,
#main-content a[class*="bg-[#6374F6]"] *,
#main-content .crm-btn-primary *{
  color:#fff!important;
}

/* Chat/support: remove duplicated top text and keep message blocks readable. */
body.fr-page-chats .crm-legacy-shell > .crm-page-mini-header,
body.fr-page-support .crm-legacy-shell > .crm-page-mini-header{
  display:none!important;
}
body.fr-page-chats #main-content .chat-item,
body.fr-page-chats #main-content [class*="chat"].bg-white,
body.fr-page-support #main-content section,
body.fr-page-support #main-content .bg-white{
  overflow:visible!important;
}
body.fr-page-chats #main-content .truncate{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body.fr-page-support #main-content textarea{
  color:#0b123d!important;
}

/* Mobile and tablet: make CRM usable, not clipped. */
@media (max-width: 1023px){
  #main-content,
  #main-content.lg\:ml-64,
  #main-content.lg\:ml-16{
    margin-left:0!important;
  }
  #main-content>div{
    padding-top:72px!important;
  }
  .crm-page-shell,
  .crm-redesign-page,
  .crm-legacy-shell,
  .crm-form-shell{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .crm-calendar-page .crm-controls-card{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .crm-calendar-page .crm-tabs,
  .crm-calendar-page .crm-format-toggle{
    width:100%!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
  }
}
@media (max-width: 640px){
  .crm-page-title,
  .fr-final-screen-summary h2,
  .crm-page-mini-header .title{
    font-size:26px!important;
    line-height:1.08!important;
  }
  .crm-page-subtitle,
  .fr-final-screen-summary p{
    font-size:13px!important;
  }
  .crm-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .crm-calendar-header{
    grid-template-columns:42px minmax(0,1fr) 42px!important;
    padding:10px!important;
  }
  .crm-calendar-title h2{
    font-size:18px!important;
  }
  .crm-day-row,
  .crm-day-timeline-row{
    grid-template-columns:1fr!important;
  }
  .crm-day-time{
    justify-content:flex-start!important;
  }
  .crm-form-page #content-client:not(.hidden),
  .crm-form-grid{
    grid-template-columns:1fr!important;
  }
  .booking-confirmation-toggle{
    grid-template-columns:22px minmax(0,1fr)!important;
  }
  .booking-confirmation-icon{
    display:none!important;
  }
}

/* ==========================================================================
   CRM cleanup v4 — remove noisy helper blocks and fix controls/readability
   ========================================================================== */
#main-content .crm-page-mini-header,
#main-content .fr-final-screen-summary,
#main-content .fr-context-rail,
#main-content .fr-action-strip,
#main-content .fr-module-steps,
#main-content .fr-simple-user-hint,
#main-content .fr-comfort-strip,
#main-content .fr-retired-legacy-header{
  display:none!important;
  height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border:0!important;
  box-shadow:none!important;
}

/* Sidebar brand: only two logos, no duplicated generated names. */
#sidebar .brand-shell::before,
#sidebar .brand-shell::after,
body.flyer-crm-final #sidebar .brand-shell::before,
body.flyer-crm-final #sidebar .brand-shell::after{
  content:none!important;
  display:none!important;
}
#sidebar .brand-shell{
  padding:14px!important;
  min-height:86px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#sidebar .brand-logos{gap:12px!important;}
#sidebar .brand-connector{display:none!important;}
#sidebar .brand-logo-tile:first-child{width:58px!important;height:58px!important;flex-basis:58px!important;}
#sidebar .brand-logo-tile:last-child{width:52px!important;height:52px!important;flex-basis:52px!important;}

/* Calendar: control row sits directly over calendar. */
.crm-calendar-page .crm-calendar-hero,
.crm-calendar-page .crm-kpi-grid{display:none!important;}
.crm-calendar-page .crm-page-shell{gap:18px!important;}
.crm-calendar-page .crm-calendar-controls-bar{
  order:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:12px!important;
  margin:0 0 12px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid #e4ebf7!important;
  box-shadow:0 14px 36px rgba(31,41,88,.06)!important;
}
.crm-calendar-page .tab-content{order:1!important;}
.crm-calendar-page .crm-calendar-view-controls{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}
.crm-calendar-page .crm-tabs,
.crm-calendar-page .crm-format-toggle{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:5px!important;
  border-radius:18px!important;
  background:#f1f5ff!important;
  border:1px solid #e4ebf7!important;
  box-shadow:none!important;
}
.crm-calendar-page .crm-tab-btn,
.crm-calendar-page .crm-format-toggle button{
  min-height:38px!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  color:#536080!important;
  font-size:14px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.crm-calendar-page .crm-tab-btn.active,
.crm-calendar-page .crm-format-toggle button.active{
  background:#fff!important;
  color:#4f46e5!important;
  box-shadow:0 10px 22px rgba(31,41,88,.08)!important;
}
.crm-cancelled-switch{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:42px!important;
  padding:6px 12px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid #e4ebf7!important;
  box-shadow:0 10px 22px rgba(31,41,88,.055)!important;
  color:#536080!important;
  font-size:14px!important;
  font-weight:900!important;
  cursor:pointer!important;
  user-select:none!important;
}
.crm-cancelled-switch input{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
.crm-cancelled-switch-track{
  width:42px!important;
  height:24px!important;
  border-radius:999px!important;
  background:#e8edf8!important;
  padding:3px!important;
  transition:background .18s ease!important;
}
.crm-cancelled-switch-track span{
  display:block!important;
  width:18px!important;
  height:18px!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 4px 10px rgba(31,41,88,.16)!important;
  transform:translateX(0)!important;
  transition:transform .18s ease!important;
}
.crm-cancelled-switch.active,
.crm-cancelled-switch:has(input:checked){color:#4f46e5!important;}
.crm-cancelled-switch.active .crm-cancelled-switch-track,
.crm-cancelled-switch input:checked + .crm-cancelled-switch-track{background:#4f46e5!important;}
.crm-cancelled-switch.active .crm-cancelled-switch-track span,
.crm-cancelled-switch input:checked + .crm-cancelled-switch-track span{transform:translateX(18px)!important;}

/* Keep day calendar compact. */
.crm-day-shell{max-width:860px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;}
.crm-day-row,.crm-day-timeline-row{grid-template-columns:84px minmax(0,1fr)!important;gap:14px!important;}
.crm-day-card-stack,.crm-day-card-wrap,.crm-booking-card.compact-day{max-width:620px!important;width:100%!important;}

/* Booking create/edit: clean tabs, confirmation card and readable selected states. */
.crm-form-page .step-switcher{
  display:inline-flex!important;
  gap:6px!important;
  padding:6px!important;
  border-radius:18px!important;
  background:#f1f5ff!important;
  border:1px solid #e4ebf7!important;
}
.crm-form-page .step-switcher button{
  border-radius:14px!important;
  min-height:40px!important;
  padding:0 18px!important;
  color:#536080!important;
  background:transparent!important;
  border:0!important;
  font-weight:900!important;
}
.crm-form-page .step-switcher button.active{
  color:#fff!important;
  background:linear-gradient(135deg,#4f46e5,#6366f1)!important;
  box-shadow:0 12px 26px rgba(79,70,229,.22)!important;
}
.booking-confirmation-card,
#confirmation-settings.booking-confirmation-card,
#confirmation-settings.fr-confirmation-panel{
  border:1px solid #dfe7ff!important;
  background:linear-gradient(135deg,#ffffff 0%,#f8faff 100%)!important;
  border-radius:24px!important;
  padding:14px!important;
  box-shadow:0 16px 36px rgba(31,41,88,.06)!important;
  color:#0b123d!important;
}
.booking-confirmation-toggle{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  align-items:center!important;
  gap:14px!important;
}
.booking-confirmation-switch{
  width:52px!important;
  height:32px!important;
  border-radius:999px!important;
  background:#e8edf8!important;
  padding:4px!important;
  transition:background .18s ease!important;
}
.booking-confirmation-switch span{
  display:block!important;
  width:24px!important;
  height:24px!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 6px 14px rgba(31,41,88,.16)!important;
  transform:translateX(0)!important;
  transition:transform .18s ease!important;
}
.booking-confirmation-checkbox:checked + .booking-confirmation-switch,
.booking-confirmation-card.is-enabled .booking-confirmation-switch{background:#4f46e5!important;}
.booking-confirmation-checkbox:checked + .booking-confirmation-switch span,
.booking-confirmation-card.is-enabled .booking-confirmation-switch span{transform:translateX(20px)!important;}
.booking-confirmation-heading-row{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;}
.booking-confirmation-title{color:#0b123d!important;font-size:15px!important;font-weight:950!important;line-height:1.25!important;}
.booking-confirmation-text{display:block!important;margin-top:5px!important;color:#667085!important;font-size:13px!important;line-height:1.45!important;font-weight:650!important;}
.booking-confirmation-client-badge{display:inline-flex!important;align-items:center!important;border-radius:999px!important;background:#ecfdf3!important;color:#128447!important;padding:4px 9px!important;font-size:11px!important;font-weight:900!important;}
.crm-form-page .day-block.selected,
.crm-form-page .date-block.selected,
.crm-form-page .calendar-day.selected{
  background:#4f46e5!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(79,70,229,.22)!important;
}
.crm-form-page .day-block.selected *,
.crm-form-page .date-block.selected *,
.crm-form-page .calendar-day.selected *{color:#fff!important;}
.crm-form-page #service-options-container button{
  color:#3047ec!important;
  overflow:visible!important;
}
.crm-form-page #service-options-container button *{color:inherit!important;}
.crm-form-page #service-options-container button[class*="bg-[#EEF2FF]"]{
  background:#eef2ff!important;
  color:#3047ec!important;
  border-color:#6374f6!important;
}
.crm-form-page #service-options-summary,
.crm-form-page #selected-date{color:#3047ec!important;}

/* General readability and clipping fixes. */
#main-content .fr-modern-card,
#main-content .crm-card,
#main-content .crm-card-strong,
#main-content .crm-controls-card,
#main-content .crm-form-card,
#main-content .bg-white,
#main-content .rounded-3xl{
  overflow:visible!important;
}
#main-content p,#main-content span,#main-content label,#main-content td,#main-content th,#main-content div{
  text-wrap:pretty;
}
#main-content .text-white:not(.crm-btn):not(.crm-btn *):not(button):not(button *):not(a[class*="bg-"]):not(a[class*="bg-"] *){color:#0b123d!important;}
#main-content button[class*="bg-[#3047EC]"],#main-content button[class*="bg-[#6374F6]"],#main-content a[class*="bg-[#3047EC]"],#main-content a[class*="bg-[#6374F6]"],#main-content .crm-btn-primary{color:#fff!important;}
#main-content button[class*="bg-[#3047EC]"] *,#main-content button[class*="bg-[#6374F6]"] *,#main-content a[class*="bg-[#3047EC]"] *,#main-content a[class*="bg-[#6374F6]"] *,#main-content .crm-btn-primary *{color:#fff!important;}

@media (max-width:1023px){
  #main-content,#main-content.lg\:ml-64,#main-content.lg\:ml-16{margin-left:0!important;}
  .crm-page-shell,.crm-redesign-page,.crm-legacy-shell,.crm-form-shell{padding-left:16px!important;padding-right:16px!important;}
  .crm-calendar-page .crm-calendar-controls-bar{align-items:stretch!important;flex-direction:column!important;}
  .crm-calendar-page .crm-tabs,.crm-calendar-page .crm-format-toggle{width:100%!important;overflow-x:auto!important;justify-content:flex-start!important;}
  .crm-calendar-page .crm-calendar-view-controls{width:100%!important;justify-content:flex-start!important;}
}
@media (max-width:640px){
  .crm-page-title{font-size:30px!important;}
  .crm-actions,.crm-calendar-view-controls{display:grid!important;grid-template-columns:1fr!important;width:100%!important;}
  .crm-calendar-page .crm-tab-btn,.crm-calendar-page .crm-format-toggle button{padding:0 12px!important;}
  .crm-day-row,.crm-day-timeline-row{grid-template-columns:62px minmax(0,1fr)!important;gap:8px!important;}
}

/* Chat detail keeps its messenger layout isolated from broad CRM polish rules. */
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-detail-shell{max-width:1480px!important;width:100%!important;margin:0 auto!important;padding:24px!important;gap:0!important;display:block!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-detail-card{width:100%!important;height:calc(100dvh - 96px)!important;min-height:640px!important;padding:0!important;overflow:hidden!important;border-radius:28px!important;background:#fff!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-layout{height:100%!important;min-height:0!important;overflow:hidden!important;border-radius:28px!important;background-color:#f5f7fe!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .chat-background{min-height:0!important;overflow:hidden!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .messages-container{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-customer,
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-company{width:auto!important;max-width:min(520px, calc(100vw - 380px))!important;border:0!important;box-shadow:0 8px 22px rgba(30,41,90,.08)!important;overflow:visible!important;word-break:normal!important;overflow-wrap:anywhere!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-customer{background:#fff!important;color:#0b123d!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-company{background:#8A97F6!important;color:#fff!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-company p,
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-company a,
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-company svg{color:#fff!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .date-divider,
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .date-divider *{color:#fff!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .customer-avatar,
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .customer-avatar *{color:#fff!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-time{color:rgba(255,255,255,.92)!important;text-shadow:0 1px 2px rgba(15,23,42,.24)!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content #message-form{position:relative!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content #messageText{min-height:44px!important;max-height:150px!important;color:#0b123d!important;background:#fff!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .file-preview{max-width:220px!important;max-height:220px!important;object-fit:cover!important;}
@media(max-width:1024px){
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-detail-shell{padding:14px!important;}
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-detail-card{height:calc(100dvh - 92px)!important;min-height:560px!important;}
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-layout>.flex-1.flex{display:grid!important;grid-template-columns:1fr!important;}
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-layout>.flex-1.flex>.w-80{display:none!important;}
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-customer,
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-company{max-width:min(520px, calc(100vw - 112px))!important;}
}
@media(max-width:640px){
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-detail-shell{padding:10px!important;}
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-layout{border-radius:22px!important;}
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .crm-chat-detail-card{height:calc(100dvh - 84px)!important;min-height:520px!important;border-radius:22px!important;}
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-customer,
  body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content .message-bubble-company{max-width:calc(100vw - 92px)!important;}
body:is(.fr-route-chat-detail,.fr-page-chat-detail) #main-content #message-form{gap:8px!important;}
}

/* Booking create/edit: readable service and option selection cards. */
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #services-grid.crm-booking-service-grid{align-items:stretch!important;padding:4px 6px 10px 4px!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-service-card{position:relative!important;min-height:112px!important;border:1px solid #dfe7f7!important;border-radius:22px!important;background:#fff!important;box-shadow:0 12px 28px rgba(31,41,88,.06)!important;transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-service-card:hover{border-color:#9aa8ff!important;box-shadow:0 16px 34px rgba(79,70,229,.12)!important;transform:translateY(-1px)!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-service-card.is-selected{border-color:#4f46e5!important;background:linear-gradient(180deg,#f8faff 0%,#eef2ff 100%)!important;box-shadow:0 18px 38px rgba(79,70,229,.18), inset 0 0 0 1px rgba(79,70,229,.18)!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-service-card.is-selected::after{content:"✓";position:absolute;top:12px;right:12px;width:26px;height:26px;display:grid;place-items:center;border-radius:999px;background:#4f46e5;color:#fff;font-weight:900;font-size:14px;box-shadow:0 8px 18px rgba(79,70,229,.25);}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-service-card h4{color:#0b123d!important;font-size:15px!important;line-height:1.25!important;font-weight:950!important;padding-right:26px!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-service-card p{color:#5d6b8b!important;font-weight:800!important;line-height:1.35!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-options-panel{border-color:#dfe7f7!important;background:linear-gradient(180deg,#f8faff 0%,#fff 100%)!important;box-shadow:0 16px 34px rgba(31,41,88,.06)!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-group{border-color:#e1e8f8!important;border-radius:22px!important;box-shadow:0 10px 24px rgba(31,41,88,.045)!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-group.is-missing{border-color:#fb7185!important;background:#fff7f8!important;box-shadow:0 14px 30px rgba(225,78,109,.10)!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-title{color:#0b123d!important;font-size:16px!important;line-height:1.3!important;font-weight:950!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-items{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:10px!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-item{position:relative!important;min-height:74px!important;width:100%!important;border-color:#dfe7f7!important;background:#fff!important;color:#26324a!important;box-shadow:0 8px 18px rgba(31,41,88,.045)!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-item:hover{border-color:#a5b4fc!important;background:#f8faff!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-item.is-selected{border-color:#4f46e5!important;background:#4f46e5!important;color:#fff!important;box-shadow:0 14px 28px rgba(79,70,229,.22)!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-item.is-selected::after{content:"✓";position:absolute;top:10px;right:10px;color:#fff;font-weight:950;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-name{max-width:calc(100% - 22px);overflow-wrap:anywhere;line-height:1.25!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-item.is-selected span{color:#fff!important;}
body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-warning{margin-top:12px;border-radius:14px;border:1px solid #fecdd3;background:#fff1f2;color:#be123c;padding:10px 12px;font-size:13px;font-weight:800;}
@media(max-width:640px){body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-option-items{grid-template-columns:1fr!important;}body:is(.fr-route-booking-create,.fr-page-booking-create,.fr-route-booking-edit,.fr-page-booking-edit) #main-content .crm-booking-service-card{min-height:auto!important;}}
