/* One banner specification shared by the dashboard and every portal. */
.hanaman-banner-shell{display:contents}
.hanaman-banner{box-sizing:border-box;position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:8px;height:78px;margin:0;padding:0 24px;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%);background:linear-gradient(180deg,#f5f9fb80,#f5f9fb25)!important}
[data-theme=night] .hanaman-banner{background:linear-gradient(180deg,#18252b55,#18252b15)!important}
.hanaman-banner>a{display:block;min-width:0;width:245px;flex-shrink:1}
.hanaman-banner img{display:block;width:100%;max-width:none;height:auto;max-height:64px;object-fit:contain;object-position:left center;opacity:1}
[data-theme=night] .hanaman-banner img{filter:brightness(0) invert(94%) sepia(9%) saturate(240%) hue-rotate(5deg)}
.hanaman-banner .portal-header-actions{position:static;inset:auto;width:auto;padding:0;border:0;background:transparent;display:flex;flex-wrap:nowrap;gap:4px;flex-shrink:0}
.hanaman-banner .portal-header-actions button,.hanaman-banner .portal-header-actions a{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:40px;min-width:40px;height:44px;min-height:44px;padding:5px;margin:0;background:transparent!important;box-shadow:none!important;border:1px solid #ddddd5;border-radius:10px;color:#686b65;text-decoration:none}
.hanaman-banner .portal-header-actions button[data-portal-theme]{border:0}
[data-theme=night] .hanaman-banner .portal-header-actions a{border-color:#424940;color:#F4F2EA}
[data-theme=night] .hanaman-banner .portal-header-actions button{color:#B6B7AE}
.hanaman-banner .portal-header-actions svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.hanaman-account-strip{display:flex;justify-content:space-between;gap:6px;padding:8px 14px;background:#e8e7df;color:#686b65;font-size:9px;line-height:1.5}
[data-theme=night] .hanaman-account-strip{background:#303730;color:#F4F2EA}
@media(max-width:760px){
 .hanaman-banner,.topbar{box-sizing:border-box;height:calc(68px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0;gap:8px}
 .hanaman-banner>a{width:calc(100% - 132px);max-width:245px}
 .hanaman-banner .portal-header-actions button,.hanaman-banner .portal-header-actions a{width:40px;min-width:40px;height:44px}
}

/* Match pull-to-refresh motion; retain the button's size and accessible name. */
button.is-loading{position:relative!important;color:transparent!important;text-shadow:none!important;pointer-events:none}
button.is-loading>*{visibility:hidden}
button.is-loading::before{content:""!important;position:absolute!important;display:block!important;left:50%!important;top:50%!important;width:22px!important;height:22px!important;margin:-11px 0 0 -11px!important;box-sizing:border-box;border:2px solid var(--line,#73877d)!important;border-top-color:var(--accent,#7baccb)!important;border-right-color:transparent!important;border-radius:50%!important;animation:hanaman-action-turn .95s linear infinite!important}
@keyframes hanaman-action-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){button.is-loading::before{animation:none!important}}
/* Four consistent banner actions, with 44px touch targets and a flexible wordmark. */
.topbar .settings-shortcut svg{width:20px;height:20px;stroke-width:1.55;stroke-linejoin:round}
@media(max-width:760px){
 .topbar .top-actions{display:flex;gap:2px;flex-shrink:0}
 .topbar .top-actions>.icon-btn{width:40px;min-width:40px;height:44px;padding:8px}
 .topbar .mobile-brand{width:calc(100% - 174px)!important;min-width:0;max-width:245px;flex-shrink:1}
 .hanaman-banner>a{width:calc(100% - 174px)}
 .hanaman-banner .portal-header-actions{gap:2px}
}

/* Phones retain three banner actions; settings lives in More. */
.more-heading-actions{display:flex;align-items:center;gap:12px}
.phone-settings-shortcut{display:none!important}
@media(max-width:760px){
 .topbar .settings-shortcut,.hanaman-banner .settings-shortcut{display:none!important}
 .topbar .mobile-brand{width:calc(100% - 132px)!important}
 .hanaman-banner>a{width:calc(100% - 132px)}
 .phone-settings-shortcut{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px}
 .phone-settings-shortcut svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linejoin:round}
}

@media(max-width:760px){
 .page-title:has(.phone-settings-shortcut){position:relative}
 .page-title:has(.phone-settings-shortcut)>div:first-child{padding-right:48px}
 .page-title .phone-settings-shortcut{position:absolute;right:0;top:0}
}

@media(max-width:760px){.page-title .more-heading-actions{padding-top:52px}}
