/* Shared plaque components, derived from the 36 hand-authored sheets by
 * tools/extract.py: for each selector, the value most plaques agreed on.
 * Per-script font vars (--phn, --deva, …) are normalised to --script-font,
 * which each plaque page sets from its own `fontVar`.
 * Do not hand-edit — change it in v2 and re-extract, or override per plaque. */

.crumbs{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.06em;padding:20px 0 0}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--rubric)}
main{padding:0 0 60px}
.plaquehero{display:grid;grid-template-columns:1.15fr .85fr;border:1px solid var(--ink);margin-top:20px}
.spec-major{background:var(--plate) repeating-linear-gradient(to bottom,transparent 0 27px,var(--guide) 27px 28px);border-right:1px solid var(--ink);padding:34px 28px;display:flex;flex-direction:column;justify-content:center}
.spec-major .big{font-family:var(--script-font);font-size:clamp(78px,13vw,140px);line-height:1.15;font-weight:400}
.spec-major .row{font-family:var(--script-font);font-size:26px;margin-top:20px;color:var(--muted);letter-spacing:.05em;line-height:1.5}
.fields{padding:8px 0}
.fields h1{font-family:var(--serif);font-weight:600;font-size:1.9rem;padding:14px 22px 2px}
.fields .sub{padding:0 22px 12px;color:var(--muted);font-size:13.5px}
.frow{display:grid;grid-template-columns:130px 1fr;gap:10px;padding:8px 22px;border-top:1px solid var(--line);font-size:13.5px}
.frow th,.frow .k{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:400;text-align:left;padding-top:3px}
.statuschip{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--living)}
@media(max-width:760px){.plaquehero{grid-template-columns:1fr}.spec-major{border-right:none;border-bottom:1px solid var(--ink)}}
section.block{margin-top:40px}
.blockrule{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ink);padding-bottom:8px;margin-bottom:16px}
h2.blockhead{font-family:var(--serif);font-weight:600;font-size:1.4rem}
.note{max-width:660px}
.note p{margin-bottom:12px}
.pull{font-family:var(--serif);font-style:italic;font-size:1.1rem;border-left:2px solid var(--rubric);padding-left:14px;margin:16px 0;max-width:560px}
.waterfall{background:var(--plate) repeating-linear-gradient(to bottom,transparent 0 27px,var(--guide) 27px 28px);border:1px solid var(--line);padding:22px 18px;overflow-x:auto}
.wf-row{display:flex;align-items:baseline;gap:16px;margin-bottom:10px;white-space:nowrap;font-family:var(--script-font);direction:ltr}
.wf-size{font-family:var(--mono);font-size:10px;color:var(--muted);width:34px;flex:none;direction:ltr}
.jamo{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.jcell{border:1px solid var(--line);background:var(--paper);padding:14px;text-align:center}
.jcell .g{font-family:var(--script-font);font-size:44px;line-height:1.2;display:block}
.jcell .n{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--rubric);display:block;margin-top:6px}
.jcell .d{font-size:12px;color:var(--muted);display:block;margin-top:4px;line-height:1.45}
.assembly{border:1px solid var(--line);background:var(--plate) repeating-linear-gradient(to bottom,transparent 0 27px,var(--guide) 27px 28px);padding:20px;margin-top:14px;text-align:center}
.assembly .chain{font-size:30px;letter-spacing:.04em;display:inline-flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center}
.assembly .chain .p{font-family:var(--script-font)}
.assembly .op{color:var(--rubric);font-family:var(--mono);font-size:20px}
.assembly .cap{display:block;font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.08em;margin-top:12px;line-height:1.5}
.abc{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.acell{border:1px solid var(--line);background:var(--paper);padding:12px 12px 11px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}
.acell .g{font-family:var(--script-font);font-size:38px;line-height:1;color:var(--ink)}
.acell .txt{min-width:0}
.acell .nm{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--rubric);text-transform:uppercase}
.acell .mn{font-size:12px;color:var(--muted);line-height:1.4}
.acell .hr{font-family:var(--mono);font-size:10.5px;color:var(--ink);margin-top:3px}
.acell .hr b{color:var(--rubric);font-weight:500}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.roomchip{border:1px solid var(--line);text-decoration:none;color:var(--ink);font-family:var(--mono);font-size:11px;letter-spacing:.08em;padding:8px 12px}
.roomchip:hover{border-color:var(--rubric);color:var(--rubric)}
.roomchip b{color:var(--rubric);font-weight:500;margin-right:6px}
.paperlink{border:1px solid var(--ink);display:grid;grid-template-columns:110px 1fr;text-decoration:none;color:var(--ink)}
.paperlink:hover h3{color:var(--rubric)}
.paperlink .pp{background:var(--plate) repeating-linear-gradient(to bottom,transparent 0 27px,var(--guide) 27px 28px);border-right:1px solid var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--script-font);font-size:48px}
.paperlink .pb{padding:16px 18px}
.paperlink h3{font-family:var(--serif);font-weight:600;font-size:1.2rem;margin:2px 0 4px}
.paperlink p{font-size:13px;color:var(--muted)}
.prov{border-top:1px solid var(--ink);margin-top:44px;padding-top:14px}
[lang="he"]{font-family:'Noto Sans Hebrew',var(--sans)}
[lang="syr"]{font-family:'Noto Sans Syriac',var(--sans)}
[lang="ar"]{font-family:'Noto Sans Arabic',var(--sans)}
[lang="mn"]{font-family:'Noto Sans Mongolian',var(--sans)}
.tofu{display:inline-flex;align-items:center;justify-content:center;border:1.5px dashed var(--muted);background:repeating-linear-gradient(45deg,transparent 0 6px,rgba(95,89,77,.07) 6px 12px);color:var(--muted);font-family:var(--mono);letter-spacing:.06em;text-align:center;padding:.35em .6em;border-radius:2px}
.plate.tofu{font-size:clamp(22px,3.4vw,34px);padding:.55em .9em}
.tofurow{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.tofubox{width:64px;height:64px;flex:none;border:1.5px dashed var(--muted);background:repeating-linear-gradient(45deg,transparent 0 7px,rgba(95,89,77,.08) 7px 14px);display:flex;align-items:center;justify-content:center;color:var(--muted);font-family:var(--mono);font-size:26px}
.spec-major .majcap{font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.08em;margin-top:16px;line-height:1.5}
.shelfgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.pcard{border:1px solid var(--line);background:var(--paper);text-decoration:none;color:var(--ink);display:flex;flex-direction:column}
.pcard:hover{border-color:var(--rubric)}
.pcard:hover b{color:var(--rubric)}
.pthumb{background:var(--plate) repeating-linear-gradient(to bottom,transparent 0 27px,var(--guide) 27px 28px);border-bottom:1px solid var(--line);font-family:var(--script-font);font-size:30px;line-height:1;padding:22px 14px;text-align:center;color:var(--ink)}
.pinfo{padding:11px 13px 12px}
.pvendor{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--rubric)}
.pcard b{font-size:13.5px;display:block;margin:4px 0 0}
.pmeta{font-family:var(--mono);font-size:11px;color:var(--muted);display:flex;justify-content:space-between;margin-top:8px}
.shopnote{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-top:10px}
.sources{border:1px solid var(--ink);background:var(--plate);padding:20px 22px;margin-top:44px}
.sources h2{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--rubric);font-weight:500;margin:0 0 14px}
.src-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.sources h3{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:400;margin-bottom:9px}
.sources ul{list-style:none;display:flex;flex-direction:column;gap:7px}
.sources li{font-size:13px;line-height:1.45}
.sources li .q{color:var(--muted);font-size:12px}
.sources a{text-decoration:none}
.sources a:hover{text-decoration:underline}
.src-note{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.03em;margin-top:16px;border-top:1px solid var(--line);padding-top:11px}
.src-aff{font-family:var(--mono);font-size:10px;color:var(--muted);font-style:italic;margin-top:9px}
@media(max-width:600px){.src-grid{grid-template-columns:1fr;gap:18px}}
.tofu.big{font-size:13px;padding:26px 22px;line-height:1.6;max-width:100%}
.tofu.row{font-size:12px;padding:12px 16px;margin-top:20px}
.tofu.cell{font-size:26px;width:52px;height:52px;padding:0}

/* Treaty cross-read — see tools/treaty-overrides.json */
.crossread{font-size:13.5px;line-height:1.6;color:var(--muted);border-left:2px solid var(--line);padding:2px 0 2px 14px;margin:18px 0 0}
.crossread a{color:var(--rubric);text-decoration:none;white-space:nowrap}
.crossread a:hover{text-decoration:underline}
