:root {
  --ink: #242424;
  --muted: #666666;
  --paper: #f2f2f2;
  --card: #ffffff;
  --line: #d2d2d2;
  --navy: #3d3d3d;
  --navy-2: #585858;
  --teal: #2e7d32;
  --orange: #c74634;
  --red: #c74634;
  --incoming: #2e7d32;
  --incoming-soft: #edf6ee;
  --outgoing: #c74634;
  --outgoing-soft: #fbeeed;
}

* { box-sizing: border-box; }
html { background: var(--paper); }
body { margin: 0; background: var(--paper); color: var(--ink); font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif; font-size:14px; font-variant-numeric:tabular-nums lining-nums; }
button, input, select { font: inherit; }
button { cursor: pointer; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 238px minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 26px 18px 18px; background: var(--navy); color: #eaf4f0; display: flex; flex-direction: column; }
.brand { display: flex; align-items: center; gap: 11px; padding: 0 8px 30px; }
.brand-mark { width: 34px; height: 34px; border-radius: 10px 10px 10px 3px; background: var(--orange); display: grid; place-items: center; color: white; font-weight: 900; letter-spacing: -2px; box-shadow: inset -7px -7px 0 rgba(0,0,0,.08); }
.brand strong { font-size: 20px; letter-spacing: -.5px; }
.brand small { display: block; color: #9fbbb5; font-size: 10px; letter-spacing: 1.3px; text-transform: uppercase; margin-top: 2px; }
.nav-label { padding: 0 11px; margin: 7px 0 8px; color: #789994; font-size: 10px; letter-spacing: 1.4px; text-transform: uppercase; font-weight: 700; }
.nav { display: grid; gap: 4px; }
.nav button { display: flex; align-items: center; gap: 11px; padding: 11px 12px; border: 0; border-radius: 9px; color: #bcd0cb; background: transparent; text-align: left; font-size: 13px; font-weight: 600; }
.nav button.active { color: white; background: var(--navy-2); box-shadow: inset 3px 0 var(--orange); }
.nav-icon { width: 22px; height: 22px; border: 1px solid #64817d; border-radius: 6px; display: grid; place-items: center; font-size: 10px; color: #d4e4df; }
.nav button.active .nav-icon { background: var(--orange); border-color: var(--orange); color: white; }
.nav-count { margin-left:auto; min-width:19px; height:19px; display:grid; place-items:center; border-radius:10px; background:var(--orange); color:white; font-size:8px; font-style:normal; font-weight:900; }
.sidebar-bottom { margin-top: auto; }
.sync-card { background: #0e2a2b; border: 1px solid #315251; border-radius: 12px; padding: 13px; font-size: 11px; color: #a9c2bd; line-height: 1.5; }
.sync-card b { color: #eef7f4; display: block; margin-bottom: 2px; }
.sync-dot { width: 7px; height: 7px; border-radius: 50%; background: #5bcb9a; display: inline-block; margin-right: 6px; box-shadow: 0 0 0 3px rgba(91,203,154,.12); }
.profile { display: flex; gap: 10px; align-items: center; padding: 18px 5px 0; }
.avatar { width: 31px; height: 31px; background: #d6e5df; color: var(--navy); border-radius: 50%; display: grid; place-items: center; font-weight: 800; font-size: 11px; }
.profile b { display: block; font-size: 11px; }.profile span { color: #829f9a; font-size: 9px; }

.main { min-width: 0; padding: 24px 30px 46px; }
.topbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 25px; }
.title-wrap h1 { font-size: 26px; letter-spacing: -1px; margin: 0 0 4px; }.title-wrap p { margin: 0; font-size: 12px; color: var(--muted); }
.top-actions { display: flex; gap: 9px; align-items: center; }
.settings-top-exit { min-height:40px; padding:0 16px; border:1px solid #9f2f25; border-radius:4px; background:#fff; color:#a53125; font-size:11px; font-weight:800; white-space:nowrap; cursor:pointer; }
.settings-top-exit:hover { border-color:#8e261e; background:#fff5f3; color:#8e261e; }
.settings-top-exit:focus-visible { outline:3px solid rgba(8,123,155,.24); outline-offset:2px; }
.company-filter { height:38px; min-width:210px; border:1px solid #cfd8d3; border-radius:9px; background:var(--card); padding:4px 9px; display:grid; grid-template-columns:auto 1fr; align-items:center; gap:7px; }
.company-filter span { color:var(--muted); font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.5px; }
.company-filter select { min-width:0; border:0; outline:0; background:transparent; color:var(--ink); font-size:10px; font-weight:800; }
.period, .icon-btn, .primary-btn, .ghost-btn { height: 38px; border-radius: 8px; border: 1px solid #d5dbd4; background: var(--card); color: var(--ink); font-size: 11px; font-weight: 700; }
.period { padding: 0 13px; }.icon-btn { width: 38px; font-size: 16px; }.primary-btn { padding: 0 16px; background: var(--orange); color: white; border-color: var(--orange); box-shadow: 0 5px 15px rgba(233,116,59,.18); }
.primary-btn:hover { background: #db6630; }.ghost-btn { padding: 0 14px; }
.primary-btn:disabled { opacity:.5; cursor:not-allowed; }
.inline-action { border:0; background:transparent; padding:0; color:var(--teal); font-size:9px; font-weight:800; text-decoration:underline; text-underline-offset:2px; }

.source-strip { background:#e8efeb; border:1px solid #d5ded9; border-radius:12px; padding:10px; margin-bottom:14px; display:grid; grid-template-columns:1fr 1fr auto; gap:8px; align-items:center; }
.source-strip>div { min-width:0; background:rgba(255,255,255,.56); border-radius:9px; padding:9px 11px; display:flex; align-items:center; gap:9px; }
.source-icon { width:27px;height:27px;border-radius:7px;display:grid;place-items:center;color:white;font-size:10px;font-weight:900;flex:0 0 auto; }.source-icon.client{background:var(--incoming)}.source-icon.supplier{background:var(--outgoing)}
.source-strip p { margin:0; min-width:0; }.source-strip p b,.source-strip p small{display:block}.source-strip p b{font-size:10px}.source-strip p small{font-size:8px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.source-strip em { margin-left:auto; color:var(--teal); background:#dcebe5; border-radius:999px; padding:4px 7px; font-size:7px; font-style:normal; font-weight:800; white-space:nowrap; }
.source-strip>button { border:0;background:transparent;color:var(--navy);font-size:9px;font-weight:800;padding:0 10px; }

.metrics { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-bottom: 16px; }
.metric { background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 15px 16px 14px; position: relative; overflow: hidden; }
.metric::after { content:""; width: 38px; height: 38px; border-radius: 50%; position: absolute; right: -14px; bottom: -14px; background: #edf0ea; }
.metric-head { display: flex; justify-content: space-between; color: var(--muted); font-size: 10px; font-weight: 700; margin-bottom: 10px; }
.metric-icon { width: 25px; height: 25px; border-radius: 7px; background: #e7f1ee; color: var(--teal); display: grid; place-items: center; margin-top: -5px; }
.metric-value { font-size: 21px; font-weight: 800; letter-spacing: -.7px; }.metric-value.orange { color: var(--orange); }.metric-value.red { color: var(--red); }
.incoming-value { color:var(--incoming)!important; }.outgoing-value { color:var(--outgoing)!important; }
.metric-foot { margin-top: 5px; color: #82908d; font-size: 9px; }.up { color: var(--teal); font-weight: 800; }.down { color: var(--red); font-weight: 800; }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.72fr) minmax(280px, .78fr); gap: 16px; }
.card { background: var(--card); border: 1px solid var(--line); border-radius: 13px; min-width: 0; }
.card-head { padding: 16px 18px 13px; display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; }
.card-head h2 { margin: 0; font-size: 14px; letter-spacing: -.2px; }.card-head p { margin: 4px 0 0; color: var(--muted); font-size: 10px; }
.legend { display: flex; gap: 12px; color: var(--muted); font-size: 9px; white-space: nowrap; }
.legend i { width: 7px; height: 7px; display: inline-block; border-radius: 2px; margin-right: 4px; }
.chart-head-tools { display:grid; justify-items:end; gap:9px; }.chart-period { display:flex; padding:3px; border:1px solid var(--line); border-radius:8px; background:#f1f3ee; }.chart-period button { height:25px; padding:0 9px; border:0; border-radius:6px; background:transparent; color:var(--muted); font-size:8px; font-weight:900; }.chart-period button.active { background:white; color:var(--teal); box-shadow:0 2px 7px rgba(20,55,54,.12); }
.chart-area { height: 211px; padding: 10px 19px 18px 48px; position: relative; }
.chart-grid { height: 150px; border-bottom: 1px solid #dfe4dd; display: grid; grid-template-rows: repeat(3, 1fr); }
.chart-grid span { border-top: 1px dashed #e2e5df; position: relative; }
.chart-grid em { position: absolute; right: calc(100% + 8px); top: -6px; color: #9aa5a2; font-size: 8px; font-style: normal; white-space: nowrap; }
.bars { position: absolute; left: 51px; right: 19px; top: 10px; height: 150px; display: grid; grid-template-columns: repeat(8, 1fr); gap: 12px; align-items: end; }
.bar-group { height: 100%; display: flex; align-items: end; gap: 3px; position: relative; }
.bar { flex: 1; min-width: 5px; border-radius: 3px 3px 0 0; transition: height .25s ease; }.bar.in { background:var(--incoming); }.bar.out { background:var(--outgoing); }
.bar-label { position: absolute; top: calc(100% + 9px); width: 100%; text-align: center; font-size: 8px; color: #7d8c89; }
.balance-line { position: absolute; left: 51px; right: 19px; top: 30px; height: 92px; pointer-events: none; }
.seg { position:absolute;height:2px;background:#e7a43a;transform-origin:left center;box-shadow:0 0 0 1px rgba(231,164,58,.06); }
.seg::before { content:"";position:absolute;left:-3px;top:-3px;width:6px;height:6px;border:2px solid #e7a43a;background:var(--card);border-radius:50%; }
.s1{left:0;top:60%;width:14.2%;transform:rotate(-7deg)}.s2{left:14.2%;top:50%;width:14.4%;transform:rotate(10deg)}.s3{left:28.5%;top:64%;width:14.4%;transform:rotate(-20deg)}.s4{left:42.8%;top:34%;width:14.4%;transform:rotate(10deg)}.s5{left:57%;top:48%;width:14.4%;transform:rotate(-14deg)}.s6{left:71.2%;top:27%;width:14.4%;transform:rotate(8deg)}.s7{left:85.5%;top:37%;width:14.5%;transform:rotate(-14deg)}
.dynamic-balance-line { position:absolute; left:51px; right:19px; top:13px; height:125px; pointer-events:none; z-index:3; }
.balance-point { position:absolute; width:8px; height:8px; margin:-4px 0 0 -4px; border:2px solid #e7a43a; border-radius:50%; background:var(--card); z-index:2; box-shadow:0 0 0 2px rgba(231,164,58,.1); }
.balance-point.actual { width:12px; height:12px; margin:-6px 0 0 -6px; border-color:var(--incoming); background:var(--incoming); box-shadow:0 0 0 4px rgba(44,128,60,.14); }.bar-group.actual-balance .bar-label { color:var(--incoming); font-weight:900; }
.balance-segment { position:absolute; width:14.28%; height:2px; background:#e7a43a; transform-origin:left center; }
.smart-plan-card { grid-column:1/-1; overflow:hidden; border-color:#bdc9c3; }
.smart-plan-card:has(.smart-report-menu[open]) { position:relative; z-index:40; overflow:visible; }
.smart-plan-head { position:relative; z-index:2; display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; padding:17px 19px 14px; border-bottom:1px solid #dfe5e1; background:linear-gradient(90deg,#f3f8f5 0,#fff 62%); }
.smart-plan-head h2 { margin:5px 0 3px; font-size:17px; font-weight:650; }.smart-plan-head p { margin:0; color:var(--muted); font-size:9px; }
.ai-label { display:inline-flex; align-items:center; gap:5px; padding:4px 7px; border-radius:3px; background:#dfeee7; color:#236344; font-size:7px; font-weight:900; letter-spacing:.45px; text-transform:uppercase; }
.smart-confidence { min-width:150px; display:grid; align-content:center; justify-items:end; }.smart-confidence span,.smart-confidence small { color:var(--muted); font-size:7px; }.smart-confidence b { color:#236344; font-size:21px; line-height:1.2; }
.smart-head-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:10px; }.smart-head-actions>button { height:34px; border:1px solid #7ea793; border-radius:5px; padding:0 11px; background:white; color:#236344; font-size:8px; font-weight:900; }
.smart-report-menu { position:relative; z-index:50; }.smart-report-menu summary { height:34px; display:flex; align-items:center; justify-content:center; min-width:88px; padding:0 12px; border:1px solid #7ea793; border-radius:5px; background:#fff; color:#236344; font-size:8px; font-weight:900; cursor:pointer; list-style:none; }.smart-report-menu summary::-webkit-details-marker { display:none; }.smart-report-menu summary::after { content:"⌄"; margin-left:7px; font-size:9px; }.smart-report-menu[open] summary { background:#edf7f2; border-color:#247351; box-shadow:0 0 0 2px rgba(36,115,81,.1); }.smart-report-menu[open] summary::after { content:"⌃"; }.smart-report-menu>div { position:absolute; z-index:60; top:calc(100% + 6px); right:0; width:196px; display:grid; gap:2px; padding:6px; border:1px solid #8da99b; border-radius:5px; background:#fff; box-shadow:0 12px 28px rgba(24,55,43,.24); }.smart-report-menu button { min-height:36px; border:0; border-radius:3px; padding:8px 10px; background:#fff; color:#23443a; font-size:8px; font-weight:850; text-align:left; cursor:pointer; }.smart-report-menu button+button { border-top:1px solid #e1e8e4; }.smart-report-menu button:hover,.smart-report-menu button:focus-visible { outline:0; background:#eaf4ef; color:#165f43; }
.smart-head-actions>.smart-params-btn { border-color:#247351; background:#247351; color:white; }.smart-head-actions>.smart-params-btn.pending { border-color:#bd7e12; background:#fff7e6; color:#895a08; box-shadow:inset 3px 0 #d39a25; }
.smart-target-editor { min-width:210px; display:grid; gap:3px; }.smart-target-editor>label { color:#5f6662; font-size:7px; font-weight:900; letter-spacing:.35px; text-transform:uppercase; }.smart-target-editor>div { height:34px; display:grid; grid-template-columns:1fr auto; border:1px solid #9ca7a1; border-radius:5px; overflow:hidden; background:white; }.smart-target-editor input { min-width:0; border:0; outline:0; padding:0 9px; color:#173d2d; font:800 11px var(--font-body); }.smart-target-editor>div span { display:grid; place-items:center; padding:0 9px; border-left:1px solid #d6dbd8; background:#eef2ef; color:#405048; font-size:8px; font-weight:900; }.smart-target-editor small { color:#737a76; font-size:7px; text-transform:capitalize; }.smart-head-actions>.smart-collapse-btn { border-color:#aaa6a1; color:#4e4b48; background:#f6f5f3; }
.smart-month-settings { padding:14px 18px; border-bottom:1px solid var(--line); background:#f7f8f6; }.smart-settings-title { display:flex; align-items:end; justify-content:space-between; gap:12px; margin-bottom:9px; }.smart-settings-title>div:first-child { display:grid; gap:2px; }.smart-settings-title b { color:#2f3833; font-size:10px; }.smart-settings-title span,.smart-settings-title em { color:#737a76; font-size:7px; font-style:normal; }.smart-settings-title em { padding:4px 7px; border-radius:3px; background:#e4eee8; color:#236344; font-weight:850; }.smart-settings-actions { display:flex; align-items:center; gap:8px; }.smart-settings-actions button { height:31px; padding:0 12px; border:1px solid #247351; border-radius:4px; background:#247351; color:white; font-size:8px; font-weight:900; cursor:pointer; }.smart-settings-actions button:disabled { border-color:#c6ccc8; background:#e7eae8; color:#7b827e; cursor:default; }.smart-settings-grid { overflow-x:auto; border:1px solid #cfd5d1; background:white; }.smart-settings-head,.smart-settings-row { min-width:1050px; display:grid; grid-template-columns:1.05fr 1.25fr .7fr .9fr .9fr 1fr; align-items:center; gap:10px; padding:7px 11px; }.smart-settings-head { background:#e9ece9; color:#606762; font-size:7px; font-weight:900; letter-spacing:.35px; text-transform:uppercase; }.smart-settings-row { border-top:1px solid #e3e6e3; }.smart-settings-row.draft-changed { background:#fff9e9; box-shadow:inset 3px 0 #d39a25; }.smart-settings-row>b { font-size:8px; text-transform:capitalize; }.smart-settings-row label { height:29px; display:grid; grid-template-columns:1fr auto; border:1px solid #b8bfba; background:white; overflow:hidden; }.smart-settings-row input { min-width:0; border:0; outline:0; padding:0 8px; color:#263d32; font-family:"Arial Narrow",Arial,sans-serif; font-size:9px; font-weight:700; font-variant-numeric:tabular-nums; }.smart-settings-row label span { display:grid; place-items:center; min-width:34px; padding:0 6px; border-left:1px solid #d4d9d5; background:#f0f2f0; color:#4c5751; font-size:6px; font-weight:900; }.smart-settings-row strong { color:#236344; font-family:"Arial Narrow",Arial,sans-serif; font-size:8px; font-variant-numeric:tabular-nums; text-align:right; }.smart-settings-row .smart-disbursement-budget { color:var(--outgoing); }.smart-draft-note { margin:8px 0 0; color:#966719; font-size:8px; font-weight:750; }
.smart-assumptions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--line); background:#fafbf9; }.smart-assumptions>span { min-height:70px; padding:12px 15px; border-right:1px solid var(--line); color:var(--ink); font-size:12px; font-weight:850; }.smart-assumptions>span:last-child { border-right:0; }.smart-assumptions b,.smart-assumptions small { display:block; }.smart-assumptions b { margin-bottom:6px; color:var(--muted); font-size:7px; text-transform:uppercase; letter-spacing:.35px; }.smart-assumptions small { margin-top:4px; color:var(--muted); font-size:7px; font-weight:600; }
.smart-chart-head { min-height:42px; padding:8px 18px 0; display:flex; align-items:center; justify-content:space-between; gap:12px; }.smart-chart-head em { color:#7a7772; font-size:7px; font-style:normal; font-weight:800; }.smart-legend { display:flex; flex-wrap:wrap; gap:13px; color:#555; font-size:8px; }.smart-legend span { display:flex; align-items:center; gap:5px; }.smart-legend i { width:8px; height:8px; border-radius:2px; }.smart-legend .sales-planned { background:var(--incoming); }.smart-legend .sales-forecast { border:1px solid #2f8137; background:repeating-linear-gradient(135deg,#76bc78 0 3px,#d8ecd8 3px 6px); }.smart-legend .suppliers-planned { background:var(--outgoing); }.smart-legend .suppliers-forecast { border:1px solid #b5382b; background:repeating-linear-gradient(135deg,#e48173 0 3px,#f7d7d2 3px 6px); }.smart-legend .reserve { background:#65788a; }.smart-legend .balance { background:#e7a43a; border-radius:50%; }
.smart-chart-area { position:relative; height:260px; padding:15px 24px 55px 62px; overflow-x:auto; }.smart-chart-grid { position:absolute; left:14px; right:24px; top:15px; height:156px; display:grid; grid-template-rows:repeat(3,1fr); pointer-events:none; }.smart-chart-grid span { border-top:1px dashed #dfe2dd; color:#8b8883; font-size:7px; }.smart-bars { position:relative; z-index:2; min-width:720px; height:156px; display:grid; gap:14px; align-items:end; }.smart-bar-group { height:100%; display:flex; align-items:flex-end; justify-content:center; gap:3px; position:relative; }.smart-bar,.smart-receipt-stack,.smart-supplier-stack { width:18%; min-width:8px; transition:height .25s ease; }.smart-bar { border-radius:3px 3px 0 0; }.smart-receipt-stack,.smart-supplier-stack { display:flex; flex-direction:column-reverse; overflow:hidden; border-radius:3px 3px 0 0; }.smart-receipt-stack i,.smart-supplier-stack i { display:block; width:100%; min-height:0; }.smart-receipt-stack .planned { background:var(--incoming); }.smart-receipt-stack .forecast { background:repeating-linear-gradient(135deg,#76bc78 0 5px,#d8ecd8 5px 10px); box-shadow:inset 0 0 0 1px #4c9a51; }.smart-supplier-stack .planned { background:var(--outgoing); }.smart-supplier-stack .forecast { background:repeating-linear-gradient(135deg,#e48173 0 5px,#f7d7d2 5px 10px); box-shadow:inset 0 0 0 1px #b5382b; }.smart-bar.reserve { background:#65788a; }.smart-bar-group>span { position:absolute; top:calc(100% + 9px); left:50%; width:92px; transform:translateX(-50%); color:#6c6965; font-size:7px; text-align:center; white-space:nowrap; }
.smart-balance-line,.smart-balance-svg { position:absolute; z-index:3; left:68px; right:35px; top:19px; min-width:650px; height:145px; pointer-events:none; }.smart-balance-svg { width:calc(100% - 103px); overflow:visible; }.smart-balance-svg polyline { fill:none; stroke:#e7a43a; stroke-width:2; vector-effect:non-scaling-stroke; }.smart-balance-point { position:absolute; z-index:2; width:9px; height:9px; margin:-4px 0 0 -4px; border:2px solid #e7a43a; border-radius:50%; background:white; box-shadow:0 0 0 2px rgba(231,164,58,.13); }.smart-month-objective { position:absolute; top:calc(100% + 22px); left:50%; width:130px; transform:translateX(-50%); color:#52665c; font-size:6px; font-weight:800; text-align:center; white-space:nowrap; }
.smart-balance-point.negative { border-color:var(--outgoing); background:var(--outgoing); }
.smart-month-lines { overflow-x:auto; border-top:1px solid var(--line); font-variant-numeric:tabular-nums; }.smart-month-lines>div { min-width:1120px; min-height:54px; display:grid; grid-template-columns:1.05fr 1.25fr .9fr 1.05fr 1.05fr 1fr 1fr; align-items:center; column-gap:18px; padding:8px 20px; border-top:1px solid #e3e6e3; font-size:8px; }.smart-month-lines>div:first-child { min-height:36px; border-top:0; }.smart-month-lines>div>* { min-width:0; }.smart-month-lines>div>*:not(:first-child) { justify-self:stretch; text-align:right; }.smart-month-head { background:#f0f2ef; color:#666; font-size:7px!important; font-weight:900; letter-spacing:.25px; text-transform:uppercase; }.smart-month-lines b { text-transform:capitalize; }.smart-month-lines span small { display:block; margin-top:4px; color:var(--muted); font-size:7px; line-height:1.35; }.smart-month-lines strong { font-size:9px; text-align:right; }.smart-applied-setting { color:var(--incoming); font-weight:900; }.smart-applied-setting small { color:#4c8b61!important; }.smart-applied-reserve { color:#65788a; font-weight:900; }.smart-existing-outgoing,.generated-line { color:var(--outgoing); font-weight:900; }.smart-existing-outgoing small { color:#a76b65!important; }.no-line { color:var(--muted); font-weight:750; }
.budget-overrun-row { background:#fff8f6; box-shadow:inset 4px 0 var(--outgoing); }.budget-overrun { color:var(--outgoing); font-weight:900; }.budget-overrun small { color:#a23e35!important; }
.real-month-row { background:#f4f7f5; box-shadow:inset 4px 0 #65788a; }.real-month-row> b small { display:block; margin-top:4px; color:#65788a; font-size:6px; text-transform:uppercase; }.real-planning-cell { color:#65788a; font-weight:900; }.real-planning-cell small { color:#65788a!important; }.smart-bar-group.real-month .smart-month-objective { color:#365f50; font-weight:900; text-transform:uppercase; }
.smart-recommendation { display:grid; grid-template-columns:140px 1fr; gap:12px; padding:11px 18px; border-top:1px solid var(--line); font-size:8px; line-height:1.5; }.smart-recommendation b { font-size:9px; }.smart-recommendation.attention { border-left:4px solid #d39418; background:#fff9e9; color:#6f5a26; }.smart-recommendation.covered { border-left:4px solid var(--incoming); background:var(--incoming-soft); color:#245f39; }
.print-intelligent { display:none; background:white; color:#172727; font-family:Arial,sans-serif; }.print-intelligent header { display:flex; justify-content:space-between; padding-bottom:11px; border-bottom:2px solid #172727; }.print-intelligent header strong,.print-intelligent header span { display:block; }.print-intelligent header strong { font-size:17px; }.print-intelligent header span { margin-top:4px; font-size:10px; }.print-intelligent h1 { margin:17px 0 8px; font-size:19px; }.print-intelligent p { font-size:9px; line-height:1.5; }.print-intelligent table { width:100%; border-collapse:collapse; }.print-intelligent th,.print-intelligent td { padding:6px 5px; border:1px solid #aaa; font-size:7px; text-align:right; }.print-intelligent th:first-child,.print-intelligent td:first-child { text-align:left; text-transform:capitalize; }.print-intelligent th { background:#eee; }.print-intelligent footer { margin-top:14px; padding-top:8px; border-top:1px solid #aaa; color:#555; font-size:7px; }
.print-smart-report { display:none; background:#fff; color:#17364a; font-family:Arial,sans-serif; }.print-smart-report header { display:flex; align-items:flex-end; justify-content:space-between; padding-bottom:7px; border-bottom:2px solid #08789a; }.print-smart-report header strong,.print-smart-report header span,.print-smart-report header b,.print-smart-report header time { display:block; }.print-smart-report header strong { font-size:16px; }.print-smart-report header span { margin-top:2px; font-size:9px; }.print-smart-report header>div:last-child { text-align:right; }.print-smart-report header b { font-size:9px; }.print-smart-report header time { margin-top:2px; color:#637684; font-size:7px; }.smart-report-kpis { display:grid; grid-template-columns:repeat(4,1fr); margin:8px 0 10px; border:1px solid #aebdca; }.smart-report-kpis>div { min-height:42px; padding:6px 7px; border-right:1px solid #aebdca; background:#eef4f8; }.smart-report-kpis>div:last-child { border-right:0; }.smart-report-kpis span,.smart-report-kpis b { display:block; }.smart-report-kpis span { min-height:16px; color:#526a79; font-size:6px; font-weight:800; text-transform:uppercase; }.smart-report-kpis b { margin-top:3px; font-size:10px; }.print-smart-report h2 { margin:9px 0 3px; color:#075d7a; font-size:10px; }.print-smart-report .report-intro { margin:0 0 5px; color:#5d6f79; font-size:6.5px; }.print-smart-report table { width:100%; border-collapse:collapse; page-break-inside:auto; }.print-smart-report tr { page-break-inside:avoid; }.print-smart-report th,.print-smart-report td { padding:3px 4px; border:1px solid #b7c4ce; font-size:6px; line-height:1.25; vertical-align:top; text-align:left; }.print-smart-report th { background:#d9e5f3; font-size:5.7px; text-transform:uppercase; }.print-smart-report td b,.print-smart-report td small,.print-smart-report .report-installment { display:block; }.print-smart-report td small { margin-top:1px; color:#647784; font-size:5.3px; }.print-smart-report .report-installment+.report-installment { margin-top:2px; }.print-smart-report .report-target { color:#1d6b43; font-weight:800; background:#eef8f2; }.print-smart-report aside { display:flex; gap:8px; margin-top:7px; padding:6px 7px; border-left:3px solid #e0a231; background:#fff8e7; font-size:6px; }.print-smart-report aside b { white-space:nowrap; }.print-smart-report footer { display:grid; grid-template-columns:1fr repeat(3,150px); gap:12px; align-items:end; margin-top:13px; font-size:6px; }.print-smart-report footer span:not(:first-child) { min-height:22px; padding-top:4px; border-top:1px solid #8ca0ad; text-align:center; }
.smart-ai-analysis { margin:8px 0 10px; padding:8px 10px; border:1px solid #86aa9b; border-left:4px solid #247351; background:#f0f8f4; color:#24473b; break-inside:avoid; page-break-inside:avoid; }.smart-ai-analysis h2 { margin:0 0 5px; color:#165f43; }.smart-ai-analysis p { margin:3px 0; font-size:6.4px; line-height:1.35; }.smart-ai-analysis> b { display:block; margin-top:5px; font-size:6.5px; }.smart-ai-analysis ol { margin:3px 0 0 14px; padding:0; columns:2; column-gap:20px; }.smart-ai-analysis li { margin:0 0 2px; font-size:6px; line-height:1.3; break-inside:avoid; }
.smart-report-kpis { grid-template-columns:repeat(3,1fr); }.smart-report-kpis>div { background:#d9e5f3; }.smart-report-kpis small { display:block; margin-top:2px; color:#617786; font-size:5.5px; }.print-smart-report header strong { font-size:13px; }.print-smart-report header span { font-size:8px; }.print-smart-report h2,.smart-ai-analysis h2 { padding:4px 6px; border:1px solid #afc4d5; background:#d9e5f3; color:#123c56; font-size:8px; }
.smart-report-fiscal { margin:7px 0 9px; break-inside:avoid; page-break-inside:avoid; }.smart-report-fiscal h2 { margin-bottom:0; }.smart-report-fiscal p { margin:3px 0 0; padding:4px 6px; border-left:3px solid #08789a; background:#eef5fa; color:#415e70; font-size:5.8px; }.smart-report-fiscal table th,.smart-report-fiscal table td { text-align:right; }.smart-report-fiscal table th:first-child,.smart-report-fiscal table td:first-child,.smart-report-fiscal table th:nth-child(2),.smart-report-fiscal table td:nth-child(2) { text-align:left; }
.smart-supplier-plan>footer>b { display:none; }.smart-fiscal-live-summary { margin-top:-1px; border:1px solid #9bb5c7; background:#fff; }.smart-fiscal-live-summary>strong { display:block; padding:7px 10px; background:#d9e5f3; color:#123c56; font-size:10px; text-transform:uppercase; }.smart-fiscal-live-summary>div { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); }.smart-fiscal-live-summary>div>span { display:grid; gap:2px; padding:8px 10px; border-right:1px solid #cbd8e1; border-bottom:1px solid #cbd8e1; }.smart-fiscal-live-summary>div b { color:#516a79; font-size:8px; text-transform:uppercase; }.smart-fiscal-live-summary>div em { color:#123c56; font-size:13px; font-style:normal; font-weight:900; }.smart-fiscal-live-summary>div small { color:#667d8b; font-size:7px; }.smart-fiscal-live-summary>p { display:flex; justify-content:flex-end; gap:24px; margin:0; padding:7px 10px; background:#eef4f8; color:#234f68; font-size:9px; }

.banks { padding: 0 16px 15px; display: grid; gap: 9px; }
.bank { border: 1px solid var(--line); border-radius: 10px; padding: 12px; display: grid; grid-template-columns: 32px 1fr auto; gap: 10px; align-items: center; }
.bank-logo { width: 32px; height: 32px; border-radius: 8px; display: grid; place-items: center; color: white; font-size: 10px; font-weight: 900; }.bank-logo.a { background:#00736b; }.bank-logo.b { background:#962e3b; }.bank-logo.c { background:#2b4b83; }
.bank b { display: block; font-size: 10px; }.bank span { color: var(--muted); font-size: 8px; }.bank-amount { text-align: right; }.bank-amount strong { display: block; font-size: 11px; }.bank-amount small { color: var(--teal); font-size: 8px; }
.liquidity { margin: 2px 16px 16px; padding: 12px; background: #edf5f1; border-radius: 10px; display: flex; justify-content: space-between; align-items: center; }
.liquidity span { font-size: 9px; color: #5f7672; }.liquidity b { font-size: 12px; color: var(--teal); }

.schedule-card { grid-column: 1 / -1; margin-top: 0; overflow: hidden; }
.schedule-actions { display:grid; gap:7px; justify-items:end; }.schedule-tools,.schedule-export { display:flex; gap:7px; }.schedule-export button { height:28px; border:1px solid #cbd7d2; border-radius:7px; padding:0 9px; background:#f5f8f6; color:var(--navy); font-size:8px; font-weight:900; }.schedule-export button:hover { background:#e7efeb; }.schedule-export button:disabled { opacity:.42; cursor:not-allowed; }.schedule-export .group-transfer-btn:not(:disabled) { background:var(--outgoing); border-color:var(--outgoing); color:white; }.filter-btn { border: 1px solid var(--line); background: white; border-radius: 7px; padding: 7px 10px; color: var(--muted); font-size: 9px; font-weight: 700; }.filter-btn.active { color: var(--navy); background: #e9f2ef; border-color: #c7dbd5; }
.party-filter-bar { min-height:48px; padding:8px 16px; border-top:1px solid var(--line); background:#f5f5f3; display:flex; align-items:center; justify-content:space-between; gap:12px; }.party-filter-input { width:min(460px,100%); height:32px; border:1px solid #b8b3af; background:white; display:grid; grid-template-columns:28px 1fr auto; align-items:center; }.party-filter-input>span { color:#6f6b68; text-align:center; font-size:15px; }.party-filter-input input { width:100%; min-width:0; border:0; outline:0; background:transparent; color:var(--ink); font-family:inherit; font-size:10px; font-weight:600; }.party-filter-input input::placeholder { color:#918d89; }.party-filter-input button { width:28px; height:28px; border:0; background:transparent; color:#6f6b68; font-size:16px; cursor:pointer; }.party-filter-input button:hover { background:#ece9e6; color:#8f2d22; }.party-filter-bar>span { color:var(--muted); font-size:9px; white-space:nowrap; }.party-filter-bar>span b { color:var(--ink); }
.schedule-filter-stack { display:flex; align-items:center; flex-wrap:wrap; gap:10px; flex:1; }.schedule-company-filter { display:flex; gap:0; border:1px solid #b8b3af; background:white; }.schedule-company-filter button { min-height:30px; padding:0 10px; border:0; border-right:1px solid #d4d1ce; background:white; color:#555; font-size:9px; font-weight:750; white-space:nowrap; cursor:pointer; }.schedule-company-filter button:last-child { border-right:0; }.schedule-company-filter button.active { background:#5b5b5b; color:white; }.schedule-company-filter button:hover:not(.active) { background:#eceae8; }
.schedule-date-filter { min-height:32px; display:flex; align-items:center; gap:6px; padding:3px 5px 3px 8px; border:1px solid #b8b3af; background:white; }.schedule-date-filter>span { color:#555; font-size:7px; font-weight:900; text-transform:uppercase; white-space:nowrap; }.schedule-date-filter label { display:flex; align-items:center; gap:3px; color:var(--muted); font-size:7px; font-weight:800; text-transform:uppercase; }.schedule-date-filter input { width:108px; height:25px; border:1px solid #dedbd8; background:#fafafa; padding:0 4px; color:var(--ink); font-size:8px; }.schedule-date-filter>button { width:24px; height:24px; border:0; background:#ece9e6; color:#6f6b68; font-size:14px; }
.schedule-advanced-filters { width:100%; display:flex; align-items:end; flex-wrap:wrap; gap:8px; padding-top:2px; }.schedule-advanced-filters>label,.schedule-amount-range { display:grid; gap:3px; color:#65615e; font-size:7px; font-weight:900; letter-spacing:.25px; text-transform:uppercase; }.schedule-advanced-filters select { height:30px; min-width:145px; border:1px solid #b8b3af; background:white; padding:0 8px; color:#3e3b38; font:700 8px var(--font-body); }.schedule-amount-range { grid-template-columns:auto auto auto; align-items:end; }.schedule-amount-range>span { align-self:center; margin-right:2px; }.schedule-amount-range label { display:grid; gap:2px; color:#77726f; font-size:7px; }.schedule-amount-range input { width:102px; height:30px; border:1px solid #b8b3af; background:white; padding:0 7px; color:#3e3b38; font:700 8px var(--font-body); }.schedule-clear-filters { height:30px; padding:0 10px; border:1px solid #c6b0aa; background:#fff8f6; color:#9b392e; font-size:8px; font-weight:900; cursor:pointer; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; min-width: 820px; }
th { background: #f1f2ed; padding: 10px 15px; text-align: left; color: #73817f; font-size: 8px; text-transform: uppercase; letter-spacing: .8px; }
td { padding: 12px 15px; border-top: 1px solid #ebece7; font-size: 10px; vertical-align: middle; }
.empty-filter { height:92px; text-align:center; color:var(--muted); font-size:10px; }
.party { display: flex; align-items: center; gap: 9px; }.party-avatar { width: 27px; height: 27px; border-radius: 8px; background: #e6ede9; display: grid; place-items: center; font-size: 8px; font-weight: 900; }.party b { display:block; font-size:10px; }.party small { font-size:8px;color:var(--muted); }
.blocked-supplier-badge { display:inline-flex; margin-left:7px; padding:2px 5px; border:1px solid #c88479; background:#fff0ed; color:#a23225; font-size:7px; font-weight:900; text-transform:uppercase; vertical-align:middle; }
.type-badge, .status { display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 7px; font-size: 8px; font-weight: 800; white-space: nowrap; }.type-badge.in { color:var(--incoming);background:var(--incoming-soft); }.type-badge.out { color:var(--outgoing);background:var(--outgoing-soft); }.status.ok { color:#347366;background:#e8f4ef; }.status.late { color:#b34343;background:#faeaea; }.status.soon { color:#b77a24;background:#fff4d9; }
.company-badge { display:inline-flex; border-radius:6px; padding:5px 7px; font-size:8px; font-weight:900; white-space:nowrap; letter-spacing:.25px; background:#e7eeeb; color:var(--navy); }
.company-badge.company-ctl { background:#e8edf7; color:#34527f; }
.status.neutral { color:#697572;background:#e8ebe9; }
.amount.in { color:var(--incoming);font-weight:800; }.amount.out { color:var(--outgoing);font-weight:800; }
.date-edit { border: 1px solid transparent; background: transparent; border-radius: 6px; padding: 6px 7px; width: 112px; font-size: 9px; color: var(--ink); }.date-edit:hover,.date-edit:focus { border-color:#bfcac6;background:white;outline:none; }.manual-mark { color: var(--orange); font-size: 8px; font-weight: 800; display: block; margin-top: 2px; }
.more { border:0;background:transparent;font-weight:900;color:#85928f; }
.transfer-btn { border:1px solid #c7dbd5; background:#e9f2ef; color:var(--teal); border-radius:7px; padding:6px 8px; font-size:8px; font-weight:900; }.transfer-btn:disabled,.split-btn:disabled { opacity:.4; cursor:not-allowed; }
.transfer-row-actions { display:flex; align-items:center; gap:6px; }.transfer-check { width:24px; height:24px; display:grid; place-items:center; position:relative; }.transfer-check input { position:absolute; opacity:0; }.transfer-check span { width:18px; height:18px; display:grid; place-items:center; border:1px solid #aaa; border-radius:3px; background:white; color:transparent; font-size:10px; font-weight:900; }.transfer-check input:checked+span { border-color:var(--outgoing); background:var(--outgoing); color:white; }.transfer-check input:disabled+span { opacity:.35; }.transfer-selected td { background:#fff4f2; }.not-applicable { color:#aaa; }
.schedule-printed-order { display:grid; gap:2px; min-width:105px; padding:5px 7px; border-left:3px solid var(--incoming); background:#eef8f4; }.schedule-printed-order b,.schedule-printed-order small { display:block; }.schedule-printed-order b { color:var(--incoming); font-size:8px; }.schedule-printed-order small { color:var(--muted); font-size:7px; line-height:1.3; }.transfer-btn.reprint { border-color:#8ebbb0; background:white; color:var(--incoming); }
.split-btn { border:1px solid #aaa; border-radius:3px; padding:6px 7px; background:white; color:#444; font-size:8px; font-weight:800; white-space:nowrap; }.split-btn.undo { color:var(--outgoing); border-color:#d7aaa4; background:#fff5f3; }
.settle-btn { border:1px solid; border-radius:3px; padding:6px 8px; background:white; font-size:8px; font-weight:900; white-space:nowrap; cursor:pointer; }.settle-btn.incoming { color:var(--incoming); border-color:#8ebbb0; background:#eef8f4; }.settle-btn.outgoing { color:var(--outgoing); border-color:#d7aaa4; background:#fff3f1; }.settle-btn:hover { filter:brightness(.96); }
.prepare-payment-btn,.approval-waiting { min-height:30px; border-radius:3px; padding:6px 9px; white-space:nowrap; font-size:8px; font-weight:900; }.prepare-payment-btn { border:1px solid #a96825; background:#fff4e6; color:#8d4e11; }.approval-waiting { border:1px solid #c9b579; background:#fff9df; color:#756018; }.prepare-payment-btn:disabled { opacity:.45; }
.bank-card-actions { display:flex; gap:6px; }
.table-foot { min-height:50px; padding: 9px 16px; border-top: 1px solid var(--line); display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px; color:var(--muted); font-size:8px; }.table-foot>span:last-child { text-align:right; }.table-foot b { color:var(--ink); }.pagination { display:flex; align-items:center; gap:8px; }.pagination button { height:29px; border:1px solid var(--line); border-radius:7px; padding:0 9px; background:white; color:var(--navy); font-size:8px; font-weight:900; }.pagination button:disabled { opacity:.38; cursor:not-allowed; }.pagination span { white-space:nowrap; }
.excluded-row { background:#f3f3ef; }.excluded-row td:not(:nth-child(6)){opacity:.55}.excluded-row .amount{text-decoration:line-through}
.excluded-row td:last-child{opacity:1!important}.excluded-payment-action{display:grid;gap:1px;min-width:92px;padding:5px 7px;border:1px solid #aab8bf;border-radius:0;background:#f8fafb;color:#425b69;text-align:left;cursor:pointer}.excluded-payment-action b{font-size:8px}.excluded-payment-action small{color:#08749b;font-size:7px}.excluded-payment-action:hover{background:#eaf4f8;border-color:#6f98ac}
.schedule-card>.table-wrap table{table-layout:fixed;min-width:1280px}.schedule-card>.table-wrap th,.schedule-card>.table-wrap td{padding-left:7px;padding-right:7px}.schedule-card>.table-wrap th:nth-child(1){width:90px}.schedule-card>.table-wrap th:nth-child(2){width:185px}.schedule-card>.table-wrap th:nth-child(3){width:90px}.schedule-card>.table-wrap th:nth-child(4){width:120px}.schedule-card>.table-wrap th:nth-child(5),.schedule-card>.table-wrap th:nth-child(6),.schedule-card>.table-wrap th:nth-child(7){width:105px}.schedule-card>.table-wrap th:nth-child(8){width:110px}.schedule-card>.table-wrap th:nth-child(9){width:95px}.schedule-card>.table-wrap th:nth-child(10){width:95px}.schedule-card>.table-wrap th:nth-child(11){width:190px}.schedule-card .schedule-transfer-parties{min-width:0}.schedule-card .schedule-transfer-party b,.schedule-card .schedule-transfer-party small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-card .transfer-row-actions{flex-wrap:wrap;gap:4px}.schedule-card .transfer-row-actions button{min-height:25px;padding:4px 6px;font-size:7px}
.calc-toggle { border:0;background:transparent;display:inline-flex;align-items:center;gap:5px;padding:0;color:var(--muted);font-size:8px;font-weight:800 }.calc-toggle i{width:27px;height:15px;border-radius:999px;background:#c5ccc9;position:relative;transition:.2s}.calc-toggle i::after{content:"";width:11px;height:11px;background:white;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.2s}.calc-toggle.on{color:var(--teal)}.calc-toggle.on i{background:var(--teal)}.calc-toggle.on i::after{left:14px}

.drawer-backdrop { position:fixed;inset:0;background:rgba(6,29,30,.35);z-index:100;display:flex;justify-content:flex-end; }
.drawer { width:min(430px, 100%); height:100%; background:var(--card); padding:25px; box-shadow:-18px 0 50px rgba(8,32,32,.18); overflow:auto; }
.drawer.drawer-wide { width:min(1500px,calc(100vw - 260px)); max-width:none; }
.drawer.drawer-full { width:min(1600px,calc(100vw - 248px)); max-width:none; }
.drawer-head { display:flex;justify-content:space-between;align-items:center;margin-bottom:24px; }.drawer h2 { margin:0;font-size:20px; }.close { border:0;background:#edf0eb;border-radius:8px;width:32px;height:32px; }
.form-grid { display:grid;grid-template-columns:1fr 1fr;gap:14px; }.field { display:grid;gap:6px; }.field.full { grid-column:1/-1; }.field label { font-size:9px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.6px; }.field input,.field select { width:100%;height:40px;border:1px solid var(--line);border-radius:8px;background:white;padding:0 10px;font-size:11px;color:var(--ink); }.drawer-actions { display:flex;justify-content:flex-end;gap:8px;margin-top:25px; }
.settlement-form { display:grid; gap:18px; }.settlement-source { display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:11px; padding:14px; border:1px solid var(--line); background:#f7f7f5; }.settlement-icon { width:40px; height:40px; display:grid; place-items:center; font-size:22px; font-weight:700; }.settlement-icon.client { color:var(--incoming); background:var(--incoming-soft); }.settlement-icon.fournisseur { color:var(--outgoing); background:var(--outgoing-soft); }.settlement-source>div b,.settlement-source>div small { display:block; }.settlement-source>div b { margin-top:6px; font-size:12px; }.settlement-source>div small { margin-top:3px; color:var(--muted); font-size:9px; }.settlement-source>strong { font-size:13px; }.settlement-impact { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:10px; padding:15px; border:1px solid #c5c1bd; background:#f1f0ee; }.settlement-impact>div:last-child { text-align:right; }.settlement-impact span,.settlement-impact b { display:block; }.settlement-impact>div span { color:var(--muted); font-size:9px; }.settlement-impact>div b { margin-top:4px; font-size:14px; }.settlement-impact>span { font-size:11px; font-weight:900; }.settlement-note { padding:11px 13px; border-left:3px solid #77716c; background:#f4f2f0; color:#55514e; font-size:9px; line-height:1.5; }.settlement-warning { padding:14px; border:1px solid #d8aaa3; background:#fff3f1; color:var(--outgoing); font-size:10px; }.settlement-warning button { display:block; margin-top:9px; border:0; background:transparent; padding:0; color:inherit; font-weight:900; text-decoration:underline; cursor:pointer; }.danger-primary { background:var(--outgoing)!important; border-color:var(--outgoing)!important; }
.receipt-reserve-form { display:grid; gap:16px; }.receipt-confirmed { display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:10px; padding:13px; border:1px solid #a8c8b8; background:#eff8f3; }.receipt-confirmed>span { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:var(--incoming); color:white; font-weight:900; }.receipt-confirmed b,.receipt-confirmed small { display:block; }.receipt-confirmed b { color:var(--incoming); font-size:11px; }.receipt-confirmed small { margin-top:3px; color:var(--muted); font-size:8px; }.receipt-confirmed strong { font-size:12px; }.receipt-reserve-question { display:grid; gap:8px; padding:15px; border:1px solid var(--line); background:#f6f5f3; }.receipt-reserve-question>b { font-size:12px; }.receipt-reserve-question p { margin:0; color:var(--muted); font-size:9px; line-height:1.5; }.receipt-reserve-question>label { width:150px; height:50px; display:grid; grid-template-columns:1fr 34px; border:2px solid var(--orange); background:white; }.receipt-reserve-question>label input { width:100%; min-width:0; border:0; outline:0; padding:0 10px; color:var(--ink); font-size:19px; font-weight:800; text-align:right; }.receipt-reserve-question>label span { display:grid; place-items:center; background:#f3e7e2; color:var(--orange); font-size:13px; font-weight:900; }.percentage-presets { display:flex; gap:6px; }.percentage-presets button { height:29px; border:1px solid #b8b3af; background:white; padding:0 10px; color:#555; font-size:8px; font-weight:900; }.percentage-presets button.active { border-color:var(--orange); background:#fbeeed; color:var(--orange); }.receipt-reserve-calculation { display:grid; gap:0; border:1px solid var(--line); }.receipt-reserve-calculation>div { display:grid; grid-template-columns:1fr auto; gap:3px 10px; padding:11px 12px; border-top:1px solid var(--line); }.receipt-reserve-calculation>div:first-child { border-top:0; }.receipt-reserve-calculation span { color:var(--muted); font-size:8px; }.receipt-reserve-calculation b { text-align:right; font-size:10px; }.receipt-reserve-calculation small { grid-column:1/-1; color:var(--muted); font-size:7px; }.receipt-reserve-lock { padding:11px 13px; border-left:4px solid var(--orange); background:#fff4ec; color:#68594e; font-size:8px; line-height:1.5; }
.bank-history-panel { display:grid; gap:16px; }.history-bank-picker { display:grid; gap:6px; }.history-bank-picker label { color:#444; font-size:10px; font-weight:800; text-transform:uppercase; }.history-bank-picker select { height:42px; border:1px solid #b8b8b8; background:white; padding:0 10px; font:inherit; font-size:11px; }.history-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.history-kpis>div { padding:12px; border:1px solid var(--line); background:#f6f5f3; }.history-kpis span,.history-kpis b { display:block; }.history-kpis span { color:var(--muted); font-size:8px; }.history-kpis b { margin-top:6px; font-size:12px; }.history-table { border:1px solid var(--line); }.history-head,.history-row { display:grid; grid-template-columns:82px 1fr 110px 110px; align-items:center; gap:10px; padding:10px 12px; }.history-head { background:#e7e7e5; color:#555; font-size:8px; font-weight:900; text-transform:uppercase; }.history-row { border-top:1px solid var(--line); font-size:9px; }.history-row>span:nth-child(2) b,.history-row>span:nth-child(2) small { display:block; }.history-row>span:nth-child(2) small { margin-top:3px; color:var(--muted); font-size:8px; }.history-row>strong,.history-row>b { text-align:right; font-size:9px; }
.history-row.cancelled { background:#f1efed; color:#888; }.history-row.cancelled>span:nth-child(2) b,.history-row.cancelled>strong { text-decoration:line-through; }
.payment-approvals-panel { display:grid; gap:14px; }.approval-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.approval-kpis>div { padding:12px; border:1px solid var(--line); background:#f5f4f2; }.approval-kpis span,.approval-kpis b { display:block; }.approval-kpis span { color:var(--muted); font-size:8px; }.approval-kpis b { margin-top:5px; font-size:13px; }.approval-workflow { display:flex; align-items:center; justify-content:center; gap:9px; padding:11px; border:1px solid #d6c7a4; background:#fff9e9; color:#695c3d; font-size:8px; font-weight:800; }.approval-workflow span { padding:5px 7px; }.approval-workflow span.active { background:#e7ded0; color:#563c1f; }.approval-workflow i { font-style:normal; color:#9b8e70; }.approval-list-head { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:7px; border-bottom:1px solid var(--line); }.approval-list-head b { font-size:11px; }.approval-list-head>div { display:flex; align-items:center; gap:10px; }.approval-list-head span { color:var(--muted); font-size:9px; }.approval-list-head button { height:31px; border:1px solid #aaa; border-radius:3px; padding:0 10px; background:white; color:#333; font-size:8px; font-weight:900; }.approval-table { border:1px solid var(--line); overflow:auto; }.approval-head,.approval-row { display:grid; grid-template-columns:105px minmax(155px,1.4fr) minmax(120px,1fr) 100px 80px 245px; gap:9px; align-items:center; min-width:880px; padding:10px; }.approval-head { background:#e4e4e4; color:#555; font-size:7px; font-weight:900; text-transform:uppercase; }.approval-row { border-top:1px solid var(--line); font-size:9px; }.approval-row span b,.approval-row span small { display:block; }.approval-row span small { margin-top:3px; color:var(--muted); font-size:7px; }.approval-row>strong { text-align:right; }.approval-state { display:inline-flex; border-radius:3px; padding:4px 6px; font-size:7px; font-style:normal; font-weight:900; }.approval-state.pending { color:#756018; background:#fff4c9; }.approval-state.approved { color:var(--incoming); background:var(--incoming-soft); }.approval-state.rejected { color:var(--outgoing); background:var(--outgoing-soft); }.approval-actions { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px; align-items:center; }.approval-main-action { display:flex!important; flex-wrap:wrap; gap:5px; min-width:0; }.approval-actions button { min-height:29px; border-radius:3px; padding:5px 8px; font-size:8px; font-weight:900; }.approval-actions .approve { border:1px solid #8ebbb0; background:#eef8f4; color:var(--incoming); }.approval-actions .reject { border:1px solid #d7aaa4; background:#fff3f1; color:var(--outgoing); }.approval-actions .cancel-approval-btn { border:1px solid #c2c2c2; background:#f2f2f2; color:#555; }.print-transfer-btn { line-height:1.25; }.printed-order-action { display:grid!important; grid-template-columns:1fr auto; gap:2px 7px; align-items:center; width:100%; padding:6px 7px; border:1px solid #8ebbb0; border-radius:4px; background:#eef8f4; }.printed-order-action em { color:var(--incoming); font-size:8px; font-style:normal; font-weight:900; }.printed-order-action small { grid-column:1; margin:0!important; line-height:1.35; }.printed-order-action button { grid-column:2; grid-row:1/3; border:1px solid #8ebbb0; background:white; color:var(--incoming); }
.transfer-threshold-alert { display:grid; grid-template-columns:34px 1fr auto; gap:12px; align-items:center; margin-bottom:14px; padding:13px 15px; border:1px solid #cf7267; border-left:5px solid var(--outgoing); border-radius:4px; background:#fff2f0; color:#7e2820; box-shadow:0 4px 12px rgba(127,40,32,.08); }.threshold-icon { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:var(--outgoing); color:white; font-size:18px; font-weight:900; }.transfer-threshold-alert b { display:block; font-size:11px; }.transfer-threshold-alert p { margin:4px 0 0; font-size:9px; }.transfer-threshold-alert button { height:32px; border:1px solid #bd665c; border-radius:4px; padding:0 11px; background:white; color:#7e2820; font-size:8px; font-weight:900; }.approval-threshold-alert { display:grid; grid-template-columns:auto 1fr; gap:4px 10px; padding:11px 13px; border-left:4px solid var(--outgoing); background:#fff1ef; color:#7e2820; }.approval-threshold-alert b { font-size:10px; }.approval-threshold-alert span { font-size:8px; }.approval-threshold-alert small { grid-column:1/-1; display:block; font-size:8px; font-weight:800; }
.treasury-pilot { padding:14px; border:1px solid #bfc3bf; background:#f5f5f3; }.treasury-pilot-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:12px; }.treasury-pilot-head h3 { margin:0; font-size:13px; }.treasury-pilot-head p { margin:4px 0 0; color:var(--muted); font-size:8px; }.pilot-legend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; color:#555; font-size:7px; font-weight:800; }.pilot-legend span { display:flex; align-items:center; gap:4px; }.pilot-legend i { width:8px; height:8px; border-radius:2px; }.pilot-legend .safe { background:#2f8a43; }.pilot-legend .warning { background:#d39418; }.pilot-legend .critical { background:var(--outgoing); }.pilot-company-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.company-pilot-card { padding:12px 14px; border:1px solid #c9ccc8; border-top:4px solid #2f8a43; background:white; }.company-pilot-card.warning { border-top-color:#d39418; }.company-pilot-card.critical { border-color:#d59790; border-top-color:var(--outgoing); background:#fffafa; }.company-pilot-card>header { display:flex; justify-content:space-between; align-items:center; }.company-pilot-card>header div { display:flex; align-items:center; }.company-pilot-card>header b { font-size:11px; }.company-pilot-card>header em { padding:4px 6px; border-radius:3px; background:#e6f3e9; color:#247036; font-size:7px; font-style:normal; font-weight:900; }.company-pilot-card.warning>header em { background:#fff1cf; color:#8b620d; }.company-pilot-card.critical>header em { background:#fde4e1; color:var(--outgoing); }.battery-row { display:grid; grid-template-columns:minmax(150px,1fr) auto; gap:5px 12px; align-items:center; margin:13px 4px 12px 0; }.battery-shell { position:relative; height:34px; overflow:visible; border:3px solid #424642; border-radius:5px; background:#e8eae7; box-shadow:inset 0 0 0 2px white; }.battery-shell::after { content:""; position:absolute; top:8px; right:-9px; width:7px; height:13px; border-radius:0 3px 3px 0; background:#424642; }.battery-fill { position:absolute; inset:2px auto 2px 2px; max-width:calc(100% - 4px); border-radius:2px; background:repeating-linear-gradient(115deg,#2f8a43 0,#2f8a43 13px,#43a957 13px,#43a957 20px); animation:battery-charge 1.7s linear infinite; transition:width .25s ease; }.battery-fill.warning { background:repeating-linear-gradient(115deg,#c4820d 0,#c4820d 13px,#e3a52b 13px,#e3a52b 20px); }.battery-fill.critical { background:repeating-linear-gradient(115deg,#b93d31 0,#b93d31 13px,#db5b4f 13px,#db5b4f 20px); }.battery-shell>span { position:absolute; inset:0; display:grid; place-items:center; color:#172727; font-size:12px; font-weight:950; text-shadow:0 1px 2px white; }.battery-row>strong { min-width:94px; color:var(--outgoing); font-size:12px; text-align:right; }.battery-row>small { grid-column:2; margin-top:-6px; color:var(--muted); font-size:7px; text-align:right; }.pilot-values { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid #dedfdd; border-left:1px solid #dedfdd; }.pilot-values>div { padding:8px 9px; border-right:1px solid #dedfdd; border-bottom:1px solid #dedfdd; }.pilot-values span,.pilot-values b { display:block; }.pilot-values span { color:var(--muted); font-size:7px; }.pilot-values b { margin-top:4px; font-size:10px; }.pilot-critical-message { margin-top:10px; padding:8px 10px; border-left:3px solid var(--outgoing); background:#fde9e6; color:#8b2f26; font-size:8px; font-weight:800; line-height:1.45; }@keyframes battery-charge { from { background-position:0 0; } to { background-position:40px 0; } }@media (prefers-reduced-motion:reduce) { .battery-fill { animation:none; } }
.settlements-panel { display:grid; gap:14px; }.settlements-tools { display:grid; grid-template-columns:1fr 1fr 1.35fr auto; gap:9px; align-items:end; }.settlements-tools label { display:grid; gap:5px; }.settlements-tools label>span { color:#444; font-size:8px; font-weight:800; text-transform:uppercase; }.settlements-tools select,.settlements-tools input { width:100%; height:40px; border:1px solid #b8b8b8; border-radius:4px; background:white; padding:0 9px; color:var(--ink); font:inherit; font-size:10px; }.settlements-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.settlements-kpis>div { padding:12px; border:1px solid var(--line); background:#f5f4f2; }.settlements-kpis span,.settlements-kpis b { display:block; }.settlements-kpis span { color:var(--muted); font-size:8px; }.settlements-kpis b { margin-top:5px; font-size:13px; }.settlements-table { border:1px solid var(--line); overflow:auto; }.settlements-head,.settlements-row { display:grid; grid-template-columns:72px minmax(150px,1.4fr) minmax(130px,1.1fr) 88px 105px 72px 70px; gap:9px; align-items:center; min-width:790px; padding:10px; }.settlements-head { position:sticky; top:0; z-index:1; background:#e4e4e4; color:#555; font-size:7px; font-weight:900; letter-spacing:.35px; text-transform:uppercase; }.settlements-row { border-top:1px solid var(--line); font-size:9px; }.settlements-row>span b,.settlements-row>span small { display:block; }.settlements-row>span small { margin-top:3px; color:var(--muted); font-size:7px; }.settlements-row>strong { text-align:right; }.settlements-row.cancelled { background:#f2f1ef; color:#888; }.settlements-row.cancelled>span:nth-child(2) b,.settlements-row.cancelled>strong { text-decoration:line-through; }.settlement-kind,.settlement-state { display:inline-flex; border-radius:3px; padding:4px 6px; font-size:7px; font-style:normal; font-weight:900; }.settlement-kind.client { color:var(--incoming); background:var(--incoming-soft); }.settlement-kind.fournisseur { color:var(--outgoing); background:var(--outgoing-soft); }.settlement-state.valid { color:#247b61; background:#e4f1eb; }.settlement-state.cancelled { color:#777; background:#e3e1df; }.cancel-settlement-btn { height:30px; border:1px solid #c99089; border-radius:4px; background:white; color:var(--outgoing); font-size:8px; font-weight:900; }.cancel-settlement-btn:disabled { border-color:#ccc; color:#aaa; background:#eee; }.settlements-info { display:grid; gap:3px; padding:11px 13px; border-left:4px solid var(--orange); background:#f3eee9; }.settlements-info b { font-size:9px; }.settlements-info span { color:var(--muted); font-size:8px; line-height:1.45; }
.blocked-suppliers-panel { display:grid; gap:16px; }.blocked-supplier-form { display:grid; grid-template-columns:150px 1fr auto; align-items:end; gap:10px; padding:14px; border:1px solid var(--line); background:#f5f4f2; }.blocked-supplier-form .primary-btn { min-height:42px; }.blocked-info { display:grid; gap:5px; padding:12px 14px; border-left:3px solid var(--outgoing); background:#fff3f1; }.blocked-info b { color:var(--outgoing); font-size:10px; }.blocked-info span { color:#625b58; font-size:9px; line-height:1.5; }.blocked-list-head { display:flex; justify-content:space-between; padding-bottom:8px; border-bottom:1px solid var(--line); }.blocked-list-head b { font-size:11px; }.blocked-list-head span { color:var(--muted); font-size:9px; }.blocked-supplier-list { border:1px solid var(--line); }.blocked-supplier-list>div { display:grid; grid-template-columns:80px 1fr 70px auto; align-items:center; gap:10px; padding:11px 12px; border-top:1px solid var(--line); }.blocked-supplier-list>div:first-child { border-top:0; }.blocked-supplier-list>div>div b,.blocked-supplier-list>div>div small { display:block; }.blocked-supplier-list>div>div b { font-size:10px; }.blocked-supplier-list>div>div small { margin-top:3px; color:var(--muted); font-size:8px; }.blocked-status { color:var(--outgoing); font-size:8px; font-weight:900; text-transform:uppercase; }.blocked-supplier-list button { border:1px solid #aaa; background:white; padding:6px 8px; color:#444; font-size:8px; font-weight:800; cursor:pointer; }
.reserve-bank-note { display:block; margin-top:4px; color:var(--outgoing)!important; font-weight:800; }.reserves-panel { display:grid; gap:16px; }.reserve-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.reserve-kpis>div { padding:12px; border:1px solid var(--line); background:#f5f4f2; }.reserve-kpis span,.reserve-kpis b { display:block; }.reserve-kpis span { color:var(--muted); font-size:8px; }.reserve-kpis b { margin-top:5px; font-size:12px; }.reserve-form { display:grid; grid-template-columns:repeat(2,1fr); gap:11px; padding:14px; border:1px solid var(--line); background:#f8f7f5; }.reserve-form .field.full { grid-column:1/-1; }.reserve-list-head { display:flex; justify-content:space-between; padding-bottom:8px; border-bottom:1px solid var(--line); }.reserve-list-head b { font-size:11px; }.reserve-list-head span { color:var(--muted); font-size:9px; }.reserve-list { border:1px solid var(--line); }.reserve-list>div { display:grid; grid-template-columns:32px 1fr 100px 76px auto; align-items:center; gap:10px; padding:11px 12px; border-top:1px solid var(--line); }.reserve-list>div:first-child { border-top:0; }.reserve-kind { width:30px; height:30px; display:grid; place-items:center; font-size:10px; font-weight:900; }.reserve-kind.reserve { color:#68531c; background:#f7edcf; }.reserve-kind.epargne { color:#2c6a5e; background:#e3f1ec; }.reserve-list>div>div b,.reserve-list>div>div small { display:block; }.reserve-list>div>div b { font-size:10px; }.reserve-list>div>div small { margin-top:4px; color:var(--muted); font-size:8px; }.reserve-list>div>strong { text-align:right; font-size:10px; }.reserve-toggle { min-width:70px; border:0; background:transparent; display:flex; align-items:center; gap:5px; color:var(--muted); font-size:8px; font-weight:800; cursor:pointer; }.reserve-toggle i { width:28px; height:16px; border-radius:10px; background:#c8cdca; position:relative; }.reserve-toggle i::after { content:""; position:absolute; width:12px; height:12px; left:2px; top:2px; border-radius:50%; background:white; transition:.15s; }.reserve-toggle.on { color:var(--incoming); }.reserve-toggle.on i { background:var(--incoming); }.reserve-toggle.on i::after { transform:translateX(12px); }.reserve-delete { border:1px solid #aaa; background:white; padding:6px 8px; color:#555; font-size:8px; font-weight:800; cursor:pointer; }
.account-transfer-panel { display:grid; gap:16px; }.account-transfer-rule { display:grid; grid-template-columns:42px 1fr; align-items:center; gap:12px; padding:14px; border-left:4px solid var(--incoming); background:#eef6f2; }.account-transfer-rule>span { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:var(--incoming); color:white; font-size:18px; font-weight:900; }.account-transfer-rule b,.account-transfer-rule small { display:block; }.account-transfer-rule b { font-size:11px; }.account-transfer-rule small { margin-top:4px; color:var(--muted); font-size:8px; line-height:1.5; }.account-transfer-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.account-transfer-form .field.full { grid-column:1/-1; }.account-transfer-impact { display:grid; grid-template-columns:1fr 28px 1fr 1.2fr; align-items:stretch; gap:8px; padding:12px; border:1px solid var(--line); background:#f5f4f2; }.account-transfer-impact>div { padding:10px; border:1px solid #d6d2ce; background:white; }.account-transfer-impact>i { align-self:center; text-align:center; color:var(--incoming); font-size:18px; font-style:normal; font-weight:900; }.account-transfer-impact span,.account-transfer-impact b,.account-transfer-impact small { display:block; }.account-transfer-impact span { color:var(--muted); font-size:8px; }.account-transfer-impact b { margin-top:5px; font-size:12px; }.account-transfer-impact small { margin-top:5px; color:var(--muted); font-size:8px; }.account-transfer-total { border-left:3px solid var(--incoming)!important; }
.import-note { background:#edf5f1;border-left:3px solid var(--teal);padding:12px 14px;border-radius:0 9px 9px 0;display:grid;gap:3px;margin-bottom:18px }.import-note b{font-size:10px}.import-note span{font-size:9px;color:var(--muted);line-height:1.45}
.company-import-field { margin-bottom:14px; }
.inline-company { display:inline-flex!important; margin-left:5px!important; padding:2px 5px; border-radius:5px; background:#e7eeeb; color:var(--navy)!important; font-size:7px!important; font-weight:900; }
.upload-grid { display:grid;grid-template-columns:1fr 1fr;gap:12px }.upload-card{min-height:170px;border:1.5px dashed #bcc9c4;border-radius:12px;background:#fafaf6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;cursor:pointer;transition:.18s ease}.upload-card:hover{border-color:var(--teal);background:#f1f7f4}.upload-card.ready{border-style:solid;border-color:#8fc1b4;background:#edf7f2}.upload-card input{position:absolute;width:1px;height:1px;opacity:0}.upload-symbol{width:35px;height:35px;border-radius:9px;background:#e2ebe7;color:var(--teal);display:grid;place-items:center;font-weight:900;margin-bottom:10px}.upload-card.ready .upload-symbol{background:var(--teal);color:white}.upload-card b{font-size:12px;text-transform:capitalize}.upload-card small{color:var(--muted);font-size:9px;margin-top:4px}.upload-card strong{font-size:9px;color:var(--teal);margin-top:10px}.upload-card em{font-size:8px;color:var(--red);font-style:normal;margin-top:8px}.import-summary{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:8px;padding:13px 2px;border-bottom:1px solid var(--line)}
.import-decision-backdrop { position:absolute; inset:0; z-index:4; display:grid; place-items:center; padding:24px; background:rgba(8,34,34,.48); backdrop-filter:blur(2px); }
.import-decision { width:min(520px,100%); border-radius:14px; background:var(--card); padding:22px; box-shadow:0 24px 60px rgba(0,0,0,.28); text-align:center; }
.decision-icon { width:36px; height:36px; margin:0 auto 10px; display:grid; place-items:center; border-radius:50%; background:#fff0e5; color:var(--orange); font-size:18px; font-weight:900; }.import-decision h3 { margin:0; font-size:17px; }.import-decision>p { margin:7px auto 17px; max-width:420px; color:var(--muted); font-size:9px; line-height:1.55; }
.decision-options { display:grid; gap:9px; text-align:left; }.decision-option { width:100%; display:grid; grid-template-columns:34px 1fr; gap:10px; align-items:center; padding:13px; border:1px solid var(--line); border-radius:10px; background:white; color:var(--ink); text-align:left; }.decision-option:hover { transform:translateY(-1px); box-shadow:0 7px 18px rgba(15,50,50,.08); }.decision-option>span { width:32px; height:32px; display:grid; place-items:center; border-radius:8px; font-size:15px; font-weight:900; }.decision-option.replace>span { background:#fff0e8; color:var(--orange); }.decision-option.append>span { background:#e5f2ed; color:var(--teal); }.decision-option b,.decision-option small { display:block; }.decision-option b { font-size:10px; }.decision-option small { margin-top:4px; color:var(--muted); font-size:8px; line-height:1.45; }.decision-option:disabled { opacity:.55; }
.decision-icon.safe { background:#e5f2ed; color:#247b61; }.import-safety-checks { display:grid; gap:6px; margin:0 0 14px; padding:11px 13px; border:1px solid #c7ddd4; border-radius:8px; background:#f1f8f5; color:#315e4f; text-align:left; }.import-safety-checks span { font-size:8px; font-weight:750; line-height:1.4; }.decision-options.safe-only .decision-option { border-color:#9fc8b8; background:#fbfffd; }
.import-preview-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin:0 0 12px; }.import-preview-kpis>div { padding:9px 7px; border:1px solid #ddd; border-radius:6px; background:#f7f7f6; }.import-preview-kpis span,.import-preview-kpis b { display:block; }.import-preview-kpis span { color:#777; font-size:7px; }.import-preview-kpis b { margin-top:4px; font-size:16px; }.import-preview-kpis .new { border-color:#a9cfbf; background:#edf8f3; }.import-preview-kpis .new b { color:#247b61; }
.decision-cancel { margin-top:14px; border:0; background:transparent; color:var(--muted); font-size:8px; font-weight:900; text-decoration:underline; text-underline-offset:2px; }
.bank-form{display:grid;gap:10px}.bank-input{display:grid;grid-template-columns:34px 1fr 150px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:12px}.bank-input>div:nth-child(2) b,.bank-input>div:nth-child(2) span{display:block}.bank-input>div:nth-child(2) b{font-size:10px}.bank-input>div:nth-child(2) span{font-size:8px;color:var(--muted);margin-top:2px}.bank-input label{height:38px;border:1px solid #ccd5d1;border-radius:8px;display:flex;align-items:center;background:white;overflow:hidden}.bank-input input{border:0;outline:0;min-width:0;width:100%;height:100%;padding:0 8px;text-align:right;font-size:11px;font-weight:800;color:var(--ink)}.bank-input label small{font-size:8px;color:var(--muted);padding-right:8px}.bank-total{background:#edf5f1;border-radius:9px;padding:12px 14px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.bank-total b{color:var(--teal);font-size:12px}
.forecast-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.forecast-kpis>div{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fafaf6}.forecast-kpis span,.forecast-kpis b{display:block}.forecast-kpis span{font-size:8px;color:var(--muted);margin-bottom:6px}.forecast-kpis b{font-size:13px}.forecast-form{display:grid;grid-template-columns:1fr 1fr;gap:11px;background:#f0f3ee;border-radius:12px;padding:15px}.forecast-form .drawer-actions{margin-top:3px}.forecast-list{margin-top:20px}.forecast-list-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 2px 9px;font-size:10px}.forecast-list-head span{color:var(--muted);font-size:8px}.forecast-row{display:grid;grid-template-columns:28px minmax(220px,1fr) auto 72px auto;gap:10px;align-items:center;padding:11px 2px;border-bottom:1px solid #ecece7}.forecast-row.excluded{opacity:.5}.forecast-kind{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;font-weight:900}.forecast-kind.client{background:var(--incoming-soft);color:var(--incoming)}.forecast-kind.fournisseur{background:var(--outgoing-soft);color:var(--outgoing)}.forecast-row>div b,.forecast-row>div small{display:block}.forecast-row>div b{font-size:10px}.forecast-row>div small{font-size:8px;color:var(--muted);margin-top:2px}.forecast-row>strong{font-size:10px}.empty-state{text-align:center;color:var(--muted);font-size:9px;padding:30px 0}
.template-picker { display:grid; grid-template-columns:1fr auto; gap:6px 8px; align-items:end; margin-bottom:12px; padding:12px; border:1px solid var(--line); border-radius:10px; background:#fafaf6; }
.template-picker label { grid-column:1/-1; color:var(--muted); font-size:8px; font-weight:900; text-transform:uppercase; letter-spacing:.5px; }
.template-picker select { height:38px; border:1px solid var(--line); border-radius:8px; background:white; padding:0 9px; font-size:10px; }
.template-picker button { height:38px; border:0; border-radius:8px; background:#e7eeeb; color:var(--navy); font-size:9px; font-weight:900; padding:0 12px; }
.settings-stack { display:grid; gap:18px; }
.settings-section { border:1px solid var(--line); border-radius:12px; padding:16px; background:#fafaf6; }
.settings-title { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:14px; }
.settings-title h3 { margin:0; font-size:13px; }.settings-title p { margin:3px 0 0; color:var(--muted); font-size:9px; }.settings-title>span { color:var(--teal); font-size:8px; font-weight:900; }
.compact-form { display:grid; grid-template-columns:1fr 1fr; gap:9px; }.compact-form .field.full { grid-column:1/-1; }.settings-submit { align-items:end; }.settings-submit button { justify-self:end; }
.supplier-search>div { height:42px; display:grid; grid-template-columns:34px 1fr; align-items:center; border:1px solid #b8b8b8; border-radius:4px; background:white; }.supplier-search>div>span { display:grid; place-items:center; color:#68635f; font-size:15px; }.supplier-search>div>input { height:40px; border:0!important; outline:0; background:transparent; }.supplier-search>small { color:var(--muted); font-size:8px; line-height:1.35; }
.supplier-bank-form { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:14px; row-gap:14px; align-items:start; }.supplier-bank-form>.field { min-width:0; align-self:start; align-content:start; grid-template-rows:16px auto; gap:8px; }.supplier-bank-form>.field>label { display:flex; align-items:center; height:16px; line-height:16px; }.supplier-bank-form>.field>input,.supplier-bank-form>.field>select,.supplier-bank-form .supplier-search>div,.supplier-bank-form .bank-name-picker>select { height:42px; }.supplier-bank-form .supplier-search>div>input { min-width:0; }.supplier-bank-form .settings-submit { display:flex; width:100%; padding-top:24px; }.supplier-bank-form .settings-submit button { width:100%; min-height:42px; margin:0; }
.settings-list { margin-top:12px; display:grid; gap:6px; }.settings-list>div { display:flex; align-items:center; gap:9px; border-top:1px solid var(--line); padding:9px 2px 2px; }.settings-list p { margin:0; }.settings-list b,.settings-list small { display:block; }.settings-list b { font-size:9px; }.settings-list small { color:var(--muted); font-size:8px; margin-top:2px; }
.supplier-bank-icon { width:26px;height:26px;border-radius:7px;background:#e8edf7;color:#34527f;display:grid;place-items:center;font-size:9px;font-weight:900; }
.supplier-bank-list { margin-top:12px; border-top:1px solid var(--line); }.supplier-bank-list>div { display:grid; grid-template-columns:30px 1fr auto; align-items:center; gap:9px; padding:10px 4px; border-bottom:1px solid var(--line); }.supplier-bank-list>div.selected { margin:0 -4px; padding-left:8px; padding-right:8px; background:#eef4f1; box-shadow:inset 3px 0 var(--teal); }.supplier-bank-list p { margin:0; min-width:0; }.supplier-bank-list b,.supplier-bank-list small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.supplier-bank-list b { font-size:9px; }.supplier-bank-list small { margin-top:2px; color:var(--muted); font-size:7px; }.supplier-bank-row-actions { display:flex; gap:5px; }.supplier-bank-row-actions button { border:0; border-radius:4px; padding:6px 8px; background:#e2e2e2; color:#444; font-size:7px; font-weight:900; }.supplier-bank-row-actions button.danger { background:#f9e5e3; color:var(--outgoing); }.supplier-bank-editor { margin-top:12px; border:1px solid #b9cec7; padding:14px; background:#f2f7f4; }
.company-bank-settings { display:grid; gap:10px; }.company-bank-settings>form { background:white; border:1px solid var(--line); border-radius:10px; padding:12px; }.settings-bank-head { display:flex; justify-content:space-between; margin-bottom:10px; font-size:9px; }.settings-bank-head b { color:var(--teal); }.settings-bank-head span { color:var(--muted); }
.settings-add { height:34px; white-space:nowrap; }
.bank-directory { border:1px solid var(--line); border-radius:10px; overflow:hidden; background:white; }
.bank-directory-head,.bank-directory-row { display:grid; grid-template-columns:90px 1.25fr 1.2fr 100px 190px; gap:10px; align-items:center; }
.bank-directory-head { padding:9px 11px; background:#edf0eb; color:var(--muted); font-size:7px; font-weight:900; text-transform:uppercase; letter-spacing:.6px; }
.bank-directory-row { padding:10px 11px; border-top:1px solid #e9ebe6; cursor:pointer; transition:.15s ease; }
.bank-directory-row:hover,.bank-directory-row.selected { background:#f0f6f3; }.bank-directory-row.selected { box-shadow:inset 3px 0 var(--teal); }
.bank-directory-row>span { min-width:0; font-size:8px; }.bank-directory-row b,.bank-directory-row small { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.bank-directory-row b { font-size:9px; }.bank-directory-row small { color:var(--muted); font-size:7px; margin-top:2px; }
.company-dot { display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:5px; background:var(--teal); }.company-dot.company-ctl { background:#5274aa; }
.row-actions { display:flex; gap:5px; }.row-actions button { border:0; border-radius:6px; background:#e7eeeb; color:var(--navy); padding:5px 6px; font-size:7px; font-weight:900; }.row-actions button.danger { background:#f9e8e8; color:var(--red); }
.primary-bank-badge { display:inline-flex; margin-left:6px; padding:2px 5px; border-radius:3px; background:#e4f1eb; color:var(--incoming); font-size:6px; font-style:normal; font-weight:900; text-transform:uppercase; }.row-actions button.primary-action { background:#fff2df; color:#8d5318; }
.bank-editor { margin-top:12px; border:1px solid #b9cec7; border-radius:10px; padding:14px; background:#f2f7f4; }.bank-editor-head { display:flex; justify-content:space-between; margin-bottom:12px; }.bank-editor-head b,.bank-editor-head small { display:block; }.bank-editor-head b { font-size:11px; }.bank-editor-head small { color:var(--muted); font-size:8px; margin-top:3px; }.close-mini { width:27px; height:27px; border:0; border-radius:7px; background:#dfe8e3; }
.danger-btn { height:38px; border:1px solid #efcaca; border-radius:8px; padding:0 12px; background:#fff2f2; color:var(--red); font-size:9px; font-weight:900; margin-right:auto; }
.report-actions { display:flex; align-items:center; gap:8px; margin-bottom:13px; }.report-actions>div { margin-right:auto; }.report-actions b,.report-actions span { display:block; }.report-actions b { font-size:12px; }.report-actions span { color:var(--muted); font-size:8px; margin-top:3px; }.report-kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }.report-kpis>div { border:1px solid var(--line); border-radius:10px; padding:12px; background:#fafaf6; }.report-kpis span,.report-kpis b { display:block; }.report-kpis span { color:var(--muted); font-size:8px; margin-bottom:6px; }.report-kpis b { font-size:12px; }
.report-company-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin:12px 0; }.report-company-grid>div { border:1px solid var(--line); border-radius:10px; padding:12px; }.report-company-grid dl { margin:9px 0 0; }.report-company-grid dl>div { display:flex; justify-content:space-between; padding:5px 0; border-top:1px solid #eceee9; font-size:8px; }.report-company-grid dt { color:var(--muted); }.report-company-grid dd { margin:0; font-weight:900; }.report-company-grid dd.red { color:var(--red); }
.report-table { border:1px solid var(--line); border-radius:10px; overflow:hidden; }.report-table-head,.report-table>div { display:grid; grid-template-columns:80px 90px 1fr 85px 100px; gap:8px; align-items:center; }.report-table-head { background:#edf0eb; color:var(--muted); font-size:7px!important; font-weight:900; text-transform:uppercase; }.report-table>div { padding:9px 10px; border-top:1px solid var(--line); font-size:8px; }.report-table>div span:last-child { text-align:right; font-weight:900; }.report-table small { display:block; color:var(--muted); font-size:7px; margin-top:2px; }
.print-report { display:none; background:white; color:#172727; font-family:Arial,sans-serif; }.print-report header { display:flex; justify-content:space-between; border-bottom:2px solid #172727; padding-bottom:12px; }.print-report header strong,.print-report header span { display:block; }.print-report header strong { font-size:18px; }.print-report header span { font-size:11px; margin-top:3px; }.print-report h1 { margin:20px 0; font-size:22px; }.print-report-totals { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-bottom:18px; }.print-report-totals div { border:1px solid #bbb; padding:9px; font-size:9px; }.print-report-totals b { display:block; font-size:11px; margin-top:5px; }.print-report table { min-width:0; }.print-report th,.print-report td { padding:6px; font-size:7px; }
.print-approvals { display:none; background:white; color:#172727; font-family:Arial,sans-serif; }.print-approvals header { display:flex; justify-content:space-between; border-bottom:2px solid #172727; padding-bottom:11px; }.print-approvals header strong,.print-approvals header span { display:block; }.print-approvals header strong { font-size:17px; }.print-approvals header span { margin-top:4px; font-size:10px; }.print-approvals h1 { margin:16px 0 10px; font-size:19px; }.print-approvals h2 { margin:15px 0 6px; font-size:11px; }.print-approval-kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }.print-approval-kpis>div { padding:8px; border:1px solid #aaa; font-size:8px; }.print-approval-kpis b { display:block; margin-top:4px; font-size:11px; }.print-approvals table { width:100%; min-width:0; border-collapse:collapse; }.print-approvals th,.print-approvals td { padding:5px 6px; border:1px solid #aaa; font-size:7px; text-align:left; }.print-approvals th { background:#eee; font-weight:800; }.print-approvals footer { margin-top:14px; padding-top:7px; border-top:1px solid #aaa; color:#555; font-size:7px; }
.print-schedule { display:none; background:white; color:#172727; font-family:Arial,sans-serif; }.print-schedule header { display:flex; justify-content:space-between; border-bottom:2px solid #172727; padding-bottom:12px; }.print-schedule header strong,.print-schedule header span { display:block; }.print-schedule header strong { font-size:18px; }.print-schedule header span { margin-top:3px; font-size:10px; }.print-schedule h1 { margin:18px 0 5px; font-size:20px; }.print-schedule>p { margin:0 0 15px; color:#555; font-size:9px; }.print-schedule table { min-width:0; width:100%; border-collapse:collapse; }.print-schedule th,.print-schedule td { padding:6px; border:1px solid #bbb; font-size:7px; }.print-schedule th { background:#eee; text-align:left; }
.transfer-context { display:flex; gap:10px; align-items:center; padding:13px; background:#eeeeee; border-radius:4px; margin-bottom:10px; }.transfer-context b,.transfer-context small { display:block; }.transfer-context b { font-size:11px; }.transfer-context small { color:var(--muted); font-size:8px; margin-top:3px; }.transfer-lines-summary { margin-bottom:15px; border:1px solid var(--line); border-radius:4px; overflow:hidden; }.transfer-lines-summary>div { display:grid; grid-template-columns:1fr 1fr auto; gap:8px; align-items:center; padding:8px 10px; border-top:1px solid var(--line); font-size:9px; }.transfer-lines-summary>div:first-child { border-top:0; }.transfer-lines-summary small { color:var(--muted); }.field-help { color:var(--orange); font-size:8px; }
.transfer-form textarea { width:100%; resize:vertical; border:1px solid #a9a9a9; border-radius:4px; padding:10px; background:white; color:var(--ink); font:inherit; font-size:10px; }.optional-label { margin-left:5px; color:var(--muted); font-size:7px; font-weight:500; text-transform:none; }.transfer-number-note { grid-column:1/-1; display:flex; gap:8px; align-items:center; padding:9px 11px; border-left:3px solid var(--orange); background:#f4f4f4; font-size:8px; }.transfer-number-note span { color:var(--muted); }
.field-help.supplier-bank-found { color:var(--incoming); font-weight:800; }
.bank-name-picker { display:grid; gap:6px; }.bank-name-picker small { color:var(--muted); font-size:8px; }.bank-name-picker select:has(option[value="__new__"]:checked) { border-color:var(--orange); }.bank-name-picker input:not([type="hidden"]) { border-color:var(--orange); background:#fffaf7; }
.supplier-bank-missing { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:7px; padding:11px 12px; border:1px solid #dfb4ad; border-left:4px solid var(--outgoing); background:#fff4f2; }.supplier-bank-missing b,.supplier-bank-missing span { display:block; }.supplier-bank-missing b { color:var(--outgoing); font-size:9px; }.supplier-bank-missing span { margin-top:3px; color:var(--muted); font-size:8px; }.supplier-bank-missing button { flex:0 0 auto; border:1px solid var(--outgoing); border-radius:3px; padding:9px 11px; background:var(--outgoing); color:white; font:inherit; font-size:8px; font-weight:800; cursor:pointer; }
.supplier-bank-actions { display:flex; justify-content:flex-end; gap:7px; flex-wrap:wrap; }.supplier-bank-missing .choose-existing-bank { border-color:#087f8c; background:white; color:#087f8c; }.supplier-bank-missing .choose-existing-bank:hover { background:#eaf6f4; }.supplier-bank-manual-warning { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; margin-top:7px; padding:11px 12px; border:1px solid #9fc9c2; border-left:4px solid var(--incoming); background:#eff8f6; }.supplier-bank-manual-warning b,.supplier-bank-manual-warning span { display:block; }.supplier-bank-manual-warning b { color:#136c61; font-size:9px; }.supplier-bank-manual-warning span { margin-top:3px; color:var(--muted); font-size:8px; line-height:1.45; }.supplier-bank-manual-warning button { white-space:normal; }
.supplier-bank-quick-actions { display:flex; justify-content:flex-end; align-items:center; gap:8px; margin-top:9px; padding-top:9px; border-top:1px solid var(--line); }.supplier-bank-quick-actions button { min-height:34px; white-space:normal; }.supplier-bank-quick-actions .ghost-btn { border-color:#087f8c; color:#087f8c; }.supplier-bank-quick-actions .primary-btn { background:#cf3f31; border-color:#b83227; }
.transfer-order-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:15px; padding:13px; border:1px solid var(--line); background:#f5f5f4; }.transfer-order-meta>.field { min-width:0; grid-template-rows:14px 42px auto; align-content:start; }.transfer-order-meta>.field>label { display:flex; align-items:center; height:14px; }.transfer-order-meta>.field>input,.transfer-total-input { height:42px; }.transfer-total-input { display:grid; grid-template-columns:minmax(0,1fr) 60px; }.transfer-total-input input { height:42px!important; border-radius:4px 0 0 4px!important; font-weight:800; color:var(--outgoing); }.transfer-total-input span { display:flex; align-items:center; justify-content:center; height:42px; padding:0 12px; border:1px solid #a9a9a9; border-left:0; border-radius:0 4px 4px 0; background:#e5e5e3; color:var(--ink); font-size:9px; font-weight:900; }.transfer-total-field input[readonly] { background:white; }
.split-payment-form { display:grid; gap:12px; }.split-source { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px; border:1px solid var(--line); border-radius:4px; background:#f2f2f2; }.split-source>div { display:grid; grid-template-columns:auto 1fr; gap:3px 9px; align-items:center; }.split-source b { font-size:12px; }.split-source small { grid-column:2; color:var(--muted); font-size:9px; }.split-source>strong { font-size:15px; }.split-lines-head,.split-lines>div { display:grid; grid-template-columns:65px 1fr 130px 32px; gap:9px; align-items:center; }.split-lines-head { padding:8px 10px; background:#e4e4e4; color:#555; font-size:8px; font-weight:800; text-transform:uppercase; }.split-lines { border:1px solid var(--line); border-radius:4px; overflow:hidden; }.split-lines>div { padding:9px 10px; border-top:1px solid var(--line); }.split-lines>div:first-child { border-top:0; }.split-lines b { font-size:10px; }.split-lines input { height:36px; min-width:0; border:1px solid #b8b8b8; border-radius:4px; padding:0 8px; font-size:10px; }.split-lines>div>button { width:30px; height:30px; border:0; border-radius:3px; background:#eeeeee; color:var(--outgoing); font-weight:900; }.split-lines>div>button:disabled { opacity:.3; }.add-split-line { justify-self:start; height:34px; border:1px solid #aaa; border-radius:4px; padding:0 11px; background:white; color:#444; font-size:9px; font-weight:800; }.split-totals { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }.split-totals>div { padding:11px; border:1px solid var(--line); border-radius:4px; background:#f7f7f7; }.split-totals span,.split-totals b { display:block; }.split-totals span { color:var(--muted); font-size:8px; }.split-totals b { margin-top:5px; font-size:12px; }
.print-order { display:none; background:white; color:#172727; font-family:Arial,sans-serif; }.print-order header { display:flex; justify-content:space-between; gap:30px; border-bottom:3px solid #172727; padding-bottom:14px; }.print-order header strong,.print-order header span,.print-order header small { display:block; }.print-order header strong { font-size:17px; }.print-order header span { margin-top:7px; font-size:22px; font-weight:900; letter-spacing:1.8px; }.print-order header small { margin-top:6px; font-size:10px; font-weight:700; }.print-order-meta { text-align:right; font-size:11px; }.print-order-meta b { display:block; margin-top:9px; }.print-addressee { display:grid; gap:3px; width:48%; margin:18px 0 18px auto; padding:11px 14px; border-left:3px solid #172727; background:#f2f2f2; font-size:11px; }.print-order p { font-size:11px; line-height:1.55; } .print-order-operation { display:grid; grid-template-columns:170px 1fr; margin:10px 0 14px; border:1px solid #8fa1a7; background:#f7faf9; } .print-order-operation span,.print-order-operation b { padding:9px 10px; font-size:10px; line-height:1.4; } .print-order-operation span { background:#e7edeb; font-weight:800; text-transform:uppercase; letter-spacing:.35px; } .print-order-operation b { border-left:1px solid #8fa1a7; color:#174c45; }.print-order dl { margin:16px 0 12px; border:1px solid #999; }.print-order dl>div { display:grid; grid-template-columns:170px 1fr; border-bottom:1px solid #bbb; }.print-order dl>div:last-child { border-bottom:0; }.print-order dt,.print-order dd { margin:0; padding:8px 10px; font-size:10px; }.print-order dt { background:#eee; font-weight:800; }.print-order dd small { display:block; margin-top:3px; color:#555; }.amount-in-words { display:block; line-height:1.45; color:#172727; }.print-order-lines { min-width:0; width:100%; border-collapse:collapse; }.print-order-lines th,.print-order-lines td { padding:7px 9px; border:1px solid #aaa; font-size:9px; }.print-order-lines th { background:#eee; text-align:left; }.print-order-lines th:last-child,.print-order-lines td:last-child { text-align:right; }.print-order-comment { margin-top:12px; padding:9px 11px; border:1px solid #aaa; background:#fafafa; font-size:9px; }.print-order-comment p { margin:5px 0 0; white-space:pre-wrap; }.print-order footer { display:flex; justify-content:space-between; padding-top:42px; font-size:10px; font-weight:700; }
.planning-workspace { display:grid; gap:13px; }.planning-toolbar { display:flex; justify-content:space-between; align-items:center; gap:15px; }.planning-toolbar>div:first-child b,.planning-toolbar>div:first-child span { display:block; }.planning-toolbar>div:first-child b { font-size:13px; }.planning-toolbar>div:first-child span { color:var(--muted); font-size:9px; margin-top:3px; }.planning-scale { display:flex; padding:3px; border:1px solid var(--line); border-radius:9px; background:var(--card); }.planning-scale button { height:29px; border:0; border-radius:6px; padding:0 11px; background:transparent; color:var(--muted); font-size:8px; font-weight:900; }.planning-scale button.active { background:var(--navy); color:white; }
.planning-alerts { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }.planning-alerts>div { padding:11px 13px; border:1px solid var(--line); border-radius:10px; background:var(--card); }.planning-alerts span,.planning-alerts b { display:block; }.planning-alerts span { color:var(--muted); font-size:8px; }.planning-alerts b { margin-top:5px; font-size:12px; }
.planning-card { min-width:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--card); }.planning-table-wrap { overflow:auto; max-height:560px; }.planning-table { width:max-content; min-width:100%; border-collapse:separate; border-spacing:0; }.planning-table th,.planning-table td { height:42px; padding:8px 10px; border-top:1px solid #e8ebe5; border-right:1px solid #edf0eb; white-space:nowrap; font-size:8px; text-align:right; }.planning-table thead th { position:sticky; top:0; z-index:3; height:46px; border-top:0; background:#e9efeb; color:var(--muted); font-size:7px; text-transform:uppercase; letter-spacing:.35px; }.planning-table th:first-child { position:sticky; left:0; z-index:2; min-width:175px; max-width:175px; text-align:left; background:#fafaf6; font-size:8px; }.planning-table thead th:first-child { z-index:4; background:#e1e9e4; }.planning-table td { min-width:92px; }.planning-table tr:hover td,.planning-table tr:hover th:first-child { background:#f6f8f4; }.planning-dot { width:7px; height:7px; display:inline-block; border-radius:50%; margin-right:7px; }.planning-dot.incoming { background:var(--incoming); }.planning-dot.outgoing { background:var(--outgoing); }.planning-amount { border:0; padding:5px 2px; background:transparent; color:inherit; font-size:8px; font-weight:900; text-align:right; }.planning-amount:hover { text-decoration:underline; text-underline-offset:3px; }.planning-table .total-row th,.planning-table .total-row td { font-weight:900; }.planning-table .incoming-total th,.planning-table .incoming-total td { background:var(--incoming-soft); }.planning-table .outgoing-total th,.planning-table .outgoing-total td { background:var(--outgoing-soft); }.planning-table .net-row th,.planning-table .net-row td { border-top:2px solid #bdc9c3; font-weight:900; }.planning-table .balance-row th,.planning-table .balance-row td { background:var(--navy); color:white; border-color:#315251; font-weight:900; }.planning-table .balance-row th:first-child { background:var(--navy); }.planning-table .balance-row .planning-amount { color:inherit; }.planning-table .safety-row th,.planning-table .safety-row td { color:var(--muted); background:#f4f1e8; }.planning-table .available-row th,.planning-table .available-row td { font-weight:900; }.cash-danger { color:var(--red)!important; }.planning-table .balance-row .cash-danger { background:#6f3030; color:white!important; }.cash-positive { color:var(--teal)!important; }
.planning-detail { border:1px solid var(--line); border-radius:12px; padding:14px; background:var(--card); }.planning-detail-head { display:flex; justify-content:space-between; align-items:center; padding-bottom:10px; border-bottom:1px solid var(--line); }.planning-detail-head b,.planning-detail-head span { display:block; }.planning-detail-head b { font-size:11px; }.planning-detail-head span { color:var(--muted); font-size:8px; margin-top:3px; }.planning-detail-head button { width:28px; height:28px; border:0; border-radius:7px; background:#edf0eb; }.planning-detail-list>div { display:grid; grid-template-columns:70px minmax(170px,1fr) 110px 120px 72px; gap:10px; align-items:center; padding:10px 2px; border-top:1px solid #eceee9; }.planning-detail-list>div:first-child { border-top:0; }.planning-detail-list .planning-detail-columns { margin:0 -2px; padding:9px 4px; border-radius:7px; background:#edf0eb; color:var(--muted); font-size:7px; font-weight:900; letter-spacing:.45px; text-transform:uppercase; }.planning-detail-columns span:nth-child(3) { text-align:right; }.planning-detail-list p { margin:0; }.planning-detail-list p b,.planning-detail-list p small { display:block; }.planning-detail-list p b { font-size:9px; }.planning-detail-list p small { margin-top:2px; color:var(--muted); font-size:7px; }.planning-detail-list>div>span:nth-child(3) { text-align:right; font-size:9px; font-weight:900; }.planning-detail-list input { height:32px; border:1px solid var(--line); border-radius:7px; padding:0 6px; color:var(--ink); font-size:8px; }.planning-detail-list .excluded { opacity:.55; }
.toast { position:fixed;right:24px;bottom:24px;background:var(--navy);color:white;border-radius:9px;padding:12px 16px;font-size:10px;box-shadow:0 10px 30px rgba(0,0,0,.18);z-index:20; }

/* Thème ERP inspiré d’Oracle Redwood */
html { border-top:4px solid var(--orange); }
.app-shell { grid-template-columns:248px minmax(0,1fr); }
.sidebar { padding:22px 14px 16px; background:#3d3d3d; color:#fff; box-shadow:2px 0 7px rgba(0,0,0,.15); }
.brand { padding:0 10px 24px; border-bottom:1px solid #5f5f5f; margin-bottom:14px; }
.brand-mark { width:36px; height:36px; border-radius:4px; background:var(--orange); box-shadow:none; font-size:17px; letter-spacing:0; }
.brand strong { font-size:19px; font-weight:600; letter-spacing:0; }.brand small { color:#d0d0d0; font-size:9px; letter-spacing:1px; }
.nav-label { color:#b7b7b7; font-size:9px; letter-spacing:1px; font-weight:600; }
.nav { gap:2px; }.nav button { min-height:40px; padding:9px 11px; border-radius:3px; color:#eeeeee; font-size:12px; font-weight:500; }.nav button:hover { background:#4a4a4a; }.nav button.active { background:#595959; box-shadow:inset 4px 0 var(--orange); font-weight:650; }
.nav-icon { width:23px; height:23px; border-color:#7d7d7d; border-radius:3px; color:#f4f4f4; }.nav button.active .nav-icon { background:transparent; border-color:#dadada; color:white; }
.sync-card { background:#303030; border-color:#5f5f5f; border-radius:4px; color:#cccccc; }.sync-card b { color:white; }.profile span { color:#c0c0c0; }
.main { padding:0 28px 42px; background:var(--paper); }
.topbar { min-height:82px; margin:0 -28px 22px; padding:16px 28px; background:#fafafa; border-bottom:1px solid var(--line); box-shadow:0 1px 3px rgba(0,0,0,.08); }
.title-wrap h1 { font-size:24px; line-height:1.2; letter-spacing:0; font-weight:600; }.title-wrap p { margin-top:5px; font-size:12px; }
.company-filter,.period,.icon-btn,.primary-btn,.ghost-btn,.filter-btn,.schedule-export button,.pagination button { border-radius:4px; }
.company-filter { height:40px; border-color:#b8b3af; }.company-filter span { font-size:9px; }.company-filter select { font-size:11px; font-weight:600; }
.primary-btn { height:40px; background:var(--orange); border-color:#a73527; box-shadow:none; font-size:11px; }.primary-btn:hover { background:#a93628; }.ghost-btn { height:40px; background:white; border-color:#b8b3af; font-size:11px; }
.source-strip { background:#e4e4e4; border-color:#cccccc; border-radius:4px; padding:8px; }.source-strip>div { border-radius:3px; background:white; }.source-strip p b { font-size:11px; }.source-strip p small { font-size:9px; }.source-strip em { border-radius:3px; }
.metrics { gap:10px; }.metric,.card,.planning-card,.planning-detail,.settings-section { border-radius:5px; border-color:#d5d0cc; box-shadow:0 1px 3px rgba(22,21,19,.06); }.metric { min-height:118px; padding:16px; }.metric::after { display:none; }.metric-head { font-size:11px; font-weight:600; }.metric-icon { border-radius:3px; }.metric-value { font-size:24px; line-height:1.1; font-weight:650; letter-spacing:0; }.metric-foot { font-size:10px; }
.card-head { min-height:66px; padding:15px 17px 12px; border-bottom:1px solid #e5e5e5; }.card-head h2 { font-size:16px; font-weight:600; letter-spacing:0; }.card-head p { font-size:11px; }
.chart-period,.planning-scale { border-radius:4px; background:#ededed; }.chart-period button,.planning-scale button { border-radius:3px; }.chart-period button.active,.planning-scale button.active { color:var(--orange); background:white; box-shadow:0 1px 3px rgba(0,0,0,.12); }
.bank,.bank-logo,.liquidity { border-radius:4px; }.bank b { font-size:11px; }.bank span,.bank-amount small { font-size:9px; }.bank-amount strong,.liquidity b { font-size:13px; font-weight:650; }
.schedule-actions { align-self:center; }.schedule-export button { height:30px; background:white; border-color:#b8b3af; font-size:9px; }.filter-btn { min-height:30px; font-size:10px; }.filter-btn.active { color:#8f2d22; background:#fbeeed; border-color:#dcaaa3; }
table { font-variant-numeric:tabular-nums lining-nums; } th { background:#e7e7e7; color:#444444; padding:11px 13px; font-size:9px; font-weight:650; letter-spacing:.55px; } td { padding:11px 13px; border-top-color:#e1e1e1; font-size:11px; }
.party b { font-size:11px; font-weight:600; }.party small { font-size:9px; }.party-avatar,.company-badge,.type-badge,.status { border-radius:3px; }.type-badge,.status { font-size:9px; padding:4px 7px; }.company-badge { font-size:9px; }.amount,.metric-value,.bank-amount strong,.liquidity b,.planning-amount,.planning-table td,.report-kpis b,.forecast-kpis b { font-variant-numeric:tabular-nums lining-nums; font-weight:650; }
.date-edit { border-radius:3px; font-size:10px; }.transfer-btn { border-radius:3px; }.table-foot { min-height:54px; background:#f8f7f6; font-size:9px; }.pagination button { height:31px; border-color:#b8b3af; font-size:9px; }
.drawer-backdrop { background:rgba(0,0,0,.42); }.drawer { background:white; box-shadow:-8px 0 25px rgba(0,0,0,.2); }.drawer h2 { font-size:21px; font-weight:600; }.close,.close-mini { border-radius:3px; }.field label { font-size:10px; color:#444444; }.field input,.field select { height:42px; border-color:#b8b8b8; border-radius:4px; font-size:12px; }
.planning-toolbar>div:first-child b { font-size:15px; font-weight:600; }.planning-toolbar>div:first-child span { font-size:10px; }.planning-alerts>div { border-radius:4px; background:white; }.planning-alerts span { font-size:9px; }.planning-alerts b { font-size:14px; }.planning-table th,.planning-table td { height:44px; font-size:9px; }.planning-table thead th { font-size:8px; background:#e2e2e2; }.planning-table th:first-child { background:#f6f6f6; }.planning-detail-head b { font-size:13px; }.planning-detail-head span { font-size:9px; }.planning-detail-list p b { font-size:11px; }.planning-detail-list p small { font-size:9px; }
.forecast-kpis span,.report-kpis span { font-size:9px; }.forecast-kpis b,.report-kpis b { font-size:14px; }.toast { border-radius:4px; background:#3d3d3d; border-left:4px solid var(--orange); font-size:11px; }
.metric-icon,.party-avatar,.avatar { background:#e6e6e6; color:#4a4a4a; }.source-strip em,.inline-company,.template-picker button,.row-actions button { background:#e8e8e8; color:#444!important; }.liquidity,.bank-total,.forecast-form,.template-picker,.settings-section,.planning-detail-columns { background:#eeeeee!important; }.liquidity span { color:#555; }.liquidity b,.bank-total b { color:#333; }.upload-card { background:#f7f7f7; border-color:#bdbdbd; }.upload-card:hover { background:#eeeeee; border-color:#777; }.upload-symbol { background:#dedede; color:#555; }.bank-directory-head,.report-table-head,.planning-detail-list .planning-detail-columns { background:#e4e4e4; color:#555; }.excluded-row { background:#eeeeee; }.table-foot { background:#f4f4f4; }.planning-table .safety-row th,.planning-table .safety-row td { background:#ededed; }

@media (max-width: 1180px) { .topbar { align-items:flex-start; }.top-actions { flex-wrap:wrap; justify-content:flex-end; }.company-filter { order:-1; } }
@media (max-width: 1050px) { .metrics { grid-template-columns: repeat(2,1fr); }.dashboard-grid { grid-template-columns:1fr; }.schedule-card,.smart-plan-card { grid-column:auto; }.smart-assumptions { grid-template-columns:repeat(2,1fr); }.smart-assumptions>span:nth-child(2) { border-right:0; }.planning-alerts { grid-template-columns:repeat(2,1fr); }.planning-detail-list>div { grid-template-columns:70px 1fr 105px; }.planning-detail-list .planning-detail-columns { display:none; }.planning-detail-list input,.planning-detail-list .calc-toggle { grid-column:2/-1; } }
@media (max-width: 900px) { .pilot-company-grid { grid-template-columns:1fr; }.treasury-pilot-head { display:grid; }.pilot-legend { justify-content:flex-start; } }
.pilot-critical-message { display:flex; align-items:center; justify-content:space-between; gap:10px; }.pilot-critical-message>div b,.pilot-critical-message>div span { display:block; }.pilot-critical-message>div span { margin-top:3px; font-weight:500; }.pilot-critical-message button { flex:0 0 auto; min-height:34px; border:1px solid #a4372d; border-radius:3px; padding:6px 10px; background:var(--outgoing); color:white; font-size:8px; font-weight:900; }.pilot-critical-message>small { color:#7b4f15; font-weight:800; }
.internal-transfer-completed { display:grid; gap:3px; color:var(--incoming); }.internal-transfer-completed em { font-style:normal; font-weight:800; }.internal-transfer-completed small { color:#666; font-size:8px; }.internal-transfer-completed button { width:max-content; min-height:26px; margin-top:3px; border:1px solid #8ebbb0; border-radius:3px; padding:4px 8px; background:white; color:var(--incoming); font-size:8px; font-weight:900; }.cancel-approval-btn:disabled { cursor:not-allowed; opacity:.55; }
.approval-actions .execute-payment-btn { border:1px solid #247b61; background:#247b61; color:white; }.approval-actions .execute-payment-btn:hover { background:#19614b; }.approval-actions .execute-payment-btn:disabled { cursor:wait; opacity:.6; }
.approval-head,.approval-row { grid-template-columns:105px minmax(155px,1.4fr) minmax(120px,1fr) 100px 80px 290px; min-width:925px; }.approval-actions.order-ready { grid-template-columns:1fr 1fr; align-items:stretch; }.approval-actions.order-ready .approval-main-action { display:contents!important; }.approval-actions.order-ready .printed-order-action { grid-column:1/-1; width:auto; }.approval-actions.order-ready .execute-payment-btn,.approval-actions.order-ready>.cancel-approval-btn { width:100%; min-height:31px; }.approval-actions.order-ready .execute-payment-btn { grid-column:1; }.approval-actions.order-ready>.cancel-approval-btn { grid-column:2; }
.approval-group-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:8px; padding:10px 12px; border:1px solid #bfcfc8; background:#f1f7f4; }.approval-group-toolbar>div b,.approval-group-toolbar>div span { display:block; }.approval-group-toolbar>div b { color:#1f6b53; font-size:10px; }.approval-group-toolbar>div span { margin-top:3px; color:#666; font-size:8px; }.approval-group-toolbar button { min-width:max-content; }.approval-group-toolbar button:disabled { cursor:not-allowed; opacity:.45; }
.approval-filters { display:grid; grid-template-columns:minmax(110px,.65fr) minmax(180px,1.3fr) minmax(190px,1fr) minmax(125px,.7fr) minmax(150px,.8fr) auto auto; gap:9px; align-items:end; padding:11px 12px; border:1px solid var(--line); background:#f4f4f3; }.approval-filters label,.approval-filter-amount { display:grid; gap:5px; min-width:0; }.approval-filters label>span,.approval-filter-amount>span { color:#555; font-size:7px; font-weight:900; text-transform:uppercase; letter-spacing:.5px; }.approval-filters input,.approval-filters select { width:100%; min-width:0; height:34px; border:1px solid #b8b8b8; border-radius:3px; padding:0 8px; background:white; color:#222; font:inherit; font-size:9px; }.approval-filter-amount { grid-template-columns:1fr 1fr; }.approval-filter-amount>span { grid-column:1/-1; }.approval-filter-clear { height:34px; border:1px solid #aaa; border-radius:3px; padding:0 10px; background:white; color:#444; font-size:8px; font-weight:900; }.approval-filter-clear:disabled { opacity:.4; }.approval-filters>strong { align-self:center; white-space:nowrap; color:#555; font-size:8px; }
.approval-request-cell { display:grid; grid-template-columns:24px 1fr; align-items:center; gap:7px; }.approval-request-cell span b,.approval-request-cell span small { display:block; }.approval-select-check { position:relative; width:20px; height:20px; display:grid; place-items:center; border:1px solid #a9b7b1; border-radius:3px; background:white; cursor:pointer; }.approval-select-check input { position:absolute; opacity:0; pointer-events:none; }.approval-select-check i { color:transparent; font-size:11px; font-style:normal; font-weight:900; }.approval-select-check:has(input:checked) { border-color:#247b61; background:#247b61; }.approval-select-check:has(input:checked) i { color:white; }.approval-select-check:has(input:disabled) { cursor:not-allowed; opacity:.3; }.approval-row.group-selected { background:#edf7f2; box-shadow:inset 3px 0 #247b61; }
@media (max-width:1050px) { .approval-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }.approval-filter-clear { width:100%; }.approval-filters>strong { justify-self:end; } }
@media (max-width:740px) { .approval-group-toolbar { grid-template-columns:1fr 1fr; }.approval-group-toolbar>div { grid-column:1/-1; }.approval-group-toolbar button { width:100%; min-width:0; }.approval-filters { grid-template-columns:1fr; }.approval-filters>strong { justify-self:start; } }
@media (max-width: 740px) { .app-shell{display:block}.sidebar{position:static;height:auto;padding:15px}.brand{padding-bottom:12px}.nav{grid-template-columns:repeat(5,1fr)}.nav button{justify-content:center;padding:9px}.nav button span:last-child,.nav-label,.sidebar-bottom{display:none}.main{padding:19px 14px 35px}.topbar{align-items:flex-start;display:grid}.top-actions{justify-content:flex-start}.company-filter{width:100%;grid-column:1/-1}.title-wrap h1{font-size:22px}.period,.icon-btn{display:none}.source-strip{grid-template-columns:1fr}.source-strip>button{height:30px}.metrics{grid-template-columns:1fr 1fr;gap:8px}.metric{padding:12px}.metric-value{font-size:17px}.dashboard-grid{gap:10px}.legend{display:none}.bars{gap:6px}.schedule-tools,.schedule-export{flex-wrap:wrap}.schedule-actions{justify-items:start}.party-filter-bar{align-items:stretch;display:grid}.party-filter-input{width:100%}.table-foot{grid-template-columns:1fr}.table-foot>span:last-child{text-align:left}.pagination{order:3}.form-grid,.upload-grid,.forecast-form{grid-template-columns:1fr}.field.full{grid-column:auto}.bank-input{grid-template-columns:32px 1fr}.bank-input label{grid-column:1/-1}.import-summary{display:grid}.forecast-kpis{grid-template-columns:1fr}.forecast-row{grid-template-columns:26px 1fr auto}.forecast-row>.calc-toggle{grid-column:2/-1}.planning-toolbar{align-items:flex-start;display:grid}.planning-alerts{grid-template-columns:1fr 1fr}.planning-scale{width:100%}.planning-scale button{flex:1}.planning-detail-list>div{grid-template-columns:64px 1fr}.planning-detail-list>div>span:nth-child(3){grid-column:2;text-align:left}.planning-detail-list input,.planning-detail-list .calc-toggle{grid-column:2} }
@media (max-width: 740px) { .smart-plan-head{display:grid}.smart-head-actions{align-items:flex-start;display:grid}.smart-target-editor{width:100%}.smart-confidence{justify-items:start}.smart-settings-title{align-items:flex-start;display:grid}.smart-settings-actions{align-items:flex-start;display:grid}.smart-assumptions{grid-template-columns:1fr}.smart-assumptions>span{border-right:0}.smart-chart-head{align-items:flex-start;display:grid}.smart-chart-head em{order:-1}.smart-chart-area{padding-left:54px}.smart-balance-line{left:60px}.smart-month-lines{overflow-x:auto}.smart-recommendation{grid-template-columns:1fr} }
@media (max-width: 740px) { .settlement-source{grid-template-columns:36px 1fr}.settlement-source>strong{grid-column:2}.settlement-impact{grid-template-columns:1fr}.settlement-impact>div:last-child{text-align:left}.history-kpis{grid-template-columns:1fr}.history-head{display:none}.history-row{grid-template-columns:72px 1fr}.history-row>strong,.history-row>b{text-align:left}.history-row>strong{grid-column:2}.history-row>b{grid-column:2} }
@media (max-width: 740px) { .settlements-tools{grid-template-columns:1fr}.settlements-kpis{grid-template-columns:1fr}.settlements-table{max-width:calc(100vw - 28px)} }
@media (max-width: 740px) { .approval-kpis{grid-template-columns:1fr}.approval-workflow{align-items:stretch;display:grid}.approval-workflow i{display:none}.approval-table{max-width:calc(100vw - 28px)}.nav-count{position:absolute;margin:0;transform:translate(12px,-12px)} }
@media (max-width: 740px) { .schedule-filter-stack{align-items:stretch;display:grid}.schedule-company-filter{overflow-x:auto}.schedule-company-filter button{flex:1}.schedule-date-filter{display:grid;grid-template-columns:auto 1fr 1fr auto}.schedule-date-filter label{display:grid}.schedule-date-filter input{width:100%}.schedule-advanced-filters{display:grid;grid-template-columns:1fr 1fr}.schedule-amount-range{grid-column:1/-1}.schedule-amount-range input{width:100%}.schedule-advanced-filters select{width:100%;min-width:0}.blocked-supplier-form{grid-template-columns:1fr}.blocked-supplier-list>div{grid-template-columns:70px 1fr}.blocked-status,.blocked-supplier-list button{grid-column:2;justify-self:start} }
@media (max-width: 740px) { .reserve-kpis,.reserve-form{grid-template-columns:1fr}.reserve-form .field.full{grid-column:auto}.reserve-list>div{grid-template-columns:32px 1fr}.reserve-list>div>strong,.reserve-toggle,.reserve-delete{grid-column:2;justify-self:start}.reserve-list>div>strong{text-align:left} }
@media (max-width: 740px) { .account-transfer-form,.account-transfer-impact{grid-template-columns:1fr}.account-transfer-form .field.full{grid-column:auto}.account-transfer-impact>i{transform:rotate(90deg)} }
@media (max-width: 740px) { .bank-directory-head{display:none}.bank-directory-row{grid-template-columns:70px 1fr}.bank-directory-row>span:nth-child(3),.bank-directory-row>span:nth-child(4){display:none}.row-actions{grid-column:1/-1}.compact-form{grid-template-columns:1fr}.compact-form .field.full{grid-column:auto} }
@media (max-width: 740px) { .supplier-bank-list>div{grid-template-columns:30px 1fr}.supplier-bank-row-actions{grid-column:2} }
@media (max-width: 740px) { .transfer-order-meta{grid-template-columns:1fr}.supplier-bank-missing{align-items:stretch;display:grid}.supplier-bank-missing button{width:100%} }
@media (max-width: 740px) { .topbar{margin:-19px -14px 18px;padding:15px 14px}.app-shell{grid-template-columns:1fr}.card-head{min-height:auto}.metric{min-height:105px} }
.history-toolbar { display:flex; align-items:end; gap:10px; }.history-toolbar .history-bank-picker { flex:1; }.history-print-btn { height:42px; border:1px solid #8ba7a1; border-radius:3px; padding:0 14px; background:#fff; color:#175f58; font-size:9px; font-weight:900; white-space:nowrap; }.history-print-btn:hover:not(:disabled) { background:#edf7f4; }.history-print-btn:disabled { opacity:.45; cursor:not-allowed; }
.history-table { overflow:auto; }.history-head,.history-row { grid-template-columns:92px minmax(220px,1.1fr) minmax(220px,1.1fr) minmax(260px,1.35fr) 125px 125px; min-width:1180px; }.history-party,.history-movement { min-width:0; }.history-party em { display:block; margin-bottom:3px; color:#68817b; font-size:7px; font-style:normal; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }.history-party b,.history-party small,.history-movement b,.history-movement small { display:block; }.history-party small,.history-movement small { margin-top:3px; color:var(--muted); font-size:7px; line-height:1.35; overflow-wrap:anywhere; }.history-party.sender { padding-left:8px; border-left:2px solid #6e92bd; }.history-party.receiver { padding-left:8px; border-left:2px solid #55a589; }.history-row.cancelled .history-party b,.history-row.cancelled .history-movement b,.history-row.cancelled>strong { text-decoration:line-through; }
.print-bank-history { display:none; background:white; color:#172727; font-family:Arial,sans-serif; }.print-bank-history header { display:flex; justify-content:space-between; padding-bottom:10px; border-bottom:2px solid #172727; }.print-bank-history header strong,.print-bank-history header span { display:block; }.print-bank-history header strong { font-size:17px; }.print-bank-history header span { margin-top:4px; font-size:10px; }.print-bank-history h1 { margin:15px 0 3px; font-size:18px; }.print-bank-history>p { margin:0 0 12px; color:#555; font-size:8px; }.print-bank-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin-bottom:12px; }.print-bank-kpis>div { padding:8px; border:1px solid #aaa; font-size:8px; }.print-bank-kpis b { display:block; margin-top:4px; font-size:10px; }.print-bank-history table { width:100%; border-collapse:collapse; }.print-bank-history th,.print-bank-history td { padding:5px; border:1px solid #aaa; font-size:6.5px; vertical-align:top; text-align:left; }.print-bank-history th { background:#eee; font-weight:900; text-transform:uppercase; }.print-bank-history td b,.print-bank-history td small { display:block; }.print-bank-history td small { margin-top:2px; color:#555; line-height:1.3; }.print-bank-history th:nth-last-child(-n+2),.print-bank-history td:nth-last-child(-n+2) { text-align:right; }.print-bank-history tr.cancelled { color:#888; background:#f1efed; text-decoration:line-through; }.print-bank-history footer { margin-top:12px; padding-top:7px; border-top:1px solid #aaa; color:#555; font-size:7px; }
@media (max-width:740px) { .history-toolbar { align-items:stretch; flex-direction:column; }.history-print-btn { width:100%; }.history-head,.history-row { grid-template-columns:76px minmax(160px,1fr) minmax(160px,1fr) minmax(180px,1.15fr) 100px 100px; }.history-row>strong,.history-row>b { grid-column:auto; text-align:right; } }
.history-date-range { display:flex; align-items:end; gap:7px; flex-wrap:wrap; }.history-date-range label { display:grid; gap:4px; }.history-date-range label>span { color:var(--muted); font-size:7px; font-weight:900; text-transform:uppercase; }.history-date-range input { width:126px; height:42px; border:1px solid #b8b8b8; border-radius:3px; background:#fff; padding:0 8px; color:#283534; font:inherit; font-size:9px; }.history-date-range button { height:42px; border:1px solid #c4c4c4; border-radius:3px; padding:0 10px; background:#f7f7f6; color:#555; font-size:8px; font-weight:800; }.history-toolbar { flex-wrap:wrap; }.history-toolbar .history-date-range { margin-left:auto; }
.account-transfer-history { display:grid; gap:10px; margin-top:4px; padding-top:14px; border-top:1px solid var(--line); }.history-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }.history-section-head b,.history-section-head span { display:block; }.history-section-head b { font-size:11px; }.history-section-head span { margin-top:3px; color:var(--muted); font-size:8px; }.account-transfer-history-table { border:1px solid var(--line); overflow:auto; }.account-transfer-history-head,.account-transfer-history-table article { display:grid; grid-template-columns:80px minmax(145px,1fr) minmax(145px,1fr) minmax(170px,1.2fr) 100px; gap:9px; align-items:center; min-width:780px; padding:9px 10px; }.account-transfer-history-head { background:#e7e7e5; color:#555; font-size:7px; font-weight:900; text-transform:uppercase; }.account-transfer-history-table article { border-top:1px solid var(--line); font-size:8px; }.account-transfer-history-table article span b,.account-transfer-history-table article span small { display:block; }.account-transfer-history-table article span small { margin-top:3px; color:var(--muted); font-size:7px; line-height:1.35; }.account-transfer-history-table article>strong { text-align:right; color:var(--incoming); }
.print-history-state { display:none; background:#fff; color:#172727; font-family:Arial,sans-serif; }.print-history-state header { display:flex; justify-content:space-between; padding-bottom:10px; border-bottom:2px solid #172727; }.print-history-state header strong,.print-history-state header span { display:block; }.print-history-state header strong { font-size:17px; }.print-history-state header span { margin-top:4px; font-size:10px; }.print-history-state h1 { margin:15px 0 3px; font-size:18px; }.print-history-state>p { margin:0 0 12px; color:#555; font-size:8px; }.print-history-state table { width:100%; border-collapse:collapse; }.print-history-state th,.print-history-state td { padding:5px; border:1px solid #aaa; font-size:6.5px; vertical-align:top; text-align:left; }.print-history-state th { background:#eee; font-weight:900; text-transform:uppercase; }.print-history-state td b,.print-history-state td small { display:block; }.print-history-state td small { margin-top:2px; color:#555; }.print-history-state th:last-child,.print-history-state td:last-child { text-align:right; }.print-history-state footer { margin-top:12px; padding-top:7px; border-top:1px solid #aaa; color:#555; font-size:7px; }
@media (max-width:740px) { .history-date-range { display:grid; grid-template-columns:1fr 1fr; }.history-date-range input { width:100%; }.history-date-range button { grid-column:1/-1; }.history-section-head { align-items:stretch; flex-direction:column; } }
@media print { body * { visibility:hidden!important; } .print-order,.print-order *,.print-report,.print-report *,.print-schedule,.print-schedule *,.print-approvals,.print-approvals *,.print-intelligent,.print-intelligent *,.print-smart-report,.print-smart-report *,.print-bank-history,.print-bank-history *,.print-history-state,.print-history-state * { visibility:visible!important; } .print-order,.print-report,.print-schedule,.print-approvals,.print-intelligent,.print-smart-report,.print-bank-history,.print-history-state { display:block; position:fixed; inset:0; padding:15mm; overflow:visible; } @page { size:A4 landscape; margin:7mm; } }
@media print { .print-schedule,.print-intelligent{page:treasury-plan;padding:7mm}.print-smart-report{page:smart-report;padding:7mm} }
@page treasury-plan { size:A4 landscape; margin:7mm; }
@page smart-report { size:A4 landscape; margin:7mm; }
@media print {
  body:has(.print-smart-report) { margin:0!important; background:#fff!important; }
  body:has(.print-smart-report) .app-shell { display:block!important; min-height:0!important; }
  body:has(.print-smart-report) .app-shell>.sidebar { display:none!important; }
  body:has(.print-smart-report) .main { width:100%!important; min-height:0!important; margin:0!important; padding:0!important; }
  body:has(.print-smart-report) .main>:not(.dashboard-grid) { display:none!important; }
  body:has(.print-smart-report) .dashboard-grid { display:block!important; margin:0!important; padding:0!important; }
  body:has(.print-smart-report) .dashboard-grid>:not(.smart-plan-card) { display:none!important; }
  body:has(.print-smart-report) .smart-plan-card { display:block!important; overflow:visible!important; margin:0!important; border:0!important; box-shadow:none!important; }
  body:has(.print-smart-report) .smart-plan-card>:not(.print-smart-report) { display:none!important; }
  body:has(.print-smart-report) .print-smart-report { position:static!important; inset:auto!important; width:100%!important; margin:0!important; padding:0!important; overflow:visible!important; }
  body:has(.print-smart-report) .print-smart-report table { width:100%!important; min-width:0!important; max-width:100%!important; table-layout:fixed!important; border-collapse:collapse!important; }
  body:has(.print-smart-report) .print-smart-report thead { display:table-header-group!important; }
  body:has(.print-smart-report) .print-smart-report th,
  body:has(.print-smart-report) .print-smart-report td { min-width:0!important; height:auto!important; padding:2.2mm 1.8mm!important; overflow:visible!important; white-space:normal!important; overflow-wrap:anywhere!important; word-break:normal!important; vertical-align:top!important; }
  body:has(.print-smart-report) .print-smart-report th { font-size:6.5pt!important; line-height:1.15!important; }
  body:has(.print-smart-report) .print-smart-report td { font-size:6.7pt!important; line-height:1.25!important; }
  body:has(.print-smart-report) .print-smart-report tr { break-inside:avoid!important; page-break-inside:avoid!important; }
  body:has(.print-smart-report) .smart-report-monthly th:nth-child(1) { width:13%; }
  body:has(.print-smart-report) .smart-report-monthly th:nth-child(2) { width:14%; }
  body:has(.print-smart-report) .smart-report-monthly th:nth-child(3) { width:14%; }
  body:has(.print-smart-report) .smart-report-monthly th:nth-child(4) { width:19%; }
  body:has(.print-smart-report) .smart-report-monthly th:nth-child(5) { width:12%; }
  body:has(.print-smart-report) .smart-report-monthly th:nth-child(6) { width:15%; }
  body:has(.print-smart-report) .smart-report-monthly th:nth-child(7) { width:13%; }
  body:has(.print-smart-report) .smart-report-deficit { display:grid!important; gap:1.2mm; margin:3mm 0!important; padding:2.5mm 3mm!important; border:1px solid #d3a24e!important; border-left:3px solid #c27b12!important; background:#fff4d6!important; color:#704b08!important; font-size:7.5pt!important; break-inside:avoid!important; }
  body:has(.print-smart-report) .smart-report-deficit b { font-size:8.5pt!important; }
  body:has(.print-smart-report) .smart-ai-analysis { margin:2.5mm 0 3mm!important; padding:2.5mm 3mm!important; border:1px solid #86aa9b!important; border-left:3px solid #247351!important; background:#f0f8f4!important; break-inside:avoid!important; page-break-inside:avoid!important; }
  body:has(.print-smart-report) .smart-ai-analysis h2 { margin:0 0 1.5mm!important; font-size:9pt!important; }
  body:has(.print-smart-report) .smart-ai-analysis p { margin:.8mm 0!important; font-size:6.8pt!important; line-height:1.3!important; }
  body:has(.print-smart-report) .smart-ai-analysis> b { font-size:7pt!important; }
  body:has(.print-smart-report) .smart-ai-analysis ol { margin:1mm 0 0 4mm!important; columns:2!important; column-gap:6mm!important; }
  body:has(.print-smart-report) .smart-ai-analysis li { margin:0 0 .7mm!important; font-size:6.5pt!important; line-height:1.25!important; break-inside:avoid!important; }
  body:has(.print-smart-report) .print-smart-report>h2,
  body:has(.print-smart-report) .smart-ai-analysis h2 { padding:1.2mm 1.8mm!important; border:1px solid #afc4d5!important; background:#d9e5f3!important; color:#123c56!important; font-size:8pt!important; }
  body:has(.print-smart-report) .smart-report-fiscal { margin:2mm 0 2.5mm!important; break-inside:avoid!important; page-break-inside:avoid!important; }
  body:has(.print-smart-report) .smart-report-fiscal p { margin:1mm 0 0!important; padding:1.2mm 1.8mm!important; border-left:3px solid #08789a!important; background:#eef5fa!important; font-size:6.5pt!important; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(1) { width:8%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(2) { width:16%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(3) { width:9%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(4) { width:10%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(5) { width:10%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(6) { width:16%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(7) { width:9%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(8) { width:9%; }
  body:has(.print-smart-report) .smart-report-suppliers th:nth-child(9) { width:13%; }
}

/* Mode intégré : le shell Moventra ERP parent reste l’unique navigation principale. */
.app-shell.is-embedded{display:block;min-height:100vh}
.app-shell.is-embedded>.sidebar{display:none}
.app-shell.is-embedded>.main{width:100%;min-height:100vh;margin:0;padding-left:24px;padding-right:24px}
.app-shell.is-embedded .drawer-backdrop{justify-content:stretch}
.app-shell.is-embedded .drawer,.app-shell.is-embedded .drawer.drawer-wide,.app-shell.is-embedded .drawer.drawer-full{width:100%;max-width:none}

/* Trésorerie — actions humaines et hiérarchie commune à Moventra ERP */
@media screen{
  .primary-btn,.ghost-btn,.danger-btn,.settings-top-exit,.history-print-btn,.add-split-line,.close-edit-flow-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 13px;border-radius:7px;font-size:10px;font-weight:800;line-height:1.25;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,transform .12s ease}
  .primary-btn{box-shadow:0 2px 5px rgba(165,58,46,.18)}.primary-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 12px rgba(165,58,46,.2)}.ghost-btn:hover:not(:disabled){border-color:#668f9e;background:#eef6f8}.danger-btn:hover:not(:disabled),.settings-top-exit:hover:not(:disabled){background:#fff0ed}
  button:disabled{opacity:.52;cursor:not-allowed!important}.topbar h1{font-weight:680;line-height:1.2}.topbar p{line-height:1.45}
  .card,.planning-card,.treasury-pilot,.forecast-form,.bank-directory,.report-table{border-radius:8px;box-shadow:0 2px 8px rgba(27,55,50,.06)}
  .field label{color:#506b67;font-size:9px;letter-spacing:.055em}.field input,.field select,.field textarea{min-height:40px;border-radius:6px;font-size:11px;transition:border-color .16s ease,box-shadow .16s ease}.field textarea{padding:9px;line-height:1.5;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#08789a;outline:0;box-shadow:0 0 0 3px rgba(8,120,154,.16)}
  .drawer{box-shadow:-20px 0 60px rgba(15,43,48,.2)}.drawer-head h2{font-weight:700}.drawer-head p{line-height:1.5}.drawer-exit{width:auto;min-width:118px;padding:0 12px}
  .forecast-row:hover,.settlements-row:hover,.approval-row:hover{background:#f1f7f5}.toast{min-height:46px;border-radius:8px;line-height:1.4}
}


.treasury-back { padding: 0 8px 16px; }
.treasury-back button,.treasury-back a { display:flex; align-items:center; width: 100%; min-height: 34px; text-decoration:none; border: 1px solid #687873; border-radius: 4px; background: #f4f6f5; color: #263b37; font-size: 11px; font-weight: 750; }
.treasury-back button:hover,.treasury-back a:hover { background: #ffffff; border-color: #c74634; color: #a73628; }

/* Menu Trésorerie harmonisé avec la navigation principale Moventra ERP */
@media (min-width: 741px) {
  html { border-top: 0; }
  body, button, input, select { font-family: Arial, "Segoe UI", Tahoma, sans-serif; }
  .app-shell { grid-template-columns: 232px minmax(0, 1fr); }
  .sidebar {
    width: 232px;
    padding: 0;
    overflow: hidden;
    background: linear-gradient(90deg, #f5f8fa, #e8eef2);
    color: #17364a;
    border-right: 1px solid #9eafb9;
    box-shadow: 2px 0 7px rgba(37, 61, 76, .12);
  }
  .brand {
    height: 58px;
    flex: 0 0 58px;
    margin: 0;
    padding: 0 15px;
    gap: 10px;
    border: 0;
    border-bottom: 1px solid #003e5d;
    background: linear-gradient(#08739c, #00577d);
    color: #fff;
    text-shadow: 0 1px rgba(0, 0, 0, .2);
  }
  .brand-mark {
    width: 28px;
    height: 28px;
    border-radius: 3px;
    background: #fff;
    color: #c74634;
    box-shadow: inset 0 0 0 1px #ccd8df;
    font-size: 12px;
    letter-spacing: 0;
  }
  .brand strong { color: #fff; font-size: 17px; font-weight: 700; letter-spacing: 0; }
  .brand small { margin-top: 1px; color: #d8edf5; font-size: 8px; letter-spacing: .7px; }
  .treasury-back { margin: 10px 8px 5px; }
  .treasury-back button,.treasury-back a {
    width: 100%;
    min-height: 48px;
    padding: 8px 10px;
    border: 1px solid #aebdc6;
    border-radius: 2px;
    background: #fff;
    color: #17364a;
    box-shadow: inset 0 1px #fff;
    text-align: left;
    font-size: 11px;
    font-weight: 700;
  }
  .treasury-back button:hover,.treasury-back a:hover { background: #f4f8fa; border-color: #7895a5; color: #003b5c; }
  .nav-label {
    margin: 0 6px;
    padding: 10px 7px 4px;
    border-bottom: 1px solid #cbd5db;
    color: #6b7e8a;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .8px;
  }
  nav.nav { display: grid; gap: 0; padding: 3px 6px; }
  .nav button {
    position: relative;
    min-height: 32px;
    margin: 0;
    padding: 6px 8px;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: 2px;
    background: transparent;
    color: #27485c;
    font-size: 12px;
    font-weight: 500;
  }
  .nav button:hover { background: #d8e7ef; color: #003b5c; }
  .nav button.active {
    border: 1px solid #00587b;
    background: linear-gradient(#2087ac, #00678e);
    color: #fff;
    box-shadow: inset 0 1px rgba(255, 255, 255, .3), inset 3px 0 #c74634;
    font-weight: 600;
  }
  .nav-icon {
    width: 19px;
    height: 19px;
    border: 0;
    border-radius: 2px;
    background: transparent;
    color: #37748f;
    font-size: 11px;
  }
  .nav button.active .nav-icon { border: 0; background: transparent; color: #fff; }
  .nav-count { border-radius: 2px; background: #3c4945; color: #fff; }
  .sidebar-bottom { margin-top: auto; }
  .sync-card {
    margin: 8px;
    padding: 10px;
    border: 1px solid #b7c5cd;
    border-radius: 2px;
    background: #fff;
    color: #617582;
    box-shadow: none;
    font-size: 9px;
  }
  .sync-card b { color: #29495c; font-size: 10px; }
  .profile {
    min-height: 54px;
    margin: 0;
    padding: 9px 14px;
    border-top: 1px solid #b7c5cd;
    background: #dfe8ed;
    color: #17364a;
  }
  .avatar { background: #fff; color: #17364a; border: 1px solid #b7c5cd; }
  .profile b { color: #17364a; font-size: 11px; }
  .profile span { color: #617582; font-size: 9px; }
}
.approval-actions .cancel-approval-btn:not(:disabled) { border-color:#c74634; background:#fff; color:#a4382b; }
.approval-actions .cancel-approval-btn:not(:disabled):hover { background:#fbe9e6; }
.internal-transfer-cancelled { color:#a4382b; }
.internal-transfer-cancelled small { color:#8a6c67; }
/* Alimentation ponctuelle et traçable d’un compte bancaire */
.pilot-critical-message .fund-account-btn { border-color:#005f73; background:#087f8c; color:#fff; box-shadow:0 1px 2px rgba(0,0,0,.12); }
.pilot-critical-message .fund-account-btn:hover { background:#006b76; }
.pilot-critical-message .fund-account-btn:disabled { opacity:.45; cursor:not-allowed; }
.account-funding-form { display:grid; gap:14px; }
.funding-company-summary { display:flex; align-items:center; gap:10px; padding:12px 14px; border:1px solid #c8d4d1; background:#f4f8f7; }
.funding-company-summary .company-dot { width:10px; height:10px; border-radius:50%; }
.funding-company-summary div { display:grid; gap:3px; }
.funding-company-summary b { font-size:13px; }
.funding-company-summary small { color:var(--muted); font-size:9px; }
.funding-guidance { display:grid; gap:4px; padding:10px 12px; border-left:3px solid #087f8c; background:#edf7f5; }
.funding-guidance b { font-size:10px; }
.funding-guidance span { color:var(--muted); font-size:9px; line-height:1.45; }
.funding-impact { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; gap:10px; padding:12px; border:1px solid #bcd1cc; background:#f8fbfa; }
.funding-impact div { display:grid; gap:4px; }
.funding-impact div:last-child { text-align:right; }
.funding-impact span { color:var(--muted); font-size:8px; font-weight:700; text-transform:uppercase; }
.funding-impact b { font-size:14px; }
.funding-impact i { color:#087f8c; font-size:18px; font-style:normal; font-weight:900; }
@media (max-width:760px) { .pilot-critical-message { align-items:stretch; flex-direction:column; } .pilot-critical-message button { width:100%; } .funding-impact { grid-template-columns:1fr; } .funding-impact i { transform:rotate(90deg); text-align:center; } .funding-impact div:last-child { text-align:left; } }
.legacy-funding-section { margin-top:14px; border:1px solid #b9cbc7; background:#f8fbfa; }
.legacy-funding-section>header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 13px; border-bottom:1px solid #cbd8d5; background:#edf6f4; }
.legacy-funding-section>header div { display:grid; gap:3px; }
.legacy-funding-section>header b { font-size:10px; color:#174b43; }
.legacy-funding-section>header span { color:var(--muted); font-size:8px; }
.legacy-funding-section>header em { padding:4px 7px; border-radius:3px; background:#dceee9; color:#176654; font-size:8px; font-style:normal; font-weight:800; }
.legacy-funding-row>span:nth-child(3) small { display:block; max-width:300px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.legacy-funding-hidden { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; padding:10px 12px; border-left:3px solid #d39418; background:#fff7e2; color:#76540f; font-size:9px; font-weight:700; }
.legacy-funding-hidden button { min-height:30px; border:1px solid #9d7a2a; border-radius:3px; padding:5px 9px; background:#fff; color:#654b12; font-size:8px; font-weight:800; }
.legacy-funding-source-picker { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:10px 13px; border-bottom:1px solid #cbd8d5; background:#fff; }
.legacy-funding-source-picker label { display:grid; gap:4px; }
.legacy-funding-source-picker label>span { color:#536a66; font-size:8px; font-weight:800; text-transform:uppercase; }
.legacy-funding-source-picker select { min-height:36px; border:1px solid #aebfbb; border-radius:3px; padding:6px 9px; background:#fff; color:#17332f; font-size:9px; }
.legacy-funding-source-picker>small { grid-column:1/-1; color:var(--muted); font-size:8px; }
@media (max-width:760px) { .legacy-funding-source-picker { grid-template-columns:1fr; } .legacy-funding-source-picker>small { grid-column:1; } }
.legacy-funding-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.legacy-funding-actions .execute-payment-btn { min-width:92px; }
.legacy-funding-actions .cancel-legacy-funding-btn { min-height:30px; border:1px solid #b43b31; border-radius:3px; padding:5px 10px; background:#fff; color:#a43128; font-size:8px; font-weight:900; }
.legacy-funding-actions .cancel-legacy-funding-btn:hover { background:#fff0ee; }

/* Consultation et modification des lignes avant validation hiérarchique */
.editable-flow-row { cursor:pointer; transition:background .15s ease,box-shadow .15s ease; }
.editable-flow-row:hover,.editable-flow-row:focus-visible { background:#f1f7f5; box-shadow:inset 3px 0 #2b8674; outline:none; }
.locked-flow-row { cursor:not-allowed; }
.edit-flow-btn { min-height:30px; border:1px solid #7fa79e; border-radius:3px; padding:5px 10px; background:#fff; color:#22695b; font-size:8px; font-weight:900; white-space:nowrap; }
.edit-flow-btn:hover { background:#eaf5f2; border-color:#2b8674; }
.edit-flow-summary { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:10px; padding:11px 12px; border:1px solid #bfd0cc; background:#f3f8f7; }
.edit-flow-summary div { display:grid; gap:3px; }
.edit-flow-summary b { color:#183e37; font-size:12px; }
.edit-flow-summary small { color:var(--muted); font-size:9px; }
.edit-flow-summary em { border-radius:3px; padding:5px 8px; background:#dceee9; color:#176654; font-size:8px; font-style:normal; font-weight:800; }
.edit-flow-form textarea { min-height:78px; resize:vertical; }
.edit-flow-lock { display:grid; gap:4px; border-left:3px solid #d39418; padding:10px 12px; background:#fff7e2; color:#654b12; }
.edit-flow-lock b { font-size:10px; }
.edit-flow-lock span { font-size:9px; line-height:1.45; }
@media (max-width:760px) { .edit-flow-summary { grid-template-columns:auto 1fr; } .edit-flow-summary em { grid-column:1/-1; } }
.delete-flow-btn { min-height:30px; border:1px solid #c74634; border-radius:3px; padding:5px 10px; background:#fff; color:#a4382b; font-size:8px; font-weight:900; white-space:nowrap; }
.delete-flow-btn:hover:not(:disabled) { background:#fbe9e6; }
.delete-flow-btn:disabled { opacity:.45; cursor:not-allowed; }

/* Expéditeur et récepteur du virement dans la validation hiérarchique */
.approval-head,.approval-row { grid-template-columns:105px minmax(290px,2fr) minmax(105px,.8fr) 100px 80px 290px; min-width:1060px; }
.approval-transfer-parties { display:grid; grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr); align-items:stretch; gap:7px; min-width:0; }
.transfer-party { display:grid; align-content:center; gap:3px; min-width:0; padding:7px 8px; border:1px solid #c7d2cf; border-radius:3px; background:#f8faf9; }
.transfer-party.sender { border-left:3px solid #4f79ad; }
.transfer-party.receiver { border-left:3px solid #2d8a65; background:#f2f8f5; }
.transfer-party em { color:#65756f; font-size:6px; font-style:normal; font-weight:900; letter-spacing:.55px; text-transform:uppercase; }
.transfer-party b { overflow:hidden; color:#203c37; font-size:8px; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.transfer-party small { overflow:hidden; margin:0!important; color:#64736f!important; font-size:6.5px!important; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.transfer-direction { display:grid!important; place-items:center; color:#2d7561; font-size:16px; font-weight:900; }
@media (max-width:740px) { .approval-transfer-parties { grid-template-columns:1fr; } .transfer-direction { transform:rotate(90deg); min-height:15px; } }

.edit-flow-btn:disabled,.delete-flow-btn:disabled { border-color:#c8cecc; background:#ecefee; color:#929b98; box-shadow:none; cursor:not-allowed; opacity:.72; }

.transfer-drawer-actions { flex-wrap:wrap; }
.save-order-draft-btn { min-height:38px; border:1px solid #5f8f85; border-radius:3px; padding:7px 13px; background:#edf6f3; color:#246a5c; font-size:9px; font-weight:900; }
.save-order-draft-btn:hover:not(:disabled) { background:#dfeee9; border-color:#2d7c6c; }
.save-order-draft-btn:disabled { cursor:not-allowed; opacity:.5; }

/* Cohérence Expéditeur → Récepteur dans le plan des règlements */
.schedule-transfer-parties { display:grid; grid-template-columns:minmax(105px,1fr) 18px minmax(120px,1.15fr); align-items:stretch; gap:5px; min-width:270px; }
.schedule-transfer-parties>span { display:grid; place-items:center; color:#28735f; font-size:13px; font-weight:900; }
.schedule-transfer-party { display:grid; align-content:center; gap:2px; min-width:0; padding:5px 7px; border:1px solid #c8d3d0; border-radius:3px; background:#f8faf9; }
.schedule-transfer-party.sender { border-left:3px solid #4f79ad; }
.schedule-transfer-party.receiver { border-left:3px solid #2d8a65; background:#f2f8f5; }
.schedule-transfer-party em { color:#687873; font-size:6px; font-style:normal; font-weight:900; letter-spacing:.45px; text-transform:uppercase; }
.schedule-transfer-party b { overflow:hidden; color:#203d37; font-size:8px; line-height:1.25; text-overflow:ellipsis; white-space:nowrap; }
.schedule-transfer-party small { overflow:hidden; color:#64736f; font-size:6.5px; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.schedule-transfer-party .blocked-supplier-badge { display:block; width:max-content; margin:3px 0 0; font-style:normal; }
@media(max-width:740px){.schedule-transfer-parties{grid-template-columns:1fr;min-width:210px}.schedule-transfer-parties>span{transform:rotate(90deg);min-height:12px}}

/* Modèles enregistrés du Plan des règlements */

/* Double plan de trésorerie et allocation intelligente fournisseurs */
.treasury-plan-selector{position:sticky;top:0;z-index:8;grid-column:1/-1;align-self:start;display:grid;grid-template-columns:240px 1fr 1fr;align-items:stretch;gap:0;margin:16px 0;border:1px solid #9fb2bf;background:#fff;box-shadow:0 4px 12px rgba(24,61,82,.12)}
.treasury-plan-selector>div{display:grid;align-content:center;padding:10px 14px;border-right:1px solid #b9c8d1;background:#d9e5f3}
.treasury-plan-selector .plan-overview-return{justify-self:start;margin:0 0 5px;padding:0;border:0;background:transparent;color:#19536f;font-size:8px;font-weight:900;text-decoration:underline;text-underline-offset:2px}
.treasury-plan-selector>div span,.real-plan-label{color:#346078;font-size:8px;font-weight:900;letter-spacing:.09em}
.treasury-plan-selector>div b{color:#153e56;font-size:15px}
.treasury-plan-selector>button{display:flex;align-items:center;gap:10px;min-height:54px;padding:8px 14px;border:0;border-right:1px solid #c8d3da;background:#fff;color:#274b60;text-align:left;cursor:pointer}
.treasury-plan-selector>button:hover,.treasury-plan-selector>button.active{background:#edf5fb;box-shadow:inset 0 -3px #0877a0}.treasury-plan-selector>button.active{color:#0b5878}.treasury-plan-selector>button:focus-visible{position:relative;z-index:1;outline:3px solid rgba(8,119,160,.24);outline-offset:-3px}
.treasury-plan-selector>button>em{display:grid;place-items:center;width:28px;height:28px;border:1px solid #7f9caf;background:#f7fafc;color:#08638c;font-size:9px;font-style:normal;font-weight:900}
.treasury-plan-selector>button>span{display:grid;gap:2px}
.treasury-plan-selector>button b{font-size:11px}.treasury-plan-selector>button small{color:#6b7e89;font-size:8px}
.dashboard-grid.treasury-plan-page{grid-template-columns:minmax(0,1fr)}
.real-plan-label{display:block;margin-bottom:3px}
.smart-supplier-plan{margin-top:14px;border:1px solid #aebfca;background:#fff}
.smart-supplier-plan>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 14px;border-bottom:1px solid #aebfca;background:#d9e5f3}
.smart-supplier-plan>header div{display:grid;gap:2px}.smart-supplier-plan>header span{color:#28607d;font-size:7px;font-weight:900;letter-spacing:.09em}.smart-supplier-plan>header h3{margin:0;color:#153e55;font-size:13px}.smart-supplier-plan>header p{max-width:820px;margin:0;color:#607784;font-size:8px;line-height:1.4}
.smart-supplier-plan>header button{min-height:34px;padding:0 14px;border:1px solid #176849;border-radius:0;background:#237b58;color:#fff;font-size:9px;font-weight:900;white-space:nowrap;cursor:pointer}.smart-supplier-plan>header button:disabled{opacity:.5;cursor:not-allowed}
.smart-supplier-header-actions{display:flex!important;align-items:center;gap:8px}.smart-supplier-plan>header .policy-toggle{border-color:#7996a6;background:#fff;color:#234f66}.smart-supplier-plan>header .policy-toggle:hover{background:#edf5f8}
.supplier-policy-panel{border-bottom:1px solid #9eafba;background:#f7fafc}.supplier-policy-panel>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 12px;border-bottom:1px solid #bdcbd3;background:#edf3f7}.supplier-policy-panel>header div{display:grid;gap:2px}.supplier-policy-panel>header b{color:#173e55;font-size:11px}.supplier-policy-panel>header span{color:#617985;font-size:8px}.supplier-policy-panel>header strong{color:#28607d;font-size:8px;text-transform:uppercase}
.supplier-policy-table{max-height:330px;overflow:auto;scrollbar-gutter:stable}.supplier-policy-table>.head,.supplier-policy-table>form{display:grid;grid-template-columns:minmax(190px,1.35fr) 80px 105px 110px 135px minmax(180px,1fr);align-items:center;min-width:900px}.supplier-policy-table>.head{position:sticky;top:0;z-index:2;min-height:28px;border-bottom:1px solid #9eafba;background:#dce8f3;color:#294e63;font-size:7px;font-weight:900;text-transform:uppercase}.supplier-policy-table>.head span,.supplier-policy-table>form>*{padding:4px 7px;border-right:1px solid #d1dbe1}.supplier-policy-table>form{min-height:46px;border-bottom:1px solid #d5dee3;background:#fff}.supplier-policy-table>form:nth-child(odd){background:#f8fafb}.supplier-policy-table>form.configured{box-shadow:inset 3px 0 #237b58}.supplier-policy-table>form.free{box-shadow:inset 3px 0 #b9c6cc}.supplier-policy-table>form>span:first-child{display:grid;gap:2px;min-width:0}.supplier-policy-table>form b{overflow:hidden;color:#173e55;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.supplier-policy-table>form small{color:#71838d;font-size:7px}.supplier-policy-table label{display:grid;gap:2px;color:#687d88;font-size:6px;font-weight:900;text-transform:uppercase}.supplier-policy-table input,.supplier-policy-table select{width:100%;min-width:0;height:28px;padding:3px 5px;border:1px solid #aebdc5;border-radius:0;background:#fff;color:#173e55;font-size:8px}.policy-row-actions{display:flex!important;align-items:center;gap:5px}.policy-row-actions button{min-height:28px;padding:4px 8px;border:1px solid #176849;border-radius:0;background:#237b58;color:#fff;font-size:7px;font-weight:900}.policy-row-actions .free-policy{border-color:#aebdc5;background:#fff;color:#496773}
.smart-supplier-kpis{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #bccad3}
.smart-supplier-kpis>span{display:grid;gap:2px;min-height:49px;padding:7px 10px;border-right:1px solid #d0d9df}.smart-supplier-kpis>span:last-child{border-right:0}.smart-supplier-kpis small{color:#657a86;font-size:6.5px;font-weight:900;text-transform:uppercase}.smart-supplier-kpis b{color:#173e55;font-size:13px}.smart-supplier-kpis .attention{background:#fff3ec}.smart-supplier-kpis .attention b{color:#a43c24}
.smart-blocked-note{margin:0;padding:7px 12px;border-bottom:1px solid #e1c8c0;background:#fff5f2;color:#943a28;font-size:8px;font-weight:800}
.smart-supplier-table{overflow-x:auto}.smart-supplier-table>.head,.smart-supplier-table>.row{display:grid;grid-template-columns:85px minmax(180px,1.1fr) 105px 110px minmax(220px,1.4fr) 110px 105px minmax(160px,1fr);align-items:center;min-width:1120px}
.smart-supplier-table>.head{min-height:29px;border-bottom:1px solid #9eafba;background:#cbdbea;color:#294e63;font-size:7px;font-weight:900;text-transform:uppercase}
.smart-supplier-table>.head span,.smart-supplier-table>.row>*{padding:3px 6px;border-right:1px solid #d1dbe1}.smart-supplier-table>.row{min-height:42px;border-bottom:1px solid #d1dbe1;background:#fff;font-size:8px}.smart-supplier-table>.row:nth-child(odd){background:#f7f9fb}.smart-supplier-table>.row>span{display:grid;gap:1px;min-width:0}.smart-supplier-table>.row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.smart-supplier-table>.row small{color:#6a7e89;font-size:6.5px;line-height:1.25}.smart-supplier-table>.row strong{font-size:8px;font-variant-numeric:tabular-nums}
.smart-supplier-table em[class^=priority-]{justify-self:start;padding:3px 5px;border:1px solid #c6d0d6;background:#edf2f4;color:#46606e;font-size:7px;font-style:normal;font-weight:900;text-transform:uppercase}.smart-supplier-table .priority-critique{border-color:#d2958c!important;background:#fee7e3!important;color:#a42318!important}.smart-supplier-table .priority-haute{border-color:#e3b47b!important;background:#fff0dc!important;color:#99540c!important}
.installment-chips{display:flex!important;flex-flow:row wrap;gap:3px!important}.installment-chips i{display:grid;min-width:68px;padding:3px 5px;border:1px solid #a9c0cc;background:#eef6f9;color:#305a70;font-size:7px;font-style:normal}.installment-chips i b{color:#075d84;font-size:7px}
.smart-supplier-plan>footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 12px;background:#f3f6f8;color:#607582;font-size:8px}.smart-supplier-plan>footer b{color:#154e68;white-space:nowrap}
.smart-decision-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:9px 12px;border-bottom:1px solid #c7b16f;background:#fff8df;box-shadow:inset 4px 0 #d69a21;color:#4f421a}
.smart-decision-bar>div:first-child{display:grid;gap:2px}.smart-decision-bar b{font-size:9px}.smart-decision-bar span{color:#766a43;font-size:7.5px}.smart-decision-bar>div:last-child{display:flex;align-items:center;gap:6px}
.smart-decision-bar button{min-height:29px;padding:0 9px;border:1px solid #8ca0aa;border-radius:0;background:#fff;color:#294d61;font-size:7.5px;font-weight:900;cursor:pointer}.smart-decision-bar button.save{border-color:#176849;background:#237b58;color:#fff}.smart-decision-bar button.cancel{border-color:#b44a3e;color:#9d3026}
@media(max-width:1050px){.treasury-plan-selector{grid-template-columns:1fr 1fr}.treasury-plan-selector>div{grid-column:1/-1}.smart-supplier-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.treasury-plan-selector{grid-template-columns:1fr}.treasury-plan-selector>div{grid-column:auto}.smart-supplier-plan>header,.smart-supplier-plan>footer,.smart-decision-bar{align-items:stretch;display:grid}.smart-supplier-header-actions,.smart-decision-bar>div:last-child{align-items:stretch!important;display:grid!important}.smart-supplier-kpis{grid-template-columns:1fr 1fr}}
.schedule-filter-presets { display:grid; grid-template-columns:minmax(170px,1fr) minmax(190px,260px) auto auto auto; align-items:center; gap:8px; padding:8px 12px; border-top:1px solid #cbd3d0; border-bottom:1px solid #cbd3d0; background:#f3f6f5; }
.schedule-filter-presets>div { display:grid; gap:2px; }
.schedule-filter-presets b { color:#264a42; font-size:9px; }
.schedule-filter-presets span { color:#6d7774; font-size:7px; }
.schedule-filter-presets select { min-height:32px; border:1px solid #aebbb7; border-radius:3px; padding:5px 8px; background:#fff; color:#263b36; font-size:8px; }
.schedule-filter-presets button { min-height:32px; border-radius:3px; padding:5px 10px; font-size:8px; font-weight:900; white-space:nowrap; }
.save-filter-preset-btn { border:1px solid #367d6d; background:#287765; color:#fff; }
.save-filter-preset-btn:hover { background:#1f6657; }
.delete-filter-preset-btn { border:1px solid #c08b84; background:#fff; color:#a33b30; }
.delete-filter-preset-btn:disabled { border-color:#ccd1cf; background:#ecefee; color:#9aa19f; cursor:not-allowed; }
@media(max-width:900px){.schedule-filter-presets{grid-template-columns:1fr 1fr}.schedule-filter-presets>div{grid-column:1/-1}}
@media(max-width:620px){.schedule-filter-presets{grid-template-columns:1fr}.schedule-filter-presets>div{grid-column:auto}.schedule-filter-presets button,.schedule-filter-presets select{width:100%}}

.apply-filter-preset-btn { border:1px solid #337968; background:#fff; color:#246a5c; }
.apply-filter-preset-btn:hover:not(:disabled) { background:#e8f3ef; }
.apply-filter-preset-btn:disabled { border-color:#ccd1cf; background:#ecefee; color:#9aa19f; cursor:not-allowed; }

/* Largeur de travail par défaut : toutes les colonnes restent lisibles */
.drawer.drawer-wide>.bank-history-panel,.drawer.drawer-wide>.settlements-panel,.drawer.drawer-wide>.account-transfer-panel,.drawer.drawer-full>section{min-width:0}
.drawer.drawer-wide .history-table,.drawer.drawer-wide .account-transfer-history-table,.drawer.drawer-full .table-wrap{max-width:100%;overflow-x:auto;scrollbar-gutter:stable}
@media(max-width:1100px){.drawer.drawer-wide,.drawer.drawer-full{width:calc(100vw - 24px)}}
@media(max-width:740px){.drawer.drawer-wide,.drawer.drawer-full{width:100vw;padding:18px 14px}.drawer-head{position:sticky;top:-18px;z-index:5;margin-inline:-14px;padding:14px;background:var(--card);border-bottom:1px solid var(--line)}}
/* État détaillé des virements exécutés */
.executed-transfers-panel{display:grid;gap:14px;min-width:0}.executed-transfers-tools{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap;padding:11px;border:1px solid var(--line);background:#f5f6f4}.executed-transfers-tools>label{display:grid;gap:4px;min-width:190px}.executed-transfers-tools label>span{color:var(--muted);font-size:7px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.executed-transfers-tools select,.executed-transfers-tools input{height:34px;border:1px solid #b8b3af;background:#fff;padding:0 9px;color:var(--ink);font:700 9px var(--font-body)}.executed-transfer-search{flex:1 1 300px}.executed-transfer-search input{width:100%}.executed-transfers-tools>.history-date-range{margin-left:auto}.executed-transfer-kpis{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:#fff}.executed-transfer-kpis>div{display:grid;gap:5px;min-height:64px;padding:12px 14px;border-right:1px solid var(--line)}.executed-transfer-kpis>div:last-child{border:0}.executed-transfer-kpis span{color:var(--muted);font-size:8px;text-transform:uppercase}.executed-transfer-kpis b{font-size:14px;font-variant-numeric:tabular-nums}.executed-transfers-table{max-width:100%;overflow:auto;border:1px solid var(--line);background:#fff}.executed-transfers-head,.executed-transfers-table>article{display:grid;grid-template-columns:125px 155px 220px 190px 230px minmax(230px,1fr) 120px 220px;gap:11px;align-items:center;min-width:1510px;padding:10px 12px}.executed-transfers-head{background:#e4e5e3;color:#555;font-size:7px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}.executed-transfers-table>article{border-top:1px solid var(--line);font-size:8px}.executed-transfers-table article>span{min-width:0}.executed-transfers-table b,.executed-transfers-table small{display:block}.executed-transfers-table b{font-size:8px}.executed-transfers-table small{margin-top:3px;color:var(--muted);font-size:7px;line-height:1.35;overflow-wrap:anywhere}.executed-transfers-table article>strong{text-align:right;font-size:9px}.executed-transfers-print table{font-size:6px}.executed-transfers-print th,.executed-transfers-print td{padding:4px}.executed-transfers-print td b,.executed-transfers-print td small{display:block}.executed-transfers-print td small{margin-top:2px;color:#555;line-height:1.3}
@media(max-width:900px){.executed-transfers-tools{align-items:stretch}.executed-transfers-tools>label,.executed-transfer-search{flex:1 1 100%}.executed-transfers-tools>.history-date-range{margin-left:0}.executed-transfer-kpis{grid-template-columns:1fr}.executed-transfer-kpis>div{border-right:0;border-bottom:1px solid var(--line)}}
.account-transfer-history-table article time b,
.account-transfer-history-table article time small { display:block; }
.account-transfer-history-table article time small { margin-top:3px; color:var(--muted); font-size:7px; }
.account-transfer-status { display:inline-flex; margin-top:5px; padding:3px 6px; border:1px solid #d7a33c; border-radius:3px; background:#fff4d8; color:#795400; font-size:7px; font-style:normal; font-weight:800; text-transform:uppercase; }
.account-transfer-status.received { border-color:#9fcdbb; background:#e9f6f0; color:#17664f; }
.forecast-row-actions { display:flex; align-items:center; justify-content:flex-end; gap:6px; min-width:132px; }
.forecast-row-actions .edit-flow-btn,.forecast-row-actions .delete-flow-btn { min-height:28px; padding:4px 9px; }
.forecast-locked-state { display:inline-flex; align-items:center; min-height:28px; padding:4px 8px; border:1px solid #d0d4d2; border-radius:3px; background:#eef0ef; color:#747d79; font-size:7px; font-weight:800; white-space:nowrap; }
@media (max-width:740px) { .forecast-row-actions { grid-column:2/-1; justify-content:flex-start; } }
/* Approval planned-date audit */
.approval-invoice-cell { display:grid; gap:5px; min-width:0; }
.approval-invoice-cell>b { overflow-wrap:anywhere; font-size:8px; }
.approval-date-editor { display:grid; gap:3px; }
.approval-date-editor>em { color:#596760; font-size:6px; font-style:normal; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.approval-date-editor input { width:100%; min-width:0; height:29px; border:1px solid #aebdb7; border-radius:3px; padding:0 6px; background:#fff; color:#20352e; font:800 8px "Segoe UI",Arial,sans-serif; }
.approval-date-editor input:focus { border-color:#247b61; outline:2px solid rgba(36,123,97,.14); outline-offset:1px; }
.approval-date-editor input:disabled { border-color:#d5dbd8; background:#f1f3f2; color:#69766f; opacity:1; }
.approval-date-editor.changed input { border-color:#d58a2e; background:#fff9ef; }
.approval-date-audit { display:grid!important; gap:2px; margin-top:1px!important; border-left:3px solid #d58a2e; padding:5px 6px; background:#fff5e8; color:#744817!important; line-height:1.35; }
.approval-date-audit>b { color:#9a4d15; font-size:7px; text-transform:uppercase; }
.approval-date-audit>span { display:block; font-size:7px; font-weight:800; }
/* Consolidated transfer proposals */
.consolidation-proposals { display:grid; gap:8px; border:1px solid #9fc5b9; border-left:4px solid #247b61; padding:10px; background:#f3faf7; }
.consolidation-proposals>header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.consolidation-proposals>header div { display:grid; gap:2px; }
.consolidation-proposals>header b { color:#174f40; font-size:9px; }
.consolidation-proposals>header span { color:#5f716a; font-size:7px; }
.consolidation-proposals>header em { border-radius:3px; padding:4px 7px; background:#dcefe8; color:#17634e; font-size:7px; font-style:normal; font-weight:900; }
.consolidation-proposals>div { display:grid; gap:6px; }
.consolidation-proposals article { display:grid; grid-template-columns:auto minmax(220px,1fr) 105px auto; align-items:center; gap:10px; border:1px solid #bfd5cd; border-radius:4px; padding:8px; background:white; }
.consolidation-proposals article>div { display:grid; gap:2px; min-width:0; }
.consolidation-proposals article>div b { color:#1d302a; font-size:9px; }
.consolidation-proposals article>div small { overflow:hidden; color:#66736e; font-size:7px; text-overflow:ellipsis; white-space:nowrap; }
.consolidation-proposals article>strong { color:#b33b2e; font-size:9px; text-align:right; }
.consolidation-proposals article>button { min-height:31px; border:1px solid #247b61; border-radius:3px; padding:5px 10px; background:#247b61; color:white; font-size:8px; font-weight:900; cursor:pointer; }
.consolidation-proposals article>button:hover { background:#195f4b; }
@media (max-width:900px) { .consolidation-proposals article { grid-template-columns:auto 1fr; } .consolidation-proposals article>strong { text-align:left; } }






/* Sortie toujours visible sur chaque panneau */
.drawer>.drawer-head{position:sticky;top:-25px;z-index:30;margin:-25px -25px 24px;padding:18px 25px 14px;background:var(--card);border-bottom:1px solid var(--line);box-shadow:0 4px 10px rgba(30,45,48,.06)}
.drawer-exit{width:auto;height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 13px;border:1px solid #9daeb2!important;border-radius:4px!important;background:#fff!important;color:#263d42;font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer}
.drawer-exit:hover{border-color:#c74634!important;color:#a53125;background:#fff7f5!important}
@media(max-width:740px){.drawer>.drawer-head{top:-18px;margin:-18px -14px 20px;padding:14px}}
/* Avis de règlement destiné au fournisseur */
.supplier-advice-btn{margin-top:6px;padding:5px 8px;border:1px solid #177565;border-radius:3px;background:#fff;color:#176b5e;font-size:8px;font-weight:800}
.supplier-advice-btn:hover{background:#eaf5f2;border-color:#0e5d50}
.print-remittance-advice{display:none;background:#fff;color:#172727;font-family:Arial,"Segoe UI",sans-serif}
.print-remittance-advice header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding-bottom:14px;border-bottom:3px solid #08739c}
.print-remittance-advice header strong,.print-remittance-advice header span,.print-remittance-advice header small,.print-remittance-advice header b,.print-remittance-advice header time{display:block}
.print-remittance-advice header strong{font-size:18px}.print-remittance-advice header span{margin-top:6px;color:#00577d;font-size:21px;font-weight:900;letter-spacing:1px}.print-remittance-advice header small{margin-top:5px;font-size:9px}.print-remittance-advice header>div:last-child{text-align:right}.print-remittance-advice header b{padding:5px 8px;background:#e7f3ef;color:#176b5e;font-size:9px}.print-remittance-advice header time{margin-top:8px;font-size:11px;font-weight:700}
.remittance-intro{margin:18px 0 14px;font-size:11px;line-height:1.55}
.remittance-parties{display:grid;grid-template-columns:1fr 30px 1fr;gap:10px;align-items:stretch;margin-bottom:14px}.remittance-parties>div{display:grid;gap:4px;padding:12px;border:1px solid #9fb5bf;background:#f6f9fa}.remittance-parties>div:last-child{border-left:4px solid #24826f}.remittance-parties em{color:#657983;font-size:8px;font-style:normal;font-weight:900;letter-spacing:.09em}.remittance-parties b{font-size:12px}.remittance-parties span,.remittance-parties small{font-size:9px}.remittance-parties>i{display:grid;place-items:center;color:#24826f;font-size:19px;font-style:normal}
.print-remittance-advice dl{margin:0 0 15px;border:1px solid #aab7bd}.print-remittance-advice dl>div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid #c8d0d4}.print-remittance-advice dl>div:last-child{border-bottom:0}.print-remittance-advice dt,.print-remittance-advice dd{margin:0;padding:7px 9px;font-size:9px}.print-remittance-advice dt{background:#edf1f3;font-weight:800}
.print-remittance-advice h2{margin:0 0 7px;color:#17364a;font-size:12px}.print-remittance-advice table{width:100%;border-collapse:collapse}.print-remittance-advice th,.print-remittance-advice td{padding:7px 8px;border:1px solid #aab7bd;font-size:9px;text-align:left}.print-remittance-advice th{background:#e7edf0;font-weight:900}.print-remittance-advice th:last-child,.print-remittance-advice td:last-child{text-align:right}.print-remittance-advice tfoot th{background:#dce9ed;font-size:10px}
.remittance-note{margin-top:15px;padding:10px 12px;border-left:4px solid #c74634;background:#f7f3f1}.remittance-note b{font-size:9px}.remittance-note p{margin:4px 0 0;font-size:8px;line-height:1.5}.print-remittance-advice footer{display:flex;justify-content:space-between;margin-top:22px;padding-top:8px;border-top:1px solid #aab7bd;color:#5f7180;font-size:8px}
@media print{.print-remittance-advice,.print-remittance-advice *{visibility:visible!important}.print-remittance-advice{display:block;position:fixed;inset:0;padding:15mm;overflow:visible}}

.drawer-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.drawer-back{min-height:34px;padding:0 13px;border:1px solid #5f7f88;border-radius:4px;background:#f4f8f8;color:#173f49;font:800 11px/1 "Segoe UI",Arial,sans-serif;cursor:pointer;white-space:nowrap}
.drawer-back:hover{border-color:#087b9b;background:#eaf5f7;color:#075d76}
@media(max-width:740px){.drawer-head-actions{width:100%;justify-content:space-between}.drawer-back,.drawer-exit{white-space:normal}}
.drawer-floating-exit{position:fixed;right:24px;bottom:18px;z-index:80;min-width:118px;height:42px;padding:0 18px;border:1px solid #9f2f25;border-radius:4px;background:#c74634;color:#fff;font:800 12px/1 "Segoe UI",Arial,sans-serif;box-shadow:0 5px 16px rgba(31,45,48,.22);cursor:pointer}
.drawer-floating-exit:hover{background:#a93225;border-color:#8e261e;transform:translateY(-1px)}
.drawer-floating-exit:focus-visible{outline:3px solid rgba(8,123,155,.28);outline-offset:2px}
@media(max-width:740px){.drawer-floating-exit{right:12px;bottom:12px;min-width:102px}}
@media print{.drawer-floating-exit{display:none!important}}
.bank.has-transit { align-items:flex-start; border-color:#e3b76b; background:linear-gradient(90deg,#fffaf1 0,#fff 42%); }
.bank-identity { min-width:0; flex:1; }
.bank-transit { margin-top:6px; padding:6px 8px; border-left:3px solid #d99624; background:#fff7e7; display:grid; gap:2px; }
.bank-transit strong { color:#8a5200; font-size:9px; text-transform:uppercase; letter-spacing:.05em; }
.bank-transit small { color:#765d35; font-size:8px; line-height:1.35; }
.bank-transit small b { display:inline; color:#263631; font-size:8px; }
.bank.has-transit .bank-amount > small:first-of-type { color:#485e58; font-weight:650; }

.invoice-reference-cell { min-width:120px; }
.invoice-reference-cell b { display:block; color:#173e50; font-size:10px; font-family:var(--mono); overflow-wrap:anywhere; }
.invoice-reference-cell small { display:block; margin-top:3px; color:var(--muted); font-size:8px; }

.mobile-payment-notice{display:flex!important;align-items:center;gap:12px;padding:14px;border:1px solid #a7cfc4;border-left:4px solid #27846f;background:#eef8f5}
.mobile-payment-notice>span{width:34px;height:34px;display:grid;place-items:center;border-radius:4px;background:#27846f;color:#fff;font-size:16px}
.mobile-payment-notice b,.mobile-payment-notice small{display:block}.mobile-payment-notice b{font-size:11px;color:#173f37}.mobile-payment-notice small{margin-top:4px;font-size:9px;color:#55706a;line-height:1.45}

.payment-method-choice{padding:12px;background:#f2f5f3;border:1px solid var(--line)}
.mobile-payment-notice.other-payment{border-color:#b8c3cc;border-left-color:#657784;background:#f4f6f7}
.mobile-payment-notice.other-payment>span{background:#657784}
.mobile-payment-notice.other-payment input{margin-top:9px;width:100%;height:38px;border:1px solid #aebbc2;background:#fff;padding:0 10px}

.mobile-payment-notice input,.mobile-payment-notice select{margin-top:9px;width:100%;height:38px;border:1px solid #aebbc2;background:#fff;padding:0 10px;font:inherit}
.other-payment-fields{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(280px,1fr);gap:10px;width:100%}
.settlement-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.print-settlement-proof-btn{border:1px solid #23856f;background:#eef8f5;color:#155d4f;padding:8px 10px;font-weight:700;border-radius:3px;cursor:pointer}
.print-settlement-proof-btn:hover{background:#dff2ec}
@media(max-width:800px){.other-payment-fields{grid-template-columns:1fr}}

.edit-flow-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px}
.edit-flow-actions .ghost-btn,.edit-flow-actions .primary-btn,.edit-flow-actions .close-edit-flow-btn{height:34px;min-height:34px;padding:0 14px;line-height:32px}
.close-edit-flow-btn{border:1px solid #7f8c93;background:#fff;color:#263940;border-radius:3px;font-weight:700;cursor:pointer}
.close-edit-flow-btn:hover{background:#eef2f3;border-color:#586970}
.close-edit-flow-btn:disabled{opacity:.55;cursor:not-allowed}

.settlements-head,.settlements-row{grid-template-columns:82px minmax(210px,1.5fr) minmax(180px,1.15fr) 96px 120px 86px 190px;min-width:1080px;padding:12px 14px;column-gap:14px}
.settlements-row{min-height:76px}
.settlement-row-actions{display:grid;grid-template-columns:minmax(82px,1fr) minmax(68px,.72fr);align-items:center;justify-content:stretch;gap:8px;width:100%}
.settlement-row-actions button{width:100%;min-height:34px;margin:0;padding:7px 9px;line-height:1.2;white-space:normal}
.settlement-row-actions .cancel-settlement-btn:only-child{grid-column:1/-1}
.print-remittance-advice{box-sizing:border-box;width:180mm;max-width:180mm;min-height:267mm;margin:0 auto;padding:0;color:#173038;font-family:"Segoe UI",Arial,sans-serif;font-size:10pt}
.print-remittance-advice *{box-sizing:border-box}
.print-remittance-advice header{gap:12mm;padding:0 0 6mm;border-bottom:1.2mm solid #08739c}
.print-remittance-advice header strong{font-size:15pt;letter-spacing:.02em}.print-remittance-advice header span{margin-top:2mm;font-size:17pt;line-height:1.15;letter-spacing:.07em}.print-remittance-advice header small{font-size:8pt}.print-remittance-advice header b{padding:2mm 3mm;border-radius:1mm;font-size:8pt}.print-remittance-advice header time{font-size:9pt}
.remittance-intro{margin:6mm 0 4mm;font-size:9.5pt;line-height:1.5}
.remittance-parties{grid-template-columns:minmax(0,1fr) 10mm minmax(0,1fr);gap:3mm;margin-bottom:4mm}.remittance-parties>div{min-width:0;gap:1.2mm;padding:4mm;border-color:#9db0b8}.remittance-parties em{font-size:7.5pt}.remittance-parties b{font-size:10.5pt;overflow-wrap:anywhere}.remittance-parties span,.remittance-parties small{font-size:8pt;overflow-wrap:anywhere}
.print-remittance-advice dl{margin:0 0 5mm}.print-remittance-advice dl>div{grid-template-columns:55mm minmax(0,1fr)}.print-remittance-advice dt,.print-remittance-advice dd{padding:2.3mm 3mm;font-size:8.5pt;overflow-wrap:anywhere}
.print-remittance-advice h2{margin:0 0 2.5mm;font-size:11pt}.print-remittance-advice .remittance-invoices{width:100%;max-width:100%;table-layout:fixed}.print-remittance-advice .remittance-invoices th,.print-remittance-advice .remittance-invoices td{padding:2.5mm 3mm;font-size:8.5pt;overflow-wrap:anywhere}.print-remittance-advice .remittance-invoices th:last-child,.print-remittance-advice .remittance-invoices td:last-child{white-space:nowrap}
.remittance-note{margin-top:5mm;padding:3mm 4mm}.remittance-note b{font-size:8.5pt}.remittance-note p{font-size:8pt}
.remittance-signatures{display:grid;grid-template-columns:1fr 1fr;gap:12mm;margin-top:8mm}.remittance-signatures>div{min-height:28mm;padding:3mm 4mm;border:1px solid #aab7bd;background:#fafbfb}.remittance-signatures span,.remittance-signatures b,.remittance-signatures small{display:block}.remittance-signatures span{color:#657983;font-size:7.5pt;font-weight:800;text-transform:uppercase}.remittance-signatures b{margin-top:2mm;font-size:9pt}.remittance-signatures small{margin-top:10mm;color:#73828a;font-size:7pt}
.print-remittance-advice footer{margin-top:7mm;padding-top:2.5mm;font-size:7.5pt}
@media print{.print-remittance-advice{position:fixed;inset:0 auto auto 0;width:210mm;max-width:210mm;min-height:297mm;margin:0;padding:14mm 15mm 12mm;overflow:hidden}.print-remittance-advice .remittance-invoices{page-break-inside:avoid}.remittance-signatures,.remittance-note{page-break-inside:avoid}}

/* Ajustement A4 : afficher tout le justificatif sans couper la colonne de droite. */
.print-remittance-advice table,
.print-remittance-advice .remittance-invoices {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  table-layout: fixed;
}
.print-remittance-advice th,
.print-remittance-advice td {
  min-width: 0;
  overflow-wrap: anywhere;
}
@media print {
  .print-remittance-advice {
    box-sizing: border-box;
    width: 210mm;
    max-width: 210mm;
    padding: 12mm 14mm 10mm;
  }
  .print-remittance-advice table,
  .print-remittance-advice .remittance-invoices {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .print-remittance-advice th,
  .print-remittance-advice td {
    min-width: 0 !important;
    max-width: none !important;
  }
}
/* Bénéficiaire distinct et modifiable avant validation hiérarchique */
.beneficiary-edit-field { padding:10px 12px; border-left:3px solid #2d8a65; background:#f2f8f5; }
.approval-beneficiary-editor { display:grid; gap:3px; margin-top:4px; }
.approval-beneficiary-editor span { color:#526c65; font-size:6px; font-weight:900; letter-spacing:.35px; text-transform:uppercase; }
.approval-beneficiary-editor input { width:100%; min-width:0; height:28px; border:1px solid #72a99b; border-radius:3px; padding:4px 6px; background:#fff; color:#173d35; font:700 8px/1.25 "Segoe UI",Arial,sans-serif; }
.approval-beneficiary-editor input:focus { outline:2px solid rgba(45,138,101,.18); border-color:#23755e; }
.approval-beneficiary-editor button { min-height:26px; border:1px solid #2d806c; border-radius:3px; padding:4px 7px; background:#fff; color:#1f6b5a; font-size:6.5px; font-weight:900; cursor:pointer; }
.approval-beneficiary-editor button:hover:not(:disabled) { background:#e4f2ee; } .approval-beneficiary-editor button:disabled { opacity:.5; cursor:not-allowed; }
.approval-beneficiary-audit { display:grid; gap:1px; margin-top:4px; padding:4px 5px; border-left:2px solid #d39418; background:#fff7e2; }
.approval-beneficiary-audit strong,.approval-beneficiary-audit i { overflow:hidden; color:#6b5118; font-size:6px; font-style:normal; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.approval-operation-label{display:block;margin-top:4px;color:#3f5f58;font-size:7px;font-weight:750;line-height:1.35}

/* Impression du règlement en cours depuis la validation, sans imprimer le reste du tableau de bord. */
@media print {
  body.printing-transfer-workflow * { visibility:hidden!important; }
  body.printing-transfer-workflow .transfer-workflow-page,
  body.printing-transfer-workflow .transfer-workflow-page * { visibility:visible!important; }
  body.printing-transfer-workflow .transfer-workflow-page {
    display:block!important;
    position:absolute!important;
    inset:0!important;
    box-sizing:border-box!important;
    width:100%!important;
    margin:0!important;
    padding:12mm 14mm!important;
    background:#fff!important;
  }
  body.printing-transfer-workflow .transfer-drawer-actions { display:none!important; }
}
.executed-payment-documents{display:grid;grid-template-columns:1fr;gap:6px;width:100%}.executed-payment-documents button{width:100%;min-height:30px;white-space:normal}
.nav .treasury-nav-link{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:8px;color:inherit;text-decoration:none;font:inherit;font-weight:650}.nav .treasury-nav-link:hover{background:rgba(255,255,255,.08)}

/* Grille de trésorerie : largeurs métier stables, sans chevauchement des données. */
.schedule-card > .table-wrap {
  overflow: auto;
  scrollbar-gutter: stable;
  border-top: 1px solid #b9c9d1;
}
.schedule-card > .table-wrap table {
  width: max(100%, 1480px);
  min-width: 1480px;
  max-width: none;
  table-layout: fixed;
}
.schedule-card > .table-wrap thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  height: 34px;
  padding: 4px 7px;
  background: #dce8f3;
  color: #123f58;
  font-size: 8.5px;
  line-height: 1.2;
  white-space: normal;
  overflow-wrap: anywhere;
  vertical-align: middle;
}
.schedule-card > .table-wrap thead th > button {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:5px;
  width:100%;
  min-height:24px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.25px;
  cursor:pointer;
}
.schedule-card > .table-wrap thead th > button:hover,
.schedule-card > .table-wrap thead th > button.active { color:#0070a3; }
.schedule-card > .table-wrap thead th > button i { min-width:13px;font-style:normal;font-size:9px;text-align:center;color:#55798b; }
.schedule-card > .table-wrap tbody td {
  height: 78px;
  padding: 7px 8px;
  overflow: hidden;
  vertical-align: middle;
}
.schedule-card > .table-wrap th:nth-child(1) { width: 90px; }
.schedule-card > .table-wrap th:nth-child(2) { width: 265px; }
.schedule-card > .table-wrap th:nth-child(3) { width: 95px; }
.schedule-card > .table-wrap th:nth-child(4) { width: 120px; }
.schedule-card > .table-wrap th:nth-child(5) { width: 105px; }
.schedule-card > .table-wrap th:nth-child(6) { width: 105px; }
.schedule-card > .table-wrap th:nth-child(7) { width: 120px; }
.schedule-card > .table-wrap th:nth-child(8) { width: 120px; }
.schedule-card > .table-wrap th:nth-child(9) { width: 90px; }
.schedule-card > .table-wrap th:nth-child(10) { width: 95px; }
.schedule-card > .table-wrap th:nth-child(11) { width: 280px; }
.schedule-card .schedule-transfer-parties {
  grid-template-columns: 1fr;
  align-content:center;
  gap:2px;
  width: 100%;
  min-width: 0;
}
.schedule-card .schedule-transfer-party {
  min-width: 0;
  min-height: 29px;
  padding: 3px 7px;
}
.schedule-card .schedule-transfer-parties>span{height:8px;font-size:9px;line-height:8px;transform:rotate(90deg)}
.schedule-card .schedule-transfer-party b { font-size: 9px; }
.schedule-card .schedule-transfer-party small { font-size: 7.5px; }
.schedule-card .invoice-reference-cell { min-width: 0; }
.schedule-card .date-edit {
  width: 100%;
  min-width: 0;
  height: 32px;
  padding: 4px 5px;
}
.schedule-card > .table-wrap td:nth-child(5),
.schedule-card > .table-wrap td:nth-child(6),
.schedule-card > .table-wrap td:nth-child(7),
.schedule-card > .table-wrap .amount {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.schedule-card .transfer-row-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  align-content: center;
  width: 100%;
}
.schedule-card .transfer-row-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  min-height: 28px;
  padding: 4px 6px;
  font-size: 8.5px;
  line-height: 1.15;
  text-align: center;
  white-space: normal;
}
.schedule-card .transfer-row-actions .prepare-payment-btn { color: #8d4e11; }
.schedule-card .transfer-row-actions .edit-flow-btn { color: #22695b; }
.schedule-card .transfer-row-actions .delete-flow-btn { color: #a4382b; }
.schedule-card .transfer-row-actions .split-btn { color: #394b55; }
.schedule-card .transfer-row-actions button:not(:disabled) {
  opacity: 1;
}

/* Le rapport imprimé ne doit jamais laisser croire que les lignes ignorées
   participent aux montants. Le texte visuel suit la règle de calcul appliquée. */
.print-smart-report .smart-report-kpis > div:first-child > span {
  font-size: 0;
}
.print-smart-report .smart-report-kpis > div:first-child > span::after {
  content: "Factures fournisseurs actives · tous exercices";
  font-size: 6px;
}
.print-smart-report .smart-report-fiscal > p,
.print-smart-report aside > span {
  font-size: 0;
}
.print-smart-report .smart-report-fiscal > p::after {
  content: "Toutes les factures fournisseurs actives figurent dans l’annexe. Les lignes marquées ignorées sont exclues du rapport et de ses totaux.";
  font-size: 6px;
}
.print-smart-report aside > span::after {
  content: "L’annexe couvre les factures fournisseurs actives, y compris les lignes non financées, bloquées ou hors horizon. Les factures ignorées restent consultables dans le plan réel mais sont exclues de ce rapport.";
  font-size: 6px;
}

/* Politiques fournisseurs : accès plein écran et géométrie métier lisible. */
.supplier-policy-panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.supplier-policy-panel-actions button{min-height:30px;padding:0 12px;border:1px solid #7190a0;border-radius:0;background:#fff;color:#174d68;font-size:9px;font-weight:850;cursor:pointer}
.supplier-policy-panel-actions button:hover{background:#e8f2f7;border-color:#08759c}
.supplier-policies-page{min-height:100vh;padding:10px;background:#edf3f6;color:#173e55;font-family:Arial,"Helvetica Neue",sans-serif}
.supplier-policies-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 13px;border:1px solid #9eb2bd;border-top:4px solid #08759c;background:#fff}
.supplier-policies-page-head>div{min-width:0}.supplier-policies-page-head span{display:block;color:#08759c;font-size:8px;font-weight:900;letter-spacing:.08em}.supplier-policies-page-head h1{margin:3px 0 2px;font-size:19px;line-height:1.15}.supplier-policies-page-head p{margin:0;color:#647985;font-size:9px}
.supplier-policies-page-head button{flex:0 0 auto;min-height:33px;padding:0 12px;border:1px solid #a72f27;border-radius:0;background:#fff;color:#a72f27;font-size:9px;font-weight:850;cursor:pointer}.supplier-policies-page-head button:hover{background:#fff1ef}
.supplier-policies-toolbar{display:grid;grid-template-columns:minmax(300px,1fr) 150px 150px;gap:7px;margin-top:8px;padding:7px;border:1px solid #aabcc6;background:#dbe8f3}
.supplier-policies-toolbar>label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:0 8px;background:#fff;border:1px solid #9eb2bd}.supplier-policies-toolbar>label>span,.supplier-policies-toolbar>div>span{font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.supplier-policies-toolbar input{height:31px;border:0;outline:0;font-size:10px}.supplier-policies-toolbar>div{display:flex;align-items:center;justify-content:space-between;padding:0 9px;border:1px solid #9eb2bd;background:#fff}.supplier-policies-toolbar>div b{font-size:14px}
.supplier-policy-notice{margin:7px 0 0;padding:7px 10px;border-left:3px solid #23805e;background:#e8f5ef;color:#145d45;font-size:9px;font-weight:750}
.supplier-policy-page-table{margin-top:8px;border:1px solid #91a9b6;background:#fff;overflow:auto;max-height:calc(100vh - 205px);scrollbar-gutter:stable}
.supplier-policy-page-table>.head,.supplier-policy-page-table>form{display:grid;grid-template-columns:minmax(260px,1.6fr) 90px 135px 135px 170px 220px;min-width:1010px;align-items:center}
.supplier-policy-page-table>.head{position:sticky;top:0;z-index:2;min-height:28px;background:#d3e1ee;border-bottom:1px solid #91a9b6;color:#153f56;font-size:7.5px;font-weight:900;text-transform:uppercase}.supplier-policy-page-table>.head>span{padding:5px 8px;border-right:1px solid #b3c3cc}.supplier-policy-page-table>.head>span:last-child{position:sticky;right:0;z-index:4;background:#c5d9e9;box-shadow:-4px 0 8px rgba(23,62,85,.12);color:#0a5678;font-size:8.5px}
.supplier-policy-page-table>form{min-height:48px;border-bottom:1px solid #c4d0d7}.supplier-policy-page-table>form:nth-of-type(odd){background:#f7f9fb}.supplier-policy-page-table>form.configured{box-shadow:inset 3px 0 #23805e}.supplier-policy-page-table>form>span,.supplier-policy-page-table>form>label{min-width:0;padding:4px 8px;border-right:1px solid #d0d8dd}.supplier-policy-page-table>form>span:first-child{display:grid;gap:2px}.supplier-policy-page-table b{font-size:9px}.supplier-policy-page-table small{display:block;color:#69808c;font-size:7px;font-weight:700}.supplier-policy-page-table label{font-size:7px}.supplier-policy-page-table label input,.supplier-policy-page-table label select{width:100%;height:28px;margin-top:2px;padding:0 7px;border:1px solid #9eb2bd;border-radius:0;background:#fff;color:#173e55;font-size:9px;font-weight:750}.supplier-policy-page-table .actions{position:sticky;right:0;z-index:3;display:flex;align-items:center;gap:7px;min-height:48px;border-left:2px solid #91a9b6;border-right:0;background:#f4f8fa;box-shadow:-4px 0 8px rgba(23,62,85,.12)}.supplier-policy-page-table .actions button{min-height:34px;padding:0 13px;border:1px solid #0d5f42;border-radius:0;background:#177b56;color:#fff;font-size:9px;font-weight:900;box-shadow:0 1px 2px rgba(0,0,0,.12);cursor:pointer}.supplier-policy-page-table .actions button:hover{background:#0f6847}.supplier-policy-page-table .actions button.free{border-color:#7893a2;background:#fff;color:#274c60;box-shadow:none}.supplier-policy-page-table button:disabled{opacity:.55;cursor:not-allowed}
.supplier-policies-page>footer{display:flex;gap:10px;margin-top:7px;padding:7px 10px;border:1px solid #c4a462;background:#fff8df;color:#594817;font-size:8px}.supplier-policies-page>footer span{font-weight:900;text-transform:uppercase}
@media(max-width:900px){.supplier-policies-page{padding:8px}.supplier-policies-page-head{align-items:flex-start;flex-direction:column}.supplier-policies-page-head button{width:100%}.supplier-policies-toolbar{grid-template-columns:1fr}.supplier-policies-toolbar>label{grid-template-columns:1fr}.supplier-policy-page-table{max-height:none}}
