/* Navigation commune et réglages de la maquette. */
:root{--cg-header-h:108px;--cg-bar-h:64px;}
.app-header{height:var(--cg-header-h);background:var(--cg-side-bg);}
.app-header__inner{display:grid;grid-template-columns:145px minmax(230px,1fr) auto auto;grid-template-rows:64px 44px;gap:0 16px;height:108px;align-items:center;padding:0 24px;}
.app-header .brand{width:auto;min-width:0;}
.app-header__inner>.brand{grid-column:1;grid-row:1;}
.header-first-line{grid-column:2;grid-row:1;display:flex;align-items:center;gap:18px;min-width:0;}
.header-home{display:flex;gap:8px;align-items:center;color:#cbd6e6;padding:9px 10px;border-radius:6px;font-weight:500;white-space:nowrap;}
.header-home:hover{color:#fff;background:#ffffff08;}
.header-home.is-active{color:#fff;background:transparent;}
.header-home.is-active i{color:#ffbc63;}
.app-header .global-search{flex:1;min-width:0;margin:0;height:38px;background:#ffffff0b;border-color:#ffffff24;box-shadow:none;border-radius:7px;}
.app-header .global-search:hover{background:#ffffff12;border-color:#ffffff38;}
.app-header .global-search .global-search__input{color:#eef3fb;}
.app-header .global-search .global-search__input::placeholder{color:#b7c4d7;}
.app-header .global-search .global-search__ico{color:#b7c4d7;}
.app-header .global-search:focus-within{background:#fff;border-color:#d3deef;box-shadow:0 0 0 3px #ffffff10;}
.app-header .global-search:focus-within .global-search__input{color:var(--cg-ink);}
.app-header .global-search:focus-within .global-search__input::placeholder{color:#647185;}
.app-header .global-search:focus-within .global-search__ico{color:#647185;}
.app-header .global-search .global-search__btn{display:inline-flex;justify-content:center;align-items:center;width:32px;height:30px;min-width:32px;flex:none;margin-right:3px;padding:0;border:0;border-radius:5px;background:transparent;color:#d7e2f2;font-size:16px;}
.app-header .global-search .global-search__btn:hover{background:#ffffff14;color:#fff;}
.app-header .global-search:focus-within .global-search__btn{color:var(--cg-link);background:#f0f4fa;}
.app-header .app-nav{grid-column:1 / 5;grid-row:2;margin:0 -12px;align-self:stretch;border-top:1px solid #ffffff12;}
.app-header .app-nav>.offcanvas-body{height:100%;align-items:center;padding:0;}
.app-header .app-nav__list{display:flex;width:max-content;max-width:100%;height:100%;gap:var(--ui-space-2,8px);}
.app-header .app-nav__list>li{flex:none;min-width:0;}
.app-header .app-nav__list>li>a{position:relative;height:42px;padding:0 12px;gap:8px;border-radius:0;font-size:13px;font-weight:500;color:#d2dceb;box-shadow:none;transition:color .15s ease,background-color .15s ease;}
.app-header .app-nav__list>li>a i{flex:0 0 16px;width:16px;font-size:14px;text-align:center;opacity:.65;}
.app-header .app-nav__list>li>a:hover,.app-header .app-nav__list>li>a[aria-expanded="true"]{background:#ffffff06;color:#fff;}
.app-header .app-nav__list>li>a.is-active{background:transparent;color:#fff;font-weight:600;box-shadow:none;}
.app-header .app-nav__list>li>a.is-active::after,.app-header .app-nav__list>li>a[aria-expanded="true"]::after{content:"";position:absolute;bottom:0;left:12px;right:12px;height:2px;border-radius:2px;background:#e9a342;}
.app-header .app-nav__list:has(>li>a[aria-expanded="true"])>li>a.is-active:not([aria-expanded="true"])::after{opacity:0;}
.app-header .dropdown-menu{border:1px solid #dbe2eb;border-radius:10px;box-shadow:0 12px 32px #16233a1c;padding:7px;font-size:13px;}
.app-header .dropdown-item{display:flex;align-items:center;gap:10px;min-height:36px;padding:8px 12px;border-radius:6px;font-weight:400;}
.app-header .dropdown-item>i{font-size:14px;width:16px;opacity:.6;}
.app-header .dropdown-item:hover,.app-header .dropdown-item:focus{background:#f0f4f9;color:var(--cg-ink);}
.app-header .dropdown-divider{border-top-color:#e7ecf2;margin:6px 7px;}
/* Menus de navigation : groupes lisibles et commandes légères. */
.app-header .app-nav__menu.cg-menu{--bs-dropdown-min-width:280px;width:280px;max-width:calc(100vw - 24px);max-height:calc(100dvh - var(--cg-header-h) - 24px);overflow-y:auto;overscroll-behavior:contain;padding:7px;border:1px solid #e0e6ef;border-radius:12px;margin-top:6px;box-shadow:0 18px 44px #1526411a,0 3px 10px #1526410a;scrollbar-width:thin;scrollbar-color:#c4cedc transparent;}
.app-header .app-nav__menu.cg-menu .cg-menu-section{padding:6px 10px 3px;margin-top:3px;color:#64748b;font-size:10px;font-weight:600;letter-spacing:.065em;line-height:12px;text-transform:uppercase;}
.app-header .app-nav__menu.cg-menu .cg-menu-section:first-child{margin-top:0;padding-top:4px;}
.app-header .app-nav__menu.cg-menu .dropdown-item{position:relative;min-height:34px;padding:4px 10px;gap:9px;border-radius:7px;white-space:normal;font-size:13px;font-weight:500;line-height:1.35;color:#40516c;background:transparent;transition:background-color .15s,color .15s;}
.cg-menu-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border-radius:6px;background:#f3f6fa;color:#7486a0;}
.app-header .cg-menu-icon>i{width:auto;font-size:13px;line-height:1;opacity:1;color:inherit;}
.cg-menu-label{flex:1 1 auto;min-width:0;}
.app-header .app-nav__menu.cg-menu .dropdown-item:hover,.app-header .app-nav__menu.cg-menu .dropdown-item:focus{background:#eef3f9;color:#223751;outline:0;}
.app-header .app-nav__menu.cg-menu .dropdown-item:focus-visible{box-shadow:inset 0 0 0 1.5px #b8c9df;}
.app-header .app-nav__menu.cg-menu .dropdown-item:hover .cg-menu-icon,.app-header .app-nav__menu.cg-menu .dropdown-item:focus .cg-menu-icon{background:#fff;color:#365576;box-shadow:0 1px 3px #263e600c;}
.app-header .app-nav__menu.cg-menu .dropdown-item:active{background:#e4edf8;color:#223751;}
.app-header .header-cart{border-color:#ffffff25;background:transparent;width:38px;height:38px;font-size:18px;border-radius:7px;color:#d2dceb;}
.app-header .header-cart:hover{background:#ffffff0b;color:#fff;}
.app-header__inner>.header-cart{grid-column:3;grid-row:1;}
.app-header__inner>.user-box{grid-column:4;grid-row:1;margin:0;max-width:350px;}
.company-logo{width:190px;height:56px;padding:4px 8px;}
.company-logo img{width:100%;height:100%;object-fit:contain;}
.user-box__txt{max-width:145px;}
/* Menu du compte : un chevron signale le menu déroulant (point du 28/10/2026). */
.user-box__caret{flex:none;margin-left:-3px;color:#b7c4d7;font-size:12px;transition:transform .15s,color .15s;}
.user-box__link:hover .user-box__caret{color:#fff;}
.user-box__link[aria-expanded="true"] .user-box__caret{transform:rotate(180deg);color:#fff;}
@media(prefers-reduced-motion:reduce){.user-box__caret{transition:none;}}
.side-resources{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:10px 0;}
.side-resources a,.side-resources button{width:auto;font-size:12px;gap:5px;padding:9px 4px;white-space:nowrap;position:relative;}
.news-dot{width:7px;height:7px;flex:none;border-radius:50%;background:#ffb547;box-shadow:0 0 0 2px var(--cg-side-bg);}
.news-dot[hidden]{display:none;}
.search-suggestions{position:absolute;top:calc(100% + 7px);left:0;right:0;max-height:360px;overflow:auto;background:#fff;color:var(--cg-text);border:1px solid var(--cg-line);border-radius:9px;box-shadow:0 8px 28px #0b203a30;padding:6px;z-index:1040;}
.search-suggestions[hidden]{display:none;}
.search-suggestion{display:flex;gap:10px;align-items:center;color:var(--cg-text);padding:10px;border-radius:5px;min-height:42px;}
.search-suggestion strong{color:var(--cg-link);white-space:nowrap;}
.search-suggestion span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.search-suggestion:hover,.search-suggestion.is-focused{background:var(--cg-primary-soft);color:var(--cg-ink);}
.search-empty{padding:12px;margin:0;}
.preferences-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.preferences-grid label{display:grid;gap:6px;font-weight:500;}
.preferences-grid .form-control,.preferences-grid .form-select{font-size:14px;}
.preference-section{border-bottom:1px solid var(--cg-line);padding-bottom:20px;margin-bottom:20px;}
.preference-section h3{font-size:17px;color:var(--cg-ink);margin-bottom:14px;}
.preference-note{font-size:13px;line-height:1.5;color:var(--cg-muted);margin-top:10px;}
.theme-options{display:flex;gap:10px;flex-wrap:wrap;}
.theme-choice{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--cg-line);border-radius:7px;cursor:pointer;}
.theme-swatch{display:block;width:18px;height:18px;border-radius:50%;background:var(--swatch);}
.logo-preview{display:flex;align-items:center;justify-content:center;background:#f5f7fa;border:1px solid var(--cg-line);border-radius:6px;padding:12px;height:88px;margin-top:12px;}
.logo-preview img{max-width:100%;max-height:64px;object-fit:contain;}
.family-settings-table{font-size:13px;}
.family-settings-table td{vertical-align:middle;padding:8px;}
.family-settings-table .form-control{font-size:13px;min-width:170px;}
.family-order-controls{display:flex;gap:4px;}
.family-order-controls button{min-width:30px;padding:4px 6px;}
.family-child-name{padding-left:18px;}
.family-row-count{white-space:nowrap;color:var(--cg-muted);}
.sector-picker__hint{display:none!important;}
.sector-info-button{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;margin-left:5px;border:0;background:transparent;color:var(--cg-muted);padding:0;vertical-align:middle;}
.sp-row--child{padding-left:46px;box-shadow:inset 30px 0 0 -29px #cdd6e1;}
@media(max-width:1199.98px) and (min-width:992px){.app-header__inner{grid-template-columns:145px minmax(200px,1fr) 38px auto;gap:0 12px;}.user-box__txt{display:none!important;}.company-logo{width:150px;height:52px;}}
@media(max-width:991.98px){
 :root{--cg-header-h:110px;}
 .app-header{height:110px;}
 .app-header__inner{display:grid;grid-template-columns:32px minmax(110px,1fr) 42px auto;grid-template-rows:62px 48px;height:110px;gap:0 12px;padding:0 14px;}
 .app-header__inner>.btn-burger{grid-column:1;grid-row:1;height:auto;}
 .app-header__inner>.brand{grid-column:2;grid-row:1;height:auto;}
 .app-header__inner>.header-cart{grid-column:3;grid-row:1;}
 .app-header__inner>.user-box{grid-column:4;grid-row:1;height:auto;}
 .header-first-line{grid-column:1 / 5;grid-row:2;gap:6px;}
 .header-home{padding:8px;font-size:12px;}
 .company-logo{width:120px;height:48px;}
 .user-box__txt{display:none!important;}
 .app-header .app-nav{grid-column:auto;grid-row:auto;margin:0;border:0;align-self:auto;}
 .app-header .app-nav>.offcanvas-body{height:auto;display:block;padding:12px;}
 .app-header .app-nav__list{height:auto;display:block;width:100%;}
 .app-header .app-nav__list>li>a{margin-bottom:4px;}
 .app-header .app-nav__list>li>a{padding:0 16px;border-radius:6px;}
 .app-header .app-nav__list>li>a.is-active::after,.app-header .app-nav__list>li>a[aria-expanded="true"]::after{left:16px;right:16px;}
 .app-header .app-nav.offcanvas-lg{background:var(--cg-side-bg);}
 .app-header .app-nav__menu.cg-menu{position:static!important;transform:none!important;width:100%;max-width:100%;max-height:none;margin:4px 0 10px;box-shadow:none;border-color:transparent;}
 .app-header .app-nav__menu.cg-menu .dropdown-item{min-height:40px;}
 .preferences-grid{grid-template-columns:1fr;}
}
@media(max-width:430px){.company-logo{width:76px;height:44px;padding:4px;}.app-header__inner{gap:0 7px;padding:0 10px;}.app-header .brand__title{font-size:17px;}.app-header .brand__sub{font-size:9px;}.global-search__btn{font-size:12px;}.header-home{gap:4px;padding:5px;}.global-search__ico{margin-left:7px;}}
@media print{.app-header,.app-sidebar,.sidebar-toggle,.bulk-actions,.app-notice{display:none!important;}:root{--cg-header-h:0px;}.app-body{display:block;}.app-main{margin:0!important;padding:0!important;}}
