@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('brand/fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('brand/fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url('brand/fonts/jetbrains-mono-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url('brand/fonts/jetbrains-mono-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  --color-ink: #0e1622;
  --color-ink-soft: #243043;
  --color-muted: #5b6573;
  --color-dim: #8b95a4;
  --color-line: #e3e8ee;
  --color-line-strong: #cdd5df;
  --color-surface: #ffffff;
  --color-canvas: #f5f7fa;
  --color-brand: #0066ff;
  --color-brand-dark: #0050cc;
  --color-brand-soft: #e6efff;
  --color-violet: #5b21b6;
  --color-violet-soft: #ece3f9;
  --color-success: #0a8754;
  --color-success-soft: #d6f5e6;
  --color-warning: #b45309;
  --color-warning-soft: #fef3c7;
  --color-danger: #be1e2d;
  --color-danger-soft: #fcdde0;
  --gradient-brand: linear-gradient(135deg, #0066ff 0%, #5b21b6 100%);
  --font-sans: 'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --radius-sm: .55rem;
  --radius-md: .9rem;
  --radius-lg: 1.25rem;
  --shadow-card: 0 12px 35px rgba(29, 42, 77, .08);
  --max-width: 1180px;
}

* { box-sizing: border-box; }
html { color-scheme: light; }
body { margin: 0; color: var(--color-ink); background: var(--color-canvas); font: 16px/1.55 var(--font-sans); }
.mono, .figures { font-family: var(--font-mono); font-feature-settings: "tnum" 1, "zero" 1; }
a { color: var(--color-brand); text-decoration: none; }
a:hover { color: var(--color-brand-dark); }
button, input, select, textarea { font: inherit; }
.skip-link { position: fixed; left: 1rem; top: -5rem; z-index: 100; padding: .7rem 1rem; color: #fff; background: var(--color-ink); border-radius: var(--radius-sm); }
.skip-link:focus { top: 1rem; }
.site-header { min-height: 76px; padding: .75rem max(1rem, calc((100vw - var(--max-width))/2)); display: flex; align-items: center; gap: 2rem; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--color-line); position: sticky; top: 0; z-index: 20; backdrop-filter: blur(12px); }
.brand { display: inline-flex; align-items: center; gap: .7rem; color: var(--color-ink); min-width: max-content; }
.brand:hover { color: var(--color-ink); }
.brand-mark { display: block; width: 42px; height: 42px; border-radius: 13px; box-shadow: 0 8px 18px rgba(0,102,255,.25); }
.brand strong, .brand small { display: block; }
.brand strong { font-weight: 800; letter-spacing: -.04em; }
.brand small { color: var(--color-muted); font-size: .72rem; }
.primary-nav { display: flex; align-items: center; gap: 1.4rem; flex: 1; }
.primary-nav a { color: #455069; font-size: .92rem; font-weight: 650; }
.primary-nav a:hover { color: var(--color-brand); }
.account-nav { display: flex; align-items: center; justify-content: flex-end; gap: .65rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.locale-switch { margin-right: .3rem; }
.locale-switch select { appearance: none; padding: .4rem 1.6rem .4rem .6rem; color: #455168; background: #f7f8fb url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M4 6l4 4 4-4" stroke="%235b6573" stroke-width="1.6" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat right .5rem center/12px; background-color: #f7f8fb; border: 1px solid var(--color-line); border-radius: .55rem; font-size: .78rem; font-weight: 700; cursor: pointer; }
.locale-switch select:hover { border-color: #b7c5ec; }
.locale-switch select:focus-visible { outline: 3px solid rgba(0,102,255,.35); outline-offset: 2px; }
.account-nav form { margin: 0; }
.account-label { max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--color-muted); font-size: .82rem; }
.button, .btn { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; border: 1px solid transparent; border-radius: var(--radius-sm); padding: .62rem .92rem; font-weight: 700; line-height: 1.1; cursor: pointer; text-decoration: none; }
.button-primary, .btn { color: #fff; background: var(--color-brand); }
.button-primary:hover, .btn:hover { color: #fff; background: var(--color-brand-dark); text-decoration: none; }
.button-ghost { color: #34405a; background: #fff; border-color: var(--color-line); }
.button-ghost:hover { color: var(--color-brand); border-color: #b7c5ec; }
.button-danger { color: #fff; background: var(--color-danger); }
.button-danger:hover { color: #fff; background: #a01827; }
.page-shell { width: min(var(--max-width), calc(100% - 2rem)); margin: 0 auto; padding: 2.25rem 0 4rem; }
.site-footer { width: min(var(--max-width), calc(100% - 2rem)); margin: 0 auto; padding: 1.5rem 0 2.5rem; display: flex; justify-content: space-between; gap: 1rem; color: var(--color-muted); border-top: 1px solid var(--color-line); font-size: .82rem; }
.site-footer div span,.site-footer div strong{display:block}.site-footer nav{display:flex;flex-wrap:wrap;gap:1rem}.site-footer a{color:var(--color-muted)}
.card { background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.badge { border-radius: 999px !important; padding: .35rem .65rem !important; font-weight: 650; }
:focus-visible { outline: 3px solid rgba(0,102,255,.35); outline-offset: 3px; }
.eyebrow { display: block; margin-bottom: .45rem; color: var(--color-brand); font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.leads-hero { display: flex; justify-content: space-between; align-items: end; gap: 2rem; padding: 1.4rem 0 2.1rem; }
.leads-hero h1 { max-width: 760px; margin: 0; font-size: clamp(2rem,5vw,3.7rem); line-height: 1.04; letter-spacing: -.055em; }
.leads-hero p { max-width: 700px; margin: 1rem 0 0; color: var(--color-muted); font-size: 1.05rem; }
.results-summary { min-width: 145px; padding: 1rem 1.15rem; background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-md); text-align: right; box-shadow: var(--shadow-card); }
.results-summary strong, .results-summary span { display: block; }
.results-summary strong { font-size: 1.8rem; letter-spacing: -.04em; font-family: var(--font-mono); }
.results-summary span { color: var(--color-muted); font-size: .75rem; }
.upgrade-banner { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; margin-bottom: 1.5rem; padding: 1.3rem 1.5rem; color: #fff; background: var(--gradient-brand); border-radius: var(--radius-lg); box-shadow: 0 18px 40px rgba(28,61,160,.2); }
.upgrade-banner .eyebrow { color: #b9caff; }
.upgrade-banner strong { display: block; font-size: 1.2rem; }
.upgrade-banner p { margin: .25rem 0 0; color: #dce5ff; font-size: .88rem; }
.button-light { flex: 0 0 auto; color: var(--color-brand-dark); background: #fff; }
.button-light:hover { color: var(--color-brand-dark); background: #edf2ff; }
.leads-layout { display: grid; grid-template-columns: 230px minmax(0,1fr); gap: 1.4rem; align-items: start; }
.filter-panel { position: sticky; top: 94px; display: flex; flex-direction: column; max-height: calc(100vh - 118px); padding: 1rem; overflow: hidden; background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.filter-panel-head { display: flex; justify-content: space-between; align-items: center; padding: .2rem .35rem .75rem; border-bottom: 1px solid var(--color-line); font-weight: 800; }
.filter-panel-head a { font-size: .72rem; font-weight: 650; }
.filter-nav { flex: 1 1 180px; min-height: 120px; padding-top: .6rem; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #c4cad5 transparent; }
.filter-nav p { margin: 1rem .45rem .35rem; color: #8a94a9; font-size: .66rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.filter-nav a, .staff-sources a { display: flex; justify-content: space-between; gap: .6rem; margin: .12rem 0; padding: .52rem .6rem; color: #4a556c; border-radius: .5rem; font-size: .82rem; }
.filter-nav a:hover, .filter-nav a.active { color: var(--color-brand-dark); background: var(--color-brand-soft); }
.filter-nav a.active { font-weight: 750; }
.filter-nav a span, .staff-sources a span { color: #8791a5; font-size: .72rem; }
.staff-sources { flex: none; margin-top: .6rem; padding: .7rem 0; border-bottom: 1px solid var(--color-line); }
.staff-sources summary { cursor: pointer; color: var(--color-muted); font-size: .75rem; font-weight: 700; }
.staff-sources-list { max-height: clamp(100px,calc(100vh - 430px),240px); margin-top: .4rem; padding-right: .2rem; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #c4cad5 transparent; }
.leads-main { min-width: 0; }
.search-panel { margin-bottom: 1rem; padding: 1rem; background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.search-form { display: grid; grid-template-columns: minmax(140px,1.35fr) repeat(4,minmax(100px,1fr)) auto; gap: .7rem; align-items: end; }
.search-form label { min-width: 0; }
.search-form label span { display: block; margin: 0 0 .28rem .15rem; color: var(--color-muted); font-size: .7rem; font-weight: 750; }
.search-form input, .search-form select, .save-search-form input { width: 100%; min-height: 42px; padding: .55rem .65rem; color: var(--color-ink); background: #fbfcff; border: 1px solid #ccd4e2; border-radius: var(--radius-sm); }
.search-submit { min-height: 42px; }
.results-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: .9rem; padding-top: .8rem; color: var(--color-muted); border-top: 1px solid var(--color-line); font-size: .8rem; }
.results-toolbar details { position: relative; }
.results-toolbar summary { cursor: pointer; color: var(--color-brand); font-weight: 750; }
.save-search-form { display: flex; gap: .5rem; min-width: 360px; padding: .8rem 0 0; }
.lead-results { display: grid; gap: 1rem; }
.lead-card { padding: clamp(1rem,2.5vw,1.45rem); background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg); box-shadow: 0 5px 20px rgba(29,42,77,.055); transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease; }
.lead-card:hover { transform: translateY(-2px); border-color: #c3cfee; box-shadow: var(--shadow-card); }
.lead-card h3 { margin: 0 0 .65rem; font-size: clamp(1.05rem,2.5vw,1.3rem); line-height: 1.3; letter-spacing: -.02em; }
.lead-card .small { color: var(--color-muted); font-size: .78rem; }
.lead-card .badge { display: inline-block; margin: 0 .3rem .3rem 0; color: #46516a; background: #eef1f6; font-size: .72rem; }
.fraction-badge { color: var(--color-danger)!important; background: var(--color-danger-soft)!important; }
.pending-badge { color: #075985!important; background: #e0f2fe!important; }
.multi-badge { color: #5b21b6!important; background: #ede9fe!important; }
.price-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: .55rem; margin: .9rem 0; }
.price-cell { padding: .65rem .75rem; background: #f3f5f9; border-radius: var(--radius-sm); font-size: .83rem; font-family: var(--font-mono); }
.price-cell strong { display: block; margin-bottom: .12rem; color: #58627a; font-size: .68rem; font-family: var(--font-sans); }
.price-start { color: var(--color-success); background: var(--color-success-soft); }
.price-value { color: #075985; background: #e9f6fc; }
.price-wadium { color: var(--color-warning); background: var(--color-warning-soft); }
.notes { max-height: 135px; overflow: auto; padding: .8rem; background: #f8f9fc; border-radius: var(--radius-sm); color: #4e596f; font-size: .84rem; white-space: pre-wrap; }
.locked { display: inline-block; padding: .5rem .7rem; color: var(--color-muted); background: #f3f5f8; border-radius: var(--radius-sm); font-size: .78rem; }
.attachment { display: inline-block; margin: .3rem .3rem 0 0; padding: .45rem .6rem; background: var(--color-brand-soft); border-radius: var(--radius-sm); font-size: .76rem; }
.image-preview { max-width: 160px; max-height: 110px; margin: .3rem .4rem .3rem 0; object-fit: cover; border: 1px solid var(--color-line); border-radius: var(--radius-sm); }
.lead-card>p:last-child { margin-bottom: 0; padding-top: .75rem; border-top: 1px solid var(--color-line); font-size: .82rem; font-weight: 700; }
.pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; margin-top: 1.2rem; }
.pagination a, .pagination span { min-width: 38px; padding: .48rem .65rem; border-radius: var(--radius-sm); text-align: center; font-size: .8rem; }
.pagination a { background: #fff; border: 1px solid var(--color-line); }
.pagination .current { color: #fff; background: var(--color-brand); }
.pagination .disabled { color: #9ba4b4; background: #edf0f5; }
.home-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(2rem,6vw,5rem);align-items:center;padding:clamp(2rem,6vw,5.5rem) 0}.home-hero h1{margin:0;font-size:clamp(2.7rem,6vw,5rem);line-height:.98;letter-spacing:-.065em}.home-hero-copy>p{max-width:670px;margin:1.4rem 0;color:var(--color-muted);font-size:1.12rem}.hero-actions,.trust-row{display:flex;flex-wrap:wrap;gap:.75rem}.trust-row{margin-top:1.4rem;color:#667189;font-size:.78rem}.home-preview{padding:1rem;background:#fff;border:1px solid var(--color-line);border-radius:1.4rem;box-shadow:0 30px 70px rgba(28,45,92,.15)}.preview-bar{display:flex;gap:.3rem;margin-bottom:.9rem}.preview-bar span{width:8px;height:8px;border-radius:50%;background:#dce1ea}.preview-search{padding:.8rem;background:#f4f6fa;border-radius:.65rem;color:#5e687e;font-size:.78rem}.preview-card{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;margin-top:.65rem;padding:.9rem;border:1px solid var(--color-line);border-radius:.7rem}.preview-card strong,.preview-card small{display:block}.preview-card small{color:var(--color-muted);font-size:.68rem}.preview-card b{font-size:.78rem}.preview-flag{font-size:1.45rem}.preview-alert{margin-top:.7rem;padding:.7rem;color:var(--color-brand-dark);background:var(--color-brand-soft);border-radius:.65rem;font-size:.75rem}.home-stats,.account-stats{display:grid;grid-template-columns:repeat(3,1fr);background:var(--color-ink);border-radius:var(--radius-lg);overflow:hidden}.home-stats>div,.account-stats>div{padding:1.35rem 1.6rem;color:#fff;border-right:1px solid #344057}.home-stats>div:last-child,.account-stats>div:last-child{border:0}.home-stats strong,.home-stats span,.account-stats strong,.account-stats span{display:block}.home-stats strong,.account-stats strong{font-size:1.65rem;font-family:var(--font-mono)}.home-stats span,.account-stats span{color:#aeb8cb;font-size:.75rem}.home-section{padding:5rem 0}.section-heading{max-width:650px}.section-heading h2,.role-section h2,.home-cta h2{margin:.2rem 0;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.08;letter-spacing:-.04em}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.feature-grid article{padding:1.5rem;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg)}.feature-grid h3{margin:.8rem 0 .4rem}.feature-grid p,.role-section p{color:var(--color-muted);font-size:.88rem}.feature-icon{display:grid;place-items:center;width:40px;height:40px;color:var(--color-brand);background:var(--color-brand-soft);border-radius:.7rem;font-size:.72rem;font-weight:800}.role-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:start;padding:2.5rem;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg)}.role-links{display:grid;gap:.65rem}.role-links a{display:flex;flex-direction:column;padding:1rem 1.1rem;color:var(--color-ink);background:#f7f8fb;border-radius:.75rem}.role-links a:hover{background:var(--color-brand-soft)}.role-links span{color:var(--color-muted);font-size:.76rem}.home-cta{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin:4rem 0 1rem;padding:2rem 2.3rem;color:#fff;background:var(--gradient-brand);border-radius:var(--radius-lg)}.home-cta .eyebrow{color:#bfd0ff}.dashboard-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;padding:2rem 0}.dashboard-head h1{margin:.2rem 0;font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-.05em}.dashboard-head p{color:var(--color-muted)}.plan-pill{padding:.55rem .8rem;color:var(--color-brand);background:var(--color-brand-soft);border-radius:999px;font-weight:800}.account-stats{margin-bottom:1.2rem}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.dashboard-card{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;padding:1.3rem;color:var(--color-ink);background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg)}.dashboard-card:hover{border-color:#b9c8ee;box-shadow:var(--shadow-card)}.dashboard-card>span{display:grid;place-items:center;width:46px;height:46px;color:var(--color-brand);background:var(--color-brand-soft);border-radius:.8rem;font-size:1.3rem}.dashboard-card h2{margin:0;font-size:1rem}.dashboard-card p{margin:.2rem 0 0;color:var(--color-muted);font-size:.78rem}.dashboard-card.staff{border-left:3px solid var(--color-warning)}.dashboard-card.admin{border-left:3px solid var(--color-danger)}.content-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,5rem);padding:3rem 0}.content-layout h1,.legal-page h1{margin:.2rem 0;font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.05;letter-spacing:-.05em}.content-layout>section>p{color:var(--color-muted)}.contact-note{display:flex;flex-direction:column;margin-top:2rem;padding:1rem;background:var(--color-warning-soft);border-radius:.8rem}.contact-note span{font-size:.8rem;color:#795725}.form-card{padding:1.4rem;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.contact-form{display:grid;gap:1rem}.contact-form label{font-size:.78rem;font-weight:750}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:.3rem;padding:.7rem;border:1px solid #ccd4e2;border-radius:var(--radius-sm)}.contact-form textarea{resize:vertical}.contact-form .consent{display:flex;gap:.5rem;font-weight:400}.contact-form .consent input{width:auto;margin:.2rem 0}.website-field{position:absolute!important;left:-9999px!important}.form-success,.form-error{padding:1rem;border-radius:.7rem}.form-success{color:var(--color-success);background:var(--color-success-soft)}.form-error{margin-bottom:1rem;color:var(--color-danger);background:var(--color-danger-soft)}.legal-page{max-width:820px;margin:2rem auto;padding:clamp(1.3rem,4vw,2.5rem);background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg)}.legal-page h2{margin-top:2rem;font-size:1.1rem}.legal-page p{color:#566178}.legal-meta{padding-bottom:1rem;border-bottom:1px solid var(--color-line);font-size:.78rem}.legal-translation-notice{margin-top:1rem;padding:.8rem 1rem;color:#795725;background:var(--color-warning-soft);border-radius:.7rem;font-size:.82rem}


.ch-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:3rem;align-items:center;padding:4.5rem 0}.country-kicker{display:block;margin-bottom:1rem;color:#c62f3e;font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.ch-hero h1,.pricing-head h1{max-width:820px;margin:0;font-size:clamp(2.6rem,6vw,4.8rem);line-height:.98;letter-spacing:-.06em}.ch-hero p,.pricing-head p{max-width:720px;color:var(--color-muted);font-size:1.05rem}.swiss-cross{position:relative;display:grid;place-items:center;align-content:center;min-height:300px;color:#fff;background:#d52b3a;border-radius:2rem;box-shadow:0 30px 65px rgba(150,22,37,.22)}.swiss-cross:before,.swiss-cross:after{content:"";position:absolute;background:#fff;border-radius:.2rem}.swiss-cross:before{width:112px;height:34px;top:70px}.swiss-cross:after{width:34px;height:112px;top:31px}.swiss-cross b{margin-top:95px;font-size:2.5rem}.swiss-cross small{color:#ffe4e7}.ch-freshness{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;color:#7c2630;background:#fff0f2;border:1px solid #ffd0d5;border-radius:var(--radius-md)}.ch-freshness strong,.ch-freshness span{display:block}.ch-freshness span{font-size:.78rem}.ch-section{padding:4rem 0}.canton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:.7rem;margin-top:1.4rem}.canton-grid a{padding:1rem;color:var(--color-ink);background:#fff;border:1px solid var(--color-line);border-radius:.8rem}.canton-grid a:hover{border-color:#ec9ba4;box-shadow:var(--shadow-card)}.canton-grid strong,.canton-grid span{display:block}.canton-grid strong{font-size:1.15rem;font-family:var(--font-mono)}.canton-grid span{color:var(--color-muted);font-size:.7rem}.ch-layout{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:start}.ch-layout h2{margin:.2rem 0 1rem;font-size:2rem}.ch-leads{display:grid;gap:.65rem}.ch-leads>a{display:flex;justify-content:space-between;gap:1rem;padding:1rem;color:var(--color-ink);background:#fff;border:1px solid var(--color-line);border-radius:.8rem}.ch-leads>a:hover{border-color:#ec9ba4}.ch-leads span,.ch-leads strong,.ch-leads small{display:block}.ch-leads span,.ch-leads small{color:var(--color-muted);font-size:.7rem}.ch-leads b{flex:0 0 auto;font-size:.82rem;font-family:var(--font-mono)}.text-link{display:inline-block;margin-top:1rem;font-weight:750}.ch-layout aside{padding:1.2rem;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg)}.ch-layout aside>a{display:flex;justify-content:space-between;padding:.65rem 0;color:var(--color-ink);border-bottom:1px solid var(--color-line);font-size:.8rem}.ch-source-note{margin-top:1rem;padding:1rem;background:#f4f6fa;border-radius:.7rem}.ch-source-note p{margin:.3rem 0 0;color:var(--color-muted);font-size:.74rem}.ch-alert{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;align-items:center;margin:4rem 0 1rem;padding:2rem;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg)}.ch-alert h2{margin:.2rem 0}.ch-alert p{color:var(--color-muted);font-size:.82rem}.ch-alert form{display:grid;grid-template-columns:1fr 1fr auto;gap:.7rem;align-items:end}.ch-alert label{font-size:.7rem;font-weight:750}.ch-alert input,.ch-alert select{display:block;width:100%;margin-top:.3rem;padding:.65rem;border:1px solid #ccd4e2;border-radius:var(--radius-sm)}.pricing-head{max-width:850px;margin:3rem auto;text-align:center}.pricing-head h1{font-size:clamp(2.4rem,5vw,4rem)}.pricing-head p{margin:1rem auto}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}.pricing-card{position:relative;display:flex;flex-direction:column;padding:1.5rem;background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg)}.pricing-card.featured{border:2px solid var(--color-brand);box-shadow:0 20px 50px rgba(39,82,215,.16)}.popular{position:absolute;top:-13px;left:50%;transform:translateX(-50%);padding:.35rem .7rem;color:#fff;background:var(--color-brand);border-radius:999px;font-size:.65rem;font-weight:800;white-space:nowrap}.pricing-card h2{margin:.5rem 0}.plan-price{font-size:2.2rem;font-weight:850;font-family:var(--font-mono)}.plan-price span{color:var(--color-muted);font-size:.8rem;font-weight:500}.pricing-card ul{flex:1;padding:0;list-style:none}.pricing-card li{position:relative;padding:.45rem 0 .45rem 1.4rem;font-size:.82rem}.pricing-card li:before{content:"✓";position:absolute;left:0;color:var(--color-success);font-weight:850}.plan-current{padding:.65rem;text-align:center;color:var(--color-muted);background:#f4f6fa;border-radius:var(--radius-sm);font-size:.78rem}.pricing-note{max-width:750px;margin:1.5rem auto;text-align:center;color:var(--color-muted);font-size:.75rem}

.auth-layout{display:grid;grid-template-columns:1fr minmax(340px,.72fr);gap:clamp(2rem,7vw,6rem);align-items:center;min-height:calc(100vh - 210px);padding:3rem 0}.auth-aside{max-width:620px}.auth-aside h1{margin:.3rem 0;font-size:clamp(2.5rem,6vw,4.6rem);line-height:1;letter-spacing:-.06em}.auth-aside>p{color:var(--color-muted);font-size:1.05rem}.auth-aside ul{padding:0;list-style:none;color:#536078;font-size:.82rem}.auth-aside li{padding:.3rem 0}.auth-back{display:inline-block;margin-bottom:3rem;color:var(--color-muted);font-size:.78rem}.auth-card{padding:clamp(1.4rem,4vw,2rem);background:#fff;border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.auth-form{display:grid;gap:1rem}.auth-form label{color:#455168;font-size:.78rem;font-weight:750}.auth-form label small{display:block;color:var(--color-muted);font-weight:400}.auth-form input{display:block;width:100%;margin-top:.3rem;padding:.72rem;border:1px solid #cbd4e3;border-radius:var(--radius-sm)}.auth-form .consent{display:flex;gap:.55rem;align-items:flex-start;font-weight:400}.auth-form .consent input{width:auto;margin:.25rem 0}.auth-links{display:flex;flex-direction:column;gap:.65rem;margin-top:1.2rem;text-align:center;color:var(--color-muted);font-size:.78rem}

@media (max-width: 850px) {
  .site-header { flex-wrap: wrap; gap: .65rem 1rem; }
  .primary-nav { order: 3; width: 100%; overflow-x: auto; padding-top: .45rem; border-top: 1px solid var(--color-line); }
  .account-nav { margin-left: auto; }
  .account-label { display: none; }
  .leads-layout { grid-template-columns: 1fr; }
  .filter-panel { position: static; display: block; max-height: none; overflow: visible; }
  .staff-sources-list { max-height: 45vh; }
  .filter-nav { min-height: 0; overflow-y: visible; }
  .filter-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .filter-nav p { grid-column: 1/-1; }
  .search-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .search-submit { grid-column: 1/-1; }
  .home-hero,.role-section,.content-layout,.ch-hero,.ch-layout,.ch-alert,.auth-layout{grid-template-columns:1fr}.home-preview{transform:none}.feature-grid{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr}.swiss-cross{min-height:260px}.ch-alert form{grid-template-columns:1fr 1fr}
}
@media (max-width: 560px) {
  .page-shell { width: min(100% - 1rem, var(--max-width)); padding-top: 1rem; }
  .brand small, .account-nav .button-ghost:first-child { display: none; }
  .site-footer { flex-direction: column; }
  .leads-hero { display: block; }
  .results-summary { display: none; }
  .upgrade-banner { align-items: stretch; flex-direction: column; }
  .filter-nav, .search-form { grid-template-columns: 1fr; }
  .results-toolbar { align-items: flex-start; flex-direction: column; }
  .save-search-form { min-width: 0; flex-direction: column; }
  .price-grid { grid-template-columns: 1fr; }
  .home-stats,.account-stats{grid-template-columns:1fr}.home-stats>div,.account-stats>div{border-right:0;border-bottom:1px solid #344057}.home-cta,.dashboard-head{align-items:flex-start;flex-direction:column}.site-footer nav{flex-direction:column;gap:.4rem}.ch-hero{padding:2rem 0}.swiss-cross{min-height:220px}.ch-leads>a{flex-direction:column}.ch-alert form{grid-template-columns:1fr}.ch-freshness{align-items:flex-start;flex-direction:column}
}

/* ───────────────────────────────────────────────────────────
   Panel admina — osobna przestrzeń, ten sam system wizualny,
   fioletowy akcent roli (PROJECT_BLUEPRINT.md §15 + branding canvas).
   ─────────────────────────────────────────────────────────── */
.admin-shell { display: grid; grid-template-columns: 240px minmax(0,1fr); min-height: 100vh; background: var(--color-canvas); }
.admin-sidebar { display: flex; flex-direction: column; padding: 1.3rem 1rem; background: var(--color-ink); color: #fff; }
.admin-brand { display: flex; align-items: center; gap: .6rem; padding: 0 .4rem .3rem; color: #fff; font-weight: 800; letter-spacing: -.03em; }
.admin-brand img { width: 30px; height: 30px; border-radius: 8px; }
.admin-role-pill { margin: .2rem .4rem 1.1rem; padding: .3rem .6rem; color: #fff; background: var(--color-violet); border-radius: 999px; font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; width: max-content; }
.admin-nav { display: flex; flex-direction: column; gap: .15rem; }
.admin-nav a { padding: .6rem .7rem; color: #b6c0d6; border-radius: .6rem; font-size: .86rem; font-weight: 650; }
.admin-nav a:hover { color: #fff; background: rgba(255,255,255,.06); }
.admin-nav a.on { color: #fff; background: var(--color-violet); }
.admin-sidebar-foot { margin-top: auto; padding-top: 1rem; border-top: 1px solid #243043; }
.admin-sidebar-foot a { color: #8b95a4; font-size: .8rem; }
.admin-sidebar-foot a:hover { color: #fff; }
.admin-main { min-width: 0; }
.admin-topbar { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.1rem 2rem; background: var(--color-surface); border-bottom: 1px solid var(--color-line); }
.admin-topbar h1 { margin: 0; font-size: 1.4rem; letter-spacing: -.02em; }
.admin-user { display: flex; align-items: center; gap: .9rem; font-size: .82rem; color: var(--color-muted); }
.admin-user form { margin: 0; }
.admin-2fa-pill { padding: .3rem .6rem; border-radius: 999px; font-weight: 700; font-size: .72rem; }
.admin-2fa-pill.on { color: var(--color-success); background: var(--color-success-soft); }
.admin-2fa-pill.off { color: var(--color-warning); background: var(--color-warning-soft); }
.admin-content { padding: 1.8rem 2rem 3rem; }
.admin-cards { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: .9rem; margin-bottom: 1.6rem; }
.admin-stat { padding: 1.1rem 1.2rem; background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); }
.admin-stat strong { display: block; font-size: 1.6rem; letter-spacing: -.03em; font-family: var(--font-mono); }
.admin-stat span { display: block; margin-top: .2rem; color: var(--color-muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .06em; }
.admin-table { width: 100%; background: var(--color-surface); border: 1px solid var(--color-line); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); border-collapse: collapse; overflow: hidden; }
.admin-table th, .admin-table td { padding: .7rem .9rem; text-align: left; border-bottom: 1px solid var(--color-line); font-size: .84rem; }
.admin-table th { background: #f9fafb; font-size: .68rem; color: #4b5563; text-transform: uppercase; letter-spacing: .04em; }
.admin-table tr:last-child td { border-bottom: none; }
.admin-table form { margin: 0; display: inline-block; }
.admin-table select, .admin-table input { padding: .4rem .5rem; border: 1px solid #d1d5db; border-radius: .5rem; font-size: .8rem; }
.admin-note { margin-top: .9rem; color: var(--color-muted); font-size: .8rem; line-height: 1.5; }
.review-card { padding: 1.4rem; margin-bottom: 1.2rem; max-width: 1050px; }
.review-card-head { display: flex; justify-content: space-between; gap: 1.2rem; align-items: flex-start; }
.review-card-head h2 { font-size: 1.05rem; margin: 0 0 .3rem; }
.review-card-head p { color: var(--color-muted); font-size: .78rem; margin: 0; }
.review-reason { margin: .8rem 0; padding: .6rem .8rem; color: var(--color-warning); background: var(--color-warning-soft); border-radius: var(--radius-sm); font-size: .82rem; }
.review-form { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.review-form label { display: flex; flex-direction: column; gap: .3rem; font-size: .76rem; font-weight: 700; color: #455168; }
.review-form input, .review-form select, .review-form textarea { padding: .55rem .6rem; border: 1px solid #ccd4e2; border-radius: var(--radius-sm); font: inherit; font-weight: 400; }
.review-form textarea { resize: vertical; }
.review-form .wide { grid-column: 1/-1; }
.review-actions { display: flex; gap: .6rem; }
.review-reject-form { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--color-line); }
@media (max-width: 800px) { .review-form { grid-template-columns: 1fr; } .review-card-head { display: block; } }
.badge.b-admin { color: #991b1b; background: #fee2e2; }
.badge.b-moderator { color: #9a3412; background: #ffedd5; }
.badge.b-subscriber { color: #166534; background: #dcfce7; }
.badge.b-free { color: #4b5563; background: #f3f4f6; }
@media (max-width: 850px) {
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar { flex-direction: row; flex-wrap: wrap; align-items: center; }
  .admin-nav { flex-direction: row; flex-wrap: wrap; }
  .admin-sidebar-foot { margin-top: 0; padding-top: 0; border-top: 0; }
}
