/* CMS Radar — grunnstiler
   Bootstrap 5 håndterer grid og basiskomponenter.
   Disse stilene dekker sidebar, dashboard, domeneside og UI-elementer
   iht. wireframene cms_crawler_dashboard og domain_detail_outreach. */

/* ===== CSS-variabler ===== */
:root {
    --sidebar-width: 230px;

    /* Statuspille-farger — semantiske */
    --color-contacted:      #2563eb;
    --color-replied:        #16a34a;
    --color-no-reply:       #d97706;
    --color-not-interested: #dc2626;
    --color-uncontacted:    #9ca3af;

    /* Overflate */
    --bg-main:   #f8fafc;
    --bg-card:   #ffffff;
    --border:    #e5e7eb;
    --text-muted: #6b7280;
}

/* ===== Kropp og layout ===== */

body {
    background: var(--bg-main);
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    color: #111827;
    font-size: .9rem;
}

/* ===== Sidebar ===== */

.sidebar {
    /* Bootstrap-variabler for offcanvas-panelet på mobil — bruker samme
       bredde og farge som desktop-sidebaren i stedet for offcanvas-default */
    --bs-offcanvas-width: var(--sidebar-width);
    --bs-offcanvas-bg: #1a2332;
    --bs-offcanvas-border-color: transparent;

    width: var(--sidebar-width);
    background: #1a2332;
    border-right: none;
    flex-shrink: 0;
    overflow: hidden;
}

/* Fra md-breakpunktet og opp setter Bootstrap selv
   ".offcanvas-md { background-color: transparent !important }" — det slår
   igjennom vår vanlige (ikke-important) bakgrunnsfarge uansett rekkefølge,
   og gjorde sidebaren gjennomsiktig/lys på desktop. Må matches med !important
   og minst like høy spesifisitet for å beholde mørk bakgrunn og sticky/full
   høyde på desktop. */
@media (min-width: 768px) {
    .sidebar.offcanvas-md {
        position: sticky !important;
        top: 0;
        height: 100vh;
        min-height: 100vh;
        background: #1a2332 !important;
    }
}

.sidebar-brand {
    padding: 1.1rem 1.1rem .9rem;
    border-bottom: 1px solid #243044;
}

.sidebar-brand-title {
    font-weight: 700;
    font-size: 1rem;
    color: #ffffff;
    letter-spacing: -.01em;
}

.sidebar-brand-subtitle {
    font-size: .72rem;
    color: #64748b;
    margin-top: 1px;
}

.sidebar-nav-area {
    padding: .75rem .6rem;
    overflow-y: auto;
}

.sidebar-section-label {
    display: block;
    font-size: .65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #64748b;
    padding: .5rem .6rem .2rem;
}

.sidebar .nav-link {
    color: #cbd5e1;
    border-radius: 6px;
    padding: .4rem .7rem;
    font-size: .85rem;
    transition: background .12s, color .12s;
    display: flex;
    align-items: center;
    gap: .55rem;
    line-height: 1.4;
}

.sidebar .nav-link i {
    font-size: .9rem;
    width: 1rem;
    text-align: center;
    flex-shrink: 0;
}

.sidebar .nav-link:hover {
    background: #243044;
    color: #e2e8f0;
}

.sidebar .nav-link.active {
    background: #243044;
    color: #ffffff;
    font-weight: 600;
}

.sidebar-badge {
    background: #2563eb;
    color: white;
    font-size: .67rem;
    font-weight: 600;
    padding: 1px 7px;
    border-radius: 10px;
    line-height: 1.6;
    margin-left: auto;
}

.sidebar-badge-warning {
    background: #f59e0b;
}

/* Brukerinfo i bunn */
.sidebar-user-footer {
    border-top: 1px solid #243044;
    padding: .85rem 1rem;
    display: flex;
    align-items: center;
    gap: .7rem;
}

.sidebar-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #2563eb;
    color: white;
    font-size: .75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.sidebar-user-info {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

.sidebar-user-name {
    font-size: .82rem;
    font-weight: 600;
    color: #e2e8f0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-user-meta {
    font-size: .72rem;
    color: #94a3b8;
    white-space: nowrap;
}

.sidebar-logout {
    color: #64748b;
    font-size: 1rem;
    text-decoration: none;
    flex-shrink: 0;
    transition: color .12s;
}

.sidebar-logout:hover {
    color: #ef4444;
}

/* ===== Hoved-innholdsområde ===== */

.main-content {
    min-height: 100vh;
    background: var(--bg-main);
    padding: 1.75rem 2rem;
}

/* ===== Dashboard — sidekontroller ===== */

.page-top-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    flex-wrap: wrap;
    gap: .5rem;
}

