/* Brand editor and persistent company identity; all palette colours are static. */
.brand-palette{margin:0;border:1px solid #dbe5e3;border-radius:12px;padding:16px;min-width:0}
.brand-palette legend{font-size:12px;font-weight:800;padding:0 6px;color:#405b5d}
.brand-palette p{font-size:12px;line-height:1.6;color:#607b75;margin:0 0 12px}
.brand-palette-options{display:flex;gap:8px;flex-wrap:wrap}
.brand-palette-choice{background:#fff;color:#304b46;border:1px solid #cbd9d4;border-radius:9px;min-height:44px;padding:9px 11px;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:750}
.brand-palette-choice[aria-pressed=true]{outline:2px solid #405b5d;outline-offset:2px}
.brand-palette-swatch{width:26px;height:22px;display:block;border-radius:6px;background:linear-gradient(135deg,#1d745e 55%,#102c33 55%)}
.brand-palette-blue .brand-palette-swatch{background:linear-gradient(135deg,#214e86 55%,#142b45 55%)}
.brand-palette-purple .brand-palette-swatch{background:linear-gradient(135deg,#68428a 55%,#2a2139 55%)}
.brand-palette-orange .brand-palette-swatch{background:linear-gradient(135deg,#944615 55%,#36281f 55%)}
.brand-palette-graphite .brand-palette-swatch{background:linear-gradient(135deg,#465568 55%,#20272f 55%)}
.branding-grid{align-items:start;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.branding-grid .panel{min-width:0}
.branding-grid input[type=color]{height:48px;padding:5px;cursor:pointer}
.branding-grid input[type=file]{font-size:12px;max-width:100%;padding:10px}
.brand-preview-figure{margin:18px 0 22px;border:1px solid #d6e3dd;border-radius:12px;overflow:hidden;background:#f5f8f7}
.brand-preview-figure canvas{display:block;width:100%;height:auto;aspect-ratio:16/9}
.brand-preview-figure figcaption{padding:9px 12px;font-size:11px;background:#fff;color:#607870}
.brand-preview-accessible{border-top:1px solid #e0e9e5;padding-top:16px;overflow-wrap:anywhere}
.brand-preview-accessible h2{font-size:20px;line-height:1.35;margin:14px 0 8px}
.brand-preview-accessible p{font-size:13px;line-height:1.6}
.brand-preview-accessible .mono{font-size:11px;color:#5c756e}
.branding-preview h3{font-size:14px;line-height:1.5;margin:24px 0 8px}
.branding-preview .hint{margin:10px 0;font-size:12px;color:#5b746d}
.branding-preview-mark .company-logo{margin:auto;max-width:100%;width:72px;height:64px;object-fit:contain}
.branding-preview-mark .logo-mark{margin:auto}
.brand-preview-validation{padding:12px;font-size:12px;line-height:1.6}
.company-mobile-identity{display:none;align-items:center;gap:10px;min-width:0;max-width:100%}
.company-mobile-identity strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere;max-width:240px}
.company-mobile-identity .company-logo,.company-mobile-identity .logo-mark{height:36px;width:36px;flex:none}
.company-mobile-identity .logo-mark{font-size:21px}
/* Keep navigation usable when the sector menu contains many destinations. */
.sidebar{height:100vh;height:100dvh;min-height:0}
.sidebar .brand{margin-bottom:24px;flex:0 0 auto}
.sidebar .space-label{flex:0 0 auto}
.sidebar nav{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;flex:1 1 auto;padding:3px}
.sidebar-bottom{flex:0 0 auto;margin-top:14px}
.sidebar-account{min-height:50px}
.sidebar nav .nav-link{flex-shrink:0}
.brand-palette-choice:focus-visible,.sidebar button:focus-visible{outline:3px solid #84bcdf;outline-offset:2px}
.company-logo{object-fit:contain}
@media(max-height:820px){.sidebar-help{display:none}.sidebar .brand{margin-bottom:18px}.sidebar{padding-top:22px}}
@media(max-width:1200px){.branding-grid{grid-template-columns:minmax(0,1fr)}.brand-preview-figure{max-width:700px;margin-left:auto;margin-right:auto}}
@media(max-width:900px){.company-mobile-identity{display:flex}.topbar .top-left{min-width:0;flex:1;gap:12px}.topbar .top-right{flex:none}.topbar .breadcrumb{display:none}.topbar{min-height:73px;height:auto;padding-top:12px;padding-bottom:12px}.company-mobile-identity strong{max-width:210px}}
@media(max-width:600px){.branding-grid .panel{padding:18px}.brand-palette{padding:12px}.brand-palette-choice{flex:1 1 100px}.company-mobile-identity strong{font-size:12px;max-width:155px}.topbar .top-left{gap:8px}.topbar .top-right{gap:8px}.brand-preview-accessible h2{font-size:18px}.sidebar nav .nav-link{min-height:44px}}
@media(prefers-reduced-motion:reduce){.brand-palette-choice{transition:none}}
