/* Institutional accesses: shared lettering, flat controls, brand hierarchy. */
.team.is-board #team-board .header-accesses{display:grid;grid-template-columns:repeat(4,var(--access-width,minmax(0,1fr)));align-items:stretch;gap:var(--access-gap,8px);grid-column:4/8;grid-row:1;width:100%;min-width:0}
.team.is-board #team-board .header-accesses :is(.directory-open,.partnership-open,.clients-pass-open,.careers-open){display:inline-flex;align-items:center;justify-content:center;grid-column:auto;grid-row:auto;min-width:0;width:100%;height:30px;margin:0;padding:5px 8px;border:1px solid var(--duv-cream);border-radius:7px;font-family:var(--duv-font-ui);font-size:9px;font-weight:600;line-height:1.35;letter-spacing:.08em;white-space:nowrap;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s;transform:none;box-shadow:none}
.team.is-board #team-board .partnership-open{background:var(--duv-blue-action);color:var(--duv-cream)}
.team.is-board #team-board .clients-pass-open{background:#111;color:var(--duv-cream)}
.team.is-board #team-board .careers-open{background:var(--duv-cream);color:var(--duv-ink);border-color:var(--duv-blue-action);letter-spacing:.035em}
.team.is-board #team-board .header-accesses button:is(:hover,:active,[aria-expanded="true"]){background:var(--duv-blue-action);color:#fff;transform:none;box-shadow:none}
.team.is-board #team-board .header-accesses button:focus-visible{outline:2px solid var(--duv-blue-action);outline-offset:3px}
.team .partnership-card .directory-emblem{background:var(--duv-blue-action);color:var(--duv-cream);border-color:var(--duv-cream)}
.team .clients-pass-card .directory-emblem{background:#111;color:var(--duv-cream);border-color:var(--duv-cream)}
.team .careers-card .directory-emblem{background:var(--duv-cream);color:var(--duv-ink);border-color:var(--duv-cream)}
@media(min-width:1450px) and (min-aspect-ratio:1/1){
 .team.is-board #team-board.has-duvy-nest .member-area{grid-column:8/-1;grid-row:1}
}
@media(max-width:1449px),(max-aspect-ratio:1/1){
 .team.is-board #team-board .header-accesses{grid-column:1/-1;grid-row:3}
}
@media(max-width:700px){
 .team.is-board #team-board .header-accesses{grid-template-columns:repeat(3,var(--access-width,minmax(0,1fr)));gap:var(--access-gap,5px)}
 .team.is-board #team-board .header-accesses :is(.directory-open,.partnership-open,.clients-pass-open,.careers-open){height:36px;white-space:normal;text-wrap:balance;font-size:9px;letter-spacing:.04em;padding-inline:6px}
}
.team.is-board #team-board .header-accesses .partnership-open:is(:hover,:active,[aria-expanded="true"]){border-color:var(--duv-ink);background:var(--duv-blue-active)}.team.is-board #team-board .header-accesses .careers-open{border-color:var(--duv-blue-action)}

/* Sound and sign-out use the same measured column as every access. */
.team.is-board #team-board .member-actions :is(#sound-toggle,#sign-out){box-sizing:border-box;width:var(--access-width)!important;min-width:0!important;height:30px!important;min-height:30px!important;padding:5px 8px!important;display:inline-flex;align-items:center;justify-content:center}
.team.is-board #team-board .member-actions{gap:8px}
@media(min-width:1450px) and (min-aspect-ratio:1/1){
 .team.is-board #team-board .board-heading{grid-column:1/3;grid-row:1}
 .team.is-board #team-board.has-duvy-nest .board-header>.header-build{grid-column:1/3;grid-row:2;padding-left:8px;flex-direction:row;gap:12px;justify-content:center}
 .team.is-board #team-board .header-accesses{grid-column:3/7;grid-row:1/3;align-self:center}
 .team.is-board #team-board.has-duvy-nest .member-area{grid-column:7/-1;grid-row:1/3;align-self:center;width:100%;grid-template-columns:minmax(0,1fr) auto;gap:8px}
}
@media(max-width:700px){
 .team.is-board #team-board.has-duvy-nest .member-area{grid-template-columns:minmax(0,1fr);width:100%}
 .team.is-board #team-board.has-duvy-nest .member-area .member-actions{grid-column:1;grid-row:2;justify-self:end}
 .team.is-board #team-board .member-actions :is(#sound-toggle,#sign-out){height:36px!important;white-space:normal;font-size:9px!important}
}

/* Sound + exit together occupy exactly one navigation column. */
.team.is-board #team-board.has-duvy-nest .member-area .member-actions{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;
 width:var(--access-width);min-width:0;
}
.team.is-board #team-board .member-actions :is(#sound-toggle,#sign-out){
 width:100%!important;min-width:0!important;height:30px!important;min-height:30px!important;
 padding:5px!important;gap:0!important;
}
.team.is-board #team-board .member-actions :is(#sound-toggle,#sign-out)>span{display:none!important}
.team.is-board #team-board .member-actions :is(#sound-toggle,#sign-out)>svg{
 display:block;width:16px!important;height:16px!important;flex-shrink:0;margin:0;
}

