:root {
    --bg: #091c31;
    --bg-2: #13263b;
    --bg-3: #1b3148;
    --surface: rgba(255, 255, 255, 0.94);
    --surface-strong: #ffffff;
    --ink: #2c2932;
    --muted: #625f68;
    --line: rgba(44, 41, 50, 0.1);
    --brand: #0081c7;
    --accent: #00ffff;
    --brand-dark: #2c2932;
    --white: #ffffff;
    --shadow: 0 28px 70px rgba(3, 10, 22, 0.32);
    --radius: 26px;
}

* {
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    color: var(--ink);
    background:
        radial-gradient(circle at top left, rgba(0, 255, 255, 0.14), transparent 24%),
        radial-gradient(circle at top right, rgba(0, 129, 199, 0.2), transparent 26%),
        linear-gradient(160deg, var(--bg) 0%, var(--bg-2) 52%, var(--bg-3) 100%);
    font-family: "Titillium Web", "Segoe UI", sans-serif;
}

.page-shell {
    padding: 30px 0 56px;
}

.hero-card,
.glass-card {
    background: var(--surface);
    /* border: 1px solid rgba(255, 255, 255, 0.7); */
    box-shadow: var(--shadow);
    border-radius: var(--radius);
    backdrop-filter: blur(18px);
}

.brand-hero {
    overflow: hidden;
    position: relative;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(216, 240, 255, 0.96) 58%, rgba(0, 129, 199, 0.22) 100%);
}

.brand-hero::before {
    content: "zusammen";
    position: absolute;
    right: -24px;
    bottom: -34px;
    font-family: "Titillium Web", sans-serif;
    font-size: clamp(5rem, 18vw, 11rem);
    line-height: 0.85;
    font-weight: 700;
    color: rgba(44, 41, 50, 0.06);
    pointer-events: none;
}

.brand-lockup {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.hero-toolbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.brand-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.7rem;
}

.brand-logo {
    display: block;
    width: auto;
    height: 3.6rem;
}

.brand-note {
    color: var(--brand-dark);
    font-size: 1.25rem;
    font-weight: 400;
}

.brand-note-highlight {
    color: var(--brand);
    font-size: 1.25rem;
    font-weight: 600;
}

.eyebrow {
    color: var(--brand-dark);
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
}

.hero-title {
    font-family: "Titillium Web", sans-serif;
    font-size: clamp(2.8rem, 5vw, 4.8rem);
    line-height: 0.95;
    font-weight: 700;
    margin: 0;
    color: var(--brand-dark);
}

.hero-subtitle {
    color: var(--muted);
    max-width: 58rem;
    font-size: 1rem;
}

.channel-head {
    min-height: 5.5rem;
}

.profile-avatar {
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid rgba(0, 255, 255, 0.25);
    box-shadow: 0 12px 24px rgba(44, 41, 50, 0.14);
    flex: 0 0 auto;
}

.stats-grid .glass-card,
.channel-card,
.post-card,
.feature-card {
    height: 100%;
}

.stat-card,
.channel-card,
.post-card {
    padding: 1.3rem;
}

.amm-label {
    color: var(--brand);
    font-size: 2rem;
    margin-bottom: 0.48rem;
    font-weight: 700;
}

.stat-label {
    color: var(--brand);
    font-size: 0.88rem;
    margin-bottom: 0.48rem;
    font-weight: 700;
}

.stat-value {
    font-family: "Titillium Web", sans-serif;
    font-size: clamp(1.9rem, 3vw, 2.8rem);
    font-weight: 700;
    line-height: 1;
}

.stat-meta,
.channel-handle,
.post-meta,
.muted-note,
.caption-preview {
    color: var(--muted);
}

.channel-meta-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.platform-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.24rem 0.58rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
    border: 1px solid transparent;
}

.platform-instagram {
    background: rgba(225, 48, 108, 0.12);
    color: #b31d55;
    border-color: rgba(225, 48, 108, 0.18);
}

.platform-facebook {
    background: rgba(24, 119, 242, 0.12);
    color: #0f5cc0;
    border-color: rgba(24, 119, 242, 0.18);
}

.platform-linkedin {
    background: rgba(10, 102, 194, 0.12);
    color: #0a4f96;
    border-color: rgba(10, 102, 194, 0.2);
}

