:root {
  --ink: #17201d;
  --muted: #76817c;
  --line: #e8ece9;
  --soft: #f5f7f5;
  --cream: #fafaf7;
  --green: #183b30;
  --green-2: #2b6854;
  --lime: #dff05b;
  --orange: #f59e57;
  --red: #e56a66;
  --blue: #6da8c8;
  --shadow: 0 8px 30px rgba(24, 59, 48, .07);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--cream); font-family: "DM Sans", sans-serif; font-size: 14px; }
button, input, select { font: inherit; }
button { cursor: pointer; }
svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.app-shell { min-height: 100vh; display: none; }
.app-shell.authenticated { display: flex; }

.editor-screen { min-height: 100vh; padding: 42px 18px; position: relative; display: grid; place-items: center; background: linear-gradient(135deg, var(--green) 0%, #102a22 58%, #234d3f 100%); overflow: auto; }
.editor-screen::before,.editor-screen::after{content:"";position:fixed;border-radius:50%;pointer-events:none}.editor-screen::before{width:460px;height:460px;right:-180px;top:-150px;border:76px solid rgba(223,240,91,.11)}.editor-screen::after{width:360px;height:360px;left:-150px;bottom:-150px;background:rgba(223,240,91,.07)}
.editor-screen.hidden { display: none; }
.editor-auth-card.hidden, .editor-admin-card.hidden { display: none!important; }
.editor-auth-card, .editor-admin-card { position: relative; z-index: 1; width: min(560px, 100%); padding: 48px 44px; border: 1px solid rgba(255,255,255,.42); border-radius: 28px; background: var(--cream); box-shadow: 0 22px 80px rgba(3,22,16,.32); }
.editor-admin-card { width: min(980px, 100%); max-height: none; padding: 0; border: 0; background: transparent; box-shadow: none; overflow: visible; }
.editor-auth-icon { width: 64px; height: 64px; margin: 0 auto 20px; display: grid; place-items: center; border-radius: 19px; color: var(--green); background: var(--lime); font-size: 28px; box-shadow: 0 12px 26px rgba(24,59,48,.13); }
.editor-auth-card h1, .editor-admin-head h1 { margin: 0; color: var(--green); text-align: center; font: 900 26px "Manrope"; letter-spacing: -.8px; }
.editor-auth-card > p, .editor-admin-head p { margin: 8px 0 28px; color: var(--muted); text-align: center; font-size: 14px; }
.editor-master-form, .editor-admin-form { display: grid; gap: 13px; }
.editor-master-form label, .editor-admin-form label { display: grid; gap: 7px; color: #59655f; font-size: 11px; font-weight: 900; letter-spacing: .4px; text-transform: uppercase; }
.editor-master-form input, .editor-admin-form input, .editor-admin-form textarea, .editor-admin-form select { width: 100%; min-height: 46px; padding: 0 13px; border: 1px solid #dfe4e0; border-radius: 11px; outline: 0; background: #fff; color: var(--ink); font: 700 13px "DM Sans"; text-transform: none; letter-spacing: 0; }
.editor-admin-form textarea { min-height: 88px; padding-top: 12px; resize: vertical; }
.editor-master-form input:focus, .editor-admin-form input:focus, .editor-admin-form textarea:focus, .editor-admin-form select:focus { border-color: var(--green-2); box-shadow: 0 0 0 4px rgba(43,104,84,.1); }
.editor-master-form button, .editor-admin-form > button { width: 100%; height: 48px; margin-top: 10px; border-radius: 12px; color: #fff; background: linear-gradient(135deg, var(--green-2), var(--green)); box-shadow: 0 12px 24px rgba(24,59,48,.18); }
.editor-back-link { width: 100%; margin-top: 22px; border: 0; color: rgba(255,255,255,.78); background: transparent; font-weight: 800; }
.editor-auth-card .editor-back-link{color:var(--muted)}
.editor-admin-head { position: relative; margin-bottom: 18px; padding: 28px 30px; border-radius: 24px; text-align: center; background: var(--cream); box-shadow: 0 16px 50px rgba(3,22,16,.2); }
.editor-admin-head .editor-auth-icon { background: var(--lime); }
.editor-admin-head .secondary-button { position: absolute; right: 20px; top: 20px; color: var(--green); border-color: #dfe8df; background: #fff; }
.editor-admin-section { margin-top: 18px; padding: 22px; border: 1px solid #e5ebe6; border-radius: 17px; background: #fff; box-shadow: 0 12px 36px rgba(3,22,16,.12); }
.editor-database-section{border-left:5px solid var(--lime)}.editor-create-section{border-left:5px solid var(--green-2)}.editor-password-section{border-left:5px solid var(--orange)}.editor-portfolio-section{border-left:5px solid #9fbd79}
.editor-admin-section h2 { margin: 0 0 8px; color: var(--green); font: 900 16px "Manrope"; letter-spacing: -.3px; }
.editor-admin-section p { margin: 0 0 16px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.editor-admin-section p strong { color: #9a631b; }
.editor-admin-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.editor-formula-hint { margin: 12px 0 2px; padding: 11px 13px; border: 1px solid #d9e9d6; border-radius: 12px; color: var(--green); background: linear-gradient(135deg, #f4fbef, #fff); font-size: 12px; font-weight: 900; }
.editor-code-block{margin-top:18px;padding-top:16px;border-top:1px solid #e7ece8}.editor-code-block h3{margin:0 0 10px;color:var(--green);font:900 13px "Manrope"}.editor-code-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-top:8px;padding:12px 14px;border:1px solid #e5ebe6;border-radius:13px;background:#fbfdfb}.editor-code-row strong,.editor-code-row small{display:block}.editor-code-row strong{color:var(--green);font:900 14px "Manrope";letter-spacing:1px}.editor-code-row small{margin-top:3px;color:var(--muted);font-size:10px}.editor-code-row button{border:0;color:var(--green);background:transparent;font-weight:900}.editor-code-status{padding:5px 10px;border-radius:999px;color:#26704e;background:#eaf7ef;font-size:10px;font-weight:900}.editor-code-status.soon{color:#9a631b;background:#fff3df}.editor-code-status.expired{color:#b94743;background:#ffe8e6}.editor-subscription-card{margin-top:10px;padding:15px;border:1px solid #e5ebe6;border-radius:14px;background:#fbfdfb}.editor-subscription-card.warning{border-color:#ecd5a5;background:#fffaf1}.editor-subscription-card.critical{border-color:#f0c2bf;background:#fff6f5}.editor-subscription-head{display:flex;justify-content:space-between;gap:10px;align-items:start;margin-bottom:12px}.editor-subscription-head strong,.editor-subscription-head small{display:block}.editor-subscription-head strong{color:var(--green);font:900 14px "Manrope"}.editor-subscription-head small{margin-top:3px;color:var(--muted);font-size:11px}.editor-subscription-head>span{color:var(--green-2);font-size:10px;font-weight:900}.editor-subscription-controls{display:grid;grid-template-columns:1fr auto 1fr auto;gap:10px;align-items:end}.editor-subscription-controls label{display:grid;gap:6px;color:#59655f;font-size:10px;font-weight:900;text-transform:uppercase}.editor-subscription-controls select{height:42px;padding:0 10px;border:1px solid #dfe4e0;border-radius:11px;background:#fff;font-weight:800}.editor-subscription-controls button{min-height:42px}

.login-screen { min-height: 100vh; display: grid; grid-template-columns: 1.1fr .9fr; background: #fff; }
.login-screen.hidden { display: none; }
.login-visual { min-height: 100vh; padding: 42px 7vw; position: relative; color: #fff; background: var(--green); display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; }
.login-visual::before, .login-visual::after { content: ""; position: absolute; border-radius: 50%; }
.login-visual::before { width: 420px; height: 420px; right: -170px; top: -100px; border: 70px solid rgba(223,240,91,.09); }
.login-visual::after { width: 340px; height: 340px; left: -170px; bottom: -170px; background: rgba(223,240,91,.06); }
.login-brand { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; font: 800 20px "Manrope"; }
.login-message { position: relative; z-index: 1; max-width: 570px; }
.login-message .eyebrow { color: var(--lime); }
.login-message h1 { margin: 0 0 20px; font: 800 clamp(36px, 5vw, 64px)/1.06 "Manrope"; letter-spacing: -2.8px; }
.login-message > p:last-child { max-width: 500px; color: rgba(255,255,255,.62); font-size: 15px; line-height: 1.7; }
.login-metrics { position: relative; z-index: 1; display: flex; gap: 34px; color: rgba(255,255,255,.58); font-size: 11px; }
.login-metrics strong { display: block; margin-bottom: 4px; color: var(--lime); font: 800 14px "Manrope"; }
.login-panel { padding: 50px; display: grid; place-items: center; background: var(--cream); }
.login-form { width: min(390px, 100%); padding: 38px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: var(--shadow); }
.login-form h2 { margin: 0; font: 800 25px "Manrope"; letter-spacing: -.7px; }
.login-form > p:nth-of-type(2) { margin: 8px 0 26px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.login-form label { margin-top: 15px; display: grid; gap: 7px; color: #53605a; font-size: 10px; font-weight: 700; }
.login-form input { height: 45px; padding: 0 13px; border: 1px solid #dfe4e0; border-radius: 10px; outline: 0; }
.login-form input:focus { border-color: var(--green-2); box-shadow: 0 0 0 3px rgba(43,104,84,.09); }
.login-button { width: 100%; height: 45px; margin-top: 20px; }
.login-form small { display: block; margin-top: 18px; color: #929b97; text-align: center; font-size: 9px; }
.login-error { min-height: 16px; margin-top: 7px; color: var(--red); font-size: 10px; font-weight: 700; }
.login-activation-toggle { display: block; width: 100%; margin-top: 12px; border: 0; background: transparent; color: #607069; font: 800 11px "Manrope"; cursor: pointer; text-align: center; }
.login-activation-toggle:hover { color: var(--green); text-decoration: underline; }
.login-activation-panel { width: min(390px, 100%); margin-top: 14px; padding: 24px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 18px 45px rgba(20,40,32,.08); }
.login-activation-panel.hidden, .login-activation-step.hidden { display: none; }
.login-activation-panel h3 { margin: 0; font: 800 20px "Manrope"; color: var(--ink); letter-spacing: -.5px; }
.login-activation-panel p:not(.eyebrow) { margin: 7px 0 16px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.login-activation-panel label { margin-top: 12px; display: grid; gap: 7px; color: #53605a; font-size: 10px; font-weight: 800; }
.login-activation-panel input { height: 43px; padding: 0 13px; border: 1px solid #dfe4e0; border-radius: 10px; outline: 0; }
.login-activation-panel input:focus { border-color: var(--green-2); box-shadow: 0 0 0 3px rgba(43,104,84,.09); }

.sidebar { position: fixed; inset: 0 auto 0 0; width: 250px; padding: 22px 20px 18px; background: var(--green); color: #fff; display: flex; flex-direction: column; z-index: 30; overflow-y: auto; }
.brand { display: flex; gap: 12px; align-items: center; padding: 0 8px 20px; }
.brand-mark { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: rgba(255,255,255,.08); }
.brand-mark span { font: 800 22px "Manrope"; color: var(--lime); transform: skew(-7deg); }
.brand strong { display: block; font: 800 19px "Manrope"; letter-spacing: -.5px; }
.brand small { display: block; margin-top: 2px; color: rgba(255,255,255,.56); font-size: 11px; }
#syncStatus[data-status="online"] { color: var(--lime); }
#syncStatus[data-status="syncing"] { color: #f1c38a; }
#syncStatus[data-status="error"] { color: #f2a4a1; }
.main-nav { display: grid; gap: 3px; }
.nav-item { width: 100%; height: 39px; display: flex; align-items: center; gap: 12px; padding: 0 12px; border: 0; border-radius: 10px; color: rgba(255,255,255,.66); background: transparent; text-align: left; transition: .2s; font-size: 12px; }
.nav-item:hover { color: #fff; background: rgba(255,255,255,.06); }
.nav-item.active { color: var(--green); background: var(--lime); font-weight: 700; }
.nav-item svg { width: 19px; }
.nav-item b { margin-left: auto; padding: 3px 7px; color: inherit; background: rgba(255,255,255,.12); border-radius: 20px; font-size: 10px; }
.nav-item.active b { background: rgba(24,59,48,.1); }
.sidebar-card { margin-top: 15px; padding: 13px; border: 1px solid rgba(255,255,255,.1); border-radius: 15px; background: rgba(255,255,255,.06); }
.sidebar-card-icon { width: 34px; height: 34px; display: grid; place-items: center; margin-bottom: 12px; border-radius: 10px; color: var(--green); background: var(--lime); }
.sidebar-card-icon svg { width: 17px; }
.sidebar-card strong { font-size: 13px; }
.sidebar-card p { margin: 6px 0 12px; color: rgba(255,255,255,.53); font-size: 11px; line-height: 1.5; }
.sidebar-card button { border: 0; padding: 0; color: var(--lime); background: none; font-size: 11px; font-weight: 700; }
.sidebar-card button svg { width: 13px; vertical-align: middle; }
.user-mini { margin-top: 16px; padding: 15px 5px 0; border-top: 1px solid rgba(255,255,255,.1); display: flex; align-items: center; gap: 10px; }
.avatar { width: 35px; height: 35px; display: grid; place-items: center; flex: none; border-radius: 10px; background: #f1c38a; color: #5d3517; font-size: 11px; font-weight: 800; }
.user-mini strong, .user-mini span { display: block; }
.user-mini strong { font-size: 11px; }
.user-mini span { margin-top: 2px; color: rgba(255,255,255,.5); font-size: 9px; }
.user-mini button { margin-left: auto; border: 0; color: rgba(255,255,255,.5); background: none; }

.main-area { width: calc(100% - 250px); margin-left: 250px; }
.topbar { height: 76px; position: sticky; top: 0; z-index: 20; padding: 0 36px; border-bottom: 1px solid var(--line); background: rgba(250,250,247,.94); backdrop-filter: blur(12px); display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.global-search { width: min(430px, 40vw); display: flex; align-items: center; gap: 10px; }
.global-search svg { width: 18px; color: #909a95; }
.global-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--ink); }
.global-search input::placeholder { color: #98a09c; }
kbd { padding: 4px 7px; border: 1px solid #dfe3e0; border-radius: 6px; color: #8a948f; background: #fff; font: 10px "DM Sans"; white-space: nowrap; }
.top-actions { display: flex; align-items: center; gap: 12px; }
.install-app-button { display: inline-flex; }
@media (display-mode: standalone) {
  .install-app-button { display: none; }
}
.icon-button { width: 39px; height: 39px; padding: 0; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 11px; color: #53605a; background: #fff; }
.notification { position: relative; }
.notification span { min-width: 16px; height: 16px; padding:0 4px; position: absolute; top: -4px; right: -5px; border: 2px solid #fff; border-radius: 9px; display:none;align-items:center;justify-content:center;color:#fff;background: var(--red);font-size:8px;font-weight:800 }
.notification.has-alerts span{display:flex}
.date-box { padding: 0 13px; border-left: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.primary-button, .secondary-button { height: 40px; padding: 0 17px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-weight: 700; font-size: 12px; }
.primary-button { border: 0; color: #fff; background: var(--green); box-shadow: 0 5px 16px rgba(24,59,48,.18); }
.primary-button:hover { background: #245744; transform: translateY(-1px); }
.primary-button svg { width: 16px; }
.secondary-button { border: 1px solid #dfe4e0; color: var(--green); background: #fff; }
.heading-actions { display: flex; gap: 9px; }
.file-button { position: relative; cursor: pointer; }
.file-button input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.mobile-menu { display: none; border: 0; background: transparent; }

.content { padding: 34px 36px 50px; max-width: 1600px; margin: auto; }
.page { display: none; animation: reveal .25s ease; }
.page.active { display: block; }
@keyframes reveal { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.page-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 27px; }
.eyebrow { margin: 0 0 8px; color: var(--green-2); font-size: 9px; font-weight: 800; letter-spacing: 1.6px; }
.page-heading h1 { margin: 0; font: 800 26px "Manrope"; letter-spacing: -.8px; }
.page-heading h1 span { font-size: 22px; }
.page-heading > div > p:last-child { margin: 6px 0 0; color: var(--muted); font-size: 12px; }

.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin-bottom: 18px; }
.stat-card { min-height: 128px; padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: 0 2px 0 rgba(24,59,48,.01); }
.stat-top { display: flex; justify-content: space-between; align-items: center; }
.stat-icon { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; color: var(--green); background: #edf4ef; }
.stat-icon.orange { color: #ad5e2b; background: #fff0e5; }
.stat-icon.blue { color: #40728c; background: #eaf4f8; }
.stat-icon.red { color: #aa4b48; background: #fceceb; }
.stat-icon svg { width: 17px; }
.trend { padding: 4px 7px; border-radius: 20px; color: #2a755b; background: #e9f6f0; font-size: 9px; font-weight: 700; }
.trend.down { color: #b1514d; background: #fbeceb; }
.stat-card p { margin: 13px 0 4px; color: var(--muted); font-size: 10px; }
.stat-card h3 { margin: 0; font: 800 22px "Manrope"; letter-spacing: -.5px; }
.stat-card small { color: #9aa39f; font-size: 9px; }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, .8fr); gap: 18px; margin-bottom: 18px; }
.bottom-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, .8fr); gap: 18px; }
.owner-command-panel { margin-bottom: 18px; }
.owner-command-panel .panel-header { align-items: center; }
.owner-command-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; padding: 0 20px 12px; }
.owner-command-card { min-height: 88px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 13px; text-align: left; background: #f8faf8; cursor: pointer; transition: .18s; }
.owner-command-card:hover { transform: translateY(-1px); border-color: #a6bcae; box-shadow: 0 10px 22px rgba(23,58,45,.08); }
.owner-command-card span, .owner-command-card strong, .owner-command-card small { display: block; }
.owner-command-card span { color: #66726c; font-size: 9px; font-weight: 800; letter-spacing: .4px; text-transform: uppercase; }
.owner-command-card strong { margin-top: 7px; color: var(--green); font: 900 19px "Manrope"; letter-spacing: -.45px; }
.owner-command-card small { margin-top: 5px; color: var(--muted); font-size: 8px; line-height: 1.35; }
.owner-command-card.danger { background: #fff1f0; border-color: #f2c7c4; }
.owner-command-card.warning { background: #fff8e9; border-color: #edd6a7; }
.owner-command-card.info { background: #eef7fb; border-color: #c9e0ec; }
.owner-command-card.money { background: #eef8f1; border-color: #c8e3d0; }
.owner-command-card.success { background: #f3faf4; border-color: #d5ead9; }
.owner-command-actions { padding: 0 20px 18px; }
.owner-action-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 0 8px; border-top: 1px solid var(--line); }
.owner-action-heading strong { color: var(--green); font-size: 10px; }
.owner-action-heading span { color: var(--muted); font-size: 8px; }
.owner-action-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.owner-action { display: grid; grid-template-columns: 88px minmax(0, 1fr); align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--line); border-left: 4px solid #75a98e; border-radius: 12px; background: #fff; text-align: left; cursor: pointer; }
.owner-action:hover { border-color: #a9beb1; background: #fbfdfb; }
.owner-action i { justify-self: start; padding: 5px 7px; border-radius: 20px; color: #24684d; background: #e9f6ef; font-size: 8px; font-style: normal; font-weight: 900; }
.owner-action.warning { border-left-color: #e0a042; }
.owner-action.warning i { color: #9a631b; background: #fff3df; }
.owner-action.critical { border-left-color: #dd5c58; }
.owner-action.critical i { color: #a6413d; background: #fceceb; }
.owner-action span { min-width: 0; }
.owner-action strong, .owner-action small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.owner-action strong { color: var(--ink); font-size: 10px; }
.owner-action small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.owner-action-empty { padding: 15px; border-top: 1px solid var(--line); border-radius: 0 0 14px 14px; text-align: center; background: #f5faf7; }
.owner-action-empty strong, .owner-action-empty span { display: block; }
.owner-action-empty strong { color: #26704e; font-size: 11px; }
.owner-action-empty span { margin-top: 3px; color: var(--muted); font-size: 8px; }
.dashboard-document-panel { margin-bottom: 18px; }
.dashboard-document-metrics { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; padding: 0 20px 18px; }
.dashboard-document-metrics button { padding: 13px 14px; border: 1px solid var(--line); border-radius: 11px; text-align: left; background: #f8faf8; cursor: pointer; }
.dashboard-document-metrics button:hover { border-color: #9db6aa; transform: translateY(-1px); }
.dashboard-document-metrics button.warning { background: #fff8e9; }
.dashboard-document-metrics button.info { background: #f0f7fc; }
.dashboard-document-metrics button.urgent { background: #fff1dd; }
.dashboard-document-metrics button.success { background: #edf8f1; }
.dashboard-document-metrics button.danger { background: #fff2f1; }
.dashboard-document-metrics span, .dashboard-document-metrics strong, .dashboard-document-metrics small { display: block; }
.dashboard-document-metrics span { color: #66726c; font-size: 9px; font-weight: 700; }
.dashboard-document-metrics strong { margin-top: 4px; color: var(--green); font: 800 21px "Manrope"; }
.dashboard-document-metrics small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.dashboard-document-tasks { padding: 0 20px 18px; }
.dashboard-document-task-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 12px 0 8px; border-top: 1px solid var(--line); }
.dashboard-document-task-heading strong { color: var(--green); font-size: 10px; }
.dashboard-document-task-heading span { color: var(--muted); font-size: 8px; }
.dashboard-document-task-list { display: grid; gap: 7px; }
.dashboard-document-task { display: grid; grid-template-columns: 135px minmax(170px, 1fr) 105px auto; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfb; }
.dashboard-document-task-status, .dashboard-document-task-main, .dashboard-document-task-age { min-width: 0; }
.dashboard-document-task-status { display: flex; align-items: center; gap: 7px; color: #93631e; font-size: 8px; font-weight: 800; }
.dashboard-document-task-status i { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: #d99a35; }
.dashboard-document-task.awaiting .dashboard-document-task-status { color: #376d91; }
.dashboard-document-task.awaiting .dashboard-document-task-status i { background: #5997bf; }
.dashboard-document-task.overdue { border-color: #edbd74; background: #fffaf1; }
.dashboard-document-task.overdue .dashboard-document-task-status { color: #a25f12; }
.dashboard-document-task.overdue .dashboard-document-task-status i { background: #d87b19; box-shadow: 0 0 0 3px rgba(216,123,25,.12); }
.dashboard-document-task-main strong, .dashboard-document-task-main span, .dashboard-document-task-age strong, .dashboard-document-task-age span { display: block; }
.dashboard-document-task-main strong { overflow: hidden; color: var(--green); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-document-task-main span { margin-top: 2px; overflow: hidden; color: var(--muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-document-task-age { text-align: right; }
.dashboard-document-task-age strong { color: #495850; font-size: 9px; }
.dashboard-document-task-age span { margin-top: 2px; color: var(--muted); font-size: 7px; }
.dashboard-document-task-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 5px; }
.dashboard-document-task-actions button { min-height: 31px; padding: 5px 8px; }
.dashboard-document-task-empty { padding: 15px; border-top: 1px solid var(--line); text-align: center; background: #f5faf7; }
.dashboard-document-task-empty strong, .dashboard-document-task-empty span { display: block; }
.dashboard-document-task-empty strong { color: #26704e; font-size: 10px; }
.dashboard-document-task-empty span { margin-top: 3px; color: var(--muted); font-size: 8px; }
.panel { border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow); overflow: hidden; }
.panel-header { padding: 18px 20px 12px; display: flex; justify-content: space-between; align-items: start; gap: 15px; }
.panel-header h2 { margin: 0; font: 800 14px "Manrope"; letter-spacing: -.2px; }
.panel-header p { margin: 5px 0 0; color: var(--muted); font-size: 10px; }
.panel-header select { padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; outline: 0; color: #65706b; background: #fff; font-size: 10px; }
.dots-button { border: 0; color: #89938e; background: transparent; }
.chart-summary { padding: 2px 20px 0; display: flex; align-items: baseline; gap: 13px; }
.chart-summary strong { font: 800 23px "Manrope"; }
.chart-summary span { color: #2d7a5e; font-size: 9px; font-weight: 700; }
.chart-summary small { color: #9aa29e; font-weight: 400; }
.chart-wrap { height: 190px; padding: 10px 14px 10px 6px; }
.chart-wrap svg { width: 100%; height: 100%; overflow: visible; }
.chart-line { fill: none; stroke: var(--green-2); stroke-width: 2.5; }
.chart-area { fill: url(#chartGradient); stroke: none; }
.chart-grid { stroke: #edf0ee; stroke-width: 1; }
.chart-dot { fill: #fff; stroke: var(--green-2); stroke-width: 2; }
.chart-label { fill: #8d9792; font-size: 8px; stroke: none; }
.chart-value { fill: var(--green); font-size: 8px; font-weight: 700; stroke: none; }
.donut-zone { min-height: 220px; padding: 20px; display: flex; align-items: center; justify-content: center; gap: 27px; }
.donut { width: 125px; height: 125px; flex: none; border-radius: 50%; display: grid; place-items: center; position: relative; }
.donut::after { content: ""; width: 78px; height: 78px; position: absolute; border-radius: 50%; background: #fff; }
.donut div { position: relative; z-index: 1; text-align: center; }
.donut strong, .donut span { display: block; }
.donut strong { font: 800 21px "Manrope"; }
.donut span { color: var(--muted); font-size: 9px; }
.legend { display: grid; gap: 13px; }
.legend-item { display: grid; grid-template-columns: 8px 1fr auto; gap: 7px; align-items: center; min-width: 120px; font-size: 10px; }
.legend-item i { width: 7px; height: 7px; border-radius: 50%; }
.legend-item span { color: var(--muted); }
.legend-item strong { font-size: 10px; }
.full-link { width: 100%; height: 42px; padding: 0 20px; border: 0; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; color: var(--green-2); background: #fbfcfb; font-size: 10px; font-weight: 700; }
.full-link svg, .text-button svg { width: 13px; }
.text-button { border: 0; display: inline-flex; align-items: center; gap: 3px; color: var(--green-2); background: transparent; font-size: 10px; font-weight: 700; }
.table-wrap { width: 100%; overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th { padding: 10px 18px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: #929b97; background: #fbfcfb; text-align: left; font-size: 8px; text-transform: uppercase; letter-spacing: .8px; white-space: nowrap; }
td { padding: 12px 18px; border-bottom: 1px solid #f0f2f1; color: #56615c; font-size: 10px; white-space: nowrap; }
tbody tr:last-child td { border-bottom: 0; }
td strong { color: var(--ink); font-size: 10px; }
.order-id { color: var(--green-2); font-weight: 700; }
.status { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border-radius: 15px; background: #eaf6ef; color: #317258; font-size: 8px; font-weight: 700; }
.status::before { content: ""; width: 4px; height: 4px; border-radius: 50%; background: currentColor; }
.status.pending { color: #9d6b24; background: #fff3df; }
.status.low { color: #ae504c; background: #fceceb; }
.status.overdue { color: #ae504c; background: #fceceb; }
.alerts-panel .panel-header { align-items: center; }
.alert-count { padding: 5px 8px; border-radius: 8px; color: #ae504c; background: #fceceb; font-size: 9px; font-weight: 800; }
.alert-list { padding: 0 20px 8px; }
.alert-item { width:100%;padding: 11px 0; border:0;border-bottom: 1px solid #f0f2f1; display: flex; align-items: center; gap: 10px;text-align:left;background:transparent;cursor:pointer }
.alert-item:last-child { border: 0; }
.product-icon { width: 36px; height: 36px; display: grid; place-items: center; flex: none; border-radius: 9px; color: var(--green); background: #eff3f0; font-weight: 800; font-size: 10px; }
.alert-item > div:nth-child(2) { min-width: 0; flex: 1; }
.alert-item strong, .alert-item span { display: block; }
.alert-item strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.alert-item span { margin-top: 3px; color: #99a19d; font-size: 8px; }
.alert-symbol{width:30px;height:30px;display:grid;place-items:center;flex:none;border-radius:9px;color:#8c5b1d;background:#fff2df;font-size:12px;font-weight:900}
.alert-critical .alert-symbol{color:#a6413d;background:#fceceb}.alert-info .alert-symbol{color:#276386;background:#eaf4fa}
.alert-center-list{display:grid;gap:10px}.alert-center-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line);border-left:5px solid #f0a14a;border-radius:14px;background:#fff}
.alert-center-card.critical{border-left-color:#e56a66}.alert-center-card.info{border-left-color:#6da8c8}
.alert-center-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#8c5b1d;background:#fff2df;font-weight:900}.alert-center-card.critical .alert-center-icon{color:#a6413d;background:#fceceb}.alert-center-card.info .alert-center-icon{color:#276386;background:#eaf4fa}
.alert-center-card span{color:var(--green-2);font-size:8px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.alert-center-card h3{margin:3px 0;color:var(--green);font-size:13px}.alert-center-card p{margin:0;color:var(--muted);font-size:10px}
.empty-alerts{padding:35px;text-align:center}.empty-alerts strong{color:var(--green);font-size:16px}.empty-alerts p{margin:6px 0 0;color:var(--muted)}
.security-owner-panel{margin-bottom:14px}.security-owner-panel .panel-header{align-items:center}#securityOwnerSummary{padding:0 20px 12px;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.security-summary-card{padding:12px;border:1px solid var(--line);border-radius:11px;background:#f8faf8}.security-summary-card span,.security-summary-card strong,.security-summary-card small{display:block}.security-summary-card span{color:var(--muted);font-size:8px;text-transform:uppercase;font-weight:900}.security-summary-card strong{margin-top:5px;color:var(--green);font-size:18px}.security-summary-card small{margin-top:3px;color:#8c9691;font-size:8px}.security-summary-card.danger{background:#fff2f1;border-color:#efc3c0}.security-summary-card.danger strong{color:#a6413d}.security-summary-card.warning{background:#fff8e9;border-color:#efd7a9}.security-summary-card.warning strong{color:#976419}#securityOwnerList{padding:0 20px 18px;display:grid;gap:7px}.security-audit-item{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}.security-audit-item i{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;color:#276386;background:#eaf4fa;font-style:normal;font-weight:900}.security-audit-item.critical i{color:#a6413d;background:#fceceb}.security-audit-item.warning i{color:#94621a;background:#fff3df}.security-audit-item strong,.security-audit-item span,.security-audit-item small{display:block}.security-audit-item strong{color:var(--ink);font-size:10px}.security-audit-item span{margin-top:2px;color:var(--green-2);font-size:8px}.security-audit-item small{margin-top:3px;color:var(--muted);font-size:8px}
.seller-performance-panel{margin-top:18px}
@media(max-width:650px){.alert-center-card{grid-template-columns:38px 1fr}.alert-center-card button{grid-column:1/-1;width:100%}}
@media(max-width:760px){.subscription-plan-grid{grid-template-columns:1fr}.subscription-plan-card p{min-height:0}}
.stock-number { color: var(--red)!important; font-size: 9px!important; font-weight: 800; text-align: right; }

.toolbar { padding: 12px; margin-bottom: 14px; border: 1px solid var(--line); border-radius: 13px; background: #fff; display: flex; gap: 10px; }
.search-field { min-width: 260px; flex: 1; display: flex; align-items: center; gap: 9px; padding: 0 11px; border: 1px solid var(--line); border-radius: 9px; }
.search-field svg { width: 16px; color: #9aa29f; }
.search-field input { width: 100%; height: 38px; border: 0; outline: 0; }
.toolbar select { min-width: 190px; padding: 0 12px; border: 1px solid var(--line); border-radius: 9px; color: #68736e; background: white; }
.table-panel { box-shadow: none; }
.table-panel th { padding: 13px 18px; }
.table-panel td { padding: 14px 18px; font-size: 11px; }
.item-cell { display: flex; align-items: center; gap: 10px; }
.item-cell .product-icon { width: 34px; height: 34px; }
.item-cell strong, .item-cell small { display: block; }
.item-cell small { margin-top: 3px; color: #98a19d; font-size: 8px; }
.stock-bar { width: 80px; height: 5px; margin-top: 5px; border-radius: 8px; background: #edf0ee; overflow: hidden; }
.stock-bar span { display: block; height: 100%; border-radius: inherit; background: var(--green-2); }
.dormant-stock-panel{margin-bottom:16px}#dormantStockSummary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:0 20px 12px}#dormantStockSummary>span{padding:11px 12px;border:1px solid #dce6df;border-radius:9px;background:#f7faf8}#dormantStockSummary small,#dormantStockSummary strong{display:block}#dormantStockSummary small{color:var(--muted);font-size:8px}#dormantStockSummary strong{margin-top:4px;color:var(--green);font-size:13px}#dormantStockList{padding:0 20px 18px;display:grid;gap:8px}.dormant-stock-item{display:grid;grid-template-columns:minmax(240px,1.2fr) 120px 160px minmax(190px,.7fr);align-items:center;gap:14px;padding:12px 13px;border:1px solid #ead4a8;border-left:4px solid #cf9638;border-radius:10px;background:#fffaf1}.dormant-stock-item.critical{border-color:#edc2bf;border-left-color:#bd4d48;background:#fff6f5}.dormant-stock-item span,.dormant-stock-item strong,.dormant-stock-item small{display:block}.dormant-stock-item>div:first-child>span{color:#97661e;font-size:7px;font-weight:900;letter-spacing:.6px}.dormant-stock-item.critical>div:first-child>span{color:#aa4540}.dormant-stock-item>div:first-child>strong{margin-top:3px;color:var(--green);font-size:10px}.dormant-stock-item>div:first-child>small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.45}.dormant-stock-qty,.dormant-stock-value{text-align:right}.dormant-stock-qty>span,.dormant-stock-value>span{color:var(--muted);font-size:7px;text-transform:uppercase}.dormant-stock-qty>strong,.dormant-stock-value>strong{margin-top:3px;color:var(--green);font-size:13px}.dormant-stock-qty>small,.dormant-stock-value>small{margin-top:3px;color:var(--muted);font-size:8px}.dormant-stock-actions{display:flex;justify-content:flex-end;gap:6px}.dormant-stock-actions button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:7px;color:var(--green);background:#fff;font-size:8px;font-weight:800;cursor:pointer}.dormant-stock-actions button:last-child{border-color:#e4c888;background:#fff8e9}
.action-button { border: 0; color: #8c9691; background: transparent; }

.moto-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.moto-card { border: 1px solid var(--line); border-radius: 16px; background: #fff; overflow: hidden; }
.moto-visual { height: 150px; position: relative; display: grid; place-items: center; background: linear-gradient(145deg, #eef3ef, #dce7df); }
.moto-visual::before { content: ""; width: 160px; height: 70px; border-radius: 50%; position: absolute; bottom: 16px; background: rgba(24,59,48,.09); filter: blur(10px); }
.moto-emoji { position: relative; font-size: 78px; filter: grayscale(.3); }
.moto-badge { position: absolute; top: 12px; right: 12px; padding: 5px 8px; border-radius: 20px; color: var(--green); background: var(--lime); font-size: 8px; font-weight: 800; }
.moto-body { padding: 17px; }
.moto-body > span { color: var(--green-2); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.moto-body h3 { margin: 5px 0 7px; font: 800 16px "Manrope"; }
.moto-body p { margin: 0 0 16px; color: var(--muted); font-size: 10px; }
.moto-footer { padding-top: 13px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; }
.moto-footer strong { font: 800 15px "Manrope"; }
.moto-footer button { border: 0; color: var(--green-2); background: none; font-size: 10px; font-weight: 700; }

.compact { grid-template-columns: repeat(3, 1fr); }
.credit-stats { grid-template-columns: repeat(4, 1fr); }
.credit-priority-panel { margin-bottom: 18px; }
.credit-aging-panel { margin-bottom: 18px; }
.credit-aging-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; padding: 0 20px 18px; }
.credit-aging-grid button { min-width: 0; padding: 11px 10px; border: 1px solid var(--line); border-radius: 10px; text-align: left; background: #f8faf8; cursor: pointer; }
.credit-aging-grid button:hover { border-color: #9db6aa; }
.credit-aging-grid button.active { border-color: var(--green-2); box-shadow: 0 0 0 2px rgba(43,104,84,.1); }
.credit-aging-grid button.warning { background: #fff8e9; }
.credit-aging-grid button.danger { background: #fff2f1; }
.credit-aging-grid span, .credit-aging-grid strong, .credit-aging-grid small { display: block; }
.credit-aging-grid span { min-height: 20px; color: var(--muted); font-size: 7.5px; line-height: 1.3; }
.credit-aging-grid strong { margin-top: 4px; overflow: hidden; color: var(--green); font: 800 13px "Manrope"; text-overflow: ellipsis; }
.credit-aging-grid small { margin-top: 3px; color: #8b9690; font-size: 7px; }
.credit-priority-list { display: grid; gap: 7px; padding: 0 20px 18px; }
.credit-priority-item { display: grid; grid-template-columns: minmax(240px,1fr) 135px auto; align-items: center; gap: 14px; padding: 11px 12px; border: 1px solid var(--line); border-left: 3px solid #d2a048; border-radius: 10px; background: #fffaf1; }
.credit-priority-item.priority-0 { border-left-color: #d65a55; background: #fff5f4; }
.credit-priority-item.priority-1 { border-left-color: #e18b35; }
.credit-priority-item > div:first-child span, .credit-priority-item > div:first-child strong, .credit-priority-item > div:first-child small { display: block; }
.credit-priority-item > div:first-child span { color: #a45e25; font-size: 7px; font-weight: 800; letter-spacing: .6px; }
.credit-priority-item.priority-0 > div:first-child span { color: #af443f; }
.credit-priority-item > div:first-child strong { margin-top: 3px; color: var(--green); font-size: 10px; }
.credit-priority-item > div:first-child small { margin-top: 3px; color: var(--muted); font-size: 8px; line-height: 1.4; }
.credit-priority-amount { text-align: right; }
.credit-priority-amount span, .credit-priority-amount strong { display: block; }
.credit-priority-amount span { color: var(--muted); font-size: 7px; }
.credit-priority-amount strong { margin-top: 3px; color: #a23d38; font-size: 11px; }
.credit-priority-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 5px; }
.credit-priority-actions button { min-height: 32px; padding: 5px 8px; font-size: 8px; }
@media(max-width:800px){.credit-priority-item{grid-template-columns:1fr auto}.credit-priority-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:1000px){.credit-aging-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.credit-priority-item{grid-template-columns:1fr}.credit-priority-amount{text-align:left}.credit-priority-actions{grid-column:auto}.credit-aging-grid{grid-template-columns:1fr 1fr}}
.campaign-stats { grid-template-columns: repeat(4, 1fr); margin-bottom: 18px; }
.campaign-dashboard { margin-bottom: 22px; }
.campaign-dashboard-heading { align-items: flex-end; gap: 14px; }
.campaign-dashboard-filters { display: flex; gap: 8px; }
.campaign-dashboard-filters input, .campaign-dashboard-filters select { height: 38px; min-width: 170px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-size: 9px; }
.backup-card-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.invoice-template-picker { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 0 0 18px; }
.invoice-template-option { position: relative; cursor: pointer; }
.invoice-template-option input { position: absolute; opacity: 0; pointer-events: none; }
.invoice-template-option span { display: block; min-height: 78px; padding: 14px; border: 1px solid var(--line); border-radius: 11px; background: #fff; transition: .2s; }
.invoice-template-option strong, .invoice-template-option small { display: block; }
.invoice-template-option strong { color: var(--green); font-size: 11px; }
.invoice-template-option small { margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.4; }
.invoice-template-option input:checked + span { border-color: var(--green-2); background: #edf5f0; box-shadow: 0 0 0 2px rgba(43,104,84,.1); }
.header-display-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 0 0 18px; padding: 14px; border: 1px solid var(--line); border-radius: 11px; background: #f8faf8; }
.header-display-grid label { display: grid; gap: 6px; color: #53605a; font-size: 9px; font-weight: 700; }
.header-display-grid select { height: 40px; padding: 0 9px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-size: 9px; }
.logo-setting-row { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; }
.logo-setting-preview { width: 58px; height: 58px; display: grid; place-items: center; flex: none; overflow: hidden; border: 1px solid var(--line); border-radius: 11px; color: var(--green); background: var(--lime); font-size: 23px; font-weight: 900; }
.logo-setting-preview img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.document-preset-toolbar { display: grid; grid-template-columns: minmax(210px, 1fr) auto auto auto auto; gap: 8px; margin: 0 0 14px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: #f8faf8; }
.document-preset-toolbar select, .document-preset-toolbar button { min-height: 40px; }
.document-preset-toolbar select { padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-size: 9px; }
.document-preset-assignments { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: -4px 0 16px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.preset-assignment-intro { grid-column: 1 / -1; display: grid; gap: 3px; color: #24342d; }
.preset-assignment-intro small { color: #748078; font-size: 9px; font-weight: 400; }
.document-preset-assignments label { display: grid; gap: 6px; color: #53605a; font-size: 9px; font-weight: 700; }
.document-preset-assignments select { min-width: 0; height: 40px; padding: 0 9px; border: 1px solid var(--line); border-radius: 8px; background: #f8faf8; font-size: 9px; }
@media(max-width:900px){.document-preset-toolbar{grid-template-columns:1fr 1fr}.document-preset-toolbar select{grid-column:1/-1}}
@media(max-width:520px){.document-preset-toolbar{grid-template-columns:1fr}.document-preset-toolbar select{grid-column:auto}}
@media(max-width:720px){.document-preset-assignments{grid-template-columns:1fr}}
@media(max-width:620px){.invoice-template-picker{grid-template-columns:1fr}}
@media(max-width:720px){.header-display-grid{grid-template-columns:1fr}}
.recurrence-badge { display: inline-flex; margin-left: 6px; padding: 3px 7px; border-radius: 999px; color: #476656; background: #eaf2ed; font-size: 7px; font-weight: 800; vertical-align: middle; }
.recurrence-badge.paused { color: #8a5a12; background: #fff1d2; }
.commercial-followups-panel { margin-bottom: 18px; }
.reservation-panel { margin-bottom:18px; }
#reservationList { padding:0 20px 18px; display:grid; gap:8px; }
.reservation-item { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:16px; padding:12px 13px; border:1px solid #d7e4dc; border-left:4px solid #4f8b70; border-radius:10px; background:#f8fbf9; }
.reservation-item.expired { border-color:#efc7c4; border-left-color:#c6534e; background:#fff6f5; }
.reservation-item.shortage { border-color:#eaa9a5; border-left-color:#a93631; background:#fff1f0; }
.reservation-item.convertie { border-left-color:#6d8ca0; background:#f5f9fb; }
.reservation-item.annulée { border-left-color:#929b96; background:#f8f9f8; opacity:.82; }
.reservation-item>div:first-child span,.reservation-item>div:first-child strong,.reservation-item>div:first-child small,.reservation-money span,.reservation-money strong,.reservation-money small { display:block; }
.reservation-item>div:first-child span { color:#39775a; font-size:7px; font-weight:900; letter-spacing:.7px; }
.reservation-item.expired>div:first-child span { color:#ad4a45; }
.reservation-item.shortage>div:first-child span { color:#a93631; }
.reservation-item>div:first-child strong { margin-top:3px; font-size:10px; }
.reservation-item>div:first-child small { margin-top:3px; color:var(--muted); font-size:8px; line-height:1.45; }
.reservation-money { min-width:145px; text-align:right; }
.reservation-money span { color:var(--muted); font-size:7px; text-transform:uppercase; }
.reservation-money strong { margin-top:3px; color:var(--green); font-size:12px; }
.reservation-money small { margin-top:3px; color:var(--muted); font-size:8px; }
.reservation-actions { display:flex; flex-wrap:wrap; gap:6px; justify-content:flex-end; }
.reservation-actions button { min-height:30px; padding:0 9px; border:1px solid var(--line); border-radius:7px; color:var(--green); background:#fff; font-size:8px; font-weight:800; cursor:pointer; }
.reservation-lines-field { padding:0; border:0; background:transparent; }
#reservationLines { display:grid; gap:8px; }
.reservation-line { display:grid; grid-template-columns:minmax(220px,1.8fr) 100px 140px 34px; align-items:end; gap:9px; padding:11px; border:1px solid var(--line); border-radius:11px; background:#fbfcfb; }
.reservation-line .field { margin:0; }
.reservation-line.stock-invalid { border-color:#e8a9a5; background:#fff5f4; }
.reservation-preview { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; padding:12px; border:1px solid #dce6df; border-radius:10px; background:#f5f8f6; }
.reservation-preview span { color:var(--muted); font-size:9px; }
.reservation-preview strong { display:block; margin-top:4px; color:var(--green); font-size:12px; }
.commercial-followups-panel .panel-heading select { height: 36px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: #5f6d66; font-size: 9px; }
.client-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.person-card { padding: 19px; border: 1px solid var(--line); border-radius: 15px; background: #fff; }
.person-head { display: flex; align-items: center; gap: 11px; }
.person-head .avatar { width: 42px; height: 42px; border-radius: 12px; }
.person-head h3 { margin: 0; font: 800 13px "Manrope"; }
.person-head p { margin: 3px 0 0; color: var(--muted); font-size: 9px; }
.person-card dl { margin: 16px 0 0; padding-top: 14px; border-top: 1px solid var(--line); display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.person-card dt { color: #959e9a; font-size: 8px; text-transform: uppercase; }
.person-card dd { margin: 4px 0 0; font-size: 10px; font-weight: 700; }
.cash-layout { grid-template-columns: minmax(0, 1.5fr) minmax(280px, .7fr); }
.treasury-forecast-panel { margin-bottom: 18px; }
#treasuryForecastContent { padding: 0 20px 18px; }
.treasury-forecast-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; margin-bottom:12px; }
.treasury-forecast-summary>span { padding:12px; border:1px solid #dce6df; border-radius:10px; background:#f7faf8; }
.treasury-forecast-summary small,.treasury-forecast-summary strong { display:block; }
.treasury-forecast-summary small { color:var(--muted); font-size:8px; }
.treasury-forecast-summary strong { margin-top:5px; color:var(--green); font-size:13px; }
.treasury-forecast-summary.risk>span:last-child { border-color:#e6aaa6; background:#fff2f1; }
.treasury-forecast-summary.watch>span:last-child { border-color:#e6cd99; background:#fff9ed; }
.treasury-risk-banner { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:12px; padding:11px 13px; border-left:4px solid #bd4d48; border-radius:9px; color:#8f3935; background:#fff3f2; }
.treasury-risk-banner strong { font-size:10px; }
.treasury-risk-banner span { color:#8d615e; font-size:8px; }
.treasury-event-list { display:grid; gap:7px; }
.treasury-event { display:grid; grid-template-columns:90px minmax(180px,1fr) 130px 130px; align-items:center; gap:12px; padding:10px 12px; border:1px solid var(--line); border-left:4px solid #bd645f; border-radius:9px; background:#fffafa; }
.treasury-event.income { border-left-color:#438064; background:#f6faf7; }
.treasury-event time { color:var(--muted); font-size:8px; font-weight:700; }
.treasury-event div strong,.treasury-event div small { display:block; }
.treasury-event div strong { color:var(--green); font-size:9px; }
.treasury-event div small { margin-top:3px; color:var(--muted); font-size:8px; }
.treasury-event>strong { color:#a84641; text-align:right; font-size:10px; }
.treasury-event.income>strong { color:#287153; }
.treasury-event>span { color:var(--muted); text-align:right; font-size:8px; }
.expense-budget-panel { margin-bottom:18px; }
#expenseBudgetList { padding:0 20px 18px; display:grid; gap:8px; }
.expense-budget-item { display:grid; grid-template-columns:minmax(180px,.9fr) minmax(220px,1.1fr) 130px 165px; align-items:center; gap:15px; padding:12px 13px; border:1px solid #dce6df; border-left:4px solid #4f8069; border-radius:10px; background:#fbfcfb; }
.expense-budget-item.warning { border-color:#ead5a8; border-left-color:#d49a3d; background:#fffaf1; }
.expense-budget-item.exceeded { border-color:#efc5c2; border-left-color:#c4524d; background:#fff6f5; }
.expense-budget-item.paused { border-left-color:#9ca9a2; opacity:.72; }
.expense-budget-item span,.expense-budget-item strong,.expense-budget-item small { display:block; }
.expense-budget-item>div:first-child>span { color:#47745e; font-size:7px; font-weight:900; letter-spacing:.6px; }
.expense-budget-item.warning>div:first-child>span { color:#99671e; }
.expense-budget-item.exceeded>div:first-child>span { color:#aa4540; }
.expense-budget-item>div:first-child>strong { margin-top:3px; color:var(--green); font-size:10px; }
.expense-budget-item>div:first-child>small { margin-top:3px; color:var(--muted); font-size:8px; }
.expense-budget-progress>div { height:8px; overflow:hidden; border-radius:999px; background:#e8eeea; }
.expense-budget-progress i { display:block; height:100%; border-radius:inherit; background:#4f8069; }
.expense-budget-item.warning .expense-budget-progress i { background:#d49a3d; }
.expense-budget-item.exceeded .expense-budget-progress i { background:#c4524d; }
.expense-budget-progress small { margin-top:5px; color:var(--muted); font-size:8px; }
.expense-budget-money { text-align:right; }
.expense-budget-money span { color:var(--muted); font-size:7px; text-transform:uppercase; }
.expense-budget-money strong { margin-top:3px; color:var(--green); font-size:12px; }
.expense-budget-money small { margin-top:3px; color:var(--muted); font-size:8px; }
.expense-budget-actions { display:flex; justify-content:flex-end; gap:6px; }
.expense-budget-actions button { min-height:30px; padding:0 9px; border:1px solid var(--line); border-radius:7px; color:var(--green); background:#fff; font-size:8px; font-weight:800; cursor:pointer; }
.expense-budget-impact { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; padding:11px; border:1px solid #cfe0d6; border-radius:10px; background:#f4f9f6; }
.expense-budget-impact>div { padding:8px; border-radius:8px; background:#fff; }
.expense-budget-impact span,.expense-budget-impact strong { display:block; }
.expense-budget-impact span { color:var(--muted); font-size:8px; }
.expense-budget-impact strong { margin-top:4px; color:var(--green); font-size:11px; }
.expense-budget-impact.warning { border-color:#e4c98f; background:#fff9ed; }
.expense-budget-impact.exceeded { border-color:#e9b3af; background:#fff3f2; }
.expense-budget-impact.exceeded>div:last-child strong { color:#b24742; }
.expense-budget-impact.no-budget { display:block; color:#76591e; border-color:#e4cf9f; background:#fff9ed; }
.expense-budget-impact.no-budget strong,.expense-budget-impact.no-budget span { display:block; }
.expense-budget-impact.no-budget strong { font-size:10px; }
.expense-budget-impact.no-budget span { margin-top:4px; color:#8a7752; font-size:8px; }
#expenseBudgetOverrideField { padding:12px; border-left:4px solid #c4524d; border-radius:9px; background:#fff4f3; }
#expenseBudgetOverrideField small { color:#9a5b57; font-size:8px; }
.budget-overrun-register { margin:0 20px 18px; padding-top:15px; border-top:1px solid var(--line); }
.budget-overrun-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
.budget-overrun-heading strong { color:var(--green); font-size:10px; }
.budget-overrun-heading span { color:var(--muted); font-size:8px; }
#budgetOverrunList { display:grid; gap:7px; }
.budget-overrun-item { display:grid; grid-template-columns:minmax(210px,1fr) minmax(210px,1fr) auto; align-items:center; gap:14px; padding:10px 12px; border:1px solid #e9c5c2; border-left:4px solid #c4524d; border-radius:9px; background:#fff7f6; }
.budget-overrun-item.approved { border-color:#c9ded1; border-left-color:#4d8269; background:#f4f9f6; }
.budget-overrun-item span,.budget-overrun-item strong,.budget-overrun-item small { display:block; }
.budget-overrun-item span { color:#ad4a45; font-size:7px; font-weight:900; }
.budget-overrun-item.approved span { color:#39725a; }
.budget-overrun-item strong { margin-top:3px; color:var(--green); font-size:9px; }
.budget-overrun-item small { margin-top:3px; color:var(--muted); font-size:8px; line-height:1.4; }
.expense-control-panel { margin-bottom: 18px; }
.cash-advance-panel { margin-bottom: 18px; }
#cashAdvanceList { padding: 0 20px 18px; display: grid; gap: 8px; }
.cash-advance-item { display: grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:16px; padding:12px 13px; border:1px solid #dce6df; border-left:4px solid #67917e; border-radius:10px; background:#fbfcfb; }
.cash-advance-item.overdue { border-color:#efc5c2; border-left-color:#c4524d; background:#fff6f5; }
.cash-advance-item.settled { border-left-color:#8aa395; background:#f7faf8; opacity:.88; }
.cash-advance-main span,.cash-advance-main strong,.cash-advance-main small,.cash-advance-amount span,.cash-advance-amount strong,.cash-advance-amount small { display:block; }
.cash-advance-main span { color:#8c6426; font-size:7px; font-weight:900; letter-spacing:.7px; }
.cash-advance-main strong { margin-top:3px; font-size:10px; }
.cash-advance-main small,.cash-advance-amount small { margin-top:3px; color:var(--muted); font-size:8px; line-height:1.4; }
.cash-advance-amount { min-width:145px; text-align:right; }
.cash-advance-amount span { color:var(--muted); font-size:7px; text-transform:uppercase; }
.cash-advance-amount strong { margin-top:3px; color:var(--green); font-size:12px; }
.cash-advance-actions { display:flex; gap:6px; }
.cash-advance-actions button { min-height:30px; padding:0 9px; border:1px solid var(--line); border-radius:7px; color:var(--green); background:#fff; font-size:8px; font-weight:800; cursor:pointer; }
.cash-advance-settlement-preview { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-top:12px; padding:12px; border:1px solid #dce6df; border-radius:10px; background:#f5f8f6; }
.cash-advance-settlement-preview span { color:var(--muted); font-size:9px; }
.cash-advance-settlement-preview strong { display:block; margin-top:4px; color:var(--green); font-size:12px; }
#expenseControlList { padding: 0 20px 18px; display: grid; gap: 8px; }
.expense-control-item { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 11px 13px; border: 1px solid #ead8b5; border-left: 4px solid #d49a3d; border-radius: 10px; background: #fffbf3; }
.expense-control-item.critical { border-color: #efcfcc; border-left-color: #c95a55; background: #fff7f6; }
.expense-control-item span, .expense-control-item strong, .expense-control-item small { display: block; }
.expense-control-item span { color: #9a6523; font-size: 7px; font-weight: 900; letter-spacing: .6px; }
.expense-control-item strong { margin-top: 3px; font-size: 10px; }
.expense-control-item small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.expense-control-actions { display: flex; gap: 6px; }
.expense-control-actions button { min-height: 30px; padding: 0 9px; border: 1px solid var(--line); border-radius: 7px; color: var(--green); background: #fff; font-size: 8px; font-weight: 800; cursor: pointer; }
.expense-proof, .expense-approval { display: inline-flex; padding: 4px 7px; border-radius: 999px; font-size: 7px; font-weight: 800; }
.expense-proof.ok, .expense-approval.approved { color: #2d6d55; background: #e9f6ef; }
.expense-proof.missing, .expense-approval.pending { color: #a54c47; background: #fdecea; }
.payment-breakdown { padding: 4px 20px 20px; }
.payment-row { padding: 14px 0; border-bottom: 1px solid var(--line); }
.payment-row:last-child { border-bottom: 0; }
.payment-row > div:first-child { margin-bottom: 8px; display: flex; justify-content: space-between; font-size: 10px; }
.payment-row span { color: var(--muted); }
.payment-progress { height: 7px; border-radius: 10px; background: #edf0ee; overflow: hidden; }
.payment-progress i { height: 100%; display: block; border-radius: inherit; background: var(--green-2); }
.receipt-button, .pay-button { padding: 5px 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--green-2); background: #fff; font-size: 8px; font-weight: 700; }
.reminder-button { padding: 5px 8px; border: 1px solid #e9bd74; border-radius: 7px; color: #8a5a12; background: #fff8e9; font-size: 8px; font-weight: 700; }
.whatsapp-button, .sms-button { padding: 5px 8px; border-radius: 7px; font-size: 8px; font-weight: 800; }
.whatsapp-button { border: 1px solid #8dd5a6; color: #176b38; background: #eaf8ef; }
.sms-button { border: 1px solid #9fc6e2; color: #245f87; background: #edf7fd; }
.trip-grid { margin-bottom: 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.trip-card { border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: var(--shadow); overflow: hidden; }
.trip-card-head { padding: 18px; display: flex; justify-content: space-between; gap: 15px; background: linear-gradient(135deg, #f7faf8, #edf4ef); }
.trip-card-head h3 { margin: 0; font: 800 15px "Manrope"; }
.trip-card-head p { margin: 5px 0 0; color: var(--muted); font-size: 9px; }
.trip-status { height: fit-content; padding: 5px 8px; border-radius: 20px; color: #2c7258; background: #e8f5ee; font-size: 8px; font-weight: 800; }
.trip-status.closed { color: #6f7874; background: #e9ecea; }
.trip-metrics { padding: 15px 18px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.trip-metrics-four { grid-template-columns: repeat(4, 1fr); }
.trip-metric span, .trip-metric strong { display: block; }
.trip-metric span { color: #929b97; font-size: 8px; text-transform: uppercase; }
.trip-metric strong { margin-top: 4px; font-size: 11px; }
.trip-stock { padding: 0 18px 14px; color: var(--muted); font-size: 9px; }
.trip-stock strong { color: var(--ink); }
.trip-preparation-state { margin: 0 18px 12px; padding: 9px 11px; border-left: 3px solid #d49a3d; border-radius: 7px; color: #815b20; background: #fff8e9; }
.trip-preparation-state.ready { border-left-color: #3f8a68; color: #28684e; background: #edf8f1; }
.trip-preparation-state strong, .trip-preparation-state span { display: block; }
.trip-preparation-state strong { font-size: 9px; }
.trip-preparation-state span { margin-top: 2px; font-size: 8px; }
.trip-actions { padding: 12px 18px; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 7px; background: #fbfcfb; }
.trip-actions button { min-height: 31px; padding: 0 9px; border: 1px solid var(--line); border-radius: 8px; color: var(--green-2); background: #fff; font-size: 8px; font-weight: 700; }
.trip-actions button.main { border-color: var(--green); color: #fff; background: var(--green); }
.trip-actions button.warning { color: #9d6b24; background: #fff8ec; }
.vehicle-sales-panel { margin-top: 18px; }
.field-mode-panel{margin-bottom:18px}.field-mode-grid{padding:0 20px 18px;display:grid;gap:10px}.field-trip-card{padding:14px;border:1px solid #dce6df;border-radius:13px;background:linear-gradient(135deg,#f8fbf9,#fff)}.field-trip-card>div:first-child span,.field-trip-card>div:first-child strong,.field-trip-card>div:first-child small{display:block}.field-trip-card>div:first-child span{color:var(--green-2);font-size:8px;font-weight:900;letter-spacing:.6px;text-transform:uppercase}.field-trip-card>div:first-child strong{margin-top:4px;color:var(--green);font-size:15px}.field-trip-card>div:first-child small{margin-top:4px;color:var(--muted);font-size:9px}.field-trip-actions{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.field-trip-actions button{min-height:48px;border:1px solid var(--line);border-radius:11px;color:var(--green);background:#fff;font-size:10px;font-weight:900;cursor:pointer}.field-trip-actions button.main{color:#fff;background:var(--green)}.field-mode-empty{padding:0 20px 18px;display:grid;gap:8px}.field-mode-empty strong,.field-mode-empty span{display:block}.field-mode-empty strong{color:var(--green);font-size:12px}.field-mode-empty span{color:var(--muted);font-size:9px}
.vehicle-book-panel { margin: 0 0 18px; }
.vehicle-book-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.vehicle-profile-summary { padding: 0 20px 18px; display: grid; grid-template-columns: 1.35fr repeat(3, 1fr); gap: 9px; }
.vehicle-identity, .vehicle-deadline { padding: 13px; border: 1px solid var(--line); border-radius: 11px; background: #fbfcfb; }
.vehicle-identity { display: flex; align-items: center; gap: 11px; }
.vehicle-identity-icon { width: 39px; height: 39px; display: grid; flex: none; place-items: center; border-radius: 10px; color: var(--green); background: #edf5f0; }
.vehicle-identity-icon svg { width: 20px; height: 20px; }
.vehicle-identity strong, .vehicle-identity span, .vehicle-identity small, .vehicle-deadline span, .vehicle-deadline strong, .vehicle-deadline small { display: block; }
.vehicle-identity strong { font-size: 11px; }
.vehicle-identity span, .vehicle-identity small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.vehicle-deadline span { color: var(--muted); font-size: 7px; font-weight: 800; text-transform: uppercase; }
.vehicle-deadline strong { margin-top: 5px; color: var(--green); font-size: 10px; }
.vehicle-deadline small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.vehicle-deadline.soon { border-color: #ecd29f; background: #fffaf0; }
.vehicle-deadline.soon strong { color: #95671f; }
.vehicle-deadline.overdue { border-color: #efc0bd; background: #fff5f4; }
.vehicle-deadline.overdue strong { color: #b34f4a; }
.vehicle-deadline.missing strong { color: #7b8580; }
.vehicle-maintenance-history { border-top: 1px solid var(--line); }
.vehicle-maintenance-title, .vehicle-maintenance-history article { padding: 11px 20px; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.vehicle-maintenance-title { background: #fafcfa; }
.vehicle-maintenance-title strong { font-size: 9px; }
.vehicle-maintenance-title span { color: var(--muted); font-size: 8px; }
.vehicle-maintenance-history article { border-top: 1px solid #edf1ee; }
.vehicle-maintenance-history article span, .vehicle-maintenance-history article strong, .vehicle-maintenance-history article small { display: block; }
.vehicle-maintenance-history article span { color: var(--green); font-size: 7px; font-weight: 800; text-transform: uppercase; }
.vehicle-maintenance-history article strong { margin-top: 2px; font-size: 9px; }
.vehicle-maintenance-history article small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.vehicle-maintenance-history article > div:last-child { text-align: right; }
.reconciliation-panel { margin-top: 18px; box-shadow: none; }
.reconciliation-panel .panel-header select { min-width: 190px; }
.reconciliation-heading-actions { display: flex; align-items: center; gap: 8px; }
.reconciliation-responsibility { margin: 0 20px 14px; padding: 10px 12px; display: flex; flex-wrap: wrap; gap: 8px 18px; border: 1px solid #dce6df; border-radius: 10px; color: #68736e; background: #f8faf9; font-size: 9px; }
.reconciliation-responsibility strong { color: var(--green); }
.reconciliation-summary { padding: 6px 20px 18px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.reconciliation-metric { padding: 13px; border: 1px solid var(--line); border-radius: 11px; background: #fbfcfb; }
.reconciliation-metric span, .reconciliation-metric strong, .reconciliation-metric small { display: block; }
.reconciliation-metric span { color: #8e9893; font-size: 8px; text-transform: uppercase; letter-spacing: .6px; }
.reconciliation-metric strong { margin-top: 5px; font: 800 14px "Manrope"; }
.reconciliation-metric small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.reconciliation-alert { margin: 0 20px 16px; padding: 12px 14px; border-radius: 10px; color: #8c5b1d; background: #fff5e6; font-size: 10px; line-height: 1.5; }
.reconciliation-alert.ok { color: #2d6d55; background: #eaf6ef; }
.reconciliation-table { border-top: 1px solid var(--line); }
.reconciliation-table table { min-width: 940px; }
.variance-zero { color: #2d7a5e; font-weight: 800; }
.variance-warning { color: var(--red); font-weight: 800; }
.trip-regularization-panel { margin: 0 0 18px; }
#tripRegularizationList { padding: 0 20px 18px; display: grid; gap: 9px; }
.trip-regularization-item { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 16px; padding: 13px 14px; border: 1px solid #dce6df; border-left: 4px solid #769b89; border-radius: 11px; background: #fbfcfb; }
.trip-regularization-item.critical { border-left-color: #c95a55; background: #fff8f7; }
.trip-regularization-item.warning { border-left-color: #d49a3d; background: #fffbf3; }
.trip-regularization-item > div:first-child span, .trip-regularization-item > div:first-child strong, .trip-regularization-item > div:first-child small { display: block; }
.trip-regularization-item > div:first-child span { color: #8a5a12; font-size: 7px; font-weight: 900; letter-spacing: .7px; }
.trip-regularization-item > div:first-child strong { margin-top: 3px; font-size: 11px; }
.trip-regularization-item > div:first-child small { margin-top: 4px; color: var(--muted); font-size: 8px; line-height: 1.45; }
.trip-regularization-age { min-width: 84px; text-align: center; }
.trip-regularization-age span, .trip-regularization-age strong { display: block; }
.trip-regularization-age span { color: var(--muted); font-size: 7px; text-transform: uppercase; }
.trip-regularization-age strong { margin-top: 3px; color: var(--green); font-size: 10px; }
.trip-regularization-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.trip-regularization-actions button { min-height: 30px; padding: 0 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--green); background: #fff; font-size: 8px; font-weight: 800; cursor: pointer; }
.trip-preparation-checklist { display: grid; gap: 8px; margin-bottom: 14px; }
.trip-preparation-checklist label { display: flex; align-items: flex-start; gap: 10px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfb; cursor: pointer; }
.trip-preparation-checklist input { width: 18px; height: 18px; margin-top: 1px; accent-color: var(--green); }
.trip-preparation-checklist span, .trip-preparation-checklist strong, .trip-preparation-checklist small { display: block; }
.trip-preparation-checklist strong { font-size: 10px; }
.trip-preparation-checklist small { margin-top: 3px; color: var(--muted); font-size: 8px; line-height: 1.4; }
@media (max-width: 900px) {
  .reconciliation-summary { grid-template-columns: repeat(2, 1fr); }
  .vehicle-profile-summary { grid-template-columns: repeat(2, 1fr); }
  .vehicle-identity { grid-column: 1 / -1; }
  .trip-regularization-item { grid-template-columns: minmax(0, 1fr) auto; }
  .trip-regularization-actions { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 620px) {
  .reconciliation-summary { grid-template-columns: 1fr; }
  .reconciliation-panel .panel-header { flex-direction: column; }
  .reconciliation-panel .panel-header select { width: 100%; }
  .reconciliation-heading-actions { width: 100%; align-items: stretch; flex-direction: column; }
  .reconciliation-heading-actions button { width: 100%; }
  .trip-regularization-panel .panel-header { align-items: stretch; flex-direction: column; }
  .trip-regularization-panel .panel-header button { width: 100%; }
  .trip-regularization-item { grid-template-columns: 1fr; }
  .trip-regularization-age { text-align: left; }
  .trip-regularization-actions { grid-column: auto; }
  .trip-regularization-actions button { flex: 1 1 130px; }
  .trip-metrics-four { grid-template-columns: repeat(2, 1fr); }
  .vehicle-book-panel .panel-header { align-items: stretch; flex-direction: column; }
  .vehicle-book-actions { flex-direction: column; }
  .vehicle-book-actions button { width: 100%; }
  .vehicle-profile-summary { grid-template-columns: 1fr; }
  .vehicle-identity { grid-column: auto; }
  .vehicle-maintenance-history article { align-items: flex-start; flex-direction: column; }
  .vehicle-maintenance-history article > div:last-child { text-align: left; }
}
.money-in { color: #2d7a5e; font-weight: 800; }
.money-out { color: var(--red); font-weight: 800; }
.remittance-badge { padding: 4px 7px; border-radius: 12px; color: #2d7a5e; background: #e9f6f0; font-size: 8px; font-weight: 700; }
.audit-user { display: flex; align-items: center; gap: 8px; }
.audit-user .avatar { width: 28px; height: 28px; border-radius: 8px; font-size: 8px; }
.audit-detail { max-width: 420px; overflow: hidden; text-overflow: ellipsis; white-space: normal; line-height: 1.45; }
.audit-category { display: inline-flex; padding: 4px 7px; border-radius: 12px; color: var(--green-2); background: #edf4ef; font-size: 8px; font-weight: 800; }
.role-guide { margin-bottom: 16px; display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.role-card { padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.role-card strong { display: block; font: 800 11px "Manrope"; }
.role-card p { margin: 5px 0 0; color: var(--muted); font-size: 8px; line-height: 1.45; }
.employee-role-select { min-width: 130px; height: 34px; padding: 0 8px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-size: 9px; }
.employee-toggle { padding: 5px 8px; border: 1px solid var(--line); border-radius: 8px; color: #2d7a5e; background: #eef7f2; font-size: 8px; font-weight: 800; }
.employee-toggle.inactive { color: var(--red); background: #fceceb; }
.permission-hidden { display: none!important; }
.setup-steps { display: grid; gap: 10px; }
.setup-steps p { margin: 0; padding: 11px 12px; border-radius: 9px; color: #56615c; background: var(--soft); font-size: 10px; line-height: 1.5; }
.setup-steps p strong:first-child { color: var(--green-2); }
.setup-steps small { color: var(--muted); font-size: 9px; line-height: 1.5; }
.settings-panel { max-width: 820px; padding: 4px; box-shadow: none; }
.settings-panel form { padding: 22px; }
.settings-section-title { margin-bottom: 18px; display: flex; align-items: center; gap: 11px; }
.settings-section-title > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; color: var(--green); background: var(--lime); font: 800 9px "Manrope"; }
.settings-section-title strong, .settings-section-title small { display: block; }
.settings-section-title strong { font: 800 13px "Manrope"; }
.settings-section-title small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.document-format-title { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--line); }
.format-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.format-grid > label { min-width: 0; display: grid; gap: 7px; color: #65716b; font-size: 9px; font-weight: 700; }
.format-grid select, .format-grid > label > input { width: 100%; height: 39px; padding: 0 10px; border: 1px solid #dfe4e0; border-radius: 8px; background: #fff; }
.format-grid input[type="color"] { padding: 4px; cursor: pointer; }
.range-control { height: 39px; padding: 0 9px; border: 1px solid #dfe4e0; border-radius: 8px; display: flex; align-items: center; gap: 8px; background: #fff; }
.range-control input { min-width: 0; flex: 1; accent-color: var(--green-2); }
.range-control output { min-width: 36px; color: var(--green-2); text-align: right; font-size: 9px; font-weight: 800; }
.format-preview-note { margin-top: 14px; padding: 10px 12px; border-radius: 8px; color: #617069; background: #f2f6f3; font-size: 9px; }
.backup-panel { margin-top: 18px; max-width: 1000px; padding: 22px; }
.multi-shop-panel{margin-top:18px;max-width:1000px;padding:22px}.multi-shop-status{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:14px;border:1px solid #dce6df;border-radius:12px;background:#f8faf9}.multi-shop-status span,.multi-shop-status strong,.multi-shop-status small{display:block}.multi-shop-status span{color:var(--muted);font-size:8px;text-transform:uppercase;font-weight:900}.multi-shop-status strong{margin-top:4px;color:var(--green);font-size:15px}.multi-shop-status small{margin-top:3px;color:var(--muted);font-size:8px}.multi-shop-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.multi-shop-checks article{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}.multi-shop-checks article i{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;color:#26704e;background:#eaf7ef;font-style:normal;font-weight:900}.multi-shop-checks article.todo i{color:#9a631b;background:#fff3df}.multi-shop-checks strong,.multi-shop-checks span{display:block}.multi-shop-checks strong{font-size:10px;color:var(--ink)}.multi-shop-checks span{margin-top:2px;color:var(--muted);font-size:8px}.multi-shop-note{margin-top:10px;padding:11px 12px;border-radius:10px;color:#617069;background:#f2f6f3;font-size:9px;line-height:1.45}.multi-shop-note strong{color:var(--green)}
.editor-panel{margin-top:18px;max-width:1000px;padding:22px}#editorDashboard{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.editor-kpi{padding:12px;border:1px solid var(--line);border-radius:11px;background:#f8faf8}.editor-kpi span,.editor-kpi strong,.editor-kpi small{display:block}.editor-kpi span{color:var(--muted);font-size:8px;text-transform:uppercase;font-weight:900}.editor-kpi strong{margin-top:5px;color:var(--green);font-size:18px}.editor-kpi small{margin-top:3px;color:#8c9691;font-size:8px}.editor-kpi.warning{border-color:#ecd5a5;background:#fff8e9}.editor-kpi.success{border-color:#cce7d4;background:#f0faf3}.editor-kpi.money{border-color:#d1ead8;background:#eef8f1}.editor-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}#editorClientList{display:grid;gap:9px}.editor-client-card{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(150px,.7fr) minmax(150px,.6fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-left:4px solid #7aa58e;border-radius:12px;background:#fff}.editor-client-card.warning{border-left-color:#d39b3d;background:#fffaf1}.editor-client-card.critical{border-left-color:#c4524d;background:#fff6f5}.editor-client-main span,.editor-client-main strong,.editor-client-main small,.editor-client-license span,.editor-client-license strong,.editor-client-license small,.editor-client-setup span,.editor-client-setup strong,.editor-client-setup small{display:block}.editor-client-main span,.editor-client-license span,.editor-client-setup span{color:var(--green-2);font-size:7px;font-weight:900;text-transform:uppercase}.editor-client-main strong,.editor-client-license strong,.editor-client-setup strong{margin-top:3px;color:var(--green);font-size:11px}.editor-client-main small,.editor-client-license small,.editor-client-setup small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.35}.editor-client-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.editor-client-actions button{min-height:30px;padding:0 8px;border:1px solid var(--line);border-radius:7px;color:var(--green);background:#fff;font-size:8px;font-weight:800;cursor:pointer}.editor-client-actions button:hover{border-color:#b9c7bd;background:#f8faf8}.editor-license-field>div{display:grid;grid-template-columns:1fr auto;gap:7px}.editor-license-field input{min-width:0}.editor-license-field button{height:39px;padding:0 11px}.editor-step-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.editor-step-picker label{padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:9px;font-weight:800;color:#65716b}
.production-panel,.real-test-panel{margin-top:18px;max-width:1000px;padding:22px}.production-score,.real-test-score{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:14px;border:1px solid #ead2a2;border-radius:12px;background:#fff8e9}.production-score.ready{border-color:#cce7d4;background:#f0faf3}.production-score span,.production-score strong,.production-score small,.real-test-score span,.real-test-score strong,.real-test-score small{display:block}.production-score span,.real-test-score span{color:var(--muted);font-size:8px;text-transform:uppercase;font-weight:900}.production-score strong,.real-test-score strong{margin-top:4px;color:var(--green);font-size:15px}.production-score small,.real-test-score small{margin-top:3px;color:var(--muted);font-size:8px}.production-actions{display:flex;flex-wrap:wrap;gap:7px}.production-checklist,.real-test-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.production-checklist button,.real-test-list button{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.production-checklist button:hover,.real-test-list button:hover{border-color:#a9beb1;background:#fbfdfb}.production-checklist i,.real-test-list i{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;color:#26704e;background:#eaf7ef;font-style:normal;font-weight:900}.production-checklist .todo i,.real-test-list .todo i{color:#9a631b;background:#fff3df}.production-checklist strong,.production-checklist small,.real-test-list strong,.real-test-list small{display:block}.production-checklist strong,.real-test-list strong{color:var(--ink);font-size:10px}.production-checklist small,.real-test-list small{margin-top:2px;color:var(--muted);font-size:8px}
.connection-diagnostic-panel { margin-bottom: 18px; padding: 16px; border: 1px solid #dce6df; border-radius: 14px; background: linear-gradient(135deg, #f8fbf9, #fff); }
.connection-diagnostic-head { display: flex; justify-content: space-between; align-items: start; gap: 14px; margin-bottom: 12px; }
.connection-diagnostic-head strong { color: var(--green); font-size: 13px; }
.connection-diagnostic-head p { margin: 4px 0 0; color: var(--muted); font-size: 9px; line-height: 1.45; }
.connection-diagnostic-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 9px; }
.connection-diagnostic-card { padding: 11px 12px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.connection-diagnostic-card span, .connection-diagnostic-card strong, .connection-diagnostic-card small { display: block; }
.connection-diagnostic-card span { color: #66736c; font-size: 8px; font-weight: 900; letter-spacing: .5px; text-transform: uppercase; }
.connection-diagnostic-card strong { margin-top: 5px; overflow: hidden; color: var(--green); font: 850 13px "Manrope"; text-overflow: ellipsis; white-space: nowrap; }
.connection-diagnostic-card small { margin-top: 4px; color: var(--muted); font-size: 7px; line-height: 1.35; }
.connection-diagnostic-card.success { background: #f1faf4; border-color: #d0ead7; }
.connection-diagnostic-card.warning { background: #fff8e9; border-color: #ecd5a5; }
.connection-diagnostic-card.info { background: #eef7fb; border-color: #c9e0ec; }
.connection-diagnostic-advice { margin-top: 10px; padding: 11px 12px; border-radius: 11px; display: flex; gap: 8px; align-items: start; background: #eef7fb; }
.connection-diagnostic-advice strong { flex: none; color: #276386; font-size: 9px; text-transform: uppercase; letter-spacing: .5px; }
.connection-diagnostic-advice span { color: #5d6963; font-size: 9px; line-height: 1.45; }
.connection-diagnostic-advice.online { background: #edf8f1; }
.connection-diagnostic-advice.online strong { color: #26704e; }
.connection-diagnostic-advice.offline, .connection-diagnostic-advice.login { background: #fff3df; }
.connection-diagnostic-advice.offline strong, .connection-diagnostic-advice.login strong { color: #8f5f1e; }
.backup-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.backup-card { min-height: 200px; padding: 17px; border: 1px solid var(--line); border-radius: 13px; display: flex; flex-direction: column; align-items: flex-start; background: #fff; }
.backup-icon { width: 37px; height: 37px; display: grid; place-items: center; margin-bottom: 13px; border-radius: 10px; color: var(--green); background: #eaf3ed; }
.backup-icon.restore { color: #a05d2b; background: #fff0e5; }
.backup-icon.cloud { color: #40728c; background: #eaf4f8; }
.backup-icon svg { width: 17px; }
.backup-card strong { font: 800 12px "Manrope"; }
.backup-card p { min-height: 48px; margin: 6px 0 16px; color: var(--muted); font-size: 9px; line-height: 1.5; }
.backup-card button, .backup-card label { width: 100%; margin-top: auto; }
.backup-history { margin-top: 15px; padding: 14px 16px; border-radius: 11px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; background: #f7f9f7; }
.backup-history span, .backup-history strong { display: block; }
.backup-history span { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .5px; }
.backup-history strong { margin-top: 4px; font-size: 10px; }
@media (max-width: 900px) {
  .format-grid { grid-template-columns: repeat(2, 1fr); }
  .connection-diagnostic-summary { grid-template-columns: repeat(2, 1fr); }
  #securityOwnerSummary,.multi-shop-checks,.production-checklist,.real-test-list,#editorDashboard{grid-template-columns:repeat(2,1fr)}
  .editor-client-card{grid-template-columns:1fr 1fr}
  .field-trip-actions{grid-template-columns:repeat(2,1fr)}
  .backup-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .editor-screen { padding: 18px 10px; align-items: start; }
  .editor-auth-card, .editor-admin-card { padding: 30px 22px; border-radius: 22px; }
  .editor-admin-card{padding:0}.editor-admin-head,.editor-admin-section{padding:20px 16px;border-radius:18px}
  .editor-admin-grid { grid-template-columns: 1fr; }
  .editor-admin-head .secondary-button { position: static; width: 100%; margin-top: 12px; }
  .format-grid { grid-template-columns: 1fr; }
  .connection-diagnostic-head, .connection-diagnostic-advice { align-items: stretch; flex-direction: column; }
  .connection-diagnostic-head button { width: 100%; }
  .connection-diagnostic-summary { grid-template-columns: 1fr; }
  #securityOwnerSummary,.multi-shop-checks,.production-checklist,.real-test-list,.field-trip-actions,#editorDashboard,.editor-client-card,.editor-step-picker{grid-template-columns:1fr}
  .editor-code-row,.editor-subscription-controls{grid-template-columns:1fr}
  .editor-license-field>div{grid-template-columns:1fr}
  .multi-shop-status,.production-score,.real-test-score{align-items:stretch;flex-direction:column}.multi-shop-status button,.production-actions button{width:100%}
  .editor-actions button,.editor-client-actions button{width:100%}
  .backup-history { grid-template-columns: 1fr; }
}
@media (max-width: 1180px) {
  .role-guide { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 620px) {
  .role-guide { grid-template-columns: 1fr; }
}
.pricing-help { margin-bottom: 16px; padding: 14px 17px; border: 1px solid #dce8e1; border-radius: 13px; display: flex; align-items: center; gap: 12px; background: #f0f6f2; }
.pricing-help-icon { width: 28px; height: 28px; display: grid; place-items: center; flex: none; border-radius: 50%; color: #fff; background: var(--green-2); font: 800 12px "Manrope"; }
.pricing-help strong { font-size: 11px; }
.pricing-help p { margin: 3px 0 0; color: #6d7973; font-size: 10px; line-height: 1.5; }
.pricing-help button { margin-left: auto; border: 0; color: var(--green-2); background: transparent; white-space: nowrap; font-size: 9px; font-weight: 800; }
.pricing-settings { margin-bottom: 16px; box-shadow: none; }
.fee-list { padding: 0 20px 15px; display: grid; gap: 8px; }
.fee-row { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(140px, .6fr) 34px; gap: 9px; align-items: center; }
.fee-row input, .fee-row select, .pricing-options input, .pricing-options select, .pricing-table input { height: 38px; padding: 0 10px; border: 1px solid #dfe4e0; border-radius: 8px; outline: 0; color: var(--ink); background: #fff; }
.fee-row input:focus, .fee-row select:focus, .pricing-options input:focus, .pricing-table input:focus { border-color: var(--green-2); box-shadow: 0 0 0 3px rgba(43,104,84,.08); }
.remove-fee, .remove-pricing-line { width: 32px; height: 32px; border: 0; border-radius: 8px; color: var(--red); background: #fceceb; }
.remove-fee svg, .remove-pricing-line svg { width: 14px; }
.pricing-options { padding: 15px 20px; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; align-items: end; gap: 12px; background: #fbfcfb; }
.pricing-options label { min-width: 155px; display: grid; gap: 6px; color: #65716b; font-size: 9px; font-weight: 700; }
.pricing-summary { margin-top: 0; }
.pricing-table-panel { overflow: visible; }
.pricing-table { min-width: 1080px; }
.pricing-table td { padding: 10px 8px; }
.pricing-table th { padding: 12px 8px; }
.pricing-table input { width: 100%; min-width: 72px; height: 34px; font-size: 10px; }
.pricing-table .pricing-name { min-width: 180px; }
.pricing-table .pricing-ref { min-width: 100px; }
.pricing-piece { display: grid; gap: 5px; }
.pricing-piece input:first-child { font-weight: 700; }
.calculated-cell strong, .calculated-cell small { display: block; }
.calculated-cell small { margin-top: 3px; color: #98a19d; font-size: 8px; }
.recommended-price { color: var(--green-2); font: 800 12px "Manrope"; }
.pricing-actions { padding: 14px 18px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; gap: 15px; color: var(--muted); background: #fbfcfb; font-size: 9px; }
.pricing-actions > div { display: flex; gap: 8px; }
.report-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.report-card { min-height: 220px; padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.report-card h3 { margin: 0; font: 800 15px "Manrope"; }
.report-card > p { margin: 5px 0 20px; color: var(--muted); font-size: 10px; }
.metric-line { padding: 12px 0; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; }
.metric-line:last-child { border: 0; }
.metric-line span { color: var(--muted); font-size: 11px; }
.metric-line strong { font-size: 11px; }
.report-toolbar { margin-bottom: 16px; padding: 12px; border: 1px solid var(--line); border-radius: 13px; display: flex; align-items: end; gap: 10px; background: #fff; }
.report-toolbar label { display: grid; gap: 5px; color: var(--muted); font-size: 8px; font-weight: 700; text-transform: uppercase; }
.report-toolbar input, .report-toolbar select { height: 39px; padding: 0 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.report-toolbar select { min-width: 170px; }
.finance-kpi-grid { margin-bottom: 16px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.finance-kpi { padding: 17px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.finance-kpi span, .finance-kpi strong, .finance-kpi small { display: block; }
.finance-kpi span { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .6px; }
.finance-kpi strong { margin-top: 7px; font: 800 18px "Manrope"; }
.finance-kpi small { margin-top: 4px; color: #929b97; font-size: 8px; }
.finance-kpi.highlight { color: #fff; background: var(--green); }
.finance-kpi.highlight span, .finance-kpi.highlight small { color: rgba(255,255,255,.65); }
.financial-report-grid { margin-bottom: 18px; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); gap: 18px; }
.statement-row { padding: 12px 20px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; }
.statement-row span { color: #66716c; font-size: 10px; }
.statement-row strong { font-size: 11px; }
.statement-row.subtotal { background: #f8faf8; }
.statement-row.total { padding-top: 15px; padding-bottom: 15px; color: #fff; background: var(--green); }
.statement-row.total span, .statement-row.total strong { color: #fff; font-size: 13px; font-weight: 800; }
.statement-row.negative strong { color: var(--red); }
.financial-quality { padding: 0 20px 15px; }
.document-performance-panel { margin-bottom: 18px; }
.document-performance-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; padding: 0 20px 14px; }
.document-performance-kpis article { padding: 13px 14px; border: 1px solid var(--line); border-radius: 11px; background: #f8faf8; }
.document-performance-kpis span, .document-performance-kpis strong, .document-performance-kpis small { display: block; }
.document-performance-kpis span { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .5px; }
.document-performance-kpis strong { margin-top: 5px; color: var(--green); font: 800 18px "Manrope"; }
.document-performance-kpis small { margin-top: 3px; color: #8b9690; font-size: 8px; }
.document-performance-details { display: grid; grid-template-columns: 1.2fr .8fr; gap: 18px; padding: 14px 20px 18px; border-top: 1px solid var(--line); }
.document-performance-bars { display: grid; gap: 12px; }
.document-performance-bars > div { display: grid; grid-template-columns: 1fr auto; gap: 6px 12px; align-items: center; }
.document-performance-bars span, .document-performance-channels > strong { color: #64716b; font-size: 9px; }
.document-performance-bars strong { color: var(--green); font-size: 9px; }
.document-performance-bars i { grid-column: 1 / -1; height: 7px; border-radius: 10px; background: #edf0ee; overflow: hidden; }
.document-performance-bars b { display: block; height: 100%; border-radius: inherit; background: var(--green-2); }
.document-performance-channels { display: grid; align-content: start; gap: 6px; }
.document-performance-channels > span { display: flex; justify-content: space-between; gap: 10px; padding: 6px 8px; border-radius: 7px; background: #f6f8f7; }
.document-performance-channels i { color: var(--muted); font-size: 8px; font-style: normal; }
.document-performance-channels b { color: var(--green); font-size: 8px; }
.document-performance-channels small { color: var(--muted); font-size: 8px; }
.document-performance-summary { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px 18px; color: var(--muted); font-size: 8px; }
.document-performance-summary strong { color: var(--green); }
.quality-item { padding: 13px 0; border-bottom: 1px solid var(--line); }
.quality-item:last-child { border-bottom: 0; }
.quality-item-head { display: flex; justify-content: space-between; gap: 10px; }
.quality-item span { color: var(--muted); font-size: 9px; }
.quality-item strong { font-size: 10px; }
.quality-item p { margin: 5px 0 0; color: #98a19d; font-size: 8px; line-height: 1.4; }
.quality-bar { height: 5px; margin-top: 8px; border-radius: 8px; background: #edf0ee; overflow: hidden; }
.quality-bar i { display: block; height: 100%; border-radius: inherit; background: var(--green-2); }
@media (max-width: 1000px) {
  .finance-kpi-grid { grid-template-columns: repeat(2, 1fr); }
  .financial-report-grid { grid-template-columns: 1fr; }
  .document-performance-kpis { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 620px) {
  .report-toolbar { align-items: stretch; flex-direction: column; }
  .report-toolbar input, .report-toolbar select, .report-toolbar button { width: 100%; }
  .finance-kpi-grid { grid-template-columns: 1fr; }
  .document-performance-kpis, .document-performance-details { grid-template-columns: 1fr; }
  .document-performance-summary { grid-column: auto; }
}

.modal-backdrop { position: fixed; inset: 0; z-index: 100; padding: 20px; display: none; align-items: center; justify-content: center; background: rgba(11,28,22,.55); backdrop-filter: blur(4px); }
.modal-backdrop.open { display: flex; }
.modal { width: min(520px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; border-radius: 18px; background: #fff; box-shadow: 0 24px 80px rgba(0,0,0,.2); animation: modalIn .2s ease; }
.modal.modal-wide { width: min(1120px, 100%); }
@keyframes modalIn { from { opacity: 0; transform: translateY(10px) scale(.98); } }
.modal-header { padding: 22px 24px 16px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: start; }
.modal-header h2 { margin: 0; font: 800 19px "Manrope"; }
.modal-header .icon-button { border: 0; background: var(--soft); }
#dynamicForm { padding: 22px 24px 24px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.field { display: grid; gap: 6px; }
.field.full { grid-column: 1 / -1; }
.field label { color: #65716b; font-size: 10px; font-weight: 700; }
.field input, .field select, .field textarea { width: 100%; padding: 0 12px; border: 1px solid #dfe4e0; border-radius: 9px; outline: 0; background: #fff; }
.field input, .field select { height: 42px; }
.field textarea { min-height: 105px; padding-top: 11px; padding-bottom: 11px; resize: vertical; font: inherit; line-height: 1.45; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--green-2); box-shadow: 0 0 0 3px rgba(43,104,84,.09); }
.subscription-alert-box{margin-bottom:16px;padding:14px 16px;border:1px solid #cfe4d6;border-radius:13px;background:#f0faf3}.subscription-alert-box strong,.subscription-alert-box span{display:block}.subscription-alert-box strong{color:var(--green);font-size:13px}.subscription-alert-box span{margin-top:5px;color:var(--muted);font-size:10px}.subscription-alert-box.warning{border-color:#ecd5a5;background:#fff8ea}.subscription-alert-box.critical{border-color:#f0c2bf;background:#fff0ef}.subscription-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.subscription-plan-card{padding:18px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(24,59,48,.05)}.subscription-plan-card.requested{border-color:#b6d5bd;background:#f4fbf5}.subscription-plan-card span,.subscription-plan-card small{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.subscription-plan-card h3{margin:7px 0 8px;color:var(--green);font:900 18px "Manrope"}.subscription-plan-card>strong{display:block;color:var(--green-2);font-size:18px}.subscription-plan-card small{margin-top:3px;text-transform:none}.subscription-plan-card p{min-height:54px;margin:12px 0;color:#65716b;font-size:11px;line-height:1.45}.subscription-plan-card ul{margin:0 0 15px;padding-left:17px;color:#4f5b55;font-size:11px;line-height:1.7}.subscription-plan-card button{width:100%}
.form-actions { margin-top: 22px; display: flex; justify-content: flex-end; gap: 9px; }
.payment-history-list { display: grid; gap: 9px; }
.payment-history-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: #f8faf8; }
.payment-history-row > div { min-width: 0; }
.payment-history-row strong, .payment-history-row span, .payment-history-row small { display: block; }
.payment-history-row strong { color: var(--green); font-size: 13px; }
.payment-history-row span { margin-top: 3px; color: #56635d; font-size: 10px; }
.payment-history-row small { margin-top: 3px; color: var(--muted); font-size: 9px; }
.document-reprint-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin-bottom: 18px; }
.document-reprint-grid article { padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: #f8faf8; }
.document-reprint-grid strong, .document-reprint-grid small { display: block; }
.document-reprint-grid strong { color: var(--green); font-size: 11px; }
.document-reprint-grid small { margin: 3px 0 10px; color: var(--muted); font-size: 8px; }
.document-reprint-grid article > div { display: flex; flex-wrap: wrap; gap: 5px; }
.document-reprint-grid button { min-height: 32px; padding: 5px 8px; font-size: 8px; }
.document-original-button { border: 1px solid #efd5a9; border-radius: 7px; color: #8a5a16; background: #fff8e9; font-weight: 700; cursor: pointer; }
.document-history-list { padding-top: 14px; border-top: 1px solid var(--line); }
.document-archive-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.archive-verify-button { padding: 5px 8px; border: 1px solid #b9d9c6; border-radius: 7px; color: #246044; background: #eff8f2; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-cancel-button { padding: 5px 8px; border: 1px solid #e8b9b6; border-radius: 7px; color: #9d332f; background: #fff2f1; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-replacement-button { padding: 5px 8px; border: 1px solid #c8c6e8; border-radius: 7px; color: #4e478e; background: #f4f3ff; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-delivery-button { padding: 5px 8px; border: 1px solid #b8cee2; border-radius: 7px; color: #2e5f87; background: #f0f7fc; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-follow-up-button { padding: 5px 8px; border: 1px solid #dfc68e; border-radius: 7px; color: #805d18; background: #fff8e9; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-schedule-button { padding: 5px 8px; border: 1px solid #b8b9dc; border-radius: 7px; color: #514f87; background: #f5f4ff; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-confirm-button { padding: 5px 8px; border: 1px solid #9ecfb1; border-radius: 7px; color: #246044; background: #edf8f1; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-proof-button { padding: 5px 8px; border: 1px solid #b8c3ce; border-radius: 7px; color: #465d70; background: #f4f7f9; font-size: 8px; font-weight: 700; cursor: pointer; }
.document-cancelled-text { color: #a23d38!important; font-weight: 700; }
.document-delivered-text { color: #26704e!important; font-weight: 700; }
.document-pending-text { color: #a46a20!important; font-weight: 700; }
.document-delivery-history { display: grid; gap: 4px; margin-top: 7px; }
.document-delivery-history > span { padding: 5px 7px; border-left: 2px solid #8bb7d4; color: #42687f; background: #f3f8fb; }
.document-delivery-history > span.follow-up { border-left-color: #d5ad54; color: #755719; background: #fff9ec; }
.document-delivery-history strong, .document-delivery-history small { display: block; font-size: 7.5px; }
.document-delivery-history small { margin-top: 2px; color: #71838d; }
.document-delivery-message > small { color: var(--muted); font-size: 8.5px; }
.document-delivery-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 5px; }
.document-delivery-actions button { min-height: 36px; padding: 7px 10px; font-size: 8px; }
.document-confirm-info { margin-top: 12px; padding: 9px 11px; border-left: 3px solid #70aa86; color: #315e42; background: #f0f8f3; font-size: 8.5px; line-height: 1.4; }
.document-history-note { margin-top: 12px; padding: 9px 11px; border-left: 3px solid #d3a34c; color: #725523; background: #fff9ed; font-size: 8.5px; line-height: 1.4; }
.document-register-summary { display: grid; grid-template-columns: repeat(6, 1fr); gap: 9px; margin-bottom: 12px; }
.document-register-summary > button { padding: 11px 12px; border: 1px solid var(--line); border-radius: 10px; text-align: left; background: #f8faf8; cursor: pointer; }
.document-register-summary > button:hover { border-color: #9db6aa; transform: translateY(-1px); }
.document-register-summary > button.active { border-color: var(--green-2); box-shadow: 0 0 0 2px rgba(43,104,84,.1); }
.document-register-summary > button.warning { background: #fff8e9; }
.document-register-summary > button.info { background: #f0f7fc; }
.document-register-summary > button.urgent { background: #fff1dd; }
.document-register-summary > button.success { background: #edf8f1; }
.document-register-summary > button.danger { background: #fff2f1; }
.document-register-summary span, .document-register-summary strong, .document-register-summary small { display: block; }
.document-register-summary span { color: var(--muted); font-size: 8px; }
.document-register-summary strong { margin-top: 3px; color: var(--green); font-size: 17px; }
.document-register-summary small { margin-top: 2px; color: var(--muted); font-size: 7px; }
.document-register-toolbar { display: grid; grid-template-columns: minmax(145px, 1fr) 105px 88px 108px 108px 118px 88px 88px auto auto; align-items: end; gap: 7px; margin-bottom: 10px; }
.document-register-toolbar input, .document-register-toolbar select, .document-register-toolbar button { height: 38px; min-width: 0; }
.document-register-toolbar input, .document-register-toolbar select { padding: 0 9px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-size: 8.5px; }
.document-register-toolbar label { display: grid; gap: 3px; color: var(--muted); font-size: 7px; font-weight: 700; text-transform: uppercase; }
.document-register-toolbar > span { grid-column: 1 / -1; color: var(--muted); font-size: 8px; font-weight: 700; }
.document-register-table-wrap { max-height: 350px; border: 1px solid var(--line); border-radius: 10px; }
.document-register-table-wrap table { min-width: 880px; }
.document-register-table-wrap td small { display: block; margin-top: 2px; color: var(--muted); font-size: 7.5px; }
.document-follow-up-overdue { color: #b45d22!important; font-weight: 800; }
.document-follow-up-today { color: #8b681c!important; font-weight: 700; }
.document-follow-up-upcoming { color: #4f668d!important; }
@media(max-width:650px){.document-reprint-grid{grid-template-columns:1fr}}
@media(max-width:760px){.document-register-summary,.document-register-toolbar{grid-template-columns:1fr}.document-register-toolbar>span{grid-column:auto}}
@media(min-width:761px) and (max-width:1050px){.document-register-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.page-heading #openDocumentRegisterBtn{display:inline-flex}}
.replenishment-panel { margin-bottom: 18px; }
.replenishment-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; padding: 0 20px 14px; }
.replenishment-summary > span { padding: 11px 12px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); background: #f8faf8; font-size: 8px; }
.replenishment-summary strong { display: block; margin-bottom: 3px; color: var(--green); font: 800 16px "Manrope"; }
.replenishment-groups { display: grid; gap: 11px; padding: 0 20px 18px; }
.replenishment-group { border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.replenishment-group-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 11px 12px; background: #f5f8f6; }
.replenishment-group-heading strong, .replenishment-group-heading span { display: block; }
.replenishment-group-heading strong { color: var(--green); font-size: 10px; }
.replenishment-group-heading span { margin-top: 2px; color: var(--muted); font-size: 8px; }
.replenishment-group-heading button { min-height: 34px; height: 34px; font-size: 8px; }
.replenishment-items { display: grid; }
.replenishment-item { display: grid; grid-template-columns: minmax(190px, 1fr) 70px 60px 82px auto; align-items: center; gap: 10px; padding: 10px 12px; border-top: 1px solid var(--line); }
.replenishment-item:first-child { border-top: 0; }
.replenishment-item > div > strong, .replenishment-item > div > span { display: block; }
.replenishment-item > div:first-child strong { color: #33473f; font-size: 9px; }
.replenishment-item > div:first-child span { margin-top: 2px; color: var(--muted); font-size: 7.5px; }
.replenishment-item > div:not(:first-child) { text-align: right; }
.replenishment-item > div:not(:first-child) span { color: var(--muted); font-size: 7px; }
.replenishment-item > div:not(:first-child) strong { margin-top: 2px; color: var(--green); font-size: 10px; }
.replenishment-item.critical { border-left: 3px solid #d65a55; background: #fff7f6; }
.replenishment-item.warning { border-left: 3px solid #e2a84e; background: #fffaf2; }
.replenishment-item.watch { border-left: 3px solid #6da0c1; }
.replenishment-item button { min-height: 32px; height: 32px; padding: 0 9px; font-size: 8px; }
.replenishment-empty { padding: 18px; border: 1px solid #cde3d5; border-radius: 10px; text-align: center; background: #f2faf5; }
.replenishment-empty strong, .replenishment-empty span { display: block; }
.replenishment-empty strong { color: #26704e; font-size: 10px; }
.replenishment-empty span { margin-top: 3px; color: var(--muted); font-size: 8px; }
.replenishment-order-note { padding: 10px 12px; border-left: 3px solid #82a894; color: #446354; background: #f1f7f3; font-size: 9px; }
.supplier-order-toolbar { display: grid; grid-template-columns: minmax(170px,1fr) 145px 150px 105px 105px auto auto; align-items: end; gap: 8px; margin-bottom: 12px; }
.supplier-order-toolbar input, .supplier-order-toolbar select, .supplier-order-toolbar button { height: 40px; min-width: 0; }
.supplier-order-toolbar input, .supplier-order-toolbar select { padding: 0 10px; border: 1px solid var(--line); border-radius: 9px; background: #fff; font-size: 9px; }
.supplier-order-toolbar label { display: grid; gap: 4px; color: var(--muted); font-size: 7px; font-weight: 700; text-transform: uppercase; }
.supplier-order-toolbar > span { grid-column: 1 / -1; color: var(--muted); font-size: 8px; font-weight: 700; }
@media(max-width:900px){.replenishment-summary{grid-template-columns:repeat(2,1fr)}.replenishment-item{grid-template-columns:minmax(160px,1fr) 60px 60px 75px}.replenishment-item>button{grid-column:1/-1}}
@media(max-width:1000px){.supplier-order-toolbar{grid-template-columns:1fr 1fr 1fr}.supplier-order-toolbar>span{grid-column:1/-1}}
@media(max-width:600px){.replenishment-summary{grid-template-columns:1fr}.replenishment-group-heading{align-items:stretch;flex-direction:column}.replenishment-group-heading button{width:100%}.replenishment-item{grid-template-columns:1fr 1fr 1fr}.replenishment-item>div:first-child{grid-column:1/-1}.replenishment-item>button{grid-column:1/-1;width:100%}.supplier-order-toolbar{grid-template-columns:1fr}.supplier-order-toolbar>span{grid-column:auto}}
.reminder-history-row { align-items: flex-start; }
.reminder-message-field > small { color: var(--muted); font-size: 9px; }
.reminder-message-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 5px; }
.reminder-history-message { margin: 8px 0 0; padding: 8px 10px; border-left: 3px solid #cbd8d0; color: #68736e; background: #fff; font-size: 9px; line-height: 1.45; }
.campaign-history { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; margin-bottom: 18px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.campaign-history > strong { grid-column: 1 / -1; color: var(--green); font-size: 10px; }
.campaign-history button { padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; text-align: left; background: #f8faf8; }
.campaign-history span, .campaign-history small { display: block; }
.campaign-history span { color: var(--green); font-size: 10px; font-weight: 800; }
.campaign-history small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.campaign-preview { padding: 12px 14px; border: 1px solid #dce6df; border-radius: 10px; background: #f5f8f6; }
.campaign-preview > div + div { margin-top: 10px; padding-top: 10px; border-top: 1px solid #dce6df; }
.campaign-preview span, .campaign-preview strong { display: block; }
.campaign-preview span { color: var(--muted); font-size: 9px; }
.campaign-preview strong { margin-top: 3px; color: var(--green); font-size: 18px; }
.campaign-preview p { margin: 4px 0 0; color: #56635d; font-size: 10px; line-height: 1.5; }
.campaign-product-picker { display: grid; grid-template-columns: minmax(0, 1fr) auto 170px; gap: 7px; }
.campaign-product-picker select, .campaign-product-picker button { height: 42px; }
.campaign-selected-products { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.campaign-selected-products > span { display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 999px; color: #285b49; background: #eaf3ee; font-size: 9px; font-weight: 700; }
.campaign-selected-products button { width: 18px; height: 18px; padding: 0; border: 0; border-radius: 50%; color: #fff; background: #769387; }
.campaign-selected-products small { color: var(--muted); font-size: 9px; }
.campaign-client-toolbar { display: grid; grid-template-columns: minmax(180px, 1fr) auto auto; gap: 7px; margin-bottom: 7px; }
.campaign-client-toolbar input, .campaign-client-toolbar button { height: 40px; }
.campaign-group-toolbar { display: grid; grid-template-columns: minmax(190px, 1fr) auto auto auto; gap: 7px; margin-bottom: 7px; }
.campaign-group-toolbar select, .campaign-group-toolbar button { height: 40px; }
.campaign-client-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; max-height: 250px; margin-top: 8px; padding: 8px; border: 1px solid var(--line); border-radius: 9px; overflow-y: auto; background: #f8faf8; }
.campaign-client-option { display: flex; align-items: center; gap: 9px; padding: 9px; border: 1px solid #e1e8e3; border-radius: 8px; background: #fff; cursor: pointer; }
.campaign-client-option input { flex: none; width: 16px; height: 16px; }
.campaign-client-option strong, .campaign-client-option small { display: block; }
.campaign-client-option strong { color: var(--green); font-size: 10px; }
.campaign-client-option small { margin-top: 2px; color: var(--muted); font-size: 8px; }
.campaign-schedule-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.campaign-schedule-banner { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; padding: 12px 14px; border: 1px solid #d9c78f; border-radius: 10px; background: #fff8e4; }
.campaign-schedule-banner.ready { border-color: #a8cfb5; background: #edf8f0; }
.campaign-schedule-banner.cancelled { border-color: #e4c2c0; background: #fff2f1; }
.campaign-schedule-banner strong, .campaign-schedule-banner span { display: block; }
.campaign-schedule-banner strong { color: var(--green); font-size: 11px; }
.campaign-schedule-banner span { margin-top: 3px; color: var(--muted); font-size: 9px; }
.campaign-schedule-actions { display: flex; gap: 7px; }
.campaign-recipient-actions button:disabled { opacity: .45; cursor: not-allowed; }
.campaign-queue-toolbar { display: grid; grid-template-columns: minmax(150px, 1fr) 150px auto; align-items: center; gap: 8px; margin-bottom: 7px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px 10px 4px 4px; background: #f8faf8; }
.campaign-queue-toolbar strong, .campaign-queue-toolbar span { display: block; }
.campaign-queue-toolbar strong { color: var(--green); font-size: 10px; }
.campaign-queue-toolbar span { margin-top: 2px; color: var(--muted); font-size: 8px; }
.campaign-queue-toolbar select { height: 36px; padding: 0 8px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-size: 9px; }
.campaign-progress { height: 6px; margin: -8px 2px 12px; border-radius: 0 0 6px 6px; background: #e9eeeb; overflow: hidden; }
.campaign-progress i { display: block; height: 100%; border-radius: inherit; background: var(--green-2); transition: width .25s; }
.campaign-recipient-list { display: grid; gap: 8px; }
.campaign-result-summary { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; margin-bottom: 12px; }
.campaign-result-summary > div { padding: 10px; border: 1px solid var(--line); border-radius: 9px; text-align: center; background: #f8faf8; }
.campaign-result-summary span, .campaign-result-summary strong { display: block; }
.campaign-result-summary span { color: var(--muted); font-size: 8px; text-transform: uppercase; }
.campaign-result-summary strong { margin-top: 3px; color: var(--green); font-size: 17px; }
.campaign-recipient-row { display: grid; grid-template-columns: minmax(150px, 1fr) auto auto; align-items: center; gap: 12px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 10px; background: #f8faf8; }
.campaign-recipient-row strong, .campaign-recipient-row span, .campaign-recipient-row small { display: block; }
.campaign-recipient-row strong { color: var(--green); font-size: 11px; }
.campaign-recipient-row span { margin-top: 2px; color: #68736e; font-size: 9px; }
.campaign-recipient-row small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.campaign-recipient-actions { display: flex; gap: 6px; flex: none; }
.campaign-recipient-status { display: grid; gap: 5px; min-width: 130px; }
.campaign-recipient-status select { height: 32px; padding: 0 7px; border: 1px solid var(--line); border-radius: 7px; background: #fff; font-size: 8px; }
.campaign-status { width: fit-content; padding: 3px 7px; border-radius: 999px; color: #68736e; background: #e9eeeb; font-size: 8px; font-weight: 800; }
.campaign-status.envoye { color: #245f87; background: #e4f2fb; }
.campaign-status.interesse, .campaign-status.commande-obtenue { color: #28653e; background: #e6f5eb; }
.campaign-status.sans-reponse { color: #8a5a12; background: #fff1d2; }
.campaign-status.refuse { color: #984d49; background: #fbe9e8; }
.campaign-note-button { padding: 5px 8px; border: 1px solid #c8d3cc; border-radius: 7px; color: #536b61; background: #fff; font-size: 8px; font-weight: 700; }
.campaign-remove-button { padding: 5px 8px; border: 1px solid #e4c2c0; border-radius: 7px; color: #984d49; background: #fff3f2; font-size: 8px; font-weight: 700; }
@media(max-width:620px){.campaign-history{grid-template-columns:1fr}.campaign-result-summary{grid-template-columns:repeat(2,1fr)}.campaign-recipient-row,.campaign-queue-toolbar{grid-template-columns:1fr;align-items:stretch}.campaign-recipient-actions{width:100%}.campaign-recipient-actions button{flex:1}.campaign-recipient-status{min-width:0}.campaign-product-picker,.campaign-schedule-inputs,.campaign-client-toolbar,.campaign-client-picker,.campaign-group-toolbar{grid-template-columns:1fr}.campaign-product-picker button,.campaign-product-picker select,.campaign-queue-toolbar button,.campaign-queue-toolbar select,.campaign-client-toolbar button,.campaign-client-toolbar input,.campaign-group-toolbar button,.campaign-group-toolbar select{width:100%}.campaign-schedule-banner{align-items:stretch;flex-direction:column}.campaign-schedule-actions{width:100%}.campaign-schedule-actions button{flex:1}}
@media(max-width:720px){.campaign-dashboard-heading{align-items:stretch;flex-direction:column}.campaign-dashboard-filters{flex-direction:column}.campaign-dashboard-filters input,.campaign-dashboard-filters select{width:100%;min-width:0}}
.toast { position: fixed; right: 28px; bottom: 28px; z-index: 120; padding: 13px 17px; border-radius: 12px; color: #fff; background: var(--green); box-shadow: 0 12px 40px rgba(0,0,0,.18); display: flex; align-items: center; gap: 10px; transform: translateY(100px); opacity: 0; transition: .25s; }
.toast.show { transform: none; opacity: 1; }
.toast span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 50%; color: var(--green); background: var(--lime); font-weight: 800; }
.toast p { margin: 0; font-size: 11px; font-weight: 700; }
.network-banner { position: fixed; left: 50%; bottom: 22px; z-index: 140; min-width: 310px; max-width: calc(100vw - 32px); padding: 12px 16px; border-radius: 12px; display: flex; align-items: center; gap: 10px; color: #fff; background: #53605a; box-shadow: 0 12px 38px rgba(0,0,0,.18); opacity: 0; pointer-events: none; transform: translate(-50%, 80px); transition: .25s; }
.network-banner.show { opacity: 1; transform: translate(-50%, 0); }
.network-banner span { width: 9px; height: 9px; flex: none; border-radius: 50%; background: #fff; }
.network-banner p { margin: 0; font-size: 10px; font-weight: 700; }
.network-banner[data-status="offline"] { background: #9b641f; }
.network-banner[data-status="offline"] span { background: #ffd28e; }
.network-banner[data-status="online"] { background: var(--green); }
.network-banner[data-status="online"] span { background: var(--lime); }
.network-banner[data-status="error"] { background: #a64845; }
.network-banner[data-status="info"] { background: #416d86; }
.overlay { display: none; }
.empty { padding: 30px!important; color: var(--muted); text-align: center; }

@media (max-width: 1180px) {
  .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .credit-stats { grid-template-columns: repeat(2, 1fr); }
  .campaign-stats { grid-template-columns: repeat(2, 1fr); }
  .moto-grid, .client-grid { grid-template-columns: repeat(2, 1fr); }
  .date-box { display: none; }
}
@media (max-width: 900px) {
  .login-screen { grid-template-columns: 1fr; }
  .login-visual { min-height: 300px; padding: 30px; }
  .login-message h1 { margin-top: 40px; font-size: 36px; }
  .login-metrics { display: none; }
  .login-panel { padding: 35px 20px; }
  .sidebar { transform: translateX(-100%); transition: .25s; }
  .sidebar.open { transform: none; }
  .overlay { position: fixed; inset: 0; z-index: 25; background: rgba(0,0,0,.35); }
  .overlay.show { display: block; }
  .main-area { width: 100%; margin-left: 0; }
  .mobile-menu { display: block; }
  .topbar { padding: 0 22px; }
  .dashboard-grid, .bottom-grid { grid-template-columns: 1fr; }
  .owner-command-summary { grid-template-columns: repeat(2, 1fr); }
  .owner-action-list { grid-template-columns: 1fr; }
  .dashboard-document-metrics { grid-template-columns: repeat(2, 1fr); }
  .dashboard-document-task { grid-template-columns: 125px minmax(150px, 1fr) auto; }
  .dashboard-document-task-age { display: none; }
  .trip-grid { grid-template-columns: 1fr; }
  .fee-row { grid-template-columns: 1fr 1fr 34px; }
  .fee-row input:first-child { grid-column: 1 / -1; }
  .pricing-options { flex-wrap: wrap; }
  .global-search { width: 100%; }
  .global-search kbd { display: none; }
}
@media(max-width:540px){
  .owner-command-summary{grid-template-columns:1fr}
  .owner-action-heading{align-items:flex-start;flex-direction:column}
  .owner-action{grid-template-columns:1fr}
  .dashboard-document-metrics{grid-template-columns:1fr}
  .dashboard-document-task-heading{align-items:flex-start;flex-direction:column}
  .dashboard-document-task{grid-template-columns:1fr}
  .dashboard-document-task-actions{justify-content:flex-start}
}
@media (max-width: 620px) {
  .content { padding: 25px 16px 40px; }
  .topbar { height: 66px; padding: 0 14px; }
  .top-actions .notification { display: none; }
  .install-app-button { width: 38px; padding: 0; font-size: 0; }
  .install-app-button::after { content: "↓"; font-size: 17px; }
  .top-actions .primary-button { width: 40px; padding: 0; font-size: 0; }
  .top-actions .primary-button svg { width: 18px; }
  .page-heading { align-items: start; }
  .page-heading, .heading-actions { flex-direction: column; }
  .heading-actions, .heading-actions > * { width: 100%; }
  .pricing-help { align-items: flex-start; }
  .pricing-help button { display: none; }
  .fee-row { grid-template-columns: 1fr 34px; }
  .fee-row input:first-child { grid-column: 1 / -1; }
  .pricing-options, .pricing-actions { align-items: stretch; flex-direction: column; }
  .pricing-options label, .pricing-options button, .pricing-actions button { width: 100%; }
  .pricing-actions > div { flex-direction: column; }
  .page-heading h1 { font-size: 22px; }
  .page-heading .secondary-button { display: none; }
  #page-alertes .page-heading #exportDailyWorkBtn { display: inline-flex; }
  .stats-grid, .compact, .moto-grid, .client-grid, .report-grid { grid-template-columns: 1fr; }
  .credit-stats { grid-template-columns: 1fr; }
  .campaign-stats { grid-template-columns: 1fr; }
  .toolbar { flex-direction: column; }
  .search-field, .toolbar select { width: 100%; min-width: 0; height: 42px; }
  .donut-zone { flex-direction: column; }
  .form-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
}
.customer-type{display:inline-flex;margin-top:5px;padding:3px 8px;border-radius:999px;background:#eef4f0;color:#2b6854;font-size:11px;font-weight:700}
.credit-risk{display:inline-flex;margin:5px 0 0 4px;padding:3px 8px;border-radius:999px;font-size:9px;font-weight:800}.credit-risk.open{color:#2f6d45;background:#e9f6ed}.credit-risk.watch{color:#8a5a12;background:#fff3d8}.credit-risk.blocked{color:#a43f3b;background:#fdebea}
.marketing-blocked{display:inline-flex;margin:5px 0 0 4px;padding:3px 8px;border-radius:999px;color:#7c5552;background:#f7e9e8;font-size:9px;font-weight:800}
.person-head .action-button{margin-left:auto}
.person-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.sale-price-preview{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dce6df;border-radius:10px;background:#f5f8f6;color:#5b6862}
.sale-price-preview strong{color:#183b30}
.sale-lines-field{padding:0;border:0;background:transparent}
.sale-lines-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:10px}
.sale-line-heading-actions{display:flex;gap:7px}
.sale-drafts-panel{margin-bottom:18px}.sale-draft-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 18px;border-top:1px solid var(--line)}.sale-draft-row:first-child{border-top:0}.sale-draft-row strong,.sale-draft-row span,.sale-draft-row small{display:block}.sale-draft-row span{margin-top:3px;color:var(--green);font-size:10px;font-weight:700}.sale-draft-row small{margin-top:4px;color:var(--muted);font-size:9px}.sale-draft-row>div:last-child{display:flex;gap:7px;flex:none}
.sales-toolbar{margin-bottom:12px}.toolbar-result{margin-left:auto;color:var(--muted);font-size:10px;font-weight:700;white-space:nowrap}
.compact-date{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px;font-weight:700}.compact-date input{width:130px;height:40px;padding:0 8px;border:1px solid var(--line);border-radius:9px;background:#fff}
.sales-filter-summary{display:grid;grid-template-columns:repeat(4,1fr) 2fr;gap:9px;margin-bottom:12px}.sales-filter-summary>div{padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.sales-filter-summary span{display:block;color:var(--muted);font-size:9px}.sales-filter-summary>div>strong{display:block;margin-top:4px;color:var(--green);font-size:14px}.sales-payment-summary{display:grid!important;grid-template-columns:repeat(2,1fr);gap:6px}.sales-payment-summary span{display:flex;justify-content:space-between;gap:6px}.sales-payment-summary strong{color:#183b30;font-size:9px}
.client-sale-field>div{display:grid;grid-template-columns:1fr auto;gap:8px}.client-sale-field>small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.client-combobox{position:relative}.quick-client-box{padding:12px;border:1px solid #d8e4dc;border-radius:11px;background:#f5f8f6}.quick-client-box>div{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;align-items:end;gap:8px}.quick-client-box label{color:#66716b;font-size:10px}.quick-client-box input,.quick-client-box select{margin-top:6px}
.recent-client-products{margin-top:9px;padding:9px;border:1px solid #dce6df;border-radius:9px;background:#f8faf9}.recent-client-products>span{display:block;margin-bottom:6px;color:#66716b;font-size:9px;font-weight:700;text-transform:uppercase}.recent-client-products>div{display:flex;flex-wrap:wrap;gap:6px}.recent-client-products button{padding:6px 9px;border:1px solid #d7e2dc;border-radius:8px;color:#183b30;background:#fff;text-align:left;cursor:pointer}.recent-client-products button:disabled{opacity:.45;cursor:not-allowed}.recent-client-products strong,.recent-client-products small{display:block}.recent-client-products strong{font-size:9px}.recent-client-products small{margin-top:2px;color:var(--muted);font-size:8px}
.sale-lines-heading label{display:block}.sale-lines-heading small{display:block;margin-top:3px;color:var(--muted)}
#saleLines{display:grid;gap:9px}
.sale-line{display:grid;grid-template-columns:minmax(210px,2fr) 90px 130px 120px 34px;align-items:end;gap:9px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbfcfb}
.client-price-history{display:none;grid-column:1/-1;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-left:3px solid #6da8c8;border-radius:7px;background:#f2f8fb;color:#56707d;font-size:9px}.client-price-history.visible{display:flex}.client-price-history strong{color:#24566e}.client-price-history button{padding:5px 8px;border:1px solid #bcd7e4;border-radius:6px;color:#24566e;background:#fff;font-size:9px;font-weight:700;cursor:pointer}
.sale-line .field{margin:0}.sale-line-total{padding:0 4px 9px}.sale-line-total span{display:block;margin-bottom:7px;color:var(--muted);font-size:11px}.sale-line-total strong{color:var(--green);font-size:13px}
.sale-line-product{position:relative}.product-combobox{position:relative}.product-match-count{display:block;margin-top:5px;color:var(--muted);font-size:9px}
.product-suggestions{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:30;display:none;max-height:260px;overflow-y:auto;border:1px solid #d8e1dc;border-radius:10px;background:#fff;box-shadow:0 14px 35px rgba(20,45,36,.16)}
.product-suggestions.open{display:block}.product-suggestions button{width:100%;padding:9px 11px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}.product-suggestions button:last-child{border-bottom:0}.product-suggestions button:hover,.product-suggestions button.selected,.product-suggestions button.keyboard-active{background:#eef6f1;box-shadow:inset 3px 0 #2b6854}
.product-suggestions strong,.product-suggestions span,.product-suggestions small{display:block}.product-suggestions strong{color:#193b30;font-size:11px}.product-suggestions span{margin-top:2px;color:#66716b;font-size:9px}.product-suggestions small{margin-top:3px;color:#2b6854;font-size:9px;font-weight:700}.product-no-result{padding:13px;color:var(--muted);font-size:10px}
.product-suggestions button.out-of-stock{opacity:.55;cursor:not-allowed}.product-suggestions button.out-of-stock small{color:#b24e4a}
.sale-qty-field small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.sale-line.stock-invalid{border-color:#e6a8a4;background:#fff5f4}.sale-line.stock-invalid .sale-stock-left{color:#b24e4a;font-weight:700}
.remove-sale-line{width:34px;height:38px;margin-bottom:1px;border:1px solid #efd4d2;border-radius:8px;color:#b24e4a;background:#fff4f3;font-size:20px;cursor:pointer}
.return-button{padding:6px 9px;border:1px solid #efd5a9;border-radius:7px;color:#8a5a16;background:#fff8e9;font-size:9px;font-weight:700;cursor:pointer}
.client-credit-box{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 14px;border:1px solid #d9e7c1;border-radius:11px;background:#f7fbe9}
.client-credit-box.counter-disabled{opacity:.55}.client-credit-box.counter-disabled::before{content:"Les avoirs nécessitent un client identifié";color:#68745e;font-size:10px}
.sale-price-preview.counter-credit-warning{border-color:#efb4b0;background:#fff3f2}.sale-price-preview.counter-credit-warning strong{color:#a63d38}.sale-price-preview.counter-credit-warning small{grid-column:1/-1;color:#a63d38;font-size:10px}
.client-credit-box span{display:block;color:#68745e;font-size:10px}.client-credit-box strong,.credit-wallet{color:#527017}
.credit-use-controls{display:flex;align-items:center;gap:8px}.credit-use-controls input{width:145px}
.mixed-payment-box{padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fbfcfb}
.mixed-payment-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.mixed-payment-heading label{display:block}.mixed-payment-heading small{display:block;margin-top:3px;color:var(--muted)}
.mixed-payment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mixed-payment-grid label{color:#66716b;font-size:10px}.mixed-payment-grid input{margin-top:6px}
.mixed-payment-grid .payment-reference{height:31px;margin-top:5px;border-style:dashed;font-size:9px}
.cash-change-box{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:12px;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}.cash-change-box label,.cash-change-box span{color:#66716b;font-size:10px}.cash-change-box input{margin-top:6px}.cash-change-box strong{display:block;margin-top:6px;color:var(--green);font-size:15px}
.mobile-transfer-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:12px;border:1px solid #dce6df;border-radius:10px;background:#f5f8f6}.mobile-transfer-preview span{color:var(--muted);font-size:10px}.mobile-transfer-preview strong{display:block;margin-top:4px;color:var(--green);font-size:12px}
.closure-checklist-panel{margin-top:18px}.closure-checklist-summary{margin:0 20px 12px;padding:12px 14px;border-radius:11px;display:flex;justify-content:space-between;gap:12px;background:#edf8f1}.closure-checklist-summary strong{color:#26704e;font-size:11px}.closure-checklist-summary span{color:#66736d;font-size:9px}.closure-checklist-summary.warning{background:#fff7e8}.closure-checklist-summary.warning strong{color:#976419}.closure-checklist-summary.critical{background:#fff0ef}.closure-checklist-summary.critical strong{color:#a6413d}.closure-checklist-grid{padding:0 20px 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.closure-check-item{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:left;cursor:pointer}.closure-check-item:hover{border-color:#a9beb1;background:#fbfdfb}.closure-check-item i{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;color:#26704e;background:#e8f5ee;font-style:normal;font-weight:900}.closure-check-item.warning i{color:#9a631b;background:#fff3df}.closure-check-item.critical i{color:#a6413d;background:#fceceb}.closure-check-item strong,.closure-check-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.closure-check-item strong{color:var(--ink);font-size:10px}.closure-check-item small{margin-top:3px;color:var(--muted);font-size:8px}.closure-panel{margin-top:18px}.closure-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:12px;border:1px solid #dce6df;border-radius:10px;background:#f5f8f6}.closure-preview span{color:var(--muted);font-size:10px}.closure-preview strong{display:block;margin-top:4px;color:var(--green);font-size:12px}.closure-modal-checklist{padding:11px 12px;border:1px solid #ead4a7;border-radius:10px;background:#fff8ea}.closure-modal-checklist strong,.closure-modal-checklist span{display:block}.closure-modal-checklist strong{color:#90601c;font-size:10px}.closure-modal-checklist span{margin-top:4px;color:#6b746f;font-size:8px;line-height:1.35}
.scan-button{white-space:nowrap}
.barcode-scanner video{display:none;width:100%;min-height:180px;max-height:320px;margin-top:14px;border-radius:12px;background:#101512;object-fit:cover}
.barcode-scanner video.active{display:block}
.barcode-scanner p{margin:10px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.package-builder{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfcfb}
#packageRows{display:grid;gap:9px}
.package-row{display:grid;grid-template-columns:1fr 1.4fr .8fr 1fr 34px;align-items:end;gap:9px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}
.package-row .field{margin:0}
.scan-entry{padding:12px 14px;border:1px solid #dce6df;border-radius:11px;background:#f5f8f6}
.scan-entry>div{display:flex;gap:8px;margin-top:7px}.scan-entry input{flex:1}.scan-entry small{display:block;margin-top:6px;color:var(--muted)}
.trip-stock small{display:block;margin-top:5px;color:var(--muted);font-weight:500;line-height:1.45}
.package-sale-mode{padding:10px 12px;border-left:3px solid var(--green);background:#f7faf8}
.quick-qty{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.quick-qty button{min-width:35px;height:30px;border:1px solid #d7e1db;border-radius:7px;color:var(--green);background:#fff;font-weight:800;cursor:pointer}
.packaging-summary{display:block;margin-top:4px;line-height:1.45}
.package-balance-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px;border:1px solid #dce6df;border-radius:10px;background:#f5f8f6}.package-balance-preview span{color:var(--muted);font-size:10px}.package-balance-preview strong{display:block;margin-top:4px;color:var(--green);font-size:11px;line-height:1.4}.package-balance-preview.invalid{border-color:#efb4b0;background:#fff3f2}.package-balance-preview.invalid strong{color:#a63d38}
.inventory-packaging-field{padding:13px;border:1px solid var(--line);border-radius:11px;background:#fbfcfb}.inventory-packaging-field>small{display:block;margin:4px 0 10px;color:var(--muted)}
.inventory-package-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.inventory-package-grid label{color:#66716b;font-size:10px}.inventory-package-grid input{margin-top:6px}
.inventory-preview small{display:block;margin-top:3px;color:var(--muted)}
.stock-writeoff-panel { margin-bottom:18px; }
#stockWriteOffList { padding:0 20px 18px; display:grid; gap:8px; }
.stock-writeoff-item { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:11px 13px; border:1px solid #ead8b5; border-left:4px solid #d39a3e; border-radius:10px; background:#fffbf3; }
.stock-writeoff-item.approved { border-color:#cfe3d6; border-left-color:#3f8a68; background:#f1f8f4; }
.stock-writeoff-item.rejected { border-color:#dfe4e1; border-left-color:#8c9690; background:#f8faf9; opacity:.82; }
.stock-writeoff-item span,.stock-writeoff-item strong,.stock-writeoff-item small { display:block; }
.stock-writeoff-item span { color:#8e621e; font-size:7px; font-weight:900; letter-spacing:.7px; }
.stock-writeoff-item strong { margin-top:3px; font-size:10px; }
.stock-writeoff-item small { margin-top:3px; color:var(--muted); font-size:8px; line-height:1.4; }
.stock-writeoff-actions { display:flex; flex-wrap:wrap; gap:6px; }
.stock-writeoff-actions button { min-height:30px; padding:0 9px; border:1px solid var(--line); border-radius:7px; color:var(--green); background:#fff; font-size:8px; font-weight:800; cursor:pointer; }
.stock-writeoff-preview { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; padding:12px; border:1px solid #dce6df; border-radius:10px; background:#f5f8f6; }
.stock-writeoff-preview span { color:var(--muted); font-size:9px; }
.stock-writeoff-preview strong { display:block; margin-top:4px; color:var(--green); font-size:12px; }
.supplier-receipt-lines{display:grid;gap:10px}.supplier-receipt-line{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px;border:1px solid var(--line);border-radius:11px;background:#fbfcfb}.supplier-receipt-head{grid-column:1/-1;display:flex;justify-content:space-between;gap:12px}.supplier-receipt-head span{color:var(--muted);font-size:10px}
@media(max-width:640px){.package-balance-preview{grid-template-columns:1fr}}
@media(max-width:640px){.inventory-package-grid{grid-template-columns:1fr}}
@media(max-width:700px){.stock-writeoff-panel .panel-header{align-items:stretch;flex-direction:column}.stock-writeoff-item{align-items:flex-start;flex-direction:column}.stock-writeoff-actions{width:100%}.stock-writeoff-actions button{flex:1}.stock-writeoff-preview{grid-template-columns:1fr}}
@media(max-width:850px){.dormant-stock-panel .panel-header{align-items:stretch;flex-direction:column}.dormant-stock-panel .heading-actions{width:100%}#dormantStockSummary{grid-template-columns:1fr 1fr}.dormant-stock-item{grid-template-columns:1fr 1fr}.dormant-stock-actions{justify-content:flex-start}.dormant-stock-qty,.dormant-stock-value{text-align:left}}
@media(max-width:560px){.dormant-stock-panel .heading-actions{flex-direction:column}.dormant-stock-panel .heading-actions>*{width:100%}#dormantStockSummary{grid-template-columns:1fr}.dormant-stock-item{grid-template-columns:1fr}.dormant-stock-actions button{flex:1}}
@media(max-width:640px){.supplier-receipt-line{grid-template-columns:1fr}.supplier-receipt-head{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.sale-price-preview{flex-direction:column;gap:4px}}
@media(max-width:640px){.client-credit-box,.credit-use-controls{align-items:stretch;flex-direction:column}.credit-use-controls input{width:100%}}
@media(max-width:640px){.mixed-payment-heading{align-items:stretch;flex-direction:column}.mixed-payment-grid{grid-template-columns:1fr}}
@media(max-width:640px){.cash-change-box{grid-template-columns:1fr}}
@media(max-width:700px){.mobile-transfer-preview{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.closure-checklist-summary{align-items:flex-start;flex-direction:column}.closure-checklist-grid{grid-template-columns:1fr}.closure-preview{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.sale-line{grid-template-columns:1fr 1fr}.sale-line-product{grid-column:1/-1}.sale-line-total{padding-bottom:8px}.remove-sale-line{justify-self:end}.sale-lines-heading{align-items:stretch;flex-direction:column}}
@media(max-width:640px){.client-price-history{align-items:flex-start;flex-direction:column}.client-price-history button{width:100%}}
@media(max-width:640px){.sale-line-heading-actions{flex-direction:column}.sale-line-heading-actions button{width:100%}}
@media(max-width:640px){.sale-draft-row{align-items:stretch;flex-direction:column}.sale-draft-row>div:last-child button{flex:1}}
@media(max-width:700px){.sales-toolbar .toolbar-result{margin-left:0}}
@media(max-width:700px){.compact-date,.compact-date input{width:100%}.compact-date{justify-content:space-between}}
@media(max-width:900px){.sales-filter-summary{grid-template-columns:repeat(2,1fr)}.sales-payment-summary{grid-column:1/-1}}
@media(max-width:540px){.sales-filter-summary{grid-template-columns:1fr}.sales-payment-summary{grid-column:auto}}
@media(max-width:700px){.client-sale-field>div,.quick-client-box>div{grid-template-columns:1fr}.client-sale-field button,.quick-client-box button{width:100%}}
.workshop-panel{overflow:hidden}.workshop-item{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(155px,.7fr) minmax(270px,1fr);align-items:center;gap:16px;padding:15px 18px;border-top:1px solid var(--line);border-left:4px solid #82968b;background:#fff}.workshop-item:first-child{border-top:0}.workshop-item.en-reparation{border-left-color:#d19a3c;background:#fffcf5}.workshop-item.prete{border-left-color:#3f8a68;background:#f4faf6}.workshop-item.livree{border-left-color:#7f9289;opacity:.82}.workshop-item.annulee{border-left-color:#b55a55;background:#fff8f7;opacity:.78}.workshop-item.recent-return{box-shadow:inset 0 0 0 1px #edc47d;background:#fffaf0}.workshop-main span,.workshop-main strong,.workshop-main small,.workshop-progress span,.workshop-progress strong,.workshop-progress small{display:block}.workshop-main span{color:#39715c;font-size:8px;font-weight:900;letter-spacing:.6px}.workshop-main strong{margin-top:4px;color:var(--green);font-size:12px}.workshop-main small{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.5}.workshop-progress{text-align:right}.workshop-progress span{color:var(--muted);font-size:9px}.workshop-progress strong{margin-top:4px;color:var(--green);font-size:15px}.workshop-progress small{margin-top:3px;color:var(--muted);font-size:8px}.workshop-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.workshop-actions button{min-height:31px;padding:0 9px;border:1px solid var(--line);border-radius:7px;color:var(--green);background:#fff;font-size:8px;font-weight:800;cursor:pointer}.workshop-actions button[data-workshop-status]{border-color:#c9ddcf;background:#eef7f1}.workshop-actions button[data-cancel-workshop]{color:#a44843;background:#fff5f4}.workshop-toolbar{margin-bottom:12px}.workshop-line{grid-template-columns:minmax(210px,2fr) 90px 130px 34px}.workshop-history-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:13px}.workshop-history-summary span{padding:11px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:9px;background:#f8faf9}.workshop-history-summary strong{display:block;margin-top:5px;color:var(--green);font-size:13px}.workshop-history-list{display:grid;gap:8px;max-height:430px;overflow:auto}.workshop-history-list article{padding:11px 13px;border-left:3px solid #5f8c79;border-radius:8px;background:#f5f8f6}.workshop-history-list span,.workshop-history-list strong,.workshop-history-list small{display:block}.workshop-history-list span{color:var(--muted);font-size:8px}.workshop-history-list strong{margin-top:4px;color:var(--green);font-size:10px}.workshop-history-list small{margin-top:4px;color:#68736d;font-size:8px;line-height:1.5}
.workshop-schedule-panel{margin-bottom:16px}.workshop-schedule-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;padding:0 20px 18px}.workshop-schedule-grid h3{margin:0 0 9px;color:var(--green);font-size:11px}.workshop-deadlines{display:grid;gap:7px}.workshop-deadlines>button{display:grid;grid-template-columns:105px 1fr auto;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fafcfb;text-align:left;cursor:pointer}.workshop-deadlines>button span{color:#527260;font-size:7px;font-weight:900}.workshop-deadlines>button strong{color:var(--green);font-size:9px}.workshop-deadlines>button small{color:var(--muted);font-size:8px}.workshop-deadlines>button.late{border-color:#e8b0ac;background:#fff5f4}.workshop-deadlines>button.late span{color:#ad4a45}.workshop-deadlines>button.today{border-color:#e8cf95;background:#fffaf0}.workshop-workload{display:grid;align-content:start;gap:7px}.workshop-workload>div{display:grid;grid-template-columns:1fr auto;gap:3px;padding:10px 12px;border-radius:9px;background:#f3f7f4}.workshop-workload span{color:var(--green);font-size:9px;font-weight:800}.workshop-workload strong{font-size:9px}.workshop-workload small{grid-column:1/-1;color:var(--muted);font-size:8px}
.warranty-claim-panel{margin-bottom:16px}.warranty-claim-panel .panel-header{align-items:center}.warranty-claim-item{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(180px,.8fr) minmax(220px,.8fr);align-items:center;gap:14px;padding:13px 18px;border-top:1px solid var(--line);border-left:4px solid #6f8f80;background:#fff}.warranty-claim-item:first-child{border-top:0}.warranty-claim-item.late{border-left-color:#b64e49;background:#fff6f5}.warranty-claim-item.resolue{border-left-color:#3f8a68;background:#f3f9f5}.warranty-claim-item.refusee{opacity:.72}.warranty-claim-item span,.warranty-claim-item strong,.warranty-claim-item small{display:block}.warranty-claim-item>div:first-child>span{color:#39715c;font-size:7px;font-weight:900;letter-spacing:.6px}.warranty-claim-item>div:first-child>strong{margin-top:4px;color:var(--green);font-size:10px}.warranty-claim-item>div:first-child>small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.45}.warranty-claim-money{text-align:right}.warranty-claim-money>span{color:var(--muted);font-size:8px}.warranty-claim-money>strong{margin-top:3px;color:var(--green);font-size:14px}.warranty-claim-money>small{margin-top:3px;color:var(--muted);font-size:7px}.warranty-claim-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.warranty-claim-actions button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:7px;color:var(--green);background:#fff;font-size:8px;font-weight:800;cursor:pointer}.warranty-claim-actions button[data-resolve-warranty-claim]{background:#eef7f1}
.product-thumb{width:42px;height:42px;display:grid;place-items:center;flex:none;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fff}.product-thumb img{width:100%;height:100%;object-fit:contain}.product-photo-field{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:15px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#f8faf9}.product-photo-preview{width:145px;height:120px;display:grid;place-items:center;overflow:hidden;border:1px dashed #b8c6be;border-radius:10px;color:var(--muted);background:#fff;text-align:center}.product-photo-preview img{width:100%;height:100%;object-fit:contain}.product-photo-preview span svg{width:28px;height:28px}.product-photo-preview small{display:block;margin-top:5px}.product-photo-field p{margin:4px 0 9px;color:var(--muted);font-size:9px}.product-photo-field .text-button{margin-left:7px}.product-profile{display:grid;gap:13px}.product-profile-hero{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:18px;padding:15px;border-radius:12px;background:#f4f8f5}.product-profile-hero>img,.product-profile-placeholder{width:180px;height:145px;border-radius:10px;object-fit:contain;background:#fff}.product-profile-placeholder{display:grid;place-items:center;color:var(--green);font-size:32px;font-weight:900}.product-profile-hero span{color:#47715e;font-size:9px;font-weight:800;text-transform:uppercase}.product-profile-hero h3{margin:5px 0;color:var(--green);font-size:20px}.product-profile-hero p{margin:0 0 7px;color:#5d6963;font-size:10px;line-height:1.5}.product-profile-hero small{color:var(--muted)}.product-profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.product-profile-stats>span{padding:11px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:8px}.product-profile-stats strong{display:block;margin-top:4px;color:var(--green);font-size:13px}.product-profile-stats small{display:block;margin-top:3px}.product-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.product-profile-grid section{padding:13px;border:1px solid var(--line);border-radius:10px}.product-profile-grid h4{margin:0 0 9px;color:var(--green);font-size:10px}.product-profile-grid p{color:#66716b;font-size:9px;line-height:1.55}.product-profile-grid dl{display:grid;grid-template-columns:1fr 1.4fr;gap:6px;margin:0;font-size:9px}.product-profile-grid dt{color:var(--muted)}.product-profile-grid dd{margin:0;color:var(--green);font-weight:700}.product-profile-row{display:grid;grid-template-columns:1fr auto;gap:3px;padding:7px 0;border-top:1px solid #edf1ee}.product-profile-row:first-of-type{border-top:0}.product-profile-row span,.product-profile-row small{color:var(--muted);font-size:8px}.product-profile-row strong{font-size:8px}.product-profile-row small{grid-column:1/-1}
.quote-history-list{display:grid;gap:8px;max-height:500px;overflow:auto}.quote-history-list article{display:grid;grid-template-columns:145px 1fr;gap:4px 12px;padding:11px 13px;border-left:3px solid #4f806b;border-radius:8px;background:#f5f8f6}.quote-history-list span{grid-row:1/3;color:var(--muted);font-size:8px}.quote-history-list strong{color:var(--green);font-size:10px}.quote-history-list small{color:#69746e;font-size:8px}
.delivery-state{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;color:#79591d;background:#fff2d8;font-size:7px;font-weight:800;text-transform:uppercase}.delivery-state.livree{color:#28634c;background:#e7f5ed}.delivery-state.partiellement-livree{color:#865b15;background:#fff1d1}.delivery-lines{display:grid;gap:8px}.delivery-lines>div{display:grid;grid-template-columns:1fr 120px;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#f8faf9}.delivery-lines strong,.delivery-lines small{display:block}.delivery-lines strong{color:var(--green);font-size:10px}.delivery-lines small{margin-top:3px;color:var(--muted);font-size:8px}.delivery-lines label{color:var(--muted);font-size:8px}.delivery-lines input{margin-top:4px}.goods-delivery-history{display:grid;gap:8px}.goods-delivery-history article{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:11px 13px;border-left:3px solid #478168;border-radius:8px;background:#f4f8f5}.goods-delivery-history span,.goods-delivery-history strong,.goods-delivery-history small{display:block}.goods-delivery-history span{color:var(--muted);font-size:8px}.goods-delivery-history strong{margin-top:3px;color:var(--green);font-size:10px}.goods-delivery-history small{margin-top:3px;color:#68736d;font-size:8px;line-height:1.45}
.supplier-return-panel{margin-bottom:16px}.supplier-return-item{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(180px,.7fr) minmax(170px,.6fr);align-items:center;gap:14px;padding:13px 18px;border-top:1px solid var(--line);border-left:4px solid #c28c35;background:#fffdf8}.supplier-return-item:first-child{border-top:0}.supplier-return-item.late{border-left-color:#b64e49;background:#fff6f5}.supplier-return-item.résolu{border-left-color:#3f8a68;background:#f3f9f5}.supplier-return-item span,.supplier-return-item strong,.supplier-return-item small{display:block}.supplier-return-item>div:first-child>span{color:#8b641f;font-size:7px;font-weight:900;letter-spacing:.6px}.supplier-return-item>div:first-child>strong{margin-top:4px;color:var(--green);font-size:10px}.supplier-return-item>div:first-child>small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.45}.supplier-return-amount{text-align:right}.supplier-return-amount>span{color:var(--muted);font-size:8px}.supplier-return-amount>strong{margin-top:3px;color:var(--green);font-size:14px}.supplier-return-amount>small{margin-top:3px;color:var(--muted);font-size:8px}.supplier-return-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.supplier-return-actions button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:7px;color:var(--green);background:#fff;font-size:8px;font-weight:800;cursor:pointer}
.supplier-payment-schedule-panel{margin-bottom:16px}#supplierPaymentScheduleList{padding:0 20px 18px;display:grid;gap:8px}.supplier-payment-schedule-item{display:grid;grid-template-columns:minmax(230px,1.2fr) minmax(170px,.55fr) minmax(150px,.55fr);align-items:center;gap:14px;padding:12px 13px;border:1px solid #dce6df;border-left:4px solid #59816d;border-radius:10px;background:#fbfcfb}.supplier-payment-schedule-item.overdue{border-color:#efc5c2;border-left-color:#c4524d;background:#fff6f5}.supplier-payment-schedule-item.today,.supplier-payment-schedule-item.upcoming{border-color:#e7d09e;border-left-color:#d39b3d;background:#fffaf1}.supplier-payment-schedule-item.paid{border-left-color:#4d8269;background:#f4f9f6;opacity:.82}.supplier-payment-schedule-item.cancelled{border-left-color:#9ca9a2;opacity:.65}.supplier-payment-schedule-item span,.supplier-payment-schedule-item strong,.supplier-payment-schedule-item small{display:block}.supplier-payment-schedule-item>div:first-child>span{color:#47745e;font-size:7px;font-weight:900;letter-spacing:.6px}.supplier-payment-schedule-item.overdue>div:first-child>span{color:#aa4540}.supplier-payment-schedule-item>div:first-child>strong{margin-top:3px;color:var(--green);font-size:10px}.supplier-payment-schedule-item>div:first-child>small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.4}.supplier-payment-schedule-money{text-align:right}.supplier-payment-schedule-money>span{color:var(--muted);font-size:7px;text-transform:uppercase}.supplier-payment-schedule-money>strong{margin-top:3px;color:var(--green);font-size:13px}.supplier-payment-schedule-money>small{margin-top:3px;color:var(--muted);font-size:8px}.supplier-payment-schedule-actions{display:flex;justify-content:flex-end;gap:6px}.supplier-payment-schedule-actions button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:7px;color:var(--green);background:#fff;font-size:8px;font-weight:800;cursor:pointer}.supplier-payment-schedule-actions button:first-child{border-color:#bad8c5;background:#eef7f1}.supplier-schedule-summary,.supplier-schedule-payment-note{padding:11px 13px;border:1px solid #dce6df;border-radius:9px;color:var(--muted);background:#f5f8f6;font-size:9px}.supplier-schedule-summary{margin-top:12px}.supplier-schedule-summary strong,.supplier-schedule-payment-note strong{color:var(--green)}.supplier-schedule-payment-note span{display:block;margin-top:4px}
.recurring-expense-panel{margin-bottom:16px}.recurring-expense-item{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(150px,.55fr) minmax(260px,.9fr);align-items:center;gap:14px;padding:13px 18px;border-top:1px solid var(--line);border-left:4px solid #789184;background:#fff}.recurring-expense-item:first-child{border-top:0}.recurring-expense-item.overdue{border-left-color:#b64e49;background:#fff6f5}.recurring-expense-item.today{border-left-color:#d29a36;background:#fffaf0}.recurring-expense-item.upcoming{border-left-color:#4d7898;background:#f5f9fc}.recurring-expense-item.paused{border-left-color:#a4ada8;background:#f7f8f7;opacity:.78}.recurring-expense-item span,.recurring-expense-item strong,.recurring-expense-item small{display:block}.recurring-expense-item>div:first-child>span{color:#4b765f;font-size:7px;font-weight:900;letter-spacing:.6px}.recurring-expense-item.overdue>div:first-child>span{color:#a7433f}.recurring-expense-item.today>div:first-child>span{color:#95681d}.recurring-expense-item>div:first-child>strong{margin-top:4px;color:var(--green);font-size:10px}.recurring-expense-item>div:first-child>small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.45}.recurring-expense-amount{text-align:right}.recurring-expense-amount>strong{color:var(--green);font-size:14px}.recurring-expense-amount>small{margin-top:4px;color:var(--muted);font-size:8px}.recurring-expense-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.recurring-expense-actions button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:7px;color:var(--green);background:#fff;font-size:8px;font-weight:800;cursor:pointer}.recurring-expense-actions button[data-pay-recurring-expense]{border-color:#b9d7c4;background:#eef7f1}.recurring-expense-actions button[data-toggle-recurring-expense]{color:#7c5b20;background:#fff9ec}
@media(max-width:900px){.workshop-item{grid-template-columns:1fr 1fr}.workshop-actions{grid-column:1/-1;justify-content:flex-start}.workshop-progress{text-align:left}}
@media(max-width:620px){.workshop-item{grid-template-columns:1fr}.workshop-actions{grid-column:auto}.workshop-actions button{flex:1}.workshop-line{grid-template-columns:1fr 1fr}.workshop-line .field:first-child{grid-column:1/-1}}
@media(max-width:620px){.workshop-history-summary{grid-template-columns:1fr}}
@media(max-width:760px){.workshop-schedule-grid{grid-template-columns:1fr}.workshop-deadlines>button{grid-template-columns:1fr}.workshop-deadlines>button small{text-align:left}}
@media(max-width:800px){.warranty-claim-panel .panel-header{align-items:stretch;flex-direction:column}.warranty-claim-item{grid-template-columns:1fr}.warranty-claim-money{text-align:left}.warranty-claim-actions{justify-content:stretch}.warranty-claim-actions button{flex:1}}
@media(max-width:700px){.product-photo-field,.product-profile-hero,.product-profile-grid{grid-template-columns:1fr}.product-photo-preview,.product-profile-hero>img,.product-profile-placeholder{width:100%}.product-profile-stats{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.delivery-lines>div{grid-template-columns:1fr}.goods-delivery-history article{align-items:stretch;flex-direction:column}.goods-delivery-history button{width:100%}}
@media(max-width:780px){.supplier-return-panel .panel-header{align-items:stretch;flex-direction:column}.supplier-return-item{grid-template-columns:1fr}.supplier-return-amount{text-align:left}.supplier-return-actions{justify-content:stretch}.supplier-return-actions button{flex:1}}
@media(max-width:760px){.supplier-payment-schedule-panel .panel-header{align-items:stretch;flex-direction:column}.supplier-payment-schedule-panel .panel-header button{width:100%}.supplier-payment-schedule-item{grid-template-columns:1fr}.supplier-payment-schedule-money{text-align:left}.supplier-payment-schedule-actions{justify-content:stretch}.supplier-payment-schedule-actions button{flex:1}}
@media(max-width:780px){.recurring-expense-panel .panel-header{align-items:stretch;flex-direction:column}.recurring-expense-panel .heading-actions{width:100%}.recurring-expense-panel .heading-actions button{flex:1}.recurring-expense-item{grid-template-columns:1fr}.recurring-expense-amount{text-align:left}.recurring-expense-actions{justify-content:stretch}.recurring-expense-actions button{flex:1}}
@media(max-width:800px){.treasury-forecast-panel .panel-header{align-items:stretch;flex-direction:column}.treasury-forecast-panel .heading-actions{width:100%}.treasury-forecast-panel .heading-actions>*{flex:1}.treasury-forecast-summary{grid-template-columns:1fr 1fr}.treasury-event{grid-template-columns:85px 1fr}.treasury-event>strong,.treasury-event>span{text-align:left}.treasury-risk-banner{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.treasury-forecast-summary{grid-template-columns:1fr}.treasury-event{grid-template-columns:1fr}.treasury-forecast-panel .heading-actions{flex-direction:column}}
@media(max-width:850px){.expense-budget-panel .panel-header{align-items:stretch;flex-direction:column}.expense-budget-item{grid-template-columns:1fr 1fr}.expense-budget-actions{justify-content:flex-start}.expense-budget-money{text-align:left}}
@media(max-width:560px){.expense-budget-panel .heading-actions{flex-direction:column}.expense-budget-panel .heading-actions button{width:100%}.expense-budget-item{grid-template-columns:1fr}.expense-budget-actions button{flex:1}}
@media(max-width:720px){.expense-budget-impact{grid-template-columns:1fr 1fr}.budget-overrun-heading{align-items:flex-start;flex-direction:column}.budget-overrun-item{grid-template-columns:1fr}.budget-overrun-item .expense-budget-actions{width:100%}}
@media(max-width:460px){.expense-budget-impact{grid-template-columns:1fr}}
@media(max-width:640px){.expense-control-panel .panel-header{align-items:stretch;flex-direction:column}.expense-control-panel .panel-header button{width:100%}.expense-control-item{align-items:flex-start;flex-direction:column}.expense-control-actions{width:100%}.expense-control-actions button{flex:1}}
@media(max-width:700px){.cash-advance-panel .panel-header{align-items:stretch;flex-direction:column}.cash-advance-panel .panel-header button{width:100%}.cash-advance-item{grid-template-columns:1fr}.cash-advance-amount{text-align:left}.cash-advance-actions{width:100%}.cash-advance-actions button{flex:1}.cash-advance-settlement-preview{grid-template-columns:1fr}}
@media(max-width:760px){.reservation-panel .panel-header{align-items:stretch;flex-direction:column}.reservation-item{grid-template-columns:1fr}.reservation-money{text-align:left}.reservation-actions{justify-content:stretch}.reservation-actions button{flex:1}.reservation-line{grid-template-columns:1fr 1fr}.reservation-line .field:first-child{grid-column:1/-1}.reservation-preview{grid-template-columns:1fr}}
@media(max-width:620px){.scan-button{width:40px;padding:0;font-size:0}.scan-button::after{content:"▣";font-size:17px}}
@media(max-width:700px){.package-row{grid-template-columns:1fr 1fr}.package-row .field:nth-child(2){grid-column:1/-1}.scan-entry>div{align-items:stretch;flex-direction:column}}
