@font-face{font-family:Newsreader;src:url(fonts/newsreader-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Newsreader;src:url(fonts/newsreader-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
/* Georgia scaled to Newsreader's advance widths and vertical metrics, so the swap does not reflow. */
@font-face{font-family:"Newsreader Fallback";src:local("Georgia");font-weight:400;size-adjust:91.6%;ascent-override:80.24%;descent-override:28.93%;line-gap-override:0%}
@font-face{font-family:"Newsreader Fallback";src:local("Georgia Bold"),local("Georgia-Bold");font-weight:600;size-adjust:82.26%;ascent-override:89.35%;descent-override:32.22%;line-gap-override:0%}

:root{--paper:#FBFAF7;--paper-2:#F2F0EA;--ink:#16161A;--ink-2:#47474F;--ink-3:#6A6A72;--rule:#DAD7CF;--rubric:#B8321A;--rubric-wash:#F5E2DA;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--serif:Newsreader,"Newsreader Fallback",Georgia,serif;--gut:clamp(16px,4vw,40px);color-scheme:light dark}
@media (prefers-color-scheme:dark){:root{--paper:#131315;--paper-2:#1C1C1F;--ink:#ECE9E2;--ink-2:#B9B6AE;--ink-3:#8F8C86;--rule:#2E2E33;--rubric:#F07250;--rubric-wash:#3A1F18}}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:17px;line-height:1.53}
a{color:var(--ink)}
a:hover{color:var(--rubric)}
b,strong{font-weight:600}
p,h1,h2,blockquote{margin:0}
.mono{font-family:var(--mono)}
button{font:inherit;color:inherit;background:transparent;border:0;padding:0;cursor:pointer}
:focus-visible{outline:2px solid var(--rubric);outline-offset:2px}
.lbl{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.rubric{color:var(--rubric)}
.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 var(--gut)}
.wrap-narrow{width:100%;max-width:760px;margin:0 auto;padding:0 var(--gut)}
.btn{display:inline-block;height:44px;line-height:42px;padding:0 14px;border:1px solid var(--ink);text-decoration:none;font-size:13px;color:var(--ink)}
.btn-quiet{border-color:var(--rule);color:var(--ink-2)}

/* header */
.site-head{border-bottom:1px solid var(--rule)}
.head-row{padding-top:18px;display:flex;flex-direction:column;gap:6px}
.wordmark{align-self:flex-start;text-decoration:none;font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.1}
.ast{color:var(--rubric);font-size:19px;vertical-align:10px;margin-left:1px}
.main-nav{display:flex;flex-wrap:wrap;margin-left:-8px;font-size:13px}
.main-nav a{height:44px;line-height:44px;padding:0 8px;text-decoration:none;color:var(--ink-2)}
.main-nav a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--rubric)}
.main-nav a:hover{color:var(--rubric)}

/* footer */
.page{flex:1 0 auto;padding-bottom:36px}
.site-foot{border-top:1px solid var(--rule)}
.foot-row{padding-top:20px;padding-bottom:32px;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--ink-3)}
.foot-row a{color:var(--ink-2)}

/* latest */
.latest-grid{padding-top:16px;display:flex;flex-wrap:wrap;column-gap:64px;row-gap:40px;align-items:flex-start}
.feed{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:28px}
.intro{font-size:15px;line-height:1.45;color:var(--ink-2)}
.empty{color:var(--ink-2)}
.side{flex:1 1 260px;display:flex;flex-direction:column;gap:32px}
.side-intro{border-top:2px solid var(--ink);padding-top:16px;display:flex;flex-direction:column;gap:10px}
.side-intro p{font-size:18px;line-height:1.45}
.side-intro a,.side-nearly>a.mono{font-size:13px;color:var(--ink-2)}
.btn-random{height:56px;display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--paper);text-decoration:none;font-size:15px;font-weight:600}
.btn-random:hover{color:var(--paper);background:var(--rubric)}
.side-nearly{border-top:1px solid var(--rule);padding-top:16px;display:flex;flex-direction:column;gap:12px}
.nearly{text-decoration:none;display:flex;flex-direction:column;gap:6px}
.nearly+.nearly{border-top:1px dashed var(--rule);padding-top:12px}
.nearly-line{font-size:17px;line-height:1.4;color:var(--ink-2)}
.nearly-togo{font-size:12px;color:var(--ink-3)}
@media (max-width:899px){.side{display:none}}
@media (min-width:900px){.intro-m{display:none}}

.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;border-top:2px solid var(--ink);font-size:13px;margin-top:4px}
.pager>a,.pager>span{height:44px;line-height:44px;text-decoration:none}
.pager .off{color:var(--ink-3)}
.pages{display:flex}
.pages>*{min-width:32px;height:44px;line-height:44px;text-align:center;text-decoration:none;color:var(--ink-2)}
.pages [aria-current]{color:var(--ink);font-weight:600;box-shadow:inset 0 -2px 0 var(--rubric)}
.pages .gap{min-width:24px;color:var(--ink-3)}
.page-of{margin-top:-20px;font-size:12px;color:var(--ink-3);text-align:center}

/* entry, list form */
.e-list{border-top:2px solid var(--ink);padding-top:12px;display:flex;flex-direction:column;gap:10px}
.e-head{display:flex;justify-content:space-between;align-items:baseline}
.e-num{font-size:15px;font-weight:600;color:var(--rubric);text-decoration:none}
.e-type,.e-nonum{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.e-subj{font-size:13px;letter-spacing:0;text-transform:none;color:var(--ink-2)}
.tag-retired{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--rubric);border:1px solid var(--rubric);padding:2px 6px}
.e-body{display:flex;flex-direction:column;gap:10px;min-width:0}
.e-line{font-size:21px;line-height:1.33}
.e-foot{margin-left:-14px;font-size:13px}
.e-foot::after{content:"";display:block;clear:both}
.e-share{float:right;height:44px;line-height:44px;padding-left:10px;color:var(--ink-2);text-decoration:none}
.e-src>summary{display:flow-root;width:fit-content;margin-left:auto;height:44px;line-height:44px;padding:0 10px;list-style:none;cursor:pointer;color:var(--ink-2)}
.e-src>summary::-webkit-details-marker{display:none}
.e-src>summary::after{content:" ▾"}
.e-src[open]>summary{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.e-src[open]>summary::after{content:" ▴"}
.src-panel{clear:both;margin-left:12px;background:var(--paper-2);padding:12px 14px;display:flex;flex-direction:column;gap:12px}
.src-panel .src-link{font-size:12px}

/* vote control */
.vote{float:left;display:flex;align-items:center}
.vote button{width:44px;height:44px;font-size:20px;color:var(--ink-2)}
.vote button:hover{color:var(--rubric)}
.score{min-width:36px;text-align:center;font-size:14px;font-weight:600}
.vote.is-up .score{color:var(--rubric)}
.vote.is-up button[value=up]{background:var(--rubric);color:var(--paper)}
.vote.is-down button[value=down]{background:var(--ink);color:var(--paper)}
.vote button:focus-visible{outline:2px solid var(--rubric);outline-offset:2px}
.vote[data-busy] button{cursor:progress}
.score{white-space:nowrap}

/* fresh queue */
.e-fresh{border-top:2px dashed var(--ink-3)}
.e-fresh .e-nonum{border:1px dashed var(--ink-3);padding:2px 6px;align-self:flex-start}
.e-fresh .e-line{color:var(--ink-2)}
.prog{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink-2);margin-top:-4px}
.prog.is-low{color:var(--ink-3)}
.ticks{display:flex;gap:3px}
.ticks i{width:14px;height:6px;border:1px solid var(--ink-3)}
.ticks i.on{background:var(--ink);border-color:var(--ink)}
.prog a{color:var(--rubric);font-weight:600}
.list-page{padding-top:22px;display:flex;flex-direction:column;gap:18px}
.list-page h1{font-size:26px;font-weight:600;letter-spacing:-.01em}
.lp-head{display:flex;flex-direction:column;gap:12px}
.lp-intro{font-size:16px;line-height:1.45;color:var(--ink-2)}
.tabs{display:flex;margin-left:-8px;font-size:13px}
.tabs a{height:44px;line-height:44px;padding:0 8px;text-decoration:none;color:var(--ink-2)}
.tabs a[aria-current]{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.list-page .feed{display:flex;flex-direction:column;gap:26px}
.period{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--ink);font-size:13px}
.period a{height:44px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink-2)}
.period a[aria-current]{background:var(--ink);color:var(--paper)}
.top-list{list-style:none;margin:0;padding:0}
.top-list li{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:8px;border-top:1px solid var(--rule);padding:14px 0}
.top-list li:first-child{border-top:2px solid var(--ink)}
.top-rank{font-size:22px;font-weight:600;color:var(--ink-3);line-height:1.2}
.top-item{text-decoration:none;display:flex;flex-direction:column;gap:6px}
.top-line{font-size:19px;line-height:1.35}
.top-meta{font-size:12px;color:var(--ink-3)}
.top-num{font-weight:600}
.top-note{font-size:12px;line-height:1.5;color:var(--ink-3)}


