@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--bg:#f6f7fb;--surface:#fff;--surface-2:#f9fafc;--text:#20233a;--muted:#7b8097;--border:#e8e9f1;--primary:#625bf6;--primary-dark:#4c45dd;--purple:#8b5cf6;--green:#18aa74;--orange:#f39a54;--red:#e45868;--blue:#4f7cf7;--shadow:0 12px 40px rgba(33,38,74,.07);--radius:16px;--sidebar:248px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 'DM Sans',sans-serif}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,strong,b{font-family:Manrope,'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1{font-size:23px;margin-bottom:0}h2{font-size:25px;margin-bottom:7px}h3{font-size:17px;margin-bottom:0}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.35px;color:#9296aa;margin-bottom:3px}.sidebar{position:fixed;z-index:50;inset:0 auto 0 0;width:var(--sidebar);padding:25px 16px 18px;background:#17182b;color:#c8c9d5;display:flex;flex-direction:column;box-shadow:10px 0 30px rgba(22,23,43,.06)}.brand{display:flex;align-items:center;gap:11px;color:#fff;padding:0 11px 26px}.brand-mark{display:inline-grid;place-items:center;width:37px;height:37px;border-radius:11px;background:linear-gradient(145deg,#7d76ff,#574fea);color:white;font:800 22px Manrope;box-shadow:0 8px 20px rgba(98,91,246,.35)}.brand b{display:block;font-size:19px;line-height:1.1}.brand small{display:block;font-size:9px;letter-spacing:1.2px;color:#7d8098;text-transform:uppercase}.sidebar nav{display:flex;flex-direction:column;gap:3px;overflow:auto}.nav-link{min-height:43px;padding:0 13px;border-radius:10px;display:flex;align-items:center;gap:12px;font-weight:600;position:relative;transition:.2s}.nav-link:hover{background:#22243b;color:#fff}.nav-link.active{background:linear-gradient(100deg,#5e57ee,#675ff5);color:#fff;box-shadow:0 8px 18px rgba(98,91,246,.22)}.nav-icon{width:20px;height:20px;display:grid;place-items:center}.nav-icon:before{content:'◇';font-size:18px}.nav-link:nth-child(1) .nav-icon:before{content:'▦'}.nav-link:nth-child(2) .nav-icon:before{content:'□'}.nav-link:nth-child(3) .nav-icon:before{content:'♙'}.nav-link:nth-child(4) .nav-icon:before{content:'♧'}.nav-link:nth-child(5) .nav-icon:before{content:'▱'}.nav-link:nth-child(6) .nav-icon:before{content:'▰'}.nav-link:nth-child(7) .nav-icon:before{content:'⌂'}.nav-link:nth-child(8) .nav-icon:before{content:'▤'}.nav-link:nth-child(9) .nav-icon:before{content:'☷'}.nav-link:nth-child(10) .nav-icon:before{content:'◇'}.nav-link:nth-child(11) .nav-icon:before{content:'↗'}.nav-link:nth-child(12) .nav-icon:before{content:'⚙'}.nav-dot{width:6px;height:6px;border-radius:50%;background:#ff8d6d;margin-left:auto}.sidebar-footer{margin-top:auto;border-top:1px solid #292b43;padding:17px 5px 0}.org-chip{display:flex;gap:10px;align-items:center}.org-chip b,.org-chip small{display:block;max-width:145px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-chip b{color:#f1f1f7;font-size:12px}.org-chip small{font-size:10px;color:#72758d}.avatar{width:34px;height:34px;flex:0 0 auto;border-radius:10px;display:inline-grid;place-items:center;background:#6059ed;color:white;font-weight:800}.avatar.coral{background:#ff806d}.avatar.blue{background:#e8eeff;color:#5074ea}.avatar.orange{background:#fff0e5;color:#e08139}.main{margin-left:var(--sidebar);min-height:100vh}.topbar{height:82px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 32px;position:sticky;top:0;z-index:40}.topbar .eyebrow{margin:0}.top-actions{margin-left:auto;display:flex;align-items:center;gap:13px}.icon-btn{width:37px;height:37px;border:1px solid var(--border);background:white;border-radius:10px;cursor:pointer}.menu-btn{display:none}.user-menu{display:flex;align-items:center;gap:10px;padding-left:13px;border-left:1px solid var(--border)}.user-copy b,.user-copy small{display:block}.user-copy b{font-size:12px}.user-copy small{font-size:10px;color:var(--muted)}.logout{font-size:20px;color:#8d91a6}.content{padding:29px 32px;max-width:1600px;margin:0 auto}footer{text-align:center;padding:20px;color:#9a9daf;font-size:11px}.welcome,.page-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.welcome h2{margin:0}.quick-actions{display:flex;gap:10px}.btn{border:1px solid var(--border);background:white;min-height:40px;padding:0 16px;border-radius:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 15px rgba(30,35,70,.08)}.btn.primary{background:linear-gradient(135deg,#6b63fa,#5952e5);border-color:transparent;color:#fff;box-shadow:0 7px 18px rgba(98,91,246,.22)}.btn.ghost{background:var(--surface)}.btn.small{min-height:34px;padding:0 12px;font-size:12px}.btn.full{width:100%}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:21px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;min-height:151px;box-shadow:0 2px 8px rgba(30,35,70,.02);position:relative;overflow:hidden}.stat-card.violet{background:linear-gradient(135deg,#6961f4,#8873f4);color:#fff;border:0;box-shadow:0 12px 28px rgba(103,95,238,.25)}.stat-head{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-weight:600;font-size:12px}.violet .stat-head,.violet small{color:#dedcff}.stat-head i{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:rgba(255,255,255,.17);font-style:normal;color:#fff}.soft-orange{background:#fff0e5!important;color:var(--orange)!important}.soft-green{background:#e4f7ef!important;color:var(--green)!important}.soft-blue{background:#e9efff!important;color:var(--blue)!important}.stat-card>strong{display:block;font-size:24px;margin:15px 0 0}.stat-card small{color:var(--muted);font-size:11px}.spark{position:absolute;right:15px;bottom:17px;display:flex;align-items:end;height:36px;gap:3px;opacity:.55}.spark b{width:6px;border-radius:5px;background:#fff}.spark b:nth-child(1){height:30%}.spark b:nth-child(2){height:50%}.spark b:nth-child(3){height:38%}.spark b:nth-child(4){height:70%}.spark b:nth-child(5){height:55%}.spark b:nth-child(6){height:90%}.spark b:nth-child(7){height:74%}.progress{height:5px;border-radius:4px;background:#f0f1f6;position:absolute;left:20px;right:20px;bottom:21px;overflow:hidden}.progress i{height:100%;display:block;background:var(--orange);border-radius:4px}.progress.green i{background:var(--green)}.avatars{position:absolute;bottom:16px;left:20px;display:flex}.avatars span{width:26px;height:26px;border:2px solid #fff;margin-right:-6px;border-radius:50%;display:grid;place-items:center;background:#e9edff;color:#5e65c9;font-size:9px;font-weight:800}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.span-2{grid-column:span 2}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 3px 12px rgba(31,36,69,.025)}.panel-head{padding:19px 21px 15px;display:flex;align-items:center;justify-content:space-between;gap:15px}.panel-head h3,.panel-head p{margin-bottom:0}.panel-head>a{color:var(--primary);font-size:11px;font-weight:700}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#989caf;font-size:10px;letter-spacing:.7px;text-transform:uppercase;background:var(--surface-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px 17px}td{padding:13px 17px;border-bottom:1px solid var(--border);font-size:12px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfbfd}.cell-main{display:flex;align-items:center;gap:10px}.cell-main b,.cell-main small{display:block}.cell-main small{color:var(--muted);font-size:10px}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:20px;font-size:9px;font-weight:800;background:#eef0f5;color:#777c90}.badge-active,.badge-paid,.badge-validated{background:#e4f8f0;color:#169568}.badge-partial,.badge-draft{background:#fff3dd;color:#c77a10}.badge-cancelled,.badge-blocked{background:#ffe9ec;color:#d94b5c}.empty{text-align:center!important;color:var(--muted);padding:35px!important}.alert-list{padding:0 20px 16px}.stock-alert{display:flex;align-items:center;gap:10px;padding:13px 0;border-top:1px solid var(--border)}.stock-alert div{flex:1}.stock-alert b,.stock-alert small{display:block}.stock-alert small{font-size:10px;color:var(--muted)}.stock-alert strong{color:var(--red)}.product-icon{width:35px;height:35px;border-radius:9px;background:#f0efff;color:var(--primary);display:inline-grid;place-items:center;font-weight:800}.product-icon.colored{background:linear-gradient(135deg,#eeecff,#f8efff)}.product-icon.xl{width:59px;height:59px;border-radius:15px;font-size:22px}.empty-state{min-height:170px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--green);font-size:24px}.empty-state b{color:var(--text);font-size:13px;margin-top:7px}.empty-state small{color:var(--muted);font-size:10px}.search{height:41px;min-width:270px;border:1px solid var(--border);border-radius:11px;background:var(--surface);display:flex;align-items:center;padding:0 12px;gap:8px}.search input{border:0;outline:0;background:transparent;width:100%}.compact-search{height:35px;min-width:180px}.stock-number{font-weight:800}.stock-number.low,.danger-text,.negative{color:var(--red)}.positive{color:var(--green)}.row-action{color:var(--primary);font-weight:700}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.warehouse-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:21px;box-shadow:var(--shadow)}.warehouse-top{display:flex;justify-content:space-between}.warehouse-icon,.account-icon{width:41px;height:41px;display:grid;place-items:center;background:#eeedff;color:var(--primary);border-radius:11px;font-size:19px}.warehouse-card h3{margin:17px 0 3px}.warehouse-card>p{color:var(--muted);font-size:11px}.warehouse-stats{display:grid;grid-template-columns:1fr 1.6fr;background:var(--surface-2);border-radius:10px;margin:17px 0;padding:12px}.warehouse-stats div+div{border-left:1px solid var(--border);padding-left:14px}.warehouse-stats small,.warehouse-stats b{display:block}.warehouse-stats small{font-size:9px;color:var(--muted)}.warehouse-card>a{color:var(--primary);font-size:11px;font-weight:700}.modal{position:fixed;z-index:100;inset:0;background:rgba(20,21,37,.55);display:none;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}.modal.open{display:flex}.modal-card{position:relative;width:min(540px,100%);max-height:92vh;overflow:auto;background:var(--surface);border-radius:20px;padding:27px;box-shadow:0 30px 80px rgba(12,14,33,.25);animation:pop .18s ease-out}.modal-card.wide{width:min(720px,100%)}.modal-card.extra-wide{width:min(900px,100%)}@keyframes pop{from{transform:scale(.96);opacity:.5}}.modal-close{position:absolute;right:18px;top:16px;border:0;background:#f1f2f7;width:31px;height:31px;border-radius:9px;font-size:20px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}.form-grid.compact{margin:0;padding:0 21px 20px;grid-template-columns:repeat(4,1fr)}label{font-size:11px;color:#6f7489;font-weight:700}input,select,textarea{display:block;width:100%;border:1px solid #dfe1ea;border-radius:9px;background:var(--surface);padding:10px 11px;margin-top:6px;outline:none;transition:.2s}input:focus,select:focus,textarea:focus{border-color:#8f89ff;box-shadow:0 0 0 3px rgba(98,91,246,.1)}textarea{resize:vertical}.check{display:flex;align-items:center;gap:8px}.check input{width:auto;margin:0}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.detail-hero{margin-bottom:20px}.detail-hero>a{color:var(--primary);font-weight:700;font-size:11px}.detail-hero>div{display:flex;align-items:center;gap:15px;margin-top:17px}.detail-hero h2,.detail-hero p{margin:0}.detail-hero p{color:var(--muted)}.info-card{padding:21px}.info-card dl{margin:15px 0 0}.info-card dl div{display:flex}.info-card dt,.info-card dd{padding:10px 0;border-bottom:1px solid var(--border)}.info-card dt{color:var(--muted)}.info-card dd{text-align:right;margin:0;font-weight:700}.info-card dl{display:grid;grid-template-columns:1fr 1fr}.document-layout{display:flex;flex-direction:column;gap:16px}.draft-chip{font-size:9px;background:#fff1dc;color:#b66c08;border-radius:20px;padding:5px 9px;font-weight:800}.line-items{padding:0 20px 18px}.line-item{display:grid;grid-template-columns:minmax(240px,2fr) 110px 140px 110px 30px;gap:10px;align-items:end;padding:13px 0;border-top:1px solid var(--border)}.line-item label>span{display:flex;align-items:center;min-height:42px;font:700 13px Manrope}.remove-line{height:41px;border:0;background:#fff0f1;color:var(--red);border-radius:9px;cursor:pointer}.document-footer{display:grid;grid-template-columns:1fr 330px;padding:20px;gap:30px}.document-footer>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-content:start}.totals p{display:flex;justify-content:space-between;margin:0;padding:8px 0;color:var(--muted)}.totals .grand-total{border-top:1px solid var(--border);margin-top:6px;padding-top:14px;color:var(--text);font-size:17px}.totals .grand-total strong{color:var(--primary);font-size:22px}.sticky-actions{position:sticky;bottom:12px;background:rgba(246,247,251,.9);backdrop-filter:blur(8px);padding:10px;border-radius:13px}.kpi-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:18px}.kpi-strip div{padding:18px 22px}.kpi-strip div+div{border-left:1px solid var(--border)}.kpi-strip small,.kpi-strip b{display:block}.kpi-strip small{color:var(--muted)}.kpi-strip b{font-size:20px}.mt{margin-top:18px}.count-list{max-height:390px;overflow:auto;margin:20px 0;border:1px solid var(--border);border-radius:11px}.count-head,.count-list>label{display:grid;grid-template-columns:1fr 170px;align-items:center;padding:9px 13px;border-bottom:1px solid var(--border)}.count-head{background:var(--surface-2);font-size:9px;text-transform:uppercase;letter-spacing:.7px}.count-list>label input{margin:0}.count-list b,.count-list small{display:block}.count-list small{color:var(--muted)}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.account-card{display:grid;grid-template-columns:auto 1fr;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:17px}.account-card small{color:var(--muted)}.account-card h3{margin:0}.account-card>strong{grid-column:1/-1;font-size:22px;margin-top:8px}.report-banner{background:linear-gradient(130deg,#20223c,#353863);color:#fff;border-radius:19px;padding:27px 31px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.report-banner h2{font-size:26px;margin:3px 0}.report-banner p:last-child{color:#b9bbcb;margin:0}.report-banner>span{font-size:80px;color:#7b75fa;opacity:.7}.bar-chart{height:270px;padding:20px 30px;display:flex;gap:13px;align-items:flex-end}.bar-column{height:100%;flex:1;display:flex;align-items:center;flex-direction:column;gap:8px}.bar-track{height:230px;width:100%;display:flex;align-items:flex-end;background:#f4f3ff;border-radius:7px;overflow:hidden}.bar-track i{width:100%;background:linear-gradient(#867ffa,#5f58e9);border-radius:7px 7px 0 0}.bar-column small{color:var(--muted);font-size:9px}.ranking{padding:0 20px 15px}.ranking>div{display:flex;align-items:center;gap:11px;border-top:1px solid var(--border);padding:13px 0}.ranking>div>span{width:26px;height:26px;background:#f0efff;color:var(--primary);display:grid;place-items:center;border-radius:8px;font-weight:800}.ranking p{margin:0;flex:1}.ranking b,.ranking small{display:block}.ranking small{color:var(--muted);font-size:10px}.ranking strong{font-size:11px}.tabs{display:flex;gap:5px;margin-bottom:15px}.tabs button{border:0;background:transparent;padding:10px 15px;font-weight:700;color:var(--muted);cursor:pointer;border-radius:9px}.tabs button.active{background:var(--surface);color:var(--primary);box-shadow:0 3px 12px rgba(30,35,70,.07)}.tab-panel{display:none}.tab-panel.active{display:block}.alert{display:flex;align-items:center;gap:10px;border-radius:11px;padding:12px 15px;margin-bottom:16px;font-weight:600}.alert.success{background:#e6f8f1;color:#168b64}.alert.danger{background:#ffeaed;color:#ce4354}.alert>span{font-size:17px}.overlay{display:none}.auth-body{min-height:100vh;background:#f7f7fb;display:grid;place-items:center;padding:30px}.auth-shell{width:min(1050px,100%);min-height:650px;background:#fff;border-radius:25px;box-shadow:0 30px 90px rgba(42,44,86,.13);overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr}.auth-panel{background:linear-gradient(145deg,#1a1b30,#282a4d);padding:42px;color:white;position:relative;overflow:hidden}.auth-panel:after{content:'';position:absolute;width:400px;height:400px;border-radius:50%;background:rgba(106,97,244,.2);filter:blur(20px);right:-170px;bottom:-120px}.auth-brand{display:flex;align-items:center;gap:10px;font-size:19px}.auth-copy{position:relative;z-index:2;margin-top:100px}.auth-copy h1{font-size:38px;line-height:1.23;margin:20px 0}.auth-copy h1 em{font-style:normal;color:#8d87ff}.auth-copy>p{color:#aeb0c2;max-width:420px;font-size:15px}.pill{font-size:9px;letter-spacing:1.3px;background:rgba(104,96,245,.18);color:#a7a2ff;padding:7px 10px;border:1px solid rgba(142,135,255,.2);border-radius:20px}.metric-preview{margin-top:55px;width:310px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);border-radius:15px;padding:17px;display:grid;grid-template-columns:1fr 1fr}.metric-preview span,.metric-preview strong,.metric-preview small{display:block}.metric-preview span{font-size:10px;color:#aeb0c2}.metric-preview strong{font-size:22px;margin:5px 0}.metric-preview small{font-size:9px;color:#6fd0aa}.bars{display:flex;align-items:end;justify-content:end;gap:5px}.bars i{width:7px;border-radius:4px;background:#7770ed}.bars i:nth-child(1){height:25%}.bars i:nth-child(2){height:45%}.bars i:nth-child(3){height:37%}.bars i:nth-child(4){height:70%}.bars i:nth-child(5){height:57%}.bars i:nth-child(6){height:90%}.bars i:nth-child(7){height:78%}.login-card{display:grid;place-items:center;padding:50px}.login-card form{width:min(330px,100%)}.login-card h2{font-size:28px}.login-card label{display:block;margin-top:18px}.login-card .btn{margin-top:22px}.login-hint{text-align:center;color:#9b9eae;font-size:9px;margin-top:18px}.install-card{width:min(650px,100%);background:white;border-radius:22px;padding:35px;box-shadow:var(--shadow);text-align:center}.install-card .brand-mark{margin:auto}.install-card .form-grid{text-align:left}.install-card details{text-align:left;margin-top:20px}.install-card pre{white-space:pre-wrap;color:var(--red)}
.kpi-strip.grow{flex:1;margin-bottom:0}body.dark{--bg:#151623;--surface:#1d1f2e;--surface-2:#242636;--text:#f1f2f7;--muted:#9498ab;--border:#303244}.dark input,.dark select,.dark textarea{background:#232535;border-color:#393b4e}.dark .topbar{background:rgba(29,31,46,.9)}.dark .btn.ghost,.dark .icon-btn{background:var(--surface)}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.cards-grid,.account-grid{grid-template-columns:repeat(2,1fr)}.form-grid.compact{grid-template-columns:repeat(2,1fr)}.line-item{grid-template-columns:minmax(200px,2fr) 90px 120px 90px 30px}}
@media(max-width:800px){:root{--sidebar:255px}.sidebar{transform:translateX(-105%);transition:.25s}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.menu-btn{display:block;margin-right:12px}.overlay.open{display:block;position:fixed;z-index:45;inset:0;background:rgba(15,16,28,.4)}.content{padding:20px 15px}.topbar{padding:0 15px}.user-copy{display:none}.dashboard-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.cards-grid,.account-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-panel{display:none}.login-card{min-height:570px}.line-item{grid-template-columns:1fr 1fr}.line-product{grid-column:1/-1}.remove-line{position:absolute;right:25px}.document-footer{grid-template-columns:1fr}.form-grid.compact{grid-template-columns:1fr 1fr}.welcome{align-items:flex-start}.quick-actions{flex-direction:column}.bar-chart{padding:15px}}
@media(max-width:540px){.stat-grid{grid-template-columns:1fr}.welcome,.page-actions{align-items:stretch;flex-direction:column}.quick-actions{flex-direction:row}.quick-actions .btn{flex:1}.search{width:100%}.form-grid,.form-grid.compact{grid-template-columns:1fr}.span-2{grid-column:span 1}.line-item{grid-template-columns:1fr}.line-product{grid-column:auto}.document-footer>div:first-child{grid-template-columns:1fr}.kpi-strip{grid-template-columns:1fr}.kpi-strip div+div{border-left:0;border-top:1px solid var(--border)}.topbar h1{font-size:18px}.auth-body{padding:12px}.login-card{padding:30px 22px}.install-card{padding:25px 18px}}
@media print{.sidebar,.topbar,.page-actions,.btn,footer{display:none!important}.main{margin:0}.content{padding:0}.panel{break-inside:avoid;box-shadow:none}}
.sale-tip{margin:0 20px 12px;padding:11px 13px;border-radius:11px;background:#f0efff;color:#534ccf;display:flex;gap:10px;align-items:center}.sale-tip>span{width:31px;height:31px;border-radius:8px;background:#fff;display:grid;place-items:center;font-size:17px}.sale-tip b,.sale-tip small{display:block}.sale-tip b{font-size:11px}.sale-tip small{font-size:10px;color:#7773a9}.line-item.packaging-line{grid-template-columns:minmax(200px,1.7fr) minmax(180px,1.35fr) 90px 135px 105px 30px}.conversion-hint{display:block;margin-top:4px;color:var(--primary);font-size:9px;line-height:1.25}.readonly-price{background:#f5f5fa!important;font-weight:800;color:var(--primary)}
@media(max-width:1100px){.line-item.packaging-line{grid-template-columns:1.5fr 1.2fr 80px 115px 90px 30px}}
@media(max-width:800px){.line-item.packaging-line{grid-template-columns:1fr 1fr}.line-item.packaging-line .line-product{grid-column:1/-1}.line-item.packaging-line .line-packaging{grid-column:1/-1}}
@media(max-width:540px){.line-item.packaging-line{grid-template-columns:1fr}.line-item.packaging-line .line-product,.line-item.packaging-line .line-packaging{grid-column:auto}}
.form-grid>label:not(.check){display:flex;flex-direction:column;align-self:stretch}.form-grid>label:not(.check)>input,.form-grid>label:not(.check)>select,.form-grid>label:not(.check)>textarea{margin-top:6px}.form-grid>label:not(.check)>input,.form-grid>label:not(.check)>select{height:42px}
.line-item.packaging-line{align-items:start}.line-item.packaging-line>label{display:grid;grid-template-rows:17px 42px 18px;align-content:start;min-width:0}.line-item.packaging-line>label>select,.line-item.packaging-line>label>input{height:42px;min-width:0;margin:0}.line-item.packaging-line .line-total{height:42px;margin:0;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);padding:0 10px;display:flex;align-items:center;font:700 12px Manrope;white-space:nowrap}.line-item.packaging-line .conversion-hint{grid-row:3;margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-item.packaging-line .remove-line{height:42px;margin-top:17px;align-self:start}.line-item.packaging-line .readonly-price{height:42px}
.line-item.packaging-line .line-heading{display:block;min-height:0;font:700 11px 'DM Sans',sans-serif}.line-item.packaging-line+.line-item.packaging-line{border-top:0;padding-top:0}.line-item.packaging-line+.line-item.packaging-line>label{grid-template-rows:42px 18px}.line-item.packaging-line+.line-item.packaging-line .line-heading{display:none}.line-item.packaging-line+.line-item.packaging-line .remove-line{margin-top:0}.sticky-actions button:disabled{cursor:not-allowed;opacity:.42;box-shadow:none}
.document-lines-panel .line-items{overflow:visible}.document-lines-panel .line-items.is-scrollable{max-height:485px;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;padding-right:12px}.document-lines-panel .line-items.sale-lines.is-scrollable{max-height:365px}.document-lines-panel .autocomplete,.document-lines-panel .suggestion-list{z-index:30}
@media(max-width:800px){.line-item.packaging-line .remove-line{position:static;margin-top:17px}.line-item.packaging-line>label{grid-template-rows:17px 42px 18px}}
@media(max-width:540px){.line-item.packaging-line{gap:7px}.line-item.packaging-line .remove-line{width:42px;margin-top:0;justify-self:end}.line-item.packaging-line>label{grid-template-rows:17px 42px auto}.line-item.packaging-line .conversion-hint{white-space:normal;min-height:16px}}
.autocomplete{position:relative;width:100%;min-width:0}.autocomplete>input[type="text"]{height:42px;margin:0;width:100%;padding-right:34px;background-image:linear-gradient(45deg,transparent 50%,#8c90a3 50%),linear-gradient(135deg,#8c90a3 50%,transparent 50%);background-position:calc(100% - 17px) 18px,calc(100% - 12px) 18px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.form-grid .autocomplete{margin-top:6px}.form-grid .autocomplete>input[type="text"]{margin:0}.suggestion-list{display:none;position:absolute;z-index:120;left:0;right:0;top:calc(100% + 6px);max-height:260px;overflow:auto;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:0 18px 45px rgba(25,28,56,.16)}.suggestion-list.open{display:block}.suggestion-list button{display:flex;width:100%;border:0;background:transparent;border-radius:8px;padding:9px 10px;text-align:left;cursor:pointer;flex-direction:column;gap:2px}.suggestion-list button:hover,.suggestion-list button:focus{background:#f1f0ff;outline:0}.suggestion-list button strong{font-size:11px}.suggestion-list button small{font-size:9px;color:var(--muted)}.suggestion-empty{padding:12px 10px;color:var(--muted);font-size:10px;text-align:center}.line-item.packaging-line .autocomplete{height:42px}.line-item.packaging-line .autocomplete>input{margin:0}.dark .suggestion-list button:hover,.dark .suggestion-list button:focus{background:#2e3044}

/* Charte Établissement El Hadji Ndiaye Diop */
:root{--primary:#169447;--primary-dark:#0d7737;--purple:#20a957;--green:#169447;--red:#ef3340;--brand-red:#ef3340;--shadow:0 12px 40px rgba(10,73,40,.08)}
.sidebar{background:linear-gradient(180deg,#092d20 0%,#071e18 100%);box-shadow:10px 0 30px rgba(4,43,27,.09)}.brand.brand-logo{padding:0 5px 23px;display:flex;flex-direction:column;gap:7px;align-items:stretch}.brand-logo-surface{height:51px;padding:5px 7px;display:flex;align-items:center;background:#fff;border-radius:11px;box-shadow:0 8px 22px rgba(0,0,0,.16);overflow:hidden}.brand-logo-surface img{display:block;width:100%;height:auto;max-height:42px;object-fit:contain}.brand.brand-logo>small{text-align:center;color:#78aa91;font-size:8px;letter-spacing:1.7px}.sidebar-footer{border-top-color:#174131}.nav-link:hover{background:#103c2d}.nav-link.active{background:linear-gradient(100deg,#19964a,#0f7f3b);box-shadow:0 8px 18px rgba(17,139,65,.28)}.nav-dot{background:var(--brand-red)}
.btn.primary{background:linear-gradient(135deg,#1aa052,#10803c);box-shadow:0 7px 18px rgba(17,139,65,.23)}.btn.primary:hover{background:linear-gradient(135deg,#21aa5b,#0d7334)}input:focus,select:focus,textarea:focus{border-color:#4fb677;box-shadow:0 0 0 3px rgba(22,148,71,.11)}.stat-card.violet{background:linear-gradient(135deg,#1b9a4e,#08743a);box-shadow:0 12px 28px rgba(15,128,59,.23)}.progress i{background:var(--brand-red)}.product-icon,.warehouse-icon,.account-icon{background:#e6f6ec;color:var(--primary)}.avatars span{background:#e7f6ed;color:#187d42}.badge-active,.badge-paid,.badge-validated{background:#e3f7ea;color:#128142}.row-action,.panel-head>a,.warehouse-card>a,.detail-hero>a{color:var(--primary)}.readonly-price{color:var(--primary)}.sale-tip{background:#e8f7ed;color:#10783a}.sale-tip small{color:#54846a}.suggestion-list button:hover,.suggestion-list button:focus{background:#e9f7ee}.report-banner{background:linear-gradient(130deg,#092d20,#124b35)}.report-banner>span{color:#36b76a}.bar-track{background:#eaf5ee}.bar-track i{background:linear-gradient(#2fb564,#10803c)}.ranking>div>span{background:#e7f6ed;color:var(--primary)}.tabs button.active{color:var(--primary)}
.auth-body{background:#f3f8f5}.auth-panel{background:linear-gradient(145deg,#082d20,#104c35)}.auth-panel:after{background:rgba(31,167,86,.24)}.auth-brand{display:block}.auth-logo-surface{width:285px;max-width:100%;min-height:66px;padding:8px 10px;display:flex;align-items:center;background:#fff;border-radius:13px;box-shadow:0 12px 30px rgba(0,0,0,.17)}.auth-logo-surface img{display:block;width:100%;height:auto}.auth-copy h1 em{color:#53d27e}.pill{background:rgba(28,166,84,.16);color:#75e39b;border-color:rgba(73,203,123,.22)}.metric-preview small{color:#72d79a}.bars i{background:#28a95c}.login-mobile-logo{display:none;margin:0 auto 27px}.login-mobile-logo img{display:block;width:240px;max-width:100%;height:auto}.install-logo{width:300px;max-width:100%;margin:0 auto 22px;padding:8px;background:#fff;border:1px solid #e3eee7;border-radius:12px}.install-logo img{display:block;width:100%;height:auto}
.dark{--bg:#101d17;--surface:#17261f;--surface-2:#1d3027;--text:#f1f6f3;--muted:#94a99c;--border:#294337}.dark .topbar{background:rgba(23,38,31,.9)}.dark .suggestion-list button:hover,.dark .suggestion-list button:focus{background:#234333}.dark .product-icon,.dark .warehouse-icon,.dark .account-icon{background:#213e30}.dark .sale-tip{background:#1b3829}.dark .readonly-price{background:#1f352a!important}
@media(max-width:800px){.login-mobile-logo{display:block}}

/* Barre latérale claire et réductible */
.sidebar{background:#fff;color:#5f6f66;border-right:1px solid #e3eee7;box-shadow:8px 0 28px rgba(16,82,48,.055);transition:width .24s ease,transform .25s}.main{transition:margin-left .24s ease}.brand-logo-surface{border:1px solid #e5eee8;box-shadow:0 6px 18px rgba(15,91,50,.07)}.brand.brand-logo>small{color:#68927a}.sidebar nav{overflow-x:hidden}.nav-link{color:#64736a}.nav-link:hover{background:#edf8f1;color:#117c3b}.nav-link.active{color:#fff;background:linear-gradient(100deg,#1a9d4f,#10803c);box-shadow:0 8px 18px rgba(17,139,65,.2)}.sidebar-footer{border-top-color:#e2ece6}.org-chip b{color:#253a2e}.org-chip small{color:#84958b}.sidebar-collapse{position:absolute;z-index:3;right:-14px;top:76px;width:29px;height:29px;border:1px solid #dce9e1;border-radius:50%;background:#fff;color:#168846;display:grid;place-items:center;box-shadow:0 5px 15px rgba(18,79,46,.13);cursor:pointer;transition:.2s}.sidebar-collapse:hover{background:#eaf7ef;transform:scale(1.05)}.sidebar-collapse span{font:700 22px/1 Manrope;margin-top:-2px;transition:transform .24s}
body.sidebar-collapsed{--sidebar:82px}body.sidebar-collapsed .brand.brand-logo{padding-left:0;padding-right:0;align-items:center}body.sidebar-collapsed .brand-logo-surface{width:52px;height:50px;padding:4px;justify-content:flex-start}body.sidebar-collapsed .brand-logo-surface img{width:193px;max-width:none;height:42px;object-fit:contain;object-position:left center}body.sidebar-collapsed .brand.brand-logo>small,body.sidebar-collapsed .nav-link>span:not(.nav-icon),body.sidebar-collapsed .org-chip>span:not(.avatar){display:none}body.sidebar-collapsed .sidebar nav{align-items:center}body.sidebar-collapsed .nav-link{width:48px;padding:0;justify-content:center}body.sidebar-collapsed .nav-icon{width:22px}body.sidebar-collapsed .nav-dot{position:absolute;right:7px;top:7px}body.sidebar-collapsed .sidebar-footer{padding-left:0;padding-right:0}body.sidebar-collapsed .org-chip{justify-content:center}body.sidebar-collapsed .sidebar-collapse span{transform:rotate(180deg)}
.dark .sidebar{background:#17261f;color:#b7c9be;border-right-color:#294337}.dark .brand-logo-surface{border-color:#355144}.dark .nav-link{color:#aec1b6}.dark .nav-link:hover{background:#213a2d;color:#eaf6ee}.dark .org-chip b{color:#eef6f1}.dark .sidebar-footer{border-top-color:#294337}.dark .sidebar-collapse{background:#1d3027;border-color:#355144;color:#55c77d}
@media(max-width:800px){body.sidebar-collapsed{--sidebar:255px}body.sidebar-collapsed .sidebar{width:255px}body.sidebar-collapsed .brand.brand-logo{padding:0 5px 23px;align-items:stretch}body.sidebar-collapsed .brand-logo-surface{width:auto;height:51px;padding:5px 7px}body.sidebar-collapsed .brand-logo-surface img{width:100%;max-width:100%;height:auto;max-height:42px}body.sidebar-collapsed .brand.brand-logo>small,body.sidebar-collapsed .nav-link>span:not(.nav-icon),body.sidebar-collapsed .org-chip>span:not(.avatar){display:block}body.sidebar-collapsed .sidebar nav{align-items:stretch}body.sidebar-collapsed .nav-link{width:auto;padding:0 13px;justify-content:flex-start}body.sidebar-collapsed .nav-dot{position:static;margin-left:auto}body.sidebar-collapsed .org-chip{justify-content:flex-start}.sidebar-collapse{display:none}}

/* Les modules occupent toute la surface de travail */
.main{width:calc(100% - var(--sidebar));min-width:0;display:flex;flex-direction:column;transition:margin-left .24s ease,width .24s ease}.content{width:100%;max-width:none;min-height:calc(100vh - 132px);flex:1}.content>.panel,.content>.dashboard-grid,.content>.cards-grid,.content>.account-grid,.content>.document-layout,.content>form{width:100%}.dashboard-grid{align-items:stretch}.dashboard-grid>.panel{height:100%}.cards-grid,.account-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.panel{min-width:0}.table-wrap{width:100%}.table-wrap table{min-width:100%}.document-layout{min-height:calc(100vh - 145px)}.lines-panel{flex:1}.report-banner{width:100%}.page-actions .kpi-strip.grow{width:auto}.main>footer{margin-top:auto}
body.sidebar-collapsed .main{width:calc(100% - var(--sidebar))}
@media(min-width:1500px){.content{padding-left:40px;padding-right:40px}.stat-grid{gap:22px}.dashboard-grid{gap:22px}}
@media(max-width:800px){.main,body.sidebar-collapsed .main{width:100%;margin-left:0}.content{min-height:calc(100vh - 115px)}.document-layout{min-height:auto}.cards-grid,.account-grid{grid-template-columns:1fr}}

/* Logo intégré sans contour */
.brand-logo-surface,.auth-logo-surface,.install-logo{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}.brand-logo-surface{overflow:hidden}.auth-logo-surface{min-height:0}.install-logo{padding:0}body.sidebar-collapsed .brand-logo-surface{padding:0;border:0;box-shadow:none}.dark .brand-logo-surface{border:0}

/* Module caisse */
.cash-routing{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #cfe9d9;background:#f0faf4;border-radius:12px}.cash-routing>span{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:#dff3e7;color:var(--primary);font-size:18px}.cash-routing b,.cash-routing small,.cash-routing a{display:block}.cash-routing small{color:var(--muted);font-size:10px;margin:3px 0 7px}.cash-routing a{color:var(--primary);font-size:10px;font-weight:800}.cash-closed-hero,.cash-open-hero{width:100%;border-radius:18px;margin-bottom:19px;display:flex;align-items:center;gap:18px}.cash-closed-hero{padding:25px 28px;background:var(--surface);border:1px solid var(--border)}.cash-closed-hero>div:nth-child(2){flex:1}.cash-closed-hero h2,.cash-closed-hero p{margin-bottom:3px}.cash-closed-hero p:last-child{color:var(--muted)}.cash-hero-icon{width:53px;height:53px;border-radius:14px;background:#e5f6ec;color:var(--primary);display:grid;place-items:center;font-size:23px}.cash-open-hero{padding:23px 25px;color:#fff;background:linear-gradient(125deg,#0c7539,#18a151);box-shadow:0 15px 35px rgba(13,119,55,.2)}.cash-open-hero>div:first-child{min-width:220px}.cash-open-hero h2{margin:5px 0 2px}.cash-open-hero p{margin:0;color:#d4f1df;font-size:10px}.cash-status{font-size:9px;font-weight:800;letter-spacing:1px}.cash-status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#7ff0a8;box-shadow:0 0 0 4px rgba(127,240,168,.16);margin-right:7px}.cash-hero-metrics{display:flex;flex:1;justify-content:center}.cash-hero-metrics>div{padding:2px 25px}.cash-hero-metrics>div+div{border-left:1px solid rgba(255,255,255,.22)}.cash-hero-metrics small,.cash-hero-metrics b,.cash-hero-metrics strong{display:block}.cash-hero-metrics small{font-size:9px;color:#ccebd8}.cash-hero-metrics b{font-size:16px}.cash-hero-metrics strong{font-size:22px}.cash-hero-actions{display:flex;gap:8px}.btn.cash-light{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.18);color:#fff}.btn.cash-close{background:#fff;border-color:#fff;color:#d73543}.cash-kpis{display:flex;gap:12px;overflow:auto;margin-bottom:18px}.cash-kpis article{min-width:170px;flex:1;background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:14px 17px}.cash-kpis small,.cash-kpis b{display:block}.cash-kpis small{color:var(--muted);font-size:9px}.cash-kpis b{font-size:16px;margin-top:3px}.cash-grid{grid-template-columns:2fr 1fr}.payment-method-list{padding:0 18px 14px}.payment-method-list>div{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid var(--border)}.payment-method-list p{margin:0;flex:1}.payment-method-list b,.payment-method-list small{display:block}.payment-method-list small{font-size:9px;color:var(--muted)}.method-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:#e7f6ed;color:var(--primary)}button.row-action{border:0;background:transparent;cursor:pointer}.table-subline{display:block;color:var(--muted);font-size:9px}.cash-count-summary{display:flex;justify-content:space-between;align-items:center;margin:16px 0 5px;padding:15px;background:#edf8f1;border-radius:11px;color:#39614a}.cash-count-summary b{font-size:19px;color:var(--primary)}.dark .cash-routing,.dark .cash-count-summary{background:#1e392b;border-color:#2b4b39}.dark .cash-hero-icon,.dark .method-icon{background:#213e30}
@media(max-width:1100px){.cash-open-hero{align-items:flex-start;flex-wrap:wrap}.cash-hero-metrics{justify-content:flex-start}.cash-hero-actions{width:100%}.cash-hero-actions .btn{flex:1}}
@media(max-width:800px){.cash-grid{grid-template-columns:1fr}.cash-open-hero,.cash-closed-hero{align-items:stretch;flex-direction:column}.cash-hero-metrics{justify-content:space-between}.cash-hero-metrics>div{padding:4px 12px}.cash-hero-actions{flex-direction:column}.cash-closed-hero .btn{width:100%}}
.nav-icon[data-icon="wallet"]:before{content:'▣'}.nav-icon[data-icon="cart"]:before{content:'▱'}.nav-icon[data-icon="bag"]:before{content:'▰'}.nav-icon[data-icon="home"]:before{content:'⌂'}.nav-icon[data-icon="layers"]:before{content:'▤'}.nav-icon[data-icon="clipboard"]:before{content:'☷'}.nav-icon[data-icon="chart"]:before{content:'↗'}.nav-icon[data-icon="settings"]:before{content:'⚙'}

/* Page ventes et achats */
.sales-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.sales-page-head h2{margin:2px 0 4px;font-size:26px}.sales-page-head p:last-child{margin:0;color:var(--muted)}.sales-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:19px}.sales-kpi-grid article{display:flex;align-items:flex-start;gap:12px;min-height:112px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:15px;box-shadow:0 3px 12px rgba(20,65,39,.025)}.sales-kpi-grid article>div{min-width:0}.sales-kpi-grid small,.sales-kpi-grid b,.sales-kpi-grid em{display:block}.sales-kpi-grid small{color:var(--muted);font-size:10px}.sales-kpi-grid b{font-size:19px;margin:5px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sales-kpi-grid em{color:#8a948e;font-size:9px;font-style:normal}.sales-kpi-icon{width:36px;height:36px;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;font:800 16px Manrope}.sales-kpi-icon.green{background:#e5f7ec;color:#138144}.sales-kpi-icon.blue{background:#e9f0ff;color:#4774dc}.sales-kpi-icon.red{background:#ffeaed;color:#d84352}.sales-kpi-icon.amber{background:#fff2dc;color:#c57915}.sales-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 20px;border-bottom:1px solid var(--border)}.status-filters{display:flex;gap:5px;overflow:auto}.status-filters button{white-space:nowrap;border:0;background:transparent;color:var(--muted);border-radius:8px;padding:8px 10px;font-size:10px;font-weight:800;cursor:pointer}.status-filters button:hover{background:var(--surface-2);color:var(--text)}.status-filters button.active{background:#e6f6ec;color:var(--primary)}.status-filters button span{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:10px;margin-left:4px;background:#fff;color:var(--primary)}.invoice-ref{display:flex;align-items:center;gap:9px}.invoice-ref>span{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:#e8f7ed;color:var(--primary)}.invoice-ref b,.invoice-ref small{display:block}.invoice-ref small{font-size:9px;color:var(--muted)}.payment-progress{min-width:115px}.payment-progress>div{height:5px;border-radius:6px;background:#edf0ee;overflow:hidden;margin-bottom:4px}.payment-progress i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#1b9d50,#49bf75)}.payment-progress-unpaid i{background:linear-gradient(90deg,#e34d59,#c92e3d)}.payment-progress-partial i{background:linear-gradient(90deg,#ffad35,#ed8500)}.payment-progress-complete i{background:linear-gradient(90deg,#26a65b,#178340)}.payment-progress small{color:var(--muted);font-size:9px}.cash-shortcut{display:inline-flex;padding:6px 9px;border-radius:7px;background:#e8f7ed;color:var(--primary);font-size:9px;font-weight:800}.cash-shortcut:hover{background:#d9f1e2}.paid-check{color:var(--green);font-size:9px;font-weight:800}.dark .status-filters button.active,.dark .invoice-ref>span,.dark .cash-shortcut{background:#213e30}.dark .status-filters button span{background:#17261f}
@media(max-width:1100px){.sales-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-toolbar{align-items:stretch;flex-direction:column}.sales-toolbar .search{width:100%}}
@media(max-width:600px){.sales-page-head{align-items:stretch;flex-direction:column}.sales-page-head .btn{width:100%}.sales-kpi-grid{grid-template-columns:1fr}.sales-kpi-grid article{min-height:95px}.status-filters{padding-bottom:3px}}
.sales-filter-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.date-range-filter{height:41px;display:flex;align-items:center;gap:7px;padding:0 8px 0 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.date-range-filter label{display:flex;align-items:center;gap:5px;font-size:9px;white-space:nowrap;color:var(--muted)}.date-range-filter input{width:119px;height:31px;margin:0;padding:5px 6px;border:0;background:var(--surface-2);font-size:10px}.date-range-filter>span{color:#a3aba6}.date-clear{width:25px;height:25px;border:0;border-radius:7px;background:#fff0f1;color:var(--red);cursor:pointer;font-size:15px}.invoice-actions{display:flex;align-items:center;gap:5px}.print-shortcut{display:inline-flex;padding:6px 8px;border-radius:7px;background:#edf2ff;color:#4169c1;font-size:9px;font-weight:800}.print-shortcut:hover{background:#dfe8ff}.dark .date-range-filter input{background:#21362b}.dark .print-shortcut{background:#26374c;color:#94b8ff}
.sale-output-select{width:auto;min-width:150px;height:41px;margin:0;padding:0 32px 0 12px;border:1px solid var(--border);border-radius:11px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:700}
[data-delivery-sale-wrap][hidden],[data-delivery-sale-summary][hidden]{display:none!important}
.badge-pending{background:#fff3dc;color:#a9630b}.badge-preparing{background:#eaf2ff;color:#286ab2}.badge-shipped{background:#e5f2fa;color:#2676a8}.badge-partial{background:#fff0dc;color:#bd6b08}.badge-delivered{background:#e5f7ec;color:#16894a}
@media(max-width:1100px){.sales-filter-main{width:100%}.sales-filter-main .search{flex:1;min-width:240px}}
@media(max-width:650px){.sales-filter-main{align-items:stretch;flex-direction:column}.date-range-filter{width:100%;height:auto;min-height:48px;flex-wrap:wrap}.date-range-filter label{flex:1}.date-range-filter input{width:100%}.invoice-actions{flex-direction:column;align-items:stretch}}

/* Charte cyan du logo panier */
:root{--bg:#f5fafc;--surface:#fff;--surface-2:#f2f9fb;--text:#173745;--muted:#6f8791;--border:#dcecf1;--primary:#55c8e5;--primary-dark:#25a9cb;--purple:#55c8e5;--green:#29b4d6;--blue:#43bad9;--shadow:0 12px 40px rgba(36,151,180,.10)}
.sidebar{background:#fff;color:#587481;border-right-color:#d9edf2;box-shadow:8px 0 28px rgba(48,165,194,.08)}
.brand.brand-logo{padding:0 3px 14px;gap:3px}.brand-logo-surface{height:116px;background:#f7fcfd;border-radius:14px;justify-content:center}.brand-logo-surface img{width:100%;height:100%;max-height:none;object-fit:contain}.brand.brand-logo>small{color:#4aadc7}
.sidebar-collapse{border-color:#cfe9ef;color:#28a9ca;box-shadow:0 5px 15px rgba(45,166,196,.15)}.sidebar-collapse:hover{background:#eaf8fb}
.nav-link{color:#587481}.nav-link:hover{background:#eaf8fb;color:#168eae}.nav-link.active{background:linear-gradient(100deg,#60d0e9,#34b5d7);box-shadow:0 8px 18px rgba(45,175,207,.27)}.nav-dot{background:#55c8e5}
.sidebar-footer{border-top-color:#d9edf2}.org-chip b{color:#244651}.org-chip small{color:#76909a}.avatar{background:#55c8e5}.avatar.coral{background:#39b5d4}
.btn.primary{background:linear-gradient(135deg,#60d0e9,#2bafd1);box-shadow:0 7px 18px rgba(45,175,207,.25)}.btn.primary:hover{background:linear-gradient(135deg,#6dd5eb,#219fbe)}
input:focus,select:focus,textarea:focus{border-color:#70d3e9;box-shadow:0 0 0 3px rgba(85,200,229,.16)}
.stat-card.violet{background:linear-gradient(135deg,#61cfe8,#2bafd1);box-shadow:0 12px 28px rgba(45,175,207,.24)}
.product-icon,.warehouse-icon,.account-icon,.method-icon,.cash-hero-icon{background:#e7f7fa;color:#24a6c7}.avatars span,.ranking>div>span{background:#e8f8fb;color:#168eae}.badge-active,.badge-paid,.badge-validated{background:#e6f8fb;color:#158eab}
.sale-tip,.cash-routing,.cash-count-summary{background:#edf9fb;border-color:#cfeaf0;color:#256f81}.suggestion-list button:hover,.suggestion-list button:focus{background:#eaf8fb}
.report-banner{background:linear-gradient(130deg,#164b5a,#23798e)}.report-banner>span{color:#62d1e9}.bar-track{background:#e6f5f8}.bar-track i,.payment-progress i{background:linear-gradient(#67d4ea,#28a9ca)}
.auth-body{background:#f3fafc}.auth-panel{background:linear-gradient(145deg,#164b5a,#23798e)}.auth-panel:after{background:rgba(85,200,229,.23)}.auth-copy h1 em{color:#70d8ed}.pill{background:rgba(85,200,229,.14);color:#8ce2f2;border-color:rgba(112,216,237,.25)}.metric-preview small{color:#83deef}.bars i{background:#55c8e5}
.auth-logo-surface{width:310px;height:248px}.auth-logo-surface img,.login-mobile-logo img,.install-logo img{width:100%;height:100%;object-fit:contain}.login-mobile-logo{width:220px;height:176px;margin-bottom:12px}.install-logo{width:300px;height:240px;margin-bottom:8px}
.cash-open-hero{background:linear-gradient(125deg,#229fbe,#55c8e5);box-shadow:0 15px 35px rgba(37,169,203,.24)}.cash-open-hero p,.cash-hero-metrics small{color:#e4f9fd}.cash-status i{background:#b7f1fb;box-shadow:0 0 0 4px rgba(183,241,251,.2)}
.status-filters button.active,.invoice-ref>span,.cash-shortcut{background:#e8f8fb;color:#168eae}.cash-shortcut:hover{background:#d9f2f7}
.dark{--bg:#10262e;--surface:#17333d;--surface-2:#1c3b46;--text:#edfafd;--muted:#9bb8c1;--border:#2b5360}.dark .sidebar{background:#16313a;color:#bdd6dd;border-right-color:#2b5360}.dark .nav-link{color:#b7d0d7}.dark .nav-link:hover,.dark .product-icon,.dark .warehouse-icon,.dark .account-icon,.dark .method-icon,.dark .sale-tip,.dark .status-filters button.active,.dark .invoice-ref>span,.dark .cash-shortcut{background:#214651;color:#bceefa}.dark .org-chip b{color:#eefbfe}.dark .sidebar-footer{border-top-color:#2b5360}.dark .sidebar-collapse{background:#1c3b46;border-color:#37626f;color:#65d2e9}
body.sidebar-collapsed .brand-logo-surface{width:52px;height:52px;background:#f7fcfd}body.sidebar-collapsed .brand-logo-surface img{width:80px;height:64px;max-width:none;object-fit:cover;object-position:center 17%;transform:scale(1.55)}
@media(max-width:800px){body.sidebar-collapsed .brand-logo-surface{width:auto;height:116px}body.sidebar-collapsed .brand-logo-surface img{width:100%;height:100%;max-width:100%;object-fit:contain;transform:none}.login-mobile-logo{display:block}}

/* Charte bleu marine et orange du logo E-commerce */
:root{--bg:#f6f8fb;--surface:#fff;--surface-2:#f5f8fa;--text:#123f5d;--muted:#718696;--border:#dfe8ee;--primary:#0b527d;--primary-dark:#073f62;--purple:#0b527d;--green:#1779a3;--orange:#ff9917;--blue:#176f9a;--shadow:0 12px 40px rgba(10,75,116,.10)}
.sidebar{color:#567184;border-right-color:#dce7ed;box-shadow:8px 0 28px rgba(11,82,125,.08)}
.brand-logo-surface{height:118px;background:#fff;border-radius:14px}.brand.brand-logo>small{color:#ec8b14}
.sidebar-collapse{border-color:#d4e2e9;color:#0b527d;box-shadow:0 5px 15px rgba(11,82,125,.14)}.sidebar-collapse:hover{background:#edf5f8}
.nav-link{color:#567184}.nav-link:hover{background:#edf5f8;color:#0b527d}.nav-link.active{background:linear-gradient(100deg,#14658f,#0b527d);box-shadow:0 8px 18px rgba(11,82,125,.27)}.nav-dot{background:#ff9917}
.sidebar-footer{border-top-color:#dce7ed}.org-chip b{color:#173f58}.org-chip small{color:#768d9b}.avatar{background:#0b527d}.avatar.coral{background:#ff9917}
.btn.primary{background:linear-gradient(135deg,#176f9a,#0b527d);box-shadow:0 7px 18px rgba(11,82,125,.25)}.btn.primary:hover{background:linear-gradient(135deg,#1d7ca9,#073f62)}
input:focus,select:focus,textarea:focus{border-color:#f6a32d;box-shadow:0 0 0 3px rgba(255,153,23,.15)}
.stat-card.violet{background:linear-gradient(135deg,#176f9a,#0b527d);box-shadow:0 12px 28px rgba(11,82,125,.25)}
.product-icon,.warehouse-icon,.account-icon,.method-icon,.cash-hero-icon{background:#e8f1f5;color:#0b527d}.avatars span,.ranking>div>span{background:#edf4f7;color:#0b527d}.badge-active,.badge-paid,.badge-validated{background:#e8f2f6;color:#0b527d}
.soft-orange{background:#fff1dc!important;color:#df7d05!important}.progress i{background:#ff9917}.sale-tip,.cash-routing,.cash-count-summary{background:#f1f6f8;border-color:#d8e6ec;color:#245b78}.suggestion-list button:hover,.suggestion-list button:focus{background:#edf5f8}
.report-banner{background:linear-gradient(130deg,#073f62,#0b527d)}.report-banner>span{color:#ffad3d}.bar-track{background:#e8eff3}.bar-track i,.payment-progress i{background:linear-gradient(#ffad3d,#f28b08)}
.auth-body{background:#f4f7f9}.auth-panel{background:linear-gradient(145deg,#073f62,#0b527d)}.auth-panel:after{background:rgba(255,153,23,.22)}.auth-copy h1 em{color:#ffad3d}.pill{background:rgba(255,153,23,.14);color:#ffc266;border-color:rgba(255,173,61,.26)}.metric-preview small{color:#ffc266}.bars i{background:#ff9917}
.auth-logo-surface{width:300px;height:300px}.login-mobile-logo{width:200px;height:200px;margin-bottom:4px}.install-logo{width:270px;height:270px;margin-bottom:4px}
.cash-open-hero{background:linear-gradient(125deg,#073f62,#14658f);box-shadow:0 15px 35px rgba(11,82,125,.24)}.cash-open-hero p,.cash-hero-metrics small{color:#e4f1f7}.cash-status i{background:#ffb64f;box-shadow:0 0 0 4px rgba(255,182,79,.2)}
.status-filters button.active,.invoice-ref>span,.cash-shortcut{background:#eaf2f6;color:#0b527d}.cash-shortcut:hover{background:#dcebf1}
.sales-kpi-icon.amber{background:#fff1dc;color:#d87903}.sales-kpi-icon.green{background:#e8f2f6;color:#0b527d}
.dark{--bg:#0c2433;--surface:#123548;--surface-2:#173f54;--text:#f2f7fa;--muted:#a2b5c0;--border:#285267}.dark .sidebar{background:#102f41;color:#c2d3dc;border-right-color:#285267}.dark .nav-link{color:#bdd0d9}.dark .nav-link:hover,.dark .product-icon,.dark .warehouse-icon,.dark .account-icon,.dark .method-icon,.dark .sale-tip,.dark .status-filters button.active,.dark .invoice-ref>span,.dark .cash-shortcut{background:#1a465b;color:#ffd08c}.dark .org-chip b{color:#f4f8fa}.dark .sidebar-footer{border-top-color:#285267}.dark .sidebar-collapse{background:#173f54;border-color:#35647a;color:#ffad3d}
body.sidebar-collapsed .brand-logo-surface{background:#fff}body.sidebar-collapsed .brand-logo-surface img{width:72px;height:72px;object-position:center top;transform:scale(1.72)}
@media(max-width:800px){body.sidebar-collapsed .brand-logo-surface{height:118px}body.sidebar-collapsed .brand-logo-surface img{width:100%;height:100%;transform:none}}

/* Répertoires clients et fournisseurs */
.party-page-head{margin-bottom:19px}.party-page-head h2{margin-bottom:3px}.party-kpi-grid article{min-height:106px}.party-kpi-grid article:nth-child(3) b,.party-kpi-grid article:nth-child(4) b{font-size:16px}.party-directory{overflow:hidden}.party-directory .sales-toolbar{padding-top:15px;padding-bottom:15px}.party-directory .search{min-width:310px}.party-contact b,.party-contact small,.party-activity b,.party-activity small{display:block}.party-contact b,.party-activity b{font-size:11px}.party-contact small,.party-activity small{margin-top:2px;color:var(--muted);font-size:9px}.party-directory td{vertical-align:middle}.party-directory tbody tr{transition:background .18s}.party-directory .avatar.orange{background:#fff1dc;color:#d87903}.dark .party-directory .avatar.orange{background:#4b3922;color:#ffc266}
.party-directory .actions-column{width:118px;text-align:center}.party-directory .product-row-actions{justify-content:center}.party-inspect-card{max-width:560px}.party-inspect-card h2{margin-bottom:18px}.party-inspect-grid{display:grid;grid-template-columns:135px 1fr;margin:0;border-top:1px solid var(--border)}.party-inspect-grid dt,.party-inspect-grid dd{margin:0;padding:11px 4px;border-bottom:1px solid var(--border)}.party-inspect-grid dt{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.party-inspect-grid dd{font-weight:700;overflow-wrap:anywhere}
.party-detail-page{display:flex;flex-direction:column;gap:16px}.party-report-brand{display:none}.party-detail-hero{padding:19px 22px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.party-detail-nav{display:flex;justify-content:space-between;margin-bottom:14px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.8px}.party-detail-nav a{color:var(--primary);letter-spacing:0}.party-detail-title{display:flex;align-items:center;gap:13px}.party-detail-title>.avatar{width:48px;height:48px;font-size:18px}.party-detail-title>div:nth-child(2){flex:1}.party-detail-title h2,.party-detail-title p{margin:0}.party-detail-title h2{font-size:24px}.party-detail-title p{margin-top:3px;color:var(--muted)}.party-detail-actions{display:flex;align-items:center;gap:10px}.party-detail-actions svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.party-situation-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.party-situation-kpis article{padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.party-situation-kpis small,.party-situation-kpis b,.party-situation-kpis span{display:block}.party-situation-kpis small{color:var(--muted);font-size:9px}.party-situation-kpis b{margin:5px 0 2px;font-size:18px}.party-situation-kpis span{color:var(--muted);font-size:9px}.party-detail-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.party-profile-card dl{display:grid;grid-template-columns:145px 1fr;margin:0;padding:0 18px 15px}.party-profile-card dt,.party-profile-card dd{margin:0;padding:9px 0;border-bottom:1px solid var(--border)}.party-profile-card dt{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.party-profile-card dd{font-weight:700;overflow-wrap:anywhere}.party-balance-lines{padding:0 18px 18px}.party-balance-lines p{display:flex;justify-content:space-between;gap:15px;margin:0;padding:11px 0;border-bottom:1px solid var(--border)}.party-balance-lines span{color:var(--muted)}.party-balance-lines .total{margin-top:7px;padding:13px 12px;border:0;border-radius:9px;background:#eef5f8;color:#0b527d}.party-balance-lines .total span{color:inherit;font-weight:800}.party-balance-lines .total strong{font-size:15px}.party-documents table,.party-payments table{min-width:850px}.party-documents a{color:var(--primary)}

/* Saisie des ventes et achats */
.document-page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:3px 3px 2px}.document-page-intro a{display:inline-block;margin-bottom:13px;color:var(--primary);font-size:10px;font-weight:800}.document-page-intro h2{margin:1px 0 3px;font-size:25px}.document-page-intro>div>span{color:var(--muted);font-size:11px}.document-page-intro ol{display:flex;align-items:center;gap:0;margin:0;padding:0;list-style:none}.document-page-intro li{display:flex;align-items:center;position:relative;color:var(--muted);font-size:9px;font-weight:800}.document-page-intro li:not(:last-child):after{content:'';width:34px;height:1px;margin:0 8px;background:var(--border)}.document-page-intro li b{width:25px;height:25px;margin-right:6px;border:1px solid var(--border);border-radius:50%;display:grid;place-items:center;background:var(--surface);font-size:9px}.document-page-intro li.active{color:var(--primary)}.document-page-intro li.active b{border-color:var(--primary);background:#eaf3f7}.document-info-panel{overflow:visible}.document-info-panel .panel-head,.document-lines-panel .panel-head{padding:17px 20px;border-bottom:1px solid var(--border)}.document-section-title{display:flex;align-items:center;gap:11px}.document-section-title small{display:block;margin-top:2px;color:var(--muted);font-size:9px}.document-section-icon{width:37px;height:37px;flex:0 0 37px;display:grid;place-items:center;border-radius:10px;background:#edf5f8;color:var(--primary)}.document-section-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.draft-chip{display:inline-flex;align-items:center;gap:6px;background:#f4f6f7;color:#64727b;border:1px solid #dde4e7}.draft-chip i{width:6px;height:6px;border-radius:50%;background:#ff9917}.document-info-grid{display:grid;grid-template-columns:minmax(260px,1.55fr) minmax(180px,1fr) minmax(170px,.8fr);gap:15px;padding:18px 20px 20px}.document-info-grid label{min-width:0}.document-info-grid label>span{display:flex;align-items:center;gap:6px;color:var(--text);font-size:10px}.document-info-grid label em{font-style:normal;color:var(--muted);font-size:8px;font-weight:600}.document-info-grid input,.document-info-grid select{height:43px;margin-top:7px}.document-info-grid label>small{display:block;margin-top:5px;color:var(--muted);font-size:8px;font-weight:500;line-height:1.3}.document-info-grid .autocomplete{margin-top:7px}.document-info-grid .autocomplete>input[type=text]{height:43px}.document-notes-field{grid-column:1/-1}.document-notes-field input{padding-left:13px}.document-lines-panel{overflow:visible}.document-lines-panel .sale-tip{margin-top:14px}.document-lines-panel .line-items{padding-top:2px}.document-footer{border-radius:14px}.sticky-actions{z-index:10;border:1px solid var(--border);box-shadow:0 10px 30px rgba(20,44,57,.08)}
@media(max-width:1050px){.document-page-intro{align-items:flex-start}.document-page-intro ol{padding-top:25px}.document-page-intro li span{display:none}.document-page-intro li:not(:last-child):after{width:22px}.document-info-grid{grid-template-columns:1.4fr 1fr}.document-info-grid label:nth-child(3){grid-column:1/-1}.document-notes-field{grid-column:1/-1}}
@media(max-width:650px){.document-page-intro{display:block}.document-page-intro ol{padding-top:16px}.document-info-grid{grid-template-columns:1fr;padding:15px}.document-info-grid label:nth-child(3),.document-notes-field{grid-column:auto}.document-info-panel .panel-head,.document-lines-panel .panel-head{align-items:flex-start}.document-section-title small{display:none}}
@media(max-width:900px){.party-situation-kpis{grid-template-columns:repeat(2,1fr)}.party-detail-layout{grid-template-columns:1fr}}
@media(max-width:600px){.party-detail-title{align-items:flex-start;flex-wrap:wrap}.party-detail-actions{width:100%;justify-content:space-between}.party-situation-kpis{grid-template-columns:1fr}.party-profile-card dl{grid-template-columns:110px 1fr}}
@media print{body:has(.party-detail-page){background:#fff;color:#202830;font-size:8px}body:has(.party-detail-page) .sidebar,body:has(.party-detail-page) .topbar,body:has(.party-detail-page)>footer,body:has(.party-detail-page) .overlay,body:has(.party-detail-page) .party-detail-hero{display:none!important}body:has(.party-detail-page) .main{width:100%;margin:0!important}body:has(.party-detail-page) .content{padding:0!important}body:has(.party-detail-page) .party-detail-page{gap:4mm}body:has(.party-detail-page) .party-report-brand{display:grid;grid-template-columns:28mm 1fr 48mm;align-items:center;gap:4mm;padding-bottom:3mm;border-bottom:1px solid #0b527d}body:has(.party-detail-page) .party-report-brand img{width:25mm;height:19mm;object-fit:contain}body:has(.party-detail-page) .party-report-brand small,body:has(.party-detail-page) .party-report-brand b,body:has(.party-detail-page) .party-report-brand span,body:has(.party-detail-page) .party-report-brand strong{display:block}body:has(.party-detail-page) .party-report-brand h1{margin:.5mm 0;font-size:14px;color:#0b527d}body:has(.party-detail-page) .party-report-brand small,body:has(.party-detail-page) .party-report-brand span{font-size:6px;color:#68747b}body:has(.party-detail-page) .party-report-brand b,body:has(.party-detail-page) .party-report-brand strong{font-size:7px}body:has(.party-detail-page) .party-report-brand aside{text-align:right}body:has(.party-detail-page) .party-situation-kpis{grid-template-columns:repeat(4,1fr);gap:2mm}body:has(.party-detail-page) .party-situation-kpis article,body:has(.party-detail-page) .panel{box-shadow:none;border:1px solid #d6dde1;border-radius:2px}body:has(.party-detail-page) .party-situation-kpis article{padding:2.5mm}body:has(.party-detail-page) .party-situation-kpis b{font-size:11px;margin:1mm 0}body:has(.party-detail-page) .party-detail-layout{grid-template-columns:1.2fr .8fr;gap:3mm}body:has(.party-detail-page) .panel-head{padding:2.5mm 3mm}body:has(.party-detail-page) .panel-head h3{font-size:10px}body:has(.party-detail-page) .party-profile-card dl{grid-template-columns:31mm 1fr;padding:0 3mm 2mm}body:has(.party-detail-page) .party-profile-card dt,body:has(.party-detail-page) .party-profile-card dd{padding:1.3mm 0;font-size:6.5px}body:has(.party-detail-page) .party-balance-lines{padding:0 3mm 2mm}body:has(.party-detail-page) .party-balance-lines p{padding:1.7mm 0}body:has(.party-detail-page) .party-balance-lines .total{padding:2mm}body:has(.party-detail-page) .table-wrap{overflow:visible}body:has(.party-detail-page) table{min-width:0!important;font-size:6px}body:has(.party-detail-page) th{padding:1.4mm 1mm;background:#eef1f3!important;color:#263740!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}body:has(.party-detail-page) td{padding:1.3mm 1mm}body:has(.party-detail-page) thead{display:table-header-group}body:has(.party-detail-page) tr{break-inside:avoid}body:has(.party-detail-page) .badge{padding:.5mm 1mm;font-size:5px}body:has(.party-detail-page) .party-payments,body:has(.party-detail-page) .party-documents{break-inside:auto}@page{size:A4 portrait;margin:8mm}}
@media print{body:has(.party-detail-page) .main>footer{display:none!important}}
.party-journal-print{display:none}
@media print{body:has(.party-detail-page) .party-detail-page> :not(.party-report-brand):not(.party-journal-print){display:none!important}body:has(.party-detail-page) .party-journal-print{display:block!important}.party-journal-heading{display:flex;justify-content:space-between;gap:8mm;padding:3mm 0;border-bottom:1px solid #d6dde1}.party-journal-heading>div:first-child{flex:1}.party-journal-heading h2{margin:1mm 0;font-size:13px;color:#163f59}.party-journal-heading small,.party-journal-heading span{display:block;color:#68747b;font-size:6.5px}.party-journal-heading>div:last-child{text-align:right;padding:2mm 4mm;background:#edf4f7;border-radius:2px;min-width:36mm}.party-journal-heading>div:last-child b{display:block;margin:1mm 0;font-size:12px;color:#0b527d}.party-journal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:2mm;margin:3mm 0}.party-journal-summary>div{padding:2mm 3mm;background:#f2f6f8;border-left:2px solid #0b527d}.party-journal-summary small,.party-journal-summary b{display:block}.party-journal-summary small{font-size:6px;color:#68747b;text-transform:uppercase}.party-journal-summary b{margin-top:1mm;font-size:9px;color:#163f59}.party-journal-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:6.5px}.party-journal-table th{padding:2mm 1.5mm;background:#0b527d!important;color:#fff!important;text-align:left;text-transform:uppercase;font-size:6px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.party-journal-table th:first-child{width:12%}.party-journal-table th:nth-child(2){width:17%}.party-journal-table th:nth-child(3){width:31%}.party-journal-table th:nth-child(n+4){width:13.33%}.party-journal-table td{padding:1.8mm 1.5mm;border-bottom:1px solid #e1e8eb;vertical-align:top}.party-journal-table tbody tr:nth-child(even){background:#fafcfd!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.party-journal-table td b,.party-journal-table td small{display:block}.party-journal-table td small{margin-top:.5mm;color:#68747b;font-size:5.5px}.party-journal-table .amount{text-align:right;white-space:nowrap}.party-journal-table tfoot td{padding:2.5mm 1.5mm;border-top:1.5px solid #0b527d;background:#edf4f7!important;color:#0b527d;font-weight:700;-webkit-print-color-adjust:exact;print-color-adjust:exact}.party-journal-table tfoot small{display:block;font-weight:400;color:#68747b;font-size:5.5px}}
@media(max-width:1100px){.party-directory .sales-toolbar{align-items:stretch;flex-direction:column}.party-directory .search{width:100%;min-width:0}}

/* Catalogue produits enrichi */
.product-page-head{margin-bottom:19px}.product-head-actions{display:flex;gap:9px}.product-kpi-grid article{min-height:106px}.product-catalog{overflow:hidden}.product-toolbar{padding-top:15px;padding-bottom:15px}.product-filter-group{display:flex;align-items:center;gap:9px;flex:1}.product-filter-group .search{min-width:250px;flex:1}.product-filter-group>select{width:auto;min-width:155px;height:41px;margin:0;padding:0 30px 0 11px}.actions-column{text-align:right}.product-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.product-row-actions .row-action{padding:5px 7px;border-radius:6px;font-size:9px}.product-row-actions .inspect{background:#eaf2f6;color:#0b527d}.product-row-actions .edit{background:#fff1dc;color:#c46f05}.product-row-actions .delete{background:#ffeaed;color:#d84352}.btn.danger{background:#d84352;border-color:#d84352;color:#fff}.delete-product-card{width:min(470px,100%)}.delete-product-card .muted{line-height:1.65}.dark .product-row-actions .inspect{background:#1a465b;color:#bfe2ef}.dark .product-row-actions .edit{background:#49391f;color:#ffd08c}.dark .product-row-actions .delete{background:#4d2930;color:#ffb6bf}
@media(max-width:1150px){.product-toolbar{align-items:stretch;flex-direction:column}.product-filter-group{width:100%;flex-wrap:wrap}.product-filter-group .search{min-width:260px}.product-toolbar .status-filters{width:100%}}
@media(max-width:650px){.product-page-head{align-items:stretch;flex-direction:column}.product-head-actions{flex-direction:column}.product-head-actions .btn{width:100%}.product-filter-group{align-items:stretch;flex-direction:column}.product-filter-group .search,.product-filter-group>select{width:100%;min-width:0}.product-row-actions{align-items:stretch;flex-direction:column}}
@media print{.product-page-head .product-head-actions,.product-kpi-grid,.product-toolbar,.product-catalog .actions-column,.product-catalog td:last-child{display:none!important}.product-page-head{display:block!important;margin:0 0 10mm}.product-page-head h2{font-size:20px}.product-page-head p{color:#555}.product-catalog{display:block!important;border:0!important;box-shadow:none!important}.product-catalog .table-wrap{overflow:visible}.product-catalog table{font-size:9px}.product-catalog th{background:#0b527d!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.product-catalog td,.product-catalog th{padding:7px}.product-catalog .product-icon{display:none}.product-catalog .badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{size:A4 landscape;margin:12mm}}

/* Actions produits : icônes vectorielles uniquement. */
.product-row-actions .row-action{width:30px;height:30px;padding:0;border-radius:8px;display:inline-grid;place-items:center;flex:0 0 30px}
.product-row-actions .row-action svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.product-row-actions .row-action:hover{transform:translateY(-1px);filter:brightness(.96)}
@media(max-width:650px){.product-row-actions{flex-direction:row;align-items:center}}
.product-modal-card{max-height:92vh;overflow:auto}.product-packaging-fields{margin:5px 0 2px;padding:14px 16px 16px;border:1px solid #cfe9d9;border-radius:12px;background:#f3faf6}.product-packaging-fields[hidden]{display:none}.product-packaging-fields legend{padding:0 7px;color:var(--primary);font:800 12px Manrope}.product-packaging-fields legend small{font:500 9px 'DM Sans';color:var(--muted)}.product-packaging-fields>p{margin:0 0 11px;color:var(--muted);font-size:10px}.product-packaging-fields .form-grid{gap:10px}.product-packaging-fields label:last-child{grid-column:span 2}.dark .product-packaging-fields{background:#1d3327;border-color:#31543e}
.pack-equivalent b,.pack-equivalent small{display:block}.pack-equivalent b{color:#0b527d}.pack-equivalent b+b{margin-top:5px}.pack-equivalent small{font-size:8px;color:var(--muted)}.dark .pack-equivalent b{color:#9ed9f2}
.product-movement-filters{display:grid;grid-template-columns:minmax(190px,1.4fr) repeat(4,minmax(125px,.8fr));gap:8px;padding:0 18px 14px}.product-movement-filters .search,.product-movement-filters select{width:100%;height:39px;margin:0}.product-movement-filters select{padding:0 28px 0 9px;font-size:10px}
.movement-print-header{display:none}
@media(max-width:900px){.product-movement-filters{grid-template-columns:repeat(2,1fr)}.product-movement-filters .search{grid-column:span 2}}
@media(max-width:650px){.product-movement-filters{grid-template-columns:1fr}.product-movement-filters .search{grid-column:auto}}
@media(max-width:650px){.product-packaging-fields label:last-child{grid-column:auto}}

/* Fiche de gestion produit */
.product-detail-page{display:flex;flex-direction:column;gap:17px}.product-detail-head{padding:20px 23px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.product-detail-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:1px}.product-detail-nav a{color:var(--primary);letter-spacing:0}.product-detail-title{display:flex;align-items:center;gap:14px}.product-detail-title>div:nth-child(2){flex:1}.product-detail-title h2{margin:0 0 3px;font-size:25px}.product-detail-title p{margin:0;color:var(--muted)}.product-detail-actions{display:flex;gap:8px}.product-inventory-print svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.product-detail-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.product-detail-kpis article{display:flex;align-items:center;gap:12px;min-height:96px;padding:15px 17px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.product-detail-kpis small,.product-detail-kpis b,.product-detail-kpis p{display:block;margin:0}.product-detail-kpis small{font-size:9px;color:var(--muted)}.product-detail-kpis b{font-size:18px;margin-top:2px}.product-detail-kpis b em{font-size:10px;font-style:normal;color:var(--muted)}.product-detail-kpis p{font-size:9px;color:var(--muted)}.product-kpi-icon{width:39px;height:39px;display:grid;place-items:center;flex:0 0 39px;border-radius:11px;font-size:17px;font-weight:800}.product-kpi-icon.stock{background:#e9f2f6;color:#0b527d}.product-kpi-icon.in{background:#e7f6ed;color:#148244}.product-kpi-icon.out{background:#ffeaed;color:#d84352}.product-kpi-icon.value{background:#fff1dc;color:#b76b0c}.product-total-chip{text-align:right;padding:7px 12px;border-radius:9px;background:#edf8f1}.product-total-chip small,.product-total-chip b{display:block}.product-total-chip small{font-size:8px;color:var(--muted)}.product-total-chip b{color:var(--primary)}.product-stock-panel tfoot th{background:#f2f7f4;color:var(--text);border-top:2px solid var(--border)}.warning-text{color:#b76b0c}.product-detail-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(270px,.75fr);gap:17px;align-items:start}.product-movement-panel{min-width:0}.product-movement-scroll{max-height:520px;overflow:auto}.product-movement-scroll thead{position:sticky;top:0;z-index:2}.product-detail-side{display:flex;flex-direction:column;gap:17px}.product-packaging-card{padding-bottom:8px}.packaging-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid var(--border)}.packaging-line b,.packaging-line small{display:block}.packaging-line small{font-size:9px;color:var(--muted)}.product-print-signatures{display:none}.dark .product-total-chip,.dark .product-stock-panel tfoot th{background:#20382b}.dark .product-kpi-icon.stock{background:#1a465b;color:#bfe2ef}.dark .product-kpi-icon.in{background:#213e30;color:#8ee1ad}.dark .product-kpi-icon.out{background:#4d2930;color:#ffb6bf}.dark .product-kpi-icon.value{background:#49391f;color:#ffd08c}
@media(max-width:1050px){.product-detail-kpis{grid-template-columns:repeat(2,1fr)}.product-detail-grid{grid-template-columns:1fr}.product-detail-side{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:650px){.product-detail-title{align-items:flex-start;flex-wrap:wrap}.product-detail-actions{width:100%;flex-direction:column}.product-detail-actions .btn{width:100%}.product-detail-kpis{grid-template-columns:1fr}.product-detail-side{display:flex}.product-total-chip{display:none}}
@media print{body:has(.product-detail-page){background:#fff;color:#17252d;font-size:9px}body:has(.product-detail-page) .sidebar,body:has(.product-detail-page) .topbar,body:has(.product-detail-page) footer,body:has(.product-detail-page) .overlay,body:has(.product-detail-page) .modal,body:has(.product-detail-page) .product-detail-actions,body:has(.product-detail-page) .product-movement-panel .search{display:none!important}body:has(.product-detail-page) .main{width:100%;margin:0!important}body:has(.product-detail-page) .content{padding:0!important}body:has(.product-detail-page) .product-detail-page{gap:5mm}body:has(.product-detail-page) .product-detail-head,body:has(.product-detail-page) .panel,body:has(.product-detail-page) .product-detail-kpis article{box-shadow:none;border-color:#b8c5ca;border-radius:5px}body:has(.product-detail-page) .product-detail-head{padding:5mm}body:has(.product-detail-page) .product-detail-nav{margin-bottom:3mm}body:has(.product-detail-page) .product-detail-nav a{display:none}body:has(.product-detail-page) .product-detail-title h2{font-size:18px}body:has(.product-detail-page) .product-detail-kpis{grid-template-columns:repeat(4,1fr);gap:3mm}body:has(.product-detail-page) .product-detail-kpis article{min-height:auto;padding:3mm}body:has(.product-detail-page) .product-kpi-icon{width:8mm;height:8mm;flex-basis:8mm}body:has(.product-detail-page) .product-stock-panel,body:has(.product-detail-page) .product-movement-panel{break-inside:auto}body:has(.product-detail-page) .product-detail-grid{display:block}body:has(.product-detail-page) .product-detail-side{display:none}body:has(.product-detail-page) .product-movement-scroll{max-height:none;overflow:visible}body:has(.product-detail-page) table{font-size:7.5px}body:has(.product-detail-page) th,body:has(.product-detail-page) td{padding:2mm 1.5mm}body:has(.product-detail-page) thead{display:table-header-group;position:static}body:has(.product-detail-page) tr{break-inside:avoid}body:has(.product-detail-page) .product-print-signatures{display:flex;justify-content:space-between;gap:20mm;margin-top:8mm;break-inside:avoid}body:has(.product-detail-page) .product-print-signatures>div{width:46%;text-align:center}body:has(.product-detail-page) .product-print-signatures span,body:has(.product-detail-page) .product-print-signatures small{display:block}body:has(.product-detail-page) .product-print-signatures i{display:block;height:14mm;border-bottom:1px solid #777}@page{size:A4 portrait;margin:10mm}}
@media print{body.product-movements-print .product-detail-head,body.product-movements-print .product-detail-kpis,body.product-movements-print .product-stock-panel,body.product-movements-print .product-detail-side,body.product-movements-print .product-print-signatures,body.product-movements-print .product-movement-panel>.panel-head,body.product-movements-print .product-movement-filters{display:none!important}body.product-movements-print .product-detail-grid{display:block}body.product-movements-print .product-movement-panel{display:block!important;border:0!important}body.product-movements-print .movement-print-header{display:grid;grid-template-columns:34mm 1fr 52mm;align-items:center;gap:6mm;margin-bottom:6mm;padding:0 0 5mm;border-bottom:2px solid #0b527d;position:relative}body.product-movements-print .movement-print-header:after{content:'';position:absolute;left:0;bottom:-2px;width:28%;height:2px;background:#ff9917}body.product-movements-print .movement-print-header img{width:31mm;height:24mm;object-fit:contain}body.product-movements-print .movement-print-header p,body.product-movements-print .movement-print-header h1,body.product-movements-print .movement-print-header b{margin:0;display:block}body.product-movements-print .movement-print-header p{font-size:8px;color:#647d8c}body.product-movements-print .movement-print-header h1{font-size:17px;color:#0b527d;letter-spacing:.8px;margin:1mm 0}body.product-movements-print .movement-print-header b{font-size:9px}body.product-movements-print .movement-print-header aside{text-align:right}body.product-movements-print .movement-print-header aside span,body.product-movements-print .movement-print-header aside strong,body.product-movements-print .movement-print-header aside small{display:block}body.product-movements-print .movement-print-header aside span{font-size:7px;color:#718696;text-transform:uppercase}body.product-movements-print .movement-print-header aside strong{font-size:8px;margin:.8mm 0 2mm}body.product-movements-print .movement-print-header aside small{font-size:7px;color:#d87903}body.product-movements-print .product-movement-scroll{border:1px solid #dce7ed;border-radius:3px}body.product-movements-print .product-movement-panel table{font-size:7px}body.product-movements-print .product-movement-panel th{background:#0b527d!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}body.product-movements-print .product-movement-panel td{padding:1.8mm 1.2mm}body.product-movements-print .product-movement-panel tbody tr:nth-child(even){background:#f6f9fa!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{size:A4 portrait;margin:10mm}}
.stock-document-page-lines .stock-document-lines{height:calc(100vh - 430px);min-height:570px;max-height:none}.stock-document-page-lines .stock-document-line:not(:first-child) .stock-line-label{display:none}.stock-document-page-lines .stock-document-line:not(:first-child) .remove-stock-line{margin-top:4px}
.stock-document-tabs{display:flex;align-items:center;gap:5px;overflow-x:auto}.stock-document-tabs button{white-space:nowrap;border:0;border-radius:8px;padding:9px 11px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;cursor:pointer}.stock-document-tabs button:hover{background:var(--surface-2);color:var(--text)}.stock-document-tabs button.active{background:#eaf2f6;color:#0b527d}.dark .stock-document-tabs button.active{background:#1a465b;color:#ffd08c}@media(max-width:800px){.stock-document-tabs{width:100%;padding-bottom:3px}}
.inline-action-form{display:contents}.product-row-actions .row-action.validate{background:#e5f7ed;color:#16894a}.product-row-actions .row-action.locked{background:#eef1f3;color:#87949b;cursor:default}.product-row-actions .row-action svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.stock-document-overview{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) minmax(210px,1.35fr);gap:12px;margin:0 0 16px}.stock-document-overview article{display:flex;align-items:center;gap:11px;min-height:92px;padding:15px 16px;background:var(--surface);border:1px solid var(--border);border-radius:13px;box-shadow:0 3px 12px rgba(25,50,66,.035)}.stock-document-overview article>span{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;background:#edf3f6;color:#0b527d;font-size:17px;font-weight:800}.stock-document-overview article.entry>span{background:#e5f7ed;color:#16894a}.stock-document-overview article.exit>span{background:#ffe9ec;color:#d94b5c}.stock-document-overview article.transfer>span{background:#e8f2ff;color:#3271c7}.stock-document-overview article.value>span{background:#fff1dd;color:#c77912}.stock-document-overview small,.stock-document-overview b,.stock-document-overview em{display:block}.stock-document-overview small{color:var(--muted);font-size:9px}.stock-document-overview b{margin:2px 0;font-size:17px;white-space:nowrap}.stock-document-overview em{color:#94a0a7;font-size:8px;font-style:normal}.stock-documents-panel{overflow:hidden;border-radius:15px}.stock-documents-panel>.panel-head{padding:17px 20px}.stock-documents-panel>.panel-head h3{font-size:18px}.stock-document-toolbar{background:linear-gradient(180deg,var(--surface),var(--surface-2))}.stock-document-tabs{order:-1;width:100%;border-bottom:1px solid var(--border);padding-bottom:10px}.stock-document-tabs button{display:inline-flex;align-items:center;gap:6px}.stock-document-tabs button span{min-width:19px;height:19px;display:inline-grid;place-items:center;padding:0 5px;border-radius:10px;background:var(--surface);font-size:8px}.stock-document-tabs button.active span{background:#fff}.stock-document-scroll{max-height:calc(100vh - 450px);min-height:280px}.stock-document-scroll table{table-layout:auto}.stock-document-scroll td{height:52px}.stock-document-scroll tbody tr:nth-child(even){background:rgba(11,82,125,.018)}.stock-document-scroll tbody tr:hover{background:#f2f7f9}.stock-document-scroll th:last-child,.stock-document-scroll td:last-child{text-align:right}.stock-document-scroll .product-row-actions{justify-content:flex-end}.dark .stock-document-overview article{box-shadow:none}.dark .stock-document-scroll tbody tr:hover{background:#173f54}@media(max-width:1200px){.stock-document-overview{grid-template-columns:repeat(3,1fr)}.stock-document-overview article.value{grid-column:span 2}}@media(max-width:750px){.stock-document-overview{grid-template-columns:1fr 1fr}.stock-document-overview article.value{grid-column:1/-1}.stock-document-scroll{max-height:55vh}.stock-document-toolbar .date-range-filter{overflow-x:auto}}@media(max-width:480px){.stock-document-overview{grid-template-columns:1fr}.stock-document-overview article.value{grid-column:auto}}
.inventory-page{display:flex;flex-direction:column;gap:16px}.inventory-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border:1px solid var(--border);border-radius:15px;background:linear-gradient(135deg,var(--surface),#f4f8fa);box-shadow:var(--shadow)}.inventory-hero h2{margin:1px 0 4px;font-size:25px}.inventory-hero span{color:var(--muted);font-size:10px}.inventory-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.inventory-kpis article{display:flex;align-items:center;gap:11px;min-height:91px;padding:15px 16px;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:0 3px 12px rgba(25,50,66,.035)}.inventory-kpis small,.inventory-kpis b,.inventory-kpis em{display:block}.inventory-kpis small{color:var(--muted);font-size:9px}.inventory-kpis b{margin:2px 0;font-size:19px}.inventory-kpis em{color:#95a0a6;font-size:8px;font-style:normal}.inventory-kpi-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;background:#eaf2f6;color:#0b527d;font-weight:800}.inventory-kpi-icon.month{background:#e8f2ff;color:#3271c7}.inventory-kpi-icon.counted{background:#e5f7ed;color:#16894a}.inventory-kpi-icon.variance{background:#fff1dd;color:#c77912}.inventory-history-panel{overflow:hidden}.inventory-toolbar{display:flex;align-items:center;gap:10px;padding:12px 18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--surface),var(--surface-2))}.inventory-toolbar .search{flex:1}.inventory-toolbar>select{width:auto;min-width:185px;height:41px;margin:0}.inventory-history-scroll{max-height:calc(100vh - 455px);min-height:260px;overflow:auto}.inventory-history-scroll thead th{position:sticky;top:0;z-index:2}.inventory-history-scroll td{height:53px}.inventory-history-scroll tbody tr:nth-child(even){background:rgba(11,82,125,.018)}.inventory-modal{width:min(940px,96vw)}.inventory-modal-head{display:flex;align-items:center;gap:12px;margin-bottom:15px}.inventory-modal-head>span{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#e5f7ed;color:#16894a;font-size:19px;font-weight:800}.inventory-modal-head h2,.inventory-modal-head p{margin-bottom:0}.inventory-modal-head small{color:var(--muted);font-size:9px}.inventory-form-info{padding:14px;border-radius:11px;background:var(--surface-2)}.inventory-count-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:16px 0 8px}.inventory-count-toolbar h3,.inventory-count-toolbar p{margin:0}.inventory-count-list{max-height:399px;overflow-y:auto;border:1px solid var(--border);border-radius:11px}.inventory-count-list .count-head{position:sticky;top:0;z-index:2;background:var(--surface-2)}.inventory-count-list label{min-height:52px;padding:7px 12px}.inventory-count-list label:nth-child(odd){background:rgba(11,82,125,.018)}.inventory-count-list input{width:160px;height:37px;margin:0;text-align:right}.inventory-count-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 12px;border-radius:0 0 10px 10px;background:#edf5f8;color:#0b527d;font-size:9px}.inventory-count-summary b{font-size:13px}.inventory-count-summary small{color:var(--muted)}.dark .inventory-hero{background:linear-gradient(135deg,var(--surface),var(--surface-2))}.dark .inventory-count-summary{background:#1a465b;color:#bfe2ef}@media(max-width:800px){.inventory-hero{align-items:stretch;flex-direction:column}.inventory-hero .btn{width:100%}.inventory-kpis{grid-template-columns:1fr 1fr}.inventory-toolbar{align-items:stretch;flex-direction:column}.inventory-toolbar .search,.inventory-toolbar>select,.inventory-toolbar .date-range-filter{width:100%}.inventory-count-toolbar{align-items:stretch;flex-direction:column}.inventory-count-toolbar .search{width:100%}}@media(max-width:480px){.inventory-kpis{grid-template-columns:1fr}.inventory-count-list input{width:120px}.inventory-count-summary{align-items:flex-start;flex-direction:column}}
.cash-billetage{padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.cash-billetage-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.cash-billetage-head h3,.cash-billetage-head p{margin:0}.cash-billetage-head>span{color:var(--muted);font-size:8px}.cash-denomination-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.cash-denomination-grid label{display:grid;grid-template-columns:1fr 62px 80px;align-items:center;gap:7px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:8px}.cash-denomination-grid input{height:32px;margin:0;text-align:center}.cash-denomination-grid b{text-align:right;font-size:8px}.cash-billetage-total{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;margin-top:10px;padding:10px 12px;border-radius:9px;background:#eaf2f6;color:#0b527d}.cash-billetage-total b{font-size:16px}.cash-billetage-total small{grid-column:2;text-align:right;font-size:9px}.cash-billetage-confirm{display:flex!important;align-items:center;gap:8px;margin-top:10px;padding:9px 10px;border-radius:8px;background:#fff7e8;color:#8b5a0a;font-size:9px}.cash-billetage-confirm input{width:16px!important;height:16px!important;margin:0!important}.cash-billetage~.form-actions button:disabled{opacity:.45;cursor:not-allowed}.dark .cash-billetage-total{background:#1a465b;color:#bfe2ef}.dark .cash-billetage-confirm{background:#49391f;color:#ffd08c}@media(max-width:700px){.cash-denomination-grid{grid-template-columns:1fr}.cash-denomination-grid label{grid-template-columns:1fr 70px 90px}}
#closeCashModal .modal-card{width:min(900px,96vw);max-height:94vh;overflow:auto}
.cash-denomination-grid label:last-child{display:none}
.accounting-page{display:flex;flex-direction:column;gap:16px}.accounting-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border:1px solid var(--border);border-radius:15px;background:linear-gradient(135deg,var(--surface),#f4f8fa)}.accounting-hero h2{margin:1px 0 4px}.accounting-hero span{color:var(--muted);font-size:10px}.accounting-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.accounting-kpis article{padding:15px 17px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.accounting-kpis small,.accounting-kpis b,.accounting-kpis em{display:block}.accounting-kpis small{color:var(--muted);font-size:9px}.accounting-kpis b{margin:4px 0;font-size:18px}.accounting-kpis em{color:#94a0a7;font-size:8px;font-style:normal}.accounting-journal-panel,.accounting-balance-panel{overflow:hidden}.accounting-scroll{max-height:420px;overflow:auto}.accounting-scroll thead th{position:sticky;top:0;z-index:2}.accounting-journal-code{display:inline-flex;padding:4px 7px;border-radius:7px;background:#eaf2f6;color:#0b527d;font-size:8px;font-weight:800}.accounting-balance-panel tfoot th{background:#eaf2f6;color:#0b527d;border-top:2px solid #0b527d}.dark .accounting-hero{background:linear-gradient(135deg,var(--surface),var(--surface-2))}.dark .accounting-journal-code,.dark .accounting-balance-panel tfoot th{background:#1a465b;color:#bfe2ef}@media(max-width:800px){.accounting-hero{align-items:stretch;flex-direction:column}.accounting-hero .btn{width:100%}.accounting-kpis{grid-template-columns:1fr 1fr}}@media(max-width:480px){.accounting-kpis{grid-template-columns:1fr}}

.document-lines-panel .line-item.packaging-line{display:grid;justify-content:initial;padding:13px 0}
.invoice-vector-actions{min-width:142px;justify-content:flex-end}.invoice-vector-actions .row-action.lock{background:#e3f7ea;color:#148244}.invoice-vector-actions .row-action.payment{display:none!important}.invoice-vector-actions .row-action.return{background:#fff1dc;color:#b76b0c}.invoice-vector-actions .row-action.invoice{background:#fff1dc;color:#c46f05}.invoice-vector-actions .row-action.invoice:hover{background:#ffe4bd;color:#a95d00}.invoice-vector-actions .row-action.create-order{background:#eaf3f8;color:#176b91}.invoice-vector-actions .row-action.create-order:hover{background:#d9ebf4;color:#105b7e}.badge-locked{background:#e8edf0;color:#334b59}.invoice-vector-actions svg{pointer-events:none}.dark .invoice-vector-actions .row-action.lock{background:#213e30;color:#8ee1ad}.dark .invoice-vector-actions .row-action.return{background:#49391f;color:#ffd08c}.dark .invoice-vector-actions .row-action.invoice,.dark .invoice-vector-actions .row-action.create-order{background:#1a465b;color:#bfe2ef}

/* Caisse principale */
.cash-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.cash-page-head h2{margin:1px 0 3px;font-size:26px}.cash-page-head p:last-child{margin:0;color:var(--muted)}.cash-page-state{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:20px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.cash-page-state i{width:7px;height:7px;border-radius:50%}.cash-page-state.open{background:#e7f6ed;color:#148244}.cash-page-state.open i{background:#20a654;box-shadow:0 0 0 4px rgba(32,166,84,.12)}.cash-page-state.closed{background:#eef1f3;color:#687780}.cash-page-state.closed i{background:#87949b}.cash-methods-overview{margin-bottom:18px;padding:17px 18px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.cash-methods-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px}.cash-methods-title h3,.cash-methods-title p{margin:0}.cash-method-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px}.cash-method-card{display:flex;align-items:center;gap:10px;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.cash-method-logo{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:9px;background:#eaf2f6;color:#0b527d;font:800 10px Manrope}.cash-method-logo svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cash-method-card>div{min-width:0;flex:1}.cash-method-card b,.cash-method-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cash-method-card b{font-size:10px}.cash-method-card small{margin-top:2px;color:var(--muted);font-size:8px}.method-ready{font-size:7px;font-weight:800;color:#148244}.cash-method-card.orange-money .cash-method-logo{background:#ff7900;color:#fff}.cash-method-card.wave .cash-method-logo{background:#1dc3e8;color:#fff;font-size:15px}.dark .cash-page-state.open{background:#213e30;color:#8ee1ad}.dark .cash-method-card.orange-money .cash-method-logo{background:#d86600}.dark .cash-method-card.wave .cash-method-logo{background:#148da8}
@media(max-width:650px){.cash-page-head{align-items:flex-start;flex-direction:column}.cash-method-cards{grid-template-columns:1fr}.cash-methods-title{align-items:flex-start}}

.cash-method-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}.cash-method-card.orange-money .cash-method-logo,.cash-method-card.wave .cash-method-logo{width:78px;height:36px;flex-basis:78px;padding:3px 5px;border:1px solid #e5e9ec;border-radius:9px;background:#fff}.cash-method-card.orange-money .cash-method-logo img{object-position:center}.dark .cash-method-card.orange-money .cash-method-logo,.dark .cash-method-card.wave .cash-method-logo{background:#fff}
.cash-operations-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch}.cash-operations-grid.single{grid-template-columns:1fr}.cash-operations-grid>.panel{min-width:0;height:100%}.cash-operations-grid .table-wrap{overflow:auto}.line-price:not([readonly]){border-color:#9cc8dc;background:#f7fcfe}.line-price:not([readonly]):focus{border-color:#0b6b96;box-shadow:0 0 0 3px rgba(11,107,150,.12)}.dark .line-price:not([readonly]){background:#172b35;border-color:#376477}
.cash-five-rows{max-height:286px;overflow:auto}.cash-five-rows thead th{position:sticky;top:0;z-index:2;background:var(--surface-2);box-shadow:0 1px 0 var(--border)}
.cash-history-scroll{max-height:clamp(250px,calc(100vh - 390px),520px);overflow:auto}.cash-history-scroll thead th{position:sticky;top:0;z-index:2;background:var(--surface-2);box-shadow:0 1px 0 var(--border)}
.method-kpi{margin-left:auto;text-align:right;white-space:nowrap}.cash-method-card .method-kpi small{display:block;margin:0 0 2px;color:var(--muted);font-size:7px;font-weight:700;text-transform:uppercase;letter-spacing:.35px}.method-kpi strong{display:block;color:#148244;font:800 11px Manrope}.dark .method-kpi strong{color:#82d9a3}
@media(max-height:700px){.cash-history-scroll{max-height:250px}}@media(min-height:1000px){.cash-history-scroll{max-height:600px}}
.party-history-toolbar{padding:12px 18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.party-history-toolbar .search{min-width:230px;flex:1}.party-history-toolbar .status-filters{flex-wrap:wrap}
.party-payment-toolbar{padding:12px 18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.party-payment-toolbar .sales-filter-main{width:100%}.party-payment-toolbar .search{min-width:230px;flex:1}.party-payment-toolbar select{width:auto;min-width:145px;height:41px;margin:0}
.stock-warehouse-context{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:17px 20px;border:1px solid #cfe3ec;border-left:4px solid #0b6b96;border-radius:13px;background:var(--surface)}.stock-warehouse-context h2,.stock-warehouse-context p{margin:0}.stock-warehouse-context span{display:block;margin-top:3px;color:var(--muted);font-size:10px}.dark .stock-warehouse-context{border-color:#315464}
.stock-document-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stock-document-toolbar .search{flex:1;min-width:230px}.stock-document-toolbar>select{width:auto;min-width:165px;height:41px;margin:0}.stock-document-scroll{max-height:430px;overflow:auto}.stock-document-scroll thead th{position:sticky;top:0;z-index:2}.stock-document-kind{display:inline-flex;padding:4px 8px;border-radius:20px;font-size:8px;font-weight:800}.stock-document-kind.entry{background:#e5f7ed;color:#16894a}.stock-document-kind.exit{background:#ffe9ec;color:#d94b5c}.stock-document-kind.transfer{background:#e8f2ff;color:#3271c7}@media(max-width:800px){.stock-document-toolbar{align-items:stretch;flex-direction:column}.stock-document-toolbar .search,.stock-document-toolbar>select,.stock-document-toolbar .date-range-filter{width:100%}}
.stock-document-modal{width:min(920px,96vw)}.stock-document-types{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.stock-document-types>button{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.stock-document-types>button>b{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--surface-2);font-size:18px}.stock-document-types strong,.stock-document-types small{display:block}.stock-document-types small{margin-top:2px;color:var(--muted);font-size:8px}.stock-document-types>button.active{border-color:#0b6b96;background:#eef7fb;box-shadow:0 0 0 2px rgba(11,107,150,.08)}.stock-document-types>button.active b{background:#0b6b96;color:#fff}.stock-document-warehouses{margin-top:0;padding:14px;border-radius:11px;background:var(--surface-2)}.stock-document-lines-head{display:flex;align-items:center;justify-content:space-between;margin:18px 0 8px}.stock-document-lines-head h3,.stock-document-lines-head p{margin:0}.stock-document-lines{max-height:408px;overflow-y:auto;overflow-x:hidden;padding-right:5px}.stock-document-line{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.8fr) 110px 155px 36px;gap:9px;align-items:start;min-height:68px;padding:9px 0;border-top:1px solid var(--border)}.stock-document-line:first-child{border-top:0}.stock-document-line>label{margin:0}.stock-document-line input,.stock-document-line select{width:100%;height:40px;margin-top:4px}.stock-packaging-hint{display:block;min-height:12px;margin-top:3px;color:var(--muted);font-size:8px}.remove-stock-line{height:40px;margin-top:18px;border:0;border-radius:8px;background:#fff0f1;color:var(--red);cursor:pointer}@media(max-width:700px){.stock-document-types{grid-template-columns:1fr}.stock-document-line{grid-template-columns:1fr 1fr}.stock-document-line label:first-child{grid-column:1/-1}}
.warehouse-page-head{margin-bottom:18px}.warehouse-kpi-grid{margin-bottom:18px}.warehouse-directory{padding:18px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.warehouse-directory-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.warehouse-directory-head h3,.warehouse-directory-head p{margin:0}.warehouse-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}.warehouse-grid .warehouse-card{display:flex;flex-direction:column;min-height:255px;padding:18px;border-color:var(--border);box-shadow:none;transition:.2s}.warehouse-grid .warehouse-card:hover{transform:translateY(-2px);border-color:#a8cbdc;box-shadow:0 12px 28px rgba(11,82,125,.09)}.warehouse-grid .warehouse-icon{width:42px;height:42px;background:#eaf4f8;color:#0b6b96}.warehouse-grid .warehouse-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.warehouse-identity{margin-top:15px}.warehouse-identity small{color:#0b6b96;font-size:8px;font-weight:800;letter-spacing:1px}.warehouse-identity h3{margin:2px 0 3px;font-size:16px}.warehouse-identity p{margin:0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.warehouse-grid .warehouse-stats{margin:16px 0 13px}.warehouse-stock-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding:10px 12px;border-radius:9px;background:#edf6fa;color:#0b6b96;font-size:10px;font-weight:800}.warehouse-stock-link b{font-size:16px}.dark .warehouse-stock-link,.dark .warehouse-grid .warehouse-icon{background:#1d3541;color:#82c9e9}@media(max-width:650px){.warehouse-directory-head{align-items:stretch;flex-direction:column}.warehouse-directory-head .search{min-width:0;width:100%}}
@media(max-width:1100px){.cash-operations-grid{grid-template-columns:1fr}}

/* Relevé des mouvements — version lite A4 */
@media print{body.product-movements-print{color:#202830!important}body.product-movements-print .movement-print-header{grid-template-columns:25mm 1fr 48mm;gap:4mm;margin-bottom:3mm;padding-bottom:2.5mm;border-bottom:1px solid #0b527d}body.product-movements-print .movement-print-header:after{display:none}body.product-movements-print .movement-print-header img{width:23mm;height:17mm}body.product-movements-print .movement-print-header p{font-size:6.5px;color:#66727a}body.product-movements-print .movement-print-header h1{font-size:12px;letter-spacing:.35px;margin:.5mm 0}body.product-movements-print .movement-print-header h1:after{content:'  ·  LITE';font-size:6px;font-weight:600;color:#66727a;letter-spacing:.5px}body.product-movements-print .movement-print-header b{font-size:7.5px}body.product-movements-print .movement-print-header aside span{font-size:5.8px}body.product-movements-print .movement-print-header aside strong{font-size:6.8px;margin:.4mm 0 1mm}body.product-movements-print .movement-print-header aside small{font-size:6px;color:#555}body.product-movements-print .product-movement-scroll{border:0;border-radius:0}body.product-movements-print .product-movement-panel table{color:#202830;border:0}body.product-movements-print .product-movement-panel th{padding:1.2mm .8mm;background:#eef1f3!important;color:#263740!important;border:0;letter-spacing:.15px;font-size:6.2px}body.product-movements-print .product-movement-panel tbody td{padding:1mm .7mm;border:0;line-height:1.12;font-size:6.5px}body.product-movements-print .product-movement-panel tbody td b,body.product-movements-print .product-movement-panel tbody td strong{font-size:6.5px}body.product-movements-print .product-movement-panel tbody tr{border:0}body.product-movements-print .product-movement-panel tbody tr:nth-child(even){background:#fff!important}body.product-movements-print .product-movement-panel .positive{color:#202830!important}body.product-movements-print .product-movement-panel .negative{color:#c62828!important}body.product-movements-print .product-movement-panel .table-subline{font-size:5.6px;margin-top:.2mm;color:#68747b}@page{size:A4 portrait;margin:8mm}}
.stock-type-choice-modal{width:min(560px,95vw)}.stock-type-choice-list{display:grid;gap:9px;margin-top:18px}.stock-type-choice-list a{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);border-radius:11px;background:var(--surface);transition:.18s}.stock-type-choice-list a:hover{border-color:#0b6b96;background:#eef7fb;transform:translateX(2px)}.stock-type-choice-list a>b{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#eaf4f8;color:#0b6b96;font-size:19px}.stock-type-choice-list span{flex:1}.stock-type-choice-list strong,.stock-type-choice-list small{display:block}.stock-type-choice-list small{margin-top:2px;color:var(--muted);font-size:9px}.stock-type-choice-list i{font-style:normal;color:#0b6b96;font-size:18px}.stock-document-page{display:flex;flex-direction:column;gap:16px}.stock-document-page>form{display:flex;flex-direction:column;gap:16px}.stock-document-page .document-info-panel .panel-head{padding:10px 18px 8px}.stock-document-page .document-info-panel .document-section-icon{width:30px;height:30px;flex-basis:30px;border-radius:8px}.stock-document-page .document-info-panel .document-section-title{gap:8px}.stock-document-page .document-info-panel .stock-document-page-info{padding:10px 18px 12px;gap:12px}.stock-document-page .document-info-panel input,.stock-document-page .document-info-panel select{height:38px;margin-top:4px}.stock-document-page-kind{align-self:flex-end;padding:8px 12px;border-radius:20px;background:#eaf4f8;color:#0b6b96;font-size:10px;font-weight:800}.stock-document-page-kind.exit{background:#ffe9ec;color:#c94353}.stock-document-page-kind.transfer{background:#e8f2ff;color:#3271c7}.stock-document-page-info{grid-template-columns:repeat(4,minmax(150px,1fr))}.stock-document-page-lines{overflow:visible}.stock-document-page-lines .stock-document-lines{max-height:423px;overflow-y:auto;padding:0 20px 15px}.stock-document-page-lines .stock-document-line{grid-template-columns:minmax(230px,1fr) minmax(190px,.8fr) 110px 155px 38px}.dark .stock-type-choice-list a:hover{background:#1d3541}@media(max-width:900px){.stock-document-page-info{grid-template-columns:1fr 1fr}.stock-document-page-lines .stock-document-line{grid-template-columns:1fr 1fr}.stock-document-page-lines .stock-document-line label:first-child{grid-column:1/-1}}
.accounting-page~.accounting-plan-panel,.accounting-page~#accountingAccountModal{display:none!important}.accounting-plan-panel{margin-top:18px;overflow:hidden}.accounting-plan-panel td:last-child{white-space:nowrap}.accounting-plan-panel td:last-child button{border:0;background:transparent;color:var(--primary);font-weight:700;cursor:pointer}
.accounting-page>.account-grid{display:none}
.accounting-journal-panel th:nth-last-child(-n+3),.accounting-journal-panel td:nth-last-child(-n+3){text-align:right}.accounting-journal-panel tfoot{position:sticky;bottom:0;z-index:3}.accounting-journal-panel tfoot th{background:#eaf2f6;color:#0b527d;border-top:2px solid #0b527d;font-weight:900}.dark .accounting-journal-panel tfoot th{background:#1a465b;color:#bfe2ef}
.accounting-balance-panel th:nth-last-child(-n+2),.accounting-balance-panel td:nth-last-child(-n+2){text-align:right}
.accounting-page .accounting-hero{position:relative;overflow:hidden;min-height:112px;padding:22px 25px;border:0;border-radius:16px;background:linear-gradient(120deg,#07517c 0%,#0b6f9f 58%,#1598bb 100%);color:#fff;box-shadow:0 13px 30px rgba(5,73,111,.2)}.accounting-page .accounting-hero:before,.accounting-page .accounting-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.accounting-page .accounting-hero:before{width:190px;height:190px;right:17%;top:-125px;background:rgba(255,255,255,.09)}.accounting-page .accounting-hero:after{width:130px;height:130px;right:-35px;bottom:-80px;background:rgba(255,255,255,.1)}.accounting-page .accounting-hero>div,.accounting-page .accounting-hero>.btn{position:relative;z-index:1}.accounting-page .accounting-hero .eyebrow{color:#aee1f1}.accounting-page .accounting-hero h2{color:#fff}.accounting-page .accounting-hero span{color:#d5edf5}.accounting-page .accounting-hero .btn.primary{border-color:rgba(255,255,255,.42);background:#fff;color:#07517c;box-shadow:0 8px 20px rgba(3,47,72,.2)}.accounting-page .accounting-hero .btn.primary:hover{background:#eef9fc;box-shadow:0 11px 24px rgba(3,47,72,.26)}.dark .accounting-page .accounting-hero{background:linear-gradient(120deg,#073c5c,#095c83 58%,#0d7895);border:0}
.accounting-page .accounting-kpis article{position:relative;overflow:hidden;border-color:#d3e5ed;border-radius:14px;box-shadow:0 5px 17px rgba(8,76,109,.055)}.accounting-page .accounting-kpis article:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#0b6b96}.accounting-page .accounting-kpis article:nth-child(2):before{background:#3c9fbd}.accounting-page .accounting-kpis article:nth-child(3):before{background:#26966a}.accounting-page .accounting-kpis article:nth-child(4):before{background:#f09a28}.accounting-page .accounting-kpis small{color:#607d8b;font-weight:750;text-transform:uppercase;letter-spacing:.35px}.accounting-page .accounting-kpis b{color:#123f5d}.accounting-page .accounting-journal-panel,.accounting-page .accounting-balance-panel{border-color:#d3e4eb;border-radius:15px;box-shadow:0 7px 22px rgba(11,82,125,.06)}.accounting-page .panel-head{background:linear-gradient(90deg,#f4f9fb,#fff);border-bottom:1px solid #dce9ee}.accounting-page .panel-head .eyebrow{color:#0b6b96}.accounting-page .accounting-view-tabs{display:flex;align-self:flex-start;gap:5px;padding:5px;border:1px solid #d4e4eb;border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(7,75,108,.05)}.accounting-page .accounting-view-tabs button{min-height:36px;padding:0 15px;border:0;border-radius:8px;background:transparent;color:#637d89;font-size:9px;font-weight:800;cursor:pointer}.accounting-page .accounting-view-tabs button.active{background:#e5f2f7;color:#07527b;box-shadow:inset 0 0 0 1px #cce3ed}.accounting-page .accounting-balance-toolbar{padding:11px 15px;border-bottom:1px solid #dce9ee;background:#f8fbfc}.accounting-page .accounting-scroll thead th{background:#eaf3f7;color:#456b7d}.accounting-page tbody tr:hover{background:#f4fafc}.accounting-page .badge-active{background:#e1f4ec;color:#168553}.accounting-page input:focus,.accounting-page select:focus{border-color:#3a9dc0;box-shadow:0 0 0 3px rgba(11,107,150,.11)}.dark .accounting-page .accounting-kpis article,.dark .accounting-page .accounting-view-tabs{border-color:#315464;background:var(--surface)}.dark .accounting-page .panel-head,.dark .accounting-page .accounting-balance-toolbar{background:var(--surface-2)}.dark .accounting-page .accounting-scroll thead th{background:#173d4d;color:#b8dce9}.dark .accounting-page .accounting-view-tabs button.active{background:#1a465b;color:#bfe2ef}
.accounting-journal-panel thead th:nth-child(6){background:#e6f2f8;color:#0b6b96;font-weight:900}.accounting-journal-panel thead th:nth-child(7){background:#fff0dc;color:#bd6d00;font-weight:900}.accounting-journal-panel thead th:nth-child(8){background:#e7f5ed;color:#168553;font-weight:900}.accounting-journal-panel tbody td:nth-child(6){color:#0b6b96;font-weight:900;background:rgba(11,107,150,.035)}.accounting-journal-panel tbody td:nth-child(7){color:#bd6d00;font-weight:900;background:rgba(255,153,23,.045)}.accounting-journal-panel tbody td:nth-child(8){font-weight:900;background:rgba(22,133,83,.035)}.dark .accounting-journal-panel thead th:nth-child(6),.dark .accounting-journal-panel tbody td:nth-child(6){background:#173d4d;color:#86d5ef}.dark .accounting-journal-panel thead th:nth-child(7),.dark .accounting-journal-panel tbody td:nth-child(7){background:#49371f;color:#ffc167}.dark .accounting-journal-panel thead th:nth-child(8),.dark .accounting-journal-panel tbody td:nth-child(8){background:#183d31;color:#83dfb1}
.accounting-view-tabs{display:flex;gap:5px;padding:5px;border:1px solid var(--border);border-radius:11px;background:var(--surface);align-self:flex-start}.accounting-view-tabs button{border:0;border-radius:8px;padding:9px 14px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;cursor:pointer}.accounting-view-tabs button.active{background:#eaf2f6;color:#0b527d}.product-view-switcher{display:flex;gap:3px;margin-left:auto;padding:3px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.product-view-switcher button{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.product-view-switcher button.active{background:var(--surface);color:#0b527d;box-shadow:0 2px 7px rgba(20,50,70,.1)}.product-view-switcher svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.product-catalog.grid-view{border:0;background:transparent;box-shadow:none;overflow:visible}.product-catalog.grid-view .table-wrap{overflow:visible}.product-catalog.grid-view table,.product-catalog.grid-view tbody{display:block}.product-catalog.grid-view thead{display:none}.product-catalog.grid-view tbody{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:13px;padding-top:14px}.product-catalog.grid-view tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 3px 12px rgba(25,50,66,.04);white-space:normal}.product-catalog.grid-view tbody tr:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(25,50,66,.08)}.product-catalog.grid-view tbody td{display:block;height:auto;padding:0;border:0;font-size:10px}.product-catalog.grid-view tbody td:first-child{grid-column:1/-1;padding-bottom:10px;border-bottom:1px solid var(--border)}.product-catalog.grid-view tbody td:nth-child(2):before{content:'Catégorie';display:block;color:var(--muted);font-size:8px}.product-catalog.grid-view tbody td:nth-child(3):before{content:'Prix de vente';display:block;color:var(--muted);font-size:8px}.product-catalog.grid-view tbody td:nth-child(4):before{content:'Stock';display:block;color:var(--muted);font-size:8px}.product-catalog.grid-view tbody td:nth-child(5):before{content:'Seuil';display:block;color:var(--muted);font-size:8px}.product-catalog.grid-view tbody td:nth-child(6){display:flex;align-items:center}.product-catalog.grid-view tbody td:last-child{grid-column:1/-1;padding-top:10px;border-top:1px solid var(--border)}.product-catalog.grid-view .product-row-actions{justify-content:flex-start}.product-catalog.grid-view tbody tr:has(.empty){grid-column:1/-1;display:block}.dark .accounting-view-tabs button.active,.dark .product-view-switcher button.active{background:#1a465b;color:#bfe2ef}@media(max-width:1050px){.product-catalog.grid-view tbody{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media(max-width:650px){.product-catalog.grid-view tbody{grid-template-columns:1fr}.product-view-switcher{margin-left:0}}

/* Logo de la barre latérale : variante compacte sans recadrage. */
.sidebar .brand.brand-logo,.sidebar .brand-logo-surface,.sidebar .brand-logo-surface img{transition:width .22s ease,height .22s ease,padding .22s ease,transform .22s ease,border-radius .22s ease}
body.sidebar-collapsed .brand.brand-logo{width:100%;align-items:center;gap:0;padding:0 0 16px}
body.sidebar-collapsed .brand-logo-surface{display:grid;width:50px;height:50px;flex:0 0 50px;place-items:center;padding:4px;overflow:hidden;border-radius:13px;background:#fff}
body.sidebar-collapsed .brand-logo-surface img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:none}
body.sidebar-collapsed .brand.brand-logo>small{display:none}
@media(max-width:800px){body.sidebar-collapsed .brand.brand-logo{align-items:stretch;gap:3px;padding:0 3px 14px}body.sidebar-collapsed .brand-logo-surface{display:block;width:auto;height:118px;flex:auto;padding:0;border-radius:10px}body.sidebar-collapsed .brand-logo-surface img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none}body.sidebar-collapsed .brand.brand-logo>small{display:block}}

/* Impression des inventaires de stock. */
.stock-page-actions{display:flex;align-items:center;gap:9px}.stock-inventory-print-modal{width:min(600px,95vw)}.stock-inventory-scope{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.stock-inventory-scope label{position:relative;cursor:pointer}.stock-inventory-scope input{position:absolute;opacity:0;pointer-events:none}.stock-inventory-scope label>span{display:grid;grid-template-columns:42px 1fr;align-items:center;column-gap:11px;min-height:83px;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.stock-inventory-scope label>span>b{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#eaf2f6;color:#0b527d;font-size:20px}.stock-inventory-scope strong,.stock-inventory-scope small{display:block}.stock-inventory-scope small{color:var(--muted);font-size:9px}.stock-inventory-scope input:checked+span{border-color:#0b6b96;background:#eef7fb;box-shadow:0 0 0 2px rgba(11,107,150,.08)}.stock-inventory-scope input:checked+span>b{background:#0b6b96;color:#fff}.stock-inventory-warehouse-field{display:block;margin:0 0 16px}.stock-inventory-warehouse-field select{margin-top:7px}.stock-inventory-warehouse-field[hidden]{display:none}.dark .stock-inventory-scope input:checked+span{background:#1a465b}.dark .stock-inventory-scope label>span>b{background:#1a465b;color:#bfe2ef}@media(max-width:650px){.stock-page-actions{width:100%;align-items:stretch;flex-direction:column}.stock-page-actions .btn{width:100%}.stock-inventory-scope{grid-template-columns:1fr}}

/* Rapports et analyse de performance. */
.reports-page{display:flex;flex-direction:column;gap:16px}.reports-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 23px;border:1px solid #cfe3ec;border-left:4px solid #0b6b96;border-radius:15px;background:linear-gradient(135deg,var(--surface),#f3f8fa);box-shadow:var(--shadow)}.reports-hero h2,.reports-hero p{margin-bottom:0}.reports-hero h2{font-size:25px}.reports-hero>div>p:last-child{margin-top:4px;color:var(--muted)}.reports-hero-actions svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.reports-filter{display:grid;grid-template-columns:minmax(210px,1fr) 145px 145px auto auto;align-items:end;gap:10px;padding:13px 16px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.reports-filter>div small,.reports-filter>div b{display:block}.reports-filter>div small{color:var(--muted);font-size:8px}.reports-filter>div b{margin-top:2px;font-size:12px}.reports-filter label{font-size:9px}.reports-filter input{height:40px;margin-top:4px}.reports-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.reports-kpis article{display:flex;align-items:center;gap:12px;min-height:100px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 3px 12px rgba(25,50,66,.04)}.report-kpi-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:11px;background:#eaf2f6;color:#0b527d;font-size:18px;font-weight:800}.reports-kpis .purchases .report-kpi-icon{background:#fff1dc;color:#bd710d}.reports-kpis .margin .report-kpi-icon{background:#e7f6ed;color:#168244}.reports-kpis .receivable .report-kpi-icon{background:#ffeaed;color:#c94353}.reports-kpis small,.reports-kpis b,.reports-kpis em{display:block}.reports-kpis small{color:var(--muted);font-size:8px}.reports-kpis b{margin:3px 0;font-size:17px}.reports-kpis em{color:#8e9aa1;font-size:7.5px;font-style:normal}.reports-main-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(275px,.75fr);gap:16px}.report-trend-panel,.report-health-panel{overflow:hidden}.report-legend{display:flex;gap:14px;color:var(--muted);font-size:8px;font-weight:700}.report-legend span:before{content:'';display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:3px;vertical-align:-1px}.report-legend .sales:before{background:#0b6b96}.report-legend .purchases:before{background:#ff9917}.report-comparison-chart{height:265px;display:flex;align-items:flex-end;gap:9px;padding:18px 22px 10px;border-top:1px solid var(--border);background:linear-gradient(180deg,var(--surface-2),var(--surface))}.report-month{height:100%;min-width:30px;flex:1;display:flex;align-items:center;flex-direction:column;gap:7px}.report-bars{height:220px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px}.report-bars i{width:min(18px,40%);min-height:3px;border-radius:5px 5px 1px 1px}.report-bars .sales{background:linear-gradient(#3fa3c7,#0b6b96)}.report-bars .purchases{background:linear-gradient(#ffb34c,#ed8700)}.report-month small{font-size:8px;color:var(--muted);white-space:nowrap}.report-chart-summary{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border)}.report-chart-summary span{padding:12px 16px}.report-chart-summary span+span{border-left:1px solid var(--border)}.report-chart-summary small,.report-chart-summary b{display:block}.report-chart-summary small{color:var(--muted);font-size:8px}.report-chart-summary b{font-size:12px}.collection-gauge{width:142px;height:142px;margin:5px auto 16px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#0b6b96 calc(var(--rate)*1%),#e8eff2 0)}.collection-gauge:before{content:'';grid-area:1/1;width:108px;height:108px;border-radius:50%;background:var(--surface)}.collection-gauge>div{grid-area:1/1;z-index:1;text-align:center}.collection-gauge b,.collection-gauge small{display:block}.collection-gauge b{font-size:22px;color:#0b527d}.collection-gauge small{color:var(--muted);font-size:8px}.collection-details{padding:0 18px 15px}.collection-details p{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;padding:9px 0;border-top:1px solid var(--border);font-size:10px}.collection-details span{color:var(--muted)}.reports-ranking-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.report-ranking{padding:0 18px 13px}.report-ranking article{display:flex;align-items:center;gap:10px;min-height:55px;border-top:1px solid var(--border)}.rank-number{width:27px;height:27px;flex:0 0 27px;display:grid;place-items:center;border-radius:8px;background:#eaf2f6;color:#0b527d;font-size:9px;font-weight:800}.report-ranking article>div{min-width:0;flex:1}.report-ranking b,.report-ranking small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-ranking b{font-size:10px}.report-ranking small{color:var(--muted);font-size:8px}.report-ranking strong{font-size:10px;white-space:nowrap}.dark .reports-hero{background:linear-gradient(135deg,var(--surface),var(--surface-2));border-color:#315464}.dark .collection-gauge{background:conic-gradient(#51b9d7 calc(var(--rate)*1%),#234452 0)}.dark .collection-gauge b{color:#9edff0}@media(max-width:1050px){.reports-kpis{grid-template-columns:repeat(2,1fr)}.reports-filter{grid-template-columns:1fr 1fr}.reports-filter>div{grid-column:1/-1}.reports-main-grid{grid-template-columns:1fr}.reports-ranking-grid{grid-template-columns:1fr}}@media(max-width:600px){.reports-hero{align-items:stretch;flex-direction:column}.reports-hero-actions .btn{width:100%}.reports-filter,.reports-kpis{grid-template-columns:1fr}.reports-filter>div{grid-column:auto}.report-comparison-chart{overflow-x:auto}.report-month{min-width:42px}.report-chart-summary{grid-template-columns:1fr}.report-chart-summary span+span{border-left:0;border-top:1px solid var(--border)}}@media print{body:has(.reports-page){background:#fff}.reports-page .reports-hero-actions,.reports-page .reports-filter{display:none!important}.reports-page{gap:4mm}.reports-hero,.reports-kpis article,.reports-page .panel{box-shadow:none}.reports-hero{padding:4mm}.reports-kpis{grid-template-columns:repeat(4,1fr);gap:2mm}.reports-kpis article{min-height:24mm;padding:3mm}.reports-kpis b{font-size:11px}.reports-main-grid{grid-template-columns:2fr .8fr;gap:3mm}.report-comparison-chart{height:80mm}.report-bars{height:65mm}.reports-ranking-grid{grid-template-columns:1fr 1fr;gap:3mm}.report-ranking article{min-height:10mm}.sidebar,.topbar,.main>footer{display:none!important}.main{margin:0!important;width:100%!important}.content{padding:0!important}@page{size:A4 landscape;margin:8mm}}
.reports-page .reports-hero{position:relative;overflow:hidden;min-height:112px;padding:22px 25px;border:0;border-radius:16px;background:linear-gradient(120deg,#07517c 0%,#0b6f9f 58%,#1598bb 100%);color:#fff;box-shadow:0 13px 30px rgba(5,73,111,.2)}.reports-page .reports-hero:before,.reports-page .reports-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.reports-page .reports-hero:before{width:190px;height:190px;right:18%;top:-126px;background:rgba(255,255,255,.09)}.reports-page .reports-hero:after{width:135px;height:135px;right:-38px;bottom:-84px;background:rgba(255,255,255,.1)}.reports-page .reports-hero>div,.reports-page .reports-hero-actions{position:relative;z-index:1}.reports-page .reports-hero .eyebrow{color:#aee1f1}.reports-page .reports-hero h2{color:#fff}.reports-page .reports-hero>div>p:last-child{color:#d5edf5}.reports-page .reports-hero-actions .btn{border-color:rgba(255,255,255,.42);background:#fff;color:#07517c;box-shadow:0 8px 20px rgba(3,47,72,.2)}.reports-page .reports-hero-actions .btn:hover{background:#eef9fc;box-shadow:0 11px 24px rgba(3,47,72,.26)}.dark .reports-page .reports-hero{background:linear-gradient(120deg,#073c5c,#095c83 58%,#0d7895);border:0}
.sales-page-head.purchase-page-head{position:relative;overflow:hidden;min-height:112px;padding:22px 25px;border:0;border-radius:16px;background:linear-gradient(120deg,#07517c 0%,#0b6f9f 58%,#1598bb 100%);color:#fff;box-shadow:0 13px 30px rgba(5,73,111,.2)}.sales-page-head.purchase-page-head:before,.sales-page-head.purchase-page-head:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.sales-page-head.purchase-page-head:before{width:190px;height:190px;right:18%;top:-126px;background:rgba(255,255,255,.09)}.sales-page-head.purchase-page-head:after{width:135px;height:135px;right:-38px;bottom:-84px;background:rgba(255,255,255,.1)}.purchase-page-head>div,.purchase-page-head>.btn{position:relative;z-index:1}.purchase-page-head .eyebrow{color:#aee1f1}.purchase-page-head h2{color:#fff}.purchase-page-head>div>p:last-child{color:#d5edf5}.purchase-page-head .btn.primary{border-color:rgba(255,255,255,.42);background:#fff;color:#07517c;box-shadow:0 8px 20px rgba(3,47,72,.2)}.purchase-page-head .btn.primary:hover{background:#eef9fc;box-shadow:0 11px 24px rgba(3,47,72,.26)}.dark .sales-page-head.purchase-page-head{background:linear-gradient(120deg,#073c5c,#095c83 58%,#0d7895)}
:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head){position:relative;overflow:hidden;min-height:112px;padding:22px 25px;border:0!important;border-radius:16px;background:linear-gradient(120deg,#07517c 0%,#0b6f9f 58%,#1598bb 100%)!important;color:#fff;box-shadow:0 13px 30px rgba(5,73,111,.2)}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head):before,:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head):after{content:"";position:absolute;border-radius:50%;pointer-events:none}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head):before{width:190px;height:190px;right:18%;top:-126px;background:rgba(255,255,255,.09)}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head):after{width:135px;height:135px;right:-38px;bottom:-84px;background:rgba(255,255,255,.1)}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head)>*{position:relative;z-index:1}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head) .eyebrow{color:#aee1f1}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head) h2{color:#fff}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head) p,:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head) span{color:#d5edf5}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head) .btn{border-color:rgba(255,255,255,.42);background:#fff;color:#07517c;box-shadow:0 8px 20px rgba(3,47,72,.2)}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head) .btn:hover{background:#eef9fc;color:#07517c}.product-detail-head .product-icon,.party-detail-hero .avatar{background:#fff;color:#0b6b96}.cash-page-head .cash-page-state{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.14);color:#fff}.cash-page-head .cash-page-state i{background:#7ce8b1}.dark :is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head){background:linear-gradient(120deg,#073c5c,#095c83 58%,#0d7895)!important}@media(max-width:700px){:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head){align-items:stretch;flex-direction:column}:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head) .btn{width:100%}}

/* Les onglets Journal et Balance occupent toute la hauteur utile. */
.accounting-journal-panel,.accounting-balance-panel{display:flex;flex-direction:column;height:var(--accounting-panel-height,520px);min-height:220px}
.accounting-journal-panel[hidden],.accounting-balance-panel[hidden]{display:none!important}
.accounting-journal-panel .accounting-scroll,.accounting-balance-panel .accounting-scroll{flex:1;min-height:0;max-height:none;overflow:auto}
.accounting-balance-panel .accounting-scroll tfoot{position:sticky;bottom:0;z-index:2}
@media(max-width:800px){.accounting-journal-panel,.accounting-balance-panel{min-height:280px;max-height:none}}
.finance-operation-form [data-finance-beneficiary][hidden],.finance-operation-form:has(select[name="type"] option[value="income"]:checked) [data-finance-beneficiary]{display:none!important}
.accounting-balance-panel thead th:nth-child(5){background:#e6f2f8;color:#0b6b96;font-weight:900}.accounting-balance-panel thead th:nth-child(6){background:#fff0dc;color:#bd6d00;font-weight:900}.accounting-balance-panel tbody td:nth-child(5){color:#0b6b96;font-weight:900;background:rgba(11,107,150,.035)}.accounting-balance-panel tbody td:nth-child(6){color:#bd6d00;font-weight:900;background:rgba(255,153,23,.045)}.dark .accounting-balance-panel thead th:nth-child(5),.dark .accounting-balance-panel tbody td:nth-child(5){background:#173d4d;color:#86d5ef}.dark .accounting-balance-panel thead th:nth-child(6),.dark .accounting-balance-panel tbody td:nth-child(6){background:#49371f;color:#ffc167}
.treasury-page{display:flex;flex-direction:column;gap:16px}.treasury-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border:1px solid #cfe3ec;border-left:4px solid #0b6b96;border-radius:15px;background:linear-gradient(135deg,var(--surface),#f4f8fa)}.treasury-hero h2,.treasury-hero p{margin-bottom:0}.treasury-hero span{color:var(--muted);font-size:10px}.treasury-hero-actions{display:flex;gap:8px}.treasury-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.treasury-kpis article{padding:15px 17px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.treasury-kpis small,.treasury-kpis b,.treasury-kpis em{display:block}.treasury-kpis small{color:var(--muted);font-size:9px}.treasury-kpis b{margin:4px 0;font-size:18px}.treasury-kpis em{color:#94a0a7;font-size:8px;font-style:normal}.treasury-tabs{display:flex;gap:5px;padding:5px;border:1px solid var(--border);border-radius:11px;background:var(--surface);align-self:flex-start}.treasury-tabs button{border:0;border-radius:8px;padding:9px 14px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;cursor:pointer}.treasury-tabs button.active{background:#eaf2f6;color:#0b527d}.treasury-panel[hidden]{display:none!important}.treasury-panel.panel{display:flex;flex-direction:column;height:clamp(400px,calc(100vh - 360px),680px);overflow:hidden}.treasury-scroll{flex:1;min-height:0;overflow:auto}.treasury-scroll thead th{position:sticky;top:0;z-index:2}.treasury-status{display:inline-flex;padding:4px 8px;border-radius:20px;background:#edf1f3;color:#667780;font-size:8px;font-weight:800}.treasury-status.cleared{background:#e5f7ed;color:#16894a}.treasury-status.rejected,.treasury-status.cancelled{background:#ffe9ec;color:#d94b5c}.treasury-status.deposited{background:#e8f2ff;color:#3271c7}.cheque-status-form select{width:125px;height:32px;margin:0;padding:0 25px 0 8px;font-size:8px}.vault-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:15px}.vault-card{display:flex;align-items:center;gap:14px;min-height:150px;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.vault-card>span{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#eaf2f6;color:#0b527d;font-size:22px}.vault-card small,.vault-card b,.vault-card em{display:block}.vault-card small{color:var(--muted);font-size:8px}.vault-card h3{margin:3px 0}.vault-card b{font-size:22px;color:#0b527d}.vault-card em{margin-top:4px;color:#16894a;font-size:8px;font-style:normal}.dark .treasury-hero{background:linear-gradient(135deg,var(--surface),var(--surface-2));border-color:#315464}.dark .treasury-tabs button.active,.dark .vault-card>span{background:#1a465b;color:#bfe2ef}@media(max-width:900px){.treasury-kpis{grid-template-columns:1fr 1fr}.treasury-tabs{width:100%;overflow:auto}.treasury-tabs button{white-space:nowrap}}@media(max-width:600px){.treasury-hero{align-items:stretch;flex-direction:column}.treasury-hero-actions{flex-direction:column}.treasury-kpis{grid-template-columns:1fr}.treasury-panel.panel{height:520px}}

/* Sidebar bleue organisée par groupes */
.sidebar{padding:18px 13px 16px;background:linear-gradient(180deg,#073b5b 0%,#0b527d 52%,#073c5d 100%);color:#d7e8f1;border-right:0;box-shadow:10px 0 32px rgba(5,49,75,.2)}
.sidebar .brand.brand-logo{padding:0 7px 18px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:12px}.sidebar .brand-logo-surface,body.sidebar-collapsed .sidebar .brand-logo-surface{background:transparent;border:0;box-shadow:none}.sidebar .brand-logo-surface img,body.sidebar-collapsed .sidebar .brand-logo-surface img{filter:brightness(0) invert(1);clip-path:none;transform:none}.sidebar .brand.brand-logo>small{color:#c6dfeb;font-size:8px;letter-spacing:1.15px}
.sidebar nav{display:flex;flex-direction:column;align-items:stretch;gap:13px;padding:1px 3px 10px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}.sidebar-nav-group{display:flex;flex-direction:column;gap:3px}.sidebar-group-label{margin:0 9px 4px;color:#8eb8cb;font-size:7px;font-weight:800;letter-spacing:1.25px;text-transform:uppercase;white-space:nowrap}
.sidebar .nav-link{min-height:39px;padding:0 11px;border:1px solid transparent;border-radius:9px;color:#d1e3ec;font-size:11px;font-weight:650;gap:10px}.sidebar .nav-link:hover{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.06)}.sidebar .nav-link.active{background:#fff;color:#0b527d;border-color:#fff;box-shadow:0 8px 20px rgba(3,35,54,.2)}
.sidebar .nav-icon{width:21px;height:21px;color:#84c9e4}.sidebar .nav-link.active .nav-icon{color:#0b527d}.sidebar .nav-icon:before{font-size:16px}.nav-icon[data-icon="grid"]:before{content:'▦'}.nav-icon[data-icon="box"]:before{content:'□'}.nav-icon[data-icon="users"]:before{content:'♙'}.nav-icon[data-icon="truck"]:before{content:'⇄'}
.sidebar .nav-dot{background:#ff9917;box-shadow:0 0 0 3px rgba(255,153,23,.16)}.sidebar .sidebar-footer{border-top-color:rgba(255,255,255,.13);padding-top:14px}.sidebar .org-chip b{color:#fff}.sidebar .org-chip small{color:#9fc3d3}.sidebar .avatar{background:#ff9917;color:#173642}.sidebar .sidebar-collapse{background:#fff;border-color:#dcebf2;color:#0b527d;box-shadow:0 6px 18px rgba(3,42,63,.22)}.sidebar .sidebar-collapse:hover{background:#eaf5fa;color:#073f61}
.dark .sidebar{background:linear-gradient(180deg,#062f49,#0a456a 55%,#062d45);color:#d8eaf2;border-right:0}.dark .sidebar .nav-link{color:#c7dde7}.dark .sidebar .nav-link:hover{background:rgba(255,255,255,.09);color:#fff}.dark .sidebar .nav-link.active{background:#eaf7fc;color:#083f61}.dark .sidebar-group-label{color:#80adbf}.dark .sidebar .sidebar-footer{border-top-color:rgba(255,255,255,.13)}
body.sidebar-collapsed .sidebar-nav-group{width:100%;align-items:center}body.sidebar-collapsed .sidebar-group-label{display:none}body.sidebar-collapsed .sidebar nav{gap:8px;padding-left:0;padding-right:0}body.sidebar-collapsed .sidebar .nav-link{width:48px;padding:0;justify-content:center}body.sidebar-collapsed .sidebar .nav-link.active{box-shadow:0 6px 16px rgba(3,35,54,.22)}
@media(max-width:800px){.sidebar{padding:20px 16px}.sidebar-nav-group{align-items:stretch!important}.sidebar-group-label{display:block!important}.sidebar .nav-link,body.sidebar-collapsed .sidebar .nav-link{width:auto;padding:0 13px;justify-content:flex-start}.sidebar nav,body.sidebar-collapsed .sidebar nav{gap:13px}}
.sidebar-nav-group{gap:0}.sidebar-group-toggle{width:100%;min-height:29px;padding:0 8px;border:0;border-radius:7px;background:transparent;color:#9fc3d3;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:7px;font-weight:850;letter-spacing:1.15px;text-transform:uppercase;cursor:pointer}.sidebar-group-toggle:hover{background:rgba(255,255,255,.07);color:#fff}.sidebar-group-toggle svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .2s ease}.sidebar-nav-group.open .sidebar-group-toggle svg{transform:rotate(180deg)}.sidebar-group-links{display:none;flex-direction:column;gap:3px;padding-top:3px}.sidebar-nav-group.open .sidebar-group-links{display:flex}.dark .sidebar-group-toggle{color:#8db8c9}body.sidebar-collapsed .sidebar-group-toggle{display:none}body.sidebar-collapsed .sidebar-group-links{display:flex!important;padding-top:0}body.sidebar-collapsed .sidebar-nav-group{gap:3px}@media(max-width:800px){body.sidebar-collapsed .sidebar-group-toggle,.sidebar-group-toggle{display:flex}.sidebar-group-links{width:100%}}

/* Couleur de la barre selon le règlement */
.payment-progress.payment-progress-unpaid i{background:linear-gradient(90deg,#e34d59,#c92e3d)!important}.payment-progress.payment-progress-partial i{background:linear-gradient(90deg,#ffad35,#ed8500)!important}.payment-progress.payment-progress-complete i{background:linear-gradient(90deg,#26a65b,#178340)!important}

.cash-method-card[role=button]{cursor:pointer;transition:border-color .15s,box-shadow .15s}.cash-method-card[role=button]:hover,.cash-method-card[role=button]:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px rgba(11,82,125,.10);outline:none}

.party-search-tools{display:flex;align-items:center;gap:8px}.party-search-tools .search{display:flex;min-width:280px}.party-search-tools .search input{min-width:0;flex:1;border:0;outline:0;background:transparent;box-shadow:none}.party-search-tools .search button{width:24px;height:24px;flex:0 0 24px;border:0;border-radius:7px;background:var(--surface-2);color:var(--muted);cursor:pointer;font-size:16px;line-height:1}.party-search-tools select{min-height:41px;min-width:175px;border:1px solid var(--border);border-radius:11px;background:var(--surface);padding:0 10px;color:var(--text);font-size:11px}.party-search-tools .search button:hover{background:var(--border);color:var(--text)}@media(max-width:1100px){.party-search-tools{width:100%}.party-search-tools .search{min-width:0;flex:1}}@media(max-width:650px){.party-search-tools{align-items:stretch;flex-direction:column}.party-search-tools select{width:100%}}

.party-directory .search input{min-width:0;flex:1;border:0;outline:0;background:transparent;box-shadow:none}.party-directory .search button[data-party-search-clear]{width:24px;height:24px;flex:0 0 24px;border:0;border-radius:7px;background:var(--surface-2);color:var(--muted);cursor:pointer;font-size:16px;line-height:1}.party-directory .search button[data-party-search-clear]:hover{background:var(--border);color:var(--text)}

/* Sidebar légère avec le logo original */
.sidebar{background:#fff;color:#294353;border-right:1px solid #e3ebef;box-shadow:4px 0 22px rgba(20,55,75,.06)}.sidebar .brand.brand-logo{border-bottom-color:#e6edf1}.sidebar .brand-logo-surface,body.sidebar-collapsed .sidebar .brand-logo-surface{background:#fff;border:0;box-shadow:none}.sidebar .brand-logo-surface img,body.sidebar-collapsed .sidebar .brand-logo-surface img{filter:none}.sidebar .brand.brand-logo>small{color:#8293a0}.sidebar .nav-link{color:#557081}.sidebar .nav-link:hover{background:#eff6f9;color:#0b527d}.sidebar .nav-link.active{background:#e8f2f7;color:#0b527d;border-color:#dce9ef;box-shadow:none}.sidebar .nav-icon{color:#7698a9}.sidebar .nav-link.active .nav-icon{color:#0b527d}.sidebar .sidebar-group-toggle{color:#8298a5}.sidebar .sidebar-group-toggle:hover{background:#f1f5f7;color:#0b527d}.sidebar .sidebar-footer{border-top-color:#e4ebef}.sidebar .org-chip b{color:#234354}.sidebar .org-chip small{color:#78909d}.sidebar .sidebar-collapse{border-color:#dce7ed;color:#0b527d;box-shadow:0 4px 12px rgba(20,55,75,.12)}.dark .sidebar{background:#132b36;border-right-color:#294551}.dark .sidebar .brand-logo-surface,body.sidebar-collapsed .dark .sidebar .brand-logo-surface{background:#fff}.dark .sidebar .brand.brand-logo>small{color:#97b8c6}.dark .sidebar .nav-link{color:#bed2da}.dark .sidebar .nav-link.active{background:#254957;color:#effbff;border-color:#315a68}.dark .sidebar .nav-link.active .nav-icon{color:#effbff}.dark .sidebar .sidebar-footer{border-top-color:#294551}.dark .sidebar .org-chip b{color:#edf8fc}

.role-toolbar{align-items:center}.role-toolbar .product-filter-group{flex:0 0 auto}.role-toolbar label{font-size:10px;font-weight:800}.role-toolbar select{min-height:40px;border:1px solid var(--border);border-radius:9px;background:var(--surface);padding:0 12px}.permission-matrix th,.permission-matrix td{text-align:center}.permission-matrix th:first-child,.permission-matrix td:first-child{text-align:left;min-width:180px}.permission-matrix td{padding:8px}.permission-check{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.permission-check input{position:absolute;opacity:0;width:1px;height:1px}.permission-check span{width:17px;height:17px;border:1px solid var(--border);border-radius:5px;background:var(--surface);display:grid;place-items:center}.permission-check input:checked+span{background:#0b527d;border-color:#0b527d}.permission-check input:checked+span:after{content:'✓';color:#fff;font-size:11px;font-weight:900}.permission-check input:focus-visible+span{outline:3px solid #9fd0e2}.role-save{justify-content:flex-end;padding:15px}.subscription-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;padding:20px 24px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.subscription-hero h3{margin:4px 0 9px;font-size:20px}.subscription-hero>div:not(:first-child) small,.subscription-hero>div:not(:first-child) b{display:block}.subscription-hero>div:not(:first-child) small{color:var(--muted);font-size:9px}.subscription-hero>div:not(:first-child) b{margin-top:4px;font-size:12px}.subscription-usage{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:17px}.subscription-usage article{padding:15px;background:var(--surface);border:1px solid var(--border);border-radius:13px}.subscription-usage small,.subscription-usage b{display:block}.subscription-usage small{color:var(--muted);font-size:9px}.subscription-usage b{margin:6px 0;font-size:19px}.subscription-usage b span{color:var(--muted);font-size:11px}.subscription-usage article>div{height:5px;overflow:hidden;border-radius:6px;background:var(--surface-2)}.subscription-usage article i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#176f9a,#0b527d)}.subscription-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:13px}.subscription-plan-grid article{padding:20px}.subscription-plan-grid article.current{border-color:#0b527d;box-shadow:0 0 0 2px rgba(11,82,125,.09)}.subscription-plan-grid h3{font-size:17px}.subscription-price{margin:8px 0;color:#0b527d;font-weight:800}.subscription-plan-grid ul{padding-left:17px;color:var(--muted);font-size:11px;line-height:2}.subscription-note{margin-top:12px;font-size:10px}.dark .permission-check span{background:#18333d}.dark .permission-check input:checked+span{background:#176f9a}.dark .subscription-price{color:#86cce1}@media(max-width:650px){.subscription-hero{align-items:flex-start;flex-direction:column}.subscription-usage{grid-template-columns:1fr}.permission-matrix th:first-child,.permission-matrix td:first-child{min-width:130px}}

body.sidebar-collapsed .sidebar .brand-logo-surface{width:52px;height:52px;background:#fff}body.sidebar-collapsed .sidebar .brand-logo-surface img{width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;transform:none}

/* Administration · rôles et permissions */
.roles-page{display:grid;gap:16px}.roles-hero{position:relative;display:flex;align-items:center;gap:16px;min-height:122px;padding:23px 26px;overflow:hidden;border-radius:17px;background:linear-gradient(115deg,#084c70,#0b6b91 68%,#1787a5);color:#fff;box-shadow:0 13px 28px rgba(8,76,112,.14)}.roles-hero:after{content:"";position:absolute;width:210px;height:210px;right:7%;top:-133px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 25px rgba(255,255,255,.035),0 0 0 51px rgba(255,255,255,.025)}.roles-hero-icon{z-index:1;display:grid;width:52px;height:52px;flex:0 0 52px;place-items:center;border:1px solid rgba(255,255,255,.23);border-radius:15px;background:rgba(255,255,255,.12)}.roles-hero-icon svg{width:27px;height:27px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.roles-hero-copy{z-index:1}.roles-hero .eyebrow{color:#b9dce9}.roles-hero h2{margin:0 0 5px;color:#fff;font-size:23px}.roles-hero-copy>p:last-child{margin:0;color:#e0f0f5;font-size:11px}.roles-hero-badge{z-index:1;display:flex;align-items:center;gap:7px;margin-left:auto;padding:8px 11px;border:1px solid rgba(255,255,255,.24);border-radius:20px;background:rgba(255,255,255,.1);font-size:9px;font-weight:750;white-space:nowrap}.roles-live-dot{width:7px;height:7px;border-radius:50%;background:#7be0b0;box-shadow:0 0 0 4px rgba(123,224,176,.14)}
.roles-profile-panel{padding:19px 20px}.roles-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.roles-section-heading h3{margin:2px 0 0;font-size:15px}.roles-count{padding:5px 9px;border-radius:20px;background:#edf5f8;color:#42687a;font-size:9px;font-weight:750}.roles-profile-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.roles-profile-card{display:flex;align-items:center;gap:10px;min-width:0;padding:11px;border:1px solid var(--border);border-radius:11px;background:var(--surface);transition:border-color .16s,background .16s,box-shadow .16s}.roles-profile-card:hover{border-color:#a9ccd9;box-shadow:0 4px 13px rgba(8,76,112,.06)}.roles-profile-card.active{border-color:#0b668f;background:#f0f8fb;box-shadow:inset 0 0 0 1px rgba(11,102,143,.12)}.roles-profile-avatar{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:10px;background:#eaf2f6;color:#0b527d;font-size:13px;font-weight:850}.roles-profile-card.active .roles-profile-avatar{background:#0b668f;color:#fff}.roles-profile-copy{display:grid;min-width:0;gap:1px}.roles-profile-copy b{overflow:hidden;color:var(--text);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.roles-profile-copy small{overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.roles-profile-arrow{margin-left:auto;color:#9aabba;font-size:20px;line-height:1}.roles-profile-card.active .roles-profile-arrow{color:#0b668f}
.roles-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.roles-summary-card{display:flex;align-items:center;gap:11px;min-height:69px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 4px 14px rgba(20,54,70,.025)}.roles-summary-icon{display:grid;width:35px;height:35px;flex:0 0 35px;place-items:center;border-radius:10px}.roles-summary-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.roles-summary-icon.blue{background:#eaf3f8;color:#0b668f}.roles-summary-icon.orange{background:#fff2e2;color:#e88718}.roles-summary-icon.green{background:#e8f7ef;color:#198451}.roles-summary-card div{display:grid;gap:2px}.roles-summary-card small{color:var(--muted);font-size:8px}.roles-summary-card b{color:var(--text);font-size:13px}.roles-summary-card b em{color:#8795a0;font-size:10px;font-style:normal;font-weight:600}
.roles-editor{overflow:hidden;padding:0}.roles-editor-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:19px 21px 16px;border-bottom:1px solid var(--border)}.roles-editor-head h3{margin:2px 0 3px;font-size:15px}.roles-editor-head>div>p:last-child{margin:0;color:var(--muted);font-size:9px}.roles-search{display:flex;align-items:center;gap:8px;width:min(260px,40%);min-height:37px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.roles-search:focus-within{border-color:#61a2bc;box-shadow:0 0 0 3px rgba(11,102,143,.09)}.roles-search svg{width:15px;height:15px;flex:0 0 15px;fill:none;stroke:#8194a1;stroke-width:1.8;stroke-linecap:round}.roles-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:9px}.roles-search input::placeholder{color:#9aa8b1}.roles-admin-note{display:flex;align-items:flex-start;gap:9px;margin:14px 19px 6px;padding:10px 12px;border:1px solid #dceaf0;border-radius:9px;background:#f5fafc}.roles-admin-note>span{display:grid;width:17px;height:17px;flex:0 0 17px;place-items:center;border-radius:50%;background:#e0eef4;color:#0b668f;font-size:10px;font-weight:850}.roles-admin-note p{margin:0;color:#617b89;font-size:9px;line-height:1.55}.roles-admin-note b{color:#31596c}.roles-groups{display:grid;gap:10px;padding:10px 18px 18px}.roles-module-group{overflow:hidden;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.roles-module-group-head{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border-bottom:1px solid var(--border);background:var(--surface-2)}.roles-group-marker{width:4px;height:15px;border-radius:5px;background:#e88718}.roles-module-group-head h4{margin:0;color:#345365;font-size:9px;font-weight:850}.roles-module-group-head>span:last-child{margin-left:auto;color:#8798a1;font-size:8px}.roles-table-scroll{overflow-x:auto}.roles-table{width:100%;border-collapse:collapse}.roles-table thead th{height:32px;background:#fff;color:#7c8e99;font-size:8px;font-weight:750;text-align:center}.roles-table thead th:first-child{width:42%;padding-left:14px;text-align:left}.roles-table tbody tr{border-top:1px solid #edf1f3;transition:background .12s}.roles-table tbody tr:hover{background:#f8fbfc}.roles-table tbody th,.roles-table tbody td{height:38px;padding:5px 8px;text-align:center}.roles-table tbody th{display:flex;align-items:center;gap:8px;padding-left:13px;color:#314e5e;font-size:9px;font-weight:700;text-align:left}.roles-module-icon{display:grid;width:24px;height:24px;flex:0 0 24px;place-items:center;border-radius:7px;background:#eef5f8;color:#47758b}.roles-module-icon svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.6}.roles-table .permission-check{min-width:26px;min-height:26px}.roles-table .permission-check span{width:16px;height:16px;border-color:#c8d5dc;border-radius:5px;background:#fff}.roles-table .permission-check input:checked+span{border-color:#0b668f;background:#0b668f}.roles-table .permission-check input:focus-visible+span{outline:3px solid rgba(11,102,143,.22);outline-offset:2px}.roles-save-bar{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 19px;border-top:1px solid var(--border);background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.roles-save-bar>span{display:grid;gap:1px}.roles-save-bar>span b{color:#31596c;font-size:9px}.roles-save-bar>span small{color:var(--muted);font-size:8px}.roles-save-bar .btn{display:inline-flex;align-items:center;gap:8px;min-height:37px;padding:0 15px;border-radius:9px;background:#0b668f;box-shadow:0 6px 14px rgba(11,102,143,.16);font-size:9px}.roles-save-bar .btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dark .roles-profile-card,.dark .roles-summary-card,.dark .roles-module-group{background:var(--surface)}.dark .roles-profile-card.active{background:#153c4e;border-color:#3682a0}.dark .roles-profile-avatar,.dark .roles-module-icon{background:#203c49;color:#b9dce9}.dark .roles-profile-card.active .roles-profile-avatar{background:#176f94;color:#fff}.dark .roles-count{background:#1c3947;color:#a8c4d0}.dark .roles-module-group-head{background:#192f3a}.dark .roles-module-group-head h4,.dark .roles-table tbody th{color:#d5e7ee}.dark .roles-table thead th{background:#162a34;color:#a7c1cc}.dark .roles-table tbody tr{border-color:#253e49}.dark .roles-table tbody tr:hover{background:#1a333e}.dark .roles-admin-note{border-color:#294a59;background:#172f3a}.dark .roles-admin-note p{color:#b2cbd5}.dark .roles-admin-note b{color:#e0f0f5}.dark .roles-search{background:#172a34}.dark .roles-save-bar{border-color:#29414c;background:rgba(20,39,48,.96)}.dark .roles-save-bar>span b{color:#d4e7ee}
@media(max-width:850px){.roles-profile-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.roles-page{gap:11px}.roles-hero{align-items:flex-start;padding:17px;min-height:unset}.roles-hero-icon{width:42px;height:42px;flex-basis:42px}.roles-hero h2{font-size:18px}.roles-hero-copy>p:last-child{max-width:360px;font-size:9px}.roles-hero-badge{position:absolute;right:13px;bottom:12px;padding:6px 8px;font-size:8px}.roles-profile-panel{padding:14px}.roles-profile-list{grid-template-columns:1fr}.roles-summary-grid{grid-template-columns:1fr}.roles-summary-card{min-height:58px}.roles-editor-head{align-items:stretch;flex-direction:column;padding:15px}.roles-search{width:100%}.roles-admin-note{margin:11px 12px 4px}.roles-groups{gap:8px;padding:8px 10px 13px}.roles-table{min-width:540px}.roles-table thead th:first-child{width:220px}.roles-save-bar{padding:10px 12px}.roles-save-bar>span small{max-width:160px}.roles-save-bar .btn{padding:0 11px;font-size:8px}}
.roles-table tbody th{display:table-cell;vertical-align:middle}.roles-module-icon{display:inline-grid;vertical-align:middle;margin-right:8px}.roles-table .permission-not-applicable{color:#c1cbd1;font-size:11px}

/* Outils d’administration : imports et maintenance */
.import-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:15px}.import-card{display:flex;flex-direction:column;justify-content:space-between;gap:16px;padding:17px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.import-card-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:#edf4fb;color:#24598a;font-size:20px}.import-card h4{margin:10px 0 5px;font-size:14px}.import-card p,.maintenance-panel .panel-head p.muted{margin:0;color:var(--muted);font-size:11px;line-height:1.6}.import-card a{display:inline-block;margin-top:9px;color:#24598a;font-size:10px;font-weight:700}.import-card form{display:grid;gap:10px}.import-card form label,.maintenance-form label{display:grid;gap:6px;font-size:10px}.import-card input[type=file]{width:100%;min-height:36px;padding:7px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:10px}.import-note{padding:0 17px 14px;font-size:10px}.maintenance-panel{margin-top:17px;border-color:#f0dada}.maintenance-panel .panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.maintenance-badge{flex:0 0 auto;padding:5px 9px;border-radius:20px;background:#fff1f0;color:#b42318;font-size:9px;font-weight:800}.maintenance-body{padding:16px 18px}.maintenance-body>p{max-width:800px;color:#596575;font-size:11px;line-height:1.7}.maintenance-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;padding:14px;border:1px solid #f0dada;border-radius:10px;background:#fffafa}.maintenance-form input{min-height:38px}.maintenance-form .btn{min-height:38px}.dark .import-card,.dark .maintenance-form{background:#182832}.dark .import-card-icon{background:#203949;color:#b9daf2}.dark .maintenance-panel{border-color:#573b3b}.dark .maintenance-badge{background:#482c2c;color:#ffc4be}.dark .maintenance-body>p{color:#d0d7de}.dark .maintenance-form{border-color:#573b3b}
@media(max-width:980px){.import-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.import-card-grid{grid-template-columns:1fr;padding:11px}.maintenance-panel .panel-head{flex-direction:column}.maintenance-form{grid-template-columns:1fr}.maintenance-body{padding:12px}}

/* Gestion des catégories du catalogue */
.category-manager{margin-bottom:16px}.category-manager .panel-head{align-items:center}.category-manager .panel-head h3{margin:0 0 4px}.category-manager .panel-head p.muted{margin:0;font-size:10px}.category-chip-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:9px;padding:14px}.category-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:10px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.category-chip>span{min-width:0}.category-chip b,.category-chip small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-chip b{font-size:11px}.category-chip small{margin-top:2px;color:var(--muted);font-size:9px}.category-chip>div{display:flex;align-items:center;gap:5px;flex:0 0 auto}.category-chip form{margin:0}.category-chip .btn{min-height:28px;padding:0 8px;font-size:9px}.category-chip .btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.category-chip-list>.muted{padding:4px;font-size:11px}.dark .category-chip{background:#1b2937;border-color:#344657}
@media(max-width:600px){.category-manager .panel-head{align-items:flex-start;flex-direction:column}.category-chip-list{grid-template-columns:1fr;padding:10px}}
/* Catégories du catalogue sur une rangée défilante */
.category-chip-list{display:flex;flex-wrap:nowrap;gap:9px;overflow-x:auto;overflow-y:hidden;padding:12px 14px 15px;scrollbar-width:thin;scrollbar-color:#b6c4d1 transparent;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.category-chip{flex:0 0 auto;width:min(300px,78vw);min-width:220px}.category-chip-list::-webkit-scrollbar{height:6px}.category-chip-list::-webkit-scrollbar-thumb{border-radius:6px;background:#b6c4d1}.category-chip-list::-webkit-scrollbar-track{background:transparent}@media(max-width:600px){.category-chip-list{display:flex;flex-wrap:nowrap;padding:10px 11px 14px}.category-chip{width:260px;min-width:220px}}

/* Dashboard analytics charts */
.dashboard-graph-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.dashboard-wide{grid-column:1/-1}.dashboard-chart-panel{padding:18px;min-width:0}.dashboard-chart-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0 8px;color:var(--muted);font-size:12px}.dashboard-chart-legend span:before{content:'';display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;background:#498}.dashboard-chart-legend .sales:before{background:#0b6b96}.dashboard-chart-legend .receipts:before{background:#21a366}.dashboard-chart-legend .purchases:before{background:#f29b28}.dashboard-chart-legend .expenses:before{background:#db6070}.dashboard-bars{height:205px;display:flex;align-items:stretch;gap:8px;padding:16px 4px 0;border-bottom:1px solid var(--border);overflow-x:auto}.dashboard-bar-month{flex:1;min-width:35px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px}.dashboard-bar-set{height:100%;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px;border-bottom:0}.dashboard-bar-set i{display:block;width:min(15%,13px);min-height:2px;border-radius:4px 4px 0 0}.dashboard-bar-set .sales{background:#0b6b96}.dashboard-bar-set .receipts{background:#21a366}.dashboard-bar-set .purchases{background:#f29b28}.dashboard-bar-set .expenses{background:#db6070}.dashboard-bar-month small{color:var(--muted);font-size:10px}.dashboard-donut-wrap{display:flex;align-items:center;justify-content:space-evenly;gap:14px;padding:20px 0 12px}.dashboard-donut{width:132px;height:132px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#20a36a calc(var(--paid)*1%),#f1a141 0);position:relative}.dashboard-donut:before{content:'';position:absolute;inset:15px;border-radius:50%;background:var(--panel,#fff)}.dashboard-donut>div{position:relative;text-align:center}.dashboard-donut b,.dashboard-donut small{display:block}.dashboard-donut b{font-size:25px}.dashboard-donut small,.dashboard-chart-caption,.dashboard-catalog-ring small{font-size:11px;color:var(--muted)}.dashboard-chart-key p{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:8px;margin:9px 0}.dashboard-chart-key i{width:9px;height:9px;border-radius:50%}.dashboard-chart-key .paid{background:#20a36a}.dashboard-chart-key .unpaid{background:#f1a141}.dashboard-chart-caption{display:block;text-align:center}.dashboard-catalog-charts{display:flex;align-items:center;justify-content:space-around;gap:20px;flex-wrap:wrap;padding:25px 0}.dashboard-catalog-ring{--ring:#5467ef;width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--ring) calc(var(--catalog)*1%),#edf0f5 0);position:relative}.dashboard-catalog-ring:before{content:'';position:absolute;inset:12px;border-radius:50%;background:var(--panel,#fff)}.dashboard-catalog-ring>div{position:relative;text-align:center}.dashboard-catalog-ring b,.dashboard-catalog-ring small{display:block}.dashboard-catalog-ring b{font-size:23px}.dashboard-catalog-ring.customers{--ring:#21a366}.dashboard-catalog-ring.suppliers{--ring:#f29b28}.dashboard-stock-value{text-align:center;min-width:180px}.dashboard-stock-value span,.dashboard-stock-value b,.dashboard-stock-value small{display:block}.dashboard-stock-value span,.dashboard-stock-value small{color:var(--muted);font-size:11px}.dashboard-stock-value b{font-size:22px;margin:5px 0}.report-status-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px}.report-status-columns article{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:10px;background:#f7f9fb}.report-status-columns article>b{font-size:15px}.report-status-columns article>span{font-size:12px;color:var(--muted)}.kpis{grid-template-columns:repeat(6,1fr)!important}@media(max-width:900px){.dashboard-graph-grid{grid-template-columns:1fr}.dashboard-wide{grid-column:auto}.dashboard-bars{height:170px}.kpis{grid-template-columns:repeat(3,1fr)!important}}@media(max-width:600px){.dashboard-graph-grid{gap:12px}.dashboard-chart-panel{padding:13px}.report-status-columns{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)!important}}

/* Dashboard layout refinement */
.dashboard-welcome{padding:24px 28px;margin-bottom:20px;border:1px solid #e1eaf0;border-radius:18px;background:linear-gradient(115deg,#fff 0%,#f2f8fc 70%,#edf5fa 100%);box-shadow:0 8px 24px rgba(21,70,100,.045)}.dashboard-welcome h2{font-size:27px;letter-spacing:-.5px;color:#123f5d}.dashboard-graph-grid{gap:20px}.dashboard-chart-panel{padding:21px 23px;border-radius:16px;box-shadow:0 7px 24px rgba(21,70,100,.045)}.dashboard-chart-panel .panel-head{align-items:center;margin-bottom:4px}.dashboard-chart-panel .panel-head .eyebrow{color:#8799a7}.dashboard-chart-panel .panel-head h3{font-size:16px}.dashboard-chart-legend{gap:9px;margin:18px 0 10px}.dashboard-chart-legend span{padding:6px 10px;border:1px solid #e8eef2;border-radius:20px;background:#fbfdfe;font-size:11px}.dashboard-bars{height:235px;gap:12px;padding:16px 8px 0;border:0;border-radius:12px;background:repeating-linear-gradient(to top,transparent 0,transparent 47px,#edf2f5 48px,#edf2f5 49px);border-bottom:1px solid #dce6eb}.dashboard-bar-month{min-width:40px}.dashboard-bar-set{align-items:flex-end;gap:4px}.dashboard-bar-set i{width:min(14%,15px);min-width:4px;transition:filter .15s,transform .15s;transform-origin:bottom}.dashboard-bar-set i:hover{filter:brightness(.85);transform:scaleX(1.2)}.dashboard-bar-month small{font-weight:700;color:#81919b}.dashboard-donut-wrap{padding:24px 0 17px;justify-content:center;gap:35px}.dashboard-donut{width:144px;height:144px;filter:drop-shadow(0 7px 11px rgba(25,63,84,.08))}.dashboard-donut:before{inset:17px}.dashboard-chart-key{min-width:132px}.dashboard-chart-key p{margin:13px 0;font-size:13px}.dashboard-chart-key b{color:#173f5a}.dashboard-chart-caption{padding-top:11px;border-top:1px solid #edf1f4}.dashboard-catalog-charts{display:grid;grid-template-columns:minmax(260px,1fr) minmax(200px,.7fr);gap:42px;padding:25px 12px 12px}.dashboard-catalog-bars{display:grid;gap:20px}.dashboard-catalog-row>div{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px}.dashboard-catalog-row>div span{color:#576e7d}.dashboard-catalog-row>div b{font-size:14px}.dashboard-catalog-row>i{display:block;height:10px;border-radius:10px;background:#edf1f4;overflow:hidden}.dashboard-catalog-row>i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4669e9,#7388f2)}.dashboard-catalog-row.customers>i em{background:linear-gradient(90deg,#168a61,#48c08d)}.dashboard-catalog-row.suppliers>i em{background:linear-gradient(90deg,#e78b19,#ffc166)}.dashboard-stock-value{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;border:1px solid #e4ebef;border-radius:14px;background:linear-gradient(145deg,#f9fcfd,#f0f6f9)}.dashboard-stock-value span{font-size:12px;text-transform:uppercase;letter-spacing:.7px}.dashboard-stock-value b{font-size:25px;color:#123f5d}.dashboard-stock-value small{text-align:center}.report-invoice-status{margin:18px 0;border-radius:15px;overflow:hidden}.report-status-columns article{border:1px solid #e7edf1;background:linear-gradient(145deg,#fbfdfe,#f4f8fa)}@media(max-width:900px){.dashboard-welcome{padding:19px}.dashboard-chart-panel{padding:16px}.dashboard-catalog-charts{grid-template-columns:1fr;gap:20px}.dashboard-stock-value{min-height:110px}}@media(max-width:600px){.dashboard-welcome{gap:12px}.dashboard-chart-legend{gap:6px}.dashboard-chart-legend span{font-size:10px}.dashboard-bars{height:185px;gap:5px}.dashboard-donut-wrap{gap:15px}.dashboard-donut{width:120px;height:120px}.dashboard-chart-key{min-width:115px}}

/* Keep all report KPIs on one desktop row */
@media(min-width:1051px){.reports-page .reports-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.reports-page .reports-kpis article{gap:9px;padding:13px;min-width:0}.reports-page .reports-kpis b{font-size:15px}.reports-page .reports-kpis em{font-size:7px}}@media print{.reports-page .reports-kpis{grid-template-columns:repeat(5,minmax(0,1fr))!important}}

.user-warehouse-picker{min-width:0;margin:0;padding:12px 14px;border:1px solid var(--border);border-radius:10px}.user-warehouse-picker legend{padding:0 5px;font-weight:700}.user-warehouse-picker>small{display:block;margin:0 0 10px;color:var(--muted);font-size:11px}.user-warehouse-picker>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.user-warehouse-picker>div>label{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;cursor:pointer}.user-warehouse-picker input{accent-color:#0b6b96}.user-warehouse-picker span{font-size:12px}@media(max-width:600px){.user-warehouse-picker>div{grid-template-columns:1fr}}

#userModal .modal-card{width:min(920px,96vw)}.user-warehouse-picker>div>label{min-width:0;white-space:nowrap}.user-warehouse-picker>div>label span{white-space:nowrap}@media(max-width:600px){#userModal .modal-card{width:96vw;padding:20px}.user-warehouse-picker>div{grid-template-columns:1fr}}

#userModal .user-warehouse-picker{text-align:left;justify-self:stretch}#userModal .user-warehouse-picker legend{text-align:left}#userModal .user-warehouse-picker>div{justify-items:stretch}#userModal .user-warehouse-picker>div>label{justify-content:flex-start;text-align:left}

#userModal .user-warehouse-picker>div>label{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;justify-content:initial;gap:9px}#userModal .user-warehouse-picker>div>label span{justify-self:start;text-align:left}

/* Administration workspace and refreshed SaaS sidebar */
:root{--sidebar:264px}.sidebar-icon-defs{position:absolute;width:0;height:0;overflow:hidden}.sidebar{padding:22px 14px 16px;background:#fff;color:#294353;border-right:1px solid #e5edf1;box-shadow:5px 0 24px rgba(15,55,77,.055)}.sidebar .brand.brand-logo{padding:0 8px 17px;margin:0 1px 13px;border-bottom:1px solid #e8eef2}.sidebar .brand-logo-surface{width:100%;height:56px;display:grid;place-items:center}.sidebar .brand-logo-surface img{width:190px;max-height:53px;object-fit:contain}.sidebar .brand.brand-logo>small{margin-top:3px;text-align:center;color:#8397a3;font-size:8px;letter-spacing:1.3px}.sidebar nav{gap:10px;padding:3px 1px 12px;scrollbar-width:thin}.sidebar-nav-group{gap:3px}.sidebar-group-toggle{min-height:31px;padding:0 9px;color:#8094a0;font-size:8px;letter-spacing:1.15px}.sidebar-group-toggle:hover{background:#f2f6f8;color:#0b527d}.sidebar-group-toggle svg{width:13px;height:13px}.sidebar-group-links{gap:3px;padding-top:4px}.sidebar .nav-link{min-height:41px;padding:0 12px;gap:11px;border-radius:10px;color:#526c7c;font-size:12px;font-weight:650}.sidebar .nav-link:hover{background:#f1f6f8;color:#0b527d;border-color:transparent}.sidebar .nav-link.active{background:linear-gradient(100deg,#e7f2f7,#f1f8fb);color:#084e76;border-color:#dceaf0;box-shadow:inset 3px 0 #0b6b96}.sidebar .nav-icon{width:20px;height:20px;flex:0 0 20px;color:#8ba6b4}.sidebar .nav-icon:before{display:none!important}.sidebar .nav-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.sidebar .nav-link.active .nav-icon{color:#0b6b96}.sidebar .sidebar-footer{padding:14px 5px 0;border-top:1px solid #e5edf1}.sidebar .org-chip{gap:9px}.sidebar .org-chip .avatar{width:34px;height:34px;border-radius:10px;background:#e7f1f5;color:#0b527d}.sidebar .org-chip b{color:#244759;font-size:11px}.sidebar .org-chip small{max-width:170px;color:#78909d;font-size:9px}.sidebar .sidebar-collapse{right:-13px;top:78px;width:27px;height:27px;border-color:#e0e9ee;color:#0b527d;box-shadow:0 4px 13px rgba(14,58,80,.12)}.sidebar .sidebar-collapse:hover{background:#e9f4f8}.dark .sidebar{background:#122a36;border-right-color:#294552}.dark .sidebar .brand.brand-logo{border-bottom-color:#294552}.dark .sidebar .brand.brand-logo>small{color:#94b0bd}.dark .sidebar-group-toggle{color:#8ea8b4}.dark .sidebar-group-toggle:hover{background:#1c3947;color:#dff3fa}.dark .sidebar .nav-link{color:#c0d2d9}.dark .sidebar .nav-link:hover{background:#1c3947;color:#effbff}.dark .sidebar .nav-link.active{background:linear-gradient(100deg,#1b4556,#203e4c);color:#effbff;border-color:#315563;box-shadow:inset 3px 0 #58bbd7}.dark .sidebar .nav-icon{color:#91b1bf}.dark .sidebar .sidebar-footer{border-top-color:#294552}.dark .sidebar .org-chip b{color:#eef8fb}.dark .sidebar .org-chip small{color:#a2bac4}.dark .sidebar .sidebar-collapse{background:#1b3c4a;border-color:#315563;color:#dff6fc}body.sidebar-collapsed .sidebar .brand.brand-logo{padding-left:0;padding-right:0}body.sidebar-collapsed .sidebar .brand-logo-surface{height:47px}body.sidebar-collapsed .sidebar .brand-logo-surface img{width:45px;height:45px;object-fit:contain}body.sidebar-collapsed .sidebar .brand.brand-logo>small{display:none}body.sidebar-collapsed .sidebar .nav-link{width:48px;height:42px;margin:auto;padding:0;justify-content:center}body.sidebar-collapsed .sidebar .nav-icon{width:21px;height:21px;flex-basis:21px}body.sidebar-collapsed .sidebar .nav-icon svg{width:19px;height:19px}body.sidebar-collapsed .sidebar .sidebar-footer .org-chip>span:last-child{display:none}body.sidebar-collapsed .sidebar .sidebar-footer .org-chip{justify-content:center}body.sidebar-collapsed .sidebar .sidebar-collapse span{transform:rotate(180deg)}@media(max-width:800px){:root{--sidebar:264px}.sidebar{padding:20px 14px}.sidebar-nav-group{align-items:stretch!important}.sidebar-group-label{display:block!important}.sidebar .nav-link,body.sidebar-collapsed .sidebar .nav-link{width:auto;padding:0 12px;justify-content:flex-start}.sidebar .nav-icon,body.sidebar-collapsed .sidebar .nav-icon{width:20px;flex-basis:20px}.sidebar .brand.brand-logo>small{display:block!important}.sidebar .brand-logo-surface img{width:190px!important;height:auto!important}.sidebar .sidebar-footer .org-chip>span:last-child{display:block!important}.sidebar .sidebar-collapse{display:none}}
.admin-page{display:flex;flex-direction:column;gap:17px}.admin-hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:132px;overflow:hidden;padding:23px 27px;border:1px solid #dce9ef;border-radius:17px;background:linear-gradient(115deg,#fff 0%,#f2f8fb 68%,#eaf4f8 100%);box-shadow:0 8px 24px rgba(24,66,89,.045)}.admin-hero h2{margin:2px 0 5px;color:#173f59;font-size:25px}.admin-hero p:last-child{margin:0;color:#698190;font-size:12px}.admin-hero-mark{width:62px;height:62px;display:grid;place-items:center;border:1px solid #d7e8ef;border-radius:18px;background:#fff;color:#0b6b96;box-shadow:0 9px 22px rgba(16,71,99,.08)}.admin-hero-mark svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.admin-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-summary-grid article{min-width:0;display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #e3ebef;border-radius:13px;background:var(--surface);box-shadow:0 4px 15px rgba(18,58,78,.035)}.admin-summary-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:11px;background:#e9f3f7;color:#0b6b96;font-size:17px}.admin-summary-icon.chart{background:#edf0ff;color:#6574d9}.admin-summary-icon.audit{background:#fff2e4;color:#d17e13}.admin-summary-grid article>div{min-width:0;flex:1}.admin-summary-grid small,.admin-summary-grid b{display:block}.admin-summary-grid small{color:var(--muted);font-size:10px}.admin-summary-grid b{margin-top:2px;color:#173f59;font-size:18px}.admin-summary-grid b span{color:#8b9aa3;font:600 11px 'DM Sans',sans-serif}.admin-summary-grid article>a{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#f1f6f8;color:#0b6b96;font-size:15px}.admin-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.admin-shortcuts>a{display:flex;align-items:center;gap:11px;min-width:0;padding:13px 15px;border:1px solid #e1eaf0;border-radius:12px;background:var(--surface);transition:transform .15s,border-color .15s,box-shadow .15s}.admin-shortcuts>a:hover{transform:translateY(-2px);border-color:#bdd8e4;box-shadow:0 8px 18px rgba(18,69,96,.07)}.admin-shortcuts>a>span{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:10px;background:#edf5f8;color:#0b6b96;font-size:17px}.admin-shortcuts>a>div{min-width:0;flex:1}.admin-shortcuts b,.admin-shortcuts small{display:block}.admin-shortcuts b{color:#234759;font-size:11px}.admin-shortcuts small{margin-top:2px;color:#81929d;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-shortcuts i{color:#7194a5;font-style:normal}.admin-tabs{align-self:flex-start;max-width:100%;overflow-x:auto;margin:0;padding:4px;border:1px solid #e2eaee;border-radius:12px;background:#f3f7f9}.admin-tabs button{white-space:nowrap;padding:9px 15px;font-size:11px}.admin-tabs button.active{background:#fff;color:#0b527d;box-shadow:0 3px 10px rgba(18,58,78,.09)}.admin-accounting-panel,.admin-audit-panel,.data-import-panel,.maintenance-panel{overflow:hidden;border-radius:14px}.admin-accounting-panel>.panel-head,.admin-audit-panel>.panel-head{padding:17px 19px}.admin-accounting-panel .panel-head .muted,.admin-audit-panel .panel-head .muted{margin:4px 0 0;font-size:10px}.admin-accounting-panel .table-wrap,.admin-audit-panel .table-wrap{padding:0 16px 15px}.admin-accounting-panel table button,.admin-accounting-panel table form button{padding:6px 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:#0b6b96;font-size:10px;cursor:pointer}.dark .admin-hero{border-color:#294955;background:linear-gradient(115deg,#152d39,#1a3947)}.dark .admin-hero h2,.dark .admin-summary-grid b,.dark .admin-shortcuts b{color:#e9f6fa}.dark .admin-hero p:last-child,.dark .admin-shortcuts small{color:#a0b9c3}.dark .admin-hero-mark{background:#1c3947;border-color:#315563;color:#8fd4e7}.dark .admin-summary-grid article,.dark .admin-shortcuts>a{border-color:#294552;background:#142e3a}.dark .admin-summary-grid article>a{background:#1d3d4b;color:#a5d9e7}.dark .admin-shortcuts>a>span{background:#1c3e4d;color:#a5d9e7}.dark .admin-tabs{background:#132f3b;border-color:#294552}.dark .admin-tabs button.active{background:#214656;color:#effbff}.dark .admin-accounting-panel table button,.dark .admin-accounting-panel table form button{background:#173541;color:#a8d8e4;border-color:#33515c}@media(max-width:850px){.admin-shortcuts{grid-template-columns:1fr}.admin-summary-grid{gap:8px}.admin-summary-grid article{padding:12px}}@media(max-width:600px){.admin-hero{min-height:115px;padding:19px}.admin-hero-mark{width:48px;height:48px;flex:0 0 48px}.admin-summary-grid{grid-template-columns:1fr}.admin-tabs{align-self:stretch}.admin-tabs button{padding:9px 11px;font-size:10px}.admin-accounting-panel>.panel-head,.admin-audit-panel>.panel-head{align-items:flex-start;gap:8px;padding:14px}}

/* Orange accents for the light sidebar */
.sidebar .sidebar-group-toggle:hover{color:#b96b0a}.sidebar .nav-link.active{background:linear-gradient(100deg,#fff5e8,#fffaf3);border-color:#f4dfc3;box-shadow:inset 3px 0 #f39824;color:#8b4e06}.sidebar .nav-link.active .nav-icon{color:#e18412}.sidebar .sidebar-collapse{background:#fff8ee;border-color:#f4dfc3;color:#c77509}.sidebar .sidebar-collapse:hover{background:#ffedd5}.sidebar .sidebar-footer .avatar{background:#fff0d9;color:#a45c06}.sidebar .sidebar-group-toggle svg{color:#dc8b23}.dark .sidebar .nav-link.active{background:linear-gradient(100deg,#45351f,#3a3024);border-color:#644b2b;box-shadow:inset 3px 0 #f0a340;color:#fff0d8}.dark .sidebar .nav-link.active .nav-icon{color:#f3ad4d}.dark .sidebar .sidebar-collapse{background:#3b3022;border-color:#634d2d;color:#ffc36a}.dark .sidebar .sidebar-group-toggle svg{color:#d99a40}

.subscription-current-plan{min-width:190px}.subscription-current-plan .eyebrow{margin-bottom:5px}.subscription-hero>div:not(:first-child){min-width:125px}.subscription-section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:22px 0 11px}.subscription-section-heading .eyebrow{margin:0 0 3px}.subscription-section-heading h3{margin:0;font-size:16px}.subscription-section-heading>.muted{font-size:10px}.subscription-plans-heading{margin-top:25px}.subscription-empty{padding:22px;margin-bottom:15px}.subscription-empty p{margin:5px 0 0;color:var(--muted);font-size:11px}@media(max-width:800px){.subscription-hero{flex-wrap:wrap;justify-content:flex-start}.subscription-hero>div{flex:1 1 40%}}@media(max-width:600px){.subscription-section-heading{align-items:flex-start;flex-direction:column}}
.subscription-module-list{margin:0 0 12px;padding-top:10px;border-top:1px solid var(--border);color:var(--muted);font-size:10px;line-height:1.8}.subscription-module-list b{color:var(--text)}.subscription-module-options{min-width:0;margin:0;padding:12px;border:1px solid var(--border);border-radius:10px}.subscription-module-options legend{padding:0 5px;font-size:11px;font-weight:800}.subscription-module-options>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.subscription-module-options label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600}.subscription-module-options input{accent-color:#f39824}.dark .subscription-module-options{border-color:#35515a}
.subscription-plan-grid article{display:flex;min-height:390px;flex-direction:column}.subscription-plan-grid article .subscription-price{margin:8px 0 16px;padding:14px 15px;border:1px solid #f4e4cf;border-radius:12px;background:linear-gradient(120deg,#fff9f0,#fff);color:#a85b00}.subscription-price strong{font-size:23px;font-weight:850;letter-spacing:-.35px}.subscription-price span{color:var(--muted);font-size:11px;font-weight:700}.subscription-plan-grid ul{min-height:76px}.subscription-module-list{flex:1 1 auto}.subscription-card-actions{display:grid;gap:8px;margin-top:auto;padding-top:12px}.subscription-card-actions form{margin:0}.subscription-card-actions .btn{width:100%;min-height:38px;justify-content:center}.subscription-edit-button{border:1px solid #f3d4ac!important;background:#fff4e5!important;color:#a85b00!important}.subscription-edit-button:hover{background:#ffe9cb!important}.subscription-select-button{border:1px solid #16884a!important;background:#16884a!important;color:#fff!important}.subscription-select-button:hover{background:#11713d!important}.subscription-card-actions .badge{justify-self:start}.dark .subscription-plan-grid article .subscription-price{border-color:#5a452e;background:linear-gradient(120deg,#332b21,#282820);color:#ffc36a}.dark .subscription-edit-button{border-color:#71502a!important;background:#392e20!important;color:#ffd08b!important}.dark .subscription-select-button{border-color:#209657!important;background:#16884a!important}

#saasPlanModal .modal-card{width:min(820px,96vw);padding:30px}@media(max-width:600px){#saasPlanModal .modal-card{width:96vw;padding:20px}}.subscription-module-options>div{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.subscription-module-options label{display:flex;justify-content:flex-start!important;align-items:center;gap:9px;width:100%;margin:0;padding:4px 2px;border:0;text-align:left!important;white-space:normal}.subscription-module-options label input{flex:0 0 auto;margin:0}.subscription-module-options label span{flex:1;text-align:left}@media(max-width:700px){.subscription-module-options>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:440px){.subscription-module-options>div{grid-template-columns:1fr}}

/* Refined SaaS plan editor */
#saasPlanModal .saas-plan-modal-card{width:min(940px,96vw);max-height:92vh;padding:0;border:1px solid var(--border);border-radius:18px;overflow:auto}
.saas-plan-modal-heading{position:relative;display:flex;align-items:center;gap:16px;padding:25px 68px 23px 30px;background:linear-gradient(115deg,#083e5d,#0c6687 72%,#168ba0);color:#fff}
.saas-plan-modal-icon{width:48px;height:48px;flex:0 0 auto;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:14px;background:rgba(255,255,255,.12);color:#ffc46c;font-size:27px}
.saas-plan-modal-heading .eyebrow{margin:0 0 3px;color:#b9dce9;font-size:9px}
.saas-plan-modal-heading h2{margin:0;color:#fff;font-size:22px}
.saas-plan-modal-heading>div>p:last-child{margin:4px 0 0;color:#d1e8f0;font-size:11px}
.saas-plan-modal-card .modal-close{top:20px;right:20px;width:34px;height:34px;background:rgba(255,255,255,.16);color:#fff;font-size:21px}
.saas-plan-form{display:grid;gap:17px;margin:0;padding:24px 30px 26px}
.saas-plan-form label{display:flex!important;flex-direction:column;align-items:stretch!important;gap:6px!important;margin:0!important;padding:0!important;border:0!important;color:var(--text)!important;font-size:11px!important;font-weight:750!important;text-align:left!important;white-space:normal!important}
.saas-plan-form label small{display:inline;color:var(--muted);font-size:10px;font-weight:500}
.saas-plan-form label input:not([type=checkbox]){width:100%;height:42px;margin:0!important;padding:0 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);outline:none}
.saas-plan-form label input:focus{border-color:#1585a5;box-shadow:0 0 0 3px rgba(21,133,165,.12)}
.saas-plan-name input{height:46px!important;font-size:14px}
.saas-plan-capacities{padding:16px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}
.saas-plan-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.saas-plan-section-heading h3{font-size:13px}
.saas-plan-section-heading p{margin:3px 0 0;color:var(--muted);font-size:10px}
.saas-plan-section-heading>span{display:grid;width:29px;height:29px;place-items:center;border-radius:9px;background:#fff0dc;color:#ae650b;font-size:10px;font-weight:800}
.saas-plan-limit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.saas-plan-limit-grid label{min-width:0;padding:11px!important;border:1px solid var(--border)!important;border-radius:10px;background:var(--surface)}
.saas-plan-limit-grid label small{order:1;margin-top:-5px}
.saas-plan-limit-grid label input{order:2}
.saas-plan-module-options{padding:15px!important;border-color:var(--border)!important;border-radius:13px!important;background:var(--surface)!important}
.saas-plan-module-options legend{padding:0 7px!important;color:var(--text);font-size:12px!important;font-weight:800!important}
.saas-plan-module-help{margin:0 0 12px;color:var(--muted);font-size:10px}
.saas-plan-module-options>div{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
.saas-plan-module-options label{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;gap:9px!important;min-height:39px;margin:0!important;padding:8px 10px!important;border:1px solid var(--border)!important;border-radius:9px;background:var(--surface-2);color:var(--text)!important;font-size:10px!important;font-weight:650!important;text-align:left!important;white-space:normal!important;cursor:pointer}
.saas-plan-module-options label:hover{border-color:#e5ba82!important;background:#fff8ed}
.saas-plan-module-options label input{width:16px;height:16px;flex:0 0 auto;margin:0;accent-color:#ed941f}
.saas-plan-module-options label span{flex:1;text-align:left!important}
.saas-plan-form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:14px;border-top:1px solid var(--border)}
.saas-plan-form-actions .btn{min-width:135px;min-height:40px;justify-content:center}
.dark .saas-plan-capacities,.dark .saas-plan-limit-grid label,.dark .saas-plan-module-options label{background:#142d37}.dark .saas-plan-section-heading>span{background:#403322;color:#ffd08b}.dark .saas-plan-module-options label:hover{border-color:#8d693b!important;background:#263641}
@media(max-width:800px){.saas-plan-module-options>div{grid-template-columns:repeat(3,minmax(0,1fr))!important}.saas-plan-limit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){#saasPlanModal .saas-plan-modal-card{width:96vw}.saas-plan-modal-heading{padding:20px 55px 18px 18px}.saas-plan-modal-icon{width:40px;height:40px}.saas-plan-modal-heading h2{font-size:18px}.saas-plan-form{padding:18px;gap:13px}.saas-plan-module-options>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}.saas-plan-form-actions{flex-direction:column-reverse}.saas-plan-form-actions .btn{width:100%}}@media(max-width:360px){.saas-plan-module-options>div{grid-template-columns:1fr!important}.saas-plan-limit-grid{grid-template-columns:1fr}}

.saas-plan-modal-heading{background:var(--surface-2);color:var(--text);border-bottom:1px solid var(--border)}.saas-plan-modal-icon{border-color:#f0d7b5;background:#fff3e3;color:#b96b0a}.saas-plan-modal-heading .eyebrow{color:#a96818}.saas-plan-modal-heading h2{color:var(--text)}.saas-plan-modal-heading>div>p:last-child{color:var(--muted)}.saas-plan-modal-card .modal-close{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.dark .saas-plan-modal-heading{background:#172c35}.dark .saas-plan-modal-icon{border-color:#654c2f;background:#3c3021;color:#ffd08b}.dark .saas-plan-modal-heading .eyebrow{color:#e5b268}.dark .saas-plan-modal-heading h2{color:#edf5f7}.dark .saas-plan-modal-heading>div>p:last-child{color:#adc0c8}

/* Split-rail sidebar inspired by the supplied reference, in Torex colors */
:root{--sidebar:286px}.sidebar{padding:20px 12px 15px}.sidebar .brand.brand-logo{padding:0 8px 16px;margin:0 1px 13px;border-bottom:1px solid #e5edf1}.sidebar nav{position:relative;gap:13px;padding:4px 0 12px}.sidebar nav:before{position:absolute;z-index:0;content:'';top:0;bottom:0;left:58px;border-left:1px solid #e4ebef;pointer-events:none}.sidebar-nav-group{position:relative;z-index:1;gap:4px}.sidebar-group-toggle{min-height:27px;margin-left:69px;padding:0 9px;font-size:8px;letter-spacing:1.1px}.sidebar-group-links{gap:5px;padding-top:4px}.sidebar .nav-link{display:grid;grid-template-columns:58px minmax(0,1fr);min-height:41px;padding:0;gap:0;border:0;border-radius:0;background:transparent;color:#567081}.sidebar .nav-link:hover{background:transparent;color:#0b527d}.sidebar .nav-icon{width:58px;height:38px;flex:0 0 58px;display:grid;place-items:center;border-radius:22px;color:#7594a3}.sidebar .nav-icon svg{width:18px;height:18px}.sidebar .nav-link>span:last-child{display:flex;align-items:center;min-width:0;margin:2px 0;padding:0 12px;border-radius:22px;font-size:11px;transition:background .16s,color .16s}.sidebar .nav-link:hover>span:last-child{background:#f3f6f7;color:#0b527d}.sidebar .nav-link.active{background:transparent;border:0;box-shadow:none;color:#084e76}.sidebar .nav-link.active .nav-icon{background:#fff0dc;color:#bb6c0d}.sidebar .nav-link.active>span:last-child{min-height:37px;background:#fff3e3;color:#874c08;font-weight:800}.sidebar .sidebar-footer{padding:13px 5px 0}.sidebar .sidebar-collapse{top:76px}.dark .sidebar nav:before{border-left-color:#294551}.dark .sidebar .nav-link{background:transparent;color:#bbced6}.dark .sidebar .nav-link:hover>span:last-child{background:#1b3947;color:#e5f5fa}.dark .sidebar .nav-link.active .nav-icon{background:#423523;color:#ffc36a}.dark .sidebar .nav-link.active>span:last-child{background:#3a3022;color:#ffdda8}.dark .sidebar .sidebar-nav-group{background:transparent}body.sidebar-collapsed .sidebar nav:before{display:none}body.sidebar-collapsed .sidebar-group-toggle{display:none!important}body.sidebar-collapsed .sidebar .nav-link,body.sidebar-collapsed .sidebar .nav-link.active{display:flex;width:48px;min-height:42px;margin:0 auto;padding:0;justify-content:center;background:transparent;box-shadow:none}body.sidebar-collapsed .sidebar .nav-icon{width:42px;height:42px;flex-basis:42px;border-radius:50%}body.sidebar-collapsed .sidebar .nav-link>span:last-child{display:none}body.sidebar-collapsed .sidebar .nav-link.active .nav-icon{background:#fff0dc;color:#bb6c0d}@media(max-width:800px){.sidebar{padding:20px 14px}.sidebar nav:before{left:58px}.sidebar-group-toggle{margin-left:69px}.sidebar .nav-link,body.sidebar-collapsed .sidebar .nav-link{display:grid;width:auto;min-height:41px;margin:0;padding:0;grid-template-columns:58px minmax(0,1fr);justify-content:initial}.sidebar .nav-icon,body.sidebar-collapsed .sidebar .nav-icon{width:58px;height:38px;flex-basis:58px}.sidebar .nav-link>span:last-child{display:flex!important}.sidebar .sidebar-collapse{display:none}}

/* Restore Torex blue as the primary sidebar accent */
.sidebar .nav-link.active .nav-icon{background:#e6f1f6;color:#0b527d}.sidebar .nav-link.active>span:last-child{background:#e8f2f7;color:#0b527d}.sidebar .nav-link:hover>span:last-child{background:#eff6f9;color:#0b527d}.dark .sidebar .nav-link.active .nav-icon{background:#254957;color:#dff6fc}.dark .sidebar .nav-link.active>span:last-child{background:#254957;color:#effbff}.dark .sidebar .nav-link:hover>span:last-child{background:#1b3947;color:#e5f5fa}

/* Blue sidebar background with accessible Torex navigation contrast */
.sidebar{background:linear-gradient(180deg,#0b527d 0%,#08466c 100%);border-right-color:#083e60;box-shadow:5px 0 24px rgba(7,54,82,.16);color:#d8eaf2}.sidebar .brand.brand-logo{border-bottom-color:rgba(255,255,255,.16)}.sidebar .brand.brand-logo>small{color:#a8cad9}.sidebar nav:before{border-left-color:rgba(255,255,255,.2)}.sidebar-group-toggle{color:#a8cad9}.sidebar-group-toggle:hover{background:rgba(255,255,255,.08);color:#fff}.sidebar .nav-link{color:#d1e4ed}.sidebar .nav-link:hover>span:last-child{background:rgba(255,255,255,.1);color:#fff}.sidebar .nav-icon{color:#a7cad9}.sidebar .nav-link.active .nav-icon{background:#fff;color:#0b527d}.sidebar .nav-link.active>span:last-child{background:#fff;color:#0b527d}.sidebar .sidebar-footer{border-top-color:rgba(255,255,255,.17)}.sidebar .org-chip b{color:#fff}.sidebar .org-chip small{color:#b1cfdd}.sidebar .org-chip .avatar{background:#f39824;color:#fff}.sidebar .sidebar-collapse{background:#fff;border-color:#dce7ed;color:#0b527d}.sidebar .sidebar-collapse:hover{background:#fff4e5;color:#a85b00}.dark .sidebar{background:linear-gradient(180deg,#073b5c 0%,#062f49 100%);border-right-color:#1a4b66}.dark .sidebar .nav-link.active .nav-icon,.dark .sidebar .nav-link.active>span:last-child{background:#fff;color:#0b527d}

/* Flat, icon-led module list and white Torex logo */
.sidebar .brand-logo-surface img{filter:brightness(0) invert(1)}.sidebar-modules{display:flex;flex-direction:column;position:relative;gap:4px!important;overflow-x:hidden}.sidebar-modules:before{position:absolute;z-index:0;content:'';top:0;bottom:0;left:58px;border-left:1px solid rgba(255,255,255,.2);pointer-events:none}.sidebar-modules>.nav-link{position:relative;z-index:1;display:grid;grid-template-columns:58px minmax(0,1fr);width:100%;min-height:41px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#d1e4ed}.sidebar-modules>.nav-link .nav-icon{display:grid;width:58px;height:38px;place-items:center;border-radius:50%;color:#afd0df}.sidebar-modules>.nav-link .nav-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.sidebar-modules>.nav-link>span:last-child{display:flex;align-items:center;min-width:0;min-height:37px;margin:2px 0;padding:0 12px;border-radius:20px;color:inherit;font-size:11px;font-weight:650;transition:background .16s,color .16s}.sidebar-modules>.nav-link:hover{background:transparent;color:#fff}.sidebar-modules>.nav-link:hover>span:last-child{background:rgba(255,255,255,.1);color:#fff}.sidebar-modules>.nav-link.active{background:transparent;border:0;box-shadow:none;color:#0b527d}.sidebar-modules>.nav-link.active .nav-icon{background:#fff;color:#0b527d}.sidebar-modules>.nav-link.active>span:last-child{background:#fff;color:#0b527d;font-weight:800}body.sidebar-collapsed .sidebar-modules:before{display:none}body.sidebar-collapsed .sidebar-modules>.nav-link,body.sidebar-collapsed .sidebar-modules>.nav-link.active{display:flex;width:48px;min-height:42px;margin:0 auto;padding:0;justify-content:center;background:transparent}body.sidebar-collapsed .sidebar-modules>.nav-link .nav-icon{width:42px;height:42px;flex-basis:42px}body.sidebar-collapsed .sidebar-modules>.nav-link>span:last-child{display:none}.dark .sidebar .brand-logo-surface img{filter:brightness(0) invert(1)}@media(max-width:800px){.sidebar-modules:before{left:58px}.sidebar-modules>.nav-link,body.sidebar-collapsed .sidebar-modules>.nav-link{display:grid;width:100%;min-height:41px;margin:0;padding:0;grid-template-columns:58px minmax(0,1fr);justify-content:initial}.sidebar-modules>.nav-link .nav-icon,body.sidebar-collapsed .sidebar-modules>.nav-link .nav-icon{width:58px;height:38px;flex-basis:58px}.sidebar-modules>.nav-link>span:last-child{display:flex!important}}

/* Orange-light selected module on blue sidebar */
.sidebar-modules>.nav-link.active .nav-icon{background:#fff0dc;color:#9e5a08}.sidebar-modules>.nav-link.active>span:last-child{background:#fff0dc;color:#874c08}.sidebar-modules>.nav-link:hover>span:last-child{background:rgba(255,240,220,.14);color:#fff3df}body.sidebar-collapsed .sidebar-modules>.nav-link.active .nav-icon{background:#fff0dc;color:#9e5a08}.dark .sidebar-modules>.nav-link.active .nav-icon,.dark .sidebar-modules>.nav-link.active>span:last-child{background:#fff0dc;color:#874c08}
/* Sidebar search and profile card from the reference layout */
.sidebar-search{position:relative;z-index:12;display:flex;align-items:center;min-height:40px;margin:0 0 10px;border:1px solid rgba(255,255,255,.23);border-radius:11px;background:rgba(255,255,255,.09)}.sidebar-search>button{display:grid;width:40px;height:38px;flex:0 0 40px;place-items:center;border:0;background:transparent;color:#e4f1f6;cursor:pointer}.sidebar-search svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.sidebar-search input{width:100%;min-width:0;height:38px;padding:0 8px 0 0;border:0;outline:0;background:transparent;color:#fff;font-size:11px}.sidebar-search input::placeholder{color:#bad3df}.sidebar-profile{display:flex;align-items:center;gap:9px;min-width:0;padding:8px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:rgba(255,255,255,.08)}.sidebar-profile>.avatar{width:35px;height:35px;flex:0 0 35px;border-radius:11px;background:#f39824;color:#fff}.sidebar-profile-copy{min-width:0;flex:1}.sidebar-profile-copy b,.sidebar-profile-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-profile-copy b{color:#fff;font-size:10px}.sidebar-profile-copy small{margin-top:2px;color:#bdd4df;font-size:8px}.sidebar-profile>a{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border-radius:8px;color:#d7e9f0;font-size:18px}.sidebar-profile>a:hover{background:rgba(255,255,255,.13);color:#fff}
body.sidebar-collapsed .sidebar-search{width:42px;height:42px;min-height:42px;margin:0 auto 10px;border:0;background:transparent}body.sidebar-collapsed .sidebar-search>button{width:42px;height:42px;flex-basis:42px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:rgba(255,255,255,.08)}body.sidebar-collapsed .sidebar-search input{position:absolute;left:49px;top:0;width:0;height:42px;visibility:hidden;opacity:0;padding:0 12px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:#08466c;box-shadow:0 9px 24px rgba(0,0,0,.2);transition:width .18s ease,opacity .18s ease}body.sidebar-collapsed .sidebar-search:hover input,body.sidebar-collapsed .sidebar-search:focus-within input{width:220px;visibility:visible;opacity:1}
.sidebar-footer .sidebar-profile{width:100%}body.sidebar-collapsed .sidebar-footer{padding:12px 0 0}body.sidebar-collapsed .sidebar-profile{width:48px;height:48px;margin:0 auto;padding:5px;justify-content:center;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08)}body.sidebar-collapsed .sidebar-profile-copy,body.sidebar-collapsed .sidebar-profile>a{display:none}.sidebar-modules>.nav-link[style*="display: none"]{pointer-events:none}
@media(max-width:800px){body.sidebar-collapsed .sidebar-search{width:100%;height:40px;margin:0 0 10px;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.09)}body.sidebar-collapsed .sidebar-search>button{width:40px;height:38px;flex-basis:40px;border:0;background:transparent}body.sidebar-collapsed .sidebar-search input{position:static;width:100%;height:38px;visibility:visible;opacity:1;padding:0 8px 0 0;border:0;background:transparent;box-shadow:none}body.sidebar-collapsed .sidebar-profile{width:100%;height:auto;margin:0;padding:8px;justify-content:flex-start}body.sidebar-collapsed .sidebar-profile-copy{display:block}body.sidebar-collapsed .sidebar-profile>a{display:grid}}
/* Grouped module navigation */
.sidebar-module-group{position:relative;z-index:1;display:flex;flex-direction:column;gap:4px;margin:0;padding:0}.sidebar-module-group-title{margin:0;padding:3px 8px 5px 69px;color:#a8cad9;font-size:8px;font-weight:800;letter-spacing:1.05px;text-transform:uppercase;white-space:nowrap}.sidebar-modules .sidebar-module-group .nav-link{position:relative;z-index:1;display:grid;grid-template-columns:58px minmax(0,1fr);width:100%;min-height:41px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#d1e4ed}.sidebar-modules .sidebar-module-group .nav-icon{display:grid;width:58px;height:38px;flex:0 0 58px;place-items:center;border-radius:50%;color:#afd0df}.sidebar-modules .sidebar-module-group .nav-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.sidebar-modules .sidebar-module-group .nav-link>span:last-child{display:flex;align-items:center;min-width:0;min-height:37px;margin:2px 0;padding:0 12px;border-radius:20px;color:inherit;font-size:11px;font-weight:650;transition:background .16s,color .16s}.sidebar-modules .sidebar-module-group .nav-link:hover{background:transparent;color:#fff}.sidebar-modules .sidebar-module-group .nav-link:hover>span:last-child{background:rgba(255,255,255,.1);color:#fff}.sidebar-modules .sidebar-module-group .nav-link.active{background:transparent;border:0;box-shadow:none;color:#874c08}.sidebar-modules .sidebar-module-group .nav-link.active .nav-icon,.sidebar-modules .sidebar-module-group .nav-link.active>span:last-child{background:#fff0dc;color:#874c08}.sidebar-modules .sidebar-module-group .nav-link.active .nav-icon{color:#9e5a08}
body.sidebar-collapsed .sidebar-module-group{gap:3px;padding-bottom:5px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.16)}body.sidebar-collapsed .sidebar-module-group:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}body.sidebar-collapsed .sidebar-module-group-title{display:none}body.sidebar-collapsed .sidebar-modules .sidebar-module-group .nav-link,body.sidebar-collapsed .sidebar-modules .sidebar-module-group .nav-link.active{display:flex;width:48px;min-height:42px;margin:0 auto;padding:0;justify-content:center;background:transparent;box-shadow:none}body.sidebar-collapsed .sidebar-modules .sidebar-module-group .nav-icon{width:42px;height:42px;flex-basis:42px}body.sidebar-collapsed .sidebar-modules .sidebar-module-group .nav-link>span:last-child{display:none}body.sidebar-collapsed .sidebar-modules .sidebar-module-group .nav-link.active .nav-icon{background:#fff0dc;color:#9e5a08}
.dark .sidebar-module-group-title{color:#a8cad9}@media(max-width:800px){.sidebar-module-group-title{padding-left:69px}.sidebar-modules .sidebar-module-group .nav-link,body.sidebar-collapsed .sidebar-modules .sidebar-module-group .nav-link{display:grid;width:100%;min-height:41px;margin:0;padding:0;grid-template-columns:58px minmax(0,1fr);justify-content:initial}.sidebar-modules .sidebar-module-group .nav-icon,body.sidebar-collapsed .sidebar-modules .sidebar-module-group .nav-icon{width:58px;height:38px;flex-basis:58px}.sidebar-modules .sidebar-module-group .nav-link>span:last-child{display:flex!important}body.sidebar-collapsed .sidebar-module-group-title{display:none}body.sidebar-collapsed .sidebar-module-group{border-bottom:1px solid rgba(255,255,255,.16)}}
/* Theme switch and profile actions in the grouped reference-style sidebar */
.sidebar-theme-toggle{display:flex;align-items:center;gap:9px;width:100%;min-height:39px;margin:0 0 9px;padding:0 10px;border:1px solid rgba(255,255,255,.18);border-radius:11px;background:rgba(255,255,255,.07);color:#d9eaf1;text-align:left;font-size:10px;font-weight:700;cursor:pointer}.sidebar-theme-toggle svg{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-theme-toggle span{flex:1}.sidebar-theme-toggle i{position:relative;width:28px;height:16px;border-radius:9px;background:rgba(255,255,255,.25)}.sidebar-theme-toggle i:after{position:absolute;content:'';top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform .18s}.dark .sidebar-theme-toggle i{background:#f39824}.dark .sidebar-theme-toggle i:after{transform:translateX(12px)}.sidebar-theme-toggle:hover{background:rgba(255,255,255,.13);color:#fff}
body.sidebar-collapsed .sidebar-theme-toggle{width:42px;height:42px;min-height:42px;margin:0 auto 9px;padding:0;justify-content:center;border:0;background:rgba(255,255,255,.08)}body.sidebar-collapsed .sidebar-theme-toggle span,body.sidebar-collapsed .sidebar-theme-toggle i{display:none}body.sidebar-collapsed .sidebar-theme-toggle svg{width:19px;height:19px;flex-basis:19px}@media(max-width:800px){body.sidebar-collapsed .sidebar-theme-toggle{width:100%;height:39px;min-height:39px;justify-content:flex-start;margin:0 0 9px;padding:0 10px;border:1px solid rgba(255,255,255,.18)}body.sidebar-collapsed .sidebar-theme-toggle span{display:block}body.sidebar-collapsed .sidebar-theme-toggle i{display:block;margin-left:auto}}
/* Classic Torex sidebar restored */
:root{--sidebar:223px}.sidebar{padding:18px 13px 16px;background:linear-gradient(180deg,#0a5279 0%,#084669 100%);color:#dcecf3;border-right:0;box-shadow:7px 0 22px rgba(5,47,72,.16)}.sidebar .brand.brand-logo{display:flex;flex-direction:column;align-items:center;gap:0;padding:2px 6px 17px;margin:0 0 12px;border-bottom:1px solid rgba(255,255,255,.17)}.sidebar .brand-logo-surface{width:100%;height:65px;display:grid;place-items:center;background:transparent}.sidebar .brand-logo-surface img{width:175px;max-width:100%;max-height:57px;object-fit:contain;filter:brightness(0) invert(1)}.sidebar .brand.brand-logo>small{margin:0;color:#b4d2df;font-size:8px;font-weight:800;letter-spacing:1px}.sidebar nav{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:3px 0 12px;overflow:auto}.sidebar nav:before{display:none}.sidebar-nav-group{display:flex;flex-direction:column;gap:2px}.sidebar-group-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:23px;padding:0 7px;border:0;border-radius:6px;background:transparent;color:#a8cbd9;font-size:8px;font-weight:850;letter-spacing:1px;text-align:left;text-transform:uppercase;cursor:pointer}.sidebar-group-toggle:hover{background:rgba(255,255,255,.07);color:#fff}.sidebar-group-toggle svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .18s}.sidebar-nav-group.open .sidebar-group-toggle svg{transform:rotate(180deg)}.sidebar-group-links{display:none;flex-direction:column;gap:3px;padding-top:3px}.sidebar-nav-group.open .sidebar-group-links{display:flex}.sidebar .nav-link,.sidebar-modules .sidebar-module-group .nav-link{display:flex;align-items:center;gap:11px;width:100%;min-height:37px;padding:0 11px;border:1px solid transparent;border-radius:9px;background:transparent;box-shadow:none;color:#d9eaf1;font-size:11px;font-weight:650;text-decoration:none}.sidebar .nav-link:hover,.sidebar-modules .sidebar-module-group .nav-link:hover{background:rgba(255,255,255,.1);color:#fff}.sidebar .nav-icon,.sidebar-modules .sidebar-module-group .nav-icon{display:grid;width:18px;height:18px;flex:0 0 18px;place-items:center;color:#a9ccda}.sidebar .nav-icon svg,.sidebar-modules .sidebar-module-group .nav-icon svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar .nav-link.active,.sidebar-modules .sidebar-module-group .nav-link.active{background:#fff;color:#0b527d;border-color:#fff;box-shadow:0 4px 12px rgba(1,37,59,.12)}.sidebar .nav-link.active .nav-icon,.sidebar-modules .sidebar-module-group .nav-link.active .nav-icon{color:#0b527d}.sidebar .sidebar-footer{margin-top:auto;padding:13px 3px 0;border-top:1px solid rgba(255,255,255,.18)}.sidebar .org-chip{display:flex;align-items:center;gap:9px}.sidebar .org-chip .avatar{width:33px;height:33px;flex:0 0 33px;border-radius:9px;background:#f39824;color:#fff}.sidebar .org-chip b,.sidebar .org-chip small{display:block;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .org-chip b{color:#fff;font-size:10px}.sidebar .org-chip small{color:#b5d2df;font-size:9px}.sidebar .sidebar-collapse{position:absolute;z-index:3;top:72px;right:-13px;width:27px;height:27px;border:1px solid #dbe8ee;border-radius:50%;background:#fff;color:#0b527d;box-shadow:0 4px 12px rgba(5,47,72,.17)}.sidebar .sidebar-collapse:hover{background:#fff3e3;color:#a85b00}.dark .sidebar{background:linear-gradient(180deg,#082f48 0%,#06283d 100%);border-right-color:#1b465c}.dark .sidebar-group-toggle{color:#95b9c8}.dark .sidebar .nav-link{color:#cfdee4}.dark .sidebar .nav-link.active{background:#edf6f9;color:#093e5b}.dark .sidebar .nav-link.active .nav-icon{color:#0b527d}.dark .sidebar .org-chip b{color:#f2f8fa}.dark .sidebar .org-chip small{color:#a3c0cc}body.sidebar-collapsed .sidebar-nav-group{width:100%;align-items:center}body.sidebar-collapsed .sidebar-group-toggle{display:none}body.sidebar-collapsed .sidebar-group-links{display:flex!important;width:100%;padding:0}body.sidebar-collapsed .sidebar-nav-group{gap:4px;padding-bottom:5px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.16)}body.sidebar-collapsed .sidebar-nav-group:last-child{border:0}body.sidebar-collapsed .sidebar .nav-link{display:flex;width:48px;min-height:42px;margin:0 auto;padding:0;justify-content:center;border:0;background:transparent}body.sidebar-collapsed .sidebar .nav-link>span:not(.nav-icon){display:none}body.sidebar-collapsed .sidebar .nav-icon{width:42px;height:42px;flex-basis:42px;border-radius:50%}body.sidebar-collapsed .sidebar .nav-link.active .nav-icon{background:#fff;color:#0b527d}body.sidebar-collapsed .sidebar .brand.brand-logo{padding-left:0;padding-right:0}body.sidebar-collapsed .sidebar .brand-logo-surface{height:48px}body.sidebar-collapsed .sidebar .brand-logo-surface img{width:45px;height:45px}body.sidebar-collapsed .sidebar .brand.brand-logo>small,body.sidebar-collapsed .sidebar .org-chip>span:last-child{display:none}body.sidebar-collapsed .sidebar .org-chip{justify-content:center}body.sidebar-collapsed .sidebar .sidebar-footer{padding-left:0;padding-right:0}body.sidebar-collapsed .sidebar .sidebar-collapse span{transform:rotate(180deg)}@media(max-width:800px){:root{--sidebar:264px}.sidebar{padding:18px 14px}.sidebar .brand.brand-logo{padding-bottom:17px}.sidebar .brand-logo-surface img{width:175px!important;height:auto!important;max-height:57px!important}.sidebar .brand.brand-logo>small{display:block!important}body.sidebar-collapsed .sidebar{width:264px}body.sidebar-collapsed .sidebar .nav-link{width:100%;min-height:37px;padding:0 11px;justify-content:flex-start}body.sidebar-collapsed .sidebar .nav-link>span:not(.nav-icon){display:block}body.sidebar-collapsed .sidebar .nav-icon{width:18px;height:18px;flex-basis:18px}body.sidebar-collapsed .sidebar-group-toggle{display:flex}.sidebar .sidebar-collapse{display:none}body.sidebar-collapsed .sidebar .org-chip>span:last-child{display:block}body.sidebar-collapsed .sidebar .org-chip{justify-content:flex-start}}
/* Split navigation rail adapted to the Torex palette */
:root{--sidebar:264px}.sidebar{padding:20px 13px 16px}.sidebar nav{position:relative;gap:12px;padding:4px 0 12px;overflow-x:hidden}.sidebar nav:before{position:absolute;z-index:0;content:'';top:0;bottom:0;left:57px;border-left:1px solid rgba(255,255,255,.2);pointer-events:none}.sidebar-nav-group{position:relative;z-index:1;gap:4px}.sidebar-group-toggle{min-height:26px;margin-left:68px;padding:0 9px;font-size:8px;letter-spacing:1px}.sidebar-group-links{gap:5px;padding-top:4px}.sidebar .nav-link{display:grid;grid-template-columns:57px minmax(0,1fr);gap:0;min-height:41px;padding:0;border:0;border-radius:0;background:transparent;color:#d7e8ef}.sidebar .nav-link:hover{background:transparent;color:#fff}.sidebar .nav-icon{width:57px;height:39px;flex:0 0 57px;display:grid;place-items:center;border-radius:50%;color:#afd0df}.sidebar .nav-icon svg{width:18px;height:18px}.sidebar .nav-link>span:last-child{display:flex;align-items:center;min-width:0;min-height:37px;margin:2px 0;padding:0 12px;border-radius:20px;color:inherit;font-size:11px;transition:background .16s,color .16s}.sidebar .nav-link:hover>span:last-child{background:rgba(255,255,255,.09);color:#fff}.sidebar .nav-link.active{background:transparent;border:0;box-shadow:none;color:#874c08}.sidebar .nav-link.active .nav-icon{background:#fff0dc;color:#9e5a08}.sidebar .nav-link.active>span:last-child{background:#fff0dc;color:#874c08;font-weight:800}.sidebar .sidebar-footer{padding-left:6px;padding-right:6px}body.sidebar-collapsed .sidebar nav:before{display:none}body.sidebar-collapsed .sidebar-group-toggle{display:none}body.sidebar-collapsed .sidebar-nav-group{gap:3px;padding-bottom:6px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.16)}body.sidebar-collapsed .sidebar-nav-group:last-child{border:0}body.sidebar-collapsed .sidebar .nav-link,body.sidebar-collapsed .sidebar .nav-link.active{display:flex;width:48px;height:43px;min-height:43px;margin:0 auto;padding:0;justify-content:center;background:transparent;box-shadow:none}body.sidebar-collapsed .sidebar .nav-icon{width:42px;height:42px;flex-basis:42px}body.sidebar-collapsed .sidebar .nav-link>span:last-child{display:none}body.sidebar-collapsed .sidebar .nav-link.active .nav-icon{background:#fff0dc;color:#9e5a08}@media(max-width:800px){.sidebar nav:before{left:57px}.sidebar-group-toggle{margin-left:68px}.sidebar .nav-link,body.sidebar-collapsed .sidebar .nav-link{display:grid;width:100%;height:41px;min-height:41px;margin:0;padding:0;grid-template-columns:57px minmax(0,1fr);justify-content:initial}.sidebar .nav-icon,body.sidebar-collapsed .sidebar .nav-icon{width:57px;height:39px;flex-basis:57px}.sidebar .nav-link>span:last-child{display:flex!important}body.sidebar-collapsed .sidebar-group-toggle{display:flex}body.sidebar-collapsed .sidebar-nav-group{border:0}}
/* Light icon rail inspired by the latest sidebar reference */
:root{--sidebar:82px}.sidebar{width:var(--sidebar);padding:15px 10px 13px;background:linear-gradient(180deg,#fbfdfe,#f3f8fa);color:#28485a;border-right:1px solid #dfe9ee;box-shadow:5px 0 20px rgba(15,55,77,.08)}.sidebar .brand.brand-logo{align-items:center;padding:2px 0 12px;margin:0 0 10px;border-bottom:1px solid #e1eaee}.sidebar .brand-logo-surface{width:54px;height:48px;display:grid;place-items:center}.sidebar .brand-logo-surface img{width:53px;height:45px;max-width:100%;max-height:45px;object-fit:contain;filter:none}.sidebar .brand.brand-logo>small{display:none}.sidebar nav{position:relative;display:flex;align-items:center;gap:8px;padding:2px 0 10px;overflow-x:visible}.sidebar nav:before{display:none}.sidebar-nav-group{position:relative;display:flex;width:100%;align-items:center;gap:4px;padding-bottom:5px;margin-bottom:3px;border-bottom:1px solid #e0e9ed}.sidebar-nav-group:last-child{border:0}.sidebar-group-toggle{display:none!important}.sidebar-group-links,.sidebar-nav-group.open .sidebar-group-links{display:flex!important;flex-direction:column;align-items:center;gap:3px;width:100%;padding:0}.sidebar .nav-link{display:flex;width:48px;height:42px;min-height:42px;margin:0 auto;padding:0;justify-content:center;gap:0;border:1px solid transparent;border-radius:13px;background:transparent;box-shadow:none;color:#718995}.sidebar .nav-link>span:not(.nav-icon){display:none}.sidebar .nav-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px;color:#587987}.sidebar .nav-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar .nav-link:hover{background:#edf4f7;color:#0b527d}.sidebar .nav-link.active{border-color:#f0dfc7;background:#fff1dd;color:#9a5a12;box-shadow:0 3px 9px rgba(123,83,31,.08)}.sidebar .nav-link.active .nav-icon{color:#b36d13}.sidebar .sidebar-footer{margin-top:auto;padding:10px 0 0;border-top:1px solid #e1eaee}.sidebar .org-chip{justify-content:center}.sidebar .org-chip .avatar{width:40px;height:40px;border:1px solid #f0dfc7;border-radius:13px;background:#fff0dc;color:#9b5e13}.sidebar .org-chip>span:last-child{display:none}.sidebar .sidebar-collapse{top:65px;right:-12px;width:24px;height:24px;border-color:#dce7ed;background:#fff;color:#45697a;box-shadow:0 3px 8px rgba(24,55,71,.12)}.sidebar .sidebar-collapse:hover{background:#fff2df;color:#9b5e13}.sidebar-tooltip{position:fixed;z-index:200;max-width:230px;padding:8px 12px;border:1px solid #dce7ed;border-left:3px solid #f39824;border-radius:9px;background:#fff;color:#174a67;box-shadow:0 8px 23px rgba(23,56,76,.17);font-size:11px;font-weight:750;line-height:1.2;white-space:nowrap;opacity:0;transform:translateX(-4px);transition:opacity .12s ease,transform .12s ease;pointer-events:none}.sidebar-tooltip.visible{opacity:1;transform:translateX(0)}.dark .sidebar{background:linear-gradient(180deg,#112e3b,#0b2431);border-right-color:#294653}.dark .sidebar .brand.brand-logo{border-bottom-color:#294653}.dark .sidebar .brand-logo-surface img{filter:brightness(0) invert(1)}.dark .sidebar-nav-group{border-bottom-color:#294653}.dark .sidebar .nav-link{color:#a8c0ca}.dark .sidebar .nav-link:hover{background:#1d3e4c;color:#e8f6fa}.dark .sidebar .nav-link.active{border-color:#644e30;background:#3c3022;color:#ffdda8}.dark .sidebar .nav-link.active .nav-icon{color:#ffca78}.dark .sidebar .sidebar-footer{border-top-color:#294653}.dark .sidebar .org-chip .avatar{border-color:#634b2b;background:#392e20;color:#ffd08b}.dark .sidebar .sidebar-collapse{border-color:#315260;background:#183744;color:#d9edf4}.dark .sidebar-tooltip{border-color:#355261;background:#173744;color:#eff9fc}.dark .sidebar-tooltip.visible{opacity:1}
body.sidebar-collapsed{--sidebar:82px}body.sidebar-collapsed .sidebar{width:82px}body.sidebar-collapsed .sidebar .brand.brand-logo{align-items:center;padding:2px 0 12px}body.sidebar-collapsed .sidebar .brand-logo-surface{width:54px;height:48px}body.sidebar-collapsed .sidebar .brand-logo-surface img{width:53px;height:45px;object-fit:contain}body.sidebar-collapsed .sidebar .brand.brand-logo>small,body.sidebar-collapsed .sidebar .nav-link>span:not(.nav-icon),body.sidebar-collapsed .sidebar .org-chip>span:last-child{display:none}body.sidebar-collapsed .sidebar nav{align-items:center}body.sidebar-collapsed .sidebar-nav-group{width:100%;align-items:center}body.sidebar-collapsed .sidebar-group-links{display:flex!important}body.sidebar-collapsed .sidebar .nav-link{width:48px;height:42px;margin:0 auto;padding:0;justify-content:center}body.sidebar-collapsed .sidebar .nav-icon{width:42px;height:42px;flex-basis:42px}body.sidebar-collapsed .sidebar .org-chip{justify-content:center}body.sidebar-collapsed .sidebar .sidebar-collapse span{transform:rotate(180deg)}@media(max-width:800px){:root{--sidebar:264px}.sidebar{width:264px;padding:20px 14px}.sidebar .brand.brand-logo{align-items:center;padding-bottom:16px}.sidebar .brand-logo-surface{width:100%;height:58px}.sidebar .brand-logo-surface img{width:175px;height:auto;max-height:55px}.sidebar .brand.brand-logo>small{display:block}body.sidebar-collapsed{--sidebar:264px}body.sidebar-collapsed .sidebar{width:264px}body.sidebar-collapsed .sidebar .brand.brand-logo{padding-bottom:16px}body.sidebar-collapsed .sidebar .nav-link{width:48px;height:42px}body.sidebar-collapsed .sidebar .nav-link>span:not(.nav-icon){display:none}.sidebar-collapse{display:none}}

body:not(.sidebar-collapsed) .sidebar nav{align-items:stretch;gap:12px}body:not(.sidebar-collapsed) .sidebar-nav-group{align-items:stretch;gap:3px;padding:0 0 5px;border-bottom:1px solid #e1eaee}body:not(.sidebar-collapsed) .sidebar-group-toggle{display:flex!important;align-self:stretch;min-height:27px;margin:0;padding:0 8px;color:#718895;font-size:8px}body:not(.sidebar-collapsed) .sidebar-group-links,body:not(.sidebar-collapsed) .sidebar-nav-group.open .sidebar-group-links{align-items:stretch;gap:3px;padding-top:3px}body:not(.sidebar-collapsed) .sidebar .nav-link{display:flex;width:100%;height:auto;min-height:39px;margin:0;padding:0 11px;justify-content:flex-start;gap:11px;border-radius:10px}body:not(.sidebar-collapsed) .sidebar .nav-link>span:not(.nav-icon){display:flex;align-items:center;color:inherit;font-size:11px}body:not(.sidebar-collapsed) .sidebar .nav-icon{width:22px;height:22px;flex-basis:22px}body:not(.sidebar-collapsed) .sidebar .brand.brand-logo>small{display:block}body:not(.sidebar-collapsed) .sidebar .org-chip>span:last-child{display:block}body:not(.sidebar-collapsed) .sidebar .org-chip{justify-content:flex-start}@media(max-width:800px){.sidebar .sidebar-group-toggle{display:flex!important;margin:0;min-height:27px;color:#a8bdc7}body.sidebar-collapsed .sidebar .nav-link{width:100%;height:auto;min-height:39px;padding:0 11px;justify-content:flex-start}body.sidebar-collapsed .sidebar .nav-link>span:not(.nav-icon){display:flex!important;color:inherit;font-size:11px}body.sidebar-collapsed .sidebar .nav-icon{width:22px;height:22px;flex-basis:22px}body.sidebar-collapsed .sidebar .brand.brand-logo>small,body.sidebar-collapsed .sidebar .org-chip>span:last-child{display:block}body.sidebar-collapsed .sidebar .org-chip{justify-content:flex-start}}

/* Torex blue accents on the light icon rail */
.sidebar .nav-icon{color:#0b527d}.sidebar .nav-link:hover{background:#e8f2f7;color:#0b527d}.sidebar .nav-link.active{border-color:#d4e6ee;background:#e8f2f7;color:#0b527d}.sidebar .nav-link.active .nav-icon{color:#0b527d}.sidebar-tooltip{border-left-color:#f39824;color:#0b527d}.sidebar .sidebar-collapse{color:#0b527d;border-color:#cbdfe8}.dark .sidebar .nav-icon{color:#a8c4d0}.dark .sidebar .nav-link.active{border-color:#365a69;background:#244857;color:#e8f6fb}.dark .sidebar .nav-link.active .nav-icon{color:#f4aa43}

/* Torex blue sidebar background */
.sidebar{background:linear-gradient(180deg,#0b527d 0%,#08466c 100%);border-right-color:#083e60;box-shadow:5px 0 22px rgba(7,54,82,.18);color:#dcecf3}.sidebar .brand.brand-logo{border-bottom-color:rgba(255,255,255,.18)}.sidebar .brand-logo-surface img{filter:brightness(0) invert(1)}.sidebar nav:before{border-left-color:rgba(255,255,255,.2)}.sidebar-nav-group{border-bottom-color:rgba(255,255,255,.18)}.sidebar .nav-icon{color:#b8d4df}.sidebar .nav-link{color:#d4e6ed}.sidebar .nav-link:hover{background:#17658d;color:#fff}.sidebar .nav-link.active{border-color:#f1dfc6;background:#fff0dc;color:#874c08}.sidebar .nav-link.active .nav-icon{color:#9e5a08}.sidebar .sidebar-footer{border-top-color:rgba(255,255,255,.18)}.sidebar .org-chip b{color:#fff}.sidebar .org-chip small{color:#b6d1dd}.sidebar .org-chip .avatar{background:#f39824;color:#fff}.sidebar .sidebar-collapse{background:#fff;color:#0b527d;border-color:rgba(255,255,255,.7)}.sidebar-tooltip{border-color:#d5e3e9;border-left-color:#f39824;background:#fff;color:#0b527d}.dark .sidebar{background:linear-gradient(180deg,#073b5c 0%,#062f49 100%);border-right-color:#1a4b66}.dark .sidebar .brand-logo-surface img{filter:brightness(0) invert(1)}.dark .sidebar .nav-link.active{background:#fff0dc;border-color:#f1dfc6;color:#874c08}.dark .sidebar .nav-link.active .nav-icon{color:#9e5a08}.dark .sidebar-tooltip{background:#fff;color:#0b527d}

/* Flat sidebar navigation without group headers or dividers */
.sidebar-group-toggle{display:none!important}.sidebar-nav-group{padding:0!important;margin:0!important;border:0!important;gap:0!important}.sidebar-group-links,.sidebar-nav-group.open .sidebar-group-links{display:flex!important;padding:0!important}.sidebar nav{gap:7px!important}.sidebar .nav-link{margin:0 auto!important}body.sidebar-collapsed .sidebar-nav-group{border:0!important;padding:0!important;margin:0!important}.dark .sidebar-nav-group{border:0!important}

/* Light blue module tooltips */
.sidebar-tooltip{background:#e8f2f7;border-color:#c8dce6;border-left-color:#0b6b96;color:#0b527d;box-shadow:0 8px 22px rgba(7,62,94,.16)}.dark .sidebar-tooltip{background:#dceef5;border-color:#b8d5e1;border-left-color:#0b6b96;color:#08466c}

/* Light orange module tooltips */
.sidebar-tooltip{background:#fff0dc;border-color:#f1d5ad;border-left-color:#e68a16;color:#784509;box-shadow:0 8px 22px rgba(95,61,20,.16)}.dark .sidebar-tooltip{background:#fff0dc;border-color:#f1d5ad;border-left-color:#e68a16;color:#784509}
/* Sidebar permanently locked in compact mode */
:root{--sidebar:82px}body:not(.sidebar-collapsed){--sidebar:82px}body:not(.sidebar-collapsed) .sidebar{width:82px}body:not(.sidebar-collapsed) .sidebar-group-toggle{display:none!important}body:not(.sidebar-collapsed) .sidebar-group-links{display:flex!important}body:not(.sidebar-collapsed) .sidebar .nav-link{display:flex;width:48px;height:42px;min-height:42px;margin:0 auto;padding:0;justify-content:center}body:not(.sidebar-collapsed) .sidebar .nav-link>span:not(.nav-icon){display:none}body:not(.sidebar-collapsed) .sidebar .brand.brand-logo>small,body:not(.sidebar-collapsed) .sidebar .org-chip>span:last-child{display:none}body:not(.sidebar-collapsed) .sidebar .org-chip{justify-content:center}body:not(.sidebar-collapsed) .sidebar .brand-logo-surface{width:54px;height:48px}body:not(.sidebar-collapsed) .sidebar .brand-logo-surface img{width:53px;height:45px;object-fit:contain}.sidebar-collapse{display:none!important}

/* Base produits : tableau des catégories. */
.category-manager .table-wrap{margin:0}.category-manager table{min-width:760px}.category-manager .product-row-actions form{margin:0}
.product-base-tabs{display:flex;align-items:center;gap:5px;width:max-content;max-width:100%;margin:0 0 15px;padding:4px;border-radius:10px;background:var(--surface)}.product-base-tabs button{white-space:nowrap;padding:8px 11px;border-radius:8px;font-size:10px}.product-base-tabs button.active{background:#eaf2f6;color:#0b527d;box-shadow:none}.dark .product-base-tabs{background:var(--surface)}.dark .product-base-tabs button.active{background:#1a465b;color:#bfe2ef}
.organization-profile-panel{margin-bottom:16px}.organization-brand-form{padding:0 21px 22px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.organization-brand-form>label small{display:block;margin-top:5px;color:var(--muted);font-size:10px;font-weight:500}.organization-brand-preview{display:flex;align-items:center;gap:13px;padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);min-height:76px}.organization-brand-preview img{width:110px;height:54px;object-fit:contain}.organization-brand-preview span{font-size:11px;color:var(--muted)}.organization-brand-color input[type=color]{height:42px;padding:4px;cursor:pointer}.organization-brand-form .form-actions{justify-content:flex-end}.btn.primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 7px 18px color-mix(in srgb,var(--primary) 24%,transparent)}.organization-brand-panel{border-left-color:var(--primary)}

.auth-panel{background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 80%,#091923),color-mix(in srgb,var(--primary) 48%,#091923))}.auth-copy h1 em{color:color-mix(in srgb,var(--primary) 32%,white)}.pill{background:color-mix(in srgb,var(--primary) 24%,transparent);border-color:color-mix(in srgb,var(--primary) 48%,transparent);color:color-mix(in srgb,var(--primary) 38%,white)}

/* Connexion SaaS */
.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:28px;background:#edf3f7}.login-layout{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(410px,.96fr);width:min(1480px,calc(100vw - 64px));min-height:min(900px,calc(100vh - 64px));margin:0 auto;overflow:hidden;border:1px solid rgba(18,62,88,.07);border-radius:26px;background:#fff;box-shadow:0 28px 90px rgba(16,49,70,.14)}.login-showcase{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:42px 48px 34px;overflow:hidden;color:#fff;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 82%,#071b29),color-mix(in srgb,var(--primary) 54%,#0a2535))}.login-showcase:before{position:absolute;z-index:-1;inset:0;content:'';opacity:.22;background:radial-gradient(circle at 80% 18%,transparent 0 80px,rgba(255,255,255,.3) 81px 82px,transparent 83px 125px,rgba(255,255,255,.22) 126px 127px,transparent 128px),linear-gradient(135deg,transparent 65%,rgba(255,255,255,.08))}.login-showcase-orb{position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none}.login-showcase-orb-one{width:410px;height:410px;right:-170px;top:70px}.login-showcase-orb-two{width:280px;height:280px;right:-105px;top:135px}.login-brand{display:flex;align-items:center;gap:14px;color:#fff}.login-brand-logo{display:grid;place-items:center;width:60px;height:60px;padding:6px;border-radius:14px;background:#fff;box-shadow:0 10px 25px rgba(0,0,0,.14)}.login-brand-logo img{max-width:100%;max-height:100%;object-fit:contain}.login-brand>span:last-child b,.login-brand>span:last-child small{display:block}.login-brand>span:last-child b{max-width:250px;font:750 16px/1.25 Manrope,'DM Sans',sans-serif}.login-brand>span:last-child small{margin-top:5px;color:rgba(255,255,255,.63);font-size:8px;font-weight:800;letter-spacing:1.8px}.login-showcase-copy{position:relative;max-width:520px;margin:65px 0 50px}.login-overline{display:inline-flex;align-items:center;gap:9px;color:#d5e5ed;font-size:9px;font-weight:800;letter-spacing:1.4px}.login-overline i,.login-secure-tag i{width:7px;height:7px;border-radius:50%;background:#f39a54;box-shadow:0 0 0 4px rgba(243,154,84,.15)}.login-showcase-copy h1{margin:19px 0 13px;color:#fff;font:750 clamp(33px,4vw,49px)/1.1 Manrope,'DM Sans',sans-serif;letter-spacing:-1.4px}.login-showcase-copy h1 em{color:color-mix(in srgb,var(--primary) 28%,#fff);font-style:normal}.login-showcase-copy>p{max-width:425px;margin:0;color:rgba(240,248,251,.72);font-size:13px;line-height:1.8}.login-feature-list{display:grid;gap:14px;margin-top:31px}.login-feature-list>div{display:flex;align-items:center;gap:12px}.login-feature-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:rgba(255,255,255,.08);color:#fff}.login-feature-icon svg,.login-assurance-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login-feature-list b,.login-feature-list small,.login-assurance b,.login-assurance small{display:block}.login-feature-list b{font-size:11px}.login-feature-list small{margin-top:2px;color:rgba(240,248,251,.6);font-size:9px}.login-assurance{display:flex;align-items:center;gap:12px;width:fit-content;padding:12px 15px;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:rgba(255,255,255,.075);backdrop-filter:blur(8px)}.login-assurance-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.12);color:#fff}.login-assurance b{font-size:10px}.login-assurance small{margin-top:2px;color:rgba(240,248,251,.63);font-size:8px}.login-form-panel{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:50px clamp(34px,6vw,78px) 23px;background:#fff}.login-form-content{width:min(390px,100%);margin:0 auto}.login-form-heading{margin-bottom:28px}.login-secure-tag{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid color-mix(in srgb,var(--primary) 14%,#fff);border-radius:20px;background:color-mix(in srgb,var(--primary) 7%,#fff);color:var(--primary);font-size:8px;font-weight:850;letter-spacing:1.1px}.login-secure-tag i{width:6px;height:6px;box-shadow:none}.login-form-heading h2{margin:16px 0 6px;color:#18374b;font:750 27px/1.2 Manrope,'DM Sans',sans-serif;letter-spacing:-.7px}.login-form-heading p{margin:0;color:#82919a;font-size:11px}.login-error{margin:0 0 16px;font-size:11px}.login-form>label,.login-password-label label{display:block;margin:15px 0 7px;color:#435865;font-size:10px;font-weight:750}.login-input-wrap{display:flex;align-items:center;gap:10px;height:47px;padding:0 13px;border:1px solid #dce5e9;border-radius:10px;background:#fbfcfd;color:#94a4ad;transition:border-color .16s,box-shadow .16s,background .16s}.login-input-wrap:focus-within{border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.login-input-wrap>svg{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.login-input-wrap input{width:100%;min-width:0;height:100%;padding:0;border:0;outline:0;background:transparent;color:#243b49;font-size:11px}.login-input-wrap input::placeholder{color:#a4b0b7}.login-password-label{display:flex;align-items:center;justify-content:space-between}.login-password-label label{margin-bottom:7px}.login-password-label a{margin-top:8px;color:var(--primary);font-size:9px;font-weight:750}.password-toggle{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:0;border-radius:7px;background:transparent;color:#82939d;cursor:pointer}.password-toggle:hover{background:#eef3f5;color:var(--primary)}.password-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login-submit{display:flex;justify-content:space-between;height:48px;margin-top:24px!important;padding:0 16px!important;border:0!important;border-radius:10px!important;background:var(--primary)!important;color:#fff!important;font-size:11px!important;font-weight:800!important;box-shadow:0 9px 20px color-mix(in srgb,var(--primary) 24%,transparent)!important;transition:transform .18s,box-shadow .18s}.login-submit:hover{transform:translateY(-1px);box-shadow:0 12px 24px color-mix(in srgb,var(--primary) 32%,transparent)!important}.login-submit svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.login-form .login-hint{margin:13px 0 0;color:#a0adb4;font-size:8px}.login-form-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:23px;padding-top:18px;border-top:1px solid #edf0f2;color:#8b999f;font-size:9px}.login-form-foot a{color:var(--primary);font-weight:800}.login-form-foot a b{padding-left:3px}.login-copyright{margin-top:32px;color:#a1adb3;text-align:center;font-size:8px}.login-copyright span{padding:0 4px;color:#ccd4d8}.login-page .login-mobile-logo{display:none}
@media(max-width:900px){.login-page{display:block;padding:18px}.login-layout{width:100%;grid-template-columns:1fr;max-width:620px;min-height:0}.login-showcase{min-height:300px;padding:25px 30px 21px}.login-brand-logo{width:49px;height:49px}.login-showcase-copy{margin:28px 0 20px}.login-showcase-copy h1{margin:13px 0 8px;font-size:34px}.login-showcase-copy>p{max-width:500px;font-size:11px}.login-feature-list{display:none}.login-assurance{padding:8px 11px}.login-assurance-icon{width:29px;height:29px}.login-form-panel{padding:34px 30px 17px}.login-copyright{margin-top:22px}}
@media(max-width:540px){.login-page{padding:0;background:#fff}.login-layout{min-height:100vh;border:0;border-radius:0;box-shadow:none}.login-showcase{min-height:0;padding:20px 22px 23px}.login-brand-logo{width:43px;height:43px;border-radius:11px}.login-brand>span:last-child b{font-size:13px}.login-brand>span:last-child small{font-size:7px}.login-showcase-copy{margin:24px 0 19px}.login-showcase-copy h1{font-size:29px}.login-showcase-copy>p{font-size:10px}.login-overline{font-size:8px}.login-assurance{display:none}.login-form-panel{justify-content:flex-start;padding:30px 24px 17px}.login-form-heading{margin-bottom:22px}.login-form-heading h2{font-size:24px}.login-form>label,.login-password-label label{margin-top:13px}.login-input-wrap{height:45px}.login-submit{height:46px;margin-top:20px!important}.login-form-foot{margin-top:19px}.login-copyright{margin-top:auto;padding-top:20px}}
.login-expand{position:absolute;z-index:6;top:15px;right:15px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #e2e9ed;border-radius:9px;background:rgba(255,255,255,.92);color:var(--primary);box-shadow:0 3px 10px rgba(16,49,70,.06);cursor:pointer;transition:background .15s,transform .15s}.login-expand:hover{background:#fff;transform:scale(1.04)}.login-expand svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.login-layout.expanded{position:fixed;z-index:200;inset:14px;width:auto;max-width:none;height:calc(100dvh - 28px);min-height:0;margin:0;grid-template-columns:minmax(0,1.08fr) minmax(460px,.92fr);border-radius:20px}.login-layout.expanded .login-showcase{padding:clamp(38px,6vh,76px) clamp(48px,8vw,120px)}.login-layout.expanded .login-form-panel{padding-right:clamp(54px,9vw,140px);padding-left:clamp(54px,9vw,140px)}@media(max-width:900px){.login-expand{display:none}}
.login-expand{top:19px;right:22px;display:flex!important;align-items:center;justify-content:center;gap:7px;width:auto;min-width:98px;height:38px;padding:0 11px;border-color:#ffd6a0;border-radius:10px;background:#fff4e5;color:#a85f06;font-size:10px;font-weight:800;box-shadow:0 3px 12px rgba(130,82,18,.12)}.login-expand:hover{background:#ffebd1}.login-expand svg{width:16px;height:16px}.login-layout.expanded{overflow:auto}@media(max-width:900px){.login-expand{top:12px;right:12px;min-width:36px;width:36px;height:36px;padding:0}.login-expand [data-expand-label]{display:none}.login-layout.expanded{position:fixed;inset:8px;width:auto;height:auto;min-height:0;max-width:none;grid-template-columns:1fr;overflow:auto;border-radius:16px}.login-layout.expanded .login-showcase{padding:25px 30px 21px}.login-layout.expanded .login-form-panel{padding:34px 30px 17px}}@media(max-width:540px){.login-layout.expanded{inset:0;border-radius:0}.login-layout.expanded .login-showcase{padding:20px 22px 23px}.login-layout.expanded .login-form-panel{padding:30px 24px 17px}}

/* Vue d’ensemble : tableau de pilotage entreprise */
.dashboard-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:21px}.dashboard-heading .eyebrow{margin-bottom:5px;color:#758a98}.dashboard-heading h2{margin:0;color:#173d56;font-size:28px;letter-spacing:-.65px}.dashboard-heading>div:first-child>p:last-child{margin:6px 0 0;color:#7b8e99;font-size:11px}.dashboard-heading-tools{display:flex;align-items:center;gap:12px}.dashboard-live{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #d9e9e1;border-radius:9px;background:#f5fbf7;color:#317653;font-size:9px;font-weight:750;white-space:nowrap}.dashboard-live i{width:7px;height:7px;border-radius:50%;background:#36a56a;box-shadow:0 0 0 3px #dff3e8}.dashboard-period{display:flex;align-items:center;gap:8px;padding:5px 8px 5px 11px;border:1px solid #dfe7eb;border-radius:9px;background:#fff}.dashboard-period label{color:#81929b;font-size:9px;font-weight:750}.dashboard-period select{height:29px;padding:0 22px 0 8px;border:0;border-radius:6px;background:#f3f7f9;color:#24495e;font-size:10px;font-weight:800;cursor:pointer}.dashboard-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px}.dashboard-metric{min-width:0;padding:15px 16px 13px;border:1px solid #e1e9ed;border-radius:13px;background:#fff;box-shadow:0 3px 12px rgba(17,54,75,.025)}.dashboard-metric-top{display:flex;align-items:center;justify-content:space-between;color:#6e8491;font-size:10px;font-weight:700}.dashboard-metric-top i{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#edf5f8;color:#0b527d;font-size:13px;font-style:normal;font-weight:850}.dashboard-metric> b{display:block;margin:8px 0 10px;overflow:hidden;color:#183e55;font:750 19px/1.15 Manrope,'DM Sans',sans-serif;text-overflow:ellipsis;white-space:nowrap}.dashboard-metric-track{height:4px;overflow:hidden;border-radius:5px;background:#edf2f4}.dashboard-metric-track i{display:block;height:100%;border-radius:inherit;background:#0b6b96}.dashboard-metric.receipts .dashboard-metric-top i{background:#e6f5ed;color:#188456}.dashboard-metric.receipts .dashboard-metric-track i{background:#21a366}.dashboard-metric.purchases .dashboard-metric-top i{background:#fff3e2;color:#bd7515}.dashboard-metric.purchases .dashboard-metric-track i{background:#efaa39}.dashboard-metric.expenses .dashboard-metric-top i{background:#fcebed;color:#c95664}.dashboard-metric.expenses .dashboard-metric-track i{background:#d96b74}.dashboard-metric>small{display:block;margin-top:7px;color:#98a6ad;font-size:8px}.dashboard-enterprise-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.dashboard-enterprise-grid .dashboard-chart-panel{padding:19px 20px;border:1px solid #e1e9ed;border-radius:14px;box-shadow:0 4px 16px rgba(17,54,75,.03)}.dashboard-enterprise-grid .panel-head{padding:0 0 11px}.dashboard-enterprise-grid .panel-head h3{color:#23485d;font-size:14px}.dashboard-enterprise-grid .panel-head .eyebrow{margin-bottom:4px;color:#8497a1;font-size:8px;letter-spacing:1.1px}.dashboard-enterprise-grid .panel-head>a{font-size:9px;white-space:nowrap}.dashboard-chart-subtitle{margin-top:5px!important;color:#82939c;font-size:9px}.dashboard-period-label{padding:6px 9px;border:1px solid #e4ebef;border-radius:7px;background:#f8fafb;color:#6f8490;font-size:9px;font-weight:700;white-space:nowrap}.dashboard-enterprise-grid .dashboard-chart-legend{gap:7px;margin:7px 0 10px;font-size:9px}.dashboard-enterprise-grid .dashboard-chart-legend span{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:#6d808a;font-size:9px}.dashboard-enterprise-grid .dashboard-chart-legend span:before{width:7px;height:7px;margin:0;border-radius:2px}.dashboard-enterprise-grid .dashboard-bars{height:211px;gap:4px;padding:14px 4px 0;background:repeating-linear-gradient(to top,transparent 0,transparent 50px,#edf2f4 51px,#edf2f4 52px);border-bottom:1px solid #dce5e9}.dashboard-enterprise-grid .dashboard-bar-month{flex:1;min-width:0;gap:6px}.dashboard-enterprise-grid .dashboard-bar-set{gap:2px}.dashboard-enterprise-grid .dashboard-bar-set i{width:min(21%,12px);min-width:2px;min-height:0;border-radius:3px 3px 0 0}.dashboard-enterprise-grid .dashboard-bar-set .sales{background:#0b6b96}.dashboard-enterprise-grid .dashboard-bar-set .receipts{background:#21a366}.dashboard-enterprise-grid .dashboard-bar-set .purchases{background:#efaa39}.dashboard-enterprise-grid .dashboard-bar-set .expenses{background:#d96b74}.dashboard-enterprise-grid .dashboard-bar-month small{color:#81919a;font-size:8px;font-weight:700}.dashboard-enterprise-grid .dashboard-donut-wrap{gap:20px;padding:15px 0 11px}.dashboard-enterprise-grid .dashboard-donut{width:112px;height:112px;filter:none;background:conic-gradient(#20a36a calc(var(--paid)*1%),#f1a141 0)}.dashboard-enterprise-grid .dashboard-donut:before{inset:13px}.dashboard-enterprise-grid .dashboard-donut b{color:#23485d;font-size:21px}.dashboard-enterprise-grid .dashboard-donut small{font-size:8px}.dashboard-enterprise-grid .dashboard-chart-key{min-width:104px}.dashboard-enterprise-grid .dashboard-chart-key p{grid-template-columns:9px 1fr auto;gap:6px;margin:9px 0;color:#71838e;font-size:10px}.dashboard-enterprise-grid .dashboard-chart-key i{width:7px;height:7px}.dashboard-enterprise-grid .dashboard-chart-key b{color:#294a5d;font-size:10px}.dashboard-enterprise-grid .dashboard-chart-caption{padding-top:9px;border-top:1px solid #edf1f3;color:#87969e;font-size:9px}.dashboard-enterprise-grid .dashboard-chart-caption b{color:#24495e;font-size:10px}.dashboard-enterprise-grid .dashboard-catalog-charts{grid-template-columns:minmax(260px,1fr) minmax(220px,.7fr);gap:24px;padding:10px 2px 0}.dashboard-enterprise-grid .dashboard-catalog-bars{gap:14px}.dashboard-enterprise-grid .dashboard-catalog-row>div{margin-bottom:5px;font-size:10px}.dashboard-enterprise-grid .dashboard-catalog-row>div b{color:#29495c;font-size:11px}.dashboard-enterprise-grid .dashboard-catalog-row>i{height:7px;background:#edf2f4}.dashboard-enterprise-grid .dashboard-catalog-row.products>i em{background:#0b6b96}.dashboard-enterprise-grid .dashboard-catalog-row.customers>i em{background:#21a366}.dashboard-enterprise-grid .dashboard-catalog-row.suppliers>i em{background:#e9a13a}.dashboard-enterprise-grid .dashboard-stock-value{min-height:132px;align-items:flex-start;padding:16px 18px;border:1px solid #e2e9ed;border-radius:11px;background:#f8fafb;text-align:left}.dashboard-enterprise-grid .dashboard-stock-value span{color:#6e8491;font-size:8px;letter-spacing:.65px}.dashboard-enterprise-grid .dashboard-stock-value b{margin:7px 0 4px;color:#193f56;font-size:21px}.dashboard-enterprise-grid .dashboard-stock-value small{text-align:left;font-size:8px}.dashboard-enterprise-grid .dashboard-stock-value a{margin-top:11px;color:#0b6b96;font-size:9px;font-weight:800}.dark .dashboard-heading h2,.dark .dashboard-metric>b,.dark .dashboard-enterprise-grid .panel-head h3,.dark .dashboard-enterprise-grid .dashboard-donut b,.dark .dashboard-enterprise-grid .dashboard-chart-key b,.dark .dashboard-enterprise-grid .dashboard-chart-caption b,.dark .dashboard-enterprise-grid .dashboard-catalog-row>div b,.dark .dashboard-enterprise-grid .dashboard-stock-value b{color:var(--text)}.dark .dashboard-metric,.dark .dashboard-enterprise-grid .dashboard-chart-panel{border-color:var(--border);background:var(--surface)}.dark .dashboard-period,.dark .dashboard-period select,.dark .dashboard-period-label,.dark .dashboard-enterprise-grid .dashboard-stock-value{border-color:var(--border);background:var(--surface-2);color:var(--text)}.dark .dashboard-enterprise-grid .dashboard-bars{background:repeating-linear-gradient(to top,transparent 0,transparent 50px,#294653 51px,#294653 52px);border-color:#345663}.dark .dashboard-enterprise-grid .dashboard-stock-value small{color:var(--muted)}
+@media(max-width:900px){.dashboard-heading{align-items:flex-start;flex-direction:column}.dashboard-heading-tools{width:100%;justify-content:space-between}.dashboard-enterprise-grid{grid-template-columns:1fr}.dashboard-enterprise-grid .dashboard-catalog-charts{grid-template-columns:minmax(0,1fr) minmax(190px,.7fr)}}
+@media(max-width:600px){.dashboard-heading h2{font-size:24px}.dashboard-heading-tools{align-items:flex-start;flex-direction:column}.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dashboard-metric{padding:12px}.dashboard-metric>b{font-size:15px}.dashboard-enterprise-grid .dashboard-chart-panel{padding:14px}.dashboard-enterprise-grid .dashboard-period-label{max-width:120px;white-space:normal;text-align:right}.dashboard-enterprise-grid .dashboard-bars{height:180px;gap:2px;padding-right:0;padding-left:0}.dashboard-enterprise-grid .dashboard-bar-set{gap:1px}.dashboard-enterprise-grid .dashboard-bar-month small{font-size:7px}.dashboard-enterprise-grid .dashboard-donut-wrap{gap:12px}.dashboard-enterprise-grid .dashboard-donut{width:96px;height:96px}.dashboard-enterprise-grid .dashboard-catalog-charts{grid-template-columns:1fr}.dashboard-enterprise-grid .dashboard-stock-value{min-height:115px}}

/* Contrôle utilisateur de la largeur du sidebar. */
body{--sidebar:82px}body:not(.sidebar-collapsed){--sidebar:264px}body.sidebar-collapsed .sidebar,body:not(.sidebar-collapsed) .sidebar{width:var(--sidebar)}.sidebar-size-toggle{display:flex;align-items:center;justify-content:center;gap:9px;width:48px;height:36px;flex:0 0 auto;margin:0 auto 10px;padding:0;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.1);color:#e7f4fa;cursor:pointer;transition:width .22s,background .18s,color .18s}.sidebar-size-toggle:hover{background:#fff0dc;color:#874c08;border-color:#f1dfc6}.sidebar-size-toggle svg{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s}.sidebar-size-toggle span{display:none;font-size:10px;font-weight:750;white-space:nowrap}.sidebar-size-toggle.expanded{width:100%;justify-content:flex-start;padding:0 12px}.sidebar-size-toggle.expanded svg{transform:rotate(180deg)}.sidebar-size-toggle.expanded span{display:inline}body:not(.sidebar-collapsed) .sidebar nav{align-items:stretch;gap:8px}body:not(.sidebar-collapsed) .sidebar .nav-link{display:flex;width:100%;height:auto;min-height:40px;margin:0;padding:0 12px;justify-content:flex-start;gap:11px}body:not(.sidebar-collapsed) .sidebar .nav-link>span:not(.nav-icon){display:flex;align-items:center;font-size:11px}body:not(.sidebar-collapsed) .sidebar .brand.brand-logo{align-items:stretch;padding:0 7px 14px}body:not(.sidebar-collapsed) .sidebar .brand-logo-surface{width:100%;height:54px}body:not(.sidebar-collapsed) .sidebar .brand-logo-surface img{width:100%;max-width:100%;height:45px;object-fit:contain;object-position:center}body:not(.sidebar-collapsed) .sidebar .brand.brand-logo>small{display:block}body:not(.sidebar-collapsed) .sidebar .org-chip{justify-content:flex-start}body:not(.sidebar-collapsed) .sidebar .org-chip>span:last-child{display:block}body:not(.sidebar-collapsed) .sidebar .sidebar-nav-group{align-items:stretch}body:not(.sidebar-collapsed) .sidebar-group-toggle{display:none!important}body:not(.sidebar-collapsed) .sidebar .sidebar-footer{padding-left:5px;padding-right:5px}@media(max-width:800px){body{--sidebar:264px}.sidebar-size-toggle{display:none!important}.sidebar.open .nav-link>span:not(.nav-icon){display:flex!important}.sidebar.open .nav-link{width:100%!important;justify-content:flex-start!important;padding:0 12px!important}.sidebar.open .sidebar-group-toggle{display:none!important}.sidebar.open .sidebar-group-links{display:flex!important}.sidebar.open .org-chip>span:last-child{display:block!important}.sidebar.open .org-chip{justify-content:flex-start!important}}
/* Séparateur entre l’icône et le libellé du module dans le sidebar développé. */
body:not(.sidebar-collapsed) .sidebar .nav-link{gap:0}body:not(.sidebar-collapsed) .sidebar .nav-icon{position:relative;width:32px;height:22px;flex:0 0 32px;margin-right:11px;padding-right:11px;border-right:1px solid rgba(255,255,255,.24)}body:not(.sidebar-collapsed) .sidebar .nav-link>span:not(.nav-icon){padding-left:0}body:not(.sidebar-collapsed) .sidebar .nav-link:hover .nav-icon,body:not(.sidebar-collapsed) .sidebar .nav-link.active .nav-icon{border-right-color:rgba(11,82,125,.24)}@media(max-width:800px){.sidebar.open .nav-link{gap:0!important}.sidebar.open .nav-icon{position:relative;width:32px!important;height:22px!important;flex:0 0 32px!important;margin-right:11px;padding-right:11px;border-right:1px solid rgba(255,255,255,.24)}.sidebar.open .nav-link>span:not(.nav-icon){padding-left:0}}

/* Sidebar Lite : surface claire, icônes Torex et sélection orange douce. */
body:not(.dark) .sidebar{background:#f8fbfd;border-right:1px solid #dfe9ee;box-shadow:4px 0 18px rgba(16,58,80,.045);color:#36566a}body:not(.dark) .sidebar .brand.brand-logo{border-bottom-color:#e3ebef}body:not(.dark) .sidebar .brand-logo-surface{background:transparent;border:0;box-shadow:none}body:not(.dark) .sidebar .brand-logo-surface img{filter:none}body:not(.dark) .sidebar .brand.brand-logo>small{color:#718c9a}body:not(.dark) .sidebar .nav-icon{color:#34708e}body:not(.dark) .sidebar .nav-link{color:#526f7e}body:not(.dark) .sidebar .nav-link:hover{background:#eaf2f6;color:#0b527d}body:not(.dark) .sidebar .nav-link.active{border-color:#f2d8b5;background:#fff0dc;color:#87510e;box-shadow:none}body:not(.dark) .sidebar .nav-link.active .nav-icon{color:#a96412}body:not(.dark) .sidebar .sidebar-footer{border-top-color:#e1e9ed}body:not(.dark) .sidebar .org-chip b{color:#294b5e}body:not(.dark) .sidebar .org-chip small{color:#78909c}body:not(.dark) .sidebar .org-chip .avatar{background:#ff9917;color:#fff}body:not(.dark) .sidebar-size-toggle{border-color:#dce7ed;background:#fff;color:#42677b;box-shadow:0 2px 6px rgba(16,58,80,.04)}body:not(.dark) .sidebar-size-toggle:hover{border-color:#f0d2a9;background:#fff0dc;color:#87510e}body:not(.dark) .sidebar-tooltip{border-color:#d5e3e9;border-left-color:#e68a16;background:#fff;color:#174a67;box-shadow:0 8px 20px rgba(23,56,76,.12)}body:not(.dark) .sidebar-group-toggle{color:#78919e}body:not(.dark) .sidebar-group-toggle:hover{background:#eaf2f6;color:#0b527d}body:not(.dark) .sidebar-nav-group:not(:last-child){border-bottom-color:#e5edf1}

/* KPI du tableau de bord : palette bleu Torex */
.dashboard-metric-grid .dashboard-metric{border-color:#0b527d;background:linear-gradient(135deg,#0b527d 0%,#126b91 100%);box-shadow:0 8px 20px rgba(11,82,125,.14)}
.dashboard-metric-grid .dashboard-metric-top{color:#d7eaf4}
.dashboard-metric-grid .dashboard-metric-top i{background:rgba(255,255,255,.16);color:#fff}
.dashboard-metric-grid .dashboard-metric>b{color:#fff}
.dashboard-metric-grid .dashboard-metric-track{background:rgba(255,255,255,.23)}
.dashboard-metric-grid .dashboard-metric-track i{background:#fff}
.dashboard-metric-grid .dashboard-metric.receipts .dashboard-metric-top i,.dashboard-metric-grid .dashboard-metric.purchases .dashboard-metric-top i,.dashboard-metric-grid .dashboard-metric.expenses .dashboard-metric-top i{background:rgba(255,255,255,.16);color:#fff}
.dashboard-metric-grid .dashboard-metric.receipts .dashboard-metric-track i,.dashboard-metric-grid .dashboard-metric.purchases .dashboard-metric-track i,.dashboard-metric-grid .dashboard-metric.expenses .dashboard-metric-track i{background:#fff}
.dashboard-metric-grid .dashboard-metric>small{color:#c3dce9}
.dark .dashboard-metric-grid .dashboard-metric{border-color:#246583;background:linear-gradient(135deg,#0b527d 0%,#126b91 100%)}


/* Action principale de la page ventes */
.sales-page-head>a.btn.primary{background:#fff!important;border-color:#fff!important;color:#07517c!important;box-shadow:0 6px 16px rgba(3,47,72,.16)!important}
.sales-page-head>a.btn.primary:hover{background:#eef8fc!important;border-color:#eef8fc!important;color:#07517c!important}
.sales-page-head [data-delivery-new]{background:#fff!important;border-color:#fff!important;color:#07517c!important;box-shadow:0 6px 16px rgba(3,47,72,.16)!important}
.sales-page-head [data-delivery-new]:hover{background:#eef8fc!important;border-color:#eef8fc!important;color:#07517c!important}


/* Action principale du catalogue produits */
.product-page-head .product-head-actions>.btn.primary{background:#fff!important;border-color:#fff!important;color:#07517c!important;box-shadow:0 6px 16px rgba(3,47,72,.16)!important}
.product-page-head .product-head-actions>.btn.primary:hover{background:#eef8fc!important;border-color:#eef8fc!important;color:#07517c!important}


/* Action principale des fiches clients et fournisseurs */
.party-page-head>.btn.primary{background:#fff!important;border-color:#fff!important;color:#07517c!important;box-shadow:0 6px 16px rgba(3,47,72,.16)!important}
.party-page-head>.btn.primary:hover{background:#eef8fc!important;border-color:#eef8fc!important;color:#07517c!important}


/* Bandeau bleu Torex de la page Administration */
.admin-hero{border-color:#07517c;background:linear-gradient(120deg,#07517c 0%,#0b6f9f 62%,#1598bb 100%);box-shadow:0 13px 30px rgba(5,73,111,.16)}
.admin-hero h2{color:#fff}
.admin-hero .eyebrow{color:#b8e4f2}
.admin-hero p:last-child{color:#e0f1f7}
.admin-hero-mark{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.14);color:#fff;box-shadow:none}
.dark .admin-hero{border-color:#07517c;background:linear-gradient(120deg,#073c5c 0%,#095c83 62%,#0d7895 100%)}

/* Palette commune des bandeaux bleus Torex */
:root{--torex-banner-start:#073f62;--torex-banner-mid:#0b527d;--torex-banner-end:#0b6b96;--torex-banner-shadow:rgba(7,63,98,.18)}
.report-banner,.cash-open-hero,.accounting-page .accounting-hero,.reports-page .reports-hero,.sales-page-head.purchase-page-head,:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head),.admin-hero,.saas-plan-modal-heading{background:linear-gradient(120deg,var(--torex-banner-start) 0%,var(--torex-banner-mid) 58%,var(--torex-banner-end) 100%);color:#fff}
.cash-open-hero,.accounting-page .accounting-hero,.reports-page .reports-hero,.sales-page-head.purchase-page-head,:is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head),.admin-hero{box-shadow:0 13px 30px var(--torex-banner-shadow)}
.admin-hero{border-color:var(--torex-banner-mid)}
.admin-hero h2,.saas-plan-modal-heading h2{color:#fff}
.admin-hero .eyebrow,.saas-plan-modal-heading .eyebrow{color:#c0e3f0}
.admin-hero p:last-child,.saas-plan-modal-heading>div>p:last-child{color:#e0f1f7}
.admin-hero-mark{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.14);color:#fff;box-shadow:none}
.dark .report-banner,.dark .cash-open-hero,.dark .accounting-page .accounting-hero,.dark .reports-page .reports-hero,.dark .sales-page-head.purchase-page-head,.dark :is(.sales-page-head,.treasury-hero,.inventory-hero,.cash-page-head,.party-detail-hero,.product-detail-head),.dark .admin-hero,.dark .saas-plan-modal-heading{background:linear-gradient(120deg,#062f49 0%,#073f62 58%,#0b527d 100%)}

/* Couleurs communes des boutons */
.btn{border-color:var(--border);background:var(--surface);color:var(--text)}
.btn.primary{border-color:#0b527d;background:linear-gradient(135deg,#176f9a,#0b527d);color:#fff;box-shadow:0 7px 18px rgba(11,82,125,.22)}
.btn.primary:hover{border-color:#073f62;background:linear-gradient(135deg,#0b628e,#073f62);color:#fff;box-shadow:0 8px 20px rgba(7,63,98,.28)}
.btn:not(.primary):not(.danger):not(.cash-light):not(.cash-close):hover{border-color:#9fc8dc;background:#f1f8fb;color:#07517c}
.btn.danger{border-color:#c83d4c;background:#c83d4c;color:#fff}
.btn.danger:hover{border-color:#a92e3c;background:#a92e3c;color:#fff}
.dark .btn:not(.primary):not(.danger):not(.cash-light):not(.cash-close){border-color:#365361;background:var(--surface-2);color:var(--text)}
.dark .btn:not(.primary):not(.danger):not(.cash-light):not(.cash-close):hover{border-color:#548ba5;background:#1b4356;color:#e8f7fc}

/* Les icônes de navigation sont définies explicitement par module dans le HTML. */
.sidebar .nav-icon::before{display:none!important;content:none!important}
.sidebar .nav-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sidebar .sidebar-submenu-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.login-copyright{display:flex;align-items:center;justify-content:space-between;gap:12px}
.login-developed{display:flex;align-items:center;gap:6px;white-space:nowrap;color:#748894;font-size:8px;font-weight:700;letter-spacing:.2px}
.login-developed img{display:block;width:116px;height:43px;object-fit:cover;object-position:center;flex:0 0 auto}
@media(max-width:540px){.login-copyright{flex-direction:column;justify-content:center;gap:5px}.login-developed img{width:105px;height:38px}}

/* Connexion · finition entreprise Torex */
.login-page{position:relative;isolation:isolate;min-height:100svh;padding:32px;background:radial-gradient(ellipse at 12% 4%,rgba(17,116,157,.10),transparent 37%),radial-gradient(ellipse at 95% 96%,rgba(243,154,84,.10),transparent 33%),#f1f5f8}.login-layout{width:min(1360px,calc(100vw - 64px));min-height:min(820px,calc(100svh - 64px));border:1px solid rgba(16,68,96,.09);border-radius:28px;box-shadow:0 34px 100px rgba(12,54,79,.17),0 3px 12px rgba(12,54,79,.04)}.login-showcase{padding:clamp(34px,4.4vw,64px);background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 88%,#061c2b),color-mix(in srgb,var(--primary) 62%,#061d2a) 60%,#0a405e)}.login-showcase:before{opacity:.34;background:radial-gradient(ellipse at 82% 18%,rgba(45,157,195,.24),transparent 38%),radial-gradient(circle at 17% 90%,rgba(243,154,84,.12),transparent 30%),linear-gradient(135deg,transparent 58%,rgba(255,255,255,.055))}.login-showcase-orb-one{width:490px;height:490px;right:-215px;top:55px;border-color:rgba(255,255,255,.15);box-shadow:0 0 0 38px rgba(255,255,255,.025)}.login-showcase-orb-two{width:340px;height:340px;right:-143px;top:130px;border-color:rgba(255,255,255,.12)}.login-brand-logo{width:64px;height:64px;border:1px solid rgba(255,255,255,.55);border-radius:17px;box-shadow:0 12px 28px rgba(2,25,39,.2)}.login-brand>span:last-child b{font-size:17px;letter-spacing:-.2px}.login-brand>span:last-child small{color:#c0d7e1;letter-spacing:1.65px}.login-showcase-copy{max-width:560px;margin:clamp(46px,7vh,84px) 0}.login-overline{color:#d8e9ef}.login-overline i{background:#ff9b32;box-shadow:0 0 0 5px rgba(255,155,50,.16)}.login-showcase-copy h1{font-size:clamp(38px,4.5vw,56px);letter-spacing:-1.9px;line-height:1.06}.login-showcase-copy h1 em{color:#c6e2ed}.login-showcase-copy>p{max-width:440px;color:rgba(239,248,251,.78);font-size:13px;line-height:1.85}.login-feature-list{max-width:460px;gap:9px;margin-top:27px}.login-feature-list>div{min-height:58px;padding:9px 12px;border:1px solid rgba(255,255,255,.10);border-radius:13px;background:rgba(255,255,255,.055);backdrop-filter:blur(5px)}.login-feature-icon{width:36px;height:36px;border-color:rgba(255,255,255,.12);border-radius:10px;background:rgba(255,255,255,.085);color:#d5eaf2}.login-feature-list b{font-size:10px}.login-feature-list small{color:rgba(240,248,251,.66);font-size:8px}.login-assurance{border-color:rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.06)}.login-assurance-icon{background:rgba(255,255,255,.10)}.login-assurance small{color:rgba(240,248,251,.66)}.login-form-panel{position:relative;padding:56px clamp(38px,6vw,84px) 24px;background:linear-gradient(155deg,#fff 0%,#fff 66%,#f9fbfc 100%)}.login-form-content{width:min(400px,100%)}.login-form-heading{margin-bottom:31px}.login-secure-tag{padding:7px 11px;border-color:color-mix(in srgb,var(--primary) 16%,#fff);background:color-mix(in srgb,var(--primary) 6%,#fff);letter-spacing:.95px}.login-form-heading h2{margin-top:18px;font-size:29px;letter-spacing:-.9px}.login-form-heading p{font-size:11px;line-height:1.7}.login-form>label,.login-password-label label{margin:18px 0 8px;color:#41596a;font-size:9px;letter-spacing:.1px}.login-input-wrap{height:50px;border-color:#dbe5eb;border-radius:11px;background:#f9fbfc}.login-input-wrap>svg{color:#8aa1ad}.login-input-wrap input{font-size:11px}.login-submit{height:50px;margin-top:25px!important;border-radius:11px!important;background:linear-gradient(105deg,var(--primary),color-mix(in srgb,var(--primary) 83%,#178eaf))!important;box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 23%,transparent)!important}.login-submit:hover{box-shadow:0 14px 27px color-mix(in srgb,var(--primary) 30%,transparent)!important}.login-form .login-hint{color:#99a8b1;font-size:8px}.login-copyright{margin-top:38px;padding-top:15px;border-top:1px solid #edf1f3}.login-developed{color:#617987}.login-developed img{width:108px;height:40px;object-fit:contain}.login-expand{border-color:rgba(255,255,255,.58);background:#fff7eb;color:#a85f06;box-shadow:0 5px 16px rgba(11,42,57,.12)}.login-expand:hover{background:#fff0da}
@media(max-width:900px){.login-page{padding:18px}.login-layout{width:100%;min-height:0;border-radius:22px}.login-showcase{padding:30px}.login-showcase-copy{margin:30px 0 23px}.login-form-panel{padding:38px 32px 20px}.login-copyright{margin-top:24px}}
@media(max-width:540px){.login-page{padding:0;background:#fff}.login-layout{min-height:100svh;border-radius:0}.login-showcase{padding:22px 23px 24px}.login-showcase-copy{margin:24px 0 20px}.login-showcase-copy h1{font-size:30px}.login-showcase-copy>p{font-size:10px}.login-form-panel{padding:30px 24px 17px}.login-form-heading{margin-bottom:23px}.login-form-heading h2{font-size:24px}.login-form>label,.login-password-label label{margin-top:14px}.login-input-wrap{height:47px}.login-submit{height:47px;margin-top:21px!important}.login-copyright{margin-top:auto;padding-top:18px}.login-layout.expanded{inset:0}}

/* Header entreprise et centre de notifications */
.topbar{height:76px;padding:0 28px;background:rgba(255,255,255,.97);border-bottom:1px solid #e3ebef;box-shadow:0 5px 18px rgba(17,55,75,.035)}
.topbar-heading{min-width:0}.topbar-heading .eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 2px;color:#8295a0;font-size:8px;letter-spacing:1.05px}.topbar-heading .eyebrow>span{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#587080}.topbar-heading .eyebrow i{width:4px;height:4px;border-radius:50%;background:#f39824}.topbar-heading h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#143e58;font-size:19px;letter-spacing:-.25px}
.top-actions{gap:10px}.top-actions>.icon-btn,.notification-trigger{width:40px;height:40px;display:grid;place-items:center;border:1px solid #e0e9ed;border-radius:12px;background:#fff;color:#315f78;transition:background .16s,border-color .16s,color .16s,transform .16s}.top-actions>.icon-btn:hover,.notification-trigger:hover{transform:translateY(-1px);border-color:#c5dbe5;background:#f3f8fa;color:#0b527d}.theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.notification-center{position:relative}.notification-trigger{position:relative;cursor:pointer}.notification-trigger>svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.notification-count{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border:2px solid #fff;border-radius:99px;background:#f39824;color:#fff;font-size:8px;font-weight:850;line-height:1}.notification-count[hidden]{display:none!important}
.notification-panel{position:absolute;z-index:90;top:calc(100% + 14px);right:-55px;width:min(410px,calc(100vw - 24px));max-height:min(590px,calc(100vh - 100px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce7ec;border-radius:17px;background:#fff;box-shadow:0 22px 60px rgba(15,53,74,.18);animation:notification-in .16s ease-out}.notification-panel[hidden]{display:none!important}@keyframes notification-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.notification-panel-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 19px 15px;border-bottom:1px solid #edf1f3}.notification-kicker{display:block;margin-bottom:4px;color:#f39824;font-size:8px;font-weight:850;letter-spacing:1.1px}.notification-panel-header h2{margin:0;color:#173f59;font-size:18px}.notification-panel-header p{margin:3px 0 0;color:#8496a0;font-size:10px}.notification-mark-all{border:0;background:transparent;color:#0b628e;font-size:9px;font-weight:800;white-space:nowrap;cursor:pointer}.notification-mark-all:hover{color:#f39824}.notification-mark-all:disabled{color:#aab7bd;cursor:default}
.notification-list{padding:5px 10px;overflow:auto}.notification-item{display:flex;align-items:center;gap:10px;padding:11px 9px;border-bottom:1px solid #edf1f3;border-radius:10px;transition:background .15s,opacity .15s}.notification-item:last-child{border-bottom:0}.notification-item:hover{background:#f6f9fa}.notification-item.is-read{opacity:.58}.notification-icon{width:35px;height:35px;flex:0 0 35px;display:grid;place-items:center;border-radius:11px;background:#eaf3f7;color:#0b628e}.notification-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notification-icon.warning{background:#fff3df;color:#c77a10}.notification-icon.orange{background:#fff0e4;color:#dc8121}.notification-icon.red{background:#ffebed;color:#cf4855}.notification-copy{display:grid;min-width:0;flex:1;gap:2px}.notification-copy b{overflow:hidden;color:#193f55;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.notification-copy>span{overflow:hidden;color:#788d98;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.notification-copy small{color:#a0adb3;font-size:8px}.notification-item-count{min-width:24px;height:24px;padding:0 6px;display:grid;place-items:center;border-radius:8px;background:#eef4f6;color:#28627f;font-size:9px;font-weight:850}.notification-mark-read{width:27px;height:27px;flex:0 0 27px;display:grid;place-items:center;border:1px solid #e3ebee;border-radius:8px;background:#fff;color:#718893;cursor:pointer}.notification-mark-read:hover{border-color:#a9d6c1;background:#e8f7ef;color:#168b64}.notification-mark-read svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.notification-item.is-read .notification-mark-read{border-color:#d5ecdf;background:#e8f7ef;color:#168b64}.notification-empty{display:grid;justify-items:center;gap:6px;padding:30px 18px;color:#738a96;text-align:center}.notification-empty[hidden]{display:none!important}.notification-empty>span{width:37px;height:37px;display:grid;place-items:center;border-radius:12px;background:#e9f7ef;color:#168b64;font-size:18px}.notification-empty b{color:#244a60;font-size:11px}.notification-empty small{font-size:9px}.notification-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 19px;border-top:1px solid #edf1f3;background:#fafcfd;color:#8a9aa2;font-size:8px}.notification-panel-footer a{color:#0b628e;font-size:9px;font-weight:800}.notification-panel-footer a:hover{color:#f39824}.notification-panel-footer a b{padding-left:4px}
.user-menu{gap:9px;padding-left:14px;border-left:1px solid #e6edf0}.user-menu>.avatar{width:37px;height:37px;border-radius:12px;background:#f39824;color:#fff;font-size:13px}.user-copy b{max-width:150px;overflow:hidden;color:#183f57;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.user-copy small{max-width:175px;overflow:hidden;color:#82949e;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.logout{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;color:#6c8491}.logout:hover{background:#f0f5f7;color:#0b527d}.logout svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.dark .topbar{background:rgba(15,39,50,.97);border-color:#294653;box-shadow:0 5px 20px rgba(0,0,0,.12)}.dark .topbar-heading .eyebrow>span{color:#c0d6de}.dark .topbar-heading h1,.dark .user-copy b{color:#e8f5f9}.dark .top-actions>.icon-btn,.dark .notification-trigger{border-color:#34535f;background:#173744;color:#b9dce8}.dark .top-actions>.icon-btn:hover,.dark .notification-trigger:hover{background:#204859;color:#fff}.dark .notification-count{border-color:#173744}.dark .notification-panel{border-color:#34535f;background:#142f3b}.dark .notification-panel-header,.dark .notification-panel-footer,.dark .notification-item{border-color:#294653}.dark .notification-panel-header h2,.dark .notification-copy b,.dark .notification-empty b{color:#e4f2f6}.dark .notification-panel-header p,.dark .notification-copy>span,.dark .notification-copy small,.dark .notification-panel-footer{color:#9eb5bf}.dark .notification-item:hover{background:#1b3d4a}.dark .notification-item-count{background:#234653;color:#c5e2eb}.dark .notification-mark-read{border-color:#34535f;background:#183945;color:#aac3cd}.dark .notification-mark-read:hover,.dark .notification-item.is-read .notification-mark-read{border-color:#326347;background:#1e4535;color:#85d5a9}.dark .notification-empty>span{background:#1e4535;color:#85d5a9}.dark .notification-panel-footer{background:#102834}.dark .notification-panel-footer a{color:#9bd7e8}.dark .logout{color:#a9c2cc}.dark .logout:hover{background:#214552;color:#e8f6fa}
@media(max-width:700px){.topbar{height:68px;padding:0 15px}.topbar-heading .eyebrow>span{max-width:120px}.topbar-heading h1{font-size:16px}.top-actions{gap:7px}.top-actions>.icon-btn,.notification-trigger{width:36px;height:36px}.user-menu{gap:6px;padding-left:8px}.user-menu>.avatar{width:33px;height:33px}.user-copy{display:none}.logout{width:25px;height:25px}.notification-panel{right:-88px;width:min(390px,calc(100vw - 20px))}}
@media(max-width:420px){.topbar{padding:0 10px}.topbar-heading .eyebrow{font-size:7px}.topbar-heading .eyebrow>span{max-width:78px}.topbar-heading h1{max-width:145px;font-size:14px}.top-actions{gap:5px}.notification-panel{right:-79px;width:calc(100vw - 16px)}.notification-panel-header{padding:15px}.notification-panel-footer{padding:10px 14px}}




/* Impression de la liste des factures de vente */
.sales-head-actions{display:flex;align-items:center;gap:9px}
.sale-invoices-head .print-sales-list{border:1px solid rgba(255,255,255,.55);background:#fff;color:#07517c}
.sale-invoices-head .print-sales-list:hover{background:#eef8fc;color:#07517c}
@media(max-width:650px){.sales-head-actions{width:100%;flex-wrap:wrap}.sales-head-actions .btn{flex:1}}
@media print{body:has(.sale-invoices-journal){background:#fff;color:#202830;font-size:8px}body:has(.sale-invoices-journal) .sidebar,body:has(.sale-invoices-journal) .topbar,body:has(.sale-invoices-journal) .main>footer,body:has(.sale-invoices-journal) .overlay,body:has(.sale-invoices-journal) .sales-head-actions,body:has(.sale-invoices-journal) .sales-kpi-grid,body:has(.sale-invoices-journal) .sale-invoices-journal .sales-toolbar,body:has(.sale-invoices-journal) .sale-invoices-journal .actions-column,body:has(.sale-invoices-journal) .sale-invoices-journal td:last-child{display:none!important}body:has(.sale-invoices-journal) .main{width:100%!important;margin:0!important}body:has(.sale-invoices-journal) .content{padding:0!important}.sale-invoices-head{display:block!important;min-height:0!important;margin:0 0 5mm!important;padding:0 0 3mm!important;border:0!important;border-bottom:2px solid #0b527d!important;border-radius:0!important;background:#fff!important;color:#173f59!important;box-shadow:none!important}.sale-invoices-head .eyebrow{color:#607987!important;font-size:7px}.sale-invoices-head h2{margin:0;color:#0b527d!important;font-size:18px}.sale-invoices-head p:last-child{margin:1mm 0 0;color:#687982!important;font-size:8px}.sale-invoices-journal{display:block!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}.sale-invoices-journal .table-wrap{overflow:visible!important}.sale-invoices-journal table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:7px}.sale-invoices-journal th{padding:2mm 1mm;background:#0b527d!important;color:#fff!important;text-align:left;font-size:6px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sale-invoices-journal td{padding:1.8mm 1mm;border-bottom:1px solid #dce5e9;vertical-align:middle}.sale-invoices-journal th:first-child{width:14%}.sale-invoices-journal th:nth-child(2){width:15%}.sale-invoices-journal th:nth-child(3){width:12%}.sale-invoices-journal th:nth-child(4){width:9%}.sale-invoices-journal th:nth-child(5){width:12%}.sale-invoices-journal th:nth-child(6){width:13%}.sale-invoices-journal th:nth-child(7){width:11%}.sale-invoices-journal th:nth-child(8){width:10%}.sale-invoices-journal td:nth-child(5),.sale-invoices-journal td:nth-child(6),.sale-invoices-journal td:nth-child(7){text-align:right}.sale-invoices-journal tbody tr:nth-child(even){background:#f7fafb!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sale-invoices-journal .invoice-ref small{font-size:6px}.sale-invoices-journal .payment-progress>div{height:3px;background:#e8eef1}.sale-invoices-journal .payment-progress>div i{background:#0b6b96!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sale-invoices-journal .payment-progress small{font-size:6px}.sale-invoices-journal .badge{font-size:6px;padding:2px 4px;-webkit-print-color-adjust:exact;print-color-adjust:exact}thead{display:table-header-group}tr{break-inside:avoid}@page{size:A4 landscape;margin:10mm}}


/* Actions de configuration des caisses */
.register-row-actions{gap:6px;white-space:nowrap}
.register-row-actions form{display:contents}


/* Choix du format avant validation de la vente */
.sale-output-modal .modal-card{width:min(560px,100%)}
.sale-output-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.sale-output-options>button{display:flex;align-items:center;gap:12px;min-width:0;padding:15px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;transition:.18s}
.sale-output-options>button:hover{border-color:#0b6b96;background:#f3f9fc;transform:translateY(-1px)}
.sale-output-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:11px;background:#eaf4f8;color:#0b527d;font-size:21px}
.sale-output-options>button>span:nth-child(2){flex:1}
.sale-output-options b,.sale-output-options small{display:block}
.sale-output-options b{font-size:13px}
.sale-output-options small{margin-top:3px;color:var(--muted);font-size:9px}
.sale-output-arrow{color:#0b527d;font-size:18px;font-weight:800}
.dark .sale-output-options>button{background:var(--surface-2)}
.dark .sale-output-options>button:hover{background:#173d50}
@media(max-width:540px){.sale-output-options{grid-template-columns:1fr}}

/* Quantités par article sur les bons de livraison partielle */
.delivery-line-editor{padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.delivery-line-editor> b,.delivery-line-editor>small{display:block}
.delivery-line-editor>small{margin-top:4px;color:var(--muted)}
.delivery-line-editor [data-delivery-lines]{display:grid;gap:8px;margin-top:12px}
.delivery-line-editor [data-delivery-lines-empty]{margin:12px 0 0;color:var(--muted);font-size:12px}
.delivery-line-row{display:grid;grid-template-columns:minmax(0,1fr) 100px;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}
.delivery-line-row span b,.delivery-line-row span small{display:block}
.delivery-line-row span b{font-size:12px}
.delivery-line-row span small{margin-top:3px;color:var(--muted);font-size:10px}
.delivery-line-row input[type=number]{width:100%;text-align:right}
@media(max-width:540px){.delivery-line-row{grid-template-columns:minmax(0,1fr) 82px;gap:8px;padding:8px}}

.accounting-ledger-panel{overflow:hidden;border:1px solid #d3e4eb;border-radius:15px;box-shadow:0 7px 22px rgba(11,82,125,.06)}.accounting-ledger-toolbar{display:flex;align-items:flex-end;gap:14px;padding:16px 18px;background:#f8fbfc}.accounting-ledger-toolbar label{display:grid;flex:1;gap:7px;color:#536c7d;font-size:11px;font-weight:700}.accounting-ledger-toolbar select{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text)}.accounting-ledger-toolbar .btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.accounting-ledger-toolbar .btn.is-disabled{opacity:.52;cursor:not-allowed;box-shadow:none}.dark .accounting-ledger-toolbar{background:var(--surface-2)}.dark .accounting-ledger-panel{border-color:#315464}@media(max-width:650px){.accounting-ledger-toolbar{align-items:stretch;flex-direction:column}.accounting-ledger-toolbar .btn{width:100%}}
.sidebar-submenu{display:flex;flex-direction:column;gap:2px}.sidebar-submenu-toggle{width:100%;min-height:29px;padding:0 9px 0 14px;border:0;border-radius:7px;background:transparent;color:#879aa5;display:flex;align-items:center;justify-content:space-between;font-size:8px;font-weight:850;letter-spacing:.75px;text-transform:uppercase;cursor:pointer}.sidebar-submenu-toggle:hover{background:#f1f6f8;color:#0b527d}.sidebar-submenu-toggle svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .2s}.sidebar-submenu.open>.sidebar-submenu-toggle svg{transform:rotate(180deg)}.sidebar-submenu-links{display:none;flex-direction:column;gap:3px;padding:2px 0 4px 7px;margin-left:9px;border-left:1px solid #e2ebef}.sidebar-submenu.open>.sidebar-submenu-links{display:flex}body.sidebar-collapsed .sidebar-submenu-toggle{display:none}body.sidebar-collapsed .sidebar-submenu-links{display:flex!important;padding:0;margin:0;border:0}body.sidebar-collapsed .sidebar-submenu{gap:4px}body.sidebar-collapsed .sidebar-submenu:not(:last-child){padding-bottom:5px;border-bottom:1px solid #e5edf1}body:not(.sidebar-collapsed) .sidebar-submenu-links .nav-link{padding-left:10px}body:not(.dark) .sidebar-submenu-toggle{color:#78919e}body:not(.dark) .sidebar-submenu-toggle:hover{background:#eaf2f6;color:#0b527d}.dark .sidebar-submenu-links{border-left-color:#31515e}.dark body.sidebar-collapsed .sidebar-submenu:not(:last-child){border-bottom-color:#31515e}@media(max-width:800px){.sidebar.open .sidebar-submenu-toggle{display:none}.sidebar.open .sidebar-submenu-links{display:flex!important;padding-left:7px}}
/* Sous-menus en tiroir au survol de la navigation compacte. */
.sidebar-submenu-icon{display:none}.sidebar-submenu-flyout{position:fixed;z-index:1200;width:230px;max-height:min(70vh,540px);overflow:auto;padding:8px;border:1px solid #e0e8ed;border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(20,52,69,.18);animation:sidebar-flyout-in .14s ease-out}.sidebar-submenu-flyout-title{padding:4px 9px 8px;color:#164a67;font-size:11px;font-weight:800}.sidebar-submenu-flyout .sidebar-submenu-links{display:flex!important;flex-direction:column;gap:3px;padding:0;margin:0;border:0}.sidebar-submenu-flyout .nav-link{width:100%!important;height:38px!important;min-height:38px!important;margin:0!important;padding:0 10px!important;justify-content:flex-start!important;gap:10px!important;border-radius:8px;color:#526f7e}.sidebar-submenu-flyout .nav-link>span:not(.nav-icon){display:flex!important;align-items:center;font-size:11px}.sidebar-submenu-flyout .nav-icon{width:24px!important;height:24px!important;flex:0 0 24px!important;margin:0!important;padding:0!important;border:0!important;color:#34708e}.sidebar-submenu-flyout .nav-link:hover{background:#eef4f7!important;color:#0b527d!important}.sidebar-submenu-flyout .nav-link.active{background:#fff0dc!important;color:#87510e!important;box-shadow:none!important}.sidebar-submenu-flyout .nav-link.active .nav-icon{color:#a96412}.dark .sidebar-submenu-flyout{border-color:#31515e;background:#17323e;box-shadow:0 16px 38px rgba(0,0,0,.35)}.dark .sidebar-submenu-flyout-title{color:#d7eef7}.dark .sidebar-submenu-flyout .nav-link{color:#bed2da}.dark .sidebar-submenu-flyout .nav-link:hover{background:#254957!important;color:#effbff!important}.dark .sidebar-submenu-flyout .nav-link.active{background:#4b3b25!important;color:#ffd89b!important}.dark .sidebar-submenu-flyout .nav-icon{color:#8dc4d9}@keyframes sidebar-flyout-in{from{opacity:0;transform:translateX(-4px)}to{opacity:1;transform:translateX(0)}}body.sidebar-collapsed .sidebar-submenu{position:static;align-items:center;width:100%;gap:3px}body.sidebar-collapsed .sidebar-submenu-toggle{display:flex!important;position:relative;width:48px;height:42px;min-height:42px;margin:0 auto;padding:0;justify-content:center;border:1px solid transparent;border-radius:10px;background:transparent;color:#59798a;letter-spacing:0}body.sidebar-collapsed .sidebar-submenu-icon{display:grid;width:21px;height:21px;place-items:center}.sidebar-submenu-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}body.sidebar-collapsed .sidebar-submenu-title,body.sidebar-collapsed .sidebar-submenu-chevron{display:none!important}body.sidebar-collapsed .sidebar-submenu.active .sidebar-submenu-toggle,body.sidebar-collapsed .sidebar-submenu-toggle:hover,body.sidebar-collapsed .sidebar-submenu-toggle:focus-visible{border-color:#f2d8b5;background:#fff0dc;color:#a96412;outline:0}body.sidebar-collapsed .sidebar-submenu-links{display:none!important}body:not(.dark).sidebar-collapsed .sidebar-submenu-toggle{color:#34708e}body:not(.dark).sidebar-collapsed .sidebar-submenu.active .sidebar-submenu-toggle,body:not(.dark).sidebar-collapsed .sidebar-submenu-toggle:hover{background:#fff0dc;color:#a96412;border-color:#f2d8b5}@media(max-width:800px){.sidebar-submenu-flyout{display:none!important}}
/* Force l’affichage des options clonées dans le panneau flottant en mode réduit. */
body.sidebar-collapsed .sidebar-submenu-flyout{background:#fff!important;isolation:isolate}body.sidebar-collapsed .sidebar-submenu-flyout .sidebar-submenu-links{display:flex!important;flex-direction:column;visibility:visible!important;opacity:1!important}body.sidebar-collapsed .sidebar-submenu-flyout .sidebar-submenu-links>.nav-link{display:flex!important;visibility:visible!important;background:transparent!important;box-shadow:none!important}body.sidebar-collapsed .sidebar-submenu-flyout .nav-link>span:not(.nav-icon){display:flex!important}body.sidebar-collapsed .sidebar-submenu-flyout .nav-link::before,body.sidebar-collapsed .sidebar-submenu-flyout .nav-icon::before{display:none!important;content:none!important}
.sidebar-submenu-flyout-items{display:flex;flex-direction:column;gap:3px}.sidebar-submenu-flyout-link{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 10px;border-radius:8px;background:transparent!important;color:#526f7e!important;font-size:11px;font-weight:650;text-decoration:none;box-shadow:none!important;transition:background .15s,color .15s}.sidebar-submenu-flyout-link:hover{background:#eef4f7!important;color:#0b527d!important}.sidebar-submenu-flyout-link.active{background:#fff0dc!important;color:#87510e!important}.sidebar-submenu-flyout-link .nav-icon{display:grid;width:24px;height:24px;flex:0 0 24px;place-items:center;margin:0;padding:0;border:0;color:#34708e}.sidebar-submenu-flyout-link .nav-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sidebar-submenu-flyout-link.active .nav-icon{color:#a96412}.dark .sidebar-submenu-flyout-link{color:#bed2da!important}.dark .sidebar-submenu-flyout-link:hover{background:#254957!important;color:#effbff!important}.dark .sidebar-submenu-flyout-link.active{background:#4b3b25!important;color:#ffd89b!important}.dark .sidebar-submenu-flyout-link .nav-icon{color:#8dc4d9}
.sidebar-tooltip{padding:8px 10px;border-color:#e0e8ed;border-left:1px solid #e0e8ed;border-radius:12px;background:#fff;color:#526f7e;box-shadow:0 16px 38px rgba(20,52,69,.18);font-size:11px;font-weight:650}.sidebar-tooltip.visible{transform:translateX(0)}.sidebar-tooltip::before{content:"";position:absolute;left:-6px;top:calc(50% - 6px);width:10px;height:10px;border-left:1px solid #e0e8ed;border-bottom:1px solid #e0e8ed;background:#fff;transform:rotate(45deg)}body:not(.dark) .sidebar-tooltip{border-left-color:#e0e8ed}.dark .sidebar-tooltip{border-color:#31515e;border-left-color:#31515e;background:#17323e;color:#bed2da;box-shadow:0 16px 38px rgba(0,0,0,.35)}.dark .sidebar-tooltip::before{border-color:#31515e;background:#17323e}
/* Logo TOTEX responsive : wordmark en mode large, symbole en sidebar compact. */
.sidebar-brand-full{display:block}.sidebar-brand-mark{display:none!important;filter:none!important;transform:none!important;object-fit:contain!important}
body.sidebar-collapsed .sidebar-brand-full{display:none!important}
body.sidebar-collapsed .brand-logo-surface .sidebar-brand-mark{display:block!important;width:48px!important;height:48px!important;max-width:48px!important;max-height:48px!important;object-fit:contain!important;object-position:center!important;filter:none!important;transform:none!important}
body.sidebar-collapsed .brand-logo-surface .sidebar-brand-full.has-company-logo{display:block!important;width:50px!important;height:50px!important;max-width:50px!important;max-height:50px!important;object-fit:contain!important;object-position:center!important;filter:none!important;transform:none!important}
body.sidebar-collapsed .sidebar-brand-full.has-company-logo+.sidebar-brand-mark{display:none!important}
@media(max-width:800px){body.sidebar-collapsed .sidebar-brand-full{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;transform:none!important}body.sidebar-collapsed .brand-logo-surface .sidebar-brand-mark{display:none!important}}

/* Réception fournisseur : liste de travail et suivi des réceptions partielles. */
.receipt-page-head{align-items:center}.receipt-head-badge{display:flex;align-items:center;gap:11px;flex:0 0 auto;padding:10px 14px;border:1px solid rgba(255,255,255,.22);border-radius:13px;background:rgba(255,255,255,.11)}.receipt-head-icon{display:grid;width:39px;height:39px;place-items:center;border-radius:11px;background:rgba(255,255,255,.17)}.receipt-head-icon svg{width:22px;height:22px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.receipt-head-badge b,.receipt-head-badge small{display:block}.receipt-head-badge b{font-size:17px;line-height:1.1}.receipt-head-badge small{margin-top:3px;color:#d5edf5;font-size:9px}
.receipt-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:17px}.receipt-metrics article{display:flex;align-items:center;gap:12px;min-height:88px;padding:15px 17px;border:1px solid #e2eaf0;border-radius:13px;background:#fff;box-shadow:0 3px 12px rgba(17,54,75,.025)}.receipt-metric-icon{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:12px}.receipt-metric-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.receipt-metric-icon.blue{background:#eaf4f8;color:#0b668e}.receipt-metric-icon.orange{background:#fff1df;color:#d47b11}.receipt-metric-icon.green{background:#e8f7ee;color:#16824a}.receipt-metrics small,.receipt-metrics b,.receipt-metrics em{display:block}.receipt-metrics small{color:#718895;font-size:10px;font-weight:650}.receipt-metrics b{margin:3px 0;color:#17445f;font:750 21px/1.2 Manrope,'DM Sans',sans-serif}.receipt-metrics em{color:#8b9ba4;font-size:9px;font-style:normal}
.receipt-panel,.receipt-entry-panel,.receipt-history-panel{overflow:hidden;border:1px solid #e2eaf0;border-radius:15px;background:#fff;box-shadow:0 4px 15px rgba(25,58,76,.035)}.receipt-panel{margin-bottom:17px}.receipt-section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px 14px}.receipt-section-heading .eyebrow{margin:0 0 4px;color:#1681a5;font-size:9px}.receipt-section-heading h3{margin:0;color:#193f57;font-size:16px}.receipt-section-heading h3 span{color:#9aabb5}.receipt-section-heading p:not(.eyebrow){margin:4px 0 0;color:#83949e;font-size:10px}.receipt-count-pill{flex:0 0 auto;padding:7px 10px;border:1px solid #d7eaf1;border-radius:99px;background:#eff7fa;color:#176587;font-size:9px;font-weight:750}.receipt-count-pill.muted{border-color:#e4eaee;background:#f8fafb;color:#6d818c}.receipt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 18px;border-top:1px solid #eff3f5;border-bottom:1px solid #e8eef1;background:#fbfcfd}.receipt-search{display:flex;align-items:center;gap:9px;width:min(420px,100%);height:38px;padding:0 11px;border:1px solid #dfe8ed;border-radius:9px;background:#fff}.receipt-search svg{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:#7c98a7;stroke-width:1.8;stroke-linecap:round}.receipt-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#254c61;font-size:10px}.receipt-search input::placeholder{color:#9aaab3}.receipt-filters{display:flex;gap:4px;overflow:auto}.receipt-filters button{white-space:nowrap;border:0;border-radius:8px;background:transparent;color:#718895;padding:8px 10px;font-size:9px;font-weight:750;cursor:pointer}.receipt-filters button:hover{background:#f1f6f8;color:#174f6b}.receipt-filters button.active{background:#e8f3f7;color:#0b527d}.receipt-filters button span{display:inline-grid;min-width:18px;height:18px;place-items:center;margin-left:4px;border-radius:99px;background:#fff;color:inherit;font-size:8px}
.receipt-table-wrap{overflow-x:auto}.receipt-orders-table{min-width:900px}.receipt-orders-table th,.receipt-history-table th,.receipt-lines-table th{padding:10px 12px;background:#f7fafb;color:#7d909a;font-size:8px;letter-spacing:.45px;font-weight:800}.receipt-orders-table td,.receipt-history-table td,.receipt-lines-table td{padding:11px 12px;border-bottom:1px solid #edf1f3;color:#526d7b;font-size:10px;vertical-align:middle}.receipt-orders-table tbody tr:last-child td,.receipt-history-table tbody tr:last-child td,.receipt-lines-table tbody tr:last-child td{border-bottom:0}.receipt-orders-table tbody tr:hover,.receipt-history-table tbody tr:hover{background:#fbfdfe}.receipt-order-ref{display:flex;align-items:center;gap:9px}.receipt-order-icon{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:9px;background:#edf5f8;color:#0b668e}.receipt-order-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.receipt-order-ref b,.receipt-order-ref small{display:block}.receipt-order-ref b,.receipt-cell-main{color:#1d4b65;font-size:10px}.receipt-order-ref small{margin-top:2px;color:#97a5ac;font-size:8px}.receipt-warehouse{display:inline-flex;padding:5px 7px;border-radius:6px;background:#f2f6f8;color:#5e7785;font-size:9px}.receipt-total{color:#214b63;white-space:nowrap}.receipt-progress{min-width:145px}.receipt-progress>div,.receipt-order-progress>div{height:5px;overflow:hidden;border-radius:8px;background:#edf1f3}.receipt-progress i,.receipt-order-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b6b96,#29a0bd)}.receipt-progress.partial i,.receipt-order-progress i{background:linear-gradient(90deg,#f0a02b,#f6bd55)}.receipt-progress small{display:block;margin-top:4px;color:#82939c;font-size:8px}.receipt-status{display:inline-flex;margin-top:4px;padding:3px 7px;border-radius:99px;font-size:8px;font-weight:750}.receipt-status.pending{background:#eaf4f8;color:#17698e}.receipt-status.partial{background:#fff2df;color:#a7640b}.receipt-action{text-align:right;white-space:nowrap}.receipt-action .btn{display:inline-flex;align-items:center;gap:6px;border-radius:8px;background:#fff!important;border:1px solid #dbe8ee!important;color:#0b527d!important;box-shadow:none!important}.receipt-action .btn:hover{border-color:#b7d4e1!important;background:#f3f9fb!important}.receipt-action svg,.receipt-form-actions svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.receipt-empty{display:grid;justify-items:center;gap:5px;padding:28px 16px;text-align:center}.receipt-empty>span{display:grid;width:38px;height:38px;place-items:center;margin-bottom:4px;border-radius:11px;background:#edf5f8;color:#4e829a}.receipt-empty svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.receipt-empty b{color:#426273;font-size:11px}.receipt-empty small{color:#8a9ba4;font-size:9px}.receipt-empty.compact{padding:20px}.receipt-no-match[hidden],.receipt-orders-table tr[hidden]{display:none!important}
.receipt-entry-panel{margin-bottom:17px;border-color:#d9e8ee}.receipt-close{display:grid;width:31px;height:31px;flex:0 0 31px;place-items:center;border:1px solid #e1e9ed;border-radius:9px;color:#67808d;font-size:21px;line-height:1}.receipt-close:hover{background:#f3f8fa;color:#174e69}.receipt-order-progress{display:grid;grid-template-columns:170px minmax(100px,1fr) 42px;align-items:center;gap:10px;padding:10px 20px 14px;color:#778c97;font-size:9px}.receipt-order-progress b{color:#a76b17;text-align:right}.receipt-form-toolbar{display:flex;align-items:flex-end;gap:18px;padding:14px 20px;border-top:1px solid #edf2f4;border-bottom:1px solid #edf2f4;background:#fbfcfd}.receipt-form-toolbar label{display:grid;gap:5px;min-width:185px;color:#506e7d;font-size:9px;font-weight:750}.receipt-form-toolbar input,.receipt-lines-table input[type=number]{height:36px;padding:0 10px;border:1px solid #dce7ec;border-radius:8px;background:#fff;color:#254c61;font-size:10px}.receipt-form-toolbar p{margin:0 0 8px;color:#8799a2;font-size:9px}.receipt-lines-table{min-width:750px}.receipt-lines-table input[type=number]{width:120px;text-align:right}.receipt-lines-table input[readonly]{background:#f4f7f8;color:#9eabb1}.receipt-lines-table td:nth-child(n+3){text-align:right}.receipt-remaining{color:#bd7617}.receipt-form-actions{display:flex;justify-content:flex-end;gap:9px;padding:14px 20px;border-top:1px solid #edf2f4}.receipt-form-actions .btn{display:inline-flex;align-items:center;gap:7px}.receipt-complete{display:flex;align-items:center;gap:11px;margin:8px 20px 20px;padding:13px;border:1px solid #d9eee2;border-radius:10px;background:#f3fbf6}.receipt-complete>span{display:grid;width:29px;height:29px;place-items:center;border-radius:50%;background:#e0f4e8;color:#18814b;font-weight:800}.receipt-complete b,.receipt-complete small{display:block}.receipt-complete b{color:#276044;font-size:10px}.receipt-complete small{margin-top:3px;color:#789487;font-size:9px}.receipt-history-panel{margin-bottom:16px}.receipt-history-table{min-width:770px}.receipt-history-ref{color:#1b5a78}
.dark .receipt-metrics article,.dark .receipt-panel,.dark .receipt-entry-panel,.dark .receipt-history-panel{border-color:#2d4552;background:#172d38}.dark .receipt-metrics b,.dark .receipt-section-heading h3,.dark .receipt-order-ref b,.dark .receipt-cell-main,.dark .receipt-total{color:#d7eaf1}.dark .receipt-toolbar,.dark .receipt-form-toolbar{border-color:#2d4552;background:#1a3440}.dark .receipt-search,.dark .receipt-search input,.dark .receipt-form-toolbar input,.dark .receipt-lines-table input[type=number]{border-color:#355462;background:#132832;color:#d3e6ed}.dark .receipt-orders-table th,.dark .receipt-history-table th,.dark .receipt-lines-table th{background:#1c3946;color:#a4bdc8}.dark .receipt-orders-table td,.dark .receipt-history-table td,.dark .receipt-lines-table td{border-color:#29424e;color:#b9ced7}.dark .receipt-orders-table tbody tr:hover,.dark .receipt-history-table tbody tr:hover{background:#1c3743}.dark .receipt-filters button.active,.dark .receipt-count-pill{border-color:#355462;background:#234452;color:#b8dce9}
@media(max-width:900px){.receipt-toolbar{align-items:stretch;flex-direction:column}.receipt-search{width:100%}.receipt-filters{max-width:100%}.receipt-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.receipt-section-heading{padding:15px}}
@media(max-width:650px){.receipt-page-head{align-items:stretch}.receipt-head-badge{align-self:flex-start}.receipt-metrics{grid-template-columns:1fr;gap:8px}.receipt-metrics article{min-height:72px;padding:12px}.receipt-section-heading{align-items:flex-start}.receipt-count-pill{font-size:8px}.receipt-order-progress{grid-template-columns:1fr 40px;gap:8px}.receipt-order-progress>span{grid-column:1/-1}.receipt-form-toolbar{align-items:stretch;flex-direction:column;gap:8px}.receipt-form-toolbar label{min-width:0}.receipt-form-toolbar p{margin:0}.receipt-form-actions{padding:12px;justify-content:stretch}.receipt-form-actions .btn{flex:1;justify-content:center}.receipt-filters button{padding:8px 7px}}
/* Dépôts en vue liste. */
.warehouse-directory{padding:18px 20px;border:1px solid #e2eaf0;border-radius:15px;background:#fff;box-shadow:0 4px 15px rgba(25,58,76,.035)}.warehouse-directory-head{margin-bottom:12px}.warehouse-directory-head .eyebrow{margin-bottom:3px;color:#1681a5;font-size:9px}.warehouse-directory-head h3{color:#193f57;font-size:16px}.warehouse-directory-head .search{width:min(340px,100%);height:38px;border-radius:9px}.warehouse-list-wrap{overflow-x:auto}.warehouse-list{min-width:760px}.warehouse-list th{padding:11px 12px;background:#f7fafb;color:#7d909a;font-size:8px;letter-spacing:.45px;font-weight:800}.warehouse-list td{padding:12px;border-bottom:1px solid #edf1f3;color:#5d7480;font-size:10px;vertical-align:middle}.warehouse-list tbody tr:last-child td{border-bottom:0}.warehouse-list tbody tr:hover{background:#fbfdfe}.warehouse-list tr[hidden]{display:none!important}.warehouse-list-identity{display:flex;align-items:center;gap:10px}.warehouse-list .warehouse-icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:9px;background:#eaf4f8;color:#0b6b96}.warehouse-list .warehouse-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.warehouse-list-identity b,.warehouse-list-identity small{display:block}.warehouse-list-identity b{color:#1d4b65;font-size:10px}.warehouse-list-identity small{margin-top:2px;color:#8b9da6;font-size:8px;letter-spacing:.4px}.warehouse-type{display:inline-flex;padding:5px 8px;border-radius:99px;background:#f1f4f6;color:#768892;font-size:8px;font-weight:750}.warehouse-type.primary{background:#e9f5fa;color:#176587}.warehouse-product-count,.warehouse-stock-value{color:#294f63;font-size:10px;white-space:nowrap}.warehouse-list-action{text-align:right}.warehouse-list-action .warehouse-stock-link{display:inline-flex;gap:12px;align-items:center;margin:0;padding:8px 10px;background:#eff7fa;color:#0b668e;font-size:9px}.warehouse-list-action .warehouse-stock-link b{font-size:14px}.dark .warehouse-directory{border-color:#2d4552;background:#172d38}.dark .warehouse-list th{background:#1c3946;color:#a4bdc8}.dark .warehouse-list td{border-color:#29424e;color:#b9ced7}.dark .warehouse-list tbody tr:hover{background:#1c3743}.dark .warehouse-list-identity b,.dark .warehouse-product-count,.dark .warehouse-stock-value{color:#d7eaf1}.dark .warehouse-type.primary{background:#234452;color:#b8dce9}
@media(max-width:650px){.warehouse-directory{padding:14px}.warehouse-directory-head{align-items:stretch}.warehouse-directory-head .search{width:100%}}

/* Connexion TOTEX inspirée du fond bleu lumineux de la référence. */
.login-page{min-height:100svh;padding:clamp(16px,3vw,42px);background:radial-gradient(ellipse at 76% 18%,rgba(44,105,255,.48),transparent 36%),radial-gradient(ellipse at 12% 90%,rgba(240,139,32,.22),transparent 32%),linear-gradient(130deg,#071638 0%,#0a2864 48%,#102e91 100%)}
.login-layout{width:min(1420px,calc(100vw - 56px));min-height:min(860px,calc(100svh - 56px));border:1px solid rgba(255,255,255,.22);border-radius:26px;background:rgba(8,28,72,.56);box-shadow:0 35px 100px rgba(0,9,38,.48);backdrop-filter:blur(16px)}
.login-showcase{background:linear-gradient(145deg,rgba(6,25,67,.62),rgba(14,54,143,.42) 62%,rgba(17,71,167,.34))}.login-showcase:before{opacity:.55;background:radial-gradient(circle at 77% 25%,rgba(51,126,255,.28),transparent 33%),radial-gradient(circle at 11% 83%,rgba(255,156,41,.14),transparent 28%),linear-gradient(135deg,transparent 60%,rgba(255,255,255,.08))}.login-showcase-orb-one{border-color:rgba(154,190,255,.2);box-shadow:0 0 0 42px rgba(116,160,255,.035)}.login-showcase-orb-two{border-color:rgba(154,190,255,.15)}
.login-form-panel{background:linear-gradient(155deg,rgba(12,34,88,.80),rgba(10,28,75,.94));color:#fff}.login-form-heading h2{color:#fff}.login-form-heading p{color:#b8c9ed}.login-secure-tag{border-color:rgba(171,200,255,.24);background:rgba(115,158,255,.12);color:#d8e5ff}.login-secure-tag i{background:#ff9b32}.login-form>label,.login-password-label label{color:#d3def3}.login-input-wrap{border-color:rgba(184,207,255,.28);background:rgba(255,255,255,.085);box-shadow:inset 0 1px rgba(255,255,255,.035)}.login-input-wrap:focus-within{border-color:#8db9ff;box-shadow:0 0 0 3px rgba(82,145,255,.18)}.login-input-wrap>svg{color:#b5c8f0}.login-input-wrap input{color:#fff}.login-input-wrap input::placeholder{color:#a7b7d8}.login-input-wrap input:-webkit-autofill,.login-input-wrap input:-webkit-autofill:hover,.login-input-wrap input:-webkit-autofill:focus{-webkit-text-fill-color:#fff;box-shadow:0 0 0 1000px #173675 inset;transition:background-color 9999s ease-in-out 0s}.password-toggle{color:#b7c8e7}.login-submit{border:1px solid rgba(255,255,255,.7)!important;background:linear-gradient(100deg,#fff,#eaf2ff)!important;color:#123a82!important;box-shadow:0 12px 26px rgba(0,11,47,.32)!important}.login-submit:hover{background:#fff!important;color:#09275e!important}.login-form .login-hint{color:#a6b9dc}.login-copyright{border-top-color:rgba(210,226,255,.16)}.login-copyright-text{color:#a9bddf}.login-developed{color:#d7e3fa}.login-expand{border-color:rgba(255,255,255,.5);background:#fff;color:#16407f}.login-expand:hover{background:#eaf2ff}.login-brand-logo{background:rgba(255,255,255,.96)}.login-assurance{border-color:rgba(218,231,255,.18);background:rgba(255,255,255,.075)}.login-assurance b{color:#f5f8ff}.login-assurance small{color:#b7c9ea}
@media(max-width:900px){.login-page{padding:15px}.login-layout{width:100%;min-height:calc(100svh - 30px)}}
@media(max-width:540px){.login-page{padding:0;background:linear-gradient(150deg,#071638,#0c2d79 60%,#102e91)}.login-layout{min-height:100svh;border:0;border-radius:0}.login-showcase{background:linear-gradient(145deg,rgba(6,25,67,.70),rgba(14,54,143,.48))}.login-form-panel{background:rgba(8,27,70,.42)}.login-brand-logo{width:52px;height:52px}.login-input-wrap{background:rgba(255,255,255,.09)}}
/* Photo fournie en fond, avec une teinte bleue transparente pour préserver la lisibilité. */
.login-page{background-image:linear-gradient(115deg,rgba(3,17,48,.76),rgba(7,35,99,.54) 55%,rgba(9,35,86,.48)),url('login-background.png');background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed}
.login-layout{background:rgba(7,27,71,.22);backdrop-filter:blur(3px)}
.login-showcase{background:linear-gradient(145deg,rgba(5,20,53,.40),rgba(11,42,108,.22) 65%,rgba(18,69,148,.18))}
.login-form-panel{background:linear-gradient(155deg,rgba(8,27,70,.66),rgba(7,24,63,.78));backdrop-filter:blur(12px)}
@media(max-width:540px){.login-page{background-image:linear-gradient(145deg,rgba(3,17,48,.78),rgba(7,35,99,.62)),url('login-background.png');background-position:center;background-attachment:scroll}.login-showcase{background:rgba(5,20,53,.24)}.login-form-panel{background:rgba(7,24,63,.54)}}
.login-copyright{display:flex;align-items:center;justify-content:center;gap:16px;text-align:center;font-size:11px}.login-copyright-text{font-size:11px;letter-spacing:.1px}
.login-submit{border:1px solid #f28b20!important;background:linear-gradient(105deg,#f28b20,#ff9e2f)!important;color:#fff!important;box-shadow:0 10px 24px rgba(242,139,32,.28)!important}.login-submit svg{stroke:#fff!important}.login-submit:hover{border-color:#ffad50!important;background:linear-gradient(105deg,#e97d0d,#f28b20)!important;color:#fff!important;box-shadow:0 13px 27px rgba(242,139,32,.36)!important}
.login-layout{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);width:min(1260px,calc(100vw - 56px));min-height:min(760px,calc(100svh - 56px))}.login-form-panel{padding:40px clamp(30px,4vw,58px) 20px}.login-form-content{width:min(360px,100%)}.login-form-heading{margin-bottom:23px}.login-input-wrap{height:46px}.login-submit{height:47px;margin-top:20px!important}.login-copyright{margin-top:24px;padding-top:12px}
.login-copyright{justify-content:flex-end;text-align:right}.login-copyright-text{text-align:right}
.login-input-wrap.password-wrap input{color:#fff!important;-webkit-text-fill-color:#fff!important;caret-color:#fff!important;opacity:1!important}.login-input-wrap.password-wrap .password-toggle{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border:0;border-radius:7px;background:transparent;color:#dce8ff;cursor:pointer}.login-input-wrap.password-wrap .password-toggle:hover{background:rgba(255,255,255,.12);color:#fff}.login-input-wrap.password-wrap .password-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.login-input-wrap.password-wrap input:-webkit-autofill,.login-input-wrap.password-wrap input:-webkit-autofill:hover,.login-input-wrap.password-wrap input:-webkit-autofill:focus{-webkit-text-fill-color:#fff!important;caret-color:#fff!important}
.login-input-wrap input{color:#111827!important;-webkit-text-fill-color:#111827!important;caret-color:#111827!important}.login-input-wrap input::placeholder{color:#a7b0bb!important}.login-input-wrap input:-webkit-autofill,.login-input-wrap input:-webkit-autofill:hover,.login-input-wrap input:-webkit-autofill:focus{-webkit-text-fill-color:#111827!important;box-shadow:0 0 0 1000px #fff inset!important;caret-color:#111827!important}.login-input-wrap.password-wrap input,.login-input-wrap.password-wrap input:-webkit-autofill,.login-input-wrap.password-wrap input:-webkit-autofill:hover,.login-input-wrap.password-wrap input:-webkit-autofill:focus{color:#111827!important;-webkit-text-fill-color:#111827!important;caret-color:#111827!important}
@media(max-width:900px){.login-layout{grid-template-columns:1fr;min-height:calc(100svh - 30px)}.login-form-panel{padding:32px 30px 18px}.login-form-content{width:min(420px,100%)}.login-copyright{margin-top:20px}}

.product-movement-panel .movement-packaging-name{color:#111!important}


.receipt-history-toolbar{display:flex;align-items:center;gap:10px;padding:11px 18px;border-top:1px solid #eff3f5;border-bottom:1px solid #e8eef1;background:#fbfcfd}.receipt-history-toolbar .receipt-search{flex:1;width:auto}.receipt-history-toolbar .date-range-filter{flex:0 0 auto}.receipt-history-toolbar>.btn{white-space:nowrap}.dark .receipt-history-toolbar{border-color:#2d4552;background:#1a3440}@media(max-width:900px){.receipt-history-toolbar{align-items:stretch;flex-direction:column}.receipt-history-toolbar .date-range-filter,.receipt-history-toolbar>.btn{width:100%}}


.status.received{background:#e6f8f1;color:#168b64}


@media print{
  body.product-movements-print{background:#fff!important;color:#253943!important;font:9px Arial,sans-serif!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body.product-movements-print .product-detail-head,body.product-movements-print .product-detail-kpis,body.product-movements-print .product-stock-panel,body.product-movements-print .product-detail-side,body.product-movements-print .product-print-signatures,body.product-movements-print .product-movement-panel>.panel-head,body.product-movements-print .product-movement-filters{display:none!important}
  body.product-movements-print .sidebar,body.product-movements-print .topbar,body.product-movements-print footer,body.product-movements-print .overlay{display:none!important}
  body.product-movements-print .main{width:100%!important;margin:0!important}
  body.product-movements-print .content{padding:0!important}
  body.product-movements-print .product-detail-page,body.product-movements-print .product-detail-grid{display:block!important;margin:0!important;padding:0!important}
  body.product-movements-print .product-movement-panel{display:block!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;overflow:visible!important}
  body.product-movements-print .movement-print-header{display:grid!important;grid-template-columns:38mm 1fr 58mm!important;align-items:center;gap:5mm;margin:0 0 4mm;padding:0 0 4mm;border:0;border-bottom:2px solid #0b527d;position:relative}
  body.product-movements-print .movement-print-header:after{content:'';position:absolute;left:0;bottom:-2px;width:28%;height:2px;background:#ff9917}
  body.product-movements-print .movement-print-header img{width:36mm;height:25mm;object-fit:contain}
  body.product-movements-print .movement-print-header p,body.product-movements-print .movement-print-header h1,body.product-movements-print .movement-print-header b{display:block;margin:0}
  body.product-movements-print .movement-print-header p{font-size:8px;color:#647d8c}
  body.product-movements-print .movement-print-header h1{margin:1mm 0;color:#0b527d;font-size:17px;letter-spacing:.8px}
  body.product-movements-print .movement-print-header h1:after{content:none!important}
  body.product-movements-print .movement-print-header b{font-size:9px}
  body.product-movements-print .movement-print-header aside{text-align:right}
  body.product-movements-print .movement-print-header aside span,body.product-movements-print .movement-print-header aside strong,body.product-movements-print .movement-print-header aside small{display:block}
  body.product-movements-print .movement-print-header aside span{color:#718696;font-size:7px;text-transform:uppercase}
  body.product-movements-print .movement-print-header aside strong{margin:1mm 0 2mm;font-size:8px}
  body.product-movements-print .movement-print-header aside small{color:#c66f00;font-size:7px}
  body.product-movements-print .product-movement-scroll{max-height:none!important;overflow:visible!important;border:1px solid #dce7ed;border-radius:3px}
  body.product-movements-print .product-movement-panel table{width:100%;table-layout:fixed;border-collapse:collapse;color:#253943;font-size:7px}
  body.product-movements-print .product-movement-panel thead{display:table-header-group}
  body.product-movements-print .product-movement-panel th{padding:2mm 1.2mm;background:#0b527d!important;color:#fff!important;text-align:left;font-size:6.5px;text-transform:uppercase}
  body.product-movements-print .product-movement-panel td{padding:1.8mm 1.2mm;border-bottom:1px solid #e1e8eb;vertical-align:middle;overflow-wrap:anywhere;font-size:7px;line-height:1.2}
  body.product-movements-print .product-movement-panel tbody tr:nth-child(even){background:#f6f9fa!important}
  body.product-movements-print .product-movement-panel .positive,body.product-movements-print .product-movement-panel .negative{color:#253943!important}
  body.product-movements-print .product-movement-panel .table-subline{margin-top:.5mm;color:#71828a;font-size:6px}
  body.product-movements-print .product-movement-panel tbody tr{break-inside:avoid}
}
.credit-limit-modal{z-index:120;padding:22px;background:rgba(13,31,47,.56)}
.credit-limit-card{width:min(480px,100%);padding:34px;background:#fff;border:1px solid #e7edf2;border-radius:20px;box-shadow:0 28px 90px rgba(18,42,61,.24);text-align:center}
.credit-limit-card .modal-close{top:15px;right:15px;width:34px;height:34px;border:1px solid #e7edf2;border-radius:10px;background:#f7f9fb;color:#617487;font-size:20px}
.credit-limit-icon{width:56px;height:56px;margin:0 auto 17px;display:grid;place-items:center;border-radius:17px;background:#fff1df;color:#e88719}
.credit-limit-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.credit-limit-card .eyebrow{color:#d27a13;margin-bottom:6px}
.credit-limit-card h2{margin:0;color:#173e59;font-size:22px;letter-spacing:-.35px}
.credit-limit-lead{margin:8px 0 18px;color:#718195;font-size:13px}
.credit-limit-message{padding:14px 15px;border:1px solid #f1d6b2;border-radius:12px;background:#fffaf3;color:#34495b;font-size:13px;line-height:1.65;text-align:left;overflow-wrap:anywhere}
.credit-limit-hint{display:flex;align-items:flex-start;gap:10px;margin:14px 0 22px;text-align:left;color:#65788a;font-size:12px}
.credit-limit-hint>span{flex:0 0 19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#e9f2f7;color:#28627f;font-size:12px;font-weight:800}
.credit-limit-hint p{margin:0;line-height:1.55}
.credit-limit-actions{display:flex;justify-content:center}
.credit-limit-actions .btn{min-width:150px;background:#f3921b;border-color:#f3921b;color:#fff;box-shadow:0 8px 18px rgba(243,146,27,.2)}
.credit-limit-actions .btn:hover{background:#df7d0a;border-color:#df7d0a}
@media(max-width:520px){.credit-limit-card{padding:30px 22px 24px}.credit-limit-card h2{font-size:20px}}
.inventory-count-list .count-head{grid-template-columns:minmax(220px,1fr) minmax(260px,340px)}
.inventory-count-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,340px);align-items:center;gap:12px;min-height:67px;padding:8px 12px;border-bottom:1px solid var(--border)}
.inventory-count-row:nth-child(odd){background:rgba(11,82,125,.018)}
.inventory-product-copy b,.inventory-product-copy small{display:block}.inventory-product-copy b{font-size:12px}.inventory-product-copy small{margin-top:3px;color:var(--muted);font-size:10px}
.inventory-count-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inventory-count-fields label{display:flex;flex-direction:column;gap:3px;color:var(--muted);font-size:9px;font-weight:700}.inventory-count-fields label:only-child{grid-column:1/-1}.inventory-count-fields input{width:100%;height:36px;margin:0;text-align:right}
@media(max-width:620px){.inventory-count-list .count-head{grid-template-columns:minmax(130px,1fr) minmax(175px,1fr)}.inventory-count-row{grid-template-columns:minmax(130px,1fr) minmax(175px,1fr);gap:8px;padding:8px}.inventory-count-fields{gap:5px}.inventory-count-fields input{padding:8px 6px}}
.stock-document-head-actions{display:flex;align-items:center;gap:12px}.stock-document-head-actions .btn{white-space:nowrap}
.cash-method-card{cursor:default}.cash-method-card[role="button"]{cursor:pointer}
.product-stock-bottom-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(270px,.75fr);align-items:start;gap:17px}.product-stock-bottom-grid>.panel{min-width:0}.product-stock-bottom-grid .product-stock-summary-bottom{margin:0}.product-stock-bottom-grid .product-packaging-card{height:100%}@media(max-width:1100px){.product-stock-bottom-grid{grid-template-columns:1fr}}
@media print{body.product-movements-print .product-stock-bottom-grid{display:none!important}}
.product-total-chips{display:flex;justify-content:flex-end;align-items:flex-start;flex-wrap:wrap;gap:8px}.product-stock-summary-bottom .product-total-chip{display:block;white-space:nowrap}@media(max-width:1050px){.product-stock-bottom-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.product-stock-bottom-grid{grid-template-columns:1fr}.product-stock-summary-bottom .panel-head{align-items:flex-start;flex-direction:column}.product-total-chips{justify-content:flex-start}}
.product-stock-summary-bottom .product-total-chip.unit-total{background:#eaf2f8}.product-stock-summary-bottom .product-total-chip.unit-total b{color:#0b527d}.product-stock-summary-bottom .product-total-chip.packaging-total{background:#eaf7ef}.product-stock-summary-bottom .product-total-chip.packaging-total b{color:#16804a}
.dark .product-stock-summary-bottom .product-total-chip.unit-total{background:#1a465b}.dark .product-stock-summary-bottom .product-total-chip.unit-total b{color:#bfe2ef}.dark .product-stock-summary-bottom .product-total-chip.packaging-total{background:#213e30}.dark .product-stock-summary-bottom .product-total-chip.packaging-total b{color:#8ee1ad}
.stock-document-view-banner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.stock-document-view-banner>div{display:flex;flex-direction:column;gap:4px}.stock-document-view-banner small{color:var(--muted);font-size:9px}.stock-document-view-banner b{font-size:12px}.stock-document-view-banner .stock-document-view-total b{font-size:17px;color:#0b527d}.stock-document-view-lines{overflow:hidden}.stock-document-view-lines tfoot th{padding-top:14px;border-top:2px solid var(--border);background:#f2f7f4;text-align:right}.dark .stock-document-view-banner .stock-document-view-total b{color:#bfe2ef}.dark .stock-document-view-lines tfoot th{background:#20382b}@media(max-width:700px){.stock-document-view-banner{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-document-view-page>.page-actions{align-items:flex-start;flex-direction:column}}
