:root{--bg:#f4f7fb;--panel:#fff;--ink:#0f172a;--muted:#667085;--line:#e5e7eb;--primary:#1d4ed8;--primary-dark:#1e3a8a;--danger:#dc2626;--ok:#16a34a;--radius:18px;--shadow:0 18px 55px rgba(15,23,42,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{color:inherit;text-decoration:none}input,select,textarea,button{font:inherit}label{display:grid;gap:7px;font-weight:650;color:#334155}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px 12px;color:var(--ink);outline:0}textarea{resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 14px;font-weight:750;color:#1f2937;cursor:pointer;white-space:nowrap}.btn.primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;border-color:transparent}.btn.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}.btn.ghost{background:transparent}.btn.small{padding:7px 10px;border-radius:10px;font-size:12px}.muted,.hint{color:var(--muted);font-size:14px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#2563eb;font-size:12px;font-weight:850;margin:0 0 6px}.flash{border-radius:14px;padding:12px 14px;margin:0 0 16px;background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.flash.error{background:#fee2e2;color:#991b1b;border-color:#fecaca}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,#dbeafe,transparent 32%),linear-gradient(135deg,#eff6ff,#f8fafc)}.login-card{width:min(440px,calc(100% - 28px));background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:26px;box-shadow:var(--shadow);padding:30px}.login-card h1{margin:0 0 18px;font-size:32px}.login-card form{display:grid;gap:14px}.admin-body{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{background:#0b1220;color:#e5e7eb;padding:22px;display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center}.brand span{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:#2563eb;color:#fff;font-weight:900}.brand strong{font-size:18px}.sidebar nav{display:grid;gap:8px}.sidebar nav a{padding:12px 13px;border-radius:13px;color:#cbd5e1;font-weight:750}.sidebar nav a.active,.sidebar nav a:hover{background:rgba(255,255,255,.1);color:#fff}.sidebar-foot{margin-top:auto;display:grid;gap:8px;color:#94a3b8}.sidebar-foot a{color:#fff}.admin-main{padding:26px;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.topbar h1{margin:0;font-size:32px}.panel{background:var(--panel);border:1px solid rgba(226,232,240,.95);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin-bottom:18px}.panel h2,.panel h3{margin:0 0 8px}.panel p{margin-top:0}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.stats-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.stat span{display:block;color:var(--muted);font-size:13px;font-weight:750}.stat strong{display:block;font-size:28px;margin-top:5px}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fields{display:grid;gap:14px}.fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.fields.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid{display:grid;gap:18px}.form-actions{display:flex;gap:12px;align-items:center}.filters{display:grid;grid-template-columns:2fr repeat(5,1fr) auto auto;gap:10px;align-items:end}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:900px;background:#fff}th,td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:14px}th{background:#f8fafc;color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.06em}td small{display:block;color:var(--muted);margin-top:4px}.actions{display:flex;gap:8px;align-items:center}.actions form{margin:0}.pill{display:inline-flex;border-radius:999px;padding:5px 9px;background:#e2e8f0;font-size:12px;font-weight:850;text-transform:capitalize}.pill.published,.pill.active,.pill.trial{background:#dcfce7;color:#166534}.pill.draft{background:#fef9c3;color:#854d0e}.pill.suspended,.pill.expired{background:#fee2e2;color:#991b1b}.pager{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin-top:14px}.stack{display:flex;flex-wrap:wrap;gap:10px}.codebox,.code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#0b1220;color:#dbeafe;border-radius:14px;padding:14px;overflow:auto}.inline-danger{margin-top:-6px}.public-home{background:linear-gradient(135deg,#eef2ff,#f8fafc)}.home-shell{width:min(1180px,calc(100% - 28px));margin:32px auto;display:grid;grid-template-columns:1fr 1fr;gap:22px}.hero-card,.preview-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:28px}.hero-card h1{font-size:42px;line-height:1.05;margin:0 0 14px}.hero-actions{display:flex;gap:12px;margin:20px 0}@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(4,1fr)}.filters{grid-template-columns:1fr 1fr}.fields.four,.fields.three{grid-template-columns:repeat(2,1fr)}}@media(max-width:860px){.admin-body{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar nav{grid-template-columns:repeat(2,1fr)}.admin-main{padding:16px}.topbar,.panel-head{display:grid}.grid-two,.home-shell{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.fields.two,.fields.three,.fields.four,.filters{grid-template-columns:1fr}.actions{display:grid}.hero-card h1{font-size:32px}}@media(max-width:520px){.stats-grid{grid-template-columns:1fr}.sidebar nav{grid-template-columns:1fr}.hero-actions{display:grid}}
.notice{border-style:solid;background:#f8fafc}.notice h2,.notice h3{margin-top:0}.notice.danger-soft{background:#fff7ed;border-color:#fed7aa}.notice.danger-soft h2,.notice.danger-soft h3{color:#9a3412}.notice code{display:inline-block;background:#0b1220;color:#dbeafe;border-radius:8px;padding:3px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.panel code{background:#eef2ff;border-radius:8px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.btn.danger:hover{background:#fecaca}.table-wrap + .notice{margin-top:18px}
.updater-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.pill.new{background:#dbeafe;color:#1e40af}.pill.modified{background:#fef3c7;color:#92400e}.pill.unchanged{background:#e2e8f0;color:#475569}.code{white-space:pre-wrap;line-height:1.55}.btn[disabled]{opacity:.55;cursor:not-allowed}@media(max-width:900px){.updater-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.fields label small{display:block;color:var(--muted);font-size:12px;font-weight:500;line-height:1.35;margin-top:-2px}.fields label select+small{margin-top:-2px}.feature-hint{display:block;color:var(--muted);font-size:12px;font-weight:500;line-height:1.35}
.customer-admin .sidebar .brand span{background:#111827}.customer-admin .panel code{background:#f1f5f9;color:#0f172a}.customer-admin textarea.code{min-height:84px}.customer-admin .notice{background:#f8fafc;border-color:#e2e8f0}
.color-field .color-control{display:grid;grid-template-columns:56px 1fr;gap:8px;align-items:center}.color-preview-input{height:42px;padding:3px;border-radius:12px;cursor:pointer}.color-value-input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-transform:uppercase}.color-preview-box{height:42px;border:1px solid var(--line);border-radius:12px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}.vehicle-logo-admin-preview{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:10px;background:#f8fafc;min-height:65px}.vehicle-logo-admin-preview span{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.vehicle-logo-admin-preview img{max-width:110px;max-height:42px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px}@media(max-width:680px){.color-field .color-control{grid-template-columns:48px 1fr}}
.renew-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.renew-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 36px rgba(15,23,42,.06);padding:20px;display:flex;flex-direction:column;gap:12px}.renew-card h2{margin:0;font-size:22px}.renew-term{display:inline-flex;align-self:flex-start;border-radius:999px;padding:5px 9px;background:#eef2ff;color:#1d4ed8;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.renew-price{display:block;font-size:28px;line-height:1;color:#0f172a}.renew-card p{color:var(--muted);font-size:14px;line-height:1.5;margin:0 0 4px}.renew-admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.renew-admin-card{border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:14px;display:grid;gap:12px}.renew-admin-card h3{margin:0 0 2px;font-size:16px}.renew-mini{background:linear-gradient(135deg,#ffffff,#f8fafc)}@media(max-width:1180px){.renew-grid,.renew-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.renew-grid,.renew-admin-grid{grid-template-columns:1fr}.renew-price{font-size:24px}}
/* v21 renewal visibility and customer portal polish */
.renew-admin-panel{border-color:#bfdbfe;background:linear-gradient(180deg,#ffffff,#f8fbff)}
.renew-admin-panel:target{box-shadow:0 0 0 4px rgba(37,99,235,.14), var(--shadow)}
.renew-card .btn[disabled]{background:#f1f5f9;color:#94a3b8;border-color:#e2e8f0}
.sidebar nav a[href="/admin/renewals"]{position:relative}
.sidebar nav a[href="/admin/renewals"]::after{content:"PayPal";float:right;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#93c5fd;margin-left:8px}
.customer-admin .renew-mini{border-color:#bfdbfe;background:linear-gradient(135deg,#fff,#f8fbff)}
@media(max-width:860px){.sidebar nav a[href="/admin/renewals"]::after{float:none;display:inline-block;margin-left:8px}}

/* v22 automated billing */
.paypal-button-wrap{min-height:46px;margin-top:6px}.renew-small{font-size:12px!important;color:var(--muted)!important;line-height:1.4!important;margin:4px 0 0!important}.renew-card .flash{margin:6px 0 0;padding:10px 12px;font-size:13px}.renew-card .paypal-button-wrap iframe{border-radius:999px}.renew-admin-card input[name$="_subscription_plan_id"]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-transform:uppercase}.renew-admin-card{align-content:start}.panel code{white-space:nowrap}.pill.ACTIVE,.pill.active{background:#dcfce7;color:#166534}.pill.SUSPENDED,.pill.CANCELLED,.pill.EXPIRED,.pill.suspended,.pill.expired{background:#fee2e2;color:#991b1b}@media(max-width:680px){.paypal-button-wrap{max-width:100%;overflow:hidden}.renew-card{padding:16px}}

/* v24 global billing + customer signup */
.sidebar nav a[href="/admin/billing"]{position:relative}
.sidebar nav a[href="/admin/billing"]::after{content:"Global";float:right;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#93c5fd;margin-left:8px}.signup-card{width:min(720px,calc(100% - 28px))}.signup-card form{display:grid;gap:14px}.signup-plan-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.signup-plan-strip div{border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:12px}.signup-plan-strip strong{display:block;font-size:14px;color:#0f172a}.signup-plan-strip span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.billing-package-card input[name$="_paypal_plan_id"]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-transform:uppercase}.signup-checkout-card{max-width:460px}@media(max-width:760px){.signup-plan-strip{grid-template-columns:1fr 1fr}.signup-card{padding:22px}}@media(max-width:480px){.signup-plan-strip{grid-template-columns:1fr}.sidebar nav a[href="/admin/billing"]::after{float:none;display:inline-block}}


.make-logo-thumb{width:46px;height:46px;object-fit:contain;border:1px solid #d9dee8;border-radius:12px;background:#fff;padding:6px;box-shadow:0 6px 16px rgba(15,23,42,.08)}
.panel-head .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media(max-width:760px){.panel-head{align-items:flex-start}.panel-head .actions{width:100%}.panel-head .actions .btn{flex:1;justify-content:center}.table-wrap{overflow-x:auto}}

/* v37.0.5 customer/admin widget preview and backend spacing polish */
.widget-preview-panel{overflow:hidden}.widget-preview-panel .panel-head{align-items:flex-start}.widget-preview-box{border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#f8fafc,#eef2f7);padding:18px;overflow:hidden}.widget-preview-iframe{display:block;width:100%;height:420px;border:0;background:transparent}.widget-preview-box .vlp-widget{max-width:100%;margin:0 auto}.customer-admin .panel,.customer-branding-panel{padding:22px}.customer-admin .panel-head p:last-child,.customer-admin .panel>p.muted:last-of-type{margin-bottom:0}.customer-admin .fields{align-items:stretch}.customer-admin .fields>label{height:100%;min-width:0;align-content:start}.customer-admin .fields>label input,.customer-admin .fields>label select{min-height:44px}.customer-admin .wide-field{display:grid;gap:8px;margin-top:14px}.customer-admin .wide-field textarea,.customer-branding-panel .wide-field textarea{min-height:76px}.customer-admin .colour-grid,.customer-branding-panel .colour-grid{margin-top:14px}.customer-admin .color-field .color-control{min-height:44px}.customer-admin .color-field input{min-height:42px}.customer-admin .form-actions{position:sticky;bottom:0;z-index:5;background:rgba(244,247,251,.92);backdrop-filter:blur(8px);border:1px solid rgba(226,232,240,.9);border-radius:16px;padding:12px;margin-top:6px}.customer-admin .code{min-height:96px}.customer-admin .renew-card,.customer-admin .renew-admin-card{height:100%}@media(max-width:860px){.widget-preview-box{padding:12px;border-radius:18px}.customer-admin .form-actions{position:static}.customer-admin .panel,.customer-branding-panel{padding:18px}}


/* v37.0.6 customer portal preview + logo upload polish */
.customer-admin .widget-preview-panel-full{grid-column:1/-1;width:100%;max-width:none}.customer-admin .widget-preview-panel-full .widget-preview-box{padding:0;background:transparent;border-radius:0;border:0;box-shadow:none;overflow:visible}.customer-admin .widget-preview-panel-full .widget-preview-iframe{width:100%;min-height:420px;border:0}.customer-admin .customer-logo-upload-field input[type=file]{min-height:44px;padding:10px 12px;background:#fff}.customer-admin .customer-logo-preview{display:grid;gap:8px;align-content:start;min-height:100%;border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px}.customer-admin .customer-logo-preview span{font-size:12px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.customer-admin .customer-logo-preview img{max-width:160px;max-height:58px;object-fit:contain;object-position:left center}.customer-admin .customer-logo-url-field,.customer-admin .customer-logo-upload-field{min-height:100%}@media(max-width:860px){.customer-admin .customer-logo-preview img{max-width:140px}.customer-admin .widget-preview-panel-full .panel-head{display:grid;grid-template-columns:1fr}.customer-admin .widget-preview-panel-full .panel-head .btn{width:100%}}


/* v37.0.9 customer uploaded logo sizing and preview polish */
.customer-admin .customer-logo-preview{justify-items:start;align-items:start;overflow:hidden}
.customer-admin .customer-logo-preview img,.customer-admin .customer-logo-preview svg{display:block!important;width:auto!important;height:auto!important;max-width:min(180px,100%)!important;max-height:72px!important;object-fit:contain!important;object-position:left center!important}
.customer-admin .customer-logo-preview img[src$='.svg'],.customer-admin .customer-logo-preview img[src*='.svg?']{background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px}
@media(max-width:860px){.customer-admin .customer-logo-preview img,.customer-admin .customer-logo-preview svg{max-width:min(150px,100%)!important;max-height:60px!important}}

/* v37.0.9 colour picker cleanup: native colour input is the only swatch */
.color-preview-box{display:none!important}

/* v37.0.9 customer branding preview position */
.customer-admin .customer-branding-panel + .widget-preview-panel-full,.customer-admin .notice + .widget-preview-panel-full{margin-top:-2px}
.customer-admin .widget-preview-panel-full .panel-head{margin-bottom:12px}
.customer-admin .widget-preview-panel-full h2{margin-bottom:4px}


/* v37.0.9 instant live preview polish */
.widget-preview-panel .panel-head{align-items:flex-start}
.widget-preview-panel .panel-head>.btn{display:none!important}
.widget-preview-panel iframe{transition:height .18s ease}


/* Email template editor */
.template-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px;align-items:start}
.template-card{border:1px solid rgba(148,163,184,.22);border-radius:18px;background:rgba(15,23,42,.035);padding:18px}
.template-card h3{margin:0 0 12px;font-size:1.05rem}
.email-template-panel .notice{margin-top:14px}.email-template-panel .email-template-locked-note{margin-top:14px;border:0;background:transparent;padding:0;color:var(--muted)}
.email-template-panel .hint{margin-top:10px;color:#64748b;font-size:.88rem}
.email-template-panel code{background:rgba(15,23,42,.08);border-radius:6px;padding:2px 5px}
@media(max-width:900px){.template-grid{grid-template-columns:1fr}.template-card{padding:14px}}

/* v37.0.25 admin no-data HTML editor */
.html-editor-field{display:grid;gap:9px;margin:14px 0;font-weight:650;color:#334155}
.html-editor-label{font-weight:800;color:#1e293b}
.html-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:8px;border:1px solid var(--line);border-radius:14px;background:#f8fafc}
.html-editor-toolbar button{border:1px solid #d7dee9;background:#fff;border-radius:10px;padding:7px 10px;font-weight:800;color:#334155;cursor:pointer}
.html-editor-toolbar button:hover{border-color:#93c5fd;color:#1d4ed8;background:#eff6ff}
.html-editor-divider{display:inline-block;width:1px;height:28px;background:#d7dee9;margin:0 2px}
.html-editor-color{display:inline-flex!important;align-items:center;gap:7px;width:auto!important;border:1px solid #d7dee9;background:#fff;border-radius:10px;padding:6px 9px;margin:0!important;font-size:12px;font-weight:800;color:#334155;line-height:1}
.html-editor-color input[type=color]{width:30px;height:24px;min-height:24px;border:0;background:transparent;padding:0;cursor:pointer}
.html-editor{min-height:150px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px;line-height:1.55;outline:0;overflow:auto}
.html-editor:focus{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.html-editor p{margin:0 0 10px}.html-editor h1,.html-editor h2,.html-editor h3,.html-editor h4{margin:6px 0 10px}.html-editor ul,.html-editor ol{margin:8px 0 10px;padding-left:24px}.html-editor a{color:#1d4ed8;text-decoration:underline}
.html-editor-field small{display:block;color:var(--muted);font-size:12px;font-weight:500;line-height:1.35}
@media(max-width:680px){.html-editor-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.html-editor-toolbar button,.html-editor-color{width:100%!important;justify-content:center}.html-editor-divider{display:none}.html-editor{min-height:180px}}

/* v37.0.26: make No-data / pending vehicle message editor controls obvious and visible */
.html-editor-toolbar-expanded{display:grid!important;gap:10px!important;padding:12px!important;border:1px solid #cbd5e1!important;border-radius:16px!important;background:#f8fafc!important}
.html-editor-toolbar-row{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;width:100%!important}
.html-editor-toolbar-row-highlight{background:#eef6ff!important;border:1px solid #bfdbfe!important;border-radius:14px!important;padding:10px!important}
.html-editor-tool-heading{display:inline-flex!important;align-items:center!important;min-height:32px;padding:0 8px!important;border-radius:999px!important;background:#0f172a!important;color:#fff!important;font-size:12px!important;font-weight:900!important;letter-spacing:.02em!important}
.html-editor-toolbar-expanded button{min-height:34px!important;border:1px solid #cbd5e1!important;background:#fff!important;border-radius:10px!important;padding:7px 11px!important;font-weight:850!important;color:#1e293b!important;cursor:pointer!important}
.html-editor-toolbar-expanded button:hover{border-color:#2563eb!important;background:#eff6ff!important;color:#1d4ed8!important}
.html-editor-toolbar-expanded .html-editor-color{display:inline-flex!important;align-items:center!important;gap:8px!important;width:auto!important;min-height:34px!important;margin:0!important;border:1px solid #cbd5e1!important;background:#fff!important;border-radius:10px!important;padding:6px 10px!important;font-size:12px!important;font-weight:850!important;color:#1e293b!important;line-height:1!important}
.html-editor-toolbar-expanded .html-editor-color input[type=color]{width:34px!important;height:26px!important;min-height:26px!important;border:0!important;background:transparent!important;padding:0!important;cursor:pointer!important}
@media(max-width:720px){.html-editor-toolbar-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.html-editor-tool-heading{justify-content:center!important}.html-editor-toolbar-expanded button,.html-editor-toolbar-expanded .html-editor-color{width:100%!important;justify-content:center!important}}

/* v37.0.27: force no-data editor alignment/colour controls to display on every admin theme/cache state */
.html-editor-formatting-row{display:flex!important;visibility:visible!important;opacity:1!important;min-height:44px!important;margin-top:8px!important;background:#eef6ff!important;border:1px solid #bfdbfe!important;border-radius:14px!important;padding:10px!important}
.html-editor-formatting-row [data-html-align],.html-editor-formatting-row .html-editor-color,.html-editor-formatting-row [data-html-clear]{display:inline-flex!important;visibility:visible!important;opacity:1!important}
.html-editor-formatting-row .html-editor-color input[type=color]{display:inline-block!important;visibility:visible!important;opacity:1!important}


/* v37.0.28: inline no-data editor controls so alignment and colours appear in the same visible toolbar row */
#public-no-data-editor + textarea { display:none!important; }
.html-editor-field .html-editor-toolbar-row[data-no-data-extra-tools="1"]{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;visibility:visible!important;opacity:1!important;overflow:visible!important;max-height:none!important;height:auto!important;background:#f8fbff!important;border:1px solid #bfdbfe!important;border-radius:14px!important;padding:10px!important}
.html-editor-field [data-html-align],.html-editor-field [data-html-color],.html-editor-field .html-editor-color,.html-editor-field [data-html-clear]{display:inline-flex!important;visibility:visible!important;opacity:1!important;position:static!important;max-width:none!important;max-height:none!important;overflow:visible!important}
.html-editor-field .html-editor-tool-heading{display:inline-flex!important;visibility:visible!important;opacity:1!important}
@media(max-width:760px){.html-editor-field .html-editor-toolbar-row[data-no-data-extra-tools="1"]{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.html-editor-field .html-editor-toolbar-row[data-no-data-extra-tools="1"]>*{width:100%!important;justify-content:center!important}}


/* v37.0.31 professional homepage, pages editor, customer 2FA and faster widget polish */
.enterprise-login{background:radial-gradient(circle at 12% 8%,rgba(37,99,235,.30),transparent 30%),radial-gradient(circle at 88% 18%,rgba(14,165,233,.20),transparent 30%),linear-gradient(135deg,#07111f 0%,#0f172a 54%,#172554 100%);padding:28px}.login-split{width:min(1080px,calc(100% - 28px));display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:22px;align-items:stretch}.login-hero{position:relative;overflow:hidden;border:1px solid rgba(191,219,254,.22);border-radius:30px;padding:38px;background:linear-gradient(135deg,rgba(15,23,42,.82),rgba(30,41,59,.76));box-shadow:0 30px 95px rgba(0,0,0,.32);color:#fff}.login-hero:before{content:'';position:absolute;inset:-100px -120px auto auto;width:310px;height:310px;border-radius:999px;background:rgba(59,130,246,.28);filter:blur(5px)}.login-hero .eyebrow{color:#93c5fd}.login-hero h1{position:relative;margin:14px 0 14px;font-size:clamp(34px,5vw,58px);line-height:.98;letter-spacing:-.045em}.login-hero p{position:relative;color:#dbeafe;font-size:16px;line-height:1.65;max-width:620px}.login-brand-mark{position:relative;width:58px;height:58px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#0ea5e9);font-weight:950;font-size:24px;box-shadow:0 20px 50px rgba(37,99,235,.35)}.login-feature-list{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.login-feature-list span{border:1px solid rgba(226,232,240,.18);background:rgba(255,255,255,.08);border-radius:14px;padding:12px 13px;font-weight:850;color:#eef6ff}.login-card-pro{border:1px solid rgba(226,232,240,.92);border-radius:30px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.22)}.login-card-pro h1{font-size:34px;margin-bottom:10px}.login-card-pro .muted{font-size:15px;line-height:1.55}.login-card-pro input{min-height:46px;border-radius:14px}.login-card-pro .btn.primary{min-height:48px;border-radius:14px}.login-card-narrow{width:min(520px,calc(100% - 28px))}.security-panel .security-status{display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:18px;padding:16px;margin:18px 0;border:1px solid var(--line);background:#f8fafc}.security-status strong{font-size:18px}.security-status span{color:var(--muted);font-weight:650}.security-status.is-on{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.security-status.is-off{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.totp-setup{display:grid;grid-template-columns:260px 1fr;gap:20px;align-items:start;margin-top:16px}.totp-qr{border:1px solid var(--line);border-radius:20px;background:#fff;padding:16px;text-align:center}.totp-qr img{width:220px;max-width:100%;height:auto;border-radius:14px}.totp-qr small{display:block;color:var(--muted);margin-top:8px}.totp-steps ol{margin:8px 0 18px;padding-left:22px;color:#475569;font-weight:650;line-height:1.55}.security-form{display:grid;gap:12px;margin-top:14px}.security-form.danger-zone{border:1px solid #fecaca;background:#fff7f7;border-radius:18px;padding:16px}.security-list{display:grid;gap:10px;margin:12px 0 0;padding-left:20px;color:#475569;font-weight:650}.recovery-codes{margin-top:18px;border:1px solid #fde68a;background:#fffbeb;border-radius:18px;padding:16px}.recovery-codes .codebox{white-space:pre-wrap}.sidebar nav a[href='/admin/security']{position:relative}.sidebar nav a[href='/admin/security']::after{content:'2FA';float:right;font-size:10px;border-radius:999px;padding:2px 6px;background:rgba(59,130,246,.22);color:#bfdbfe;margin-left:8px}@media(max-width:900px){.enterprise-login{padding:18px}.login-split{grid-template-columns:1fr}.login-hero{padding:28px}.login-feature-list{grid-template-columns:1fr}.totp-setup{grid-template-columns:1fr}.login-card-pro{padding:26px}}@media(max-width:560px){.enterprise-login{padding:10px}.login-split{width:100%}.login-hero,.login-card-pro{border-radius:22px;padding:22px}.login-hero h1{font-size:34px}.login-card-pro h1{font-size:28px}}


/* v37.0.31 professional page/admin redesign, editable pages, customer 2FA and faster-widget release polish */
body.admin-body{background:radial-gradient(circle at 18% 0%,rgba(37,99,235,.10),transparent 32%),linear-gradient(180deg,#f8fbff 0%,#eef3f9 100%)}
.admin-body{grid-template-columns:296px minmax(0,1fr)}
.sidebar{background:linear-gradient(180deg,#07111f 0%,#0f172a 56%,#172554 100%);border-right:1px solid rgba(191,219,254,.14);box-shadow:18px 0 60px rgba(15,23,42,.12);overflow:auto;scrollbar-width:thin}
.sidebar .brand{padding:10px 8px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.sidebar .brand span{background:linear-gradient(135deg,#2563eb,#06b6d4);box-shadow:0 16px 38px rgba(37,99,235,.28)}
.sidebar .brand strong{letter-spacing:-.02em}.sidebar nav{gap:6px}.sidebar nav a{position:relative;border:1px solid transparent;color:#cbd5e1}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.sidebar nav a.active:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:99px;background:#60a5fa}.sidebar-foot{border-top:1px solid rgba(255,255,255,.08);padding-top:16px}
.admin-main{padding:30px;max-width:1560px;width:100%;margin:0 auto}.topbar{position:sticky;top:0;z-index:8;margin:-30px -30px 24px;padding:24px 30px;border-bottom:1px solid rgba(226,232,240,.82);background:rgba(248,251,255,.86);backdrop-filter:blur(18px)}.topbar h1{font-size:34px;letter-spacing:-.045em}.topbar .eyebrow{margin-bottom:4px}
.panel,.stat,.renew-card,.renew-admin-card{border-color:rgba(203,213,225,.82);box-shadow:0 18px 55px rgba(15,23,42,.07)}.panel{border-radius:22px}.panel h2{letter-spacing:-.03em}.btn{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(15,23,42,.08)}.btn.primary{box-shadow:0 14px 34px rgba(37,99,235,.22)}
.admin-dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;border:1px solid rgba(37,99,235,.18);border-radius:28px;background:linear-gradient(135deg,#fff 0%,#eef6ff 100%);box-shadow:0 22px 70px rgba(15,23,42,.10);padding:28px}.admin-dashboard-hero h2{margin:0 0 8px;font-size:clamp(30px,4vw,48px);letter-spacing:-.055em;line-height:1}.admin-dashboard-hero p:not(.eyebrow){margin:0;color:#526174;font-size:16px;line-height:1.6;max-width:760px}.dashboard-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.stats-grid .stat{background:linear-gradient(180deg,#fff,#f8fbff)}.stat strong{letter-spacing:-.045em}
.premium-login .login-hero{background:linear-gradient(135deg,rgba(2,6,23,.88),rgba(15,23,42,.78)),radial-gradient(circle at 80% 0%,rgba(37,99,235,.34),transparent 38%)}.premium-login .login-card-pro{background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}.login-hero-image{position:relative;margin:-12px -12px 24px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);max-height:240px}.login-hero-image img{display:block;width:100%;height:100%;max-height:240px;object-fit:cover}.premium-plan-strip{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px}.premium-plan-strip div{border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.08);padding:13px;color:#fff}.premium-plan-strip strong,.premium-plan-strip span{display:block}.premium-plan-strip span{color:#bfdbfe;font-size:12px;margin-top:4px;font-weight:800}
.pages-editor .pages-hero-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#fff,#eff6ff);border-color:#bfdbfe}.pages-hero-panel h2{font-size:32px;margin:0 0 8px}.pages-editor label{margin-bottom:12px}.pages-editor textarea{min-height:88px}.page-image-preview{display:flex;align-items:center;gap:12px;margin-top:10px;border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:10px}.page-image-preview img{width:100px;height:70px;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:#fff}.page-image-preview span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--muted)}.security-mini-card{display:grid;gap:4px;border:1px solid #bfdbfe;border-radius:16px;background:#eff6ff;padding:13px;color:#1e3a8a}.security-mini-card strong{font-size:14px}.security-mini-card span{font-size:12px;font-weight:750;color:#475569}.customer-admin .sidebar nav a[href='/customers/security']{position:relative}.customer-admin .sidebar nav a[href='/customers/security']::after{content:'2FA';float:right;font-size:10px;border-radius:999px;padding:2px 6px;background:rgba(59,130,246,.22);color:#bfdbfe;margin-left:8px}
@media(max-width:980px){.admin-dashboard-hero,.pages-editor .pages-hero-panel{display:grid}.dashboard-hero-actions{justify-content:flex-start}.premium-plan-strip{grid-template-columns:1fr}.topbar{position:relative;margin:0 0 18px;padding:0;border:0;background:transparent;backdrop-filter:none}.admin-main{padding:18px}}


/* v37.0.89 admin backend cleanup */
body.admin-body{background:linear-gradient(180deg,#f7faff 0%,#eef4fb 100%)}
.sidebar{padding:20px 18px;gap:18px}.sidebar .brand{border-radius:20px;background:rgba(255,255,255,.055);padding:14px}.sidebar nav{gap:5px}.sidebar nav a{display:flex;align-items:center;min-height:42px;padding:10px 12px;border-radius:12px;font-size:14px;letter-spacing:-.01em}.sidebar nav a.active{background:rgba(96,165,250,.18);border-color:rgba(147,197,253,.18)}.sidebar-foot{font-size:12px;line-height:1.5}.admin-main{padding:28px 30px}.topbar{border-radius:0 0 24px 24px}.topbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.panel{padding:22px;border-radius:24px}.panel-head{align-items:center}.panel h2{font-size:22px}.panel h3{font-size:17px}.table-wrap{border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.035)}table{min-width:880px}th{background:#f5f8fc;color:#526174}td{background:#fff}.fields{gap:16px}input,select,textarea{border-color:#d7e1ed;background:#fff}input:focus,select:focus,textarea:focus{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.10)}.btn{border-color:#d7e1ed}.btn.primary{background:linear-gradient(135deg,#0b5cff,#03a9d9)}.stats-grid.compact .stat,.stats-grid .stat{border-radius:20px}.actions{flex-wrap:wrap}.codebox,.code{border-radius:16px}.admin-dashboard-hero{border-radius:30px}.filters{background:#fff;border:1px solid rgba(226,232,240,.95);border-radius:20px;padding:14px;box-shadow:0 12px 35px rgba(15,23,42,.045)}
@media(max-width:980px){.admin-main{padding:18px}.topbar{border-radius:0}.topbar-actions{justify-content:flex-start}.sidebar nav a{min-height:40px}}

/* v37.0.115 customer vehicle category checkbox alignment */
.customer-vehicle-types-panel{padding:24px!important;overflow:hidden}
.customer-vehicle-types-head{display:grid;gap:6px;margin:0 0 16px 0}
.customer-vehicle-types-panel h2{margin:0!important;line-height:1.22;letter-spacing:-.03em}
.customer-vehicle-types-panel .muted{margin:0;line-height:1.55;color:#475569}
.vehicle-type-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:12px;margin:0 0 12px 0;align-items:stretch}
.vehicle-type-check-card{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;min-height:54px;padding:13px 16px!important;border:1px solid #d7e1ed!important;border-radius:14px!important;background:#f8fafc!important;color:#172033!important;font-weight:800!important;line-height:1.25!important;box-shadow:0 6px 18px rgba(15,23,42,.035)!important;cursor:pointer!important;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.vehicle-type-check-card:hover{background:#fff!important;border-color:#b8c7d9!important;box-shadow:0 10px 24px rgba(15,23,42,.07)!important;transform:translateY(-1px)}
.vehicle-type-check-card:has(.vehicle-type-check-input:checked){background:#f7f3ff!important;border-color:#c4b5fd!important;color:#111827!important}
.vehicle-type-check-input{appearance:auto!important;-webkit-appearance:checkbox!important;width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important;padding:0!important;margin:0!important;border-radius:4px!important;flex:0 0 18px!important;box-shadow:none!important;outline:none!important;accent-color:#a855f7!important;cursor:pointer!important}
.vehicle-type-check-title{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.25;text-align:left}
.vehicle-type-check-note{display:block;margin:2px 0 0 0!important;font-size:13px!important;line-height:1.5!important}
@media(max-width:760px){.customer-vehicle-types-panel{padding:20px!important}.vehicle-type-check-grid{grid-template-columns:1fr}.vehicle-type-check-card{min-height:52px}.vehicle-type-check-title{white-space:normal}}
