
/* V5.8.8.7 · cirugía visual SOLO Perfil Socio > Obras */

/* Una obra nace de Presupuestos aprobados; no se crea manualmente desde Obras. */
.app.profile-owner #obraOverview > .toolbar .btn.primary:first-child{display:none!important}
.app.profile-owner #obraOverview > .toolbar{
  justify-content:flex-start;
  align-items:center;
  gap:8px;
}
.app.profile-owner #obraOverview > .toolbar::after{
  content:"Las obras se crean automáticamente al aprobar un presupuesto.";
  margin-left:auto;
  color:#789bad;
  font-size:10px;
}

/* Resumen Obras: selector izquierda + pantallazo visual derecha. */
.app.profile-owner #obraOverview .gridSplit{
  grid-template-columns:300px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:stretch;
}
.app.profile-owner #obraOverview > .gridSplit > .card{
  background:linear-gradient(180deg,rgba(14,48,80,.94),rgba(9,34,58,.94))!important;
  border-color:rgba(90,220,248,.14)!important;
}
.app.profile-owner #obraOverview #obraDetail{
  min-height:600px;
  padding:16px!important;
}
.app.profile-owner #obraSelector .selItem{
  padding:13px 14px!important;
  border-radius:13px!important;
  background:rgba(9,34,58,.78)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.app.profile-owner #obraSelector .selItem.active{
  border-color:rgba(56,218,255,.52)!important;
  background:linear-gradient(180deg,rgba(19,70,108,.92),rgba(13,50,80,.92))!important;
  box-shadow:0 0 0 1px rgba(56,218,255,.08) inset!important;
}

