: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;}

/* =======================================================================
   FINAL REDESIGN PASS v3 — approved Flyer CRM social-SaaS interface
   This layer intentionally overrides legacy Tailwind fragments and makes
   the real screens visually match the approved mockups: dark premium
   sidebar, calm work canvas, rounded cards, compact calendars and readable
   statuses.
   ======================================================================= */
:root{
  --fr-primary:#4F46E5;
  --fr-primary-2:#6366F1;
  --fr-primary-soft:#EEF2FF;
  --fr-sky:#38BDF8;
  --fr-bg:#F6F8FF;
  --fr-card:#FFFFFF;
  --fr-card-soft:#F8FAFF;
  --fr-line:#E4EAF7;
  --fr-text:#0B123D;
  --fr-muted:#6B7898;
  --fr-muted-2:#94A3B8;
  --fr-success:#22C55E;
  --fr-warning:#F59E0B;
  --fr-danger:#EF4444;
  --fr-shadow:0 24px 60px rgba(15,23,42,.10);
  --fr-shadow-soft:0 14px 34px rgba(30,41,90,.07);
  --fr-sidebar:#10154E;
  --fr-sidebar-2:#1B1D68;
}
html,body{background:var(--fr-bg)!important;color:var(--fr-text);}
body.flyer-crm-final{font-family:'Montserrat',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;}
body.flyer-crm-final:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 4%,rgba(99,102,241,.18),transparent 24%),radial-gradient(circle at 18% 0,rgba(56,189,248,.12),transparent 26%);z-index:-1;}
#main-content{background:linear-gradient(135deg,#f7f9ff 0%,#f4f6ff 52%,#fbfdff 100%)!important;}
#main-content>div{scrollbar-width:thin;scrollbar-color:rgba(99,102,241,.30) transparent;}
#main-content>div::-webkit-scrollbar{width:10px;height:10px;}#main-content>div::-webkit-scrollbar-thumb{background:rgba(99,102,241,.24);border-radius:999px;border:2px solid transparent;background-clip:content-box;}

/* Premium dark CRM sidebar matching approved design */
#sidebar{background:linear-gradient(180deg,var(--fr-sidebar) 0%,var(--fr-sidebar-2) 100%)!important;border-right:0!important;box-shadow:18px 0 50px rgba(16,21,78,.20)!important;color:#EAF0FF!important;}
#sidebar:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 0,rgba(124,140,255,.42),transparent 30%),radial-gradient(circle at 120% 20%,rgba(56,189,248,.25),transparent 34%);opacity:.9;}
#sidebar>*{position:relative;z-index:1;}
#sidebar .brand-shell{background:rgba(255,255,255,.075)!important;border-color:rgba(255,255,255,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 40px rgba(0,0,0,.10)!important;}
#sidebar .brand-logo-tile{background:rgba(255,255,255,.96)!important;border-color:rgba(255,255,255,.20)!important;box-shadow:0 14px 28px rgba(0,0,0,.12)!important;}
#sidebar .brand-connector{background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important;}
#sidebar a,#sidebar .text-text-primary,#sidebar .menu-item-fixed,#sidebar .menu-item-children-fixed,#sidebar .section-caption,#sidebar i,#sidebar svg{color:#DDE7FF!important;}
#sidebar .menu-hover{border-radius:18px!important;margin:2px 6px 4px!important;}
#sidebar .menu-hover:hover{background:rgba(255,255,255,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;}
#sidebar .menu-active,#sidebar .menu-hover.menu-active{background:linear-gradient(135deg,#7C8CFF 0%,#4F46E5 100%)!important;box-shadow:0 16px 34px rgba(79,70,229,.36)!important;}
#sidebar .menu-active a,#sidebar .menu-active i,#sidebar .menu-active svg{color:#fff!important;}
#sidebar .menu-item-fixed{min-height:46px!important;padding:10px 14px!important;border-radius:18px!important;font-weight:800;}
#sidebar .menu-item-children-fixed{min-height:42px!important;margin-left:34px!important;padding:9px 12px!important;border-radius:16px!important;font-weight:700;font-size:14px;}
#sidebar .sidebar-scroll{scrollbar-color:rgba(255,255,255,.24) transparent!important;}
#desktop-toggle,#mobile-toggle{color:#EAF0FF!important;background:rgba(255,255,255,.10)!important;border-radius:14px!important;}
#mobile-hamburger{border:1px solid var(--fr-line)!important;border-radius:16px!important;box-shadow:var(--fr-shadow-soft)!important;}

