/* HydroStress dans WahaTech (pages /stress-hydrique/) */
.hs-beta { display: inline-block; margin-inline-start: .4rem; padding: .1rem .55rem; border-radius: 999px; background: var(--al-sun); color: var(--al-forest); font-size: .7rem; letter-spacing: .08em; vertical-align: middle; }
.hs-beta-note { display: flex; gap: .75rem; align-items: flex-start; background: #fff8e8; border: 1px solid #f3d9a4; color: #7a4a06; border-radius: var(--al-radius-sm); padding: .85rem 1.1rem; margin-bottom: 1.5rem; font-size: .95rem; }
.hs-beta-note svg { flex: none; margin-top: .2rem; }

.hs-map-card { padding: 1rem; }
.hs-map-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-bottom: .75rem; }
.hs-zone-select { width: auto; min-width: 12rem; border-radius: 999px; }
.hs-map-status { color: var(--al-muted); font-size: .88rem; }
.hs-map { height: min(62vh, 560px); cursor: crosshair; }
.hs-map-toolbar .btn-sm { padding: .3rem .8rem; font-size: .82rem; }

.hs-form { padding: 1.5rem; }
.hs-parcel-info { background: var(--al-sand); border-radius: var(--al-radius-sm); padding: .6rem .9rem; font-size: .92rem; color: var(--al-forest); }
.hs-parcel-info.is-ready { background: rgba(140, 198, 63, .18); font-weight: 600; }
.hs-loading { display: none; align-items: center; gap: .6rem; margin-top: .9rem; color: var(--al-muted); font-size: .9rem; }
.hs-loading.htmx-request { display: flex; }
.hs-form button[disabled] { opacity: .65; }

.hs-error { display: flex; gap: .6rem; align-items: center; margin-top: 1.5rem; padding: 1rem 1.2rem; border-radius: var(--al-radius-sm); background: #fdecea; color: #8a1c12; border: 1px solid #f5c6c0; }
.hs-warn { display: flex; gap: .6rem; align-items: flex-start; margin-bottom: 1rem; padding: .7rem 1rem; border-radius: var(--al-radius-sm); background: #fff8e8; color: #7a4a06; font-size: .92rem; }
.hs-warn svg { flex: none; margin-top: .15rem; }

.hs-report { margin-top: 2rem; background: #fff; border: 1px solid var(--al-line); border-radius: var(--al-radius); padding: 2rem; box-shadow: var(--al-shadow); }
.hs-report-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; align-items: flex-end; margin-bottom: 1.5rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--al-line); }
.hs-report-title { font-size: clamp(1.4rem, 2.6vw, 1.9rem); color: var(--al-forest); margin-bottom: .3rem; }
.hs-h3 { font-family: var(--al-font); font-size: .82rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--al-muted); margin-bottom: .8rem; }

