/* Component-scoped: the existing navigation and page breakpoints stay intact. */
.yc-banner[hidden] { display: none !important; }
.yc-banner { --ycb-bg:#f1edff; --ycb-ink:#39276b; --ycb-muted:#69559b; --ycb-border:#e3daf9; background:var(--ycb-bg); color:var(--ycb-ink); border-bottom:1px solid var(--ycb-border); font:500 14px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif; box-sizing:border-box; width:100%; }
.theme-dark .yc-banner { --ycb-bg:#211b35; --ycb-ink:#f0eaff; --ycb-muted:#c4b5e6; --ycb-border:#3a2d57; }
.yc-banner *, .yc-banner *::before, .yc-banner *::after { box-sizing:border-box; }
.yc-banner__inner { display:flex; align-items:center; justify-content:center; gap:14px; max-width:1200px; min-height:47px; padding:0 18px; margin:0 auto; }
.yc-banner__label { font-size:11px; letter-spacing:.04em; color:var(--ycb-muted); border:1px solid var(--ycb-border); border-radius:5px; padding:3px 7px; white-space:nowrap; }
.yc-banner__text { margin:0; min-width:0; overflow-wrap:anywhere; }
.yc-banner a.yc-banner__cta { display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:6px 13px; border-radius:7px; background:#6941c6; color:#fff; text-decoration:none; font-size:12px; font-weight:650; white-space:nowrap; flex-shrink:0; }
.yc-banner a.yc-banner__cta:hover { background:#5732af; color:#fff; text-decoration:none; }
.yc-banner__close { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:44px; height:44px; padding:0; margin:0 -10px 0 0; border:0; border-radius:6px; background:transparent; color:var(--ycb-muted); cursor:pointer; }
.yc-banner__close:hover { background:var(--ycb-border); }
.yc-banner__close svg { width:16px; height:16px; }
.yc-banner a:focus-visible, .yc-banner button:focus-visible { outline:2px solid #7c3aed; outline-offset:2px; }
/* Keep public announcements under the fixed navigation; reserve only their own height. */
#yc-global-banner { position:fixed; top:var(--yc-banner-top,var(--topbar-offset,0px)); left:0; right:0; z-index:990; }
.yc-banner-spacer { height:var(--yc-banner-height,0px); }
.yc-banner-spacer[hidden] { display:none !important; }
@media(min-width:981px) {
    body.yc-banner-visible:not(.yx-workspace) .purchase-card-wrapper { top:calc(var(--yc-banner-bottom) + 18px); }
}
body.yc-banner-visible:not(.yx-workspace) .yx-history-heading { top:calc(var(--yc-banner-bottom) + 40px); }
/* Workspace opts in independently; only its content origin changes while the strip is visible. */
body.yx-workspace #yc-global-banner { position:fixed; top:var(--header-h); left:0; right:0; z-index:990; }
body.yx-workspace.yc-banner-visible .yx-layout { top:calc(var(--header-h) + var(--yc-banner-height,48px)); }
body.yx-workspace.yx-pb-focus-mode #yc-global-banner { display:none !important; }
body.yx-workspace.yx-pb-focus-mode.yc-banner-visible .yx-layout { top:0; }
.yc-banner-admin { max-width:1140px; }
.yc-banner-admin h1 small { font-size:12px; color:#646970; font-weight:400; margin-left:10px; }
.yc-banner-card { background:white; border:1px solid #dcdcde; border-radius:8px; padding:20px 24px; margin-top:18px; }
.yc-banner-card h2 { margin:0 0 14px; font-size:16px; }
.yc-banner-enable { font-weight:600; }
.yc-banner-scopes { margin-top:18px; display:flex; gap:12px 24px; flex-wrap:wrap; }
.yc-banner-scopes legend { margin-bottom:8px; }
.yc-banner-region-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:16px; }
.yc-banner-region-grid label, .yc-banner-copy-row label { display:flex; flex-direction:column; gap:7px; }
.yc-banner-region-grid select { width:100%; max-width:100%; }
.yc-banner-copy-row { display:grid; grid-template-columns:minmax(0,1fr) 200px; gap:16px; margin-top:15px; }
.yc-banner-copy-row input { width:100%; }
.yc-banner-preview-controls { display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; }
.yc-banner-preview-frame { box-sizing:border-box; border:1px solid #dcdcde; border-radius:8px; overflow:hidden; max-width:100%; background:#fafafa; min-height:48px; }
.yc-banner-preview-frame.is-mobile { width:390px; }
@media(max-width:768px) {
    .yc-banner__inner { min-height:63px; padding:7px 12px; gap:8px; }
    .yc-banner__label { display:none; }
    .yc-banner__text { flex:1; font-size:12px; line-height:1.5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
    .yc-banner a.yc-banner__cta { min-height:36px; max-width:128px; white-space:normal; padding:7px 10px; font-size:11px; }
    .yc-banner__close { margin-right:-6px; width:44px; min-width:44px; height:44px; }
    .yc-banner-region-grid, .yc-banner-copy-row { grid-template-columns:1fr; }
    .yc-banner-card { padding:18px; }
}
/* Admin desktop viewport can still preview a genuinely narrow strip. */
.yc-banner-preview-frame.is-mobile .yc-banner__inner { min-height:63px; padding:7px 12px; gap:8px; }
.yc-banner-preview-frame.is-mobile .yc-banner__label { display:none; }
.yc-banner-preview-frame.is-mobile .yc-banner__text { flex:1; font-size:12px; line-height:1.5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.yc-banner-preview-frame.is-mobile .yc-banner__cta { max-width:128px; min-height:36px; white-space:normal; padding:7px 10px; font-size:11px; }
.yc-banner-preview-frame.is-mobile .yc-banner__close { width:44px; min-width:44px; margin-right:-6px; }
