/* White page and transparent logo backgrounds, requested 01.11.2026.
   Mandolina visual revision. Exact brand colors and the original embedded
   JPEGs from the supplied brandbook. The pattern is a single, non-repeating
   decorative image; it is not presented as a seamless vector asset.
   FONT LOCK: all UI fonts, sizes and readable control sizes remain unchanged. */
:root{--paper:#fff;--ink:#362925;--muted:#6b5e58;--line:#e2dfd8}
.mobile-navigation{display:none}
.marketing-data-plan table{min-width:960px}
.marketing-data-plan td{vertical-align:top;line-height:1.7}
.period-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.return-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:18px}
.return-cards article{padding:20px;border:1px solid var(--line);border-radius:10px;background:#fff}
.return-cards article>span{display:block;font-size:16px;color:var(--muted)}
.return-cards strong{display:block;font-size:32px;line-height:1.25;color:var(--brand-dark);margin:12px 0}
.return-cards p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}
.source-status-panel table{min-width:1100px}
.source-status-panel td{vertical-align:top;min-width:150px}
.source-status-panel td:first-child{min-width:230px}
.source-status-panel .mini-note{font-size:13px;line-height:1.6}
.source-connect{display:grid;gap:16px;max-width:600px;margin-top:20px}
.source-connect label{display:grid;gap:8px;font-size:16px}
.source-connect input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:5px;padding:10px 12px;font-size:16px}
.source-connect .button{justify-self:start;white-space:normal}
.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1399px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.kpis{grid-template-columns:1fr}}
@media(max-width:1000px){.sidebar #navigation{display:none}.mobile-navigation{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:14px}.mobile-navigation select{width:100%;max-width:none;min-height:48px;font-size:16px;background:#fff;color:var(--brand-dark)}}
.chart-value{white-space:nowrap;overflow-wrap:normal;text-align:center}
body{background:#fff}
.sidebar{background:#fff;border-right:1px solid var(--line);border-left:6px solid var(--brand-red);color:var(--ink);padding:24px 20px}.brand{background:transparent;padding:24px 8px;margin:0 0 25px;border-radius:0}.sidebar .nav-label,.sidebar .nav-group-label{color:var(--brand-brown)}.sidebar nav button{color:var(--ink);border-left-color:transparent;border-radius:0 7px 7px 0}.sidebar nav button span{color:#85766c}.sidebar nav button:hover{background:#f8f4ed;color:var(--ink)}.sidebar nav button.active{background:var(--brand-orange);color:var(--brand-dark);border-left-color:var(--brand-red)}.sidebar nav button.active span{color:var(--brand-dark)}.sidebar nav button.active .nav-pending{background:var(--brand-dark)}.sidebar-note{color:var(--ink);border-top:0;padding-top:0;margin-top:28px}.sidebar-note p,.sidebar-note small{color:var(--muted)}.sidebar-note::before{content:"";display:block;height:84px;margin-bottom:20px;border-top:4px solid var(--brand-orange);background:var(--brand-red) url('/assets/brand-pattern.jpg') center 48%/cover no-repeat}.sidebar-note .status-dot{background:#b5c777}
.topbar{background:#fff;border-top:4px solid var(--brand-red);border-bottom-color:#dcd9d2}.topbar-actions a,.topbar-actions button{color:var(--brand-dark)}.test-label{background:#fff;border-color:#dedbd4;color:#72615a}.eyebrow{color:var(--brand-brown)}.kpi,.panel{border-radius:12px;background:#fff;box-shadow:none}.kpi.featured{background:var(--brand-red);border-color:var(--brand-red)}.kpi.featured .kpi-label,.kpi.featured .kpi-value,.kpi.featured .kpi-note,.kpi.featured .kpi-index{color:#fff}.kpi:not(.featured){border-top:3px solid var(--brand-olive)}.kpi:nth-child(2):not(.featured){border-top-color:var(--brand-orange)}.kpi:nth-child(4):not(.featured){border-top-color:var(--brand-dark)}.kpi-value{color:var(--brand-dark)}.unavailable .kpi-value{color:#8b7870}.button.secondary{border-color:#dcd6cd;background:#fff}.button.secondary:hover{background:#f5f5f0}.button.primary{border-radius:6px}.chart-bar{background:var(--brand-olive);border-radius:2px 2px 0 0}.chart-column:last-child .chart-bar{background:var(--brand-red)}.bar-track{background:#eeeee7}.bar-row:nth-of-type(2) .bar-fill{background:var(--brand-orange);box-shadow:inset 0 0 0 1px #85431e40}.notice{background:#f7f8ef;border-left:4px solid var(--brand-olive);color:#605723;border-radius:0 7px 7px 0}.source-empty{background:#fafbf7;border-color:#cfccbb}.source-plan article{background:#fff}.design-note{background:#fff;border-left:4px solid var(--brand-olive)}th{background:#f3f4ee}tbody tr:hover{background:#f8f9f3}.search,select,.date-group input{border-radius:5px}.source-badge{border-radius:5px}.availability-card{border-radius:10px}.table-link{color:var(--brand-red)}
.login-page{background:#fff}.login-layout{max-width:none;width:100%;min-height:100vh;padding:0;margin:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr)}.login-story{display:flex;flex-direction:column;justify-content:space-between;padding:42px;gap:35px;border:0;border-radius:0;background:#fff;overflow:hidden}.login-story::after{display:none}.login-logo{display:block;width:470px;max-width:100%;padding:40px;margin:0;background:transparent;border:0;border-radius:0}.login-logo img{display:block;width:100%;max-width:none;height:auto;object-fit:contain}.login-story-body{width:100%;max-width:530px;margin:auto 0 0;padding:31px;background:var(--brand-dark);border-left:6px solid var(--brand-orange)}.login-story-body .eyebrow{color:var(--brand-orange)}.login-story h1{color:#fff;font-size:32px;letter-spacing:normal;line-height:1.35;margin:16px 0}.login-story-body>p{color:#fff2e4;font-size:16px;line-height:1.9;margin:0 0 24px}.login-topics span{color:#fff;background:#743d34;border:1px solid #a97257;border-radius:5px;font-size:14px}.login-story-footer{display:none}.login-form-area{padding:64px 65px;border:0;border-radius:0;background:#fff;min-width:0}.login-card{max-width:440px;padding:8px 0;background:transparent}.login-card .eyebrow{color:var(--brand-red)}.login-card h2{font-size:32px;line-height:1.35;letter-spacing:normal;color:var(--brand-dark)}.login-description{color:#6b5e58;font-size:16px}.login-card input{border-radius:5px;background:#fff;border-color:#c9bfb4;color:var(--ink);font-size:16px}.password-control{border-radius:5px;background:#fff;border-color:#c9bfb4}.password-control input{background:transparent}.password-control button{color:var(--brand-dark);font-size:14px}.login-card .primary{border-radius:5px;background:var(--brand-red);border-color:var(--brand-red);font-size:16px}.login-card .primary:hover{background:#b92116}.login-card .primary:disabled{background:#bd695e;border-color:#bd695e;color:#fff}.login-setup{background:#fff;border-left:3px solid var(--brand-orange);border-radius:0;padding:11px 15px;color:#6b5e58;font-size:14px}.login-help{border-color:#d7d0c7;color:#6b5e58}.login-footnote{color:#76665c;font-size:13px}
@media(max-width:1100px){.login-story{padding:32px}.login-logo{padding:32px}.login-form-area{padding:48px 36px}}
@media(max-width:1000px){.sidebar{position:relative;width:auto;padding:22px 24px;border-left:0;border-top:5px solid var(--brand-red)}.workspace{margin-left:0}.sidebar .brand{width:300px;max-width:100%;padding:24px;background:transparent;margin:0 0 20px}.sidebar nav button{border-left:0;border-bottom:3px solid transparent;border-radius:6px;padding:10px 12px}.sidebar nav button.active{border-bottom-color:var(--brand-red)}.sidebar .sidebar-note{display:none}.sidebar .nav-label,.sidebar .nav-group-label{display:none}}
@media(max-width:850px){.login-layout{display:flex;flex-direction:column;max-width:640px;margin:0 auto;padding:16px;min-height:0}.login-story{display:contents}.login-logo{order:0;width:100%;max-width:none;margin:0;padding:29px 30px;background:transparent;border-top:6px solid var(--brand-red);border-radius:0}.login-logo img{width:100%;max-width:none;height:auto}.login-form-area{order:1;padding:30px 24px;border:1px solid var(--line);border-top:0;border-radius:0;background:#fff}.login-form-area::before{display:none}.login-story-body{order:2;margin:20px 0 0;max-width:none;padding:27px 24px;background:var(--brand-dark);border-left:6px solid var(--brand-orange)}.login-story h1,.login-card h2{font-size:32px}.login-card input{font-size:16px}.login-story-body>p{font-size:16px}.login-topics span{font-size:14px}.login-card .primary{font-size:16px}.login-footnote{text-align:left}.login-card{padding:0}}
@media(max-width:620px){.sidebar{padding:20px 16px}.sidebar .brand{padding:27px 24px}.sidebar nav button{font-size:15px}.login-card h2,.login-story h1{font-size:32px}.login-logo{padding:29px 30px}.login-form-area{padding:30px 24px}}

/* RFM reflows without reducing text or controls. */
.rfm-matrix-scroll{overflow-x:auto;margin-top:18px}
.rfm-matrix{display:grid;grid-template-columns:130px repeat(5,minmax(110px,1fr));gap:8px;min-width:740px}
.rfm-axis{padding:12px 8px;font-size:16px;font-weight:600;color:var(--brand-dark);display:flex;flex-direction:column;justify-content:center;gap:6px}
.rfm-axis small{font-size:14px;font-weight:400;line-height:1.5}
.rfm-cell{min-height:100px;padding:14px 8px;background:color-mix(in srgb,var(--brand-olive) var(--density),white);color:var(--brand-dark);border:2px solid transparent;border-radius:8px;cursor:pointer;font-family:inherit}
.rfm-cell strong{display:block;font-size:24px;line-height:1.3}.rfm-cell span{display:block;margin-top:8px;font-size:14px;line-height:1.5}.rfm-cell:hover,.rfm-cell.selected{border-color:var(--brand-red)}.rfm-cell:focus-visible{outline:3px solid var(--brand-red);outline-offset:2px}
.rfm-controls{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:20px 0}.rfm-controls label{display:grid;gap:8px;font-size:16px;min-width:min(100%,280px)}.rfm-controls select{font-size:16px;min-height:48px;max-width:100%;width:100%}.rfm-controls .button{min-height:48px}
.rfm-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:20px;font-size:16px}
