/* Correcciones de composición sobre la identidad visual de Terralys v29. */
*,*::before,*::after{box-sizing:border-box}
.main,.content,.grid,.card,.card-head>div,.section-head>div,.map-wrap{min-width:0}
.card-head{flex-wrap:wrap;align-items:flex-start}
.card-head>div:first-child{flex:1 1 180px}
.card-head>.pill{flex:0 0 auto;max-width:100%;white-space:normal;text-align:center;line-height:1.4}
.section-head h1,.card h3,.metric b,.drawer-head h2{overflow-wrap:break-word;line-height:1.18}
.section-head{align-items:flex-start}
.grid.two{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.list-row>div{min-width:0;flex:1}
.list-row b,.list-row span,.audit-node span{overflow-wrap:anywhere}
.status{flex:0 0 auto}
.map-time-card{min-width:0!important}
.map-time-head{flex-wrap:wrap;gap:6px}
.drawer-kpis{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}
.drawer-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.drawer-actions button{flex:1 1 150px;min-height:42px;line-height:1.35}
.field{margin-top:16px;margin-bottom:16px}
.field label{line-height:1.5}
.audit-node+.audit-node{margin-top:10px}
.audit-node a.secondary{display:inline-flex;margin-top:10px;line-height:1.4}
.ai-messages{min-height:150px;display:flex!important;flex-direction:column!important;align-content:initial!important}
.ai-msg{flex:0 0 auto;overflow-wrap:anywhere}
.ai-msg.user{align-self:flex-end;max-width:92%}
.ai-msg.assistant{align-self:flex-start}
.ai-panel{overflow:hidden}
.ai-context-card,.ai-principle,.ai-quick,.ai-suggest-label,.ai-compose,.ai-head{flex-shrink:0}
.ai-quick{max-height:175px;overflow:auto}
.aa-session-note{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;color:var(--muted);font-size:12px;line-height:1.6}
.aa-session-note>span{flex:1 1 350px}
.aguas-context .card p.sub{font-size:13px;line-height:1.6}
.aguas-context .list-row b{font-size:14px;line-height:1.4}
.aguas-context .list-row span{font-size:12.5px;line-height:1.6}
.aguas-context .metric span{font-size:12px;line-height:1.5}
.aguas-context .metric b{font-size:26px}
.aguas-context .audit-node b{font-size:13px;line-height:1.5}
.aguas-context .audit-node span{font-size:13px;line-height:1.65}
.aguas-context .primary,.aguas-context .secondary{font-size:13px;line-height:1.4;min-height:42px}
.aguas-context .pill,.aguas-context .status{font-size:11px}
.aguas-context .field label{font-size:12px!important}
.aguas-context .field textarea,.aguas-context .field select,.aguas-context .field input{font-size:14px!important;line-height:1.5}
.aguas-context .drawer-tab{font-size:12px;min-height:38px}
.aguas-context .drawer-kpi span{font-size:12px;line-height:1.4}
.aguas-context .drawer-head p{font-size:13px;line-height:1.6}
@media(min-width:821px){
 .map-wrap{height:540px;padding-top:58px}
 .map-wrap>.map{position:absolute;inset:58px 0 0;height:calc(100% - 58px)!important;width:100%!important}
 .map-toolbar{top:10px;left:12px;right:12px;max-width:none;bottom:auto;justify-content:flex-end;gap:6px}
 .map-toolbar button,.map-toolbar select{font-size:11px;height:34px}
 .layer-panel{top:70px;width:185px}
 .leaflet-top.leaflet-left{left:auto;right:12px;top:8px}
 .subbar{height:auto;min-height:60px;flex-wrap:wrap;padding-top:9px;padding-bottom:9px;gap:8px 14px}
 .sub-meta{margin-left:auto}
}
@media(min-width:821px) and (max-width:1180px){
 .workspace{grid-template-columns:210px minmax(0,1fr)!important}
 .sidebar{display:block!important;padding:14px 10px}
 .topbar{grid-template-columns:160px minmax(0,1fr) minmax(190px,230px);gap:10px}
 .product-id,.sync{display:none!important}
 .top-control.context{display:block!important;min-width:0;width:100%}
 .top-control.profile{min-width:0;width:100%}
 .content{padding:20px;max-width:100%}
 .grid.two,.grid.equal,.grid.three{grid-template-columns:1fr!important}
 .map-shell{grid-template-columns:1fr!important}
 .map-inspector{border-left:0;border-top:1px solid var(--line);max-height:320px}
 .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .breadcrumb{flex:1 1 100%}
 .sub-user{display:none}
 .section-head{flex-wrap:wrap}
}
@media(max-width:820px){
 .workspace{grid-template-columns:1fr!important}
 .grid.two,.grid.equal,.grid.three{grid-template-columns:1fr!important}
 .sidebar{display:none!important}
 .card-head>div:first-child{flex-basis:160px}
 .aguas-context .metric b{font-size:23px}
 .aguas-context .metric span{font-size:11px}
 .drawer-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .map-time-head b{font-size:10px!important;letter-spacing:.05em}
 .map-time-phase{font-size:10px!important;white-space:normal}
 .map-time-steps{font-size:9px!important;letter-spacing:0}
 .aa-session-note{align-items:flex-start}
 .ai-messages{min-height:100px}
 .ai-quick{max-height:140px!important}
}
