.ccoo-shell-header{box-sizing:border-box;display:grid;grid-template-columns:minmax(130px,250px) minmax(0,1fr) minmax(120px,340px);align-items:center;gap:1rem;min-height:82px;padding:.65rem 1.2rem;background:var(--color-header,#F2F2F2);border-bottom:4px solid var(--environment-accent,var(--ccoo-red,#E32118));color:var(--color-ink,#111);font-family:var(--ccoo-font,Arial,Helvetica,sans-serif);position:sticky;top:0;z-index:50}.ccoo-shell-brand{display:flex;align-items:center;justify-self:start;min-width:0;max-width:min(235px,100%)}.ccoo-shell-brand img{display:block;width:min(235px,100%);height:58px;object-fit:contain;object-position:left center}.ccoo-shell-identity{display:grid;justify-items:center;gap:.22rem;min-width:0;text-align:center}.ccoo-shell-title{margin:0;max-width:100%;font-size:clamp(1.1rem,2vw,1.65rem);line-height:1.15;overflow-wrap:anywhere}.ccoo-shell-subtitle{margin:0;color:var(--color-muted,#676767);font-size:.88rem;font-weight:800;line-height:1.2}.ccoo-shell-subtitle:empty{display:none}.ccoo-shell-environment{display:inline-flex;align-items:center;justify-content:center;min-height:1.75rem;padding:.2rem .65rem;border:2px solid var(--environment-accent,#E32118);border-radius:999px;background:var(--environment-accent,#E32118);color:var(--environment-accent-contrast,#fff);font-size:.72rem;font-weight:900;letter-spacing:.06em;line-height:1;text-transform:uppercase;white-space:nowrap}.ccoo-shell-actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;min-width:0}.ccoo-shell-language{display:inline-flex;flex:0 0 auto;border:1px solid var(--color-border,#C6C6C6);border-radius:999px;overflow:hidden;background:#fff;padding:0;gap:0}.ccoo-shell-language button{min-width:3rem;min-height:44px;border:0;padding:.48rem .65rem;background:transparent;color:#111;cursor:pointer;font:inherit;font-weight:800}.ccoo-shell-language button[aria-pressed="true"]{background:var(--ccoo-red,#E32118);color:#fff}.ccoo-shell-specific-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.ccoo-shell-specific-actions:empty{display:none}.ccoo-shell-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .8rem;border:1px solid #777;border-radius:8px;background:#fff;color:#111;text-decoration:none;cursor:pointer;font:inherit;font-weight:850;line-height:1.1;text-align:center}.ccoo-shell-action:hover{border-color:var(--ccoo-red,#E32118);color:#111}.ccoo-shell-action:active{transform:translateY(1px)}.ccoo-shell-header :where(button,a){min-height:var(--touch-target-min,44px)}[data-app-environment-profile="production"] .ccoo-shell-environment,[data-app-environment="production"] .ccoo-shell-environment{display:none!important}
@media(max-width:980px){.ccoo-shell-header{grid-template-columns:minmax(90px,180px) minmax(0,1fr) auto}.ccoo-shell-actions{align-items:flex-end;flex-direction:column}.ccoo-shell-specific-actions{max-width:260px}}
@media(max-width:720px){.ccoo-shell-header{min-height:72px;grid-template-columns:80px minmax(0,1fr) auto;gap:.45rem .65rem;padding:.5rem .65rem}.ccoo-shell-brand img{height:48px}.ccoo-shell-title{font-size:1rem}.ccoo-shell-subtitle{font-size:.76rem}.ccoo-shell-environment{font-size:.62rem;min-height:1.5rem;padding:.15rem .5rem}.ccoo-shell-actions{display:contents}.ccoo-shell-language{grid-column:3;grid-row:1}.ccoo-shell-language button{min-width:2.2rem;padding:.38rem .42rem;font-size:.76rem}.ccoo-shell-specific-actions{grid-column:1/-1;grid-row:2;max-width:none;justify-content:center}.ccoo-shell-action{flex:0 1 auto}}
@media(max-width:430px){.ccoo-shell-header{grid-template-columns:64px minmax(0,1fr) auto}.ccoo-shell-brand img{height:42px}.ccoo-shell-title{font-size:.9rem}.ccoo-shell-subtitle{font-size:.7rem}.ccoo-shell-language button{min-width:1.95rem;padding:.34rem .32rem;font-size:.7rem}.ccoo-shell-specific-actions{align-items:stretch}.ccoo-shell-action{flex:1 1 100%}}

/* v1.2.0 · WCAG 2.2 AA */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
:where(button,[href],input,select,textarea,[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid #111!important;outline-offset:3px!important;box-shadow:0 0 0 2px #fff!important}
:where(button,input,select,textarea,[role="button"],[role="tab"]){min-height:44px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}}
