/* Couche reprise de floramaar_MOBILE (1).html : même palette, échelle et comportement. */
:root{--cr:#FAF7F2;--be:#F0EAE0;--go:#C8A97A;--gd:#9E7D51;--br:#3D2B1F;--bl:#6B4C38;--wh:#fff;--tx:#2C1F14;--tm:#7A6555;--tl:#A89080;--bo:#E0D5C8;--bs:#C8B8A8;--sg:#2D7A4F;--sb:#E8F5EE;--wo:#B8540A;--wb:#FEF3E8;--dg:#A32020;--db:#FDEAEA;--ya:#C89000;--yb:#FFFBEB;--r:10px;--s:6px}body{font-family:'Segoe UI',system-ui,sans-serif;background:var(--cr);color:var(--tx)}.sidebar{background:var(--br);width:225px}.brand{padding:1rem;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{overflow:hidden;border:2px solid rgba(200,169,122,.5);background:transparent}.brand-mark img,.login-mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.brand b{font-size:14px}.brand small{color:rgba(255,255,255,.35)}nav{padding:.75rem 0}.nav-link{padding:8px 10px;border-radius:var(--s);margin:0 12px 1px;color:rgba(255,255,255,.6);font-size:13px}.nav-link:hover{background:rgba(255,255,255,.07)}.nav-link.active{background:var(--go)}.sidebar-foot{padding:.75rem;border-top:1px solid rgba(255,255,255,.08);background:transparent}.main{margin-left:225px}.topbar{height:auto;min-height:55px;padding:.75rem 1.5rem}.topbar h1{font:700 16px 'Segoe UI',system-ui,sans-serif}.crumb{display:none}.content{padding:1.5rem;max-width:none}.hero,.caisse-head{padding:1.25rem 1.5rem;border-radius:var(--r);background:linear-gradient(135deg,var(--br),var(--bl));margin-bottom:1.5rem}.hero h2{font:700 20px 'Segoe UI',system-ui,sans-serif}.hero-dot{font-size:30px}.stats{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:12px;margin-bottom:1.5rem}.stats article,.card{border:1px solid var(--bo);border-radius:var(--r);box-shadow:none}.stats article{padding:1rem 1.25rem}.stats strong{font-size:24px}.card{padding:1.25rem}.section-head h2{font:700 16px 'Segoe UI',system-ui,sans-serif}.section-head p{font-size:12px}.badge{font-weight:600}.warning{background:var(--wb);color:var(--wo)}.danger{background:var(--db);color:var(--dg)}.caisse-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.caisse-card{padding:10px 6px;border:2px solid var(--bo);border-radius:12px;cursor:pointer;transition:all .18s}.caisse-card:hover:not(.empty){border-color:var(--go);background:var(--cr);transform:translateY(-2px);box-shadow:0 4px 12px rgba(44,31,20,.12)}.caisse-card.empty{opacity:.38;filter:grayscale(.7);cursor:not-allowed}.caisse-card:has(.jewel.jaune){border-color:#E8CC70;background:var(--yb)}.jewel{width:58px;height:58px;background:transparent;border:0;margin-top:6px}.stock-pill{border-radius:20px}.caisse-card:has(.stock-pill:first-child){--x:1}.login-page{background:var(--br)}.login-card{padding:2.5rem 2rem;border-radius:16px;box-shadow:0 4px 20px rgba(44,31,20,.2)}.login-mark{width:120px;height:120px;overflow:hidden;background:transparent;border-radius:50%}.login-kicker{color:var(--tm)}.admin-modal{background:rgba(44,31,20,.5)}.modal-card{border-radius:var(--r);box-shadow:0 4px 20px rgba(44,31,20,.15)}.modal-actions button{background:var(--br)}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:0;border-color:var(--go);background:#fff}.product-picto{filter:drop-shadow(0 1px 0 rgba(44,31,20,.06))}@media(max-width:768px){.sidebar{height:80px}.main{margin-left:0}.content{padding:1rem .75rem}.topbar{padding:.6rem 1rem}.topbar h1{font-size:14px}.nav-link{margin:0;padding:4px 2px;font-size:9px}.nav-link span{font-size:18px}.hero,.caisse-head{padding:1rem}.stats{grid-template-columns:repeat(2,1fr);gap:8px}.caisse-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px}.card{padding:1rem .875rem}.brand,.sidebar-foot{display:none}}

/* Navigation administrateur fidèle à la structure de la maquette. */
.sidebar-nav{overflow-y:auto}.nav-section{margin-bottom:.25rem}.nav-section>p{padding:0 .5rem .25rem;margin:0 12px;color:rgba(255,255,255,.3);font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.nav-link .nav-label{font-size:inherit}.topbar{display:flex;align-items:center}.source-stat small{font-weight:600}.source-stat:not(:has(span)) strong{margin-bottom:3px}@media(max-width:768px){.sidebar-nav{display:flex!important;align-items:stretch;overflow:hidden}.sidebar-nav .nav-section{display:contents}.nav-section>p{display:none}.sidebar-nav .nav-link{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px}.sidebar-nav .nav-link .nav-label{display:block;font-size:9px;line-height:1.1;max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav .nav-link em{position:absolute;top:4px;right:4px;margin:0}.sidebar-nav .nav-link>span:first-child{font-size:0}.sidebar-nav .nav-link .nav-icon{width:20px;height:20px}}@media(max-width:380px){.sidebar-nav .nav-link .nav-label{display:none}}

/* Bloc Top partenaires : pastilles et badges repris de la maquette. */
.content .source-rank{gap:8px;padding:8px 0}.source-rank-number{flex:0 0 22px}.source-rank-copy{min-width:0}.source-rank-copy strong{font-size:13px}.source-rank-copy small{margin-top:2px;line-height:1.35}.source-commission-badge{display:inline-flex;align-items:center;padding:1px 7px;border-radius:8px;font-size:11px;font-weight:600;line-height:1.35;white-space:nowrap}.source-commission-badge--tier{background:#E8F0FF;color:#2050A0}.source-commission-badge--percentage{background:#FEF3E0;color:var(--gd)}.source-rank-ca{margin-left:auto;white-space:nowrap;text-align:right}.source-alert>.source-alert-icon{flex:0 0 28px!important;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.source-alert--yellow{box-shadow:inset 3px 0 0 #E8CC70}.product-picto{display:block;max-width:100%;max-height:100%}@media(max-width:768px){.content .source-rank{gap:8px}.source-rank-ca{font-size:12px}.source-commission-badge{font-size:10px}.source-alert>.source-alert-icon{flex-basis:28px!important}}

.admin-mobile-nav,.admin-mobile-more{display:none}@media(max-width:768px){.sidebar--admin .sidebar-nav{display:none!important}.sidebar--admin .admin-mobile-nav{display:flex;width:100%;height:80px;padding:0;flex:none;align-items:stretch}.admin-mobile-nav-link{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;margin:0;padding:4px 2px;border:0;border-radius:0;background:transparent;color:rgba(255,255,255,.72);font:9px/1.1 'Segoe UI',system-ui,sans-serif;text-align:center;text-decoration:none;cursor:pointer}.admin-mobile-nav-link.active{background:var(--go);color:#fff}.admin-mobile-nav-link>span:first-child{display:flex;align-items:center;justify-content:center;height:21px;font-size:18px}.admin-mobile-nav-link .nav-icon{width:20px;height:20px}.admin-mobile-nav-link em{position:absolute;top:3px;right:calc(50% - 22px);padding:1px 5px;border-radius:10px;background:var(--dg);color:#fff;font-size:9px;font-style:normal}.admin-mobile-more{position:fixed;z-index:40;inset:0;display:block;background:rgba(44,31,20,.42)}.admin-mobile-more[hidden]{display:none}.admin-mobile-more-panel{position:absolute;right:0;bottom:58px;left:0;padding:14px 14px 12px;border-radius:16px 16px 0 0;background:#fff;box-shadow:0 -8px 28px rgba(44,31,20,.18);animation:admin-mobile-more-in .18s ease-out}.admin-mobile-more-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:var(--br)}.admin-mobile-more-head button{width:30px;height:30px;border:0;border-radius:50%;background:var(--cr);color:var(--br);font:22px/1 system-ui;cursor:pointer}.admin-mobile-more-panel>a{display:flex;align-items:center;gap:10px;min-height:42px;padding:9px 10px;border-top:1px solid var(--bo);color:var(--tx);font-size:13px;font-weight:600;text-decoration:none}.admin-mobile-more-panel>a .nav-icon{width:20px;height:20px;color:var(--gd)}.admin-mobile-more-panel>a.admin-mobile-more-logout{color:var(--dg)}@keyframes admin-mobile-more-in{from{transform:translateY(100%)}to{transform:translateY(0)}}.sidebar--admin+.main{padding-bottom:58px}.sidebar--admin+.main .content{padding-bottom:82px}} 

@media(max-width:768px){
  .sidebar.sidebar--admin{
    width:100%!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    top:auto!important;
  }

  .sidebar--admin .admin-mobile-nav{
    width:100vw!important;
    max-width:100vw!important;
    display:flex!important;
    align-items:stretch!important;
  }

  .sidebar--admin .admin-mobile-nav-link{
    flex:1 1 0!important;
    min-width:0!important;
    max-width:none!important;
  }
}