.stat-meta,
.muted-note {
    font-size: 0.9rem;
}

.channel-card:hover,
.post-card:hover {
    transform: translateY(-2px);
    transition: transform 180ms ease;
}

.metric-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.46rem 0.72rem;
    border-radius: 999px;
    background: rgba(0, 255, 255, 0.2);
    color: var(--brand-dark);
    font-size: 0.92rem;
    font-weight: 700;
}

.metric-chip.alt {
    background: rgba(0, 129, 199, 0.14);
}

.metric-chip.warn {
    background: rgba(0, 255, 255, 0.28);
}

.metric-chip.status-high {
    background: rgba(0, 255, 255, 0.2);
}

.metric-chip.status-above_average {
    background: rgba(110, 218, 160, 0.25);
}

.metric-chip.status-average {
    background: rgba(0, 129, 199, 0.14);
}

.metric-chip.status-below_average {
    background: rgba(255, 183, 77, 0.24);
}

.metric-chip.status-medium {
    background: rgba(0, 129, 199, 0.14);
}

.metric-chip.status-low,
.metric-chip.status-unknown {
    background: rgba(44, 41, 50, 0.1);
}

.soft-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.38rem 0.72rem;
    min-height: 2rem;
    line-height: 1;
    border-radius: 999px;
    background: var(--white);
    color: var(--brand-dark);
    font-size: 0.84rem;
    font-weight: 700;
    border: 1px solid rgba(44, 41, 50, 0.1);
}

.count-badge {
    white-space: nowrap;
}

.toolbar-link {
    color: var(--brand);
    text-decoration: none;
    font-weight: 700;
}

.toolbar-link:hover {
    color: var(--brand-dark);
}

.btn-brand {
    background: var(--brand);
    border: 0;
    color: var(--white);
    font-weight: 700;
}

.btn-brand:hover {
    color: var(--white);
    background: #0a73ad;
}

.btn-outline-brand {
    border: 1px solid rgba(44, 41, 50, 0.14);
    background: rgba(255, 255, 255, 0.86);
    color: var(--brand-dark);
    font-weight: 700;
    backdrop-filter: blur(10px);
}

.btn-outline-brand:hover {
    background: var(--brand);
    color: var(--white);
    border-color: var(--brand);
}

.thumb,
.feature-thumb {
    width: 100%;
    object-fit: cover;
    border-radius: 20px;
    background: transparent;
}

.thumb {
    aspect-ratio: 1 / 1;
}

.feature-thumb {
    display: block;
    aspect-ratio: 1 / 1;
    height: clamp(16rem, 30vw, 24rem);
    max-height: none;
    object-position: center center;
}

.caption-preview {
    font-size: 1rem;
    line-height: 1.6;
}

.h3,
.h4,
h2,
h3 {
    color: var(--brand-dark);
}

.hero-side {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.hero-side .soft-badge {
    margin-top: 1rem;
}

.hero-logout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    line-height: 1;
    min-height: 2.5rem;
    white-space: nowrap;
}

.hero-toolbar .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    line-height: 1;
    min-height: 2.5rem;
}

.nav-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    line-height: 1;
    vertical-align: middle;
}

.btn .nav-icon {
    margin-right: 0;
    flex: 0 0 auto;
}

.button-icon {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.table-shell {
    overflow: hidden;
}

.table thead th {
    font-size: 0.82rem;
    color: var(--brand);
    border-bottom-color: var(--line);
    font-weight: 700;
}

.table tbody td {
    border-color: var(--line);
    vertical-align: middle;
}

.chart-shell {
    height: 290px;
    position: relative;
}

.feature-post {
    border-radius: 22px;
    padding: 1rem;
    background: rgba(44, 41, 50, 0.04);
    border: 1px solid rgba(44, 41, 50, 0.08);
}

.topbar {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.topbar-end {
    justify-content: flex-end;
}

.post-accordion-item {
    overflow: hidden;
}

.post-accordion-button {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: transparent;
    color: var(--ink);
    box-shadow: none;
    padding: 1.1rem 1.25rem;
}

.post-accordion-button:not(.collapsed) {
    background: rgba(0, 129, 199, 0.04);
    color: var(--ink);
    box-shadow: none;
}

.post-accordion-button:focus {
    box-shadow: none;
}

.post-accordion-button::after {
    margin-left: 1rem;
}

.post-accordion-title-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem;
    min-width: 0;
}

.post-accordion-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--brand-dark);
    text-align: left;
}