.page-title-group {
    display: flex;
    align-items: baseline;
    gap: .75rem;
    flex-wrap: wrap;
}

.page-title {
    font-size: 1.3rem;
    font-weight: 700;
    margin: 0;
    color: #111827;
}

.page-updated {
    font-size: .78rem;
    color: var(--text-muted);
}

/* ===== Filterchips ===== */

.filter-chips-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .4rem;
    margin-bottom: 1.25rem;
}

.filter-chip {
    display: inline-flex;
    align-items: center;
    padding: .3rem .75rem;
    border: 1px solid var(--border);
    border-radius: 20px;
    font-size: .8rem;
    color: #374151;
    background: white;
    text-decoration: none;
    transition: border-color .12s, background .12s, color .12s;
    cursor: pointer;
    white-space: nowrap;
}

.filter-chip:hover {
    border-color: #2563eb;
    color: #2563eb;
    background: #eff6ff;
}

.filter-chip.active {
    background: #111827;
    color: white;
    border-color: #111827;
}

.filter-chip.active:hover {
    background: #374151;
    border-color: #374151;
    color: white;
}

.dropdown-chip {
    color: #374151;
}

.filter-chips-divider {
    display: inline-block;
    width: 1px;
    height: 20px;
    background: var(--border);
    margin: 0 .2rem;
    flex-shrink: 0;
}

/* ===== KPI-kort ===== */

