/* Brand banner utilities. Keep the approved banner and dashboard card scale. */
.bdv3-carousel .bdv3-hero-copy{width:min(650px,66%);padding:26px 32px 86px}
.bdv3-banner-utilities{display:grid;grid-template-columns:174px minmax(0,1fr);gap:12px;width:540px;max-width:100%;margin-top:16px;pointer-events:auto}
.bdv3-banner-notifications,.bdv3-banner-weather{border:0;border-radius:0;background:none;box-shadow:none;color:#fff;backdrop-filter:none;text-shadow:0 2px 5px #00101fcc,0 0 14px #00101f88}
.bdv3-banner-notifications{position:relative;display:flex;align-items:center;gap:10px;padding:13px 0;min-height:104px;text-align:left;cursor:pointer;font:inherit}
.bdv3-banner-notifications:hover,.bdv3-banner-notifications[aria-expanded="true"]{background:none;color:#ffe7a3}
.bdv3-banner-notifications:focus-visible,.bdv3-banner-weather button:focus-visible,.bdv3-banner-drawer button:focus-visible,.bdv3-banner-drawer a:focus-visible{outline:2px solid #ffda69;outline-offset:3px}
.bdv3-banner-notifications strong{display:block;font-size:17px;font-weight:850;line-height:1.3}
.bdv3-banner-notifications small{display:block;margin-top:5px;font-size:13px;line-height:1.4;color:#f2f6ff;font-weight:650}
.bdv3-banner-bell{position:relative;display:grid;place-items:center;width:36px;height:42px;flex:0 0 36px;color:#f6bf41;background:none;box-shadow:none}
.bdv3-banner-bell svg{width:32px;height:34px;fill:#ffda69;stroke:#d58d1c;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transform-origin:50% 12%;filter:drop-shadow(0 2px 3px #0005)}
.bdv3-banner-notifications.has-new .bdv3-banner-bell svg{animation:bdv3BellSwing .62s ease-in-out 3}
.bdv3-banner-notifications.has-unread .bdv3-banner-bell svg{filter:drop-shadow(0 1px 5px #ffc84466)}
.bdv3-banner-count{position:absolute;right:-7px;top:-8px;min-width:22px;height:22px;padding:0 4px;display:grid;place-items:center;border:2px solid #ea6371;border-radius:20px;background:#e74557;color:white;font-size:13px;font-weight:800;line-height:1;text-shadow:none}
.bdv3-banner-count[hidden]{display:none}
.bdv3-banner-weather{min-width:0;padding:10px 11px 8px;font-size:13px}
.bdv3-weather-main{display:flex;align-items:center;gap:10px;position:relative}
.bdv3-weather-copy{flex:1;min-width:0;padding-right:17px}
.bdv3-weather-copy>strong{display:block;font-size:14px;line-height:1.35;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bdv3-weather-reading{display:flex;gap:9px;align-items:center;margin-top:4px;line-height:1.25}
.bdv3-weather-reading b{font-size:30px;font-weight:850;white-space:nowrap;letter-spacing:-.6px}
.bdv3-weather-reading>span{font-size:13px;color:#f4f8ff;font-weight:600}
.bdv3-weather-copy>small{display:block;font-size:13px;color:#e6f0fa;font-weight:600;line-height:1.4;margin-top:2px}
#bdv3WeatherRefresh{position:absolute;right:-4px;top:-5px;display:grid;place-items:center;width:27px;height:27px;padding:5px;border:0;border-radius:7px;color:#cbdced;background:transparent;cursor:pointer}
#bdv3WeatherRefresh:hover{color:#ffe18a;background:#ffffff12}
#bdv3WeatherRefresh:disabled{opacity:.45;cursor:wait}
#bdv3WeatherRefresh svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.bdv3-weather-footer{display:flex;gap:5px 10px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-top:0;margin-top:7px;padding-top:6px;font-size:13px;line-height:1.4;color:#e4edf7;font-weight:600}
.bdv3-weather-footer time{font-variant-numeric:tabular-nums;color:#e5edf7;white-space:nowrap}
.bdv3-weather-footer a{color:#d4eafa;text-decoration:none;font-size:13px}
.bdv3-weather-footer a:hover{text-decoration:underline}
/* Premium 3D artwork: transparent image layers with continuous condition-based motion. */
.bdv3-weather-art.bdv3-weather-3d{position:relative;display:block;width:84px;height:84px;flex:0 0 84px;isolation:isolate;overflow:visible;pointer-events:none}
.bdv3-weather-3d>img{position:absolute;display:none;max-width:none!important;object-fit:contain;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;pointer-events:none;user-select:none;transform-origin:center}
.bdv3-weather-3d>.bdv3-wx3d-sun{z-index:1;width:104px!important;height:104px!important;left:-10px;top:-10px;animation:bdv3SunLife 7s ease-in-out infinite}
.bdv3-weather-3d>.bdv3-wx3d-cloud{z-index:3;width:104px!important;height:104px!important;left:-10px;top:-14px;animation:bdv3CloudLife 6s ease-in-out infinite;filter:drop-shadow(0 3px 2px #00142544)}
.bdv3-wx3d-halo{display:none;position:absolute;z-index:0;inset:12px;border-radius:50%;background:radial-gradient(circle,#ffcf5c4d,#ffb52912 52%,transparent 72%);animation:bdv3SunHalo 4.5s ease-in-out infinite}
[data-weather="clear"] .bdv3-wx3d-sun,[data-weather="partly"] .bdv3-wx3d-sun,[data-weather="clear"] .bdv3-wx3d-halo,[data-weather="partly"] .bdv3-wx3d-halo{display:block}
[data-weather="partly"] .bdv3-weather-3d>.bdv3-wx3d-sun{width:78px!important;height:78px!important;left:-12px;top:-17px}
[data-weather="partly"] .bdv3-weather-3d>.bdv3-wx3d-light{width:98px!important;height:98px!important;left:-3px;top:-1px}
[data-weather="partly"] .bdv3-wx3d-light,[data-weather="cloud"] .bdv3-wx3d-light,[data-weather="fog"] .bdv3-wx3d-light,[data-weather="snow"] .bdv3-wx3d-light{display:block}
[data-weather="rain"] .bdv3-wx3d-dark,[data-weather="storm"] .bdv3-wx3d-dark{display:block}
.bdv3-wx3d-rain,.bdv3-wx3d-snow{display:none;position:absolute;z-index:2;left:12px;right:8px;top:55px;height:30px;overflow:hidden}
[data-weather="rain"] .bdv3-wx3d-rain,[data-weather="storm"] .bdv3-wx3d-rain,[data-weather="snow"] .bdv3-wx3d-snow{display:block}
.bdv3-wx3d-rain i{position:absolute;top:-11px;left:7%;display:block;width:4px;height:10px;border:1px solid #cef4ff5c;border-radius:60% 45% 65% 55%;background:linear-gradient(110deg,#d7f7ff 0%,#b8eafa99 27%,#4da8e84d 55%,#e8fcff 95%);box-shadow:0 1px 2px #7bd6ff33;animation:bdv3RainLife 1.2s linear infinite;transform:rotate(16deg)}
.bdv3-wx3d-rain i:nth-child(2){left:20%;animation-delay:-.47s;animation-duration:1.35s}.bdv3-wx3d-rain i:nth-child(3){left:34%;animation-delay:-.8s}.bdv3-wx3d-rain i:nth-child(4){left:47%;animation-delay:-.2s;animation-duration:1.05s}.bdv3-wx3d-rain i:nth-child(5){left:60%;animation-delay:-.65s}.bdv3-wx3d-rain i:nth-child(6){left:73%;animation-delay:-.35s;animation-duration:1.4s}.bdv3-wx3d-rain i:nth-child(7){left:86%;animation-delay:-.9s}.bdv3-wx3d-rain i:nth-child(8){left:94%;animation-delay:-.1s;animation-duration:1.1s}
.bdv3-wx3d-snow i{position:absolute;top:-12px;left:8%;font:normal 12px/1 Georgia,serif;color:#f4fdff;text-shadow:0 0 4px #9bddff80;animation:bdv3SnowLife 3.2s linear infinite}
.bdv3-wx3d-snow i:nth-child(2){left:28%;animation-delay:-1.5s}.bdv3-wx3d-snow i:nth-child(3){left:48%;animation-delay:-.8s;animation-duration:3.8s}.bdv3-wx3d-snow i:nth-child(4){left:68%;animation-delay:-2.6s}.bdv3-wx3d-snow i:nth-child(5){left:87%;animation-delay:-1.1s;animation-duration:3.6s}
.bdv3-wx3d-bolt{display:none;position:absolute;z-index:4;left:35px;top:48px;width:23px;height:32px;background:linear-gradient(120deg,#fffad2 10%,#ffdf63 45%,#ffa326);clip-path:polygon(47% 0,100% 0,61% 38%,94% 38%,17% 100%,35% 53%,0 53%);filter:drop-shadow(0 0 3px #ffc93a);animation:bdv3StormLife 4.8s ease-in-out infinite}
[data-weather="storm"] .bdv3-wx3d-bolt{display:block}
.bdv3-wx3d-mist{display:none;position:absolute;z-index:4;inset:49px 0 0;opacity:.7}
[data-weather="fog"] .bdv3-wx3d-mist{display:block}
.bdv3-wx3d-mist i{display:block;height:4px;margin:5px 0;border-radius:50%;background:linear-gradient(90deg,transparent,#d4e5f0aa,transparent);filter:blur(1px);animation:bdv3MistLife 5s ease-in-out infinite}
.bdv3-wx3d-mist i:nth-child(2){animation-delay:-2s;margin-left:8px}.bdv3-wx3d-mist i:nth-child(3){animation-delay:-3.5s;margin-right:8px}
[data-weather="loading"] .bdv3-wx3d-light,[data-weather="unavailable"] .bdv3-wx3d-light{display:block;opacity:.45;filter:grayscale(1)}
[data-weather="unavailable"] .bdv3-weather-3d *,[data-weather="loading"] .bdv3-weather-3d *{animation-play-state:paused}
@keyframes bdv3SunLife{0%,100%{transform:rotate(-3deg) scale(.97);filter:brightness(1)}50%{transform:rotate(3deg) scale(1.035);filter:brightness(1.12)}}
@keyframes bdv3SunHalo{0%,100%{opacity:.6;transform:scale(.94)}50%{opacity:1;transform:scale(1.14)}}
@keyframes bdv3CloudLife{0%,100%{transform:translate(-2px,1px) scale(.985)}50%{transform:translate(3px,-2px) scale(1.015)}}
@keyframes bdv3RainLife{0%{opacity:0;transform:translate(3px,0) rotate(16deg)}18%{opacity:.95}85%{opacity:.85}100%{opacity:0;transform:translate(-5px,39px) rotate(16deg)}}
@keyframes bdv3SnowLife{0%{opacity:0;transform:translate(0,0) rotate(0)}15%{opacity:1}85%{opacity:.8}100%{opacity:0;transform:translate(5px,42px) rotate(90deg)}}
@keyframes bdv3StormLife{0%,58%,100%{opacity:.15;transform:scale(.96)}70%,80%{opacity:1;transform:scale(1)}}
@keyframes bdv3MistLife{0%,100%{transform:translateX(-4px);opacity:.5}50%{transform:translateX(4px);opacity:.9}}
.bdv3-carousel-controls .bdv3-find-creator{width:236px;min-height:52px;gap:9px;padding:6px 10px;margin-left:12px;border-radius:10px;flex:none}
.bdv3-carousel-controls .bdv3-find-creator strong{font-size:16px;line-height:1.25}
.bdv3-carousel-controls .bdv3-find-creator small{font-size:13px;line-height:1.25;margin-top:3px}
.bdv3-carousel-controls .bdv3-discovery-portraits{width:34px;height:40px;flex-basis:34px;border-radius:6px}
.bdv3-carousel-controls .bdv3-discovery-portrait{width:34px;height:40px;border-radius:6px}
.bdv3-carousel-controls .bdv3-find-creator b{font-size:18px}
.bdv3-carousel-controls [data-carousel-count]{font-size:13px;letter-spacing:0}
.bdv3-banner-drawer{z-index:10020;top:148px;right:24px;width:min(440px,calc(100vw - 28px));max-height:calc(100dvh - 166px);display:flex;flex-direction:column;overflow:hidden}
.bdv3-banner-drawer[hidden]{display:none!important}
.bdv3-banner-drawer header{padding:17px 18px;gap:12px;flex:none}
.bdv3-banner-drawer header strong{font-size:19px;line-height:1.3}
.bdv3-banner-drawer header small{font-size:13px;line-height:1.4;color:#bdcde0;margin-top:4px}
.bdv3-banner-drawer header button{width:32px;height:32px;flex:none;border-radius:8px;cursor:pointer;background:#ffffff0b;font-size:24px}
.bdv3-banner-drawer>.bdv3-notice-toolbar{padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #ffffff14;flex:none;font-size:13px;color:#bdcde0}
.bdv3-notice-toolbar button,.bdv3-notice-actions button,.bdv3-notice-empty button{font:600 13px/1.4 Inter,system-ui,sans-serif;border:1px solid #ffe08a66;border-radius:7px;background:#ffe08a0d;color:#ffe6a0;padding:6px 9px;cursor:pointer}
.bdv3-notice-toolbar button:disabled{opacity:.4;cursor:default}
#bdv3NotificationList{overflow:auto;overscroll-behavior:contain;padding:10px 12px 14px;min-height:0}
.bdv3-notice-item{padding:13px 12px;border:1px solid transparent;border-radius:10px;margin-bottom:7px}
.bdv3-notice-item.is-unread{background:#ffdc6210;border-color:#ffdc6229}
.bdv3-notice-item>div:first-child{display:flex;align-items:flex-start;gap:10px}
.bdv3-notice-icon{display:grid;place-items:center;width:30px;height:32px;flex:none;border-radius:8px;background:#88b7e51a;color:#b5d9ff}
.bdv3-notice-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.bdv3-notice-copy{min-width:0;flex:1}
.bdv3-notice-copy strong{font-size:14px;line-height:1.4;color:#f5f8fc;font-weight:700}
.bdv3-notice-copy p{font-size:13px;line-height:1.55;color:#c3d2e3;margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.bdv3-notice-copy time{font-size:13px;color:#9eb4cb}
.bdv3-notice-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 0 40px}
.bdv3-notice-actions a{font-size:13px;font-weight:650;color:#ffe19b}
.bdv3-notice-actions button{border-color:#aec8e63d;color:#c9dcf0;background:#ffffff07}
.bdv3-notice-actions button:disabled{opacity:.55;cursor:wait}
.bdv3-notice-empty{font-size:14px;line-height:1.6;text-align:center;padding:25px 15px;color:#bdcde0}
.bdv3-notice-empty button{display:block;margin:12px auto 0}
#bdv3NotificationError{font-size:13px;line-height:1.5;margin:0;padding:10px 18px;color:#ffb4b4;background:#bc26351a}
@keyframes bdv3BellSwing{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(17deg)}40%,80%{transform:rotate(-14deg)}}
@media(min-width:721px) and (max-width:1250px){.bdv3-carousel .bdv3-hero-copy{width:76%;padding-left:25px;padding-right:25px}.bdv3-slide figcaption{top:24px;bottom:auto!important;max-width:30%!important}.bdv3-slide figcaption strong{font-size:16px}}
@media(max-width:720px){
 .bdv3-carousel .bdv3-hero-copy{width:100%;padding:20px 18px 16px}
 .bdv3-banner-utilities{width:100%;grid-template-columns:160px minmax(0,1fr)}
 .bdv3-carousel-controls{margin:0 14px 16px;gap:1px}
 .bdv3-carousel-controls button{width:30px;height:38px;flex-basis:30px}
 .bdv3-carousel-controls .bdv3-slide-dot{width:10px;flex-basis:10px}
 .bdv3-slide-dot[aria-pressed="true"]:before{width:10px}
 .bdv3-carousel-controls [data-carousel-count]{font-size:13px;margin:0 3px}
 .bdv3-carousel-controls .bdv3-find-creator{width:auto;min-height:38px;margin-left:auto;padding:7px 9px;gap:0}
 .bdv3-carousel-controls .bdv3-find-creator strong{font-size:14px;white-space:nowrap}
 .bdv3-carousel-controls .bdv3-find-creator small,.bdv3-carousel-controls .bdv3-find-creator b,.bdv3-carousel-controls .bdv3-discovery-portraits{display:none}
 .bdv3-banner-drawer{top:85px;right:14px;max-height:calc(100dvh - 104px)}
}
@media(max-width:520px){.bdv3-banner-utilities{grid-template-columns:1fr;gap:10px}.bdv3-banner-notifications{min-height:60px;padding:9px 13px}.bdv3-banner-notifications>span:last-child{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1}.bdv3-banner-notifications small{margin:0}.bdv3-banner-weather{padding:10px 13px}.bdv3-banner-bell{height:38px}.bdv3-weather-copy{padding-right:24px}}
@media(prefers-reduced-motion:reduce){.bdv3-banner-bell svg,.bdv3-weather-3d *{animation:none!important}}

/* Keep the creator shortcut on the same control row on narrow phones. */
@media(max-width:390px){.bdv3-carousel-controls .bdv3-slide-dot{display:none}}
