/* Tzurat HaDaf — Vilna-style page. Layout CSS ported from talmud by Shaun Regenbaum
   (github.com/Shaun-Regenbaum/talmud, packages/talmud/src/lib/daf-render/styles.css), MIT License.
   Fonts: Frank Ruhl Libre + Noto Rashi Hebrew (SIL OFL 1.1, see fonts/OFL-FrankRuhlLibre-NotoRashiHebrew.txt). */
@font-face{font-family:"TzVilna";src:url("../fonts/FrankRuhlLibre-heb.woff2") format("woff2");font-weight:300 900;font-display:swap}
@font-face{font-family:"TzRashi";src:url("../fonts/NotoRashiHebrew-heb.woff2") format("woff2");font-weight:100 900;font-display:swap}

.tz{--tz-paper:#fffaf0;--tz-ink:#2b2418;--tz-rule:#e6d8bf;--tz-hl:#fff0a6;--tz-hl-edge:#f5d64e;
  --tz-rashi:#5b3fd6;--tz-tos:#c4511f;width:100%;-webkit-text-size-adjust:100%}
.tz-page{position:relative;background:var(--tz-paper);color:var(--tz-ink);border-radius:18px;
  border:1px solid var(--tz-rule);
  box-shadow:0 10px 30px rgba(84,60,20,.10),0 2px 6px rgba(84,60,20,.06),inset 0 0 0 6px #fffdf7,inset 0 0 0 7px #efe3cc;
  padding:12px 18px 10px;overflow:hidden}
.tz-narrow .tz-page{padding:10px 10px 8px;border-radius:14px;box-shadow:0 6px 18px rgba(84,60,20,.10),inset 0 0 0 4px #fffdf7,inset 0 0 0 5px #efe3cc}
.tz-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 2px 7px;margin-bottom:8px;border-bottom:1px solid var(--tz-rule)}
.tz-title{display:flex;align-items:baseline;gap:7px;font-family:"TzVilna","Frank Ruhl Libre",serif;font-weight:700;font-size:19px;white-space:nowrap}
.tz-narrow .tz-title{font-size:16px}
.tz-dot{color:#b9a27a}
.tz-daf{font-weight:500}
.tz-chip{font-family:"TzVilna","Frank Ruhl Libre",serif;font-weight:700;font-size:13px;line-height:1;padding:5px 9px 4px;border-radius:999px;white-space:nowrap}
.tz-chip-rashi{color:var(--tz-rashi);background:#efeaff}
.tz-chip-tos{color:var(--tz-tos);background:#ffeee5}
.tz-chip-none{visibility:hidden;min-width:40px}
.tz-frame{position:relative;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
.tz-foot{margin-top:8px;padding-top:6px;border-top:1px solid var(--tz-rule);font:500 10.5px/1.3 "Fredoka",system-ui,sans-serif;color:#a08f72;text-align:center}
.tz-empty{padding:40px 10px;text-align:center;color:#8a7a60;font-family:"TzVilna",serif}
.tz-page .daf-root{opacity:.001;transition:opacity .25s}
.tz-page.tz-ready .daf-root{opacity:1}

/* ---------- ported layout engine CSS (scoped to .tzd) ---------- */
.tzd.daf-root{position:relative;width:var(--daf-content-width);pointer-events:none;box-sizing:content-box;margin:0 auto}
.tzd .daf-outer,.tzd .daf-inner,.tzd .daf-main{position:absolute;top:0;left:0;width:var(--daf-content-width);pointer-events:none;box-sizing:content-box}
.tzd .daf-spacer{pointer-events:none}
.tzd .daf-inner .daf-spacer,.tzd .daf-outer .daf-spacer{width:var(--daf-halfway-percent)}
.tzd .daf-inner .daf-mid,.tzd .daf-outer .daf-mid{width:var(--daf-remainder-percent);clear:both}
.tzd .daf-inner .daf-spacer{float:var(--daf-inner-float)}
.tzd .daf-main .daf-outer-mid{float:var(--daf-inner-float)}
.tzd .daf-outer .daf-spacer{float:var(--daf-outer-float)}
.tzd .daf-main .daf-inner-mid{float:var(--daf-outer-float)}
.tzd .daf-main .daf-start{width:auto}
.tzd .daf-main .daf-inner-mid,.tzd .daf-main .daf-outer-mid{width:var(--daf-side-percent)}
.tzd .daf-start{height:var(--daf-start)}
.tzd .daf-inner .daf-end{height:var(--daf-inner-end)}
.tzd .daf-outer .daf-end{height:var(--daf-outer-end)}
.tzd .daf-inner .daf-mid,.tzd .daf-main .daf-inner-mid{height:var(--daf-inner)}
.tzd .daf-outer .daf-mid,.tzd .daf-main .daf-outer-mid{height:var(--daf-outer)}
.tzd .daf-main .daf-inner-mid,.tzd .daf-main .daf-outer-mid{margin-left:calc(.5*var(--daf-padding-horizontal));margin-right:calc(.5*var(--daf-padding-horizontal))}
.tzd .daf-end{margin-left:calc(.5*var(--daf-padding-horizontal));margin-right:calc(.5*var(--daf-padding-horizontal))}
.tzd .daf-main .daf-start{margin-left:calc(.5*var(--daf-padding-horizontal));margin-right:calc(.5*var(--daf-padding-horizontal))}
.tzd .daf-inner .daf-start{width:var(--daf-inner-start-width,var(--daf-halfway-percent));
  margin-left:var(--daf-inner-start-pad,calc(.5*var(--daf-padding-horizontal)));margin-right:var(--daf-inner-start-pad,calc(.5*var(--daf-padding-horizontal)));margin-bottom:var(--daf-inner-start-gap,0px)}
.tzd .daf-outer .daf-start{width:var(--daf-outer-start-width,var(--daf-halfway-percent));
  margin-left:var(--daf-outer-start-pad,calc(.5*var(--daf-padding-horizontal)));margin-right:var(--daf-outer-start-pad,calc(.5*var(--daf-padding-horizontal)));margin-bottom:var(--daf-outer-start-gap,0px)}
.tzd .daf-mid,.tzd .daf-main .daf-text{margin-top:var(--daf-padding-vertical)}
.tzd .daf-mid,.tzd .daf-main .daf-inner-mid,.tzd .daf-main .daf-outer-mid{margin-bottom:var(--daf-padding-vertical)}
.tzd .daf-text{direction:var(--daf-direction);text-align:justify;text-align-last:center;word-break:normal;overflow-wrap:break-word;hyphens:none}
.tzd .daf-text span{pointer-events:auto}
.tzd .daf-main .daf-text{font-family:var(--daf-font-main);font-size:var(--daf-font-size-main);line-height:var(--daf-line-height-main);font-weight:450}
.tzd .daf-inner .daf-text,.tzd .daf-outer .daf-text{font-size:var(--daf-font-size-side);line-height:var(--daf-line-height-side)}
.tzd .daf-inner .daf-text{font-family:var(--daf-font-inner)}
.tzd .daf-outer .daf-text{font-family:var(--daf-font-outer)}
.tzd .daf-text b{font-weight:700}

/* ---------- our touches ---------- */
.tzd .tz-drop{display:block;text-align:center;text-align-last:center;font-size:2.6em;font-weight:800;line-height:1.15;margin:.05em 0 .15em}
/* dibbur hamatchil: square letters, bold, like the Vilna page */
.tzd .tz-c b{font-family:var(--daf-font-main);font-weight:700;font-size:1.04em}
.tzd .tz-c[data-kind="rashi"] b{color:var(--tz-rashi)}
.tzd .tz-c[data-kind="tosafot"] b{color:var(--tz-tos)}
.tzd .tz-seg,.tzd .tz-c{cursor:pointer;border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-color .2s,box-shadow .2s}
@media (hover:hover){.tzd .tz-seg:hover,.tzd .tz-c:hover{background-color:rgba(245,214,78,.18)}}
.tzd .hl,.tzd .hl:hover{background-color:var(--tz-hl);box-shadow:0 0 0 1.5px var(--tz-hl)}
.tzd .tz-seg.hl{box-shadow:0 0 0 1.5px var(--tz-hl),0 1.5px 0 1.5px var(--tz-hl-edge)}
