/* Verified live Smart Royal tokens, app.css:2069+. Shared, scoped consumers. */
/* Reflow below 320 CSS px at native browser zoom; do not clip content. */
body.vb-public,body.vb-system{min-width:0}
@font-face{font-family:VBManrope;font-style:normal;font-weight:200 800;font-display:swap;src:url('/fonts/vb-manrope.woff2') format('woff2')}
:root{--vbr-night:#020425;--vbr-royal:#02066f;--vbr-surface:#0b1063;--vbr-white:#f8f8fb;--vbr-muted:#b9c2df;--vbr-red:#f80000;--vbr-ink:#172033;--vbr-paper:#f5f7fa;--vbr-line:#dce1ee;--vbr-radius:.625rem;--vbr-space:.75rem;--vbr-font:VBManrope,Manrope,system-ui,sans-serif}
.vb-system{--vbr-bg:var(--vbr-paper);--vbr-panel:#fff;--vbr-fg:var(--vbr-ink);--vbr-secondary:#526080;background:var(--vbr-bg);color:var(--vbr-fg);font-family:var(--vbr-font)}
.vb-system[data-theme=dark]{--vbr-bg:var(--vbr-night);--vbr-panel:var(--vbr-night);--vbr-fg:var(--vbr-white);--vbr-secondary:var(--vbr-muted);--vbr-line:rgb(255 255 255 / .3);color-scheme:dark}
.vb-panel,.vb-stat,.vb-empty-state{min-width:0;padding:1.25rem;border:1px solid var(--vbr-line);border-radius:var(--vbr-radius);background:var(--vbr-panel,#fff);color:var(--vbr-fg,var(--vbr-ink));box-shadow:none}
.vb-panel-header,.vb-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--vbr-space);min-width:0}
.vb-panel-header{padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid var(--vbr-line)}
.vb-panel-header :is(h1,h2,h3),.vb-empty-state h2{margin:0;font-size:1.125rem;line-height:1.35;overflow-wrap:anywhere}
.vb-stat strong{display:block;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}.vb-stat small,.vb-empty-state p{color:var(--vbr-secondary,#526080)}
.vb-action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;max-width:100%;padding:.65rem 1rem;border:1px solid var(--vbr-royal);border-radius:var(--vbr-radius);background:var(--vbr-royal);color:#fff;font:700 .875rem/1.4 var(--vbr-font);text-decoration:none;white-space:normal;text-align:center;cursor:pointer;transition:background-color 160ms ease,border-color 160ms ease}
.vb-action:hover,.vb-action:active{background:var(--vbr-night)}.vb-action:disabled{cursor:not-allowed;opacity:.65}
.vb-status{display:inline-block;max-width:100%;padding:.25rem .5rem;border:1px solid currentColor;border-radius:.25rem;font-size:.75rem;line-height:1.4;overflow-wrap:anywhere}
.vb-list,.vb-timeline{list-style:none;margin:0;padding:0}.vb-list>li{padding:.8rem 0;border-bottom:1px solid var(--vbr-line)}.vb-list>li:last-child{border-bottom:0}
.vb-timeline>li{padding:.5rem 0 .75rem 1rem;border-left:2px solid var(--vbr-line);overflow-wrap:anywhere}
.vb-drawer{width:min(100%,32rem);max-width:100%;max-height:100dvh;margin:0 0 0 auto;padding:1.25rem;border:1px solid var(--vbr-line);background:var(--vbr-panel,#fff);color:var(--vbr-fg,var(--vbr-ink));overflow:auto;overscroll-behavior:contain}.vb-drawer::backdrop{background:rgb(2 4 37 / .66)}
.vb-conversation{display:grid;align-content:start;gap:.75rem;min-width:0}.vb-conversation p{overflow-wrap:anywhere;white-space:pre-wrap}
.vb-system :is(a,button,input,textarea,select,summary):focus-visible,.vb-action:focus-visible{outline:3px solid var(--vbr-red);outline-offset:3px}
.vb-system[data-theme=dark] :is(a,button,input,textarea,select,summary):focus-visible{outline-color:var(--vbr-white)}
/* Compact public consumers. Home remains unchanged as reference. */
:is(.partnership-experience,.newsroom-experience,.calendar-experience) :is(.partnership-compact-hero,.public-section-hero,.calendar-compact-hero){min-height:0;padding-block:2.25rem}
:is(.partnership-experience,.newsroom-experience,.calendar-experience) :is(.partnership-compact-hero__grid,.public-section-hero__grid,.calendar-compact-hero__grid){min-height:0;padding-block:0;gap:1.25rem}
:is(.partnership-experience,.newsroom-experience,.calendar-experience) :is(.partnership-compact-hero,.public-section-hero,.calendar-compact-hero) h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;max-width:23ch;margin-block:.75rem;letter-spacing:-.025em}
.newsroom-experience .public-section-hero__mark{min-height:0;max-height:10rem}.calendar-compact-hero__grid>img{max-height:10rem;object-fit:contain}
:is(.partnership-experience,.newsroom-experience,.calendar-experience)>:is(section,nav){padding-block:2rem}
.partnership-experience h2,.newsroom-experience .newsroom-empty h2{font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.15}
:is(.partnership-relation__rail,.newsroom-grid){gap:1rem}
:is(.partnership-relation__rail,.newsroom-grid)>article{min-height:0;padding:1.25rem;border:1px solid var(--vbr-line);border-radius:var(--vbr-radius);box-shadow:none}
.partnership-relation__rail article h3{font-size:1.35rem;margin-block:.75rem}.partnership-relation__rail article>span{font-size:1rem}
.partnership-conversation__grid{gap:1rem;align-items:start}.partnership-conversation__grid>div:first-child{max-width:65ch}
.newsroom-empty{min-height:0;padding:1.5rem}.newsroom-empty__mark{font-size:5rem}.newsroom-feature{min-height:0}.newsroom-feature__media img{max-height:24rem;object-fit:cover}
.news-category-rail{gap:.5rem;flex-wrap:wrap}.news-category-rail a{border-radius:.25rem;min-height:44px}
.calendar-week,.calendar-month,.event-list{border-radius:var(--vbr-radius);box-shadow:none}.calendar-dashboard__grid{gap:1rem}
@media(max-width:48rem){.vb-panel,.vb-stat,.vb-empty-state{padding:1rem}.vb-toolbar>*{min-width:0}.vb-drawer{width:100%;max-height:90dvh;margin:auto 0 0;border-radius:var(--vbr-radius) var(--vbr-radius) 0 0}:is(.partnership-experience,.newsroom-experience,.calendar-experience) :is(.partnership-compact-hero,.public-section-hero,.calendar-compact-hero){padding-block:1.5rem}.newsroom-experience .public-section-hero__mark{display:none}.calendar-compact-hero__grid{grid-template-columns:minmax(0,1fr) 5rem}.calendar-compact-hero__grid>img{max-height:6rem}.partnership-compact-hero__grid{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.vb-action{transition:none}}

/* Editorial CMS and partnership administration: same tokens, no workflow changes. */
.vb-system .admin-card{min-width:0;border:1px solid var(--vbr-line);border-radius:var(--vbr-radius);padding:1rem;box-shadow:none;background:var(--vbr-panel)}
.vb-system .vb-button{border-radius:var(--vbr-radius);min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.vb-system .admin-page-header h1{font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}
.vb-system .admin-card :is(input,select,textarea){min-width:0;max-width:100%}
.vb-system :is(.admin-card,details)>summary{min-height:44px;cursor:pointer;font-weight:700}
