.analyzer-page { max-width: 1120px; }
.analyzer-intro { margin-top: 1.5rem; }
.privacy-callout { margin-top: 1rem; padding: 1rem 1.1rem; border-left: 4px solid var(--primary, #e23744); background: #fff6f6; border-radius: .5rem; }
.byline { color: #5f6368; font-size: .95rem; }
.analyzer-actions { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin: 1rem 0; }
.file-button { cursor: pointer; }
.text-button, .remove-row { border: 0; background: transparent; color: #a51d2a; text-decoration: underline; cursor: pointer; padding: .6rem; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.hidden { display: none !important; }
.import-panel { border: 1px solid #e5e7eb; background: #fafafa; border-radius: .75rem; padding: 1rem; margin: 1rem 0; }
.mapping-grid, .scenario-controls { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 1rem; margin: 1rem 0; }
.mapping-grid label, .scenario-controls label { display: grid; gap: .4rem; font-weight: 700; }
.mapping-grid select, .scenario-controls select, .scenario-controls input { width: 100%; min-height: 44px; border: 1px solid #cbd5e1; border-radius: .5rem; padding: .65rem; background: white; }
.transaction-table { min-width: 760px; }
.transaction-table input { width: 100%; min-width: 120px; min-height: 42px; border: 1px solid #cbd5e1; border-radius: .45rem; padding: .55rem; }
.transaction-table .tx-notes { min-width: 180px; }
.optional { font-weight: 400; color: #64748b; font-size: .78rem; }
.form-errors { color: #8f1823; margin: 1rem 0; }
.analyzer-submit { width: 100%; margin-top: 1rem; }
.analysis-stats, .scenario-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; margin: 1rem 0 2rem; }
.analysis-stat { padding: 1rem; }
.analysis-stat p { margin: 0 0 .35rem; color: #64748b; font-size: .9rem; }
.analysis-stat strong { display: block; font-size: 1.3rem; overflow-wrap: anywhere; }
.analysis-stat small { display: block; margin-top: .4rem; color: #64748b; }
.bar-chart { display: grid; gap: .7rem; margin: 1.25rem 0; }
.bar-row { display: grid; grid-template-columns: 90px minmax(100px, 1fr) minmax(100px, auto); align-items: center; gap: .75rem; font-size: .9rem; }
.bar-track { height: 16px; background: #edf0f4; border-radius: 999px; overflow: hidden; }
.bar-fill { height: 100%; background: #e23744; border-radius: inherit; }
.result-basis { margin: 1rem 0; color: #4b5563; font-size: .95rem; }
@media (max-width: 600px) { .bar-row { grid-template-columns: 72px 1fr; } .bar-row strong { grid-column: 2; } .analyzer-actions > * { flex: 1 1 100%; text-align: center; } }
@media print { .site-header, .breadcrumb, .app-footer, .analyzer-actions, #import-panel, .analyzer-submit, .download-row, .scenario-controls { display: none !important; } .content-section, .panel { box-shadow: none !important; break-inside: avoid; } }