/* Tablero previo a entrar en la obra. */
.ownerWorkSummary5887{display:grid;gap:14px}
.ownerWorkHead5887{
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;
  padding-bottom:13px;border-bottom:1px solid rgba(90,220,248,.12)
}
.ownerWorkHead5887 h3{margin:0;font-size:22px!important}
.ownerWorkHead5887 p{margin:4px 0 0;color:#91adbd;font-size:10px;line-height:1.45}
.ownerWorkStatus5887{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.ownerBadge5887{
  padding:5px 9px;border-radius:999px;border:1px solid rgba(90,220,248,.18);
  background:rgba(9,35,59,.72);font-size:9px;color:#b9d3df
}
.ownerBadge5887.ok{border-color:rgba(75,229,174,.28);color:#65e5b2;background:rgba(75,229,174,.07)}
.ownerBadge5887.warn{border-color:rgba(255,188,91,.28);color:#ffd08a;background:rgba(255,188,91,.07)}
.ownerEnterOps5887{
  min-width:220px;min-height:44px;padding:0 17px;border-radius:12px!important;
  border:1px solid rgba(53,221,255,.70)!important;
  background:linear-gradient(180deg,#0f94c2,#08779d)!important;
  color:#fff!important;font-weight:900!important;
  box-shadow:0 10px 26px rgba(0,173,224,.18)!important;
  font-size:11px!important;
}
.ownerEnterOps5887:hover{filter:brightness(1.08);transform:translateY(-1px)}

.ownerWorkTop5887{
  display:grid;grid-template-columns:180px repeat(3,minmax(0,1fr));gap:10px
}
.ownerProgressCard5887,.ownerMetric5887,.ownerWorkPanel5887{
  border:1px solid rgba(90,220,248,.13);
  background:linear-gradient(180deg,rgba(9,35,60,.88),rgba(7,29,50,.88));
  border-radius:15px;padding:13px
}
.ownerProgressCard5887{display:grid;place-items:center;text-align:center}
.ownerDonut5887{
  --pct:68;
  width:108px;height:108px;border-radius:50%;
  background:conic-gradient(#26d8ff calc(var(--pct)*1%),rgba(255,255,255,.075) 0);
  display:grid;place-items:center;position:relative;margin-bottom:9px
}
.ownerDonut5887::after{
  content:"";position:absolute;inset:10px;border-radius:50%;background:#0b2c49
}
.ownerDonut5887 b{position:relative;z-index:1;font-size:25px!important;color:#fff!important}
.ownerDonut5887 small{position:relative;z-index:1;display:block;font-size:8px!important;color:#89a8b9!important}
.ownerMetric5887 small{
  display:block;color:#7f9dac;font-size:8px;text-transform:uppercase;letter-spacing:.09em
}
.ownerMetric5887 strong{display:block;margin-top:8px;font-size:20px;color:#f2f9ff}
.ownerMetric5887 span{display:block;margin-top:5px;font-size:9px;color:#91adbd;line-height:1.35}
.ownerMetric5887 .good{color:#5fe1ad}.ownerMetric5887 .warning{color:#ffd084}

.ownerWorkBody5887{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:12px}
.ownerWorkPanel5887 h4{margin:0 0 10px;font-size:12px!important}
.ownerTask5887{
  display:grid;grid-template-columns:minmax(170px,1fr) 92px minmax(130px,1fr) 58px;
  gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.055)
}
.ownerTask5887:last-child{border-bottom:0}
.ownerTask5887 b{font-size:10px!important}
.ownerTask5887 small{display:block;margin-top:2px;color:#789aaa!important;font-size:8px!important}
.ownerTaskQty5887{text-align:right;font-size:9px;color:#a9c4d2}
.ownerBar5887{height:7px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden}
.ownerBar5887 i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#18bce7,#55e5f6)}
.ownerTaskPct5887{text-align:right;font-size:9px;color:#dff8ff}

.ownerAlert5887,.ownerMilestone5887{
  display:grid;grid-template-columns:9px 1fr;gap:9px;align-items:start;
  padding:9px 0;border-bottom:1px solid rgba(255,255,255,.055)
}
.ownerAlert5887:last-child,.ownerMilestone5887:last-child{border-bottom:0}
.ownerAlertDot5887,.ownerMilestoneDot5887{
  width:8px;height:8px;border-radius:50%;margin-top:3px;background:#25d8ff
}
.ownerAlertDot5887.warn{background:#ffbd62}.ownerAlertDot5887.bad{background:#ff7272}
.ownerAlert5887 b,.ownerMilestone5887 b{font-size:9px!important;display:block}
.ownerAlert5887 small,.ownerMilestone5887 small{font-size:8px!important;color:#7f9fac!important;line-height:1.4}
.ownerWorkBottom5887{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* ENTORNO OPERATIVO DEL SOCIO: menú fijo izquierda + contenido derecha. */
.app.profile-owner #obraOps.active{
  display:grid!important;
  grid-template-columns:235px minmax(0,1fr)!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
  column-gap:14px!important;
  row-gap:10px!important;
  align-items:start!important;
}
.app.profile-owner #obraOps .opsTop{
  grid-column:1/-1;grid-row:1;
  margin:0!important;padding:0 0 10px!important;
  border-bottom:1px solid rgba(90,220,248,.12)
}
.app.profile-owner #obraOps .roleNote{
  grid-column:1/-1;grid-row:2;margin:0!important
}
.app.profile-owner #obraOps .opsTabs{
  grid-column:1;grid-row:3;
  display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;
  gap:5px!important;margin:0!important;padding:10px!important;
  position:sticky;top:96px;
  border:1px solid rgba(90,220,248,.13);border-radius:15px;
  background:linear-gradient(180deg,rgba(10,38,64,.94),rgba(8,31,53,.94));
  max-height:calc(100vh - 245px);overflow-y:auto
}
.app.profile-owner #obraOps .opsTabs::before{
  content:"ENTORNO DE OBRA";
  display:block;padding:3px 7px 8px;color:#7097a9;font-size:8px;
  font-weight:900;letter-spacing:.13em
}
.app.profile-owner #obraOps .opsTab{
  width:100%!important;text-align:left!important;
  border-radius:9px!important;padding:10px 11px!important;
  background:transparent!important;border-color:transparent!important;
  color:#adc7d4!important;box-shadow:none!important
}
.app.profile-owner #obraOps .opsTab:hover{
  background:rgba(35,211,255,.06)!important;color:#e7fbff!important
}
.app.profile-owner #obraOps .opsTab.active{
  background:linear-gradient(90deg,rgba(28,180,221,.19),rgba(28,180,221,.07))!important;
  border-color:rgba(54,219,255,.30)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 #27d9ff!important
}
.app.profile-owner #obraOps .opsPane{
  grid-column:2;grid-row:3;min-width:0;margin:0!important
}
.app.profile-owner #obraOps .opsPane.active{
  display:block!important;
  min-height:500px;padding:13px!important;
  border:1px solid rgba(90,220,248,.11);
  border-radius:15px;
  background:linear-gradient(180deg,rgba(9,35,59,.72),rgba(7,29,49,.65))
}
/* Se evita duplicar navegación en la cabecera del entorno operativo. */
.app.profile-owner #obraOps #backToObras{display:none!important}
.app.profile-owner #obraOps #originDocBtn{display:none!important}
.app.profile-owner #obraOps .opsActions{gap:7px;flex-wrap:wrap}
.app.profile-owner #obraOps .opsTitle small{font-size:9px!important}
.app.profile-owner #obraOps .opsTitle b{font-size:18px!important}

/* Primer ítem = Inicio, lenguaje consistente. */
.app.profile-owner #obraOps .opsTab[data-opstab="hoy"]::after{content:""}
@media(max-width:1100px){
  .app.profile-owner #obraOverview .gridSplit{grid-template-columns:250px minmax(0,1fr)!important}
  .ownerWorkTop5887{grid-template-columns:150px 1fr 1fr}
  .ownerWorkTop5887 .ownerMetric5887:last-child{grid-column:2/4}
  .ownerWorkBody5887,.ownerWorkBottom5887{grid-template-columns:1fr}
  .app.profile-owner #obraOps.active{grid-template-columns:200px minmax(0,1fr)!important}
}
@media(max-width:760px){
  .app.profile-owner #obraOverview .gridSplit{grid-template-columns:1fr!important}
  .ownerWorkHead5887{flex-direction:column}
  .ownerEnterOps5887{width:100%}
  .ownerWorkTop5887{grid-template-columns:1fr 1fr}
  .ownerProgressCard5887{grid-row:span 2}
  .ownerTask5887{grid-template-columns:1fr 70px}
  .ownerTask5887 .ownerBar5887,.ownerTaskPct5887{display:none}
  .app.profile-owner #obraOps.active{display:block!important}
  .app.profile-owner #obraOps .opsTabs{
    position:static;display:grid!important;grid-template-columns:1fr 1fr!important;
    max-height:none;margin-bottom:10px!important
  }
  .app.profile-owner #obraOps .opsPane.active{min-height:0}
}
