@import url("/assets/report-pdf-dialog.css?v=20261028-shared-pdf-1");
/* Company Card: one data model for web and adaptive A4 PDF export. */
* { box-sizing:border-box; }
:root { --report-ink:#24483f; --report-muted:#658178; --report-line:#dce8e2; --report-paper:#fff; --report-tint:#f4faf7; --report-surface-soft:#f7fbf8; --report-accent:#355f54; --report-positive:#355f54; --report-negative:#9b3d32; --report-warning:#745c12; --report-logo-bg:#e7f3ee; --report-logo-ring:#355f54; --report-logo-ring-soft:#8fb9aa; --report-logo-sweep:#7fa796; --report-logo-dot:#355f54; --report-logo-highlight:#e7bd61; --range-bear:#c84c43; --range-current:#24483f; --range-core:#a56b12; --range-base:#356eb3; --range-bull:#13815f; }
body { margin:0; min-height:100vh; background:var(--bg); color:var(--text); font-family:var(--font-sans); }
.card-page { width:min(1180px,100%); margin:0 auto; padding:22px 16px 56px; }
.card-toolbar { position:relative; z-index:10; display:flex; justify-content:flex-end; align-items:center; gap:8px; margin:0 0 14px; padding:8px; border:1px solid var(--report-line); border-radius:4px; background:var(--report-paper); box-shadow:0 18px 50px rgba(15,32,27,.12); }
.card-toolbar a,.card-toolbar button { appearance:none; border:1px solid var(--line-strong); border-radius:4px; background:var(--surface); color:var(--text); font:750 12px var(--font-sans); padding:9px 14px; text-decoration:none; cursor:pointer; }
.card-toolbar #printCard { border-color:var(--primary); background:var(--primary); color:var(--on-primary); }
.card-toolbar button:disabled { cursor:not-allowed; opacity:.45; }
.company-switcher { position:relative; min-width:0; }
.card-toolbar .company-switcher-button { display:flex; align-items:center; justify-content:space-between; gap:20px; min-width:250px; max-width:330px; padding:10px 12px 10px 14px; border-color:var(--report-line); background:#f8faf9; text-align:left; transition:border-color .16s ease,background .16s ease,box-shadow .16s ease; }
.card-toolbar .company-switcher-button:hover,.card-toolbar .company-switcher-button[aria-expanded="true"] { border-color:var(--primary); background:#fff; box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent); }
.company-switcher-button>span:first-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.company-switcher-chevron { flex:0 0 auto; color:var(--primary); font-size:17px; line-height:.8; transition:transform .16s ease; }
.company-switcher-button[aria-expanded="true"] .company-switcher-chevron { transform:rotate(180deg); }
.company-switcher-menu { position:absolute; z-index:30; top:calc(100% + 7px); left:0; display:grid; width:min(360px,calc(100vw - 48px)); max-height:360px; padding:6px; overflow-y:auto; border:1px solid var(--report-line); border-radius:10px; background:#fff; box-shadow:0 18px 45px rgba(15,32,27,.18); scrollbar-color:var(--primary) transparent; scrollbar-width:thin; }
.company-switcher-menu[hidden] { display:none; }
.card-toolbar .company-switcher-option { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:10px; width:100%; padding:10px 11px; border:0; border-radius:7px; background:transparent; color:var(--text); font-weight:700; text-align:left; transition:background .14s ease,color .14s ease; }
.card-toolbar .company-switcher-option:hover,.card-toolbar .company-switcher-option:focus-visible { outline:0; background:#edf5f2; color:var(--primary); }
.card-toolbar .company-switcher-option[aria-selected="true"] { background:#e5f1ed; color:var(--primary); }
.company-switcher-option-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.company-switcher-option-ticker { color:var(--text-muted); font-size:10px; font-weight:800; letter-spacing:.05em; }
.company-switcher-option-check { width:15px; color:var(--primary); font-size:12px; text-align:center; }
.load-progress { margin-right:auto; padding:0 8px; color:var(--text-muted); font-size:11px; font-weight:750; }
.load-progress::before { content:""; display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; background:var(--warning-text); }
.load-progress.ready::before { background:var(--success-text); }
.validated-data-badge { display:inline-flex; align-items:center; gap:7px; max-width:250px; padding:7px 10px; border:1px solid color-mix(in srgb,var(--success-text) 28%,var(--report-line)); border-radius:999px; background:color-mix(in srgb,var(--success-bg) 68%,#fff); color:var(--success-text); font-size:10px; font-weight:800; letter-spacing:.01em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.validated-data-badge::before { content:""; flex:0 0 7px; width:7px; height:7px; border-radius:50%; background:var(--success-text); box-shadow:0 0 0 3px color-mix(in srgb,var(--success-text) 11%,transparent); }
.validated-data-badge[hidden] { display:none!important; }


.card-state { margin:16px 0; padding:14px 16px; border:1px solid var(--line); border-radius:12px; background:var(--surface); color:var(--text-soft); font-size:13px; }
.card-state.error { border-color:var(--danger-line); color:var(--danger-text); }
.company-card { display:grid; gap:22px; color:var(--report-ink); }
.report-sheet.print-only { display:none; }
.report-sheet { position:relative; display:flex; flex-direction:column; width:100%; min-height:calc(1120px - 32px); padding:28px 32px 24px; overflow:hidden; border:1px solid var(--report-line); border-radius:4px; background:var(--report-paper); box-shadow:0 18px 50px rgba(15,32,27,.12); }
.report-header { display:grid; flex-shrink:0; grid-template-columns:1fr auto 34px; align-items:center; gap:18px; padding-bottom:11px; border-bottom:1px solid var(--report-accent); }
.report-brand { display:flex; align-items:center; gap:9px; color:var(--report-ink); }
.report-brand-logo { display:block; flex:0 0 28px; width:28px; height:28px; }
.report-brand-copy { display:block; line-height:1; }
.report-brand strong { display:block; color:var(--report-ink); font-size:11.5px; font-weight:900; letter-spacing:.085em; }
.report-brand small { display:block; margin-top:3px; color:var(--report-muted); font-size:7px; font-weight:700; letter-spacing:.13em; }
.report-context { display:flex; flex-direction:column; text-align:right; }
.report-context b { font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.report-context span { margin-top:2px; color:var(--report-muted); font-size:9px; }
.page-index { color:var(--report-muted); font:300 21px Georgia,serif; text-align:right; }
.company-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:24px 0 18px; }
.company-heading > div:first-child { min-width:0; }
.eyebrow { margin:0 0 4px; color:var(--report-accent); font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.company-heading h1 { margin:0; color:var(--report-ink); font:500 clamp(35px,5vw,54px)/.95 var(--font-display,Georgia,serif); letter-spacing:-.045em; }
.company-tags { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:5px; }
.company-tags span { padding:5px 8px; border:1px solid var(--report-line); border-radius:999px; background:var(--report-tint); color:var(--report-muted); font-size:8px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.score-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(90px,1fr)); border-block:1px solid var(--report-line); }
.score-strip div { min-width:0; padding:10px 9px; border-right:1px solid var(--report-line); }
.score-strip div:last-child { border-right:0; }
.score-strip span,.mini-stat span,.valuation-lead>div:first-child span { display:block; color:var(--report-muted); font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.score-strip strong { display:block; margin-top:4px; color:var(--report-ink); font-size:17px; line-height:1; }
.report-section { margin-top:17px; break-inside:avoid; }
.section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:9px; }
.section-heading h2 { margin:0; color:var(--report-ink); font:650 15px/1.1 var(--font-display,Georgia,serif); letter-spacing:-.015em; }
.section-heading h2::before { content:""; display:inline-block; width:15px; height:2px; margin:0 8px 4px 0; background:var(--report-accent); }
.section-heading span { color:var(--report-muted); font-size:8px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.valuation-section { padding:15px 17px 14px; border:1px solid var(--report-line); background:var(--report-surface-soft); }
.valuation-lead { display:grid; grid-template-columns:1.35fr repeat(4,1fr); gap:0; border-block:1px solid var(--report-line); }
.valuation-lead>div { padding:10px 9px; border-right:1px solid var(--report-line); }
.valuation-lead>div:last-child { border-right:0; }
.valuation-lead>div:first-child strong { display:block; margin:3px 0; font-size:23px; letter-spacing:-.04em; }
.valuation-lead>div:first-child small { color:var(--report-muted); font-size:8px; }
.mini-stat strong { display:block; margin-top:6px; font-size:14px; line-height:1.08; }
.positive { color:var(--report-positive)!important; }.negative { color:var(--report-negative)!important; }.neutral { color:var(--report-warning)!important; }
.valuation-ruler { margin:15px 10px 8px; padding:0 4px; }
.range-track { position:relative; height:22px; margin:0 11px; }
.range-gradient { position:absolute; top:9px; left:0; right:0; height:5px; border-radius:999px; background:linear-gradient(90deg,#d46a62 0%,#d4a85d 42%,#86a36f 67%,#238066 100%); box-shadow:inset 0 0 0 1px rgba(22,34,31,.12); }
.range-marker { position:absolute; z-index:3; top:1px; width:20px; height:20px; margin-left:-10px; color:var(--report-ink); filter:drop-shadow(0 1px 1px rgba(22,34,31,.22)); }
.range-symbol { display:block; width:100%; height:100%; overflow:visible; }
.symbol-shape { fill:currentColor; stroke:var(--report-paper); stroke-width:2.2; stroke-linejoin:round; paint-order:stroke fill; }
.symbol-center { fill:var(--report-paper); stroke:currentColor; stroke-width:1; }
.range-marker.bear,.range-label.bear { color:var(--range-bear); }.range-marker.current,.range-label.current { color:var(--range-current); }.range-marker.core,.range-label.core { color:var(--range-core); }.range-marker.base,.range-label.base { color:var(--range-base); }.range-marker.bull,.range-label.bull { color:var(--range-bull); }
.range-marker.current { z-index:7; }.range-marker.base { z-index:6; }.range-marker.core { z-index:5; }.range-marker.bear { z-index:4; }
.range-scale { display:grid; grid-template-columns:repeat(5,1fr); margin:-1px 7px 5px; color:var(--report-muted); font-size:6px; font-variant-numeric:tabular-nums; }
.range-scale span { position:relative; text-align:center; }
.range-scale span::before { content:""; position:absolute; top:-7px; left:50%; width:1px; height:4px; background:var(--report-muted); opacity:.55; }
.range-scale span:first-child { text-align:left; }.range-scale span:first-child::before { left:4px; }.range-scale span:last-child { text-align:right; }.range-scale span:last-child::before { right:4px; left:auto; }
.range-legend { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:5px; margin-top:0; }
.range-label { min-width:0; padding:6px 7px; border-left:3px solid currentColor; background:var(--report-tint); }
.range-label-head { display:flex; align-items:center; gap:4px; min-width:0; }
.range-label-head .range-symbol { flex:0 0 11px; width:11px; height:11px; }
.range-label span,.range-label strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.range-label span { color:var(--report-muted); font-size:7px; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.range-label strong { margin-top:2px; color:var(--report-ink); font-size:10px; }
.scenario-table { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--report-line); }
.scenario-row { display:grid; grid-template-columns:auto 1fr; gap:3px 8px; padding:9px 11px; border-right:1px solid var(--report-line); }
.scenario-row:last-child { border-right:0; }
.scenario-row>span { align-self:center; color:var(--report-muted); font-size:8px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.scenario-row strong { font-size:14px; text-align:right; }.scenario-row small { color:var(--report-muted); font-size:8px; }.scenario-row>b { font-size:10px; text-align:right; }
.valuation-alert { margin:8px 0 0; padding:7px 9px; border-left:2px solid var(--report-warning); background:#fbf7ed; color:#6f561e; font-size:9px; line-height:1.35; }
.case-grid { display:grid; grid-template-columns:repeat(2,1fr); border:1px solid var(--report-line); }
.case-block { position:relative; padding:11px 13px 12px; border-right:1px solid var(--report-line); border-bottom:1px solid var(--report-line); }
.case-block:nth-child(even) { border-right:0; }.case-block:nth-last-child(-n+2) { border-bottom:0; }
.case-block::before { content:""; position:absolute; left:0; top:0; bottom:0; width:2px; background:var(--report-accent); }
.case-block.risk::before,.case-block.change::before { background:var(--report-negative); }
.case-block h3,.runway-narratives h3,.gk-watch h3 { margin:0 0 5px; color:var(--report-muted); font-size:8px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.case-block p,.runway-narratives p { margin:0; color:var(--report-ink); font-size:10px; line-height:1.45; }
.decision-rule { display:grid; grid-template-columns:115px 1fr; gap:10px; padding:9px 12px; border:1px solid var(--report-line); border-top:0; background:var(--report-tint); font-size:9px; line-height:1.4; }
.decision-rule b { color:var(--report-negative); text-transform:uppercase; }
.market-line { display:flex; flex-wrap:wrap; gap:7px 18px; margin-top:14px; padding:9px 11px; border-block:1px solid var(--report-line); color:var(--report-muted); font-size:8px; }
.market-line b { margin-right:5px; color:var(--report-ink); text-transform:uppercase; }
.page-footer { display:flex; flex-shrink:0; justify-content:space-between; gap:20px; margin-top:auto; padding-top:10px; border-top:1px solid var(--report-line); color:var(--report-muted); font-size:7.5px; line-height:1.3; }
.page-footer b { white-space:nowrap; color:var(--report-ink); }
.page-two-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:18px; }
.runway-stats { display:grid; grid-template-columns:repeat(5,1fr); border-block:1px solid var(--report-line); }
.runway-stats .mini-stat { padding:7px 6px; border-right:1px solid var(--report-line); }.runway-stats .mini-stat:last-child { border-right:0; }.runway-stats .mini-stat strong { font-size:10px; }
.dimension-grid { display:grid; grid-template-columns:repeat(2,1fr); margin-top:8px; }
.dimension-grid div { display:flex; justify-content:space-between; gap:7px; padding:5px 6px; border-bottom:1px solid var(--report-line); font-size:8px; }
.dimension-grid span { color:var(--report-muted); }.dimension-grid strong { text-align:right; font-size:8px; }
.runway-narratives { display:grid; grid-template-columns:repeat(2,1fr); gap:0 12px; margin-top:8px; }
.runway-narratives article { padding:7px 0; border-bottom:1px solid var(--report-line); break-inside:avoid; }
.runway-narratives article:first-child { grid-column:1/-1; }.runway-narratives p { font-size:8.5px; line-height:1.35; }
.kpi-wrap { overflow:hidden; border:1px solid var(--report-line); }
.kpi-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:7.5px; }
.kpi-table th,.kpi-table td { padding:5px 3px; border-bottom:1px solid var(--report-line); text-align:right; vertical-align:middle; }
.kpi-table tr:last-child th,.kpi-table tr:last-child td { border-bottom:0; }.kpi-table thead th { background:var(--report-tint); color:var(--report-muted); font-size:7px; text-transform:uppercase; }.kpi-table thead th:first-child { width:30%; text-align:left; }
.kpi-table tbody th { text-align:left; font-weight:700; }.kpi-table tbody th span { display:block; }.kpi-table tbody th small { color:var(--report-muted); font-size:6.5px; font-weight:500; }.kpi-table td.latest { background:#eef7f2; color:var(--report-accent); font-weight:900; }
.spark-cell { width:54px; }.spark { display:block; width:48px; height:18px; margin:auto; fill:none; stroke:var(--report-positive); stroke-width:1.5; }.spark circle { fill:var(--report-positive); stroke:none; }.spark.negative { stroke:var(--report-negative); }.spark.negative circle { fill:var(--report-negative); }
.core-cash-panel { margin-top:7px; overflow:hidden; border:1px solid var(--report-line); background:var(--report-paper); }
.core-cash-history { margin-top:7px; break-inside:avoid; }
.core-history-heading { display:flex; align-items:baseline; justify-content:space-between; gap:8px; padding:0 1px 5px; color:var(--report-muted); font-size:6.5px; }
.core-history-heading b { color:var(--report-ink); font-size:7px; letter-spacing:.04em; text-transform:uppercase; }
.core-history-table th,.core-history-table td { padding:3px; }
.spark.neutral { stroke:var(--report-muted); }.spark.neutral circle { fill:var(--report-muted); }
.core-cash-head { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:7px; padding:4px 6px; border-bottom:1px solid var(--report-line); background:var(--report-tint); }
.core-cash-head b { color:var(--report-ink); font-size:6.8px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.core-cash-head>span { color:var(--report-muted); font-size:6.3px; font-weight:700; }
.cash-signal { justify-self:end; font-size:6.4px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.cash-signal.bank-na { color:var(--report-muted); }
.bank-cash-help { margin:4px 0 0; color:var(--report-muted); font-size:8px; line-height:1.4; }
.bank-cash-help summary { min-height:24px; cursor:pointer; color:var(--report-ink); }
.bank-cash-help p { margin:4px 0; }
.core-cash-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.core-cash-stat { min-width:0; padding:4px 5px 4.5px; border-right:1px solid var(--report-line); border-bottom:1px solid var(--report-line); }
.core-cash-stat:nth-child(3n) { border-right:0; }
.core-cash-stat:nth-last-child(-n+3) { border-bottom:0; }
.core-cash-stat.cash { background:var(--report-surface-soft); }
.core-cash-stat span { display:block; overflow:hidden; color:var(--report-muted); font-size:5.8px; font-weight:800; letter-spacing:.025em; text-overflow:ellipsis; white-space:nowrap; }
.core-cash-stat strong { display:block; margin-top:2px; overflow:hidden; color:var(--report-ink); font-size:9px; line-height:1.05; text-overflow:ellipsis; white-space:nowrap; }
.gatekeeper-section { margin-top:14px; }
.hard-gates { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--report-line); }
.hard-gates article { min-width:0; padding:7px 8px; border-right:1px solid var(--report-line); }.hard-gates article:last-child { border-right:0; }
.hard-gates header { display:flex; align-items:center; justify-content:space-between; gap:6px; }.hard-gates b { font-size:8px; }.hard-gates strong { font-size:8px; text-align:right; }
.hard-gates h3 { margin:5px 0 3px; color:var(--report-ink); font-size:7.5px; line-height:1.15; }.hard-gates span { display:block; color:var(--report-muted); font-size:7px; line-height:1.25; }
.gk-fingerprint { display:grid; grid-template-columns:repeat(10,1fr); gap:4px; margin-top:8px; }
.gk-fingerprint article { min-width:0; padding:5px 4px; border:1px solid var(--report-line); border-top:2px solid var(--report-muted); background:var(--report-tint); }
.gk-fingerprint article.score-1,.gk-fingerprint article.score-2 { border-top-color:var(--report-negative); background:#fbf1f0; }.gk-fingerprint article.score-4,.gk-fingerprint article.score-5 { border-top-color:var(--report-positive); background:#eef7f2; }.gk-fingerprint span { display:block; color:var(--report-muted); font-size:6px; font-weight:900; }.gk-fingerprint b { display:block; min-height:16px; margin:2px 0; overflow:hidden; font-size:6.5px; line-height:1.15; }.gk-fingerprint strong { display:block; font-size:9px; }
.gk-watch { display:grid; grid-template-columns:110px repeat(2,1fr); gap:0; margin-top:8px; border-block:1px solid var(--report-line); }.gk-watch h3 { align-self:start; padding:8px; }.gk-watch article { padding:7px 9px; border-left:1px solid var(--report-line); }.gk-watch article b,.gk-watch article span,.gk-watch article small { display:block; }.gk-watch article b { font-size:7.5px; }.gk-watch article span { margin-top:3px; font-size:7.5px; line-height:1.3; }.gk-watch article small { margin-top:3px; color:var(--report-muted); font-size:6.5px; }
.gk-appendix-note { margin:7px 0 0; padding:6px 8px; border-left:2px solid var(--report-accent); background:var(--report-tint); color:var(--report-muted); font-size:7px; line-height:1.3; }
.report-metadata { margin-top:12px; padding:8px 10px; border:1px solid var(--report-line); background:var(--report-tint); }
.report-metadata h2 { margin:0 0 6px; font-size:8px; letter-spacing:.08em; text-transform:uppercase; }.report-metadata>div { display:flex; flex-wrap:wrap; gap:5px 15px; }.report-metadata span { color:var(--report-muted); font-size:7px; }.report-metadata b { margin-right:4px; color:var(--report-ink); }
.empty-state { margin:0; padding:12px; border:1px dashed var(--report-line); color:var(--report-muted); font-size:9px; text-align:center; }
.web-evidence { padding:18px; border:1px solid var(--report-line); border-radius:4px; background:var(--report-paper); box-shadow:0 18px 50px rgba(15,32,27,.12); color:var(--text); }
.web-evidence summary { cursor:pointer; color:var(--primary); font-size:13px; font-weight:800; }.evidence-list { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:14px; }.evidence-list article { padding:12px; border:1px solid var(--report-line); border-radius:4px; background:var(--report-surface-soft); }.evidence-list header { display:flex; justify-content:space-between; gap:10px; font-size:11px; }.evidence-list p { margin:8px 0; color:var(--text-soft); font-size:11px; line-height:1.45; }.evidence-list p b { display:block; color:var(--text); font-size:9px; text-transform:uppercase; }.evidence-list small { color:var(--text-muted); font-size:9px; }
.gk-evidence-card { border-left:3px solid var(--report-muted)!important; }.gk-evidence-card.score-1,.gk-evidence-card.score-2 { border-left-color:var(--report-negative)!important; }.gk-evidence-card.score-4,.gk-evidence-card.score-5 { border-left-color:var(--report-positive)!important; }
.gk-appendix-heading { display:flex; flex-shrink:0; align-items:flex-end; justify-content:space-between; gap:14px; padding:2.8mm 0 2mm; border-bottom:1px solid var(--report-line); }.gk-appendix-heading h2 { margin:0; font:650 18pt/.95 var(--font-display,Georgia,serif); letter-spacing:-.035em; }.gk-appendix-heading>span { max-width:50%; color:var(--report-muted); font-size:6pt; font-weight:700; text-align:right; text-transform:uppercase; }.gk-appendix-list { display:grid; flex:1; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(var(--gk-rows,5),minmax(0,1fr)); align-content:stretch; gap:1.5mm 2mm; min-height:0; padding-top:2mm; }.gk-appendix-list .gk-evidence-card { min-width:0; min-height:0; padding:1.8mm 2.1mm; overflow:hidden; border:1px solid var(--report-line); background:var(--report-surface-soft); }.gk-appendix-list .gk-evidence-card header { display:flex; justify-content:space-between; gap:7px; padding-bottom:.8mm; border-bottom:1px solid var(--report-line); font-size:7.2pt; line-height:1.1; }.gk-appendix-list .gk-evidence-card header b { min-width:0; color:var(--report-ink); }.gk-appendix-list .gk-evidence-card header strong { flex:0 0 auto; color:var(--report-accent); }.gk-appendix-list .gk-evidence-card p { margin:.8mm 0 0; color:var(--report-ink); font-size:6.6pt; line-height:1.18; }.gk-appendix-list .gk-evidence-card p b { display:inline; margin-right:1mm; color:var(--report-muted); font-size:5.9pt; letter-spacing:.05em; text-transform:uppercase; }.gk-appendix-list .gk-evidence-card small { display:none; }
.gk-appendix-list .gk-evidence-card.gk-fit-tight { padding:1.45mm 1.75mm; }
.gk-appendix-list .gk-evidence-card.gk-fit-tight header { padding-bottom:.65mm; font-size:6.65pt; line-height:1.06; }
.gk-appendix-list .gk-evidence-card.gk-fit-tight p { margin:.65mm 0 0; font-size:5.9pt; line-height:1.11; }
.gk-appendix-list .gk-evidence-card.gk-fit-tight p b { font-size:5.35pt; }
.gk-appendix-list .gk-evidence-card.gk-fit-tighter { padding:1.1mm 1.45mm; }
.gk-appendix-list .gk-evidence-card.gk-fit-tighter header { padding-bottom:.5mm; font-size:6.1pt; line-height:1.03; }
.gk-appendix-list .gk-evidence-card.gk-fit-tighter p { margin:.48mm 0 0; font-size:5.25pt; line-height:1.06; }
.gk-appendix-list .gk-evidence-card.gk-fit-tighter p b { margin-right:.75mm; font-size:4.9pt; }
.data-completeness { display:flex; align-items:flex-start; gap:8px; margin:7px 0 0; padding-top:7px; border-top:1px solid var(--report-line); font-size:6.8px; line-height:1.3; }
.data-completeness b { flex:0 0 auto; margin:0; color:var(--report-positive); letter-spacing:.04em; text-transform:uppercase; }
.data-completeness span { color:var(--report-muted); }
.data-completeness.warning b { color:var(--report-warning); }
.data-completeness.warning span { color:var(--report-ink); }
/* Off-screen A4 probe used before PDF export. It mirrors the real print box so
   overflow can be detected without changing the visible web card. */
body.pdf-layout-probe .report-sheet { display:flex; position:absolute; z-index:-1; top:0; left:-12000px; width:210mm; min-height:295mm; height:295mm; max-height:295mm; margin:0; padding:8mm 9mm 7mm; overflow:hidden; border:0; border-radius:0; box-shadow:none; visibility:hidden; }
body.pdf-layout-probe .report-gk-page-offset { padding-top:17mm; }
body.pdf-layout-probe .report-gk-page .page-footer { font-size:6.5pt; }
body.pdf-layout-probe .bank-cash-help.no-print { display:none; }

@media (max-width:780px) {
  html,body { width:100%; max-width:100%; overflow-x:hidden; }.card-page { width:100vw; max-width:100vw; padding:12px 8px 32px; overflow-x:hidden; }.card-toolbar { position:static; flex-wrap:wrap; justify-content:flex-start; }.card-toolbar a,.card-toolbar button { padding:8px 10px; font-size:11px; }.load-progress { flex:1 0 100%; order:-2; }.validated-data-badge { order:-1; max-width:100%; }
  .company-switcher { flex:1 0 100%; order:-1; }.card-toolbar .company-switcher-button { width:100%; max-width:none; }.company-switcher-menu { width:100%; max-height:320px; }.company-card { width:100%; min-width:0; grid-template-columns:minmax(0,1fr); overflow:hidden; }.report-sheet,.report-section,.valuation-section { width:100%; min-width:0; max-width:100%; }.report-sheet { min-height:0; padding:20px 15px; }.report-header { grid-template-columns:minmax(0,1fr) 28px; }.report-context { display:none; }.company-heading { align-items:flex-start; flex-direction:column; padding:20px 0 14px; }.company-heading h1 { max-width:100%; font-size:38px; overflow-wrap:normal; word-break:normal; hyphens:none; }.company-tags { width:100%; justify-content:flex-start; }.company-tags span { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
  .score-strip { grid-template-columns:repeat(3,1fr); }.score-strip div { border-bottom:1px solid var(--report-line); }.valuation-lead { grid-template-columns:repeat(2,1fr); }.valuation-lead>div:first-child { grid-column:1/-1; }.valuation-lead>div { border-bottom:1px solid var(--report-line); }.scenario-table,.case-grid,.page-two-grid,.runway-narratives { grid-template-columns:1fr; }.scenario-row { border-right:0; border-bottom:1px solid var(--report-line); }.case-block,.case-block:nth-child(even) { border-right:0; border-bottom:1px solid var(--report-line); }.case-block:last-child { border-bottom:0; }
  .section-heading>* { min-width:0; }.section-heading span { max-width:52%; text-align:right; overflow-wrap:anywhere; }.valuation-ruler { margin-inline:0; }.range-legend { grid-template-columns:repeat(3,minmax(0,1fr)); }.core-cash-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.core-cash-stat,.core-cash-stat:nth-child(3n),.core-cash-stat:nth-last-child(-n+3) { border-right:1px solid var(--report-line); border-bottom:1px solid var(--report-line); }.core-cash-stat:nth-child(2n) { border-right:0; }.core-cash-stat:nth-last-child(-n+2) { border-bottom:0; }.runway-narratives article:first-child { grid-column:auto; }.gk-fingerprint { grid-template-columns:repeat(5,1fr); }.hard-gates { grid-template-columns:repeat(2,1fr); }.hard-gates article:nth-child(2) { border-right:0; }.hard-gates article { border-bottom:1px solid var(--report-line); }.gk-watch { grid-template-columns:1fr; }.gk-watch article { border-left:0; border-top:1px solid var(--report-line); }.kpi-wrap { max-width:100%; overflow-x:auto; }.kpi-table { min-width:520px; }.evidence-list { grid-template-columns:1fr; }
}

/* RaySearch's nine-row KPI table: validate the A4 layout on narrow screens,
   using the same columns as print instead of the stacked mobile web layout. */
@media (max-width:780px) {
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .report-sheet { max-width:none; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .report-header { grid-template-columns:1fr auto 34px; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .report-context { display:flex; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .company-heading { align-items:flex-end; flex-direction:row; padding:5mm 0 4mm; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .company-heading h1 { font-size:32pt; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .company-tags { width:auto; justify-content:flex-end; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .score-strip { grid-template-columns:repeat(7,1fr); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .valuation-lead { grid-template-columns:1.35fr repeat(4,1fr); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .valuation-lead>div:first-child { grid-column:auto; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .range-legend { grid-template-columns:repeat(5,minmax(0,1fr)); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .scenario-table { grid-template-columns:repeat(3,1fr); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .case-grid { grid-template-columns:repeat(2,1fr); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .page-two-grid { grid-template-columns:.92fr 1.08fr; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .runway-narratives { grid-template-columns:repeat(2,1fr); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .runway-narratives article:first-child { grid-column:1/-1; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .kpi-table { min-width:0; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .core-cash-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .hard-gates { grid-template-columns:repeat(4,1fr); }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .report-section { margin-top:3.5mm; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .case-block p { font-size:8.5pt; line-height:1.35; }
  body.pdf-layout-probe[data-company-ticker="STO:RAY-B"] .runway-narratives p { font-size:7.2pt; }
}

@media print {
  @page { size:A4 portrait; margin:0; }
  html,body { width:210mm; min-height:297mm; background:#fff!important; }
  body { padding:0; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .no-print,.card-state,.card-toolbar { display:none!important; }
  .card-page { width:210mm; margin:0; padding:0; }
  .company-card { display:block; }
  .report-sheet.print-only { display:flex; }
  .report-sheet { width:210mm; min-height:295mm; height:295mm; max-height:295mm; margin:0; padding:8mm 9mm 7mm; overflow:hidden; border:0; border-radius:0; box-shadow:none; break-after:page; page-break-after:always; break-inside:avoid; page-break-inside:avoid; }
  .report-sheet + .report-sheet { break-before:page; page-break-before:always; }
  .report-gk-page-offset { padding-top:17mm; }
  .report-section,.score-strip,.valuation-ruler,.scenario-table,.case-block,.hard-gates,.gk-fingerprint,.gk-watch,.kpi-table tr,.runway-narratives article { break-inside:avoid; page-break-inside:avoid; }
  .report-header { grid-template-columns:1fr auto 34px; }.report-context { display:flex; }
  .company-heading { align-items:flex-end; flex-direction:row; padding:5mm 0 4mm; }.company-heading > div:first-child { flex:0 1 auto; min-width:min-content; }.company-heading h1 { font-size:32pt; overflow-wrap:normal; word-break:normal; hyphens:none; }.company-tags { flex:1 1 auto; min-width:0; justify-content:flex-end; }
  .score-strip { grid-template-columns:repeat(7,1fr); }.score-strip div { border-bottom:0; }
  .valuation-lead { grid-template-columns:1.35fr repeat(4,1fr); }.valuation-lead>div:first-child { grid-column:auto; }.valuation-lead>div { border-bottom:0; }
  .range-legend { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .scenario-table { grid-template-columns:repeat(3,1fr); }.scenario-row { border-right:1px solid var(--report-line); border-bottom:0; }.scenario-row:last-child { border-right:0; }
  .case-grid { grid-template-columns:repeat(2,1fr); }.case-block,.case-block:nth-child(even) { border-bottom:1px solid var(--report-line); }.case-block:nth-child(odd) { border-right:1px solid var(--report-line); }.case-block:nth-child(even) { border-right:0; }.case-block:nth-last-child(-n+2) { border-bottom:0; }
  .page-two-grid { grid-template-columns:.92fr 1.08fr; }.runway-narratives { grid-template-columns:repeat(2,1fr); }.runway-narratives article:first-child { grid-column:1/-1; }
  .kpi-wrap { max-width:100%; overflow:visible; }.kpi-table { width:100%; min-width:0; }.kpi-table thead th:first-child { width:29%; }.spark-cell { width:43px; }.spark { width:39px; }
  .core-cash-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.core-cash-stat,.core-cash-stat:nth-child(3n),.core-cash-stat:nth-child(2n),.core-cash-stat:nth-last-child(-n+2),.core-cash-stat:nth-last-child(-n+3) { padding:3.2px 4px 3.5px; border-right:1px solid var(--report-line); border-bottom:1px solid var(--report-line); }.core-cash-stat:nth-child(3n) { border-right:0; }.core-cash-stat:nth-last-child(-n+3) { border-bottom:0; }.core-cash-head { padding:3px 5px; }.core-cash-stat span { font-size:5.4pt; }.core-cash-stat strong { font-size:7.4pt; }
  .hard-gates { grid-template-columns:repeat(4,1fr); }.hard-gates article { border-bottom:0; border-right:1px solid var(--report-line); }.hard-gates article:nth-child(2) { border-right:1px solid var(--report-line); }.hard-gates article:last-child { border-right:0; }
  .gk-fingerprint { grid-template-columns:repeat(10,1fr); }.gk-watch { grid-template-columns:110px repeat(2,1fr); }.gk-watch article { border-top:0; border-left:1px solid var(--report-line); }
  .report-section { margin-top:3.5mm; }.valuation-section { padding:3mm; }.case-block p { font-size:8.5pt; line-height:1.35; }.runway-narratives p { font-size:7.2pt; }.page-footer { font-size:6.5pt; }
}
