﻿.v9-period-page{
  display:grid;
  gap:16px;
}

.v9-period-loading{
  padding:48px;
  text-align:center;
  color:#6f8397;
}

.v9-period-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.v9-period-head h1{
  margin:4px 0 6px;
  font-size:26px;
  color:#143451;
}

.v9-period-head p{
  margin:0;
  color:#698096;
}

.v9-period-kicker{
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
  color:#9c6b17;
}

.v9-period-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.v9-period-kpi{
  min-height:105px;
  padding:16px 18px;
  border:1px solid var(--v9-line,#dce5ed);
  border-radius:13px;
  background:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.v9-period-kpi small{
  font-size:10px;
  font-weight:900;
  color:#74889a;
}

.v9-period-kpi strong{
  margin-top:7px;
  font-size:20px;
  color:#133956;
}

.v9-period-kpi span{
  margin-top:5px;
  font-size:11px;
  color:#8091a1;
}

.v9-period-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.7fr);
  gap:14px;
}

.v9-period-label{
  display:grid;
  gap:7px;
}

.v9-period-label span{
  font-size:12px;
  font-weight:800;
  color:#526d84;
}

.v9-period-label input{
  height:40px;
  max-width:260px;
  padding:0 11px;
  border:1px solid #d6e0e8;
  border-radius:8px;
  background:#fff;
}

.v9-period-actions{
  display:flex;
  gap:8px;
  margin-top:14px;
  margin-bottom:18px;
  flex-wrap:wrap;
}

.v9-period-checklist{
  display:grid;
  gap:8px;
}

.v9-period-check{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border:1px solid #e3eaf0;
  border-radius:9px;
  background:#fbfcfd;
}

.v9-period-check.ok{
  border-left:4px solid #31a36b;
}

.v9-period-check.warn{
  border-left:4px solid #d8a029;
}

.v9-period-check-icon{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:50%;
  background:#eef3f7;
  font-weight:900;
}

.v9-period-check div{
  display:grid;
  gap:2px;
}

.v9-period-check small{
  color:#7e91a2;
}

.v9-period-empty,
.v9-period-error{
  padding:18px;
  text-align:center;
  border:1px dashed #d9e2e9;
  border-radius:10px;
  color:#72879a;
}

.v9-period-error{
  color:#a34444;
}

.v9-period-info{
  color:#637b90;
  line-height:1.55;
}

.v9-period-info p:first-child{
  margin-top:0;
}

.v9-period-info p:last-child{
  margin-bottom:0;
}

.v9-period-status{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.v9-period-status > div{
  display:grid;
  gap:5px;
  padding:12px;
  border:1px solid #e5ebf0;
  border-radius:9px;
}

.v9-period-status span{
  color:#71869a;
  font-size:11px;
}

.v9-period-status strong{
  color:#173b58;
}

@media(max-width:1000px){
  .v9-period-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .v9-period-grid{
    grid-template-columns:1fr;
  }

  .v9-period-status{
    grid-template-columns:1fr;
  }
}

@media(max-width:650px){
  .v9-period-head{
    display:grid;
  }

  .v9-period-kpis{
    grid-template-columns:1fr;
  }
}
