.h09-costs { min-width:0; margin:28px 0; padding:clamp(16px,3vw,28px); border:1px solid var(--line); border-radius:20px; background:#f6f9fb; overflow-wrap:anywhere; }
.h09-costs h3,.h09-costs h4,.h09-costs h5 { color:var(--navy); }
.h09-costs h3 { font-size:1.45rem; margin:0 0 14px; }
.h09-costs h4 { margin:0 0 14px; }
.h09-costs h5 { margin:0 0 12px; font-size:1rem; }
.h09-costs p { line-height:1.6; }
.h09-cost-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.h09-cost-card { min-width:0; padding:20px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.h09-cost-card[hidden] { display:none; }
.h09-costs .field { margin-bottom:14px; min-width:0; }
.h09-costs input,.h09-costs select { width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
.h09-costs .h09-cost-confirm { display:flex; align-items:flex-start; gap:10px; line-height:1.5; margin:16px 0; }
.h09-cost-confirm input { flex:0 0 22px; width:22px; height:22px; margin-top:3px; }
.h09-cost-row-info { color:var(--muted); font-size:.9rem; }
.h09-cost-hero { margin:24px 0; padding:24px; border-radius:18px; color:#fff; background:linear-gradient(120deg,var(--navy),var(--navy-light)); }
.h09-cost-hero p { color:#e0effa; }
.h09-cost-total { font-size:clamp(1.8rem,5vw,3.5rem); font-weight:850; line-height:1.2; margin:12px 0; font-variant-numeric:tabular-nums; }
.h09-cost-result-row { padding:18px; border:1px solid var(--line); border-radius:14px; background:white; min-width:0; }
.h09-cost-result-row dl { margin:0; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:8px 14px; }
.h09-cost-result-row dt,.h09-cost-result-row dd { margin:0; min-width:0; }
.h09-cost-result-row dd { font-weight:650; }
.h09-costs [data-cost-status][data-state=partial] { color:#8f2f27; }
.h09-costs [data-cost-status][data-state=complete] { color:#126344; }
.h09-cost-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.h09-cost-actions button { white-space:normal; }
.h09-costs .shk-output-action-bar { width:100%; margin:18px 0; }
@media(max-width:760px) { .h09-cost-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:420px) { .h09-cost-result-row dl { grid-template-columns:minmax(0,1fr); gap:4px; } .h09-cost-result-row dd { margin-bottom:10px; } .h09-cost-actions { flex-direction:column; } }
