/* RAREBI BILL product surfaces: one restrained operational vocabulary. */
.sidebar { overflow-y: auto; scrollbar-width: thin; }
.sidebar-bottom { margin-top: 28px; }
.nav-group-label { margin-top: 19px; margin-bottom: 11px; }
.side-nav { flex: none; }
.nav-item { flex: none; }
.nav-item em { background: #eed9a6; }
main { padding-top: 31px; }

.product-header { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; margin:0 0 27px; }
.product-header h1 { margin:0; max-width:830px; font-size:32px; line-height:1.17; letter-spacing:-.035em; font-weight:800; text-wrap:balance; }
.product-header p { margin:10px 0 0; max-width:720px; color:#58665c; font-size:13px; line-height:1.6; }
.product-header .primary-button { margin-top:1px; }
.surface-panel { background:#fff; border:1px solid #e3e8e0; border-radius:14px; padding:23px 24px; min-width:0; }
.panel-heading { margin-bottom:20px; }
.panel-heading h2 { margin:0; font-size:17px; line-height:1.3; letter-spacing:-.015em; font-weight:800; }
.panel-heading p { color:#667269; margin:6px 0 0; font-size:12px; line-height:1.5; }
.full-panel { padding-bottom:0; overflow:hidden; }
.full-panel .table-scroll { margin:0 -24px; }
.secondary-button { min-height:40px; border:1px solid #cdd5cb; border-radius:8px; background:#fff; color:#2d3930; padding:9px 13px; font-size:11px; font-weight:800; display:inline-flex; align-items:center; justify-content:center; gap:7px; transition:background .18s ease,border-color .18s ease; }
.secondary-button:hover { background:#f8faf6; border-color:#a9b6a6; }
.table-action { border:0; background:transparent; padding:8px 2px; color:#77540e; font-size:11px; font-weight:800; display:inline-flex; align-items:center; gap:5px; }
.table-action:hover { text-decoration:underline; text-underline-offset:4px; }
.table-note { color:#466b55; font-size:10px; font-weight:700; margin-right:9px; }
.inline-note { display:flex; align-items:flex-start; gap:10px; color:#68766a; font-size:11px; line-height:1.55; margin:21px 2px 0; }
.inline-note svg { flex:none; color:#a87818; }

.overview-lead { background:#26312b; color:#fff; border-radius:15px; min-height:208px; display:grid; grid-template-columns:1.35fr .8fr; overflow:hidden; }
.lead-message { padding:31px 34px; position:relative; z-index:1; }
.lead-mark { display:grid; place-items:center; width:35px; height:35px; border:1px solid #ddaf4a7d; border-radius:9px; color:#f3bf49; margin-bottom:15px; }
.lead-message h2 { margin:0; max-width:580px; font-size:22px; line-height:1.26; letter-spacing:-.025em; }
.lead-message p { max-width:600px; color:#cbd4cb; font-size:12px; line-height:1.6; margin:9px 0 0; }
.lead-link { border:0; background:transparent; color:#f3c254; font-size:11px; font-weight:800; padding:15px 0 0; display:flex; gap:8px; align-items:center; }
.lead-link:hover { color:#ffe09a; }
.lead-flow { display:flex; flex-direction:column; justify-content:center; border-left:1px solid #ffffff22; background:#303d34; padding:15px 28px; }
.lead-flow>div { display:flex; align-items:center; gap:16px; padding:13px 0; border-bottom:1px solid #ffffff21; }
.lead-flow>div:last-child { border-bottom:0; }
.lead-flow span { color:#eabb52; font-size:11px; font-weight:800; font-variant-numeric:tabular-nums; }
.lead-flow strong { font-size:12px; font-weight:700; }
.product-stats, .compact-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:23px 0 27px; background:#fff; border:1px solid #e3e8e0; border-radius:13px; overflow:hidden; }
.compact-stats { grid-template-columns:repeat(3,1fr); margin-top:0; }
.product-stat { display:flex; flex-direction:column; gap:9px; padding:19px 21px; border-right:1px solid #e7ebe5; min-width:0; }
.product-stat:last-child { border-right:0; }
.product-stat strong { font-size:24px; letter-spacing:-.035em; font-weight:800; font-variant-numeric:tabular-nums; white-space:nowrap; }
.product-stat span { color:#617064; font-size:11px; line-height:1.4; font-weight:700; }
.product-stat.gold strong { color:#916308; }
.product-stat.ink strong { color:#205e4b; }
.timing-strip { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:-5px 0 26px; }
.timing-strip>div { display:flex; flex-direction:column; gap:7px; padding:15px 18px; border:1px solid #e3e8e0; border-radius:10px; background:#fff; }
.timing-strip strong { font-size:11px; margin-bottom:3px; }
.timing-strip span { display:flex; justify-content:space-between; gap:8px; color:#607064; font-size:11px; }
.timing-strip b { color:#2b382f; font-size:12px; text-align:right; }
.overview-grid { display:grid; grid-template-columns:1.12fr .88fr; gap:18px; }
.focus-list { display:flex; flex-direction:column; }
.focus-clear { color:#607065; font-size:12px; line-height:1.55; margin:0; padding:18px 2px; border-top:1px solid #edf0eb; }
.focus-item { width:100%; text-align:left; background:#fff; border:0; border-top:1px solid #edf0eb; min-height:73px; display:flex; align-items:center; gap:13px; padding:9px 2px; color:#445149; }
.focus-item:hover { background:#fbfcf9; }
.focus-item>span:nth-child(2) { flex:1; min-width:0; }
.focus-item strong,.focus-item small { display:block; }
.focus-item strong { color:#27332b; font-size:12px; }
.focus-item small { color:#68766a; font-size:10px; line-height:1.45; margin-top:4px; }
.focus-item>svg { color:#839085; flex:none; }
.focus-icon { display:grid; place-items:center; width:37px; height:37px; flex:none; border-radius:9px; }
.focus-icon.amber { background:#fff0db; color:#a66c16; }
.focus-icon.yellow { background:#fff5d8; color:#9b7616; }
.focus-icon.blue { background:#e7edf7; color:#516b9a; }
.advantage-step { display:flex; gap:13px; padding:10px 0 14px; }
.advantage-step>span { width:31px; height:31px; display:grid; place-items:center; border-radius:8px; background:#f4f4ed; color:#86702f; flex:none; }
.advantage-step strong { font-size:11px; }
.advantage-step p { color:#657168; font-size:10px; line-height:1.5; margin:4px 0 0; }
.pilot-band { display:flex; align-items:flex-start; gap:13px; padding:18px 22px; border:1px solid #e8dcbe; border-radius:11px; background:#fff8e9; margin-top:21px; }
.pilot-band>span { color:#a57619; flex:none; }
.pilot-band strong { font-size:11px; }
.pilot-band p { color:#675d46; font-size:11px; line-height:1.55; margin:5px 0 0; }

.channel-strip { display:grid; grid-template-columns:repeat(5,1fr); gap:11px; margin-bottom:22px; }
.channel-strip>div { background:#fff; border:1px solid #e3e8e0; border-radius:10px; padding:15px 16px; min-height:72px; }
.channel-dot { display:inline-block; width:7px; height:7px; border:2px solid #bc8d25; border-radius:50%; margin-right:7px; }
.channel-strip strong { font-size:11px; }
.channel-strip small { display:block; color:#6d796f; font-size:10px; margin:7px 0 0 14px; }
.product-table { min-width:980px; }
.product-table th:first-child,.product-table td:first-child { padding-left:24px; }
.product-table th:last-child,.product-table td:last-child { padding-right:24px; }
.product-table td { height:70px; }
.product-table .vendor-cell span:last-child { display:flex; flex-direction:column; gap:4px; }
.product-table .vendor-cell small { color:#956323; font-size:10px; }
.source-chip { color:#4f6152; font-size:10px; font-weight:700; padding:5px 7px; background:#f1f4ee; border-radius:6px; }
.archive-controls { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin:0 0 19px; }
.archive-tabs,.archive-fields { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.archive-tabs { padding:4px; border:1px solid #e1e7dd; border-radius:9px; background:#f7f9f5; }
.archive-tabs .filter-tab { padding:8px 10px; border:0; border-radius:6px; background:transparent; color:#5b6c5e; font-size:11px; font-weight:700; white-space:nowrap; }
.archive-tabs .filter-tab.active { background:#fff; color:#29382e; box-shadow:0 1px 5px #263b2817; }
.archive-fields label { display:flex; align-items:center; gap:6px; }
.archive-fields .search-field { min-width:220px; padding:0 10px; border:1px solid #d4ddd2; border-radius:8px; color:#6d796f; background:#fff; }
.archive-fields input,.archive-fields select { height:38px; border:1px solid #d4ddd2; border-radius:8px; background:#fff; color:#344335; font:inherit; font-size:11px; }
.archive-fields input { width:180px; border:0; outline:0; min-width:0; }
.archive-fields select { padding:0 28px 0 9px; }
.archive-fields :is(input,select):focus-visible,.archive-tabs .filter-tab:focus-visible { outline:3px solid #e9aa1b; outline-offset:2px; }
.filter-more { min-height:40px; white-space:nowrap; }
.advanced-filters { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:16px; margin:-4px 0 19px; border:1px solid #e1e9dd; border-radius:10px; background:#f9fbf7; }
.advanced-filters>label,.advanced-filters fieldset label { display:flex; flex-direction:column; gap:6px; color:#4c6150; font-size:11px; font-weight:700; min-width:0; }
.advanced-filters :is(input,select) { width:100%; min-height:40px; border:1px solid #ccd8ca; border-radius:7px; padding:6px 9px; background:#fff; color:#283d2e; font:inherit; font-size:12px; }
.advanced-filters :is(input,select):focus-visible { outline:3px solid #e9aa1b; outline-offset:2px; }
.advanced-filters fieldset { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:0; padding:0; border:0; min-width:0; }
.advanced-filters legend { color:#4c6150; font-size:11px; font-weight:700; padding:0 0 6px; }
.advanced-clear { justify-self:start; align-self:end; min-height:40px; }

.ai-scope-banner { display:flex; align-items:flex-start; gap:12px; background:#fff7e5; border:1px solid #ebdab5; border-radius:11px; padding:16px 19px; margin-bottom:18px; }
.ai-scope-banner svg { flex:none; color:#906719; }
.ai-scope-banner strong { font-size:12px; }
.ai-scope-banner p { color:#6b624e; font-size:11px; line-height:1.55; margin:4px 0 0; }
.ai-workbench { display:grid; grid-template-columns:215px minmax(0,1fr); gap:18px; align-items:start; }
.ai-case-list { background:#fff; border:1px solid #e3e8e0; border-radius:13px; overflow:hidden; padding:20px 0; }
.ai-case-list .panel-heading { padding:0 17px; margin-bottom:9px; }
.ai-case { width:100%; background:transparent; border:0; border-left:3px solid transparent; padding:13px 13px 13px 14px; display:flex; align-items:flex-start; gap:7px; text-align:left; }
.ai-case:hover { background:#f8faf5; }
.ai-case.active { background:#fff8e9; border-left-color:#e8b23c; }
.ai-case span:first-child { flex:1; min-width:0; }
.ai-case strong,.ai-case small { display:block; }
.ai-case strong { font-size:11px; color:#2d382f; line-height:1.3; }
.ai-case small { margin-top:5px; color:#667266; font-size:9px; line-height:1.4; }
.case-confidence { font-size:10px; font-weight:800; color:#7b5b19; }
.ai-main { display:grid; grid-template-columns:.76fr 1.24fr; gap:18px; min-width:0; }
.ai-source,.ai-decide { min-height:530px; }
.source-doc { background:#fcfcf9; border:1px solid #e0e5da; box-shadow:0 12px 28px #2334210b; min-height:310px; padding:21px; }
.source-doc-top { display:flex; justify-content:space-between; color:#79857a; font-size:9px; gap:8px; }
.source-doc-top>span:first-child { display:flex; align-items:center; gap:5px; }
.source-doc-name { color:#273229; font-size:16px; font-weight:800; line-height:1.25; margin:31px 0 21px; }
.source-doc-line { display:flex; justify-content:space-between; gap:9px; padding:10px 0; border-top:1px solid #e9ede5; font-size:10px; }
.source-doc-line span { color:#6c796d; }
.source-doc-line strong { color:#29372c; text-align:right; }
.source-doc-highlight { background:#fff3cd; color:#79550e; border-radius:6px; padding:10px; font-size:10px; line-height:1.5; margin-top:24px; }
.source-caption { text-align:center; color:#728074; font-size:10px; margin:12px 0 0; }
.ai-proposal { border:1px solid #e8e9e3; border-radius:10px; padding:17px; }
.ai-proposal-head { display:flex; justify-content:space-between; gap:8px; align-items:center; }
.ai-badge { background:#f0ead8; color:#725813; padding:6px 8px; font-size:10px; font-weight:800; border-radius:6px; }
.ai-proposal-head strong { font-size:10px; color:#475b49; }
.confidence-track { background:#e9ede4; height:5px; border-radius:5px; margin:15px 0 19px; overflow:hidden; }
.confidence-track span { display:block; height:100%; background:#d7a739; border-radius:5px; }
.proposal-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; padding-bottom:14px; border-bottom:1px solid #eef0e9; }
.proposal-grid small,.proposal-grid strong { display:block; }
.proposal-grid small { font-size:9px; color:#68776a; margin-bottom:6px; }
.proposal-grid strong { font-size:12px; color:#2c382e; }
.evidence-block { display:flex; gap:9px; padding:12px 0; border-bottom:1px solid #eef0e9; }
.evidence-block>span { color:#9b762d; flex:none; }
.evidence-block strong { font-size:10px; }
.evidence-block p { font-size:10px; line-height:1.5; color:#5d6b60; margin:4px 0 0; }
.decision-state { display:flex; align-items:center; gap:6px; color:#526e57; font-size:10px; font-weight:800; margin:13px 0; }
.proposal-actions { display:flex; flex-wrap:wrap; gap:7px; align-items:center; }
.proposal-actions .primary-button,.proposal-actions .secondary-button { min-height:36px; height:36px; font-size:10px; }
.proposal-actions .text-button { padding:8px; }
.ai-edit { display:flex; flex-direction:column; gap:7px; background:#f8faf6; border-radius:8px; padding:12px; }
.ai-edit label { font-size:10px; font-weight:800; }
.ai-edit input { min-height:39px; border:1px solid #bfcbbd; border-radius:7px; padding:8px; font-size:11px; }
.exception-note { display:flex; align-items:flex-start; gap:10px; margin-top:14px; padding:13px 14px; border:1px solid #ead5ae; background:#fffaf0; border-radius:9px; color:#8c631b; }
.exception-note svg { flex:none; }
.exception-note strong { color:#654d20; font-size:11px; }
.exception-note p { color:#685b43; font-size:11px; line-height:1.55; margin:5px 0 0; }
.next-human { margin-top:18px; padding:16px; background:#f7f9f5; border-radius:9px; }
.next-human strong { font-size:11px; }
.next-human p { color:#617064; font-size:10px; line-height:1.5; margin:5px 0 12px; }

.period-label { display:flex; align-items:center; gap:8px; font-size:11px; color:#617164; margin:-10px 0 17px; font-weight:700; }
.outgoing-customer strong,.outgoing-customer small { display:block; }
.outgoing-customer strong { color:#303b32; font-size:11px; }
.outgoing-customer small { color:#69766b; font-size:10px; margin-top:4px; }
.invoice-id { color:#354037; font-size:10px; }
.outgoing-concepts { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:18px; }
.outgoing-concepts>div { background:#fff; border:1px solid #e3e8e0; border-radius:10px; padding:17px 19px; }
.outgoing-concepts svg { color:#977021; display:block; margin-bottom:9px; }
.outgoing-concepts strong { font-size:11px; }
.outgoing-concepts p { color:#657265; font-size:10px; line-height:1.55; margin:5px 0 0; }
.outgoing-status.status-draft { background:#eff0ed; color:#4d5b50; }
.outgoing-status.status-approved { background:#e9f1e9; color:#355f42; }
.outgoing-status.status-open { background:#e8eff8; color:#3f6591; }
.outgoing-status.status-overdue { background:#fff0e8; color:#97502f; }
.outgoing-status.status-partial { background:#fff3db; color:#8b651d; }
.outgoing-status.status-paid { background:#e7f4e9; color:#2f6c45; }
.outgoing-status.status-issued { background:#e9f1e9; color:#355f42; }
.outgoing-actions { display:flex; align-items:center; flex-wrap:wrap; gap:5px 12px; min-width:155px; }
.outgoing-actions .table-action { white-space:nowrap; }
.outgoing-actions .muted-action { color:#5d6b61; }
.discount-feature { display:flex; gap:19px; align-items:center; border-radius:13px; background:#fff3d5; padding:23px 27px; margin-bottom:22px; }
.discount-feature>span { display:grid; place-items:center; width:48px; height:48px; flex:none; border-radius:11px; background:#f0ca6d; color:#59410b; }
.discount-feature small,.discount-feature strong { display:block; }
.discount-feature small { color:#6e570f; font-size:11px; font-weight:800; }
.discount-feature strong { color:#3b320c; font-size:27px; letter-spacing:-.03em; margin:3px 0; }
.discount-feature p { color:#67571d; font-size:11px; margin:0; }
.payment-item { display:grid; grid-template-columns:1.1fr .95fr 1fr; gap:15px; align-items:center; padding:20px 0; border-top:1px solid #e9ede7; }
.payment-identity strong,.payment-identity span,.payment-identity small { display:block; }
.payment-identity strong { font-size:12px; }
.payment-identity span,.payment-identity small { color:#67746a; font-size:10px; margin-top:5px; }
.payment-identity small { color:#906715; font-weight:700; }
.payment-values { display:flex; flex-direction:column; gap:5px; }
.payment-values span { color:#68776a; font-size:10px; }
.payment-values strong { color:#263329; margin-left:5px; font-size:11px; }
.payment-values .saving-value strong { color:#755308; }
.payment-action { display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:8px; }
.saving-pill { border-radius:6px; background:#fff3d4; padding:6px 8px; color:#7b590e; font-size:10px; font-weight:800; }
.accounting-grid,.contact-grid,.settings-grid,.insight-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.accounting-records>div { display:flex; align-items:center; justify-content:space-between; gap:9px; padding:11px 0; border-top:1px solid #edf0e9; }
.accounting-records>div>span:first-child { color:#303e32; font-size:11px; font-weight:700; }
.accounting-records small { display:block; color:#708075; font-size:9px; font-weight:500; margin-top:4px; }
.accounting-period { display:inline-flex; align-items:center; gap:8px; margin:0 0 18px; color:#526757; }
.accounting-period select { min-height:44px; border:1px solid #cdd8ca; border-radius:8px; padding:0 12px; color:#2e4034; background:#fff; font:inherit; font-size:12px; font-weight:700; }
.accounting-period select:focus-visible { outline:3px solid #e9aa1b; outline-offset:2px; }
.accounting-blockers { margin-bottom:18px; }
.accounting-blocker { display:flex; align-items:center; gap:13px; border-top:1px solid #e8eee6; padding:13px 0; }
.accounting-blocker>div { flex:1; min-width:0; display:flex; flex-direction:column; gap:4px; }
.accounting-blocker strong { color:#263d2d; font-size:12px; }
.accounting-blocker small { color:#66776a; font-size:11px; }
.accounting-blocker .text-button { min-height:44px; white-space:nowrap; }
.export-preview { border:1px solid #cfdbcc; background:#f5f9f2; padding:22px 24px; border-radius:12px; margin-top:18px; }
.export-preview .panel-heading { margin-bottom:14px; }
.export-items { display:flex; flex-wrap:wrap; gap:9px; }
.export-items span { display:inline-flex; align-items:center; gap:7px; border:1px solid #d9e3d3; border-radius:7px; background:#fff; padding:9px 11px; font-size:11px; font-weight:700; }
.export-preview>p { color:#5b6c5e; font-size:11px; margin:15px 0 0; }
.contact-list>div { display:flex; align-items:center; gap:11px; padding:13px 0; border-top:1px solid #edf0e9; }
.contact-avatar { width:34px; height:34px; flex:none; border-radius:8px; display:grid; place-items:center; background:#f3e9cf; color:#7c5a19; font-size:10px; font-weight:800; }
.contact-avatar.customer-avatar { background:#e5eee5; color:#3f6946; }
.contact-list strong { color:#2d3b30; font-size:11px; flex:1; }
.contact-list small { color:#6c7c6c; font-size:10px; }
.contact-panel-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.contact-panel-head .panel-heading { margin-bottom:12px; }
.contact-panel-head .secondary-button { flex:none; }
.contact-summary { display:flex; flex-direction:column; gap:4px; min-width:0; flex:1; }
.contact-summary strong { font-size:13px; }
.contact-summary small { font-size:11px; overflow-wrap:anywhere; }
.contact-list .text-button { min-height:44px; flex:none; }
.contact-caption { color:#617365; font-size:13px; margin:-9px 0 18px; line-height:1.5; }
.contact-dialog { width:min(650px,calc(100vw - 28px)); }
#contact-form { display:flex; flex-direction:column; gap:18px; }
.contact-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.contact-form-grid label { display:flex; flex-direction:column; gap:6px; color:#354838; font-size:12px; font-weight:700; }
.contact-form-grid :is(input,select) { width:100%; min-height:44px; border:1px solid #cdd8ca; border-radius:8px; padding:8px 10px; background:#fff; color:#263d2d; font:inherit; font-size:13px; }
.contact-form-grid :is(input,select):focus-visible { outline:3px solid #e9aa1b; outline-offset:2px; }
.recurring-dialog { width:min(720px,calc(100vw - 28px)); }
.schedule-list { display:flex; flex-direction:column; border-top:1px solid #e4eae0; margin-bottom:19px; }
.schedule-item { display:flex; align-items:center; flex-wrap:wrap; gap:10px 15px; padding:13px 0; border-bottom:1px solid #e4eae0; }
.schedule-item-main { flex:1; min-width:170px; display:flex; flex-direction:column; gap:4px; }
.schedule-item-main strong { color:#293b2e; font-size:13px; }
.schedule-item-main span,.schedule-item-main small { color:#5d6d60; font-size:12px; }
.schedule-state { color:#806317; background:#fff4d9; border-radius:6px; padding:5px 8px; font-size:11px; font-weight:800; }
.schedule-state.active { color:#2a6242; background:#e9f4e9; }
.schedule-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.schedule-actions .text-button { min-height:44px; }
#recurring-form { display:flex; flex-direction:column; gap:13px; }
#recurring-form h3 { font-size:14px; margin:0; }
.outgoing-concepts .secondary-button { margin-top:13px; }
.rules-panel { margin-top:18px; }
.rule-list { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.rule-list>div { display:flex; gap:8px; background:#f7f9f5; border-radius:8px; padding:13px; font-size:10px; line-height:1.5; color:#374538; }
.rule-list svg { color:#658466; flex:none; }
.rules-panel>p { color:#6a786b; font-size:11px; margin:16px 0 0; }
.chart-legend { display:flex; align-items:center; gap:7px; font-size:10px; color:#687769; margin-bottom:23px; }
.legend-in,.legend-out { display:inline-block; width:9px; height:9px; border-radius:2px; background:#50765a; margin-left:9px; }
.legend-out { background:#d7ad48; }
.cash-row { margin-bottom:23px; }
.cash-row strong { display:block; font-size:11px; margin-bottom:9px; }
.cash-row-values { display:flex; justify-content:space-between; flex-wrap:wrap; gap:5px 12px; color:#687769; font-size:10px; margin:-2px 0 9px; }
.cash-row-values b { color:#35483b; margin-left:3px; }
.bar-track { display:flex; flex-direction:column; gap:5px; }
.bar-track span { height:10px; border-radius:0 6px 6px 0; }
.bar-in { background:#50765a; }.bar-out { background:#d7ad48; }
.supplier-bars>div { position:relative; display:flex; justify-content:space-between; padding:11px 0 13px; border-bottom:1px solid #e8ede6; font-size:10px; gap:9px; }
.supplier-bars>div span { color:#4b5a4f; }.supplier-bars>div strong { font-size:10px; white-space:nowrap; }
.supplier-bars i { position:absolute; left:0; bottom:0; height:3px; background:#ddbc72; border-radius:3px; }
.integration-group { border-top:1px solid #e8ece5; padding:13px 0; }
.integration-group h3 { font-size:11px; color:#536453; margin:0 0 10px; }
.integration-group>div { display:flex; align-items:center; gap:10px; padding:7px 0; }
.integration-logo { display:grid; place-items:center; width:28px; height:28px; border-radius:7px; background:#edf2eb; color:#54705a; font-size:11px; font-weight:800; }
.integration-group strong { font-size:11px; flex:1; }.integration-group small { font-size:9px; color:#6c786d; }
.role-list>div { display:flex; gap:10px; padding:11px 0; border-top:1px solid #e8ece5; }
.role-list>div>span { color:#688069; }.role-list strong { font-size:11px; }.role-list p { font-size:10px; color:#657265; margin:3px 0 0; }
.country-card { padding:14px; border-radius:8px; background:#f7f8f3; margin-top:12px; }.country-card strong { font-size:11px; }.country-card p { font-size:10px; line-height:1.55; color:#667266; margin:5px 0 0; }
.advantage-step p,.outgoing-concepts p,.ai-scope-banner p,.pilot-band p,.next-human p,.evidence-block p,.country-card p,.role-list p,.drawer-ai-summary p,.inline-note { font-size:12px; line-height:1.55; }
.advantage-step strong,.outgoing-concepts strong,.next-human strong,.evidence-block strong,.rule-list>div,.source-doc-line,.source-doc-highlight,.archive-fields input,.archive-fields select,.archive-tabs .filter-tab { font-size:12px; }
.product-table td,.product-table th,.payment-identity strong,.payment-values strong,.accounting-records>div>span:first-child { font-size:12px; }
.drawer-ai-summary { background:#fff9ec; border:1px solid #eedeb8; border-radius:9px; padding:14px; margin-top:13px; }
.drawer-ai-summary>div { display:flex; justify-content:space-between; gap:9px; align-items:center; }
.drawer-ai-summary strong { color:#3d3c2b; font-size:11px; }
.drawer-ai-summary span { font-size:10px; font-weight:800; color:#8a6419; }
.drawer-ai-summary p { color:#685e43; line-height:1.55; font-size:10px; margin:9px 0; }
.drawer-ai-summary button { background:none; border:0; padding:4px 0; color:#825b0f; font-size:10px; font-weight:800; display:flex; align-items:center; gap:5px; }
.decision-trail { display:flex; flex-direction:column; gap:13px; padding-top:15px; }
.decision-trail>div { display:flex; gap:10px; align-items:center; color:#526051; font-size:10px; }
.decision-trail>div::before { content:''; display:block; width:7px; height:7px; flex:none; border-radius:50%; background:#d6aa43; }
.decision-trail>div span { display:block; line-height:1.45; }
.decision-trail small { display:block; color:#788579; font-size:10px; margin-top:3px; }
.incoming-edit-form { margin-top:17px; padding:15px; border:1px solid #e0e7db; border-radius:9px; background:#fafbf8; }
.edit-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.original-preview { margin:14px 0 10px; border:1px solid #dce3da; border-radius:9px; background:#f7f9f6; overflow:auto; max-height:440px; }
.original-preview iframe { display:block; width:100%; height:420px; border:0; background:white; }
.original-preview img { display:block; width:100%; height:auto; max-height:420px; object-fit:contain; }
.original-preview pre { margin:0; padding:16px; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; font:11px/1.6 ui-monospace,monospace; color:#344237; }
.task-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid #e9ede7; }
.task-row span { display:flex; flex-direction:column; gap:4px; min-width:0; }
.task-row strong { font-size:11px; overflow-wrap:anywhere; }
.task-row small { font-size:10px; color:#7b887d; }
.task-form { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:15px; }
.task-form label,.payment-dialog form label { display:flex; flex-direction:column; gap:6px; color:#566657; font-size:11px; font-weight:700; }
.task-form input,.payment-dialog form input { width:100%; min-width:0; height:38px; border:1px solid #cbd7c8; border-radius:7px; padding:7px 9px; }
.task-form label:first-child,.task-form button { grid-column:1/-1; }
.setup-panel { margin-bottom:18px; }
.service-catalog { margin:18px 0; }
.service-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:16px 0; }
.service-list>div { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px; background:#f7f9f5; border-radius:9px; }
.service-list span { display:flex; flex-direction:column; gap:5px; min-width:0; }.service-list strong { font-size:11px; overflow-wrap:anywhere; }.service-list small { font-size:10px; color:#7d897e; }
#service-form { display:grid; grid-template-columns:2fr 1fr 1fr auto; align-items:end; gap:10px; }
#service-form label { display:flex; flex-direction:column; gap:6px; color:#566657; font-size:11px; font-weight:700; }
#service-form input,#service-form select { min-width:0; height:38px; border:1px solid #cbd7c8; border-radius:7px; padding:7px 9px; background:#fff; }
@media(max-width:740px) { .service-list { grid-template-columns:1fr; } #service-form { grid-template-columns:1fr 1fr; } }
@media(max-width:520px) { #service-form { grid-template-columns:1fr; } }
.setup-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:18px 0; }
.setup-grid label { display:flex; flex-direction:column; gap:7px; color:#566657; font-size:11px; font-weight:700; }
.setup-grid input,.setup-grid select { min-width:0; height:40px; border:1px solid #cbd7c8; border-radius:8px; background:#fff; color:#27362c; padding:8px 10px; }
@media(max-width:740px) { .setup-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:520px) { .setup-grid { grid-template-columns:1fr; } }
.invoice-preview-dialog { position:fixed; z-index:51; top:3vh; left:50%; transform:translateX(-50%); width:min(760px,calc(100vw - 24px)); max-height:94vh; overflow:auto; background:#f4f5f1; border-radius:14px; box-shadow:0 24px 80px #17241b45; padding:20px; }
.reminder-dialog { max-height:90vh; overflow:auto; }.reminder-letter { display:flex; flex-direction:column; gap:8px; border:1px solid #e4e9e1; border-radius:9px; background:#fafbf8; padding:18px; margin:17px 0; font-size:12px; }.reminder-letter small { color:#768477; }.reminder-stages { display:flex; flex-direction:column; gap:8px; }.reminder-stages>div { display:flex; flex-direction:column; gap:4px; padding:12px; border-radius:8px; background:#f6f8f4; font-size:11px; }.reminder-stages small { color:#798579; }
.find-dialog { position:fixed; z-index:54; top:min(14vh,110px); left:50%; transform:translateX(-50%); width:min(620px,calc(100vw - 24px)); max-height:78vh; display:flex; flex-direction:column; overflow:hidden; background:#fff; border-radius:14px; box-shadow:0 24px 80px #17241b45; }
.camera-drop { min-height:50px; margin-top:10px; }
.import-panel { margin-bottom:18px; }.import-choice { display:inline-flex; position:relative; cursor:pointer; overflow:hidden; }.import-choice input { position:absolute; width:1px; height:1px; opacity:0; }.import-choice:focus-within { outline:3px solid #e9aa1b; }.import-preview { margin-top:16px; }.import-preview>strong { font-size:12px; }.import-preview .table-scroll { margin-top:10px; max-height:230px; overflow:auto; }.import-preview table td { white-space:nowrap; font-size:11px; }
.aging-panel { margin:18px 0; }.aging-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.aging-grid>div { display:flex; flex-direction:column; gap:7px; padding:15px; border-radius:9px; background:#f7f9f5; }.aging-grid small { font-size:11px; color:#798678; }.aging-grid strong { font-size:18px; }
.workspace-switch strong { max-width:145px; overflow:hidden; text-overflow:ellipsis; }
.permission-matrix { margin:18px 0; }.permission-matrix h3 { font-size:12px; margin:0 0 10px; }.permission-matrix table { border-collapse:collapse; width:100%; min-width:420px; font-size:10px; }.permission-matrix th,.permission-matrix td { padding:9px 7px; border-bottom:1px solid #e8ede6; text-align:center; }.permission-matrix th:first-child { text-align:left; }.permission-matrix thead th { color:#718074; font-weight:700; }.permission-matrix td[aria-label="Allowed"],.permission-matrix td[aria-label="Erlaubt"] { color:#20704e; font-weight:800; }
@media(max-width:600px) { .aging-grid { grid-template-columns:1fr; } }
.find-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:18px 20px 10px; }.find-head h2 { margin:0; font-size:18px; }.find-input { display:flex; align-items:center; gap:10px; margin:8px 20px 14px; padding:0 12px; border:1px solid #cbd7c8; border-radius:9px; }.find-input:focus-within { outline:3px solid #e9aa1b; }.find-input input { width:100%; height:45px; border:0; outline:0; font-size:13px; }
.find-results { overflow:auto; padding:0 10px 12px; }.find-results>button { width:100%; display:flex; align-items:center; justify-content:space-between; gap:10px; border:0; border-top:1px solid #eef1ec; background:#fff; text-align:left; padding:13px 12px; }.find-results>button:hover,.find-results>button:focus-visible { background:#f7f9f4; }.find-results span { display:flex; flex-direction:column; gap:4px; min-width:0; }.find-results strong { font-size:12px; overflow-wrap:anywhere; }.find-results small { font-size:10px; color:#829083; }.find-results em { font-size:10px; color:#7b6736; font-style:normal; white-space:nowrap; }.find-results p { color:#78857a; font-size:12px; padding:10px; }
.invoice-preview-toolbar,.invoice-preview-toolbar>div { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.invoice-preview-toolbar h2 { margin:0; font-size:19px; }
.invoice-preview-note { color:#846329; font-size:11px; margin:10px 0 15px; }
.invoice-paper { background:#fff; max-width:700px; min-height:720px; padding:42px; margin:auto; box-shadow:0 8px 30px #26332312; color:#26332a; }
.invoice-paper.template-classic { font-family:Georgia,serif; }.invoice-paper.template-classic header { border-bottom-color:#26332a; }.invoice-paper.template-classic header strong span { color:#26332a; }.invoice-paper.template-classic th { background:#f1f2ed; }
.invoice-paper header { display:flex; align-items:flex-start; justify-content:space-between; border-bottom:2px solid #f5bd38; padding-bottom:24px; }
.invoice-paper header strong { letter-spacing:.15em; font-size:20px; }.invoice-paper header strong span { color:#d69e28; }
.invoice-paper header small { max-width:200px; text-align:right; }
.invoice-paper-parties { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin:35px 0; }
.invoice-paper-parties div { display:flex; flex-direction:column; gap:5px; font-size:12px; }.invoice-paper-parties small { color:#7c897d; }.invoice-paper-parties span { line-height:1.5; }
.invoice-paper h3 { font-size:22px; margin:0 0 18px; }.invoice-paper dl { display:flex; gap:25px; margin:0 0 30px; }.invoice-paper dl div { display:flex; flex-direction:column; gap:4px; font-size:11px; }.invoice-paper dt { color:#7c897d; }.invoice-paper dd { margin:0; font-weight:700; }
.invoice-paper table { border-collapse:collapse; width:100%; font-size:12px; }.invoice-paper th { text-align:left; background:#f5f6f2; }.invoice-paper th,.invoice-paper td { padding:12px 10px; border-bottom:1px solid #e5e9e3; }
.invoice-paper-totals { display:flex; flex-direction:column; align-items:flex-end; gap:9px; padding:24px 5px; font-size:12px; }.invoice-paper-totals strong { font-size:17px; }.invoice-paper>p { margin-top:50px; font-size:10px; color:#778478; }
@media(max-width:600px) { .invoice-paper { padding:22px; min-height:0; }.invoice-paper-parties { grid-template-columns:1fr; }.invoice-paper dl { flex-wrap:wrap; }.invoice-preview-toolbar { align-items:flex-start; } }
@media print { body>*:not(#app) { display:none!important; } #app>*:not(.invoice-preview-dialog) { display:none!important; } .invoice-preview-dialog { position:static; transform:none; width:100%; max-height:none; overflow:visible; padding:0; box-shadow:none; } .invoice-preview-toolbar,.invoice-preview-note { display:none!important; } .invoice-paper { box-shadow:none; max-width:none; min-height:0; padding:0; } }
.edit-field-grid label { display:flex; flex-direction:column; gap:5px; color:#566657; font-size:11px; font-weight:700; }
.edit-field-grid input { min-width:0; width:100%; height:38px; border:1px solid #cbd7c8; border-radius:7px; background:#fff; padding:7px 9px; color:#27362c; font-size:12px; }
.edit-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:9px; margin-top:16px; }
.internal-notes>div { border-left:2px solid #d1aa50; padding:2px 0 2px 12px; margin-top:14px; }
.internal-notes p { color:#354637; font-size:12px; line-height:1.5; margin:0 0 5px; }
.internal-notes small,.notes-empty { color:#778477; font-size:10px; }
.note-form { display:flex; flex-direction:column; align-items:flex-end; gap:9px; margin-top:14px; }
.note-form textarea { width:100%; min-height:72px; resize:vertical; border:1px solid #cbd7c8; border-radius:8px; padding:10px; font:inherit; font-size:12px; line-height:1.45; }
.note-form textarea:focus-visible,.edit-field-grid input:focus-visible { outline:3px solid #e9aa1b; outline-offset:2px; }

.draft-dialog { position:fixed; z-index:51; width:min(520px,calc(100vw - 28px)); max-height:calc(100vh - 28px); overflow-y:auto; left:50%; top:50%; transform:translate(-50%,-50%); background:#fff; border-radius:15px; padding:30px; box-shadow:0 24px 80px #17241b35; }
.draft-close { position:absolute; right:15px; top:15px; }
.draft-dialog h2 { font-size:21px; margin:2px 36px 7px 0; letter-spacing:-.02em; }.draft-dialog>p { font-size:11px; line-height:1.6; color:#5f6d61; margin:0 0 21px; }
#draft-form { display:flex; flex-direction:column; gap:13px; }
#draft-form .draft-line-heading { margin:4px 0 -5px; font-size:13px; }
.draft-line { border:1px solid #e0e8dc; border-radius:9px; padding:13px; margin:0; display:flex; flex-direction:column; gap:11px; }
.draft-line legend { padding:0 5px; color:#4b5d4c; font-size:11px; font-weight:800; }
.draft-line-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:9px; }
.draft-line .text-button { align-self:flex-end; }
.draft-totals { display:grid; gap:7px; padding:13px 15px; border:1px solid #dce8d5; border-radius:9px; background:#f5f9f2; }
.draft-totals span { display:flex; justify-content:space-between; gap:12px; color:#516354; font-size:12px; }
.draft-totals span:last-child { padding-top:8px; border-top:1px solid #dce8d5; color:#203c29; font-weight:800; }
#draft-form label { display:flex; flex-direction:column; gap:6px; color:#344235; font-size:11px; font-weight:800; }
#draft-form input,#draft-form select { min-height:42px; border:1px solid #cdd6cb; border-radius:8px; padding:8px 10px; background:#fff; color:#2b382e; font-size:12px; width:100%; }
#draft-form input:focus-visible,#draft-form select:focus-visible { outline:3px solid #e9aa1b; outline-offset:1px; }
.draft-two { display:grid; grid-template-columns:1fr 1fr; gap:13px; }.form-error { color:#9a4939; font-size:11px; margin:0; }
.payment-dialog { width:min(430px,calc(100vw - 28px)); }
.payment-remaining { display:flex; justify-content:space-between; gap:9px; padding:14px 0; border-top:1px solid #e8ece6; border-bottom:1px solid #e8ece6; margin-bottom:19px; font-size:12px; }
.payment-remaining strong { font-size:18px; }
#outgoing-payment-form { display:flex; flex-direction:column; gap:15px; }
#outgoing-payment-form label { display:flex; flex-direction:column; gap:7px; font-size:11px; font-weight:800; }
#outgoing-payment-form input { height:42px; border:1px solid #cbd7c8; border-radius:7px; padding:8px 10px; font:inherit; }
.outgoing-detail-lines { display:flex; flex-direction:column; gap:0; }
.outgoing-detail-line { display:flex; justify-content:space-between; gap:16px; border-top:1px solid #e9eee6; padding:12px 0; font-size:12px; line-height:1.45; }
.outgoing-detail-line strong { color:#25392b; }
.outgoing-detail-line span { color:#667568; text-align:right; }
.detail-supporting { color:#5d6b5f; font-size:12px; line-height:1.6; margin:0; }

@media(max-width:1240px) { .ai-main { grid-template-columns:1fr; }.ai-source,.ai-decide { min-height:0; }.source-doc { max-width:520px; }.channel-strip { grid-template-columns:repeat(3,1fr); } }
@media(max-width:980px) { .overview-grid,.accounting-grid,.contact-grid,.settings-grid,.insight-grid { grid-template-columns:1fr; }.product-header h1 { font-size:28px; }.overview-lead { grid-template-columns:1fr; }.lead-flow { flex-direction:row; border-left:0; border-top:1px solid #ffffff22; }.lead-flow>div { flex:1; border-bottom:0; padding:10px; }.product-stats { grid-template-columns:repeat(2,1fr); }.product-stat:nth-child(2) { border-right:0; }.product-stat:nth-child(-n+2) { border-bottom:1px solid #e7ebe5; }.payment-item { grid-template-columns:1fr 1fr; }.payment-action { grid-column:1/-1; justify-content:flex-start; } }
@media(max-width:980px) { .timing-strip { grid-template-columns:1fr; }.timing-strip>div { display:grid; grid-template-columns:1fr 1fr; }.timing-strip strong { grid-column:1/-1; }.timing-strip span { min-width:0; } }
@media(max-width:520px) { .timing-strip>div { display:flex; } }
@media(max-width:740px) { .sidebar-bottom { margin-top:auto; }.product-header { flex-direction:column; }.product-header h1 { font-size:26px; }.product-header .primary-button { margin-top:0; }.ai-workbench { grid-template-columns:1fr; }.ai-case-list { padding:13px 0; }.ai-case-list .panel-heading { margin-bottom:4px; }.channel-strip { grid-template-columns:repeat(2,1fr); }.rule-list { grid-template-columns:1fr; }.outgoing-concepts { grid-template-columns:1fr; }.payment-item { grid-template-columns:1fr; }.payment-action { grid-column:auto; }.compact-stats { grid-template-columns:repeat(2,1fr); }.compact-stats .product-stat:nth-child(2) { border-right:0; }.compact-stats .product-stat:last-child { border-top:1px solid #e7ebe5; }.lead-flow { padding:12px; }.lead-flow>div { flex-direction:column; align-items:flex-start; gap:5px; } }
@media(max-width:520px) { .product-header h1 { font-size:24px; }.surface-panel { padding:20px 17px; }.full-panel .table-scroll { margin:0 -17px; }.overview-lead { min-height:0; }.lead-message { padding:26px 22px; }.lead-message h2 { font-size:20px; }.product-stat { padding:17px 15px; }.product-stat strong { font-size:19px; white-space:normal; }.product-stat span { font-size:10px; }.channel-strip>div { padding:12px; }.channel-strip small { font-size:9px; }.proposal-grid { grid-template-columns:1fr; }.discount-feature { padding:20px; }.discount-feature strong { font-size:23px; }.draft-dialog { padding:23px 19px; }.draft-two { grid-template-columns:1fr; }.archive-fields,.archive-fields .search-field { width:100%; }.archive-fields .search-field input { width:100%; }.archive-fields label:not(.search-field) { flex:1; }.archive-fields select { width:100%; } }
@media(max-width:520px) { .edit-field-grid { grid-template-columns:1fr; }.edit-actions>* { flex:1; } }
@media(max-width:520px) { .draft-line-grid { grid-template-columns:1fr 1fr; }.draft-line-grid label:last-child { grid-column:1/-1; } }
@media(max-width:520px) { .accounting-blocker { flex-wrap:wrap; }.accounting-blocker .text-button { margin-left:34px; } }
@media(max-width:980px) { .advanced-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .advanced-filters { grid-template-columns:1fr; }.advanced-filters fieldset { grid-template-columns:1fr 1fr; } }
@media(max-width:520px) { .contact-form-grid { grid-template-columns:1fr; }.contact-panel-head { flex-direction:column; }.contact-list>div { flex-wrap:wrap; }.contact-list .text-button { margin-left:45px; } }

/* Readable type and dependable touch targets across the operational screens. */
.product-header p,.panel-heading p,.lead-message p,.advantage-step p,.pilot-band p,.detail-supporting { font-size:14px; }
.product-stat span,.timing-strip span,.focus-item small,.channel-strip small,.outgoing-customer small,.accounting-blocker small { font-size:12px; }
.lead-flow strong,.focus-item strong,.advantage-step strong,.timing-strip strong,.channel-strip strong { font-size:13px; }
.product-table td,.product-table th,.payment-identity strong,.payment-values strong,.accounting-records>div>span:first-child { font-size:13px; }
.table-action { min-height:44px; font-size:12px; }
.secondary-button,.filter-more { min-height:44px; font-size:12px; }
.sidebar-label { color:#536557; }
.sidebar-footer,.notes-empty,.source-caption { color:#586a5c; }
.integration-group small,.contact-list small { color:#566a5b; }
