/* Header geometry and palette match the supplied PicPlayer header.
   Higher-specificity host rules work with both Vue scoped CSS and the packaged editor. */
#app .app-shell.presentpad-network-shell { grid-template-rows: 48px 126px minmax(0, 1fr) 28px; grid-template-columns:minmax(0,1fr); }
#app .topbar { min-width:0; height:48px; padding:0 12px 0 0; gap:10px; grid-template-columns:174px auto minmax(120px,1fr) auto; background:#10141b; border-bottom:1px solid #252b35; color:#edf1f7; }
#app .topbar .brand-block { height:100%; width:174px; gap:10px; padding:0 14px; border-right:1px solid #2a3240; }
#app .topbar .brand-mark { display:block; position:static; flex:0 0 24px; width:24px; height:24px; border-radius:8px; object-fit:cover; }
#app .topbar .brand-copy { display:flex; flex-direction:column; justify-content:center; gap:3px; min-width:0; white-space:nowrap; }
#app .topbar .brand-name { display:inline-flex; align-items:baseline; color:#f6f7fb; font-size:13px; letter-spacing:-.02em; line-height:1; }
#app .topbar .brand-name strong { font-size:13px; font-weight:800; color:inherit; }
#app .topbar .brand-name span { display:inline; margin:0; font-size:13px; color:inherit; font-weight:400; text-transform:none; letter-spacing:inherit; }
#app .topbar .brand-copy small { color:#939dac; font-size:9px; font-weight:600; line-height:1; letter-spacing:.025em; }
#app .topbar .document-title { min-width:0; max-width:100%; color:#edf1f7; }
#app .topbar .document-title:hover { border-color:#384252; }
#app .topbar .document-title:focus { background:#1d2633; border-color:#8777ed; }
#app .topbar .file-menu-button,#app .topbar .icon-button { color:#d4d9e1; }
#app .topbar .file-menu-button:hover,#app .topbar .icon-button:hover:not(:disabled) { background:#2a313d; }
#app .topbar .toolbar-divider { background:#343b46; }
#app .topbar .save-state { color:#939dac; }
#app .topbar .secondary-action { color:#d4d9e1; background:#202938; border-color:#414c5f; }
#app .topbar .secondary-action:hover { background:#33435a; }
#app .topbar-actions { flex-shrink:0; }
#presentpad-profile-host { display:flex; align-items:center; flex:0 0 30px; margin-left:4px; }
#app .profile-button { display:grid; place-items:center; flex:0 0 30px; width:30px; height:30px; border:1px solid #414c5f; border-radius:50%; background:#202938; color:#cfdbeb; cursor:pointer; padding:0; transition:background .15s,border-color .15s; }
#app .profile-button:hover,#app .profile-button.active { background:#33435a; border-color:#6e9bc7; }
#app .profile-button.is-signed-in { border-color:#469b81; background:#153b32; color:#a1eed5; }
.profile-initials { font-size:13px; font-weight:750; line-height:1; }
#app .ribbon-tab-row { display:flex; align-items:center; height:34px; min-width:0; background:#10141b; }
#app .ribbon-tab-row .ribbon-tabs { flex:0 0 auto; gap:3px; padding:0 12px; background:transparent; }
#app .ribbon-tab-row .ribbon-tabs button { flex:0 0 auto; color:#c3ccda; padding:0 11px; }
#app .ribbon-tab-row .ribbon-tabs button:hover { background:#2a313d; color:#f6f7fb; }
#app .ribbon-tab-row .ribbon-tabs button.active { color:#d4caff; border-bottom-color:#9d7bff; }
#app .menu-bar { display:flex; align-items:center; flex:0 1 auto; min-width:0; white-space:nowrap; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
#app .menu-bar::-webkit-scrollbar { display:none; }
#app .network-menu { margin-left:auto; padding-left:16px; padding-right:8px; }
#app .menu-bar>button { flex:0 0 auto; height:30px; border-radius:5px; border:0; background:transparent; padding:0 8px; cursor:pointer; color:#d4d9e1; white-space:nowrap; font-family:inherit; font-size:11px; text-transform:uppercase; }
#app .menu-bar>button:hover,#app .menu-bar>button.active { background:#2a313d; }
#app .menu-bar>button:focus-visible,#app .profile-button:focus-visible { outline:2px solid #4db8ff; outline-offset:-2px; }
.menu-popovers { position:fixed; inset:0; pointer-events:none; z-index:5000; font:12px Inter,ui-sans-serif,system-ui,sans-serif; color:#edf1f7; }
.menu-popovers .menu-popover { display:none; position:absolute; min-width:min(245px,calc(100vw - 16px)); max-width:calc(100vw - 16px); padding:5px; background:#252b35; border:1px solid #3a424f; border-radius:7px; box-shadow:0 18px 50px #000b; pointer-events:auto; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#566274 #252b35; }
.menu-popovers .menu-popover.open { display:block; }
.menu-popovers .menu-popover button,.menu-popovers .menu-popover a { display:flex; align-items:center; justify-content:space-between; gap:24px; width:100%; border:0; background:transparent; padding:7px 9px; border-radius:4px; text-align:left; cursor:pointer; color:inherit; text-decoration:none; white-space:nowrap; line-height:1.35; font:inherit; }
.menu-popovers .menu-popover button:hover,.menu-popovers .menu-popover a:hover,.menu-popovers .menu-popover button:focus-visible,.menu-popovers .menu-popover a:focus-visible { background:#3a4656; outline:none; }
.menu-popovers .menu-popover button:focus-visible,.menu-popovers .menu-popover a:focus-visible { box-shadow:inset 0 0 0 1px #80b7e3; }
.menu-popovers .menu-separator { height:1px; background:#46505f; margin:5px; }
.menu-popovers .network-popover { min-width:min(215px,calc(100vw - 16px)); }
.menu-popovers .current-app-badge { font-size:9px; color:#86c8f7; font-weight:500; }
.menu-popovers .profile-popover { width:245px; }
.menu-popovers .profile-summary { display:grid; gap:5px; padding:8px 9px 9px; overflow-wrap:anywhere; }
.menu-popovers .profile-summary strong { font-size:13px; font-weight:650; }
.menu-popovers .profile-summary>span { font-size:11px; color:#a0adbf; }
.menu-popovers .profile-popover .profile-join { color:#90ceff; }
.menu-popovers .profile-popover .profile-legal-link { font-size:11px; color:#adb9ca; }
.menu-popovers .profile-account-note { margin:5px 9px; color:#9aa8bc; font-size:10px; line-height:1.5; }
.menu-popovers .hidden,#presentpad-profile-host .hidden,.menu-popovers [hidden] { display:none!important; }
#app .shared-ad-rail { display:block; width:316px; min-width:316px; flex:0 0 316px; height:100%; min-height:0; overflow:hidden; background:#12171e; }
#app .shared-ad-rail[hidden] { display:none!important; }
.presentpad-shell-notice { position:fixed; bottom:40px; left:50%; transform:translateX(-50%); z-index:16000; max-width:calc(100vw - 32px); padding:12px 18px; border:1px solid #414c5f; border-radius:8px; background:#202938; color:#edf1f7; font:12px/1.5 system-ui,sans-serif; box-shadow:0 8px 24px #0004; }
.presentpad-shell-notice[hidden] { display:none; }
.presentpad-ad-preferences { max-width:min(490px,calc(100vw - 32px)); padding:25px; border:1px solid #d4d8e2; border-radius:14px; background:#fff; color:#333b48; font:13px/1.6 system-ui,sans-serif; box-shadow:0 18px 65px #0005; }
.presentpad-ad-preferences::backdrop { background:rgb(16 20 27 / 58%); }
.presentpad-ad-preferences h2 { margin:0 0 14px; font-size:20px; }
.presentpad-ad-preferences p { margin:12px 0; }
.presentpad-ad-preferences .ad-preferences-note { color:#697386; font-size:11px; }
.ad-preferences-actions { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0 12px; }
.ad-preferences-actions button { padding:8px 12px; border:1px solid #d4d8e2; border-radius:7px; background:#f5f5fa; color:#39325e; cursor:pointer; font:inherit; font-size:12px; }
.ad-preferences-actions .ad-preferences-done { background:#6550da; border-color:#6550da; color:#fff; }
.ad-preferences-actions button:disabled { opacity:.5; cursor:default; }
.presentpad-ad-preferences a { color:#5845c4; }
@media (max-width:1279px) { #app .shared-ad-rail { display:none; } }
@media (max-width:1100px) { #app .topbar .save-state { display:none; } #app .ribbon-tab-row .ribbon-tabs button { padding:0 8px; } }
@media (max-width:900px) { #app .topbar { gap:6px; } #app .topbar .document-identity { gap:0; } #app .topbar .document-title { width:100%; } #app .ribbon-tab-row .ribbon-tabs { padding:0 7px; } #app .ribbon-tab-row .ribbon-tabs button { padding:0 7px; } }
@media print { #app .shared-ad-rail,#network-menu-bar,#presentpad-profile-host,.menu-popovers,.presentpad-shell-notice,.presentpad-ad-preferences { display:none!important; } }