/* Avatar starts on Cultura; sound/exit share the Legales column. */
@media(min-width:1450px) and (min-aspect-ratio:1/1){
 .team.is-board #team-board.has-duvy-nest .member-area{
  grid-column:8/-1;grid-template-columns:var(--access-width) var(--access-width);
  column-gap:var(--access-gap,8px);justify-content:end;
 }
 .team.is-board #team-board.has-duvy-nest .member-area .member-badge{margin:0;padding-left:0;justify-self:start}
}

/* Five institutional entries; neutral utility controls share one finish. */
.team.is-board #team-board .header-accesses{grid-template-columns:repeat(5,var(--access-width,minmax(0,1fr)))}
.team.is-board #team-board .header-accesses .backend-open{display:inline-flex;align-items:center;justify-content:center;min-width:0;width:100%;height:30px;margin:0;padding:5px 8px;border:1px solid #d5d5d2;border-radius:7px;background:#e9e9e6;color:var(--duv-ink);font:600 9px/1.35 var(--duv-font-ui);letter-spacing:.08em;cursor:pointer}
.team.is-board #team-board .header-accesses .careers-open{background:#e7d8b9;border-color:#c6ad7b;color:var(--duv-ink)}
.team.is-board #team-board .member-actions :is(#sound-toggle,#sign-out){background:#e9e9e6!important;border-color:#d5d5d2!important;color:var(--duv-ink)!important}
.team.is-board #team-board .member-actions #sound-toggle[aria-pressed="true"] svg{color:var(--duv-blue-action)}
.team.is-board #team-board .header-accesses .backend-open:is(:hover,:active),.team.is-board #team-board .member-actions :is(#sound-toggle,#sign-out):hover{background:var(--duv-blue-action)!important;color:#fff!important;border-color:var(--duv-blue-action)!important}
.team.is-board #team-board .member-actions #sound-toggle:hover svg{color:#fff}
@media(min-width:1450px) and (min-aspect-ratio:1/1){.team.is-board #team-board .header-accesses{grid-column:3/8}}
@media(max-width:700px){.team.is-board #team-board .header-accesses{grid-template-columns:repeat(3,var(--access-width,minmax(0,1fr)))}.team.is-board #team-board .header-accesses .backend-open{height:36px}}

.team.is-login #login-sound #sound-toggle{
 width:var(--login-arrow-width,52px)!important;min-width:0!important;
 height:30px!important;min-height:30px!important;padding:5px!important;gap:0!important;
 background:#e9e9e6!important;border-color:#d5d5d2!important;color:var(--duv-ink)!important;
}
.team.is-login #login-sound #sound-toggle>span{display:none!important}
.team.is-login #login-sound #sound-toggle svg{width:16px!important;height:16px!important;margin:0}
.team.is-login #login-sound #sound-toggle[aria-pressed="true"] svg{color:var(--duv-blue-action)}
.team.is-login #login-sound #sound-toggle:hover{background:var(--duv-blue-action)!important;color:#fff!important;border-color:var(--duv-blue-action)!important}
.team.is-login #login-sound #sound-toggle:hover svg{color:#fff}

/* Login sound: outline and speaker only, including interaction states. */
.team.is-login #login-sound #sound-toggle,
.team.is-login #login-sound #sound-toggle:is(:hover,:active,:focus-visible){background:transparent!important;box-shadow:none!important;color:#d5d5d2!important}
.team.is-login #login-sound #sound-toggle:hover svg{color:var(--duv-blue-action)}

/* Build information always ends at the right edge of Exit, for every role. */
.team.is-board #team-board.has-duvy-nest .member-area{display:grid;grid-template-columns:minmax(0,1fr) var(--access-width);row-gap:5px;align-items:center}
.team.is-board #team-board.has-duvy-nest .member-area .member-badge{grid-column:1;grid-row:1}
.team.is-board #team-board.has-duvy-nest .member-area .member-actions{grid-column:2;grid-row:1;justify-self:end}
.team.is-board #team-board.has-duvy-nest .member-area>.header-build{grid-column:1/-1;grid-row:2;display:flex;flex-direction:column;align-items:flex-end;justify-self:stretch;gap:2px;position:static;width:auto;min-width:0;margin:0;padding:0;text-align:right;font:400 9px/1.35 var(--duv-font-ui)}
.team.is-board #team-board.has-duvy-nest .member-area>.header-build :is(.board-revision,.board-credit,span,strong,time){font:inherit;letter-spacing:0;text-align:right;white-space:normal;position:static;width:auto;margin:0;padding:0}
@media(max-width:700px){
 .team.is-board #team-board.has-duvy-nest .member-area{grid-template-columns:minmax(0,1fr)}
 .team.is-board #team-board.has-duvy-nest .member-area .member-actions{grid-column:1;grid-row:2}
 .team.is-board #team-board.has-duvy-nest .member-area>.header-build{grid-row:3}
}

/* Keep utility controls on the access baseline; metadata never shifts that row. */
@media(min-width:1450px) and (min-aspect-ratio:1/1){
 .team.is-board #team-board.has-duvy-nest .member-area{position:relative;grid-template-rows:auto;align-self:center;row-gap:0}
 .team.is-board #team-board.has-duvy-nest .member-area>.header-build{position:absolute;top:calc(100% + 4px);right:0;left:0;grid-area:auto;gap:1px}
 .team.is-board #team-board.has-duvy-nest .board-header{padding-bottom:14px}
}

/* Login assistant label matches the two outline utility controls. */
.team.is-login .duvy-name.duvy-launch{box-sizing:border-box;height:30px;min-height:30px;padding:5px 13px;border:1px solid #d5d5d2;border-radius:8px;background:transparent;backdrop-filter:none;color:#d5d5d2;font:600 10px/1.35 var(--duv-font-ui)!important;letter-spacing:.07em;text-shadow:none;display:flex;align-items:center;justify-content:center}
.team.is-login .duvy-name.duvy-launch:hover{background:transparent;border-color:var(--duv-blue-action);color:#fff}

/* One blue outline treatment for all three login utilities. */
.team.is-login #visitor-enter,
.team.is-login #login-sound #sound-toggle,
.team.is-login .duvy-name.duvy-launch,
.team.is-login #visitor-enter:is(:hover,:focus-visible,:active),
.team.is-login #login-sound #sound-toggle:is(:hover,:focus-visible,:active),
.team.is-login .duvy-name.duvy-launch:is(:hover,:focus-visible,:active){background:transparent!important;border:1px solid var(--duv-blue-action)!important;color:var(--duv-blue-action)!important;border-radius:8px;box-shadow:none!important}
.team.is-login #login-sound #sound-toggle svg,
.team.is-login #login-sound #sound-toggle:hover svg{color:var(--duv-blue-action)!important}
.team.is-login #visitor-enter:hover,
.team.is-login #login-sound #sound-toggle:hover,
.team.is-login .duvy-name.duvy-launch:hover{filter:brightness(1.25)}

/* Login utilities: white at rest, DUV blue on pointer/keyboard interaction. */
.team.is-login #visitor-enter,
.team.is-login #login-sound #sound-toggle,
.team.is-login .duvy-name.duvy-launch{color:#fff!important;border-color:#fff!important;background:transparent!important;filter:none!important;transition:color .15s,border-color .15s}
.team.is-login #login-sound #sound-toggle svg{color:inherit!important}
.team.is-login #visitor-enter:is(:hover,:focus-visible,:active),
.team.is-login #login-sound #sound-toggle:is(:hover,:focus-visible,:active),
.team.is-login .duvy-name.duvy-launch:is(:hover,:focus-visible,:active){color:var(--duv-blue-action)!important;border-color:var(--duv-blue-action)!important;background:transparent!important;filter:none!important}
.team.is-login #login-sound #sound-toggle:is(:hover,:focus-visible,:active) svg{color:inherit!important}
