@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;600;700;800&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap');

:root{--bg:#f5f7fb;--surface:#fff;--surface2:#f8fafc;--ink:#111827;--muted:#667085;--line:#e2e8f0;--brand:#111827;--brand2:#243044;--accent:#2563eb;--green:#059669;--red:#dc2626;--amber:#d97706;--shadow:0 18px 50px rgba(15,23,42,.08);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Inter',ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;letter-spacing:-.01em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
/* V55 premium typography system */
h1,h2,h3,.hero h1,.topbar h1,.card h2,.kpi b,.brand b,.doc-meta h2{
  font-family:'Plus Jakarta Sans','Inter',ui-sans-serif,system-ui,sans-serif;
  letter-spacing:-.035em;
}
.nav a,button,.btn,.badge,label,.page-kicker,.user-chip{font-family:'Inter',ui-sans-serif,system-ui,sans-serif;letter-spacing:-.012em}
.table th,.nav small{letter-spacing:.055em}
.card h2{font-size:18px;font-weight:760}.topbar h1{font-size:23px;font-weight:760}.hero h1{font-size:30px;font-weight:780}.kpi b{font-size:24px;font-weight:760}.kpi span{font-size:11px}.kpi small{font-size:12px}
button,.btn{font-size:13px;font-weight:700;min-height:36px;padding:9px 13px;border-radius:9px}.card{padding:18px;border-radius:14px}.kpi{padding:16px;border-radius:14px}.hero{padding:26px;border-radius:18px}.table td{font-size:13px}.table th{font-size:10.5px}.sidebar{font-size:13px}.nav a{padding:10px 11px;border-radius:10px;font-weight:650}.brand{border-radius:14px}.brand b{font-size:14px}.brand small{font-size:11px}.user-chip{font-size:13px;padding:7px 11px}.content{padding:22px}
input,select,textarea{font-size:13px;min-height:40px;border-radius:9px;padding:10px 11px}label{font-size:10.5px;font-weight:750}.badge{font-size:11px;padding:5px 8px;font-weight:750}

a{text-decoration:none;color:inherit}button,.btn{border:0;border-radius:12px;background:var(--brand);color:#fff;padding:11px 16px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1;min-height:42px}.btn.secondary,button.secondary{background:#eef2f7;color:#111827;border:1px solid #dbe4ef}.btn.green{background:var(--green)}.btn.red{background:var(--red)}.btn.blue{background:var(--accent)}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.actions.stacked{flex-direction:column;align-items:stretch}.actions.centered{justify-content:center}.app-shell{display:flex;min-height:100vh}.sidebar{width:286px;position:fixed;inset:0 auto 0 0;background:linear-gradient(180deg,#0b1220,#111827 55%,#172033);color:white;padding:18px;box-shadow:8px 0 35px rgba(15,23,42,.18);z-index:30}.brand{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.06);border-radius:20px;margin-bottom:18px}.brand img{width:52px;max-height:52px;object-fit:contain;background:#fff;border-radius:12px;padding:6px}.brand b{display:block;font-size:16px}.brand small{display:block;color:#aab4c5;margin-top:2px}.nav small{display:block;margin:18px 12px 8px;color:#94a3b8;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:800}.nav a{display:flex;align-items:center;gap:11px;color:#e5e7eb;padding:12px 13px;border-radius:14px;font-weight:760;margin:4px 0}.nav a span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.07);color:#cbd5e1}.nav a:hover,.nav a.active{background:#fff;color:#111827;box-shadow:0 10px 24px rgba(0,0,0,.18)}.nav a:hover span,.nav a.active span{background:#eef2ff;color:#1d4ed8}.main{margin-left:286px;flex:1;min-width:0}.topbar{height:82px;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.topbar h1{font-size:25px;margin:2px 0 0;letter-spacing:-.035em}.page-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-weight:900}.user-chip{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 13px;font-weight:800;box-shadow:0 8px 22px rgba(15,23,42,.05)}.user-chip span{width:30px;height:30px;border-radius:50%;background:#111827;color:#fff;display:grid;place-items:center}.content{padding:28px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);margin-bottom:18px}.card h2{margin:0 0 18px;font-size:20px;letter-spacing:-.025em}.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#111827,#1e3a8a);color:white;border-radius:24px;padding:32px;margin-bottom:20px;box-shadow:0 22px 60px rgba(30,58,138,.25)}.hero:after{content:"";position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.12)}.hero h1{margin:0 0 6px;font-size:34px;letter-spacing:-.04em}.hero p{margin:0;color:#dbeafe}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.kpi{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 12px 35px rgba(15,23,42,.06)}.kpi span{display:block;color:var(--muted);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.kpi b{display:block;font-size:28px;margin:7px 0 2px;letter-spacing:-.04em}.kpi small{color:var(--muted)}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}label{display:block;font-size:12px;color:#475569;font-weight:850;margin:9px 0 6px;text-transform:uppercase;letter-spacing:.035em}input,select,textarea{width:100%;border:1px solid #cfd8e3;border-radius:12px;padding:12px 13px;background:#fbfdff;color:#111827;font:inherit;min-height:44px}textarea{min-height:96px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(37,99,235,.12);border-color:#60a5fa;background:#fff}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px}.table{width:100%;border-collapse:separate;border-spacing:0}.table th{background:#f8fafc;text-align:left;color:#64748b;text-transform:uppercase;font-size:11px;letter-spacing:.055em;padding:13px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:14px;border-bottom:1px solid #eef2f7;vertical-align:middle}.table tr:last-child td{border-bottom:0}.badge{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;background:#eef2f7;color:#475569}.badge.ok,.badge.green{background:#dcfce7;color:#166534}.badge.sent{background:#dbeafe;color:#1d4ed8}.badge.bad,.badge.red{background:#fee2e2;color:#991b1b}.notice{border-radius:14px;padding:13px 15px;margin:12px 0;font-weight:760}.notice.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.notice.warn,.alert{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.notice.info{background:#eff6ff;color:#1e3a8a;border:1px solid #bfdbfe}.doc-form .card{padding:26px;border-radius:22px}.form-section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.form-section-title h2{margin:0}.line-row{display:grid;grid-template-columns:minmax(220px,2fr) 95px 90px 120px 120px 96px;gap:10px;margin-bottom:10px;align-items:center}.line-head{font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:11px;background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:11px}.line-row:not(.line-head){background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.line-actions{display:flex;gap:7px}.line-actions .btn{width:42px;height:42px;padding:0}.totals{margin-left:auto;width:min(390px,100%);background:#f8fafc;border:1px solid var(--line);border-radius:18px;padding:8px}.totals div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e5e7eb;padding:11px 12px}.totals div:last-child{border-bottom:0}.totals .grand,.totals div:last-child{font-size:19px;color:#111827}.catalog-modal{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:9999;padding:22px}.catalog-modal.open{display:flex}.catalog-panel{width:min(780px,94vw);max-height:84vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 80px rgba(15,23,42,.32);padding:20px}.catalog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.catalog-head b{display:block;font-size:21px}.catalog-head small{display:block;color:var(--muted);margin-top:4px}.catalog-results{display:grid;gap:10px;margin-top:12px}.catalog-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;background:#f8fafc;color:#111827;border:1px solid var(--line);border-radius:15px;padding:14px 16px;cursor:pointer}.catalog-item:hover{background:#eef6ff;border-color:#bfdbfe}.catalog-item span{display:flex;flex-direction:column;gap:3px}.catalog-item small{color:var(--muted)}.catalog-item strong{white-space:nowrap}.copy-row{display:flex;gap:8px}.copy-row input{font-size:12px}.mail-body{min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.signature-mail-wrap .eyebrow,.signature-public-body .eyebrow{display:inline-flex;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.signature-hero-card{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#fff,#eff6ff);border-color:#bfdbfe}.signature-hero-card h1{margin:8px 0 6px;font-size:30px;letter-spacing:-.04em}.signature-total{min-width:180px;text-align:right;font-size:26px;font-weight:950;color:#111827}.signature-total small{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.signature-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:18px}.mini-preview{margin:18px 0;padding:16px;border-radius:16px;background:#f8fafc;border:1px solid var(--line);color:#475569}.diagnostic-list{font-size:13px;color:#475569;padding-left:18px}.doc-page-bg{min-height:100vh;background:#dfe5ee;padding:18px;overflow:auto}.doc-toolbar{width:min(210mm,calc(100vw - 36px));margin:0 auto 12px;display:flex;gap:8px;justify-content:space-between;align-items:center;flex-wrap:wrap}.doc-toolbar .left,.doc-toolbar .right{display:flex;gap:8px;flex-wrap:wrap}.doc-sheet{width:min(210mm,calc(100vw - 36px));min-height:297mm;margin:0 auto;background:#fff;border:0;box-shadow:0 20px 70px rgba(15,23,42,.22);padding:12mm 12mm;color:#111827;font-size:9.6px;line-height:1.24;overflow:visible}.signature-mail-wrap .doc-page-bg{min-height:auto}.signature-mail-wrap .doc-sheet{width:100%;max-width:210mm;min-height:auto}.doc-cover-band{height:4mm;background:linear-gradient(90deg,#111827,#2563eb);margin:-12mm -12mm 8mm}.doc-top{display:grid;grid-template-columns:1.35fr .65fr;gap:10mm;align-items:start;border-bottom:1px solid #d7dde8;padding-bottom:5mm;margin-bottom:5mm}.doc-brand{display:flex;gap:9px;align-items:flex-start}.doc-brand img{max-width:24mm;max-height:14mm;object-fit:contain}.doc-company h1{font-size:16px;margin:0 0 3px;letter-spacing:-.04em}.doc-company p{margin:1px 0;color:#374151}.doc-legal{font-size:8.4px;color:#6b7280;line-height:1.35}.doc-meta{text-align:right}.doc-type{display:inline-flex;background:#111827;color:#fff;border-radius:999px;padding:4px 8px;font-size:8.4px;font-weight:900;letter-spacing:.08em;margin-bottom:5px}.doc-meta h2{font-size:22px;margin:0 0 5px;letter-spacing:-.05em}.doc-status{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:8.6px;font-weight:900;background:#eef2f7;color:#475569;margin-bottom:6px}.doc-status.ok{background:#dcfce7;color:#166534}.doc-status.sent{background:#dbeafe;color:#1d4ed8}.doc-status.bad{background:#fee2e2;color:#991b1b}.doc-meta dl{display:grid;grid-template-columns:1fr 1.05fr;gap:2px 7px;margin:0}.doc-meta dt{font-weight:850;color:#6b7280}.doc-meta dd{margin:0}.doc-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:5mm;margin-bottom:5mm}.doc-info-card{border:1px solid #dbe2ec;border-radius:10px;padding:8px 9px;min-height:0}.doc-info-card h3{font-size:10.5px;margin:0 0 4px;color:#111827;text-transform:uppercase;letter-spacing:.05em}.doc-info-card p{margin:2px 0;color:#374151}.doc-lines{width:100%;border-collapse:collapse;table-layout:fixed;font-size:9.2px}.doc-lines th{background:#111827!important;color:#fff!important;text-align:left;padding:6px 6px;font-size:8.4px;text-transform:uppercase;letter-spacing:.03em}.doc-lines th:nth-child(1){width:48%}.doc-lines th:nth-child(2){width:11%}.doc-lines th:nth-child(3){width:9%;text-align:right}.doc-lines th:nth-child(4),.doc-lines th:nth-child(5){width:16%;text-align:right}.doc-lines td{border-bottom:1px solid #e5eaf1;padding:5.5px 6px;vertical-align:top}.doc-lines td:nth-child(n+3){text-align:right}.doc-lines small{display:block;color:#6b7280;margin-top:2px;line-height:1.25}.doc-bottom{display:grid;grid-template-columns:1fr 58mm;gap:6mm;margin-top:6mm;align-items:start}.doc-notes h3{font-size:10.8px;margin:0 0 4px;text-transform:uppercase;letter-spacing:.05em}.doc-notes p{margin:0;color:#4b5563}.doc-signature-status,.doc-signed-box{border:1px dashed #aab4c5;border-radius:10px;padding:8px 9px;margin-top:5mm;background:#f8fafc}.doc-signed-box.verified{border-style:solid;border-color:#86efac;background:#f0fdf4}.doc-sign-row{display:grid;grid-template-columns:1fr 34mm;gap:8px;align-items:center}.doc-sign-img-wrap{background:#fff;border:1px solid #dbe2ec;border-radius:8px;min-height:18mm;display:flex;align-items:center;justify-content:center;padding:4px}.doc-sign-img-wrap img{max-width:100%;max-height:19mm}.doc-totals{border:1px solid #dbe2ec;border-radius:12px;overflow:hidden}.doc-totals div{display:flex;justify-content:space-between;gap:8px;padding:7px 9px;border-bottom:1px solid #e5eaf1}.doc-totals div:last-child{border-bottom:0}.doc-totals .grand{background:#111827!important;color:#fff!important;font-size:12px;font-weight:950}.doc-footer{margin-top:6mm;border-top:1px solid #e5eaf1;padding-top:3mm;color:#6b7280;font-size:8px;text-align:center}.signature-public-body{min-height:100vh;background:radial-gradient(circle at 15% 10%,#dbeafe,transparent 35%),linear-gradient(135deg,#0f172a,#1e293b);padding:22px}.signature-public-shell{width:min(1120px,96vw);margin:0 auto}.signature-public-card{background:#fff;border-radius:28px;box-shadow:0 30px 90px rgba(0,0,0,.28);overflow:hidden;border:1px solid rgba(255,255,255,.35)}.signature-public-head{display:flex;justify-content:space-between;gap:18px;padding:28px;background:linear-gradient(135deg,#fff,#eff6ff);border-bottom:1px solid #dbeafe}.signature-public-head h1{font-size:34px;margin:8px 0 6px;letter-spacing:-.05em}.signature-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:22px 28px 0}.signature-summary-grid div{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fbfdff}.signature-summary-grid b{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}.signature-summary-grid span{font-weight:900}.signature-public-actions{padding:18px 28px 0}.signature-form{padding:0 28px 28px}.canvas-wrap{border:1px solid #cfd8e3;border-radius:18px;background:#fff;padding:8px;box-shadow:inset 0 0 0 1px #f1f5f9}.canvas{border:0!important;border-radius:12px;width:100%;height:220px;background:repeating-linear-gradient(0deg,#fff,#fff 35px,#eef2f7 36px)}.signature-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;color:var(--muted);font-size:13px}.accept-line{display:flex;align-items:flex-start;gap:10px;margin:18px 0;text-transform:none!important;letter-spacing:0!important;font-size:14px!important;color:#111827!important}.accept-line input{width:auto;margin-top:3px;min-height:auto}.sign-submit{width:100%;font-size:16px;padding:15px}.signed-success{text-align:center;padding:46px 28px}.success-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#dcfce7;color:#166534;font-size:40px;font-weight:950;margin:0 auto 16px}.install{display:grid;place-items:center;min-height:100vh}.install-card{width:min(780px,92vw);background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow)}
@media(max-width:980px){.sidebar{position:static;width:auto}.app-shell{display:block}.main{margin:0}.topbar{position:static}.kpis,.grid2,.grid3,.signature-grid,.signature-summary-grid{grid-template-columns:1fr}.content{padding:18px}.line-row{grid-template-columns:1fr}.line-head{display:none}.signature-hero-card,.signature-public-head{align-items:flex-start;flex-direction:column}.signature-total{text-align:left}.doc-sheet{width:100%;min-height:auto;padding:10mm 7mm}.doc-cover-band{margin:-10mm -7mm 7mm}.doc-top,.doc-info-grid,.doc-bottom{grid-template-columns:1fr}.doc-toolbar{width:100%}}
@media print{@page{size:A4;margin:7mm}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}html,body{background:#fff!important;margin:0!important;padding:0!important}.doc-toolbar,.no-print{display:none!important}.doc-page-bg{padding:0!important;background:#fff!important;min-height:0!important;overflow:visible!important}.doc-sheet{width:100%!important;max-width:none!important;min-height:auto!important;margin:0!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;font-size:8.8px!important;line-height:1.18!important;overflow:visible!important;break-after:auto!important}.doc-cover-band{height:3mm!important;margin:0 0 5mm 0!important}.doc-top{gap:7mm!important;padding-bottom:4mm!important;margin-bottom:4mm!important}.doc-brand img{max-width:20mm!important;max-height:12mm!important}.doc-company h1{font-size:14px!important}.doc-meta h2{font-size:19px!important}.doc-info-grid{gap:4mm!important;margin-bottom:4mm!important}.doc-info-card{padding:6px 7px!important}.doc-lines{font-size:8.2px!important;page-break-inside:auto!important}.doc-lines thead{display:table-header-group!important}.doc-lines tr{page-break-inside:avoid!important;break-inside:avoid!important}.doc-lines th{padding:5px!important;font-size:7.7px!important}.doc-lines td{padding:4px 5px!important}.doc-bottom{grid-template-columns:1fr 50mm!important;gap:5mm!important;margin-top:5mm!important;page-break-inside:avoid!important;break-inside:avoid!important}.doc-signed-box,.doc-signature-status,.doc-totals,.doc-info-card{page-break-inside:avoid!important;break-inside:avoid!important}.doc-sign-row{grid-template-columns:1fr 29mm!important}.doc-sign-img-wrap{min-height:15mm!important}.doc-sign-img-wrap img{max-height:16mm!important}.doc-totals div{padding:5px 7px!important}.doc-footer{margin-top:4mm!important;padding-top:2mm!important}.doc-lines th{background:#111827!important;color:#fff!important}.doc-totals .grand{background:#111827!important;color:#fff!important}}
/* V9 professional document corrections */
.doc-top.pro-head{grid-template-columns:1.15fr .85fr;align-items:start;gap:12mm}
.pro-company{text-align:left}.doc-logo-large{display:block;max-width:42mm;max-height:26mm;object-fit:contain;margin:0 0 3mm}.pro-company h1{font-size:17px;margin:0 0 2mm;letter-spacing:-.04em}.pro-company p{margin:1.5px 0;color:#334155}.doc-info-grid.keep-two{grid-template-columns:1fr 1fr!important;gap:6mm}.doc-info-card{font-size:10px}.doc-lines.readable-lines{font-size:10.4px;line-height:1.34}.doc-lines.readable-lines th{font-size:9px;padding:7px 7px}.doc-lines.readable-lines td{padding:7px 7px}.doc-lines.readable-lines td b{font-size:10.6px}.doc-lines.readable-lines small{font-size:9.3px;line-height:1.35}.doc-bottom.pro-bottom{grid-template-columns:1fr 70mm;gap:8mm}.doc-totals.big-total{font-size:11px;border-radius:14px}.doc-totals.big-total div{padding:9px 11px}.doc-totals.big-total .grand{font-size:14px;padding:11px}.compact-sign{max-width:132mm;padding:7px 9px!important;margin-top:5mm}.compact-sign h3{font-size:10.5px;margin-bottom:5px}.compact-sign .doc-sign-row{grid-template-columns:1fr 31mm;gap:8px}.compact-sign .doc-sign-img-wrap{min-height:17mm}.compact-sign .doc-sign-img-wrap img{max-height:18mm}.sign-proof-clean small{font-size:8.6px;color:#334155}.signature-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.signature-card{border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fff,#f8fafc);padding:18px;box-shadow:0 14px 38px rgba(15,23,42,.07)}.signature-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:12px}.signature-card h3{margin:0;font-size:18px}.signature-card .meta{color:var(--muted);font-size:13px;margin-top:3px}.proof-chip{display:inline-flex;align-items:center;border-radius:999px;background:#dcfce7;color:#166534;font-weight:900;font-size:12px;padding:6px 10px}.signature-details{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.signature-details div{background:#fff;border:1px solid #e5eaf1;border-radius:14px;padding:10px}.signature-details b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}.signature-proof-hash{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#64748b;word-break:break-all;background:#fff;border:1px dashed #cbd5e1;border-radius:12px;padding:10px;margin-top:10px}.smtp-test-box{margin-top:18px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:18px;padding:18px}.smtp-test-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.smtp-result{margin-top:12px;border-radius:14px;padding:12px 14px;font-weight:800}.smtp-result.ok{background:#dcfce7;color:#166534}.smtp-result.bad{background:#fee2e2;color:#991b1b}
@media(max-width:760px){.doc-info-grid.keep-two{grid-template-columns:1fr!important}.smtp-test-row{grid-template-columns:1fr}.signature-details{grid-template-columns:1fr}}
@media print{@page{size:A4;margin:8mm}.doc-sheet{font-size:9.6px!important;line-height:1.24!important}.doc-top.pro-head{grid-template-columns:1.1fr .9fr!important;gap:8mm!important;margin-bottom:5mm!important}.doc-logo-large{max-width:36mm!important;max-height:22mm!important;margin-bottom:2mm!important}.pro-company h1{font-size:15px!important}.doc-info-grid.keep-two{grid-template-columns:1fr 1fr!important;gap:5mm!important}.doc-lines.readable-lines{font-size:9.6px!important;line-height:1.28!important}.doc-lines.readable-lines th{font-size:8.5px!important;padding:6px!important}.doc-lines.readable-lines td{padding:5.8px 6px!important}.doc-lines.readable-lines td b{font-size:9.8px!important}.doc-lines.readable-lines small{font-size:8.6px!important}.doc-bottom.pro-bottom{grid-template-columns:1fr 64mm!important;gap:6mm!important}.doc-totals.big-total div{padding:7px 9px!important}.doc-totals.big-total .grand{font-size:13px!important}.compact-sign{max-width:124mm!important;padding:6px 8px!important}.compact-sign .doc-sign-row{grid-template-columns:1fr 29mm!important}.compact-sign .doc-sign-img-wrap{min-height:15mm!important}.compact-sign .doc-sign-img-wrap img{max-height:16mm!important}.sign-proof-clean small{font-size:8px!important}}

/* V10 requested document refinements: bigger logo/text, readable products, narrow signature + total aligned right */
.doc-sheet.v10{} /* marker */
.doc-sheet{font-size:11.2px;line-height:1.38;padding:12mm 12mm 10mm}
.doc-top.pro-head{grid-template-columns:1.22fr .78fr;gap:10mm;margin-bottom:6mm;padding-bottom:6mm}.doc-logo-large{max-width:56mm!important;max-height:36mm!important;margin:0 0 4mm!important}.pro-company h1{font-size:23px!important;line-height:1.05;margin-bottom:3mm!important}.pro-company p,.pro-company .doc-legal{font-size:12.5px!important;line-height:1.42}.doc-meta h2{font-size:27px!important}.doc-type{font-size:11px!important;padding:6px 11px}.doc-status{font-size:12px!important;padding:7px 12px}.doc-meta dl{font-size:12px!important}.doc-info-card{font-size:13px!important;line-height:1.42;padding:12px 14px!important}.doc-info-card h3{font-size:15px!important;margin-bottom:8px!important}.doc-info-card strong{font-size:14px!important}.doc-lines.readable-lines{font-size:13px!important;line-height:1.45;margin-top:5mm}.doc-lines.readable-lines th{font-size:11px!important;padding:9px 9px!important}.doc-lines.readable-lines td{padding:10px 9px!important;vertical-align:top}.doc-lines.readable-lines td b{font-size:14px!important;line-height:1.25}.doc-lines.readable-lines small{font-size:12px!important;line-height:1.48;color:#475569;margin-top:4px}.doc-notes-alone{margin-top:6mm;font-size:12.5px}.doc-notes-alone h3{font-size:15px;text-transform:uppercase;margin:0 0 3mm}.doc-notes-alone p{margin:0;color:#334155}.doc-bottom.pro-bottom.sign-total-row{grid-template-columns:minmax(0,118mm) 76mm!important;gap:8mm!important;align-items:end!important;margin-top:5mm}.doc-signature-column{min-width:0}.compact-sign{width:100%;max-width:118mm!important;padding:8px 10px!important;margin:0!important}.compact-sign h3{font-size:14px!important;margin:0 0 7px!important}.compact-sign .doc-sign-row{grid-template-columns:1fr 34mm!important;gap:9px!important}.compact-sign .doc-sign-img-wrap{min-height:21mm!important}.compact-sign .doc-sign-img-wrap img{max-height:22mm!important}.sign-proof-clean b{font-size:13px}.sign-proof-clean small{font-size:10.8px!important;line-height:1.35}.doc-totals.big-total{align-self:end;width:100%;font-size:14px!important;border-radius:13px}.doc-totals.big-total div{padding:12px 13px!important}.doc-totals.big-total .grand{font-size:20px!important;padding:15px 13px!important}.doc-totals.big-total .grand b{font-size:22px}.signature-card-grid.v10{} .signature-card{position:relative;overflow:hidden}.signature-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(#22c55e,#2563eb)}.signature-card h3{font-size:22px}.signature-card .meta{font-size:14px}.signature-details div{padding:13px}.signature-proof-hash{display:none!important}
@media(max-width:760px){.doc-bottom.pro-bottom.sign-total-row{grid-template-columns:1fr!important}.doc-totals.big-total{margin-top:10px}.doc-logo-large{max-width:48mm!important}.pro-company h1{font-size:20px!important}}
@media print{@page{size:A4;margin:7mm}.doc-sheet{font-size:10.2px!important;line-height:1.32!important;padding:0!important}.doc-cover-band{height:3.5mm!important;margin:0 0 6mm!important}.doc-top.pro-head{grid-template-columns:1.18fr .82fr!important;gap:8mm!important;margin-bottom:5mm!important;padding-bottom:5mm!important}.doc-logo-large{max-width:45mm!important;max-height:28mm!important;margin-bottom:3mm!important}.pro-company h1{font-size:19px!important}.pro-company p,.pro-company .doc-legal{font-size:10.8px!important}.doc-meta h2{font-size:23px!important}.doc-info-card{font-size:11.2px!important;padding:9px 10px!important}.doc-info-card h3{font-size:12.8px!important}.doc-lines.readable-lines{font-size:10.8px!important;line-height:1.34!important}.doc-lines.readable-lines th{font-size:9.2px!important;padding:7px 8px!important}.doc-lines.readable-lines td{padding:7px 8px!important}.doc-lines.readable-lines td b{font-size:11.8px!important}.doc-lines.readable-lines small{font-size:10.2px!important;line-height:1.35!important}.doc-notes-alone{font-size:10.5px!important;margin-top:5mm!important}.doc-notes-alone h3{font-size:12px!important}.doc-bottom.pro-bottom.sign-total-row{grid-template-columns:minmax(0,112mm) 68mm!important;gap:6mm!important;align-items:end!important;margin-top:4mm!important}.compact-sign{max-width:112mm!important;padding:6px 8px!important}.compact-sign h3{font-size:11.2px!important}.compact-sign .doc-sign-row{grid-template-columns:1fr 30mm!important}.compact-sign .doc-sign-img-wrap{min-height:16mm!important}.compact-sign .doc-sign-img-wrap img{max-height:17mm!important}.sign-proof-clean b{font-size:10.8px!important}.sign-proof-clean small{font-size:8.8px!important}.doc-totals.big-total{font-size:11.2px!important}.doc-totals.big-total div{padding:8px 9px!important}.doc-totals.big-total .grand{font-size:15px!important;padding:10px 9px!important}.doc-totals.big-total .grand b{font-size:16px!important}.doc-footer{font-size:8px!important}}


/* V11 final user corrections: larger identity, safe signed preview layout, right aligned totals */
.doc-logo-large{max-width:72mm!important;max-height:46mm!important;margin-bottom:5mm!important}
.pro-company h1{font-size:27px!important;line-height:1.03!important}
.pro-company p,.pro-company .doc-legal{font-size:13.8px!important;line-height:1.48!important}
.doc-meta h2{font-size:30px!important}
.doc-info-card{font-size:14px!important}.doc-info-card h3{font-size:16px!important}.doc-info-card strong{font-size:15px!important}
.doc-lines.readable-lines{font-size:14px!important;line-height:1.5!important}
.doc-lines.readable-lines th{font-size:11.8px!important;padding:10px 10px!important}
.doc-lines.readable-lines td{padding:11px 10px!important}
.doc-lines.readable-lines td b{font-size:15px!important}
.doc-lines.readable-lines small{font-size:12.8px!important;line-height:1.5!important}
.doc-bottom.pro-bottom.sign-total-row{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;gap:8mm!important;width:100%!important;margin-top:6mm!important;overflow:visible!important}
.doc-signature-column{flex:0 0 104mm!important;max-width:104mm!important;min-width:0!important}
.compact-sign{max-width:104mm!important;width:104mm!important;padding:7px 9px!important}
.compact-sign h3{font-size:13px!important;margin-bottom:6px!important}
.compact-sign .doc-sign-row{grid-template-columns:1fr 30mm!important;gap:7px!important}
.compact-sign .doc-sign-img-wrap{min-height:18mm!important}.compact-sign .doc-sign-img-wrap img{max-height:19mm!important}
.sign-proof-clean b{font-size:12.2px!important}.sign-proof-clean small{font-size:9.8px!important}
.doc-totals.big-total{flex:0 0 80mm!important;width:80mm!important;margin-left:auto!important;transform:none!important;max-width:80mm!important}
.doc-totals.big-total div{padding:13px 14px!important}.doc-totals.big-total .grand{font-size:21px!important;padding:15px 14px!important}.doc-totals.big-total .grand b{font-size:23px!important}
@media(max-width:760px){.doc-bottom.pro-bottom.sign-total-row{display:grid!important;grid-template-columns:1fr!important}.doc-signature-column,.compact-sign,.doc-totals.big-total{width:100%!important;max-width:100%!important;flex-basis:auto!important}}
@media print{
  @page{size:A4;margin:7mm}
  .doc-logo-large{max-width:54mm!important;max-height:34mm!important;margin-bottom:3mm!important}
  .pro-company h1{font-size:21px!important}.pro-company p,.pro-company .doc-legal{font-size:11.2px!important}
  .doc-meta h2{font-size:24px!important}
  .doc-lines.readable-lines{font-size:11.2px!important;line-height:1.34!important}.doc-lines.readable-lines td b{font-size:12.2px!important}.doc-lines.readable-lines small{font-size:10.5px!important}
  .doc-bottom.pro-bottom.sign-total-row{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;gap:5mm!important;width:100%!important;margin-top:4mm!important;overflow:visible!important}
  .doc-signature-column{flex:0 0 96mm!important;max-width:96mm!important}.compact-sign{width:96mm!important;max-width:96mm!important;padding:6px 7px!important}
  .compact-sign h3{font-size:10.8px!important}.compact-sign .doc-sign-row{grid-template-columns:1fr 27mm!important}.compact-sign .doc-sign-img-wrap{min-height:15mm!important}.compact-sign .doc-sign-img-wrap img{max-height:16mm!important}
  .sign-proof-clean b{font-size:10px!important}.sign-proof-clean small{font-size:8.2px!important}
  .doc-totals.big-total{flex:0 0 74mm!important;width:74mm!important;max-width:74mm!important;margin-left:auto!important}.doc-totals.big-total div{padding:8px 9px!important}.doc-totals.big-total .grand{font-size:15.5px!important;padding:10px 9px!important}.doc-totals.big-total .grand b{font-size:16.5px!important}
}

/* V12 final document corrections requested by client */
.doc-sheet{font-size:11.2px;line-height:1.34;overflow:hidden}.doc-top.pro-head{grid-template-columns:1.12fr .88fr;gap:10mm;padding-bottom:5mm;margin-bottom:4mm}.doc-logo-large{max-width:50mm;max-height:30mm;margin:0 0 2.5mm;object-fit:contain}.pro-company h1{font-size:20px;line-height:1.05;margin:0 0 2mm}.pro-company p{font-size:10.8px;line-height:1.38}.pro-company .doc-legal{font-size:10px}.doc-meta h2{font-size:24px}.doc-info-grid.keep-two{grid-template-columns:1fr 1fr!important;gap:5mm;margin-bottom:4mm}.doc-info-card{padding:6px 7px;min-height:25mm;font-size:10.4px}.doc-info-card h3{font-size:11.4px;margin-bottom:3px}.doc-info-card p{margin:1.5px 0;line-height:1.27}.doc-lines.readable-lines{font-size:11.2px;line-height:1.38}.doc-lines.readable-lines th{font-size:9.2px;padding:6px 7px}.doc-lines.readable-lines td{padding:6.5px 7px}.doc-lines.readable-lines td b{font-size:12px}.doc-lines.readable-lines small{font-size:10.4px;line-height:1.38;margin-top:3px}.doc-bottom.pro-bottom.sign-total-row{grid-template-columns:minmax(70mm,1fr) 65mm;gap:7mm;align-items:end;margin-top:5mm}.doc-signature-column{min-width:0}.compact-sign{width:104mm;max-width:100%;padding:7px 9px!important;margin-top:0}.compact-sign h3{font-size:11.8px;margin:0 0 5px}.compact-sign .doc-sign-row{grid-template-columns:1fr 43mm;gap:9px}.compact-sign .doc-sign-img-wrap{min-height:25mm;padding:3px}.compact-sign .doc-sign-img-wrap img{max-height:24mm;max-width:100%;object-fit:contain}.sign-proof-clean b{font-size:11px}.sign-proof-clean small{font-size:9.3px;line-height:1.35}.doc-totals.big-total{justify-self:end;width:65mm;max-width:100%;font-size:12.5px;border-radius:14px}.doc-totals.big-total div{padding:10px 12px}.doc-totals.big-total .grand{font-size:17px;padding:12px}.doc-notes-alone{margin:5mm 0 0}.doc-notes-alone h3{font-size:12.2px}.signature-mail-wrap .doc-sheet{overflow:hidden}.signature-public-card .signed-success p{display:none}
@media screen and (max-width:900px){.doc-info-grid.keep-two{grid-template-columns:1fr!important}.doc-bottom.pro-bottom.sign-total-row{grid-template-columns:1fr}.doc-totals.big-total{justify-self:stretch;width:100%}.compact-sign{width:100%}}
@media print{@page{size:A4;margin:7mm}.doc-sheet{font-size:10px!important;line-height:1.25!important;overflow:hidden!important}.doc-logo-large{max-width:38mm!important;max-height:24mm!important}.pro-company h1{font-size:16px!important}.pro-company p{font-size:9px!important}.pro-company .doc-legal{font-size:8.5px!important}.doc-meta h2{font-size:20px!important}.doc-info-grid.keep-two{grid-template-columns:1fr 1fr!important;gap:4mm!important;margin-bottom:3.5mm!important}.doc-info-card{min-height:20mm!important;padding:5px 6px!important;font-size:9px!important}.doc-info-card h3{font-size:9.8px!important;margin-bottom:2px!important}.doc-lines.readable-lines{font-size:9.2px!important;line-height:1.22!important}.doc-lines.readable-lines th{font-size:7.8px!important;padding:5px!important}.doc-lines.readable-lines td{padding:4.2px 5px!important}.doc-lines.readable-lines td b{font-size:9.5px!important}.doc-lines.readable-lines small{font-size:8.2px!important;line-height:1.22!important}.doc-bottom.pro-bottom.sign-total-row{grid-template-columns:minmax(0,1fr) 56mm!important;gap:5mm!important;align-items:end!important;margin-top:4mm!important}.compact-sign{width:88mm!important;padding:5px 7px!important}.compact-sign h3{font-size:9.5px!important}.compact-sign .doc-sign-row{grid-template-columns:1fr 34mm!important}.compact-sign .doc-sign-img-wrap{min-height:20mm!important}.compact-sign .doc-sign-img-wrap img{max-height:20mm!important}.sign-proof-clean small{font-size:7.6px!important}.doc-totals.big-total{width:56mm!important;font-size:9.8px!important;justify-self:end!important}.doc-totals.big-total div{padding:6px 8px!important}.doc-totals.big-total .grand{font-size:12.5px!important;padding:8px!important}}

/* V13 REAL FIX — signed preview/print, readable products, bigger signature image only */
.doc-sheet{
  width:210mm!important; max-width:210mm!important; min-height:auto!important;
  padding:10mm 12mm!important; overflow:hidden!important; box-sizing:border-box!important;
  font-size:12.2px!important; line-height:1.42!important;
}
.doc-page-bg{overflow:auto!important; padding:18px!important;}
.doc-cover-band{height:4mm!important; margin:-10mm -12mm 7mm!important;}
.doc-top.pro-head{display:grid!important;grid-template-columns:1.16fr .84fr!important;gap:8mm!important;align-items:start!important;margin-bottom:5mm!important;padding-bottom:5mm!important;}
.doc-company.pro-company{overflow:hidden!important;}
.doc-company.pro-company .doc-logo-large,
.doc-logo-large{
  display:block!important; width:auto!important; height:auto!important;
  max-width:44mm!important; max-height:27mm!important;
  object-fit:contain!important; margin:0 0 3mm!important;
}
.pro-company h1{font-size:22px!important;line-height:1.04!important;margin:0 0 2mm!important;}
.pro-company p,.pro-company .doc-legal{font-size:11.8px!important;line-height:1.42!important;margin:1mm 0!important;}
.doc-meta h2{font-size:26px!important;}
.doc-info-grid.keep-two{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5mm!important;margin-bottom:5mm!important;}
.doc-info-card{min-height:20mm!important;padding:7px 8px!important;font-size:11.6px!important;line-height:1.32!important;}
.doc-info-card h3{font-size:12.4px!important;margin:0 0 4px!important;}
.doc-info-card strong{font-size:12.6px!important;}
.doc-info-card p{margin:2px 0!important;}
.doc-lines.readable-lines{width:100%!important;table-layout:fixed!important;font-size:12.8px!important;line-height:1.45!important;}
.doc-lines.readable-lines th{font-size:10.6px!important;padding:8px 9px!important;}
.doc-lines.readable-lines td{padding:8px 9px!important;vertical-align:top!important;}
.doc-lines.readable-lines th:first-child,.doc-lines.readable-lines td:first-child{width:48%!important;}
.doc-lines.readable-lines th:nth-child(2),.doc-lines.readable-lines td:nth-child(2){width:12%!important;}
.doc-lines.readable-lines th:nth-child(3),.doc-lines.readable-lines td:nth-child(3){width:9%!important;text-align:center!important;}
.doc-lines.readable-lines th:nth-child(4),.doc-lines.readable-lines td:nth-child(4){width:15%!important;text-align:right!important;}
.doc-lines.readable-lines th:nth-child(5),.doc-lines.readable-lines td:nth-child(5){width:16%!important;text-align:right!important;}
.doc-lines.readable-lines td b{font-size:14px!important;line-height:1.3!important;}
.doc-lines.readable-lines small{font-size:12px!important;line-height:1.45!important;margin-top:3px!important;color:#475569!important;}
.doc-bottom.pro-bottom.sign-total-row{display:grid!important;grid-template-columns:minmax(0,94mm) 68mm!important;justify-content:space-between!important;align-items:end!important;gap:8mm!important;width:100%!important;margin-top:5mm!important;overflow:hidden!important;}
.doc-signature-column{width:94mm!important;max-width:94mm!important;min-width:0!important;}
.compact-sign{width:94mm!important;max-width:94mm!important;padding:7px 9px!important;margin:0!important;}
.compact-sign h3{font-size:12px!important;margin:0 0 5px!important;}
.compact-sign .doc-sign-row{display:grid!important;grid-template-columns:1fr 45mm!important;gap:8px!important;align-items:center!important;}
.compact-sign .doc-sign-img-wrap{min-height:27mm!important;height:27mm!important;padding:2px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.compact-sign .doc-sign-img-wrap img{max-width:44mm!important;max-height:26mm!important;width:auto!important;height:auto!important;object-fit:contain!important;}
.sign-proof-clean b{font-size:11.2px!important}.sign-proof-clean small{font-size:8.8px!important;line-height:1.3!important}
.doc-totals.big-total{width:68mm!important;max-width:68mm!important;justify-self:end!important;margin:0!important;transform:none!important;font-size:12.2px!important;}
.doc-totals.big-total div{padding:10px 12px!important;}
.doc-totals.big-total .grand{font-size:18px!important;padding:12px!important;}
.doc-totals.big-total .grand b{font-size:19px!important;}
@media screen and (max-width:900px){.doc-sheet{width:210mm!important;max-width:210mm!important}.doc-info-grid.keep-two{grid-template-columns:1fr 1fr!important}.doc-bottom.pro-bottom.sign-total-row{grid-template-columns:94mm 68mm!important}.doc-totals.big-total{width:68mm!important;max-width:68mm!important}}
@media print{
  @page{size:A4;margin:7mm}
  body,.doc-page-bg{background:#fff!important;padding:0!important;margin:0!important;overflow:visible!important;}
  .no-print,.doc-toolbar{display:none!important}
  .doc-sheet{width:196mm!important;max-width:196mm!important;padding:0!important;margin:0 auto!important;box-shadow:none!important;font-size:10.8px!important;line-height:1.32!important;overflow:hidden!important;}
  .doc-cover-band{height:3.5mm!important;margin:0 0 5mm!important;}
  .doc-logo-large{max-width:34mm!important;max-height:21mm!important;margin-bottom:2mm!important;}
  .pro-company h1{font-size:17px!important}.pro-company p,.pro-company .doc-legal{font-size:9.2px!important;line-height:1.28!important}
  .doc-meta h2{font-size:21px!important}.doc-info-card{min-height:18mm!important;font-size:9.2px!important;padding:5px 6px!important}.doc-info-card h3{font-size:10px!important}.doc-info-card strong{font-size:10px!important}
  .doc-lines.readable-lines{font-size:9.8px!important;line-height:1.25!important}.doc-lines.readable-lines th{font-size:8px!important;padding:5px 6px!important}.doc-lines.readable-lines td{padding:4.8px 6px!important}.doc-lines.readable-lines td b{font-size:10.2px!important}.doc-lines.readable-lines small{font-size:8.6px!important;line-height:1.25!important}
  .doc-bottom.pro-bottom.sign-total-row{grid-template-columns:minmax(0,92mm) 60mm!important;gap:6mm!important;margin-top:4mm!important}.doc-signature-column,.compact-sign{width:92mm!important;max-width:92mm!important}.compact-sign .doc-sign-row{grid-template-columns:1fr 40mm!important}.compact-sign .doc-sign-img-wrap{height:23mm!important;min-height:23mm!important}.compact-sign .doc-sign-img-wrap img{max-width:39mm!important;max-height:22mm!important}.doc-totals.big-total{width:60mm!important;max-width:60mm!important}.doc-totals.big-total div{padding:7px 8px!important}.doc-totals.big-total .grand{font-size:14px!important;padding:9px!important}.doc-totals.big-total .grand b{font-size:15px!important}
}

/* V14 FINAL SIGNATURE + PUBLIC PREVIEW FIX
   Goal: keep signature CARD size stable, enlarge only the handwritten ink,
   prevent signed public preview logo from exploding, and make products readable. */
html, body { max-width: 100%; }
body.doc-preview-body .doc-page-bg,
body.print-preview-body .doc-page-bg{
  background:#dfe5ee!important;
  padding:18px!important;
  overflow:auto!important;
}
body.doc-preview-body .doc-sheet,
body.print-preview-body .doc-sheet{
  width:210mm!important;
  max-width:calc(100vw - 36px)!important;
  min-height:auto!important;
  padding:10mm 12mm!important;
  margin:0 auto!important;
  overflow:hidden!important;
  box-shadow:0 18px 55px rgba(15,23,42,.20)!important;
}
body.doc-preview-body .doc-company.pro-company,
body.print-preview-body .doc-company.pro-company{
  max-width:100%!important;
  overflow:hidden!important;
}
body.doc-preview-body .doc-sheet .doc-logo-large,
body.print-preview-body .doc-sheet .doc-logo-large{
  display:block!important;
  width:52mm!important;
  max-width:52mm!important;
  height:auto!important;
  max-height:34mm!important;
  object-fit:contain!important;
  object-position:left top!important;
  margin:0 0 3mm!important;
}
body.doc-preview-body .pro-company h1,
body.print-preview-body .pro-company h1{font-size:23px!important;line-height:1.05!important;margin:0 0 2.5mm!important;}
body.doc-preview-body .pro-company p,
body.doc-preview-body .pro-company .doc-legal,
body.print-preview-body .pro-company p,
body.print-preview-body .pro-company .doc-legal{font-size:12.4px!important;line-height:1.42!important;}
body.doc-preview-body .doc-info-grid.keep-two,
body.print-preview-body .doc-info-grid.keep-two{grid-template-columns:1fr 1fr!important;gap:5mm!important;}
body.doc-preview-body .doc-info-card,
body.print-preview-body .doc-info-card{min-height:22mm!important;padding:7px 9px!important;font-size:12px!important;}
body.doc-preview-body .doc-info-card h3,
body.print-preview-body .doc-info-card h3{font-size:13px!important;margin-bottom:4px!important;}
body.doc-preview-body .doc-lines.readable-lines,
body.print-preview-body .doc-lines.readable-lines{
  table-layout:fixed!important;
  font-size:14px!important;
  line-height:1.48!important;
}
body.doc-preview-body .doc-lines.readable-lines th,
body.print-preview-body .doc-lines.readable-lines th{font-size:11px!important;padding:8px 9px!important;}
body.doc-preview-body .doc-lines.readable-lines td,
body.print-preview-body .doc-lines.readable-lines td{padding:9px 9px!important;vertical-align:top!important;}
body.doc-preview-body .doc-lines.readable-lines td b,
body.print-preview-body .doc-lines.readable-lines td b{font-size:15.6px!important;line-height:1.28!important;}
body.doc-preview-body .doc-lines.readable-lines small,
body.print-preview-body .doc-lines.readable-lines small{font-size:13.2px!important;line-height:1.45!important;color:#334155!important;}
body.doc-preview-body .doc-bottom.pro-bottom.sign-total-row,
body.print-preview-body .doc-bottom.pro-bottom.sign-total-row{
  display:grid!important;
  grid-template-columns:minmax(0,94mm) 68mm!important;
  justify-content:space-between!important;
  align-items:end!important;
  gap:8mm!important;
  width:100%!important;
  overflow:hidden!important;
}
body.doc-preview-body .doc-signature-column,
body.print-preview-body .doc-signature-column,
body.doc-preview-body .compact-sign,
body.print-preview-body .compact-sign{width:94mm!important;max-width:94mm!important;}
body.doc-preview-body .compact-sign .doc-sign-row,
body.print-preview-body .compact-sign .doc-sign-row{grid-template-columns:1fr 45mm!important;align-items:center!important;}
body.doc-preview-body .compact-sign .doc-sign-img-wrap,
body.print-preview-body .compact-sign .doc-sign-img-wrap{
  height:29mm!important;
  min-height:29mm!important;
  padding:0!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.doc-preview-body .compact-sign .doc-sign-img-wrap img,
body.print-preview-body .compact-sign .doc-sign-img-wrap img{
  width:44mm!important;
  max-width:44mm!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  transform:scale(2.45)!important;
  transform-origin:center center!important;
}
body.doc-preview-body .doc-totals.big-total,
body.print-preview-body .doc-totals.big-total{width:68mm!important;max-width:68mm!important;justify-self:end!important;margin:0!important;}
@media print{
  body.doc-preview-body .doc-page-bg, body.print-preview-body .doc-page-bg{background:#fff!important;padding:0!important;overflow:visible!important;}
  body.doc-preview-body .doc-sheet, body.print-preview-body .doc-sheet{width:196mm!important;max-width:196mm!important;padding:0!important;box-shadow:none!important;}
  body.doc-preview-body .doc-sheet .doc-logo-large, body.print-preview-body .doc-sheet .doc-logo-large{width:42mm!important;max-width:42mm!important;max-height:27mm!important;}
  body.doc-preview-body .doc-lines.readable-lines, body.print-preview-body .doc-lines.readable-lines{font-size:10.8px!important;line-height:1.32!important;}
  body.doc-preview-body .doc-lines.readable-lines td b, body.print-preview-body .doc-lines.readable-lines td b{font-size:12px!important;}
  body.doc-preview-body .doc-lines.readable-lines small, body.print-preview-body .doc-lines.readable-lines small{font-size:10px!important;}
  body.doc-preview-body .compact-sign .doc-sign-img-wrap img, body.print-preview-body .compact-sign .doc-sign-img-wrap img{width:39mm!important;transform:scale(2.35)!important;}
}


/* V16 - Interface type programme Windows / bureau */
body.app-body{background:#dfe5ee!important;font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;color:#172033!important}.app-shell{background:#dfe5ee}.sidebar{width:252px!important;background:linear-gradient(180deg,#1f2937,#111827)!important;border-right:1px solid #0f172a;box-shadow:4px 0 12px rgba(0,0,0,.18)!important;padding:12px!important}.main{margin-left:252px!important}.brand{border-radius:6px!important;background:linear-gradient(180deg,#fff,#e8edf4)!important;color:#111827!important;border:1px solid #b8c3d1!important;box-shadow:inset 0 1px 0 #fff!important}.brand img{width:46px!important;height:46px!important;border-radius:4px!important;padding:2px!important}.nav small{margin:14px 8px 6px!important;font-size:10px!important;color:#a7b0bf!important}.nav a{border-radius:4px!important;padding:9px 10px!important;margin:2px 0!important;font-size:13px!important;font-weight:700!important;color:#e5e7eb!important}.nav a span{border-radius:3px!important;background:rgba(255,255,255,.08)!important}.nav a:hover,.nav a.active{background:linear-gradient(180deg,#eaf2ff,#cfe2ff)!important;color:#0f172a!important;box-shadow:none!important;border:1px solid #93b8ee!important}.topbar{height:58px!important;background:linear-gradient(180deg,#f9fbfe,#e8edf5)!important;border-bottom:1px solid #b9c4d2!important;box-shadow:0 1px 0 #fff inset!important;padding:0 18px!important}.topbar h1{font-size:20px!important;letter-spacing:0!important}.page-kicker{font-size:10px!important;color:#475569!important}.user-chip{border-radius:4px!important;background:#f8fafc!important;border:1px solid #b9c4d2!important;box-shadow:inset 0 1px 0 #fff!important;font-size:13px!important}.content{padding:16px!important}.hero.win-hero,.hero{border-radius:5px!important;background:linear-gradient(180deg,#f8fbff,#dbe7f6)!important;color:#0f172a!important;border:1px solid #aebdd0!important;box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(15,23,42,.12)!important;padding:16px 18px!important;margin-bottom:12px!important}.hero:after{display:none!important}.hero h1{font-size:24px!important;letter-spacing:0!important}.hero p{color:#334155!important;font-size:13px!important}.card,.win-panel{border-radius:5px!important;background:#f8fafc!important;border:1px solid #aebdd0!important;box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(15,23,42,.10)!important;padding:14px!important;margin-bottom:12px!important}.card h2{font-size:16px!important;margin-bottom:10px!important}.win-panel-title{display:flex;align-items:center;justify-content:space-between;margin:-14px -14px 12px;padding:8px 12px;background:linear-gradient(180deg,#edf3fb,#d8e4f2);border-bottom:1px solid #aebdd0;border-radius:5px 5px 0 0;font-weight:800;color:#0f172a}.win-panel-title span{font-size:14px}.win-panel-title small{font-size:11px;color:#475569}.win-collapsible{display:block;margin-bottom:12px;border:1px solid #8fa8c6;border-radius:5px;background:#eef4fb;box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(15,23,42,.12);overflow:hidden}.win-collapsible>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:linear-gradient(180deg,#f7fbff,#d7e6f7);border-bottom:1px solid #aebdd0;font-weight:900;color:#0f172a}.win-collapsible>summary::-webkit-details-marker{display:none}.win-collapsible>summary:before{content:"▶";font-size:11px;margin-right:8px;color:#1d4ed8}.win-collapsible[open]>summary:before{content:"▼"}.win-collapsible>summary span{display:flex;align-items:center}.win-collapsible>summary small{font-size:12px;color:#475569;font-weight:700}.win-collapsible .doc-form{padding:12px}.compact-grid{gap:10px!important}label{font-size:11px!important;color:#2f3d4f!important;margin:5px 0 4px!important}input,select,textarea{border-radius:4px!important;border:1px solid #9fb2c9!important;background:#fff!important;box-shadow:inset 0 1px 2px rgba(15,23,42,.08)!important;min-height:34px!important;padding:7px 9px!important;font-size:13px!important;color:#111827!important}select{appearance:auto!important;-webkit-appearance:menulist!important;background-color:#fff!important}.field-help{display:block;margin-top:4px;color:#64748b;font-size:11px}.btn,button{border-radius:4px!important;min-height:34px!important;padding:8px 12px!important;font-size:12px!important;background:linear-gradient(180deg,#f9fafb,#d9e1eb)!important;color:#0f172a!important;border:1px solid #8799ae!important;box-shadow:inset 0 1px 0 #fff!important}.btn.blue,button.blue{background:linear-gradient(180deg,#4f8df7,#1f5edb)!important;color:#fff!important;border-color:#1649a8!important}.btn.green{background:linear-gradient(180deg,#34d399,#059669)!important;color:#fff!important;border-color:#047857!important}.btn.red{background:linear-gradient(180deg,#fb7185,#dc2626)!important;color:#fff!important;border-color:#b91c1c!important}.btn.secondary{background:linear-gradient(180deg,#fff,#e5ebf3)!important;color:#0f172a!important}.win-toolbar{background:#e7eef7;border:1px solid #b7c5d6;border-radius:4px;padding:8px;margin-bottom:10px}.table-wrap{border:1px solid #aebdd0;border-radius:4px;overflow:auto;background:#fff}.table,.win-table{border-collapse:collapse!important;background:#fff!important}.table th,.win-table th{background:linear-gradient(180deg,#eef4fb,#d8e4f2)!important;color:#0f172a!important;border-bottom:1px solid #9fb2c9!important;font-size:12px!important;padding:9px!important;text-transform:none!important}.table td,.win-table td{border-bottom:1px solid #d8e0ea!important;padding:8px 9px!important;font-size:13px!important}.table tr:hover td{background:#eff6ff!important}.badge{border-radius:3px!important;padding:5px 8px!important;font-size:11px!important}.line-row{display:grid!important;grid-template-columns:minmax(230px,1fr) 90px 80px 120px 120px 105px!important;gap:6px!important;align-items:center!important;background:#fff;border-bottom:1px solid #d8e0ea;padding:7px!important}.line-head{background:linear-gradient(180deg,#1f2937,#111827)!important;color:#fff!important;font-size:12px!important;font-weight:800!important;border-radius:4px 4px 0 0}.line-row input{font-size:13px!important}.totals{max-width:330px;margin-left:auto!important;border-radius:4px!important;border:1px solid #aebdd0!important;overflow:hidden!important;background:#fff!important}.totals>div{padding:10px 12px!important;border-bottom:1px solid #d8e0ea!important}.totals span{font-size:12px!important}.totals b{font-size:15px!important}.catalog-panel{border-radius:5px!important;border:1px solid #8fa8c6!important}.catalog-head{background:linear-gradient(180deg,#f8fbff,#d7e6f7)!important;border-bottom:1px solid #aebdd0!important}.catalog-item{border-radius:4px!important;background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;margin-bottom:6px!important}.catalog-item:hover{background:#eff6ff!important}.win-list{margin-top:12px!important}
@media(max-width:980px){.sidebar{position:static!important;width:100%!important}.main{margin-left:0!important}.app-shell{display:block!important}.grid2,.grid3{grid-template-columns:1fr!important}.line-row{grid-template-columns:1fr!important}.win-collapsible>summary{align-items:flex-start;flex-direction:column}.totals{max-width:none!important}}

/* V17 - Modern business application UI (less old Windows, more premium desktop app) */
body.app-body{background:linear-gradient(135deg,#eef3f8 0%,#f8fafc 45%,#eef6ff 100%)!important;font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif!important;color:#172033!important}.app-shell{background:transparent!important}.sidebar{width:270px!important;background:linear-gradient(180deg,#0f172a,#172033 55%,#1e293b)!important;border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:14px 0 40px rgba(15,23,42,.18)!important;padding:18px!important}.main{margin-left:270px!important}.brand{border-radius:18px!important;background:rgba(255,255,255,.08)!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:none!important;padding:14px!important}.brand img{width:54px!important;height:54px!important;border-radius:14px!important;padding:5px!important;background:#fff!important}.brand small{color:#cbd5e1!important}.nav small{margin:18px 10px 8px!important;font-size:11px!important;color:#94a3b8!important}.nav a{border-radius:14px!important;padding:12px 13px!important;margin:5px 0!important;font-size:14px!important;font-weight:800!important;color:#e5e7eb!important;border:1px solid transparent!important}.nav a span{border-radius:10px!important;background:rgba(255,255,255,.08)!important}.nav a:hover,.nav a.active{background:#fff!important;color:#111827!important;box-shadow:0 12px 26px rgba(0,0,0,.22)!important;border-color:rgba(255,255,255,.2)!important}.topbar{height:74px!important;background:rgba(255,255,255,.82)!important;backdrop-filter:blur(18px)!important;border-bottom:1px solid rgba(203,213,225,.75)!important;box-shadow:0 8px 28px rgba(15,23,42,.06)!important;padding:0 28px!important}.topbar h1{font-size:24px!important;letter-spacing:-.035em!important}.page-kicker{font-size:11px!important;color:#64748b!important;letter-spacing:.15em!important}.user-chip{border-radius:999px!important;background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 10px 24px rgba(15,23,42,.08)!important;font-size:14px!important}.content{padding:26px!important}.hero.win-hero,.hero{border-radius:24px!important;background:linear-gradient(135deg,#ffffff,#eff6ff)!important;color:#0f172a!important;border:1px solid #dbeafe!important;box-shadow:0 20px 50px rgba(30,64,175,.10)!important;padding:28px!important;margin-bottom:20px!important}.hero h1{font-size:34px!important;letter-spacing:-.055em!important}.hero p{color:#475569!important;font-size:15px!important}.card,.win-panel{border-radius:20px!important;background:rgba(255,255,255,.94)!important;border:1px solid #e2e8f0!important;box-shadow:0 18px 45px rgba(15,23,42,.08)!important;padding:22px!important;margin-bottom:18px!important}.card h2{font-size:20px!important;margin-bottom:16px!important;letter-spacing:-.025em!important}.win-panel-title{margin:-22px -22px 18px!important;padding:16px 20px!important;background:linear-gradient(135deg,#f8fafc,#eef2ff)!important;border-bottom:1px solid #e2e8f0!important;border-radius:20px 20px 0 0!important;color:#0f172a!important}.win-panel-title span{font-size:16px!important}.win-panel-title small{font-size:12px!important;color:#64748b!important}.win-collapsible{margin-bottom:18px!important;border:1px solid #e2e8f0!important;border-radius:22px!important;background:rgba(255,255,255,.92)!important;box-shadow:0 18px 45px rgba(15,23,42,.08)!important;overflow:hidden!important}.win-collapsible>summary{padding:18px 22px!important;background:linear-gradient(135deg,#ffffff,#f1f5ff)!important;border-bottom:1px solid #e2e8f0!important;color:#0f172a!important;font-size:16px!important}.win-collapsible>summary:before{content:"+"!important;width:28px;height:28px;display:grid;place-items:center;border-radius:10px;background:#2563eb;color:#fff;font-size:19px;margin-right:12px}.win-collapsible[open]>summary:before{content:"−"!important}.win-collapsible>summary small{font-size:12px!important;color:#64748b!important}.win-collapsible .doc-form{padding:18px!important}.compact-grid{gap:16px!important}label{font-size:12px!important;color:#475569!important;margin:7px 0 6px!important;font-weight:850!important}input,select,textarea{border-radius:13px!important;border:1px solid #cbd5e1!important;background:#fff!important;box-shadow:0 1px 0 rgba(15,23,42,.02)!important;min-height:44px!important;padding:10px 12px!important;font-size:14px!important;color:#111827!important}select{appearance:auto!important;-webkit-appearance:menulist!important;color:#111827!important}.field-help{font-size:12px!important;color:#64748b!important}.btn,button{border-radius:13px!important;min-height:42px!important;padding:11px 15px!important;font-size:13px!important;background:#111827!important;color:#fff!important;border:1px solid #111827!important;box-shadow:0 10px 22px rgba(15,23,42,.12)!important}.btn.secondary,button.secondary{background:#f8fafc!important;color:#111827!important;border-color:#cbd5e1!important;box-shadow:0 8px 18px rgba(15,23,42,.06)!important}.btn.blue,button.blue{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important}.btn.green{background:#059669!important;color:#fff!important;border-color:#059669!important}.btn.red{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important}.win-toolbar{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:16px!important;padding:12px!important;margin-bottom:14px!important}.table-wrap{border:1px solid #e2e8f0!important;border-radius:18px!important;overflow:auto!important;background:#fff!important;box-shadow:0 10px 28px rgba(15,23,42,.05)!important}.table,.win-table{border-collapse:separate!important;border-spacing:0!important;background:#fff!important}.table th,.win-table th{background:#f8fafc!important;color:#475569!important;border-bottom:1px solid #e2e8f0!important;font-size:12px!important;padding:13px!important;text-transform:uppercase!important;letter-spacing:.06em!important}.table td,.win-table td{border-bottom:1px solid #edf2f7!important;padding:13px!important;font-size:14px!important}.table tr:hover td{background:#f8fbff!important}.badge{border-radius:999px!important;padding:7px 10px!important;font-size:12px!important}.line-row{grid-template-columns:minmax(280px,1fr) 95px 90px 130px 130px 110px!important;gap:9px!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:14px!important;margin-bottom:8px!important;padding:10px!important}.line-head{background:#111827!important;color:#fff!important;font-size:12px!important;font-weight:900!important;border-radius:14px!important}.line-row input{font-size:14px!important}.totals{max-width:370px!important;margin-left:auto!important;border-radius:18px!important;border:1px solid #dbe4ef!important;box-shadow:0 12px 28px rgba(15,23,42,.06)!important}.totals>div{padding:13px 15px!important;border-bottom:1px solid #e2e8f0!important}.totals span{font-size:13px!important}.totals b{font-size:17px!important}.catalog-panel{border-radius:24px!important;border:1px solid #e2e8f0!important;box-shadow:0 30px 90px rgba(15,23,42,.25)!important}.catalog-head{background:linear-gradient(135deg,#fff,#eff6ff)!important;border-bottom:1px solid #e2e8f0!important}.catalog-item{border-radius:16px!important;background:#fff!important;color:#0f172a!important;border:1px solid #e2e8f0!important;margin-bottom:8px!important}.catalog-item:hover{background:#eff6ff!important}.win-list{margin-top:18px!important}

/* V18 — PUBLIC MOBILE DOCUMENT FIX + MAIL RESPONSIVE
   Do not squeeze A4 into a phone viewport. Keep the document as a real A4 sheet
   and allow horizontal scroll; this prevents columns, totals and signature from overlapping. */
@media screen and (max-width: 760px){
  body.doc-preview-body,
  body.print-preview-body{overflow-x:auto!important;background:#dfe5ee!important;}
  body.doc-preview-body .doc-page-bg,
  body.print-preview-body .doc-page-bg{padding:10px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
  body.doc-preview-body .doc-toolbar,
  body.print-preview-body .doc-toolbar{width:210mm!important;min-width:210mm!important;margin:0 auto 10px!important;display:flex!important;justify-content:space-between!important;gap:12px!important;}
  body.doc-preview-body .doc-toolbar button,
  body.doc-preview-body .doc-toolbar .btn,
  body.print-preview-body .doc-toolbar button,
  body.print-preview-body .doc-toolbar .btn{font-size:14px!important;padding:12px 18px!important;border-radius:14px!important;white-space:nowrap!important;}
  body.doc-preview-body .doc-sheet,
  body.print-preview-body .doc-sheet{width:210mm!important;min-width:210mm!important;max-width:210mm!important;padding:10mm 12mm!important;margin:0 auto!important;overflow:hidden!important;box-sizing:border-box!important;}
  body.doc-preview-body .doc-top.pro-head,
  body.print-preview-body .doc-top.pro-head{display:grid!important;grid-template-columns:1fr 62mm!important;gap:10mm!important;align-items:start!important;}
  body.doc-preview-body .doc-info-grid.keep-two,
  body.print-preview-body .doc-info-grid.keep-two{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5mm!important;}
  body.doc-preview-body .doc-lines.readable-lines,
  body.print-preview-body .doc-lines.readable-lines{table-layout:fixed!important;width:100%!important;font-size:14px!important;}
  body.doc-preview-body .doc-lines.readable-lines th:first-child,
  body.doc-preview-body .doc-lines.readable-lines td:first-child,
  body.print-preview-body .doc-lines.readable-lines th:first-child,
  body.print-preview-body .doc-lines.readable-lines td:first-child{width:48%!important;}
  body.doc-preview-body .doc-lines.readable-lines th:nth-child(2),
  body.doc-preview-body .doc-lines.readable-lines td:nth-child(2),
  body.print-preview-body .doc-lines.readable-lines th:nth-child(2),
  body.print-preview-body .doc-lines.readable-lines td:nth-child(2){width:12%!important;}
  body.doc-preview-body .doc-lines.readable-lines th:nth-child(3),
  body.doc-preview-body .doc-lines.readable-lines td:nth-child(3),
  body.print-preview-body .doc-lines.readable-lines th:nth-child(3),
  body.print-preview-body .doc-lines.readable-lines td:nth-child(3){width:9%!important;text-align:center!important;}
  body.doc-preview-body .doc-lines.readable-lines th:nth-child(4),
  body.doc-preview-body .doc-lines.readable-lines td:nth-child(4),
  body.print-preview-body .doc-lines.readable-lines th:nth-child(4),
  body.print-preview-body .doc-lines.readable-lines td:nth-child(4){width:15%!important;text-align:right!important;}
  body.doc-preview-body .doc-lines.readable-lines th:nth-child(5),
  body.doc-preview-body .doc-lines.readable-lines td:nth-child(5),
  body.print-preview-body .doc-lines.readable-lines th:nth-child(5),
  body.print-preview-body .doc-lines.readable-lines td:nth-child(5){width:16%!important;text-align:right!important;}
  body.doc-preview-body .doc-bottom.pro-bottom.sign-total-row,
  body.print-preview-body .doc-bottom.pro-bottom.sign-total-row{display:grid!important;grid-template-columns:94mm 68mm!important;justify-content:space-between!important;align-items:end!important;gap:8mm!important;width:100%!important;overflow:hidden!important;}
  body.doc-preview-body .doc-signature-column,
  body.doc-preview-body .compact-sign,
  body.print-preview-body .doc-signature-column,
  body.print-preview-body .compact-sign{width:94mm!important;max-width:94mm!important;}
  body.doc-preview-body .doc-totals.big-total,
  body.print-preview-body .doc-totals.big-total{width:68mm!important;max-width:68mm!important;justify-self:end!important;position:static!important;transform:none!important;}
}

/* keep the ink visible, not the card huge */
body.doc-preview-body .compact-sign .doc-sign-img-wrap img,
body.print-preview-body .compact-sign .doc-sign-img-wrap img,
.doc-sheet .compact-sign .doc-sign-img-wrap img{
  width:58mm!important;
  max-width:58mm!important;
  max-height:33mm!important;
  height:auto!important;
  object-fit:contain!important;
  transform:none!important;
}
.compact-sign .doc-sign-img-wrap{overflow:hidden!important;}

/* make product lines more readable on client preview/print */
body.doc-preview-body .doc-lines.readable-lines td b,
body.print-preview-body .doc-lines.readable-lines td b{font-size:17px!important;}
body.doc-preview-body .doc-lines.readable-lines small,
body.print-preview-body .doc-lines.readable-lines small{font-size:14px!important;}
.nav a.danger-mode{background:#fee2e2!important;color:#991b1b!important;border:1px solid #fecaca!important}.danger-admin-card{border-color:#fecaca!important;background:#fff7f7!important}.btn.red{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important}
/* V18 signature ink: the proof card stays compact, only the handwritten drawing is enlarged. */
.doc-sheet .compact-sign .doc-sign-img-wrap img,
body.doc-preview-body .compact-sign .doc-sign-img-wrap img,
body.print-preview-body .compact-sign .doc-sign-img-wrap img{
  width:44mm!important;
  max-width:44mm!important;
  max-height:none!important;
  transform:scale(3.05)!important;
  transform-origin:center center!important;
}

/* V19 — center signature pages + normalize signed ink size
   Fixes Android/Gmail/Chrome mobile visual alignment and removes the oversized
   signature ink from V18 while keeping the proof card dimensions unchanged. */
body.signature-public-body{
  width:100%!important;
  min-height:100vh!important;
  margin:0!important;
  padding:22px 14px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  overflow-x:hidden!important;
}
body.signature-public-body .signature-public-shell{
  width:100%!important;
  max-width:760px!important;
  margin:0 auto!important;
  padding:0!important;
}
body.signature-public-body .signature-public-card{
  width:100%!important;
  margin:0 auto!important;
  transform:none!important;
}
body.signature-public-body .signature-public-head{
  width:100%!important;
}
body.signature-public-body .signed-success{
  width:100%!important;
  text-align:center!important;
  padding:42px 24px!important;
}

/* Signed document: card stays compact, handwritten ink is visible but not huge. */
.doc-sheet .compact-sign .doc-sign-img-wrap,
body.doc-preview-body .compact-sign .doc-sign-img-wrap,
body.print-preview-body .compact-sign .doc-sign-img-wrap{
  height:28mm!important;
  min-height:28mm!important;
  max-height:28mm!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:2mm!important;
}
.doc-sheet .compact-sign .doc-sign-img-wrap img,
body.doc-preview-body .compact-sign .doc-sign-img-wrap img,
body.print-preview-body .compact-sign .doc-sign-img-wrap img{
  width:auto!important;
  height:auto!important;
  max-width:46mm!important;
  max-height:24mm!important;
  object-fit:contain!important;
  transform:none!important;
  transform-origin:center center!important;
}

/* Keep totals and signature separated on public preview / print. */
body.doc-preview-body .doc-bottom.pro-bottom.sign-total-row,
body.print-preview-body .doc-bottom.pro-bottom.sign-total-row{
  grid-template-columns:minmax(0,94mm) 68mm!important;
  gap:8mm!important;
  align-items:end!important;
  justify-content:space-between!important;
  overflow:visible!important;
}
body.doc-preview-body .doc-totals.big-total,
body.print-preview-body .doc-totals.big-total{
  position:static!important;
  transform:none!important;
  justify-self:end!important;
  align-self:end!important;
  z-index:1!important;
}
body.doc-preview-body .compact-sign,
body.print-preview-body .compact-sign{
  z-index:0!important;
}

@media screen and (max-width:760px){
  body.signature-public-body{padding:16px 12px!important;align-items:flex-start!important;}
  body.signature-public-body .signature-public-shell{max-width:calc(100vw - 24px)!important;width:calc(100vw - 24px)!important;}
  body.signature-public-body .signature-public-card{border-radius:24px!important;}
  body.signature-public-body .signature-public-head{padding:24px 22px!important;align-items:flex-start!important;}
  body.signature-public-body .signature-public-head h1{font-size:42px!important;line-height:1.02!important;word-break:normal!important;overflow-wrap:anywhere!important;}
  body.signature-public-body .signature-public-head p{font-size:20px!important;line-height:1.35!important;}
  body.signature-public-body .signature-total{font-size:34px!important;text-align:left!important;min-width:0!important;}
  body.signature-public-body .signed-success{padding:42px 20px 46px!important;}
  body.signature-public-body .signed-success h2{font-size:32px!important;line-height:1.15!important;margin:18px 0!important;}
  body.signature-public-body .signed-success .btn{white-space:normal!important;text-align:center!important;line-height:1.25!important;}

  body.doc-preview-body .doc-page-bg,
  body.print-preview-body .doc-page-bg{padding:10px!important;}
  body.doc-preview-body .doc-toolbar,
  body.print-preview-body .doc-toolbar{margin-left:0!important;margin-right:0!important;}
}

@media print{
  .doc-sheet .compact-sign .doc-sign-img-wrap,
  body.doc-preview-body .compact-sign .doc-sign-img-wrap,
  body.print-preview-body .compact-sign .doc-sign-img-wrap{
    height:24mm!important;min-height:24mm!important;max-height:24mm!important;padding:1.5mm!important;
  }
  .doc-sheet .compact-sign .doc-sign-img-wrap img,
  body.doc-preview-body .compact-sign .doc-sign-img-wrap img,
  body.print-preview-body .compact-sign .doc-sign-img-wrap img{
    max-width:40mm!important;max-height:21mm!important;transform:none!important;
  }
}

/* V20 — Catalogue professionnel + images produits dans documents */
.catalogue-hero{background:linear-gradient(135deg,#ffffff,#eef6ff 55%,#fff7ed)!important}
.catalogue-editor .catalogue-form{padding:18px!important}
.catalogue-form-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;align-items:start}
.product-image-box{background:#f8fafc;border:1px solid #dbe4ef;border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:10px}
.product-image-box img,.product-image-box .image-placeholder{width:100%;height:210px;border-radius:16px;background:#fff;border:1px dashed #cbd5e1;display:grid;place-items:center;object-fit:contain;color:#64748b;font-weight:900}
.product-image-box input[type=file]{background:#fff;height:auto;min-height:42px}
.checkline{display:flex!important;align-items:center;gap:8px;font-size:13px!important;text-transform:none!important;letter-spacing:0!important;color:#0f172a!important}.checkline input{min-height:auto!important;width:auto!important}
.catalogue-board-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.catalogue-board-head p{margin:4px 0 0;color:#64748b}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}
.product-card{display:grid;grid-template-columns:96px minmax(0,1fr) 140px;gap:14px;align-items:center;padding:14px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.05)}
.product-card.is-disabled{opacity:.62}.product-thumb{width:96px;height:86px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0;display:grid;place-items:center;overflow:hidden}.product-thumb img{width:100%;height:100%;object-fit:contain}.product-thumb span{font-size:30px;color:#94a3b8}.product-top small{display:block;color:#2563eb;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.product-top b{display:block;font-size:17px;color:#0f172a;margin-top:3px}.product-main p{margin:8px 0 0;color:#475569;font-size:13px;line-height:1.45;max-height:58px;overflow:hidden}.product-side{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.product-side strong{font-size:18px}.product-side small{color:#64748b}.product-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #f1f5f9;padding-top:10px}.empty-state{padding:28px;text-align:center;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px}
.catalog-item{gap:12px!important;align-items:center!important}.catalog-item-img{width:54px!important;height:48px!important;object-fit:contain;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;flex:0 0 54px;display:grid;place-items:center;color:#94a3b8}.catalog-item strong{margin-left:auto;white-space:nowrap}
.doc-product-cell{display:flex;align-items:flex-start;gap:11px;min-width:0}.doc-product-img{width:54px;height:54px;object-fit:contain;border:1px solid #e2e8f0;border-radius:10px;background:#fff;flex:0 0 54px}.doc-product-cell b{display:block}.doc-product-cell small{display:block}
@media print{.doc-product-img{width:42px!important;height:42px!important}.doc-product-cell{gap:8px!important}}
@media(max-width:800px){.catalogue-form-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:82px minmax(0,1fr);}.product-side{grid-column:2;align-items:flex-start;text-align:left}.product-actions{justify-content:flex-start}.doc-product-img{width:38px;height:38px;flex-basis:38px}.doc-product-cell{gap:7px}.doc-lines.readable-lines td:first-child{min-width:190px}}


/* V21 catalogue compact + facture sans image produit */
.product-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:10px!important}
.product-card{grid-template-columns:68px minmax(0,1fr) 92px!important;gap:10px!important;padding:10px!important;border-radius:14px!important;align-items:start!important}
.product-thumb{width:68px!important;height:58px!important;border-radius:11px!important}
.product-thumb span{font-size:22px!important}.product-top small{font-size:9px!important;line-height:1.1!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.product-top b{font-size:14px!important;line-height:1.18!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.product-main p{font-size:11.5px!important;line-height:1.3!important;max-height:44px!important;margin-top:5px!important}.product-side{gap:2px!important}.product-side strong{font-size:14px!important;white-space:nowrap}.product-side small{font-size:10.5px!important;white-space:nowrap}.product-side .badge{font-size:10px!important;padding:4px 7px!important}.product-actions{padding-top:7px!important;gap:6px!important}.product-actions .btn{min-height:34px!important;padding:8px 10px!important;border-radius:9px!important;font-size:12px!important}.catalogue-board{padding:16px!important}.catalogue-board-head h2{font-size:18px!important;margin-bottom:4px!important}.catalogue-board-head p{font-size:12px!important}.catalogue-form-grid{grid-template-columns:220px minmax(0,1fr)!important;gap:16px!important}.product-image-box{padding:12px!important}.product-image-box img,.image-placeholder{height:135px!important}.catalog-item{padding:9px 11px!important;border-radius:12px!important;gap:10px!important}.catalog-item-img{width:42px!important;height:42px!important;flex:0 0 42px!important}.catalog-item span b{font-size:13px!important;line-height:1.2!important}.catalog-item span small{font-size:11px!important}.catalog-item strong{font-size:12px!important}
@media(max-width:800px){.product-card{grid-template-columns:58px minmax(0,1fr)!important}.product-thumb{width:58px!important;height:52px!important}.product-side{grid-column:1/-1!important;align-items:flex-start!important;text-align:left!important;flex-direction:row!important;gap:8px!important}.product-actions{justify-content:flex-start!important}.catalogue-form-grid{grid-template-columns:1fr!important}}


/* V23 paid invoice stamp - compact, no overflow */
.paid-stamp-wrap{display:flex;justify-content:center;align-items:center;margin:4mm 0 0;page-break-inside:avoid;break-inside:avoid;clear:both;overflow:hidden}.paid-stamp{display:inline-flex;align-items:center;justify-content:center;max-width:58mm;border:2px solid #ef233c;color:#ef233c;font-weight:950;font-size:18px;letter-spacing:.14em;text-transform:uppercase;padding:2.2mm 10mm;border-radius:2.5mm;transform:rotate(-6deg);line-height:1;background:rgba(255,255,255,.78);box-shadow:0 1px 0 rgba(239,35,60,.06);box-sizing:border-box;white-space:nowrap}
@media print{.paid-stamp-wrap{margin:3mm 0 0!important}.paid-stamp{font-size:16px!important;border-width:1.6px!important;padding:2mm 9mm!important;max-width:52mm!important}}
@media(max-width:700px){.paid-stamp-wrap{margin:10px 0 0}.paid-stamp{font-size:16px;padding:8px 26px;border-width:2px;max-width:190px}}


/* V24 — paid invoice stamp fixed inside the first page.
   The stamp no longer creates a new block after totals/footer, so it cannot fall
   onto a second print page. It sits inside the left column of the totals row. */
.doc-bottom.pro-bottom.sign-total-row .paid-stamp-wrap.in-bottom{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
  min-height:28mm!important;
  margin:0!important;
  padding:0!important;
  clear:none!important;
  overflow:visible!important;
  page-break-inside:avoid!important;
  break-inside:avoid!important;
}
.doc-bottom.pro-bottom.sign-total-row .paid-stamp-wrap.in-bottom .paid-stamp{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  max-width:54mm!important;
  border:2px solid #ef233c!important;
  color:#ef233c!important;
  font-weight:950!important;
  font-size:17px!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  padding:2mm 9mm!important;
  border-radius:2.5mm!important;
  transform:rotate(-7deg)!important;
  line-height:1!important;
  background:rgba(255,255,255,.84)!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
}
/* Legacy stamp fallback: if any old template still renders the stamp outside the bottom row, hide it to prevent page overflow. */
.doc-sheet > .paid-stamp-wrap:not(.in-bottom){display:none!important;}
@media print{
  .doc-bottom.pro-bottom.sign-total-row{page-break-inside:avoid!important;break-inside:avoid!important;}
  .doc-bottom.pro-bottom.sign-total-row .paid-stamp-wrap.in-bottom{min-height:22mm!important;align-self:end!important;}
  .doc-bottom.pro-bottom.sign-total-row .paid-stamp-wrap.in-bottom .paid-stamp{font-size:15px!important;max-width:48mm!important;padding:1.8mm 8mm!important;border-width:1.6px!important;}
  .doc-footer{page-break-before:avoid!important;}
}
@media screen and (max-width:760px){
  body.doc-preview-body .doc-bottom.pro-bottom.sign-total-row .paid-stamp-wrap.in-bottom,
  body.print-preview-body .doc-bottom.pro-bottom.sign-total-row .paid-stamp-wrap.in-bottom{width:94mm!important;min-height:24mm!important;}
}

/* V25 devis direct + contrats */
.contract-builder h3{margin:18px 0 10px;font-size:15px;color:#0f172a;text-transform:uppercase;letter-spacing:.05em}
.payment-schedule{display:grid;gap:10px;margin-bottom:10px}
.pay-row{display:grid;grid-template-columns:1.3fr .8fr .9fr .9fr;gap:10px;align-items:center;background:#f8fafc;border:1px solid #dbe4ef;border-radius:14px;padding:10px}
.contract-textarea{min-height:360px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.55;font-size:13px}
.contract-sheet .doc-lines th:nth-child(1){width:52%}.contract-sheet .doc-lines th:nth-child(2){width:10%}.contract-sheet .doc-lines th:nth-child(3),.contract-sheet .doc-lines th:nth-child(4){width:19%}
.contract-legal-text{margin-top:18px;border:1px solid #dbe4ef;border-radius:16px;padding:18px 20px;font-size:12.5px;line-height:1.55;color:#1e293b;background:#fff}
.contract-legal-text::first-line{font-weight:900;text-transform:uppercase;color:#0f172a;font-size:15px}
.contract-payment-box{margin-top:16px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:16px;padding:14px 18px;page-break-inside:avoid}
.contract-payment-box h3{margin:0 0 10px;font-size:14px;text-transform:uppercase;color:#0f172a}
.contract-payment-box div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #dbeafe;padding:8px 0;font-size:12.5px}.contract-payment-box div:first-of-type{border-top:0}
.contract-payment-box div b{padding-right:14px}.contract-payment-box div span{margin-left:auto;text-align:right}
.client-contracts{display:grid;gap:5px}.client-contracts a{display:flex;justify-content:space-between;gap:8px;text-decoration:none;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:6px 8px;color:#0f172a;font-size:12px}.client-contracts span{color:#64748b}
@media(max-width:760px){.pay-row{grid-template-columns:1fr}.contract-legal-text{font-size:11.5px;padding:14px}.contract-payment-box div{display:block}.contract-sheet{font-size:12px}}
@media print{.contract-legal-text{font-size:10.5px;line-height:1.42;padding:12px}.contract-payment-box{padding:10px 12px}.contract-payment-box div{font-size:10.5px;padding:5px 0}.contract-sheet .doc-lines{font-size:10.5px}.contract-sheet .doc-logo-large{max-width:110px!important;max-height:80px!important}}


/* V27 — Contrat: keep payment article synced + prevent euro symbol wrapping */
.contract-sheet .doc-lines{table-layout:fixed!important;width:100%!important;}
.contract-sheet .doc-lines th:nth-child(1),.contract-sheet .doc-lines td:nth-child(1){width:52%!important;}
.contract-sheet .doc-lines th:nth-child(2),.contract-sheet .doc-lines td:nth-child(2){width:10%!important;text-align:center!important;white-space:nowrap!important;}
.contract-sheet .doc-lines th:nth-child(3),.contract-sheet .doc-lines td:nth-child(3),
.contract-sheet .doc-lines th:nth-child(4),.contract-sheet .doc-lines td:nth-child(4){width:19%!important;text-align:right!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;}
.contract-sheet .doc-lines td:nth-child(3),.contract-sheet .doc-lines td:nth-child(4){font-variant-numeric:tabular-nums!important;}
@media print{
  .contract-sheet .doc-lines th:nth-child(1),.contract-sheet .doc-lines td:nth-child(1){width:50%!important;}
  .contract-sheet .doc-lines th:nth-child(2),.contract-sheet .doc-lines td:nth-child(2){width:10%!important;}
  .contract-sheet .doc-lines th:nth-child(3),.contract-sheet .doc-lines td:nth-child(3),
  .contract-sheet .doc-lines th:nth-child(4),.contract-sheet .doc-lines td:nth-child(4){width:20%!important;white-space:nowrap!important;}
}


/* V28 — contrat signature pad larger and easier to sign.
   Only the contract signing screen is affected; devis/document proof sizes stay unchanged. */
body.contract-sign-body .signature-public-shell{
  max-width:860px!important;
}
body.contract-sign-body .signature-form{
  padding:0 34px 34px!important;
}
body.contract-sign-body .canvas-wrap{
  border:2px solid #b8c7d9!important;
  border-radius:22px!important;
  padding:10px!important;
  background:#ffffff!important;
  box-shadow:inset 0 0 0 1px #eef2f7, 0 14px 34px rgba(15,23,42,.06)!important;
}
body.contract-sign-body .canvas{
  height:320px!important;
  min-height:320px!important;
  background:linear-gradient(#fff,#fff), repeating-linear-gradient(0deg,#fff,#fff 39px,#eef2f7 40px)!important;
  border-radius:16px!important;
  touch-action:none!important;
}
body.contract-sign-body .signature-tools span{
  font-size:14px!important;
}
@media screen and (max-width:760px){
  body.contract-sign-body .signature-public-shell{
    max-width:calc(100vw - 18px)!important;
    width:calc(100vw - 18px)!important;
  }
  body.contract-sign-body .signature-form{
    padding:0 18px 26px!important;
  }
  body.contract-sign-body .canvas{
    height:360px!important;
    min-height:360px!important;
  }
  body.contract-sign-body .signature-tools{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
}

/* V34 — Facture: RIB wording + acompte/reste inside totals */
.doc-totals.big-total .total-acompte,
.doc-totals.big-total .total-reste,
.doc-totals.big-total .total-method{background:#fff!important;color:#0f172a!important;border-top:1px solid #e5e7eb!important;font-size:11.5px!important;}
.doc-totals.big-total .total-reste{background:#fff7ed!important;color:#9a3412!important;font-weight:900!important;}
.doc-totals.big-total .total-reste b{color:#9a3412!important;}
.doc-totals.big-total .total-method b{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:34mm;text-align:right;}
@media print{
  .doc-totals.big-total .total-acompte,
  .doc-totals.big-total .total-reste,
  .doc-totals.big-total .total-method{font-size:8.8px!important;padding:5px 7px!important;}
  .doc-totals.big-total .total-method b{font-size:8.6px!important;max-width:28mm;}
}

/* V35 — Facture acompte: compact block at left of totals + acompte date */
.invoice-payment-side{
  width:100%;
  max-width:60mm;
  margin:0 0 4mm auto;
  background:#fff;
  border:1px solid #d9e2ef;
  border-radius:12px;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
  overflow:hidden;
  font-size:9.4px;
  line-height:1.15;
}
.invoice-payment-side:empty{display:none!important;}
.invoice-payment-side div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  padding:4.5px 7px;
  border-bottom:1px solid #eef2f7;
}
.invoice-payment-side div:last-child{border-bottom:0;}
.invoice-payment-side span{
  color:#64748b;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.025em;
  white-space:nowrap;
}
.invoice-payment-side b{
  color:#0f172a;
  font-weight:950;
  text-align:right;
  white-space:nowrap;
}
.invoice-payment-side .reste{background:#fff7ed;}
.invoice-payment-side .reste span,.invoice-payment-side .reste b{color:#9a3412;}
.doc-totals.big-total .total-acompte,
.doc-totals.big-total .total-reste,
.doc-totals.big-total .total-method{display:none!important;}
@media print{
  .invoice-payment-side{
    max-width:52mm!important;
    font-size:7.8px!important;
    border-radius:8px!important;
    margin-bottom:3mm!important;
  }
  .invoice-payment-side div{padding:3px 5px!important;}
  .invoice-payment-side span{letter-spacing:0!important;}
}

.ht-only-note{display:block;margin-top:8px;color:#64748b;font-size:11px;font-weight:700;text-align:right}.doc-totals .grand.ht-only{border-top:0;margin-top:0;padding-top:0}.delete-mode-form{margin-top:0}

/* v40 cash/client select fixes */
#clientSelect{font-weight:700!important;color:#111827!important}
.doc-totals .ht-only span,.doc-totals .ht-only b{white-space:nowrap!important}

/* V41 — Professional compact login page */
.login-pro-body{
  min-height:100vh;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:
    radial-gradient(circle at 15% 15%, rgba(37,99,235,.24), transparent 32%),
    radial-gradient(circle at 85% 10%, rgba(14,165,233,.18), transparent 30%),
    linear-gradient(135deg,#08111f 0%,#0f172a 46%,#111827 100%);
  color:#0f172a;
  font-family:Inter,Arial,Helvetica,sans-serif;
  overflow-x:hidden;
}
.login-pro-shell{
  width:min(920px,100%);
  min-height:500px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(255,255,255,.45);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 28px 90px rgba(0,0,0,.34);
  backdrop-filter:blur(18px);
}
.login-pro-brand{
  position:relative;
  padding:38px;
  background:linear-gradient(155deg,#f8fafc 0%,#eef6ff 100%);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:24px;
  overflow:hidden;
}
.login-pro-glow{
  position:absolute;
  width:270px;height:270px;
  right:-95px;top:-85px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(245,158,11,.20));
  filter:blur(2px);
}
.login-pro-logo-wrap{position:relative;z-index:1;display:flex;align-items:center;min-height:96px;}
.login-pro-logo{
  width:170px;
  max-height:96px;
  object-fit:contain;
  object-position:left center;
  display:block;
  filter:drop-shadow(0 10px 22px rgba(15,23,42,.12));
}
.login-pro-logo-fallback{
  width:82px;height:82px;border-radius:24px;
  background:linear-gradient(135deg,#0f172a,#2563eb);
  color:#fff;display:flex;align-items:center;justify-content:center;
  font-size:28px;font-weight:950;letter-spacing:-.04em;
  box-shadow:0 16px 36px rgba(37,99,235,.28);
}
.login-pro-kicker{
  color:#2563eb;
  font-size:12px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:10px;
}
.login-pro-brand h1{
  margin:0;
  color:#0f172a;
  font-size:34px;
  line-height:1.05;
  letter-spacing:-.04em;
}
.login-pro-brand p{
  margin:14px 0 0;
  color:#475569;
  font-size:15px;
  line-height:1.65;
  max-width:390px;
}
.login-pro-pills{display:flex;flex-wrap:wrap;gap:8px;position:relative;z-index:1;}
.login-pro-pills span{
  padding:8px 11px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dbe4ef;
  color:#334155;
  font-size:12px;
  font-weight:850;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
}
.login-pro-card{
  padding:42px 38px;
  background:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.login-pro-card-head{display:flex;align-items:center;gap:14px;margin-bottom:24px;}
.login-pro-lock{
  width:46px;height:46px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  background:#eff6ff;border:1px solid #bfdbfe;
  font-size:20px;
}
.login-pro-card h2{margin:0;color:#0f172a;font-size:26px;letter-spacing:-.03em;}
.login-pro-card p{margin:4px 0 0;color:#64748b;font-size:13px;font-weight:750;}
.login-pro-form label{
  display:block;
  margin:13px 0 7px;
  color:#334155;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.login-pro-form input{
  width:100%;
  box-sizing:border-box;
  border:1px solid #d8e2ee;
  background:#f8fafc;
  border-radius:14px;
  padding:14px 15px;
  font-size:15px;
  font-weight:700;
  outline:none;
  transition:.18s ease;
}
.login-pro-form input:focus{
  border-color:#2563eb;
  background:#fff;
  box-shadow:0 0 0 4px rgba(37,99,235,.12);
}
.login-pro-button{
  width:100%;
  margin-top:20px;
  border:0;
  border-radius:15px;
  padding:15px 18px;
  background:linear-gradient(135deg,#0f172a,#2563eb);
  color:#fff;
  font-weight:950;
  font-size:15px;
  cursor:pointer;
  box-shadow:0 14px 28px rgba(37,99,235,.22);
}
.login-pro-button:hover{filter:brightness(1.05);transform:translateY(-1px);}
.login-pro-alert{border-radius:14px;margin-bottom:12px;}
.login-pro-foot{
  margin-top:18px;
  text-align:center;
  color:#94a3b8;
  font-size:11.5px;
  font-weight:750;
}
@media(max-width:780px){
  .login-pro-body{padding:14px;align-items:flex-start;}
  .login-pro-shell{grid-template-columns:1fr;min-height:auto;border-radius:22px;}
  .login-pro-brand{padding:26px 24px 20px;gap:16px;}
  .login-pro-logo-wrap{min-height:72px;}
  .login-pro-logo{width:145px;max-height:74px;}
  .login-pro-brand h1{font-size:26px;}
  .login-pro-brand p{font-size:13.5px;margin-top:9px;}
  .login-pro-pills{display:none;}
  .login-pro-card{padding:26px 24px 28px;}
  .login-pro-card-head{margin-bottom:16px;}
}

/* V42 — login brand header centered */
.login-pro-brand{
  text-align:center!important;
  align-items:center!important;
}
.login-pro-logo-wrap{
  justify-content:center!important;
  width:100%!important;
  min-height:112px!important;
}
.login-pro-logo{
  width:220px!important;
  max-height:118px!important;
  object-position:center center!important;
  margin:0 auto!important;
}
.login-pro-logo-fallback{
  margin:0 auto!important;
}
.login-pro-brand h1,
.login-pro-brand p,
.login-pro-kicker{
  text-align:center!important;
}
.login-pro-brand p{
  max-width:430px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.login-pro-pills{
  justify-content:center!important;
}
@media(max-width:780px){
  .login-pro-logo-wrap{min-height:92px!important;}
  .login-pro-logo{width:190px!important;max-height:98px!important;}
  .login-pro-brand{padding-top:30px!important;}
}

/* V43 — Mobile application shell + root login routing */
.mobile-open-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#111827;font-weight:900;margin-right:10px;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.mobile-app-body{min-height:100vh;background:linear-gradient(180deg,#0f172a 0%,#111827 28%,#eef4fb 28%,#f8fafc 100%);padding:env(safe-area-inset-top) 0 calc(86px + env(safe-area-inset-bottom));font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#0f172a;overflow-x:hidden}.mobile-app-shell{width:min(100%,520px);margin:0 auto;padding:18px 14px 0}.mobile-hero-card{position:relative;overflow:hidden;border-radius:28px;background:linear-gradient(135deg,#fff,#eaf2ff);padding:20px;box-shadow:0 22px 60px rgba(15,23,42,.24);border:1px solid rgba(255,255,255,.65)}.mobile-hero-card:after{content:"";position:absolute;right:-58px;top:-70px;width:175px;height:175px;border-radius:50%;background:linear-gradient(135deg,rgba(37,99,235,.18),rgba(250,204,21,.25));filter:blur(.2px)}.mobile-hero-top{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.mobile-logo-box{width:74px;height:74px;border-radius:22px;background:#fff;display:grid;place-items:center;box-shadow:0 14px 30px rgba(15,23,42,.10);border:1px solid #e5eaf2}.mobile-logo-box img{width:62px;max-height:62px;object-fit:contain}.mobile-logo-box b{font-size:22px}.mobile-logout{position:relative;z-index:1;background:#0f172a;color:#fff;border-radius:999px;padding:10px 14px;font-weight:900;font-size:12px}.mobile-kicker{position:relative;z-index:1;margin-top:18px;color:#2563eb;text-transform:uppercase;letter-spacing:.16em;font-weight:950;font-size:12px}.mobile-hero-card h1{position:relative;z-index:1;margin:6px 0 6px;font-size:30px;line-height:1.02;letter-spacing:-.05em}.mobile-hero-card p{position:relative;z-index:1;margin:0;color:#475569;font-weight:650;line-height:1.45}.mobile-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.mobile-action{background:#fff;border:1px solid #dce5f1;border-radius:22px;padding:16px;box-shadow:0 16px 40px rgba(15,23,42,.08);min-height:122px;display:flex;flex-direction:column;justify-content:space-between}.mobile-action span{width:40px;height:40px;border-radius:14px;background:#eef4ff;color:#2563eb;display:grid;place-items:center;font-size:20px;font-weight:950}.mobile-action b{font-size:17px;letter-spacing:-.02em}.mobile-action small{color:#64748b;font-weight:750}.mobile-action.primary{background:linear-gradient(135deg,#111827,#2563eb);color:#fff;border:0}.mobile-action.primary span{background:rgba(255,255,255,.18);color:#fff}.mobile-action.primary small{color:#dbeafe}.mobile-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.mobile-stats-row div{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:12px 8px;text-align:center;box-shadow:0 10px 25px rgba(15,23,42,.05)}.mobile-stats-row span{display:block;color:#64748b;font-size:10px;text-transform:uppercase;font-weight:950;letter-spacing:.04em}.mobile-stats-row b{display:block;margin-top:4px;font-size:20px}.mobile-money-card{margin-top:14px;background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:14px;box-shadow:0 16px 40px rgba(15,23,42,.07);display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-money-card div{background:#f8fafc;border-radius:18px;padding:13px}.mobile-money-card span{display:block;color:#64748b;font-size:11px;text-transform:uppercase;font-weight:950;letter-spacing:.05em}.mobile-money-card b{display:block;margin-top:6px;font-size:18px;letter-spacing:-.03em}.mobile-panel{margin-top:14px;background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:14px;box-shadow:0 16px 40px rgba(15,23,42,.07)}.mobile-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.mobile-panel-head h2{margin:0;font-size:18px}.mobile-panel-head a{font-size:12px;color:#2563eb;font-weight:900}.mobile-empty{color:#64748b;margin:10px 0}.mobile-doc-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #eef2f7}.mobile-doc-row:first-of-type{border-top:0}.mobile-doc-type{background:#eef2ff;color:#1d4ed8;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:950}.mobile-doc-row b{display:block}.mobile-doc-row small{display:block;color:#64748b;margin-top:2px}.mobile-doc-row strong{white-space:nowrap}.mobile-bottom-nav{position:fixed;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(520px,calc(100% - 20px));background:rgba(15,23,42,.94);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:8px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;z-index:100;box-shadow:0 22px 60px rgba(15,23,42,.28)}.mobile-bottom-nav a{color:#cbd5e1;display:flex;flex-direction:column;align-items:center;gap:3px;border-radius:17px;padding:8px 4px;font-weight:900;font-size:18px}.mobile-bottom-nav a span{font-size:10px}.mobile-bottom-nav a.active,.mobile-bottom-nav a:hover{background:#fff;color:#0f172a}

@media (max-width: 860px){
  body.app-body{background:#f3f6fb;overflow-x:hidden}.app-shell{display:block;min-height:100vh}.sidebar{display:none}.main{margin-left:0;width:100%;padding-bottom:82px}.topbar{height:auto;min-height:74px;padding:14px 16px;border-radius:0 0 22px 22px;align-items:flex-start;gap:10px}.topbar h1{font-size:22px;line-height:1.1}.page-kicker{font-size:10px}.user-chip{display:none}.mobile-open-link{display:inline-flex;margin-left:auto;margin-right:0;background:#111827;color:#fff;border-color:#111827}.content{padding:14px}.hero{padding:20px;border-radius:22px}.hero h1{font-size:27px}.kpis,.grid2,.grid3{grid-template-columns:1fr!important}.card{padding:16px;border-radius:18px;margin-bottom:14px}.card h2{font-size:18px}.table-wrap{border-radius:14px;overflow:auto;-webkit-overflow-scrolling:touch}.table{min-width:680px}.actions{gap:7px}.actions .btn,.actions button,.btn,button{min-height:40px;padding:10px 12px;font-size:13px}input,select,textarea{min-height:42px;font-size:16px}.form-collapsible,.collapse-panel,.modern-panel{border-radius:18px}.doc-toolbar{position:sticky;top:0;z-index:80;padding:10px;display:flex;gap:8px;overflow:auto}.doc-toolbar .btn{white-space:nowrap}}
@media (max-width: 430px){.mobile-app-shell{padding-left:10px;padding-right:10px}.mobile-hero-card h1{font-size:26px}.mobile-quick-grid{gap:10px}.mobile-action{min-height:112px;padding:14px}.mobile-action b{font-size:15px}.mobile-stats-row{gap:6px}.mobile-stats-row div{padding:10px 4px}.mobile-stats-row b{font-size:17px}.mobile-money-card{grid-template-columns:1fr}.mobile-doc-row{grid-template-columns:auto 1fr}.mobile-doc-row strong{grid-column:2;justify-self:start}.mobile-bottom-nav{width:calc(100% - 12px);border-radius:20px}.mobile-bottom-nav a span{font-size:9px}}

/* V44 — Real mobile app interface. Desktop UI untouched. */
@media (min-width:861px){.mobile-open-link{display:none!important}}
.v44-mobile.mobile-app-body{
  background:linear-gradient(180deg,#0b1220 0,#111827 190px,#eef3f8 190px,#f8fafc 100%);
  padding-bottom:calc(78px + env(safe-area-inset-bottom));
  -webkit-text-size-adjust:100%;
}
.v44-mobile .mobile-app-shell{width:min(100%,560px);padding:12px 12px 0;margin:0 auto;box-sizing:border-box;}
.mapp-header{height:58px;display:flex;align-items:center;justify-content:space-between;color:#fff;margin-bottom:10px}
.mapp-brand-mini{display:flex;align-items:center;gap:10px;min-width:0}.mapp-logo{width:42px;height:42px;border-radius:14px;background:#fff;display:grid;place-items:center;box-shadow:0 10px 24px rgba(0,0,0,.2);flex:0 0 auto}.mapp-logo img{width:34px;max-height:34px;object-fit:contain}.mapp-logo b{color:#0f172a}.mapp-brand-mini b{display:block;font-size:15px;line-height:1;max-width:245px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mapp-brand-mini small{display:block;margin-top:4px;color:#cbd5e1;font-size:11px;font-weight:750}.mapp-icon-btn{width:40px;height:40px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.13);display:grid;place-items:center;color:#fff;font-size:20px;font-weight:900;text-decoration:none}
.mapp-hero,.mapp-title,.mapp-panel,.mapp-doc-card,.mapp-client-card,.mapp-money,.mapp-product-card{background:#fff;border:1px solid #dde6f2;box-shadow:0 14px 36px rgba(15,23,42,.08)}
.mapp-hero{border-radius:24px;padding:18px;margin-bottom:12px;background:linear-gradient(135deg,#fff,#eef6ff)}.mapp-hero span,.mapp-title span{color:#2563eb;text-transform:uppercase;letter-spacing:.12em;font-size:10.5px;font-weight:950}.mapp-hero h1{margin:5px 0 6px;font-size:26px;letter-spacing:-.04em}.mapp-hero p{margin:0;color:#475569;font-size:13px;line-height:1.35;font-weight:650}.mapp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.mapp-kpis a{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:10px 5px;text-align:center;text-decoration:none;color:#0f172a;box-shadow:0 8px 24px rgba(15,23,42,.05)}.mapp-kpis span{display:block;color:#64748b;font-size:9px;text-transform:uppercase;font-weight:950}.mapp-kpis b{display:block;font-size:18px;margin-top:4px}.mapp-money{border-radius:20px;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.mapp-money div{background:#f8fafc;border-radius:16px;padding:12px}.mapp-money span{display:block;color:#64748b;font-size:10px;text-transform:uppercase;font-weight:950}.mapp-money b{display:block;margin-top:4px;font-size:16px;letter-spacing:-.03em}.mapp-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.mapp-actions-grid a{display:flex;flex-direction:column;justify-content:center;min-height:70px;border-radius:18px;background:#fff;border:1px solid #dfe7f1;color:#0f172a;padding:12px;text-decoration:none;box-shadow:0 10px 28px rgba(15,23,42,.06)}.mapp-actions-grid a.primary{background:linear-gradient(135deg,#111827,#2563eb);color:#fff;border:0}.mapp-actions-grid b{font-size:14px}.mapp-actions-grid small{margin-top:5px;color:#64748b;font-weight:750}.mapp-actions-grid a.primary small{color:#dbeafe}.mapp-panel{border-radius:22px;padding:13px;margin-bottom:12px}.mapp-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.mapp-panel h2{margin:0;font-size:17px}.mapp-empty{background:#fff;border:1px dashed #cbd5e1;border-radius:18px;padding:18px;text-align:center;color:#64748b;font-weight:750}.mapp-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #edf2f7;color:#0f172a;text-decoration:none}.mapp-row:first-of-type{border-top:0}.mapp-row span{background:#eef2ff;color:#1d4ed8;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:950}.mapp-row b,.mapp-doc-top b,.mapp-client-card b,.mapp-product-card b{display:block;font-size:15px}.mapp-row small,.mapp-doc-top small,.mapp-client-card small,.mapp-product-card small{display:block;color:#64748b;margin-top:2px;font-size:12px;font-weight:750}.mapp-row strong{font-size:13px;white-space:nowrap}.mapp-title{border-radius:22px;padding:15px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#fff,#f8fbff)}.mapp-title h1{margin:3px 0 0;font-size:25px;letter-spacing:-.04em}.mapp-title a{background:#0f172a;color:#fff;border-radius:14px;padding:10px 12px;font-size:12px;font-weight:950;text-decoration:none;white-space:nowrap}.mapp-doc-card,.mapp-client-card{border-radius:20px;padding:13px;margin-bottom:10px}.mapp-doc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.mapp-doc-top .badge{font-size:10px;padding:5px 8px;white-space:nowrap}.mapp-doc-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f8fafc;border-radius:14px;padding:10px;margin-top:10px}.mapp-doc-meta span{color:#64748b;font-size:12px;font-weight:800}.mapp-doc-meta strong{font-size:16px;letter-spacing:-.02em;text-align:right}.mapp-doc-meta em{display:block;font-size:9.5px;color:#64748b;font-style:normal;text-transform:uppercase;letter-spacing:.04em}.mapp-doc-sub{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.mapp-doc-sub span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:6px 8px;color:#475569;font-size:11px;font-weight:850}.mapp-doc-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.mapp-doc-actions a{border:1px solid #d9e3f0;background:#fff;border-radius:12px;padding:9px 10px;font-size:12px;font-weight:900;color:#0f172a;text-decoration:none}.mapp-doc-actions a:nth-child(2){background:#2563eb;color:#fff;border-color:#2563eb}.mapp-doc-actions a.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}.mapp-client-card p{margin:8px 0 0;color:#475569;font-size:12.5px;line-height:1.35}.mapp-product-grid{display:grid;grid-template-columns:1fr;gap:10px}.mapp-product-card{border-radius:18px;padding:10px;display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:center}.mapp-product-card img,.mapp-product-img{width:58px;height:58px;border-radius:14px;background:#f1f5f9;border:1px solid #e2e8f0;object-fit:cover;display:grid;place-items:center;color:#64748b;font-weight:950}.mapp-product-card span{display:block;margin-top:5px;font-weight:950;font-size:13px}.mapp-setting-row{display:flex;justify-content:space-between;align-items:center;border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:13px;margin-bottom:10px}.mapp-setting-row span{font-weight:850;color:#475569}.mapp-setting-row b{font-weight:950}.mapp-wide-btn{display:block;text-align:center;background:#0f172a;color:#fff;text-decoration:none;border-radius:15px;padding:13px;margin-top:9px;font-weight:950}.mapp-wide-btn.ghost{background:#fff;color:#0f172a;border:1px solid #d9e3f0}.v44-nav.mobile-bottom-nav{height:58px;bottom:calc(8px + env(safe-area-inset-bottom));border-radius:22px;padding:6px;box-sizing:border-box}.v44-nav.mobile-bottom-nav a{font-size:16px;padding:5px 3px;border-radius:16px;min-width:0}.v44-nav.mobile-bottom-nav a span{font-size:9.5px;line-height:1}
@media(max-width:390px){.mapp-doc-actions a{font-size:11px;padding:8px 8px}.mapp-title h1{font-size:22px}.mapp-money{grid-template-columns:1fr}.mapp-kpis{gap:6px}.mapp-kpis b{font-size:16px}}

/* V44 — When a full admin page is opened from a phone, keep it usable instead of oversized/side-scrolling. */
@media (max-width:860px){
  .topbar{display:none!important}.content{padding:10px!important}.card{padding:12px!important;border-radius:18px!important}.card h2{font-size:17px!important}.actions .btn,.actions button,.btn,button{min-height:34px!important;padding:8px 10px!important;font-size:12px!important;border-radius:10px!important}.table-wrap{overflow:visible!important;border:0!important}.win-table,.table{min-width:0!important;width:100%!important;border-collapse:separate!important;border-spacing:0 10px!important}.win-table tr,.table tr{display:block;background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:10px;padding:10px;box-shadow:0 10px 24px rgba(15,23,42,.05)}.win-table tr:first-child,.table tr:first-child{display:none}.win-table td,.table td{display:flex!important;justify-content:space-between;gap:10px;border:0!important;padding:5px 0!important;text-align:right!important;font-size:12px!important}.win-table td:first-child,.table td:first-child{font-size:14px!important;font-weight:950!important;text-align:left!important}.win-table td .actions,.table td .actions,.win-table td.actions,.table td.actions{display:flex!important;justify-content:flex-start!important;flex-wrap:wrap!important;width:100%;text-align:left!important}.grid2,.grid3{grid-template-columns:1fr!important}input,select,textarea{font-size:16px!important}.collapse-panel,.win-panel{padding:12px!important}.doc-page-bg{overflow:auto!important;-webkit-overflow-scrolling:touch}.mobile-open-link{display:none!important}
}


/* V45 — Mobile fix: opening full admin/create screens from the mobile app must not shift or overflow. Desktop remains untouched. */
@media (max-width:860px){
  html, body{max-width:100%!important;overflow-x:hidden!important;}
  body.app-body{background:#eef3f8!important;min-width:0!important;}
  body.app-body .app-shell{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow-x:hidden!important;}
  body.app-body .sidebar{display:none!important;}
  body.app-body .main{margin-left:0!important;width:100%!important;max-width:100%!important;min-width:0!important;transform:none!important;padding-bottom:calc(76px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important;}
  body.app-body .content{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:12px!important;overflow-x:hidden!important;}
  body.app-body .hero.win-hero,
  body.app-body .hero{width:100%!important;margin:0 0 12px!important;padding:18px!important;border-radius:20px!important;}
  body.app-body .hero h1{font-size:26px!important;line-height:1.05!important;word-break:normal!important;}
  body.app-body .hero p{font-size:13px!important;line-height:1.35!important;}
  body.app-body .win-collapsible,
  body.app-body .card,
  body.app-body .win-list,
  body.app-body .win-panel{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;border-radius:18px!important;box-sizing:border-box!important;}
  body.app-body .win-collapsible>summary{padding:14px!important;font-size:14px!important;display:flex!important;align-items:center!important;gap:9px!important;}
  body.app-body .win-collapsible>summary span{font-size:15px!important;line-height:1.15!important;}
  body.app-body .win-collapsible>summary small{display:block!important;font-size:11px!important;line-height:1.25!important;}
  body.app-body .win-collapsible .doc-form{padding:12px!important;}
  body.app-body .doc-form,
  body.app-body form{max-width:100%!important;overflow-x:hidden!important;}
  body.app-body .grid2,
  body.app-body .grid3,
  body.app-body .compact-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  body.app-body .line-head{display:none!important;}
  body.app-body .line-row{display:grid!important;grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:8px!important;padding:10px!important;border-radius:16px!important;}
  body.app-body .line-row > *{min-width:0!important;width:100%!important;}
  body.app-body .line-actions{display:flex!important;gap:8px!important;justify-content:flex-start!important;}
  body.app-body .line-actions .btn{width:auto!important;min-width:38px!important;}
  body.app-body input,
  body.app-body select,
  body.app-body textarea{width:100%!important;max-width:100%!important;font-size:16px!important;min-height:42px!important;border-radius:12px!important;}
  body.app-body label{font-size:11px!important;margin-top:7px!important;}
  body.app-body .actions{gap:7px!important;display:flex!important;flex-wrap:wrap!important;}
  body.app-body .actions .btn,
  body.app-body .actions button,
  body.app-body .btn,
  body.app-body button{min-height:36px!important;padding:9px 11px!important;font-size:12px!important;border-radius:11px!important;white-space:normal!important;}
  body.app-body .totals{width:100%!important;max-width:100%!important;margin-left:0!important;margin-top:12px!important;}
  body.app-body .table-wrap{width:100%!important;max-width:100%!important;overflow:visible!important;}
  body.app-body .table,
  body.app-body .win-table{width:100%!important;min-width:0!important;}
  body.app-body .archive-form .btn{width:100%!important;}
  body.app-body .catalog-modal{padding:10px!important;}
  body.app-body .catalog-panel{width:100%!important;max-width:100%!important;border-radius:20px!important;padding:14px!important;}
}

/* V45 — mobile.php stays app-like and never exposes desktop canvas width. */
.v44-mobile.mobile-app-body,
.v44-mobile .mobile-app-shell{max-width:100%!important;overflow-x:hidden!important;}
@media(max-width:520px){
  .v44-mobile .mobile-app-shell{padding-left:10px!important;padding-right:10px!important;width:100%!important;}
  .mapp-title{padding:13px!important;border-radius:20px!important;}
  .mapp-title h1{font-size:23px!important;}
  .mapp-doc-card,.mapp-client-card,.mapp-panel{border-radius:18px!important;}
  .mapp-doc-actions a{font-size:11.5px!important;padding:8px 9px!important;}
}

/* V46 — Real standalone mobile application UI. Desktop interface untouched. */
@media (min-width:861px){.mobile-open-link{display:none!important}}
.bee-mobile-body{margin:0;min-height:100vh;background:#241d3b;color:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;padding:env(safe-area-inset-top) 0 calc(88px + env(safe-area-inset-bottom));overflow-x:hidden;-webkit-text-size-adjust:100%;}
.bee-phone-app{width:min(100%,480px);margin:0 auto;padding:14px 14px 0;box-sizing:border-box;min-height:100vh;}
.bee-app-top{display:flex;align-items:center;justify-content:space-between;height:54px;margin-bottom:12px;}
.bee-app-brand{display:flex;align-items:center;gap:10px;min-width:0}.bee-app-logo{width:42px;height:42px;background:#fff;border-radius:16px;display:grid;place-items:center;box-shadow:0 12px 26px rgba(0,0,0,.28);flex:0 0 auto}.bee-app-logo img{width:34px;max-height:34px;object-fit:contain}.bee-app-logo b{color:#0f172a}.bee-app-brand span{display:block;font-weight:950;font-size:15px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:245px}.bee-app-brand small{display:block;margin-top:4px;color:#b9b0cf;font-size:11px;font-weight:800}.bee-top-pill{color:#241d3b;background:#d8ff24;text-decoration:none;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:950;box-shadow:0 8px 22px rgba(216,255,36,.20)}
.bee-balance-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#2c2546,#17132c);border:1px solid rgba(255,255,255,.10);box-shadow:0 26px 70px rgba(0,0,0,.30);border-radius:30px;padding:22px 18px 18px;margin-bottom:14px;min-height:174px}.bee-balance-card:after{content:"";position:absolute;right:-36px;top:-45px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,#d8ff24 0,#bddf18 42%,transparent 43%);opacity:.9}.bee-balance-card span{position:relative;z-index:1;color:#b9b0cf;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:950}.bee-balance-card h1{position:relative;z-index:1;margin:11px 0 2px;font-size:34px;letter-spacing:-.055em;line-height:1;color:#fff}.bee-balance-card p{position:relative;z-index:1;margin:0;color:#b9b0cf;font-weight:800}.bee-mini-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.bee-mini-stats a{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09);border-radius:17px;padding:10px 6px;text-decoration:none;text-align:center;color:#fff}.bee-mini-stats b{display:block;font-size:18px}.bee-mini-stats small{display:block;margin-top:3px;font-size:10px;color:#c9c0db;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.bee-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:14px}.bee-quick-actions a{background:#31294d;border:1px solid rgba(255,255,255,.08);border-radius:20px;min-height:78px;padding:10px 6px;text-decoration:none;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 14px 32px rgba(0,0,0,.18)}.bee-quick-actions i{width:30px;height:30px;border-radius:12px;background:#d8ff24;color:#241d3b;display:grid;place-items:center;font-style:normal;font-weight:950}.bee-quick-actions b{font-size:12px;line-height:1;text-align:center}.bee-app-section,.bee-page-title,.bee-doc-card,.bee-mobile-form,.bee-products article{background:#fff;color:#0f172a;border-radius:24px;box-shadow:0 18px 46px rgba(0,0,0,.20);border:1px solid #e5e9f2}.bee-app-section{padding:14px;margin-bottom:12px}.bee-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.bee-section-head h2{margin:0;font-size:17px;letter-spacing:-.03em}.bee-section-head a{color:#2563eb;font-weight:900;font-size:12px;text-decoration:none}.bee-empty{color:#64748b;margin:12px 0;font-weight:700}.bee-list-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #eef2f7;color:#0f172a;text-decoration:none}.bee-list-row:first-of-type{border-top:0}.bee-list-row>span{width:34px;height:34px;border-radius:13px;background:#eef2ff;color:#2563eb;display:grid;place-items:center;font-weight:950}.bee-list-row b{display:block;font-size:14px}.bee-list-row small{display:block;color:#64748b;font-size:12px;margin-top:2px}.bee-list-row strong{font-size:13px;white-space:nowrap}.bee-page-title{display:flex;align-items:center;justify-content:space-between;padding:16px;margin-bottom:12px;background:linear-gradient(135deg,#fff,#f4f8ff)}.bee-page-title small{display:block;color:#2563eb;text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:950}.bee-page-title h1{margin:4px 0 0;font-size:28px;line-height:1;letter-spacing:-.055em}.bee-page-title a{background:#d8ff24;color:#241d3b;text-decoration:none;border-radius:999px;padding:10px 12px;font-weight:950;font-size:12px;box-shadow:0 8px 18px rgba(216,255,36,.24)}
.bee-doc-card{padding:14px;margin-bottom:11px}.bee-doc-main{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.bee-doc-main b{display:block;font-size:17px;letter-spacing:-.02em}.bee-doc-main small{display:block;color:#64748b;font-weight:750;margin-top:4px;font-size:12.5px}.bee-doc-money{margin-top:11px;background:#f8fafc;border:1px solid #eef2f7;border-radius:17px;padding:11px;display:flex;justify-content:space-between;gap:10px;align-items:center}.bee-doc-money span{color:#64748b;font-size:12px;font-weight:850}.bee-doc-money strong{font-size:18px;letter-spacing:-.03em;text-align:right}.bee-doc-money em{display:block;font-size:9px;color:#64748b;font-style:normal;letter-spacing:.05em;text-transform:uppercase}.bee-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.bee-chips span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:6px 8px;color:#475569;font-size:11px;font-weight:850}.bee-doc-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.bee-doc-actions a{min-height:36px;border-radius:13px;background:#f8fafc;border:1px solid #dbe4ef;display:grid;place-items:center;text-align:center;color:#0f172a;text-decoration:none;font-size:11.5px;font-weight:950;padding:0 5px}.bee-doc-actions a:nth-child(2){background:#2563eb;color:#fff;border-color:#2563eb}.bee-client p{font-size:12.5px;color:#475569;line-height:1.35;margin:9px 0 0}.bee-products{display:grid;gap:10px}.bee-products article{padding:10px;display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:center}.bee-products img,.bee-products i{width:58px;height:58px;border-radius:16px;background:#f1f5f9;border:1px solid #e2e8f0;object-fit:cover;display:grid;place-items:center;color:#64748b;font-weight:950;font-style:normal}.bee-products b{display:block;font-size:14px}.bee-products small{display:block;color:#64748b;font-size:12px;margin-top:2px}.bee-products span{display:block;margin-top:5px;font-size:13px;font-weight:950}.bee-setting{display:flex;align-items:center;justify-content:space-between;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:13px;margin-top:10px}.bee-wide{display:block;text-align:center;background:#241d3b;color:#fff;text-decoration:none;border-radius:16px;padding:14px;margin-bottom:9px;font-weight:950}.bee-wide.ghost{background:#f8fafc;color:#0f172a;border:1px solid #e2e8f0}.bee-mobile-form{padding:14px;margin-bottom:12px}.bee-mobile-form label{display:block;margin:0 0 10px;color:#475569;text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:950}.bee-mobile-form input,.bee-mobile-form select,.bee-mobile-form textarea{margin-top:6px;width:100%;box-sizing:border-box;border:1px solid #d7e1ee;background:#fff;border-radius:15px;min-height:45px;padding:10px 12px;color:#0f172a;font:inherit;font-size:16px;text-transform:none;letter-spacing:0;font-weight:650}.bee-mobile-form textarea{min-height:78px;resize:vertical}.bee-mobile-form button{width:100%;border:0;background:#d8ff24;color:#241d3b;border-radius:18px;min-height:50px;font-size:15px;font-weight:950;box-shadow:0 10px 24px rgba(216,255,36,.25)}.bee-form-card{background:#f8fafc;border:1px solid #eef2f7;border-radius:20px;padding:12px;margin-bottom:12px}.bee-form-card h3{margin:0 0 10px;font-size:16px}.bee-line{background:#fff;border:1px solid #e2e8f0;border-radius:17px;padding:10px;margin-bottom:10px}.bee-line-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bee-line-grid label{margin-bottom:0}.bee-floating-add{position:fixed;right:calc(16px + env(safe-area-inset-right));bottom:calc(86px + env(safe-area-inset-bottom));z-index:99;width:56px;height:56px;border-radius:22px;background:#d8ff24;color:#241d3b;text-decoration:none;display:grid;place-items:center;font-size:30px;font-weight:900;box-shadow:0 16px 34px rgba(0,0,0,.28)}.bee-tabbar{position:fixed;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(480px,calc(100% - 20px));height:62px;background:#17132c;border:1px solid rgba(255,255,255,.10);border-radius:25px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:7px;box-sizing:border-box;z-index:100;box-shadow:0 24px 60px rgba(0,0,0,.34)}.bee-tabbar a{border-radius:18px;color:#b9b0cf;text-decoration:none;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;font-size:17px;font-weight:950}.bee-tabbar a span{font-size:9.5px}.bee-tabbar a.active{background:#d8ff24;color:#241d3b}.bee-doc-card .badge{white-space:nowrap;font-size:10px;padding:5px 8px;border-radius:999px;background:#e0edff;color:#1d4ed8;font-weight:950}.bee-doc-card .badge.status-paye,.bee-doc-card .badge.status-accepte,.bee-doc-card .badge.status-signe{background:#dcfce7;color:#166534}.bee-doc-card .badge.status-brouillon{background:#f1f5f9;color:#475569}.bee-doc-card .badge.status-annule,.bee-doc-card .badge.status-refuse{background:#fee2e2;color:#991b1b}
@media(max-width:390px){.bee-phone-app{padding-left:10px;padding-right:10px}.bee-balance-card h1{font-size:30px}.bee-quick-actions{gap:7px}.bee-quick-actions a{min-height:72px}.bee-doc-actions{grid-template-columns:repeat(2,1fr)}.bee-page-title h1{font-size:25px}.bee-line-grid{grid-template-columns:1fr}.bee-floating-add{right:12px}}

/* V46 — prevent /admin desktop pages from becoming a shifted canvas on phones while keeping desktop untouched. */
@media(max-width:860px){
  body.app-body .main,body.app-body .content,body.app-body .app-shell{transform:none!important;left:0!important;right:auto!important;margin-left:0!important;max-width:100%!important;overflow-x:hidden!important;}
  body.app-body .win-collapsible,body.app-body .win-list,body.app-body .card,body.app-body .hero{float:none!important;position:relative!important;left:auto!important;right:auto!important;}
}

/* V47 - true mobile app polish */
.bee-mobile-body{background:radial-gradient(circle at 20% -10%,#51457b 0,#241d3b 34%,#130f25 100%)!important;padding-bottom:calc(96px + env(safe-area-inset-bottom));}
.bee-phone-app{max-width:430px;margin:0 auto;padding:14px 14px 96px!important;min-height:100vh;box-sizing:border-box;}
.bee-app-top{position:sticky;top:0;z-index:60;margin:0 -14px 12px;padding:12px 14px;background:linear-gradient(180deg,rgba(19,15,37,.96),rgba(19,15,37,.72));backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.bee-app-brand{gap:10px}.bee-app-logo{width:42px;height:42px;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(0,0,0,.22)}.bee-app-logo img{max-width:34px;max-height:34px}.bee-app-brand span{font-size:15px}.bee-app-brand small{color:#b9b0cf}.bee-top-pill{background:#d8ff24!important;color:#241d3b!important;border:0!important;box-shadow:0 10px 24px rgba(216,255,36,.18)}
.bee-balance-card{border-radius:30px!important;background:linear-gradient(145deg,#332a55,#1b1733)!important;box-shadow:0 28px 60px rgba(0,0,0,.30)!important;border:1px solid rgba(255,255,255,.10)!important;overflow:hidden;position:relative}.bee-balance-card:after{content:"";position:absolute;right:-54px;top:-42px;width:170px;height:170px;border-radius:50%;background:rgba(216,255,36,.08)}.bee-balance-card h1{font-size:38px!important;letter-spacing:-.07em}.bee-mini-stats a{background:rgba(255,255,255,.10)!important;border-radius:18px!important}.bee-mini-stats a b{color:#d8ff24}
.bee-quick-actions{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}.bee-quick-actions a{min-height:92px!important;border-radius:26px!important;background:linear-gradient(145deg,#fff,#f6f8ff)!important;color:#10162d!important;border:1px solid #e8edf7!important;box-shadow:0 18px 38px rgba(7,12,30,.18)!important;align-items:flex-start!important;padding:14px!important}.bee-quick-actions i{background:#2563eb!important;color:#fff!important;border-radius:15px}.bee-quick-actions b{font-size:14px!important;text-align:left!important;line-height:1.2}.bee-app-section,.bee-page-title,.bee-doc-card,.bee-mobile-form,.bee-products article{border-radius:26px!important;box-shadow:0 20px 44px rgba(7,12,30,.16)!important}.bee-page-title{padding:18px!important}.bee-page-title h1{font-size:34px!important}.bee-page-title a{background:#d8ff24!important;color:#241d3b!important;box-shadow:none!important}.bee-doc-card{padding:16px!important;border:0!important}.bee-doc-actions{grid-template-columns:repeat(2,1fr)!important}.bee-doc-actions a{min-height:42px!important;border-radius:16px!important;font-size:12px!important}.bee-doc-actions a:nth-child(2){background:#2563eb!important}.bee-doc-money{background:linear-gradient(135deg,#f8fbff,#eef5ff)!important;border:0!important;border-radius:20px!important}.bee-tabbar{height:68px!important;border-radius:28px!important;background:rgba(23,19,44,.96)!important;backdrop-filter:blur(18px);box-shadow:0 20px 50px rgba(0,0,0,.38)!important}.bee-tabbar a.active{background:#d8ff24!important}.bee-floating-add{width:58px!important;height:58px!important;border-radius:23px!important;background:#d8ff24!important;color:#241d3b!important;box-shadow:0 18px 42px rgba(0,0,0,.34)!important}.bee-mobile-form{padding:14px!important;background:transparent!important;border:0!important;box-shadow:none!important}.bee-form-card{background:rgba(255,255,255,.96)!important;border:1px solid rgba(226,232,240,.9)!important;border-radius:26px!important;padding:15px!important;box-shadow:0 18px 42px rgba(7,12,30,.15);}.bee-form-card h3{font-size:18px!important}.bee-form-hint{margin:-2px 0 12px;color:#64748b;font-size:12px;font-weight:750}.bee-line{border-radius:23px!important;padding:13px!important;box-shadow:inset 0 0 0 1px #edf2f7}.bee-line-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.bee-line-top b{font-size:14px;color:#0f172a}.bee-catalog-toggle{width:auto!important;min-height:34px!important;padding:0 12px!important;border-radius:999px!important;background:#2563eb!important;color:#fff!important;font-size:12px!important;box-shadow:none!important}.bee-mobile-product-preview{align-items:center;gap:9px;background:#eef6ff;border:1px solid #dbeafe;border-radius:18px;padding:8px;margin:8px 0}.bee-mobile-product-preview img{width:44px;height:44px;border-radius:14px;object-fit:cover;background:#fff}.bee-mobile-product-preview span{font-weight:900;font-size:13px;color:#0f172a}.bee-mobile-form input,.bee-mobile-form select,.bee-mobile-form textarea{border-radius:18px!important;min-height:48px!important;background:#fbfdff!important}.bee-line-grid{grid-template-columns:1fr 1fr!important;gap:9px!important}@media(max-width:380px){.bee-phone-app{padding-left:10px!important;padding-right:10px!important}.bee-quick-actions{gap:9px!important}.bee-page-title h1{font-size:28px!important}.bee-doc-actions{grid-template-columns:1fr!important}}

/* V48 mobile dynamic line editor */
.bee-lines-card{display:block}
.bee-lines-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.bee-lines-head h3{margin:0 0 3px}
.bee-add-line-btn{border:0;border-radius:16px;background:#2f6df6;color:#fff;font-weight:900;padding:11px 14px;box-shadow:0 12px 24px rgba(47,109,246,.24);white-space:nowrap}
.bee-mobile-lines{display:grid;gap:10px;margin:10px 0 14px}
.bee-line{padding:0!important;overflow:hidden;border-radius:22px!important;border:1px solid rgba(148,163,184,.28)!important;background:#fff!important}
.bee-line-summary{width:100%;border:0;background:linear-gradient(135deg,#fff,#f7f9ff);padding:14px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;color:#0f172a}
.bee-line-summary span{font-size:11px;font-weight:900;color:#2563eb;text-transform:uppercase;letter-spacing:.06em}
.bee-line-summary strong{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bee-line-summary em{font-style:normal;font-size:13px;font-weight:900;color:#0f172a;white-space:nowrap}
.bee-line-body{display:block;padding:14px;border-top:1px solid rgba(148,163,184,.24)}
.bee-line-collapsed .bee-line-body{display:none}
.bee-line-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.bee-line-top>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.bee-line-remove{border:0;background:#fee2e2;color:#991b1b;border-radius:12px;padding:8px 10px;font-weight:800;font-size:12px}
.bee-line-close{width:100%;margin-top:10px;border:1px solid rgba(148,163,184,.38);background:#f8fafc;border-radius:14px;padding:11px 12px;font-weight:900;color:#334155}
.bee-catalog-toggle{border:0;background:#101827;color:#fff;border-radius:12px;padding:8px 10px;font-weight:800;font-size:12px}
@media(max-width:520px){.bee-lines-head{align-items:center}.bee-add-line-btn{padding:10px 12px;border-radius:14px}.bee-line-summary{grid-template-columns:1fr auto}.bee-line-summary span{grid-column:1/-1}.bee-line-summary strong{font-size:14px}.bee-line-body{padding:12px}.bee-line-grid{grid-template-columns:1fr 1fr!important}}

/* V49 — Professional compact desktop UI refresh. Mobile app styles remain isolated. */
@media (min-width:861px){
  body.app-body{background:#f3f6fb!important;color:#111827!important;}
  body.app-body .sidebar{width:252px!important;padding:14px!important;background:linear-gradient(180deg,#0c1424,#121c2f 58%,#182337)!important;}
  body.app-body .main{margin-left:252px!important;}
  body.app-body .brand{padding:10px!important;border-radius:14px!important;margin-bottom:12px!important;}
  body.app-body .brand img{width:42px!important;height:42px!important;border-radius:10px!important;}
  body.app-body .brand b{font-size:14px!important;letter-spacing:-.01em!important;}
  body.app-body .brand small{font-size:11px!important;}
  body.app-body .nav small{margin:14px 8px 6px!important;font-size:9.5px!important;letter-spacing:.12em!important;}
  body.app-body .nav a{padding:9px 10px!important;border-radius:10px!important;margin:3px 0!important;font-size:12.5px!important;font-weight:750!important;}
  body.app-body .nav a span{width:20px!important;height:20px!important;border-radius:7px!important;font-size:11px!important;}
  body.app-body .topbar{height:62px!important;padding:0 22px!important;background:rgba(255,255,255,.92)!important;}
  body.app-body .topbar h1{font-size:20px!important;}
  body.app-body .page-kicker{font-size:9.5px!important;}
  body.app-body .user-chip{padding:6px 10px!important;font-size:12px!important;}
  body.app-body .user-chip span{width:24px!important;height:24px!important;font-size:11px!important;}
  body.app-body .content{padding:20px!important;max-width:1480px!important;margin:0 auto!important;}
  body.app-body .hero.win-hero,body.app-body .hero{padding:18px 20px!important;border-radius:18px!important;margin-bottom:14px!important;box-shadow:0 12px 34px rgba(30,64,175,.08)!important;}
  body.app-body .hero h1{font-size:27px!important;margin-bottom:3px!important;}
  body.app-body .hero p{font-size:13px!important;}
  body.app-body .card,body.app-body .win-panel{padding:16px!important;border-radius:15px!important;margin-bottom:14px!important;box-shadow:0 10px 28px rgba(15,23,42,.06)!important;}
  body.app-body .card h2{font-size:17px!important;margin-bottom:12px!important;}
  body.app-body .win-collapsible{border-radius:16px!important;margin-bottom:14px!important;box-shadow:0 10px 26px rgba(15,23,42,.06)!important;}
  body.app-body .win-collapsible>summary{padding:13px 16px!important;font-size:14px!important;}
  body.app-body .win-collapsible>summary:before{width:22px!important;height:22px!important;border-radius:7px!important;font-size:15px!important;margin-right:9px!important;}
  body.app-body .win-collapsible>summary span{font-size:14px!important;}
  body.app-body .win-collapsible>summary small{font-size:11px!important;}
  body.app-body .win-collapsible .doc-form{padding:14px!important;}
  body.app-body .grid2,body.app-body .grid3,body.app-body .compact-grid{gap:12px!important;}
  body.app-body label{font-size:10.5px!important;margin:6px 0 4px!important;letter-spacing:.045em!important;}
  body.app-body input,body.app-body select,body.app-body textarea{min-height:36px!important;padding:8px 10px!important;border-radius:9px!important;font-size:12.5px!important;}
  body.app-body textarea{min-height:76px!important;}
  body.app-body .btn,body.app-body button{min-height:34px!important;padding:8px 11px!important;border-radius:9px!important;font-size:11.5px!important;font-weight:800!important;box-shadow:none!important;}
  body.app-body .actions{gap:5px!important;}
  body.app-body .table-wrap{border-radius:12px!important;box-shadow:0 8px 22px rgba(15,23,42,.045)!important;}
  body.app-body .table th,body.app-body .win-table th{font-size:10.5px!important;padding:9px 10px!important;}
  body.app-body .table td,body.app-body .win-table td{font-size:12.5px!important;padding:9px 10px!important;}
  body.app-body .table small{font-size:10.5px!important;}
  body.app-body .badge{font-size:10.5px!important;padding:5px 8px!important;}
  body.app-body .line-row{grid-template-columns:minmax(260px,1fr) 84px 76px 110px 110px 88px!important;gap:7px!important;border-radius:11px!important;margin-bottom:7px!important;padding:8px!important;}
  body.app-body .line-row input{font-size:12.5px!important;min-height:34px!important;}
  body.app-body .line-head{font-size:10.5px!important;border-radius:11px!important;}
  body.app-body .totals{max-width:320px!important;border-radius:13px!important;}
  body.app-body .totals>div{padding:9px 12px!important;}
  body.app-body .totals span{font-size:11.5px!important;}
  body.app-body .totals b{font-size:14.5px!important;}
  body.app-body .totals .grand,body.app-body .totals div:last-child{font-size:16px!important;}
  body.app-body .kpis{gap:12px!important;}
  body.app-body .kpi{padding:15px!important;border-radius:15px!important;}
  body.app-body .kpi span{font-size:10.5px!important;}
  body.app-body .kpi b{font-size:23px!important;}
  body.app-body .catalog-panel{border-radius:18px!important;padding:16px!important;}
  body.app-body .catalog-item{border-radius:12px!important;padding:10px 12px!important;}
}

/* V51 — Professional executive dashboard */
.dash-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;border-radius:18px;padding:22px 24px;box-shadow:0 18px 45px rgba(30,64,175,.18)}
.dash-eyebrow{display:inline-flex;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#bfdbfe;margin-bottom:6px}.dash-head h1{font-size:30px;letter-spacing:-.05em;margin:0}.dash-head p{margin:6px 0 0;color:#dbeafe;font-size:14px}.dash-actions{display:flex;gap:8px;flex-wrap:wrap}.dash-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.dash-kpi{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:17px 18px;box-shadow:0 12px 30px rgba(15,23,42,.06);position:relative;overflow:hidden}.dash-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd5e1}.dash-kpi.primary:before{background:#2563eb}.dash-kpi.warn:before{background:#d97706}.dash-kpi span{display:block;color:#64748b;text-transform:uppercase;font-size:11px;letter-spacing:.08em;font-weight:900}.dash-kpi b{display:block;font-size:27px;letter-spacing:-.04em;margin:7px 0 3px}.dash-kpi small{color:#64748b;font-size:12px}.dash-mini-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.dash-mini-grid>div{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:12px 14px;display:flex;align-items:baseline;justify-content:space-between;gap:10px}.dash-mini-grid b{font-size:21px;letter-spacing:-.04em}.dash-mini-grid span{font-size:12px;color:#64748b;font-weight:800}.dash-grid-main{display:grid;grid-template-columns:1.35fr .65fr;gap:14px;margin-bottom:14px}.dash-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dash-panel{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:18px;box-shadow:0 13px 34px rgba(15,23,42,.06);min-width:0}.dash-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.dash-panel-head h2{margin:0;font-size:17px;letter-spacing:-.025em}.dash-panel-head p{margin:3px 0 0;font-size:12px;color:#64748b}.dash-panel-head a{font-size:12px;font-weight:900;color:#2563eb;white-space:nowrap}.dash-card-list{display:grid;gap:10px}.dash-card-list.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-doc-card{border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc;padding:13px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.dash-doc-card small{display:block;color:#64748b;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.08em}.dash-doc-card h3{margin:3px 0 2px;font-size:15px}.dash-doc-card p{margin:0;color:#475569;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-doc-card .right{text-align:right}.dash-doc-card .right b{display:block;margin-bottom:6px}.dash-doc-card footer{grid-column:1/-1;display:flex;gap:8px;border-top:1px solid #e2e8f0;padding-top:10px}.dash-doc-card footer a{font-size:12px;font-weight:900;background:#fff;border:1px solid #dbe4ef;border-radius:999px;padding:7px 10px;color:#111827}.dash-list{display:grid;gap:8px}.dash-list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #eef2f7}.dash-list-row:last-child{border-bottom:0}.dash-list-row span{min-width:0}.dash-list-row b{display:block;font-size:13px}.dash-list-row small{display:block;font-size:12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.dash-list-row strong{font-size:13px;white-space:nowrap}.dash-list-row em{font-style:normal;background:#fee2e2;color:#991b1b;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:900}.dash-empty{border:1px dashed #cbd5e1;border-radius:14px;padding:18px;text-align:center;color:#64748b;background:#f8fafc}.dash-timeline{display:grid;gap:8px}.dash-timeline a{display:flex;gap:10px;align-items:flex-start;padding:8px;border-radius:12px}.dash-timeline a:hover{background:#f8fafc}.dash-timeline span{width:26px;height:26px;border-radius:9px;background:#eef2ff;color:#1d4ed8;display:grid;place-items:center;font-size:12px}.dash-timeline p{margin:0;min-width:0}.dash-timeline b{display:block;font-size:13px}.dash-timeline small{display:block;color:#64748b;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
@media(max-width:1180px){.dash-kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-grid-main,.dash-grid-3{grid-template-columns:1fr}.dash-card-list.two-col{grid-template-columns:1fr}.dash-mini-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.dash-head{display:block;padding:18px}.dash-actions{margin-top:14px}.dash-kpi-grid,.dash-mini-grid{grid-template-columns:1fr}.dash-head h1{font-size:25px}.dash-kpi b{font-size:24px}}

/* V52 — Cockpit SaaS dashboard: removes generic admin-panel feeling */
body.app-body{background:#eef2f7!important;color:#101828!important}.content{padding:22px 26px 34px!important}.cockpit{display:flex;flex-direction:column;gap:18px}.cockpit-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:22px;align-items:stretch;border:1px solid rgba(15,23,42,.08);border-radius:28px;padding:26px;background:radial-gradient(circle at 15% 10%,rgba(37,99,235,.16),transparent 28%),linear-gradient(135deg,#0b1220,#18243a 55%,#0f766e);color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.22)}.cockpit-hero:after{content:"";position:absolute;right:70px;top:-80px;width:260px;height:260px;border-radius:999px;background:rgba(255,255,255,.08);filter:blur(1px)}.cockpit-hero-main{position:relative;z-index:2}.cockpit-tag{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);border-radius:999px;padding:7px 11px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:#dbeafe}.cockpit-hero h1{font-size:38px;letter-spacing:-.06em;margin:14px 0 6px;line-height:1}.cockpit-hero p{max-width:620px;margin:0;color:#cbd5e1;font-size:15px}.cockpit-command{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.cockpit-command a{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);color:#fff;border-radius:14px;padding:10px 13px;font-size:13px;font-weight:850;backdrop-filter:blur(10px)}.cockpit-command a:hover{background:#fff;color:#0f172a}.cockpit-command b{width:22px;height:22px;border-radius:8px;background:rgba(255,255,255,.14);display:grid;place-items:center}.cockpit-today{position:relative;z-index:2;border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.1);border-radius:24px;padding:18px;text-align:center;display:flex;flex-direction:column;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.cockpit-today small{text-transform:uppercase;letter-spacing:.13em;color:#bfdbfe;font-weight:900;font-size:11px}.cockpit-today strong{font-size:54px;line-height:.95;letter-spacing:-.08em;margin:8px 0 0}.cockpit-today span{color:#e2e8f0;text-transform:capitalize}.cockpit-today em{font-style:normal;margin-top:14px;background:rgba(16,185,129,.18);border:1px solid rgba(16,185,129,.28);border-radius:999px;padding:8px 9px;color:#d1fae5;font-size:12px;font-weight:850}.cockpit-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cockpit-metrics article{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:18px 18px 16px;box-shadow:0 12px 34px rgba(15,23,42,.06);position:relative;overflow:hidden}.cockpit-metrics article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#2563eb}.cockpit-metrics article.danger:before{background:#f97316}.cockpit-metrics small{display:block;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:950}.cockpit-metrics strong{display:block;font-size:28px;letter-spacing:-.055em;margin:8px 0 3px;color:#0f172a}.cockpit-metrics span{color:#667085;font-size:12px;font-weight:700}.cockpit-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.cockpit-left{display:flex;flex-direction:column;gap:18px}.cockpit-right{display:flex;flex-direction:column;gap:18px;position:sticky;top:96px}.cockpit-card{background:rgba(255,255,255,.96);border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:18px;box-shadow:0 14px 40px rgba(15,23,42,.07)}.cockpit-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.cockpit-card-head span{display:block;color:#2563eb;text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:950}.cockpit-card-head h2{margin:3px 0 0;font-size:18px;letter-spacing:-.04em}.cockpit-card-head a{font-size:12px;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 10px;font-weight:850}.revenue-visual{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:center}.donut{--p:0;width:172px;height:172px;border-radius:50%;background:conic-gradient(#10b981 calc(var(--p)*1%),#e5e7eb 0);display:grid;place-items:center;margin:auto;position:relative}.donut:after{content:"";position:absolute;inset:16px;border-radius:50%;background:#fff}.donut b,.donut small{position:relative;z-index:2}.donut b{font-size:34px;letter-spacing:-.06em}.donut small{display:block;margin-top:35px;position:absolute;color:#667085;font-weight:800;font-size:12px}.revenue-lines{display:grid;gap:10px}.revenue-lines div{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid #edf2f7}.revenue-lines span{font-size:13px;color:#667085;font-weight:800}.revenue-lines b{font-size:17px;letter-spacing:-.035em}.pipeline{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pipeline-col{background:#f8fafc;border:1px solid #e5e7eb;border-radius:20px;padding:12px;min-height:160px}.pipeline-col header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:2px 2px 10px}.pipeline-col header b{font-size:14px}.pipeline-col header small{color:#667085;font-weight:800}.pipeline-ticket{background:#fff;border:1px solid #e2e8f0;border-radius:17px;padding:13px;margin-bottom:10px;box-shadow:0 8px 22px rgba(15,23,42,.04)}.pipeline-ticket div{display:flex;flex-direction:column;gap:3px}.pipeline-ticket small{color:#64748b;font-weight:900;font-size:11px}.pipeline-ticket strong{font-size:14px}.pipeline-ticket>span{display:block;margin-top:10px;font-size:18px;font-weight:950;letter-spacing:-.04em}.pipeline-ticket footer{display:flex;gap:8px;margin-top:12px}.pipeline-ticket footer a{flex:1;text-align:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:8px;font-size:12px;font-weight:850}.pipeline-ticket footer a:last-child{background:#111827;color:#fff;border-color:#111827}.status-stack{display:grid;grid-template-columns:1fr 1fr;gap:10px}.status-stack div{border-radius:18px;background:linear-gradient(180deg,#f8fafc,#fff);border:1px solid #e2e8f0;padding:15px}.status-stack b{display:block;font-size:26px;letter-spacing:-.06em}.status-stack span{font-size:12px;color:#64748b;font-weight:850}.clean-list{display:grid;gap:8px}.clean-list a{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid #e5e7eb;background:#fff;border-radius:16px;padding:12px}.clean-list b{font-size:13px}.clean-list small{display:block;color:#667085;font-size:12px;margin-top:2px}.clean-list strong{font-size:14px;white-space:nowrap}.clean-list em{font-style:normal;background:#fff7ed;color:#c2410c;border-radius:999px;padding:5px 7px;font-size:11px;font-weight:950}.cockpit-bottom{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px}.rank-list{display:grid;gap:9px}.rank-list div{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:11px;align-items:center;border-bottom:1px solid #edf2f7;padding:9px 0}.rank-list div:last-child{border-bottom:0}.rank-list i{font-style:normal;width:30px;height:30px;border-radius:11px;background:#111827;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:950}.rank-list b{font-size:13px}.rank-list small{display:block;color:#667085;font-size:12px;margin-top:2px}.rank-list strong{font-size:14px;white-space:nowrap}.activity-stream{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.activity-stream a{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:17px;padding:11px}.activity-stream i{font-style:normal;width:38px;height:38px;border-radius:13px;background:#eff6ff;color:#1d4ed8;display:grid;place-items:center;font-size:11px;font-weight:950}.activity-stream b{font-size:13px}.activity-stream small{display:block;color:#64748b;font-size:12px;margin-top:2px}.activity-stream em{font-style:normal;border-radius:999px;background:#f1f5f9;color:#475569;padding:6px 8px;font-size:11px;font-weight:950;white-space:nowrap}.muted-empty{margin:8px 0;color:#667085;font-weight:750;font-size:13px}.span2{grid-column:auto}.sidebar{background:#08111f!important}.topbar{height:68px!important}.topbar h1{font-size:21px!important}.btn,button{border-radius:10px!important;min-height:36px!important;padding:9px 12px!important;font-size:12px!important}.card,.win-panel{border-radius:16px!important;padding:18px!important}.table td{padding:11px!important;font-size:13px!important}.table th{padding:11px!important;font-size:10px!important}
@media(max-width:1180px){.cockpit-layout{grid-template-columns:1fr}.cockpit-right{position:static}.cockpit-bottom{grid-template-columns:1fr}.activity-stream{grid-template-columns:1fr}.cockpit-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.cockpit-hero{grid-template-columns:1fr;padding:20px;border-radius:22px}.cockpit-hero h1{font-size:30px}.cockpit-today{display:none}.cockpit-metrics{grid-template-columns:1fr}.pipeline{grid-template-columns:1fr}.revenue-visual{grid-template-columns:1fr}.donut{width:140px;height:140px}.activity-stream{grid-template-columns:1fr}.cockpit-command a{width:100%;justify-content:center}.content{padding:14px!important}}

/* V53 — Professional compact cockpit tuning */
:root{
  --bg:#f6f7f9!important;
  --surface:#ffffff!important;
  --ink:#111827!important;
  --muted:#6b7280!important;
  --line:#e6e8ee!important;
  --shadow:0 8px 24px rgba(15,23,42,.055)!important;
  --radius:14px!important;
}
body{
  font-family:"Inter", "SF Pro Display", "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif!important;
  font-size:13px!important;
  letter-spacing:-.006em!important;
}
body.app-body{background:#f4f6f8!important;color:#111827!important}
.content{padding:18px 22px 28px!important}
.topbar{height:62px!important;padding:0 22px!important}.topbar h1{font-size:19px!important;font-weight:850!important;letter-spacing:-.035em!important}.page-kicker{font-size:10px!important;letter-spacing:.14em!important}.user-chip{padding:6px 10px!important;font-size:12px!important}.user-chip span{width:25px!important;height:25px!important}
.sidebar{width:260px!important;padding:14px!important}.main{margin-left:260px!important}.brand{padding:10px!important;border-radius:15px!important;margin-bottom:12px!important}.brand img{width:42px!important;max-height:42px!important;border-radius:10px!important}.brand b{font-size:14px!important}.brand small{font-size:11px!important}.nav small{font-size:9px!important;margin:13px 10px 6px!important}.nav a{padding:9px 10px!important;border-radius:11px!important;font-size:12.5px!important;gap:9px!important}.nav a span{width:21px!important;height:21px!important;border-radius:7px!important}
.btn,button,.btn.secondary,button.secondary{border-radius:9px!important;min-height:32px!important;padding:8px 10px!important;font-size:11.5px!important;font-weight:750!important;gap:6px!important}.actions{gap:6px!important}
.card,.win-panel{border-radius:13px!important;padding:15px!important;margin-bottom:13px!important;box-shadow:0 7px 18px rgba(15,23,42,.045)!important}.card h2{font-size:16px!important;margin-bottom:12px!important}.table th{font-size:9.5px!important;padding:9px 10px!important}.table td{font-size:12px!important;padding:9px 10px!important}.badge{font-size:10.5px!important;padding:4px 7px!important;font-weight:800!important}input,select,textarea{min-height:38px!important;border-radius:9px!important;padding:9px 10px!important;font-size:12.5px!important}label{font-size:10px!important;margin:7px 0 5px!important}
.cockpit{gap:12px!important}.cockpit-hero{grid-template-columns:minmax(0,1fr) 142px!important;gap:16px!important;border-radius:18px!important;padding:18px 20px!important;box-shadow:0 14px 36px rgba(15,23,42,.16)!important}.cockpit-hero:after{width:180px!important;height:180px!important;right:45px!important;top:-70px!important}.cockpit-tag{font-size:9px!important;padding:5px 8px!important;letter-spacing:.12em!important}.cockpit-hero h1{font-size:28px!important;margin:10px 0 5px!important;letter-spacing:-.055em!important}.cockpit-hero p{font-size:12.5px!important;max-width:540px!important;line-height:1.45!important}.cockpit-command{margin-top:15px!important;gap:7px!important}.cockpit-command a{border-radius:10px!important;padding:7px 10px!important;font-size:11.5px!important;font-weight:750!important}.cockpit-command b{width:18px!important;height:18px!important;border-radius:6px!important}
.cockpit-today{border-radius:16px!important;padding:12px!important}.cockpit-today small{font-size:9px!important}.cockpit-today strong{font-size:38px!important}.cockpit-today em{font-size:10px!important;padding:6px 7px!important;margin-top:9px!important}
.cockpit-metrics{gap:10px!important}.cockpit-metrics article{border-radius:15px!important;padding:13px 14px 12px!important;box-shadow:0 7px 20px rgba(15,23,42,.045)!important}.cockpit-metrics article:before{width:3px!important}.cockpit-metrics small{font-size:9px!important;letter-spacing:.11em!important}.cockpit-metrics strong{font-size:22px!important;margin:5px 0 1px!important}.cockpit-metrics span{font-size:11px!important}
.cockpit-layout{grid-template-columns:minmax(0,1fr) 305px!important;gap:12px!important}.cockpit-left,.cockpit-right{gap:12px!important}.cockpit-right{top:76px!important}.cockpit-card{border-radius:16px!important;padding:14px!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.cockpit-card-head{margin-bottom:11px!important}.cockpit-card-head span{font-size:9px!important}.cockpit-card-head h2{font-size:15.5px!important}.cockpit-card-head a{font-size:10.5px!important;padding:6px 8px!important}
.revenue-visual{grid-template-columns:135px minmax(0,1fr)!important;gap:13px!important}.donut{width:124px!important;height:124px!important}.donut:after{inset:12px!important}.donut b{font-size:25px!important}.donut small{font-size:10px!important;margin-top:28px!important}.revenue-lines{gap:7px!important}.revenue-lines div{padding:9px 11px!important;border-radius:11px!important}.revenue-lines span{font-size:11.5px!important}.revenue-lines b{font-size:14px!important}
.pipeline{gap:10px!important}.pipeline-col{border-radius:14px!important;padding:10px!important;min-height:130px!important}.pipeline-col header{margin-bottom:7px!important}.pipeline-col header b{font-size:12.5px!important}.pipeline-col header small{font-size:10.5px!important}.pipeline-ticket{border-radius:12px!important;padding:10px!important;margin-bottom:7px!important}.pipeline-ticket small{font-size:9.5px!important}.pipeline-ticket strong{font-size:12px!important}.pipeline-ticket>span{font-size:15px!important;margin-top:7px!important}.pipeline-ticket footer{gap:6px!important;margin-top:8px!important}.pipeline-ticket footer a{border-radius:9px!important;padding:6px!important;font-size:10.5px!important}
.status-stack{gap:8px!important}.status-stack div{border-radius:13px!important;padding:11px!important}.status-stack b{font-size:21px!important}.status-stack span{font-size:11px!important}.clean-list{gap:6px!important}.clean-list a{border-radius:12px!important;padding:9px!important;gap:8px!important}.clean-list b{font-size:12px!important}.clean-list small{font-size:10.5px!important}.clean-list strong{font-size:12px!important}.clean-list em{font-size:9.5px!important;padding:4px 6px!important}
.cockpit-bottom{grid-template-columns:305px minmax(0,1fr)!important;gap:12px!important}.rank-list{gap:5px!important}.rank-list div{grid-template-columns:26px minmax(0,1fr) auto!important;padding:7px 0!important;gap:8px!important}.rank-list i{width:24px!important;height:24px!important;border-radius:8px!important;font-size:10px!important}.rank-list b{font-size:12px!important}.rank-list small{font-size:10.5px!important}.rank-list strong{font-size:12px!important}.activity-stream{gap:7px!important}.activity-stream a{grid-template-columns:34px minmax(0,1fr) auto!important;border-radius:12px!important;padding:8px 9px!important;gap:8px!important}.activity-stream i{width:31px!important;height:31px!important;border-radius:10px!important;font-size:9.5px!important}.activity-stream b{font-size:12px!important}.activity-stream small{font-size:10.5px!important}.activity-stream em{font-size:9.5px!important;padding:4px 6px!important}
@media(max-width:1180px){.cockpit-layout{grid-template-columns:1fr!important}.cockpit-bottom{grid-template-columns:1fr!important}.cockpit-metrics{grid-template-columns:repeat(2,1fr)!important}.sidebar{width:240px!important}.main{margin-left:240px!important}}
@media(max-width:760px){.main{margin-left:0!important}.sidebar{display:none!important}.content{padding:12px!important}.cockpit-hero{grid-template-columns:1fr!important;padding:16px!important;border-radius:16px!important}.cockpit-hero h1{font-size:24px!important}.cockpit-today{display:none!important}.cockpit-metrics{grid-template-columns:1fr!important}.pipeline{grid-template-columns:1fr!important}.revenue-visual{grid-template-columns:1fr!important}.cockpit-command a{width:100%!important;justify-content:center!important}.activity-stream{grid-template-columns:1fr!important}}

/* V54 — Clear treasury widget: replace abstract exposure donut with actionable cash view */
.treasury-card{padding:15px!important}
.treasury-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:12px;align-items:stretch}
.treasury-main{border:1px solid #e2e8f0;background:linear-gradient(180deg,#0f172a,#111827);color:#fff;border-radius:14px;padding:14px 15px;display:flex;flex-direction:column;justify-content:center;min-height:120px}
.treasury-main small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:850;color:#93c5fd}
.treasury-main strong{display:block;font-size:25px;letter-spacing:-.045em;margin:7px 0 9px;color:#fff}
.treasury-main span{font-size:11px;color:#cbd5e1;font-weight:700}
.treasury-progress{height:7px;background:rgba(255,255,255,.16);border-radius:999px;overflow:hidden;margin-bottom:8px}
.treasury-progress i{display:block;height:100%;background:#10b981;border-radius:999px;min-width:3px}
.treasury-lines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.treasury-lines div{border:1px solid #e2e8f0;background:#f8fafc;border-radius:13px;padding:12px;display:flex;flex-direction:column;justify-content:space-between;min-height:92px}
.treasury-lines span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#64748b;font-weight:900}
.treasury-lines b{font-size:18px;letter-spacing:-.035em;color:#0f172a;white-space:nowrap}
.treasury-lines .due{background:#fff7ed;border-color:#fed7aa}
.treasury-lines .due b{color:#c2410c}
.treasury-alerts{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.treasury-alerts span{font-size:10.5px;font-weight:850;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:6px 8px}
@media(max-width:900px){.treasury-grid{grid-template-columns:1fr}.treasury-lines{grid-template-columns:1fr}}

/* V57 — Espace client sécurisé */
.client-portal-body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,#dbeafe 0,#f8fafc 34%,#eef2f7 100%);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0f172a}.client-portal-shell{width:min(1120px,calc(100% - 28px));margin:0 auto;padding:28px 0 42px}.client-portal-hero{border-radius:28px;background:linear-gradient(135deg,#0f172a,#1e3a8a 62%,#059669);color:#fff;padding:26px;box-shadow:0 28px 70px rgba(15,23,42,.22);display:flex;justify-content:space-between;gap:22px;align-items:flex-end}.client-portal-brand{display:flex;align-items:center;gap:14px}.client-portal-brand img{width:74px;height:74px;object-fit:contain;background:#fff;border-radius:18px;padding:8px}.client-portal-brand span,.client-portal-title p,.panel-head span{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:900;color:#93c5fd;margin:0 0 4px}.client-portal-brand h1,.client-portal-title h2{margin:0;letter-spacing:-.04em}.client-portal-title{text-align:right}.client-portal-title h2{font-size:30px}.client-portal-title small{display:block;color:#dbeafe;margin-top:5px}.client-portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.client-panel{background:rgba(255,255,255,.94);border:1px solid #dbe4ef;border-radius:22px;padding:18px;box-shadow:0 16px 38px rgba(15,23,42,.08)}.panel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.panel-head h3{margin:0;font-size:19px;letter-spacing:-.025em}.panel-head b{background:#f1f5f9;border:1px solid #dbe4ef;border-radius:999px;padding:7px 10px;font-size:12px}.client-upload-form label:not(.drop-zone){font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:900}.drop-zone{display:grid;place-items:center;text-align:center;border:1.5px dashed #93c5fd;border-radius:20px;background:#eff6ff;min-height:132px;cursor:pointer;padding:18px;margin-bottom:12px}.drop-zone input{display:none}.drop-zone strong{font-size:18px}.drop-zone small{display:block;margin-top:6px;color:#64748b}.client-upload-form textarea{min-height:78px}.client-upload-form button{width:100%;margin-top:10px;background:#0f172a!important;border-color:#0f172a!important}.portal-list{display:grid;gap:10px}.portal-doc{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;color:#0f172a}.portal-doc:hover{border-color:#93c5fd;background:#f8fbff}.portal-doc strong{display:block}.portal-doc small{display:block;color:#64748b;margin-top:3px}.portal-doc>b{white-space:nowrap}.empty,.muted{color:#64748b;margin:0}.client-notice{margin:14px 0 0;border-radius:16px;padding:13px 16px;font-weight:800}.client-notice.ok{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.client-notice.bad{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.client-portal-admin{display:grid;gap:3px}.client-portal-admin a{color:#2563eb;font-weight:900}.client-portal-admin small{color:#64748b}.client-files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.client-file-item{display:block;border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:13px;color:#0f172a}.client-file-item small,.client-file-item span{display:block;color:#64748b;margin-top:4px}.client-file-item:hover{border-color:#93c5fd;background:#f8fbff}@media(max-width:760px){.client-portal-shell{width:min(430px,calc(100% - 24px));padding:14px 0 28px}.client-portal-hero{display:block;padding:20px;border-radius:24px}.client-portal-brand{justify-content:center;text-align:center;display:grid}.client-portal-brand img{margin:auto;width:82px;height:82px}.client-portal-title{text-align:center;margin-top:16px}.client-portal-title h2{font-size:25px}.client-portal-grid{grid-template-columns:1fr}.client-panel{border-radius:20px;padding:16px}.portal-doc{align-items:flex-start}.portal-doc>b{font-size:13px}.client-files-grid{grid-template-columns:1fr}}

.client-portal-admin .portal-disable{font-size:11px;color:#991b1b;font-weight:800}
.client-portal-admin .portal-disable:hover{text-decoration:underline}

/* V60 — Clients list compact premium table (applied from reference visual) */
.clients-pro-card{padding:14px 16px 12px!important;border-radius:14px!important;box-shadow:0 14px 38px rgba(15,23,42,.06)!important;background:#fff!important}
.clients-pro-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.clients-pro-head h2{margin:0!important;font-size:18px!important;letter-spacing:-.03em!important;font-weight:800!important}
.clients-pro-head small{display:block;margin-top:3px;color:#64748b;font-size:12px;font-weight:600}
.clients-add-btn{min-height:32px!important;padding:7px 11px!important;border-radius:9px!important;font-size:12px!important;background:#fff!important}
.clients-table-wrap{border:1px solid #dfe7f1;border-radius:12px;overflow:auto;background:#fff}
.clients-pro-table{font-size:12.5px!important;border-spacing:0!important}
.clients-pro-table th{font-size:10px!important;padding:10px 11px!important;background:#f8fafc!important;color:#475569!important;font-weight:850!important;letter-spacing:.055em!important;border-bottom:1px solid #dfe7f1!important}
.clients-pro-table td{padding:10px 11px!important;border-bottom:1px solid #e7edf5!important;vertical-align:middle!important;line-height:1.25!important;color:#0f172a!important}
.clients-pro-table tr:last-child td{border-bottom:0!important}
.clients-pro-table tr:hover td{background:#fbfdff!important}
.client-main-cell{display:flex;align-items:center;gap:10px;min-width:175px}
.client-main-cell b{display:block;font-size:13.2px;letter-spacing:-.015em}
.client-main-cell small{display:block;color:#64748b;font-size:11px;margin-top:3px;font-weight:700}.client-avatar{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#f1f5f9;color:#475569;font-size:13px;flex:0 0 auto}.muted{color:#94a3b8!important;font-weight:650}.compact-contracts{display:flex!important;flex-direction:column;gap:5px!important;min-width:150px}.compact-contracts a{display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;border:1px solid #dfe7f1!important;background:#f8fafc!important;border-radius:9px!important;padding:5px 7px!important;min-height:26px!important;color:#0f172a!important}.compact-contracts a b{font-size:12px!important}.status-pill{font-size:10px!important;padding:3px 6px;border-radius:999px;background:#eef2ff;color:#1d4ed8;font-weight:850}.status-pill.draft{background:#fff7ed;color:#b45309}.status-pill.signed{background:#ecfdf5;color:#047857}.compact-portal{display:flex;flex-direction:column;gap:3px;min-width:170px}.compact-portal b{font-size:12.4px!important}.compact-portal small{font-size:11px!important;color:#64748b!important}.portal-inline{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.portal-inline a{font-size:11.5px;font-weight:800;color:#2563eb}.portal-dot{font-size:11.5px;font-weight:850;color:#059669;display:inline-flex;align-items:center;gap:4px}.portal-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#10b981;display:inline-block}.client-actions{flex-wrap:nowrap!important;justify-content:flex-end!important;min-width:240px}.client-actions .btn{min-height:32px!important;padding:7px 11px!important;border-radius:9px!important;font-size:12px!important;box-shadow:none!important}.client-actions .btn.blue{background:#2563eb!important}.client-actions .btn.red{background:#dc2626!important}.client-actions .icon-only{width:34px!important;min-width:34px!important;padding:0!important;font-size:13px!important}.win-list .table.clients-pro-table{margin:0!important}.clients-pro-table th:last-child,.clients-pro-table td:last-child{text-align:right!important}
@media (max-width:1100px){.clients-pro-table{min-width:1040px}.clients-pro-card{padding:12px!important}.clients-pro-head{align-items:flex-start;flex-direction:column}.clients-add-btn{align-self:flex-start}.client-actions{justify-content:flex-start!important}}

/* Tableau de bord simplifié */
.simple-dashboard{display:flex;flex-direction:column;gap:18px;max-width:1440px;margin:0 auto;padding:4px 0 28px}.sd-hero,.sd-card,.sd-kpis article{background:rgba(255,255,255,.94);border:1px solid #dbe6f3;border-radius:20px;box-shadow:0 14px 36px rgba(15,23,42,.07)}.sd-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:24px}.sd-hero span,.sd-card-head span{display:block;color:#2563eb;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.08em}.sd-hero h1{margin:4px 0;font-size:30px}.sd-hero p{margin:0;color:#64748b}.sd-actions{display:flex;gap:10px;flex-wrap:wrap}.sd-actions a,.sd-card-head a{border:1px solid #cbd5e1;border-radius:12px;padding:10px 13px;text-decoration:none;color:#0f172a;font-weight:800;background:#fff}.sd-actions a:first-child{background:#2563eb;color:#fff;border-color:#2563eb}.sd-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.sd-kpis article{padding:18px}.sd-kpis small{display:block;color:#64748b;font-weight:800}.sd-kpis strong{display:block;margin-top:8px;font-size:26px}.sd-kpis span{display:block;margin-top:5px;color:#64748b;font-size:13px}.sd-kpis .sd-warn strong{color:#b45309}.sd-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px}.sd-main,.sd-side{display:flex;flex-direction:column;gap:16px}.sd-card{padding:16px}.sd-card-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.sd-card-head h2{margin:2px 0 0;font-size:19px}.sd-table{border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.sd-row{display:grid;grid-template-columns:1.6fr 1fr .9fr .8fr .7fr;gap:12px;align-items:center;padding:13px 14px;border-bottom:1px solid #e2e8f0;color:#0f172a;text-decoration:none}.sd-row:last-child{border-bottom:0}.sd-row:hover{background:#f8fafc}.sd-head{background:#f8fafc;color:#475569;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.05em}.sd-row b{font-weight:900}.sd-row small{display:block;color:#64748b;margin-top:3px}.sd-badge{display:inline-flex;border-radius:999px;background:#eef2f7;color:#334155;padding:6px 9px;font-size:11px;font-weight:900;font-style:normal}.sd-badge.red{background:#fee2e2;color:#991b1b}.sd-docs,.sd-mini-list{display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.sd-docs a,.sd-mini-list a{display:grid;grid-template-columns:44px 1fr auto auto;gap:12px;align-items:center;text-decoration:none;color:#0f172a;padding:12px 14px;border-bottom:1px solid #e2e8f0}.sd-mini-list a{grid-template-columns:1fr auto}.sd-docs a:last-child,.sd-mini-list a:last-child{border-bottom:0}.sd-docs i{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:#eff6ff;color:#1d4ed8;font-style:normal;font-weight:900}.sd-docs small,.sd-mini-list small{display:block;color:#64748b}.sd-docs em{font-style:normal;color:#64748b;font-size:12px}.sd-summary .sd-amount{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:16px;margin-bottom:12px}.sd-summary .sd-amount small{display:block;color:#64748b;font-weight:800}.sd-summary .sd-amount strong{display:block;font-size:28px;margin-top:5px}.sd-lines{display:flex;flex-direction:column;gap:8px}.sd-lines div{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #e2e8f0}.sd-lines div:last-child{border-bottom:0}.sd-lines span{color:#64748b}.sd-empty{padding:14px;color:#64748b;margin:0}@media(max-width:1000px){.sd-grid,.sd-kpis{grid-template-columns:1fr}.sd-hero{align-items:flex-start;flex-direction:column}.sd-row,.sd-docs a{grid-template-columns:1fr;gap:5px}.sd-head{display:none}.sd-side{order:-1}}

/* V70 — DataBee Finance UI refonte globale (dashboard model purple/gold)
   Pure interface layer: business logic, document PDF/render and mail flows are untouched. */
:root{--db-bg:#f4f2f8;--db-dark:#2d273c;--db-dark2:#201b2e;--db-dark3:#3a334a;--db-gold:#ffc313;--db-gold2:#ffdf6a;--db-ink:#272338;--db-muted:#7b738b;--db-line:#e7e2ef;--db-card:#ffffff;--db-blue:#3267f6;--db-green:#32b56a;--db-red:#ff5964;--db-orange:#ff9f1c;--db-shadow:0 18px 45px rgba(38,32,58,.10)}
body.ui-finance{background:var(--db-bg)!important;color:var(--db-ink)!important;font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif!important}.ui-finance .app-shell{background:transparent!important}.finance-sidebar{width:292px!important;background:linear-gradient(180deg,#221d31 0%,#332d46 58%,#5a536c 100%)!important;color:#fff!important;border-right:0!important;padding:24px 20px!important;box-shadow:16px 0 45px rgba(35,30,49,.20)!important}.finance-main{margin-left:292px!important}.finance-brand{background:transparent!important;border:0!important;box-shadow:none!important;margin:0 0 26px!important;padding:0!important;color:#fff!important}.brand-mark{width:66px;height:66px;display:grid;place-items:center;flex:0 0 auto}.brand-mark span{width:62px;height:62px;border:2px solid var(--db-gold);border-radius:50%;display:grid;place-items:center;color:var(--db-gold);font-size:34px;box-shadow:inset 0 0 0 10px rgba(255,195,19,.04)}.finance-brand img{width:62px!important;height:62px!important;object-fit:contain!important;background:transparent!important;padding:0!important;border-radius:18px!important}.finance-brand b{font-size:20px!important;letter-spacing:-.04em!important;line-height:1.05!important}.finance-brand small{color:#ded9ea!important;text-transform:uppercase!important;letter-spacing:.16em!important;font-size:10px!important;font-weight:800!important}.finance-nav{display:flex!important;flex-direction:column!important;gap:8px!important}.finance-nav small{display:none!important}.finance-nav a{height:54px!important;border-radius:12px!important;padding:0 18px!important;margin:0!important;color:#f4f1fb!important;font-size:16px!important;font-weight:600!important;letter-spacing:-.02em!important;background:transparent!important;border:1px solid transparent!important;box-shadow:none!important}.finance-nav a span{width:28px!important;height:28px!important;background:transparent!important;color:#d5d0df!important;font-size:20px!important;border-radius:8px!important}.finance-nav a:hover,.finance-nav a.active{background:#fff!important;color:#1f1a2e!important;box-shadow:0 14px 28px rgba(0,0,0,.18)!important}.finance-nav a:hover span,.finance-nav a.active span{background:var(--db-gold)!important;color:#fff!important}.finance-nav .danger-mode{background:rgba(255,89,100,.16)!important;color:#fff!important}.sidebar-user{position:absolute;left:24px;right:24px;bottom:24px;border-top:1px solid rgba(255,255,255,.18);padding-top:18px;display:grid;grid-template-columns:46px 1fr 28px;align-items:center;gap:12px}.sidebar-user .avatar{width:46px;height:46px;border-radius:50%;background:#fff;color:#1f1a2e;display:grid;place-items:center;font-weight:900;box-shadow:0 10px 25px rgba(0,0,0,.16)}.sidebar-user b{display:block;font-size:13px}.sidebar-user small{display:block;color:#d9d4e5;font-size:11px}.sidebar-user a{color:#fff;font-size:22px}.finance-topbar{height:88px!important;background:transparent!important;border-bottom:0!important;box-shadow:none!important;backdrop-filter:none!important;padding:24px 34px 12px!important}.finance-topbar h1{font-size:30px!important;color:#272338!important;letter-spacing:-.055em!important;font-weight:850!important}.finance-topbar .page-kicker{color:#7b738b!important;text-transform:none!important;letter-spacing:0!important;font-size:13px!important;font-weight:700!important}.finance-topbar .page-kicker:before{content:"◇ ";color:#9b94a9}.top-actions{display:flex;align-items:center;gap:12px}.finance-topbar .user-chip{background:#fff!important;border:1px solid var(--db-line)!important;border-radius:14px!important;box-shadow:0 10px 28px rgba(38,32,58,.08)!important;color:#272338!important}.finance-topbar .user-chip span{background:linear-gradient(180deg,var(--db-gold2),var(--db-gold))!important;color:#332d46!important}.finance-content{padding:12px 34px 34px!important}.ui-finance .card,.ui-finance .win-panel,.ui-finance .win-collapsible{background:rgba(255,255,255,.96)!important;border:1px solid var(--db-line)!important;border-radius:18px!important;box-shadow:var(--db-shadow)!important}.ui-finance .hero,.ui-finance .hero.win-hero{background:linear-gradient(135deg,#fff,#f8f5ff)!important;color:var(--db-ink)!important;border:1px solid var(--db-line)!important;box-shadow:var(--db-shadow)!important;border-radius:18px!important}.ui-finance .hero h1{font-size:31px!important;color:#272338!important}.ui-finance .hero p{color:var(--db-muted)!important}.ui-finance .btn,.ui-finance button{border-radius:12px!important;background:var(--db-dark3)!important;border:0!important;color:#fff!important;box-shadow:none!important;font-weight:800!important}.ui-finance .btn.blue,.ui-finance button.blue{background:#3267f6!important}.ui-finance .btn.green{background:#32b56a!important}.ui-finance .btn.red{background:#ff5964!important}.ui-finance .btn.secondary,.ui-finance button.secondary{background:#fff!important;color:#332d46!important;border:1px solid var(--db-line)!important}.ui-finance input,.ui-finance select,.ui-finance textarea{border:1px solid var(--db-line)!important;border-radius:13px!important;background:#fff!important;color:#272338!important}.ui-finance input:focus,.ui-finance select:focus,.ui-finance textarea:focus{outline:3px solid rgba(255,195,19,.18)!important;border-color:#ffd65a!important}.ui-finance label{color:#625b71!important}.ui-finance .table-wrap{border:1px solid var(--db-line)!important;border-radius:16px!important;box-shadow:none!important;background:#fff!important}.ui-finance .table th,.ui-finance .win-table th{background:#faf9fd!important;color:#625b71!important;border-bottom:1px solid var(--db-line)!important}.ui-finance .table td,.ui-finance .win-table td{border-bottom:1px solid #f0edf5!important}.ui-finance .table tr:hover td{background:#fffaf0!important}.ui-finance .badge,.ui-finance .status-pill{border-radius:999px!important}.ui-finance .notice.success{background:#ecfdf3!important;border-color:#bff2d0!important;color:#176b3a!important}.ui-finance .notice.warn,.ui-finance .alert{background:#fff1f2!important;border-color:#ffd4d8!important;color:#9f1f2b!important}.ui-finance .mini-stat{border-radius:18px!important}.ui-finance .mini-stat b{font-size:24px!important;color:#272338!important}.ui-finance .client-account-card{border:1px solid var(--db-line)!important;border-radius:22px!important;box-shadow:var(--db-shadow)!important;background:#fff!important}.ui-finance .client-account-card:hover{transform:translateY(-2px)!important;box-shadow:0 24px 55px rgba(38,32,58,.16)!important}.ui-finance .client-account-card .amount{color:#272338!important}.ui-finance .client-account-card .meta div{background:#faf9fd!important;border-color:var(--db-line)!important}.ui-finance .modal,.ui-finance .receivable-panel,.ui-finance .catalog-panel{border-radius:22px!important;border:1px solid var(--db-line)!important;box-shadow:0 30px 90px rgba(32,27,46,.32)!important}.ui-finance .receivable-panel-head,.ui-finance .catalog-head,.ui-finance .win-panel-title{background:linear-gradient(135deg,#fff,#fff7dc)!important;border-bottom:1px solid var(--db-line)!important;color:#272338!important}

/* Dashboard dedicated */
.finance-dashboard{display:flex;flex-direction:column;gap:18px}.fd-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.fd-head h1{font-size:33px;margin:0;color:#272338;letter-spacing:-.06em}.fd-head p{margin:5px 0 0;color:var(--db-muted);font-weight:600}.fd-filter{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--db-line);border-radius:13px;min-height:50px;padding:0 18px;font-weight:800;color:#3b354a;box-shadow:0 12px 28px rgba(38,32,58,.06)}.fd-filter span{color:var(--db-gold)}.fd-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.fd-kpis article{min-height:126px;border-radius:10px;background:linear-gradient(145deg,#3c354d,#282337);color:#fff;padding:24px 24px 20px;box-shadow:0 18px 35px rgba(32,27,46,.18);position:relative;overflow:hidden}.fd-kpis article:after{content:"";position:absolute;right:18px;top:22px;width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.08)}.fd-kpis small{display:block;text-transform:uppercase;letter-spacing:.06em;color:#ded9ea;font-size:12px;font-weight:900}.fd-kpis strong{display:block;margin:10px 0 4px;color:var(--db-gold);font-size:30px;line-height:1;font-weight:900;letter-spacing:-.06em}.fd-kpis span{display:block;color:#f4f1fb;font-size:13px;font-weight:700}.fd-grid-main{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(380px,.9fr);gap:18px}.fd-grid-bottom{display:grid;grid-template-columns:minmax(330px,.95fr) minmax(330px,1fr) minmax(330px,1fr);gap:18px}.fd-card{background:#fff;border:1px solid var(--db-line);border-radius:12px;padding:22px;box-shadow:var(--db-shadow);min-width:0}.fd-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.fd-card-head h2{font-size:19px;margin:0;color:#272338;letter-spacing:-.035em}.fd-card-head p{margin:4px 0 0;color:var(--db-muted);font-size:13px}.fd-card-head a{color:#3267f6;font-weight:900}.fd-chart{height:238px;display:grid;grid-template-columns:repeat(12,1fr);align-items:end;gap:10px;padding:18px 10px 4px;border-top:1px solid #f0edf5;background:linear-gradient(180deg,transparent 0,transparent 49px,rgba(39,35,56,.06) 50px,transparent 51px,transparent 99px,rgba(39,35,56,.06) 100px,transparent 101px,transparent 149px,rgba(39,35,56,.06) 150px,transparent 151px)}.fd-month{height:210px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px}.fd-month .bars{height:170px;display:flex;align-items:flex-end;gap:5px}.fd-month i,.fd-month em{display:block;width:16px;border-radius:5px 5px 0 0}.fd-month i{background:linear-gradient(180deg,#3c354d,#292437)}.fd-month em{background:linear-gradient(180deg,#ffd956,#ffbd10)}.fd-month span{font-size:12px;color:#625b71;font-weight:700}.fd-legend{display:flex;gap:18px;margin-top:5px;color:#625b71;font-weight:800;font-size:12px}.fd-legend i,.fd-legend em{display:inline-block;width:18px;height:8px;border-radius:999px;margin-right:7px;vertical-align:middle}.fd-legend i{background:#332d46}.fd-legend em{background:var(--db-gold)}.fd-payments{display:flex;flex-direction:column;gap:10px}.fd-payments a{display:grid;grid-template-columns:104px 1fr auto;gap:14px;align-items:center;padding:12px;border-radius:12px;border:1px solid #f0edf5;background:#fff}.fd-payments a:hover{background:#fffaf0}.fd-payments .date{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:9px;background:#eef4ff;color:#3267f6;font-weight:900;font-size:12px}.fd-payments .date.late{background:#fff0f1;color:#ff5964}.fd-payments b{display:block;color:#272338}.fd-payments small{display:block;color:#7b738b;margin-top:2px}.fd-payments strong{color:#3267f6;font-size:16px}.fd-donut-wrap{display:flex;align-items:center;gap:20px}.fd-donut{width:170px;height:170px;display:grid;place-items:center;text-align:center;border-radius:50%;background:conic-gradient(#332d46 0 var(--a), var(--db-gold) var(--a) calc(var(--a) + var(--b)), #e8e4ee 0);position:relative;flex:0 0 auto}.fd-donut:before{content:"";position:absolute;inset:28px;background:#fff;border-radius:50%}.fd-donut b,.fd-donut small{position:relative;z-index:1;display:block}.fd-donut b{font-size:20px;letter-spacing:-.05em}.fd-donut small{margin-top:26px;color:#7b738b}.fd-donut-lines{display:flex;flex-direction:column;gap:12px;flex:1}.fd-donut-lines span{display:flex;align-items:center;gap:10px;color:#625b71}.fd-donut-lines b{margin-left:auto;color:#272338}.fd-donut-lines i,.fd-donut-lines em,.fd-donut-lines u{width:14px;height:14px;border-radius:50%;display:inline-block;text-decoration:none}.fd-donut-lines i{background:#332d46}.fd-donut-lines em{background:var(--db-gold)}.fd-donut-lines u{background:#e8e4ee}.fd-top-clients{display:flex;flex-direction:column}.fd-top-clients div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #f0edf5}.fd-top-clients span{font-weight:800}.fd-top-clients b{color:#272338}.fd-docs{display:flex;flex-direction:column;gap:11px}.fd-docs a{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;position:relative}.fd-docs i{width:38px;height:38px;border-radius:10px;background:linear-gradient(180deg,var(--db-gold2),var(--db-gold));display:grid;place-items:center;color:#332d46;font-weight:900;font-style:normal}.fd-docs b,.fd-docs small{display:block}.fd-docs b{color:#272338}.fd-docs small{color:#7b738b}.fd-docs strong{color:#272338}.fd-docs em{position:absolute;right:0;bottom:-2px;font-style:normal;font-size:11px;color:#7b738b}.fd-bottom-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;background:#fff;border:1px solid var(--db-line);border-radius:12px;box-shadow:var(--db-shadow);padding:18px}.fd-bottom-stats article{display:grid;grid-template-columns:1fr;gap:4px;border-right:1px solid #f0edf5;padding:6px 18px}.fd-bottom-stats article:last-child{border-right:0}.fd-bottom-stats span{color:#625b71;text-transform:uppercase;font-size:12px;font-weight:900}.fd-bottom-stats b{font-size:23px;color:#272338;letter-spacing:-.05em}.fd-bottom-stats small{color:#7b738b}.sd-empty{color:#7b738b;font-weight:700}

@media(max-width:1200px){.fd-kpis{grid-template-columns:repeat(2,1fr)}.fd-grid-main,.fd-grid-bottom{grid-template-columns:1fr}.fd-bottom-stats{grid-template-columns:repeat(2,1fr)}.fd-bottom-stats article{border-right:0}}
@media(max-width:980px){.finance-sidebar{position:static!important;width:100%!important;min-height:auto!important}.finance-main{margin-left:0!important}.sidebar-user{position:static;margin-top:20px}.finance-nav{display:grid!important;grid-template-columns:repeat(2,1fr)!important}.finance-topbar{height:auto!important;position:static!important;flex-wrap:wrap;gap:12px}.finance-content{padding:18px!important}.fd-kpis{grid-template-columns:1fr}.fd-head{flex-direction:column}.fd-chart{overflow-x:auto;min-width:680px}.fd-chart-card{overflow:hidden}.fd-donut-wrap{flex-direction:column;align-items:flex-start}}
@media(max-width:680px){.finance-nav{grid-template-columns:1fr!important}.top-actions{display:none}.fd-payments a{grid-template-columns:1fr}.fd-grid-bottom{grid-template-columns:1fr}.fd-bottom-stats{grid-template-columns:1fr}.fd-bottom-stats article{padding:10px}.fd-kpis article{min-height:110px}.fd-head h1{font-size:28px}}

/* V71 — corrections dashboard: sidebar compact, logo visible, repartition alignment */
.ui-finance .finance-sidebar{
  width:250px!important;
  padding:16px 14px!important;
}
.ui-finance .finance-main{margin-left:250px!important;}
.ui-finance .finance-brand{
  min-height:72px!important;
  padding:12px 13px!important;
  margin-bottom:14px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  gap:12px!important;
}
.ui-finance .finance-brand .brand-mark{
  width:54px!important;
  height:54px!important;
  border-radius:14px!important;
  background:#ffffff!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  flex:0 0 54px!important;
  box-shadow:0 10px 26px rgba(0,0,0,.18)!important;
}
.ui-finance .finance-brand .brand-mark img{
  width:48px!important;
  height:48px!important;
  max-width:48px!important;
  max-height:48px!important;
  object-fit:contain!important;
  padding:4px!important;
  border-radius:10px!important;
  background:transparent!important;
}
.ui-finance .finance-brand .brand-mark span{
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  color:#ffc313!important;
  font-size:28px!important;
}
.ui-finance .finance-brand b{
  font-size:14px!important;
  line-height:1.05!important;
  color:#fff!important;
}
.ui-finance .finance-brand small{
  font-size:10px!important;
  line-height:1.1!important;
  color:#cbd5e1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.ui-finance .finance-nav{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  margin-top:8px!important;
}
.ui-finance .finance-nav a{
  min-height:36px!important;
  padding:8px 10px!important;
  margin:0!important;
  border-radius:11px!important;
  gap:9px!important;
  font-size:12px!important;
  line-height:1.1!important;
}
.ui-finance .finance-nav a span{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  font-size:11px!important;
  border-radius:7px!important;
}
.ui-finance .sidebar-user{
  left:14px!important;
  right:14px!important;
  bottom:16px!important;
  padding-top:14px!important;
}
.ui-finance .fd-donut-wrap{
  align-items:center!important;
  gap:18px!important;
}
.ui-finance .fd-donut{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  text-align:center!important;
  overflow:hidden!important;
}
.ui-finance .fd-donut b{
  position:relative!important;
  z-index:2!important;
  margin:0!important;
  line-height:1.05!important;
  font-size:18px!important;
  max-width:112px!important;
  white-space:nowrap!important;
}
.ui-finance .fd-donut small{
  position:relative!important;
  z-index:2!important;
  margin:0!important;
  font-size:11px!important;
  color:#7b738b!important;
}
.ui-finance .fd-donut-lines span{
  min-height:30px!important;
  border-bottom:1px solid #f0edf5!important;
  padding-bottom:7px!important;
}
.ui-finance .fd-donut-lines span:last-child{border-bottom:0!important;}
@media(max-width:1180px){
  .ui-finance .finance-sidebar{width:235px!important;}
  .ui-finance .finance-main{margin-left:235px!important;}
}
@media(max-width:980px){
  .ui-finance .finance-sidebar{width:100%!important;}
  .ui-finance .finance-main{margin-left:0!important;}
  .ui-finance .sidebar-user{position:static!important;}
}

/* Mobile application redesign v80 */
body.bee-mobile-v2{margin:0;background:#f4f6fb;color:#17142c;font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased;padding-bottom:92px;}
.bee-mobile-v2 *{box-sizing:border-box}
.mapp{max-width:520px;margin:0 auto;padding:14px 14px 110px;min-height:100vh}
.mhead{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:10px 0 12px;background:linear-gradient(180deg,#f4f6fb 70%,rgba(244,246,251,0));backdrop-filter:blur(12px)}
.mbrand{display:flex;align-items:center;gap:10px}.mlogo{width:46px;height:46px;border-radius:16px;background:#17142c;display:grid;place-items:center;overflow:hidden;box-shadow:0 14px 30px rgba(17,20,42,.16)}.mlogo img{width:100%;height:100%;object-fit:contain;padding:6px}.mlogo b{color:#ffc52e}.mbrand strong{display:block;font-size:15px;font-weight:900;letter-spacing:-.03em}.mbrand small{display:block;color:#7f8495;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.mavatar{width:42px;height:42px;border-radius:50%;background:#ffc52e;color:#17142c;text-decoration:none;display:grid;place-items:center;font-weight:1000;box-shadow:0 10px 24px rgba(255,197,46,.28)}
.mhero{background:linear-gradient(135deg,#251f3b,#15172b);border-radius:28px;padding:24px 22px;color:white;box-shadow:0 24px 50px rgba(24,21,43,.22);position:relative;overflow:hidden}.mhero:after{content:"";position:absolute;right:-30px;top:-30px;width:130px;height:130px;border-radius:50%;background:rgba(255,197,46,.14)}.mhero span{color:#aeb3c7;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.mhero h1{font-size:34px;line-height:1;margin:12px 0 6px;color:#ffc52e;letter-spacing:-.05em}.mhero p{margin:0 0 18px;color:#eff1fb;font-weight:800}.mhero-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mhero-row a{text-decoration:none;color:white;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:12px}.mhero-row b{display:block;color:#fff;font-size:15px}.mhero-row small{color:#bfc3d4;font-weight:800}
.mquick{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.mquick a{text-decoration:none;background:#fff;border:1px solid #e8ebf4;border-radius:20px;padding:14px 8px;text-align:center;color:#17142c;box-shadow:0 12px 30px rgba(20,22,45,.06)}.mquick i{width:38px;height:38px;margin:0 auto 8px;border-radius:14px;background:#ffc52e;display:grid;place-items:center;font-style:normal;font-weight:1000}.mquick span{font-size:11px;font-weight:900}.mquick.slim{grid-template-columns:repeat(3,1fr)}
.mkpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.mkpis a{background:#fff;border:1px solid #e8ebf4;border-radius:20px;padding:14px;text-decoration:none;color:#17142c;min-width:0}.mkpis small{display:block;color:#7f8495;font-size:10px;text-transform:uppercase;font-weight:1000;letter-spacing:.05em}.mkpis b{display:block;margin:7px 0 3px;font-size:16px;letter-spacing:-.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mkpis em{font-style:normal;color:#8e94a5;font-size:11px;font-weight:800}.mkpis.compact{grid-template-columns:repeat(3,1fr);margin:0 0 12px}.mkpis.compact a{padding:12px}
.mcard{background:#fff;border:1px solid #e8ebf4;border-radius:24px;padding:16px;margin:14px 0;box-shadow:0 14px 38px rgba(20,22,45,.06)}.msection-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.msection-head h2,.msection-head h3{margin:0;font-size:18px;letter-spacing:-.04em}.msection-head p{margin:2px 0 0;color:#8d93a5;font-weight:700}.msection-head a,.msection-head button{border:0;background:#fff4c8;color:#1e4dff;border-radius:12px;text-decoration:none;font-weight:1000;padding:8px 10px}.mchart{height:188px;display:flex;align-items:flex-end;gap:7px;border-top:1px solid #eef1f7;border-bottom:1px solid #eef1f7;padding:18px 0 28px}.mchart div{flex:1;height:100%;display:flex;align-items:flex-end;gap:3px;position:relative;justify-content:center}.mchart span,.mchart em{width:9px;border-radius:8px 8px 2px 2px;display:block}.mchart span{background:#231d37}.mchart em{background:#ffc52e}.mchart small{position:absolute;bottom:-22px;font-size:10px;color:#73798a;font-weight:900}.mlegend{font-size:12px;font-weight:900;color:#656b7c;margin-top:12px}.mlegend span,.mlegend em{display:inline-block;width:16px;height:7px;border-radius:8px;background:#231d37;margin:0 6px 0 0}.mlegend em{background:#ffc52e;margin-left:12px}
.mdeadline,.mdoc-row,.mmini-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #eef1f7;text-decoration:none;color:#17142c}.mdeadline:first-of-type,.mdoc-row:first-of-type,.mmini-row:first-of-type{border-top:0}.mdeadline time{background:#eaf1ff;color:#1e60ff;border-radius:12px;padding:9px 10px;font-weight:1000;min-width:86px;text-align:center}.mdeadline time.late{background:#ffe7e8;color:#f03445}.mdeadline div,.mdoc-row div,.mmini-row b{flex:1;min-width:0}.mdeadline b,.mdoc-row b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mdeadline small,.mdoc-row small{display:block;color:#7e8494;font-size:11px;font-weight:800}.mdeadline strong,.mdoc-row strong,.mmini-row strong{color:#1e4dff;font-weight:1000;white-space:nowrap}.mgrid2{display:block}.mmini-row span,.mdoc-row span{width:38px;height:38px;border-radius:13px;background:#ffc52e;display:grid;place-items:center;font-weight:1000}.mempty{color:#9096a8;font-weight:800;margin:14px 0;text-align:center}.mpage{display:flex;align-items:flex-end;justify-content:space-between;margin:14px 0}.mpage small{color:#7f8495;text-transform:uppercase;font-weight:1000;font-size:11px;letter-spacing:.08em}.mpage h1{margin:2px 0 0;font-size:26px;letter-spacing:-.05em}.mpage a{text-decoration:none;background:#17142c;color:#fff;border-radius:16px;padding:10px 12px;font-weight:1000}
.mdoc-card,.mclient-card,.mreceive{background:#fff;border:1px solid #e8ebf4;border-radius:24px;padding:16px;margin:12px 0;box-shadow:0 14px 36px rgba(20,22,45,.06)}.mdoc-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.mdoc-top b{font-size:16px}.mdoc-top small{display:block;color:#7d8494;font-weight:800;margin-top:3px}.dot{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:1000;background:#eef1f7;color:#40485a}.dot.ok{background:#e1f8ec;color:#0b8d4a}.dot.warn{background:#fff4cc;color:#956700}.dot.bad{background:#ffe4e6;color:#e33445}.dot.muted{background:#eef1f7;color:#657084}.mdoc-amount{display:flex;align-items:end;justify-content:space-between;margin:15px 0}.mdoc-amount span{color:#7d8494;font-weight:800}.mdoc-amount strong{font-size:22px;letter-spacing:-.04em}.mdoc-amount em{display:block;color:#8a90a1;font-style:normal;font-size:11px;text-align:right} .mdoc-card nav,.mclient-card nav{display:flex;gap:8px;overflow:auto;padding-top:2px}.mdoc-card nav a,.mclient-card nav a{flex:0 0 auto;text-decoration:none;background:#f3f5fa;color:#17142c;border-radius:13px;padding:9px 11px;font-weight:1000;font-size:12px}.mpills{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.mpills span{background:#f3f5fa;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:900;color:#687083}
.mclient-main{display:flex;gap:12px;text-decoration:none;color:#17142c}.mclient-main>span,.mclient-profile>span{width:46px;height:46px;border-radius:16px;background:#17142c;color:#ffc52e;display:grid;place-items:center;font-weight:1000;flex:0 0 auto}.mclient-main b{display:block;font-size:16px}.mclient-main small{color:#7d8494;font-weight:800}.mclient-profile{display:flex;gap:12px}.mclient-profile b{display:block;font-size:19px}.mclient-profile small{color:#7d8494;font-weight:800}.mclient-profile p{margin:7px 0;color:#5f6678;font-weight:700}.msubtitle{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#7e8496;margin:16px 0 4px}.mreceive{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start}.mreceive b{display:block}.mreceive small,.mreceive em{display:block;color:#7d8494;font-size:12px;font-style:normal;font-weight:800}.mreceive strong{font-size:17px;color:#1e4dff}.mreceive .dot{grid-column:1/3;width:max-content}.mreceive details{grid-column:1/3}.mreceive summary{cursor:pointer;background:#17142c;color:white;border-radius:14px;padding:10px 12px;font-weight:1000;list-style:none;text-align:center}.mreceive-form{display:grid;gap:10px;margin-top:10px}.mreceive-form label{display:grid;gap:6px;font-size:12px;font-weight:1000;color:#697083;text-transform:uppercase}.mreceive-form input,.mreceive-form select{border:1px solid #dfe4ef;border-radius:14px;padding:12px;background:#f9fbff}.mreceive-form button,.mform button{border:0;border-radius:16px;background:#1e4dff;color:white;padding:13px 16px;font-weight:1000}.mproducts{display:grid;gap:12px}.mproducts article{background:#fff;border:1px solid #e8ebf4;border-radius:22px;padding:12px;display:flex;gap:12px;align-items:center}.mproducts img,.mproducts i{width:66px;height:66px;border-radius:18px;object-fit:cover;background:#f3f5fa;display:grid;place-items:center;font-style:normal}.mproducts b{display:block}.mproducts small{display:block;color:#7d8494}.mproducts span{display:block;color:#1e4dff;font-weight:1000;margin-top:4px}.menu a{display:flex;text-decoration:none;color:#17142c;justify-content:space-between;padding:16px 4px;border-top:1px solid #eef1f7;font-weight:1000}.menu a:first-child{border-top:0}.menu a:after{content:'›';color:#a0a5b5}.mform{display:grid;gap:14px}.mform-card{background:#fff;border:1px solid #e8ebf4;border-radius:24px;padding:16px;display:grid;gap:12px}.mform-card h3{margin:0;font-size:17px}.mform label{display:grid;gap:7px;color:#687083;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.03em}.mform input,.mform select,.mform textarea{width:100%;border:1px solid #dfe4ef;border-radius:16px;background:#fbfcff;padding:14px;font:inherit;color:#17142c}.mform textarea{min-height:86px;resize:vertical}.mform-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mline{border:1px solid #e4e8f1;border-radius:18px;overflow:hidden;margin:10px 0;background:#fbfcff}.mline-summary{width:100%;border:0;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px;font-weight:1000}.mline-summary strong{color:#1e4dff}.mline-body{display:none;padding:14px;border-top:1px solid #eef1f7;gap:10px}.mline.open .mline-body{display:grid}.mfab{position:fixed;right:18px;bottom:92px;z-index:50;width:58px;height:58px;border-radius:22px;background:#ffc52e;color:#17142c;text-decoration:none;display:grid;place-items:center;font-size:28px;font-weight:1000;box-shadow:0 20px 38px rgba(255,197,46,.34)}.mtab{position:fixed;left:50%;transform:translateX(-50%);bottom:12px;z-index:60;width:min(500px,calc(100% - 24px));height:68px;background:#17142c;border-radius:26px;display:grid;grid-template-columns:repeat(5,1fr);padding:8px;box-shadow:0 18px 44px rgba(20,18,43,.28)}.mtab a{text-decoration:none;color:#c8cede;display:grid;place-items:center;font-size:19px;border-radius:19px;font-weight:900}.mtab a span{font-size:10px;margin-top:-4px}.mtab a.active{background:#fff;color:#17142c}.mtab a.active span{color:#17142c}
@media(min-width:760px){.mapp{max-width:820px}.mgrid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mcard{margin:14px 0}.mquick{grid-template-columns:repeat(4,1fr)}.mtab{max-width:520px}.mproducts{grid-template-columns:1fr 1fr}.mform-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:360px){.mkpis{grid-template-columns:1fr}.mquick{grid-template-columns:repeat(2,1fr)}.mhero h1{font-size:28px}.mdoc-amount{display:block}.mdoc-amount strong{display:block;margin-top:6px}.mdeadline{gap:8px}.mdeadline time{min-width:72px;font-size:11px}.mdeadline strong{font-size:13px}}

/* V81 — mobile polish: visible logo + non-scroll document action buttons */
body.bee-mobile-v2 .mlogo{
  background:#fff!important;
  border:1px solid #e9edf5!important;
  width:54px!important;
  height:54px!important;
  border-radius:18px!important;
  box-shadow:0 14px 30px rgba(17,20,42,.14)!important;
  padding:5px!important;
}
body.bee-mobile-v2 .mlogo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:0!important;
  display:block!important;
}
body.bee-mobile-v2 .mlogo b{color:#17142c!important;}
body.bee-mobile-v2 .mbrand{gap:12px!important;}
body.bee-mobile-v2 .mbrand strong{font-size:16px!important;}

body.bee-mobile-v2 .mdoc-card nav,
body.bee-mobile-v2 .mclient-card nav{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(82px,1fr))!important;
  gap:7px!important;
  overflow:visible!important;
  padding-top:4px!important;
  width:100%!important;
}
body.bee-mobile-v2 .mdoc-card nav a,
body.bee-mobile-v2 .mclient-card nav a{
  flex:initial!important;
  min-width:0!important;
  width:100%!important;
  text-align:center!important;
  padding:9px 5px!important;
  font-size:11.5px!important;
  line-height:1.1!important;
  white-space:normal!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
@media(max-width:390px){
  body.bee-mobile-v2 .mdoc-card nav,
  body.bee-mobile-v2 .mclient-card nav{grid-template-columns:repeat(2,1fr)!important;}
  body.bee-mobile-v2 .mlogo{width:50px!important;height:50px!important;}
}

/* V82 — tablet adaptation for mobile app, without changing phone layout */
@media (min-width: 768px) and (max-width: 1180px){
  body.bee-mobile-v2{
    padding-bottom:0!important;
    background:linear-gradient(135deg,#f6f7fb 0%,#eef1f8 100%)!important;
  }
  body.bee-mobile-v2 .mapp{
    max-width:none!important;
    width:100%!important;
    padding:22px 24px 28px 124px!important;
    min-height:100vh!important;
  }
  body.bee-mobile-v2 .mhead{
    position:sticky!important;
    top:0!important;
    margin:-22px -24px 18px -24px!important;
    padding:18px 24px 16px 24px!important;
    background:rgba(246,247,251,.86)!important;
    border-bottom:1px solid rgba(226,232,240,.72)!important;
  }
  body.bee-mobile-v2 .mbrand strong{font-size:20px!important;}
  body.bee-mobile-v2 .mbrand small{font-size:12px!important;}
  body.bee-mobile-v2 .mhero{
    display:grid!important;
    grid-template-columns:1.1fr .9fr!important;
    align-items:center!important;
    min-height:188px!important;
    padding:28px!important;
  }
  body.bee-mobile-v2 .mhero h1{font-size:44px!important;}
  body.bee-mobile-v2 .mhero-row{grid-template-columns:1fr 1fr!important;}
  body.bee-mobile-v2 .mquick{
    grid-template-columns:repeat(6,1fr)!important;
    gap:12px!important;
  }
  body.bee-mobile-v2 .mkpis{
    grid-template-columns:repeat(5,1fr)!important;
    gap:12px!important;
  }
  body.bee-mobile-v2 .mkpis.compact{grid-template-columns:repeat(3,1fr)!important;}
  body.bee-mobile-v2 .mkpis a,
  body.bee-mobile-v2 .mcard,
  body.bee-mobile-v2 .mdoc-card,
  body.bee-mobile-v2 .mclient-card,
  body.bee-mobile-v2 .mreceive,
  body.bee-mobile-v2 .mform-card{
    border-radius:26px!important;
    box-shadow:0 18px 46px rgba(20,22,45,.07)!important;
  }
  body.bee-mobile-v2 .mgrid2{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:16px!important;
  }
  body.bee-mobile-v2 .mchart{height:260px!important;gap:10px!important;}
  body.bee-mobile-v2 .mchart span,
  body.bee-mobile-v2 .mchart em{width:13px!important;}
  body.bee-mobile-v2 .mproducts{grid-template-columns:repeat(2,1fr)!important;}
  body.bee-mobile-v2 .mform{
    max-width:980px!important;
    margin:0 auto!important;
  }
  body.bee-mobile-v2 .mform-card{
    padding:22px!important;
  }
  body.bee-mobile-v2 .mform-grid{grid-template-columns:repeat(4,1fr)!important;}
  body.bee-mobile-v2 .mdoc-card,
  body.bee-mobile-v2 .mclient-card,
  body.bee-mobile-v2 .mreceive{
    margin:14px 0!important;
  }
  body.bee-mobile-v2 .mdoc-card nav,
  body.bee-mobile-v2 .mclient-card nav{
    grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;
  }
  body.bee-mobile-v2 .mtab{
    left:18px!important;
    top:118px!important;
    bottom:auto!important;
    transform:none!important;
    width:76px!important;
    height:auto!important;
    min-height:430px!important;
    padding:10px!important;
    border-radius:28px!important;
    grid-template-columns:1fr!important;
    grid-auto-rows:76px!important;
    align-content:start!important;
  }
  body.bee-mobile-v2 .mtab a{
    font-size:22px!important;
    border-radius:22px!important;
  }
  body.bee-mobile-v2 .mtab a span{
    display:none!important;
  }
  body.bee-mobile-v2 .mfab{
    right:28px!important;
    bottom:28px!important;
    width:66px!important;
    height:66px!important;
    border-radius:24px!important;
  }
}

@media (min-width: 980px) and (max-width: 1180px){
  body.bee-mobile-v2 .mapp{padding-left:136px!important;}
  body.bee-mobile-v2 .mgrid2{grid-template-columns:1fr 1fr!important;}
  body.bee-mobile-v2 .mcard:nth-of-type(2){min-height:320px;}
}

@media (min-width: 768px) and (max-width: 900px){
  body.bee-mobile-v2 .mapp{padding-left:112px!important;padding-right:18px!important;}
  body.bee-mobile-v2 .mquick{grid-template-columns:repeat(4,1fr)!important;}
  body.bee-mobile-v2 .mkpis{grid-template-columns:repeat(3,1fr)!important;}
  body.bee-mobile-v2 .mhero{grid-template-columns:1fr!important;}
  body.bee-mobile-v2 .mchart{height:230px!important;}
  body.bee-mobile-v2 .mdeadline{gap:10px!important;}
  body.bee-mobile-v2 .mdeadline time{min-width:92px!important;}
}

/* V83 — tablet landscape full-fit + PWA logo */
body.bee-mobile-v2 .mlogo{
  background:#fff!important;
}
body.bee-mobile-v2 .mlogo img{
  object-fit:contain!important;
  padding:2px!important;
}

@media (min-width: 768px) and (max-width: 1180px) and (orientation: landscape){
  html, body.bee-mobile-v2{
    min-height:100%;
    overflow-x:hidden!important;
  }
  body.bee-mobile-v2{
    padding-bottom:0!important;
    background:linear-gradient(135deg,#f7f8fc 0%,#edf1f8 100%)!important;
  }
  body.bee-mobile-v2 .mapp{
    max-width:none!important;
    width:100vw!important;
    min-height:100vh!important;
    padding:14px 18px 20px 106px!important;
    margin:0!important;
  }
  body.bee-mobile-v2 .mhead{
    margin:-14px -18px 12px -106px!important;
    padding:12px 18px 12px 106px!important;
    min-height:76px!important;
    background:rgba(247,248,252,.93)!important;
    box-shadow:0 8px 24px rgba(20,22,45,.06)!important;
  }
  body.bee-mobile-v2 .mlogo{
    width:54px!important;
    height:54px!important;
    border-radius:18px!important;
    padding:4px!important;
  }
  body.bee-mobile-v2 .mbrand strong{font-size:18px!important;line-height:1.05!important;}
  body.bee-mobile-v2 .mbrand small{font-size:11px!important;}
  body.bee-mobile-v2 .mavatar{width:40px!important;height:40px!important;}

  body.bee-mobile-v2 .mtab{
    left:14px!important;
    top:92px!important;
    bottom:auto!important;
    transform:none!important;
    width:74px!important;
    min-height:auto!important;
    height:calc(100vh - 112px)!important;
    max-height:560px!important;
    padding:8px!important;
    border-radius:26px!important;
    grid-template-columns:1fr!important;
    grid-auto-rows:minmax(52px,1fr)!important;
    align-content:stretch!important;
  }
  body.bee-mobile-v2 .mtab a{font-size:20px!important;border-radius:20px!important;}
  body.bee-mobile-v2 .mtab a span{display:none!important;}
  body.bee-mobile-v2 .mfab{
    right:20px!important;
    bottom:20px!important;
    width:58px!important;
    height:58px!important;
    border-radius:22px!important;
  }

  body.bee-mobile-v2.bee-page-home .mapp{
    display:grid!important;
    grid-template-columns:minmax(0,1.35fr) minmax(330px,.85fr)!important;
    grid-auto-rows:auto!important;
    gap:12px 14px!important;
    align-content:start!important;
  }
  body.bee-mobile-v2.bee-page-home .mhead{grid-column:1 / -1!important;}
  body.bee-mobile-v2.bee-page-home .mhero{grid-column:1 / 2!important;margin:0!important;min-height:166px!important;padding:22px!important;border-radius:26px!important;}
  body.bee-mobile-v2.bee-page-home .mhero h1{font-size:38px!important;margin:8px 0 4px!important;}
  body.bee-mobile-v2.bee-page-home .mhero p{margin-bottom:12px!important;}
  body.bee-mobile-v2.bee-page-home .mquick{grid-column:2 / 3!important;margin:0!important;grid-template-columns:repeat(2,1fr)!important;align-self:stretch!important;}
  body.bee-mobile-v2.bee-page-home .mquick a{min-height:77px!important;padding:11px 8px!important;border-radius:19px!important;display:grid!important;align-content:center!important;}
  body.bee-mobile-v2.bee-page-home .mkpis{grid-column:1 / -1!important;margin:0!important;grid-template-columns:repeat(3,1fr)!important;gap:12px!important;}
  body.bee-mobile-v2.bee-page-home .mkpis a{padding:13px 14px!important;border-radius:20px!important;}
  body.bee-mobile-v2.bee-page-home .mcard{margin:0!important;border-radius:24px!important;}
  body.bee-mobile-v2.bee-page-home > .mcard:nth-of-type(1){grid-column:1 / 2!important;}
  body.bee-mobile-v2.bee-page-home > .mcard:nth-of-type(2){grid-column:2 / 3!important;}
  body.bee-mobile-v2.bee-page-home .mchart{height:230px!important;padding-bottom:26px!important;}
  body.bee-mobile-v2.bee-page-home .mgrid2{grid-column:1 / -1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;}
  body.bee-mobile-v2.bee-page-home .mgrid2 .mcard{margin:0!important;}

  body.bee-mobile-v2:not(.bee-page-home) .mpage{margin:0 0 12px!important;}
  body.bee-mobile-v2:not(.bee-page-home) .mgrid2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;}
  body.bee-mobile-v2 .mdoc-card,
  body.bee-mobile-v2 .mclient-card,
  body.bee-mobile-v2 .mreceive{
    margin:10px 0!important;
    border-radius:22px!important;
  }
  body.bee-mobile-v2 .mdoc-card nav,
  body.bee-mobile-v2 .mclient-card nav{
    grid-template-columns:repeat(auto-fit,minmax(98px,1fr))!important;
  }
  body.bee-mobile-v2 .mproducts{grid-template-columns:repeat(3,1fr)!important;}
  body.bee-mobile-v2 .mform{
    max-width:none!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
  body.bee-mobile-v2 .mform .mpage,
  body.bee-mobile-v2 .mform > button{
    grid-column:1 / -1!important;
  }
  body.bee-mobile-v2 .mform-card{margin:0!important;}
}

@media (min-width: 1024px) and (max-width: 1366px) and (orientation: landscape){
  body.bee-mobile-v2 .mapp{padding-left:112px!important;}
  body.bee-mobile-v2 .mhead{margin-left:-112px!important;padding-left:112px!important;}
  body.bee-mobile-v2.bee-page-home .mquick{grid-template-columns:repeat(4,1fr)!important;}
  body.bee-mobile-v2.bee-page-home .mquick a{min-height:86px!important;}
  body.bee-mobile-v2.bee-page-home .mchart{height:260px!important;}
}

/* V84 — correction tablette paysage: plein écran sans réduction */
@media (min-width: 768px) and (max-width: 1366px) and (orientation: landscape){
  html, body.bee-mobile-v2{
    width:100%!important;
    min-height:100%!important;
    overflow-x:hidden!important;
  }
  body.bee-mobile-v2{
    padding-bottom:88px!important;
    background:#f4f6fb!important;
  }
  body.bee-mobile-v2 .mapp{
    width:100%!important;
    max-width:none!important;
    min-height:100vh!important;
    margin:0!important;
    padding:18px 22px 104px!important;
    display:block!important;
  }
  body.bee-mobile-v2 .mhead{
    position:sticky!important;
    top:0!important;
    margin:-18px -22px 18px!important;
    padding:14px 22px!important;
    min-height:74px!important;
    background:rgba(244,246,251,.96)!important;
    border-bottom:1px solid rgba(226,232,240,.82)!important;
    box-shadow:0 8px 22px rgba(20,22,45,.05)!important;
  }
  body.bee-mobile-v2 .mlogo{
    width:60px!important;
    height:60px!important;
    border-radius:18px!important;
    background:#fff!important;
    padding:4px!important;
  }
  body.bee-mobile-v2 .mlogo img{padding:0!important;object-fit:contain!important;}
  body.bee-mobile-v2 .mbrand strong{font-size:20px!important;line-height:1.05!important;}
  body.bee-mobile-v2 .mbrand small{font-size:12px!important;}
  body.bee-mobile-v2 .mavatar{width:46px!important;height:46px!important;}

  body.bee-mobile-v2 .mtab{
    left:50%!important;
    right:auto!important;
    top:auto!important;
    bottom:14px!important;
    transform:translateX(-50%)!important;
    width:min(900px,calc(100% - 44px))!important;
    height:68px!important;
    min-height:0!important;
    max-height:none!important;
    padding:8px!important;
    border-radius:26px!important;
    grid-template-columns:repeat(5,1fr)!important;
    grid-auto-rows:auto!important;
    align-content:normal!important;
  }
  body.bee-mobile-v2 .mtab a{
    font-size:19px!important;
    border-radius:19px!important;
    display:grid!important;
    place-items:center!important;
  }
  body.bee-mobile-v2 .mtab a span{
    display:block!important;
    font-size:10px!important;
    margin-top:-4px!important;
  }
  body.bee-mobile-v2 .mfab{
    right:24px!important;
    bottom:96px!important;
    width:62px!important;
    height:62px!important;
    border-radius:22px!important;
  }

  body.bee-mobile-v2.bee-page-home .mapp{
    display:grid!important;
    grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)!important;
    gap:16px!important;
    align-content:start!important;
  }
  body.bee-mobile-v2.bee-page-home .mhead{grid-column:1 / -1!important;}
  body.bee-mobile-v2.bee-page-home .mhero{
    grid-column:1 / 2!important;
    min-height:214px!important;
    margin:0!important;
    padding:30px!important;
    border-radius:30px!important;
  }
  body.bee-mobile-v2.bee-page-home .mhero h1{font-size:50px!important;margin:12px 0 6px!important;}
  body.bee-mobile-v2.bee-page-home .mhero p{font-size:16px!important;margin-bottom:18px!important;}
  body.bee-mobile-v2.bee-page-home .mhero-row a{padding:14px!important;}
  body.bee-mobile-v2.bee-page-home .mquick{
    grid-column:2 / 3!important;
    margin:0!important;
    grid-template-columns:repeat(2,1fr)!important;
    gap:12px!important;
    align-self:stretch!important;
  }
  body.bee-mobile-v2.bee-page-home .mquick a{
    min-height:98px!important;
    padding:15px 10px!important;
    border-radius:22px!important;
  }
  body.bee-mobile-v2.bee-page-home .mquick i{width:44px!important;height:44px!important;}
  body.bee-mobile-v2.bee-page-home .mquick span{font-size:12px!important;}
  body.bee-mobile-v2.bee-page-home .mkpis{
    grid-column:1 / -1!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:14px!important;
    margin:0!important;
  }
  body.bee-mobile-v2.bee-page-home .mkpis a{padding:18px!important;border-radius:24px!important;}
  body.bee-mobile-v2.bee-page-home .mkpis b{font-size:22px!important;}
  body.bee-mobile-v2.bee-page-home .mcard{margin:0!important;border-radius:26px!important;padding:20px!important;}
  body.bee-mobile-v2.bee-page-home > .mcard:nth-of-type(1){grid-column:1 / 2!important;}
  body.bee-mobile-v2.bee-page-home > .mcard:nth-of-type(2){grid-column:2 / 3!important;}
  body.bee-mobile-v2.bee-page-home .mchart{height:300px!important;gap:10px!important;padding-bottom:30px!important;}
  body.bee-mobile-v2.bee-page-home .mchart span,
  body.bee-mobile-v2.bee-page-home .mchart em{width:14px!important;}
  body.bee-mobile-v2.bee-page-home .mgrid2{
    grid-column:1 / -1!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:16px!important;
  }
  body.bee-mobile-v2.bee-page-home .mgrid2 .mcard{margin:0!important;}

  body.bee-mobile-v2:not(.bee-page-home) .mpage{margin:0 0 16px!important;}
  body.bee-mobile-v2:not(.bee-page-home) .mpage h1{font-size:34px!important;}
  body.bee-mobile-v2:not(.bee-page-home) .mgrid2{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  body.bee-mobile-v2 .mdoc-card,
  body.bee-mobile-v2 .mclient-card,
  body.bee-mobile-v2 .mreceive,
  body.bee-mobile-v2 .mcard,
  body.bee-mobile-v2 .mform-card{
    border-radius:24px!important;
    padding:18px!important;
    margin:12px 0!important;
  }
  body.bee-mobile-v2 .mdoc-card nav,
  body.bee-mobile-v2 .mclient-card nav{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;
    gap:8px!important;
    overflow:visible!important;
  }
  body.bee-mobile-v2 .mproducts{grid-template-columns:repeat(3,1fr)!important;}
  body.bee-mobile-v2 .mform{
    max-width:none!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  body.bee-mobile-v2 .mform .mpage,
  body.bee-mobile-v2 .mform > button{grid-column:1 / -1!important;}
}


/* V85 — accès version bureau mobile + hamburger tablette bureau portrait */
body.bee-mobile-v2 .mhead-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
body.bee-mobile-v2 .mdesktop-btn{width:46px;height:46px;border-radius:16px;background:#fff;border:1px solid rgba(226,232,240,.95);display:grid;place-items:center;font-size:20px;box-shadow:0 10px 24px rgba(20,22,45,.08)}
body.bee-mobile-v2 .mquick .mquick-desktop i{font-size:22px;background:#17142c;color:#ffc313}
@media(max-width:480px){body.bee-mobile-v2.bee-page-home .mquick{grid-template-columns:repeat(2,1fr)!important}body.bee-mobile-v2 .mdesktop-btn{width:44px;height:44px}}

.desktop-menu-toggle,.desktop-menu-backdrop{display:none}
@media (min-width: 768px) and (max-width: 1080px) and (orientation: portrait){
  body.ui-finance .desktop-menu-toggle{display:grid!important;place-items:center;width:46px!important;height:46px!important;min-height:46px!important;padding:0!important;border-radius:14px!important;background:#fff!important;color:#272338!important;border:1px solid var(--db-line)!important;box-shadow:0 10px 24px rgba(38,32,58,.08)!important;font-size:22px!important;flex:0 0 auto!important;z-index:91!important}
  body.ui-finance .finance-topbar{position:sticky!important;top:0!important;display:grid!important;grid-template-columns:46px 1fr auto!important;gap:14px!important;align-items:center!important;height:auto!important;min-height:78px!important;padding:16px 18px!important;background:rgba(246,244,250,.96)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--db-line)!important;z-index:80!important}
  body.ui-finance .finance-topbar h1{font-size:25px!important;line-height:1.08!important}
  body.ui-finance .finance-topbar .top-actions{justify-self:end!important}
  body.ui-finance .finance-sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:300px!important;min-height:100vh!important;transform:translateX(-106%)!important;transition:transform .24s ease!important;z-index:120!important;padding:22px 18px!important;overflow-y:auto!important}
  body.ui-finance.desktop-menu-open .finance-sidebar{transform:translateX(0)!important}
  body.ui-finance .desktop-menu-backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.48);z-index:110;opacity:0;pointer-events:none;transition:opacity .22s ease}
  body.ui-finance.desktop-menu-open .desktop-menu-backdrop{opacity:1;pointer-events:auto}
  body.ui-finance .finance-main{margin-left:0!important;width:100%!important}
  body.ui-finance .finance-nav{display:flex!important;grid-template-columns:none!important;gap:7px!important}
  body.ui-finance .finance-nav a{height:50px!important;font-size:15px!important}
  body.ui-finance .sidebar-user{position:static!important;margin-top:22px!important}
  body.ui-finance .finance-content{padding:18px!important}
  body.ui-finance.desktop-menu-open{overflow:hidden!important}
}

/* V86 — correctif menu tablette portrait: le fond sombre ne doit jamais cacher le menu */
@media (min-width: 768px) and (max-width: 1080px) and (orientation: portrait){
  body.ui-finance .desktop-menu-backdrop{
    display:none!important;
    position:fixed!important;
    inset:0!important;
    background:rgba(15,23,42,.54)!important;
    z-index:8990!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  body.ui-finance.desktop-menu-open .desktop-menu-backdrop{
    display:block!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  body.ui-finance .finance-sidebar{
    display:block!important;
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:min(320px,86vw)!important;
    min-height:100vh!important;
    height:100vh!important;
    transform:translateX(-110%)!important;
    transition:transform .24s ease!important;
    z-index:9000!important;
    padding:22px 18px!important;
    overflow-y:auto!important;
    box-shadow:24px 0 80px rgba(15,23,42,.38)!important;
  }
  body.ui-finance.desktop-menu-open .finance-sidebar{
    transform:translateX(0)!important;
  }
  body.ui-finance.desktop-menu-open .finance-main{
    filter:none!important;
  }
  body.ui-finance .finance-nav{
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
  }
  body.ui-finance .finance-nav a{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
  }
  body.ui-finance .desktop-menu-toggle{
    position:relative!important;
    z-index:80!important;
  }
}

/* Hotfix catalogue modal hover readability */
.catalog-modal .catalog-item,
.catalog-modal .catalog-item *{
  color:#0f172a!important;
}
.catalog-modal .catalog-item{
  background:#ffffff!important;
  border:1px solid #e2e8f0!important;
}
.catalog-modal .catalog-item:hover,
.catalog-modal .catalog-item:focus,
.catalog-modal .catalog-item:focus-visible{
  background:#fff7e6!important;
  border-color:#fbbf24!important;
  color:#0f172a!important;
  box-shadow:0 10px 24px rgba(15,23,42,.10)!important;
  outline:none!important;
}
.catalog-modal .catalog-item:hover b,
.catalog-modal .catalog-item:hover small,
.catalog-modal .catalog-item:hover strong,
.catalog-modal .catalog-item:focus b,
.catalog-modal .catalog-item:focus small,
.catalog-modal .catalog-item:focus strong{
  color:#0f172a!important;
  opacity:1!important;
}
.catalog-modal .catalog-item.is-selected,
.catalog-modal .catalog-item.active{
  background:#f8fafc!important;
  color:#0f172a!important;
}


/* Definitive fix: catalogue modal readability on hover/focus (v87)
   Strong specificity + cache-busted CSS version in admin/_layout.php */
body.ui-finance .catalog-modal #catalogResults button.catalog-item,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:visited,
body.app-body.ui-finance .catalog-modal #catalogResults button.catalog-item{
  background:#3b314f!important;
  border-color:#3b314f!important;
  color:#ffffff!important;
  opacity:1!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus-visible,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:active{
  background:#fff8e7!important;
  border-color:#f6b900!important;
  color:#17142c!important;
  opacity:1!important;
  outline:3px solid rgba(255,197,46,.25)!important;
  box-shadow:0 10px 26px rgba(23,20,44,.12)!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover *,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus *,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus-visible *,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:active *{
  color:#17142c!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover small,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus small{
  color:#5f6678!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover strong,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus strong{
  color:#17142c!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover .catalog-item-img,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus .catalog-item-img{
  background:#ffffff!important;
  border-color:#f6d365!important;
}

/* v88 - Catalogue modal definitive text contrast
   Normal state: dark purple card with white text.
   Hover/focus state: light gold card with dark text. */
body.ui-finance .catalog-modal #catalogResults button.catalog-item,
body.ui-finance .catalog-modal #catalogResults .catalog-item{
  background:#3b314f!important;
  border-color:#3b314f!important;
  color:#ffffff!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item b,
body.ui-finance .catalog-modal #catalogResults button.catalog-item span,
body.ui-finance .catalog-modal #catalogResults button.catalog-item strong,
body.ui-finance .catalog-modal #catalogResults button.catalog-item small,
body.ui-finance .catalog-modal #catalogResults .catalog-item b,
body.ui-finance .catalog-modal #catalogResults .catalog-item span,
body.ui-finance .catalog-modal #catalogResults .catalog-item strong,
body.ui-finance .catalog-modal #catalogResults .catalog-item small{
  color:#ffffff!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item small,
body.ui-finance .catalog-modal #catalogResults .catalog-item small{
  color:#d8d2e8!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus-visible,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:active,
body.ui-finance .catalog-modal #catalogResults .catalog-item:hover,
body.ui-finance .catalog-modal #catalogResults .catalog-item:focus,
body.ui-finance .catalog-modal #catalogResults .catalog-item:focus-visible,
body.ui-finance .catalog-modal #catalogResults .catalog-item:active{
  background:#fff8e7!important;
  border-color:#f6b900!important;
  color:#17142c!important;
  outline:3px solid rgba(255,197,46,.25)!important;
  box-shadow:0 10px 26px rgba(23,20,44,.12)!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover b,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover span,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover strong,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover small,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus b,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus span,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus strong,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus small,
body.ui-finance .catalog-modal #catalogResults .catalog-item:hover b,
body.ui-finance .catalog-modal #catalogResults .catalog-item:hover span,
body.ui-finance .catalog-modal #catalogResults .catalog-item:hover strong,
body.ui-finance .catalog-modal #catalogResults .catalog-item:hover small,
body.ui-finance .catalog-modal #catalogResults .catalog-item:focus b,
body.ui-finance .catalog-modal #catalogResults .catalog-item:focus span,
body.ui-finance .catalog-modal #catalogResults .catalog-item:focus strong,
body.ui-finance .catalog-modal #catalogResults .catalog-item:focus small{
  color:#17142c!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.ui-finance .catalog-modal #catalogResults button.catalog-item:hover small,
body.ui-finance .catalog-modal #catalogResults button.catalog-item:focus small,
body.ui-finance .catalog-modal #catalogResults .catalog-item:hover small,
body.ui-finance .catalog-modal #catalogResults .catalog-item:focus small{
  color:#5f6678!important;
}

/* V76 — Clients list cleanup: SIRET/TVA hidden from summary, clean full-row hover */
.clients-pro-table tr:hover td{background:#fff8e6!important;background-clip:padding-box!important;}
.clients-pro-table .client-main-cell{display:table-cell!important;min-width:175px;}
.clients-pro-table .client-main-cell .client-avatar{display:inline-grid!important;vertical-align:middle;margin-right:10px;}
.clients-pro-table .client-main-cell>div{display:inline-block!important;vertical-align:middle;}
@media (max-width:1100px){.clients-pro-table{min-width:860px!important}}

/* V77 — Clients table premium alignment: fixed rows, compact portal, full-row hover */
.clients-pro-table{
  width:100%!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
.clients-pro-table th:nth-child(1){width:16%!important;}
.clients-pro-table th:nth-child(2){width:13%!important;}
.clients-pro-table th:nth-child(3){width:20%!important;}
.clients-pro-table th:nth-child(4){width:16%!important;}
.clients-pro-table th:nth-child(5){width:20%!important;}
.clients-pro-table th:nth-child(6){width:15%!important;}
.clients-pro-table tbody tr{
  height:66px!important;
  transition:background .16s ease!important;
}
.clients-pro-table tbody tr:hover{
  background:#fff8e6!important;
}
.clients-pro-table tbody tr:hover td{
  background:transparent!important;
}
.clients-pro-table td{
  height:66px!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
  vertical-align:middle!important;
  border-bottom:1px solid #e7edf5!important;
}
.clients-pro-table .client-main-cell{
  min-width:0!important;
  white-space:normal!important;
}
.clients-pro-table .client-main-cell b,
.clients-pro-table td:nth-child(2),
.clients-pro-table td:nth-child(3){
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.clients-pro-table td:nth-child(3){white-space:nowrap!important;}
.clients-pro-table .compact-contracts{
  min-width:0!important;
  max-width:170px!important;
}
.clients-pro-table .compact-contracts a{
  width:100%!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}
.clients-pro-table .compact-contracts a b{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.clients-pro-table .compact-portal{
  min-width:0!important;
  min-height:42px!important;
  justify-content:center!important;
  gap:3px!important;
}
.clients-pro-table .compact-portal b{
  line-height:1.15!important;
  white-space:nowrap!important;
}
.clients-pro-table .compact-portal small{
  display:none!important;
}
.clients-pro-table .portal-inline{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  line-height:1.1!important;
}
.clients-pro-table .portal-inline a,
.clients-pro-table .portal-dot{
  font-size:11px!important;
  line-height:1.1!important;
}
.clients-pro-table .portal-inline .portal-disable{
  display:none!important;
}
.clients-pro-table .client-actions{
  min-width:0!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  white-space:nowrap!important;
}
.clients-pro-table .client-actions .btn{
  min-height:34px!important;
  padding:7px 10px!important;
}
@media (max-width:1100px){
  .clients-pro-table{min-width:940px!important;}
  .clients-pro-table th:nth-child(1){width:160px!important;}
  .clients-pro-table th:nth-child(2){width:150px!important;}
  .clients-pro-table th:nth-child(3){width:220px!important;}
  .clients-pro-table th:nth-child(4){width:170px!important;}
  .clients-pro-table th:nth-child(5){width:190px!important;}
  .clients-pro-table th:nth-child(6){width:210px!important;}
}

/* V78 — Clients page definitive data-grid alignment + portal status actions */
.clients-grid-card{overflow:hidden!important;}
.clients-grid-list{
  border:1px solid #dfe7f1!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.clients-grid-header,
.clients-grid-row{
  display:grid!important;
  grid-template-columns: 1.25fr 1fr 1.55fr 1.25fr 1.35fr 1.55fr!important;
  align-items:center!important;
  column-gap:16px!important;
}
.clients-grid-header{
  min-height:44px!important;
  padding:0 14px!important;
  background:#f8fafc!important;
  border-bottom:1px solid #dfe7f1!important;
  color:#475569!important;
  font-size:10.5px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
.clients-grid-row{
  min-height:68px!important;
  padding:8px 14px!important;
  border-bottom:1px solid #e7edf5!important;
  transition:background .15s ease, box-shadow .15s ease!important;
}
.clients-grid-row:last-child{border-bottom:0!important;}
.clients-grid-row:hover{
  background:#fff8e6!important;
  box-shadow:inset 3px 0 0 #fbbf24!important;
}
.clients-grid-row > div{
  min-width:0!important;
  align-self:center!important;
}
.clients-grid-row .client-main-cell{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}
.clients-grid-row .client-main-cell b{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#0f172a!important;
}
.clients-grid-row .client-main-cell small{
  display:block!important;
  margin-top:2px!important;
  color:#475569!important;
  font-size:11px!important;
  font-weight:800!important;
}
.clients-grid-row .client-cell-text,
.clients-grid-row .client-email-cell{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#0f172a!important;
  font-size:13px!important;
}
.clients-grid-row .compact-contracts{
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
  min-width:0!important;
  max-width:180px!important;
}
.clients-grid-row .compact-contracts a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  width:100%!important;
  min-height:30px!important;
  box-sizing:border-box!important;
  border:1px solid #dfe7f1!important;
  background:#f8fafc!important;
  color:#0f172a!important;
  border-radius:10px!important;
  padding:6px 8px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.clients-grid-row .compact-contracts a b{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:12px!important;
}
.clients-grid-row .compact-portal{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:5px!important;
  min-height:42px!important;
}
.clients-grid-row .compact-portal b{
  font-size:12.5px!important;
  line-height:1!important;
  color:#0f172a!important;
  white-space:nowrap!important;
}
.clients-grid-row .portal-inline{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  line-height:1!important;
}
.clients-grid-row .portal-inline a,
.clients-grid-row .portal-dot,
.clients-grid-row .portal-inline .muted{
  font-size:11.5px!important;
  line-height:1!important;
  font-weight:900!important;
}
.clients-grid-row .portal-inline a{color:#2563eb!important;}
.clients-grid-row .portal-inline .portal-toggle,
.clients-grid-row .portal-inline .portal-disable{
  display:inline-flex!important;
  color:#991b1b!important;
  text-decoration:none!important;
}
.clients-grid-row .portal-inline .portal-toggle:not(.portal-disable){color:#047857!important;}
.clients-grid-row .portal-dot{color:#059669!important;display:inline-flex!important;align-items:center!important;gap:4px!important;}
.clients-grid-row .portal-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#10b981;display:inline-block;}
.clients-grid-row .portal-dot.inactive{color:#991b1b!important;}
.clients-grid-row .portal-dot.inactive:before{background:#ef4444!important;}
.clients-grid-row .client-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  min-width:0!important;
  height:auto!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
}
.clients-grid-row .client-actions .btn{
  min-height:34px!important;
  padding:7px 11px!important;
  border-radius:10px!important;
  font-size:12px!important;
  box-shadow:none!important;
}
.clients-grid-row .client-actions .btn.blue{background:#2563eb!important;color:#fff!important;}
.clients-grid-row .client-actions .btn.red{background:#dc2626!important;color:#fff!important;}
.clients-grid-row .client-actions .icon-only{min-width:34px!important;width:34px!important;padding:0!important;}
@media (max-width:1200px){
  .clients-grid-list{overflow-x:auto!important;}
  .clients-grid-header,.clients-grid-row{min-width:1050px!important;}
}
@media (max-width:760px){
  .clients-grid-header{display:none!important;}
  .clients-grid-list{border:0!important;background:transparent!important;display:grid!important;gap:12px!important;overflow:visible!important;}
  .clients-grid-row{
    min-width:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    border:1px solid #dfe7f1!important;
    border-radius:18px!important;
    background:#fff!important;
    padding:14px!important;
  }
  .clients-grid-row:hover{box-shadow:0 10px 30px rgba(15,23,42,.08)!important;}
  .clients-grid-row .client-actions{justify-content:flex-start!important;flex-wrap:wrap!important;}
  .clients-grid-row .compact-contracts{max-width:none!important;}
}


/* V90 — bureau depuis mobile: hamburger restauré sans toucher à la logique métier */
@media (max-width: 767px){
  body.ui-finance .desktop-menu-toggle{
    display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;
    border-radius:14px!important;background:#fff!important;color:#272338!important;border:1px solid var(--db-line)!important;
    box-shadow:0 10px 24px rgba(38,32,58,.08)!important;font-size:22px!important;flex:0 0 auto!important;z-index:9010!important;
  }
  body.ui-finance .finance-topbar{
    position:sticky!important;top:0!important;display:grid!important;grid-template-columns:44px 1fr!important;gap:12px!important;align-items:center!important;
    height:auto!important;min-height:72px!important;padding:14px 14px!important;background:rgba(246,244,250,.97)!important;
    backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--db-line)!important;z-index:8900!important;
  }
  body.ui-finance .finance-topbar .top-actions{display:none!important;}
  body.ui-finance .finance-topbar h1{font-size:23px!important;line-height:1.08!important;}
  body.ui-finance .finance-sidebar{
    display:block!important;position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(320px,88vw)!important;
    min-height:100vh!important;height:100vh!important;transform:translateX(-112%)!important;transition:transform .24s ease!important;
    z-index:9000!important;padding:20px 16px!important;overflow-y:auto!important;box-shadow:24px 0 80px rgba(15,23,42,.38)!important;
  }
  body.ui-finance.desktop-menu-open .finance-sidebar{transform:translateX(0)!important;}
  body.ui-finance .desktop-menu-backdrop{
    display:none!important;position:fixed!important;inset:0!important;background:rgba(15,23,42,.54)!important;z-index:8990!important;
    opacity:0!important;pointer-events:none!important;transition:opacity .22s ease!important;
  }
  body.ui-finance.desktop-menu-open .desktop-menu-backdrop{display:block!important;opacity:1!important;pointer-events:auto!important;}
  body.ui-finance .finance-main{margin-left:0!important;width:100%!important;min-width:0!important;}
  body.ui-finance .finance-content{padding:14px!important;}
  body.ui-finance .finance-nav{display:flex!important;flex-direction:column!important;gap:7px!important;}
  body.ui-finance .finance-nav a{display:flex!important;height:50px!important;font-size:14px!important;opacity:1!important;visibility:visible!important;}
  body.ui-finance .sidebar-user{position:static!important;margin-top:20px!important;}
  body.ui-finance.desktop-menu-open{overflow:hidden!important;}
}

/* Settings accordions: closed by default, click to open */
.settings-collapse{padding:0!important;overflow:hidden!important}
.settings-collapse>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;font-weight:900;color:#0f172a}
.settings-collapse>summary::-webkit-details-marker{display:none}
.settings-collapse>summary:after{content:'+';width:32px;height:32px;border-radius:10px;background:#f8fafc;border:1px solid #dbe4ef;display:grid;place-items:center;color:#2563eb;font-size:18px;font-weight:950;flex:0 0 auto}
.settings-collapse[open]>summary:after{content:'−';background:#2563eb;color:#fff;border-color:#2563eb}
.settings-collapse>summary span{font-size:18px;letter-spacing:-.03em}
.settings-collapse>summary small{display:block;margin-top:4px;color:#64748b;font-size:12px;font-weight:750;letter-spacing:0;text-transform:none}
.settings-collapse-body{padding:0 20px 20px;border-top:1px solid #edf2f7}
.settings-collapse[open]>summary{background:linear-gradient(90deg,#fff,#f8fafc)}
.settings-save{margin:6px 0 18px}
@media(max-width:760px){.settings-collapse>summary{padding:15px}.settings-collapse-body{padding:0 15px 15px}.settings-collapse>summary{align-items:flex-start}.settings-collapse>summary span{font-size:16px}}
/* V92 - Interventions terrain, preuves et signature */
.intervention-form textarea{min-height:100px}.span-2{grid-column:1/-1}.photo-upload{display:block;padding:18px;border:2px dashed #cbd5e1;border-radius:18px;background:#f8fafc}.photo-upload input{display:block;margin-top:10px}.photo-upload small{display:block;color:#64748b;margin-top:8px}.intervention-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:16px 0}.intervention-photos figure{margin:0;border:1px solid #e2e8f0;border-radius:16px;padding:8px;background:#fff}.intervention-photos img{width:100%;height:130px;object-fit:cover;border-radius:11px}.intervention-photos a{display:block;text-align:center;margin-top:7px;color:#b91c1c;font-size:12px}.intervention-public{margin:0;background:#edf1f7;color:#17142c;font-family:Arial,sans-serif}.intervention-sheet{width:min(980px,calc(100% - 24px));margin:24px auto;background:#fff;border-radius:24px;padding:28px;box-shadow:0 24px 70px rgba(15,23,42,.14)}.intervention-sheet>header{display:flex;justify-content:space-between;gap:20px;border-bottom:3px solid #d8ff24;padding-bottom:20px}.intervention-sheet h1{margin:5px 0}.report-status{align-self:flex-start;background:#241d3b;color:#fff;padding:9px 14px;border-radius:999px;font-weight:800}.report-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.report-meta div{padding:14px;border-radius:14px;background:#f8fafc}.report-meta small,.signed-proof small{display:block;color:#64748b;margin-bottom:5px}.intervention-sheet section{margin:20px 0}.intervention-sheet section h2{font-size:17px;margin-bottom:8px}.public-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.public-photo-grid figure{margin:0}.public-photo-grid img{width:100%;height:220px;object-fit:cover;border-radius:15px}.public-photo-grid figcaption{font-size:11px;color:#64748b;margin-top:4px}.signature-form{border-top:1px solid #e2e8f0;padding-top:18px}.signature-form label{display:block;margin:12px 0}.signature-form input[type=text],.signature-form input[type=email],.signature-form input:not([type]){width:100%;box-sizing:border-box;padding:12px;border:1px solid #cbd5e1;border-radius:10px}.signature-form .accept{display:flex;gap:10px;align-items:flex-start}.signature-pad{border:2px dashed #94a3b8;border-radius:15px;overflow:hidden;background:#fff}.signature-pad canvas{display:block;width:100%;height:190px;touch-action:none}.signature-pad button{margin:8px;border:0;padding:8px 12px;border-radius:8px}.sign-button,.print-button{width:100%;border:0;background:#241d3b;color:#fff;padding:15px;border-radius:12px;font-size:16px;font-weight:800;margin-top:14px}.signed-proof img{display:block;width:260px;max-width:100%;height:auto;border-bottom:1px solid #cbd5e1}.mobile-photo-capture{border:2px dashed #8b5cf6!important;background:#f5f3ff!important;padding:16px!important;border-radius:20px!important}.mobile-photo-capture input{margin-top:10px}.mobile-photo-capture small{display:block;margin-top:8px;color:#64748b}@media(max-width:700px){.report-meta{grid-template-columns:1fr 1fr}.intervention-sheet{padding:17px;margin:10px auto}.public-photo-grid{grid-template-columns:1fr}.public-photo-grid img{height:auto}}@media print{.intervention-public{background:#fff}.intervention-sheet{box-shadow:none;width:100%;margin:0;padding:0}.print-button{display:none}}

/* Intervention evidence thumbnails + fullscreen viewer */
.evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;margin:16px 0}.evidence-card{margin:0;border:1px solid #e2e8f0;border-radius:14px;background:#fff;overflow:hidden}.evidence-thumb{display:block;width:100%;height:118px;border:0;padding:0;background:#f8fafc;cursor:zoom-in}.evidence-thumb img{display:block;width:100%;height:100%;object-fit:cover}.evidence-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;font-size:12px}.evidence-card figcaption span{font-weight:800;color:#0f172a}.evidence-card figcaption a{color:#dc2626;text-decoration:none;font-weight:700}.evidence-modal[hidden]{display:none!important}.evidence-modal{position:fixed;inset:0;z-index:10000;background:rgba(3,7,18,.92);display:flex;align-items:center;justify-content:center;padding:24px}.evidence-modal>img{max-width:min(94vw,1400px);max-height:88vh;object-fit:contain;border-radius:12px;box-shadow:0 24px 80px rgba(0,0,0,.45)}.evidence-modal-close,.evidence-modal-nav{position:fixed;border:0;color:#fff;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);cursor:pointer}.evidence-modal-close{top:18px;right:18px;width:46px;height:46px;border-radius:50%;font-size:30px}.evidence-modal-nav{top:50%;transform:translateY(-50%);width:48px;height:72px;border-radius:14px;font-size:42px}.evidence-modal-nav.prev{left:18px}.evidence-modal-nav.next{right:18px}.evidence-modal-count{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.15);color:#fff;font-weight:800}.modal-open{overflow:hidden}@media(max-width:640px){.evidence-grid{grid-template-columns:repeat(3,1fr);gap:8px}.evidence-thumb{height:92px}.evidence-card figcaption{padding:7px;font-size:11px}.evidence-modal{padding:12px}.evidence-modal-nav{width:40px;height:58px}.evidence-modal-nav.prev{left:8px}.evidence-modal-nav.next{right:8px}}
.signed-report-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.signed-report-actions .print-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.signed-report-actions .secondary{background:#fff!important;color:#17142c!important;border:1px solid #dbe1ea!important}@media(max-width:700px){.signed-report-actions>*{width:100%}}
