@font-face{font-family:'Cardo';font-style:italic;font-weight:400;font-display:swap;
src:url(../fonts/cardo-400italic-latin.woff2) format('woff2');
unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Cardo';font-style:italic;font-weight:400;font-display:swap;
src:url(../fonts/cardo-400italic-latin-ext.woff2) format('woff2');
unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cardo';font-style:normal;font-weight:400;font-display:swap;
src:url(../fonts/cardo-400-latin.woff2) format('woff2');
unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Cardo';font-style:normal;font-weight:400;font-display:swap;
src:url(../fonts/cardo-400-latin-ext.woff2) format('woff2');
unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cardo';font-style:normal;font-weight:700;font-display:swap;
src:url(../fonts/cardo-700-latin.woff2) format('woff2');
unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Cardo';font-style:normal;font-weight:700;font-display:swap;
src:url(../fonts/cardo-700-latin-ext.woff2) format('woff2');
unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'MedievalSharp';font-style:normal;font-weight:400;font-display:swap;
src:url(../fonts/medievalsharp-400-latin.woff2) format('woff2');
unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'MedievalSharp';font-style:normal;font-weight:400;font-display:swap;
src:url(../fonts/medievalsharp-400-latin-ext.woff2) format('woff2');
unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'UnifrakturMaguntia';font-style:normal;font-weight:400;font-display:swap;
src:url(../fonts/unifrakturmaguntia-400-latin.woff2) format('woff2');
unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Almendra';font-style:italic;font-weight:400;font-display:swap;
src:url(../fonts/almendra-400italic-latin.woff2) format('woff2');
unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Almendra';font-style:italic;font-weight:400;font-display:swap;
src:url(../fonts/almendra-400italic-latin-ext.woff2) format('woff2');
unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
background:var(--paper);
color:var(--ink);
font-family:var(--body);
background-image:
radial-gradient(ellipse at 50% -10%, rgba(185,138,47,.14), transparent 55%),
repeating-linear-gradient(0deg, transparent 0 3px, rgba(36,28,18,.018) 3px 4px);
min-height:100vh;
}
a{color:var(--oxblood)}
header.masthead{
border-bottom:3px double var(--ink);
padding:2.4rem 1.5rem 1.6rem;
text-align:center;position:relative;
}
:root{ --rule-height:14px; --rule-foot-height:8px; }
.masthead h1{
font-family:var(--display);
font-size:clamp(2.2rem,6vw,4.4rem);
letter-spacing:.06em;color:var(--oxblood);
text-shadow:2px 2px 0 rgba(36,28,18,.15);margin-top:.6rem;
}
.masthead h1 a{color:inherit;text-decoration:none}
.timeline{display:flex;align-items:flex-end;gap:0;min-width:100%;width:max-content;position:relative}
.poster-card{
background:none;border:none;padding:0;cursor:pointer;width:172px;text-align:left;
font-family:var(--body);color:var(--ink);opacity:0;transform:translateY(18px);
transition:opacity .4s ease,transform .4s ease;
}
.poster-card.in{opacity:1;transform:translateY(0)}
.poster-card:focus-visible{outline:2px dashed var(--oxblood);outline-offset:4px}
.poster{
width:172px;height:250px;border:3px solid var(--ink);box-shadow:5px 5px 0 rgba(36,28,18,.35);
position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease;background:var(--paper-deep);
}
.poster-card:hover .poster,.poster-card:focus-visible .poster{transform:translateY(-6px) rotate(-1deg);box-shadow:8px 10px 0 rgba(36,28,18,.3)}
.poster svg{display:block;width:100%;height:100%}
.poster img.tmdb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease}
.poster img.tmdb.loaded{opacity:1}
.poster-meta{margin-top:.6rem;width:172px}
.poster-meta .p-lb{font-family:var(--utility);font-size:.66rem;letter-spacing:.08em;color:var(--gold);margin-top:.25rem;display:flex;align-items:center;gap:.3rem}
.poster-meta .p-lb .lb-num{color:var(--ink);opacity:.7}
.salt-compact{display:flex;align-items:center;gap:.3rem;margin-top:.2rem}
.salt-compact .s-num{font-family:var(--utility);font-size:.62rem;letter-spacing:.06em;color:rgba(36,28,18,.72)}
.salt-emblem{fill:var(--salt-ink);color:var(--salt-ink);display:inline-block;vertical-align:middle;flex:0 0 auto}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.stars-wrap{position:relative;display:inline-block;font-size:1.35rem;letter-spacing:.12em;line-height:1;vertical-align:middle}
.stars-wrap .stars-bg{color:rgba(36,28,18,.25)}
.stars-wrap .stars-fg{color:var(--gold);position:absolute;inset:0;overflow:hidden;white-space:nowrap}
.rating-num{font-family:var(--utility);font-size:.86rem;color:var(--ink);margin-left:.5rem;vertical-align:middle}
.salt-row{display:flex;align-items:center;gap:.5rem;margin-top:.3rem}
.salt-note{font-size:.9rem;font-style:italic;color:rgba(36,28,18,.7);margin-top:.4rem;max-width:380px}
footer.site-foot{border-top:3px double var(--ink);margin-top:2rem;padding:1.6rem;text-align:center;font-family:var(--utility);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(36,28,18,.55);line-height:2}
.foot-nav{display:flex;gap:.8rem 1.9rem;justify-content:center;align-items:baseline;flex-wrap:wrap;margin-bottom:1rem}
.foot-nav-group{display:flex;gap:1.15rem;justify-content:center;flex-wrap:wrap;align-items:baseline}
.foot-nav a{font-family:var(--utility);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--lake);text-decoration:none;border-bottom:2px solid transparent;padding-bottom:.15rem}
.foot-nav a:hover,.foot-nav a:focus-visible{border-bottom-color:var(--oxblood);color:var(--oxblood)}
.masthead-logo{margin-top:.6rem;line-height:0}
.masthead-logo a{display:inline-block}
.masthead-logo img{width:min(460px,82vw);max-width:100%;height:auto;display:block;margin:0 auto}
.content-page{max-width:720px;margin:0 auto;padding:2.5rem 1.5rem 4rem}
.content-page h2{font-family:var(--display);color:var(--oxblood);font-size:clamp(1.6rem,4vw,2.3rem);margin-bottom:1.2rem}
.content-page h3{font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;font-size:.95rem;color:var(--lake);margin:1.8rem 0 .6rem}
.content-page h4{font-family:var(--utility);letter-spacing:.1em;
text-transform:uppercase;font-size:.82rem;font-weight:700;
color:var(--ink);margin:1.3rem 0 .4rem}
.content-page p{font-size:1.08rem;line-height:1.75}
.content-page p+p{margin-top:1rem}
.content-page a{color:var(--oxblood)}
.salt-legend{list-style:none;margin:1.4rem 0;padding:0}
.salt-legend li{display:flex;gap:1rem;align-items:flex-start;padding:1rem 0;border-bottom:1px solid rgba(36,28,18,.15)}
.salt-legend li:last-child{border-bottom:none}
.salt-legend .emblem{flex:0 0 56px;height:56px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;background:var(--paper-deep)}
.salt-legend .emblem .salt-emblem{width:36px;height:36px}
.salt-legend .tier-name{font-family:var(--display);font-size:1.15rem;color:var(--oxblood)}
.salt-legend .tier-level{font-family:var(--utility);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(36,28,18,.55);margin-left:.5rem}
.salt-legend .tier-blurb{font-size:1rem;line-height:1.6;margin-top:.2rem}
.salt-legend li.tier-unsalted{border-bottom-style:dashed}
.salt-legend li.tier-unsalted .tier-name{color:var(--lake)}
.salt-legend li.tier-unsalted .emblem{border-style:dashed}
.field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.7rem}
.field label{font-family:var(--utility);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(36,28,18,.7)}
.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{
font-family:var(--body);font-size:1rem;padding:.55rem .7rem;border:2px solid var(--ink);background:#F5EFE0;color:var(--ink);
}
.field textarea{min-height:100px;resize:vertical}
.btn{font-family:var(--utility);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;background:var(--ink);color:var(--paper);border:2px solid var(--ink);padding:.6rem 1.1rem;cursor:pointer}
.btn+.btn{margin-left:.6rem}
.salt-picker{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}
.salt-picker button{background:var(--paper);border:2px solid rgba(36,28,18,.25);cursor:pointer;padding:.25rem;line-height:0}
.salt-picker button.salt-opt{opacity:.5;transition:opacity .12s ease,border-color .12s ease}
.salt-picker button.salt-opt:hover{opacity:.85}
.salt-picker button.salt-opt.on{opacity:1;border-color:var(--ink);box-shadow:2px 2px 0 rgba(36,28,18,.25)}
.mini-note{font-style:italic;color:rgba(36,28,18,.6);margin:.4rem 0 1rem}
.mini-note,.content-page .mini-note{font-size:.82rem}
@media (prefers-reduced-motion:reduce){
*{animation:none!important;transition:none!important}
}
@media (max-width:640px){
.poster-card,.show-stack-card{width:140px}
.poster{width:140px;height:204px}
.poster-meta,.show-title-tab{width:140px}
}
@media (prefers-reduced-motion:reduce){
}
.pp-bookmark{
position:fixed;top:0;left:max(.6rem,2vw);z-index:65;
font-family:var(--utility);
}
.bm-tab{
list-style:none;cursor:pointer;
width:46px;height:132px;
background:url(../art/bookmark.svg) top left / 46px 132px no-repeat;
filter:drop-shadow(3px 3px 0 rgba(36,28,18,.25));
display:grid;place-items:center;
padding:34px 0 26px;
}
.bm-tab::-webkit-details-marker{display:none}
.bm-tab:hover{filter:drop-shadow(3px 3px 0 rgba(36,28,18,.45))}
.bm-tab:focus-visible{outline:3px solid var(--lake);outline-offset:2px}
.bm-tab-text{
writing-mode:vertical-rl;
color:var(--paper);font-size:.62rem;letter-spacing:.1em;
text-transform:uppercase;white-space:nowrap;
}
.bm-panel{
position:absolute;top:0;left:54px;
width:min(20rem,calc(100vw - 5rem));
background:var(--paper);border:2px solid var(--ink);
box-shadow:5px 5px 0 rgba(36,28,18,.28);
padding:.85rem .95rem .95rem;
}
.bm-hail{
font-family:var(--body);font-size:.84rem;font-style:italic;line-height:1.45;
border-left:3px solid var(--gold);padding-left:.55rem;margin-bottom:.7rem;
}
.bm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}
.bm-go{
display:block;width:100%;text-align:left;cursor:pointer;font:inherit;
background:var(--paper);border:2px solid var(--ink);padding:.45rem .6rem;
color:var(--ink);text-decoration:none;
}
.bm-go:hover,.bm-go:focus-visible{background:var(--gold-bright)}
.bm-go[disabled]{opacity:.55;cursor:default;background:var(--paper)}
.bm-what{display:block;font-family:var(--utility);font-size:.84rem;color:var(--oxblood)}
.bm-why{display:block;font-family:var(--body);font-size:.75rem;line-height:1.35;opacity:.78;margin-top:.1rem}
.bm-said{font-family:var(--body);font-size:.78rem;line-height:1.4;color:var(--oxblood);margin-top:.55rem}
.bm-said:empty{display:none}
@media (max-width:560px){
.pp-bookmark{left:.5rem}
.bm-tab{width:40px;height:112px;background-size:40px 112px;padding:28px 0 22px}
.bm-panel{left:0;top:120px;width:calc(100vw - 1.6rem)}
header.masthead{padding-left:3.6rem;padding-right:3.6rem}
}
:root{
--paper:#E9E0C9;
--paper-deep:#DCD0B4;
--ink:#3B2A17;
--oxblood:#9E2B25;
--oxblood-deep:#7E1E1A;
--lake:#274B8E;
--lake-deep:#1C3868;
--moss:#3E6B45;
--murex:#6A3D9A;
--murex-text:#57307E;
--myth:#9A4410;
--gold:#B98A2F;
--gold-bright:#D8C078;
--leadwhite:#F7F3E8;
--leadwhite-edge:#8C7A5B;
--salt-ink:#9E2B25;
--display:'UnifrakturMaguntia','MedievalSharp',serif;
--body:'Cardo','EB Garamond',Georgia,serif;
--utility:'MedievalSharp','Cardo',serif;
}
body{
color:var(--ink);
background:
url(../art/paper-grain.svg) repeat,
radial-gradient(120% 70% at 20% 0%, rgba(158,43,37,.05), transparent 55%),
radial-gradient(120% 90% at 90% 30%, rgba(39,75,142,.05), transparent 55%),
radial-gradient(140% 120% at 50% 110%, rgba(59,42,23,.14), transparent 60%),
repeating-linear-gradient(0deg, transparent 0 29px, rgba(59,42,23,.05) 29px 30px),
var(--paper);
background-attachment:fixed;
}
a{color:var(--oxblood)}
header.masthead{border-bottom:0px double var(--gold);background:linear-gradient(180deg, rgba(216,192,120,.10), transparent)}
.masthead-logo img{filter:drop-shadow(0 1px 0 rgba(59,42,23,.25))}
.timeline{box-shadow:0 3px 0 var(--gold)}
.poster{
border:3px solid var(--ink);
box-shadow:0 0 0 3px var(--gold), 4px 4px 0 rgba(59,42,23,.35);
background:var(--paper-deep);
}
.poster-card:hover .poster,.poster-card:focus-visible .poster{box-shadow:0 0 0 3px var(--gold-bright), 6px 8px 0 rgba(59,42,23,.3)}
.poster-meta .p-lb{font-family:var(--utility);color:var(--gold)}
.poster-meta .p-lb .lb-num{color:rgba(59,42,23,.6)}
.salt-compact{color:var(--oxblood)}
.salt-compact .s-num{font-family:var(--utility);color:var(--oxblood);font-style:italic}
.stars-wrap .stars-fg{color:var(--gold)}
.rating-num{font-family:var(--utility);color:var(--ink)}
.lede::first-letter{
font-family:var(--display);font-size:3.4em;line-height:.8;float:left;
color:var(--oxblood);margin:.05em .12em 0 0;
text-shadow:2px 2px 0 var(--gold-bright);
}
.salt-note{
font-family:var(--body);font-style:italic;color:var(--oxblood);
border-left:3px solid var(--oxblood);background:rgba(158,43,37,.06);
padding:.5rem .8rem .5rem 2rem;position:relative;max-width:none;
}
.salt-note::before{content:"\261E";position:absolute;left:.5rem;top:.45rem;font-style:normal;color:var(--oxblood);font-size:1.1rem}
.content-page h2{font-family:var(--display);color:var(--oxblood);font-weight:400}
.content-page h3{font-family:var(--utility);color:var(--lake);text-transform:none;letter-spacing:.06em}
.content-page p,.content-page li{font-family:var(--body);font-size:1.12rem}
.salt-legend .emblem{border-color:var(--ink);box-shadow:0 0 0 2px var(--gold)}
.salt-legend .tier-name{font-family:var(--display);color:var(--oxblood);font-weight:400}
.salt-legend .tier-level{font-family:var(--utility);text-transform:none}
.salt-legend .tier-blurb{font-family:var(--body)}
footer.site-foot{
--foot-art-h:150px;
--foot-seat:164px;
--foot-rule-h:12px;
font-family:var(--utility);color:rgba(59,42,23,.75);text-transform:none;letter-spacing:.06em;
border-top:3px double var(--gold-text);position:relative;
padding-top:calc(var(--foot-seat) + .5rem);
padding-bottom:calc(var(--foot-rule-h) + 1.5rem);
background:
radial-gradient(26% 14px at 50% var(--foot-seat), rgba(59,42,23,.11), transparent 70%),
url(../art/border-rule-foot.svg) repeat-x left bottom / auto var(--foot-rule-h),
linear-gradient(180deg,
rgba(220,208,180,0)   0,
rgba(220,208,180,.62) calc(var(--foot-seat) * .58),
var(--paper-deep)     var(--foot-seat));
}
footer.site-foot::before{
content:"";position:absolute;top:14px;left:0;right:0;height:var(--foot-art-h);
background:url(../art/drollery.png) center bottom / contain no-repeat;
}
footer.site-foot::after{
content:"";display:block;width:9px;height:9px;margin:1.2rem auto .1rem;
background:var(--oxblood);border:1px solid var(--gold);transform:rotate(45deg);
box-shadow:0 0 0 2px rgba(185,138,47,.22);
}
.foot-nav{
max-width:58rem;margin:0 auto 1.15rem;padding:.95rem 1.2rem .85rem;
border-top:1px solid var(--gold-text);
border-bottom:1px solid var(--gold-text);
background:
repeating-linear-gradient(45deg,  rgba(185,138,47,.11) 0 1px, transparent 1px 13px),
repeating-linear-gradient(-45deg, rgba(185,138,47,.11) 0 1px, transparent 1px 13px);
}
.foot-nav a{font-family:var(--utility);color:var(--oxblood);text-transform:none;letter-spacing:.06em}
.foot-nav a:hover,.foot-nav a:focus-visible{color:var(--oxblood-deep);border-bottom-color:var(--gold)}
.foot-nav-group + .foot-nav-group{gap:1.25rem}
.foot-nav-group + .foot-nav-group a{
font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(59,42,23,.86);
}
.foot-nav-group + .foot-nav-group a:hover,
.foot-nav-group + .foot-nav-group a:focus-visible{color:var(--oxblood)}
.foot-updated{
opacity:1;color:var(--oxblood);
font-family:var(--utility);font-size:.84rem;letter-spacing:.06em;
line-height:1.7;margin:0 0 .5rem;
}
.foot-credit{color:rgba(59,42,23,.92);font-size:.8rem;letter-spacing:.1em;line-height:1.8}
.foot-sources{
color:rgba(59,42,23,.78);font-size:.66rem;letter-spacing:.05em;line-height:1.75;
max-width:46rem;margin:.1rem auto 0;
}
.foot-scribe{max-width:34rem;margin:1.1rem auto 0;padding-top:.9rem;position:relative}
.foot-scribe::before{content:'';position:absolute;top:0;left:50%;width:4rem;margin-left:-2rem;
border-top:1px solid rgba(185,138,47,.7)}
.foot-scribe .fs-text{margin:0;padding:0;border:0}
.foot-scribe .fs-text p{font-family:'Almendra','Cardo',serif;font-style:italic;
font-size:1.12rem;line-height:1.45;letter-spacing:0;text-transform:none;
color:var(--ink);margin:0}
.foot-scribe .fs-source{margin-top:.35rem;font-size:.66rem;letter-spacing:.05em;
line-height:1.6;color:rgba(59,42,23,.78)}
.foot-scribe[hidden]{display:none}
@media (min-width:88rem){
footer.site-foot .foot-scribe{
--fs-w:min(15rem, calc((100% - 58rem) / 2 - 3rem));
--fs-lift:.5rem;
position:absolute;width:var(--fs-w);max-width:none;
top:calc(var(--foot-seat) + .5rem + var(--fs-lift) + var(--fs-drop,0rem));
margin:0;padding:0;text-align:left;
transform:rotate(var(--fs-tilt,0deg));transform-origin:50% 50%}
footer.site-foot .foot-scribe::before{content:none}
footer.site-foot .foot-scribe.fs-left{
left:calc(((100% - 58rem) / 2 - var(--fs-w)) / 2 + var(--fs-nudge,0rem))}
footer.site-foot .foot-scribe.fs-right{text-align:right;
right:calc(((100% - 58rem) / 2 - var(--fs-w)) / 2 - var(--fs-nudge,0rem))}
footer.site-foot .foot-scribe .fs-text p{font-size:1.02rem;line-height:1.4}
footer.site-foot .foot-scribe.fs-diagonal{
--fs-w:min(12.5rem, calc((100% - 58rem) / 2 - 4rem));--fs-lift:2.4rem}
}
@media print{ .foot-scribe{display:none !important} }
.admin-tabs button,.btn{font-family:var(--utility);text-transform:none}
.btn{background:var(--oxblood);color:var(--paper);border-color:var(--gold)}
@media (max-width:640px){
footer.site-foot{--foot-art-h:104px;--foot-seat:118px}
.foot-nav{padding:.75rem .5rem .65rem;margin-bottom:.9rem;gap:.45rem 1rem}
.foot-nav-group{gap:.45rem 1.05rem}
.foot-nav-group + .foot-nav-group a{letter-spacing:.1em}
}
.empty-drollery{display:flex;justify-content:center;margin-bottom:.8rem}
.empty-drollery svg{width:210px;height:auto}
.tick:focus-visible,.era-btn:focus-visible,.seg button:focus-visible,.jump-btn:focus-visible,
.poster-card:focus-visible,.show-stack-card:focus-visible,.surprise-btn:focus-visible,
.foot-nav a:focus-visible,.back-btn:focus-visible,.clear-filters:focus-visible{
outline:3px solid var(--gold);outline-offset:2px}
@keyframes pp-flash{
0%,100%{outline:0 solid transparent;outline-offset:2px}
25%,65%{outline:3px solid var(--oxblood);outline-offset:3px}
}
.poster-field{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.poster-field .btn{flex:0 0 auto}
.related{margin-top:2rem;border-top:3px double var(--gold);padding-top:1rem}
.related h3{font-family:var(--utility);color:var(--lake);text-transform:none;letter-spacing:.06em;margin-bottom:.5rem}
.related ul{list-style:none;padding:0;margin:0}
.related li{display:flex;align-items:baseline;gap:.6rem;padding:.35rem 0;border-bottom:1px solid rgba(59,42,23,.18)}
.related li a{font-family:var(--body);font-weight:700;color:var(--oxblood);flex:1 1 auto}
:root{ --gold-text:#7F5F14; }
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--oxblood);color:var(--paper);
font-family:var(--utility);padding:.6rem 1rem;border:2px solid var(--gold);text-decoration:none}
.skip-link:focus{left:.5rem;top:.5rem}
main:focus{outline:none}
.mini-note{opacity:1;color:rgba(59,42,23,.78)}
@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;
transition-duration:.001ms !important;scroll-behavior:auto !important}
}
.figures{margin-top:2rem;border-top:3px double var(--gold);padding-top:1rem}
.figures h3{font-family:var(--utility);color:var(--lake);text-transform:none;letter-spacing:.06em;margin-bottom:.6rem}
.figure-portrait{flex:0 0 150px;width:150px}
.figure-portrait svg{width:150px;height:auto;border:3px solid var(--ink);box-shadow:0 0 0 3px var(--gold),4px 4px 0 rgba(59,42,23,.3);display:block}
@media (max-width:560px){ .figure-portrait{flex:0 0 110px;width:110px} .figure-portrait svg{width:110px} }
@media print {
:root{
--paper:#fff; --paper-deep:#fff; --ink:#000;
--oxblood:#6b1a16; --lake:#1d3865; --gold:#6b5214; --gold-bright:#6b5214;
--gold-text:#6b5214; --salt-ink:#6b1a16;
}
*{ -webkit-print-color-adjust:exact; print-color-adjust:exact; box-shadow:none !important }
body{ background:#fff !important; color:#000; font-size:11pt }
.sprockets, .admin-link, .skip-link, .toast, .pp-bookmark,
.back-btn, .figure-pager, .browse-tabs, .stat-sort, .finder,
.copy-link, .copy-said, .post-toc,
.ref-panel,.gn-ask,.gn-panel,.sn-ask,.sn-panel,.gl-ask,.gl-tip-panel,.gl-filter,.gl-jump,.era-bar,.era-hint,.filter-row,.timeline-wrap,.controls,.foot-nav,footer.site-foot::before,.empty-drollery,.notfound-art{ display:none !important }
header.masthead{ border-bottom:1pt solid #000; padding:0 0 .4rem; margin-bottom:.8rem;
background:none !important }
.masthead-logo img, .masthead-logo svg{ width:180px !important; max-width:40% }
main{ max-width:none; padding:0 }
a{ color:#000; text-decoration:none }
.salt-note{ page-break-inside:avoid; background:none; border-left:2pt solid var(--oxblood) }
.figures, .related{ page-break-inside:avoid; border-top:1pt solid #000 }
.figure-portrait{ flex:0 0 110px; width:110px }
.figure-portrait svg{ width:110px }
.review-body a[href^="http"]::after,.related a::after,.period-tags a::after{
content:" (" attr(href) ")"; font-size:8pt; color:#444; word-break:break-all;
}
.related a[href^="review.html"]::after,.period-tags a::after{ content:"" }
footer.site-foot{ padding-top:.6rem !important; padding-bottom:.6rem !important;
border-top:1pt solid #000; background:none !important;
font-size:8pt; page-break-inside:avoid }
footer.site-foot::before, footer.site-foot::after{ content:none !important }
}
.timeline{position:relative}
.threads{margin-top:1.6rem;border-top:3px double var(--gold);padding-top:1rem}
.threads h3{font-family:var(--utility);color:var(--moss);text-transform:none;letter-spacing:.06em;margin-bottom:.5rem}
[hidden]{display:none !important}
.rating-none{font-style:italic;color:rgba(59,42,23,.78);font-size:.86em;
font-variant-numeric:normal;letter-spacing:0;white-space:normal}
.rating-none .rn-why{font-size:.9em}
.poster-meta .p-lb.unrated{color:rgba(59,42,23,.78);font-style:italic}
.poster-meta .p-lb.unrated .lb-num{color:rgba(59,42,23,.6);font-style:normal}
.salt-compact.unsalted,.salt-row.unsalted{opacity:.72;font-style:italic}
.salt-compact.unsalted .salt-emblem,.salt-row.unsalted .salt-emblem{opacity:.7}
.salt-opt[title="Unsalted"]{border-style:dashed}
@media (hover:none) and (pointer:coarse){
a,button,select,input,summary,.poster-card,.show-stack-card,.tick,.heat-cell{
-webkit-tap-highlight-color:rgba(158,43,37,.14)}
}
@media (max-width:640px){
header.masthead{padding-top:1.4rem;padding-bottom:1rem}
.masthead-logo{margin-top:.35rem}
.poster-card,.show-stack-card{width:100%}
.poster{width:100%;height:auto;aspect-ratio:172/250}
.poster img.tmdb{width:100%;height:100%;object-fit:cover}
.poster-meta{width:100%}
}
@media (max-width:400px){
.masthead-logo img,.masthead-logo svg{max-width:min(88vw,100%)}
}
body{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
footer.site-foot{padding-bottom:calc(var(--foot-rule-h) + 1.5rem + env(safe-area-inset-bottom,0px))}
@media (max-width:640px){
:root{ --utility:'Cardo',Georgia,serif; }
}
.reading{margin-top:1.8rem;border-top:3px double var(--gold);padding-top:1rem}
.reading h3{font-family:var(--utility);color:var(--lake);text-transform:none;
letter-spacing:.06em;margin-bottom:.6rem}
.salt-range-dash{font-family:var(--utility);font-size:.74rem;opacity:.75;margin:0 .1rem}
html{scrollbar-width:thin;scrollbar-color:var(--oxblood) var(--paper-deep)}
*{scrollbar-width:thin;scrollbar-color:var(--oxblood) var(--paper-deep)}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:var(--paper-deep);border:1px solid rgba(59,42,23,.25)}
::-webkit-scrollbar-thumb{background:var(--oxblood);border:1px solid var(--ink)}
::-webkit-scrollbar-thumb:hover{background:var(--oxblood-deep)}
::-webkit-scrollbar-corner{background:var(--paper-deep)}
.btn, .admin-tabs button, .val-badge, .undo-btn, .cite-copy,
.period-row .btn, .credit-pager button, .thread-pager button, .browse-tabs button{
transition:transform .06s ease, box-shadow .06s ease, background .12s ease;
}
.btn:active, .admin-tabs button:active, .undo-btn:active, .cite-copy:active,
.period-row .btn:active, .credit-pager button:active, .thread-pager button:active{
transform:translate(2px,2px);
box-shadow:none !important;
}
.btn:focus-visible, .admin-tabs button:focus-visible{
outline:3px solid var(--gold); outline-offset:2px;
}
.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.content-page > h1,.browse-page > h1,.stats-page > h1{
font-family:var(--display);font-weight:400;color:var(--oxblood);
font-size:1.9rem;letter-spacing:.02em;margin-bottom:.4rem;
}
@media (max-width:640px){
.content-page > h1,.browse-page > h1,.stats-page > h1{font-size:1.55rem}
}
.breakdown{margin-top:2rem;border-top:3px double var(--gold);padding-top:1rem}
.breakdown h3{font-family:var(--utility);color:var(--lake);text-transform:none;
letter-spacing:.06em;margin-bottom:.2rem}
@media print{
.breakdown{page-break-inside:avoid}
}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
svg.scatter{width:100%;height:auto;display:block;
border:2px solid var(--ink);background:var(--paper);
box-shadow:3px 3px 0 rgba(59,42,23,.2)}
@media print{
svg.scatter{box-shadow:none}
}
.wm-land path{fill:rgba(216,192,120,.55);stroke:none}
.wm-graticule line,.wm-equator,.wm-tropic{stroke:rgba(59,42,23,.28)}
.salt-dist{list-style:none;margin:.8rem 0;padding:0;display:flex;flex-direction:column;gap:.3rem}
.sd-row{display:flex;align-items:center;gap:.6rem;font-family:var(--utility);font-size:.76rem}
.sd-row.is-empty{opacity:.45}
.sd-level{
flex:0 0 1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;
border:1.5px solid var(--ink);background:var(--paper-deep);font-size:.8rem;
}
.sd-name{flex:0 0 9.5rem}
.sd-bar{flex:1 1 auto;height:.85rem;background:rgba(59,42,23,.08);border:1px solid rgba(59,42,23,.18)}
.sd-fill{display:block;height:100%;background:var(--oxblood)}
.sd-count{flex:0 0 2rem;text-align:right;font-size:.9rem}
@media (max-width:560px){ .sd-name{flex:0 0 6.5rem;font-size:.68rem} }
.masthead.masthead-compact{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
padding:.5rem 1.5rem;text-align:left}
.masthead.masthead-compact .masthead-logo{margin:0}
.masthead.masthead-compact .masthead-logo img{width:150px;margin:0}
.masthead.masthead-reader{padding:.55rem 1.5rem .55rem calc(max(.6rem,2vw) + 62px);border-bottom:none}
.masthead.masthead-reader .masthead-logo img{width:58px;height:58px}
.nav-bar{position:relative;z-index:60;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;
gap:.4rem 1.4rem;padding:.4rem 1rem .4rem calc(max(.6rem,2vw) + 62px);
border-top:1.5px solid rgba(59,42,23,.35);border-bottom:3px double var(--ink);
background:var(--paper-deep);font-family:var(--utility)}
.nav-list{list-style:none;display:flex;flex-wrap:wrap;gap:.2rem .35rem;margin:0;padding:0}
.nav-item{position:relative;margin:0}
.nav-top{display:inline-block;padding:.35rem .7rem;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;
color:var(--ink);text-decoration:none;cursor:pointer;border:1.5px solid transparent;line-height:1.2}
summary.nav-top{list-style:none}
summary.nav-top::-webkit-details-marker{display:none}
summary.nav-top::after{content:" \25BE";font-size:.7em}
.nav-top:hover,.nav-group[open] > .nav-top{border-color:var(--ink);background:var(--paper)}
.nav-top:focus-visible,.nav-menu a:focus-visible,.nav-search :focus-visible{outline:2px solid var(--lake);outline-offset:2px}
.nav-top.nav-here{color:var(--oxblood);box-shadow:inset 0 -2px 0 var(--oxblood)}
.nav-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:70;list-style:none;margin:0;padding:.35rem;
width:max-content;min-width:16rem;max-width:22rem;background:var(--paper);border:2px solid var(--ink);
box-shadow:5px 5px 0 rgba(36,28,18,.28)}
.nav-item:last-child .nav-menu{left:auto;right:0}
.nav-menu li{margin:0}
.nav-menu a{display:block;padding:.4rem .55rem;text-decoration:none;color:var(--ink);border-left:3px solid transparent}
.nav-menu a:hover{background:var(--gold-bright)}
.nav-menu a[aria-current="page"]{border-left-color:var(--oxblood);background:rgba(158,43,37,.06)}
.nav-name{display:block;font-size:.84rem;color:var(--oxblood);letter-spacing:.04em}
.nav-gloss{display:block;font-family:var(--body);font-size:.76rem;line-height:1.3;color:rgba(59,42,23,.82);margin-top:.05rem}
.nav-search{display:flex;gap:.3rem;margin:0}
.nav-search input{width:13rem;min-width:0;font-family:var(--body);font-size:.88rem;padding:.3rem .5rem;
border:1.5px solid var(--ink);background:var(--paper);color:var(--ink)}
.nav-search button{font-family:var(--utility);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;
padding:.3rem .65rem;background:var(--ink);color:var(--paper);border:1.5px solid var(--ink);cursor:pointer}
.nav-search button:hover{background:var(--oxblood);border-color:var(--oxblood)}
.nav-search{position:relative}
.ns-list{position:absolute;top:calc(100% + 4px);right:0;z-index:75;list-style:none;margin:0;padding:.3rem;
width:min(26rem,calc(100vw - 1.5rem));max-height:min(60vh,26rem);overflow-y:auto;
background:var(--paper);border:2px solid var(--ink);box-shadow:5px 5px 0 rgba(36,28,18,.28)}
.ns-list[hidden]{display:none}
.ns-opt{margin:0}
.ns-opt a{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:.6rem;align-items:baseline;
padding:.35rem .5rem;text-decoration:none;color:var(--ink);border-left:3px solid transparent}
.ns-opt[aria-selected="true"] a,.ns-opt a:hover{background:var(--gold-bright);border-left-color:var(--oxblood)}
.ns-name{font-family:var(--body);font-size:.92rem;line-height:1.25;color:var(--oxblood);overflow-wrap:anywhere}
.ns-kind{font-family:var(--utility);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;
color:var(--lake);white-space:nowrap}
.ns-sub{grid-column:1 / -1;font-family:var(--body);font-size:.74rem;color:rgba(59,42,23,.78)}
.ns-browse{border-top:1px solid rgba(59,42,23,.25);margin-top:.25rem;padding-top:.2rem}
.ns-browse .ns-name{font-style:italic}
@media (max-width:560px){
.masthead.masthead-reader{padding-left:3.6rem;padding-right:1rem}
.nav-bar{padding-left:3.4rem;padding-right:.6rem;justify-content:flex-start}
.nav-item{position:static}
.nav-menu,.nav-item:last-child .nav-menu{left:.5rem;right:.5rem;width:auto;min-width:0;max-width:none}
.nav-search{flex:1 1 100%}
.nav-search input{flex:1 1 auto;width:auto}
}
