/* ==========================================================================
   Realty Inspire Dashboard, brand #589AD1 + black
   ========================================================================== */
.udc-wrap, .udc-admin {
	--p: #589AD1;
	--p-600: #3F82BC;
	--p-700: #2E6A9E;
	--p-50: #EEF5FB;
	--p-100: #D6E6F4;
	--ink: #000000;
	--text: #334155;
	--muted: #64748B;
	--line: #E6ECF2;
	--bg: #F3F7FA;
	--card: #FFFFFF;
	--radius: 16px;
	--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .06);
	--shadow: 0 10px 30px -12px rgba(15, 23, 42, .18);
	--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
.udc-wrap { font-family: var(--font) !important; color: var(--text) !important; font-size: 15px !important; line-height: 1.55 !important; -webkit-font-smoothing: antialiased !important; }
.udc-wrap *, .udc-wrap *::before, .udc-wrap *::after, .udc-admin .udc-chat * { box-sizing: border-box !important; }
.udc-wrap h1, .udc-wrap h2, .udc-wrap h3 { font-family: var(--font) !important; color: var(--ink) !important; letter-spacing: -.01em !important; margin: 0 !important; line-height: 1.25 !important; }
.udc-wrap p { margin: 0 !important; }
:where(.udc-wrap) a { color: var(--p-700) !important; text-decoration: none !important; }
:where(.udc-wrap) a:hover { color: var(--p) !important; }
.udc-wrap ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.udc-wrap img { max-width: 100% !important; }
.udc-icon { flex-shrink: 0 !important; display: inline-block !important; vertical-align: middle !important; }
.udc-muted { color: var(--muted) !important; font-size: 14px !important; }
.udc-small { font-size: 12.5px !important; }

