/* ===== 全体構造 ===== */
.exhaust-card {
    width:100%;
    max-width:1000px;
    margin:20px auto;
    background:#fff;
    font-family:"Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color:#444;
    padding:0 clamp(10px,2vw,20px);
}

.exhaust-scroll{
    width:100%;
    -webkit-overflow-scrolling: touch;
}

@media (max-width:768px){

    .exhaust-scroll{
        overflow-x:auto;
    }

    .exhaust-card{
        min-width:850px;
    }
    
    .power-label {
    flex: 0 0 20% !important;

}

}

/* ===== ヘッダー ===== */
.exhaust-header {
    background:linear-gradient(180deg,#5EA292 0%,#8BC09E 100%);
    color:#fff;
    padding:clamp(12px,2vw,20px);
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.exhaust-header .title-group{
    display:flex;
    align-items:center;
    gap:6px;
}

.exhaust-header .title{
    font-size:clamp(18px,2.5vw,34px);
    font-weight:700;
    font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
}

.exhaust-header .plant-info{
    text-align:right;
    line-height:1.2;
}

.exhaust-header .plant-name{
    display:block;
    font-size:clamp(14px,2.5vw,24px);
    letter-spacing:0.05em;
    text-align: center
}

.exhaust-header .plant-info span:not(.plant-name){
    font-size:clamp(12px,0.8vw,12px);
    opacity:0.9;
    display:block;
    text-align:center;
}

/* ===== カラムヘッダー ===== */

.header-row{
    display:grid;
    grid-template-columns: minmax(120px,22%) 1fr 1fr 1fr;
    padding:clamp(8px,1.5vw,15px) 0;
    align-items:center;
    border-bottom:1.5px solid #d8e5e0;
}

.furnace-col{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:clamp(4px,1vw,10px);
}

.furnace-box{
    border:1.5px solid #4D8C81;
    color:#4D8C81;
    padding:3px clamp(8px,1.2vw,18px);
    font-size:clamp(18px,1.2vw,18px);
    font-weight:bold;
}

.furnace-box.base{
    background:#4D8C81;
    color:#fff;
}

.status-text{
    font-size:clamp(18px,1.2vw,16px);
    font-weight:bold;
    color:#4D8C81;
}

/* ===== データ行 ===== */

.data-row{
    display:grid;
    grid-template-columns: minmax(120px,22%) 1fr 1fr 1fr;
    border-bottom:1.5px solid #529991;
}

.row-label{
    background:#4D8C81;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:clamp(16px,1.2vw,18px);
    font-weight:bold;
    margin:clamp(6px,1vw,12px);
    border-radius:4px;
    min-height:40px;
}

.cell{
    padding:clamp(6px,1vw,10px);
    border-left:1.5px solid #d8e5e0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
}

.val-container{
    display:inline-flex;
    align-items:baseline;
    justify-content:center;
}

.v-num{
    font-size:clamp(18px,2vw,32px);
    font-weight:500;
    color:#555;
    line-height:1;
}

.v-unit{
    font-size:clamp(14px,1vw,16px);
    color:#54968C;
    font-weight:bold;
    margin-left:6px;
}

.cell-base .v-num,
.cell-base .v-unit{
    color:#5c9c8b;
}

.v-stop{
    font-size:clamp(20px,2vw,34px);
    color:#aaa;
    letter-spacing:2px;
}

.v-adjust{
    font-size:clamp(18px,2vw,30px);
}

.date-text{
    font-size:clamp(14px,0.9vw,14px);
    color:#999;
    font-weight:700;
}

.date-unit  { color: #54968C;font-weight: bold;}

/* ===== 蒸気タービン ===== */

.power-panel{
    display:flex;
    align-items:center;
    border-bottom:1.5px solid #529991;
    padding:0
}

.power-label{
background: #dec161;
    color: #fff;
    margin: clamp(6px, 1vw, 11px);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    font-size: clamp(16px, 1.1vw, 18px);
    font-weight: bold;
    flex: 0 0 19.5%;
    padding: 1rem 0;
    min-width: 120px;
}

.power-flex{
    flex:1;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:0 clamp(10px,2vw,20px);
}

.power-item{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:clamp(140px,20vw,270px);
}

.power-item .sub{
    color:#dec161;
    font-size:clamp(12px,1.1vw,18px);
    font-weight:bold;
    white-space:nowrap;
    align-self:flex-start;
}

.power-val-group{
    display:flex;
    align-items:baseline;
    align-self:flex-end;
}

.power-item .val{
    font-size:clamp(18px,2vw,32px);
    font-weight:500;
    color:#555;
}

.power-item .unit{
    font-size:clamp(12px,1.2vw,20px);
    color:#dec161;
    font-weight:bold;
    margin-left:8px;
}

.slash{
    font-size:clamp(30px,4vw,60px);
    color:#dec161;
    font-weight:100;
    margin:10px clamp(10px,3vw,40px) 0;
    transform:skewX(-15deg);
}

.update-footer{
    padding: 10px 0;
    font-size: clamp(16px, 0.9vw, 14px);
}