.hs-status { display: flex; gap: 1rem; align-items: center; border-radius: var(--al-radius); padding: 1.2rem 1.4rem; border-inline-start: 8px solid; }
.hs-status-ico { width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; flex: none; background: #fff; }
.hs-status-label { display: block; font-size: .8rem; color: var(--al-muted); font-weight: 600; }
.hs-status-value { display: block; font-family: var(--al-display); font-size: 2rem; line-height: 1.1; }
.hs-status-conf { font-size: .88rem; color: var(--al-muted); }
.hs-status-normal { background: #ecf7ee; border-color: #2f8f3a; } .hs-status-normal .hs-status-value, .hs-status-normal .hs-status-ico { color: #2f8f3a; }
.hs-status-moderate { background: #fff5e6; border-color: #e08a00; } .hs-status-moderate .hs-status-value, .hs-status-moderate .hs-status-ico { color: #c06f00; }
.hs-status-severe { background: #fdecea; border-color: #d93025; } .hs-status-severe .hs-status-value, .hs-status-severe .hs-status-ico { color: #c5221f; }
.hs-status-text { margin: .9rem 0 1.4rem; }

.hs-probs { display: grid; gap: .55rem; }
.hs-prob { display: grid; grid-template-columns: 5.5rem 1fr 3.2rem; gap: .7rem; align-items: center; font-size: .92rem; }
.hs-prob svg { width: 100%; height: 10px; }
.hs-prob b { text-align: end; }
.hs-prob-bg { fill: #ece7dc; }
.hs-prob-normal { fill: #2f8f3a; } .hs-prob-moderate { fill: #e08a00; } .hs-prob-severe { fill: #d93025; }

.hs-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: .75rem; }
.hs-kpi { background: var(--al-cream); border: 1px solid var(--al-line); border-radius: var(--al-radius-sm); padding: .8rem .95rem; }
.hs-kpi span { display: block; font-size: .78rem; font-weight: 700; color: var(--al-muted); letter-spacing: .04em; }
.hs-kpi b { display: block; font-size: 1.35rem; color: var(--al-forest); }
.hs-kpi small { color: var(--al-muted); font-size: .76rem; line-height: 1.3; display: block; }
@media (max-width: 575.98px) { .hs-kpis { grid-template-columns: repeat(2, 1fr); } .hs-report { padding: 1.25rem; } }

.hs-chart { width: 100%; height: auto; display: block; direction: ltr; }
.hs-axis { stroke: var(--al-line); stroke-width: 1; }
.hs-bar { fill: #5fa8d3; opacity: .85; }
.hs-line-max { fill: none; stroke: #e07b1f; stroke-width: 2; }
.hs-line-min { fill: none; stroke: #17496e; stroke-width: 2; stroke-dasharray: 4 3; }
.hs-tick { font-size: 10px; fill: var(--al-muted); font-family: var(--al-font); }
.hs-legend { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .5rem; font-size: .82rem; color: var(--al-muted); margin-top: .3rem; }
.hs-legend span { display: inline-block; width: 14px; height: 4px; border-radius: 2px; margin-inline-start: .5rem; }
.hs-lg-rain { background: #5fa8d3; height: 10px !important; } .hs-lg-max { background: #e07b1f; } .hs-lg-min { background: #17496e; }

.hs-priority { display: inline-block; margin-inline-start: .4rem; padding: .05rem .5rem; border-radius: 999px; font-size: .72rem; background: var(--al-sand); color: var(--al-forest); }
.hs-priority-high, .hs-priority-urgent { background: #fdecea; color: #c5221f; }
.hs-priority-medium { background: #fff5e6; color: #c06f00; }
.hs-actions { padding-inline-start: 1.1rem; }
.hs-actions li { margin-bottom: .35rem; }
.hs-table { font-size: .9rem; }
.hs-tag { display: inline-block; padding: .05rem .55rem; border-radius: 999px; font-size: .78rem; font-weight: 600; background: var(--al-sand); }
.hs-tag-healthy { background: #ecf7ee; color: #2f8f3a; } .hs-tag-low, .hs-tag-high { background: #fff5e6; color: #c06f00; }

.hs-recent { list-style: none; padding: 0; margin: 0; }
.hs-recent li a { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; padding: .55rem 0; border-bottom: 1px solid var(--al-line); color: var(--al-ink); text-decoration: none; }
.hs-recent li:last-child a { border-bottom: 0; }
.hs-recent li a:hover strong { color: var(--al-leaf); }
.hs-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; margin-inline-end: .2rem; }
.hs-dot-0 { background: #2f8f3a; } .hs-dot-1 { background: #e08a00; } .hs-dot-2 { background: #d93025; }

.hs-how { position: relative; padding: 1.5rem; }
.hs-how h3 { font-size: 1.2rem; color: var(--al-forest); }
.hs-how p { color: var(--al-muted); margin: 0; }
.hs-step { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--al-lime); color: var(--al-forest); font-weight: 800; margin-bottom: .6rem; }

.hs-vertex { cursor: pointer; }
@media print {
  .al-nav, .al-footer, .al-demo-banner, .hs-map-card, .hs-form, .hs-recent, .hs-how, .al-page-head, .hs-beta-note { display: none !important; }
  .hs-report { box-shadow: none; border: 0; padding: 0; }
}
