/* שַׁלְשֶׁלֶת view — ported from the master app */
.shal{max-width:960px;margin:0 auto}
.shal .era{direction:rtl;display:flex;align-items:center;gap:.6rem;color:var(--ink-soft);font-size:1rem;margin:1.5rem 0 .6rem}
.shal .era{justify-content:center;text-align:center}
.shal .era::before,.shal .era::after{content:"";flex:1;height:1px;background:var(--line)}
.shal .row{display:grid;gap:.6rem;direction:rtl;margin-top:.6rem}
.shal .era+.row{margin-top:0}
.shal .r1{grid-template-columns:1fr}.shal .r2{grid-template-columns:1fr 1fr}.shal .r3{grid-template-columns:1fr 1fr 1fr}.shal .r4{grid-template-columns:repeat(4,1fr)}
.shal .top3{grid-template-columns:1fr 1fr 1fr}
.shal .narrow{max-width:62%;margin-inline:auto}.shal .mid{max-width:80%;margin-inline:auto}
.shal .lnk{width:2px;height:18px;margin:0 auto;background:linear-gradient(#c99a55,#9b6e33)}
.shal .lnk+.row{margin-top:0}
.shal .st{background:radial-gradient(120% 90% at 25% 0%,rgba(167,206,203,.30),transparent 60%),linear-gradient(180deg,#0B5B59,#004645 68%,#003433);border:1.5px solid #A7CECB;border-radius:14px;color:#E7EFE9;box-shadow:0 3px 12px rgba(0,40,40,.28);padding:.7rem .8rem;text-align:center;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;min-width:0;font:inherit}
.shal .st:hover{border-color:#D6EBCE;filter:brightness(1.06)}
.shal .st:focus-visible,.shal .ch:focus-visible{outline:2px solid #D6EBCE;outline-offset:2px}
.shal .st h2{margin:0;font-weight:600;font-size:1.45rem;color:#E7D8C3;text-shadow:0 2px 0 #002826;line-height:1.15}
.shal .st.big h2{font-size:1.8rem}
.shal .st .en{font-size:.8rem;color:#D6EBCE;direction:ltr}
.shal .st .bar{height:5px;border-radius:3px;background:rgba(214,235,206,.25);overflow:hidden}.shal .st .bar i{display:block;height:100%;background:#D6EBCE}
.shal .chs{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem .35rem;direction:rtl}
.shal .ch{font:inherit;font-size:.9rem;padding:.1rem .55rem;border-radius:999px;border:1px solid rgba(214,235,206,.45);background:rgba(214,235,206,.08);color:#E7EFE9;cursor:pointer;white-space:nowrap}
.shal .ch:hover{background:rgba(214,235,206,.22)}
.shal .ch.x{cursor:default;opacity:.75}
.shal .st.sub{background:linear-gradient(180deg,#D6EBCE,#BFDDDE);border-color:#7FA9A6;color:#0E2D2C;box-shadow:none}
.shal .st.sub h2{color:#004645;text-shadow:none;font-size:1.25rem}.shal .st.sub .en{color:#2E6B67}
.shal .st.sub .ch{border-color:#7FA9A6;background:rgba(255,255,255,.45);color:#004645}
.shal .st.sub .bar{background:rgba(0,70,69,.18)}.shal .st.sub .bar i{background:#004645}
.shal .st.gap{background:transparent;border:1.5px dashed var(--line);box-shadow:none;color:var(--ink-soft)}
.shal .st.gap h2{color:var(--ink-soft);text-shadow:none;font-weight:500;font-size:1.3rem}
.shal .st.gap .en{color:var(--ink-soft)}
.shal .st.gap .ch{border-color:var(--line);background:transparent;color:var(--ink-soft)}
.shal .nk{display:flex;flex-direction:column;border-top:1px dashed #7FA9A6;margin:0 -.8rem -.7rem;padding:.35rem .4rem .45rem;gap:.1rem}
.shal .nk span{font-size:.85rem;color:#4A6663}
.shal .legend{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;font-size:.8rem;color:var(--ink-soft);margin:1.2rem 0 0;direction:ltr}
.shal .legend span::before{content:"";display:inline-block;width:.8rem;height:.8rem;border-radius:3px;margin-right:.3rem;vertical-align:-1px}
.shal .lg1::before{background:#004645}.shal .lg2::before{background:#BFDDDE}.shal .lg3::before{border:1.5px dashed var(--ink-soft)}
.shal .gapnote{direction:ltr;text-align:center;font-size:.85rem;color:var(--ink-soft);margin:.4rem 0 0;min-height:1.2em}
 .shal .top3{grid-template-columns:1fr 1fr}.shal .top3>:first-child{grid-column:1/-1}
 .shal .r4{grid-template-columns:1fr 1fr}.shal .narrow,.shal .mid{max-width:none}
 .shal .st h2{font-size:1.2rem}.shal .st.big h2{font-size:1.45rem}.shal .ch{font-size:.82rem}
 .shal .r3 .st h2{font-size:1.05rem}.shal .r3 .st{padding:.6rem .4rem}
.v-tiles .shal{display:none}
.shal .row.km{align-items:stretch}
.shal .nk .nkl{cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--done) 45%,transparent);text-underline-offset:3px}
