
/* V6.0.0 BIBLIOTECA PRODUCTIVA
   Una sola arquitectura:
   Usuario -> Panel General (default)
           -> Mi SIGUE360 (perfil opcional)
           -> Mis Obras -> Obra -> Entorno -> Módulo
*/
.app.cleanPersonalMode58911 .roleSideNav,
.app.cleanPersonalMode58911 .navzone,
.app.cleanPersonalMode58911 .menuEdge{display:none!important}
.app.cleanPersonalMode58911 #panel{padding-bottom:28px}

/* Navegación global estable */
.cleanGlobalNav58911{display:flex;gap:7px;align-items:center;margin-left:8px}
.cleanGlobalNav58911 button{
  min-height:34px;padding:0 11px;border-radius:10px;cursor:pointer;white-space:nowrap;
  border:1px solid rgba(90,220,248,.22);
  background:linear-gradient(180deg,rgba(17,69,105,.92),rgba(9,48,77,.92));
  color:#eaf9fd;font:inherit;font-size:9px;font-weight:900
}
.cleanGlobalNav58911 button.active{
  border-color:rgba(73,222,255,.52);
  background:linear-gradient(180deg,rgba(18,131,171,.95),rgba(10,92,126,.95));
  color:#fff
}

/* ---------- PANEL GENERAL ---------- */
.cleanDashboard58911{display:grid;gap:15px;padding:4px 0 24px}
.cleanHero58911{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.cleanHero58911 small{
  display:block;color:#62e5fb;font-size:10px;font-weight:900;
  letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px
}
.cleanHero58911 h2{margin:0;font-size:30px;line-height:1.05;color:#f4fbff}
.cleanHero58911 p{margin:7px 0 0;color:#9ab5c3;font-size:12px;line-height:1.45}

.cleanKpis58911{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.cleanKpi58911{
  min-height:94px;padding:14px 15px;border-radius:15px;
  border:1px solid rgba(90,220,248,.15);
  background:linear-gradient(180deg,rgba(13,48,80,.95),rgba(9,34,58,.95))
}
.cleanKpi58911 small{
  display:block;color:#7e9ead;font-size:9px;text-transform:uppercase;letter-spacing:.08em
}
.cleanKpi58911 b{display:block;margin-top:7px;font-size:27px;color:#f3fbff}
.cleanKpi58911 span{display:block;margin-top:4px;color:#9ab4c1;font-size:10px}

.cleanMain58911{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.7fr);gap:12px}
.cleanCard58911{
  border:1px solid rgba(90,220,248,.13);border-radius:17px;
  background:linear-gradient(180deg,rgba(12,43,73,.95),rgba(8,31,54,.95));
  padding:16px
}
.cleanHead58911{
  display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:13px
}
.cleanHead58911 h3{margin:0;font-size:16px;color:#f2f9ff}
.cleanHead58911 p{margin:4px 0 0;font-size:10px;color:#839fae}
.cleanPrimary58911{
  min-height:38px;padding:0 13px;border-radius:10px;cursor:pointer;
  border:1px solid rgba(53,221,255,.55);
  background:linear-gradient(180deg,#0f94c2,#08779d);
  color:#fff;font-size:9px;font-weight:900
}

/* Mosaico de obras con avance circular */
.cleanMosaic58911{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cleanProject58911{
  display:grid;grid-template-columns:82px minmax(0,1fr);gap:12px;
  padding:13px;border-radius:15px;border:1px solid rgba(90,220,248,.11);
  background:linear-gradient(180deg,rgba(6,29,49,.94),rgba(4,24,41,.96))
}
.cleanProject58911.external{
  background:linear-gradient(180deg,rgba(22,75,111,.92),rgba(14,55,84,.95));
  border-color:rgba(90,220,248,.22)
}
.cleanDonut58911{
  --pct:0;width:74px;height:74px;border-radius:50%;
  background:conic-gradient(#26d8ff calc(var(--pct)*1%),rgba(255,255,255,.075) 0);
  display:grid;place-items:center;position:relative;align-self:center
}
.cleanDonut58911::after{
  content:"";position:absolute;inset:8px;border-radius:50%;background:#0a2a46
}
.cleanDonut58911 b{position:relative;z-index:1;font-size:17px;color:#fff}
.cleanDonut58911 small{
  position:absolute;z-index:1;margin-top:27px;font-size:6px!important;
  color:#8faab8!important;text-transform:uppercase
}
.cleanProjectBody58911{min-width:0}
.cleanProjectTop58911{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.cleanProjectTop58911 b{font-size:13px;color:#edf9fd}
.cleanProjectTop58911 small{display:block;margin-top:3px;color:#8ba8b7;font-size:9px}
.cleanProjectStatus58911{
  padding:4px 7px;border-radius:999px;font-size:8px;white-space:nowrap;
  border:1px solid rgba(75,229,174,.22);color:#66e2b0;background:rgba(75,229,174,.05)
}
.cleanProject58911.warn .cleanProjectStatus58911{
  border-color:rgba(255,190,94,.25);color:#ffd08a;background:rgba(255,190,94,.06)
}
.cleanProjectData58911{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.cleanProjectData58911 div{
  padding:8px 9px;border-radius:9px;background:rgba(4,20,34,.42);
  border:1px solid rgba(255,255,255,.04)
}
.cleanProjectData58911 small{
  display:block;font-size:7px;color:#7493a2;text-transform:uppercase
}
.cleanProjectData58911 b{display:block;margin-top:3px;font-size:11px;color:#dff4fb}
.cleanProjectFoot58911{
  display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px
}
.cleanProjectFoot58911 span{font-size:8px;color:#8aa6b4}
.cleanProjectFoot58911 button{
  min-height:31px;padding:0 9px;border-radius:8px;cursor:pointer;
  border:1px solid rgba(90,220,248,.22);background:rgba(13,71,101,.56);
  color:#e8f9fd;font-size:8px;font-weight:900
}

/* Atención / listas */
.cleanAttention58911{display:grid}
.cleanAtt58911{
  display:grid;grid-template-columns:9px 1fr auto;gap:9px;align-items:start;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,.055)
}
.cleanAtt58911:last-child{border-bottom:0}
.cleanDot58911{width:8px;height:8px;border-radius:50%;background:#27d8ff;margin-top:4px}
.cleanDot58911.warn{background:#ffbd62}.cleanDot58911.bad{background:#ff7474}
.cleanAtt58911 b{display:block;font-size:10px;color:#eaf7fd}
.cleanAtt58911 small{display:block;margin-top:3px;font-size:9px;color:#829eac;line-height:1.4}
.cleanAtt58911 span{font-size:8px;color:#9eb9c5}

.cleanBottom58911{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cleanRows58911{display:grid}
.cleanRow58911{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,.055)
}
.cleanRow58911:last-child{border-bottom:0}
.cleanRow58911 b{display:block;font-size:10px;color:#eaf7fd}
.cleanRow58911 small{display:block;margin-top:3px;font-size:9px;color:#819eac}
.cleanRow58911 span{font-size:9px;color:#acc3cd}
.cleanSource58911{
  display:inline-flex;padding:3px 6px;border-radius:999px;margin-left:5px;
  border:1px solid rgba(90,220,248,.13);font-size:7px;color:#86b5c7
}

/* Empresa / economía */
.cleanCompanyHealth58911{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.cleanCompanyMetric58911{
  padding:11px;border-radius:12px;border:1px solid rgba(90,220,248,.10);
  background:rgba(5,26,44,.52)
}
.cleanCompanyMetric58911 small{
  display:block;font-size:8px;color:#7897a6;text-transform:uppercase;letter-spacing:.05em
}
.cleanCompanyMetric58911 b{display:block;margin-top:5px;font-size:14px;color:#eef9fd}
.cleanCompanyMetric58911 span{display:block;margin-top:3px;font-size:8px;color:#86a4b3}
.cleanCompanyAlert58911{
  margin-top:10px;padding:9px 11px;border-radius:10px;
  border:1px solid rgba(255,190,94,.18);background:rgba(255,190,94,.05);
  color:#c8ae7f;font-size:9px
}

/* ---------- MI SIGUE360 / PERFIL ---------- */
.cleanProfile58911{display:grid;gap:14px;padding:4px 0 24px}
.cleanProfileGrid58911{
  display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:12px
}
.cleanProfileCard58911{
  border:1px solid rgba(90,220,248,.13);border-radius:17px;
  background:linear-gradient(180deg,rgba(11,40,68,.94),rgba(7,30,51,.94));
  padding:16px
}
.cleanProfileCard58911 h3{margin:0;font-size:15px;color:#f0f8fc}
.cleanProfileCard58911>p{margin:4px 0 12px;font-size:10px;color:#849fac;line-height:1.45}
.cleanPersonBox58911{
  display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;
  padding:11px;border-radius:14px;background:rgba(5,25,43,.5)
}
.cleanAvatar58911{
  width:58px;height:58px;border-radius:16px;display:grid;place-items:center;
  background:linear-gradient(145deg,rgba(24,147,193,.4),rgba(7,48,79,.92));
  border:1px solid rgba(88,222,250,.22);color:#7beaff;font-size:18px;font-weight:900
}
.cleanPersonBox58911 b{display:block;font-size:13px;color:#eff9fd}
.cleanPersonBox58911 span{display:block;margin-top:3px;color:#8aa7b6;font-size:9px}
.cleanTags58911{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.cleanTags58911 span{
  padding:5px 8px;border-radius:999px;border:1px solid rgba(90,220,248,.12);
  background:rgba(5,23,39,.55);color:#abc5d1;font-size:8px
}
.cleanSpaceList58911{display:grid;gap:9px}
.cleanSpace58911{
  display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:11px;border-radius:13px;border:1px solid rgba(90,220,248,.10);background:rgba(5,26,44,.5)
}
.cleanSpaceMark58911{
  width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(145deg,rgba(20,112,155,.32),rgba(7,44,72,.9));
  border:1px solid rgba(90,220,248,.16);font-size:14px;color:#65e4ff;font-weight:900
}
.cleanSpace58911 b{display:block;font-size:10px;color:#eaf7fc}
.cleanSpace58911 small{display:block;margin-top:2px;font-size:8px;color:#7f9eae}
.cleanSpace58911 .active{color:#67e2b1}.cleanSpace58911 .locked{color:#ffd08a}
.cleanSpace58911 button{
  min-height:32px;padding:0 9px;border-radius:8px;cursor:pointer;
  border:1px solid rgba(90,220,248,.19);background:rgba(13,71,101,.5);
  color:#e7f9fd;font-size:8px;font-weight:900
}
.cleanTimeline58911{display:grid}
.cleanTime58911{
  display:grid;grid-template-columns:9px 1fr auto;gap:8px;align-items:start;
  padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05)
}
.cleanTime58911:last-child{border-bottom:0}
.cleanTime58911 i{width:8px;height:8px;border-radius:50%;background:#29d8ff;margin-top:3px}
.cleanTime58911 b{display:block;font-size:9px;color:#def4fb}
.cleanTime58911 small{display:block;margin-top:2px;font-size:8px;color:#7898a7}
.cleanTime58911 span{font-size:8px;color:#90aeba}

/* Obras limpio: evitar que CSS de perfil JO o Cliente esconda obras que no sean Trazarg */
html body .app #obraSelector .selItem[data-clean-select-project]{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
#obraSelector .cleanExternalWork5891{
  background:linear-gradient(180deg,rgba(22,75,111,.90),rgba(14,55,84,.92))!important;
  border-color:rgba(90,220,248,.22)!important
}
#obraSelector .cleanWorkSource5891{
  display:block!important;margin-top:4px!important;color:#72dff3!important;font-size:8px!important
}


/* V5.8.9.1.2 · avance circular del pantallazo de obra */
.cleanWorkProgressCard58912{
  min-height:168px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  text-align:center!important;
}
.cleanWorkDonut58912{
  --pct:0;
  width:112px;
  height:112px;
  flex:0 0 112px;
  border-radius:50%;
  position:relative;
  display:grid;
  place-items:center;
  background:
    conic-gradient(
      from -90deg,
      #27d5ef 0 calc(var(--pct) * 1%),
      rgba(42,87,116,.42) calc(var(--pct) * 1%) 100%
    );
  box-shadow:
    0 0 0 1px rgba(78,218,246,.08),
    0 8px 22px rgba(0,0,0,.15);
}
.cleanWorkDonut58912::before{
  content:"";
  position:absolute;
  inset:11px;
  border-radius:50%;
  background:linear-gradient(180deg,#0c304f,#092943);
  box-shadow:inset 0 0 0 1px rgba(115,217,239,.07);
}
.cleanWorkDonutText58912{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  line-height:1;
}
.cleanWorkDonutText58912 strong{
  font-size:28px!important;
  line-height:1!important;
  color:#f4fbff!important;
  letter-spacing:-.04em;
}
.cleanWorkDonutText58912 span{
  margin-top:7px;
  font-size:7px!important;
  color:#789cac!important;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.cleanWorkProgressCaption58912{
  font-size:10px;
  color:#9bb4c0;
}

/* Botón Mi SIGUE360 viejo no se usa en esta arquitectura */
#cleanGlobalHome5891{display:none!important}

#cleanSubscription5891{
  position:fixed;inset:0;z-index:100005;display:none;align-items:center;justify-content:center;
  padding:20px;background:rgba(1,7,12,.66)
}
#cleanSubscription5891.open{display:flex}

@media(max-width:1050px){
  .cleanKpis58911{grid-template-columns:1fr 1fr}
  .cleanMain58911,.cleanBottom58911,.cleanProfileGrid58911{grid-template-columns:1fr}
  .cleanCompanyHealth58911{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .cleanMosaic58911{grid-template-columns:1fr}
  .cleanProject58911{grid-template-columns:74px 1fr}
  .cleanCompanyHealth58911{grid-template-columns:1fr 1fr}
  .cleanSpace58911{grid-template-columns:46px 1fr}
  .cleanSpace58911 button{grid-column:1/-1}
}
