/* DUV office palette: 2023-10-12 DIP.pdf, concept / page 6.
   One color system for access, portal and native viewer. Geometry is unchanged. */
.team {
  --duv-blue:#1b80b8;
  --duv-blue-action:#176c98;
  --duv-blue-active:#135779;
  --duv-blue-pale:#edf4f7;
  --duv-blue-line:#c5dbe7;
  --duv-ink:#173b4b;
  --duv-muted:#626e71;
  --duv-white:#fff;
  --duv-cream:#edeae0;
  --duv-cream-soft:#f8f6ef;
  --duv-green:#6d9464;
  --duv-green-deep:#4b6542;
  --duv-green-pale:#eef2e9;
  --duv-line:#deded6;
  --duv-night:#102938;
  --duv-light-ink:#e8ebe9;
  --duv-light-muted:#b4bfbe;
  --duv-error:#8f443d;
  --duv-attention:#e4b465;
  --duv-notification-green:var(--duv-green-deep);
}
.team.is-board {
  --portal-blue:var(--duv-blue-action);
  --portal-pale:var(--duv-blue-pale);
  --portal-ink:var(--duv-ink);
  --portal-muted:var(--duv-muted);
}
.team ::selection { background:var(--duv-blue-action); color:var(--duv-white); }
.team button:focus-visible, .team a:focus-visible {
  outline-color:var(--duv-blue);
}

