:root{color-scheme:light;--font-sans:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--bg:#f6f7fb;--panel:#fff;--ink:#0f172a;--muted:#64748b;--line:#e5e7eb;--green:#047857;--blue:#2563eb;--red:#dc2626;--amber:#d97706;--shadow:0 22px 70px rgba(15,23,42,.08)}
*{box-sizing:border-box}body{font-family:var(--font-sans,"Plus Jakarta Sans",ui-sans-serif,system-ui,sans-serif);margin:0;background:radial-gradient(circle at top left,#eef8ff 0,#f8fafc 36%,#f6f7fb 100%);color:var(--ink)}a{color:inherit}.shell{min-height:100vh;display:flex}.side{width:288px;padding:24px 16px;background:#fff;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;overflow:auto}.brand{font-weight:900;font-size:17px;letter-spacing:-.04em;display:flex;gap:10px;align-items:center;margin:0 8px 24px}.logo{width:34px;height:34px;border-radius:12px;background:#dcfce7;color:#047857;display:grid;place-items:center;font-weight:900}.nav{display:grid;gap:4px}.nav-section{margin:14px 10px 6px;color:#94a3b8;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:900}.nav a,.nav button:not(.nav-entry__link):not(.nav-entry__info){display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;text-decoration:none;color:#334155;padding:10px 12px;border-radius:14px;font-size:14px;cursor:pointer;width:100%;text-align:left}.nav a.active,.nav a:hover,.nav button:not(.nav-entry__link):not(.nav-entry__info):hover{background:#f1f5f9;color:#0f172a}.nav small{font-size:10px;color:#64748b}.main{flex:1;padding:28px 34px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;gap:16px}.headline h1{font-size:34px;letter-spacing:-.055em;margin:0}.headline p{margin:8px 0 0;color:var(--muted)}.userbox{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;color:#334155;font-size:13px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid-2{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.stack{display:grid;gap:16px}.card{background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.metric{font-size:34px;font-weight:900;letter-spacing:-.06em}.label{font-size:13px;color:var(--muted);margin-top:6px}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:14px;background:#111827;color:#fff;padding:11px 14px;text-decoration:none;font-weight:700;cursor:pointer}.btn-secondary{background:#fff;color:#111827;border:1px solid var(--line)}.btn-danger{background:#dc2626;color:#fff}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;background:#ecfdf5;color:#047857}.badge-blue{background:#eff6ff;color:#2563eb}.badge-amber{background:#fffbeb;color:#b45309}.badge-red{background:#fef2f2;color:#dc2626}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:12px 8px;font-size:14px;vertical-align:top}.table th{color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:28px}.auth-card{width:min(520px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.auth-card h1{font-size:36px;margin:10px 0;letter-spacing:-.06em}.form{display:grid;gap:14px;margin-top:22px}.form-inline{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid-3{grid-template-columns:1fr 1fr 1fr}.field label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:7px}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:13px 14px;font-size:15px;background:#fff}.textarea{min-height:94px;resize:vertical}.error{color:var(--red);font-size:13px}.status{background:#ecfdf5;color:#047857;border:1px solid #bbf7d0;padding:12px 14px;border-radius:16px}.alert{background:#fffbeb;color:#92400e;border:1px solid #fde68a;padding:12px 14px;border-radius:16px}.code{font-size:40px;letter-spacing:.28em;text-align:center;font-weight:900}.split{display:flex;gap:10px;align-items:center;justify-content:space-between}.platform-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.platform-card{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:16px;background:#fff;padding:13px;cursor:pointer}.platform-card input{margin-top:4px}.platform-card strong{display:block}.platform-card small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.platform-card:has(input:checked){border-color:#111827;box-shadow:0 0 0 3px rgba(17,24,39,.08)}.platform-card.disabled{opacity:.55;cursor:not-allowed;background:#f8fafc}.module-card{display:grid;gap:8px;align-content:start;min-height:160px}.module-card h3{margin:0;font-size:18px;letter-spacing:-.03em}.module-card p{margin:0;color:#64748b;line-height:1.55}.empty{padding:28px;border:1px dashed #cbd5e1;border-radius:20px;background:#f8fafc;color:#64748b}.actions-row{display:flex;gap:8px;flex-wrap:wrap}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.kpi-line{display:grid;gap:8px}.kpi-line div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:8px}.section-title{font-size:22px;letter-spacing:-.04em;margin:0 0 12px}.danger-zone{border-color:#fecaca;background:#fff7f7}.mobile-nav{display:none}@media(max-width:1100px){.grid{grid-template-columns:repeat(2,1fr)}.grid-3,.grid-2{grid-template-columns:1fr}}@media(max-width:800px){.mobile-nav{display:flex;align-items:center;gap:12px;margin-bottom:16px}.main{padding:22px}.grid,.grid-3,.grid-2,.form-grid,.form-grid-3{grid-template-columns:1fr}.topbar{display:block}.userbox{margin-top:14px}.platform-grid{grid-template-columns:1fr}}

/* Typography — Plus Jakarta Sans (loaded in layout) */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
body,button,input,select,textarea{font-family:var(--font-sans);font-size:15px;line-height:1.5;font-weight:400}
.app-brand{margin:0 8px 24px;display:flex;align-items:center}
.app-brand a{display:block;width:100%;text-decoration:none}
.brand-logo{display:block;width:100%;max-width:222px;height:auto;object-fit:contain}
.brand-logo--icon{max-width:40px;max-height:40px;width:auto}
.auth-page-brand{display:flex;justify-content:center;padding:28px 16px 0}
.auth-page-brand a{display:block;max-width:min(320px,88vw)}
.auth-page-brand .brand-logo{width:100%;max-width:320px}
.side{width:340px}
.nav a,.nav button:not(.nav-entry__link):not(.nav-entry__info){font-size:14px;font-weight:500;letter-spacing:-.01em;line-height:1.35}
.nav .nav-entry__link{font-size:14px;font-weight:500}
.nav .nav-entry.is-active .nav-entry__link{font-weight:600}
.nav a.active{font-weight:600;color:var(--ink)}
.nav-section{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8}
.headline h1{font-weight:700;font-size:32px;letter-spacing:-.035em;line-height:1.15}
.headline p{font-size:15px;font-weight:400;line-height:1.45}
.topbar .pill{font-size:13px;font-weight:500}
.btn{font-family:var(--font-sans);font-size:14px;font-weight:600;letter-spacing:-.01em}
.badge{font-weight:600;font-size:11px;letter-spacing:.02em}
.metric{font-weight:700;letter-spacing:-.04em}
.section-title{font-weight:700;letter-spacing:-.03em}
.field label{font-weight:600;letter-spacing:.04em;font-size:11px}
.table th{font-weight:600}
.mono{font-family:var(--font-mono)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.card-soft{background:#f8fafc;border:1px solid var(--line);border-radius:20px;padding:18px;display:grid;gap:14px}
.workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.workflow-grid .platform-card{height:100%}@media(max-width:800px){.workflow-grid{grid-template-columns:1fr}}

/* v0.6.0 credit purchase and admin controls */
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}.package-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:18px;display:grid;gap:16px;min-height:220px}.package-card h3{margin:0;font-size:18px;letter-spacing:-.03em}.package-credits{font-size:30px;font-weight:900;letter-spacing:-.05em;margin:8px 0;color:#0f172a}.package-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:14px}.example-box{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:16px;margin-top:14px}.admin-table-form{display:grid;gap:8px;min-width:320px}.admin-table-form .input,.admin-table-form .select{padding:10px 11px;border-radius:12px;font-size:13px}.form-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tiny{font-size:12px;color:var(--muted)}@media(max-width:1100px){.package-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr 1fr}}@media(max-width:800px){.form-row{grid-template-columns:1fr}}

/* Connector hub + setup guide (2026) */
.connector-hub{display:grid;gap:18px}
.connector-hub__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,#0f172a 0%,#1e3a5f 50%,#0f766e 100%);color:#fff;box-shadow:var(--shadow)}
.connector-hub__hero h2{margin:0;font-size:22px;font-weight:700;letter-spacing:-.04em;color:#fff}
.connector-hub__hero p{margin:8px 0 0;color:rgba(255,255,255,.78);font-size:14px;line-height:1.5;max-width:560px}
.connector-hub__chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.conn-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:600;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#fff}
.conn-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.85}
.conn-chip--live{background:rgba(16,185,129,.22);border-color:rgba(110,231,183,.45)}
.conn-chip--live::before{background:#6ee7b7;box-shadow:0 0 0 3px rgba(110,231,183,.22)}
.conn-chip--warn{background:rgba(251,191,36,.2);border-color:rgba(253,224,71,.4)}
.conn-chip--warn::before{background:#fde047}
.conn-chip--idle::before{background:#94a3b8}
.connector-credentials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.conn-credential{display:grid;gap:8px;padding:16px 18px;border-radius:18px;background:#f8fafc;border:1px solid var(--line)}
.conn-credential__label{margin:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.conn-credential__value{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.conn-credential__text{margin:0;font-family:var(--font-mono);font-size:14px;font-weight:600;word-break:break-all;line-height:1.45;color:var(--ink)}
.conn-credential--code{background:#ecfdf5;border-color:#bbf7d0}
.conn-credential--code .conn-credential__text{font-size:22px;letter-spacing:.12em;font-weight:800}
.conn-copy{border:1px solid var(--line);background:#fff;border-radius:12px;padding:7px 12px;font-size:12px;font-weight:600;cursor:pointer;color:#334155;flex-shrink:0}
.conn-copy:hover{background:#f1f5f9}
.conn-copy.is-copied{background:#ecfdf5;border-color:#bbf7d0;color:#047857}
.connector-hub__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.connector-hub__note{margin:0;font-size:13px;color:var(--muted);line-height:1.5}
.connector-alert{padding:14px 16px;border-radius:16px;border:1px solid transparent;font-size:13px;line-height:1.5}
.connector-alert--warn{background:#fffbeb;border-color:#fde68a;color:#92400e}
.connector-alert--ok{background:#ecfdf5;border-color:#bbf7d0;color:#065f46}
.connector-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:16px}
.connector-admin-card{display:grid;gap:12px;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.connector-admin-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.connector-admin-card__title{margin:0;font-size:16px;font-weight:700;letter-spacing:-.03em}
.connector-admin-card__meta{display:grid;gap:8px;margin:0;padding:0;list-style:none;font-size:13px}
.connector-admin-card__meta li{display:flex;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.connector-admin-card__meta li:last-child{border-bottom:0;padding-bottom:0}
.connector-admin-card__meta strong{color:var(--muted);font-weight:600;font-size:12px}
.setup-guide-steps{display:grid;gap:14px}
.setup-guide-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,40%);gap:18px;align-items:start;padding:18px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fff 0%,#f8fafc 100%)}
.setup-guide-step__number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;background:#111827;color:#fff;font-size:13px;font-weight:700;margin-bottom:10px}
.setup-guide-copy h3{margin:0 0 8px;font-size:17px;font-weight:700;letter-spacing:-.03em}
.setup-guide-where{margin:0 0 12px;padding:10px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;font-size:12px;color:#92400e;line-height:1.45}
.setup-guide-where strong{display:block;margin-bottom:2px}
.setup-guide-figure{margin:0;display:grid;gap:8px}
.setup-guide-figure img{width:100%;height:auto;border-radius:14px;border:1px solid var(--line);background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.setup-guide-figure figcaption{text-align:center;font-size:11px}
.connector-setup-guide--compact .setup-guide-step{padding:14px;grid-template-columns:1fr}
.connector-setup-guide--compact .setup-guide-figure{order:-1}
@media(max-width:900px){.connector-credentials,.setup-guide-step{grid-template-columns:1fr}.setup-guide-figure{order:-1}}

/* Workflow feature explainers */
.feature-explainer{padding:0;overflow:hidden}
.feature-explainer--compact{margin-bottom:14px}
.feature-explainer__summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;cursor:pointer;list-style:none;font-weight:700;letter-spacing:-.02em}
.feature-explainer__summary::-webkit-details-marker{display:none}
.feature-explainer__title{font-size:16px;color:var(--ink)}
.feature-explainer__toggle{font-size:13px;font-weight:600}
.feature-explainer[open] .feature-explainer__toggle::after{content:""}
.feature-explainer__body{padding:0 22px 22px;border-top:1px solid var(--line)}
.feature-explainer__lead{margin:16px 0 0;line-height:1.55}
.feature-explainer__sections{display:grid;gap:10px;margin-top:16px}
.feature-explainer__section{border:1px solid var(--line);border-radius:16px;background:#f8fafc;overflow:hidden}
.feature-explainer__section.is-highlighted{border-color:#93c5fd;box-shadow:0 0 0 2px rgba(37,99,235,.12)}
.feature-explainer__section-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;cursor:pointer;font-weight:600;font-size:14px;list-style:none;color:#0f172a}
.feature-explainer__section-summary::-webkit-details-marker{display:none}
.feature-explainer__section-body{margin:0;border:0;border-radius:0;border-top:1px solid var(--line);background:#fff;padding:14px 16px 16px;display:grid;gap:14px}
.feature-explainer__copy{display:grid;gap:0}
.feature-explainer__figure{margin:0;max-width:360px;width:100%}
.feature-explainer__figure img{display:block;width:100%;height:auto;max-height:200px;object-fit:contain;border-radius:12px;border:1px solid var(--line);background:#f8fafc;box-shadow:0 4px 14px rgba(15,23,42,.05)}
.feature-explainer--compact .feature-explainer__summary{padding:14px 18px}
.feature-explainer--compact .feature-explainer__body{padding:0 18px 18px}
.feature-explainer--compact .feature-explainer__figure{max-width:300px}

.main{position:relative;flex:1;min-width:0}
.main-content--gated{pointer-events:none;user-select:none;filter:none;opacity:.88}
.main--gated .main-content--gated{min-height:calc(100vh - 48px)}
.main--gated{overflow:auto}
.subscription-overlay{position:absolute;inset:0;z-index:40;display:flex;align-items:flex-start;justify-content:center;padding:48px 24px 24px;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.55) 0,rgba(248,250,252,.65) 38%,rgba(248,250,252,.78) 100%)}
.subscription-overlay-card{max-width:420px;width:100%;pointer-events:auto;box-shadow:0 16px 40px rgba(15,23,42,.12);border-color:#cbd5e1}
.subscription-overlay-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.nav a.nav-restricted{opacity:.55}

/* Pagination — custom view (no Tailwind; avoids giant default SVG arrows) */
.pagination{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.pagination-summary{margin:0;font-size:13px}
.pagination-links{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pagination-link{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:8px 12px;font-size:13px;font-weight:600;text-decoration:none;border-radius:12px;border:1px solid var(--line);background:#fff;color:#334155;line-height:1.2}
.pagination-link:hover:not(.pagination-link--disabled):not(.is-active){background:#f8fafc;color:#0f172a}
.pagination-link.is-active{background:#111827;color:#fff;border-color:#111827;cursor:default}
.pagination-link--disabled{opacity:.45;cursor:default}
.pagination-ellipsis{display:inline-flex;align-items:center;padding:8px 4px;color:var(--muted);font-size:13px}
@media(max-width:800px){.pagination{flex-direction:column;align-items:flex-start}}

/* Mobile shell navigation — slide-out sidebar */
@media(max-width:800px){
.side{display:block;position:fixed;inset:0 auto 0 0;z-index:60;width:min(300px,88vw);max-width:88vw;height:100vh;transform:translateX(-105%);transition:transform .22s ease,visibility .22s ease;box-shadow:none;visibility:hidden}
.shell--nav-open .side{transform:translateX(0);visibility:visible;box-shadow:12px 0 40px rgba(15,23,42,.18)}
.shell-nav-backdrop{position:fixed;inset:0;z-index:55;background:rgba(15,23,42,.45);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.shell--nav-open .shell-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}
.shell-nav-body-lock{overflow:hidden}
.mobile-nav__brand{display:flex;align-items:center;text-decoration:none;min-width:0;flex:1;justify-content:flex-end}
.mobile-nav__brand-logo{max-width:160px;max-height:36px;width:auto;height:auto}
.mobile-nav__toggle{flex-shrink:0}
}

/* Sidebar nav entries — title, subtitle, info tooltip */
.side{width:340px;padding:22px 14px 28px}
.nav{display:grid;gap:4px}
.nav-section{margin:16px 10px 8px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}
.nav .nav-entry{display:flex;align-items:stretch;gap:0;position:relative;border-radius:14px;margin:0 2px}
.nav .nav-entry.is-active{background:linear-gradient(90deg,#eff6ff 0%,#f8fafc 100%);box-shadow:inset 3px 0 0 #2563eb}
.nav .nav-entry__link{flex:1;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:12px;min-width:0;padding:10px 10px 10px 12px;border-radius:14px;text-decoration:none;color:#334155;background:transparent;transition:background .15s,color .15s;border:0;width:100%;cursor:pointer;font:inherit;text-align:left}
.nav-entry--rich .nav-entry__link{align-items:flex-start!important;padding-top:11px;padding-bottom:11px}
.nav .nav-entry:not(.is-active) .nav-entry__link:hover{background:rgba(241,245,249,.85);color:#0f172a}
.nav .nav-entry.is-active .nav-entry__link{color:#0f172a;font-weight:600;background:transparent}
.nav .nav-entry__icon{flex-shrink:0;width:36px;height:36px;border-radius:11px;background:#f8fafc;border:1px solid #e2e8f0;display:grid;place-items:center;color:#64748b}
.nav .nav-entry__icon svg{width:18px;height:18px;display:block}
.nav .nav-entry.is-active .nav-entry__icon{background:#fff;border-color:#bfdbfe;color:#2563eb;box-shadow:0 1px 2px rgba(37,99,235,.08)}
.nav .nav-entry__text{display:grid;gap:4px;min-width:0;flex:1}
.nav .nav-entry__label{display:flex;flex-wrap:wrap;align-items:center;gap:6px;row-gap:4px}
.nav .nav-entry__title{font-size:14px;font-weight:600;letter-spacing:-.02em;line-height:1.25;color:inherit}
.nav .nav-entry__hint{font-size:11px;line-height:1.4;color:#94a3b8;font-weight:400}
.nav .nav-entry__tag{font-size:10px;padding:3px 7px}
.nav .nav-entry__label{width:100%}
.nav .nav-entry__count{margin-left:auto}
.nav .nav-entry__info{flex-shrink:0;align-self:center;width:28px;height:28px;border:0;background:transparent;color:#cbd5e1;cursor:pointer;display:grid;place-items:center;border-radius:8px;padding:0;margin:0 8px 0 0;position:relative}
.nav-entry--rich .nav-entry__info{align-self:flex-start;margin-top:10px}
.nav .nav-entry__info svg{width:15px;height:15px}
.nav .nav-entry__info:hover,.nav .nav-entry__info:focus-visible{background:#e2e8f0;color:#64748b;outline:none}
.nav-entry__tooltip--fixed{position:fixed;left:0;top:0;transform:translateY(-50%);z-index:200}
.nav-entry__tooltip{width:min(300px,calc(100vw - 24px));padding:14px 16px;border-radius:16px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 20px 50px rgba(15,23,42,.14);font-size:13px;line-height:1.55;color:#475569;font-weight:400;text-align:left;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s,visibility .15s}
.nav-entry__tooltip.is-visible{opacity:1;visibility:visible}
.nav .nav-entry--logout .nav-entry__link{color:#64748b}
.nav .nav-entry--logout .nav-entry__link:hover{color:#0f172a}
@media(max-width:800px){.nav-entry__tooltip--fixed{max-width:calc(100vw - 32px)}}

/* Beskyttelse — product exclusion UX */
.protection-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;margin-bottom:16px}
.protection-summary__label{font-size:14px;font-weight:600;color:#64748b}
.protection-summary__value{font-size:36px;font-weight:700;letter-spacing:-.03em;color:#0f172a;line-height:1}
.protection-stepper-card{margin-bottom:16px;padding:20px 24px}
.protection-stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;counter-reset:protection-step}
.protection-stepper li{position:relative;padding:0 0 0 44px;min-height:44px}
.protection-stepper li::before{counter-increment:protection-step;content:counter(protection-step);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:999px;background:#eff6ff;color:#2563eb;font-size:13px;font-weight:700;display:grid;place-items:center;border:1px solid #bfdbfe}
.protection-stepper li strong{display:block;font-size:14px;color:#0f172a;margin-bottom:4px}
.protection-stepper li span{display:block;font-size:13px;line-height:1.45;color:#64748b}
.protection-filter-card,.protection-picker-card,.protection-active-card{margin-bottom:16px}
.protection-match-count{font-size:13px;font-weight:600;color:#166534;background:#dcfce7;border:1px solid #bbf7d0;border-radius:999px;padding:8px 14px;white-space:nowrap}
.protection-filter-toggles{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.protection-toggle{padding:10px 14px!important;margin:0!important;min-width:0}
.protection-search-field{min-width:220px;flex:1}
.protection-bulk-bar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:4px}
.protection-bulk-select{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#334155}
.protection-bulk-actions{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}
.protection-reason-field{margin:0;min-width:220px}
.protection-status{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.protection-status-new{background:#dbeafe;color:#1d4ed8}
.protection-status-changed{background:#ffedd5;color:#c2410c}
.protection-status-unchanged{background:#f1f5f9;color:#64748b}
.protection-excluded-yes{font-weight:600;color:#0f172a}
@media(max-width:900px){
.protection-stepper{grid-template-columns:1fr}
.protection-summary{flex-direction:column;align-items:flex-start}
.protection-bulk-bar{flex-direction:column;align-items:stretch}
.protection-bulk-actions{flex-direction:column;align-items:stretch}
}

/* Customer dashboard (Overblik) */
.dashboard-hero{margin-bottom:12px;padding:28px 30px;background:linear-gradient(135deg,#1e3a8a 0%,#4338ca 55%,#6366f1 100%);border:0;color:#fff;overflow:hidden}
.dashboard-hero__eyebrow{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.dashboard-hero__title{margin:0 0 10px;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15;color:#fff}
.dashboard-hero__lead{margin:0;max-width:640px;line-height:1.55;color:rgba(255,255,255,.86)}
.dashboard-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.dashboard-hero__cta{background:#f97316;border-color:#ea580c;color:#fff}
.dashboard-hero__cta:hover{background:#ea580c;color:#fff}
.dashboard-credits-banner{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding:16px 18px;background:#fffbeb;border-color:#fde68a}
.dashboard-credits-banner__icon{font-size:24px;line-height:1}
.dashboard-credits-banner__content{display:grid;gap:4px;flex:1;min-width:0}
.dashboard-credits-banner__tag{font-size:12px;font-weight:700;color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:999px;padding:6px 10px;white-space:nowrap}
.dashboard-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}
.dashboard-summary-card{display:grid;gap:8px;min-height:190px}
.dashboard-summary-card__head{display:flex;align-items:center;gap:10px}
.dashboard-summary-card__head h3{margin:0;font-size:14px;font-weight:700;color:#64748b}
.dashboard-summary-card__icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;font-size:14px}
.dashboard-summary-card__value{font-size:1.65rem;font-weight:700;letter-spacing:-.03em;line-height:1.1}
.dashboard-summary-card__value--active{color:#166534}
.dashboard-summary-card__value--inactive{color:#7c3aed}
.dashboard-summary-card__value--credits{color:#059669}
.dashboard-summary-card__value--shops{color:#2563eb}
.dashboard-summary-card__value--products{color:#ea580c}
.dashboard-summary-card__link{display:inline-block;margin-top:4px;font-size:13px;font-weight:600;text-decoration:none;color:#2563eb}
.dashboard-progress{height:8px;border-radius:999px;background:#ecfdf5;overflow:hidden}
.dashboard-progress span{display:block;height:100%;background:linear-gradient(90deg,#34d399,#059669);border-radius:999px}
.dashboard-stepper-card{margin-bottom:16px;padding:22px 24px}
.dashboard-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 0;padding:0;list-style:none}
.dashboard-step{display:grid;gap:10px;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff}
.dashboard-step--done{border-color:#bbf7d0;background:#f0fdf4}
.dashboard-step--next{border-color:#93c5fd;box-shadow:0 0 0 2px rgba(37,99,235,.08)}
.dashboard-step__number{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;font-size:13px;font-weight:700;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}
.dashboard-step--done .dashboard-step__number{background:#dcfce7;color:#166534;border-color:#bbf7d0}
.dashboard-step__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.dashboard-step__title-row strong{font-size:14px;color:#0f172a}
.dashboard-step__status{font-size:11px;font-weight:700;color:#64748b;white-space:nowrap}
.dashboard-step--next .dashboard-step__status{color:#2563eb}
.dashboard-step--done .dashboard-step__status{color:#166534}
.dashboard-step__content{display:grid;gap:8px}
.dashboard-tabs-card{padding:10px 12px;margin-bottom:14px}
.dashboard-tabs{display:flex;gap:8px;flex-wrap:wrap}
.dashboard-tab-link{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:#334155;text-decoration:none;font-size:13px;font-weight:600}
.dashboard-tab-link:hover{background:#f8fafc;color:#0f172a}
.dashboard-tab-link.is-active{background:#111827;color:#fff;border-color:#111827}
.dashboard-scanner-app{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
.dashboard-scanner-app__copy{display:grid;gap:10px}
.dashboard-scanner-app__eyebrow{margin:0;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.dashboard-scanner-app__actions{display:flex;gap:10px;flex-wrap:wrap}
.dashboard-scanner-app__label{display:inline-block;margin-bottom:6px;font-size:12px;font-weight:700;letter-spacing:.04em;color:#64748b;text-transform:uppercase}
.dashboard-scanner-app__qr{display:grid;justify-items:center;gap:10px}
.dashboard-scanner-app__qr img{width:280px;max-width:100%;height:auto;border:1px solid #e2e8f0;border-radius:14px;background:#fff;padding:8px}
.dashboard-print-client__aside{display:grid;gap:10px;align-content:start}
.dashboard-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.dashboard-panel{display:grid;gap:14px}
.dashboard-panel__head{margin-bottom:2px}
.dashboard-pending-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.dashboard-pending-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
.dashboard-pending-item__content{display:grid;gap:4px;min-width:0}
.dashboard-pending-item--amber{border-color:#fde68a;background:#fffbeb}
.dashboard-pending-item--blue{border-color:#bfdbfe;background:#eff6ff}
.dashboard-pending-item--purple{border-color:#ddd6fe;background:#f5f3ff}
.dashboard-pending-item--red{border-color:#fecaca;background:#fef2f2}
.dashboard-activity-feed{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.dashboard-activity-item{display:grid;grid-template-columns:16px 1fr;gap:12px;align-items:flex-start}
.dashboard-activity-item__dot{width:10px;height:10px;margin-top:6px;border-radius:999px;background:#22c55e}
.dashboard-activity-item__content{display:grid;gap:4px;min-width:0}
.dashboard-activity-item__content a{text-decoration:none;color:inherit}
.dashboard-activity-item__time{font-size:12px;color:#94a3b8}
@media(max-width:1100px){
.dashboard-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.dashboard-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
.dashboard-summary-grid,.dashboard-stepper,.dashboard-columns{grid-template-columns:1fr}
.dashboard-credits-banner{align-items:flex-start;flex-direction:column}
.dashboard-pending-item{align-items:flex-start;flex-direction:column}
.dashboard-scanner-app{grid-template-columns:1fr}
}
.wizard-steps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.wizard-step{padding:6px 12px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:12px;font-weight:700}
.wizard-step.is-active{background:#dcfce7;color:#047857}
.wizard-step.is-done{background:#e2e8f0;color:#334155}

/* Onboarding wizard (shop + billing) */
.onboarding-wizard{max-width:var(--onboarding-max,720px);margin:0 auto}
.onboarding-wizard__layout{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:20px;align-items:start}
.onboarding-wizard__card{padding:28px 28px 24px;border-radius:16px}
.onboarding-wizard__footer{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:16px;padding:14px 0 0;position:sticky;bottom:0;background:linear-gradient(180deg,transparent 0,#f6f7fb 24px);z-index:2}
.onboarding-stepper{position:sticky;top:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.95)}
.onboarding-stepper__heading{margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.onboarding-stepper__list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.onboarding-stepper__item{margin:0}
.onboarding-stepper__link{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:12px;color:inherit}
.onboarding-stepper__item.is-pending .onboarding-stepper__link{opacity:.5}
.onboarding-stepper__num{flex:0 0 28px;width:28px;height:28px;border-radius:999px;display:grid;place-items:center;font-size:13px;font-weight:800;background:#e2e8f0;color:#475569}
.onboarding-stepper__item.is-active .onboarding-stepper__num{background:#047857;color:#fff}
.onboarding-stepper__item.is-done .onboarding-stepper__num{background:#dcfce7;color:#047857}
.onboarding-stepper__item.is-active .onboarding-stepper__label{font-weight:700;color:#1e293b}
.onboarding-stepper__label{font-size:14px;line-height:1.35;padding-top:4px}
.onboarding-stepper-progress{display:none;gap:6px;margin:0 0 16px;padding:0 4px}
.onboarding-stepper-progress__dot{flex:1;height:4px;border-radius:999px;background:#e2e8f0}
.onboarding-stepper-progress__dot.is-active,.onboarding-stepper-progress__dot.is-done{background:#047857}
.onboarding-panel__title{margin:0 0 8px;font-size:20px;font-weight:800;letter-spacing:-.02em}
.onboarding-panel__lead{margin:0 0 20px}
.onboarding-form{display:grid;gap:14px}
.onboarding-platform-grid{display:grid;gap:12px;margin-top:8px}
.onboarding-platform-card{display:block;border:2px solid var(--line);border-radius:14px;padding:16px 18px;cursor:pointer;transition:border-color .15s,box-shadow .15s;background:#fff}
.onboarding-platform-card:has(input:checked){border-color:#047857;box-shadow:0 0 0 3px rgba(4,120,87,.12)}
.onboarding-platform-card.is-disabled{opacity:.55;cursor:not-allowed}
.onboarding-platform-card input{position:absolute;opacity:0;pointer-events:none}
.onboarding-platform-card__body{display:grid;gap:4px}
.onboarding-platform-card__title{font-size:16px}
.onboarding-platform-card__status{font-size:13px;color:#64748b}
.onboarding-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.onboarding-pricing-card{display:block;cursor:pointer;height:100%}
.onboarding-pricing-card input{position:absolute;opacity:0;pointer-events:none}
.onboarding-pricing-card__inner{display:flex;flex-direction:column;gap:12px;height:100%;padding:22px;border:2px solid var(--line);border-radius:16px;background:#fff;transition:border-color .15s,box-shadow .15s}
.onboarding-pricing-card:has(input:checked) .onboarding-pricing-card__inner{border-color:#047857;box-shadow:0 0 0 3px rgba(4,120,87,.12)}
.onboarding-pricing-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.onboarding-pricing-card__badge{font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;background:#dcfce7;color:#047857}
.onboarding-pricing-card__price{font-size:22px;font-weight:800;letter-spacing:-.03em}
.onboarding-pricing-card__price small{display:block;font-size:13px;font-weight:600;color:#64748b;margin-top:4px}
.onboarding-pricing-card__features{margin:0;padding:0 0 0 18px;font-size:14px;color:#475569;display:grid;gap:6px}
.onboarding-terms-row{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;margin-top:8px}
.onboarding-terms-row input{margin-top:4px}
.onboarding-terms-row span{display:grid;gap:4px}
.onboarding-code-panel{margin:16px 0;padding:18px;border-radius:14px;background:#0f172a;color:#f8fafc}
.onboarding-code-panel__label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-bottom:10px}
.onboarding-code-panel__row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.onboarding-code-panel__value{font-size:28px;font-weight:800;letter-spacing:.12em;word-break:break-all}
.onboarding-code-panel__hint{margin:12px 0 0;color:#94a3b8;font-size:13px}
.onboarding-saas-url{margin:16px 0}
.onboarding-saas-url__row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:6px}
.onboarding-saas-url__value{font-size:14px;padding:8px 12px;background:#f1f5f9;border-radius:8px}
.onboarding-checklist{margin:0 0 20px;padding-left:20px;color:#475569;display:grid;gap:8px}
.onboarding-status-pill{padding:16px 18px;border-radius:12px;margin:0 0 16px}
.onboarding-status-pill.is-pending{background:#fffbeb;border:1px solid #fde68a;color:#92400e}
.onboarding-status-pill.is-success{background:#dcfce7;border:1px solid #86efac;color:#047857}
.onboarding-action-cards{display:grid;gap:12px;margin-top:12px}
.onboarding-action-card{display:grid;gap:4px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit;background:#fff;transition:border-color .15s,box-shadow .15s}
.onboarding-action-card:hover{border-color:#047857;box-shadow:0 4px 16px rgba(15,23,42,.06)}
.onboarding-trial-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.onboarding-trial-summary__rows{display:grid;gap:10px;margin:16px 0}
.onboarding-trial-summary__rows div{display:flex;justify-content:space-between;gap:12px}
.onboarding-trial-summary__total dt,.onboarding-trial-summary__total dd{font-weight:700}
.onboarding-trial-trialbox{margin-top:16px;padding:14px 16px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;display:grid;gap:4px}
.dashboard-onboarding-progress{display:flex;gap:6px;margin:0 0 14px}
.dashboard-onboarding-progress__dot{flex:1;height:4px;border-radius:999px;background:#e2e8f0}
.dashboard-onboarding-progress__dot.is-done,.dashboard-onboarding-progress__dot.is-next{background:#047857}
.dashboard-onboarding-progress__dot.is-next{opacity:.55}
@media(max-width:900px){
.onboarding-wizard__layout{grid-template-columns:1fr}
.onboarding-stepper{display:none}
.onboarding-stepper-progress{display:flex}
.onboarding-pricing-grid,.onboarding-trial-layout{grid-template-columns:1fr}
}

/* Dedicated tenant onboarding (/onboarding) */
.tenant-onboarding-stepper{margin:0 0 28px}
.tenant-onboarding-stepper ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.tenant-onboarding-stepper__item{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:13px;font-weight:700}
.tenant-onboarding-stepper__item.is-active{background:#2563eb;color:#fff}
.tenant-onboarding-stepper__item.is-done{background:#dcfce7;color:#047857}
.tenant-onboarding-stepper__badge{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:rgba(0,0,0,.08);font-size:12px}
.tenant-onboarding-stepper__item.is-active .tenant-onboarding-stepper__badge{background:rgba(255,255,255,.25)}
.tenant-onboarding-stepper--progress ol{flex-wrap:nowrap;justify-content:space-between;position:relative;gap:0;padding:0 8px 8px}
.tenant-onboarding-stepper--progress ol::before{content:'';position:absolute;top:18px;left:8%;right:8%;height:2px;background:#e2e8f0;z-index:0}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__item{flex:1;flex-direction:column;align-items:center;gap:8px;padding:0 4px;background:transparent;color:#64748b;border-radius:0;min-width:0;text-align:center}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__item.is-active{color:#2563eb}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__item.is-done{color:#047857}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__badge{position:relative;z-index:1;min-width:36px;height:36px;font-size:14px;background:#fff;border:2px solid #e2e8f0}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__item.is-active .tenant-onboarding-stepper__badge{background:#2563eb;border-color:#2563eb;color:#fff}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__item.is-done .tenant-onboarding-stepper__badge{background:#dcfce7;border-color:#86efac;color:#047857}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__label{font-size:12px;font-weight:700;line-height:1.25}
.tenant-onboarding-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:20px;align-items:start}
.tenant-onboarding-main{padding:28px}
.tenant-onboarding-aside{padding:22px;position:sticky;top:16px}
.tenant-onboarding-step-title{margin:0 0 8px;font-size:22px;font-weight:800;letter-spacing:-.02em}
.tenant-onboarding-step-lead{margin:0 0 22px}
.tenant-onboarding-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.tenant-onboarding-plan-card{display:block;cursor:pointer;height:100%;position:relative}
.tenant-onboarding-plan-card input{position:absolute;opacity:0;pointer-events:none}
.tenant-onboarding-plan-card__body{display:flex;flex-direction:column;gap:10px;height:100%;padding:22px;border:2px solid var(--line);border-radius:16px;background:#fff;transition:border-color .15s,box-shadow .15s}
.tenant-onboarding-plan-card:has(input:checked) .tenant-onboarding-plan-card__body{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.tenant-onboarding-plan-card--wms:has(input:checked) .tenant-onboarding-plan-card__body{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.15)}
.tenant-onboarding-plan-card__icon{width:44px;height:44px;border-radius:12px;background:#dbeafe;margin-bottom:4px}
.tenant-onboarding-plan-card--wms .tenant-onboarding-plan-card__icon{background:#ede9fe}
.tenant-onboarding-plan-card__icon::after{content:'';display:block;width:100%;height:100%;border-radius:inherit;background:center/22px no-repeat}
.tenant-onboarding-plan-card--scan .tenant-onboarding-plan-card__icon::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%232563eb' viewBox='0 0 24 24'%3E%3Cpath d='M4 7V4h3M17 4h3v3M20 17v3h-3M7 20H4v-3M7 9h2v6H7zm4-2h2v10h-2zm4 1h2v8h-2z'/%3E%3C/svg%3E")}
.tenant-onboarding-plan-card--wms .tenant-onboarding-plan-card__icon::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%237c3aed' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l8 4v10l-8 4-8-4V7l8-4zm0 2.2L7 8v8l5 2.5L17 16V8l-5-2.8z'/%3E%3C/svg%3E")}
.tenant-onboarding-plan-card__features{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:14px;color:#475569}
.tenant-onboarding-plan-card__features li{padding-left:22px;position:relative}
.tenant-onboarding-plan-card__features li::before{content:'✓';position:absolute;left:0;color:#2563eb;font-weight:700}
.tenant-onboarding-plan-card--wms .tenant-onboarding-plan-card__features li::before{color:#7c3aed}
.tenant-onboarding-card-brands{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;font-size:11px;font-weight:800;color:#94a3b8;letter-spacing:.04em}
.tenant-onboarding-card-brands span{padding:4px 8px;border:1px solid var(--line);border-radius:6px;background:#f8fafc}
.tenant-onboarding-plan-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.tenant-onboarding-plan-card__tag{font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;background:#dbeafe;color:#1d4ed8}
.tenant-onboarding-plan-card__price{font-size:24px;font-weight:800}
.tenant-onboarding-plan-card__price small{display:block;font-size:13px;font-weight:600;color:#64748b}
.tenant-onboarding-plan-card ul{margin:0;padding-left:18px;color:#475569;display:grid;gap:4px;font-size:14px}
.tenant-onboarding-shop-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(200px,.8fr);gap:20px}
.tenant-onboarding-conn-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.tenant-onboarding-conn-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fafafa}
.tenant-onboarding-status-list{list-style:none;margin:12px 0;padding:0;display:grid;gap:8px}
.tenant-onboarding-status-list li{padding-left:22px;position:relative;color:#64748b}
.tenant-onboarding-status-list li.is-ok{color:#047857;font-weight:600}
.tenant-onboarding-status-list li::before{content:'○';position:absolute;left:0}
.tenant-onboarding-status-list li.is-ok::before{content:'✓'}
.tenant-onboarding-info-box{margin:16px 0;padding:14px 16px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;font-size:14px}
.tenant-onboarding-success-banner{margin:0 0 20px;padding:16px 18px;border-radius:12px;background:#dcfce7;border:1px solid #86efac}
.tenant-onboarding-checklist-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.5fr);gap:20px}
.tenant-onboarding-checklist{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.tenant-onboarding-checklist li{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px}
.tenant-onboarding-checklist li.is-done{background:#f0fdf4;border-color:#bbf7d0}
.tenant-onboarding-checklist__mark{font-weight:800;color:#047857}
.tenant-onboarding-stats{display:grid;gap:12px}
.tenant-onboarding-stats div{padding:14px;border:1px solid var(--line);border-radius:12px;display:grid;gap:4px}
.tenant-onboarding-stats strong{font-size:22px}
.tenant-onboarding-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;align-items:center;margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}
.tenant-onboarding-actions__hint{margin-right:auto}
.tenant-onboarding-help-title{margin:0 0 14px;font-size:15px;font-weight:800}
.tenant-onboarding-help-block{margin-bottom:14px}
.tenant-onboarding-help-block p{margin:4px 0 0;font-size:14px}
.tenant-onboarding-help-callout{margin-top:16px;padding:14px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe}
.tenant-onboarding-step-eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px}
.tenant-onboarding-trial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:8px}
.tenant-onboarding-trial-plan{padding:22px;border:2px solid #2563eb;border-radius:16px;background:linear-gradient(180deg,#eff6ff 0%,#fff 40%)}
.tenant-onboarding-trial--wms .tenant-onboarding-trial-plan{border-color:#7c3aed;background:linear-gradient(180deg,#f5f3ff 0%,#fff 40%)}
.tenant-onboarding-trial-plan__icon{font-size:28px;margin-bottom:8px}
.tenant-onboarding-trial-features{margin:12px 0;padding-left:18px;display:grid;gap:6px;font-size:14px;color:#475569}
.tenant-onboarding-trial-pricing{margin-top:16px;padding:14px 16px;border-radius:12px;background:rgba(37,99,235,.08);display:grid;gap:4px}
.tenant-onboarding-trial--wms .tenant-onboarding-trial-pricing{background:rgba(124,58,237,.1)}
.tenant-onboarding-trial-pricing strong{font-size:22px;font-weight:800}
.tenant-onboarding-trial-payment{padding:22px}
.tenant-onboarding-trial-trust{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;padding:12px 14px;border-radius:10px;background:#ecfdf5;border:1px solid #a7f3d0;font-size:12px;font-weight:700;color:#047857}
.tenant-onboarding-trial--wms .tenant-onboarding-trial-trust{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}
.tenant-onboarding-trial--wms .tenant-onboarding-trial-submit{background:#7c3aed;border-color:#7c3aed}
.tenant-onboarding-trial-footnote{font-size:13px;margin-top:12px}
.tenant-onboarding-scan-conn-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tenant-onboarding-scan-active-pill{margin-top:16px;padding:10px 14px;border-radius:999px;background:#f1f5f9;font-weight:700;text-align:center}
.tenant-onboarding-scan-active-pill.is-ok{background:#dcfce7;color:#047857}
.tenant-onboarding-wms-woo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.tenant-onboarding-wms-woo-card{display:flex;flex-direction:column;gap:0}
.tenant-onboarding-wms-woo-form{display:grid;gap:8px;margin-top:4px}
.tenant-onboarding-wms-woo-form .input{width:100%}
.tenant-onboarding-wms-woo-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}
.tenant-onboarding-wms-woo-ok{padding:12px 14px;border-radius:12px;background:#f0fdf4;border:1px solid #bbf7d0;margin-bottom:4px}
.dashboard-onboarding-hub{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);gap:24px;padding:28px;margin-bottom:20px}
.dashboard-onboarding-hub__stepper ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:16px 0;padding:0}
.dashboard-onboarding-hub__step{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#f1f5f9;font-size:12px;font-weight:700;color:#64748b}
.dashboard-onboarding-hub__step.is-active{background:#2563eb;color:#fff}
.dashboard-onboarding-hub__step.is-done{background:#dcfce7;color:#047857}
.dashboard-onboarding-hub__badge{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:rgba(0,0,0,.08);font-size:11px}
.dashboard-onboarding-hub__foot{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;margin-top:12px}
.dashboard-onboarding-hub-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}
.dashboard-onboarding-hub-card{padding:16px}
.dashboard-onboarding-hub-card.is-current{border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.15)}
.dashboard-onboarding-hub-card.is-done{background:#f8fafc}
.dashboard-onboarding-hub__why{margin:0;padding-left:18px;display:grid;gap:8px;font-size:14px;color:#475569}
.dashboard-scan-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.9fr);gap:20px;padding:28px;margin-bottom:20px}
.dashboard-scan-hero__badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.dashboard-status-pill{padding:6px 12px;border-radius:999px;font-size:12px;font-weight:800}
.dashboard-status-pill.is-scan{background:#dbeafe;color:#1d4ed8}
.dashboard-status-pill.is-wms-locked{background:#f3e8ff;color:#6d28d9}
.dashboard-scan-hero__upgrade{padding:20px;background:linear-gradient(180deg,#f5f3ff 0%,#fff 60%);border:1px solid #ddd6fe}
.dashboard-wms-upgrade-btn{background:#7c3aed;border-color:#7c3aed}
.dashboard-wms-upgrade-btn:hover{background:#6d28d9;border-color:#6d28d9}
.dashboard-wms-locked{padding:24px;margin-bottom:20px}
.dashboard-wms-locked__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(200px,.9fr);gap:12px;margin-top:16px}
.dashboard-wms-locked-card{padding:16px;background:#f8fafc;border:1px solid var(--line);border-radius:12px;opacity:.85}
.dashboard-wms-locked-card__lock{display:block;font-size:20px;margin-bottom:8px}
.dashboard-wms-locked-cta{display:flex;flex-direction:column;justify-content:center;padding:16px;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:12px}
.payment-return{max-width:720px;margin:0 auto;display:grid;gap:20px}
.payment-return__status-icon{display:flex;justify-content:center}
.payment-return__check{display:grid;place-items:center;width:56px;height:56px;border-radius:999px;background:#dcfce7;color:#047857;font-size:28px;font-weight:800}
.payment-return__spinner{width:48px;height:48px;border-radius:999px;border:3px solid #e2e8f0;border-top-color:#2563eb;animation:payment-return-spin .8s linear infinite}
@keyframes payment-return-spin{to{transform:rotate(360deg)}}
.payment-return__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.payment-return__card{padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;gap:6px}
.payment-return__label{font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.payment-return__status-text{color:#b45309}
.payment-return--completed .payment-return__status-text{color:#047857}
.payment-return__panel{padding:24px}
.payment-return__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.payment-return__poll-hint{font-size:13px;margin-top:12px}
.dashboard-conn-alert-wrap{display:grid;gap:20px;margin-bottom:24px}
.dashboard-conn-alert__header-row{display:flex;justify-content:flex-end;margin-bottom:-8px}
.dashboard-conn-alert__status-pill{padding:8px 14px;border-radius:999px;background:#ffedd5;color:#c2410c;font-size:12px;font-weight:800;border:1px solid #fdba74}
.dashboard-conn-alert__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:16px}
.dashboard-conn-alert__hero{border:2px solid #fdba74;background:linear-gradient(135deg,#fff7ed 0%,#fff 55%);padding:0;overflow:hidden}
.dashboard-conn-alert__hero-inner{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:16px;padding:24px 28px}
.dashboard-conn-alert__hero-icon{width:44px;height:44px;border-radius:12px;background:#ffedd5;color:#c2410c;display:grid;place-items:center;font-size:22px;font-weight:800;margin-bottom:12px}
.dashboard-conn-alert__title{margin:0 0 8px;font-size:22px;font-weight:800;letter-spacing:-.02em}
.dashboard-conn-alert__lead{margin:0 0 16px;max-width:52ch}
.dashboard-conn-alert__stepper{margin:0 0 18px}
.dashboard-conn-alert__actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.dashboard-conn-alert__trust{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px;font-size:13px}
.dashboard-conn-alert__trust li::before{content:'✓ ';color:#047857;font-weight:700}
.dashboard-conn-alert__hero-art{display:flex;align-items:center;justify-content:center;gap:8px;font-size:42px;opacity:.9}
.dashboard-conn-alert__woo-badge{padding:10px 14px;border-radius:12px;background:#7c3aed;color:#fff;font-weight:800;font-size:14px}
.dashboard-conn-alert__broken-link{filter:grayscale(.2)}
.dashboard-conn-alert__impact{padding:22px}
.dashboard-conn-alert__impact-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:14px}
.dashboard-conn-alert__impact-list li{display:grid;gap:4px}
.dashboard-conn-alert__metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.dashboard-conn-alert__metric{padding:16px;display:grid;gap:6px}
.dashboard-conn-alert__metric strong{font-size:18px}
.dashboard-conn-alert__metric--warn{color:#c2410c}
.dashboard-conn-alert__restore{padding:22px}
.dashboard-conn-alert__restore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.dashboard-conn-alert__restore-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:#f8fafc;display:grid;gap:8px}
.dashboard-conn-alert__restore-num{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#2563eb;color:#fff;font-size:13px;font-weight:800}
.dashboard-conn-alert__restore-card h4{margin:0;font-size:15px}
.dashboard-conn-alert__affected-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}
.dashboard-conn-alert__affected-card{padding:16px;display:grid;gap:8px;align-content:start}
.dashboard-conn-alert__affected-card h4{margin:0;font-size:14px}
.dashboard-conn-alert__affected-badge{align-self:start;padding:6px 10px;border-radius:999px;background:#ffedd5;color:#c2410c;font-size:11px;font-weight:800;width:fit-content}
.dashboard-conn-alert--slim{border:2px solid #fdba74;background:linear-gradient(135deg,#fff7ed 0%,#fff 70%);margin-bottom:24px}
.dashboard-conn-alert__slim-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px}
.dashboard-conn-alert--slim .dashboard-conn-alert__title{margin:8px 0 6px;font-size:18px;font-weight:800}
.dashboard-conn-alert--slim .dashboard-conn-alert__lead{margin:0;max-width:56ch;font-size:14px}
.connection-recovery-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:14px 18px;border-radius:14px;border:1px solid #fdba74;background:#fff7ed}
.connection-recovery-banner__copy{display:grid;gap:4px;font-size:14px}
.shop-reconnect-hero{margin-bottom:16px;padding:20px 22px;border:2px solid #fdba74;background:linear-gradient(135deg,#fff7ed 0%,#fff 70%)}
.shop-reconnect-hero__pill{display:inline-block;padding:6px 12px;border-radius:999px;background:#ffedd5;color:#c2410c;font-size:12px;font-weight:800;margin-bottom:10px}
.shop-reconnect-hero__lead{margin:0;max-width:60ch}
.shop-reconnect-step{margin-bottom:16px;padding:20px 22px}
.shop-reconnect-step__actions{margin:12px 0 16px}
.tenant-onboarding-stepper__item.is-active .tenant-onboarding-stepper__badge{background:#f97316;border-color:#fdba74;color:#fff}
@media(max-width:1000px){
.tenant-onboarding-layout,.tenant-onboarding-plan-grid,.tenant-onboarding-shop-grid,.tenant-onboarding-conn-grid,.tenant-onboarding-checklist-grid,.tenant-onboarding-trial-grid,.tenant-onboarding-scan-conn-grid,.tenant-onboarding-wms-woo-grid,.dashboard-onboarding-hub,.dashboard-onboarding-hub-cards,.dashboard-scan-hero,.dashboard-wms-locked__grid,.dashboard-conn-alert__grid,.dashboard-conn-alert__hero-inner,.dashboard-conn-alert__metrics,.dashboard-conn-alert__restore-grid,.dashboard-conn-alert__affected-grid,.payment-return__summary{grid-template-columns:1fr}
.tenant-onboarding-stepper--progress ol{flex-wrap:wrap}
.tenant-onboarding-stepper--progress .tenant-onboarding-stepper__item{min-width:90px}
.tenant-onboarding-aside{position:static}
}
