/* kelim-tool.css — עיצוב משותף לכלים שמבוססים על מקורות (brit, sheva-brachot, yahrzeit) */
:root{
  --bg:#1c1a2b; --surface:#252239; --surface-2:#2d2947; --line:#3a3557;
  --ink:#ece8f4; --ink-soft:#b7aed2; --gold:#d9b36c; --gold-soft:#b8975a; --radius:14px;
  --green:#7bd389; --amber:#e0c060; --grey:#9a93b3;
  --serif:'Frank Ruhl Libre', 'David Libre', serif;
  --sans:'Assistant', 'Heebo', sans-serif;
}
*{box-sizing:border-box}
body{margin:0; background:var(--bg); color:var(--ink); font-family:var(--sans); font-weight:300; font-size:1.04rem; line-height:1.8; overflow-x:hidden}
a{color:var(--gold); text-decoration:none}
a:hover{text-decoration:underline}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--gold); outline-offset:2px}
strong,b{font-weight:600; color:var(--ink)}
.hero{max-width:860px; margin:0 auto; padding:3rem 1rem .6rem; text-align:center}
.hero .crumb{font-size:.9rem; margin-bottom:.4rem}
.hero h1{font-family:var(--serif); font-weight:900; margin:.2rem 0 .5rem; font-size:clamp(2rem,6vw,3rem)}
.hero .sub{color:var(--ink-soft); margin:0 auto; max-width:38em}
.wrap{max-width:860px; margin:0 auto; padding:0 1rem 3rem}
.form{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1rem 1.1rem; margin-top:1.2rem; display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:.8rem 1rem}
.form label{display:block; font-size:.88rem; color:var(--ink-soft); margin-bottom:.2rem}
.form input,.form select{width:100%; font:inherit; color:var(--ink); background:var(--surface-2); border:1px solid var(--line); border-radius:10px; padding:.45rem .6rem; min-height:44px}
.notice{margin:1rem 0 0; padding:.8rem 1.1rem; background:var(--surface); border-inline-start:3px solid var(--gold); border-radius:var(--radius); color:var(--ink-soft); font-size:.93rem}
.err{color:#e08f8f; margin-top:1rem}
.card{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1rem 1.2rem; margin:1.1rem 0}
.card h2{font-family:var(--serif); color:var(--gold); font-size:1.35rem; margin:0 0 .2rem; line-height:1.4}
.card .when{font-size:1.06rem; color:var(--ink); margin:.4rem 0}
.card h3{font-size:1rem; color:var(--gold-soft); margin:1rem 0 .3rem; font-weight:600}
.card p{margin:.35rem 0}
.card ul{margin:.3rem 0; padding-inline-start:1.2rem}
.card li{margin:.3rem 0}
.card table{width:100%; border-collapse:collapse; font-size:.95rem; margin:.4rem 0}
.card th,.card td{text-align:right; padding:.4rem .5rem; border-bottom:1px solid var(--line); vertical-align:top}
.card th{color:var(--gold-soft); font-weight:600}
.tbl{overflow-x:auto}
.q{color:var(--ink-soft)}
.src{font-size:.85rem}
.mk-ok{color:var(--green); font-weight:600}
.mk-partial{color:var(--amber); border-bottom:1px dotted var(--amber)}
.mk-unv{color:var(--grey); border-bottom:1px dashed var(--grey)}
.calc{color:var(--ink-soft); font-size:.88rem}
.warn{color:var(--amber)}
.legend{font-size:.85rem; color:var(--ink-soft); margin:.8rem 0 0}
.sources{margin-top:2.4rem}
.sources h2{font-family:var(--serif); color:var(--gold); font-size:1.3rem}
.sources li{margin:.45rem 0; font-size:.93rem; color:var(--ink-soft)}
footer{border-top:1px solid var(--line); padding:2rem 1rem 3rem; text-align:center; color:var(--ink-soft); font-size:.92rem}