.post-accordion-header-main {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    min-width: 0;
    width: 100%;
}

.post-accordion-kpis {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

@media (max-width: 991.98px) {
    .brand-lockup {
        align-items: flex-start;
    }

    .brand-hero::before {
        font-size: 6rem;
        right: -8px;
    }
}

@media (max-width: 767.98px) {
    .page-shell {
        padding-top: 20px;
    }

    .hero-card,
    .glass-card {
        border-radius: 20px;
    }

    .brand-logo {
        height: 3rem;
    }

    .profile-avatar {
        width: 4.3rem;
        height: 4.3rem;
    }
}

.auth-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
}

.auth-card {
    max-width: 32rem;
    margin: 0 auto;
}

.auth-card .brand-logo {
    height: 3.2rem;
}

.auth-title {
    font-family: "Titillium Web", sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    color: var(--brand-dark);
}

.auth-subtitle {
    color: var(--muted);
    font-size: 1rem;
}

.auth-input {
    min-height: 3.4rem;
    border-radius: 1rem;
    border-color: rgba(44, 41, 50, 0.16);
}

.auth-input:focus {
    border-color: rgba(0, 129, 199, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(0, 129, 199, 0.12);
}

.performance-page .hero-card,
.performance-page .glass-card {
    break-inside: avoid;
}

.performance-kpi-card,
.performance-criterion-card {
    border: 1px solid rgba(44, 41, 50, 0.08);
}

.signal-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    padding: 0.38rem 0.72rem;
    border-radius: 999px;
    font-size: 0.84rem;
    font-weight: 700;
    border: 1px solid transparent;
}

.signal-high {
    background: rgba(0, 255, 255, 0.22);
    color: var(--brand-dark);
    border-color: rgba(0, 129, 199, 0.16);
}

.jump-link {
    text-decoration: none;
}

.jump-link:hover,
.jump-link:focus {
    text-decoration: none;
}

.platform-section-badge {
    font-size: 1rem;
    padding: 0.42rem 0.9rem;
    gap: 0.5rem;
}

.platform-section-badge .bx {
    font-size: 1.2rem;
}

.profile-group-row {
    padding: 0.75rem 0.9rem;
    border: 1px solid color-mix(in srgb, var(--brand) 28%, white);
    border-left: 4px solid var(--brand);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.92);
}

.profile-group-row + .profile-group-row {
    margin-top: 0.35rem;
}

.profile-group-actions .btn {
    min-height: 2.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}


.signal-above_average {
    background: rgba(110, 218, 160, 0.26);
    color: var(--brand-dark);
    border-color: rgba(70, 175, 118, 0.28);
}

.signal-average {
    background: rgba(0, 129, 199, 0.14);
    color: var(--brand-dark);
    border-color: rgba(0, 129, 199, 0.18);
}

.signal-below_average {
    background: rgba(255, 183, 77, 0.24);
    color: var(--brand-dark);
    border-color: rgba(223, 132, 36, 0.24);
}

.signal-medium {
    background: rgba(0, 129, 199, 0.14);
    color: var(--brand-dark);
    border-color: rgba(0, 129, 199, 0.18);
}

.signal-low {
    background: rgba(44, 41, 50, 0.1);
    color: var(--brand-dark);
    border-color: rgba(44, 41, 50, 0.12);
}

.signal-unknown {
    background: rgba(44, 41, 50, 0.06);
    color: var(--muted);
    border-color: rgba(44, 41, 50, 0.08);
}

.status-high {
    box-shadow: inset 0 0 0 1px rgba(0, 255, 255, 0.4), var(--shadow);
}

.status-above_average {
    box-shadow: inset 0 0 0 1px rgba(70, 175, 118, 0.35), var(--shadow);
}

.status-average {
    box-shadow: inset 0 0 0 1px rgba(0, 129, 199, 0.3), var(--shadow);
}

.status-below_average {
    box-shadow: inset 0 0 0 1px rgba(223, 132, 36, 0.28), var(--shadow);
}

