/* V30 — stage completion + water calculator + survey UX */
:root{--ok:#27935b;--ok-bg:#edf8f1;--ok-line:#bfe3cd}
.tab{position:relative!important;overflow:hidden!important;isolation:isolate}.tab>*{position:relative;z-index:2}.tab:after{content:"";position:absolute;right:0;bottom:0;height:5px;width:var(--done,0%);background:var(--ok);z-index:3;transition:width .28s ease}.tab.tab-done{background:linear-gradient(0deg,var(--ok-bg),#fff)!important;border-color:var(--ok-line)!important;color:#176d43!important}.tab.tab-done:before{content:"✓";position:absolute;left:7px;top:6px;width:17px;height:17px;border-radius:50%;background:var(--ok);color:#fff;display:grid;place-items:center;font-size:8px;z-index:4}.tab.tab-partial{border-color:#d6e8dd!important}.workflow .progress>div{background:linear-gradient(90deg,var(--ok),#61b986)!important}
.stage-mini-status{display:flex;align-items:center;gap:5px;margin-top:3px;font-size:6.8px;color:#777}.stage-mini-status i{display:block;width:6px;height:6px;border-radius:50%;background:#d3d7d3}.stage-mini-status.partial i{background:#62b986}.stage-mini-status.done{color:#197046}.stage-mini-status.done i{background:var(--ok)}

.water-run{display:none;margin:9px 0;padding:10px;border:1px solid #dce8e0;border-radius:11px;background:#f8fcf9}.water-run.on{display:block}.water-run.good{background:#eff9f3;border-color:#cae8d5}.water-run.error{background:#fff6f3;border-color:#efd4cc}.water-run b{display:block;color:#1b2845;font-size:9px}.water-run p{margin:3px 0 0;font-size:7.6px;color:#6c7570;line-height:1.8}.water-run-bar{height:6px;background:#e8ede9;border-radius:99px;overflow:hidden;margin-top:7px}.water-run-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#27935b,#75c49a);transition:width .25s}
#calcWaterBtn.is-running{opacity:.72;pointer-events:none}
#waterMetrics .metric{background:#f7fcf9!important;border-color:#d8ebe0!important}
#waterCalcStatus.calc-ok{background:#eff9f3!important;border-color:#cde8d7!important;color:#176d43!important}

.survey-flow{margin:9px 0;padding:10px;border:1px solid #e7e7e2;border-radius:11px;background:#fbfbf9}.survey-flow-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.survey-flow-title b{color:#1b2845;font-size:9px}.survey-flow-title span{font-size:7px;color:#8a8f93}.survey-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.survey-step{display:flex;align-items:flex-start;gap:6px;padding:7px;border:1px solid #ecece7;border-radius:9px;background:#fff}.survey-step i{width:20px;height:20px;flex:0 0 auto;border-radius:7px;background:#fff1dc;color:#a45f09;display:grid;place-items:center;font-style:normal;font-size:8px;font-weight:700}.survey-step b{display:block;font-size:7.5px;color:#4f555a}.survey-step small{display:block;font-size:6.7px;color:#8d9296;line-height:1.55;margin-top:1px}
.survey-toolbar{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:6px;margin-top:8px}.survey-toolbar button{min-height:40px}.survey-toolbar .finish{background:#27935b;border-color:#27935b;color:#fff}.survey-live{margin-top:7px;padding:7px 9px;border-radius:9px;background:#f5f8f6;border:1px solid #e0e9e3;font-size:7.6px;color:#5e6862}.survey-live.good{background:#eef9f2;border-color:#cce8d6;color:#176d43}

.pipe-flow{margin:9px 0;padding:10px;border:1px solid #e7e7e2;border-radius:11px;background:#fbfbf9}.pipe-live{display:flex;justify-content:space-between;gap:8px;margin-top:7px;padding:7px 9px;border-radius:8px;background:#f4f7f5;font-size:7.5px;color:#68716b}.pipe-live b{color:#1b2845}.pipe-live.active{background:#fff8ec;border-color:#f1d29f}

.num-feedback.show.good:before{content:"✓ ";font-weight:700}
@media(max-width:600px){
 .survey-steps{grid-template-columns:1fr}
 .survey-toolbar{grid-template-columns:1fr 1fr}
 .survey-toolbar .finish{grid-column:1/-1}
 .tab:after{height:4px}
}