/* ===== theme layer (shared). Loaded after styles.css only when content/site.json has "theme".
   Each themes/<name>.css sets the variables below and adds its own signature details. ===== */
:root{--teal:var(--c1);--orange:var(--c2);--green:var(--c3);--gold:var(--acc);--gold2:var(--acc-soft);--brown:var(--pri);--brown2:var(--pri2);--parch:var(--tint);--parch2:var(--tint-line)}
body{background:var(--bg);color:var(--ink);font-family:var(--fb)}
a{color:var(--link)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:var(--acc)}
.skip{background:var(--pri)}
.masthead{background:var(--mast-bg);border-bottom:var(--mast-border)}
.topbar{background:var(--top-bg);color:var(--top-fg)}
.logo,.logo-t b{color:var(--mast-fg)}
.logo-t b{font-family:var(--fh);font-weight:var(--fhw)}
.logo-t small{color:var(--mast-sub)}
.logo-mark{filter:none}
.logo-mark .lm-bg{fill:var(--lm-bg)}.logo-mark .lm-ring{stroke:var(--lm-ring)}.logo-mark .lm-book{fill:var(--lm-book)}.logo-mark .lm-spine{stroke:var(--lm-bg)}.logo-mark .lm-flame{fill:var(--lm-flame)}
.mainnav a{color:var(--nav-fg)}
.mainnav a:hover{background:var(--nav-hover)}
.mainnav a[aria-current=page]{background:var(--nav-cur-bg);color:var(--nav-cur-fg)}
.datestrip{background:var(--strip-bg);border-top:var(--strip-border)}
.ds-tag{background:var(--acc);color:var(--on-acc)}
.ds-main{color:var(--strip-fg);font-family:var(--fh);font-weight:var(--fhw)}
.ds-sep{color:var(--acc)}
.ds-arr{color:var(--strip-fg);border-color:var(--strip-arr-line);background:var(--strip-arr-bg)}
.ds-arr:hover{background:var(--acc-soft)}
.panel{background:var(--card);border:var(--panel-border);border-radius:var(--r);box-shadow:var(--shadow)}
.ph{background:var(--ph-bg);border-bottom:var(--ph-border);color:var(--ph-fg);font-family:var(--fh);font-weight:var(--fhw)}
.ph small{font-family:var(--fb);color:var(--mute)}
.ph-ic{background:var(--acc);color:var(--on-acc);box-shadow:none}
.p-teal .ph{color:var(--c1)}.p-orange .ph{color:var(--c2)}.p-green .ph{color:var(--c3)}.p-gold .ph{color:var(--c4)}.p-brown .ph{color:var(--ph-fg)}
.intro h1,.hal-head h1,.dy-h,.dy-box h2,.dc-daf,.dg,.ms-h h3,.ds-h h2,.daf-badge,.daf-head h1,.ps-t b,.prose h4,.ap-h h3,.sb-t h2,.foot-name,.mini,.sb-vol,.dy-title,.dh-title{font-family:var(--fh);font-weight:var(--fhw)}
.dy-title,.dh-title{font-weight:var(--fhw2)}
.intro h1,.hal-head h1,.dy-h,.dy-box h2 a,.dc-daf,.ms-h h3 a,.ds-h h2,.daf-head h1,.ps-t b,.ap-h h3,.sb-t h2{color:var(--pri)}
.mini,.sb-vol,.dy-title,.dh-title,.sig,.crumbs a,th{color:var(--pri2)}
.ico{box-shadow:none}
.ico-teal{background:var(--c1)}.ico-orange{background:var(--c2)}.ico-green{background:var(--c3)}.ico-gold{background:var(--c4)}.ico-brown{background:var(--c5)}
.mats li{border-bottom:1px var(--rule-style) var(--rule)}
.mats li:last-child{border-bottom:0}
.mats a{color:var(--ink)}
.mats a:hover .ml-t{color:var(--link)}
.more{background:var(--tint);border-color:var(--tint-line);color:var(--pri)}
.more:hover,.chip:hover{background:var(--acc-soft)}
.btn{background:var(--btn-bg);color:var(--btn-fg)}
.btn:hover{background:var(--btn-hover)}
.sb-vol{border-bottom-color:var(--line2)}
.sb-a{color:var(--ink);border-bottom:1px var(--rule-style) var(--rule)}
.sb-a .dot{background:var(--acc)}
.sb-a.is-cur{color:var(--pri);background:var(--hi)}
.sb-a:hover{color:var(--link)}
.dy-box{background:var(--card);border:var(--dy-border);box-shadow:var(--dy-shadow);border-radius:var(--r2)}
.dy-hal{color:var(--c1)}
.dy-scan{border-color:var(--line);background:#fff}
.dy-scan-l{background:var(--scrim)}
.daf-card{border-color:var(--line);background:var(--surface);color:var(--ink)}
.dc-daf{color:var(--pri)}
.daf-card.is-today{background:var(--today-bg);border-color:var(--today-bg)}
.daf-card.is-today *{color:var(--today-fg)}
.g-th img{border-color:var(--line)}
.chip{background:var(--tint);border-color:var(--tint-line);color:var(--pri)}
.dg{border-color:var(--line);background:var(--surface);color:var(--mute)}
.dg.has{background:var(--tint);color:var(--pri);border-color:var(--tint-line)}
.dg.cur{background:var(--today-bg);color:var(--today-fg);border-color:var(--today-bg)}
.dg:hover{border-color:var(--acc);background:var(--acc-soft);color:var(--pri)}
.ms-h{border-top-color:var(--line)}
.hal-note,.notice,tr.cur td{background:var(--hi)}
.hal-note{border-inline-start-color:var(--acc)}
.ds-h{background:var(--ph-bg);border-bottom:var(--ph-border)}
.ds-h h2 small,.daf-head h1 small{font-family:var(--fb);color:var(--c1)}
.daf-badge{background:var(--badge-bg);color:var(--badge-fg);border-color:var(--badge-ring)}
.post{border-color:var(--line2);background:var(--surface)}
details.post>summary::after{color:var(--pri2)}
details.post[open]>summary{border-bottom-color:var(--line)}
.prose h4{color:var(--c1)}
.prose .step{border-inline-start-color:var(--acc-soft)}
.cite{color:var(--mute);opacity:.8}
.post-foot{border-top-color:var(--line2)}
article.open-post{border:var(--panel-border);background:var(--card)}
.ap-h{background:var(--ph-bg);border-bottom:var(--ph-border)}
.post-img img,.quote img,.info img,.scan{border-color:var(--line)}
.ann{background:var(--ann-bg);border-color:var(--ann-line)}
.ann.note{background:var(--surface);border-color:var(--line2)}
.pn-a{background:var(--card);border-color:var(--line);color:var(--pri)}
th{border-bottom-color:var(--line)}td{border-bottom-color:var(--line)}
.filters button{background:var(--surface);border-color:var(--line);color:var(--pri)}
.filters button.on{background:var(--today-bg);color:var(--today-fg)}
.gallery figure{background:var(--card);border-color:var(--line)}
.site-foot{background:var(--foot-bg);color:var(--foot-fg);border-top:var(--foot-border)}
.foot-name{color:var(--foot-h)}
.subbox{background:var(--sub-bg);border:var(--sub-border)}
.sb-ic{stroke:var(--sub-ic-fg);background:var(--sub-ic-bg)}
.sb-mail{color:var(--pri2)}
@media(max-width:640px){.mainnav a{background:var(--nav-chip)}.mainnav a[aria-current=page]{background:var(--nav-cur-bg)}}

/* ===== 3 · נקי ומודרני — clean & modern ===== */
@font-face{font-family:"Heebo";src:url(fonts/heebo-heb.woff2) format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Heebo";src:url(fonts/heebo-lat.woff2) format("woff2");font-weight:300 900;font-display:swap;unicode-range:U+0000-00FF,U+2013-2014,U+2018-201E,U+2026}

:root{
--fh:"Heebo",system-ui,sans-serif;--fb:"Heebo",system-ui,sans-serif;--fhw:800;--fhw2:500;
--bg:#ffffff;--card:#ffffff;--surface:#ffffff;--ink:#15191c;--mute:#5b656c;--line:#e3e8ea;--line2:#eef1f2;
--pri:#0f1c22;--pri2:#08736f;--acc:#08807d;--acc-soft:#d8f2f1;--on-acc:#fff;--link:#07716e;
--c1:#08807d;--c2:#c9472a;--c3:#2b59c3;--c4:#d98a14;--c5:#15191c;
--r:6px;--r2:18px;--rule:#e9edef;--rule-style:solid;
--mast-bg:#ffffff;--mast-border:1px solid #e3e8ea;--mast-fg:#0f1c22;--mast-sub:#5b656c;
--top-bg:#0f1c22;--top-fg:#c9d3d6;
--lm-bg:#08807d;--lm-ring:transparent;--lm-book:#ffffff;--lm-flame:#0f1c22;
--nav-fg:#15191c;--nav-hover:#eef7f7;--nav-cur-bg:#0f1c22;--nav-cur-fg:#fff;--nav-chip:#f2f5f6;
--strip-bg:#087c79;--strip-border:0;--strip-fg:#ffffff;--strip-arr-bg:rgba(255,255,255,.12);--strip-arr-line:rgba(255,255,255,.4);
--panel-border:0;--shadow:none;
--ph-bg:transparent;--ph-border:0;--ph-fg:#0f1c22;
--btn-bg:#08807d;--btn-fg:#fff;--btn-hover:#06615f;
--tint:#eef7f7;--tint-line:#cde8e7;--hi:#e6f6f5;
--dy-border:0;--dy-shadow:none;
--scrim:rgba(15,28,34,.85);--today-bg:#0f1c22;--today-fg:#fff;
--badge-bg:#08807d;--badge-fg:#fff;--badge-ring:#08807d;
--ann-bg:#f4f8f9;--ann-line:#e1eaec;
--foot-bg:#0f1c22;--foot-fg:#b9c5c9;--foot-h:#fff;--foot-border:0;
--sub-bg:#0f1c22;--sub-border:0;--sub-ic-bg:#08807d;--sub-ic-fg:#fff}
/* signature: editorial rules, square tiles, bold sans, whitespace */
.layout{padding-top:26px}
.panel{border-top:3px solid #0f1c22;border-radius:0;margin-bottom:30px;padding-bottom:6px}
.panel>*:not(.ph){margin-inline:2px}
.ph{padding:12px 2px 6px;font-size:22px;letter-spacing:-.3px;border-radius:0}
.ph small{font-weight:500}
.ph-ic,.ico{border-radius:8px}
.ph-ic{background:#08807d;color:#fff;width:28px;height:28px}
.ds-tag{background:#fff;color:#087c79}
.ds-main{font-weight:700}
.ds-sep{color:#9fe3df}
.logo-t b{font-weight:900;letter-spacing:-.6px}
.logo-mark .lm-spine{stroke:#08807d}
.mainnav a{font-weight:600}
.dy-h{font-size:26px;letter-spacing:-.4px}
.dy-box{background:#f1f9f9;padding:18px 18px}
.dy-box h2{font-weight:900;letter-spacing:-1px}
.dy-box h2 a{color:#0f1c22}
.ds-h{border-radius:0;padding:12px 2px}
.daf-sec{border-top:3px solid #0f1c22}
.daf-card{border-radius:10px}
.dg{border-radius:6px}
.chip{border-radius:6px}
.more{border-radius:6px;background:transparent;border:1.5px solid #0f1c22;color:#0f1c22}
.more:hover{background:#0f1c22;color:#fff}
.btn{border-radius:6px;padding:10px 20px}
.subbox{border-radius:18px;border-top:0!important}
.subbox .sb-in{padding:18px}
.sb-t h2{color:#fff}.sb-t p{color:#b9c5c9}.sb-mail{color:#7fe0dc}
.sb-ic{border-radius:10px}
.post,article.open-post{border:1px solid #e3e8ea;border-radius:12px}
.ap-h{border-radius:12px 12px 0 0;padding:12px 14px}
.dy-hal{color:#08807d}
@media(max-width:640px){.panel>*:not(.ph){margin-inline:2px}.ph{padding-inline:2px}}

/* ===== airy layer (Oct 27): more breathing room — line-height, spacing, padding, fewer items per row, larger tap targets ===== */
body{font-size:17.5px;line-height:1.8}
.wrap{padding:0 20px}
.tb-in{padding:5px 20px}
.mh-in{padding:22px 20px 18px;gap:22px}
.mainnav{gap:6px}
.mainnav a{padding:10px 16px;min-height:44px;display:inline-flex;align-items:center}
.ds-in{padding:12px 20px;gap:14px}
.ds-arr{width:40px;height:40px}
.layout{padding-top:36px;padding-bottom:56px}
.layout.has-side{gap:40px}
@media(min-width:980px){.layout.has-side{grid-template-columns:270px minmax(0,1fr)}}
.panel{margin-bottom:44px;padding-bottom:18px}
.panel>*:not(.ph){margin-inline:4px}
.ph{padding:18px 4px 12px;margin:0 0 14px!important;font-size:23px}
.intro h1,.hal-head h1{margin:18px 4px 10px;line-height:1.3}
.intro p,.panel>p{line-height:1.85}
.meta{margin:6px 0 14px}
.mini{margin:22px 4px 10px;padding-bottom:6px}
/* lists */
.mats{margin:6px 4px 10px}
.mats li{border-bottom:1px solid var(--line2)}
.mats a{padding:14px 2px;min-height:52px;gap:14px}
.ml-t{line-height:1.5}
.more{margin-top:14px;padding:8px 18px;min-height:44px;display:inline-flex;align-items:center}
.btn{padding:12px 22px;min-height:48px;margin:14px 0}
/* sidebar */
.sb-list{margin:0 4px!important}
.sb-vol{padding:18px 4px 6px}
.sb-a{padding:12px 6px;min-height:50px;border-bottom:1px solid var(--line2)}
/* daily box */
.dy{margin-bottom:44px}
.dy-h{margin:0 0 16px}
.dy-box{padding:26px 26px;gap:26px}
@media(min-width:720px){.dy-box{grid-template-columns:1fr 260px}}
.dy-when{margin-bottom:6px}
.dy-hal{margin:8px 0 8px}
.dy-title{margin:6px 0 14px;line-height:1.55}
/* week strip */
.week{gap:12px;padding:8px 4px 14px}
.daf-card{min-width:86px;padding:12px 12px;gap:2px}
/* grids: fewer per row */
.pgrid{gap:0 44px}
@media(min-width:720px) and (max-width:1099px){.pgrid{grid-template-columns:1fr}}
.g-row{grid-template-columns:repeat(3,1fr);gap:12px}
.chips{gap:10px;margin-top:10px;margin-bottom:10px}
.chip{padding:6px 14px;min-height:36px;display:inline-flex;align-items:center}
.chip.big{padding:8px 16px}
.crumbs{margin:0 0 18px}
.dafgrid{gap:10px;margin:12px 4px 16px}
.dg{min-width:46px;height:46px}
.legend{gap:14px;margin:8px 0}
.ms-h{padding-top:18px;margin-top:18px}
.hal-note{padding:12px 16px;margin:12px 0;line-height:1.8}
/* daf pages */
.daf-sec{margin-bottom:52px}
.ds-h{padding:18px 4px;margin:0 0 16px!important;gap:16px}
.daf-head .dh-top{padding-top:22px;gap:18px}
.dh-title{margin-top:8px;line-height:1.5}
.posts{margin:12px 4px}
.post{margin:0 0 22px}
details.post>summary{padding:18px 18px;gap:14px;min-height:56px}
.ps-t b{line-height:1.45}
.ex{line-height:1.65;margin-top:4px}
.prose{padding:18px 22px 10px;font-size:18px;line-height:1.85;max-width:68ch}
.prose p{margin:0 0 1.15em}
.prose h4{margin:1.7em 0 .5em;font-size:19.5px}
.prose h4:first-child{margin-top:.3em}
.prose ul{margin:0 0 1.15em}
.prose li{margin-bottom:.5em}
.post-foot{padding:14px 22px 18px;gap:12px}
article.open-post{margin:0 0 36px}
.ap-h{padding:18px 22px;gap:14px}
.ap-h h3{line-height:1.4}
.open-post>.chips{margin:14px 22px 0}
.post-img{margin:18px 22px}
.ann{padding:16px 18px;margin:12px 4px 18px;gap:14px;line-height:1.75}
.ann p{margin:0 0 8px}
.media-note{margin:10px 4px}
.has-page{margin:10px 4px}
.notice{padding:12px 16px}
.scans{gap:22px}
.scan figcaption,.info figcaption{padding:8px 12px}
.quotes{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}
.infos{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.pn{margin:28px 0;gap:14px}
.pn-a{padding:12px 18px;min-height:48px;display:inline-flex;align-items:center}
td{padding:12px 10px}th{padding:10px 10px}
.filters{gap:10px;margin-bottom:16px}
.latest{margin-top:14px;padding-top:12px}
.subbox .sb-in{padding:26px 26px;gap:20px}
.sb-t p{line-height:1.75;margin-top:6px}
.site-foot{padding:44px 0 56px;line-height:1.85}
.site-foot p{margin:0 0 10px}
@media(max-width:640px){
 body{font-size:17px}
 .wrap{padding:0 18px}
 .mh-in{padding:16px 18px 12px;gap:14px}
 .mainnav{gap:4px}
 .mainnav a{padding:10px 13px;font-size:16px}
 .ds-in{padding:10px 12px;gap:10px}
 .ds-arr{width:40px;height:40px}
 .layout{padding-top:26px}
 .panel{margin-bottom:36px}
 .dy-box{padding:20px 18px}
 .prose{padding:14px 16px 6px;font-size:17.5px}
 details.post>summary{padding:16px 14px}
 .ap-h{padding:16px 16px}
 .post-foot{padding:12px 16px 16px}
 .open-post>.chips{margin:12px 16px 0}
 .post-img{margin:14px 16px}
 .g-row{grid-template-columns:repeat(2,1fr)}
 .quotes{grid-template-columns:repeat(2,1fr);gap:14px}
 .infos{grid-template-columns:1fr}
 .subbox .sb-in{padding:22px 18px}
}
/* "add to home screen" hint (iPhone) */
.a2hs{position:fixed;inset-inline:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;background:#0f1c22;color:#fff;border-radius:16px;padding:16px 18px 16px 52px;box-shadow:0 10px 30px rgba(15,28,34,.3);font-size:15.5px;line-height:1.6;max-width:460px;margin-inline:auto}
.a2hs b{display:block;font-size:16.5px;margin-bottom:2px}
.a2hs .a2hs-share{display:inline-block;width:18px;height:18px;vertical-align:-3px;margin:0 3px;stroke:#7fe0dc;fill:none;stroke-width:2}
.a2hs-x{position:absolute;top:8px;left:8px;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:20px;line-height:1;cursor:pointer}