/* Full-screen template */
body.udc-app-body { margin: 0 !important; background: var(--bg, #F3F7FA) !important; background: #F3F7FA !important; }
body.udc-app-body .udc-wrap { min-height: 100vh !important; }

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */
.udc-btn {
	display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important;
	background: var(--p) !important; color: #fff !important; border: 0 !important; border-radius: 10px !important;
	padding: 11px 18px !important; font: 600 14.5px/1.2 var(--font) !important; cursor: pointer !important; text-decoration: none !important;
	box-shadow: 0 6px 16px -6px rgba(88, 154, 209, .6) !important; transition: background .15s, transform .15s, box-shadow .15s !important;
}
.udc-btn:hover, .udc-btn:focus-visible { background: var(--p-600) !important; color: #fff !important; transform: translateY(-1px) !important; box-shadow: 0 10px 20px -8px rgba(88, 154, 209, .7) !important; }
.udc-wrap a.udc-btn:hover, .udc-wrap button.udc-btn:hover, .udc-btn:hover span, .udc-btn:hover .udc-icon { color: #fff !important; }
.udc-btn:active { transform: none !important; }
.udc-btn-lg { padding: 14px 22px !important; font-size: 15.5px !important; border-radius: 12px !important; }
.udc-btn-block { display: flex !important; width: 100% !important; }
.udc-btn-block + .udc-btn-block { margin-top: 10px !important; }
.udc-btn-outline { background: #fff !important; color: var(--p-700) !important; border: 1.5px solid var(--p-100) !important; box-shadow: none !important; }
.udc-btn-outline:hover, .udc-btn-outline:focus-visible { background: var(--p) !important; border-color: var(--p) !important; color: #fff !important; box-shadow: none !important; }
.udc-btn-white { background: #fff !important; color: var(--p-700) !important; box-shadow: 0 8px 20px -8px rgba(0, 0, 0, .3) !important; }
.udc-btn-white:hover, .udc-btn-white:focus-visible { background: #000000 !important; color: #fff !important; }
.udc-btn-glass { background: rgba(255, 255, 255, .16) !important; border: 1px solid rgba(255, 255, 255, .35) !important; box-shadow: none !important; }
.udc-btn-glass:hover, .udc-btn-glass:focus-visible { background: rgba(255, 255, 255, .26) !important; color: #fff !important; box-shadow: none !important; }

/* --------------------------------------------------------------------------
   Forms
   -------------------------------------------------------------------------- */
.udc-form { display: flex !important; flex-direction: column !important; gap: 16px !important; margin: 0 !important; }
.udc-row { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 14px !important; }
.udc-field { display: flex !important; flex-direction: column !important; gap: 6px !important; margin: 0 !important; }
.udc-field label { font-weight: 600 !important; font-size: 13.5px !important; color: var(--ink) !important; margin: 0 !important; }
.udc-input { position: relative !important; }
.udc-input .udc-icon { position: absolute !important; left: 13px !important; top: 50% !important; transform: translateY(-50%) !important; color: #94A3B8 !important; pointer-events: none !important; }
.udc-wrap .udc-field input, .udc-wrap .udc-field textarea {
	width: 100% !important; margin: 0 !important; padding: 12px 14px !important; background: #fff !important; color: var(--ink) !important;
	border: 1.5px solid var(--line) !important; border-radius: 10px !important; font: 15px/1.4 var(--font) !important; box-shadow: none !important;
	transition: border-color .15s, box-shadow .15s !important;
}
.udc-wrap .udc-input.has-icon input { padding-left: 42px !important; }
.udc-wrap .udc-field input::placeholder, .udc-wrap .udc-field textarea::placeholder { color: #A0AEC0 !important; }
.udc-wrap .udc-field input:focus, .udc-wrap .udc-field textarea:focus { outline: none !important; border-color: var(--p) !important; box-shadow: 0 0 0 4px rgba(88, 154, 209, .14) !important; }
.udc-input:focus-within .udc-icon { color: var(--p) !important; }
.udc-form-inline { display: flex !important; justify-content: space-between !important; align-items: center !important; gap: 12px !important; font-size: 14px !important; }
.udc-check { display: inline-flex !important; align-items: center !important; gap: 8px !important; cursor: pointer !important; color: var(--text) !important; }
.udc-check input { accent-color: var(--p) !important; width: 16px !important; height: 16px !important; margin: 0 !important; }
.udc-hp { position: absolute !important; left: -9999px !important; }

/* Alerts */
.udc-alert { display: flex !important; align-items: flex-start !important; gap: 10px !important; padding: 12px 16px !important; border-radius: 12px !important; margin-bottom: 18px !important; font-size: 14px !important; }
.udc-alert ul { margin: 0 !important; padding-left: 16px !important; list-style: disc !important; }
.udc-alert-error { background: #FEF2F2 !important; color: #B42318 !important; border: 1px solid #FECDCA !important; }
.udc-alert-success { background: #ECFDF3 !important; color: #027A48 !important; border: 1px solid #ABEFC6 !important; align-items: center !important; }

/* Brand */
.udc-brand { display: flex !important; align-items: center !important; gap: 10px !important; text-decoration: none !important; color: var(--ink) !important; font-weight: 700 !important; font-size: 17px !important; }
.udc-logo-full { display: block !important; max-height: 64px !important; max-width: 210px !important; width: auto !important; height: auto !important; object-fit: contain !important; }
.udc-logo {
	width: 38px !important; height: 38px !important; border-radius: 11px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important;
	background: linear-gradient(135deg, var(--p), var(--p-700)) !important; color: #fff !important; font-weight: 800 !important; font-size: 17px !important; flex-shrink: 0 !important;
}

/* --------------------------------------------------------------------------
   Auth screens (login / register)
   -------------------------------------------------------------------------- */
.udc-auth-shell { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr) !important; min-height: 640px !important; background: #fff !important; border-radius: 20px !important; overflow: hidden !important; box-shadow: var(--shadow) !important; }
body.udc-app-body .udc-auth-shell { min-height: 100vh !important; border-radius: 0 !important; box-shadow: none !important; }
.udc-auth-brand {
	position: relative !important; overflow: hidden !important; display: flex !important; flex-direction: column !important; justify-content: space-between !important; gap: 40px !important;
	padding: 44px !important; color: #fff !important;
	background: radial-gradient(circle at 85% 10%, rgba(255,255,255,.22), transparent 40%),
		radial-gradient(circle at 0% 100%, rgba(88,154,209,.55), transparent 55%),
		linear-gradient(150deg, #000000 0%, #111111 50%, var(--p-700) 100%) !important;
}
.udc-auth-brand::after { content: "" !important; position: absolute !important; width: 420px !important; height: 420px !important; right: -160px !important; bottom: -160px !important; border-radius: 50% !important; border: 60px solid rgba(255,255,255,.07) !important; }
.udc-auth-brand .udc-brand { background: #fff !important; padding: 10px 16px !important; border-radius: 14px !important; align-self: flex-start !important; box-shadow: 0 10px 30px -10px rgba(0,0,0,.25) !important; position: relative !important; z-index: 1 !important; }
.udc-auth-brand .udc-logo-full { max-height: 56px !important; }
.udc-auth-pitch { position: relative !important; z-index: 1 !important; max-width: 420px !important; }
.udc-auth-pitch h2 { color: #fff !important; font-size: 32px !important; font-weight: 800 !important; line-height: 1.2 !important; margin-bottom: 14px !important; }
.udc-auth-pitch p { color: rgba(255,255,255,.88) !important; font-size: 16px !important; margin-bottom: 26px !important; }
.udc-auth-pitch li { display: flex !important; align-items: center !important; gap: 12px !important; margin-bottom: 14px !important; font-weight: 500 !important; }
.udc-auth-pitch li .udc-icon { width: 34px !important; height: 34px !important; padding: 8px !important; border-radius: 10px !important; background: rgba(255,255,255,.18) !important; }
.udc-auth-copy { color: rgba(255,255,255,.7) !important; font-size: 13px !important; position: relative !important; z-index: 1 !important; }
.udc-auth-panel { display: flex !important; align-items: center !important; justify-content: center !important; padding: 44px 28px !important; }
.udc-auth-box { width: 100% !important; max-width: 440px !important; }
.udc-auth-box h1 { font-size: 28px !important; font-weight: 800 !important; margin-bottom: 6px !important; }
.udc-auth-sub { color: var(--muted) !important; margin-bottom: 26px !important; }
.udc-auth-foot { margin-top: 22px !important; text-align: center !important; color: var(--muted) !important; font-size: 14px !important; }
.udc-auth-foot a { font-weight: 600 !important; }

/* --------------------------------------------------------------------------
   App shell (sidebar + main)
   -------------------------------------------------------------------------- */
.udc-app { display: grid !important; grid-template-columns: 268px minmax(0, 1fr) !important; min-height: 720px !important; background: var(--bg) !important; border-radius: 20px !important; overflow: hidden !important; box-shadow: var(--shadow) !important; position: relative !important; }
body.udc-app-body .udc-app { min-height: 100vh !important; border-radius: 0 !important; box-shadow: none !important; }

.udc-side { background: #fff !important; border-right: 1px solid var(--line) !important; padding: 26px 18px !important; display: flex !important; flex-direction: column !important; gap: 6px !important; position: sticky !important; top: 0 !important; height: 100% !important; max-height: 100vh !important; overflow-y: auto !important; z-index: 30 !important; }
.udc-side > .udc-brand { padding: 0 8px 22px !important; margin-bottom: 8px !important; border-bottom: 1px solid var(--line) !important; }
.udc-nav-label { font-size: 11.5px !important; font-weight: 700 !important; letter-spacing: .08em !important; text-transform: uppercase !important; color: #94A3B8 !important; padding: 10px 12px 6px !important; }
.udc-nav { display: flex !important; flex-direction: column !important; gap: 4px !important; }
.udc-nav a, .udc-logout {
	position: relative !important; display: flex !important; align-items: center !important; gap: 12px !important; padding: 11px 14px !important; border-radius: 11px !important;
	color: var(--text) !important; font-weight: 500 !important; text-decoration: none !important; transition: background .15s, color .15s !important;
}
.udc-nav a .udc-icon, .udc-logout .udc-icon { color: #94A3B8 !important; transition: color .15s !important; }
.udc-nav a:hover, .udc-logout:hover { background: var(--bg) !important; color: var(--ink) !important; }
.udc-nav a.is-active { background: var(--p-50) !important; color: var(--p-700) !important; font-weight: 600 !important; }
.udc-nav a.is-active .udc-icon { color: var(--p) !important; }
.udc-nav a.is-active::before { content: "" !important; position: absolute !important; left: -18px !important; top: 8px !important; bottom: 8px !important; width: 4px !important; border-radius: 0 4px 4px 0 !important; background: var(--p) !important; }
.udc-pill { margin-left: auto !important; font-style: normal !important; background: var(--p) !important; color: #fff !important; font-size: 11.5px !important; font-weight: 700 !important; min-width: 22px !important; height: 22px !important; padding: 0 7px !important; border-radius: 999px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; }
.udc-side-foot { margin-top: auto !important; padding-top: 18px !important; display: flex !important; flex-direction: column !important; gap: 10px !important; }
.udc-help-card { position: relative !important; overflow: hidden !important; padding: 18px !important; border-radius: 14px !important; color: #fff !important; background: linear-gradient(145deg, var(--p), var(--p-700)) !important; }
.udc-help-card::after { content: "" !important; position: absolute !important; width: 120px !important; height: 120px !important; right: -40px !important; top: -40px !important; border-radius: 50% !important; background: rgba(255,255,255,.12) !important; }
.udc-help-icon { display: inline-flex !important; width: 36px !important; height: 36px !important; border-radius: 10px !important; align-items: center !important; justify-content: center !important; background: rgba(255,255,255,.2) !important; margin-bottom: 10px !important; }
.udc-help-card strong { display: block !important; color: #fff !important; font-size: 15px !important; }
.udc-help-card p { color: rgba(255,255,255,.85) !important; font-size: 13px !important; margin: 4px 0 12px !important; }
.udc-help-card a { display: inline-block !important; background: #fff !important; color: var(--p-700) !important; font-size: 13px !important; font-weight: 600 !important; padding: 7px 12px !important; border-radius: 8px !important; position: relative !important; z-index: 1 !important; }
.udc-logout:hover { background: #FEF2F2 !important; color: #B42318 !important; }
.udc-logout:hover .udc-icon { color: #B42318 !important; }
.udc-scrim { display: none !important; }

.udc-main-area { min-width: 0 !important; display: flex !important; flex-direction: column !important; }
.udc-topbar { display: flex !important; align-items: center !important; gap: 14px !important; padding: 18px 32px !important; background: rgba(255,255,255,.85) !important; backdrop-filter: blur(8px) !important; border-bottom: 1px solid var(--line) !important; position: sticky !important; top: 0 !important; z-index: 20 !important; }
.udc-topbar-title { flex: 1 !important; min-width: 0 !important; }
.udc-topbar-title h1 { font-size: 21px !important; font-weight: 750 !important; font-weight: 700 !important; }
.udc-topbar-title p { color: var(--muted) !important; font-size: 13px !important; margin-top: 2px !important; }
.udc-menu-btn { display: none !important; width: 42px !important; height: 42px !important; border-radius: 11px !important; border: 1px solid var(--line) !important; background: #fff !important; color: var(--ink) !important; cursor: pointer !important; align-items: center !important; justify-content: center !important; padding: 0 !important; }
.udc-top-bell { position: relative !important; width: 42px !important; height: 42px !important; border-radius: 11px !important; border: 1px solid var(--line) !important; background: #fff !important; color: var(--text) !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; }
.udc-top-bell:hover { border-color: var(--p-100) !important; color: var(--p) !important; }
.udc-top-bell i { position: absolute !important; top: 9px !important; right: 10px !important; width: 9px !important; height: 9px !important; border-radius: 50% !important; background: #F04438 !important; border: 2px solid #fff !important; }
.udc-top-user { display: flex !important; align-items: center !important; gap: 10px !important; padding: 4px 12px 4px 4px !important; border-radius: 999px !important; border: 1px solid var(--line) !important; background: #fff !important; text-decoration: none !important; }
.udc-top-user img { width: 36px !important; height: 36px !important; border-radius: 50% !important; display: block !important; }
.udc-top-user span { display: flex !important; flex-direction: column !important; line-height: 1.2 !important; }
.udc-top-user strong { color: var(--ink) !important; font-size: 14px !important; }
.udc-top-user small { color: var(--muted) !important; font-size: 12px !important; }
.udc-content { padding: 28px 32px 40px !important; display: flex !important; flex-direction: column !important; gap: 24px !important; }
.udc-content > .udc-alert { margin-bottom: 0 !important; }

/* Cards */
.udc-card { background: var(--card) !important; border: 1px solid var(--line) !important; border-radius: var(--radius) !important; padding: 24px !important; box-shadow: var(--shadow-sm) !important; }
.udc-card h3 { font-size: 17px !important; font-weight: 700 !important; }
.udc-card-head { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-bottom: 18px !important; }
.udc-card-head a { display: inline-flex !important; align-items: center !important; gap: 4px !important; font-size: 13.5px !important; font-weight: 600 !important; }

/* Hero */
.udc-hero {
	position: relative !important; overflow: hidden !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 24px !important;
	padding: 32px 36px !important; border-radius: 20px !important; color: #fff !important;
	background: radial-gradient(circle at 90% 0%, rgba(255,255,255,.25), transparent 35%), linear-gradient(120deg, #000000 0%, #1a1a1a 45%, var(--p) 100%) !important;
	box-shadow: 0 20px 40px -20px rgba(88, 154, 209, .7) !important;
}
.udc-hero::before { content: "" !important; position: absolute !important; width: 260px !important; height: 260px !important; left: 45% !important; bottom: -170px !important; border-radius: 50% !important; background: rgba(255,255,255,.08) !important; }
.udc-hero > div:first-child { position: relative !important; z-index: 1 !important; max-width: 560px !important; }
.udc-hero h2 { color: #fff !important; font-size: 26px !important; font-weight: 800 !important; margin-bottom: 8px !important; }
.udc-hero p { color: rgba(255,255,255,.9) !important; font-size: 15.5px !important; }
.udc-hero-actions { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; margin-top: 20px !important; }
.udc-hero-art { position: relative !important; z-index: 1 !important; width: 150px !important; height: 150px !important; border-radius: 36px !important; display: flex !important; align-items: center !important; justify-content: center !important; background: rgba(255,255,255,.15) !important; border: 1px solid rgba(255,255,255,.25) !important; transform: rotate(-6deg) !important; flex-shrink: 0 !important; }
.udc-hero-art .udc-icon { color: #fff !important; opacity: .95 !important; }

/* Stats */
.udc-stats { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 18px !important; }
.udc-stat { display: flex !important; align-items: center !important; gap: 16px !important; padding: 20px !important; background: #fff !important; border: 1px solid var(--line) !important; border-radius: var(--radius) !important; box-shadow: var(--shadow-sm) !important; transition: transform .15s, box-shadow .15s !important; }
.udc-stat:hover { transform: translateY(-2px) !important; box-shadow: var(--shadow) !important; }
.udc-stat-icon { width: 50px !important; height: 50px !important; border-radius: 14px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.udc-stat small { display: block !important; color: var(--muted) !important; font-size: 13px !important; font-weight: 500 !important; }
.udc-stat strong { display: block !important; color: var(--ink) !important; font-size: 26px !important; font-weight: 800 !important; line-height: 1.15 !important; margin-top: 2px !important; }
.udc-tone-blue .udc-stat-icon { background: var(--p-50) !important; color: var(--p) !important; }
.udc-tone-green .udc-stat-icon { background: #E7F8F0 !important; color: #12B76A !important; }
.udc-tone-amber .udc-stat-icon { background: #FEF4E6 !important; color: #F79009 !important; }
.udc-tone-violet .udc-stat-icon { background: #F1EEFE !important; color: #7A5AF8 !important; }

.udc-cols { display: grid !important; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) !important; gap: 24px !important; }

/* Activity */
.udc-activity li { display: flex !important; align-items: flex-start !important; gap: 14px !important; padding: 14px 0 !important; border-bottom: 1px solid var(--line) !important; }
.udc-activity li:first-child { padding-top: 0 !important; }
.udc-activity li:last-child { border-bottom: 0 !important; padding-bottom: 0 !important; }
.udc-activity li > div { flex: 1 !important; min-width: 0 !important; }
.udc-activity strong { color: var(--ink) !important; font-size: 14px !important; }
.udc-activity p { color: var(--muted) !important; font-size: 14px !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.udc-activity time { color: #94A3B8 !important; font-size: 12.5px !important; white-space: nowrap !important; }
.udc-activity-dot { width: 36px !important; height: 36px !important; border-radius: 50% !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; background: var(--bg) !important; color: var(--muted) !important; flex-shrink: 0 !important; }
.udc-activity-dot.is-admin { background: var(--p-50) !important; color: var(--p) !important; }

/* Details */
.udc-details li { display: flex !important; align-items: center !important; gap: 14px !important; padding: 10px 0 !important; }
.udc-details li > span { width: 38px !important; height: 38px !important; border-radius: 11px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; background: var(--bg) !important; color: var(--p) !important; flex-shrink: 0 !important; }
.udc-details li > div { min-width: 0 !important; color: var(--ink) !important; font-weight: 500 !important; word-break: break-word !important; }
.udc-details small { display: block !important; color: var(--muted) !important; font-size: 12.5px !important; font-weight: 500 !important; }

/* Progress */
.udc-progress-wrap { margin-top: 18px !important; padding-top: 18px !important; border-top: 1px solid var(--line) !important; }
.udc-progress-label { display: flex !important; justify-content: space-between !important; font-size: 13.5px !important; margin-bottom: 8px !important; }
.udc-progress-label strong { color: var(--p-700) !important; }
.udc-progress { height: 8px !important; border-radius: 99px !important; background: var(--p-50) !important; overflow: hidden !important; }
.udc-progress i { display: block !important; height: 100% !important; border-radius: 99px !important; background: linear-gradient(90deg, #8DBDE6, var(--p)) !important; }
.udc-progress-wrap .udc-muted { margin-top: 10px !important; font-size: 13px !important; }

/* Empty states */
.udc-empty-mini { text-align: center !important; padding: 26px 10px !important; }
.udc-empty-mini p { color: var(--muted) !important; margin: 12px auto 18px !important; max-width: 280px !important; }
.udc-empty-icon { width: 60px !important; height: 60px !important; border-radius: 18px !important; background: var(--p-50) !important; color: var(--p) !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; }

/* Profile */
.udc-profile { display: grid !important; grid-template-columns: 320px minmax(0, 1fr) !important; gap: 24px !important; align-items: start !important; }
.udc-profile-card { padding: 0 24px 24px !important; text-align: center !important; overflow: hidden !important; }
.udc-profile-cover { height: 96px !important; margin: 0 -24px !important; background: radial-gradient(circle at 80% 0%, rgba(255,255,255,.35), transparent 40%), linear-gradient(120deg, var(--p), var(--p-700)) !important; }
.udc-profile-avatar { margin-top: -48px !important; }
.udc-profile-avatar img { width: 96px !important; height: 96px !important; border-radius: 50% !important; border: 4px solid #fff !important; box-shadow: var(--shadow-sm) !important; display: inline-block !important; }
.udc-profile-card h3 { margin-top: 10px !important; font-size: 19px !important; }
.udc-tag { display: inline-flex !important; align-items: center !important; gap: 5px !important; margin-top: 10px !important; padding: 5px 11px !important; border-radius: 99px !important; background: #ECFDF3 !important; color: #027A48 !important; font-size: 12.5px !important; font-weight: 600 !important; }
.udc-profile-bio { margin-top: 14px !important; font-size: 14px !important; color: var(--text) !important; }
.udc-profile-card .udc-progress-wrap { text-align: left !important; }
.udc-profile-card .udc-small { margin-top: 14px !important; }
.udc-form-section { display: flex !important; flex-direction: column !important; gap: 16px !important; padding-bottom: 24px !important; border-bottom: 1px solid var(--line) !important; }
.udc-form-section + .udc-form-section { padding-top: 8px !important; }
.udc-form-section > .udc-muted { margin-top: -10px !important; }
.udc-form-actions { display: flex !important; justify-content: flex-end !important; flex-wrap: wrap !important; gap: 10px !important; }
.udc-wrap .udc-field textarea { resize: vertical !important; min-height: 90px !important; }

/* --------------------------------------------------------------------------
   Chat (front-end + admin)
   -------------------------------------------------------------------------- */
.udc-chat { --p: #589AD1; --p-50: #EEF5FB; --line: #E6ECF2; display: flex !important; flex-direction: column !important; background: #fff !important; border: 1px solid var(--line) !important; border-radius: 16px !important; overflow: hidden !important; height: 600px !important; box-shadow: 0 1px 3px rgba(15,23,42,.06) !important; }
.udc-chat-page .udc-chat { height: calc(100vh - 190px) !important; min-height: 480px !important; }
.udc-chat-header { display: flex !important; align-items: center !important; gap: 12px !important; padding: 16px 20px !important; border-bottom: 1px solid var(--line) !important; background: #fff !important; }
.udc-chat-avatar { position: relative !important; display: inline-flex !important; }
.udc-chat-avatar .udc-logo { width: 44px !important; height: 44px !important; border-radius: 50% !important; }
.udc-online { position: absolute !important; right: 0 !important; bottom: 0 !important; width: 12px !important; height: 12px !important; border-radius: 50% !important; background: #12B76A !important; border: 2px solid #fff !important; }
.udc-chat-title { display: flex !important; flex-direction: column !important; line-height: 1.3 !important; }
.udc-chat-title strong { color: #000000 !important; font-size: 15.5px !important; }
.udc-chat-title span { color: #64748B !important; font-size: 13px !important; }
.udc-messages {
	flex: 1 !important; overflow-y: auto !important; padding: 22px !important; display: flex !important; flex-direction: column !important; gap: 12px !important;
	background: #F7FAFC radial-gradient(rgba(88, 154, 209,.07) 1px, transparent 1px) 0 0 / 18px 18px !important;
}
.udc-empty { margin: auto !important; text-align: center !important; max-width: 340px !important; color: #64748B !important; }
.udc-empty p { margin-top: 14px !important; }
.udc-msg { max-width: min(75%, 560px) !important; display: flex !important; flex-direction: column !important; animation: udc-pop .18s ease-out !important; }
@keyframes udc-pop { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.udc-msg-mine { align-self: flex-end !important; align-items: flex-end !important; }
.udc-msg-theirs { align-self: flex-start !important; }
.udc-msg-meta { font-size: 11.5px !important; color: #94A3B8 !important; margin: 0 6px 4px !important; }
.udc-msg-body { padding: 11px 15px !important; border-radius: 18px !important; white-space: pre-wrap !important; word-wrap: break-word !important; font-size: 14.5px !important; line-height: 1.5 !important; }
.udc-msg-mine .udc-msg-body { background: linear-gradient(135deg, #6AA6DA, #3F82BC) !important; color: #fff !important; border-bottom-right-radius: 6px !important; box-shadow: 0 6px 14px -8px rgba(88, 154, 209,.8) !important; }
.udc-msg-theirs .udc-msg-body { background: #fff !important; color: #0F172A !important; border: 1px solid var(--line) !important; border-bottom-left-radius: 6px !important; box-shadow: 0 1px 2px rgba(15,23,42,.04) !important; }
.udc-chat-error { margin: 0 !important; padding: 8px 20px !important; background: #FEF2F2 !important; color: #B42318 !important; font-size: 13px !important; }
.udc-chat-form { display: flex !important; align-items: flex-end !important; gap: 10px !important; padding: 14px 16px 6px !important; background: #fff !important; border-top: 1px solid var(--line) !important; margin: 0 !important; }
.udc-chat-form textarea {
	flex: 1 !important; resize: none !important; margin: 0 !important; padding: 12px 16px !important; min-height: 48px !important; max-height: 160px !important;
	border: 1.5px solid var(--line) !important; border-radius: 14px !important; background: #F7FAFC !important; font: 14.5px/1.45 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important; color: #0F172A !important; box-shadow: none !important;
}
.udc-chat-form textarea:focus { outline: none !important; background: #fff !important; border-color: var(--p) !important; box-shadow: 0 0 0 4px rgba(88, 154, 209,.14) !important; }
.udc-send {
	display: inline-flex !important; align-items: center !important; gap: 8px !important; height: 48px !important; padding: 0 20px !important; border: 0 !important; border-radius: 14px !important; cursor: pointer !important;
	background: var(--p) !important; color: #fff !important; font: 600 14.5px system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important; transition: background .15s, transform .15s !important;
}
.udc-send:hover, .udc-send:focus-visible { background: #3F82BC !important; color: #fff !important; }
.udc-send:hover span, .udc-send:hover .udc-icon { color: #fff !important; }
.udc-send:disabled { opacity: .6 !important; cursor: default !important; }
.is-sending .udc-send .udc-icon { animation: udc-fly .6s ease-in-out infinite alternate !important; }
@keyframes udc-fly { to { transform: translate(3px, -3px); } }
.udc-chat-hint { margin: 0 !important; padding: 0 18px 10px !important; background: #fff !important; font-size: 11.5px !important; color: #94A3B8 !important; }

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 1200px) {
	.udc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.udc-cols, .udc-profile { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (max-width: 900px) {
	.udc-app { grid-template-columns: minmax(0, 1fr) !important; }
	.udc-side { position: fixed !important; left: 0 !important; top: 0 !important; bottom: 0 !important; width: 280px !important; height: 100vh !important; transform: translateX(-100%) !important; transition: transform .25s ease !important; box-shadow: var(--shadow) !important; }
	.udc-app.is-open .udc-side { transform: none !important; }
	.udc-app.is-open .udc-scrim { display: block !important; position: fixed !important; inset: 0 !important; background: rgba(15,23,42,.45) !important; z-index: 25 !important; }
	.udc-menu-btn { display: inline-flex !important; }
	.udc-topbar { padding: 14px 18px !important; }
	.udc-top-user span { display: none !important; }
	.udc-top-user { padding: 3px !important; }
	.udc-content { padding: 20px 18px 32px !important; }
	.udc-auth-shell { grid-template-columns: minmax(0, 1fr) !important; }
	.udc-auth-brand { padding: 28px !important; gap: 24px !important; }
	.udc-auth-pitch h2 { font-size: 24px !important; }
	.udc-auth-pitch ul, .udc-auth-copy { display: none !important; }
	.udc-hero { padding: 26px !important; }
	.udc-hero-art { display: none !important; }
}
@media (max-width: 560px) {
	.udc-row { grid-template-columns: 1fr !important; }
	.udc-stats { grid-template-columns: 1fr 1fr !important; gap: 12px !important; }
	.udc-stat { flex-direction: column !important; align-items: flex-start !important; gap: 10px !important; padding: 16px !important; }
	.udc-topbar-title p { display: none !important; }
	.udc-topbar-title h1 { font-size: 18px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
	.udc-hero h2 { font-size: 22px !important; }
	.udc-activity time { display: none !important; }
	.udc-send span { display: none !important; }
	.udc-send { padding: 0 15px !important; }
	.udc-msg { max-width: 88% !important; }
	.udc-chat-page .udc-chat { height: calc(100vh - 150px) !important; }
}

/* --------------------------------------------------------------------------
   WP-admin pages
   -------------------------------------------------------------------------- */
.udc-admin .udc-card { max-width: 900px !important; margin-top: 16px !important; background: #fff !important; border: 1px solid var(--line) !important; border-radius: 12px !important; padding: 20px 24px !important; }
.udc-admin-chat { display: grid !important; grid-template-columns: 320px 1fr !important; gap: 20px !important; margin-top: 16px !important; }
@media (max-width: 960px) { .udc-admin-chat { grid-template-columns: 1fr !important; } }
.udc-sidebar { background: #fff !important; border: 1px solid var(--line) !important; border-radius: 14px !important; overflow: hidden !important; display: flex !important; flex-direction: column !important; max-height: 680px !important; }
.udc-start-conv { margin: 12px !important; max-width: none !important; }
.udc-conv-list { overflow-y: auto !important; border-top: 1px solid var(--line) !important; }
.udc-pad { padding: 16px !important; }
.udc-conv { display: flex !important; gap: 10px !important; align-items: center !important; padding: 12px !important; text-decoration: none !important; color: #1f2937 !important; border-bottom: 1px solid var(--line) !important; border-left: 3px solid transparent !important; }
.udc-conv:hover { background: #F7FAFC !important; color: #1f2937 !important; }
.udc-conv.is-active { background: var(--p-50) !important; border-left-color: var(--p) !important; }
.udc-conv img { border-radius: 50% !important; flex-shrink: 0 !important; }
.udc-conv-body { flex: 1 !important; min-width: 0 !important; display: flex !important; flex-direction: column !important; }
.udc-conv-snippet { color: var(--muted) !important; font-size: 12px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.udc-conv.is-unread .udc-conv-snippet { color: #1f2937 !important; font-weight: 600 !important; }
.udc-conv-meta { display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 4px !important; }
.udc-conv-time { font-size: 11px !important; color: var(--muted) !important; white-space: nowrap !important; }
.udc-badge { display: inline-block !important; min-width: 20px !important; padding: 1px 6px !important; border-radius: 999px !important; background: var(--p) !important; color: #fff !important; font-size: 11px !important; text-align: center !important; font-weight: 700 !important; }
.udc-main { min-width: 0 !important; }
.udc-user-head { display: flex !important; align-items: center !important; gap: 12px !important; margin-bottom: 12px !important; }
.udc-user-head img { border-radius: 50% !important; }
.udc-user-head div { flex: 1 !important; display: flex !important; flex-direction: column !important; }
.udc-placeholder { background: #fff !important; border: 1px dashed #CBD5E1 !important; border-radius: 14px !important; padding: 80px 20px !important; text-align: center !important; color: var(--muted) !important; }
.udc-placeholder .dashicons { font-size: 48px !important; width: 48px !important; height: 48px !important; color: var(--p) !important; opacity: .5 !important; }
.udc-admin .udc-chat-hint { display: none !important; }
.udc-role-tag { display: inline-block !important; margin-left: 4px !important; padding: 0 6px !important; border-radius: 6px !important; background: var(--p-50) !important; color: var(--p-700) !important; font-size: 10.5px !important; font-weight: 700 !important; vertical-align: middle !important; }

/* --------------------------------------------------------------------------
   Theme protection: stop theme styles from changing the dashboard layout
   -------------------------------------------------------------------------- */
body.udc-app-body { overflow-x: hidden !important; padding: 0 !important; margin: 0 !important; }
.udc-wrap .udc-app, .udc-wrap .udc-auth-shell { width: 100% !important; max-width: 100% !important; margin: 0 !important; float: none !important; }
.udc-wrap .udc-main-area { width: auto !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.udc-wrap .udc-topbar { width: auto !important; max-width: none !important; margin: 0 !important; left: auto !important; right: auto !important; }
.udc-wrap .udc-content { width: auto !important; max-width: none !important; margin: 0 !important; }
.udc-wrap .udc-content section, .udc-wrap .udc-content > div { width: auto !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; float: none !important; }
.udc-wrap .udc-side { float: none !important; margin: 0 !important; width: auto !important; max-width: none !important; }
.udc-wrap .udc-nav a, .udc-wrap .udc-logout { margin: 0 !important; border: 0 !important; box-shadow: none !important; }
.udc-wrap, .udc-wrap h1, .udc-wrap h2, .udc-wrap h3, .udc-wrap p, .udc-wrap a, .udc-wrap span, .udc-wrap li, .udc-wrap label,
.udc-wrap small, .udc-wrap strong, .udc-wrap button, .udc-wrap input, .udc-wrap textarea, .udc-wrap time { font-family: var(--font) !important; }
.udc-wrap h1, .udc-wrap h2, .udc-wrap h3 { text-transform: none !important; }
.udc-wrap button, .udc-wrap .udc-btn { text-transform: none !important; letter-spacing: normal !important; min-height: 0 !important; text-shadow: none !important; }
.udc-wrap .udc-topbar .udc-menu-btn { display: none !important; border: 1px solid var(--line) !important; background: #fff !important; color: var(--ink) !important; box-shadow: none !important; margin: 0 !important; outline: none !important; }
.udc-wrap .udc-topbar .udc-menu-btn:hover, .udc-wrap .udc-topbar .udc-menu-btn:focus { border-color: var(--p) !important; color: var(--p) !important; background: #fff !important; }
.udc-chat-error[hidden] { display: none !important; }
@media (max-width: 900px) {
	.udc-wrap .udc-topbar .udc-menu-btn { display: inline-flex !important; }
	.udc-wrap .udc-side { width: 280px !important; }
}

/* ==========================================================================
   Front-end admin dashboard (1.3.0)
   ========================================================================== */
.udc-pill[hidden], .udc-top-bell i[hidden] { display: none !important; }
.udc-sr { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
a.udc-stat { text-decoration: none !important; color: inherit !important; }
body.admin-bar.udc-app-body .udc-app-admin .udc-side { top: 32px !important; max-height: calc(100vh - 32px) !important; }
body.admin-bar.udc-app-body .udc-app-admin .udc-topbar { top: 32px !important; }
body.admin-bar.udc-app-body .udc-app-admin { min-height: calc(100vh - 32px) !important; }

.udc-wrap .udc-select {
	width: 100% !important; margin: 0 !important; padding: 11px 38px 11px 14px !important; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center !important;
	-webkit-appearance: none !important; appearance: none !important; border: 1.5px solid var(--line) !important; border-radius: 10px !important; font: 14.5px/1.4 var(--font) !important; color: var(--ink) !important; box-shadow: none !important; height: auto !important; max-width: none !important;
}
.udc-wrap .udc-select:focus { outline: none !important; border-color: var(--p) !important; box-shadow: 0 0 0 4px rgba(88, 154, 209, .14) !important; }
.udc-btn-sm { padding: 7px 12px !important; font-size: 13px !important; border-radius: 9px !important; box-shadow: none !important; }
.udc-icon-btn { width: 34px !important; height: 34px !important; border-radius: 9px !important; border: 1px solid var(--line) !important; background: #fff !important; color: var(--muted) !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; transition: color .15s, border-color .15s !important; }
.udc-icon-btn:hover { color: var(--p) !important; border-color: var(--p-100) !important; }
.udc-narrow { max-width: 760px !important; }
.udc-nowrap { white-space: nowrap !important; }

/* Overview lists */
.udc-activity .udc-activity-link { display: flex !important; align-items: flex-start !important; gap: 14px !important; width: 100% !important; color: inherit !important; text-decoration: none !important; border-radius: 10px !important; }
.udc-activity .udc-activity-link > div { flex: 1 !important; min-width: 0 !important; }
.udc-activity .udc-activity-link:hover strong { color: var(--p-700) !important; }
.udc-activity .udc-badge { margin-left: 6px !important; vertical-align: 1px !important; }
.udc-activity-avatar img, .udc-people-avatar img { width: 36px !important; height: 36px !important; border-radius: 50% !important; display: block !important; }
.udc-details.udc-people li > span.udc-people-avatar { background: none !important; width: 38px !important; height: 38px !important; }
.udc-details.udc-people li > div { flex: 1 !important; }

/* Inbox */
.udc-inbox { display: grid !important; grid-template-columns: 340px minmax(0, 1fr) !important; gap: 20px !important; align-items: start !important; }
.udc-wrap .udc-inbox-list { padding: 0 !important; overflow: hidden !important; display: flex !important; flex-direction: column !important; height: calc(100vh - 190px) !important; min-height: 480px !important; }
.udc-inbox-list .udc-select { margin: 14px !important; width: auto !important; }
.udc-fconv-list { flex: 1 !important; overflow-y: auto !important; border-top: 1px solid var(--line) !important; }
.udc-fconv-list .udc-conv { padding: 14px 16px !important; }
.udc-fconv-list .udc-conv strong { color: var(--ink) !important; font-size: 14px !important; }
.udc-fconv-list .udc-conv-snippet { font-size: 13px !important; }
.udc-inbox-main .udc-chat { height: calc(100vh - 190px) !important; min-height: 480px !important; }
.udc-inbox-main .udc-chat-avatar { flex-shrink: 0 !important; }
.udc-inbox-main .udc-chat-avatar img { min-width: 44px !important; object-fit: cover !important; width: 44px !important; height: 44px !important; border-radius: 50% !important; display: block !important; }
.udc-wrap .udc-placeholder { height: calc(100vh - 190px) !important; min-height: 480px !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 14px !important; border-style: dashed !important; padding: 20px !important; }
.udc-inbox-back { display: none !important; font-weight: 600 !important; font-size: 14px !important; margin-bottom: 12px !important; }

/* Members table */
.udc-filter { display: flex !important; gap: 10px !important; flex-wrap: wrap !important; margin: 0 0 6px !important; }
.udc-filter-search { flex: 1 1 260px !important; }
.udc-filter .udc-select { width: auto !important; flex: 0 0 170px !important; }
.udc-wrap .udc-filter input[type="search"] { width: 100% !important; margin: 0 !important; padding: 11px 14px 11px 42px !important; border: 1.5px solid var(--line) !important; border-radius: 10px !important; font: 14.5px/1.4 var(--font) !important; color: var(--ink) !important; background: #fff !important; box-shadow: none !important; }
.udc-wrap .udc-filter input[type="search"]:focus { outline: none !important; border-color: var(--p) !important; box-shadow: 0 0 0 4px rgba(88, 154, 209, .14) !important; }
.udc-wrap .udc-members-count { margin: 14px 0 12px !important; }
.udc-table-wrap { overflow-x: auto !important; margin: 0 -24px !important; }
.udc-wrap .udc-table { width: 100% !important; border-collapse: collapse !important; font-size: 14px !important; margin: 0 !important; border: 0 !important; }
.udc-wrap .udc-table th { text-align: left !important; font-size: 12px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: .06em !important; color: #94A3B8 !important; padding: 10px 24px !important; background: var(--bg) !important; border: 0 !important; border-top: 1px solid var(--line) !important; border-bottom: 1px solid var(--line) !important; }
.udc-wrap .udc-table td { padding: 12px 24px !important; border: 0 !important; border-bottom: 1px solid var(--line) !important; vertical-align: middle !important; color: var(--text) !important; background: #fff !important; }
.udc-wrap .udc-table tr:hover td { background: #FAFCFE !important; }
.udc-table-user { display: flex !important; align-items: center !important; gap: 12px !important; }
.udc-table-user img { width: 36px !important; height: 36px !important; border-radius: 50% !important; display: block !important; }
.udc-table-user span { display: flex !important; flex-direction: column !important; line-height: 1.3 !important; min-width: 0 !important; }
.udc-table-user strong { color: var(--ink) !important; }
.udc-table-user small { color: var(--muted) !important; font-size: 12.5px !important; }
.udc-table-actions { text-align: right !important; white-space: nowrap !important; }
.udc-table-actions > * + * { margin-left: 6px !important; }
.udc-wrap .udc-role-tag { padding: 3px 9px !important; font-size: 12px !important; margin: 0 !important; }
.udc-wrap .udc-role-tag.is-member { background: #F1F5F9 !important; color: var(--muted) !important; }
.udc-pager { display: flex !important; gap: 6px !important; flex-wrap: wrap !important; margin-top: 18px !important; }
.udc-pager a { min-width: 36px !important; height: 36px !important; padding: 0 10px !important; border-radius: 9px !important; border: 1px solid var(--line) !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; font-weight: 600 !important; font-size: 14px !important; }
.udc-pager a.is-active { background: var(--p) !important; border-color: var(--p) !important; color: #fff !important; }

@media (max-width: 1100px) {
	.udc-inbox { grid-template-columns: 280px minmax(0, 1fr) !important; }
}
@media (max-width: 900px) {
	.udc-inbox { grid-template-columns: minmax(0, 1fr) !important; }
	.udc-inbox.has-open .udc-inbox-list { display: none !important; }
	.udc-inbox:not(.has-open) .udc-inbox-main { display: none !important; }
	.udc-inbox.has-open .udc-inbox-back { display: inline-block !important; }
	.udc-wrap .udc-inbox-list { height: auto !important; min-height: 0 !important; max-height: none !important; }
	.udc-inbox-main .udc-chat { height: calc(100vh - 170px) !important; }
	.udc-table-actions .udc-btn-sm span { display: none !important; }
}
@media (max-width: 782px) {
	body.admin-bar.udc-app-body .udc-app-admin .udc-topbar { top: 46px !important; }
}

/* ==========================================================================
   Floating call button
   ========================================================================== */
.udc-call-fab {
	position: fixed !important; right: 24px !important; bottom: 24px !important; z-index: 99990 !important;
	display: inline-flex !important; align-items: center !important; gap: 0 !important; height: 60px !important; padding: 0 !important; border-radius: 999px !important;
	background: linear-gradient(135deg, #1a1a1a, #000000) !important; color: #fff !important; text-decoration: none !important;
	box-shadow: 0 14px 30px -10px rgba(0, 0, 0, .55), 0 4px 10px rgba(15, 23, 42, .12) !important;
	font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important; transition: transform .2s, box-shadow .2s !important;
}
.udc-call-fab:hover, .udc-call-fab:focus-visible { color: #fff !important; transform: translateY(-2px) !important; box-shadow: 0 18px 34px -10px rgba(0, 0, 0, .65), 0 4px 10px rgba(15, 23, 42, .14) !important; outline: none !important; }
.udc-call-fab-icon { position: relative !important; z-index: 1 !important; width: 60px !important; height: 60px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.udc-call-fab-icon .udc-icon { animation: udc-ring 2.4s ease-in-out infinite !important; }
.udc-call-fab-ring { position: absolute !important; left: 0 !important; top: 0 !important; width: 60px !important; height: 60px !important; border-radius: 50% !important; background: rgba(88, 154, 209, .55) !important; animation: udc-pulse 2.4s ease-out infinite !important; pointer-events: none !important; }
.udc-call-fab-text { display: flex !important; flex-direction: column !important; line-height: 1.15 !important; max-width: 0 !important; overflow: hidden !important; white-space: nowrap !important; opacity: 0 !important; transition: max-width .3s ease, opacity .2s ease, padding .3s ease !important; }
.udc-call-fab-text strong { color: #fff !important; font-size: 14.5px !important; font-weight: 700 !important; }
.udc-call-fab-text small { color: rgba(255, 255, 255, .85) !important; font-size: 12px !important; }
.udc-call-fab:hover .udc-call-fab-text, .udc-call-fab:focus-visible .udc-call-fab-text { max-width: 220px !important; opacity: 1 !important; padding-right: 22px !important; }
@keyframes udc-pulse { 0% { transform: scale(1); opacity: .7; } 70% { transform: scale(1.6); opacity: 0; } 100% { transform: scale(1.6); opacity: 0; } }
@keyframes udc-ring { 0%, 60%, 100% { transform: rotate(0); } 64% { transform: rotate(-14deg); } 68% { transform: rotate(12deg); } 72% { transform: rotate(-10deg); } 76% { transform: rotate(8deg); } 80% { transform: rotate(0); } }
/* Keep clear of the chat "Send" button. */
body:has(.udc-chat) .udc-call-fab { bottom: 150px !important; }
/* Hide while the mobile menu is open. */
body:has(.udc-app.is-open) .udc-call-fab { opacity: 0 !important; pointer-events: none !important; }
@media (max-width: 560px) {
	.udc-call-fab { right: 16px !important; bottom: 16px !important; height: 56px !important; }
	.udc-call-fab-icon, .udc-call-fab-ring { width: 56px !important; height: 56px !important; }
	body:has(.udc-chat) .udc-call-fab { bottom: 104px !important; }
}
@media (prefers-reduced-motion: reduce) {
	.udc-call-fab-ring, .udc-call-fab-icon .udc-icon { animation: none !important; }
}