/* retired */
.is-retired.e-list{border-top-color:var(--ink-3)}
.is-retired .e-num{color:var(--ink-3)}
.struck{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--rubric);text-decoration-thickness:1px}
.correction{background:var(--rubric-wash);padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.correction .lbl{color:var(--rubric)}
.corr-text{font-size:16px;line-height:1.45}
.corr-note{font-size:15px;line-height:1.45;color:var(--ink-2)}
.final{font-size:12px;color:var(--ink-3)}

/* entry, full page */
.entry-main{padding-top:28px}
.e-full{display:flex;flex-direction:column;gap:18px}
.ef-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;border-bottom:2px solid var(--ink);padding-bottom:10px}
.ef-head .e-num{font-size:24px}
.is-retired .ef-head{border-bottom-color:var(--ink-3)}
.e-full>.e-line{font-size:27px;line-height:1.3;letter-spacing:-.005em}
.e-full .correction{padding:18px 16px;gap:8px}
.e-full .corr-text{font-size:19px;line-height:1.4}
.orig{display:flex;flex-direction:column;gap:6px}
.orig .e-line{font-size:24px;line-height:1.3}
.ef-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-left:-12px}
.ef-actions .vote{float:none}
.ef-actions .vote button{width:44px;height:48px;font-size:22px}
.ef-actions .score{min-width:40px;font-size:16px}
.ef-share{display:flex;gap:8px}
.sources{border-top:1px solid var(--rule);padding-top:16px;display:flex;flex-direction:column;gap:12px}
.src{display:flex;flex-direction:column;gap:4px}
.src-link{font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.src-quote{font-family:var(--serif);font-size:15px;line-height:1.45;color:var(--ink-2)}
.src-meta{font-size:12px;color:var(--ink-3)}
.src-meta a{color:var(--ink-3)}
.report{align-self:flex-start;height:44px;line-height:44px;font-size:12px;color:var(--ink-3)}
.keep-reading{margin-top:24px}
.kr-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--ink);border-bottom:1px solid var(--rule);font-size:14px}
.kr-row>*{height:64px;display:flex;align-items:center;text-decoration:none;color:var(--ink-2)}
.kr-random{justify-content:center;background:var(--ink);font-weight:600}
.kr-row .kr-random{color:var(--paper)}
.kr-row .kr-random:hover{background:var(--rubric);color:var(--paper)}
.kr-next{justify-content:flex-end}

