/*
 * Vibes canonical logo service presentation.
 * Identity source: active-theme custom_logo, then the approved Login wordmark.
 * Surface styles may constrain dimensions but may not replace this anatomy.
 */
.vibes-canonical-logo{box-sizing:border-box;text-decoration:none;}
.vibes-canonical-logo--fallback{display:inline-flex;align-items:center;gap:12px;width:max-content;max-width:100%;color:#fff;line-height:1;}
.vibes-canonical-logo--fallback .vibes-canonical-logo__mark{position:relative;display:inline-block;flex:0 0 32px;width:32px;height:38px;border:0;border-radius:0;background:none;box-shadow:none;filter:drop-shadow(0 0 16px rgba(160,82,255,.46));}
.vibes-canonical-logo--fallback .vibes-canonical-logo__mark::before,
.vibes-canonical-logo--fallback .vibes-canonical-logo__mark::after{content:"";position:absolute;top:3px;width:8px;height:32px;border-radius:999px;transform-origin:center;}
.vibes-canonical-logo--fallback .vibes-canonical-logo__mark::before{left:7px;transform:rotate(-30deg);background:linear-gradient(180deg,#1ee4ff,#8b4dff 62%,#ff2bb6);}
.vibes-canonical-logo--fallback .vibes-canonical-logo__mark::after{right:7px;transform:rotate(30deg);background:linear-gradient(180deg,#ffb13b,#ff4574 42%,#8b4dff 100%);}
.vibes-canonical-logo--fallback .vibes-canonical-logo__word{display:inline;color:#fff;background:none;font-family:Arial,Inter,sans-serif;font-size:inherit;font-weight:900;letter-spacing:.01em;line-height:1;text-transform:uppercase;text-shadow:none;-webkit-background-clip:initial;background-clip:initial;}
.vibes-canonical-logo--custom{display:inline-flex;align-items:center;max-width:100%;overflow:hidden;}
.vibes-canonical-logo--custom .vibes-canonical-logo__image{display:block;width:auto;max-width:100%;height:auto;object-fit:contain;}
.vibes-canonical-logo[aria-hidden="true"] .vibes-canonical-logo__image{pointer-events:none;}

/* Pass056: Stream shell brand containment follows the Feed blueprint footprint
 * while continuing to render the singular WordPress custom-logo/site-name
 * authority. Long names stay one line and shrink inside the owned footprint. */
@media (min-width:1181px) {
  body.vibes-theme.shiftcontrol-view-stream .vibes-canonical-logo--shell-stream {
    width:clamp(138px,8.98438vw,172.5px);
    max-width:clamp(138px,8.98438vw,172.5px);
    height:clamp(46px,2.99479vw,57.5px);
    max-height:clamp(46px,2.99479vw,57.5px);
    gap:clamp(7px,.45573vw,8.75px);
    overflow:hidden;
    white-space:nowrap;
  }
  body.vibes-theme.shiftcontrol-view-stream .vibes-canonical-logo--shell-stream.vibes-canonical-logo--fallback .vibes-canonical-logo__mark {
    width:clamp(32px,2.08333vw,40px);
    height:clamp(38px,2.47396vw,47.5px);
    flex-basis:clamp(32px,2.08333vw,40px);
  }
  body.vibes-theme.shiftcontrol-view-stream .vibes-canonical-logo--shell-stream.vibes-canonical-logo--fallback .vibes-canonical-logo__word {
    display:block !important;
    min-width:0;
    max-width:100%;
    overflow:hidden;
    white-space:nowrap;
    font-size:clamp(16px,1.04167vw,20px);
    letter-spacing:-.015em;
    text-overflow:clip;
  }
  body.vibes-theme.shiftcontrol-view-stream .vibes-canonical-logo--shell-stream.vibes-canonical-logo--custom .vibes-canonical-logo__image {
    max-width:100%;
    max-height:100%;
  }
}
