/*
Theme Name: Mercury — The NSFW List
Template: mercury
Version: 1.1.0
Description: Editorial child theme for The NSFW List, with accessible reading controls.
Text Domain: mercury-tnl
*/
:root{--tnl-paper:#f7f5ef;--tnl-ink:#24252a;--tnl-muted:#605d63;--tnl-accent:#742d58;--tnl-line:#dcd8d0;--tnl-card:#fffdf8;--tnl-soft:#ece7ed;--tnl-reading-size:18px}
body.tnl-site{margin:0;background:var(--tnl-paper);color:var(--tnl-ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.tnl-site *{box-sizing:border-box}.tnl-site a{color:var(--tnl-accent);text-underline-offset:4px}.tnl-site a:hover{text-decoration:underline}.tnl-site :focus-visible{outline:3px solid var(--tnl-accent);outline-offset:4px}.tnl-wrap{width:min(1160px,calc(100% - 64px));margin:auto}.tnl-skip{position:absolute;left:16px;top:-120px;z-index:100000;background:var(--tnl-card);padding:12px 20px}.tnl-skip:focus{top:10px}.tnl-header{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:26px 0;border-bottom:1px solid var(--tnl-line)}.tnl-brand{font-size:25px;letter-spacing:-1.1px;font-weight:850;color:var(--tnl-ink)!important;text-decoration:none!important;white-space:nowrap}.tnl-brand span{color:var(--tnl-accent)}.tnl-nav{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;font-size:14px}.tnl-nav a{color:var(--tnl-ink);text-decoration:none;padding:9px 0}.tnl-age{font-size:11px;border:1px solid var(--tnl-line);padding:6px 8px;border-radius:50%}.tnl-hero{display:grid;grid-template-columns:1.5fr 1fr;gap:65px;padding:75px 0 65px;align-items:center}.tnl-kicker{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:750;color:var(--tnl-accent)}.tnl-site h1,.tnl-site h2,.tnl-site h3{color:var(--tnl-ink);font-family:Georgia,"Times New Roman",serif;line-height:1.17;font-weight:500;overflow-wrap:break-word}.tnl-hero h1{font-size:clamp(44px,5.4vw,70px);letter-spacing:-2px;margin:18px 0 24px}.tnl-hero h1 em{color:var(--tnl-accent)}.tnl-lead{font-size:18px;color:var(--tnl-muted);line-height:1.8;max-width:580px}.tnl-button{display:inline-block;background:var(--tnl-accent);color:var(--tnl-card)!important;padding:12px 22px;text-decoration:none;font-size:14px;font-weight:650;border:1px solid var(--tnl-accent);cursor:pointer}.tnl-button:hover{filter:brightness(.92)}.tnl-hero-note{font-size:12px;color:var(--tnl-muted);margin-top:20px}.tnl-checklist{background:var(--tnl-card);border:1px solid var(--tnl-line);padding:30px;box-shadow:10px 10px 0 var(--tnl-soft)}.tnl-checklist h2{font-size:29px;margin:15px 0 25px}.tnl-check-row{padding:17px 0;border-top:1px solid var(--tnl-line);display:grid;grid-template-columns:27px 1fr;gap:12px;font-size:14px}.tnl-check-row span{color:var(--tnl-accent);font-size:12px}.tnl-check-row p{font-size:13px;color:var(--tnl-muted);margin:4px 0 0}.tnl-section{border-top:1px solid var(--tnl-line);padding:45px 0 55px}.tnl-section-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:26px}.tnl-section h2{font-size:36px;margin:8px 0 0}.tnl-section-head p{color:var(--tnl-muted);font-size:14px;max-width:290px;margin:0}.tnl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tnl-card{background:var(--tnl-card);border:1px solid var(--tnl-line);display:flex;flex-direction:column;min-width:0}.tnl-card-art{padding:24px;min-height:135px;background:var(--tnl-soft);display:flex;align-items:center;justify-content:space-between}.tnl-glyph{font:60px Georgia,serif;color:var(--tnl-accent)}.tnl-card-art small{font-size:10px;text-transform:uppercase;letter-spacing:.09em}.tnl-card-copy{padding:23px;display:flex;flex-direction:column;flex:1}.tnl-card h3{font-size:27px;margin:10px 0 13px}.tnl-card h3 a{color:var(--tnl-ink);text-decoration:none}.tnl-card h3 a:hover{text-decoration:underline}.tnl-card p{font-size:14px;color:var(--tnl-muted)}.tnl-card-meta{font-size:12px;padding-top:15px;border-top:1px solid var(--tnl-line);margin-top:auto}.tnl-principles{display:grid;grid-template-columns:1fr 1.5fr;gap:65px}.tnl-principles h2{margin:12px 0 20px}.tnl-principles p{color:var(--tnl-muted)}.tnl-rules{display:grid;grid-template-columns:1fr 1fr;gap:25px}.tnl-rules h3{font:650 16px system-ui,sans-serif;margin:0 0 8px}.tnl-rules p{font-size:14px}.tnl-author{background:var(--tnl-soft);display:flex;gap:24px;padding:30px;align-items:center}.tnl-avatar{display:grid;place-items:center;width:64px;height:64px;flex:none;background:var(--tnl-accent);color:var(--tnl-card);border-radius:50%;font:34px Georgia,serif}.tnl-author h2{font-size:28px;margin:0 0 8px}.tnl-author p{font-size:14px;margin:0}.tnl-footer{padding:42px 0 30px}.tnl-footer-top{display:flex;justify-content:space-between;gap:25px}.tnl-footer nav{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:13px;max-width:750px;align-items:center}.tnl-fine{font-size:12px;color:var(--tnl-muted);border-top:1px solid var(--tnl-line);padding-top:20px;margin-top:24px}.tnl-reading{max-width:820px;margin:0 auto;padding:45px 0 60px;font-size:var(--tnl-reading-size);line-height:1.85}.tnl-reading h1{font-size:clamp(37px,4.5vw,54px);letter-spacing:-1px;margin:20px 0 24px}.tnl-reading h2{font-size:1.7em;margin:1.6em 0 .65em;scroll-margin-top:25px}.tnl-reading h3{font-size:1.3em;margin:1.35em 0 .6em}.tnl-reading p{margin:0 0 1.25em}.tnl-reading ul,.tnl-reading ol{padding-left:1.35em;margin:0 0 1.4em}.tnl-reading li{margin-bottom:.5em}.tnl-breadcrumbs{font-size:13px;display:flex;gap:10px;flex-wrap:wrap;line-height:1.5}.tnl-byline{font-size:13px;color:var(--tnl-muted);display:flex;flex-wrap:wrap;gap:7px 17px;margin-bottom:25px}.tnl-reading .tnl-callout{background:var(--tnl-card);border-left:4px solid var(--tnl-accent);padding:22px 25px;margin:26px 0}.tnl-reading .tnl-callout p:last-child{margin-bottom:0}.tnl-reading table{width:100%;border-collapse:collapse;background:var(--tnl-card);font-size:.88em}.tnl-reading th,.tnl-reading td{border:1px solid var(--tnl-line);padding:12px 14px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.tnl-reading th{background:var(--tnl-soft)}.tnl-table-scroll{overflow-x:auto;margin:26px 0}.tnl-table-scroll:focus{outline:3px solid var(--tnl-accent)}.tnl-reading .tnl-toc{background:var(--tnl-card);border:1px solid var(--tnl-line);padding:20px 25px;margin:25px 0}.tnl-toc h2{font:650 14px system-ui,sans-serif;margin:0 0 12px}.tnl-toc ol{font-size:15px;line-height:1.7;margin:0}.tnl-reading details{border-top:1px solid var(--tnl-line);padding:15px 0}.tnl-reading summary{font-weight:650;cursor:pointer}.tnl-reading details p{margin:12px 0 0}.tnl-disclosure{font-size:14px;color:var(--tnl-muted);padding:18px;border:1px solid var(--tnl-line);margin-bottom:25px}.tnl-reading img{max-width:100%;height:auto}.tnl-reading .tnl-grid{font-size:16px}.tnl-a11y-trigger{border:1px solid var(--tnl-line);background:var(--tnl-card);color:var(--tnl-ink);font:600 12px system-ui,sans-serif;padding:10px 12px;cursor:pointer;min-height:40px}.tnl-a11y-dialog{background:var(--tnl-card);color:var(--tnl-ink);border:1px solid var(--tnl-line);width:min(460px,calc(100% - 28px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;box-shadow:0 15px 80px #0005}.tnl-a11y-dialog::backdrop{background:#15121ab0}.tnl-a11y-dialog h2{font-size:28px;margin:0 0 15px}.tnl-a11y-dialog label{display:flex;gap:12px;align-items:center;margin:20px 0;font-size:16px;cursor:pointer}.tnl-a11y-dialog input[type=checkbox]{appearance:auto;width:20px;height:20px;accent-color:var(--tnl-accent)}.tnl-a11y-dialog select{appearance:auto;background:var(--tnl-card);color:var(--tnl-ink);border:1px solid var(--tnl-line);width:100%;padding:12px;font:16px system-ui,sans-serif;height:auto}.tnl-a11y-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.tnl-a11y-actions button{font-size:14px}.tnl-a11y-dialog small{display:block;line-height:1.6;color:var(--tnl-muted);font-size:12px}.tnl-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.tnl-site.tnl-links a{text-decoration:underline!important}.tnl-site.tnl-contrast{--tnl-paper:#fff;--tnl-card:#fff;--tnl-ink:#101010;--tnl-muted:#242424;--tnl-accent:#570b44;--tnl-line:#555;--tnl-soft:#eee}.tnl-site.tnl-motion *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.tnl-reading .tnl-article-footer{margin-top:35px;padding-top:25px;border-top:1px solid var(--tnl-line)}
@media(max-width:800px){.tnl-wrap{width:calc(100% - 36px)}.tnl-header{flex-wrap:wrap;gap:15px;padding:20px 0}.tnl-brand{font-size:24px}.tnl-nav{gap:5px 17px;font-size:13px}.tnl-hero{grid-template-columns:1fr;gap:35px;padding:40px 0 45px}.tnl-hero h1{font-size:50px}.tnl-checklist{box-shadow:5px 5px 0 var(--tnl-soft);padding:23px}.tnl-grid{grid-template-columns:1fr}.tnl-card{display:grid;grid-template-columns:100px minmax(0,1fr)}.tnl-card-art{padding:15px;justify-content:center}.tnl-card-art small{display:none}.tnl-glyph{font-size:42px}.tnl-card-copy{padding:20px}.tnl-card h3{font-size:25px}.tnl-section-head{flex-direction:column;align-items:start}.tnl-section-head p{max-width:none}.tnl-section h2{font-size:32px}.tnl-principles{grid-template-columns:1fr;gap:20px}.tnl-rules{gap:25px}.tnl-author{padding:24px;align-items:start;gap:18px}.tnl-avatar{width:45px;height:45px;font-size:26px}.tnl-footer-top{flex-direction:column}.tnl-reading{padding:35px 0 45px}.tnl-reading h1{font-size:38px}.tnl-reading h2{font-size:1.45em}.tnl-reading table{min-width:450px}.tnl-lead{font-size:17px}}
@media(max-width:370px){.tnl-rules{grid-template-columns:1fr}.tnl-card{grid-template-columns:75px minmax(0,1fr)}.tnl-card-copy{padding:16px}.tnl-glyph{font-size:33px}.tnl-hero h1{font-size:44px}.tnl-a11y-trigger{font-size:11px}.tnl-reading h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.tnl-site *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Color modes share the same editorial typography and spacing. */
:root{color-scheme:light;--tnl-button-bg:#742d58;--tnl-button-ink:#fffdf8}
html[data-theme=dark]{color-scheme:dark;--tnl-paper:#141217;--tnl-ink:#f2e9ed;--tnl-muted:#bfb2bc;--tnl-accent:#dfa3c8;--tnl-line:#3c333f;--tnl-card:#1d1921;--tnl-soft:#29212e;--tnl-button-bg:#dfa3c8;--tnl-button-ink:#21121c}
.tnl-site [hidden]{display:none!important}
.tnl-site .tnl-button{background:var(--tnl-button-bg);color:var(--tnl-button-ink)!important;border-color:var(--tnl-button-bg);min-height:44px}
.tnl-site .tnl-avatar{background:var(--tnl-button-bg);color:var(--tnl-button-ink)}
.tnl-nav{gap:8px 20px}.tnl-a11y-trigger{min-height:44px}.tnl-theme-toggle:not([hidden]){display:inline-flex;align-items:center;gap:8px}.tnl-theme-toggle>span:first-child{font-size:18px;line-height:1}
.tnl-hero{grid-template-columns:1.25fr 1fr;gap:60px;padding:58px 0 48px}.tnl-hero h1{font-size:clamp(44px,5.3vw,68px)}
.tnl-hero-art{position:relative;margin:0;min-width:0;aspect-ratio:1.04;background:#201821;overflow:hidden;border:1px solid var(--tnl-line)}
.tnl-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:73% center;position:absolute;inset:0}
.tnl-hero-art:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(18,13,20,.88));pointer-events:none}
.tnl-hero-art figcaption{position:absolute;z-index:1;left:28px;bottom:26px;color:#fff3fa;font:26px/1.25 Georgia,serif}
.tnl-hero-art figcaption span{display:block;font:650 10px/1.5 system-ui,sans-serif;letter-spacing:.14em;margin-bottom:10px;color:#ead5e2}
.tnl-check-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid var(--tnl-line);padding:12px 0 30px}
.tnl-check-strip .tnl-check-row{border:0;padding:20px 0 4px;gap:10px}.tnl-check-strip b{font-size:14px}.tnl-check-strip p{font-size:13px;line-height:1.65}
.tnl-grid-single{grid-template-columns:1fr}.tnl-grid-single .tnl-card{display:grid;grid-template-columns:1.1fr 1fr}.tnl-grid-single .tnl-card-copy{padding:32px 38px}.tnl-grid-single .tnl-card h3{font-size:36px;line-height:1.17}.tnl-grid-single .tnl-card p{font-size:16px;line-height:1.75}
.tnl-card-art{padding:0;position:relative;aspect-ratio:3/2;overflow:hidden;min-height:0}.tnl-card-art img{display:block;width:100%;height:100%;object-fit:cover}.tnl-card-art .tnl-glyph{padding:25px}
.tnl-grid-single .tnl-card-art{height:100%;aspect-ratio:auto;min-height:300px}.tnl-grid-single .tnl-card-art img{position:absolute;inset:0;object-position:65% center}
.tnl-featured{margin:25px 0 32px}.tnl-featured img{width:100%;height:auto;display:block;aspect-ratio:3/2;object-fit:cover;border:1px solid var(--tnl-line)}.tnl-featured figcaption{font:12px/1.6 system-ui,sans-serif;color:var(--tnl-muted);margin-top:9px}
.tnl-reading .tnl-toc{margin:24px 0 30px}.tnl-reading code{overflow-wrap:anywhere}.tnl-reading a{overflow-wrap:break-word}
html[data-theme=dark] .tnl-site.tnl-contrast{--tnl-paper:#000;--tnl-card:#080808;--tnl-ink:#fff;--tnl-muted:#eee;--tnl-accent:#ffc2e8;--tnl-line:#aaa;--tnl-soft:#171717;--tnl-button-bg:#ffc2e8;--tnl-button-ink:#000}
html[data-theme=light] .tnl-site.tnl-contrast{--tnl-button-bg:#570b44;--tnl-button-ink:#fff}
@media(max-width:1000px){.tnl-header{flex-wrap:wrap;gap:14px}.tnl-hero{gap:35px}.tnl-hero h1{font-size:54px}.tnl-grid-single .tnl-card-copy{padding:25px}.tnl-grid-single .tnl-card h3{font-size:31px}}
@media(max-width:800px){.tnl-hero{grid-template-columns:1fr;padding:35px 0;gap:30px}.tnl-hero h1{font-size:50px;max-width:620px}.tnl-hero-art{aspect-ratio:1.3;max-height:450px}.tnl-hero-art img{object-position:70% 35%}.tnl-hero-art figcaption{left:22px;bottom:22px;font-size:24px}.tnl-check-strip{grid-template-columns:1fr;gap:0;padding:6px 0 25px}.tnl-check-strip .tnl-check-row{padding:16px 0 3px}.tnl-nav{gap:6px 17px}.tnl-card,.tnl-grid-single .tnl-card{display:flex;flex-direction:column}.tnl-card-art,.tnl-grid-single .tnl-card-art{aspect-ratio:3/2;min-height:0;width:100%;height:auto}.tnl-grid-single .tnl-card-art img{position:static}.tnl-grid-single .tnl-card-copy{padding:25px}.tnl-grid-single .tnl-card h3{font-size:29px}.tnl-grid-single .tnl-card p{font-size:15px}.tnl-a11y-dialog{padding:23px}.tnl-featured{margin:22px 0 28px}}
@media(max-width:370px){.tnl-hero h1{font-size:42px}.tnl-hero-art{aspect-ratio:1.05}.tnl-hero-art figcaption{font-size:21px}.tnl-nav{gap:6px 13px}.tnl-grid-single .tnl-card-copy{padding:20px}.tnl-grid-single .tnl-card h3{font-size:27px}}
