/* Shared observed sounding charts v2 (VremePrognoza + VojvodinaMeteo, byte-identical copies).
   Defaults use :where() so each site can override tokens; colours never live in the SVG markup. */
:where(.snd-diagram,.snd-chart-box){--snd-card:#fff;--snd-text:#172a43;--snd-muted:#526780;--snd-line:#d6e0ec;--snd-accent:#1d63c9;--snd-pressed-bg:#1d63c9;--snd-pressed-fg:#fff;
 --snd-t:#dc2626;--snd-td:#15803d;--snd-tw:#0284c7;--snd-parcel:#c2410c;--snd-cape:rgba(239,111,85,.22);--snd-rh:#2563eb;--snd-wind:#6d28d9;
 --snd-inv:rgba(245,158,11,.16);--snd-dgz:rgba(139,92,246,.13);--snd-moist:rgba(37,99,235,.15);--snd-lcl:#b45309;--snd-lfc:#9333ea;--snd-el:#db2777;--snd-ccl:#7c3aed;
 --snd-km-0:#344a9a;--snd-km-1:#2863ac;--snd-km-2:#187e9e;--snd-km-3:#008c84;--snd-km-4:#138a59;--snd-km-5:#34852f;--snd-km-6:#618524;--snd-km-7:#8a7a18;--snd-km-8:#aa7317;--snd-km-9:#b16412;--snd-km-10:#b5501d;--snd-km-11:#ad3f30}
[data-theme="dark"] :where(.snd-diagram,.snd-chart-box){--snd-card:#0f1b2e;--snd-text:#e2e8f0;--snd-muted:#a9b9cd;--snd-line:#33445c;--snd-accent:#7bb8ff;--snd-pressed-bg:#7bb8ff;--snd-pressed-fg:#071423;
 --snd-t:#ff7b7b;--snd-td:#4ade80;--snd-tw:#7dd3fc;--snd-parcel:#fdba74;--snd-cape:rgba(255,128,104,.24);--snd-rh:#7cb4ff;--snd-wind:#c4b5fd;
 --snd-inv:rgba(251,191,36,.15);--snd-dgz:rgba(167,139,250,.17);--snd-moist:rgba(96,165,250,.18);--snd-lcl:#fbbf24;--snd-lfc:#d8b4fe;--snd-el:#f9a8d4;--snd-ccl:#c4b5fd;
 --snd-km-0:#9ca8ff;--snd-km-1:#7bbcff;--snd-km-2:#62c9f0;--snd-km-3:#53d5d0;--snd-km-4:#65dcae;--snd-km-5:#8bdd82;--snd-km-6:#b9dc69;--snd-km-7:#ddd766;--snd-km-8:#f2d26e;--snd-km-9:#fac277;--snd-km-10:#faae7c;--snd-km-11:#fc9d8d}

/* Charts */
.snd-chart{display:block;width:100%;height:auto;max-width:100%;touch-action:pan-y;-webkit-user-select:none;user-select:none;overflow:visible}
.snd-chart:focus-visible{outline:3px solid var(--snd-accent);outline-offset:3px;border-radius:6px}
.snd-chart text{font-size:12px;fill:var(--snd-muted);font-family:inherit;font-variant-numeric:tabular-nums}
.snd-chart .axis-label{fill:var(--snd-text);font-weight:600}
.snd-chart .axis-note{font-size:12px}
.snd-chart .snd-plot{fill:var(--snd-card);stroke:var(--snd-line)}
.snd-chart .snd-grid{stroke:var(--snd-line);stroke-width:.8;fill:none}
.snd-chart .snd-zero{stroke:var(--snd-accent);stroke-width:1.2;fill:none;stroke-dasharray:5 3}
.snd-chart .snd-threshold{stroke:var(--snd-muted);stroke-width:.9;stroke-dasharray:3 3}
.snd-chart .snd-aux{fill:none;stroke:var(--snd-muted);stroke-width:.7;opacity:.26}
.snd-chart .snd-aux--dry{stroke-dasharray:3 3}
.snd-chart .snd-aux--moist{stroke-dasharray:2 4}
.snd-chart .snd-aux--mixing{opacity:.2;stroke-dasharray:1 4}
.snd-chart .snd-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.snd-chart .snd-line--t{stroke:var(--snd-t)}
.snd-chart .snd-line--td{stroke:var(--snd-td)}
.snd-chart .snd-line--tw{stroke:var(--snd-tw);stroke-width:1.3}
.snd-chart .snd-line--parcel{stroke:var(--snd-parcel);stroke-width:1.8;stroke-dasharray:6 4}
.snd-chart .snd-line--rh{stroke:var(--snd-rh)}
.snd-chart .snd-line--wind{stroke:var(--snd-wind)}
.snd-chart .snd-line--trend{stroke:var(--snd-accent);stroke-width:2.2}
.snd-chart .snd-prev{fill:none;stroke-width:1.6;stroke-dasharray:5 4;opacity:.62}
.snd-chart .snd-prev--t{stroke:var(--snd-t)}
.snd-chart .snd-prev--td{stroke:var(--snd-td)}
.snd-chart .snd-prev--rh{stroke:var(--snd-rh)}
.snd-chart .snd-prev--hodo{stroke:var(--snd-muted);stroke-width:1.8}
.snd-chart .snd-cape{fill:var(--snd-cape)}
.snd-chart .snd-band--inversion{fill:var(--snd-inv)}
.snd-chart .snd-band--dgz{fill:var(--snd-dgz)}
.snd-chart .snd-band--moist{fill:var(--snd-moist)}
.snd-chart .snd-level{stroke-width:1.1;stroke-dasharray:4 4;fill:none}
.snd-chart .snd-level--lcl{stroke:var(--snd-lcl)}.snd-chart text.snd-level--lcl{fill:var(--snd-lcl)}
.snd-chart .snd-level--lfc{stroke:var(--snd-lfc)}.snd-chart text.snd-level--lfc{fill:var(--snd-lfc)}
.snd-chart .snd-level--el{stroke:var(--snd-el)}.snd-chart text.snd-level--el{fill:var(--snd-el)}
.snd-chart .snd-level--ccl{stroke:var(--snd-ccl)}.snd-chart text.snd-level--ccl{fill:var(--snd-ccl)}
.snd-chart .snd-level-label{font-weight:600;paint-order:stroke;stroke:var(--snd-card);stroke-width:3px}
.snd-chart .snd-mark--zero{fill:var(--snd-t);font-weight:600;paint-order:stroke;stroke:var(--snd-card);stroke-width:3px}
.snd-chart .snd-barb{fill:var(--snd-text);stroke:var(--snd-text);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.snd-chart .snd-crosshair{stroke:var(--snd-accent);stroke-width:1.2;stroke-dasharray:4 4}
.snd-chart .snd-selected{fill:var(--snd-card);stroke:var(--snd-accent);stroke-width:2}
.snd-chart .snd-point{fill:var(--snd-accent);cursor:pointer}
.snd-chart .snd-hodo{fill:none;stroke-width:2.4;stroke-linecap:round}
.snd-chart .snd-storm{fill:none;stroke-width:2}
.snd-chart .snd-storm--rm{stroke:var(--snd-parcel)}
.snd-chart .snd-storm--lm{stroke:var(--snd-lfc)}
.snd-km-0{stroke:var(--snd-km-0);fill:var(--snd-km-0)}.snd-km-1{stroke:var(--snd-km-1);fill:var(--snd-km-1)}.snd-km-2{stroke:var(--snd-km-2);fill:var(--snd-km-2)}
.snd-km-3{stroke:var(--snd-km-3);fill:var(--snd-km-3)}.snd-km-4{stroke:var(--snd-km-4);fill:var(--snd-km-4)}.snd-km-5{stroke:var(--snd-km-5);fill:var(--snd-km-5)}
.snd-km-6{stroke:var(--snd-km-6);fill:var(--snd-km-6)}.snd-km-7{stroke:var(--snd-km-7);fill:var(--snd-km-7)}.snd-km-8{stroke:var(--snd-km-8);fill:var(--snd-km-8)}
.snd-km-9{stroke:var(--snd-km-9);fill:var(--snd-km-9)}.snd-km-10{stroke:var(--snd-km-10);fill:var(--snd-km-10)}.snd-km-11{stroke:var(--snd-km-11);fill:var(--snd-km-11)}
.snd-chart .snd-hodo.snd-km-0,.snd-chart .snd-hodo[class*="snd-km-"]{fill:none}

/* Controls shared with the VojvodinaMeteo adapter (kept from v1, colours from tokens) */
.snd-diagram{color:var(--snd-text);background:var(--snd-card);padding:12px;border-radius:12px}
.snd-diagram [hidden],.snd-chart-box [hidden]{display:none}
.snd-diagram button,.snd-diagram-choice button{cursor:pointer;min-height:40px;border:1px solid var(--snd-line);border-radius:8px;padding:8px 12px;color:inherit;background:transparent;font:inherit;font-size:14px}
.snd-diagram button[aria-pressed="true"],.snd-diagram-choice button[aria-pressed="true"]{background:var(--snd-pressed-bg);color:var(--snd-pressed-fg);border-color:var(--snd-pressed-bg)}
.snd-diagram button:disabled{opacity:.5;cursor:not-allowed}
.snd-diagram button:focus-visible,.snd-diagram input:focus-visible,.snd-diagram-choice button:focus-visible{outline:3px solid var(--snd-accent);outline-offset:3px}
.snd-diagram-toolbar,.snd-diagram-choice,.snd-diagram-curves{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}
.snd-diagram-note{font-size:14px;color:var(--snd-muted);margin:10px 0;line-height:1.55}
.snd-diagram-curves label{display:flex;gap:6px;align-items:center;font-size:14px;min-height:32px}
.snd-diagram-readout{font-size:14px;border:1px solid var(--snd-line);border-radius:8px;padding:10px;line-height:1.8}
.snd-diagram-metrics{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;padding:10px 0}
.snd-diagram-metrics strong{display:block;font-size:18px;font-variant-numeric:tabular-nums}
.snd-diagram img,.snd-chart-box img{width:100%;height:auto;display:block}
.snd-diagram:fullscreen,.snd-chart-box:fullscreen{overflow:auto;border-radius:0;max-width:none;padding:20px;background:var(--snd-card)}
.snd-diagram:fullscreen img,.snd-chart-box:fullscreen img{width:auto;max-width:100%;max-height:90vh;margin:auto;object-fit:contain}
.snd-diagram [data-exit-fullscreen]{display:none}.snd-diagram:fullscreen [data-exit-fullscreen]{display:inline-flex}
@media(max-width:600px){.snd-diagram{padding:8px}.snd-diagram-choice button{flex:1}.snd-diagram button{padding:8px}.snd-diagram-readout{font-size:13px}}

