@font-face { font-family: Poppins; src: url("../fonts/Poppins-Regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: Poppins; src: url("../fonts/Poppins-SemiBold.ttf") format("truetype"); font-style: normal; font-weight: 600 900; font-display: swap; }
:root {
    --color-primary: #01A6B9; --color-ink: #003B4B; --color-sidebar: #00222B;
    --color-accent: #5FD0DC; --color-page: #EEF2F4; --color-surface: #FFFFFF;
    --color-link: #00707C; --color-muted: #536873; --color-line: #D9E3E7;
    --color-control-border: #7A929D;
    --color-border: var(--color-line); --color-surface-soft: #F6F9FA;
    --color-accepted: #0B6B3A; --bg-accepted: #E3F5EC;
    --color-conditional: #8A4B00; --bg-conditional: #FFF4E2;
    --color-processing: #00596B; --bg-processing: #E3F4F6;
    --color-rejected: #B4121B; --bg-rejected: #FCEDEE;
    --color-production: #603C89; --bg-production: #F1EAF8;
    --color-sidebar-muted: #A8C5CC; --color-sidebar-active: #003B4B;
    --shadow-sm: 0 3px 12px rgb(0 34 43 / 5%);
    --sidebar-width: 248px; --radius: 8px;
    font-family: Poppins, system-ui, sans-serif; font-size: 14px; line-height: 1.55; letter-spacing: 0;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: var(--color-page); color: var(--color-ink); }
a { color: var(--color-link); text-decoration: none; }
a:hover { text-decoration: underline; }
button, input, select, textarea { font: inherit; color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; min-height: 44px; padding: 10px 16px; border: 1px solid var(--color-control-border); border-radius: 6px; background: var(--color-surface); font-weight: 600; }
h1, h2, h3, h4, p { overflow-wrap: anywhere; }
h1, h2, h3, h4 { font-weight: 600; }
:focus-visible { outline: 3px solid var(--color-link); outline-offset: 3px; }
.sidebar :focus-visible, .topbar :focus-visible { outline-color: var(--color-accent); }
[hidden] { display: none !important; }
.icon { width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.skip-link { position: fixed; top: -100px; left: 16px; padding: 12px; background: var(--color-surface); z-index: 100; }
.skip-link:focus { top: 12px; }
.sidebar { position: fixed; inset: 0 auto 0 0; width: var(--sidebar-width); background: var(--color-sidebar); color: var(--color-surface); display: flex; flex-direction: column; z-index: 40; }
.brand-mark { display: flex; align-items: center; padding: 20px 23px 16px; flex-shrink: 0; min-height: 98px; }
.brand-mark img { display: block; width: 202px; height: auto; max-width: 100%; }
.sidebar-nav { overflow-y: auto; padding: 0 12px 18px; flex: 1; scrollbar-width: thin; scrollbar-color: var(--color-link) var(--color-sidebar); }
.nav-heading { font-size: 10px; font-weight: 600; color: var(--color-accent); margin: 19px 14px 8px; }
.nav-link { min-height: 44px; display: flex; gap: 12px; align-items: center; color: var(--color-sidebar-muted); padding: 9px 14px; border-radius: 6px; margin: 2px 0; font-size: 12px; }
.nav-link:hover, .nav-link.is-active { color: var(--color-surface); text-decoration: none; background: var(--color-sidebar-active); }
.nav-link.is-active { box-shadow: inset 3px 0 var(--color-primary); }
.nav-link.is-active .icon { color: var(--color-accent); }
.sidebar-user { border-top: 1px solid var(--color-link); margin: 0 20px; padding: 16px 0; }
.user-identity { display: flex; align-items: center; gap: 10px; min-width: 0; }
.user-identity > div { min-width: 0; }
.user-identity strong, .user-identity span:not(.user-avatar) { display: block; font-size: 12px; overflow-wrap: anywhere; }
.user-identity span:not(.user-avatar) { color: var(--color-sidebar-muted); font-size: 11px; }
.user-avatar { display: grid; place-items: center; border-radius: 6px; width: 36px; height: 36px; flex-shrink: 0; background: var(--color-sidebar-active); color: var(--color-accent); font-weight: 600; }
.sidebar-user form { margin: 6px 0 0; }
.logout-button { background: transparent; color: var(--color-sidebar-muted); border: 0; padding: 10px 0; min-height: 44px; display: flex; align-items: center; gap: 10px; font-size: 12px; }
.logout-button:hover { color: var(--color-surface); }
.workspace { margin-left: var(--sidebar-width); min-height: 100vh; display: flex; flex-direction: column; min-width: 0; }
.topbar { display: flex; align-items: center; gap: 14px; padding: 16px 32px; min-height: 80px; background: var(--color-ink); color: var(--color-surface); }
.company-switch { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--color-surface); padding: 8px 12px; border: 1px solid var(--color-link); border-radius: 6px; min-width: 0; max-width: 460px; font-size: 12px; }
.company-switch span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.company-switch .chevron { width: 14px; flex-basis: 14px; margin-left: auto; }
.environment-badge { display: inline-flex; align-items: center; gap: 7px; border-radius: 4px; padding: 7px 10px; font-size: 11px; font-weight: 600; margin-left: auto; white-space: nowrap; }
.environment-badge--simulated, .environment-badge--testing { background: var(--bg-conditional); color: var(--color-conditional); }
.environment-badge--production { background: var(--bg-production); color: var(--color-production); border: 2px solid currentColor; }
.environment-badge--neutral { background: var(--bg-processing); color: var(--color-processing); }
.icon-button { width: 44px; height: 44px; padding: 10px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--color-link); border-radius: 6px; background: transparent; color: inherit; }
.menu-toggle { display: none; }
.app-shell__main { padding: 28px 32px; width: 100%; flex: 1; min-width: 0; }
.workspace-footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; margin: 8px 32px 0; padding: 16px 0; border-top: 1px solid var(--color-line); color: var(--color-muted); font-size: 10px; }
.button-primary, .button-secondary, .link-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; border-radius: 6px; padding: 10px 16px; font-weight: 600; font-size: 12px; text-align: center; }
.button-primary { background: var(--color-primary); color: var(--color-sidebar); border: 1px solid var(--color-primary); }
.button-primary:hover { background: var(--color-accent); border-color: var(--color-accent); text-decoration: none; }
.button-secondary { border: 1px solid var(--color-line); background: var(--color-surface); color: var(--color-ink); }
.button-secondary:hover { border-color: var(--color-link); text-decoration: none; }
.link-button { background: transparent; color: var(--color-link); border: 0; }
.message-stack { display: grid; gap: 8px; margin-bottom: 18px; }
.message { border-left: 3px solid var(--color-processing); background: var(--bg-processing); margin: 0; padding: 12px 16px; color: var(--color-processing); }
.message--success { color: var(--color-accepted); background: var(--bg-accepted); border-color: var(--color-accepted); }
.message--error { color: var(--color-rejected); background: var(--bg-rejected); border-color: var(--color-rejected); }
.message--warning { color: var(--color-conditional); background: var(--bg-conditional); border-color: var(--color-conditional); }
.page-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.page-heading h2 { margin: 4px 0 0; font-size: 26px; }
.eyebrow { margin: 0; color: var(--color-link); font-size: 11px; font-weight: 600; text-transform: uppercase; }
.content-panel, .status-panel { padding: 24px 0; border-top: 1px solid var(--color-line); margin-bottom: 16px; min-width: 0; }
.content-panel { overflow-x: auto; }
.content-panel > .content-panel { border: 0; }
.status-panel h2, .section-title h3 { font-size: 18px; margin: 0 0 8px; }
.status-panel p, .section-caption { color: var(--color-muted); }
.status-panel dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.status-panel dt { font-size: 12px; color: var(--color-muted); }
.status-panel dd { margin: 4px 0 0; font-weight: 600; }
.section-title { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.section-title h2, .dashboard-aside h2 { margin: 0; font-size: 15px; }
.split-layout, .settings-layout { display: grid; gap: 24px; min-width: 0; }
.split-layout { grid-template-columns: minmax(0, 1fr) minmax(280px, 360px); align-items: start; }
.split-layout > * { min-width: 0; }
.narrow-panel { max-width: 560px; }
.data-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.data-table th, .data-table td { text-align: left; border-bottom: 1px solid var(--color-line); padding: 14px 12px; vertical-align: middle; }
.data-table th { font-size: 10px; font-weight: 600; color: var(--color-muted); text-transform: uppercase; white-space: nowrap; }
.data-table td { overflow-wrap: anywhere; }
.data-table tbody tr:hover { background: var(--color-surface-soft); }
.data-table td a:not(.document-customer) { display: inline-flex; align-items: center; min-height: 44px; }
.table-empty { text-align: center; color: var(--color-muted); padding: 32px; }
.table-scroll { max-width: 100%; overflow-x: auto; }
.draft-summary { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(0, 3fr); gap: 8px 16px; }
.draft-summary dd { margin: 0; overflow-wrap: anywhere; }
.draft-preview-table { min-width: 760px; }
.draft-preview-table td:not(:first-child) { white-space: nowrap; }
.document-lines-table { min-width: 600px; }
.document-lines-table td:not(:nth-child(2)) { white-space: nowrap; }
.annulment-history > summary { min-height: 44px; cursor: pointer; }
.encf, code { font-family: ui-monospace, Consolas, monospace; }
.action-row, .download-row, .filter-bar { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; margin-bottom: 20px; }
.action-row form { margin: 0; }
.filter-bar { padding-bottom: 18px; border-bottom: 1px solid var(--color-line); }
.filter-bar > div { display: grid; gap: 6px; min-width: 140px; flex: 1; }
.form-grid { display: grid; gap: 18px; }
.form-grid.two-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.form-grid label, .form-grid > div { display: grid; gap: 6px; min-width: 0; }
label { font-size: 12px; font-weight: 600; color: var(--color-muted); }
input:not([type="checkbox"]):not([type="radio"]), select, textarea { min-height: 44px; border: 1px solid var(--color-control-border); border-radius: 6px; padding: 10px 12px; color: var(--color-ink); background: var(--color-surface); max-width: 100%; min-width: 0; }
.form-grid input, .form-grid select, .form-grid textarea { width: 100%; }
input[type="checkbox"], input[type="radio"] { width: 20px; height: 20px; accent-color: var(--color-link); }
label:has(input[type="checkbox"]), label:has(input[type="radio"]) { min-height: 44px; align-content: center; }
textarea { min-height: 96px; resize: vertical; }
.form-actions { align-self: end; }
.form-errors, .errorlist { color: var(--color-rejected); font-size: 12px; padding-left: 18px; }
.helptext { font-size: 11px; color: var(--color-muted); font-weight: 400; }
.xml-preview { margin-top: 24px; }
.xml-preview pre { max-width: 100%; max-height: 420px; overflow: auto; background: var(--color-sidebar); color: var(--bg-processing); padding: 18px; border-radius: 6px; font: 12px/1.6 ui-monospace, Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.event-list, .relation-section { border-top: 1px solid var(--color-line); padding-top: 20px; margin-top: 24px; }
.event-list h3 { font-size: 16px; }
.event-list p, .relation-grid p { display: grid; gap: 4px; border-bottom: 1px solid var(--color-line); padding: 12px 0; margin: 0; }
.event-list span, .relation-grid span { font-size: 12px; color: var(--color-muted); }
.relation-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.auth-layout { display: grid; min-height: 65vh; place-items: center; }
.auth-panel { width: min(440px, 100%); background: var(--color-surface); padding: 28px; border: 1px solid var(--color-line); border-radius: 8px; }
.auth-panel h2 { font-size: 24px; }
.empty-state { padding: 32px 0; color: var(--color-muted); }
.empty-state h2 { color: var(--color-ink); font-size: 22px; }
.metric-grid { display: grid; gap: 16px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.metric-card { background: var(--color-surface); border: 1px solid var(--color-line); border-radius: 8px; box-shadow: var(--shadow-sm); padding: 20px; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.metric-label { display: flex; align-items: center; justify-content: space-between; font-size: 12px; gap: 10px; }
.metric-card strong { font-size: 28px; line-height: 1.4; font-weight: 600; }
.metric-card > span { font-size: 10px; color: var(--color-muted); }
.metric-card__text { overflow-wrap: anywhere; }
.metric-card strong.metric-card__text { font-size: 18px; }
.metric-marker { display: inline-block; width: 7px; height: 7px; flex-shrink: 0; border-radius: 2px; }
.marker-primary { background: var(--color-primary); }
.marker-accepted { background: var(--color-accepted); }
.marker-conditional { background: var(--color-conditional); }
.marker-rejected { background: var(--color-rejected); }
.dashboard-hero { display: flex; align-items: center; justify-content: space-between; gap: 28px; background: var(--color-ink); color: var(--color-surface); margin: -28px -32px 0; padding: 16px 32px 64px; }
.dashboard-hero__copy { min-width: 0; flex: 1; }
.hero-eyebrow { font-size: 12px; margin: 0 0 8px; color: var(--bg-processing); }
.monthly-amount { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.monthly-amount h1 { font-size: 38px; line-height: 1.3; margin: 0; font-weight: 600; }
.variation { font-size: 10px; padding: 4px 8px; color: var(--color-sidebar); background: var(--color-accent); border-radius: 4px; }
.hero-caption, .hero-summary { font-size: 11px; color: var(--bg-processing); margin: 8px 0 0; }
.hero-caption { color: var(--color-accent); }
.monthly-chart { margin: 0; width: 37%; max-width: 500px; min-width: 200px; }
.monthly-chart svg { display: block; width: 100%; aspect-ratio: 4; overflow: visible; }
.chart-line { fill: none; stroke: var(--color-accent); stroke-width: 2; stroke-linejoin: round; }
.chart-area { fill: var(--color-primary); opacity: .18; }
.monthly-chart figcaption { display: flex; justify-content: space-between; font-size: 9px; color: var(--color-accent); }
.dashboard-metrics { position: relative; margin: -32px 0 24px; }
.fiscal-health { background: var(--color-surface); display: flex; align-items: center; gap: 20px; padding: 20px; margin-bottom: 24px; border-block: 1px solid var(--color-line); flex-wrap: wrap; }
.fiscal-health h2 { font-size: 12px; margin: 0; }
.health-item { display: flex; align-items: center; gap: 10px; flex: 1; min-width: 150px; }
.health-item > div { display: grid; gap: 2px; }
.health-item > div > span { font-size: 10px; color: var(--color-muted); }
.health-item strong { font-size: 11px; font-weight: 600; }
.health-indicator { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; flex-shrink: 0; }
.status-dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.dashboard-columns { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; align-items: start; }
.recent-documents, .funnel-section, .attention-section { background: var(--color-surface); padding: 20px; min-width: 0; }
.dashboard-aside { display: grid; gap: 24px; }
.section-caption { font-size: 10px; margin: 4px 0 18px; }
.recent-table th, .recent-table td { padding: 14px 0; }
.recent-table th + th, .recent-table td + td { padding-left: 14px; }
.document-customer { display: flex; align-items: center; gap: 10px; color: var(--color-ink); min-height: 44px; }
.document-customer strong { font-size: 11px; font-weight: 600; display: block; }
.document-customer small { display: block; color: var(--color-muted); font-size: 9px; margin-top: 3px; }
.customer-initials { width: 32px; height: 32px; border-radius: 6px; display: grid; place-items: center; background: var(--bg-processing); color: var(--color-link); font-size: 9px; flex-shrink: 0; }
.recent-table .encf { font-size: 10px; }
.data-table .amount-cell { text-align: right; white-space: nowrap; font-weight: 600; font-size: 10px; }
.status-chip { display: inline-flex; gap: 6px; align-items: center; padding: 5px 8px; border-radius: 4px; font-size: 9px; font-weight: 600; white-space: nowrap; }
.status-chip--accepted { color: var(--color-accepted); background: var(--bg-accepted); }
.status-chip--conditional { color: var(--color-conditional); background: var(--bg-conditional); }
.status-chip--processing { color: var(--color-processing); background: var(--bg-processing); }
.status-chip--rejected { color: var(--color-rejected); background: var(--bg-rejected); }
.status-chip--neutral { color: var(--color-muted); background: var(--color-page); }
.funnel-row { margin: 14px 0 0; }
.funnel-row > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 11px; }
.funnel-row progress { display: block; width: 100%; height: 6px; margin-top: 7px; appearance: none; border: 0; border-radius: 3px; overflow: hidden; background: var(--color-page); }
.funnel-row progress::-webkit-progress-bar { background: var(--color-page); }
.funnel-row progress::-webkit-progress-value { background: var(--color-ink); border-radius: 3px; }
.funnel-row progress::-moz-progress-bar { background: var(--color-ink); }
.funnel-row:nth-of-type(2) progress::-webkit-progress-value { background: var(--color-link); }
.funnel-row:nth-of-type(3) progress::-webkit-progress-value { background: var(--color-primary); }
.funnel-row:last-child progress::-webkit-progress-value { background: var(--color-accepted); }
.attention-item { display: flex; align-items: center; gap: 10px; border-radius: 6px; min-height: 58px; padding: 10px; margin-top: 12px; font-size: 11px; }
.attention-item > strong { min-width: 28px; text-align: center; font-size: 18px; }
.attention-item .icon { width: 16px; flex-basis: 16px; margin-left: auto; }
.attention-clear { display: flex; gap: 10px; align-items: center; font-size: 11px; color: var(--color-accepted); margin-top: 16px; }
.table-empty-state { display: grid; justify-items: center; text-align: center; gap: 12px; padding: 44px 20px; color: var(--color-muted); }
.table-empty-state p { margin: 0; font-size: 12px; }
.empty-icon { width: 40px; height: 40px; fill: none; stroke: var(--color-link); stroke-width: 1.2; }
.no-company { max-width: 820px; margin: 48px auto; text-align: center; padding: 24px; }
.no-company-symbol { margin: 0 auto 24px; width: 80px; height: 80px; border-radius: 8px; background: var(--bg-processing); color: var(--color-link); display: grid; place-items: center; }
.no-company-symbol svg { width: 40px; height: 40px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.no-company h1 { font-size: 30px; margin: 12px 0; }
.no-company > p:not(.eyebrow) { color: var(--color-muted); font-size: 14px; max-width: 520px; margin: 0 auto; }
.no-company-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 28px 0 48px; }
.onboarding-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--color-line); padding: 24px 0; gap: 20px; }
.onboarding-steps > div { display: grid; justify-items: center; gap: 12px; font-size: 11px; }
.onboarding-steps span { width: 28px; height: 28px; display: grid; place-items: center; color: var(--color-link); border: 1px solid var(--color-line); border-radius: 50%; }
.support-contact { margin: 32px auto 0; max-width: 540px; text-align: left; }
.support-contact h2 { font-size: 15px; }
.support-contact p { font-size: 12px; color: var(--color-muted); }
@media (min-width: 1700px) {
    .app-shell__main { padding: 32px 48px; }
    .dashboard-hero { margin: -32px -48px 0; padding: 24px 48px 68px; }
    .dashboard-columns { grid-template-columns: minmax(0, 1fr) 330px; }
    .recent-documents, .funnel-section, .attention-section { padding: 24px; }
    .recent-table th, .recent-table td { padding-block: 18px; }
    .document-customer strong { font-size: 13px; }
    .document-customer small, .recent-table .encf, .data-table .amount-cell, .status-chip { font-size: 11px; }
}
@media (max-width: 1200px) {
    .dashboard-columns { grid-template-columns: minmax(0, 1fr); }
    .dashboard-aside { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .monthly-chart { width: 30%; }
    .metric-card { padding: 16px; }
}
@media (max-width: 1000px) {
    .sidebar { transform: translateX(-100%); visibility: hidden; transition: transform .18s, visibility .18s; }
    .menu-open .sidebar { transform: translateX(0); visibility: visible; }
    .sidebar-backdrop { position: fixed; inset: 0; border: 0; background: rgb(0 34 43 / 50%); z-index: 35; }
    .menu-open { overflow: hidden; }
    .workspace { margin-left: 0; }
    .menu-toggle { display: inline-flex; }
    .topbar { padding: 12px 24px; }
    .company-switch { max-width: 380px; }
}
@media (max-width: 720px) {
    .topbar { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 10px 8px; padding: 12px 16px; }
    .company-switch { grid-column: 2 / -1; width: 100%; max-width: none; }
    .environment-badge { grid-column: 1 / 3; justify-self: start; margin: 0; font-size: 10px; }
    .topbar-emit { grid-column: 3; margin-left: 0; }
    .topbar-product { grid-column: 2 / -1; }
    .app-shell__main { padding: 24px 16px; }
    .workspace-footer { margin-inline: 16px; }
    .dashboard-hero { margin: -24px -16px 0; padding: 20px 16px 56px; flex-direction: column; align-items: stretch; gap: 20px; }
    .monthly-amount h1 { font-size: 32px; }
    .monthly-chart { width: 100%; max-width: none; min-width: 0; }
    .monthly-chart svg { height: 82px; }
    .dashboard-metrics { margin-top: -28px; }
    .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .metric-card { padding: 16px 12px; min-height: 116px; }
    .metric-label { font-size: 11px; }
    .metric-card strong { font-size: 25px; }
    .metric-card > span { font-size: 9px; }
    .fiscal-health { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 16px 12px; gap: 18px 10px; }
    .fiscal-health h2 { grid-column: 1 / -1; }
    .health-item { min-width: 0; gap: 7px; }
    .health-item strong { font-size: 10px; }
    .health-item > div > span { font-size: 9px; }
    .health-indicator { width: 24px; height: 24px; }
    .dashboard-columns { gap: 16px; }
    .dashboard-aside { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .recent-documents, .funnel-section, .attention-section { padding: 16px; }
    .recent-table { min-width: 0; }
    .recent-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
    .recent-table tbody, .recent-table tr { display: block; }
    .recent-table tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; padding: 14px 0; border-bottom: 1px solid var(--color-line); }
    .recent-table td { display: block; border: 0; padding: 4px 0; min-width: 0; }
    .recent-table td + td { padding-left: 0; }
    .recent-table td:first-child, .recent-table td:last-child { grid-column: 1 / -1; }
    .recent-table .encf { padding-top: 8px; }
    .recent-table .amount-cell { padding-top: 8px; }
    .split-layout, .form-grid.two-columns, .relation-grid, .status-panel dl { grid-template-columns: minmax(0, 1fr); }
    .page-heading { flex-wrap: wrap; }
    .page-heading h2 { font-size: 24px; }
    .filter-bar > div { width: 100%; }
    .no-company { padding: 16px 0; margin: 20px auto; }
    .no-company h1 { font-size: 26px; }
    .onboarding-steps { grid-template-columns: minmax(0, 1fr); text-align: left; }
    .onboarding-steps > div { display: flex; align-items: center; }
    .no-company-actions > a { width: 100%; }
    .no-company-actions { margin-bottom: 32px; }
}
@media (prefers-reduced-motion: reduce) { .sidebar { transition: none; } }
.emission-details, .emission-summary { grid-column: 1 / -1; min-width: 0; }
.emission-line { margin: 16px 0; padding: 16px 0; border: 0; border-top: 1px solid var(--color-line); min-width: 0; }
.emission-line legend { font-weight: 600; }
.emission-summary { border-top: 1px solid var(--color-line); padding-top: 16px; }
.emission-summary dl { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px; }
.emission-summary dd { margin: 6px 0 0; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