/* App-like CRM work canvas */
.crm-page-shell,.crm-redesign-page,.crm-legacy-shell{max-width:1480px!important;margin:0 auto!important;padding:28px 32px 56px!important;}
.crm-page-topbar,.crm-page-mini-header{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:20px!important;margin-bottom:20px!important;}
.crm-eyebrow{display:inline-flex!important;align-items:center!important;gap:8px!important;border-radius:999px!important;padding:8px 12px!important;background:var(--fr-primary-soft)!important;color:var(--fr-primary)!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.045em!important;}
.crm-page-title,.crm-page-mini-header .title{font-size:38px!important;line-height:1.03!important;font-weight:950!important;letter-spacing:-.055em!important;color:var(--fr-text)!important;margin:10px 0 0!important;}
.crm-page-subtitle,.crm-page-mini-header .subtitle{font-size:15px!important;line-height:1.55!important;font-weight:650!important;color:var(--fr-muted)!important;max-width:820px!important;margin-top:8px!important;}
.crm-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important;}
.crm-btn,.crm-actions a,.crm-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;border-radius:16px!important;border:1px solid transparent!important;min-height:44px!important;padding:11px 16px!important;font-weight:900!important;text-decoration:none!important;white-space:nowrap!important;transition:all .18s ease!important;}
.crm-btn-primary,.crm-actions .crm-btn-primary{background:linear-gradient(135deg,var(--fr-primary),var(--fr-primary-2))!important;color:#fff!important;box-shadow:0 16px 34px rgba(79,70,229,.24)!important;}
.crm-btn-soft,.crm-actions .crm-btn-soft{background:#fff!important;color:var(--fr-primary)!important;border-color:var(--fr-line)!important;box-shadow:var(--fr-shadow-soft)!important;}
.crm-btn:hover,.crm-actions a:hover,.crm-actions button:hover{transform:translateY(-1px)!important;}

/* Make legacy pages look like approved SaaS screens */
.content-transition .bg-white,.content-transition form,.content-transition table,.crm-card,.crm-form-card,.crm-calendar-section,.crm-controls-card,.crm-kpi-card,.crm-legacy-shell .bg-white{background:rgba(255,255,255,.96)!important;border:1px solid var(--fr-line)!important;border-radius:28px!important;box-shadow:var(--fr-shadow-soft)!important;}
.content-transition [class*="shadow"],.content-transition [class*="shadow-"]{box-shadow:var(--fr-shadow-soft)!important;}
.content-transition .rounded-lg{border-radius:16px!important}.content-transition .rounded-xl{border-radius:20px!important}.content-transition .rounded-2xl{border-radius:24px!important}.content-transition .rounded-3xl{border-radius:30px!important;}
.content-transition h1,.content-transition h2,.content-transition h3{color:var(--fr-text)!important;letter-spacing:-.03em!important;font-weight:900!important;}
.content-transition p,.content-transition label,.content-transition .text-gray-500,.content-transition .text-gray-600,.content-transition .text-slate-500,.content-transition .text-slate-600{color:var(--fr-muted)!important;}
.content-transition input:not([type="checkbox"]):not([type="radio"]),.content-transition textarea,.content-transition select{min-height:46px!important;border-radius:16px!important;border:1px solid #DFE7F6!important;background:#fff!important;color:var(--fr-text)!important;box-shadow:none!important;font-weight:650!important;}
.content-transition input:focus,.content-transition textarea:focus,.content-transition select:focus{border-color:var(--fr-primary-2)!important;box-shadow:0 0 0 4px rgba(99,102,241,.12)!important;outline:0!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 table{border-collapse:separate!important;border-spacing:0!important;overflow:hidden!important;}
.content-transition th{background:#F8FAFF!important;color:#667085!important;font-size:11px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.055em!important;border-bottom:1px solid var(--fr-line)!important;}
.content-transition td{border-bottom:1px solid #EEF2F8!important;color:#172554!important;font-weight:650!important;}

/* Calendar exact final structure */
.crm-calendar-page .crm-calendar-hero{display:none!important;}
.crm-calendar-page .crm-page-shell{display:flex!important;flex-direction:column!important;gap:18px!important;}
.crm-calendar-page .crm-page-topbar{margin-bottom:0!important;padding:0 2px 2px!important;}
.crm-kpi-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;}
.crm-kpi-card{min-height:92px!important;border-radius:24px!important;padding:16px!important;}
.crm-kpi-icon{width:46px!important;height:46px!important;border-radius:16px!important;background:linear-gradient(135deg,#EEF2FF,#F6F8FF)!important;color:var(--fr-primary)!important;}
.crm-kpi-label{font-size:11px!important;color:#8A96B3!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.055em!important;}
.crm-kpi-value{font-size:24px!important;font-weight:950!important;color:var(--fr-text)!important;letter-spacing:-.04em!important;}
.crm-controls-card{border-radius:26px!important;padding:14px!important;}
.crm-tab-btn{border:0!important;background:transparent!important;color:#52607E!important;font-weight:900!important;border-radius:16px!important;padding:11px 16px!important;}
.crm-tab-btn.active,.crm-tab-btn:hover{background:var(--fr-primary-soft)!important;color:var(--fr-primary)!important;}
.crm-format-toggle{background:#F0F3FF!important;border-radius:18px!important;padding:5px!important;}
.crm-format-toggle button{border:0!important;border-radius:14px!important;background:transparent!important;color:#5F6B8A!important;font-weight:950!important;padding:10px 18px!important;}
.crm-format-toggle button.active{background:#fff!important;color:var(--fr-primary)!important;box-shadow:0 9px 22px rgba(30,41,90,.09)!important;}
.crm-calendar-section{border-radius:32px!important;padding:20px!important;}
.crm-calendar-header{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;margin-bottom:18px!important;}
.crm-calendar-title{text-align:center!important;}
.crm-calendar-title h2{font-size:20px!important;line-height:1.1!important;margin:0!important;}
.crm-calendar-title p{font-size:13px!important;font-weight:800!important;color:var(--fr-muted)!important;margin:4px 0 0!important;}
.crm-today-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;border-radius:14px!important;background:var(--fr-primary)!important;color:#fff!important;font-weight:950!important;min-height:38px!important;padding:8px 15px!important;margin-top:8px!important;box-shadow:0 14px 28px rgba(79,70,229,.24)!important;}
.crm-nav-round{width:44px!important;height:44px!important;border:0!important;border-radius:16px!important;background:var(--fr-primary-soft)!important;color:var(--fr-primary)!important;box-shadow:none!important;}
.crm-nav-round:hover{background:var(--fr-primary)!important;color:#fff!important;}
.crm-week-grid{display:grid!important;grid-template-columns:repeat(7,minmax(190px,1fr))!important;gap:12px!important;}
.crm-week-day{border:1px solid var(--fr-line)!important;border-radius:24px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 10px 28px rgba(30,41,90,.05)!important;min-width:0!important;}
.crm-week-day-head{background:#F8FAFF!important;border-bottom:1px solid #EEF2F8!important;padding:14px!important;}
.crm-week-stats{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:12px!important;}
.crm-week-stat{border-radius:16px!important;background:#fff!important;border:1px solid #EEF2F8!important;padding:8px!important;min-width:0!important;}
.crm-week-stat-label{font-size:10px!important;color:#94A3B8!important;text-transform:uppercase!important;font-weight:950!important;letter-spacing:.05em!important;white-space:nowrap!important;}
.crm-week-stat-value{font-size:14px!important;font-weight:950!important;color:var(--fr-text)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.crm-booking-card{border-radius:22px!important;border:1px solid #E5ECF9!important;background:#fff!important;box-shadow:0 14px 30px rgba(30,41,90,.06)!important;}
.crm-booking-card:hover{box-shadow:0 18px 36px rgba(79,70,229,.12)!important;border-color:#DDE5FF!important;}
.crm-day-shell{max-width:860px!important;margin:0 auto!important;border:1px solid var(--fr-line)!important;border-radius:28px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 12px 30px rgba(30,41,90,.05)!important;}
.crm-day-row{display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;gap:18px!important;padding:14px 20px!important;border-bottom:1px solid #EEF2F8!important;align-items:start!important;}
.crm-day-row:last-child{border-bottom:0!important;}
.crm-day-time{display:flex!important;justify-content:flex-end!important;padding-top:4px!important;}
.crm-day-time span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:68px!important;border-radius:14px!important;background:var(--fr-primary-soft)!important;color:var(--fr-primary)!important;font-size:13px!important;font-weight:950!important;padding:8px 10px!important;}
.crm-day-card-wrap{width:100%!important;max-width:560px!important;}
.crm-booking-card.compact-day{width:100%!important;max-width:560px!important;padding:14px 16px!important;}
.crm-status-pill{display:inline-flex!important;align-items:center!important;gap:6px!important;border-radius:999px!important;padding:6px 9px!important;font-size:11px!important;font-weight:950!important;white-space:nowrap!important;}

/* Booking create/edit screens should look like approved two-column work flow */
.crm-form-page .crm-page-shell{max-width:1320px!important;}
.crm-form-page .step-switcher{background:#fff!important;border:1px solid var(--fr-line)!important;border-radius:22px!important;padding:8px!important;box-shadow:var(--fr-shadow-soft)!important;}
.crm-form-page .step-switcher button{border-radius:16px!important;font-weight:950!important;color:#5F6B8A!important;padding:12px 18px!important;}
.crm-form-page .step-switcher button.active{background:linear-gradient(135deg,var(--fr-primary),var(--fr-primary-2))!important;color:#fff!important;box-shadow:0 14px 28px rgba(79,70,229,.22)!important;}
.payment-status-card{border-radius:22px!important;min-height:146px!important;padding:17px!important;background:#F8FAFF!important;border:1px solid #DDE6FA!important;box-shadow:none!important;}
.payment-status-card:hover{border-color:#9EA7FF!important;box-shadow:0 16px 32px rgba(99,102,241,.13)!important;}
.payment-status-card.active{background:#EEF2FF!important;border-color:var(--fr-primary)!important;box-shadow:0 18px 36px rgba(79,70,229,.16)!important;}
.payment-status-caption{font-size:11px!important;font-weight:950!important;color:#7A86A6!important;letter-spacing:.08em!important;}
.payment-status-title{font-size:15px!important;line-height:1.24!important;font-weight:950!important;color:var(--fr-text)!important;}
.payment-status-description{font-size:12px!important;line-height:1.45!important;font-weight:650!important;color:#60708F!important;}
#confirmation-settings{border-radius:24px!important;background:#F8FAFF!important;border:1px solid #DDE6FA!important;box-shadow:none!important;}
.tab-content>div,.tab-content>section{border-radius:28px;}
.service-card,.specialist-card,.client-card,.chat-item{border-radius:24px!important;background:#fff!important;border:1px solid var(--fr-line)!important;box-shadow:var(--fr-shadow-soft)!important;}
.time-slot.free{background:var(--fr-primary-soft)!important;color:var(--fr-primary)!important;border:1px solid #DDE6FA!important;}
.time-slot.selected{background:var(--fr-primary)!important;color:#fff!important;box-shadow:0 12px 26px rgba(79,70,229,.22)!important;}
.time-slot.occupied{background:#F4F6FB!important;color:#9AA4B8!important;}
.day-block{border-radius:16px!important;border:1px solid var(--fr-line)!important;box-shadow:0 8px 16px rgba(30,41,90,.04)!important;}
.day-block.selected{background:var(--fr-primary)!important;color:#fff!important;box-shadow:0 14px 28px rgba(79,70,229,.22)!important;}
.view-toggle{border-radius:14px!important;font-weight:900!important;}
.view-toggle.active{background:var(--fr-primary)!important;color:#fff!important;}
.nav-arrow{border-radius:16px!important;background:var(--fr-primary-soft)!important;color:var(--fr-primary)!important;}

/* Support, chat, services and profile-like CRM modules */
.crm-module-grid{display:grid!important;gap:18px!important;}
.crm-legacy-shell .grid,.crm-redesign-page .grid{min-width:0;}
.crm-legacy-shell .bg-white,.crm-redesign-page .bg-white{background:rgba(255,255,255,.96)!important;border-color:var(--fr-line)!important;}
.crm-legacy-shell [class*="bg-[#f5f7fe]"],.crm-redesign-page [class*="bg-[#f5f7fe]"]{background:transparent!important;}
.crm-legacy-shell [class*="text-[#6374F6]"],.crm-legacy-shell [class*="text-[#8A97F6]"],.crm-redesign-page [class*="text-[#6374F6]"],.crm-redesign-page [class*="text-[#8A97F6]"]{color:var(--fr-primary)!important;}
.crm-legacy-shell [class*="bg-[#6374F6]"],.crm-legacy-shell [class*="bg-[#3047EC]"],.crm-legacy-shell [class*="bg-[#4754B1]"],.crm-redesign-page [class*="bg-[#6374F6]"],.crm-redesign-page [class*="bg-[#3047EC]"],.crm-redesign-page [class*="bg-[#4754B1]"]{background:linear-gradient(135deg,var(--fr-primary),var(--fr-primary-2))!important;color:#fff!important;box-shadow:0 14px 30px rgba(79,70,229,.22)!important;}
.crm-legacy-shell [class*="bg-[#E5EEFF]"],.crm-legacy-shell [class*="bg-[#D7DCFC]"],.crm-redesign-page [class*="bg-[#E5EEFF]"],.crm-redesign-page [class*="bg-[#D7DCFC]"]{background:var(--fr-primary-soft)!important;color:var(--fr-primary)!important;}

@media(max-width:1280px){.crm-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.crm-week-grid{grid-template-columns:repeat(7,minmax(230px,1fr))!important}.crm-page-shell,.crm-redesign-page,.crm-legacy-shell{padding:24px 22px 48px!important}}
@media(max-width:900px){.crm-page-topbar,.crm-page-mini-header{flex-direction:column!important;align-items:flex-start!important}.crm-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.crm-page-title,.crm-page-mini-header .title{font-size:30px!important}.crm-day-row{grid-template-columns:74px minmax(0,1fr)!important;padding:14px!important}.crm-day-card-wrap,.crm-booking-card.compact-day{max-width:100%!important}.crm-controls-card{align-items:stretch!important}.crm-format-toggle{width:100%;overflow:auto}.crm-format-toggle button{flex:1}}
@media(max-width:620px){.crm-page-shell,.crm-redesign-page,.crm-legacy-shell{padding:18px 14px 36px!important}.crm-kpi-grid{grid-template-columns:1fr!important}.crm-week-grid{grid-template-columns:repeat(7,minmax(250px,1fr))!important}.crm-actions{width:100%;justify-content:flex-start!important}.crm-page-title,.crm-page-mini-header .title{font-size:28px!important}}

/* JS-generated final redesign helpers */
.fr-context-chips{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:520px;}
.fr-context-chips span{display:inline-flex;align-items:center;border-radius:999px;background:#fff;border:1px solid var(--fr-line);color:#5F6B8A;font-size:12px;font-weight:900;padding:8px 11px;box-shadow:0 8px 18px rgba(30,41,90,.05);}
.fr-context-chips span.active{background:var(--fr-primary-soft);border-color:#DDE6FA;color:var(--fr-primary);}
.fr-modern-card{border-radius:28px!important;border-color:var(--fr-line)!important;box-shadow:var(--fr-shadow-soft)!important;}
.fr-table-wrap{width:100%;overflow-x:auto;background:#fff;border:1px solid var(--fr-line);border-radius:26px;box-shadow:var(--fr-shadow-soft);}
.fr-table-wrap table{box-shadow:none!important;border:0!important;border-radius:0!important;min-width:720px;}
.fr-form-enhanced{border-radius:28px!important;border-color:var(--fr-line)!important;}
.fr-search-input{padding-left:44px!important;background:#fff!important;border-radius:18px!important;min-height:50px!important;}
.fr-action-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-6px 0 18px;}
.fr-action-strip span{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:8px 12px;background:#fff;border:1px solid var(--fr-line);color:#536080;font-weight:900;font-size:12px;box-shadow:0 8px 18px rgba(30,41,90,.05);}
.fr-action-strip i{color:var(--fr-primary)!important;}
body.fr-route-booking-edit #confirmation-settings,body.fr-route-booking-create #confirmation-settings{position:sticky;top:18px;}
body.fr-route-calendar .fr-context-chips{display:none;}
@media(max-width:900px){.fr-context-chips{justify-content:flex-start;max-width:100%;}.fr-action-strip{margin-top:0;}}

/* =====================================================================
   PHASE 2 — full-system clarity pass
   Focus: closer match to approved mockups while keeping screens simple
   for non-advanced users. This layer improves actual legacy modules:
   forms, tables, booking status blocks, support/chat, timetable and
   action hierarchy without changing backend logic.
   ===================================================================== */
body.fr-redesign-phase2 #main-content{
  --phase2-surface:rgba(255,255,255,.94);
  --phase2-soft:#F6F8FF;
  --phase2-border:#E4EAF7;
  --phase2-text:#0B123D;
  --phase2-muted:#667085;
  --phase2-primary:#4F46E5;
  --phase2-primary-2:#6366F1;
  --phase2-shadow:0 18px 46px rgba(30,41,90,.075);
}
body.fr-redesign-phase2 .crm-page-shell,
body.fr-redesign-phase2 .crm-redesign-page,
body.fr-redesign-phase2 .crm-legacy-shell,
body.fr-redesign-phase2 .crm-form-page .crm-page-shell{
  max-width:1500px!important;
  padding-top:30px!important;
}
body.fr-redesign-phase2 .crm-page-mini-header,
body.fr-redesign-phase2 .crm-page-topbar{
  padding:20px 22px!important;
  border:1px solid var(--phase2-border)!important;
  border-radius:32px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(245,248,255,.88))!important;
  box-shadow:0 18px 46px rgba(30,41,90,.06)!important;
  overflow:hidden!important;
  position:relative!important;
}
body.fr-redesign-phase2 .crm-page-mini-header:before,
body.fr-redesign-phase2 .crm-page-topbar:before{
  content:'';
  position:absolute;
  right:-56px;
  top:-74px;
  width:210px;
  height:170px;
  border-radius:42px;
  transform:rotate(-14deg);
  background:linear-gradient(135deg,rgba(99,102,241,.16),rgba(56,189,248,.12));
  pointer-events:none;
}
body.fr-redesign-phase2 .crm-page-mini-header>* ,
body.fr-redesign-phase2 .crm-page-topbar>*{position:relative;z-index:1;}
body.fr-redesign-phase2 .crm-page-mini-header .title,
body.fr-redesign-phase2 .crm-page-title{
  max-width:960px!important;
}
body.fr-redesign-phase2 .fr-action-strip,
body.fr-redesign-phase2 .fr-module-steps{
  max-width:1500px;
}
body.fr-redesign-phase2 .fr-module-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0 0 20px;
}
body.fr-redesign-phase2 .fr-module-step{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:14px 16px;
  border-radius:22px;
  border:1px solid var(--phase2-border);
  background:#fff;
  box-shadow:0 10px 26px rgba(30,41,90,.045);
}
body.fr-redesign-phase2 .fr-module-step-index{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  color:#fff;
  background:linear-gradient(135deg,var(--phase2-primary),var(--phase2-primary-2));
  font-size:13px;
  font-weight:950;
  box-shadow:0 10px 22px rgba(79,70,229,.22);
}
body.fr-redesign-phase2 .fr-module-step strong{
  display:block;
  color:var(--phase2-text);
  font-size:13px;
  font-weight:950;
  line-height:1.15;
}
body.fr-redesign-phase2 .fr-module-step span{
  display:block;
  margin-top:3px;
  color:var(--phase2-muted);
  font-size:12px;
  font-weight:700;
  line-height:1.25;
}
body.fr-redesign-phase2 .fr-modern-card,
body.fr-redesign-phase2 .fr-form-enhanced,
body.fr-redesign-phase2 .fr-table-wrap{
  border-radius:28px!important;
  border:1px solid var(--phase2-border)!important;
  background:var(--phase2-surface)!important;
  box-shadow:var(--phase2-shadow)!important;
}
body.fr-redesign-phase2 .fr-modern-card{
  overflow:hidden;
}
body.fr-redesign-phase2 .fr-modern-card + .fr-modern-card{margin-top:16px!important;}
body.fr-redesign-phase2 .fr-field,
body.fr-redesign-phase2 input:not([type='checkbox']):not([type='radio']):not([type='hidden']),
body.fr-redesign-phase2 textarea,
body.fr-redesign-phase2 select{
  border-radius:18px!important;
  border:1px solid var(--phase2-border)!important;
  background:#fff!important;
  min-height:48px!important;
  color:var(--phase2-text)!important;
  box-shadow:none!important;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease!important;
}
body.fr-redesign-phase2 textarea{min-height:112px!important;}
body.fr-redesign-phase2 .fr-field:focus,
body.fr-redesign-phase2 input:focus,
body.fr-redesign-phase2 textarea:focus,
body.fr-redesign-phase2 select:focus{
  outline:none!important;
  border-color:rgba(79,70,229,.46)!important;
  box-shadow:0 0 0 4px rgba(79,70,229,.10)!important;
}
body.fr-redesign-phase2 label,
body.fr-redesign-phase2 .form-label{
  color:#25304f!important;
  font-weight:850!important;
  letter-spacing:-.01em;
}
body.fr-redesign-phase2 .fr-primary-action,
body.fr-redesign-phase2 button[type='submit'],
body.fr-redesign-phase2 input[type='submit']{
  border-radius:18px!important;
  background:linear-gradient(135deg,var(--phase2-primary),var(--phase2-primary-2))!important;
  color:#fff!important;
  border-color:transparent!important;
  font-weight:900!important;
  box-shadow:0 16px 34px rgba(79,70,229,.22)!important;
}
body.fr-redesign-phase2 .fr-secondary-action{
  border-radius:18px!important;
  background:#fff!important;
  color:#536080!important;
  border:1px solid var(--phase2-border)!important;
  box-shadow:none!important;
}
body.fr-redesign-phase2 .fr-table-wrap{
  background:#fff!important;
  overflow:auto!important;
}
body.fr-redesign-phase2 .fr-table-wrap table{
  border-collapse:separate!important;
  border-spacing:0!important;
  min-width:760px;
}
body.fr-redesign-phase2 .fr-table-wrap th{
  position:sticky;
  top:0;
  z-index:3;
  background:#F8FAFF!important;
  color:#536080!important;
  font-size:12px!important;
  font-weight:950!important;
  text-transform:uppercase;
  letter-spacing:.045em;
  border-bottom:1px solid var(--phase2-border)!important;
}
body.fr-redesign-phase2 .fr-table-wrap td{
  border-bottom:1px solid #EEF2F8!important;
  color:#25304f!important;
  font-weight:650;
}
body.fr-redesign-phase2 .fr-table-wrap tr:hover td{background:#FBFCFF!important;}
body.fr-redesign-phase2 .fr-status-pill-auto,
body.fr-redesign-phase2 .fr-status-pill{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  border-radius:999px!important;
  min-height:28px!important;
  padding:6px 10px!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:950!important;
  border:1px solid transparent!important;
  white-space:nowrap!important;
}
body.fr-redesign-phase2 .fr-status-pill-auto[data-fr-tone='success']{background:#ECFDF3!important;color:#16A34A!important;border-color:#CDEED8!important;}
body.fr-redesign-phase2 .fr-status-pill-auto[data-fr-tone='warning']{background:#FFF7ED!important;color:#C2410C!important;border-color:#FED7AA!important;}
body.fr-redesign-phase2 .fr-status-pill-auto[data-fr-tone='danger']{background:#FEF2F2!important;color:#DC2626!important;border-color:#FECACA!important;}
body.fr-redesign-phase2 .fr-status-pill-auto[data-fr-tone='neutral']{background:#F1F5F9!important;color:#64748B!important;border-color:#E2E8F0!important;}
body.fr-redesign-phase2 .fr-status-choice-card,
body.fr-redesign-phase2 .payment-status-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  min-height:154px!important;
  border-radius:24px!important;
  border:1px solid #DDE6FA!important;
  background:#F8FAFF!important;
  box-shadow:0 10px 24px rgba(30,41,90,.04)!important;
}
body.fr-redesign-phase2 .fr-status-choice-card.is-selected,
body.fr-redesign-phase2 .payment-status-card.active{
  border-color:var(--phase2-primary)!important;
  background:#EEF2FF!important;
  box-shadow:0 18px 36px rgba(79,70,229,.16)!important;
}
body.fr-redesign-phase2 .fr-confirmation-panel,
body.fr-redesign-phase2 #confirmation-settings{
  border-radius:26px!important;
  border:1px solid #DDE6FA!important;
  background:linear-gradient(135deg,#fff,#F8FAFF)!important;
  box-shadow:0 14px 32px rgba(30,41,90,.055)!important;
}
body.fr-redesign-phase2 .fr-empty-helper{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 18px;
  padding:16px 18px;
  border:1px dashed #C7D2FE;
  border-radius:24px;
  background:#F8FAFF;
  color:#536080;
}
body.fr-redesign-phase2 .fr-empty-icon{
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 42px;
  border-radius:16px;
  color:var(--phase2-primary);
  background:#EEF2FF;
}
body.fr-redesign-phase2 .fr-empty-helper strong{
  display:block;
  color:var(--phase2-text);
  font-weight:950;
  margin-bottom:2px;
}
body.fr-redesign-phase2 .fr-empty-helper span{
  display:block;
  font-size:13px;
  line-height:1.35;
  font-weight:650;
}
body.fr-redesign-phase2.fr-route-timetable .fr-timetable-wrap,
body.fr-redesign-phase2 .fr-horizontal-scroll-area{
  max-height:calc(100vh - 220px)!important;
  overflow:auto!important;
  border-radius:28px!important;
  scroll-behavior:smooth;
}
body.fr-redesign-phase2.fr-route-timetable .fr-timetable-wrap thead th,
body.fr-redesign-phase2.fr-route-timetable .fr-sticky-day{
  position:sticky!important;
  top:0!important;
  z-index:8!important;
  background:#F8FAFF!important;
  box-shadow:0 1px 0 var(--phase2-border)!important;
}
body.fr-redesign-phase2.fr-route-timetable .fr-sticky-first,
body.fr-redesign-phase2.fr-route-timetable table th:first-child,
body.fr-redesign-phase2.fr-route-timetable table td:first-child{
  position:sticky!important;
  left:0!important;
  z-index:9!important;
  background:#fff!important;
  box-shadow:1px 0 0 var(--phase2-border)!important;
}
body.fr-redesign-phase2.fr-route-timetable table th:first-child{z-index:12!important;background:#F8FAFF!important;}
body.fr-redesign-phase2.fr-route-chats .fr-message-surface,
body.fr-redesign-phase2.fr-route-chat-detail .fr-message-surface,
body.fr-redesign-phase2.fr-route-support .fr-message-surface{
  border-radius:24px!important;
}
body.fr-redesign-phase2 .fr-message-input{
  border-radius:22px!important;
  min-height:54px!important;
  background:#fff!important;
}
body.fr-redesign-phase2 .crm-day-shell{
  max-width:820px!important;
  margin-left:0!important;
  margin-right:auto!important;
}
body.fr-redesign-phase2 .crm-day-card-wrap,
body.fr-redesign-phase2 .crm-booking-card.compact-day{
  max-width:520px!important;
}
body.fr-redesign-phase2 .crm-booking-card.compact-day{
  border-radius:22px!important;
  padding:14px 16px!important;
}
body.fr-redesign-phase2 .crm-week-grid{
  align-items:start!important;
}
body.fr-redesign-phase2 .crm-week-day{
  min-height:220px!important;
}
body.fr-redesign-phase2 .crm-week-stat-value{
  font-size:13px!important;
}
@media(max-width:1120px){
  body.fr-redesign-phase2 .fr-module-steps{grid-template-columns:1fr!important;}
}
@media(max-width:900px){
  body.fr-redesign-phase2 .crm-page-mini-header,
  body.fr-redesign-phase2 .crm-page-topbar{padding:18px!important;border-radius:26px!important;}
  body.fr-redesign-phase2 .fr-context-chips{justify-content:flex-start!important;}
  body.fr-redesign-phase2 .crm-page-mini-header .title,
  body.fr-redesign-phase2 .crm-page-title{font-size:28px!important;}
}

/* === Flyer global redesign phase 2: clarity and final layout polish === */
.crm-redesign-page,
.crm-legacy-shell,
.crm-form-shell{
  background:
    radial-gradient(720px 420px at 8% -8%, rgba(99,102,241,.11), transparent 58%),
    radial-gradient(640px 420px at 100% 4%, rgba(56,189,248,.10), transparent 56%),
    linear-gradient(180deg,#f7f9ff 0%,#ffffff 72%)!important;
}
.crm-page-shell{max-width:1540px!important;margin:0 auto!important;}
.crm-page-topbar,
.crm-page-mini-header,
.crm-auto-header{
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(248,250,255,.74))!important;
  border:1px solid rgba(220,229,255,.9)!important;
  border-radius:34px!important;
  padding:22px 24px!important;
  box-shadow:0 24px 58px rgba(31,41,88,.08)!important;
  backdrop-filter:blur(18px)!important;
}
.crm-page-title,
.crm-page-mini-header .title{letter-spacing:-.045em!important;line-height:.96!important;}
.crm-page-subtitle{max-width:760px!important;color:#65718f!important;font-size:15px!important;line-height:1.62!important;}
.crm-actions{gap:10px!important;}
.crm-btn{min-height:44px!important;border-radius:16px!important;box-shadow:none!important;}
.crm-btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;box-shadow:0 16px 30px rgba(79,70,229,.22)!important;}
.crm-btn-soft{background:#fff!important;border:1px solid #e5ecff!important;color:#4f46e5!important;}
.crm-calendar-hero{display:none!important;}
.crm-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;margin:18px 0!important;}
.crm-kpi-card{
  min-height:96px!important;border-radius:26px!important;border:1px solid rgba(224,231,255,.92)!important;
  background:linear-gradient(180deg,#fff,#fbfcff)!important;box-shadow:0 14px 34px rgba(31,41,88,.055)!important;
}
.crm-kpi-icon{width:46px!important;height:46px!important;border-radius:16px!important;background:linear-gradient(135deg,#eef2ff,#e0f2fe)!important;color:#4f46e5!important;}
.crm-kpi-label{font-size:12px!important;font-weight:850!important;color:#8090b2!important;}
.crm-kpi-value{font-size:24px!important;letter-spacing:-.035em!important;color:#101828!important;}
.crm-controls-card{
  border-radius:30px!important;background:rgba(255,255,255,.86)!important;border:1px solid #e5ecff!important;
  box-shadow:0 18px 42px rgba(31,41,88,.06)!important;position:sticky!important;top:12px!important;z-index:20!important;
  backdrop-filter:blur(16px)!important;
}
.crm-tabs,.crm-format-toggle{background:#f3f6ff!important;border:1px solid #e6edff!important;border-radius:18px!important;padding:4px!important;}
.crm-tab-btn,.crm-format-toggle button{border-radius:14px!important;color:#62708e!important;font-weight:900!important;}
.crm-tab-btn.active,.crm-format-toggle button.active{background:#fff!important;color:#4f46e5!important;box-shadow:0 10px 24px rgba(79,70,229,.11)!important;}
.crm-calendar-section{border-radius:34px!important;border:1px solid rgba(224,231,255,.94)!important;box-shadow:0 22px 58px rgba(31,41,88,.075)!important;background:#fff!important;}
.crm-calendar-header{padding:18px 20px!important;border-bottom:1px solid #eef2ff!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;}
.crm-calendar-title h2{font-size:26px!important;letter-spacing:-.035em!important;}
.crm-today-btn{border:1px solid #e0e7ff!important;background:#fff!important;color:#4f46e5!important;border-radius:999px!important;padding:8px 14px!important;font-weight:950!important;box-shadow:0 10px 22px rgba(31,41,88,.055)!important;}
.crm-nav-round{background:#fff!important;border:1px solid #e1e8ff!important;color:#4f46e5!important;box-shadow:0 10px 22px rgba(31,41,88,.055)!important;}
.crm-week-grid{gap:14px!important;}
.crm-week-day{border-radius:28px!important;border:1px solid #e6edff!important;background:#fff!important;box-shadow:0 14px 32px rgba(31,41,88,.055)!important;overflow:hidden!important;}
.crm-week-day-head{padding:16px!important;background:linear-gradient(180deg,#fbfcff,#fff)!important;border-bottom:1px solid #eef2ff!important;}
.crm-week-stats{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:12px!important;}
.crm-week-stat{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;border-radius:16px!important;background:#f7f9ff!important;border:1px solid #edf2ff!important;padding:8px 10px!important;min-width:0!important;}
.crm-week-stat-label{font-size:10px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#8a97b8!important;white-space:nowrap!important;}
.crm-week-stat-value{font-size:13px!important;font-weight:950!important;color:#101828!important;min-width:0!important;text-align:right!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.crm-booking-card{border-radius:22px!important;border:1px solid #e5ecff!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;box-shadow:0 14px 32px rgba(31,41,88,.06)!important;}
.crm-booking-card:hover{border-color:#cfd9ff!important;box-shadow:0 18px 40px rgba(79,70,229,.13)!important;}
.crm-day-shell{max-width:1040px!important;margin:0 auto!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;}
.crm-day-timeline{border:1px solid #e5ecff!important;border-radius:30px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 18px 42px rgba(31,41,88,.06)!important;}
.crm-day-summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:18px 20px!important;background:linear-gradient(135deg,#f8faff,#fff)!important;border-bottom:1px solid #edf2ff!important;}
.crm-day-summary-title{font-size:18px!important;font-weight:950!important;color:#101828!important;letter-spacing:-.03em!important;}
.crm-day-summary-subtitle{margin-top:3px!important;font-size:13px!important;font-weight:700!important;color:#7886a6!important;}
.crm-day-summary-action{display:inline-flex!important;align-items:center!important;gap:8px!important;border-radius:16px!important;background:#4f46e5!important;color:#fff!important;padding:11px 14px!important;font-size:13px!important;font-weight:950!important;white-space:nowrap!important;box-shadow:0 14px 28px rgba(79,70,229,.22)!important;}
.crm-day-timeline-row{display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;gap:18px!important;min-height:72px!important;padding:12px 18px!important;border-bottom:1px solid #f0f4ff!important;background:#fff!important;align-items:start!important;}
.crm-day-timeline-row:nth-child(odd){background:#fbfcff!important;}
.crm-day-timeline-row.has-bookings{background:linear-gradient(90deg,rgba(99,102,241,.04),#fff 26%)!important;}
.crm-day-timeline-row:last-child{border-bottom:0!important;}
.crm-day-time{display:flex!important;justify-content:flex-end!important;padding-top:8px!important;}
.crm-day-time span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:68px!important;border-radius:14px!important;background:#eef2ff!important;color:#4f46e5!important;font-size:12px!important;font-weight:950!important;padding:8px 9px!important;}
.crm-day-slot{min-height:50px!important;border-left:1px dashed #dbe5ff!important;padding-left:16px!important;}
.crm-day-empty{height:48px!important;border-radius:18px!important;border:1px dashed #e3e9f8!important;background:#fafcff!important;display:flex!important;align-items:center!important;padding-left:16px!important;color:#a1abc4!important;font-size:13px!important;font-weight:850!important;}
.crm-day-card-stack{display:grid!important;gap:10px!important;max-width:680px!important;}
.crm-day-card-stack .group{max-width:680px!important;}
.crm-booking-card.compact-day{max-width:680px!important;width:100%!important;padding:13px 14px!important;}
.crm-booking-card.compact-day .mt-3{margin-top:8px!important;}
.crm-booking-card.compact-day .border-t{padding-top:8px!important;}
.crm-booking-card.compact-day .rounded-2xl.bg-slate-50{background:#f8faff!important;}
.crm-status-pill{border-radius:999px!important;white-space:nowrap!important;}
.crm-form-grid{gap:20px!important;}
.crm-status-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.crm-status-card,.crm-form-card,.crm-auto-card{border:1px solid #e5ecff!important;border-radius:28px!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;box-shadow:0 16px 38px rgba(31,41,88,.055)!important;}
.crm-status-card label,.crm-status-card .option-card{border-radius:20px!important;}
.crm-page-mini-header .subtitle,.crm-auto-header .subtitle{color:#66718f!important;}
#sidebar{background:linear-gradient(180deg,#ffffff 0%,#f8faff 100%)!important;border-right:1px solid #e8efff!important;}
#sidebar .menu-active{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;box-shadow:0 16px 32px rgba(79,70,229,.22)!important;}
@media(max-width:1200px){.crm-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.crm-controls-card{position:relative!important;top:auto!important}.crm-day-card-stack,.crm-day-card-stack .group,.crm-booking-card.compact-day{max-width:100%!important}}
@media(max-width:768px){.crm-page-topbar,.crm-page-mini-header,.crm-auto-header{border-radius:24px!important;padding:18px!important}.crm-page-title,.crm-page-mini-header .title{font-size:30px!important}.crm-kpi-grid{grid-template-columns:1fr!important}.crm-day-summary{align-items:flex-start!important;flex-direction:column!important}.crm-day-summary-action{width:100%!important;justify-content:center!important}.crm-day-timeline-row{grid-template-columns:68px minmax(0,1fr)!important;gap:10px!important;padding:12px!important}.crm-day-slot{padding-left:10px!important}.crm-day-time span{min-width:58px!important;font-size:11px!important}.crm-week-stat{padding:8px!important}.crm-week-stat-value{font-size:12px!important}}

/* === Flyer global redesign phase 2: legacy page semantic polish === */
.fr-context-rail{display:flex;flex-wrap:wrap;gap:10px;margin:-8px 0 18px;padding:6px;}
.fr-context-rail span{display:inline-flex;align-items:center;gap:8px;border:1px solid #e4ebff;background:rgba(255,255,255,.82);border-radius:999px;padding:8px 12px;color:#66718f;font-size:12px;font-weight:850;box-shadow:0 10px 22px rgba(31,41,88,.045);}
.fr-context-rail b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:11px;}
.fr-modern-card{border-color:#e5ecff!important;box-shadow:0 16px 40px rgba(31,41,88,.055)!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;}
.fr-modern-form input:not([type="checkbox"]):not([type="radio"]),
.fr-modern-form select,
.fr-modern-form textarea,
.crm-redesign-page input:not([type="checkbox"]):not([type="radio"]),
.crm-redesign-page select,
.crm-redesign-page textarea{
  border-color:#dfe7ff!important;border-radius:18px!important;background:#fff!important;color:#182033!important;box-shadow:none!important;
}
.fr-modern-form input:focus,
.fr-modern-form select:focus,
.fr-modern-form textarea:focus,
.crm-redesign-page input:focus,
.crm-redesign-page select:focus,
.crm-redesign-page textarea:focus{border-color:#818cf8!important;box-shadow:0 0 0 4px rgba(99,102,241,.12)!important;outline:0!important;}
.fr-modern-table-wrap{border:1px solid #e5ecff!important;border-radius:26px!important;background:#fff!important;box-shadow:0 18px 42px rgba(31,41,88,.055)!important;overflow:hidden!important;}
.fr-modern-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;}
.fr-modern-table thead{background:#f7f9ff!important;}
.fr-modern-table th{padding:14px 16px!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.07em!important;color:#7b86a5!important;font-weight:950!important;border-bottom:1px solid #e9efff!important;}
.fr-modern-table td{padding:14px 16px!important;border-bottom:1px solid #f0f4ff!important;color:#26324a!important;}
.fr-modern-table tr:hover td{background:#fbfcff!important;}
.fr-payment-save-button{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;color:#fff!important;border:0!important;border-radius:16px!important;box-shadow:0 14px 28px rgba(79,70,229,.2)!important;}
.fr-confirmation-action{border-radius:16px!important;}
.fr-booking-layout .crm-status-panel{gap:14px!important;}
.fr-booking-layout .crm-status-card{min-height:112px!important;}
.fr-booking-layout .crm-status-card h3,
.fr-booking-layout .crm-status-card .title{font-size:18px!important;letter-spacing:-.025em!important;}
.fr-services-layout .service-card,
.fr-services-layout [class*="service"] .bg-white{border-radius:24px!important;}
.fr-messenger-layout .message,
.fr-messenger-layout [class*="message"]{border-radius:18px!important;}
.fr-route-calendar .crm-page-shell{display:flex;flex-direction:column;gap:18px;}
.fr-route-calendar .crm-kpi-grid + .crm-controls-card{margin-top:-2px!important;}
.fr-route-calendar .crm-calendar-section{margin-top:0!important;}
@media(max-width:768px){.fr-context-rail{overflow:auto;flex-wrap:nowrap;padding-bottom:10px}.fr-context-rail span{white-space:nowrap}.fr-modern-table-wrap{overflow-x:auto!important}}

/* === Flyer global redesign phase 3: final accessibility, simplicity and consistency polish === */
body.fr-final-redesign{
  --fr-focus: 0 0 0 4px rgba(99,102,241,.14);
}
body.fr-final-redesign #main-content{
  scroll-behavior:smooth;
}
body.fr-final-redesign .crm-page-shell,
body.fr-final-redesign .crm-form-shell,
body.fr-final-redesign .crm-legacy-shell{
  isolation:isolate;
}
body.fr-final-redesign .fr-final-screen-summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  border:1px solid rgba(226,232,240,.96);
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,250,255,.92));
  border-radius:28px;
  padding:18px 20px;
  box-shadow:0 18px 44px rgba(31,41,88,.06);
  margin:0 0 18px;
}
body.fr-final-redesign .fr-final-screen-summary h2{
  margin:0;
  color:#0b123d;
  font-size:22px;
  line-height:1.15;
  letter-spacing:-.035em;
  font-weight:950;
}
body.fr-final-redesign .fr-final-screen-summary p{
  margin:6px 0 0;
  color:#66718f;
  font-size:14px;
  line-height:1.45;
  font-weight:650;
}
body.fr-final-redesign .fr-final-screen-summary .fr-final-badges{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
body.fr-final-redesign .fr-final-screen-summary .fr-final-badges span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  border-radius:999px;
  border:1px solid #e2e8ff;
  background:#fff;
  color:#4f46e5;
  font-size:12px;
  font-weight:900;
  padding:8px 11px;
  box-shadow:0 10px 22px rgba(31,41,88,.045);
}
body.fr-final-redesign .fr-final-screen-summary .fr-final-badges span:before{
  content:"";
  width:6px;
  height:6px;
  border-radius:999px;
  background:#6366f1;
}
body.fr-final-redesign .fr-comfort-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid #e8eefc;
  background:#fff;
  border-radius:24px;
  padding:12px 14px;
  margin:0 0 18px;
  box-shadow:0 12px 30px rgba(31,41,88,.045);
}
body.fr-final-redesign .fr-comfort-strip strong{
  color:#101828;
  font-size:14px;
  font-weight:950;
}
body.fr-final-redesign .fr-comfort-strip span{
  color:#66718f;
  font-size:12px;
  font-weight:750;
}
body.fr-final-redesign .fr-comfort-strip .fr-comfort-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
body.fr-final-redesign .fr-comfort-strip .fr-comfort-actions a,
body.fr-final-redesign .fr-comfort-strip .fr-comfort-actions button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:14px;
  background:#eef2ff;
  color:#4f46e5;
  font-size:12px;
  font-weight:950;
  padding:9px 11px;
  text-decoration:none;
}
body.fr-final-redesign .fr-page-calendar .fr-final-screen-summary,
body.fr-final-redesign .fr-page-booking-edit .fr-final-screen-summary,
body.fr-final-redesign .fr-page-booking-create .fr-final-screen-summary{
  display:none;
}
body.fr-final-redesign input:not([type="checkbox"]):not([type="radio"]),
body.fr-final-redesign textarea,
body.fr-final-redesign select{
  min-height:44px;
}
body.fr-final-redesign input:focus,
body.fr-final-redesign textarea:focus,
body.fr-final-redesign select:focus,
body.fr-final-redesign button:focus-visible,
body.fr-final-redesign a:focus-visible{
  outline:0!important;
  box-shadow:var(--fr-focus)!important;
}
body.fr-final-redesign .fr-primary-action,
body.fr-final-redesign .crm-btn-primary,
body.fr-final-redesign button[type="submit"]{
  min-height:42px;
}
body.fr-final-redesign .fr-primary-action:not(.crm-tab-btn):not(.fr-status-choice-card),
body.fr-final-redesign button[type="submit"]{
  border-radius:16px!important;
  background:linear-gradient(135deg,#4f46e5,#6366f1)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 14px 28px rgba(79,70,229,.2)!important;
}
body.fr-final-redesign .fr-secondary-action:not(.crm-tab-btn){
  border-radius:16px!important;
  background:#fff!important;
  color:#536080!important;
  border:1px solid #e5ecff!important;
  box-shadow:0 10px 22px rgba(31,41,88,.045)!important;
}
body.fr-final-redesign .fr-status-pill-auto,
body.fr-final-redesign .crm-status-pill{
  border:1px solid transparent!important;
}
body.fr-final-redesign .fr-status-pill-auto[data-fr-tone="success"]{
  background:#ecfdf3!important;
  color:#15803d!important;
  border-color:#bbf7d0!important;
}
body.fr-final-redesign .fr-status-pill-auto[data-fr-tone="warning"]{
  background:#fff7ed!important;
  color:#b45309!important;
  border-color:#fed7aa!important;
}
body.fr-final-redesign .fr-status-pill-auto[data-fr-tone="danger"]{
  background:#fef2f2!important;
  color:#b91c1c!important;
  border-color:#fecaca!important;
}
body.fr-final-redesign .fr-status-pill-auto[data-fr-tone="neutral"]{
  background:#f1f5f9!important;
  color:#475569!important;
  border-color:#e2e8f0!important;
}
body.fr-final-redesign .fr-modern-table-wrap,
body.fr-final-redesign .fr-table-wrap{
  position:relative;
}
body.fr-final-redesign .fr-modern-table-wrap:before,
body.fr-final-redesign .fr-table-wrap:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:1px;
  background:linear-gradient(90deg,transparent,#dfe7ff,transparent);
  pointer-events:none;
  z-index:1;
}
body.fr-final-redesign table th:first-child,
body.fr-final-redesign table td:first-child{
  padding-left:18px!important;
}
body.fr-final-redesign table th:last-child,
body.fr-final-redesign table td:last-child{
  padding-right:18px!important;
}
body.fr-final-redesign .fr-route-services .fr-modern-card,
body.fr-final-redesign .fr-route-specialists .fr-modern-card,
body.fr-final-redesign .fr-route-company .fr-modern-card,
body.fr-final-redesign .fr-route-settings .fr-modern-card,
body.fr-final-redesign .fr-route-payments .fr-modern-card,
body.fr-final-redesign .fr-route-support .fr-modern-card{
  border-radius:28px!important;
}
body.fr-final-redesign .fr-route-support textarea,
body.fr-final-redesign .fr-route-chats textarea,
body.fr-final-redesign .fr-route-chat-detail textarea{
  min-height:96px;
  border-radius:22px!important;
}
body.fr-final-redesign .fr-route-timetable table thead th,
body.fr-final-redesign .fr-timetable-page table thead th{
  position:sticky!important;
  top:0!important;
  z-index:8!important;
  background:#f8faff!important;
  box-shadow:0 1px 0 #e5ecff!important;
}
body.fr-final-redesign .fr-route-timetable .overflow-x-auto,
body.fr-final-redesign .fr-timetable-page .overflow-x-auto,
body.fr-final-redesign .fr-horizontal-scroll-area{
  max-height:calc(100vh - 210px);
  scrollbar-width:thin;
  scrollbar-color:#aebcff #edf2ff;
}
body.fr-final-redesign .fr-horizontal-scroll-area::-webkit-scrollbar{
  width:10px;
  height:10px;
}
body.fr-final-redesign .fr-horizontal-scroll-area::-webkit-scrollbar-track{
  background:#edf2ff;
  border-radius:999px;
}
body.fr-final-redesign .fr-horizontal-scroll-area::-webkit-scrollbar-thumb{
  background:#aebcff;
  border-radius:999px;
}
body.fr-final-redesign .fr-gallery-grid,
body.fr-final-redesign [class*="gallery"]{
  gap:12px;
}
body.fr-final-redesign img{
  object-fit:cover;
}
body.fr-final-redesign .fr-empty-helper{
  margin:12px 0 18px;
  border-radius:26px;
}
body.fr-final-redesign .crm-calendar-section,
body.fr-final-redesign .crm-controls-card,
body.fr-final-redesign .crm-kpi-card,
body.fr-final-redesign .crm-page-topbar,
body.fr-final-redesign .crm-page-mini-header,
body.fr-final-redesign .crm-auto-header{
  backdrop-filter:saturate(150%) blur(8px);
}
@media(max-width:1024px){
  body.fr-final-redesign .fr-final-screen-summary{grid-template-columns:1fr;}
  body.fr-final-redesign .fr-final-screen-summary .fr-final-badges{justify-content:flex-start;}
  body.fr-final-redesign .fr-comfort-strip{align-items:flex-start;flex-direction:column;}
  body.fr-final-redesign .fr-comfort-strip .fr-comfort-actions{justify-content:flex-start;}
}
@media(max-width:640px){
  body.fr-final-redesign .crm-redesign-page{padding:18px 14px 40px;}
  body.fr-final-redesign .fr-final-screen-summary{border-radius:22px;padding:16px;}
  body.fr-final-redesign .fr-final-screen-summary h2{font-size:20px;}
  body.fr-final-redesign .fr-final-screen-summary .fr-final-badges{overflow:auto;flex-wrap:nowrap;padding-bottom:2px;}
  body.fr-final-redesign .fr-final-screen-summary .fr-final-badges span{white-space:nowrap;}
}

/* === Flyer global redesign phase 3.1: universal readability and safe states === */
body.fr-final-redesign.fr-phase3{--fr-phase3-border:#dfe7ff;}
body.fr-final-redesign .fr-simple-user-hint{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;margin:0 0 16px;border:1px solid #e4ebff;border-radius:22px;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 14px 34px rgba(31,41,88,.05);color:#66718f;font-size:13px;font-weight:750;line-height:1.4;}
body.fr-final-redesign .fr-simple-user-hint b{color:#0b123d;font-weight:950;}
body.fr-final-redesign .fr-simple-user-hint i{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:14px;background:#eef2ff;color:#4f46e5;font-style:normal;font-weight:950;}
body.fr-final-redesign .fr-readable-form-row{border-radius:22px!important;background:#fbfcff!important;border:1px solid #e8efff!important;padding:12px!important;}
body.fr-final-redesign .fr-choice-control{transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;}
body.fr-final-redesign .fr-choice-control:hover{background:#f8faff!important;border-color:#cfd9ff!important;box-shadow:0 12px 26px rgba(79,70,229,.08)!important;}
body.fr-final-redesign .fr-action-explainer{display:inline-flex;align-items:center;gap:8px;margin-left:8px;color:#8a97b8;font-size:12px;font-weight:800;}
body.fr-final-redesign .fr-section-divider{height:1px;background:linear-gradient(90deg,transparent,#dfe7ff,transparent);margin:18px 0;}
body.fr-final-redesign .fr-generated-empty-row td{padding:0!important;border:0!important;}
body.fr-final-redesign .fr-empty-helper{display:flex;align-items:center;gap:14px;min-height:128px;padding:24px;color:#66718f;background:linear-gradient(180deg,#fff,#fbfcff);}
body.fr-final-redesign .fr-empty-helper strong{display:block;color:#0b123d;font-size:16px;font-weight:950;margin-bottom:3px;}
body.fr-final-redesign .fr-empty-helper span{display:block;color:#7b86a5;font-size:13px;font-weight:750;}
body.fr-final-redesign .fr-empty-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:18px;background:#eef2ff;color:#4f46e5;}
body.fr-final-redesign .fr-page-calendar .crm-controls-card{top:10px!important;}
body.fr-final-redesign .fr-page-calendar .crm-day-shell{max-width:960px!important;}
body.fr-final-redesign .fr-page-calendar .crm-day-card-stack{max-width:520px!important;}
body.fr-final-redesign .fr-page-calendar .crm-booking-card.compact-day{max-width:520px!important;}
body.fr-final-redesign .fr-page-booking-edit .crm-status-panel,body.fr-final-redesign .fr-page-booking-create .crm-status-panel{grid-template-columns:repeat(2,minmax(220px,1fr))!important;}
body.fr-final-redesign .fr-page-support .fr-comfort-strip,body.fr-final-redesign .fr-page-chats .fr-comfort-strip{background:linear-gradient(135deg,#fff,#f8faff);}
@media(max-width:860px){body.fr-final-redesign .fr-final-screen-summary{grid-template-columns:1fr;}body.fr-final-redesign .fr-comfort-strip{grid-template-columns:1fr!important;}body.fr-final-redesign .fr-comfort-actions{justify-content:flex-start!important;overflow:auto;padding-bottom:4px;}body.fr-final-redesign .fr-page-calendar .crm-day-card-stack,body.fr-final-redesign .fr-page-calendar .crm-booking-card.compact-day{max-width:100%!important;}body.fr-final-redesign .fr-page-booking-edit .crm-status-panel,body.fr-final-redesign .fr-page-booking-create .crm-status-panel{grid-template-columns:1fr!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;}
}


/* === CRM review fixes 2026-04-27 === */
.brand-logo-tile img,
#sidebar .brand-logo-tile img {
  object-fit: contain !important;
  border-radius: 0 !important;
  max-width: 92% !important;
  max-height: 92% !important;
}
.crm-calendar-analytics {
  margin: 18px 0 16px;
}
.crm-kpi-grid.crm-calendar-analytics {
  display:grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap:14px;
}
.crm-kpi-card {
  display:flex;
  align-items:center;
  gap:12px;
  min-height:82px;
  padding:15px 16px;
  border-radius:24px;
  border:1px solid #e5ebf7;
  background:rgba(255,255,255,.94);
  box-shadow:0 14px 34px rgba(30,41,90,.055);
  text-decoration:none!important;
}
.crm-kpi-icon {
  width:42px;
  height:42px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#4f46e5;
  background:#eef2ff;
  flex:0 0 auto;
}
.crm-kpi-card span {
  display:block;
  color:#667085;
  font-weight:800;
  font-size:12px;
  line-height:1.2;
}
.crm-kpi-card strong {
  display:block;
  margin-top:4px;
  color:#0b123d;
  font-weight:900;
  font-size:22px;
  line-height:1;
}
.crm-kpi-card em {
  display:block;
  margin-top:6px;
  color:#4f46e5;
  font-style:normal;
  font-weight:800;
  font-size:11px;
}
.crm-kpi-link:hover { transform: translateY(-2px); border-color:#c7d2fe; }
.crm-calendar-controls-bar{margin-top:0!important;margin-bottom:18px!important;}
.crm-danger-action,
#main-content .crm-danger-action,
#main-content button.crm-danger-action {
  background:#fff!important;
  color:#dc2626!important;
  border:1px solid #fecaca!important;
  box-shadow:0 12px 24px rgba(220,38,38,.08)!important;
}
.crm-danger-action:hover{background:#fff1f2!important;color:#b91c1c!important;}
#main-content .payment-status-card,
#main-content .crm-status-choice {
  min-height:148px!important;
  height:auto!important;
  overflow:visible!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid #dfe7f7!important;
}
#main-content .payment-status-card.active,
#main-content .payment-status-card.is-selected {
  background:#eef2ff!important;
  border-color:#6366f1!important;
}
#main-content .payment-status-title{color:#0b123d!important;font-weight:900!important;word-break:normal!important;}
#main-content .payment-status-description{color:#52607c!important;line-height:1.45!important;}
.fr-booking-status-section{max-width:1020px!important;overflow:visible!important;}
.fr-booking-status-grid{grid-template-columns:minmax(0,1fr)!important;}
.fr-payment-status-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
.fr-confirmation-panel-card{border-radius:24px!important;background:#f8faff!important;border:1px solid #dfe7f7!important;}
.crm-page-mini-header.fr-auto-header{display:flex!important;margin-bottom:18px!important;}
.crm-page-mini-header.fr-auto-header .subtitle{max-width:780px;}
.crm-legacy-shell{padding-top:26px!important;}
.fr-messenger-page .crm-page-mini-header .subtitle{font-size:15px!important;}
.fr-message-surface{overflow:visible!important;}
#main-content textarea,#main-content input,#main-content select{color:#0b123d!important;}
.company-settings-shell .floating-label label,
#main-content .floating-label label{background:#fff!important;color:#64748b!important;line-height:1.1!important;}
.company-settings-shell .floating-label input,
.company-settings-shell .floating-label textarea,
.company-settings-shell .floating-label select{padding-top:1.45rem!important;}
.support-page-grid, .crm-support-grid{align-items:start!important;}
#main-content .support-form-card textarea{min-height:128px!important;}
@media(max-width:1200px){.crm-kpi-grid.crm-calendar-analytics{grid-template-columns:repeat(2,minmax(0,1fr));}.fr-payment-status-grid{grid-template-columns:1fr!important;}}
@media(max-width:768px){.crm-kpi-grid.crm-calendar-analytics{grid-template-columns:1fr;}.crm-page-mini-header.fr-auto-header{padding:18px!important}.crm-calendar-controls-bar{position:static!important;}.crm-calendar-view-controls{width:100%;}.crm-cancelled-switch{width:100%;justify-content:space-between;}.fr-payment-status-grid{grid-template-columns:1fr!important;}}

/* === CRM/App review fixes final pass 2026-04-28 === */
body.fr-route-booking-edit .fr-booking-status-section{
  width:min(100%, 980px)!important;
  max-width:980px!important;
  overflow:visible!important;
  padding:18px!important;
  border-radius:26px!important;
  background:#fff!important;
  border:1px solid #e3e9f7!important;
  box-shadow:0 20px 42px rgba(31,41,88,.07)!important;
}
body.fr-route-booking-edit .fr-booking-status-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 320px!important;
  gap:18px!important;
  align-items:start!important;
}
body.fr-route-booking-edit .fr-payment-status-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
body.fr-route-booking-edit .payment-status-card,
body.fr-route-booking-edit .payment-status-card.fr-status-pill-auto,
body.fr-route-booking-edit .fr-status-choice-card{
  display:block!important;
  min-height:118px!important;
  width:auto!important;
  max-width:none!important;
  padding:14px!important;
  border-radius:20px!important;
  border:1px solid #dfe7f7!important;
  background:#f8faff!important;
  color:#0b123d!important;
  box-shadow:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-align:left!important;
}
body.fr-route-booking-edit .payment-status-card.active,
body.fr-route-booking-edit .payment-status-card.is-selected{
  background:#eef2ff!important;
  border-color:#6366f1!important;
  box-shadow:0 12px 26px rgba(79,70,229,.12)!important;
}
body.fr-route-booking-edit .payment-status-caption{
  display:inline-flex!important;
  width:auto!important;
  max-width:max-content!important;
  min-height:24px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid #dfe7f7!important;
  color:#64748b!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  line-height:1!important;
}
body.fr-route-booking-edit .payment-status-title{
  display:block!important;
  margin-top:10px!important;
  color:#0b123d!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.22!important;
  white-space:normal!important;
}
body.fr-route-booking-edit .payment-status-description{
  display:block!important;
  margin-top:8px!important;
  color:#64748b!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.35!important;
  white-space:normal!important;
}
body.fr-route-booking-edit #confirmation-settings{
  width:100%!important;
  max-width:320px!important;
  padding:16px!important;
  border-radius:22px!important;
  background:#f8faff!important;
  color:#0b123d!important;
  overflow:visible!important;
}
body.fr-route-booking-edit #confirmation-settings label{align-items:flex-start!important;gap:10px!important;}
body.fr-route-booking-edit #confirmation-settings p,
body.fr-route-booking-edit #confirmation-settings div{word-break:normal!important;white-space:normal!important;}
body.fr-route-booking-edit .crm-danger-action,
body.fr-route-booking-edit a[href*="cancel"],
body.fr-route-booking-edit button[class*="red"],
body.fr-route-booking-edit .text-red-500,
body.fr-route-booking-edit .text-red-600{
  color:#dc2626!important;
}
body.fr-route-booking-edit a.crm-danger-action,
body.fr-route-booking-edit button.crm-danger-action{
  display:inline-flex!important;
  background:#fff!important;
  border:1px solid #fecaca!important;
  color:#dc2626!important;
}

/* CRM analytics page */
.crm-analytics-page .crm-calendar-analytics-strip{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(150px,1fr))!important;
  gap:14px!important;
  margin:18px 0!important;
}
.crm-analytics-page .crm-analytics-card{
  min-height:100px!important;
  padding:18px!important;
  border-radius:26px!important;
  border:1px solid #e3e9f7!important;
  background:#fff!important;
  box-shadow:0 18px 38px rgba(31,41,88,.06)!important;
  display:grid!important;
  grid-template-columns:44px 1fr!important;
  grid-template-areas:'icon label' 'icon value'!important;
  column-gap:12px!important;
  align-items:center!important;
}
.crm-analytics-page .crm-analytics-card-primary{background:linear-gradient(135deg,#4f46e5,#6676ff)!important;color:#fff!important;}
.crm-analytics-page .crm-analytics-icon{grid-area:icon;width:44px;height:44px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#eef2ff;color:#4f46e5;}
.crm-analytics-page .crm-analytics-card-primary .crm-analytics-icon{background:rgba(255,255,255,.18);color:#fff;}
.crm-analytics-page .crm-analytics-label{grid-area:label;color:#64748b;font-size:12px;font-weight:800;line-height:1.2;}
.crm-analytics-page .crm-analytics-card-primary .crm-analytics-label{color:rgba(255,255,255,.82);}
.crm-analytics-page .crm-analytics-card strong{grid-area:value;color:#0b123d;font-size:24px;font-weight:950;line-height:1.05;}
.crm-analytics-page .crm-analytics-card-primary strong{color:#fff!important;}
.crm-analytics-page .crm-analytics-dashboard-grid{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr)!important;gap:18px!important;}
.crm-analytics-page .crm-analytics-panel{padding:22px!important;border-radius:28px!important;border:1px solid #e3e9f7!important;background:#fff!important;box-shadow:0 18px 42px rgba(31,41,88,.06)!important;overflow:hidden!important;}
.crm-analytics-page .crm-panel-heading{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:16px!important;}
.crm-analytics-page .crm-panel-heading h2{font-size:20px!important;color:#0b123d!important;font-weight:950!important;margin:0!important;}
.crm-analytics-page .crm-panel-heading p{font-size:13px!important;color:#64748b!important;font-weight:700!important;margin:4px 0 0!important;}
.crm-analytics-page canvas{width:100%!important;max-height:320px!important;}
.crm-top-services-list{display:flex!important;flex-direction:column!important;gap:10px!important;}
.crm-top-service-row{display:grid!important;grid-template-columns:minmax(0,1fr) 46px!important;gap:10px!important;align-items:center!important;padding:12px 14px!important;border-radius:18px!important;background:#f8faff!important;border:1px solid #edf2ff!important;}
.crm-top-service-row span{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#0b123d!important;font-weight:800!important;}
.crm-top-service-row strong{display:flex!important;align-items:center!important;justify-content:center!important;height:32px!important;border-radius:12px!important;background:#eef2ff!important;color:#4f46e5!important;font-weight:950!important;}

/* CRM section banners and support sizing */
.crm-page-mini-header.fr-auto-header{display:flex!important;min-height:112px!important;margin:0 0 18px!important;padding:26px 28px!important;border-radius:28px!important;background:linear-gradient(135deg,#fff,#f7faff)!important;border:1px solid #e3e9f7!important;box-shadow:0 18px 42px rgba(31,41,88,.06)!important;overflow:visible!important;}
.crm-page-mini-header.fr-auto-header .title{font-size:30px!important;line-height:1.08!important;color:#0b123d!important;font-weight:950!important;}
.crm-page-mini-header.fr-auto-header .subtitle{font-size:14px!important;line-height:1.45!important;color:#64748b!important;font-weight:750!important;margin-top:8px!important;}
body.fr-route-support .crm-legacy-shell > .bg-\[\#f5f7fe\]{padding:26px!important;}
body.fr-route-support .crm-legacy-shell .ml-10{margin-left:0!important;max-width:1180px!important;margin-right:auto!important;margin-left:auto!important;}
body.fr-route-support .grid.xl\:grid-cols-\[380px_minmax\(0\,1fr\)\]{grid-template-columns:340px minmax(0,1fr)!important;gap:18px!important;}
body.fr-route-support h1{font-size:28px!important;line-height:1.15!important;color:#0b123d!important;}
body.fr-route-support h2{font-size:17px!important;line-height:1.25!important;color:#0b123d!important;}
body.fr-route-support p,body.fr-route-support label{line-height:1.45!important;}
body.fr-route-support textarea{min-height:120px!important;}
body.fr-route-settings .floating-label label,
body.fr-route-settings label{position:relative!important;top:auto!important;left:auto!important;background:transparent!important;display:block!important;margin-bottom:6px!important;color:#64748b!important;font-size:12px!important;font-weight:850!important;}
body.fr-route-settings input, body.fr-route-settings textarea, body.fr-route-settings select{padding:14px 16px!important;min-height:48px!important;line-height:1.25!important;}
body.fr-route-settings .grid{align-items:start!important;}
@media(max-width:1200px){
  body.fr-route-booking-edit .fr-booking-status-grid{grid-template-columns:1fr!important;}
  body.fr-route-booking-edit #confirmation-settings{max-width:none!important;}
  .crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .crm-analytics-page .crm-analytics-dashboard-grid{grid-template-columns:1fr!important;}
  body.fr-route-support .grid.xl\:grid-cols-\[380px_minmax\(0\,1fr\)\]{grid-template-columns:1fr!important;}
}
@media(max-width:640px){
  body.fr-route-booking-edit .fr-payment-status-grid{grid-template-columns:1fr!important;}
  .crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:1fr!important;}
  .crm-page-mini-header.fr-auto-header{padding:18px!important;min-height:auto!important;}
  .crm-page-mini-header.fr-auto-header .title{font-size:24px!important;}
}


/* === Requested CRM/App polish v6 === */
#main-content .fr-section-hero-banner{
  width:min(100%, 1320px)!important;
  margin:0 auto 22px!important;
  padding:26px 30px!important;
  min-height:132px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  border:1px solid #e3e9f7!important;
  border-radius:32px!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(246,249,255,.92))!important;
  box-shadow:0 22px 54px rgba(31,41,88,.075)!important;
  position:relative!important;
  overflow:hidden!important;
}
#main-content .fr-section-hero-banner:after{
  content:"";position:absolute;right:-54px;top:-74px;width:230px;height:180px;border-radius:48px;transform:rotate(-14deg);
  background:linear-gradient(135deg,rgba(99,102,241,.16),rgba(56,189,248,.12));pointer-events:none;
}
#main-content .fr-section-hero-copy,#main-content .fr-section-hero-chips{position:relative;z-index:1;}
#main-content .fr-section-hero-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #e3e9f7;color:#4f46e5;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.04em;}
#main-content .fr-section-hero-banner h1{margin:0!important;color:#0b123d!important;font-size:34px!important;line-height:1.06!important;font-weight:950!important;letter-spacing:-.03em!important;}
#main-content .fr-section-hero-banner p{margin:9px 0 0!important;max-width:740px!important;color:#667085!important;font-size:15px!important;line-height:1.45!important;font-weight:750!important;}
#main-content .fr-section-hero-chips{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;flex-wrap:wrap!important;min-width:260px!important;}
#main-content .fr-section-hero-chips span{display:inline-flex!important;align-items:center!important;min-height:36px!important;padding:8px 13px!important;border-radius:999px!important;background:#fff!important;border:1px solid #e3e9f7!important;color:#4f46e5!important;font-size:12px!important;font-weight:950!important;box-shadow:0 10px 24px rgba(31,41,88,.055)!important;}
body.fr-has-required-section-banner .crm-legacy-shell,
body.fr-has-required-section-banner .crm-redesign-page,
body.fr-has-required-section-banner .crm-page-shell{padding-top:26px!important;}

/* Booking edit: remove accidental green pill background from whole status area */
body.fr-route-booking-edit .fr-booking-status-section,
body.fr-route-booking-edit .fr-booking-status-section.fr-status-pill-auto,
body.fr-route-booking-edit .fr-booking-status-section[data-fr-tone],
body.fr-route-booking-edit .fr-booking-status-grid.fr-status-pill-auto,
body.fr-route-booking-edit .fr-payment-status-grid.fr-status-pill-auto{
  display:block!important;
  background:#fff!important;
  background-image:none!important;
  color:#0b123d!important;
  border-radius:28px!important;
  border:1px solid #e3e9f7!important;
  box-shadow:0 22px 48px rgba(31,41,88,.075)!important;
}
body.fr-route-booking-edit .fr-booking-status-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 320px!important;
  gap:18px!important;
  align-items:start!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.fr-route-booking-edit .fr-payment-status-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.fr-route-booking-edit .payment-status-card,
body.fr-route-booking-edit .fr-status-choice-card{
  min-height:112px!important;
  padding:14px 15px!important;
  border-radius:20px!important;
  background:#f8faff!important;
  border:1px solid #dfe7f7!important;
  box-shadow:none!important;
}
body.fr-route-booking-edit .payment-status-card.active,
body.fr-route-booking-edit .payment-status-card.is-selected{background:#eef2ff!important;border-color:#6366f1!important;}
body.fr-route-booking-edit #confirmation-settings,
body.fr-route-booking-edit .fr-confirmation-panel{
  max-width:320px!important;
  background:#f8faff!important;
  border:1px solid #dfe7f7!important;
  border-radius:22px!important;
  color:#0b123d!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.fr-route-booking-edit .crm-danger-action,
body.fr-route-booking-edit a[href*="cancel"],
body.fr-route-booking-edit button[name="cancel_booking"]{background:#fff!important;color:#dc2626!important;border:1px solid #fecaca!important;box-shadow:0 14px 30px rgba(220,38,38,.08)!important;}

/* Analytics v6 */
.crm-analytics-page .crm-analytics-period-bar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;flex-wrap:wrap!important;margin:18px 0!important;padding:14px 16px!important;border:1px solid #e3e9f7!important;border-radius:24px!important;background:#fff!important;box-shadow:0 18px 42px rgba(31,41,88,.055)!important;}
.crm-analytics-page .crm-period-copy strong{display:block;color:#0b123d;font-size:16px;font-weight:950;line-height:1.1;}
.crm-analytics-page .crm-period-copy span{display:block;margin-top:4px;color:#667085;font-size:12px;font-weight:750;}
.crm-analytics-page .crm-period-buttons{display:flex!important;gap:8px!important;flex-wrap:wrap!important;}
.crm-analytics-page .crm-period-button{border:1px solid #e3e9f7!important;background:#f8faff!important;color:#4f46e5!important;border-radius:999px!important;min-height:38px!important;padding:9px 14px!important;font-weight:950!important;font-size:12px!important;cursor:pointer!important;}
.crm-analytics-page .crm-period-button.is-active{background:linear-gradient(135deg,#4f46e5,#6366f1)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 14px 28px rgba(79,70,229,.18)!important;}
.crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:repeat(5,minmax(150px,1fr))!important;}
.crm-analytics-page .crm-analytics-card{min-height:112px!important;}
.crm-analytics-page .crm-analytics-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)!important;align-items:stretch!important;}
.crm-analytics-page .crm-analytics-panel canvas{height:340px!important;}
.crm-empty-mini{padding:18px;border-radius:18px;background:#f8faff;border:1px dashed #cbd5e1;color:#667085;font-weight:800;}

/* Company settings category selector: compact grid */
body.fr-route-settings #company-category-panels [data-group-panel]{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))!important;gap:10px!important;}
body.fr-route-settings .catalog-editor-option{min-height:58px!important;padding:10px 12px!important;border-radius:16px!important;align-items:center!important;gap:10px!important;}
body.fr-route-settings .catalog-editor-option .font-semibold{font-size:13px!important;line-height:1.2!important;}
body.fr-route-settings .catalog-editor-option .text-xs{font-size:10px!important;line-height:1.15!important;}
body.fr-route-settings .catalog-editor-option input[type="checkbox"]{width:16px!important;height:16px!important;flex:0 0 16px!important;}
body.fr-route-settings #company-group-pills{gap:7px!important;}
body.fr-route-settings .catalog-editor-pill{padding:8px 11px!important;font-size:12px!important;min-height:34px!important;}
body.fr-route-settings .catalog-editor-search{min-height:46px!important;padding:12px 14px!important;border-radius:16px!important;}

@media(max-width:900px){
  #main-content .fr-section-hero-banner{flex-direction:column!important;align-items:flex-start!important;min-height:auto!important;padding:22px!important;}
  #main-content .fr-section-hero-banner h1{font-size:28px!important;}
  #main-content .fr-section-hero-chips{justify-content:flex-start!important;min-width:0!important;}
  body.fr-route-booking-edit .fr-booking-status-grid{grid-template-columns:1fr!important;}
  body.fr-route-booking-edit #confirmation-settings{max-width:none!important;}
  .crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .crm-analytics-page .crm-analytics-dashboard-grid{grid-template-columns:1fr!important;}
}
@media(max-width:640px){
  .crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:1fr!important;}
  body.fr-route-booking-edit .fr-payment-status-grid{grid-template-columns:1fr!important;}
  body.fr-route-settings #company-category-panels [data-group-panel]{grid-template-columns:1fr!important;}
}

/* === CRM targeted polish v7: banners, day calendar, support and settings === */
#main-content .fr-section-hero-banner{
  width:min(100%, 1320px)!important;
  min-height:168px!important;
  margin:0 auto 24px!important;
  padding:28px 32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  border-radius:34px!important;
  border:1px solid rgba(220,229,255,.92)!important;
  background:
    radial-gradient(360px 220px at 100% 0%, rgba(99,102,241,.14), transparent 62%),
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(248,250,255,.84))!important;
  box-shadow:0 24px 58px rgba(31,41,88,.08)!important;
  backdrop-filter:blur(18px)!important;
  overflow:hidden!important;
}
#main-content .fr-section-hero-copy{min-width:0!important;max-width:860px!important;position:relative!important;z-index:2!important;}
#main-content .fr-section-hero-title{
  display:block!important;
  margin:0!important;
  color:#0b123d!important;
  font-size:38px!important;
  line-height:.98!important;
  font-weight:950!important;
  letter-spacing:-.045em!important;
  white-space:normal!important;
}
#main-content .fr-section-hero-banner h1{display:block!important;}
#main-content .fr-section-hero-banner p{
  margin:12px 0 0!important;
  max-width:760px!important;
  color:#66718f!important;
  font-size:15px!important;
  line-height:1.55!important;
  font-weight:760!important;
}
#main-content .fr-section-hero-eyebrow{
  margin-bottom:12px!important;
  min-height:36px!important;
  padding:8px 13px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid #e3e9f7!important;
  color:#4f46e5!important;
  font-size:12px!important;
  font-weight:950!important;
}
#main-content .fr-section-hero-chips{
  min-width:310px!important;
  max-width:430px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  position:relative!important;
  z-index:2!important;
}
#main-content .fr-section-hero-chips span{
  min-height:40px!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid #e3e9f7!important;
  color:#4f46e5!important;
  font-size:13px!important;
  font-weight:950!important;
  box-shadow:0 12px 26px rgba(31,41,88,.055)!important;
}
body.fr-has-required-section-banner .crm-page-mini-header.fr-auto-header{display:none!important;}
body.fr-has-required-section-banner .crm-legacy-shell{padding-top:26px!important;}

/* Day calendar booking cards must not inherit button styles. */
#main-content .crm-day-card-stack > a,
#main-content .crm-week-grid a,
#main-content a.fr-primary-action:has(.crm-booking-card),
#main-content a.fr-secondary-action:has(.crm-booking-card){
  display:block!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
  padding:0!important;
  border-radius:0!important;
  color:inherit!important;
  transform:none!important;
}
.crm-day-card-stack{max-width:600px!important;}
.crm-day-card-stack .group{max-width:600px!important;}
.crm-booking-card.compact-day{
  max-width:600px!important;
  width:100%!important;
  position:relative!important;
  z-index:1!important;
  background:linear-gradient(180deg,#fff,#fbfcff)!important;
  border:1px solid #e3e9f7!important;
  box-shadow:0 14px 32px rgba(31,41,88,.06)!important;
}
.crm-day-timeline-row.has-bookings{background:linear-gradient(90deg,rgba(99,102,241,.035),rgba(255,255,255,.96) 34%)!important;}
.crm-day-slot{overflow:visible!important;}

/* Booking edit: remove decorative green oval and keep the status area clean. */
body.fr-route-booking-edit .fr-booking-status-section,
body.fr-route-booking-edit .fr-booking-status-section::before,
body.fr-route-booking-edit .fr-booking-status-section::after,
body.fr-route-booking-edit .fr-booking-status-grid::before,
body.fr-route-booking-edit .fr-booking-status-grid::after,
body.fr-route-booking-edit .fr-payment-status-grid::before,
body.fr-route-booking-edit .fr-payment-status-grid::after{
  background-image:none!important;
  background:transparent!important;
}
body.fr-route-booking-edit .fr-booking-status-section{
  background:#fff!important;
  max-width:980px!important;
  overflow:visible!important;
}
body.fr-route-booking-edit .fr-booking-status-grid{
  background:transparent!important;
}
body.fr-route-booking-edit .payment-status-card{
  background:#fff!important;
}
body.fr-route-booking-edit .payment-status-card.active,
body.fr-route-booking-edit .payment-status-card.is-selected{
  background:#eef2ff!important;
}

/* Support page: aligned columns, readable text and compact controls. */
body.fr-route-support .crm-legacy-shell{max-width:1380px!important;margin:0 auto!important;}
body.fr-route-support #main-content .ml-10{margin-left:0!important;}
body.fr-route-support #main-content .grid.gap-6.xl\:grid-cols-\[380px_minmax\(0\,1fr\)\],
body.fr-route-support #main-content .grid.gap-6{
  align-items:start!important;
}
body.fr-route-support #main-content .grid.gap-6.xl\:grid-cols-\[380px_minmax\(0\,1fr\)\]{
  grid-template-columns:minmax(320px,390px) minmax(0,1fr)!important;
}
body.fr-route-support #main-content section.rounded-3xl{
  border-radius:28px!important;
  border:1px solid #e3e9f7!important;
  box-shadow:0 18px 42px rgba(31,41,88,.06)!important;
  background:#fff!important;
}
body.fr-route-support #main-content h1,
body.fr-route-support #main-content h2,
body.fr-route-support #main-content h3{color:#0b123d!important;letter-spacing:-.025em!important;}
body.fr-route-support #main-content p,
body.fr-route-support #main-content label,
body.fr-route-support #main-content .text-sm,
body.fr-route-support #main-content .text-xs{line-height:1.45!important;}
body.fr-route-support #main-content input,
body.fr-route-support #main-content textarea{
  min-height:46px!important;
  border-radius:16px!important;
  padding:12px 14px!important;
  font-size:13px!important;
}
body.fr-route-support #main-content textarea{min-height:132px!important;resize:vertical!important;}
body.fr-route-support #main-content input[type=file]{min-height:54px!important;white-space:normal!important;overflow:hidden!important;}
body.fr-route-support #main-content button[type=submit]{min-height:46px!important;border-radius:16px!important;font-size:13px!important;font-weight:900!important;}
body.fr-route-support #main-content .max-h-\[620px\]{max-height:560px!important;}
body.fr-route-support #main-content .max-h-\[650px\]{max-height:520px!important;}

/* Company settings: keep categories as one active group, not a huge full-page list. */
body.fr-route-settings #company-category-panels{
  max-height:430px!important;
  overflow:auto!important;
  padding:12px!important;
  border:1px solid #e3e9f7!important;
  border-radius:22px!important;
  background:#fbfcff!important;
}
body.fr-route-settings #company-category-panels [data-group-panel]{display:none!important;}
body.fr-route-settings #company-category-panels [data-group-panel].catalog-editor-panel--active{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important;
  gap:10px!important;
}
body.fr-route-settings #company-category-panels [data-group-panel][hidden]{display:none!important;}
body.fr-route-settings .catalog-editor-option{
  min-height:54px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  background:#fff!important;
}
body.fr-route-settings .catalog-editor-option .font-semibold{font-size:13px!important;line-height:1.18!important;}
body.fr-route-settings .catalog-editor-option .text-xs{font-size:10px!important;line-height:1.14!important;color:#7b86a6!important;}
body.fr-route-settings .catalog-editor-option input[type="checkbox"]{width:16px!important;height:16px!important;min-height:16px!important;padding:0!important;}
body.fr-route-settings #company-group-pills{gap:7px!important;margin-bottom:10px!important;}
body.fr-route-settings .catalog-editor-pill{min-height:34px!important;padding:8px 12px!important;font-size:12px!important;}
body.fr-route-settings .catalog-editor-search{min-height:46px!important;border-radius:16px!important;padding:12px 14px!important;}
body.fr-route-settings .settings-card{border-radius:28px!important;border:1px solid #e3e9f7!important;box-shadow:0 18px 42px rgba(31,41,88,.06)!important;}
body.fr-route-settings .floating-label{margin-bottom:4px!important;}
body.fr-route-settings .floating-label label{font-size:12px!important;line-height:1.15!important;margin-bottom:6px!important;color:#64748b!important;}
body.fr-route-settings .floating-label input,
body.fr-route-settings .floating-label textarea{min-height:48px!important;padding:14px 16px!important;}

@media(max-width:1100px){
  #main-content .fr-section-hero-banner{flex-direction:column!important;align-items:flex-start!important;min-height:auto!important;padding:24px!important;}
  #main-content .fr-section-hero-chips{justify-content:flex-start!important;min-width:0!important;max-width:none!important;}
  body.fr-route-support #main-content .grid.gap-6.xl\:grid-cols-\[380px_minmax\(0\,1fr\)\]{grid-template-columns:1fr!important;}
}
@media(max-width:640px){
  #main-content .fr-section-hero-title{font-size:28px!important;}
  #main-content .fr-section-hero-banner{border-radius:26px!important;padding:20px!important;}
  body.fr-route-settings #company-category-panels [data-group-panel].catalog-editor-panel--active{grid-template-columns:1fr!important;}
}

/* Analytics v7: period navigation and insight cards. */
.crm-analytics-page .crm-period-controls{display:flex!important;align-items:center!important;gap:8px!important;flex:1 1 280px!important;justify-content:center!important;}
.crm-analytics-page .crm-period-nav{width:40px!important;height:40px!important;border-radius:14px!important;border:1px solid #e3e9f7!important;background:#fff!important;color:#4f46e5!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 10px 22px rgba(31,41,88,.055)!important;}
.crm-analytics-page .crm-period-current{min-height:40px!important;min-width:190px!important;padding:10px 16px!important;border-radius:16px!important;background:#f8faff!important;border:1px solid #e3e9f7!important;color:#0b123d!important;font-size:13px!important;font-weight:950!important;text-align:center!important;text-transform:capitalize!important;}
.crm-analytics-page .crm-analytics-insights{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin:0 0 18px!important;}
.crm-analytics-page .crm-analytics-insights article{display:flex!important;align-items:center!important;gap:14px!important;border:1px solid #e3e9f7!important;border-radius:24px!important;background:#fff!important;box-shadow:0 16px 34px rgba(31,41,88,.055)!important;padding:16px!important;min-width:0!important;}
.crm-analytics-page .crm-insight-icon{width:42px!important;height:42px!important;border-radius:16px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#eef2ff!important;color:#4f46e5!important;flex:0 0 auto!important;}
.crm-analytics-page .crm-analytics-insights strong{display:block!important;color:#0b123d!important;font-size:14px!important;font-weight:950!important;line-height:1.2!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.crm-analytics-page .crm-analytics-insights small{display:block!important;color:#667085!important;font-size:11px!important;font-weight:750!important;margin-top:4px!important;line-height:1.25!important;}
.crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:repeat(5,minmax(160px,1fr))!important;}
.crm-analytics-page .crm-analytics-panel-chart{min-height:420px!important;}
@media(max-width:1100px){.crm-analytics-page .crm-analytics-insights{grid-template-columns:1fr!important}.crm-analytics-page .crm-period-controls{justify-content:flex-start!important}.crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.crm-analytics-page .crm-calendar-analytics-strip{grid-template-columns:1fr!important}.crm-analytics-page .crm-period-current{min-width:0!important;flex:1!important}.crm-analytics-page .crm-period-buttons{width:100%!important}.crm-analytics-page .crm-period-button{flex:1!important}}

/* Company settings: keep organization name visible in the profile header. */
body.fr-route-settings .settings-card h1,
body.fr-route-settings .settings-card [class*="text-[#6374F6]"].font-extrabold {
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  color:#0b123d!important;
  font-size:clamp(28px,2.6vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  font-weight:950!important;
  margin:0!important;
}

/* Calendar activities */
.crm-activity-modal.hidden { display: none !important; }
.crm-activity-modal { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 24px; }
.crm-activity-backdrop { position: absolute; inset: 0; background: rgba(15, 23, 42, .36); backdrop-filter: blur(8px); }
.crm-activity-dialog { position: relative; width: min(920px, 100%); max-height: calc(100vh - 48px); overflow-y: auto; background: linear-gradient(135deg, #fff 0%, #f8faff 100%); border: 1px solid #e2e8f0; border-radius: 32px; box-shadow: 0 32px 90px rgba(48, 71, 236, .22); padding: 26px; }
.crm-activity-dialog-head { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 20px; }
.crm-activity-dialog-head h2 { margin: 8px 0 4px; font-size: 28px; line-height: 1.08; font-weight: 900; color: #0b123d; }
.crm-activity-dialog-head p { margin: 0; color: #667085; font-weight: 700; }
.crm-modal-close { width: 42px; height: 42px; border-radius: 16px; border: 1px solid #e4e8f1; background: #fff; color: #4f46e5; font-weight: 900; }
.crm-form-grid.two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.crm-field-label { display: flex; flex-direction: column; gap: 7px; color: #34405f; font-size: 13px; font-weight: 900; }
.crm-input { width: 100%; border: 1px solid #dfe5f3; background: #fff; border-radius: 18px; padding: 12px 14px; color: #0b123d; font-weight: 700; outline: none; }
.crm-input:focus { border-color: #6366f1; box-shadow: 0 0 0 4px rgba(99, 102, 241, .12); }
.crm-availability-box { margin-top: 16px; padding: 18px; border-radius: 24px; background: #f8faff; border: 1px solid #e4e8f1; }
.crm-availability-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 14px; }
.crm-availability-head h3 { margin: 0 0 4px; font-size: 18px; color: #0b123d; font-weight: 900; }
.crm-availability-head p { margin: 0; color: #667085; font-weight: 700; }
.crm-switch-inline { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; white-space: nowrap; color: #0b123d; }
.crm-switch-inline input { display: none; }
.crm-switch-inline span { width: 44px; height: 24px; border-radius: 999px; background: #dbe4f2; position: relative; transition: .18s; }
.crm-switch-inline span::after { content: ''; position: absolute; width: 18px; height: 18px; left: 3px; top: 3px; border-radius: 50%; background: #fff; box-shadow: 0 2px 8px rgba(15,23,42,.15); transition: .18s; }
.crm-switch-inline input:checked + span { background: #4f46e5; }
.crm-switch-inline input:checked + span::after { transform: translateX(20px); }
.crm-activity-scope { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.crm-activity-scope label { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border-radius: 999px; background: #fff; border: 1px solid #e4e8f1; color: #34405f; font-size: 13px; font-weight: 800; }
.crm-selected-scope { display: none; }
.crm-activity-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 18px; flex-wrap: wrap; }
.crm-activity-hint { margin-right: auto; color: #667085; font-size: 13px; font-weight: 700; }
.crm-btn-danger { background: #fff1f2 !important; color: #e11d48 !important; border-color: #fecdd3 !important; }
.crm-calendar-activity-card { display: block; width: 100%; text-align: left; border: 1px solid #ddd6fe; border-radius: 22px; padding: 13px 14px; background: linear-gradient(135deg, #eef2ff 0%, #fff 100%); box-shadow: 0 14px 32px rgba(79,70,229,.10); color: #0b123d; transition: .18s ease; }
.crm-calendar-activity-card:hover { transform: translateY(-1px); border-color: #818cf8; box-shadow: 0 18px 40px rgba(79,70,229,.15); }
.crm-calendar-activity-time { display: inline-flex; align-items: center; gap: 6px; color: #4f46e5; font-size: 12px; font-weight: 900; }
.crm-calendar-activity-title { margin-top: 7px; font-size: 15px; line-height: 1.2; font-weight: 900; }
.crm-calendar-activity-desc { margin-top: 4px; color: #667085; font-size: 13px; font-weight: 700; }
.crm-calendar-activity-chip { display: inline-flex; margin-top: 9px; padding: 5px 9px; border-radius: 999px; background: #fff; color: #4f46e5; font-size: 11px; font-weight: 900; border: 1px solid #e4e8f1; }
.crm-day-summary-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.crm-day-summary-action.muted { border: 1px solid #dfe5f3; background: #fff; color: #4f46e5; }
@media (max-width: 768px) {
  .crm-activity-dialog { padding: 18px; border-radius: 24px; }
  .crm-form-grid.two { grid-template-columns: 1fr; }
  .crm-availability-head { flex-direction: column; }
  .crm-activity-actions { justify-content: stretch; }
  .crm-activity-actions .crm-btn { width: 100%; justify-content: center; }
}

/* Calendar activities */
.crm-calendar-activity-card {
  width: 100%;
  border: 1px solid rgba(79, 70, 229, .20);
  border-radius: 22px;
  background: linear-gradient(135deg, #eef2ff 0%, #ffffff 70%);
  padding: 14px 16px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  text-align: left;
  box-shadow: 0 14px 34px rgba(79, 70, 229, .08);
  color: #0b123d;
}
.crm-calendar-activity-card.compact { padding: 12px 14px; border-radius: 18px; }
.crm-calendar-activity-card:hover { border-color: rgba(79, 70, 229, .55); transform: translateY(-1px); }
.crm-calendar-activity-time { font-size: 12px; font-weight: 900; color: #4f46e5; display:flex; gap:6px; align-items:center; }
.crm-calendar-activity-title { margin-top: 5px; font-size: 15px; font-weight: 950; color: #0b123d; }
.crm-calendar-activity-desc { margin-top: 4px; font-size: 12px; font-weight: 650; color: #667085; line-height: 1.35; }
.crm-calendar-activity-pill { flex-shrink: 0; border-radius: 999px; padding: 7px 10px; font-size: 11px; font-weight: 900; color:#4f46e5; background:#fff; border:1px solid #dfe4ff; }
.crm-calendar-activity-pill.blocks { color:#b45309; background:#fff7ed; border-color:#fed7aa; }
.crm-activity-modal.hidden { display:none !important; }
.crm-activity-modal { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; padding: 20px; }
.crm-activity-backdrop { position:absolute; inset:0; background: rgba(15,23,42,.40); backdrop-filter: blur(8px); }
.crm-activity-dialog { position:relative; width:min(860px, 100%); max-height: calc(100vh - 40px); overflow:auto; border-radius: 32px; background:#fff; border:1px solid rgba(226,232,240,.95); box-shadow: 0 40px 90px rgba(15,23,42,.24); padding: 26px; }
.crm-activity-dialog-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:22px; }
.crm-activity-dialog-head h3 { margin: 8px 0 4px; font-size: 28px; line-height:1.05; font-weight:950; color:#0b123d; letter-spacing:-.04em; }
.crm-activity-dialog-head p { color:#667085; font-weight:650; }
.crm-activity-close { width:42px; height:42px; border-radius:16px; background:#f8faff; border:1px solid #e4e8f1; color:#4f46e5; }
.crm-activity-grid { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.crm-field { display:flex; flex-direction:column; gap:7px; font-weight:800; color:#34405f; }
.crm-field span { font-size: 12px; text-transform: uppercase; letter-spacing:.04em; color:#7a86a8; }
.crm-field input, .crm-field textarea, .crm-field select { width:100%; border:1px solid #dbe3f2; border-radius: 18px; background:#f8faff; color:#0b123d; padding: 13px 14px; font-weight:700; outline:none; }
.crm-field textarea { resize: vertical; min-height: 96px; }
.crm-field:has(textarea) { grid-column: 1 / -1; }
.crm-activity-availability { margin-top: 18px; border:1px solid #e4e8f1; background:#f8faff; border-radius:24px; padding:16px; }
.crm-check-row { display:flex; align-items:flex-start; gap:12px; font-weight:800; color:#0b123d; }
.crm-check-row input { margin-top:5px; }
.crm-check-row small { display:block; color:#667085; font-weight:650; margin-top:3px; }
.crm-activity-block-settings { margin-top:16px; display:grid; grid-template-columns: 1fr 1fr 1fr; gap: 14px; }
.crm-activity-dialog-actions { margin-top:20px; display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.crm-activity-actions-right { display:flex; gap:10px; margin-left:auto; }
.crm-btn-danger { background:#fff1f2 !important; color:#e11d48 !important; border:1px solid #fecdd3 !important; }
@media (max-width: 768px) {
  .crm-activity-dialog { border-radius: 24px; padding: 18px; }
  .crm-activity-grid, .crm-activity-block-settings { grid-template-columns: 1fr; }
  .crm-activity-dialog-head h3 { font-size: 23px; }
  .crm-calendar-activity-card { flex-direction: column; }
}