/* Access: a quiet dark frame, architectural blue action, warm white detail. */
.team.is-login { color:var(--duv-light-ink); }
.team.is-login .member-form label { color:var(--duv-light-muted); }
.team.is-login .password-box {
  border-color:#416171;
  background:#102938b8;
  box-shadow:0 0 0 3px #1b80b80c;
}
.team.is-login .password-box:hover, .team.is-login .password-box:focus-within {
  border-color:var(--duv-blue);
  background:#173b4bcc;
  box-shadow:0 0 0 3px #1b80b824,0 0 22px #1b80b827,inset 0 0 14px #edeae009;
}
.team.is-login .password-box input { color:var(--duv-white); caret-color:var(--duv-cream); }
.team.is-login .password-box input::placeholder,
.team.is-login .lock, .team.is-login .password-box button { color:var(--duv-light-muted); }
.team.is-login .password-box button:hover { color:var(--duv-cream); }
.team.is-login .enter-button {
  border-color:var(--duv-blue);
  background:var(--duv-blue-action);
  color:var(--duv-white);
  box-shadow:0 5px 22px #1b80b82b;
}
.team.is-login .enter-button:hover, .team.is-login .enter-button:focus-visible {
  background:var(--duv-blue-active); border-color:var(--duv-cream); filter:none;
}
.team.is-login .enter-button:active { background:var(--duv-ink); }
.team.is-login .component-actions .quiet-button { color:var(--duv-light-muted); }
.team.is-login .component-actions .quiet-button:hover { color:var(--duv-cream); }
.team.is-login .phrase, .team.is-login .phrase-author { color:var(--duv-light-muted); }
.team.is-login .access-error { color:#e5bdb5; }
.team .duvy-name.duvy-launch {
  color:var(--duv-cream); border-color:#edeae03d; background:#102938b3;
}
.team .duvy-name.duvy-launch:hover {
  color:var(--duv-white); border-color:var(--duv-blue); background:var(--duv-blue-active);
}
.team .duv-ambient .ambient-trace {
  stroke:var(--duv-light-ink);
  filter:drop-shadow(0 0 4px #1b80b8) drop-shadow(0 0 9px #1b80b890);
}
.team .duv-ambient .ambient-node-halo { fill:var(--duv-blue); }
.team .duv-ambient .ambient-node-ring {
  stroke:var(--duv-blue-line); filter:drop-shadow(0 0 3px #1b80b8);
}
.team .duv-ambient .ambient-node-core {
  fill:var(--duv-white); filter:drop-shadow(0 0 5px #c5dbe7) drop-shadow(0 0 10px #1b80b8);
}

/* White remains the dominant surface; cream is reserved for secondary actions. */
.team.is-board #team-board {
  background:var(--duv-white); border-color:var(--duv-cream); color:var(--duv-ink);
}
.team.is-board .board-header .eyebrow,
.team.is-board .member-badge div > span { color:var(--duv-muted); }
.team.is-board .board-header h1, .team.is-board .member-badge strong { color:var(--duv-ink); }
.team.is-board .blue-dot { background:var(--duv-blue); }
.team.is-board .avatar { border-color:var(--duv-line); background:var(--duv-cream-soft); color:var(--duv-ink); }
.team.is-board .member-actions #sign-out,
.team.is-board .member-actions #sound-toggle,
.team.is-board .board-footer #policies-open,
.team.is-board .news-nav button {
  background:var(--duv-cream-soft); border-color:var(--duv-line); color:var(--duv-ink);
}
.team.is-board .member-actions #sign-out:hover,
.team.is-board .member-actions #sound-toggle:hover,
.team.is-board .member-actions #sign-out:focus-visible,
.team.is-board .member-actions #sound-toggle:focus-visible,
.team.is-board .board-footer #policies-open:hover,
.team.is-board .board-footer #policies-open:focus-visible,
.team.is-board .news-nav button:hover:not(:disabled),
.team.is-board .news-nav button:focus-visible {
  background:var(--duv-blue-action); border-color:var(--duv-blue-action); color:var(--duv-white);
}
.team.is-board .member-actions button:active,
.team.is-board .board-footer #policies-open:active,
.team.is-board .news-nav button:active:not(:disabled) {
  background:var(--duv-blue-active); border-color:var(--duv-blue-active); color:var(--duv-white);
}
.team.is-board .area-tab {
  background:var(--duv-blue-pale); border-color:var(--duv-blue-line); color:var(--duv-ink);
  box-shadow:0 1px 0 #fff9 inset;
}
.team.is-board .area-tab:hover, .team.is-board .area-tab:focus-visible {
  background:var(--duv-blue-action); border-color:var(--duv-blue-action); color:var(--duv-white); box-shadow:none;
}
.team.is-board .area-tab[aria-selected="true"], .team.is-board .area-tab:active {
  background:var(--duv-blue-active); border-color:var(--duv-blue-active); color:var(--duv-white);
  box-shadow:inset 0 -2px var(--duv-cream);
}
.team.is-board .portal-body { scrollbar-color:var(--duv-blue-line) transparent; }
.team.is-board .board-footer { border-color:var(--duv-line); }
.team.is-board .board-build, .team.is-board .board-revision, .team.is-board .board-credit,
.team.is-board .board-message .phrase, .team.is-board .board-message .phrase-author,
.team.is-board .news-nav #news-position, .team.is-board .board-footer-info #indicators-note {
  color:var(--duv-muted);
}
.team.is-board .board-duvy > span { color:var(--duv-blue-action); }
.team.is-board .footer-slash { color:var(--duv-line); }

/* The two greens are the office swatch and its accessible small-type variant. */
.team.is-board .directory-open {
  background:var(--duv-green-deep); border-color:var(--duv-cream); color:var(--duv-white);
  box-shadow:0 1px 3px #4b654218;
}
.team.is-board .directory-open:hover, .team.is-board .directory-open[aria-expanded="true"] {
  background:#3b5034; border-color:var(--duv-green); color:var(--duv-cream);
}
.team.is-board .directory-open:focus-visible { outline-color:var(--duv-green-deep); }
.team .duvy-nest .duvy-news-count {
  background:var(--duv-notification-green); color:var(--duv-white); border-color:var(--duv-white);
  box-shadow:0 2px 5px #4b654224;
}
.team .duvy-nest .duvy-news-count.is-clear {
  background:var(--duv-cream); color:var(--duv-green-deep); border-color:var(--duv-white); box-shadow:none;
}
.team .duvy-nest.is-active .duvy-nest-art > img { filter:drop-shadow(0 0 8px #1b80b840); }
.team .duvy-nest-eye { background:var(--duv-cream); box-shadow:inset 0 -1px 1px #79757255; }
.team .duvy-nest-eye::before { background:var(--duv-blue-action); }
.team .duvy-nest-eye::after { background:var(--duv-white); }

/* Editorial welcome: warm whites on deep blue, no mint accents. */
.team.is-board .welcome-news { background:var(--duv-night); }
.team.is-board .welcome-shade {
  background:linear-gradient(90deg,#102938 0%,#123b50 43%,#123b50a8 61%,#123b5010 80%);
}
.team.is-board .welcome-copy, .team.is-board .welcome-copy h2 { color:var(--duv-white); }
.team.is-board .welcome-kicker, .team.is-board .welcome-signature { color:var(--duv-cream); }
.team.is-board .welcome-kicker time { color:var(--duv-light-muted); }
.team.is-board #welcome-message { color:var(--duv-light-ink); }
.team.is-board .welcome-signature span { background:var(--duv-green); }
.team.is-board .welcome-project {
  color:var(--duv-notification-green); background:var(--duv-cream);
  border-radius:3px; box-shadow:1px 0 var(--duv-cream),-1px 0 var(--duv-cream);
  box-decoration-break:clone; -webkit-box-decoration-break:clone;
}
@media(max-width:850px) {
  .team.is-board #team-board.has-duvy-nest .welcome-shade {
    background:linear-gradient(0deg,#102938 0%,#123b50d9 43%,transparent 100%),linear-gradient(90deg,#102938 0%,#123b5080 50%,transparent 100%);
  }
}
@media(min-width:851px) and (max-aspect-ratio:4/5) {
  .team.is-board #team-board.has-duvy-nest .welcome-shade {
    background:linear-gradient(0deg,#102938 0%,#123b50 23%,#123b5000 55%);
  }
}

/* Area resources retain the same spacing and hierarchy as the news board. */
.team.is-board .area-detail {
  border-color:var(--duv-line); background:linear-gradient(135deg,var(--duv-cream-soft),var(--duv-white) 65%);
}
.team.is-board .area-heading h2, .team.is-board .area-resource-view h2,
.team.is-board .area-resource-view h3, .team.is-board .resource-card { color:var(--duv-ink); }
.team.is-board .area-heading .eyebrow, .team.is-board .area-card-action,
.team.is-board .area-resource-view > .eyebrow, .team.is-board .area-link { color:var(--duv-blue-action); }
.team.is-board .area-heading > p:not(.eyebrow), .team.is-board .resource-card p,
.team.is-board .resource-card small, .team.is-board .area-document,
.team.is-board .area-resource-view, .team.is-board .area-empty,
.team.is-board .area-resource-view > .area-source { color:var(--duv-muted); }
.team.is-board .area-card-number { color:var(--duv-blue-action); }
.team.is-board .area-status {
  background:var(--duv-cream); border-color:var(--duv-line); color:var(--duv-muted);
}
.team.is-board .area-project,
.team.is-board .area-home > .conditions {
  background:linear-gradient(110deg,var(--duv-blue-pale),#edf4f7b3); border-color:var(--duv-blue-line);
}
.team.is-board .area-project > strong, .team.is-board .condition strong { color:var(--duv-ink); }
.team.is-board .area-project > span, .team.is-board .area-project > p,
.team.is-board .condition-label, .team.is-board .condition small { color:var(--duv-muted); }
.team.is-board .condition > svg { stroke:var(--duv-blue-action); }
.team.is-board .condition + .condition { border-color:var(--duv-blue-line); }
.team.is-board .resource-card, .team.is-board .area-resource-view {
  border-color:var(--duv-line); background:var(--duv-white); box-shadow:0 3px 12px #173b4b04;
}
.team.is-board a.resource-card:hover { border-color:var(--duv-blue); background:var(--duv-blue-pale); }
.team.is-board .area-resource-view > .area-source, .team.is-board .area-empty { border-color:var(--duv-line); }
.team.is-board .area-back {
  border-color:var(--duv-line); background:var(--duv-cream-soft); color:var(--duv-ink);
}
.team.is-board .area-back:hover, .team.is-board .area-back:focus-visible {
  border-color:var(--duv-blue-action); background:var(--duv-blue-action); color:var(--duv-white);
}
.team.is-board .news-kicker > span, .team.is-board .birthday h2 span { color:var(--duv-blue-action); }
.team.is-board .birthday h2, .team.is-board .office-copy h2 { color:var(--duv-ink); }
.team.is-board .birthday-copy > p, .team.is-board .office-copy > p, .team.is-board .signoff { color:var(--duv-muted); }
.team.is-board .signoff span { background:var(--duv-blue-line); }
.team.is-board .celebrate {
  background:var(--duv-cream-soft); border-color:var(--duv-line); color:var(--duv-blue-action);
}
.team.is-board .celebrate:hover { background:var(--duv-blue-action); border-color:var(--duv-blue-action); color:var(--duv-white); }
.team.is-board .meeting-art { background:linear-gradient(145deg,var(--duv-night),var(--duv-blue-active)); color:var(--duv-cream); }
.team.is-board .meeting-meta { color:var(--duv-blue-action); }
.team.is-board .meeting-response { color:var(--duv-green-deep); }
.team.is-board .session-error { color:var(--duv-error); background:var(--duv-cream-soft); }

/* Secondary surfaces: palette only. Geometry stays in the component sheets. */
.team .lunch-news .lunch-intro {
  background: var(--duv-cream-soft);
  color: var(--duv-ink);
}
.team .lunch-intro::before {
  border-color: var(--duv-line);
  box-shadow: 0 0 0 14px color-mix(in srgb, var(--duv-cream) 35%, transparent), 0 0 0 28px color-mix(in srgb, var(--duv-cream) 18%, transparent);
}
.team .lunch-intro h2,
.team .lunch-form legend,
.team .option-copy strong { color: var(--duv-ink); }
.team .lunch-intro .news-kicker,
.team .lunch-date,
.team .lunch-countdown strong { color: var(--duv-blue-action); }
.team .lunch-intro .news-kicker > span { color: inherit; }
.team .lunch-description,
.team .lunch-hint,
.team .lunch-schedule,
.team .lunch-countdown small,
.team .option-copy small,
.team #lunch-status,
.team .lunch-local-note { color: var(--duv-muted); }
.team .lunch-schedule,
.team .lunch-countdown { border-color: var(--duv-line); }
.team .lunch-option { background: var(--duv-cream-soft); border-color: var(--duv-line); }
.team .lunch-option::before { background: var(--duv-green); }
.team .option-photo { background: var(--duv-cream); border-color: var(--duv-line); }
.team .option-check { color: var(--duv-green-deep); }
.team .lunch-option:has(input:checked) { background: var(--duv-green-pale); border-color: var(--duv-green); }
.team .lunch-option:has(input:checked) .option-copy strong,
.team .lunch-form.has-vote #lunch-status { color: var(--duv-green-deep); }
.team .lunch-option input:checked + .option-photo { border-color: var(--duv-green); }
.team .lunch-option:has(input:not(:disabled)):hover { background: var(--duv-blue-action); border-color: var(--duv-blue-action); }
.team .lunch-option:has(input:not(:disabled)):active { background: var(--duv-blue-active); border-color: var(--duv-blue-active); }
.team .lunch-option:has(input:not(:disabled)):is(:hover,:active) .option-copy strong,
.team .lunch-option:has(input:not(:disabled)):is(:hover,:active) .option-copy small,
.team .lunch-option:has(input:not(:disabled)):is(:hover,:active) .option-check { color: var(--duv-white); }
.team .lunch-option:has(input:focus-visible) { outline-color: var(--duv-blue); }
.team #lunch-submit { background: var(--duv-cream); border-color: var(--duv-line); color: var(--duv-ink); }
.team #lunch-submit:hover:not(:disabled) { background: var(--duv-blue-action); border-color: var(--duv-blue-action); color: var(--duv-white); }
.team #lunch-submit:active:not(:disabled) { background: var(--duv-blue-active); border-color: var(--duv-blue-active); color: var(--duv-white); }

/* Policies and wishes share the same quiet paper treatment. */
.team .policies-layer,
.team .wish-layer { background: color-mix(in srgb, var(--duv-night) 85%, transparent); }
.team .policies-card,
.team .wish-card { background: var(--duv-cream-soft); border-color: var(--duv-line); color: var(--duv-ink); }
.team .policies-heading,
.team .policies-footer,
.team .policy-document[open] summary { border-color: var(--duv-line); }
.team .policies-heading .eyebrow,
.team .wish-heading .eyebrow { color: var(--duv-blue-action); }
.team .policies-heading h2,
.team .policies-empty h3,
.team .wish-heading h2,
.team .wish-card label { color: var(--duv-ink); }
.team #policies-close,
.team .wish-close,
.team .wish-cancel,
.team .wish-save { background: var(--duv-cream); border-color: var(--duv-line); color: var(--duv-ink); }
.team #policies-close:hover,
.team .wish-close:hover,
.team .wish-cancel:hover,
.team .wish-save:hover { background: var(--duv-blue-action); border-color: var(--duv-blue-action); color: var(--duv-white); }
.team #policies-close:active,
.team .wish-close:active,
.team .wish-cancel:active,
.team .wish-save:active { background: var(--duv-blue-active); border-color: var(--duv-blue-active); color: var(--duv-white); }
.team .policies-mark { background: var(--duv-cream); border-color: var(--duv-line); color: var(--duv-blue-action); }
.team .policies-empty p,
.team .policies-footer,
.team .wish-help { color: var(--duv-muted); }
.team .policy-document { background: var(--duv-cream); border-color: var(--duv-line); }
.team .policy-document summary { color: var(--duv-ink); }
.team .policy-document summary:hover { background: var(--duv-blue-action); color: var(--duv-white); }
.team .policy-document summary:active { background: var(--duv-blue-active); color: var(--duv-white); }
.team .policy-body { color: var(--duv-ink); }
.team .policies-content { scrollbar-color: var(--duv-blue-line) transparent; }
.team .policies-layer :focus-visible { outline-color: var(--duv-blue); }
.team .wish-card textarea { background: var(--duv-white); border-color: var(--duv-line); color: var(--duv-ink); }
.team .wish-card textarea:focus { border-color: var(--duv-blue); box-shadow: 0 0 0 3px color-mix(in srgb, var(--duv-blue) 12%, transparent); }
.team .wish-card textarea::placeholder { color: var(--duv-muted); }
.team .wish-error { color: var(--duv-error); }

/* The executive modal keeps its independent content and existing structure. */
.team .directory-overlay.component-actions { background: color-mix(in srgb, var(--duv-night) 58%, transparent); }
.team .directory-card { background: var(--duv-cream-soft); border-color: var(--duv-line); color: var(--duv-ink); }
.team .directory-close { background: var(--duv-cream); border-color: var(--duv-line); color: var(--duv-ink); }
.team .directory-close:hover { background: var(--duv-blue-action); border-color: var(--duv-blue-action); color: var(--duv-white); }
.team .directory-close:active { background: var(--duv-blue-active); border-color: var(--duv-blue-active); color: var(--duv-white); }
.team .directory-close:focus-visible { outline-color: var(--duv-blue); }
.team .directory-emblem { background: var(--duv-blue-action); border-color: var(--duv-blue-line); color: var(--duv-white); }
.team .directory-card h2,
.team .directory-description { color: var(--duv-ink); }
.team .directory-kicker,
.team .directory-members,
.team .directory-pending { color: var(--duv-muted); }
.team .directory-divider { background: var(--duv-line); }
.team .directory-status { background: var(--duv-cream); border-color: var(--duv-line); color: var(--duv-muted); }

/* DUVY uses the same office hues in a dark translucent surface. */
.team .duvy-overlay.component-actions { background: color-mix(in srgb, var(--duv-night) 44%, transparent); }
.team .duvy-dialog {
  color: var(--duv-light-ink);
  border-color: color-mix(in srgb, var(--duv-blue-line) 32%, transparent);
  background: linear-gradient(145deg, color-mix(in srgb, var(--duv-ink) 91%, transparent), color-mix(in srgb, var(--duv-night) 93%, transparent) 65%, color-mix(in srgb, var(--duv-ink) 93%, transparent));
  box-shadow: 0 30px 100px color-mix(in srgb, var(--duv-night) 53%, transparent), 0 1px 0 color-mix(in srgb, var(--duv-white) 13%, transparent) inset;
}
.team .duvy-dialog::before { background: color-mix(in srgb, var(--duv-blue) 12%, transparent); }
.team .duvy-dialog[data-speaking=true] .duvy-portrait { filter: drop-shadow(0 0 16px color-mix(in srgb, var(--duv-blue) 30%, transparent)); }
.team .duvy-dialog button:focus-visible,
.team .duvy-dialog textarea:focus-visible,
.team .duvy-dialog select:focus-visible { outline-color: var(--duv-blue-line); }
.team .duvy-dialog h2,
.team .duvy-eyebrow,
.team .duvy-settings label,
.team .duvy-message { color: var(--duv-light-ink); }
.team .duvy-message-user { color: var(--duv-white); }
.team .duvy-subtitle,
.team .duvy-mode,
.team .duvy-voice-hint,
.team .duvy-load p,
.team .duvy-chat-loading,
.team .duvy-bottom,
.team .duvy-status { color: var(--duv-light-muted); }
.team .duvy-toolbar { border-color: color-mix(in srgb, var(--duv-light-muted) 11%, transparent); }
.team .duvy-mode::before { background: var(--duv-light-muted); }
.team .duvy-dialog[data-ai=ready] .duvy-mode::before { background: var(--duv-green); box-shadow: 0 0 10px color-mix(in srgb, var(--duv-green) 27%, transparent); }
.team .duvy-close,
.team .duvy-tool,
.team .duvy-suggestions button,
.team .duvy-send { background: var(--duv-cream); border-color: var(--duv-line); color: var(--duv-ink); }
.team .duvy-close:hover:not(:disabled),
.team .duvy-tool:hover:not(:disabled),
.team .duvy-suggestions button:hover:not(:disabled),
.team .duvy-send:hover:not(:disabled),
.team .duvy-microphone:hover:not(:disabled) { background: var(--duv-blue-action); border-color: var(--duv-blue-action); color: var(--duv-white); }
.team .duvy-close:active:not(:disabled),
.team .duvy-tool:active:not(:disabled),
.team .duvy-suggestions button:active:not(:disabled),
.team .duvy-send:active:not(:disabled),
.team .duvy-microphone:active:not(:disabled),
.team .duvy-tool[aria-pressed=true],
.team .duvy-microphone[aria-pressed=true] { background: var(--duv-blue-active); border-color: var(--duv-blue-active); color: var(--duv-white); }
.team .duvy-settings,
.team .duvy-load,
.team .duvy-mic-notice { background: color-mix(in srgb, var(--duv-ink) 75%, transparent); border-color: color-mix(in srgb, var(--duv-blue-line) 20%, transparent); color: var(--duv-light-ink); }
.team .duvy-settings select { background: var(--duv-cream-soft); border-color: var(--duv-line); color: var(--duv-ink); }
.team .duvy-load progress { accent-color: var(--duv-green); }
.team .duvy-composer { background: color-mix(in srgb, var(--duv-night) 80%, transparent); border-color: color-mix(in srgb, var(--duv-blue-line) 32%, transparent); }
.team .duvy-composer:focus-within { border-color: var(--duv-blue); box-shadow: 0 0 0 3px color-mix(in srgb, var(--duv-blue) 5%, transparent); }
.team .duvy-composer textarea { color: var(--duv-light-ink); scrollbar-color: var(--duv-blue-line) transparent; }
.team .duvy-composer textarea::placeholder { color: var(--duv-light-muted); }
.team .duvy-microphone { background: transparent; color: var(--duv-light-ink); }
.team .duvy-conversation[data-fallback=true] { scrollbar-color: var(--duv-blue-line) transparent; }
@keyframes duvy-listen { 50% { box-shadow: 0 0 0 4px color-mix(in srgb, var(--duv-blue) 13%, transparent); } }

/* Web-only preliminary office mascot, 2026-10-29. */
.team .duvy-companion{aspect-ratio:3/4}
.team .duvy-nest-eyes{left:29.5%;top:56%;width:12%;height:7.6%}


/* Readable daily quote, centered in the free column between Live DUV and Home. */
.team.is-board #team-board.has-duvy-nest .board-message .phrase {
  left:calc(50% + 100px);
  right:calc(var(--nest-nav-width,124px) + 18px);
  height:auto; min-height:0; max-height:none;
  font-size:clamp(13px,.9vw,17px);
  line-height:1.35;
  text-align:center; text-wrap:balance;
}
.team.is-board #team-board.has-duvy-nest .board-message .phrase-author {
  display:block; width:100%; margin:5px 0 0;
  font-size:.76em; line-height:1.2; text-align:center;
  white-space:normal;
}
@media(max-width:1000px) {
  .team.is-board #team-board.has-duvy-nest .board-message .phrase {
    left:230px; right:120px; font-size:12px; line-height:1.3;
    bottom:0;
  }
  .team.is-board #team-board.has-duvy-nest .board-message .phrase-author { margin-top:3px; }
}
@media(max-width:550px) {
  .team.is-board #team-board.has-duvy-nest .board-message .phrase {
    left:96px; right:0; font-size:10px; line-height:1.25;
    bottom:0;
  }
}

/* Center the complete quote/author block in the visible white band, including
   the board's bottom inset. A compact screen gives it a separate balanced row. */
.team.is-board #team-board.has-duvy-nest .board-message .phrase {
  bottom:auto; transform:translateY(-50%); margin:0;
}
.team.is-board #team-board.has-duvy-nest .board-message .phrase-author {
  margin:6px 0 0; padding:0;
}

/* Document library and quiet header metadata. */
.team.is-board #team-board.has-duvy-nest .board-footer #policies-open {top:50%;transform:translateY(-50%);width:210px;max-width:calc(50% - var(--nest-footer-left) - 95px);white-space:normal;justify-content:center;text-align:center;line-height:1.35;padding:9px 12px;}
.team.is-board #team-board.has-duvy-nest .header-build {display:flex;flex-direction:column;align-items:flex-start;gap:3px;flex-shrink:0;}
.team.is-board #team-board.has-duvy-nest .header-build .board-revision,
.team.is-board #team-board.has-duvy-nest .header-build .board-credit {position:static;width:auto;inset:auto;font-family:inherit;font-size:9px;line-height:1.3;font-weight:400;white-space:nowrap;color:var(--duv-muted);}
.team.is-board #team-board .header-build strong {font:inherit;letter-spacing:0;}
.team.is-board #team-board .member-area {gap:12px;flex-wrap:wrap;}
.team.is-board #team-board .welcome-project {background:transparent;border:0;box-shadow:none;padding:0;color:#93b67e;font-weight:650;}
@media(min-width:1201px) and (min-aspect-ratio:1/1){.team.is-board #team-board .directory-open{grid-column:4/7}.team.is-board #team-board .board-heading{grid-column:1/4}.team.is-board #team-board .header-build{order:3;flex-basis:100%;align-items:flex-end;flex-direction:row;justify-content:flex-end;gap:10px;}}
.team #policies-dialog {position:fixed;inset:0;z-index:40;border-radius:0;padding:24px;background:color-mix(in srgb,var(--duv-night) 44%,transparent);backdrop-filter:blur(6px);}
.team #policies-dialog .policies-card {width:min(1200px,100%);height:calc(100dvh - 48px);max-height:900px;border-radius:26px;color:var(--duv-light-ink);border:1px solid #91b5c652;background:linear-gradient(145deg,color-mix(in srgb,var(--duv-ink) 91%,transparent),color-mix(in srgb,var(--duv-night) 93%,transparent));box-shadow:0 30px 100px #0008;}
.team #policies-dialog .policies-heading {padding:20px 24px;border-color:#ffffff20;}
.team #policies-dialog .policies-heading h2 {color:var(--duv-cream);font-size:24px;}
.team #policies-dialog .eyebrow {color:#afc8d4;}
.team #policies-dialog .policies-content {display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;flex:1;padding:18px;overflow:hidden;}
.documents-list {display:flex;flex-direction:column;gap:8px;overflow:auto;min-height:0;}
.documents-list button {font:inherit;font-size:13px;line-height:1.45;text-align:left;padding:14px;border:1px solid #ffffff25;border-radius:12px;background:#ffffff08;color:#e9edf0;cursor:pointer;}
.documents-list button:hover,.documents-list button[aria-pressed=true] {background:var(--duv-blue-action);border-color:#91b5c6;color:#fff;}
.documents-reader {min-width:0;min-height:0;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain;padding:0 8px 0 0;}
.documents-reader h3 {margin:0 0 14px;font:inherit;font-size:15px;color:var(--duv-cream);}
.documents-reader figure {margin:0 0 18px;text-align:center;}
.documents-reader img {display:block;width:100%;height:auto;min-height:120px;background:white;border-radius:4px;}
.documents-reader figcaption {font-size:11px;padding:9px;color:#bbcbd3;}
.team #policies-dialog .policies-footer {padding:10px 24px;border-color:#ffffff20;color:#afc8d4;}
@media(max-width:1000px){.team.is-board #team-board.has-duvy-nest .board-footer #policies-open{top:0;transform:none;max-width:130px;width:130px;font-size:10px;padding:8px}.team.is-board #team-board .header-build{flex-basis:100%;flex-direction:row;justify-content:flex-end;gap:9px;}}
@media(max-width:650px){.team #policies-dialog{padding:10px}.team #policies-dialog .policies-card{height:calc(100dvh - 20px);border-radius:18px}.team #policies-dialog .policies-heading{padding:15px}.team #policies-dialog .policies-heading h2{font-size:20px}.team #policies-dialog .policies-content{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);padding:12px;gap:12px}.documents-list{flex-direction:row;max-height:110px}.documents-list button{min-width:155px;font-size:12px;padding:10px}.documents-reader{padding:0}}
@media(max-width:550px){.team.is-board #team-board.has-duvy-nest .board-footer #policies-open{left:96px;top:33px;max-width:calc(100% - 190px);width:130px;font-size:9px;padding:5px}.team.is-board #team-board.has-duvy-nest .header-build .board-revision,.team.is-board #team-board.has-duvy-nest .header-build .board-credit{font-size:8px}.team.is-board #team-board .header-build{justify-content:center}}

.documents-zoom{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-bottom:12px;font-size:12px;color:var(--duv-cream)}.documents-zoom button{width:32px;height:30px;border:1px solid #ffffff30;border-radius:8px;background:#ffffff12;color:inherit;font-size:20px;cursor:pointer}.documents-zoom button:disabled{opacity:.4;cursor:default}.documents-zoom button:hover:not(:disabled){background:var(--duv-blue-action)}
@media(max-width:850px){
.team.is-board #team-board.has-duvy-nest .member-area{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 10px;width:100%;}
.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 .header-build{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:3px;}
.team.is-board #team-board.has-duvy-nest .member-area .member-actions{grid-column:1/-1;grid-row:2;justify-self:end;}
}
@media(min-width:1201px) and (min-aspect-ratio:1/1){.team.is-board #team-board .board-header{column-gap:6px;}}

/* Profile metadata shares the avatar axis; heading keeps its original columns. */
.team.is-board #team-board.has-duvy-nest .member-area {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;width:max-content;max-width:100%;align-items:center;}
.team.is-board #team-board.has-duvy-nest .member-area .member-badge {grid-column:1;grid-row:1;justify-self:start;}
.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-start;justify-content:flex-start;gap:3px;padding-left:var(--profile-axis,18.5px);margin:0;order:0;}
.team.is-board #team-board.has-duvy-nest .header-build .board-revision,
.team.is-board #team-board.has-duvy-nest .header-build .board-credit {text-align:left;}
@media(min-width:1201px) and (min-aspect-ratio:1/1){.team.is-board #team-board .board-heading{grid-column:1/3;}}
@media(max-width:550px){.team.is-board #team-board.has-duvy-nest .member-area{width:100%;gap:5px 8px;}}

/* Release information beside Team Board, independent of the profile and title. */
.team.is-board #team-board.has-duvy-nest .board-header > .header-build {display:flex;flex-direction:column;align-items:flex-start;justify-content:center;align-self:center;gap:5px;padding:0 0 0 12px;margin:0;order:0;min-width:0;}
.team.is-board #team-board.has-duvy-nest .board-header > .header-build span {white-space:normal;font-size:9px;line-height:1.35;}
@media(min-width:1201px) and (min-aspect-ratio:1/1){.team.is-board #team-board.has-duvy-nest .board-header > .header-build{grid-column:3;grid-row:1;}}
@media(max-width:1200px),(max-aspect-ratio:1/1){.team.is-board #team-board.has-duvy-nest .board-header > .header-build{grid-column:1/-1;grid-row:2;padding:0;}.team.is-board #team-board .directory-open{grid-row:3;}}
@media(max-width:550px){.team.is-board #team-board .member-area{grid-row:4;}}

/* Flat controls across login, board and dialogs: color-only press feedback. */
.team button,.team [role="button"],.team input[type="button"],.team input[type="submit"],.team .resource-card,.team .policy-document summary {
  box-shadow:none !important;
  text-shadow:none !important;
}
.team button:not(.duvy-launch):not(.duvy-nest):not(:disabled):is(:active,[aria-selected="true"],[aria-pressed="true"]),
.team [role="button"]:not(.duvy-launch):not(.duvy-nest):not([aria-disabled="true"]):active,
.team input:is([type="button"],[type="submit"]):not(:disabled):active,
.team .resource-card:active,.team .policy-document summary:active {
  background:var(--duv-blue-action) !important;
  border-color:var(--duv-blue-action) !important;
  color:var(--duv-white) !important;
}
.team .enter-button,.team .enter-button:hover,.team .enter-button:active {
  transform:none;filter:none;transition:background-color .15s,border-color .15s,color .15s;
}


/* Birthday photo caption stays opposite DUVY. */
.team.is-board #team-board .portrait figcaption{left:auto;right:18px;bottom:20px;max-width:calc(100% - 110px);text-align:right;}

/* Birthday portraits fill their frame independently of the source aspect ratio. */
.team.is-board #team-board .portrait {padding:0;overflow:hidden;}
.team.is-board #team-board .portrait > img {position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;margin:0;padding:0;object-fit:cover;object-position:50% 16%;}
@supports(object-view-box:inset(1px)) {
}

/* Shared sound state: stable geometry and explicit status on both screens. */
.team #sound-toggle {
  display:inline-flex!important;align-items:center;justify-content:center;gap:6px!important;
  box-sizing:border-box;width:116px!important;min-width:116px;flex-shrink:0;
  min-height:32px;padding:7px 9px!important;border:1px solid var(--duv-line);
  border-radius:8px!important;font-size:10px!important;line-height:16px;white-space:nowrap;
  opacity:1!important;transform:none!important;scale:1!important;filter:none!important;
  transition:background-color .15s,border-color .15s,color .15s;
}
.team #sound-toggle[aria-pressed="true"] {
  background:var(--duv-blue-action)!important;border-color:var(--duv-blue-action)!important;color:var(--duv-white)!important;
}
.team #sound-toggle[aria-pressed="false"] {
  background:var(--duv-cream)!important;border-color:var(--duv-line)!important;color:var(--duv-muted)!important;
}
.team #sound-toggle svg {width:14px!important;height:14px!important;flex-shrink:0;opacity:1!important;}
.team #sound-toggle:hover {border-color:var(--duv-blue)!important;}
.team #sound-toggle:focus-visible {outline:2px solid var(--duv-blue);outline-offset:3px;}

/* Keep the birthday frame stationary as its photo is revealed. */
.team.is-board #birthday {animation:none!important;transform:none;}

/* One visual response for both DUVY launchers and the nest; labels stay still. */
.team {
  --companion-hover-scale:1.10;
  --companion-hover-glow:brightness(1.08) drop-shadow(0 0 4px #edeae0e6) drop-shadow(0 0 13px #1b80b8bd) drop-shadow(0 0 25px #1b80b873);
}
.team #duvy-companion.duvy-launch {overflow:visible;contain:layout;}
.team .board-duvy.duvy-launch > img,
.team #duvy-companion.duvy-launch > .duvy-art,
.team #duvy-nest .duvy-nest-art {
  scale:1;
  transform-origin:50% 90%;
  filter:drop-shadow(0 2px 4px #10293818);
  transition:scale 240ms cubic-bezier(.2,.7,.2,1),filter 240ms ease;
}
.team #duvy-nest .duvy-nest-art {transform:translateY(-7px);}
.team #duvy-nest .duvy-nest-art > img {filter:none;}
.team .board-duvy.duvy-launch:is(:hover,:focus-visible,:active,[aria-expanded="true"]) > img,
.team #duvy-companion.duvy-launch:is(:hover,:focus-visible,:active,[aria-expanded="true"]) > .duvy-art,
.team .stage:has(> .duvy-name:is(:hover,:focus-visible,[aria-expanded="true"])) #duvy-companion > .duvy-art,
.team #duvy-nest:is(:hover,:focus-visible,:active,.is-chirping) .duvy-nest-art {
  scale:var(--companion-hover-scale);
  filter:var(--companion-hover-glow);
}
@media(prefers-reduced-motion:reduce){
  .team {--companion-hover-scale:1;}
  .team .board-duvy.duvy-launch > img,
  .team #duvy-companion.duvy-launch > .duvy-art,
  .team #duvy-nest .duvy-nest-art {transition:none;}
}
