:root {
    color-scheme: dark;
    --bg: #070b14;
    --bg-soft: #0b1020;
    --surface: rgba(17, 24, 39, .78);
    --surface-solid: #111827;
    --surface-raised: #151d2e;
    --border: rgba(148, 163, 184, .16);
    --border-strong: rgba(148, 163, 184, .26);
    --text: #f8fafc;
    --muted: #94a3b8;
    --muted-strong: #cbd5e1;
    --accent: #7c8cff;
    --accent-strong: #6677ff;
    --accent-soft: rgba(124, 140, 255, .13);
    --purple: #a277ff;
    --green: #36c98f;
    --red: #ef6b73;
    --amber: #f2b84b;
    --shadow: 0 30px 80px rgba(0, 0, 0, .32);
    --chart-grid: rgba(148, 163, 184, .12);
    --chart-line: #7c8cff;
    --chart-fill: rgba(124, 140, 255, .22);
    --chart-text: #8390a4;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", Inter, ui-sans-serif, system-ui, sans-serif;
    background:
        radial-gradient(circle at 20% 0%, rgba(81, 92, 213, .10), transparent 30rem),
        linear-gradient(180deg, #070b14 0%, #080d17 100%);
    color: var(--text);
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
}
button, input, select, textarea { font: inherit; }
a { color: inherit; text-decoration: none; }
p { line-height: 1.65; }
.wrap { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 100;
    border-bottom: 1px solid transparent;
    background: rgba(7, 11, 20, .70);
    backdrop-filter: blur(22px) saturate(150%);
    transition: border-color .2s ease, background .2s ease;
}
.site-header.scrolled { border-bottom-color: var(--border); background: rgba(7, 11, 20, .90); }
.nav { height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-size: 20px; font-weight: 780; letter-spacing: -.03em; }
.brand-mark {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex: 0 0 auto;
    box-shadow: 0 8px 22px rgba(0, 91, 173, .24);
}
.brand-mark img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}.navlinks { display: flex; align-items: center; gap: 22px; color: #bac4d4; font-size: 14px; }
.navlinks > a:not(.btn), .link-button { transition: color .18s ease; }
.navlinks > a:not(.btn):hover, .link-button:hover { color: white; }
.nav-form { display: inline-flex; }
.link-button { border: 0; background: none; color: inherit; cursor: pointer; padding: 0; }
.nav-toggle { display: none; width: 40px; height: 40px; border: 1px solid var(--border); border-radius: 11px; background: var(--surface); padding: 10px; }
.nav-toggle span { height: 2px; display: block; background: #dbe4f2; border-radius: 99px; margin: 4px 0; }

.btn {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 17px;
    border: 1px solid var(--border-strong);
    border-radius: 11px;
    background: rgba(20, 27, 42, .88);
    color: white;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.btn:hover { transform: translateY(-1px); border-color: rgba(148,163,184,.44); }
.btn.primary { border-color: #7786ff; background: linear-gradient(180deg, #8190ff, #6675f2); box-shadow: 0 10px 28px rgba(89, 104, 235, .25), inset 0 1px rgba(255,255,255,.25); }
.btn.primary:hover { background: linear-gradient(180deg, #8d9aff, #6d7bf3); box-shadow: 0 14px 32px rgba(89, 104, 235, .34); }
.btn.green { border-color: #39b982; background: #28a66a; }
.btn.danger { background: #b84048; border-color: #d45a62; }
.btn.glass, .glass { background: rgba(255,255,255,.045); border-color: rgba(255,255,255,.12); }
.btn-large { min-height: 50px; padding: 0 21px; border-radius: 13px; }
.btn-block { width: 100%; }
.btn.small { min-height: 32px; padding: 6px 10px; font-size: 12px; border-radius: 8px; }

.hero-premium { position: relative; overflow: hidden; padding: 104px 0 108px; }
.hero-glow { position: absolute; width: 520px; height: 520px; border-radius: 50%; filter: blur(90px); opacity: .16; pointer-events: none; }
.hero-glow-one { background: #6678ff; top: -250px; left: -160px; }
.hero-glow-two { background: #9e61d9; right: -260px; top: 30px; opacity: .10; }
.hero-grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(500px, 1.08fr); gap: 72px; align-items: center; position: relative; }
.hero-copy { max-width: 640px; }
.eyebrow, .section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #abb7ff;
    font-size: 12px;
    font-weight: 760;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.status-dot, .live-badge i { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgba(54,201,143,.10); }
.hero h1 { margin: 20px 0 24px; max-width: 680px; font-size: clamp(52px, 5.8vw, 78px); line-height: .98; letter-spacing: -.055em; font-weight: 780; }
.hero p { margin: 0; max-width: 650px; color: #a9b4c5; font-size: 19px; line-height: 1.65; }
.hero-actions { display: flex; gap: 12px; margin-top: 32px; }
.hero-proof { display: flex; gap: 30px; margin-top: 36px; padding-top: 26px; border-top: 1px solid var(--border); }
.hero-proof div { display: flex; flex-direction: column; gap: 4px; }
.hero-proof strong { font-size: 15px; }
.hero-proof span { color: var(--muted); font-size: 12px; }

.product-shell { border: 1px solid rgba(164,175,220,.22); border-radius: 20px; overflow: hidden; background: rgba(10,15,27,.90); box-shadow: 0 50px 120px rgba(0,0,0,.44), 0 0 0 1px rgba(255,255,255,.02) inset; transform: perspective(1200px) rotateY(-2deg) rotateX(1deg); }
.window-bar { height: 46px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 14px; border-bottom: 1px solid var(--border); background: rgba(255,255,255,.025); color: #8994a8; font-size: 11px; }
.traffic { display: flex; gap: 7px; }
.traffic i { width: 10px; height: 10px; border-radius: 50%; background: #e76f74; }
.traffic i:nth-child(2) { background: #e6b456; }
.traffic i:nth-child(3) { background: #55bd76; }
.window-actions { justify-self: end; display: flex; gap: 8px; }
.window-actions span { display: block; width: 22px; height: 7px; border-radius: 99px; background: #222a39; }
.product-layout { min-height: 390px; display: grid; grid-template-columns: 165px 1fr; }
.product-sidebar { padding: 20px 12px; border-right: 1px solid var(--border); background: rgba(8,12,22,.72); }
.sidebar-title { display: block; padding: 0 10px 10px; color: #657186; font-size: 10px; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.project-item { display: grid; grid-template-columns: 8px 1fr auto; align-items: center; gap: 9px; padding: 9px 10px; border-radius: 8px; color: #8f9aac; font-size: 11px; }
.project-item.active { color: #f1f5ff; background: rgba(124,140,255,.12); }
.project-item b { width: 7px; height: 7px; border-radius: 3px; background: #64748b; }
.project-item.active b { background: #8997ff; }
.project-item em { font-style: normal; color: #657186; }
.product-content { padding: 18px; }
.product-toolbar { display: flex; justify-content: space-between; align-items: center; padding-bottom: 16px; margin-bottom: 14px; border-bottom: 1px solid var(--border); font-size: 12px; }
.product-toolbar span { color: #75d8ad; font-size: 10px; padding: 4px 7px; border: 1px solid rgba(54,201,143,.25); border-radius: 99px; background: rgba(54,201,143,.08); }
.chat-card { margin-top: 10px; padding: 15px; border: 1px solid var(--border); border-radius: 12px; background: rgba(255,255,255,.022); }
.chat-card small { display: block; color: #657186; font-size: 9px; margin-bottom: 7px; }
.chat-card strong { display: block; font-size: 12px; }
.chat-card p { margin: 6px 0 0; color: #7f8ba0; font-size: 10px; line-height: 1.5; }
.intelligence-row { display: flex; justify-content: space-between; margin-top: 12px; padding: 12px 14px; border-radius: 10px; background: linear-gradient(90deg, rgba(124,140,255,.09), rgba(162,119,255,.06)); color: #8390a4; font-size: 10px; }
.intelligence-row strong { color: #bbc4ff; }

.section { padding: 96px 0; }
.section-heading { max-width: 760px; margin: 16px 0 44px; }
.section-heading h2, .workflow-copy h2, .cta-card h2 { margin: 0; font-size: clamp(36px, 4vw, 52px); line-height: 1.06; letter-spacing: -.045em; }
.section-heading p, .workflow-copy > p, .cta-card p { margin: 16px 0 0; color: var(--muted); font-size: 17px; }
.split-heading { display: flex; max-width: none; align-items: flex-end; justify-content: space-between; gap: 30px; }
.split-heading > div { max-width: 730px; }
.live-badge { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; padding: 8px 11px; border: 1px solid rgba(54,201,143,.2); background: rgba(54,201,143,.06); border-radius: 99px; color: #88dcb8; font-size: 11px; font-weight: 700; }

.traction-section { padding: 88px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); background: linear-gradient(180deg, rgba(255,255,255,.015), rgba(255,255,255,.005)); }
.traction-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 20px; }
.traction-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.metric-card, .chart-panel, .bento-card, .pricing-card, .workflow-card, .card, .stat-card { border: 1px solid var(--border); background: linear-gradient(180deg, rgba(21,29,46,.82), rgba(12,18,31,.82)); box-shadow: inset 0 1px rgba(255,255,255,.025); }
.metric-card { min-height: 145px; padding: 20px; border-radius: 16px; display: flex; flex-direction: column; }
.metric-card span { color: #8d99aa; font-size: 12px; }
.metric-card strong { margin: auto 0 2px; font-size: 34px; letter-spacing: -.04em; }
.metric-card small { color: #647186; }
.chart-panel { border-radius: 18px; padding: 22px; min-width: 0; }
.chart-panel-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 12px; }
.chart-panel-head > div { display: flex; flex-direction: column; gap: 5px; }
.chart-panel-head span { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.chart-panel-head strong { font-size: 18px; }
.chart-total { text-transform: none !important; letter-spacing: 0 !important; color: #9ba8b9 !important; }
.canvas-wrap { height: 260px; }
.canvas-wrap canvas { width: 100%; height: 100%; display: block; }

.bento-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.bento-card { min-height: 270px; border-radius: 18px; padding: 24px; position: relative; overflow: hidden; }
.bento-card:after { content: ""; position: absolute; width: 190px; height: 190px; border-radius: 50%; right: -100px; bottom: -110px; background: rgba(124,140,255,.06); filter: blur(12px); }
.bento-wide { grid-column: span 2; }
.feature-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; background: var(--accent-soft); color: #aeb8ff; font-weight: 800; }
.bento-card h3 { margin: 44px 0 10px; font-size: 19px; letter-spacing: -.02em; }
.bento-card p { margin: 0; color: var(--muted); font-size: 14px; }
.sync-demo { margin-top: 28px; display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 12px; color: #cbd5e1; font-size: 11px; }
.sync-demo i { height: 1px; background: linear-gradient(90deg, #5867e9, #9b74ed); }
.sync-demo strong { color: #78d9ae; }
.health-row { display: flex; flex-wrap: wrap; gap: 8px 10px; align-items: center; margin-top: 28px; color: #778397; font-size: 10px; }
.health-row i { width: 6px; height: 6px; border-radius: 50%; background: #45c88e; }
.health-row strong { color: #95d9bc; margin-right: 10px; }

.workflow-section { background: linear-gradient(180deg, rgba(15,22,38,.55), rgba(7,11,20,.2)); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.workflow-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 80px; align-items: center; }
.check-list, .pricing-features { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 12px; }
.check-list li, .pricing-features li { position: relative; padding-left: 25px; color: #c4cedc; font-size: 14px; }
.check-list li:before, .pricing-features li:before { content: "✓"; position: absolute; left: 0; color: #77d6ae; font-weight: 800; }
.workflow-stack { display: grid; gap: 12px; }
.workflow-card { display: grid; grid-template-columns: 44px 1fr; gap: 16px; padding: 20px; border-radius: 15px; }
.workflow-card > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 10px; background: var(--accent-soft); color: #9ca8ff; font-size: 11px; font-weight: 800; }
.workflow-card strong { font-size: 15px; }
.workflow-card p { margin: 5px 0 0; color: var(--muted); font-size: 13px; }

.pricing { display: grid; grid-template-columns: repeat(2, minmax(0, 410px)); justify-content: center; gap: 18px; }
.premium-pricing { align-items: stretch; }
.pricing-card { position: relative; padding: 30px; border-radius: 20px; display: flex; flex-direction: column; }
.pricing-card.featured { border-color: rgba(124,140,255,.48); box-shadow: 0 20px 60px rgba(79,96,213,.12), inset 0 1px rgba(255,255,255,.05); }
.pricing-popular { position: absolute; top: 16px; right: 16px; padding: 5px 8px; border-radius: 99px; background: rgba(124,140,255,.12); color: #abb5ff; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.pricing-name { color: #cfd7e4; font-size: 15px; font-weight: 700; }
.price { margin: 14px 0 12px; font-size: 44px; font-weight: 780; letter-spacing: -.045em; }
.price small { font-size: 14px; color: var(--muted); font-weight: 500; letter-spacing: 0; }
.pricing-card > p { color: var(--muted); font-size: 14px; min-height: 46px; }
.pricing-features { margin-bottom: 28px; }
.pricing-card form, .pricing-card > .btn { margin-top: auto; }

.cta-section { padding: 30px 0 110px; }
.cta-card { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: space-between; gap: 50px; padding: 48px; border: 1px solid rgba(124,140,255,.26); border-radius: 22px; background: linear-gradient(135deg, rgba(74,86,194,.20), rgba(117,78,166,.13) 55%, rgba(17,24,39,.8)); box-shadow: var(--shadow); }
.cta-card:after { content: ""; position: absolute; width: 360px; height: 360px; right: -160px; top: -180px; border-radius: 50%; background: #7c8cff; opacity: .08; filter: blur(40px); }
.cta-card > * { position: relative; z-index: 1; }
.cta-card h2 { margin-top: 10px; font-size: clamp(32px, 3vw, 44px); }

.footer { margin-top: 0; padding: 54px 0 24px; border-top: 1px solid var(--border); color: var(--muted); background: rgba(4,7,13,.62); }
.footer-grid { display: flex; justify-content: space-between; gap: 50px; }
.footer-brand { color: white; }
.footer-grid p { max-width: 420px; margin: 14px 0 0; font-size: 13px; }
.footer-links { display: flex; gap: 22px; flex-wrap: wrap; align-content: flex-start; font-size: 13px; }
.footer-links a:hover { color: white; }
.footer-bottom { margin-top: 38px; padding-top: 20px; border-top: 1px solid var(--border); font-size: 11px; }

/* Shared application UI */
.card { border-radius: 18px; padding: 24px; }
.card h3 { margin-top: 0; }
.muted { color: var(--muted); }
.badge { display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 99px; background: rgba(124,140,255,.12); color: #aeb8ff; font-size: 11px; font-weight: 700; }
.alert { padding: 12px 14px; border-radius: 11px; background: rgba(242,184,75,.10); border: 1px solid rgba(242,184,75,.28); margin-bottom: 18px; }
.alert.success, .success { background: rgba(54,201,143,.10); border-color: rgba(54,201,143,.25); }
.alert.error { border-color: rgba(239,107,115,.35); background: rgba(239,107,115,.09); color: #f6b3b8; }
.field { width: 100%; padding: 11px 12px; border-radius: 10px; border: 1px solid var(--border-strong); background: #0b111d; color: #fff; margin: 7px 0 14px; outline: none; }
.field:focus { border-color: #7382f2; box-shadow: 0 0 0 3px rgba(124,140,255,.10); }
.checkbox { display: flex; gap: 9px; align-items: center; margin: 14px 0; }
.narrow { max-width: 520px; }
.form-card { max-width: 860px; }
.grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.grid.two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.page-head { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-bottom: 22px; }
.page-head h1, .page-head h2 { margin: 0; }
.toolbar { display: flex; gap: 10px; align-items: center; margin-bottom: 18px; }
.toolbar .field { max-width: 420px; margin: 0; }
.table-scroll { overflow: auto; }
.table { width: 100%; border-collapse: collapse; }
.table th, .table td { text-align: left; padding: 11px 10px; border-bottom: 1px solid var(--border); font-size: 13px; }
.table th { color: #748196; font-size: 10px; text-transform: uppercase; letter-spacing: .06em; }
.table tr:last-child td { border-bottom: 0; }
.table code, code { background: #0a101b; border: 1px solid var(--border); padding: 3px 6px; border-radius: 6px; font-size: 11px; }
.table form { display: inline-block; }
.mini-field { width: 64px; padding: 6px; border-radius: 6px; }
.inline-form { display: inline-flex; gap: 5px; align-items: center; margin-right: 5px; }

/* Admin */
.admin-body { background: #070b14; }
.admin-shell { min-height: 100vh; display: grid; grid-template-columns: 244px minmax(0, 1fr); }
.admin-sidebar { position: sticky; top: 0; height: 100vh; padding: 24px 18px; border-right: 1px solid var(--border); background: #090e19; display: flex; flex-direction: column; gap: 30px; }
.admin-sidebar nav { display: flex; flex-direction: column; gap: 5px; }
.admin-sidebar nav a { padding: 10px 11px; border-radius: 9px; color: #8f9bad; font-size: 13px; transition: color .18s ease, background .18s ease; }
.admin-sidebar nav a:hover, .admin-sidebar nav a.active { background: rgba(124,140,255,.09); color: #eef2ff; }
.admin-sidebar form { margin-top: auto; }
.admin-logout { width: 100%; background: rgba(255,255,255,.03); }
.admin-main { padding: 28px 34px 48px; min-width: 0; }
.admin-top { display: flex; justify-content: flex-end; margin-bottom: 22px; }
.admin-user-chip { display: flex; align-items: center; gap: 10px; }
.admin-avatar { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; background: var(--accent-soft); color: #aeb8ff; font-size: 12px; font-weight: 800; }
.admin-user-chip div { display: flex; flex-direction: column; }
.admin-user-chip strong { font-size: 12px; }
.admin-user-chip small { color: #6e7a8d; font-size: 10px; }
.stat-grid, .sales-kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; margin-bottom: 22px; }
.stat-card { padding: 18px; border-radius: 14px; display: flex; flex-direction: column; gap: 7px; }
.stat-card span { color: #8390a4; font-size: 12px; text-transform: capitalize; }
.stat-card strong { font-size: 28px; letter-spacing: -.03em; }
.stat-card small { color: #627084; }
.sales-primary { background: linear-gradient(135deg, rgba(63,79,184,.28), rgba(17,24,39,.92)); border-color: rgba(124,140,255,.34); }
.admin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.sales-grid { align-items: stretch; margin-bottom: 18px; }
.chart-card { min-height: 360px; }
.card-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.card-heading h3, .card-heading p { margin: 0; }
.card-heading p { margin-top: 5px; }
.card-heading > strong { font-size: 20px; }
.revenue-chart { height: 250px; display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); align-items: end; gap: 8px; border-bottom: 1px solid var(--border); padding: 12px 2px 0; }
.revenue-column { height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 8px; min-width: 0; }
.revenue-bar-wrap { height: 205px; width: 100%; display: flex; align-items: flex-end; justify-content: center; }
.revenue-bar { width: min(28px,75%); min-height: 3px; border-radius: 7px 7px 2px 2px; background: linear-gradient(180deg,#8997ff,#5969e5); box-shadow: 0 0 20px rgba(79,124,255,.18); }
.revenue-column span { font-size: 10px; color: #707d91; }
.donut-wrap { display: grid; grid-template-columns: 180px 1fr; gap: 26px; align-items: center; padding: 10px 0 20px; }
.donut { --monthly: 50%; width: 170px; height: 170px; border-radius: 50%; background: conic-gradient(#7c8cff 0 var(--monthly),#a277ff var(--monthly) 100%); display: grid; place-items: center; }
.donut:before { content:""; grid-area:1/1; width:116px; height:116px; border-radius:50%; background:#101725; }
.donut > div { grid-area:1/1; z-index:1; display:flex; flex-direction:column; align-items:center; }
.donut strong { font-size:28px; }
.donut span { font-size:12px; color:#94a3b8; }
.chart-legend { display:flex; flex-direction:column; gap:14px; }
.chart-legend > div { display:grid; grid-template-columns:12px 1fr auto; gap:9px; align-items:center; }
.legend-dot { width:10px; height:10px; border-radius:50%; display:block; }
.legend-dot.monthly { background:#7c8cff; }
.legend-dot.lifetime { background:#a277ff; }
.subheading { margin:4px 0 12px; }
.status-list { display:flex; flex-direction:column; gap:8px; }
.status-list > div { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--border); padding-top:8px; }
.status-pill { display:inline-flex; padding:4px 8px; border-radius:999px; background:#293241; color:#cbd5e1; font-size:11px; }
.status-pill.active { background:rgba(54,201,143,.10); color:#86efac; }
.status-pill.grace_period, .status-pill.past_due { background:rgba(242,184,75,.10); color:#fde68a; }
.status-pill.cancelled, .status-pill.revoked { background:rgba(239,107,115,.10); color:#fca5a5; }
.sales-table-card { margin-bottom:24px; }
.section-title { font-size:20px; margin:28px 0 14px; }

@media (max-width: 1080px) {
    .hero-grid { grid-template-columns: 1fr; gap: 56px; }
    .hero-copy { max-width: 780px; }
    .product-shell { max-width: 760px; transform: none; }
    .traction-grid, .workflow-grid { grid-template-columns: 1fr; gap: 38px; }
    .bento-grid { grid-template-columns: repeat(2,1fr); }
    .sales-kpi-grid, .stat-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 820px) {
    .wrap { width: min(100% - 32px, 1180px); }
    .nav-toggle { display: block; }
    .navlinks { display: none; position: absolute; left: 16px; right: 16px; top: 68px; padding: 16px; flex-direction: column; align-items: stretch; gap: 5px; border: 1px solid var(--border); border-radius: 16px; background: rgba(10,15,26,.97); box-shadow: var(--shadow); }
    .navlinks.open { display: flex; }
    .navlinks a, .navlinks .link-button { padding: 10px; text-align: left; }
    .nav-download { margin-top: 5px; }
    .hero-premium { padding: 72px 0 78px; }
    .hero h1 { font-size: clamp(45px, 11vw, 62px); }
    .hero-proof { gap: 18px; flex-wrap: wrap; }
    .product-layout { grid-template-columns: 125px 1fr; }
    .traction-metrics { grid-template-columns: 1fr 1fr; }
    .split-heading { align-items: flex-start; flex-direction: column; }
    .bento-grid { grid-template-columns: 1fr; }
    .bento-wide { grid-column: auto; }
    .pricing { grid-template-columns: 1fr; }
    .cta-card { align-items: flex-start; flex-direction: column; padding: 34px; }
    .footer-grid { flex-direction: column; }
    .admin-shell { grid-template-columns: 1fr; }
    .admin-sidebar { position: static; height: auto; border-right: 0; border-bottom: 1px solid var(--border); }
    .admin-sidebar nav { flex-direction: row; flex-wrap: wrap; }
    .admin-sidebar form { margin-top: 0; }
    .admin-logout { width: auto; }
    .admin-main { padding: 22px 18px 40px; }
    .admin-grid, .grid.two { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
    .hero-actions { flex-direction: column; align-items: stretch; }
    .hero-actions .btn { width: 100%; }
    .product-sidebar { display: none; }
    .product-layout { grid-template-columns: 1fr; }
    .traction-metrics { grid-template-columns: 1fr; }
    .chart-panel-head { flex-direction: column; }
    .sales-kpi-grid, .stat-grid { grid-template-columns: 1fr; }
    .donut-wrap { grid-template-columns: 1fr; justify-items: center; }
    .revenue-chart { gap: 4px; }
    .revenue-column span { font-size: 8px; }
}

/* Dynamic CMS pages */
.cms-page { position: relative; overflow: hidden; }
.cms-page:before { content: ""; position: absolute; width: 640px; height: 640px; left: 50%; top: -420px; transform: translateX(-50%); border-radius: 50%; background: rgba(101,116,244,.16); filter: blur(95px); pointer-events: none; }
.cms-hero { position: relative; padding: 92px 0 48px; border-bottom: 1px solid var(--border); }
.cms-hero-inner { max-width: 900px; text-align: center; }
.cms-hero h1 { margin: 15px auto 20px; max-width: 850px; font-size: clamp(44px,6vw,70px); line-height: 1.02; letter-spacing: -.05em; }
.cms-hero p { margin: 0 auto; max-width: 760px; color: #aab5c6; font-size: 19px; line-height: 1.7; white-space: pre-line; }
.cms-article-section { position: relative; padding: 58px 0 104px; }
.cms-article { max-width: 900px; margin: 0 auto; padding: clamp(28px,5vw,58px); border: 1px solid var(--border); border-radius: 24px; background: linear-gradient(180deg, rgba(19,27,43,.90), rgba(10,16,28,.92)); box-shadow: 0 28px 90px rgba(0,0,0,.22), inset 0 1px rgba(255,255,255,.025); color: #d9e1ec; font-size: 17px; line-height: 1.78; }
.cms-article > :first-child { margin-top: 0; }
.cms-article > :last-child { margin-bottom: 0; }
.cms-article h2 { margin: 46px 0 14px; font-size: 30px; letter-spacing: -.025em; color: white; }
.cms-article h3 { margin: 34px 0 12px; font-size: 23px; color: #f3f6fb; }
.cms-article h4 { margin: 28px 0 10px; font-size: 19px; color: #eef2f8; }
.cms-article p { margin: 0 0 22px; }
.cms-article ul, .cms-article ol { margin: 0 0 26px; padding-left: 26px; }
.cms-article li { margin: 7px 0; }
.cms-article a { color: #aeb7ff; text-decoration: underline; text-underline-offset: 3px; }
.cms-article blockquote { margin: 32px 0; padding: 18px 22px; border-left: 3px solid var(--accent); border-radius: 0 14px 14px 0; background: rgba(124,140,255,.07); color: #cfd7e5; }
.cms-article figure { margin: 38px -10px; }
.cms-article img, .cms-article video { display: block; width: 100%; max-height: 680px; object-fit: contain; border-radius: 17px; border: 1px solid var(--border); background: #070b14; box-shadow: 0 18px 50px rgba(0,0,0,.24); }
.cms-article figcaption { margin-top: 10px; color: var(--muted); text-align: center; font-size: 12px; }
.cms-article hr { margin: 40px 0; border: 0; border-top: 1px solid var(--border); }

/* Rich page editor */
.rich-editor { margin: 8px 0 18px; }
.rich-editor-toolbar { display: flex; flex-wrap: wrap; gap: 7px; padding: 9px; border: 1px solid var(--border-strong); border-bottom: 0; border-radius: 11px 11px 0 0; background: #0d1421; }
.rich-editor-surface { min-height: 440px; padding: 22px; overflow: auto; border: 1px solid var(--border-strong); border-radius: 0 0 11px 11px; background: #090f1a; color: #e6ecf5; line-height: 1.7; outline: none; }
.rich-editor-surface:focus { border-color: #7382f2; box-shadow: 0 0 0 3px rgba(124,140,255,.10); }
.rich-editor-surface h2 { font-size: 28px; }
.rich-editor-surface img, .rich-editor-surface video { max-width: 100%; max-height: 520px; border-radius: 12px; }
.rich-editor-surface figure { margin: 24px 0; }
.rich-editor-surface figcaption { color: var(--muted); font-size: 12px; text-align: center; }
.rich-editor-status { margin-top: 8px; font-size: 12px; }

/* Pricing manager/public cards */
.pricing-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); max-width: 1180px; margin-inline: auto; align-items: stretch; }
.pricing-grid .pricing-card { min-height: 490px; height: 100%; }
.pricing-feature-space { flex: 1 1 auto; }
.pricing-feature-space .pricing-features { margin-bottom: 28px; }
.pricing-custom-button { margin-top: auto; border-color: color-mix(in srgb, var(--plan-button) 82%, white 18%); background: var(--plan-button); color: var(--plan-button-text); box-shadow: 0 10px 26px color-mix(in srgb, var(--plan-button) 25%, transparent); }
.pricing-custom-button:hover { background: color-mix(in srgb, var(--plan-button) 90%, white 10%); border-color: color-mix(in srgb, var(--plan-button) 74%, white 26%); }
.pricing-heading { margin-left: auto; margin-right: auto; text-align: center; }
.pricing-page .section-kicker { display: flex; justify-content: center; }
.colour-field { display: grid; grid-template-columns: 54px 1fr; gap: 10px; align-items: center; }
.colour-field input[type="color"] { width: 54px; height: 42px; padding: 3px; border: 1px solid var(--border-strong); border-radius: 10px; background: #0b111d; }
.colour-field .field { margin: 7px 0 14px; }

@media(max-width:720px) {
    .cms-hero { padding: 68px 0 36px; }
    .cms-article-section { padding: 34px 0 72px; }
    .cms-article { padding: 26px 22px; border-radius: 18px; font-size: 16px; }
    .cms-article figure { margin: 28px 0; }
    .rich-editor-surface { min-height: 340px; }
    .pricing-grid { grid-template-columns: 1fr; }
}

/* CMS editorial polish — checkpoint 2 */
.cms-content-shell { max-width: 1040px; display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 34px; align-items: start; }
.cms-content-rail { position: sticky; top: 104px; display: flex; flex-direction: column; align-items: center; gap: 14px; padding-top: 10px; color: #657086; }
.cms-content-rail span { width: 1px; height: 120px; background: linear-gradient(180deg, rgba(124,140,255,.7), rgba(124,140,255,.06)); }
.cms-content-rail small { writing-mode: vertical-rl; transform: rotate(180deg); text-transform: uppercase; letter-spacing: .18em; font-size: 9px; font-weight: 800; }
.cms-article { max-width: none; margin: 0; padding: clamp(34px,5vw,64px); border-radius: 26px; background: radial-gradient(circle at 0 0, rgba(124,140,255,.07), transparent 33%), linear-gradient(180deg, rgba(18,26,42,.94), rgba(9,15,26,.96)); }
.cms-article > p:first-child { font-size: 19px; line-height: 1.8; color: #eef3fa; }
.cms-article h2 { padding-top: 12px; }
.cms-article h2:after { content: ""; display: block; width: 42px; height: 2px; margin-top: 12px; border-radius: 99px; background: linear-gradient(90deg, #7888ff, #a77bf2); }
.cms-article blockquote { position: relative; padding: 22px 24px 22px 58px; border-left: 0; border: 1px solid rgba(124,140,255,.18); border-radius: 16px; background: linear-gradient(135deg, rgba(124,140,255,.10), rgba(124,140,255,.035)); }
.cms-article blockquote:before { content: "“"; position: absolute; left: 20px; top: 8px; color: #8e9aff; font-size: 42px; line-height: 1; }
.cms-article figure { margin: 44px -28px; }
.cms-article figure img, .cms-article figure video { border-radius: 20px; }
.cms-video-embed { position: relative; }
.cms-video-embed iframe, .cms-article iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 1px solid var(--border); border-radius: 20px; background: #05080e; box-shadow: 0 18px 50px rgba(0,0,0,.28); }
.cms-article pre { overflow-x: auto; padding: 18px 20px; border: 1px solid var(--border); border-radius: 14px; background: #070c14; color: #dbe6f5; }
.cms-article table { width: 100%; margin: 28px 0; border-collapse: collapse; overflow: hidden; border-radius: 12px; }
.cms-article th, .cms-article td { padding: 12px 14px; border: 1px solid var(--border); text-align: left; }
.cms-article th { background: rgba(124,140,255,.08); color: white; }

.rich-editor-toolbar { position: sticky; top: 0; z-index: 3; align-items: center; padding: 10px; }
.rich-editor-group { display: flex; gap: 6px; align-items: center; padding-right: 8px; margin-right: 2px; border-right: 1px solid var(--border); }
.rich-editor-group-end { margin-left: auto; border-right: 0; padding-right: 0; }
.rich-editor-surface { min-height: 560px; font-size: 16px; }
.rich-editor-surface.is-dragging { border-color: #7888ff; background: rgba(124,140,255,.06); box-shadow: inset 0 0 0 2px rgba(124,140,255,.13); }
.rich-editor-surface blockquote { padding: 14px 18px; border-left: 3px solid #7888ff; background: rgba(124,140,255,.06); }
.rich-editor-surface iframe { width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 12px; }
.rich-editor-footer { display: flex; justify-content: space-between; gap: 20px; margin-top: 9px; font-size: 12px; }
.rich-editor-count { white-space: nowrap; }

/* Predictable pricing card geometry for any number of plans */
.pricing-grid { grid-template-columns: repeat(var(--pricing-columns, 3), minmax(0, 1fr)); grid-auto-rows: 1fr; width: 100%; max-width: 1240px; gap: 18px; }
.pricing-grid .pricing-card { min-width: 0; min-height: 520px; height: 100%; padding: 28px; }
.pricing-card-head { min-height: 168px; }
.pricing-card-head > p { color: var(--muted); font-size: 14px; line-height: 1.65; margin: 0; }
.pricing-feature-space { display: flex; flex: 1 1 auto; }
.pricing-feature-space .pricing-features { width: 100%; align-content: start; }
.pricing-grid .pricing-card form { display: flex; width: 100%; margin-top: auto; }
.pricing-grid .pricing-custom-button { width: 100%; min-height: 46px; }
.enterprise-pricing-card .pricing-card-head { min-height: 168px; }
.pricing-admin-preview { display: flex; align-items: center; gap: 14px; margin: 4px 0 20px; }
.pricing-preview-button { min-width: 190px; pointer-events: none; background: var(--preview-button); color: var(--preview-text); }

@media(max-width: 1180px) {
    .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width: 820px) {
    .cms-content-shell { grid-template-columns: 1fr; }
    .cms-content-rail { display: none; }
    .cms-article figure { margin-inline: 0; }
    .rich-editor-group-end { margin-left: 0; }
}
@media(max-width: 700px) {
    .pricing-grid { grid-template-columns: 1fr; }
    .pricing-grid .pricing-card { min-height: 0; }
    .pricing-card-head { min-height: 0; }
    .rich-editor-surface { min-height: 420px; }
    .rich-editor-footer { flex-direction: column; gap: 4px; }
}

/* Admin content sync */
.sync-admin-grid{align-items:start}.sync-secret-status{display:flex;align-items:center;gap:12px;margin:8px 0 10px}.sync-secret-status code{font-size:.84rem;letter-spacing:.04em}.field-help{font-size:.86rem;margin-top:-6px}.sync-remove{margin-top:9px;margin-bottom:18px}.sync-actions{display:flex;gap:10px;align-items:center;margin-top:18px}.sync-generate-form{margin-top:-42px;margin-left:155px;width:max-content}.sync-datasets{display:grid;gap:10px;margin:14px 0 18px}.sync-dataset{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line,#293249);border-radius:12px;background:rgba(255,255,255,.02);cursor:pointer}.sync-dataset input{margin-top:3px}.sync-dataset span{display:grid;gap:3px}.sync-dataset small{color:var(--muted,#94a3b8)}.sync-options{display:grid;gap:8px;margin:16px 0}.sync-danger{color:#fca5a5}.sync-prune-confirm{display:none;padding:12px;border:1px solid rgba(248,113,113,.32);border-radius:10px;background:rgba(127,29,29,.16)}.sync-prune-confirm.visible{display:flex}.sync-run-button{margin-top:8px}.sync-result-card{margin-top:20px}.sync-result-grid{margin:16px 0}.sync-result-grid .stat-card small{display:block;margin-top:4px;color:var(--muted,#94a3b8)}
@media(max-width:900px){.sync-generate-form{margin:10px 0 0}.sync-admin-grid{grid-template-columns:1fr}}

/* Content Sync — polished admin layout */
.sync-page-head { margin-bottom: 26px; }
.sync-page-head h1 { letter-spacing: -.025em; }
.sync-admin-grid { align-items: stretch; gap: 20px; }
.sync-panel { max-width: none; padding: 26px; border-radius: 18px; overflow: hidden; position: relative; }
.sync-panel::before { content: ""; position: absolute; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.10), transparent); pointer-events: none; }
.sync-panel-heading { display: flex; align-items: flex-start; gap: 13px; margin-bottom: 24px; }
.sync-panel-heading-compact { margin-bottom: 0; }
.sync-panel-heading h2 { margin: 1px 0 4px; font-size: 20px; letter-spacing: -.018em; }
.sync-panel-heading p { margin: 0; font-size: 13px; line-height: 1.5; }
.sync-panel-icon { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; font-size: 18px; font-weight: 900; border: 1px solid transparent; }
.sync-icon-green { color: #65e6a5; background: rgba(54,201,143,.09); border-color: rgba(54,201,143,.14); }
.sync-icon-orange { color: #ff9a45; background: rgba(249,129,47,.09); border-color: rgba(249,129,47,.16); }
.sync-icon-purple { color: #b792ff; background: rgba(151,100,255,.12); border-color: rgba(151,100,255,.18); }

.sync-field-group { display: grid; gap: 4px; }
.sync-field-group > label:first-child { margin: 0; }
.sync-field-description { margin: 0; font-size: 12px; }
.sync-field-group .field { margin: 8px 0 10px; }
.sync-divider { height: 1px; background: var(--border); margin: 20px 0; }
.sync-remove { margin: 2px 0; font-size: 13px; }
.sync-remove input { flex: 0 0 auto; }
.sync-secret-row { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin: 8px 0 2px; }
.sync-secret-status { margin: 0; flex-wrap: wrap; }
.sync-secret-status code { padding: 6px 8px; }
.sync-generate-button { min-height: 38px; white-space: nowrap; border-color: rgba(54,201,143,.24); }
.sync-hidden-form { display: none; }

.sync-security-note { display: flex; gap: 12px; align-items: flex-start; margin-top: 20px; padding: 14px 15px; border: 1px solid rgba(54,201,143,.25); border-radius: 12px; background: linear-gradient(135deg, rgba(54,201,143,.10), rgba(54,201,143,.035)); color: #77e7ad; }
.sync-security-note .sync-note-icon { width: 25px; height: 25px; border-radius: 8px; display: grid; place-items: center; background: rgba(54,201,143,.13); font-weight: 900; }
.sync-security-note div { display: grid; gap: 3px; }
.sync-security-note strong { font-size: 13px; }
.sync-security-note small { color: #9bb6aa; line-height: 1.45; }

.sync-button-row { display: flex; align-items: center; gap: 12px; margin-top: 20px; }
.sync-button-row-end { justify-content: flex-end; }
.sync-button-row .btn { min-width: 132px; }
.sync-save-button { min-width: 150px !important; }

.sync-section-label { margin: 2px 0 10px; font-size: 13px; font-weight: 800; color: #eef2f8; }
.sync-datasets { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0 0 22px; }
.sync-dataset { min-height: 116px; display: grid; grid-template-columns: 22px 1fr; gap: 11px; align-content: start; padding: 15px; border-radius: 13px; transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease; }
.sync-dataset:hover { transform: translateY(-1px); }
.sync-dataset input { width: 17px; height: 17px; margin: 1px 0 0; accent-color: #8d78ff; }
.sync-dataset-copy { display: grid; gap: 5px; }
.sync-dataset-copy strong { font-size: 14px; color: white; }
.sync-dataset-copy small { line-height: 1.4; font-size: 12px; }
.sync-dataset-pages { border-color: rgba(151,100,255,.32); background: linear-gradient(145deg, rgba(151,100,255,.15), rgba(151,100,255,.045)); }
.sync-dataset-pages:has(input:checked) { border-color: rgba(151,100,255,.62); box-shadow: inset 0 0 0 1px rgba(151,100,255,.08); }
.sync-dataset-pricing { border-color: rgba(249,129,47,.30); background: linear-gradient(145deg, rgba(249,129,47,.13), rgba(249,129,47,.035)); }
.sync-dataset-pricing:has(input:checked) { border-color: rgba(249,129,47,.58); box-shadow: inset 0 0 0 1px rgba(249,129,47,.08); }
.sync-dataset-settings { border-color: rgba(54,201,143,.28); background: linear-gradient(145deg, rgba(54,201,143,.13), rgba(54,201,143,.035)); }
.sync-dataset-settings:has(input:checked) { border-color: rgba(54,201,143,.56); box-shadow: inset 0 0 0 1px rgba(54,201,143,.08); }

.sync-options { gap: 3px; margin: 0; }
.sync-option-row { align-items: flex-start; margin: 0; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.045); }
.sync-option-row:last-child { border-bottom: 0; }
.sync-option-row input { width: 17px; height: 17px; margin-top: 2px; flex: 0 0 auto; accent-color: #7d8bff; }
.sync-option-row > span { display: grid; gap: 3px; }
.sync-option-row strong { font-size: 13px; font-weight: 700; color: #e9eef7; }
.sync-option-row small { color: var(--muted); font-size: 12px; line-height: 1.45; }
.sync-option-row.sync-danger strong { color: #f4d0bd; }

.sync-prune-confirm { margin: 13px 0 0; padding: 14px 15px; border: 1px solid rgba(249,129,47,.45); border-radius: 12px; background: linear-gradient(135deg, rgba(249,129,47,.12), rgba(249,129,47,.04)); color: #ffad67; align-items: flex-start; gap: 11px; }
.sync-prune-confirm input { margin-top: 2px; accent-color: #f9812f; }
.sync-prune-confirm span { display: grid; gap: 3px; }
.sync-prune-confirm strong { color: #ff9a45; font-size: 13px; }
.sync-prune-confirm small { color: #b9a89a; line-height: 1.45; }
.sync-run-actions { padding-top: 2px; }
.sync-run-button { min-width: 170px !important; border-color: rgba(249,129,47,.65); background: linear-gradient(90deg, #f68a37, #ef4f78); box-shadow: 0 10px 28px rgba(239,79,120,.16); }
.sync-run-button:hover { background: linear-gradient(90deg, #ff9847, #f45d82); border-color: rgba(255,168,92,.7); }
.sync-run-help { text-align: right; margin: 8px 0 0; }

.sync-result-card { margin-top: 20px; padding: 24px; }
.sync-result-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 18px; }
.sync-remote-label { color: var(--muted); font-size: 12px; white-space: nowrap; }
.sync-result-grid { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); margin: 0 0 20px; gap: 14px; }
.sync-stat-card { min-height: 150px; padding: 18px; overflow: hidden; position: relative; border-width: 1px; }
.sync-stat-card::after { content: ""; position: absolute; inset: auto -35px -55px auto; width: 120px; height: 120px; border-radius: 50%; filter: blur(6px); opacity: .24; pointer-events: none; }
.sync-stat-topline { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.sync-stat-topline span:first-child { font-weight: 800; font-size: 12px; text-transform: none; }
.sync-stat-dot { width: 8px; height: 8px; border-radius: 50%; background: currentColor; box-shadow: 0 0 12px currentColor; }
.sync-stat-card > strong { font-size: 32px; margin-top: 2px; }
.sync-stat-footer { display: flex; gap: 15px; flex-wrap: wrap; margin-top: auto; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.07); font-size: 11px; color: #8793a7; }
.sync-stat-footer strong { font-size: inherit; color: #dfe6ef; }
.sync-stat-pages { color: #b28cff; border-color: rgba(151,100,255,.34); background: linear-gradient(145deg, rgba(91,48,148,.48), rgba(15,20,34,.92)); }
.sync-stat-pages::after { background: #8b5cf6; }
.sync-stat-pricing { color: #ff9c4b; border-color: rgba(249,129,47,.34); background: linear-gradient(145deg, rgba(120,62,22,.48), rgba(15,20,34,.92)); }
.sync-stat-pricing::after { background: #f9812f; }
.sync-stat-settings { color: #61dda0; border-color: rgba(54,201,143,.34); background: linear-gradient(145deg, rgba(21,92,66,.48), rgba(15,20,34,.92)); }
.sync-stat-settings::after { background: #36c98f; }
.sync-stat-media { color: #69a7ff; border-color: rgba(74,144,255,.34); background: linear-gradient(145deg, rgba(28,65,126,.48), rgba(15,20,34,.92)); }
.sync-stat-media::after { background: #4a90ff; }
.sync-result-table-wrap { margin-top: 3px; border: 1px solid var(--border); border-radius: 12px; background: rgba(4,8,15,.22); }
.sync-result-table th, .sync-result-table td { padding: 12px 14px; }
.sync-count-good { color: #62dca0; font-weight: 800; }
.sync-count-delete { color: #f28b92; font-weight: 800; }

@media (max-width: 1180px) {
    .sync-datasets { grid-template-columns: 1fr; }
    .sync-dataset { min-height: 0; }
}
@media (max-width: 900px) {
    .sync-admin-grid { grid-template-columns: 1fr; }
    .sync-panel { min-height: 0; }
    .sync-secret-row { align-items: flex-start; flex-direction: column; }
    .sync-result-head { align-items: flex-start; flex-direction: column; }
    .sync-remote-label { white-space: normal; }
}
@media (max-width: 620px) {
    .sync-panel, .sync-result-card { padding: 18px; }
    .sync-button-row, .sync-button-row-end { justify-content: stretch; flex-direction: column; }
    .sync-button-row .btn { width: 100%; }
    .sync-result-grid { grid-template-columns: 1fr; }
}

/* Blog module — professional editor and public card grid */
.blog-editor-page-head { align-items: flex-end; margin-bottom: 24px; }
.blog-editor-page-head h1 { margin-bottom: 6px; letter-spacing: -.035em; }
.blog-editor-head-actions, .blog-editor-bottom-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.blog-editor-form { display: grid; gap: 20px; }
.blog-editor-section { padding: 26px; border-radius: 18px; background: linear-gradient(155deg, rgba(19,29,46,.96), rgba(10,16,28,.98)); border: 1px solid rgba(134,153,184,.19); box-shadow: 0 18px 50px rgba(0,0,0,.10); }
.blog-editor-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.blog-editor-section-head h2 { margin: 0 0 5px; font-size: 20px; letter-spacing: -.02em; }
.blog-editor-section-head p { margin: 0; font-size: 13px; }
.blog-editor-meta-chip { display: flex; align-items: center; gap: 8px; padding: 8px 11px; border: 1px solid rgba(124,140,255,.18); border-radius: 999px; background: rgba(124,140,255,.06); color: #aab6cb; font-size: 12px; white-space: nowrap; }
.blog-primary-layout { display: grid; grid-template-columns: minmax(220px, 270px) minmax(0, 1fr); gap: 24px; align-items: start; }
.blog-primary-fields { display: grid; gap: 18px; }
.blog-identity-grid, .blog-seo-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }

.blog-editor-form .field { width: auto; padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; color: inherit; outline: 0; }
.blog-editor-form .field > label:first-child { display: block; margin: 0 0 8px; color: #eaf0f8; font-size: 13px; font-weight: 750; }
.blog-editor-form input[type="text"],
.blog-editor-form input[type="datetime-local"],
.blog-editor-form textarea,
.blog-editor-form select { width: 100%; min-height: 44px; padding: 11px 13px; margin: 0; border: 1px solid #2b374b; border-radius: 10px; background: #09111e; color: #eef4fc; font: inherit; line-height: 1.45; outline: none; transition: border-color .16s ease, box-shadow .16s ease, background .16s ease; }
.blog-editor-form textarea { resize: vertical; min-height: 92px; }
.blog-editor-form input::placeholder, .blog-editor-form textarea::placeholder { color: #65728a; }
.blog-editor-form input:focus, .blog-editor-form textarea:focus, .blog-editor-form select:focus { border-color: #7382f2; background: #0a1322; box-shadow: 0 0 0 3px rgba(124,140,255,.10); }
.blog-editor-form input[readonly] { color: #b7c2d3; background: #0b1220; cursor: default; }
.blog-editor-form .field small { display: block; margin-top: 7px; color: #7f8da3; font-size: 11px; line-height: 1.5; }
.blog-editor-form code { padding: 2px 6px; border: 1px solid rgba(124,140,255,.15); border-radius: 6px; color: #b8c2ff; background: rgba(124,140,255,.06); }
.blog-required { color: #ff9362; }
.blog-copy-field { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.blog-copy-field .btn { min-width: 62px; }

.blog-featured-uploader { padding: 14px; border: 1px solid #2a3548; border-radius: 14px; background: rgba(5,10,18,.42); }
.blog-featured-uploader-preview { position: relative; display: grid; place-items: center; min-height: 210px; overflow: hidden; border: 1px dashed #344158; border-radius: 11px; background: linear-gradient(145deg, rgba(124,140,255,.055), rgba(54,201,143,.025)); }
.blog-featured-uploader-preview img { width: 100%; height: 210px; object-fit: cover; display: block; }
.blog-featured-uploader-placeholder { display: grid; place-items: center; gap: 7px; padding: 24px; text-align: center; }
.blog-featured-uploader-placeholder strong { font-size: 14px; color: #e8eef7; }
.blog-featured-uploader-placeholder small { color: #7f8ba0; font-size: 11px; }
.blog-featured-uploader-icon { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 2px; border: 1px solid rgba(124,140,255,.2); border-radius: 13px; background: rgba(124,140,255,.08); color: #99a5ff; font-size: 22px; }
.blog-upload-button { width: 100%; justify-content: center; margin-top: 11px; }
.blog-remove-image { margin: 10px 0 0; font-size: 12px; color: #aab5c7; }
.blog-alt-field { margin-top: 14px !important; }

.blog-publishing-divider { height: 1px; margin: 24px 0; background: rgba(255,255,255,.065); }
.blog-publishing-grid { display: grid; grid-template-columns: 1.35fr .85fr 1fr; gap: 20px; align-items: start; }
.blog-status-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.blog-status-option, .blog-featured-toggle { display: flex; align-items: flex-start; gap: 10px; min-height: 78px; padding: 13px; border: 1px solid #2b374b; border-radius: 11px; background: rgba(5,10,18,.38); cursor: pointer; transition: border-color .16s ease, background .16s ease, transform .16s ease; }
.blog-status-option:hover, .blog-featured-toggle:hover { transform: translateY(-1px); border-color: #43506a; }
.blog-status-option input, .blog-featured-toggle input { width: 17px; height: 17px; margin-top: 2px; accent-color: #36c98f; flex: 0 0 auto; }
.blog-status-option span, .blog-featured-toggle span { display: grid; gap: 4px; }
.blog-status-option strong, .blog-featured-toggle strong { color: #e9eff7; font-size: 13px; }
.blog-status-option small, .blog-featured-toggle small { color: #7d8a9e; font-size: 11px; line-height: 1.45; }
.blog-status-option:has(input:checked) { border-color: rgba(124,140,255,.52); background: rgba(124,140,255,.08); }
.blog-status-option-published:has(input:checked), .blog-featured-toggle:has(input:checked) { border-color: rgba(54,201,143,.52); background: rgba(54,201,143,.075); }
.blog-featured-toggle { min-height: 78px; }
.blog-editor-bottom-actions { padding: 2px 0 8px; }
.blog-editor-bottom-actions .btn { min-width: 130px; justify-content: center; }
.blog-content-section .rich-editor { margin-bottom: 0; }
.blog-content-section .rich-editor-surface { min-height: 520px; }

/* Public blog landing */
.blog-hero { position: relative; overflow: hidden; padding: 82px 0 42px; }
.blog-hero::before { content: ""; position: absolute; width: 520px; height: 360px; left: -120px; top: -180px; border-radius: 50%; background: radial-gradient(circle, rgba(124,140,255,.14), transparent 68%); pointer-events: none; }
.blog-hero::after { content: ""; position: absolute; width: 420px; height: 300px; right: -110px; bottom: -170px; border-radius: 50%; background: radial-gradient(circle, rgba(54,201,143,.08), transparent 70%); pointer-events: none; }
.blog-hero-inner { position: relative; z-index: 1; max-width: 920px; }
.blog-hero .eyebrow { color: #aab4ff; letter-spacing: .16em; }
.blog-hero h1 { max-width: 850px; margin: 15px 0 18px; font-size: clamp(40px, 5.2vw, 68px); line-height: 1.02; letter-spacing: -.048em; }
.blog-hero p { max-width: 880px; margin: 0; color: #a8b3c7; font-size: clamp(17px, 2vw, 21px); line-height: 1.65; }
.blog-index-section { padding: 18px 0 84px; }
.blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 22px; }
.blog-card { display: flex; flex-direction: column; min-width: 0; height: 100%; overflow: hidden; border: 1px solid rgba(130,149,179,.18); border-radius: 20px; background: linear-gradient(155deg, rgba(17,27,43,.96), rgba(8,14,24,.98)); box-shadow: 0 18px 48px rgba(0,0,0,.14); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.blog-card:hover { transform: translateY(-4px); border-color: rgba(124,140,255,.34); box-shadow: 0 24px 62px rgba(0,0,0,.22); }
.blog-card-featured { border-color: rgba(249,129,47,.32); box-shadow: 0 18px 52px rgba(249,129,47,.055); }
.blog-card-media { position: relative; display: block; width: 100%; aspect-ratio: 16 / 10; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.06); background: #080e18; isolation: isolate; }
.blog-card-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; display: block; transition: transform .3s ease; }
.blog-card-media::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to top, rgba(4,8,14,.16), transparent 36%); z-index: 1; }
.blog-card:hover .blog-card-media img { transform: scale(1.025); }
.blog-card-placeholder { width: 100%; height: 100%; display: grid; place-items: center; align-content: center; gap: 9px; background: radial-gradient(circle at 26% 18%, rgba(124,140,255,.19), transparent 38%), radial-gradient(circle at 85% 85%, rgba(54,201,143,.10), transparent 34%), #0a111e; }
.blog-card-placeholder-mark { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 15px; color: white; font-weight: 900; font-size: 24px; background: linear-gradient(135deg, #7b88ff, #6558d9); box-shadow: 0 10px 30px rgba(105,100,255,.25); }
.blog-card-placeholder-word { color: #9ba8bd; font-size: 11px; text-transform: uppercase; letter-spacing: .16em; font-weight: 800; }
.blog-featured-badge { position: absolute; top: 14px; left: 14px; padding: 7px 10px; border: 1px solid rgba(255,161,86,.32); border-radius: 999px; color: #ffc28e; background: rgba(54,30,15,.82); backdrop-filter: blur(10px); font-size: 10px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.blog-card-body { display: flex; flex: 1 1 auto; flex-direction: column; padding: 22px; }
.blog-card-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; margin-bottom: 13px; color: #7f8ba0; font-size: 11px; font-weight: 650; }
.blog-card h2 { margin: 0 0 11px; font-size: 22px; line-height: 1.22; letter-spacing: -.025em; }
.blog-card h2 a { color: #f4f7fb; text-decoration: none; }
.blog-card-body > p { margin: 0; color: #9aa7ba; font-size: 14px; line-height: 1.65; }
.blog-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: auto; padding-top: 22px; }
.blog-card-author { display: flex; align-items: center; gap: 8px; min-width: 0; color: #aeb8c8; font-size: 12px; }
.blog-card-avatar { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 9px; color: #dfe4ff; background: rgba(124,140,255,.12); border: 1px solid rgba(124,140,255,.20); font-size: 11px; font-weight: 850; }
.blog-card-read { flex: 0 0 auto; color: #9faaff; text-decoration: none; font-size: 12px; font-weight: 800; }
.blog-card-read:hover { color: white; }
.blog-public-empty { padding: 64px 26px; border: 1px solid rgba(130,149,179,.17); border-radius: 20px; background: linear-gradient(155deg, rgba(17,27,43,.78), rgba(8,14,24,.9)); text-align: center; }
.blog-public-pagination { margin-top: 32px; }

/* Existing article/detail elements */
.blog-article-hero { padding: 70px 0 38px; }
.blog-article-head { max-width: 900px; }
.blog-back-link { display: inline-flex; margin-bottom: 26px; color: #9aa7bc; text-decoration: none; }
.blog-article-meta { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; color: #8592a7; font-size: 12px; }
.blog-featured-inline { position: static; }
.blog-article-head h1 { max-width: 920px; margin: 18px 0; font-size: clamp(40px,5vw,66px); line-height: 1.04; letter-spacing: -.045em; }
.blog-article-deck { max-width: 820px; color: #9daabd; font-size: 19px; line-height: 1.65; }
.blog-article-author { display: flex; align-items: center; gap: 10px; margin-top: 24px; }
.blog-author-avatar { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: rgba(124,140,255,.12); border: 1px solid rgba(124,140,255,.22); color: #d9dfff; font-weight: 900; }
.blog-article-author div { display: grid; gap: 2px; }
.blog-article-author small { color: #77859b; }
.blog-featured-image-wrap { position: relative; width: min(1160px, calc(100% - 40px)); margin-inline: auto; overflow: hidden; border-radius: 24px; background: #080e18; border: 1px solid rgba(130,149,179,.18); box-shadow: 0 24px 70px rgba(0,0,0,.22); }
.blog-article-featured-image { display: block; width: 100%; height: auto; max-height: 720px; object-fit: contain; object-position: 50% 50%; border-radius: inherit; background: #080e18; }
@media (min-width: 900px) { .blog-article-featured-image { min-height: 360px; } }
.blog-article-section { padding: 48px 0 70px; }
.blog-article-layout { display: grid; grid-template-columns: 70px minmax(0,780px); justify-content: center; gap: 30px; }
.blog-share-rail { position: sticky; top: 100px; align-self: start; display: grid; justify-items: center; gap: 8px; color: #78869a; font-size: 10px; text-transform: uppercase; letter-spacing: .1em; }
.blog-share-rail a, .blog-share-rail button { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #2b3749; border-radius: 10px; background: #0a111d; color: #aab6c7; text-decoration: none; cursor: pointer; }
.blog-related-section { padding: 54px 0 80px; border-top: 1px solid rgba(255,255,255,.055); }
.blog-related-head { display: flex; justify-content: space-between; align-items: end; gap: 18px; margin-bottom: 22px; }
.blog-related-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.blog-mini-card { display: flex; flex-direction: column; min-height: 220px; padding: 20px; border: 1px solid rgba(130,149,179,.17); border-radius: 16px; background: rgba(12,19,31,.8); }
.blog-mini-card h3 { margin: 5px 0 10px; font-size: 18px; }
.blog-mini-card h3 a { color: white; text-decoration: none; }
.blog-mini-card p { color: #8f9caf; font-size: 13px; line-height: 1.6; }
.blog-mini-link { margin-top: auto; color: #9da8ff; text-decoration: none; font-size: 12px; font-weight: 800; }

@media (max-width: 1100px) {
    .blog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .blog-primary-layout { grid-template-columns: 220px minmax(0,1fr); }
    .blog-publishing-grid { grid-template-columns: 1fr 1fr; }
    .blog-featured-field { grid-column: 1 / -1; }
}
@media (max-width: 820px) {
    .blog-editor-page-head, .blog-editor-section-head { align-items: flex-start; flex-direction: column; }
    .blog-primary-layout, .blog-identity-grid, .blog-seo-grid, .blog-publishing-grid { grid-template-columns: 1fr; }
    .blog-featured-uploader { max-width: none; }
    .blog-grid, .blog-related-grid { grid-template-columns: 1fr; }
    .blog-article-layout { grid-template-columns: 1fr; }
    .blog-share-rail { position: static; display: flex; justify-content: flex-start; }
}
@media (max-width: 600px) {
    .blog-editor-section { padding: 18px; border-radius: 15px; }
    .blog-editor-head-actions, .blog-editor-bottom-actions { width: 100%; justify-content: stretch; }
    .blog-editor-head-actions .btn, .blog-editor-bottom-actions .btn { flex: 1 1 auto; justify-content: center; }
    .blog-status-options { grid-template-columns: 1fr; }
    .blog-copy-field { grid-template-columns: 1fr; }
    .blog-card-body { padding: 18px; }
    .blog-card-footer { align-items: flex-start; flex-direction: column; }
    .blog-hero { padding-top: 58px; }
}

/* Blog admin — professional layout override */
.blog-pro-page-head { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:24px; }
.blog-pro-page-head h1 { margin:6px 0 8px; font-size:36px; letter-spacing:-.04em; }
.blog-pro-head-actions,.blog-pro-footer-actions,.blog-admin-row-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.blog-pro-form { display:grid; gap:20px; }
.blog-pro-card,.blog-admin-list-card { border:1px solid rgba(129,149,180,.2); border-radius:20px; background:linear-gradient(155deg,rgba(18,28,45,.97),rgba(8,14,25,.98)); box-shadow:0 20px 60px rgba(0,0,0,.14), inset 0 1px rgba(255,255,255,.025); }
.blog-pro-card { padding:28px; }
.blog-pro-card-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; margin-bottom:24px; }
.blog-pro-card-heading.compact { margin-bottom:20px; }
.blog-pro-card-heading h2 { margin:3px 0 5px; font-size:21px; letter-spacing:-.025em; }
.blog-pro-card-heading p { margin:0; color:#8593a8; font-size:13px; }
.blog-pro-kicker { color:#aeb7ff; font-size:10px; font-weight:850; letter-spacing:.15em; text-transform:uppercase; }
.blog-pro-kicker.green { color:#72dca9; }
.blog-pro-kicker.orange { color:#ffad69; }
.blog-pro-meta-pill { display:inline-flex; align-items:center; gap:9px; padding:8px 12px; border:1px solid rgba(124,140,255,.18); border-radius:999px; background:rgba(124,140,255,.06); color:#a4b0c4; font-size:12px; white-space:nowrap; }
.blog-pro-meta-pill i { width:3px; height:3px; border-radius:50%; background:#60708a; }
.blog-pro-primary-grid { display:grid; grid-template-columns:250px minmax(0,1fr); gap:28px; align-items:start; }
.blog-pro-image-panel { display:grid; gap:12px; }
.blog-pro-image-preview { aspect-ratio:4/3; overflow:hidden; border:1px dashed #34445e; border-radius:14px; background:#09111e; }
.blog-pro-image-preview img { width:100%; height:100%; object-fit:cover; display:block; }
.blog-pro-image-placeholder { height:100%; display:grid; place-items:center; align-content:center; gap:8px; padding:20px; text-align:center; color:#8390a6; background:radial-gradient(circle at 50% 20%,rgba(124,140,255,.12),transparent 52%); }
.blog-pro-image-placeholder > span { display:grid; place-items:center; width:52px; height:52px; border-radius:14px; background:rgba(124,140,255,.09); color:#aeb8ff; font-size:26px; }
.blog-pro-image-placeholder strong { color:#e9eef7; font-size:13px; }
.blog-pro-image-placeholder small { font-size:11px; line-height:1.5; }
.blog-pro-upload-button { width:100%; justify-content:center; }
.blog-pro-check-inline { display:flex; align-items:center; gap:8px; color:#a8b3c4; font-size:12px; cursor:pointer; }
.blog-pro-check-inline input { width:16px; height:16px; accent-color:#7c8cff; }
.blog-pro-main-fields { display:grid; gap:18px; }
.blog-pro-two-col { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.blog-form-control { min-width:0; }
.blog-form-control > label { display:block; margin:0 0 8px; color:#eef3fa; font-size:12px; font-weight:780; }
.blog-form-control > label > span { color:#ff8f72; }
.blog-form-control input[type="text"],
.blog-form-control input[type="url"],
.blog-form-control input[type="password"],
.blog-form-control input[type="datetime-local"],
.blog-form-control textarea,
.blog-form-control select { box-sizing:border-box; display:block; width:100%; min-width:0; min-height:46px; margin:0; padding:11px 13px; border:1px solid #2a3850; border-radius:11px; background:#09111e; color:#eef4fb; font:inherit; font-size:13px; line-height:1.45; outline:none; box-shadow:inset 0 1px rgba(255,255,255,.015); transition:border-color .16s ease,box-shadow .16s ease,background .16s ease; }
.blog-form-control textarea { min-height:104px; resize:vertical; }
.blog-form-control input::placeholder,.blog-form-control textarea::placeholder { color:#5f6d83; opacity:1; }
.blog-form-control input:focus,.blog-form-control textarea:focus,.blog-form-control select:focus { border-color:#7281f2; background:#0a1424; box-shadow:0 0 0 3px rgba(124,140,255,.11); }
.blog-form-control input[readonly] { color:#b7c2d3; background:#0d1523; }
.blog-form-control small { display:block; margin-top:7px; color:#748299; font-size:10.5px; line-height:1.5; }
.blog-form-control code { display:inline-block; max-width:100%; overflow:hidden; text-overflow:ellipsis; vertical-align:middle; padding:2px 6px; border:1px solid rgba(124,140,255,.15); border-radius:6px; background:rgba(124,140,255,.06); color:#b8c2ff; }
.blog-pro-copy-control { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.blog-pro-copy-control .btn { min-width:68px; justify-content:center; }
.blog-pro-alt-control { margin-top:2px; }
.blog-pro-divider { height:1px; margin:26px 0 24px; background:rgba(129,149,180,.14); }
.blog-pro-publish-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:18px; align-items:start; }
.blog-pro-choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.blog-pro-choice,.blog-pro-feature-toggle { box-sizing:border-box; display:flex; gap:10px; min-height:82px; padding:13px; border:1px solid #29384e; border-radius:12px; background:#09111d; cursor:pointer; transition:border-color .16s ease,background .16s ease,transform .16s ease; }
.blog-pro-choice:hover,.blog-pro-feature-toggle:hover { transform:translateY(-1px); border-color:#42516b; }
.blog-pro-choice input,.blog-pro-feature-toggle input { flex:0 0 auto; width:17px; height:17px; margin-top:2px; accent-color:#36c98f; }
.blog-pro-choice span,.blog-pro-feature-toggle span { display:grid; align-content:start; gap:4px; }
.blog-pro-choice strong,.blog-pro-feature-toggle strong { color:#eaf0f8; font-size:12px; }
.blog-pro-choice small,.blog-pro-feature-toggle small { color:#7d8ba0; font-size:10.5px; line-height:1.45; }
.blog-pro-choice:has(input:checked) { border-color:rgba(124,140,255,.5); background:rgba(124,140,255,.075); }
.blog-pro-choice-published:has(input:checked),.blog-pro-feature-toggle:has(input:checked) { border-color:rgba(54,201,143,.48); background:rgba(54,201,143,.07); }
.blog-pro-feature-toggle { width:100%; }
.blog-pro-content-card .rich-editor { margin:0; }
.blog-pro-content-card .rich-editor-surface { min-height:520px; }
.blog-pro-footer-actions { justify-content:flex-end; padding:2px 0 8px; }
.blog-pro-footer-actions .btn { min-width:130px; justify-content:center; }

.blog-admin-list-head { display:flex; align-items:flex-end; justify-content:space-between; gap:22px; margin-bottom:22px; }
.blog-admin-list-head h1 { margin:7px 0 8px; font-size:36px; letter-spacing:-.04em; }
.blog-admin-list-card { overflow:hidden; padding:0; }
.blog-admin-list-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; border-bottom:1px solid rgba(129,149,180,.16); background:rgba(129,149,180,.12); }
.blog-admin-list-summary > div { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:16px 20px; background:#0c1422; }
.blog-admin-list-summary span { color:#78869a; font-size:11px; }
.blog-admin-list-summary strong { font-size:20px; }
.blog-admin-table-wrap { overflow-x:auto; }
.blog-admin-table { width:100%; border-collapse:collapse; }
.blog-admin-table th { padding:13px 18px; border-bottom:1px solid rgba(129,149,180,.15); color:#75839a; font-size:10px; font-weight:850; letter-spacing:.08em; text-align:left; text-transform:uppercase; background:rgba(7,12,21,.35); }
.blog-admin-table td { padding:17px 18px; border-bottom:1px solid rgba(129,149,180,.1); color:#cbd4e0; vertical-align:middle; }
.blog-admin-table tbody tr:hover { background:rgba(124,140,255,.025); }
.blog-admin-article-cell { display:grid; grid-template-columns:44px minmax(220px,1fr); gap:12px; align-items:center; }
.blog-admin-thumb { width:44px; height:44px; overflow:hidden; display:grid; place-items:center; border:1px solid rgba(124,140,255,.18); border-radius:11px; background:linear-gradient(135deg,rgba(124,140,255,.18),rgba(82,69,170,.15)); color:#cbd2ff; font-weight:850; }
.blog-admin-thumb img { width:100%; height:100%; object-fit:cover; }
.blog-admin-article-cell strong { display:block; margin-bottom:5px; color:#f0f4fa; font-size:13px; }
.blog-admin-article-cell code { display:block; max-width:420px; overflow:hidden; color:#718098; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.blog-admin-status-stack { display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.blog-admin-featured-pill { padding:4px 7px; border:1px solid rgba(249,129,47,.24); border-radius:999px; background:rgba(249,129,47,.08); color:#ffb273; font-size:10px; font-weight:750; }
.blog-admin-date { white-space:nowrap; color:#a6b1c1; font-size:12px; }
.blog-admin-actions-col { width:210px; }
.blog-admin-row-actions { justify-content:flex-end; flex-wrap:nowrap; }
.blog-admin-row-actions form { margin:0; }
.blog-admin-pagination { padding:16px 18px; }
.blog-admin-empty { display:grid; justify-items:center; padding:66px 24px; text-align:center; }
.blog-admin-empty-icon { display:grid; place-items:center; width:54px; height:54px; margin-bottom:14px; border-radius:16px; background:rgba(124,140,255,.1); color:#aab5ff; font-size:24px; }
.blog-admin-empty h2 { margin:0 0 8px; }
.blog-admin-empty p { margin:0 0 18px; color:#7f8da2; }

/* Blog dataset colours in Content Sync */
.sync-dataset-blog { border-color:rgba(65,156,255,.28); background:linear-gradient(145deg,rgba(26,70,128,.34),rgba(9,15,26,.86)); }
.sync-dataset-blog .sync-dataset-icon { color:#7db7ff; background:rgba(74,144,255,.12); }
.sync-dataset-blog:has(input:checked) { border-color:rgba(74,144,255,.55); box-shadow:0 0 0 1px rgba(74,144,255,.08), inset 0 0 36px rgba(74,144,255,.06); }
.sync-stat-blog { color:#75b7ff; border-color:rgba(74,144,255,.34); background:linear-gradient(145deg,rgba(28,65,126,.48),rgba(15,20,34,.92)); }
.sync-stat-blog::after { background:#4a90ff; }

@media (max-width:1100px) {
    .blog-pro-primary-grid { grid-template-columns:220px minmax(0,1fr); }
    .blog-pro-publish-grid { grid-template-columns:1fr 1fr; }
    .blog-pro-publish-grid > :last-child { grid-column:1/-1; }
}
@media (max-width:820px) {
    .blog-pro-page-head,.blog-admin-list-head,.blog-pro-card-heading { align-items:flex-start; flex-direction:column; }
    .blog-pro-primary-grid,.blog-pro-two-col,.blog-pro-publish-grid { grid-template-columns:1fr; }
    .blog-pro-publish-grid > :last-child { grid-column:auto; }
    .blog-pro-image-panel { max-width:none; }
    .blog-admin-list-summary { grid-template-columns:1fr; }
}
@media (max-width:600px) {
    .blog-pro-card { padding:18px; border-radius:16px; }
    .blog-pro-head-actions,.blog-pro-footer-actions { width:100%; }
    .blog-pro-head-actions .btn,.blog-pro-footer-actions .btn { flex:1 1 auto; justify-content:center; }
    .blog-pro-choice-grid { grid-template-columns:1fr; }
}
.sync-datasets { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (max-width:1180px) { .sync-datasets { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) { .sync-datasets { grid-template-columns:1fr; } }


/* Blog article hero refinement: image first, title below, author in metadata */
.blog-article-hero { padding: 58px 0 24px; }
.blog-article-head { max-width: 1160px; }
.blog-article-head .blog-back-link { display: inline-flex; margin-bottom: 24px; }
.blog-featured-image-wrap-inline { width: 100%; margin: 0; }
.blog-article-heading-block { max-width: 900px; margin: 34px auto 0; }
.blog-article-heading-block h1 { margin: 0 0 20px; font-size: clamp(40px, 5vw, 66px); line-height: 1.04; letter-spacing: -.045em; }
.blog-article-meta-rich { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; min-height: 34px; color: #8d99ad; }
.blog-article-meta-rich .blog-featured-inline { flex: 0 0 auto; }
.blog-meta-separator { color: #536076; }
.blog-article-author-inline { display: inline-flex; align-items: center; gap: 7px; color: #c8d1df; }
.blog-article-author-inline strong { color: #dfe6f0; font-size: 12px; font-weight: 760; }
.blog-author-avatar-inline { width: 27px; height: 27px; border-radius: 9px; font-size: 10px; }
.blog-article-section { padding-top: 34px; }

@media (max-width: 720px) {
    .blog-article-hero { padding-top: 38px; }
    .blog-article-head .blog-back-link { margin-bottom: 18px; }
    .blog-featured-image-wrap-inline { width: 100%; border-radius: 18px; }
    .blog-article-heading-block { margin-top: 24px; }
    .blog-article-heading-block h1 { margin-bottom: 17px; font-size: clamp(34px, 10vw, 48px); }
    .blog-article-meta-rich { gap: 7px; }
    .blog-meta-author-separator { display: none; }
    .blog-article-author-inline { flex-basis: 100%; margin-top: 3px; }
}


/* Blog frontend ordering/share/card refinements */
.blog-article-layout { display:block; max-width:780px; }
.blog-article-share-inline { display:inline-flex; align-items:center; gap:6px; margin-left:7px; }
.blog-share-label { color:#68758a; font-size:9px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.blog-article-share-inline a,.blog-article-share-inline button { display:grid; place-items:center; width:28px; height:28px; padding:0; border:1px solid #2b3749; border-radius:9px; background:#0a111d; color:#aab6c7; font:inherit; font-size:11px; line-height:1; text-decoration:none; cursor:pointer; }
.blog-article-share-inline a:hover,.blog-article-share-inline button:hover { border-color:#46536a; color:#eef3fa; background:#101a2a; }
.blog-mini-card { min-height:0; padding:0; overflow:hidden; }
.blog-mini-card-media { display:block; aspect-ratio:16/9; overflow:hidden; border-bottom:1px solid rgba(130,149,179,.14); background:#080e18; }
.blog-mini-card-media img { display:block; width:100%; height:100%; object-fit:cover; }
.blog-mini-card-body { display:flex; flex:1 1 auto; flex-direction:column; padding:20px; }
@media (max-width:720px) {
    .blog-article-share-inline { flex-basis:auto; margin-left:0; }
    .blog-share-label { display:none; }
}


/* Thredary Helpdesk checkpoint 1 styles */
.hd-helpdesk-surface .hd-btn,
.hd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border-radius: .85rem;
    padding: .62rem 1.05rem;
    font-size: .875rem;
    line-height: 1.25rem;
    font-weight: 800;
    color: #ffffff !important;
    text-decoration: none !important;
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
    transition: background-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.hd-helpdesk-surface .hd-btn:hover,
.hd-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(0,0,0,.30);
}
.hd-helpdesk-surface .hd-btn-sm,
.hd-btn-sm {
    border-radius: .65rem;
    padding: .42rem .78rem;
    font-size: .8125rem;
}
.hd-helpdesk-surface .hd-btn-blue,
.hd-btn-blue { background: #2563eb !important; }
.hd-helpdesk-surface .hd-btn-blue:hover,
.hd-btn-blue:hover { background: #1d4ed8 !important; }
.hd-helpdesk-surface .hd-btn-green,
.hd-btn-green { background: #16a34a !important; }
.hd-helpdesk-surface .hd-btn-green:hover,
.hd-btn-green:hover { background: #15803d !important; }
.hd-helpdesk-surface .hd-btn-amber,
.hd-btn-amber { background: #f59e0b !important; }
.hd-helpdesk-surface .hd-btn-amber:hover,
.hd-btn-amber:hover { background: #d97706 !important; }
.hd-helpdesk-surface .hd-btn-red,
.hd-btn-red { background: #dc2626 !important; }
.hd-helpdesk-surface .hd-btn-red:hover,
.hd-btn-red:hover { background: #b91c1c !important; }
.hd-helpdesk-surface .hd-btn-violet,
.hd-btn-violet { background: #7c3aed !important; }
.hd-helpdesk-surface .hd-btn-violet:hover,
.hd-btn-violet:hover { background: #6d28d9 !important; }

.hd-helpdesk-surface button[type="submit"],
.hd-helpdesk-surface button[data-flux-button][type="submit"] {
    background: #16a34a !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="reset"],
.hd-helpdesk-surface button[wire\:target^="reset"] {
    background: #f59e0b !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="edit"],
.hd-helpdesk-surface button[wire\:target^="edit"] {
    background: #2563eb !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="delete"],
.hd-helpdesk-surface button[wire\:target^="delete"] {
    background: #dc2626 !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}

.hd-select {
    width: 100%;
    min-height: 3.35rem;
    border-radius: 1rem;
    border: 1px solid #3f3f46 !important;
    background: #09090b !important;
    color: #f4f4f5 !important;
    padding: .78rem 3rem .78rem 1rem;
    font-weight: 800;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 26px rgba(0,0,0,.24);
}
.hd-select:focus {
    border-color: #60a5fa !important;
    box-shadow: 0 0 0 3px rgba(96,165,250,.38), inset 0 1px 0 rgba(255,255,255,.05);
}

.helpdesk-ticket-form,
.helpdesk-ticket-form * {
    -webkit-tap-highlight-color: transparent;
}
.helpdesk-ticket-form input,
.helpdesk-ticket-form textarea,
.helpdesk-ticket-form select,
.helpdesk-ticket-form .select2-container--default .select2-selection--single,
.helpdesk-ticket-form .select2-container--default .select2-selection--multiple,
.helpdesk-ticket-form .select2-container--default .select2-selection__rendered,
.helpdesk-ticket-form .select2-container--default .select2-selection__choice {
    background: #09090b !important;
    background-color: #09090b !important;
    color: #f4f4f5 !important;
    border-color: #3f3f46 !important;
    caret-color: #f4f4f5 !important;
    opacity: 1 !important;
}
.helpdesk-ticket-form input:disabled,
.helpdesk-ticket-form textarea:disabled,
.helpdesk-ticket-form select:disabled,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--single,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--multiple,
.helpdesk-ticket-form [disabled],
.helpdesk-ticket-form [aria-disabled="true"] {
    background: #09090b !important;
    background-color: #09090b !important;
    color: #a1a1aa !important;
    opacity: 1 !important;
}
.helpdesk-ticket-form input:-webkit-autofill,
.helpdesk-ticket-form input:-webkit-autofill:hover,
.helpdesk-ticket-form input:-webkit-autofill:focus,
.helpdesk-ticket-form textarea:-webkit-autofill,
.helpdesk-ticket-form textarea:-webkit-autofill:hover,
.helpdesk-ticket-form textarea:-webkit-autofill:focus,
.helpdesk-ticket-form select:-webkit-autofill,
.helpdesk-ticket-form select:-webkit-autofill:hover,
.helpdesk-ticket-form select:-webkit-autofill:focus {
    -webkit-text-fill-color: #f4f4f5 !important;
    box-shadow: 0 0 0 1000px #09090b inset !important;
    transition: background-color 9999s ease-in-out 0s;
}

.hd-helpdesk-surface .hd-btn,
.hd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border-radius: .85rem;
    padding: .62rem 1.05rem;
    font-size: .875rem;
    line-height: 1.25rem;
    font-weight: 800;
    color: #fff !important;
    text-decoration: none !important;
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
    transition: background-color .15s ease, transform .15s ease, box-shadow .15s ease;
}

.hd-helpdesk-surface .hd-btn:hover,
.hd-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(0,0,0,.30);
}

.hd-btn-sm {
    border-radius: .65rem;
    padding: .42rem .78rem;
    font-size: .8125rem;
}

.hd-btn-blue { background: #2563eb !important; }
.hd-btn-blue:hover { background: #1d4ed8 !important; }

.hd-btn-green { background: #16a34a !important; }
.hd-btn-green:hover { background: #15803d !important; }

.hd-btn-amber { background: #f59e0b !important; }
.hd-btn-amber:hover { background: #d97706 !important; }

.hd-btn-red { background: #dc2626 !important; }
.hd-btn-red:hover { background: #b91c1c !important; }

.hd-btn-violet { background: #7c3aed !important; }
.hd-btn-violet:hover { background: #6d28d9 !important; }

.hd-helpdesk-surface button[type="submit"],
.hd-helpdesk-surface button[data-flux-button][type="submit"] {
    background: #16a34a !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.14) !important;
}

.hd-helpdesk-surface button[wire\:click^="reset"],
.hd-helpdesk-surface button[wire\:target^="reset"] {
    background: #f59e0b !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.14) !important;
}

.hd-helpdesk-surface button[wire\:click^="edit"],
.hd-helpdesk-surface button[wire\:target^="edit"] {
    background: #2563eb !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.14) !important;
}

.hd-helpdesk-surface button[wire\:click^="delete"],
.hd-helpdesk-surface button[wire\:target^="delete"] {
    background: #dc2626 !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.14) !important;
}

.hd-select {
    width: 100%;
    min-height: 3.35rem;
    border-radius: 1rem;
    border: 1px solid #3f3f46 !important;
    background: #09090b !important;
    color: #f4f4f5 !important;
    padding: .78rem 3rem .78rem 1rem;
    font-weight: 800;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 26px rgba(0,0,0,.24);
}

.hd-select:focus {
    border-color: #60a5fa !important;
    box-shadow:
        0 0 0 3px rgba(96,165,250,.38),
        inset 0 1px 0 rgba(255,255,255,.05);
}

.helpdesk-required-star {
    color: #ef4444 !important;
    font-weight: 800;
}

.helpdesk-ticket-form,
.helpdesk-ticket-form * {
    -webkit-tap-highlight-color: transparent;
}

.helpdesk-ticket-form input,
.helpdesk-ticket-form textarea,
.helpdesk-ticket-form select,
.helpdesk-ticket-form .select2-container--default .select2-selection--single,
.helpdesk-ticket-form .select2-container--default .select2-selection--multiple,
.helpdesk-ticket-form .select2-container--default .select2-selection__rendered,
.helpdesk-ticket-form .select2-container--default .select2-selection__choice {
    background: #09090b !important;
    color: #f4f4f5 !important;
    border-color: #3f3f46 !important;
    caret-color: #f4f4f5 !important;
    opacity: 1 !important;
}

.helpdesk-ticket-form input:disabled,
.helpdesk-ticket-form textarea:disabled,
.helpdesk-ticket-form select:disabled,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--single,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--multiple {
    background: #09090b !important;
    color: #a1a1aa !important;
    opacity: 1 !important;
}

.helpdesk-ticket-form input:-webkit-autofill,
.helpdesk-ticket-form input:-webkit-autofill:hover,
.helpdesk-ticket-form input:-webkit-autofill:focus,
.helpdesk-ticket-form textarea:-webkit-autofill,
.helpdesk-ticket-form textarea:-webkit-autofill:hover,
.helpdesk-ticket-form textarea:-webkit-autofill:focus,
.helpdesk-ticket-form select:-webkit-autofill,
.helpdesk-ticket-form select:-webkit-autofill:hover,
.helpdesk-ticket-form select:-webkit-autofill:focus {
    -webkit-text-fill-color: #f4f4f5 !important;
    box-shadow: 0 0 0 1000px #09090b inset !important;
    transition: background-color 9999s ease-in-out 0s;
}

.select2-container--default .select2-selection--single {
    position: relative;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    position: absolute !important;
    top: 50% !important;
    right: 2.25rem !important;
    transform: translateY(-50%);
    color: #f87171 !important;
    font-weight: 800 !important;
    z-index: 5;
}

/* Select2 base */
.helpdesk-ticket-form .select2-container {
    width: 100% !important;
}

.helpdesk-ticket-form .select2-container--default .select2-selection--single,
.helpdesk-ticket-form .select2-container--default .select2-selection--multiple {
    min-height: 3.35rem;
    border-radius: 1rem;
    border: 1px solid #d4d4d8 !important;
    background: #ffffff !important;
    color: #18181b !important;
    box-shadow: 0 10px 22px rgba(24, 24, 27, .08);
}

.helpdesk-ticket-form .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #18181b !important;
    line-height: 3.25rem;
    padding-left: 1rem;
    padding-right: 2.75rem;
    font-weight: 700;
}

.helpdesk-ticket-form .select2-container--default .select2-selection--multiple {
    align-items: center;
    padding: .4rem .65rem;
}

.helpdesk-ticket-form .select2-container--default .select2-selection--multiple .select2-selection__choice {
    border: 1px solid #2563eb !important;
    border-radius: 9999px !important;
    background: #dbeafe !important;
    color: #1e3a8a !important;
    font-weight: 700;
    padding: .2rem .55rem;
}

.helpdesk-ticket-form .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #dc2626 !important;
    margin-right: .35rem;
}

.select2-dropdown {
    border: 1px solid #d4d4d8 !important;
    border-radius: .9rem !important;
    background: #ffffff !important;
    color: #18181b !important;
    overflow: hidden;
    box-shadow: 0 18px 42px rgba(24, 24, 27, .18);
}

.select2-search__field {
    border: 1px solid #d4d4d8 !important;
    border-radius: .7rem !important;
    background: #ffffff !important;
    color: #18181b !important;
}

.select2-container--default .select2-results__option {
    color: #18181b !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: #2563eb !important;
    color: #ffffff !important;
}

.select2-container--default .select2-results__option[aria-selected="true"] {
    background: #e0f2fe !important;
    color: #075985 !important;
}

/* Dark mode */
.dark .helpdesk-ticket-form .select2-container--default .select2-selection--single,
.dark .helpdesk-ticket-form .select2-container--default .select2-selection--multiple {
    border-color: #3f3f46 !important;
    background: #09090b !important;
    color: #f4f4f5 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 26px rgba(0,0,0,.24);
}

.dark .helpdesk-ticket-form .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #f4f4f5 !important;
}

.dark .helpdesk-ticket-form .select2-container--default .select2-selection--multiple .select2-selection__choice {
    border-color: #60a5fa !important;
    background: #1d4ed8 !important;
    color: #ffffff !important;
}

.dark .select2-dropdown {
    border-color: #3f3f46 !important;
    background: #18181b !important;
    color: #f4f4f5 !important;
    box-shadow: 0 18px 42px rgba(0,0,0,.55);
}

.dark .select2-search__field {
    border-color: #3f3f46 !important;
    background: #09090b !important;
    color: #f4f4f5 !important;
}

.dark .select2-container--default .select2-results__option {
    color: #f4f4f5 !important;
}

.dark .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: #2563eb !important;
    color: #ffffff !important;
}

.dark .select2-container--default .select2-results__option[aria-selected="true"] {
    background: #27272a !important;
    color: #ffffff !important;
}

.select2-container--default .select2-results__option {
    background: rgb(9 9 11);
    color: rgb(244 244 245);
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background: rgb(37 99 235) !important;
    color: rgb(255 255 255) !important;
}

.select2-container--default .select2-results__option[aria-selected="true"],
.select2-container--default .select2-results__option--selected {
    background: rgb(30 64 175) !important;
    color: rgb(255 255 255) !important;
}

.select2-dropdown {
    border-color: rgb(63 63 70) !important;
    background: rgb(9 9 11) !important;
}

.select2-container--default .select2-selection--single {
    border: 1px solid rgb(63 63 70) !important;
    background: rgb(9 9 11) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: rgb(244 244 245) !important;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: rgb(113 113 122) !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: rgb(161 161 170) transparent transparent transparent !important;
}

.select2-container--default.select2-container--open .select2-selection--single {
    border-color: rgb(59 130 246) !important;
    box-shadow: 0 0 0 2px rgb(59 130 246 / 0.35);
}

.select2-container--default .select2-selection--multiple {
    border: 1px solid rgb(63 63 70) !important;
    background: rgb(9 9 11) !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    border: 1px solid rgb(59 130 246 / 0.45) !important;
    background: rgb(30 64 175 / 0.35) !important;
    color: rgb(219 234 254) !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: rgb(191 219 254) !important;
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    border-radius: 0.75rem !important;
}

.select2-dropdown {
    overflow: hidden;
    border-radius: 0.75rem !important;
}

.select2-container--open .select2-dropdown--below {
    margin-top: 0.35rem;
    border-radius: 0.75rem !important;
}

.select2-container--open .select2-dropdown--above {
    margin-bottom: 0.35rem;
    border-radius: 0.75rem !important;
}

.select2-container--default .select2-selection--single {
    position: relative;
    padding-right: 3.5rem;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-right: 3.5rem;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    position: absolute;
    right: 2rem;
    top: 50%;
    z-index: 3;
    margin: 0;
    transform: translateY(-50%);
    color: rgb(161 161 170);
    font-size: 1rem;
    line-height: 1;
}

.select2-container--default .select2-selection--single .select2-selection__clear:hover {
    color: rgb(248 113 113);
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    right: 0.75rem;
}

.select2-container--default .select2-selection--single {
    position: relative !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0.75rem !important;
    padding-right: 4.25rem !important;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    position: absolute !important;
    right: 2.35rem !important;
    top: 50% !important;
    float: none !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
}

.select2-container--default .select2-selection--single .select2-selection__clear span {
    color: rgb(161 161 170) !important;
    font-size: 1.1rem !important;
    line-height: 1 !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    right: 0.75rem !important;
}

.select2-container--default .select2-selection--single {
    display: flex !important;
    align-items: center !important;
    position: relative !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    flex: 1 1 auto !important;
    width: 100% !important;
    padding-right: 4.5rem !important;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    position: absolute !important;
    right: 2.25rem !important;
    top: 50% !important;
    z-index: 20 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
    color: rgb(161 161 170) !important;
    cursor: pointer !important;
}

.select2-container--default .select2-selection--single .select2-selection__clear:hover {
    color: rgb(248 113 113) !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    position: absolute !important;
    right: 0.75rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Helpdesk Flatpickr date picker */
.flatpickr-calendar {
    border: 1px solid rgb(63 63 70);
    background: rgb(24 24 27);
    color: rgb(244 244 245);
    box-shadow: 0 20px 45px rgb(0 0 0 / 0.35);
}

.flatpickr-calendar.arrowTop::before,
.flatpickr-calendar.arrowTop::after,
.flatpickr-calendar.arrowBottom::before,
.flatpickr-calendar.arrowBottom::after {
    border-bottom-color: rgb(24 24 27);
    border-top-color: rgb(24 24 27);
}

.flatpickr-months,
.flatpickr-months .flatpickr-month,
.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
    background: rgb(24 24 27);
    color: rgb(244 244 245);
}

.flatpickr-weekday,
span.flatpickr-weekday {
    color: rgb(161 161 170);
}

.flatpickr-day {
    color: rgb(228 228 231);
}

.flatpickr-day:hover,
.flatpickr-day:focus {
    border-color: rgb(59 130 246);
    background: rgb(39 39 42);
    color: rgb(255 255 255);
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    border-color: rgb(37 99 235);
    background: rgb(37 99 235);
    color: rgb(255 255 255);
}

.flatpickr-day.today {
    border-color: rgb(34 197 94);
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
    color: rgb(113 113 122);
}
.hd-helpdesk-surface .hd-btn,
.hd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border-radius: .85rem;
    padding: .62rem 1.05rem;
    font-size: .875rem;
    line-height: 1.25rem;
    font-weight: 800;
    font-size: .95rem;
    color: #ffffff !important;
    text-decoration: none !important;
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
    transition: background-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.hd-helpdesk-surface .hd-btn:hover,
.hd-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(0,0,0,.30);
}
.hd-helpdesk-surface .hd-btn-sm,
.hd-btn-sm {
    border-radius: .65rem;
    padding: .42rem .78rem;
    font-size: .8125rem;
}
.hd-helpdesk-surface .hd-btn-blue,
.hd-btn-blue { background: #2563eb !important; }
.hd-helpdesk-surface .hd-btn-blue:hover,
.hd-btn-blue:hover { background: #1d4ed8 !important; }
.hd-helpdesk-surface .hd-btn-green,
.hd-btn-green { background: #16a34a !important; }
.hd-helpdesk-surface .hd-btn-green:hover,
.hd-btn-green:hover { background: #15803d !important; }
.hd-helpdesk-surface .hd-btn-amber,
.hd-btn-amber { background: #f59e0b !important; }
.hd-helpdesk-surface .hd-btn-amber:hover,
.hd-btn-amber:hover { background: #d97706 !important; }
.hd-helpdesk-surface .hd-btn-red,
.hd-btn-red { background: #dc2626 !important; }
.hd-helpdesk-surface .hd-btn-red:hover,
.hd-btn-red:hover { background: #b91c1c !important; }
.hd-helpdesk-surface .hd-btn-violet,
.hd-btn-violet { background: #7c3aed !important; }
.hd-helpdesk-surface .hd-btn-violet:hover,
.hd-btn-violet:hover { background: #6d28d9 !important; }

.hd-helpdesk-surface button[type="submit"],
.hd-helpdesk-surface button[data-flux-button][type="submit"] {
    background: #16a34a !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="reset"],
.hd-helpdesk-surface button[wire\:target^="reset"] {
    background: #f59e0b !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="edit"],
.hd-helpdesk-surface button[wire\:target^="edit"] {
    background: #2563eb !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="delete"],
.hd-helpdesk-surface button[wire\:target^="delete"] {
    background: #dc2626 !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}

.hd-select-wrap {
    position: relative;
    width: 100%;
    max-width: 18rem;
}
.hd-select-wrap::after {
    position: absolute;
    top: 50%;
    right: 1rem;
    width: .55rem;
    height: .55rem;
    content: "";
    pointer-events: none;
    border-right: 2px solid #93c5fd;
    border-bottom: 2px solid #93c5fd;
    transform: translateY(-65%) rotate(45deg);
}
.hd-select {
    width: 100%;
    min-height: 2.75rem;
    appearance: none;
    -webkit-appearance: none;
    border-radius: .9rem;
    border: 1px solid rgba(96, 165, 250, .38) !important;
    background: linear-gradient(135deg, #030712 0%, #111827 54%, #0f172a 100%) !important;
    color: #f8fafc !important;
    padding: .62rem 2.45rem .62rem .9rem;
    font-weight: 800;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 30px rgba(2,6,23,.38);
}
.hd-select option {
    background: #020617 !important;
    color: #f8fafc !important;
}
.hd-select:focus {
    border-color: #60a5fa !important;
    box-shadow: 0 0 0 3px rgba(96,165,250,.38), inset 0 1px 0 rgba(255,255,255,.08), 0 14px 30px rgba(2,6,23,.38);
}
.hd-ticket-board-select-wrap {
    position: relative;
    max-width: 12.5rem;
}
.hd-ticket-board-select-wrap::after {
    position: absolute;
    top: 50%;
    right: .7rem;
    width: .45rem;
    height: .45rem;
    content: "";
    pointer-events: none;
    border-right: 2px solid #86efac;
    border-bottom: 2px solid #86efac;
    transform: translateY(-65%) rotate(45deg);
}
.hd-ticket-board-select {
    width: 100%;
    min-height: 2.35rem;
    appearance: none;
    -webkit-appearance: none;
    border-radius: .85rem;
    border: 1px solid rgba(34,197,94,.35) !important;
    background: linear-gradient(135deg, #052e16 0%, #064e3b 100%) !important;
    color: #ecfdf5 !important;
    padding: .48rem 2rem .48rem .75rem;
    font-size: .75rem;
    font-weight: 800;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 10px 22px rgba(0,0,0,.26);
}
.hd-ticket-board-select option {
    background: #052e16 !important;
    color: #ecfdf5 !important;
}
.hd-ticket-board-select:focus {
    border-color: #86efac !important;
    box-shadow: 0 0 0 3px rgba(34,197,94,.28), inset 0 1px 0 rgba(255,255,255,.08);
}

.helpdesk-ticket-form,
.helpdesk-ticket-form * {
    -webkit-tap-highlight-color: transparent;
}
.helpdesk-ticket-form input,
.helpdesk-ticket-form textarea,
.helpdesk-ticket-form select,
.helpdesk-ticket-form .select2-container--default .select2-selection--single,
.helpdesk-ticket-form .select2-container--default .select2-selection--multiple,
.helpdesk-ticket-form .select2-container--default .select2-selection__rendered,
.helpdesk-ticket-form .select2-container--default .select2-selection__choice {
    background: #09090b !important;
    background-color: #09090b !important;
    color: #f4f4f5 !important;
    border-color: #3f3f46 !important;
    caret-color: #f4f4f5 !important;
    opacity: 1 !important;
}
.helpdesk-ticket-form input:disabled,
.helpdesk-ticket-form textarea:disabled,
.helpdesk-ticket-form select:disabled,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--single,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--multiple,
.helpdesk-ticket-form [disabled],
.helpdesk-ticket-form [aria-disabled="true"] {
    background: #09090b !important;
    background-color: #09090b !important;
    color: #a1a1aa !important;
    opacity: 1 !important;
}
.helpdesk-ticket-form input:-webkit-autofill,
.helpdesk-ticket-form input:-webkit-autofill:hover,
.helpdesk-ticket-form input:-webkit-autofill:focus,
.helpdesk-ticket-form textarea:-webkit-autofill,
.helpdesk-ticket-form textarea:-webkit-autofill:hover,
.helpdesk-ticket-form textarea:-webkit-autofill:focus,
.helpdesk-ticket-form select:-webkit-autofill,
.helpdesk-ticket-form select:-webkit-autofill:hover,
.helpdesk-ticket-form select:-webkit-autofill:focus {
    -webkit-text-fill-color: #f4f4f5 !important;
    box-shadow: 0 0 0 1000px #09090b inset !important;
    transition: background-color 9999s ease-in-out 0s;
}

.hd-helpdesk-surface .hd-btn,
.hd-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border-radius: .85rem;
    padding: .62rem 1.05rem;
    font-size: .875rem;
    line-height: 1.25rem;
    font-weight: 800;
    color: #ffffff !important;
    text-decoration: none !important;
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
    transition: background-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.hd-helpdesk-surface .hd-btn:hover,
.hd-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(0,0,0,.30);
}
.hd-helpdesk-surface .hd-btn-sm,
.hd-btn-sm {
    border-radius: .65rem;
    padding: .42rem .78rem;
    font-size: .8125rem;
}
.hd-helpdesk-surface .hd-btn-blue,
.hd-btn-blue { background: #2563eb !important; }
.hd-helpdesk-surface .hd-btn-blue:hover,
.hd-btn-blue:hover { background: #1d4ed8 !important; }
.hd-helpdesk-surface .hd-btn-green,
.hd-btn-green { background: #16a34a !important; }
.hd-helpdesk-surface .hd-btn-green:hover,
.hd-btn-green:hover { background: #15803d !important; }
.hd-helpdesk-surface .hd-btn-amber,
.hd-btn-amber { background: #f59e0b !important; }
.hd-helpdesk-surface .hd-btn-amber:hover,
.hd-btn-amber:hover { background: #d97706 !important; }
.hd-helpdesk-surface .hd-btn-red,
.hd-btn-red { background: #dc2626 !important; }
.hd-helpdesk-surface .hd-btn-red:hover,
.hd-btn-red:hover { background: #b91c1c !important; }
.hd-helpdesk-surface .hd-btn-violet,
.hd-btn-violet { background: #7c3aed !important; }
.hd-helpdesk-surface .hd-btn-violet:hover,
.hd-btn-violet:hover { background: #6d28d9 !important; }

.hd-helpdesk-surface button[type="submit"],
.hd-helpdesk-surface button[data-flux-button][type="submit"] {
    background: #16a34a !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="reset"],
.hd-helpdesk-surface button[wire\:target^="reset"] {
    background: #f59e0b !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="edit"],
.hd-helpdesk-surface button[wire\:target^="edit"] {
    background: #2563eb !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}
.hd-helpdesk-surface button[wire\:click^="delete"],
.hd-helpdesk-surface button[wire\:target^="delete"] {
    background: #dc2626 !important;
    color: #ffffff !important;
    border-color: rgba(255,255,255,.14) !important;
}

.hd-select {
    width: 100%;
    min-height: 3.35rem;
    border-radius: 1rem;
    border: 1px solid #3f3f46 !important;
    background: #09090b !important;
    color: #f4f4f5 !important;
    padding: .78rem 3rem .78rem 1rem;
    font-weight: 800;
    outline: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 26px rgba(0,0,0,.24);
}
.hd-select:focus {
    border-color: #60a5fa !important;
    box-shadow: 0 0 0 3px rgba(96,165,250,.38), inset 0 1px 0 rgba(255,255,255,.05);
}

.helpdesk-ticket-form,
.helpdesk-ticket-form * {
    -webkit-tap-highlight-color: transparent;
}
.helpdesk-ticket-form input,
.helpdesk-ticket-form textarea,
.helpdesk-ticket-form select,
.helpdesk-ticket-form .select2-container--default .select2-selection--single,
.helpdesk-ticket-form .select2-container--default .select2-selection--multiple,
.helpdesk-ticket-form .select2-container--default .select2-selection__rendered,
.helpdesk-ticket-form .select2-container--default .select2-selection__choice {
    background: #09090b !important;
    background-color: #09090b !important;
    color: #f4f4f5 !important;
    border-color: #3f3f46 !important;
    caret-color: #f4f4f5 !important;
    opacity: 1 !important;
}
.helpdesk-ticket-form input:disabled,
.helpdesk-ticket-form textarea:disabled,
.helpdesk-ticket-form select:disabled,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--single,
.helpdesk-ticket-form .select2-container--disabled .select2-selection--multiple,
.helpdesk-ticket-form [disabled],
.helpdesk-ticket-form [aria-disabled="true"] {
    background: #09090b !important;
    background-color: #09090b !important;
    color: #a1a1aa !important;
    opacity: 1 !important;
}
.helpdesk-ticket-form input:-webkit-autofill,
.helpdesk-ticket-form input:-webkit-autofill:hover,
.helpdesk-ticket-form input:-webkit-autofill:focus,
.helpdesk-ticket-form textarea:-webkit-autofill,
.helpdesk-ticket-form textarea:-webkit-autofill:hover,
.helpdesk-ticket-form textarea:-webkit-autofill:focus,
.helpdesk-ticket-form select:-webkit-autofill,
.helpdesk-ticket-form select:-webkit-autofill:hover,
.helpdesk-ticket-form select:-webkit-autofill:focus {
    -webkit-text-fill-color: #f4f4f5 !important;
    box-shadow: 0 0 0 1000px #09090b inset !important;
    transition: background-color 9999s ease-in-out 0s;
}


/* System status */
.status-page{padding:72px 0 96px}.status-wrap{max-width:920px}.status-hero{display:flex;gap:20px;align-items:flex-start;padding:28px 30px;margin-bottom:22px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(180deg,rgba(21,29,46,.88),rgba(12,18,31,.88))}.status-hero h1{margin:3px 0 8px}.status-hero p{margin:0 0 8px}.status-hero small{color:var(--muted)}.status-overall-icon{width:16px;height:16px;margin-top:9px;border-radius:50%;background:#94a3b8;box-shadow:0 0 0 6px rgba(148,163,184,.1)}.status-operational .status-overall-icon{background:#36c98f;box-shadow:0 0 0 6px rgba(54,201,143,.11)}.status-degraded .status-overall-icon,.status-maintenance .status-overall-icon{background:#f2b84b;box-shadow:0 0 0 6px rgba(242,184,75,.11)}.status-major_outage .status-overall-icon{background:#ef6b73;box-shadow:0 0 0 6px rgba(239,107,115,.11)}.status-group{margin-top:14px;padding:0}.status-group h2{font-size:15px;margin:0;padding:17px 20px;border-bottom:1px solid var(--border)}.status-service-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 20px;border-bottom:1px solid var(--border)}.status-service-row:last-child{border-bottom:0}.status-service-row small{display:block;color:var(--muted);margin-top:4px}.status-service-meta{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.system-status-badge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:750;white-space:nowrap;background:rgba(148,163,184,.1);color:#cbd5e1}.system-status-badge.status-operational{background:rgba(54,201,143,.1);color:#86efac}.system-status-badge.status-degraded,.system-status-badge.status-maintenance{background:rgba(242,184,75,.1);color:#fde68a}.system-status-badge.status-partial_outage,.system-status-badge.status-major_outage{background:rgba(239,107,115,.1);color:#fca5a5}.status-admin-list{display:grid;gap:14px}.status-admin-service{padding:16px;border:1px solid var(--border);border-radius:14px;background:rgba(5,10,18,.22)}.status-admin-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.status-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.status-target{grid-column:span 2}.status-admin-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.status-admin-actions .checkbox{margin:0}.status-last-check{margin:10px 0 0;font-size:12px;word-break:break-word}@media(max-width:800px){.status-admin-grid{grid-template-columns:1fr}.status-target{grid-column:auto}.status-service-row{align-items:flex-start}.status-service-meta{align-items:flex-end;flex-direction:column}}

/* Privacy / cookie consent */
.footer-cookie-link { appearance:none; border:0; background:none; padding:0; color:inherit; font:inherit; cursor:pointer; }
.footer-cookie-link:hover { color:white; }
.cookie-consent[hidden], .cookie-consent [hidden] { display:none !important; }
.cookie-consent { position:fixed; inset:0; z-index:10000; display:flex; align-items:flex-end; justify-content:center; padding:24px; }
.cookie-consent-backdrop { position:absolute; inset:0; background:rgba(2,6,14,.62); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.cookie-consent-panel { position:relative; width:min(100%, 980px); border:1px solid rgba(148,163,184,.22); border-radius:22px; background:rgba(11,16,32,.98); box-shadow:0 30px 80px rgba(0,0,0,.46); color:#f8fafc; overflow:hidden; }
.cookie-consent-summary { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:20px; align-items:center; padding:24px; }
.cookie-consent-brand { align-self:start; }
.cookie-consent-brand .brand-mark { width:44px; height:44px; }
.cookie-consent-copy h2, .cookie-preferences-head h2 { margin:3px 0 8px; font-size:21px; line-height:1.2; }
.cookie-consent-copy p, .cookie-preferences-head p { margin:0; color:#b7c0cf; font-size:14px; line-height:1.55; }
.cookie-consent-copy .cookie-consent-detail { margin-top:8px; font-size:12px; color:#8f9bad; }
.cookie-consent-copy a { color:#cbd7ff; text-decoration:underline; text-underline-offset:2px; }
.cookie-consent-kicker { display:block; color:#91a7ff; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.cookie-consent-actions { display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end; align-items:center; }
.cookie-consent-actions .btn, .cookie-preferences-foot .btn { min-height:42px; white-space:nowrap; }
.cookie-btn-secondary { background:#151d2f; border-color:#35405a; }
.cookie-btn-secondary:hover { background:#1b263c; border-color:#465570; }
.cookie-consent-preferences { padding:24px; }
.cookie-preferences-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; padding-bottom:18px; border-bottom:1px solid rgba(148,163,184,.16); }
.cookie-close { width:38px; height:38px; border-radius:10px; border:1px solid rgba(148,163,184,.22); background:#111827; color:#dbe3ef; font-size:24px; line-height:1; cursor:pointer; }
.cookie-category-list { display:grid; gap:10px; padding:18px 0; }
.cookie-category { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px; border:1px solid rgba(148,163,184,.16); border-radius:14px; background:rgba(17,24,39,.72); }
.cookie-category-copy { display:grid; gap:4px; min-width:0; }
.cookie-category-copy strong { font-size:14px; }
.cookie-category-copy span { color:#98a5b8; font-size:12px; line-height:1.45; }
.cookie-always-on { flex:none; color:#8ee0b0; font-size:12px; font-weight:800; }
.cookie-switch { position:relative; width:44px; height:25px; flex:none; }
.cookie-switch input { position:absolute; opacity:0; width:1px; height:1px; }
.cookie-switch span { position:absolute; inset:0; border-radius:999px; background:#30394a; border:1px solid #495568; transition:.18s ease; cursor:pointer; }
.cookie-switch span::after { content:""; position:absolute; width:19px; height:19px; left:2px; top:2px; border-radius:50%; background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.35); transition:.18s ease; }
.cookie-switch input:checked + span { background:#4f7cff; border-color:#6d91ff; }
.cookie-switch input:checked + span::after { transform:translateX(19px); }
.cookie-switch input:focus-visible + span { outline:3px solid rgba(124,140,255,.35); outline-offset:2px; }
.cookie-preferences-foot { display:flex; justify-content:flex-end; gap:10px; padding-top:4px; }
body.cookie-consent-open { overflow:hidden; }
@media (max-width:800px) {
    .cookie-consent { align-items:flex-end; padding:10px; }
    .cookie-consent-panel { border-radius:18px; max-height:calc(100vh - 20px); overflow:auto; }
    .cookie-consent-summary { grid-template-columns:1fr; gap:14px; padding:20px; }
    .cookie-consent-brand { display:none; }
    .cookie-consent-actions { justify-content:stretch; }
    .cookie-consent-actions .btn { flex:1 1 100%; }
    .cookie-consent-actions [data-cookie-manage] { order:3; }
    .cookie-consent-preferences { padding:20px; }
    .cookie-category { align-items:flex-start; }
    .cookie-preferences-foot { flex-direction:column-reverse; }
    .cookie-preferences-foot .btn { width:100%; }
}

/* Documentation module — scoped to Thredary admin and public documentation UI. */
.doc-page{display:grid;gap:20px}.doc-hero-wrap,.doc-card{border:1px solid #293249;border-radius:16px;background:#101827;overflow:hidden}.doc-hero{padding:24px;background:linear-gradient(135deg,#0c1424 0%,#141c31 55%,#182541 100%)}.doc-hero-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.doc-hero h1{margin:5px 0 6px;font-size:32px;letter-spacing:-.03em}.doc-hero p{margin:0;color:#9eabc0;max-width:760px}.doc-eyebrow{margin:0;color:#8d9aff;text-transform:uppercase;font-size:11px;letter-spacing:.18em;font-weight:800}.doc-actions{display:flex;flex-wrap:wrap;gap:8px}.doc-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 12px;border:1px solid #35425a;border-radius:9px;background:#152036;color:#eef3fb;font:inherit;font-size:13px;font-weight:750;text-decoration:none;cursor:pointer}.doc-button:hover{border-color:#52617c;background:#1a2842}.doc-button.success,.doc-button.primary,.doc-button.register{background:#36c98f;border-color:#36c98f;color:#06130f}.doc-button.category,.doc-button.secondary{background:#7c8cff;border-color:#7c8cff;color:#070b14}.doc-button.warning{background:#d69a35;border-color:#d69a35;color:#140e04}.doc-button.danger{background:#8d2f3d;border-color:#a23d4c;color:#fff}.doc-card-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 18px;border-bottom:1px solid #293249}.doc-card-body{padding:18px}.doc-grid{display:grid;gap:14px}.doc-grid.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.doc-stat{padding:18px}.doc-stat strong{display:block;font-size:30px}.doc-stat span,.doc-muted{color:#8e9bb0}.doc-table{width:100%;border-collapse:collapse}.doc-table th,.doc-table td{padding:12px 10px;text-align:left;border-bottom:1px solid #293249;vertical-align:top}.doc-table th{color:#8491a6;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.doc-link,.doc-table a{color:#aeb7ff;font-weight:700;text-decoration:none}.doc-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#17233b;color:#bac5d8;border:1px solid #31405b;font-size:11px;font-weight:800}.doc-badge.published{background:rgba(54,201,143,.10);color:#78e0b9;border-color:rgba(54,201,143,.28)}.doc-badge.draft{background:rgba(124,140,255,.09);color:#b4bdff;border-color:rgba(124,140,255,.25)}.doc-badge.archived{background:rgba(239,103,116,.09);color:#ffabb3;border-color:rgba(239,103,116,.25)}.doc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.doc-field.full{grid-column:1/-1}.doc-label{display:block;margin-bottom:7px;color:#eaf0f8;font-size:13px;font-weight:750}.doc-input,.doc-select,.doc-textarea{box-sizing:border-box;width:100%;padding:11px 13px;border:1px solid #2b374b;border-radius:10px;background:#09111e;color:#eef4fc;font:inherit;outline:none}.doc-input:focus,.doc-select:focus,.doc-textarea:focus{border-color:#7382f2;box-shadow:0 0 0 3px rgba(124,140,255,.1)}.doc-textarea{min-height:390px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.6}.doc-editor{overflow:hidden;border:1px solid #2b374b;border-radius:12px;background:#09111e}.doc-editor .doc-textarea{border:0;border-radius:0}.doc-editor-toolbar{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border-bottom:1px solid #2b374b;background:#111a2a}.doc-editor-toolbar button{padding:6px 9px;border:1px solid #344158;border-radius:7px;background:#0b1321;color:#e9eef7;font-weight:750;cursor:pointer}.doc-editor-toolbar button:hover{border-color:#7382f2}.editor-help{padding:0 12px 12px}.doc-error{margin-top:5px;color:#ff9ca6;font-size:12px}.doc-alert{padding:12px 14px;border:1px solid rgba(54,201,143,.3);border-radius:10px;background:rgba(54,201,143,.08);color:#9ae8c8}.doc-filter{display:grid;grid-template-columns:1fr 180px 220px auto;gap:10px;margin-bottom:16px}.doc-content{line-height:1.75}.doc-content h1,.doc-content h2,.doc-content h3{line-height:1.2;letter-spacing:-.02em;margin:1.4em 0 .55em}.doc-content h2{padding-bottom:7px;border-bottom:1px solid #293249}.doc-content pre{overflow:auto;padding:14px;border-radius:10px;background:#070c14}.doc-content code{padding:2px 5px;border-radius:5px;background:#172237}.doc-content pre code{padding:0;background:transparent}.doc-content blockquote{margin-left:0;padding-left:14px;border-left:3px solid #7c8cff;color:#9ca9bd}.doc-content table{width:100%;border-collapse:collapse}.doc-content th,.doc-content td{padding:8px;border:1px solid #293249}.doc-attachment-list{display:grid;gap:8px}.doc-attachment-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #293249;border-radius:9px;background:#0c1422}

.docs-hero,.docs-compact-hero{position:relative;overflow:hidden;border-bottom:1px solid rgba(132,153,190,.14);background:radial-gradient(circle at 72% 10%,rgba(124,140,255,.16),transparent 34%),linear-gradient(180deg,#0a101c,#080d17)}.docs-hero-inner{padding-top:94px;padding-bottom:88px;max-width:950px}.docs-hero h1,.docs-compact-hero h1{margin:10px 0 16px;max-width:820px;font-size:clamp(42px,6vw,68px);line-height:1.02;letter-spacing:-.055em}.docs-hero p,.docs-compact-hero p{max-width:760px;margin:0;color:#9caac0;font-size:18px;line-height:1.7}.docs-search{display:flex;gap:10px;max-width:720px;margin-top:30px}.docs-search input{min-width:0;flex:1;padding:14px 16px;border:1px solid #2b374b;border-radius:11px;background:#0b1320;color:#f1f5fb;font:inherit;outline:none}.docs-search input:focus{border-color:#7785f4;box-shadow:0 0 0 3px rgba(124,140,255,.1)}.docs-section{padding:70px 0}.docs-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.docs-section-head h2{margin:7px 0 0;font-size:32px;letter-spacing:-.035em}.docs-categories-head{margin-top:58px}.docs-featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.docs-featured-card,.docs-category-card,.docs-list-card,.docs-search-result{border:1px solid rgba(132,153,190,.18);border-radius:16px;background:linear-gradient(155deg,rgba(18,27,44,.93),rgba(10,16,28,.98));box-shadow:0 18px 46px rgba(0,0,0,.08)}.docs-featured-card{display:block;padding:23px;text-decoration:none;transition:transform .16s ease,border-color .16s ease}.docs-featured-card:hover,.docs-list-card:hover,.docs-search-result:hover{transform:translateY(-2px);border-color:rgba(124,140,255,.46)}.docs-card-kicker{color:#96a2ff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.docs-featured-card h3{margin:10px 0 8px;color:#f4f7fc;font-size:20px}.docs-featured-card p{margin:0 0 18px;color:#94a1b6;line-height:1.6}.docs-card-link{color:#89e2bf;font-weight:750;font-size:13px}.docs-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.docs-category-card{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:24px}.docs-category-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(124,140,255,.25);border-radius:12px;background:rgba(124,140,255,.08);color:#aeb7ff;font-weight:850}.docs-category-copy h3{margin:0 0 6px}.docs-category-copy h3 a{color:#f2f5fa;text-decoration:none}.docs-category-copy p{margin:0 0 7px;color:#909db1;line-height:1.55}.docs-category-copy span{color:#738198;font-size:12px}.docs-category-links{grid-column:2;display:grid;gap:8px;margin:5px 0 0;padding:0;list-style:none}.docs-category-links a{color:#c8d1de;text-decoration:none;font-size:13px}.docs-category-links a:hover{color:#aeb7ff}.docs-category-all{grid-column:2;color:#84dfbb;text-decoration:none;font-size:13px;font-weight:750}.docs-empty{padding:34px;border:1px solid rgba(132,153,190,.18);border-radius:16px;background:#0d1523}.docs-compact-hero .wrap{padding-top:58px;padding-bottom:50px}.docs-compact-hero h1{font-size:clamp(36px,5vw,54px)}.docs-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:24px;color:#718097;font-size:12px}.docs-breadcrumbs a{color:#9aa7bc;text-decoration:none}.docs-list-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:38px;align-items:start}.docs-side-search{position:sticky;top:92px}.docs-search-small{display:grid;margin-top:0}.docs-back-link{display:inline-block;margin-top:16px;color:#95a2b6;text-decoration:none;font-size:13px}.docs-article-list{display:grid;gap:12px}.docs-list-card{display:flex;justify-content:space-between;gap:20px;padding:22px;text-decoration:none}.docs-list-card h2,.docs-search-result h2{margin:7px 0 7px;color:#f0f4fa;font-size:20px}.docs-list-card p,.docs-search-result p{margin:0;color:#929fb3;line-height:1.55}.docs-list-meta{display:flex;flex-wrap:wrap;gap:8px;color:#7e8ca1;font-size:11px}.docs-list-arrow{align-self:center;color:#8391ff;font-size:22px}.docs-pagination{margin-top:18px}.docs-search-results{max-width:900px}.docs-results-count{margin:0 0 16px;color:#8290a5}.docs-search-result{display:block;margin-bottom:12px;padding:22px;text-decoration:none}.docs-article-shell{padding:34px 0 76px}.docs-article-breadcrumbs{margin-bottom:28px}.docs-reader-layout{display:grid;grid-template-columns:250px minmax(0,840px);gap:50px;align-items:start}.docs-reader-nav{position:sticky;top:92px;padding-right:18px;border-right:1px solid rgba(132,153,190,.15)}.docs-reader-category{display:block;margin-bottom:12px;color:#eef2f8;font-weight:800;text-decoration:none}.docs-reader-nav nav{display:grid;gap:3px}.docs-reader-nav nav a{padding:8px 10px;border-radius:7px;color:#8795a9;text-decoration:none;font-size:13px;line-height:1.35}.docs-reader-nav nav a:hover,.docs-reader-nav nav a.active{background:rgba(124,140,255,.08);color:#c9d0ff}.docs-article-header{padding-bottom:28px;border-bottom:1px solid rgba(132,153,190,.15)}.docs-article-header h1{margin:9px 0 12px;font-size:clamp(38px,5vw,56px);line-height:1.05;letter-spacing:-.05em}.docs-article-header>p{max-width:720px;margin:0;color:#9aa7bb;font-size:18px;line-height:1.65}.docs-article-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px;color:#748298;font-size:12px}.docs-prose{padding-top:30px;color:#c8d1de;font-size:16px;line-height:1.78}.docs-prose h1,.docs-prose h2,.docs-prose h3{color:#f3f6fa;line-height:1.2;letter-spacing:-.025em}.docs-prose h2{margin-top:2em;padding-bottom:8px;border-bottom:1px solid rgba(132,153,190,.15);font-size:27px}.docs-prose h3{margin-top:1.7em;font-size:21px}.docs-prose a{color:#aeb7ff}.docs-prose code{padding:2px 5px;border:1px solid #28354a;border-radius:5px;background:#101a2a;color:#d9e2ee;font-size:.92em}.docs-prose pre{overflow:auto;padding:18px;border:1px solid #202c3f;border-radius:12px;background:#070c14;color:#dce5f0}.docs-prose pre code{padding:0;border:0;background:transparent}.docs-prose blockquote{margin-left:0;padding-left:17px;border-left:3px solid #7c8cff;color:#9eabc0}.docs-prose img{max-width:100%;border-radius:12px}.docs-prose table{display:block;overflow-x:auto;width:100%;border-collapse:collapse}.docs-prose th,.docs-prose td{padding:9px 11px;border:1px solid #263248;text-align:left}.docs-downloads{margin-top:36px;padding-top:26px;border-top:1px solid rgba(132,153,190,.15)}.docs-downloads h2{margin:0 0 14px}.docs-download-list{display:grid;gap:8px}.docs-download-list a{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #29364b;border-radius:9px;color:#c9d2df;text-decoration:none;background:#0d1522}.docs-download-list strong{color:#95a1ff}.docs-download-list small{color:#77859a}.docs-prev-next{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px;padding-top:24px;border-top:1px solid rgba(132,153,190,.15)}.docs-prev-next a{display:grid;gap:5px;color:#d9e1ec;text-decoration:none}.docs-prev-next span{color:#748299;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.docs-prev-next .next{text-align:right}
@media(max-width:900px){.doc-hero-row{align-items:flex-start;flex-direction:column}.doc-grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-filter,.doc-form-grid{grid-template-columns:1fr}.doc-table{display:block;overflow-x:auto}.docs-featured-grid{grid-template-columns:1fr}.docs-category-grid{grid-template-columns:1fr}.docs-list-layout,.docs-reader-layout{grid-template-columns:1fr}.docs-side-search,.docs-reader-nav{position:static}.docs-reader-nav{padding:0 0 18px;border-right:0;border-bottom:1px solid rgba(132,153,190,.15)}.docs-reader-nav nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.doc-grid.stats{grid-template-columns:1fr}.docs-hero-inner{padding-top:64px;padding-bottom:60px}.docs-search{display:grid}.docs-category-card{grid-template-columns:auto 1fr;padding:18px}.docs-category-links,.docs-category-all{grid-column:1/-1}.docs-reader-nav nav{grid-template-columns:1fr}.docs-prev-next{grid-template-columns:1fr}.docs-prev-next .next{text-align:left}}

/* CMS-managed professional footer */
.site-footer { margin-top: 0; padding: 64px 0 0; border-top: 1px solid rgba(148,163,184,.14); background: linear-gradient(180deg, rgba(7,11,20,.92), rgba(4,7,13,.99)); color: #97a3b6; }
.site-footer-main { display:grid; grid-template-columns:minmax(280px,1.25fr) minmax(420px,1.75fr); gap:72px; padding-bottom:48px; }
.site-footer-identity { min-width:0; }
.site-footer-description { max-width:440px; margin:16px 0 0; color:#9da8b8; font-size:14px; line-height:1.65; }
.site-footer-company { display:flex; flex-direction:column; align-items:flex-start; gap:5px; margin-top:28px; padding-top:22px; border-top:1px solid rgba(148,163,184,.12); font-size:13px; line-height:1.55; }
.site-footer-company strong { color:#eef2f7; font-size:14px; }
.site-footer-eyebrow { margin-bottom:2px; color:#6f82a0; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.site-footer-company address { max-width:440px; color:#8f9aac; font-style:normal; }
.site-footer-company-meta,.site-footer-contact { display:flex; gap:12px; flex-wrap:wrap; }
.site-footer-company-meta span + span::before { content:'·'; margin-right:12px; color:#4f5b6e; }
.site-footer-contact { margin-top:5px; }
.site-footer-contact a { color:#c7d0dd; }
.site-footer-contact a:hover { color:white; }
.site-footer-socials { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.site-footer-socials a { display:inline-flex; align-items:center; gap:8px; padding:7px 10px 7px 7px; border:1px solid rgba(148,163,184,.14); border-radius:9px; background:rgba(255,255,255,.025); color:#b6c0ce; font-size:12px; transition:.18s ease; }
.site-footer-socials a:hover { color:white; border-color:rgba(148,163,184,.28); background:rgba(255,255,255,.05); transform:translateY(-1px); }
.site-footer-social-mark { display:grid; place-items:center; width:24px; height:24px; border-radius:7px; background:#151d2d; color:#dfe7f2; font-size:10px; font-weight:800; }
.site-footer-nav { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:36px 30px; align-content:start; }
.site-footer-column h2 { margin:3px 0 17px; color:#e8edf5; font-size:12px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.site-footer-column-links { display:flex; flex-direction:column; align-items:flex-start; gap:11px; }
.site-footer-column-links a { color:#8f9aac; font-size:13px; line-height:1.35; }
.site-footer-column-links a:hover { color:white; }
.site-footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:24px; min-height:68px; border-top:1px solid rgba(148,163,184,.12); color:#6f7b8d; font-size:11px; }
.site-footer-legal { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:18px; }
.site-footer-legal a,.site-footer-legal button { color:#7f8b9e; }
.site-footer-legal a:hover,.site-footer-legal button:hover { color:white; }
.footer-admin-card { margin-top:20px; }
.footer-admin-title { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; margin-bottom:16px; }
.footer-admin-title h2 { margin-top:0; margin-bottom:4px; }
.footer-builder { display:grid; gap:16px; }
.footer-builder-section { padding:16px; border:1px solid #293249; border-radius:12px; background:#0d1422; }
.footer-builder-section-head { display:grid; grid-template-columns:auto minmax(180px,1fr) auto auto; align-items:center; gap:10px; margin-bottom:12px; }
.footer-builder-section-head .field,.footer-builder-link .field,.footer-social-row .field { margin:0; }
.drag-handle { color:#637087; font-size:18px; }
.footer-builder-link { display:grid; grid-template-columns:1.1fr 1fr 1.4fr auto auto auto; gap:8px; align-items:center; padding:9px 0; border-top:1px solid rgba(148,163,184,.08); }
.footer-social-row { display:grid; grid-template-columns:.85fr 1fr 1.8fr auto auto; gap:8px; align-items:center; padding:8px 0; }
.footer-toggle-grid { display:flex; flex-wrap:wrap; gap:10px 26px; margin:10px 0 20px; }
@media(max-width:900px){.site-footer-main{grid-template-columns:1fr;gap:42px}.site-footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer-bottom{align-items:flex-start;flex-direction:column;padding-top:20px;padding-bottom:20px}.site-footer-legal{justify-content:flex-start}.footer-builder-link,.footer-social-row{grid-template-columns:1fr}.footer-builder-section-head{grid-template-columns:auto 1fr}.footer-admin-title{flex-direction:column}}
@media(max-width:560px){.site-footer{padding-top:46px}.site-footer-nav{grid-template-columns:1fr 1fr;gap:32px 20px}.site-footer-socials a span:last-child{display:none}.site-footer-socials a{padding:7px}.site-footer-main{padding-bottom:36px}}

/* Professional CMS footer */
.site-footer {
    position: relative;
    margin-top: 0;
    padding: 76px 0 34px;
    overflow: hidden;
    border-top: 1px solid rgba(148, 163, 184, .12);
    background:
        radial-gradient(circle at 78% 100%, rgba(124, 140, 255, .10), transparent 30rem),
        linear-gradient(180deg, #0a0f1b 0%, #070b14 100%);
    color: #94a3b8;
}
.site-footer::before {
    content: '';
    position: absolute;
    inset: 0 0 auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(124,140,255,.28), transparent);
    pointer-events: none;
}
.site-footer-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(148,163,184,.15);
    border-radius: 28px;
    background:
        radial-gradient(circle at 88% 115%, rgba(162,119,255,.15), transparent 25rem),
        linear-gradient(145deg, rgba(22,30,49,.97), rgba(10,15,27,.98));
    box-shadow: 0 30px 75px rgba(0,0,0,.24), inset 0 1px rgba(255,255,255,.035);
}
.site-footer-main {
    position: relative;
    display: grid;
    grid-template-columns: minmax(270px, 1.1fr) minmax(0, 2.4fr);
    gap: clamp(46px, 6vw, 92px);
    padding: clamp(34px, 4vw, 54px);
}
.site-footer-company-column { min-width: 0; }
.footer-brand { color: #fff; }
.footer-brand-mark { width: 38px; height: 38px; border-radius: 11px; }
.site-footer-description {
    max-width: 340px;
    margin: 18px 0 0;
    color: #8f9bac;
    font-size: 14px;
    line-height: 1.72;
}
.site-footer-company {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px solid rgba(148,163,184,.10);
    color: #8f9bac;
    font-size: 13px;
    line-height: 1.55;
}
.site-footer-company strong { color: #f1f5f9; font-size: 14px; font-weight: 720; }
.site-footer-eyebrow {
    color: #aeb8ff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.site-footer-company address,
.site-footer-contact-row {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: start;
    gap: 9px;
    color: #8f9bac;
    font-style: normal;
}
.site-footer-company address i,
.site-footer-contact-row i {
    width: 16px;
    padding-top: 3px;
    color: #aeb8ff;
    text-align: center;
}
.site-footer-contact-row:hover { color: #fff; }
.site-footer-company-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 16px;
    margin-top: 5px;
    color: #6f7c8f;
    font-size: 11px;
}
.site-footer-company-meta span + span::before { content: none; }
.site-footer-nav {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
    gap: 38px clamp(28px, 4vw, 54px);
    align-content: start;
}
.site-footer-column h2 {
    position: relative;
    margin: 4px 0 20px;
    padding-bottom: 12px;
    color: #f1f5f9;
    font-size: 11px;
    font-weight: 820;
    letter-spacing: .095em;
    text-transform: uppercase;
}
.site-footer-column h2::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 26px;
    height: 2px;
    border-radius: 99px;
    background: linear-gradient(90deg, #8290ff, #a277ff);
}
.site-footer-column-links {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 13px;
}
.site-footer-column-links a {
    position: relative;
    color: #8d99aa;
    font-size: 13px;
    line-height: 1.35;
    transition: color .18s ease, transform .18s ease;
}
.site-footer-column-links a:hover { color: #fff; transform: translateX(2px); }
.site-footer-panel {
    position: relative;
    padding: 22px clamp(34px, 4vw, 54px) 24px;
    border-top: 1px solid rgba(148,163,184,.13);
    background: rgba(255,255,255,.018);
}
.site-footer-panel-content { min-width: 0; }
.site-footer-legal {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px 24px;
    min-height: 28px;
}
.site-footer-legal a,
.site-footer-legal button {
    color: #b3bdcc;
    font-size: 12px;
    transition: color .18s ease;
}
.site-footer-legal a:hover,
.site-footer-legal button:hover { color: #fff; }
.site-footer-panel-divider {
    height: 1px;
    margin: 15px 0 17px;
    background: linear-gradient(90deg, rgba(148,163,184,.08), rgba(148,163,184,.18), rgba(148,163,184,.08));
}
.site-footer-panel-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.site-footer-copyright { color: #7f8b9d; font-size: 11px; line-height: 1.5; }
.site-footer-socials {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    margin: 0;
}
.site-footer-socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    border: 1px solid rgba(148,163,184,.16);
    border-radius: 10px;
    background: rgba(255,255,255,.035);
    color: #d7deea;
    font-size: 12px;
    transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
}
.site-footer-socials a i { font-size: 14px; }
.site-footer-socials a:hover {
    transform: translateY(-2px);
    border-color: rgba(152,162,255,.46);
    background: rgba(124,140,255,.13);
    color: #fff;
}

/* Footer CMS social editor */
.footer-social-admin-head {
    display: grid;
    grid-template-columns: .8fr .8fr 1.35fr 1.2fr 1.2fr auto;
    gap: 8px;
    padding: 0 0 8px;
    color: #7e899c;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.footer-social-row {
    display: grid;
    grid-template-columns: .8fr .8fr 1.35fr 1.2fr 1.2fr auto;
    gap: 8px;
    align-items: center;
    padding: 10px 0;
    border-top: 1px solid rgba(148,163,184,.08);
}
.footer-social-options { display: flex; flex-wrap: wrap; gap: 7px 12px; }
.footer-social-options .checkbox { white-space: nowrap; font-size: 11px; }

@media (max-width: 960px) {
    .site-footer { padding-top: 58px; }
    .site-footer-main { grid-template-columns: 1fr; gap: 42px; padding: 40px; }
    .site-footer-description { max-width: 520px; }
    .site-footer-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .site-footer-panel { padding: 22px 40px 24px; }
    .site-footer-legal { justify-content: flex-start; }
    .footer-social-admin-head { display: none; }
    .footer-social-row { grid-template-columns: 1fr 1fr; }
    .footer-social-options { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
    .site-footer { padding: 34px 0 22px; }
    .site-footer-card { border-radius: 22px; }
    .site-footer-main { gap: 34px; padding: 28px 24px 30px; }
    .site-footer-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 26px; }
    .site-footer-panel { padding: 20px 24px 22px; }
    .site-footer-panel-bottom { align-items: flex-start; flex-direction: column; }
    .site-footer-socials { justify-content: flex-start; }
    .site-footer-legal { justify-content: flex-start; gap: 9px 18px; }
    .footer-social-row { grid-template-columns: 1fr; }
}

/* Unified professional footer card */
.site-footer {
    padding: clamp(42px, 6vw, 76px) 0 clamp(28px, 4vw, 48px);
}
.site-footer-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(148,163,184,.16);
    border-radius: 28px;
    background:
        radial-gradient(circle at 88% 110%, rgba(128, 91, 255, .16), transparent 28rem),
        linear-gradient(145deg, rgba(20,29,48,.98), rgba(9,14,25,.99));
    box-shadow: 0 28px 70px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.035);
}
.site-footer-grid {
    display: grid;
    grid-template-columns: minmax(230px, .95fr) minmax(260px, 1.05fr) minmax(360px, 1.7fr);
    gap: clamp(36px, 5vw, 72px);
    padding: clamp(34px, 4vw, 54px);
    align-items: start;
}
.site-footer-card.footer-card-no-nav .site-footer-grid {
    grid-template-columns: minmax(260px, .9fr) minmax(360px, 1.1fr);
    max-width: 900px;
}
.site-footer-brand-column,
.site-footer-company-column { min-width: 0; }
.site-footer-brand-column .site-footer-description {
    max-width: 320px;
    margin-top: 18px;
}
.site-footer-company-column .site-footer-eyebrow {
    display: block;
    margin: 2px 0 16px;
}
.site-footer-company-column .site-footer-company {
    margin: 0;
    padding: 0;
    border: 0;
}
.site-footer-nav {
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 30px clamp(28px, 3vw, 48px);
}
.site-footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px 36px;
    padding: 20px clamp(34px, 4vw, 54px) 22px;
    border-top: 1px solid rgba(148,163,184,.13);
    background: rgba(255,255,255,.018);
}
.site-footer-bottom-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 14px 24px;
}
.site-footer-bottom .site-footer-legal {
    justify-content: flex-end;
    min-height: 0;
}
.site-footer-bottom .site-footer-socials { margin: 0; }
.site-footer-bottom .site-footer-copyright { flex: 0 1 auto; }

@media (max-width: 980px) {
    .site-footer-grid,
    .site-footer-card.footer-card-no-nav .site-footer-grid {
        grid-template-columns: 1fr 1fr;
        max-width: none;
    }
    .site-footer-nav { grid-column: 1 / -1; grid-template-columns: repeat(3,minmax(0,1fr)); }
    .site-footer-bottom { align-items: flex-start; flex-direction: column; }
    .site-footer-bottom-actions { justify-content: flex-start; }
    .site-footer-bottom .site-footer-legal { justify-content: flex-start; }
}
@media (max-width: 640px) {
    .site-footer-card { border-radius: 22px; }
    .site-footer-grid,
    .site-footer-card.footer-card-no-nav .site-footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 28px 24px;
    }
    .site-footer-nav { grid-column: auto; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .site-footer-bottom { padding: 19px 24px 21px; }
    .site-footer-bottom-actions { align-items: flex-start; flex-direction: column; gap: 14px; }
}

/* Content Sync — Documentation and Footer datasets */
.sync-dataset-documents { border-color:rgba(105,167,255,.30); background:linear-gradient(145deg,rgba(35,78,145,.22),rgba(9,15,26,.86)); }
.sync-dataset-documents:has(input:checked) { border-color:rgba(105,167,255,.58); box-shadow:inset 0 0 0 1px rgba(105,167,255,.08); }
.sync-dataset-footer { border-color:rgba(178,140,255,.30); background:linear-gradient(145deg,rgba(83,55,145,.24),rgba(9,15,26,.86)); }
.sync-dataset-footer:has(input:checked) { border-color:rgba(178,140,255,.58); box-shadow:inset 0 0 0 1px rgba(178,140,255,.08); }
.sync-stat-documents { color:#69a7ff; border-color:rgba(105,167,255,.34); background:linear-gradient(145deg,rgba(28,65,126,.48),rgba(15,20,34,.92)); }
.sync-stat-documents::after { background:#69a7ff; }
.sync-stat-footer { color:#b28cff; border-color:rgba(178,140,255,.34); background:linear-gradient(145deg,rgba(82,53,128,.48),rgba(15,20,34,.92)); }
.sync-stat-footer::after { background:#b28cff; }

/* Footer CMS social actions */
.footer-add-social-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    gap: 9px;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid rgba(139, 124, 255, .5);
    border-radius: 11px;
    background: linear-gradient(145deg, rgba(105, 78, 215, .34), rgba(75, 55, 160, .24));
    box-shadow: inset 0 1px rgba(255,255,255,.05), 0 8px 22px rgba(37, 25, 86, .16);
    color: #f4f2ff;
    font: inherit;
    font-size: 13px;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.footer-add-social-btn:hover {
    transform: translateY(-1px);
    border-color: rgba(160, 145, 255, .8);
    background: linear-gradient(145deg, rgba(118, 88, 235, .44), rgba(82, 59, 173, .32));
    box-shadow: inset 0 1px rgba(255,255,255,.07), 0 10px 26px rgba(37, 25, 86, .24);
}
.footer-add-social-btn i { font-size: 12px; }
.footer-social-list:empty::before {
    content: 'No social links yet. Add your first social profile.';
    display: block;
    margin-top: 8px;
    padding: 22px;
    border: 1px dashed rgba(148,163,184,.18);
    border-radius: 12px;
    color: #7f8ba0;
    text-align: center;
    font-size: 13px;
}
.footer-social-savebar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid rgba(148,163,184,.10);
}
.footer-social-savebar p { margin: 0; color: #9aa6b9; font-size: 12px; line-height: 1.5; }
.footer-social-savebar p strong { display: block; color: #dbe2ee; font-weight: 650; }
.footer-social-savebar p span { display: block; margin-top: 2px; }
.footer-social-save-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex: 0 0 auto;
    white-space: nowrap;
}
@media (max-width: 760px) {
    .footer-admin-title { align-items: flex-start; gap: 16px; }
    .footer-add-social-btn { min-height: 40px; padding: 0 14px; }
    .footer-social-savebar { align-items: stretch; flex-direction: column; }
    .footer-social-save-btn { width: 100%; }
}
.footer-action-symbol { font-size: 18px; font-weight: 500; line-height: .7; margin-top: -1px; }


/* Shared Stylist theme foundation. Child themes override this file through inheritance. */
:root {
  --theme-radius: 14px;
  --theme-focus: var(--brand-primary);
}
:focus-visible { outline: 2px solid var(--theme-focus); outline-offset: 2px; }
