/* URBI V25: composición final del escenario y paneles sin superposición.
 * Mantiene intactos la mascota y el chat existentes.
 */
.topbar{height:70px!important;min-height:70px!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:14px!important;padding-block:6px!important;overflow:hidden}
.topbar .brand{flex:0 0 104px;min-width:0}
.top-actions{min-width:0;flex:1 1 auto;display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#b0d2ed transparent;padding:7px 2px;gap:7px!important;white-space:nowrap}
.top-actions>*{flex:0 0 auto;white-space:nowrap}
.top-actions::-webkit-scrollbar{height:3px}
.top-actions::-webkit-scrollbar-thumb{background:#b0d2ed;border-radius:12px}
/* Garantizar textos legibles en el paisaje claro de URBI */
.world:not(.night) .hello h1{color:#123a67!important;text-shadow:0 1px 0 #fff7!important}
.world:not(.night) .hello p:not(.eyebrow){color:#285b7f!important}
.world:not(.night) .hello .eyebrow{color:#076795!important}
/* Escritorio: mascota y chat ocupan áreas diferentes */
@media(min-width:1100px){
 .experience{min-height:680px}
 .hello{left:clamp(24px,3.5vw,60px)!important;top:108px!important;max-width:280px}
 .hello h1{font-size:clamp(25px,2.3vw,35px)!important}
 .orbit,.ground{left:38%!important}
 .pet{left:38%!important;top:41%!important;--pet-scale:1.16!important}
 .bubble{left:38%!important;top:17%!important;max-width:350px!important}
 .conversation{position:absolute!important;left:auto!important;right:clamp(94px,7vw,120px)!important;bottom:clamp(20px,3.5vh,46px)!important;top:auto!important;transform:none!important;width:clamp(410px,35vw,500px)!important;max-height:calc(100dvh - 140px)!important;overflow-y:auto;overscroll-behavior:contain;z-index:15}
 .care-dock{left:38%!important;right:auto!important;bottom:clamp(24px,6vh,60px)!important;transform:translateX(-50%)!important;width:max-content;max-width:520px!important;z-index:12}
 .care-dock button{padding:9px 12px!important}
 .side-tools{right:9px!important;top:clamp(166px,22%,225px)!important;bottom:auto;max-height:calc(100dvh - 195px);overflow-y:auto;gap:6px!important;scrollbar-width:none;padding:2px}
 .side-tools .tool-button{min-width:65px!important;padding:8px 7px!important;gap:1px;border-radius:15px!important}
 .side-tools .tool-button span{font-size:20px!important}
 .side-tools .tool-button small{font-size:10px!important}
 .v6-home-card{max-width:260px}
}
/* Tablet: el chat baja, sin ocultar la mascota. */
@media(min-width:721px) and (max-width:1099px){
 .experience{height:auto!important;min-height:1050px!important;overflow:hidden}
 .orbit,.ground{left:46%!important}
 .pet{left:46%!important;top:32%!important;--pet-scale:1.03!important}
 .bubble{left:46%!important;top:15%!important;max-width:365px!important}
 .hello{top:98px!important;left:26px!important;max-width:210px}
 .hello h1{font-size:26px!important}
 .companion-meta{right:20px!important;top:92px!important}
 .conversation{position:absolute!important;left:50%!important;right:auto!important;top:auto!important;bottom:36px!important;transform:translateX(-50%)!important;width:min(670px,calc(100vw - 48px))!important;max-height:440px!important;overflow-y:auto}
 .care-dock{left:46%!important;right:auto!important;bottom:465px!important;transform:translateX(-50%)!important;max-width:min(610px,calc(100vw - 110px))!important}
 .side-tools{right:9px!important;top:33%!important;bottom:auto;gap:6px!important;max-height:310px;overflow-y:auto}
 .side-tools .tool-button{padding:7px!important;min-width:55px!important}
}
@media(max-width:720px){
 .topbar{min-height:58px!important;height:58px!important;padding:5px 10px!important;gap:9px!important}
 .topbar .brand{flex:0 0 91px}
 .brand .wordmark{font-size:24px!important}
 .top-actions{gap:6px!important;padding:3px 1px}
 .top-actions button,.top-actions .status{flex-shrink:0}
 .hello{top:73px!important;left:14px!important;max-width:calc(100vw - 172px)!important;z-index:10!important}
 .hello h1{font-size:clamp(17px,5vw,21px)!important;line-height:1.2;white-space:normal}
 .companion-meta{top:72px!important;right:9px!important;max-width:154px;min-width:0;overflow:hidden;z-index:9!important}
 .companion-meta strong{max-width:79px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .bubble{top:17.5%!important;max-width:calc(100vw - 44px)!important;line-height:1.4}
 .care-dock{left:10px!important;right:90px!important;bottom:calc(98px + env(safe-area-inset-bottom))!important;transform:none!important;max-width:none!important;width:auto!important;overflow-x:auto!important;scrollbar-width:none;gap:4px}
 .care-dock button{flex:0 0 auto!important;min-width:42px!important;min-height:42px!important;padding:8px!important}
 .v7-chat-launcher{right:13px!important;bottom:calc(93px + env(safe-area-inset-bottom))!important}
 .v7-phone-dock{bottom:calc(8px + env(safe-area-inset-bottom))!important}
 .v25-panel{inset:0!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;padding-top:env(safe-area-inset-top)}
 .v25-panel .v25-body{flex:1 1 auto;min-height:0;overscroll-behavior:contain;padding-bottom:calc(30px + env(safe-area-inset-bottom))}
 .v25-panel header{flex:0 0 auto}
 .v25-panel .v25-footer{flex-wrap:wrap}
 .v25-panel .v25-headgroup{flex:1 1 auto;min-width:0}
 .v25-panel .v25-headgroup p{overflow-wrap:anywhere}
}
@media(max-width:350px){.hello{max-width:142px!important}.hello h1{font-size:17px!important}.companion-meta{max-width:140px}}
@media(max-height:650px) and (max-width:720px){.bubble{top:20%!important}.pet{--pet-scale:.82!important;top:41%!important}.care-dock{bottom:calc(91px + env(safe-area-inset-bottom))!important}}
@media(min-width:721px) and (max-width:1099px){.side-tools{top:28%!important;max-height:255px!important}}
@media(max-width:350px) and (max-height:675px){.pet{top:45.5%!important}.ground{top:59%!important}}