.kpi-card {
    border: none;
    border-radius: 12px;
    padding: 1.3rem 1.4rem 1.1rem;
    transition: box-shadow .15s, transform .15s;
    position: relative;
    overflow: hidden;
    min-height: 130px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.kpi-card:hover {
    box-shadow: 0 6px 24px rgba(0,0,0,.18);
    transform: translateY(-2px);
}

.kpi-card-leads    { background: linear-gradient(135deg, #2563eb 0%, #3b82f6 100%); }
.kpi-card-triggers { background: linear-gradient(135deg, #0891b2 0%, #22d3ee 100%); }
.kpi-card-contact  { background: linear-gradient(135deg, #059669 0%, #34d399 100%); }
.kpi-card-score    { background: linear-gradient(135deg, #7c3aed 0%, #a78bfa 100%); }
/* Dekorativt ikon i hjørnet */
.kpi-card-icon {
    position: absolute;
    top: 1rem;
    right: 1.1rem;
    font-size: 2.2rem;
    opacity: .25;
    line-height: 1;
}

.kpi-label {
    font-size: .7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: rgba(255,255,255,.75);
    margin-bottom: .4rem;
}

.kpi-value {
    font-size: 2.2rem;
    font-weight: 800;
    line-height: 1;
    color: #ffffff;
    margin-bottom: .4rem;
}

.kpi-sub {
    font-size: .73rem;
    display: flex;
    align-items: center;
    gap: .25rem;
    color: rgba(255,255,255,.7);
}

.kpi-sub.positive { color: rgba(255,255,255,.85); }
.kpi-sub.warning  { color: rgba(255,255,255,.85); }
.kpi-sub.danger   { color: rgba(255,255,255,.85); }
.kpi-sub.muted    { color: rgba(255,255,255,.6); }

/* ===== Korthodetekst ===== */

.card-header-link {
    font-size: .8rem;
    color: #6b7280;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: .2rem;
    transition: color .12s;
}

.card-header-link:hover {
    color: #2563eb;
}

/* ===== Leadtabell ===== */

.table-leads th {
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #9ca3af;
    font-weight: 600;
    border-top: none;
    border-bottom: 1px solid #f3f4f6;
    white-space: nowrap;
    background: #f9fafb;
    padding: .6rem .75rem;
}

.table-leads td {
    padding: .65rem .75rem;
    vertical-align: middle;
}

.table-leads tbody tr {
    cursor: pointer;
    transition: background .1s;
    border-bottom: 1px solid #f3f4f6;
}

.table-leads tbody tr:hover {
    background: #f5f7ff;
}

/* ===== Statuspiller ===== */

.status-pill {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
}

.status-pill.contacted       { background: var(--color-contacted); }
.status-pill.replied         { background: var(--color-replied); }
.status-pill.no-reply        { background: var(--color-no-reply); }
.status-pill.not-interested  { background: var(--color-not-interested); }
.status-pill.uncontacted     { background: var(--color-uncontacted); }

/* ===== Lighthouse score-sirkler ===== */

.score-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    font-weight: 700;
    font-size: .8rem;
    color: white;
    flex-shrink: 0;
}

.score-circle.good { background: #16a34a; }
.score-circle.ok   { background: #d97706; color: white; }
.score-circle.poor { background: #dc2626; }

/* ===== Bransjefordeling ===== */

.industry-row {}

.cms-row {}

.cms-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.industry-bar-wrap {
    height: 11px;
    background: #f3f4f6;
    border-radius: 6px;
    overflow: hidden;
}

.industry-bar {
    height: 100%;
    border-radius: 4px;
    transition: width .4s ease;
}

/* ===== Triggerliste (dashboard) ===== */

.trigger-list-item {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .75rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    text-decoration: none;
    color: inherit;
    transition: background .1s;
}

.trigger-list-item:last-child {
    border-bottom: none;
}

.trigger-list-item:hover {
    background: #f9fafb;
}

/* Ikonets sirkel-bakgrunn */
.trigger-list-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .9rem;
    flex-shrink: 0;
}

.trigger-list-icon.danger    { background: #fef2f2; color: #dc2626; }
.trigger-list-icon.warning   { background: #fffbeb; color: #d97706; }
.trigger-list-icon.secondary { background: #f3f4f6; color: #6b7280; }

.trigger-list-content {}

.trigger-list-label {
    font-size: .83rem;
    font-weight: 600;
    color: #111827;
    line-height: 1.3;
}

.trigger-list-domain {
    font-size: .75rem;
    color: var(--text-muted);
}

/* ===== Badge "Oppdatert" ===== */

.badge-reactivated {
    background: #0ea5e9;
    color: white;
    font-size: .68rem;
    padding: 2px 7px;
    border-radius: 10px;
    font-weight: 600;
}

/* ===== Domeneside — brødsmulesti ===== */

.domain-breadcrumb {
    font-size: .82rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: .3rem;
}

.domain-breadcrumb a {
    color: #2563eb;
    text-decoration: none;
}

.domain-breadcrumb a:hover {
    text-decoration: underline;
}

.breadcrumb-sep {
    font-size: .75rem;
    color: #d1d5db;
}

/* ===== Domeneside — header-kort ===== */

.domain-header-body {
    display: flex;
    gap: 1.25rem;
    flex-wrap: wrap;
    align-items: flex-start;
}

.domain-screenshot-wrap {
    position: relative;
    flex-shrink: 0;
}

.domain-screenshot {
    width: 140px;
    height: 95px;
    object-fit: cover;
    border-radius: 7px;
    border: 1px solid var(--border);
    display: block;
}

.domain-screenshot[data-bs-toggle="modal"] {
    cursor: zoom-in;
}

.domain-screenshot-placeholder {
    background: #f3f4f6;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d1d5db;
    font-size: 1.5rem;
}

.screenshot-overlay {
    position: absolute;
    inset: 0;
    border-radius: 7px;
    background: rgba(0,0,0,.35);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
    opacity: 0;
    transition: opacity .15s;
    pointer-events: none;
}

.domain-screenshot-wrap:hover .screenshot-overlay {
    opacity: 1;
}

.domain-header-info {
    min-width: 0;
}

.domain-title {
    font-size: 1.2rem;
    font-weight: 700;
}

.cms-version-badge {
    display: inline-block;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: .72rem;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 12px;
    border: 1px solid #bfdbfe;
    white-space: nowrap;
}

.domain-subtitle {
    font-size: .83rem;
    color: var(--text-muted);
    margin-bottom: .5rem;
}

.domain-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-top: .5rem;
}

.domain-meta-chip {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-size: .75rem;
    color: #374151;
    background: #f9fafb;
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: .2rem .6rem;
    white-space: nowrap;
}

.domain-meta-chip i {
    font-size: .75rem;
    color: #9ca3af;
}

.ssl-expiry-chip {
    background: #fef2f2;
    border-color: #fca5a5;
    color: #dc2626;
    font-weight: 600;
}

.ssl-expiry-chip i {
    color: #dc2626;
}

.domain-ai-summary {
    margin: .75rem 0 0;
    font-size: .875rem;
    color: #4b5563;
    line-height: 1.6;
    font-style: italic;
}

/* ===== Lighthouse-scorekort (domeneside) ===== */

.lh-big-score {
    font-size: 3rem;
    font-weight: 800;
    line-height: 1;
    margin-bottom: .5rem;
}

.lh-big-score.good { color: #16a34a; }
.lh-big-score.ok   { color: #d97706; }
.lh-big-score.poor { color: #dc2626; }

.lh-score-bar-wrap {
    height: 6px;
    background: #f3f4f6;
    border-radius: 4px;
    overflow: hidden;
}

.lh-score-bar {
    height: 100%;
    border-radius: 4px;
    transition: width .4s;
}

.lh-score-bar.good { background: #16a34a; }
.lh-score-bar.ok   { background: #d97706; }
.lh-score-bar.poor { background: #dc2626; }

/* ===== SEO-karaktersirkel ===== */
.seo-grade-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    flex-shrink: 0;
}

.seo-grade-a,
.seo-grade-b { background: #16a34a; }
.seo-grade-c { background: #d97706; }
.seo-grade-d,
.seo-grade-e,
.seo-grade-f { background: #dc2626; }

.lh-vs-avg {
    font-size: .76rem;
}

.lh-subscores {
    border-top: 1px solid #f3f4f6;
    padding-top: .75rem;
}

.lh-subscore-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .3rem 0;
    border-bottom: 1px solid #f9fafb;
}

.lh-subscore-row:last-child {
    border-bottom: none;
}

.lh-subscore-label {
    font-size: .82rem;
    color: #374151;
}

.lh-subscore-value {
    font-size: .82rem;
    font-weight: 600;
}

.lh-subscore-value.good   { color: #16a34a; }
.lh-subscore-value.ok     { color: #d97706; }
.lh-subscore-value.poor   { color: #dc2626; }
.lh-subscore-value.muted  { color: #9ca3af; }

/* ===== Sorterbare kolonneoverskrifter ===== */

.sort-link {
    color: #374151;
    text-decoration: none;
    white-space: nowrap;
}

.sort-link:hover {
    color: #111827;
    text-decoration: none;
}

.sort-icon {
    font-size: .7rem;
    opacity: .3;
    vertical-align: middle;
}

.sort-icon--active {
    opacity: 1;
    color: var(--color-contacted);
}

/* ===== Teknisk info-tabell ===== */

.tech-info-table {
    width: 100%;
    border-collapse: collapse;
}

.tech-info-table td {
    padding: .55rem .9rem;
    border-bottom: 1px solid #f3f4f6;
    font-size: .83rem;
    vertical-align: middle;
}

.tech-info-table tr:last-child td {
    border-bottom: none;
}

.tech-label {
    color: var(--text-muted);
    width: 45%;
    white-space: nowrap;
}

.tech-value {
    color: #111827;
    font-weight: 500;
}

.tech-outdated-badge {
    display: inline-block;
    background: #fef2f2;
    color: #dc2626;
    font-size: .67rem;
    font-weight: 600;
    padding: 0 6px;
    border-radius: 4px;
    border: 1px solid #fca5a5;
    margin-left: .3rem;
    vertical-align: middle;
}

/* ===== Trigger-kort (domeneside) ===== */

.trigger-domain-item {
    display: flex;
    gap: .75rem;
    padding: .85rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    border-left: 4px solid transparent;
}

.trigger-domain-item:last-child {
    border-bottom: none;
}

.trigger-domain-item.trigger-danger {
    border-left-color: #dc2626;
    background: #fef9f9;
}

.trigger-domain-item.trigger-warning {
    border-left-color: #f59e0b;
    background: #fffdf0;
}

.trigger-domain-item.trigger-secondary {
    border-left-color: #d1d5db;
    background: #fafafa;
}

.trigger-domain-icon {
    font-size: 1rem;
    margin-top: 1px;
    flex-shrink: 0;
}

.trigger-domain-item.trigger-danger   .trigger-domain-icon { color: #dc2626; }
.trigger-domain-item.trigger-warning  .trigger-domain-icon { color: #d97706; }
.trigger-domain-item.trigger-secondary .trigger-domain-icon { color: #9ca3af; }

.trigger-domain-label {
    font-size: .83rem;
    font-weight: 600;
    color: #111827;
    margin-bottom: .15rem;
}

.trigger-domain-detail {
    font-size: .76rem;
    color: var(--text-muted);
    line-height: 1.4;
}

/* ===== Pluginliste ===== */

.plugin-outdated-count {
    background: #fef2f2;
    color: #dc2626;
    font-size: .7rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
    border: 1px solid #fca5a5;
}

.plugin-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.plugin-item {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .5rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    font-size: .82rem;
}

.plugin-item:last-child {
    border-bottom: none;
}

.plugin-name {
    color: #111827;
    flex: 1;
    min-width: 0;
}

.plugin-version {
    color: var(--text-muted);
    font-size: .76rem;
    white-space: nowrap;
}

.plugin-badge {
    font-size: .67rem;
    font-weight: 600;
    padding: 1px 7px;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
}

.plugin-badge-outdated {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fca5a5;
}

.plugin-badge-ok {
    background: #f0fdf4;
    color: #16a34a;
    border: 1px solid #bbf7d0;
}

.plugin-badge-warning {
    background: #fffbeb;
    color: #d97706;
    border: 1px solid #fde68a;
}

/* ===== Kontakt-seksjon ===== */

.contact-body {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.contact-row {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .83rem;
}

.contact-row i {
    font-size: .85rem;
    flex-shrink: 0;
    width: 1rem;
}

.contact-link {
    color: #2563eb;
}

.contact-link:hover {
    text-decoration: underline;
}

.contact-scraped-badge {
    font-size: .65rem;
    color: var(--text-muted);
    background: #f3f4f6;
    padding: 1px 5px;
    border-radius: 4px;
    border: 1px solid var(--border);
}

/* ===== Outreach-tidslinje ===== */

.timeline {
    position: relative;
    padding-left: 28px;
}

.timeline::before {
    content: '';
    position: absolute;
    left: 9px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: #e5e7eb;
}

.timeline-item {
    position: relative;
    margin-bottom: 1.25rem;
}

.timeline-dot {
    position: absolute;
    left: -22px;
    top: 4px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #fff;
    box-shadow: 0 0 0 2px currentColor;
}

/* ===== SSL-advarsel (legacy) ===== */

.ssl-warning {
    display: inline-block;
    background: #dc2626;
    color: white;
    padding: 2px 10px;
    border-radius: 12px;
    font-size: .78rem;
    font-weight: 600;
}

/* ===== Screenshot-modal ===== */

.screenshot-modal-dialog {
    /* Bredde settes dynamisk av JS til maks 1,5× bildets naturlige bredde */
    margin: auto;
}

.screenshot-modal-img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 82vh;
    object-fit: contain;
    border-radius: 4px;
}

/* ===== Screenshot-thumbnail (legacy) ===== */

.screenshot-thumb {
    width: 120px;
    height: 80px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid var(--border);
    background: #f3f4f6;
}

/* ===== E-postsikkerhet (Fase 9b) ===== */

.email-sec-row {
    border-bottom: 1px solid var(--border);
}
.email-sec-row:last-of-type {
    border-bottom: none;
}

.email-sec-icon {
    font-size: 1.2rem;
    line-height: 1;
}

.email-sec-record {
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-size: .7rem;
    color: var(--text-muted);
    background: #f3f4f6;
    border-radius: 4px;
    padding: .25rem .4rem;
    word-break: break-all;
    margin-top: .25rem;
    line-height: 1.4;
}

/* ===== Lighthouse-tabs (Fase 9c) ===== */

.card-header .nav-tabs {
    border-bottom: none;
    margin-bottom: -1px;
}

.card-header .nav-tabs .nav-link {
    font-size: .8rem;
    color: var(--text-muted);
    border: none;
    border-bottom: 2px solid transparent;
    padding: .4rem .75rem;
    border-radius: 0;
}

.card-header .nav-tabs .nav-link.active {
    color: #2563eb;
    border-bottom-color: #2563eb;
    background: transparent;
    font-weight: 600;
}

.card-header .nav-tabs .nav-link:hover:not(.active) {
    color: #374151;
    border-bottom-color: var(--border);
}

/* ===== Mobil topplinje (hamburgermeny) ===== */

.mobile-topbar {
    align-items: center;
    gap: .6rem;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1020;
    background: #1a2332;
    padding: .6rem 1rem;
}

.mobile-topbar-toggle {
    background: transparent;
    border: 1px solid #364152;
    color: #fff;
    border-radius: 6px;
    padding: .25rem .55rem;
    font-size: 1.15rem;
    line-height: 1;
}

.mobile-topbar-toggle:hover,
.mobile-topbar-toggle:focus {
    background: #243044;
    color: #fff;
}

.mobile-topbar-brand {
    color: #fff;
    font-weight: 700;
    font-size: .95rem;
}

/* ===== Mobilfallback ===== */

@media (max-width: 768px) {
    .main-content {
        padding: 1rem;
        /* Plass til den faste topplinjen med hamburgermeny */
        padding-top: calc(1rem + 52px);
    }
}

/* ===== Premium Leads ===== */

.premium-lead-card {
    transition: box-shadow .15s;
}

.premium-lead-card:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, .1) !important;
}

.premium-radar {
    flex-shrink: 0;
    display: block;
}

.premium-reasons li {
    line-height: 1.4;
    margin-bottom: .35rem;
}

.premium-reasons li:last-child {
    margin-bottom: 0;
}

.premium-pillar .progress {
    border-radius: 3px;
}