/* about */
.about{padding-top:26px;display:flex;flex-direction:column;gap:26px}
.about-lede{display:flex;flex-direction:column;gap:12px}
.about h1{font-size:30px;font-weight:600;letter-spacing:-.015em;line-height:1.15}
.about-lede p{font-size:18px;line-height:1.5;color:var(--ink-2)}
.about section{display:flex;flex-direction:column;gap:12px}
.about h2.mono{font-size:11px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);border-bottom:2px solid var(--ink);padding-bottom:8px}
.about section>p{color:var(--ink-2);line-height:1.5}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.steps li{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:8px;line-height:1.45}
.steps .mono{font-size:14px;font-weight:600;color:var(--rubric)}
.counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-size:12px;color:var(--ink-3)}
.counts>div{padding:12px 0;display:flex;flex-direction:column;gap:2px}
.counts>div+div{padding-left:12px;border-left:1px solid var(--rule)}
.count{font-size:20px;font-weight:600;color:var(--ink)}
.about .report-box{background:var(--paper-2);padding:18px 16px;gap:10px}
.report-box h2{font-size:20px;font-weight:600}
.report-box p{font-size:16px;line-height:1.45;color:var(--ink-2)}
.report-box .btn{align-self:flex-start}
.colophon{font-size:15px;line-height:1.5;color:var(--ink-3)}
.colophon a{color:var(--ink-2)}
.notfound{padding-top:56px;display:flex;flex-direction:column;gap:14px}
.notfound h1{font-size:30px;font-weight:600}

@media (min-width:768px){
.list-page{padding-top:40px;gap:24px}
.list-page h1{font-size:34px}
.top-line{font-size:23px}
.top-list li{grid-template-columns:56px minmax(0,1fr)}
.top-rank{font-size:28px}
.head-row{padding-top:22px;flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;column-gap:32px;row-gap:4px}
.wordmark{font-size:34px;padding-bottom:10px}
.ast{font-size:23px;vertical-align:12px}
.main-nav{margin-left:0;font-size:14px}
.main-nav a{height:48px;line-height:48px;padding:0 12px}
.page{padding-bottom:64px}
.foot-row{flex-direction:row;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:24px;padding-bottom:40px}
.latest-grid{padding-top:40px}
.feed{gap:40px}
.e-list{display:grid;grid-template-columns:80px minmax(0,1fr);padding-top:16px}
.e-list>.e-head{flex-direction:column;justify-content:flex-start;gap:4px}
.e-list .e-num{font-size:17px;line-height:1.6}
.e-list .tag-type{display:none}
.e-body{gap:12px}
.e-line{font-size:28px;line-height:1.32;letter-spacing:-.005em}
.entry-main{padding-top:56px}
.e-full{gap:24px}
.ef-head{padding-bottom:12px}
.ef-head .e-num{font-size:32px}
.ef-head .e-type{font-size:12px}
.ef-head .e-subj{font-size:15px}
.e-full>.e-line{font-size:40px;line-height:1.22;letter-spacing:-.012em}
.ef-actions .score{min-width:44px;font-size:17px}
.sources{gap:14px;padding-top:18px}
.src-link{font-size:14px}
.kr-row{border-bottom:0;font-size:15px}
.about{padding-top:56px;gap:32px}
.about h1{font-size:40px}
}
.admin-act{display:inline-block;margin-right:8px}
.admin-retire{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.admin-retire input,.admin-retire textarea{font:inherit;color:inherit;background:var(--paper-2);border:1px solid var(--rule);padding:8px;width:100%;max-width:520px;min-height:44px}
.admin-retire button{margin-top:6px;cursor:pointer;background:transparent}
