/* Times of Rising v1.6.1 — functional appearance controls. */
:root{--tor-archive-columns:3;--tor-footer-columns:4;--tor-reading-line-height:1.82;--tor-home-intro-bg:#f2f5f7;--tor-hero-panel-bg:#fff}
.tor-home-intro{padding:clamp(20px,3vw,34px);border:1px solid var(--tor-line);border-radius:var(--tor-card-radius);background:var(--tor-home-intro-bg);}
.tor-hero-copy{background:var(--tor-hero-panel-bg)!important}
/* Whole-site frame is intentionally subtle; content remains fluid on small screens. */
body.tor-site-layout-framed .tor-topbar,body.tor-site-layout-framed .tor-header,body.tor-site-layout-framed .tor-nav-shell,body.tor-site-layout-framed .tor-footer{width:min(calc(100% - 28px),1600px);margin-inline:auto}
body.tor-site-layout-framed .tor-header{border-radius:0 0 var(--tor-card-radius) var(--tor-card-radius)}
body.tor-site-layout-framed .tor-footer{border-radius:var(--tor-card-radius) var(--tor-card-radius) 0 0;overflow:hidden}
body.tor-site-layout-framed .tor-topbar{border-radius:var(--tor-card-radius) var(--tor-card-radius) 0 0;overflow:hidden}
/* Alternate masthead alignment. */
body.tor-header-align-centered .tor-header-main{flex-direction:column;justify-content:center;gap:15px;padding-block:22px}
body.tor-header-align-centered .tor-branding,body.tor-header-align-centered .tor-header-actions{justify-content:center;text-align:center}
body.tor-header-align-centered .tor-brand-lockup{justify-content:center}
body.tor-header-align-centered .tor-brand-text{align-items:center}
body.tor-header-align-centered .tor-nav-inner{justify-content:center;flex-wrap:wrap}
body.tor-header-align-centered .tor-menu{justify-content:center;flex-wrap:wrap}
body.tor-header-align-centered .tor-nav-note{display:none}
/* Home feature layout variants. */
body.tor-home-hero-split-feature .tor-featured-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
body.tor-home-hero-split-feature .tor-featured-main>.tor-hero-card{display:grid;grid-template-rows:auto minmax(0,1fr);align-self:stretch}
body.tor-home-hero-split-feature .tor-featured-main>.tor-hero-card .tor-hero-media{aspect-ratio:16/10}
body.tor-home-hero-split-feature .tor-home-intro{margin-bottom:6px}
/* Archive layout density. Breakpoints override desktop preference where the viewport requires it. */
body.tor-archive-columns-2 .tor-archive-feed .tor-archive-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body.tor-archive-columns-3 .tor-archive-feed .tor-archive-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body.tor-archive-columns-4 .tor-archive-feed .tor-archive-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
body.tor-footer-columns-2 .tor-footer-main{grid-template-columns:minmax(220px,1.35fr) repeat(1,minmax(0,1fr))}
body.tor-footer-columns-3 .tor-footer-main{grid-template-columns:minmax(220px,1.35fr) repeat(2,minmax(0,1fr))}
body.tor-footer-columns-4 .tor-footer-main{grid-template-columns:minmax(220px,1.35fr) repeat(3,minmax(0,1fr))}
body.tor-title-scale-compact .tor-card-title{font-size:clamp(16px,1.35vw,19px)}
body.tor-title-scale-standard .tor-card-title{font-size:clamp(18px,1.55vw,22px)}
body.tor-title-scale-large .tor-card-title{font-size:clamp(20px,1.9vw,26px)}
body.tor-line-height-compact .tor-prose{line-height:1.65}
body.tor-line-height-comfortable .tor-prose{line-height:1.82}
body.tor-line-height-relaxed .tor-prose{line-height:1.98}
body.tor-article-header-centered .tor-article-header{text-align:center;margin-inline:auto}
body.tor-article-header-centered .tor-article-header .tor-article-meta{justify-content:center}
body.tor-article-header-centered .tor-article-header .tor-article-deck{margin-inline:auto}
body.tor-links-always .tor-prose a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
body.tor-links-hover .tor-prose a{text-decoration:none}
body.tor-links-hover .tor-prose a:hover,body.tor-links-hover .tor-prose a:focus-visible{text-decoration:underline;text-underline-offset:3px}
body.tor-links-minimal .tor-prose a{text-decoration:none;border-bottom:1px dotted currentColor}
body.tor-links-minimal .tor-prose a:focus-visible{outline:3px solid rgba(233,101,59,.55);outline-offset:3px}
.tor-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px}
.tor-card-author{font-weight:700}
.tor-reading-progress{position:fixed;z-index:1000;top:0;left:0;width:100%;height:3px;pointer-events:none;background:transparent}
.tor-reading-progress span{display:block;width:0;height:100%;background:var(--tor-accent);transform-origin:left center}
body.admin-bar .tor-reading-progress{top:32px}
@media(max-width:782px){body.admin-bar .tor-reading-progress{top:46px}}
@media(max-width:1024px){body.tor-archive-columns-4 .tor-archive-feed .tor-archive-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){body.tor-home-hero-split-feature .tor-featured-main{grid-template-columns:minmax(0,1fr)}body.tor-archive-columns-3 .tor-archive-feed .tor-archive-card-grid,body.tor-archive-columns-4 .tor-archive-feed .tor-archive-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body.tor-footer-columns-2 .tor-footer-main,body.tor-footer-columns-3 .tor-footer-main,body.tor-footer-columns-4 .tor-footer-main{grid-template-columns:minmax(0,1fr)}body.tor-footer-columns-2 .tor-footer-about,body.tor-footer-columns-3 .tor-footer-about,body.tor-footer-columns-4 .tor-footer-about{grid-column:auto}body.tor-header-align-centered .tor-header-main{gap:10px;padding-block:17px}body.tor-header-align-centered .tor-header-actions{width:100%;flex-wrap:wrap}body.tor-header-align-centered .tor-header-search{width:min(100%,360px)}body.tor-site-layout-framed .tor-topbar,body.tor-site-layout-framed .tor-header,body.tor-site-layout-framed .tor-nav-shell,body.tor-site-layout-framed .tor-footer{width:calc(100% - 16px)}body.tor-archive-columns-2 .tor-archive-feed .tor-archive-card-grid,body.tor-archive-columns-3 .tor-archive-feed .tor-archive-card-grid,body.tor-archive-columns-4 .tor-archive-feed .tor-archive-card-grid{grid-template-columns:minmax(0,1fr)}body.tor-title-scale-large .tor-card-title{font-size:20px}}
@media(prefers-reduced-motion:reduce){.tor-reading-progress span{transition:none!important}}