.status-medium {
    box-shadow: inset 0 0 0 1px rgba(0, 129, 199, 0.3), var(--shadow);
}

.status-low {
    box-shadow: inset 0 0 0 1px rgba(44, 41, 50, 0.14), var(--shadow);
}

.status-unknown {
    box-shadow: var(--shadow);
}

.criterion-buttons .btn.active {
    background: var(--brand);
    color: var(--white);
    border-color: var(--brand);
}

.criterion-description {
    min-height: 3.4rem;
}

.performance-page .stats-grid .stat-value {
    font-size: clamp(1.5rem, 2.4vw, 2.2rem);
}

.source-item {
    border: 1px solid rgba(44, 41, 50, 0.08);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.72);
    margin-bottom: 0.7rem;
}

.source-item:last-child {
    margin-bottom: 0;
}

.floating-actions {
    position: fixed;
    right: 1.25rem;
    bottom: 1.25rem;
    z-index: 1040;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.floating-action {
    width: 3.2rem;
    height: 3.2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: var(--brand);
    color: var(--white);
    box-shadow: 0 18px 36px rgba(3, 10, 22, 0.3);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease, background 160ms ease;
}

.floating-action:hover {
    background: #0a73ad;
    color: var(--white);
}

.floating-action.is-visible,
.floating-action.always-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.floating-action .bx {
    font-size: 1.4rem;
    line-height: 1;
}

.performance-status-card .stat-label,
.performance-status-card .stat-value,
.performance-status-card .stat-meta {
    color: var(--brand-dark);
}

.performance-status-card.status-high {
    background: linear-gradient(180deg, rgba(0, 255, 255, 0.16), rgba(255, 255, 255, 0.94));
}

.performance-status-card.status-above_average {
    background: linear-gradient(180deg, rgba(110, 218, 160, 0.2), rgba(255, 255, 255, 0.94));
}

.performance-status-card.status-average {
    background: linear-gradient(180deg, rgba(0, 129, 199, 0.12), rgba(255, 255, 255, 0.94));
}

.performance-status-card.status-below_average {
    background: linear-gradient(180deg, rgba(255, 183, 77, 0.22), rgba(255, 255, 255, 0.94));
}

.performance-status-card.status-medium {
    background: linear-gradient(180deg, rgba(0, 129, 199, 0.12), rgba(255, 255, 255, 0.94));
}

.performance-status-card.status-low {
    background: linear-gradient(180deg, rgba(44, 41, 50, 0.08), rgba(255, 255, 255, 0.94));
}

.performance-status-card.status-unknown {
    background: rgba(255, 255, 255, 0.94);
}

.performance-group-channel {
    break-inside: avoid-page;
    page-break-inside: avoid;
}

.market-channel-card {
    border: 1px solid rgba(44, 41, 50, 0.08);
    background: rgba(255, 255, 255, 0.9);
}

.market-criterion-row {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    margin-bottom: 0.55rem;
    padding: 0.5rem 0.65rem;
    border-radius: 10px;
    background: rgba(44, 41, 50, 0.05);
}

.market-criterion-head {
    display: grid;
    grid-template-columns: minmax(160px, 1fr) minmax(90px, auto) minmax(80px, auto);
    align-items: center;
    gap: 0.55rem;
}

.market-criterion-label {
    font-weight: 700;
}

.market-criterion-value {
    font-weight: 700;
    text-align: right;
}

.market-criterion-status {
    justify-self: start;
}

.market-criterion-benchmark {
    color: var(--muted);
    font-size: 0.9rem;
    line-height: 1.35;
}

.market-manual-row .market-criterion-benchmark {
    font-style: italic;
}

.market-manual-row {
    display: grid;
    grid-template-columns: minmax(220px, auto) 1fr;
    align-items: center;
    gap: 0.8rem;
}

.market-manual-row .market-criterion-head {
    grid-template-columns: minmax(140px, 1fr) auto;
}

@media (max-width: 767.98px) {
    .market-manual-row {
        grid-template-columns: 1fr;
    }
}

.market-manual-compare-table {
    table-layout: fixed;
    width: 100%;
}

.market-manual-compare-table td,
.market-manual-compare-table th {
    vertical-align: top !important;
    padding-top: 0.65rem;
    padding-bottom: 0.65rem;
}

.market-manual-compare-table th:first-child,
.market-manual-compare-table td:first-child {
    padding-right: 2rem;
}

.market-manual-compare-table th:last-child,
.market-manual-compare-table td:last-child {
    padding-left: 2rem;
}

.market-manual-compare-table .market-col-left,
.market-manual-compare-table .market-col-right {
    width: 50%;
}

.market-compare-columns {
    --bs-gutter-x: 4rem;
}

.market-kpi-compare-list {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.market-kpi-theme {
    padding: 0.8rem 0.9rem 0.6rem;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(44, 41, 50, 0.12);
}

.market-kpi-theme + .market-kpi-theme {
    margin-top: 1rem;
}

.market-kpi-theme-title {
    font-weight: 700;
    color: var(--brand-dark);
    margin-bottom: 0.7rem;
}

.market-kpi-compare-row {
    padding: 0.6rem 0.75rem;
    border-radius: 10px;
    background: rgba(44, 41, 50, 0.05);
    margin: 1rem 0.5rem;
}

.market-kpi-compare-head {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    margin-bottom: 0.45rem;
}

.market-followers-history-card {
    min-height: 230px;
    border: 1px solid rgba(44, 41, 50, 0.12);
    background: rgba(255, 255, 255, 0.6);
    border-radius: 12px;
    box-shadow: none;
}

.market-followers-history-chart {
    width: 100% !important;
    height: 180px !important;
    display: block;
}

.market-followers-history-card + .market-kpi-heading {
    margin-top: 2rem !important;
}

.market-kpi-compare-list + .market-manual-heading {
    margin-top: 2.25rem !important;
}

.market-manual-compare-card {
    border: 1px solid rgba(44, 41, 50, 0.12);
    background: rgba(255, 255, 255, 1);
    border-radius: 12px;
    padding: 0.75rem 0.9rem;
}

.market-kpi-chart {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.market-kpi-chart-row {
    display: grid;
    grid-template-columns: 180px minmax(180px, 1fr) 110px 140px;
    align-items: center;
    gap: 0.65rem;
}

.market-kpi-chart-label {
    font-size: 0.88rem;
    color: var(--muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.market-kpi-bar-track {
    width: 100%;
    height: 0.72rem;
    border-radius: 999px;
    background: rgba(44, 41, 50, 0.12);
    overflow: hidden;
}

.market-kpi-bar {
    height: 100%;
    border-radius: 999px;
}

.market-kpi-bar-left {
    background: linear-gradient(90deg, #00a2ff 0%, #0a73ad 100%);
}

.market-kpi-bar-right {
    background: linear-gradient(90deg, #00d2a8 0%, #0b9b7d 100%);
}

.market-kpi-bar.status-high {
    background: linear-gradient(90deg, rgba(0, 255, 255, 0.95) 0%, rgba(0, 190, 220, 0.95) 100%);
    box-shadow: none;
}

.market-kpi-bar.status-above_average {
    background: linear-gradient(90deg, rgba(110, 218, 160, 0.95) 0%, rgba(70, 175, 118, 0.95) 100%);
    box-shadow: none;
}

.market-kpi-bar.status-average,
.market-kpi-bar.status-medium {
    background: linear-gradient(90deg, rgba(0, 129, 199, 0.95) 0%, rgba(0, 102, 170, 0.95) 100%);
    box-shadow: none;
}

.market-kpi-bar.status-below_average {
    background: linear-gradient(90deg, rgba(255, 183, 77, 0.95) 0%, rgba(223, 132, 36, 0.95) 100%);
    box-shadow: none;
}

.market-kpi-bar.status-low {
    background: linear-gradient(90deg, rgba(98, 95, 104, 0.95) 0%, rgba(44, 41, 50, 0.95) 100%);
    box-shadow: none;
}

.market-kpi-bar.status-unknown {
    background: linear-gradient(90deg, rgba(44, 41, 50, 0.28) 0%, rgba(44, 41, 50, 0.2) 100%);
    box-shadow: none;
}

.market-kpi-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
}

.market-kpi-value-col {
    text-align: right;
}

.market-kpi-badge-col {
    text-align: left;
}

.market-kpi-value {
    font-weight: 700;
    text-align: right;
}

@media (max-width: 991.98px) {
    .market-kpi-chart-row {
        grid-template-columns: 1fr;
        gap: 0.35rem;
    }

    .market-kpi-value-col {
        text-align: left;
    }

    .market-kpi-badge-col {
        text-align: left;
    }
}

@media print {
    @page {
        size: auto;
        margin: 14mm;
    }

    body {
        background: #fff;
        color: #000;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
        overflow: visible !important;
    }

    .page-shell {
        padding: 0;
        overflow: visible !important;
    }

    .container {
        max-width: none;
        width: 100%;
        overflow: visible !important;
    }

    .performance-page .hero-card,
    .performance-page .glass-card {
        break-inside: avoid-page;
        page-break-inside: avoid;
    }

    .market-print-section.market-outer-frame {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin-bottom: 0 !important;
    }

    .market-pair-sheet {
        break-inside: avoid-page;
        page-break-inside: avoid;
        break-after: page;
        page-break-after: always;
        margin-bottom: 0 !important;
    }

    .market-pair-sheet:last-child {
        break-after: auto;
        page-break-after: auto;
    }

    .market-platform-heading {
        margin-bottom: 1rem !important;
    }

    .market-kpi-heading,
    .market-manual-heading {
        margin-bottom: 0.9rem !important;
    }

    .performance-group-channel .performance-performers {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.3rem;
    }

    .performance-group-channel .performance-benchmark .row > [class*="col-"] {
        width: 33.3333% !important;
        max-width: 33.3333% !important;
        flex: 0 0 33.3333% !important;
    }

    .performance-group-channel .performance-manual .row > [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    .performance-page {
        font-size: 11pt;
    }

    .performance-page .hero-card {
        margin-bottom: 0.45rem !important;
        padding: 0.7rem !important;
        position: relative;
    }

    .performance-page .glass-card {
        margin-bottom: 0.55rem !important;
        padding: 0.8rem !important;
        border-radius: 14px;
    }

    .performance-page .eyebrow {
        font-size: 1.25rem;
        margin-bottom: 0.25rem !important;
    }

    .performance-page .h2,
    .performance-page h1.h2 {
        font-size: 1.45rem;
        margin-bottom: 0.25rem !important;
    }

    .performance-page .h3,
    .performance-page h2.h3 {
        font-size: 1rem;
        margin-bottom: 0.35rem !important;
    }

    .performance-page .caption-preview,
    .performance-page .stat-meta,
    .performance-page .muted-note,
    .performance-page .hero-subtitle {
        font-size: 0.82rem;
        line-height: 1.35;
    }

    .performance-page .metric-chip,
    .performance-page .soft-badge,
    .performance-page .signal-pill {
        font-size: 0.74rem;
        padding: 0.28rem 0.55rem;
        min-height: 1.7rem;
    }

    .performance-page .stat-card,
    .performance-page .performance-kpi-card,
    .performance-page .performance-criterion-card,
    .performance-page .feature-card {
        padding: 0.8rem !important;
    }

    .performance-page .performance-channel-summary {
        break-after: avoid-page;
        page-break-after: avoid;
    }

    .performance-channel-summary .row {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.35rem;
    }

    .performance-channel-summary .row > [class*="col-"] {
        width: auto !important;
        max-width: none !important;
        flex: none !important;
        margin-bottom: 0;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .performance-page .hero-side {
        position: absolute;
        top: 0.7rem;
        right: 0.9rem;
        margin: 0;
        display: block;
        width: auto;
        text-align: right;
    }

    .performance-page .hero-side .soft-badge {
        margin-top: 0;
    }

    .performance-page .feature-card {
        break-inside: auto;
        page-break-inside: auto;
    }

    .hero-card,
    .glass-card {
        box-shadow: none;
        border: 1px solid rgba(44, 41, 50, 0.14);
        background: #fff;
        backdrop-filter: none !important;
        filter: none !important;
    }

    .brand-hero {
        background: #fff;
    }

    .brand-hero::before {
        color: rgba(44, 41, 50, 0.04);
    }

    .no-print {
        display: none !important;
    }

    .row {
        display: block;
    }

    .row > [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex: none;
        margin-bottom: 1rem;
        break-inside: avoid-page;
        page-break-inside: avoid;
    }

    .performance-performers.row {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.25rem;
        align-items: stretch;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .performance-performers.row > [class*="col-"] {
        width: auto !important;
        max-width: none !important;
        flex: none !important;
        margin-bottom: 0;
        break-inside: auto;
        page-break-inside: auto;
        padding-left: 0 !important;
        padding-right: 0 !important;
        min-width: 0;
    }

    .performance-benchmark .row {
        display: flex !important;
        flex-wrap: wrap;
        gap: 0.5rem 0;
    }

    .performance-benchmark .row > [class*="col-"] {
        width: 33.3333% !important;
        max-width: 33.3333% !important;
        flex: 0 0 33.3333% !important;
        margin-bottom: 0.5rem;
    }

    .performance-manual .row {
        display: flex !important;
        flex-wrap: wrap;
        gap: 0.45rem 0;
    }

    .performance-manual .row > [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        margin-bottom: 0.3rem;
    }

    .performance-page .stats-grid {
        gap: 0.45rem !important;
    }

    .performance-page .stats-grid .stat-card {
        padding: 0.7rem !important;
    }

    .performance-page .stats-grid .stat-label {
        margin-bottom: 0.2rem;
    }

    .performance-page .stats-grid .stat-value {
        font-size: 1.25rem;
    }

    .performance-kpi-card,
    .performance-criterion-card,
    .source-item,
    .stat-card,
    .table-responsive,
    table,
    tr,
    td,
    th {
        break-inside: avoid-page;
        page-break-inside: avoid;
    }

    section,
    article,
    .glass-card {
        orphans: 3;
        widows: 3;
    }

    .floating-actions,
    .floating-action {
        display: none !important;
    }

    .feature-thumb {
        width: 100%;
        max-width: 100%;
        height: 6.2cm;
        aspect-ratio: 1 / 1;
        object-fit: cover;
        object-position: center center;
    }

    .feature-card,
    .feature-post {
        min-height: auto;
        overflow: hidden;
    }

    .performance-performers .feature-card {
        display: flex;
        flex-direction: column;
    }

    .performance-performers .feature-post {
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
    }

    .performance-performers .feature-post {
        padding: 0.5rem;
    }

    .performance-performers .caption-preview {
        font-size: 0.72rem;
        line-height: 1.24;
        margin-bottom: 0.3rem !important;
    }

    .performance-performers .metric-chip {
        font-size: 0.68rem;
        padding: 0.2rem 0.42rem;
        min-height: 1.45rem;
    }

    .performance-performers .feature-card,
    .performance-performers .feature-post {
        width: 100%;
        min-width: 0;
    }

    .performance-performers .d-flex.flex-wrap.gap-2 {
        margin-top: auto;
    }

    .performance-benchmark .stat-value {
        font-size: 1.15rem;
    }

    .performance-benchmark .stat-meta,
    .performance-benchmark .caption-preview {
        font-size: 0.74rem;
        line-height: 1.28;
    }

    .performance-manual .criterion-hint {
        display: none !important;
    }

    .performance-manual .criterion-question {
        margin-bottom: 0.1rem !important;
    }

    .performance-manual {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    .performance-manual .performance-criterion-card {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        padding: 0.35rem 0 !important;
    }

    .performance-manual .performance-criterion-card .h4,
    .performance-manual .performance-criterion-card h3 {
        font-size: 0.92rem;
        margin-bottom: 0.1rem !important;
        color: var(--brand) !important;
    }

    .performance-manual .criterion-buttons {
        display: none !important;
    }

    .performance-manual .criterion-description {
        min-height: 0;
        font-size: 0.76rem;
        line-height: 1.28;
        margin-top: 0 !important;
    }

    .source-item {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .no-print-source {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    .performance-sources {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    .thumb {
        max-height: 220px;
    }

    a[href]:after {
        content: none !important;
    }
}

@media print {
    body.group-performance-page .performance-group-channel,
    body.group-performance-page section[id^="platform-"],
    body.group-performance-page .performance-benchmark,
    body.group-performance-page .performance-manual,
    body.group-performance-page .performance-performers,
    body.group-performance-page .feature-card,
    body.group-performance-page .performance-kpi-card,
    body.group-performance-page .performance-criterion-card,
    body.group-performance-page .row > [class*="col-"] {
        break-inside: auto !important;
        page-break-inside: auto !important;
        break-before: auto !important;
        page-break-before: auto !important;
        break-after: auto !important;
        page-break-after: auto !important;
    }

    body.group-performance-page .performance-group-channel,
    body.group-performance-page section[id^="platform-"],
    body.group-performance-page .performance-benchmark,
    body.group-performance-page .performance-manual {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    body.group-performance-page .performance-group-channel {
        padding: 0 !important;
        margin-bottom: 1rem !important;
    }

    body.group-performance-page section[id^="platform-"] {
        padding: 0 !important;
        margin-bottom: 0.7rem !important;
    }

    body.group-performance-page .performance-benchmark,
    body.group-performance-page .performance-manual {
        padding: 0 !important;
    }

    body.group-performance-page .performance-kpi-card,
    body.group-performance-page .feature-card,
    body.group-performance-page .performance-criterion-card {
        border: 1px solid rgba(44, 41, 50, 0.14) !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.group-performance-page .performance-manual .performance-criterion-card {
        padding: 0.8rem !important;
    }

    body.group-performance-page .performance-kpi-card {
        break-inside: avoid-page !important;
        page-break-inside: avoid !important;
    }

    body.group-performance-page .performance-performers .feature-card,
    body.group-performance-page .performance-performers .feature-post {
        break-inside: avoid-page !important;
        page-break-inside: avoid !important;
    }

    body.group-performance-page .performance-criterion-card {
        break-inside: avoid-page !important;
        page-break-inside: avoid !important;
    }

    body.group-performance-page section[id^="platform-"] {
        break-before: page !important;
        page-break-before: always !important;
    }

    body.group-performance-page .hero-card + section[id^="platform-"] {
        break-before: auto !important;
        page-break-before: auto !important;
    }
}

@media print {
    body.channel-performance-page .performance-channel-summary,
    body.channel-performance-page .performance-benchmark,
    body.channel-performance-page .performance-manual,
    body.channel-performance-page .performance-sources,
    body.channel-performance-page .performance-performers,
    body.channel-performance-page .feature-card,
    body.channel-performance-page .performance-status-card,
    body.channel-performance-page .performance-kpi-card,
    body.channel-performance-page .performance-criterion-card,
    body.channel-performance-page .source-item,
    body.channel-performance-page .row > [class*="col-"] {
        break-inside: auto !important;
        page-break-inside: auto !important;
        break-before: auto !important;
        page-break-before: auto !important;
        break-after: auto !important;
        page-break-after: auto !important;
    }

    body.channel-performance-page .performance-channel-summary,
    body.channel-performance-page .performance-benchmark,
    body.channel-performance-page .performance-manual,
    body.channel-performance-page .performance-sources,
    body.channel-performance-page .no-print-source {
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        padding: 0 !important;
    }

    body.channel-performance-page .performance-channel-summary,
    body.channel-performance-page .performance-benchmark,
    body.channel-performance-page .performance-manual,
    body.channel-performance-page .performance-sources {
        margin-bottom: 1rem !important;
    }

    body.channel-performance-page .performance-status-card,
    body.channel-performance-page .performance-kpi-card,
    body.channel-performance-page .feature-card,
    body.channel-performance-page .performance-criterion-card,
    body.channel-performance-page .source-item {
        border: 1px solid rgba(44, 41, 50, 0.14) !important;
        background: #fff !important;
        box-shadow: none !important;
    }

    body.channel-performance-page .performance-status-card,
    body.channel-performance-page .performance-kpi-card,
    body.channel-performance-page .feature-card,
    body.channel-performance-page .performance-criterion-card,
    body.channel-performance-page .source-item,
    body.channel-performance-page .performance-performers .feature-post {
        break-inside: avoid-page !important;
        page-break-inside: avoid !important;
    }

    body.channel-performance-page .performance-manual .performance-criterion-card {
        padding: 0.8rem !important;
    }

    body.channel-performance-page .performance-manual {
        break-before: page !important;
        page-break-before: always !important;
    }

    body.channel-performance-page .performance-sources {
        break-before: page !important;
        page-break-before: always !important;
    }
}
