:root{--control-border:#cdcdc5;--control-border-hover:#a9aaa2;--control-radius:4px;--control-icon:#7c7f77}
/* Editorial library. Structure stays in the page components; imagery is punctuation. */
:root{--bg:#f8f7f3;--card:#fff;--ink:#202b32;--muted:#5f6262;--faint:#696b68;--line:#deded7;--line-soft:#e8e7e0;--accent:#303c42;--accent-soft:#efeee8;--accent-line:#bfc3c1;--disp:'Source Serif 4',Georgia,serif;--wordmark:'Source Serif 4',Georgia,serif;--r:4px;--r-lg:4px;--r-pill:4px;--sh-1:none;--sh-2:0 3px 14px #202b3208}
html body{background:var(--bg);color:var(--ink)}
html :is(h1,.ph h1,.idmain h1,.xhead h1,.ltname){font-family:var(--disp);font-weight:400;letter-spacing:-.035em}
html :is(.shelfhead h2,.bh h2,.secth h2,.card h3){font-family:var(--disp);font-weight:400;letter-spacing:-.02em}
html :is(.shelfhead h2,.bh h2,.secth h2){font-size:24px}
html .idmain h1{font-size:42px}
html .brand{font-family:var(--wordmark);font-size:23px;letter-spacing:.13em;font-weight:400;text-transform:uppercase}
html :is(.btn,.navnew,.navsign,.fbtn,.fstbtn,.stbtn,.secbtn){border-radius:var(--control-radius);border-color:var(--control-border);color:var(--ink)}
html :is(.btn,.navnew,.navsign,.fbtn):focus-visible,html a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
html [data-action-emphasis=primary],html .guest-signup{background:var(--ink);border-color:var(--ink);color:#fff}
html :is(.ltile,.card,.sdcard){box-shadow:none;border-color:var(--line)}
html .ltile{background:var(--card)}
html .ltname{font-size:22px}
html :is(.ltmeta,.lttag,.sdh,.cardnote,.fmeta){font-family:var(--ui);letter-spacing:0}
html .ltmeta{font-size:12px;text-transform:none}
html .lttag{font-size:14px;line-height:1.6}
html .side{background:var(--bg);border-color:var(--line)}
html .guest-invite{background:var(--card)}
/* The public Home is an editorial entrance; the app retains its existing rail. */
html body.editorial-home{padding-left:0}
html .editorial-home>nav{background:#faf9f6f5;border-bottom:1px solid var(--line)}
/* The masthead follows the viewport; only page content has a reading-width cap. */
html body>nav>.navin{width:100%;max-width:none;margin:0}
html .editorial-home .navin{padding:16px 28px;gap:28px}
html .editorial-home .navlinks{display:flex;gap:24px}
html .editorial-home .navsearch{max-width:370px;flex:1;margin-left:auto}
html .editorial-home .navnew{background:var(--ink);color:white;border-color:var(--ink)}
html .editorial-home .navdice{display:none}
html .library-home{max-width:1500px;margin:0 auto}
html .library-home h2{font-family:var(--disp);font-size:25px;font-weight:400;letter-spacing:-.025em;line-height:1.2;margin:0 0 16px}
html .library-home p{font-size:15px;line-height:1.65;color:var(--muted)}
html .library-hero{position:relative;min-height:470px;display:flex;align-items:center;padding:62px 60px 34px;background:linear-gradient(90deg,#f8f7f3 0%,#f8f7f3f0 25%,#f8f7f394 52%,#f8f7f300 76%),url('/editorial-landscape.svg') center 51%/cover;border-bottom:1px solid var(--line)}
html .library-hero-copy{position:relative;max-width:720px}
html .library-hero h1{font-size:clamp(40px,4.5vw,64px);line-height:1.02;margin:0 0 22px;font-weight:400;letter-spacing:-.047em}
html .library-hero-copy>p{font-size:17px;max-width:535px;color:#39444a;line-height:1.55;margin:0 0 27px}
html .library-actions{display:flex;gap:14px;flex-wrap:wrap}
html .library-actions .btn{padding:12px 22px;font-size:14px;min-height:46px}
html .library-actions .btn.o{background:#faf9f7b8}
html .library-scale{display:flex;gap:0;margin:40px 0 0;max-width:550px}
html .library-scale>div{padding:0 28px;border-right:1px solid #9da4a480}
html .library-scale>div:first-child{padding-left:0}
html .library-scale>div:last-child{border:0}
html .library-scale dt{font-family:var(--disp);font-size:28px;line-height:1.2}
html .library-scale dd{font-size:12px;color:#4e595d;margin:5px 0 0}
html .library-image-note{position:absolute;bottom:12px;right:18px;font-size:11px;background:#f8f7f3d9;padding:3px 6px;color:#465157}
html .library-body{padding:34px 40px 0}
html .library-body .shelf{margin:0 0 30px}
html .library-body .shelfhead{margin:0 0 17px;align-items:center}
html .library-body .shelfhead h2{margin:0}
html .library-body .shelfall{font-size:13px;color:var(--ink);border-bottom:1px solid #aeb5b2;padding:5px 0}
html .library-traditions .shelfgrid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}
html .library-traditions .ltile{padding:17px 12px 14px;background:var(--card);min-width:0;border:1px solid #e6e3dc;border-radius:4px}
html .library-traditions .lthead{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
html .library-traditions .ltface{width:44px;height:44px;margin:0}
html .library-traditions .ltname{font-size:17px;letter-spacing:-.025em}
html .library-traditions .ltmeta{font-size:11px;line-height:1.5;margin:8px 0;order:3}
html .library-traditions .lttag{font-size:12px;line-height:1.5;margin:8px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
html .library-editorial{display:grid;grid-template-columns:1.35fr 1fr .85fr;gap:28px;padding:6px 0 30px;border-bottom:1px solid var(--line)}
html .library-feature{background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden}
html .cols>aside:not(.railcol) .card{background:var(--card)}
html .library-feature-image{display:block;position:relative;height:175px;overflow:hidden}
html .library-feature-image img{width:100%;height:100%;object-fit:cover;object-position:50% 45%}
html .library-feature-image span{position:absolute;bottom:0;left:0;background:#202b32d9;color:#fff;font-size:10px;padding:4px 8px}
html .library-feature>div{padding:20px}
html .library-feature h2{margin-bottom:10px}
html .library-feature p{margin:0 0 16px;font-size:14px}
html .library-text-link{font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid #bfc4c1;padding-bottom:3px}
html .library-ideas{padding:10px 0}
html .library-ideas ol{list-style:none;padding:0;margin:0}
html .library-ideas li{display:flex;align-items:baseline;gap:15px;padding:10px 0;border-bottom:1px solid var(--line-soft)}
html .library-number{font-family:var(--disp);font-size:20px;color:#787b75}
html .library-ideas li a{text-decoration:none}
html .library-home strong{font-weight:500}
html .library-home small{display:block;font-size:12px;color:var(--muted);margin-top:5px}
html .library-personal{background:var(--card);padding:30px 22px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;border-radius:4px}
html .library-personal svg{margin-bottom:22px}
html .library-personal p{font-size:14px;margin:0 0 20px}
html .library-personal .btn{font-size:12px}
html .library-creations{padding:28px 0;border-bottom:1px solid var(--line)}
html .library-creation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
html .library-creation .ltile{padding:20px;height:auto;min-height:205px}
html .library-creation .ltname{font-size:22px}
html .library-creation .ltrow{margin-top:auto}
html .library-lineage{padding:0 5px;font-size:12px!important;margin:10px 0 0}
html .library-create-link{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:20px}
html .library-create-link p{margin:0;font-size:14px}
html .library-create-link .btn{white-space:nowrap}
html .library-discovery{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:30px;padding:30px 0 38px}
html .library-discovery>section+section{border-left:1px solid var(--line);padding-left:28px}
html .library-themes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
html .library-themes a{padding:14px 12px;min-height:76px;display:flex;flex-direction:column;gap:9px;border:1px solid var(--line);border-radius:3px;text-decoration:none;font-size:13px}
html .library-themes span{font-family:var(--disp);font-size:17px;color:#73786e}
html .library-tree{padding:6px 0 22px}
html .library-tree a{display:block;text-decoration:none;font-size:14px;padding:9px 0 9px 18px;margin-left:15px;border-left:1px solid #b3b7ae;position:relative}
html .library-tree a:before{content:'';position:absolute;left:0;top:19px;width:10px;border-top:1px solid #b3b7ae}
html .library-tree a:first-child{font-family:var(--disp);font-size:21px;border:0;margin:0;padding-left:0}
html .library-tree a:first-child:before{display:none}
html .library-discussions ul{list-style:none;padding:0;margin:0}
html .library-discussions li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-soft)}
html .library-discussions .sigf{width:30px;height:30px;flex-shrink:0}
html .library-discussions li a{text-decoration:none;font-size:13px;line-height:1.5}
html .library-invitation{background:#202c30 url('/topography.svg') right center/60% auto;color:#fff;padding:36px 42px;display:flex;align-items:center;justify-content:space-between;gap:32px}
html .library-invitation h2{font-size:30px;margin:0 0 10px;color:#fff}
html .library-invitation p{color:#e0e4e1;margin:0;font-size:14px}
html .library-invitation .btn{background:#f4f1e9;color:#202b32;border-color:#f4f1e9;white-space:nowrap;padding:13px 25px}
html .library-footer{max-width:1500px;margin:0 auto;display:flex;align-items:center;gap:25px;padding:30px 40px;font-size:12px;color:var(--muted)}
html .library-footer span{margin-right:auto}
@media(min-width:1600px){html .library-home{margin-top:20px}html .library-hero{border-radius:5px}}
@media(max-width:1150px){html .library-traditions .shelfgrid{grid-template-columns:repeat(4,minmax(0,1fr))}html .library-editorial{grid-template-columns:1.2fr 1fr}html .library-personal{grid-column:1/-1;display:block;padding:22px}html .library-personal svg{float:left;margin:0 24px 12px 0}html .library-personal p{max-width:650px}html .editorial-home .navin{gap:18px}html .editorial-home .navlinks{gap:14px}html .editorial-home .navsearch{max-width:260px}}
@media(max-width:800px){html .library-hero{padding:40px 28px 32px;background-position:65% center}html .library-body{padding:28px 24px 0}html .library-discovery{grid-template-columns:1fr 1fr}html .library-discussions{grid-column:1/-1;border-left:0!important;padding-left:0!important}html .library-creation-grid{grid-template-columns:1fr}html .library-creation .ltile{min-height:0}html .editorial-home .navin{padding:14px 20px;gap:16px}html .editorial-home .navsearch{order:5;max-width:none;flex-basis:100%}html .editorial-home .navlinks{margin-left:auto}html .library-invitation{padding:30px 24px}html .library-footer{flex-wrap:wrap;padding:25px 24px;gap:18px}html .library-footer span{flex-basis:50%}}
@media(max-width:520px){html .library-hero h1{font-size:40px}html .library-hero-copy>p{font-size:15px}html .library-hero{background-image:linear-gradient(90deg,#f8f7f3f2,#f8f7f3b8),url('/editorial-landscape.svg');padding:34px 22px}html .library-scale>div{padding:0 14px}html .library-scale dt{font-size:24px}html .library-scale dd{font-size:11px}html .library-editorial,html .library-discovery{grid-template-columns:1fr}html .library-discovery>section+section{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:24px}html .library-traditions .shelfgrid{grid-template-columns:repeat(2,minmax(0,1fr))}html .library-hero h1 br{display:block}html .library-create-link,html .library-invitation{align-items:flex-start;flex-direction:column}html .editorial-home .brand{font-size:19px}html .editorial-home .navlinks{order:4;flex-basis:100%}html .editorial-home .navnew{margin-left:auto}html .library-footer .brand{font-size:19px}html .library-home .shelfhead h2{font-size:23px}html .library-home .shelfhead{gap:14px}}
@media(prefers-reduced-motion:reduce){html *{scroll-behavior:auto!important;transition:none!important}}
/* Account entry uses the same editorial language and the existing auth ceremony. */
html .library-login{display:grid;grid-template-columns:1fr 1fr;max-width:1180px;margin:48px auto;min-height:570px;background:var(--card);border:1px solid var(--line);border-radius:4px;overflow:hidden}
html .library-login-art{position:relative;background:linear-gradient(0deg,#202b32c9,transparent 75%),url('/editorial-landscape.svg') 72% center/cover;display:flex;align-items:flex-end;padding:42px;color:#fff}
html .library-login-art h2{font:400 34px/1.15 var(--disp);margin:0 0 18px;color:inherit}
html .library-login-art p{font-size:15px;line-height:1.7;color:#f0f2ef}
html .library-login-art small{position:absolute;top:14px;right:14px;background:#202b32a0;padding:4px 6px;font-size:11px}
html .library-login-panel{padding:55px;display:flex;flex-direction:column;justify-content:center;align-items:stretch}
html .library-login-panel>.brand{font-size:17px;margin-bottom:28px;text-align:center}
html .library-login-panel h1{font:400 34px/1.2 var(--disp);text-align:center;margin:0 0 14px}
html #login-description{font-size:14px;line-height:1.6;text-align:center;color:var(--muted);margin:0 0 28px}
html .library-login-panel label{display:block;font-size:13px;font-weight:500;margin:0 0 8px}
html .library-login-panel input{width:100%;box-sizing:border-box;padding:12px;border:1px solid #a8afaf;border-radius:4px;background:var(--card);font:16px var(--ui);color:var(--ink)}
html .library-login-panel .btn{width:100%;margin-top:12px;min-height:46px}
html #login-message{min-height:22px;font-size:13px;line-height:1.5;color:var(--muted)}
html #login-message.error{color:#8b3630}
html .library-login-panel>.library-text-link{text-align:center;align-self:center;font-size:12px}
html .library-login [hidden]{display:none!important}
@media(max-width:800px){html .library-login{margin:24px;grid-template-columns:1fr;min-height:0}html .library-login-art{display:none}html .library-login-panel{padding:38px 28px}}
/* Interior library: atmosphere at the entrance, clear paper surfaces for reading. */
html .page:has(>.cover)>.cover.cimg{background:#eeece5!important;isolation:isolate}
html .page:has(>.cover)>.cover.cimg img{filter:saturate(.48) contrast(.88);mix-blend-mode:normal;opacity:.82}
html .page:has(>.cover)>.cover.cimg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#fdfcf900 18%,#fdfcf930 50%,#fdfcf9 100%);pointer-events:none}
html .cover.cimg .ccredit{color:#384248;background:#fdfcf9e8;text-shadow:none;padding:4px 7px;border-radius:2px;font-family:var(--ui);letter-spacing:0}
html .page:has(>.headcard)>.headcard{margin-bottom:24px;background:#fdfcf9;border-color:var(--line)}
html .page:has(>.headcard)>.cols>.main{background:#fdfcf9;border:1px solid var(--line);border-radius:4px;padding:28px 30px;min-width:0}
html .page:has(>.headcard)>.cols>.main>.block:first-child{padding-top:0;margin-top:0}
html .page:has(>.headcard)>.cols>.main>.block:last-child{padding-bottom:0}
html .page:has(>.headcard)>.cols>aside{background:#fdfcf9;border-color:var(--line)}
html .page:has(>.headcard) .lede{font-family:var(--disp);font-weight:400;font-size:23px;line-height:1.45}
html .page:has(>.headcard) .squote{font-family:var(--disp);font-size:24px;line-height:1.5}
html .page:has(>.headcard) .body{line-height:1.8}
html .cols>aside #you{--ink:#202b32;--muted:#5f6262;--faint:#696b68;--line:#deded7;--line-soft:#e8e7e0;--accent:#303c42;--ink-soft:#39444a;background:linear-gradient(110deg,#fdfcf9fa 30%,#fdfcf9d9),url('/editorial-landscape.svg') 70% 60%/cover;color:var(--ink);outline:0;border:1px solid var(--line);padding:24px}
html .cols>aside #you:before,html .cols>aside #you:after{display:none}
html .cols>aside #you .btn{background:#202b32;color:#fff;border-color:#202b32}
html .cols>aside #you h3{font-size:23px}
html .exploration-page>.xhead,html .member-home>.today,html .personal-page>.loghero{background:linear-gradient(90deg,#fdfcf9 15%,#fdfcf9ef 45%,#fdfcf955),url('/editorial-landscape.svg') 65% 48%/cover;border:1px solid var(--line);border-radius:4px;padding:32px;margin:24px 0}
html .exploration-page>.xhead{min-height:150px}
html .exploration-page>.xhead h1,html .member-home .thead h1,html .personal-page>.loghero h1{font-family:var(--disp);font-size:38px;font-weight:400}
html .member-home>.today{min-height:170px}
html .member-home .thead{flex-wrap:wrap}
html .member-home .thead .tscope{color:var(--ink)}
html .member-home .fsect{border:0;margin:24px 0 12px;padding:0}
html .member-home .fsect h2{font-family:var(--disp);font-size:24px}
html .member-home .fsect>span{display:none}
html .member-home .card,html .personal-page .cols>.main{background:var(--card);border:1px solid var(--line);border-radius:4px}
html .personal-page .cols>.main{padding:28px}
html .personal-page .cols>.main>.block:first-child{padding-top:0}
html .exploration-page>.shelf{padding:24px;background:#fdfcf9;border:1px solid var(--line);border-radius:4px;margin-bottom:24px}
html .exploration-page .shelfhead h2{font-size:25px}
html .exploration-page .ltile{background:var(--card)}
html .exploration-page .foundtail{background:linear-gradient(100deg,#fdfcf9f7,#fdfcf9d9),url('/editorial-landscape.svg') center 70%/cover;border:1px solid var(--line);padding:24px}
/* The signed-out invitation fills its rail, with the action centered above the landscape. */
@media(min-width:1041px){
 html .side-guest{top:80px;bottom:20px;left:16px;width:256px;max-height:none;overflow:auto;display:flex;padding:0;background:transparent}
 html .side-guest .guest-invite{position:relative;isolation:isolate;overflow:hidden;flex:1;min-height:580px;border:1px solid var(--line);border-radius:5px;background:#fdfcf9}
 html .side-guest .guest-invite:before{inset:0;z-index:-1;background:linear-gradient(180deg,#fdfcf9 0%,#fdfcf9 43%,#fdfcf9e6 58%,#fdfcf922 100%),url('/editorial-landscape.svg') 65% bottom/auto 100%;filter:none;opacity:1;mask-image:none}
 html .side-guest .guest-copy{padding:32px 22px 0;text-align:center}
 html .side-guest .guest-copy h2{font-family:var(--disp);font-size:30px;font-weight:400;line-height:1.15;letter-spacing:-.03em}
 html .side-guest .guest-benefits{margin:26px 0;text-align:left}
 html .side-guest .guest-benefits li{gap:10px;margin-bottom:18px}
 html .side-guest .guest-benefits b{font-size:14px}
 html .side-guest .guest-benefits small{font-size:13px}
 html .side-guest .guest-signup{display:flex;justify-content:center;align-items:center;gap:10px;min-height:52px;width:100%;padding:13px 10px;font-size:14px;text-align:center}
 html .side-guest .guest-login{display:block;text-align:center;font-size:12px;margin-top:18px}
 html .side-guest .guest-art{flex:1;min-height:100px}
 html .side-guest .guest-caption{margin:0;padding:18px;color:#26353b;background:#fdfcf9dc;text-align:center;font-size:12px}
}
@media(max-width:760px){
 html .page:has(>.headcard)>.cols>.main{padding:22px 18px}
 html .exploration-page>.xhead,html .member-home>.today,html .personal-page>.loghero{padding:24px 20px;min-height:0;background-image:linear-gradient(90deg,#fdfcf9fa,#fdfcf9d9),url('/editorial-landscape.svg')}
 html .exploration-page>.xhead h1,html .member-home .thead h1{font-size:30px}
 html .exploration-page>.shelf{padding:18px 14px}
 html .personal-page .cols>.main{padding:20px 18px}
}

html .cols>aside #you .cardnote{color:var(--muted)}
html .cols>aside #you :is(a,button):focus-visible{outline-color:var(--ink)}
html .cols>aside #you .btn:hover{background:#36454d;color:#fff;border-color:#36454d}
/* Personal landscape: real choices are the landmarks; contours stay outside reading text. */
html .journey-head,html .journey-intro{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(100deg,#fdfcf9 10%,#fdfcf9ee 55%,#fdfcf966),url('/editorial-landscape.svg') 70% 52%/cover;border:1px solid var(--line);border-radius:4px;margin:24px 0;padding:36px}
html .journey-head:after,html .journey-intro:after{content:"";position:absolute;inset:0 0 0 55%;z-index:-1;background:url('/topography.svg') center/cover;opacity:.12;mix-blend-mode:multiply;pointer-events:none}
html .journey-head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);gap:36px;align-items:center}
html .journey-head h1{font-size:42px;margin:0 0 14px}
html .journey-head p{max-width:550px;font-size:16px;line-height:1.7;color:var(--muted);margin-bottom:24px}
html .journey-totals{display:flex;gap:24px;justify-content:space-between;padding:24px;background:#fdfcf9dc;border:1px solid #deded799;border-radius:4px}
html .journey-totals dt{font:400 34px/1.1 var(--disp)}
html .journey-totals dd{font-size:12px;color:var(--muted);margin-top:9px;max-width:72px}
html .belief-journey .cols>.main{padding:0;background:transparent;border:0}
html .journey-nav{display:flex;gap:22px;flex-wrap:wrap;padding:0 0 18px;border-bottom:1px solid var(--line);margin-bottom:24px}
html .journey-nav a{font-size:13px;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:4px}
html .journey-section{background:#fdfcf9;border:1px solid var(--line);border-radius:4px;padding:26px;margin-bottom:24px;scroll-margin-top:90px}
html .journey-section>h2{font:400 27px/1.2 var(--disp);margin:0 0 20px}
html .journey-note{font-size:14px;color:var(--muted);line-height:1.7;margin:-6px 0 20px}
html .journey-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
html .journey-group{min-width:0}
html .journey-group h3{display:flex;justify-content:space-between;font:400 23px/1.3 var(--disp);margin-bottom:7px}
html .journey-group h3 span{font:500 13px var(--ui);padding:3px 8px;background:#efeee7;border-radius:3px}
html .journey-group>p{font-size:12px;color:var(--muted);margin:0 0 16px}
html .journey-idea{display:block;position:relative;padding:15px 25px 15px 0;border-top:1px solid var(--line);text-decoration:none}
html .journey-idea b{font-size:15px;font-weight:500}
html .journey-idea small{display:block;margin-top:6px;font-size:12px;color:var(--muted)}
html .journey-idea>span{position:absolute;right:0;top:16px}
html .journey-matches,html .journey-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
html .journey-match,html .journey-next>a{display:flex;flex-direction:column;min-width:0;padding:20px;background:var(--card);border:1px solid var(--line);border-radius:4px;text-decoration:none}
html .journey-match h3,html .journey-next h3{display:flex;align-items:center;gap:9px;font:400 23px/1.25 var(--disp);margin:0 0 12px}
html .journey-match p,html .journey-next p{font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 18px}
html .journey-match>div{display:flex;gap:16px;border-top:1px solid var(--line);padding-top:13px;margin-top:auto;font-size:12px}
html .journey-match>div b{font-size:17px;font-weight:500}
html .journey-match small,html .journey-next small{display:block;font-size:12px;margin-top:16px;font-weight:500}
html .journey-more{display:inline-block;font-size:13px;margin-top:20px}
html .journey-history{list-style:none;padding:0;margin:0}
html .journey-history li{display:flex;gap:16px;padding:17px 0 17px 20px;border-left:1px solid #bdc2b8;border-bottom:1px solid var(--line-soft);position:relative}
html .journey-history li:before{content:"";position:absolute;width:7px;height:7px;left:-4px;top:22px;background:#7c897a;border-radius:50%}
html .journey-history a{text-decoration:none;flex:1}
html .journey-history b{font-size:15px;font-weight:500}
html .journey-history span{display:block;font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5}
html .journey-history time{font-size:11px;color:var(--muted);white-space:nowrap}
html .journey-empty{padding:25px;background:linear-gradient(110deg,#f6f5f0f7,#f6f5f0e8),url('/topography.svg') right/cover}
html .journey-empty h3{font:400 25px var(--disp);margin:0 0 12px}
html .journey-empty p{font-size:15px;line-height:1.7;max-width:600px;margin:0 0 20px}
html .belief-journey .cols>aside{display:block;position:static;max-height:none}
html .belief-doorway .journey-intro .ph{padding:0;border:0;background:none}
html .belief-doorway .journey-intro .phnote{max-width:670px;font-size:16px;line-height:1.7}
html .belief-doorway>.sect{background:#fdfcf9;border:1px solid var(--line);border-radius:4px;padding:26px}
html .belief-doorway .lst.roomy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
@media(max-width:1150px){html .journey-head{grid-template-columns:1fr}html .journey-totals{max-width:440px}html .journey-groups,html .journey-matches{grid-template-columns:1fr}}
@media(max-width:650px){html .journey-head,html .journey-intro{padding:26px 20px}html .journey-head h1{font-size:34px}html .journey-section,html .belief-doorway>.sect{padding:22px 18px}html .journey-next,html .belief-doorway .lst.roomy{grid-template-columns:1fr}html .journey-nav{gap:14px}html .journey-totals{padding:18px;gap:16px}html .journey-history li{flex-wrap:wrap}}
/* Overview banner convention: title left, action anchored at the far right. */
html .exploration-page>.xhead{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
html .exploration-page>.xhead>.btn{margin-inline-start:auto;flex-shrink:0;background:#fdfcf9f2}
@media(max-width:520px){html .exploration-page>.xhead{gap:18px}html .exploration-page>.xhead>.btn{max-width:100%;white-space:normal}}
html .quiz-page{padding-bottom:50px}
html .quiz-page [hidden]{display:none!important}
html .quiz-page .journey-intro{max-width:1000px}
html .quiz-page h1{font:400 40px/1.15 var(--disp);margin:0 0 22px}
html .quiz-page .journey-intro>p{max-width:670px;font-size:16px;line-height:1.75;margin:0 0 20px}
html .quiz-panel{max-width:1000px;margin:28px 0;background:var(--card);border:1px solid var(--line);border-radius:5px;padding:36px}
html .quiz-progress{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin-bottom:12px}
html .quiz-panel progress{width:100%;height:5px;accent-color:var(--ink);margin-bottom:32px}
html #quiz-statement{font:400 23px/1.5 var(--disp);margin-bottom:20px}
html .quiz-panel details{font-size:14px;color:var(--muted);line-height:1.7;margin:16px 0}
html .quiz-panel summary{cursor:pointer}
html .quiz-panel fieldset{border:0;padding:0;margin:28px 0}
html .quiz-panel legend{font-size:13px;margin-bottom:12px}
html .quiz-panel label{display:flex;gap:14px;align-items:center;border:1px solid var(--line);padding:18px;margin-bottom:12px;border-radius:4px;cursor:pointer}
html .quiz-panel label:has(input:checked){border-color:var(--ink);background:#efeee7}
html .quiz-panel input{accent-color:var(--ink)}
html .quiz-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:24px}
html #quiz-next{margin-left:auto}
html .quiz-page .quiz-note{font-size:13px!important;line-height:1.65;color:var(--muted);margin:20px 0}
html #quiz-status{max-width:1000px;font-size:15px;line-height:1.6}
html .quiz-review-row{width:100%;display:flex;justify-content:space-between;gap:20px;text-align:left;padding:15px 0;background:none;border:0;border-bottom:1px solid var(--line);color:var(--ink);font:14px var(--ui);cursor:pointer}
html .quiz-review-row b{font-size:12px;min-width:100px}
@media(max-width:650px){html .quiz-panel{padding:24px 18px}html .quiz-page h1{font-size:31px}html .quiz-controls>.btn{min-height:44px}html .quiz-review-row{flex-direction:column;gap:8px}}

/* Contours support secondary journey prompts; photography belongs to the masthead. */
html .quiz-onboarding{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:32px;align-items:center;margin:18px 0;padding:24px 28px;border:1px solid var(--line);border-radius:4px;background:#f5f4ef}
html .quiz-onboarding:before{content:"";position:absolute;z-index:-1;inset:0 0 0 45%;pointer-events:none;background:url("/topography.svg") right center/620px auto;opacity:.32;mask-image:linear-gradient(90deg,transparent,#000)}
html .quiz-onboarding h2{grid-column:1;font:400 24px var(--disp);margin:0 0 8px}
html .quiz-onboarding p{grid-column:1;font-size:14px;line-height:1.65;margin:0 0 12px;max-width:660px}
html .quiz-onboarding progress{grid-column:1;display:block;width:100%;max-width:460px;height:5px;accent-color:var(--ink);margin:0}
html .quiz-onboarding>.btn{grid-column:2;grid-row:1/4;justify-self:end;white-space:nowrap;background:var(--ink);color:#fff;border-color:var(--ink)}
html .side .quiz-onboarding{grid-template-columns:minmax(0,1fr);margin:12px;padding:18px;gap:0}
html .side .quiz-onboarding>.btn{grid-column:1;grid-row:auto;margin-top:18px;white-space:normal}
@media(max-width:640px){html .quiz-onboarding{grid-template-columns:minmax(0,1fr);padding:20px}html .quiz-onboarding>.btn{grid-column:1;grid-row:auto;margin-top:18px}html .quiz-onboarding:before{left:20%}}
/* Personal systems share faith rooms and retain a quiet reading surface. */
html .system-tabs{display:flex;gap:24px;overflow-x:auto;border:1px solid var(--line);border-top:0;padding:0 24px;background:var(--card);margin-bottom:24px}
html .system-tabs a{padding:16px 0;white-space:nowrap;text-decoration:none}
html .system-tabs a[aria-current]{border-bottom:3px solid var(--ink)}
html .system-tabs small{margin-left:8px;color:var(--faint)}
html .personal-overview{padding:24px;background:var(--card);border:1px solid var(--line);margin-bottom:20px}
html .personal-overview>h2{margin-bottom:16px}
html .personal-overview p{line-height:1.65;margin:12px 0}
html .system-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
html .system-room-grid>a{padding:18px;background:var(--bg);border:1px solid var(--line);text-decoration:none}
html .system-room-grid h3{font:400 22px var(--disp)}
html .personal-piece{position:relative;padding:20px 0;border-top:1px solid var(--line)}
html .personal-piece h3{font:400 23px var(--disp);margin:10px 0}
html .personal-piece p{line-height:1.6;margin:10px 0}
html .piece-foot{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:16px;font-size:13px}
html .personal-builder{max-width:900px}
html .personal-builder h1{margin:24px 0 16px}
html .personal-builder>p{max-width:700px;line-height:1.7;margin-bottom:24px}
html .personal-builder label{display:block;margin:18px 0 8px}
html .piece-searchbar{display:flex;align-items:start;gap:12px}
html .piece-searchbar input{flex:1;min-width:0}
html .personal-create{padding:24px;border:1px solid var(--line);background:var(--card);margin:24px 0}
html .personal-create summary{cursor:pointer;font:400 22px var(--disp)}
html .personal-create form>p{margin:16px 0}
html #piece-status{margin:16px 0}
@media(max-width:600px){html .system-room-grid{grid-template-columns:1fr}html .system-tabs{gap:18px;padding:0 16px}html .personal-overview{padding:16px}html .piece-foot{flex-wrap:wrap}}
/* A personal map leads with its connections; collection actions stay in context. */
html .belief-journey>.journey-head{margin-bottom:0;border-radius:4px 4px 0 0}
html .belief-journey>.system-tabs{margin-top:0;border-radius:0 0 4px 4px}
html .belief-journey .journey-totals{background:transparent;border:0;padding:0;gap:24px}
html .quiz-home{display:flex;align-items:center;justify-content:space-between;gap:24px}
html .quiz-home>.btn{white-space:nowrap;flex-shrink:0}
html .piece-starters{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
html .piece-starters>a,html .piece-starters>button{padding:10px 14px;border:1px solid var(--line);border-radius:24px;background:var(--card);text-decoration:none;cursor:pointer;font:inherit;font-size:13px;color:var(--ink)}
html .personal-builder{max-width:1120px}
html .piece-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
html .piece-choice{display:flex;flex-direction:column;padding:24px;background:var(--card);border:1px solid var(--line);border-radius:6px;transition:border-color .15s,background .15s}
html .piece-choice.is-added{border-color:#74998c;background:#f1f6f2}
html .piece-identity{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}
html .piece-symbol{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e8eeea;color:#3d6259;font-size:23px}
html .piece-choice h3{font:400 25px/1.25 var(--disp);margin:18px 0 12px}
html .piece-choice h3>a{text-decoration:none}
html .piece-choice>p{font-size:14px;line-height:1.65;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:24px}
html .piece-choice-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto}
html .piece-choice-foot>a{font-size:12px;color:var(--muted);text-decoration:none}
html .piece-choice-foot>.btn{flex-shrink:0}
html .piece-feedback{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:40px;margin-bottom:16px}
html #piece-saved-link[hidden]{display:none}
html .piece-choice-grid[aria-busy]{opacity:.55}
html .personal-overview .journey-matches{margin-top:20px}
html .personal-overview .journey-match{background:var(--card);border-radius:5px}
@media(max-width:700px){html .piece-choice-grid{grid-template-columns:1fr}html .quiz-home,html .piece-feedback{align-items:start;flex-direction:column}html .quiz-home>.btn{align-self:flex-end}}
html .belief-toast{position:fixed;bottom:28px;right:28px;z-index:10000;display:flex;align-items:flex-start;gap:14px;max-width:420px;padding:20px;background:#fdfcf9;color:var(--ink);border:1px solid #b5c5bc;border-radius:8px;box-shadow:0 8px 30px #20332b24}
html .belief-toast[hidden]{display:none}
html .belief-toast-mark{font-size:30px;color:#426b5b}
html .belief-toast strong{font:400 22px var(--disp)}
html .belief-toast p{font-size:13px;line-height:1.6;margin:7px 0}
html .belief-toast a{font-size:13px;font-weight:600}
html .belief-toast button{background:none;border:0;font-size:23px;cursor:pointer;color:inherit;padding:0 4px}
@media(max-width:600px){html .belief-toast{bottom:16px;right:16px;left:16px;max-width:none}}
html .halo-feedback{display:inline-block;margin:8px 0 4px 12px;padding:6px 10px;border-radius:4px;background:#e9f2ed;color:#2d5948;font-size:12px;line-height:1.5;vertical-align:middle}
html .halo-feedback a{font-weight:600;color:inherit;text-decoration:underline;text-underline-offset:3px}
html .halo-feedback.save-error{background:#faeee8;color:#85442c}
@media(max-width:600px){html .halo-feedback{display:block;width:fit-content;margin-left:0}}
/* One compact, centered confirmation; nearby controls and map summary echo the save. */
html .belief-toast{left:50%;right:auto;bottom:24px;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);align-items:center;gap:12px;padding:13px 18px;background:#203b32;color:#fff;border-color:#426557;border-radius:12px;box-shadow:0 6px 24px #142a3333}
html .belief-toast strong{font:600 14px var(--font, sans-serif)}
html .belief-toast p{display:inline;margin:0 12px 0 0;font-size:12px;color:#d2e2d9}
html .belief-toast>div{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
html .belief-toast a{color:#fff;white-space:nowrap}
html .belief-toast-mark{color:#b5d7c4;font-size:24px}
html .belief-toast.toast-enter{animation:belief-toast-in .24s ease-out}
html .belief-updated{animation:belief-save-pulse 1.3s ease-out}
html #belief-live-summary .pbar i{transition:width .45s ease}
@keyframes belief-toast-in{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes belief-save-pulse{0%,35%{background-color:#dcece3;box-shadow:0 0 0 3px #94b7a655}100%{box-shadow:0 0 0 0 transparent}}
@media(max-width:600px){html .belief-toast{left:50%;right:auto;bottom:16px;width:calc(100vw - 32px)}html .belief-toast>div{gap:5px}html .belief-toast p{display:block;margin-top:4px}}
@media(prefers-reduced-motion:reduce){html .belief-toast.toast-enter,html .belief-updated{animation:none}html #belief-live-summary .pbar i{transition:none}html .belief-updated{outline:2px solid #94b7a6}}
/* Homepage ivory and charcoal are the shared UI palette. */
:root{--sunk:#eeece5;--ink-soft:#555650;--surface-warm:linear-gradient(135deg,#fdfcf9,#f5f3ed);--surface-selected:#e9e6de}
html .qans,html .piece-choice{background:var(--card);border-color:var(--line)}
html .cols>aside:not(.railcol){background:var(--bg)}
html .navsearch{background:var(--bg);border-color:var(--line)}
html :is(.btn.on,.btn.saveon,.fbtn.on,.fstbtn.on,.stbtn.on,.secbtn.on),html .halo .halopill:is(.lit,.on){background:var(--surface-selected);color:var(--ink);border-color:var(--control-border)}
html .halo .halopill{color:var(--ink);border-color:var(--control-border)}
html .halo .halopill:hover,html :is(.btn,.fbtn,.fstbtn,.stbtn,.secbtn):not([data-action-emphasis=primary]):hover{background:var(--accent-soft);color:var(--ink);border-color:var(--control-border-hover)}
html .halo-cluster{display:inline-flex;flex-direction:column;align-items:flex-start;gap:7px;max-width:100%;vertical-align:top}
html .halo-feedback{display:block;margin:0;padding:4px 8px;background:var(--surface-warm);color:var(--ink);border:1px solid var(--line);font-size:11px}
html .belief-toast{background:var(--ink);border-color:var(--ink);color:var(--card)}
html .belief-toast-mark,html .belief-toast p,html .belief-toast a{color:var(--card)}
html .piece-choice.is-added{background:var(--card);border-color:var(--accent)}
html .piece-symbol{background:var(--accent-soft);color:var(--ink)}
@keyframes belief-save-pulse{0%,35%{background-color:var(--surface-selected);box-shadow:0 0 0 3px #dedbd355}100%{box-shadow:0 0 0 0 transparent}}
@media(prefers-reduced-motion:reduce){html .belief-updated{outline-color:var(--accent-line)}}
/* Compact shared actions; selected resonance keeps its label. */
html :is(.fbtn,.qdiscuss,.qwrite){display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:32px;padding:5px 10px;border:1px solid var(--control-border);border-radius:var(--control-radius);font:600 12px/1.4 var(--ui);color:var(--ink);background:transparent;text-decoration:none}
html :is(.qdiscuss,.qwrite):hover{background:var(--accent-soft);border-color:var(--control-border-hover)}
html :is(.btn.on,.btn.saveon,.fbtn.on,.fbtn.join.on,.fstbtn.on,.stbtn.hold.on,.stbtn.rej.on,.secbtn.on){background:var(--surface-selected);color:var(--ink);border-color:var(--control-border)}
html .halo{display:inline-flex;flex-direction:row;flex-wrap:nowrap;gap:0;align-items:stretch;border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--surface-warm);vertical-align:middle;isolation:isolate}
html .halo .halocount{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;box-sizing:border-box;margin:0;padding:0 2px;min-height:30px;font:600 12px/1 var(--ui);font-variant-numeric:tabular-nums;color:var(--ink);background:var(--accent-soft);border:0;border-right:1px solid var(--control-border);border-radius:3px 0 0 3px;overflow:hidden}
html .halo .halopill,html .halo .halopill.ico{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;width:auto;min-width:0;box-sizing:border-box;min-height:30px;height:30px;margin:0;padding:5px 8px;border:0;border-radius:0;background:transparent;font:600 12px/1.4 var(--ui);transition:background .18s ease}
html .halo .halopill.hbelieve,html .halo .halopill.hdis{padding-left:8px;padding-right:8px}
html .halo .halopill.ico{flex:0 0 32px;width:32px;padding:5px 7px}
html .halo .halopill.hdis{border-left:1px solid var(--control-border);border-radius:0 3px 3px 0}
html .halo .halopill .halolab{display:inline;opacity:1;max-width:none;width:auto;white-space:nowrap}
html .halo .halopill.ico .halolab{display:none}
html .halo .halopill svg,html .halo .halopill.ico:not(.on) svg{flex-shrink:0;opacity:1}
html .halo .halopill svg circle:not([class]){stroke:var(--control-icon);stroke-width:1.8}
html .halo .halopill .hdx{stroke:var(--control-icon);stroke-width:2.6}
html .halo .halopill:is(.lit,.on){background:var(--surface-selected);color:var(--ink)}
html .halo .halopill:hover{background:var(--accent-soft)}
html .halo .halopill:focus-visible{outline:2px solid var(--ink);outline-offset:2px;z-index:2}
@media(max-width:760px){html :is(.fbtn,.qdiscuss,.qwrite){min-height:44px}html .halo .halopill,html .halo .halopill.ico,html .halo .halocount{min-height:42px;height:42px}html .halo .halopill.ico{flex-basis:42px;width:42px}}
/* Daily question: a reading list inside one card, with context on demand. */
html .fq .question-edition{font:500 12px/1.4 var(--ui);color:var(--muted);margin-bottom:8px}
html .fq .qlabel{margin:0 0 18px;font-weight:500;line-height:1.3}
html .fq .qanswers{display:block}
html .fq .qans{background:transparent;border:0;border-radius:0;padding:18px 0;margin:0}
html .fq .qans+.qans{border-top:1px solid var(--line)}
html .fq .qans:first-child{padding-top:0}
html .fq .qansclaim{font:500 18px/1.45 var(--disp);margin:0 0 8px;max-width:70ch}
html .fq .qanshead,html .fq .qrefs{margin:0 0 12px;font-size:12px;line-height:1.5;color:var(--muted)}
html .fq .qansrow{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:10px 16px;margin:0}
html .fq .qcontext{font:400 13px/1.6 var(--ui);color:var(--muted);max-width:100%}
html .fq .qcontext summary{cursor:pointer;min-height:32px;display:list-item;align-content:center;font-size:12px;color:var(--muted);padding:5px 0;box-sizing:border-box}
html .fq .qcontext[open]{flex-basis:100%}
html .fq .qcontext>div{padding:8px 12px;border-left:2px solid var(--line);max-width:70ch}
html .fq .qcontext p{margin:0 0 8px}
html .fq .qcontext a{color:var(--ink);font-weight:500}
html .fq .qmore{margin:0;padding-top:14px;border-top:1px solid var(--line)}
html .fq .question-personal{margin-top:12px;font:400 12px/1.5 var(--ui);color:var(--muted)}
html .fq .question-personal a{color:var(--ink);text-decoration:none}
@media(max-width:760px){html .fq .qcontext summary{min-height:44px}}

/* A saved response stays beside the control without another container. */
html .halo-cluster{flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px 12px}
html .halo-feedback{display:inline;margin:0;padding:0;border:0;border-radius:0;background:none;color:var(--muted);width:auto;font:400 11px/1.5 var(--ui)}
html .halo-feedback a{color:var(--ink);font-weight:500}
html .halo-feedback.save-error{background:none;color:var(--ink)}
/* The unchosen side recedes only after a response, retaining its target. */
html .halo .halopill.ico svg,html .halo .halopill.ico:not(.on) svg{opacity:.45}
html .halo .halopill.ico:hover svg,html .halo .halopill.ico:focus-visible svg{opacity:.85}
html .halo .halopill svg{transition:opacity .18s ease}
html .halo .halopill :is(.hr1,.hr2,.dr1,.dr2){stroke-width:2.6}
html .halo .halopill:is(.lit,.on) .hdx{stroke:var(--ink)}
/* Selection comes forward; only the opposite side recedes. */
html .halo .halopill:is(.lit,.on){background:var(--card);color:var(--ink)}
html .halo .halopill.ico{background:var(--surface-selected)}
html .halo .halopill.ico:hover{background:var(--accent-soft)}
/* Align the logged-out rail with the first content surface below the taller marketing nav. */
@media(min-width:1041px){html .editorial-home .side-guest{top:95px}}

/* Center the login split in the viewport beneath the global header. */
@media(min-width:801px){html .editorial-home .library-login{
  margin-top:max(24px,calc((100dvh - 64px - 570px)/2));
  margin-bottom:max(24px,calc((100dvh - 64px - 570px)/2));
}}


/* Mobile audit: one consistent masthead and comfortable reading controls. */
html .mobile-menu{display:none}
@media(max-width:1040px){
 html :is(body,.editorial-home)>nav .navlinks{display:none}
 html .mobile-menu{display:block;position:static;flex-shrink:0}
 html .mobile-menu>summary{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border:1px solid var(--control-border);border-radius:4px;font:600 13px var(--ui);cursor:pointer;list-style:none}
 html .mobile-menu>summary::-webkit-details-marker{display:none}
 html .mobile-menu>summary:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
 html .mobile-menu[open]>summary{background:var(--surface-selected)}
 html .mobile-menu-panel{position:absolute;top:calc(100% + 4px);right:16px;width:280px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain;padding:8px;background:var(--card);border:1px solid var(--line);border-radius:4px;box-shadow:0 12px 32px #202b3220;z-index:50}
 html .mobile-menu-panel a{display:flex;align-items:center;min-height:44px;padding:10px 12px;font-size:14px;text-decoration:none;border-radius:4px}
 html .mobile-menu-panel a:is(:hover,[aria-current=page]){background:var(--accent-soft)}
 html .mobile-menu-panel .mobile-signup{margin-top:8px;background:var(--ink);color:var(--card)}
}
@media(max-width:760px){
 html :is(body,.editorial-home)>nav>.navin{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:10px 12px}
 html :is(body,.editorial-home)>nav .brand{grid-column:1;grid-row:1;font-size:19px;letter-spacing:.09em}
 html :is(body,.editorial-home)>nav .mobile-menu{grid-column:2;grid-row:1}
 html :is(body,.editorial-home)>nav .navnew,html :is(body,.editorial-home)>nav .navlinks{display:none}
 html :is(body,.editorial-home)>nav :is(.navsign,.navmenu){grid-column:3;grid-row:1;margin:0}
 html :is(body,.editorial-home)>nav :is(.navsign,.navwho){min-width:44px;min-height:44px;height:auto}
 html :is(body,.editorial-home)>nav .navsearch{grid-column:1/-1;grid-row:2;max-width:none;width:100%;margin:0;min-width:0}
 html .navsearch input{font-size:16px;min-width:0;min-height:44px;padding:10px 0}
 html #pqd{top:calc(100% + 4px);max-height: min(55dvh,420px);overscroll-behavior:contain}
 html .pqr{min-height:44px}
 html .navpop{top:62px;max-width:calc(100vw - 24px)}
 html :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}
 html :is(.tab,.system-tabs a,.discovery-nav a,.chips a,.chips button,.shelfjump a,.stbtn,.secbtn,.fstbtn,.piece-starters>a,.piece-starters>button){min-height:44px;align-content:center}
 html :is(.idmain,.idacts,.btnrow,.piece-choice-foot){min-width:0;max-width:100%}
 html .idmain{flex-basis:100%}
 html .idacts{width:100%;align-items:stretch}
 html .idacts .btnrow{display:flex;flex-wrap:wrap;gap:8px}
 html .idacts .btnrow>.btn{flex:1 1 auto;min-height:44px;padding:10px 12px}
 html .idmain h1{font-size:clamp(30px,8vw,40px);overflow-wrap:anywhere}
 html :is(.body,.lede,.personal-piece,.piece-choice h3){overflow-wrap:anywhere}
 html :is(.piece-choice-foot,.piece-searchbar){flex-wrap:wrap}
 html .tabs{mask-image:none;-webkit-mask-image:none;scroll-padding-inline:12px}
 html .tab{flex-shrink:0}
 html .library-hero{min-height:0}
 html .library-scale{flex-wrap:wrap;row-gap:16px}
 html .belief-toast{bottom:calc(16px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:760px) and (max-height:500px){html :is(body,.editorial-home)>nav{position:relative}}

/* Knowledge cards must fit their reading column, even on a 320px phone. */
html .egrid{grid-template-columns:repeat(auto-fill,minmax(min(292px,100%),1fr))}
@media(max-width:760px){html .egrid>.ecard{min-width:0;padding:16px;gap:12px}}
@media(max-width:380px){html .egrid>.ecard{flex-direction:column}html .egrid>.ecard .ebody{width:100%}}

/* A static phone header must not retain the desktop sticky offset. */
@media(max-width:760px){
 html .page>.headcard{top:auto;padding-inline:18px}
 html .page>.headpad{display:none}
 html .page>.headcard .tabs{scrollbar-width:none;scroll-padding-inline:0}
 html .page>.headcard .tabs::-webkit-scrollbar{display:none}
 html .page>.headcard .tab{padding:12px 14px;min-height:48px}
 html .page:has(>.headcard) .bh{align-items:flex-start;gap:8px 16px}
 html .page:has(>.headcard) .bh>h2{flex:1 1 220px;line-height:1.25}
 html .page:has(>.headcard) .bh>a{margin-left:auto;min-height:44px;display:inline-flex;align-items:center}
}

/* Phone faith surfaces meet the viewport; reading content retains its inset. */
@media(max-width:760px){
 html .page:has(>.headcard){padding-inline:0;margin-inline:0;width:100%}
 html .page:has(>.headcard)>.cover{margin-top:0;border-radius:0}
 html .page:has(>.headcard)>.headcard,
 html .page:has(>.headcard)>.cols>.main,
 html .page:has(>.headcard)>.cols>aside{border-left:0;border-right:0;border-radius:0}
}

/* A compact mobile cover lets the identity mark bridge image and content. */
@media(max-width:760px){
 html .page:has(>.headcard)>.cover svg,
 html .page:has(>.headcard)>.cover.cimg{height:140px}
 html .page>.headcard .emblem{margin-top:-42px;position:relative;z-index:1}
 html .page>.cover.cimg .ccredit{right:10px;bottom:8px;max-width:calc(100% - 110px);line-height:1.35;text-align:right}
}

/* True white gives the reading layer separation from the warm canvas. */
:root{--surface-paper:#fff}
html :is(body,.editorial-home)>nav{background:var(--surface-paper)}
html .page:has(>.headcard)>.headcard,
html .page:has(>.headcard)>.cols>.main,
html .library-login-panel{background:var(--surface-paper)}
html .page:has(>.cover)>.cover.cimg:after{background:linear-gradient(180deg,#ffffff00 18%,#ffffff30 50%,var(--surface-paper) 100%)}

/* Mobile section actions keep their own column while titles wrap naturally. */
@media(max-width:760px){
 html .shelfhead:has(>.shelfall),
 html .bh:has(>a){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px}
 html .shelfhead:has(>.shelfall)>h2,
 html .page:has(>.headcard) .bh:has(>a)>h2,
 html .bh:has(>a)>h2{grid-column:1;grid-row:1;min-width:0;margin:0;line-height:1.2;overflow-wrap:anywhere;text-wrap:balance}
 html .shelfhead>.shelfall,
 html .bh>a{grid-column:2;grid-row:1;margin-left:0;min-height:44px;display:inline-flex;align-items:center;justify-content:flex-end;text-align:right;max-width:34vw;white-space:normal}
 html .shelfhead:has(>.shelfall)>.shelfnote,
 html .bh:has(>a)>.n{grid-column:1/-1;grid-row:2}
 html .bh:has(>.bicon):has(>a){grid-template-columns:auto minmax(0,1fr) auto;column-gap:8px}
 html .bh:has(>a)>.bicon{grid-column:1;grid-row:1}
 html .page:has(>.headcard) .bh:has(>.bicon):has(>a)>h2{grid-column:2}
 html .bh:has(>.bicon)>a{grid-column:3}
 html .navpop :is(a,button){min-height:44px;display:flex;align-items:center}
 /* Override the homepage's desktop columns so cards have a readable width. */
 html .library-home .library-traditions .shelfgrid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:72%;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}
 html .library-home .library-traditions .shelfgrid>.ltile{min-width:0;scroll-snap-align:start}
 html :is(.discovery-nav,.system-tabs,.journey-nav){scroll-padding-inline:12px}
 html :is(.system-tabs,.journey-nav){flex-wrap:nowrap;overflow-x:auto}
 html :is(.system-tabs,.journey-nav)>a{flex-shrink:0;white-space:nowrap;min-height:44px;align-content:center}
}

/* Homepage rhythm: one boundary, deliberate space, consistent paper surfaces. */
html .library-home .library-body{padding-top:40px}
html .library-home .library-body>.library-traditions,
html .library-home .library-editorial,
html .library-home .library-creations,
html .library-home .library-discovery{margin:0;padding:40px 0;border:0}
html .library-home .library-body>.library-traditions:first-child{padding-top:0}
html .library-home .library-body>:is(.library-traditions,.library-editorial,.library-creations,.library-discovery)+:is(.library-traditions,.library-editorial,.library-creations,.library-discovery){border-top:1px solid var(--line)}
html .library-home .library-body .shelf{margin:0}
html .library-home .library-editorial{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:start}
html .library-home .library-feature-image{height:210px}
html .library-home .library-ideas{padding:0}
html .library-home .library-ideas li:last-child,
html .library-home .library-discussions li:last-child{border-bottom:0}
html .library-home .library-curated .shelfgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
html .library-home .library-curated .ltile{padding:22px}
html .library-home .library-curated .ltname{font-size:22px}
html .library-home .library-curated .lttag{font-size:14px;display:block;overflow:visible}
html .library-home .library-curated .ltmeta{font-size:12px}
html .library-home .library-discovery{gap:28px}
html .library-home .library-discovery>section{min-width:0}
html .library-home .library-themes a{background:var(--card);min-height:92px;padding:16px}
html .library-home .library-create-link{margin-top:24px}
@media(max-width:800px){
 html .library-home .library-body{padding-top:28px}
 html .library-home .library-body>.library-traditions,
 html .library-home .library-editorial,
 html .library-home .library-creations,
 html .library-home .library-discovery{padding-block:30px}
 html .library-home .library-discovery{grid-template-columns:1fr;gap:28px}
 html .library-home .library-discovery>section+section{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}
}
@media(max-width:760px){
 html .library-home .library-curated .shelfgrid,
 html .library-home .library-creation-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:82%;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}
 html .library-home .library-creation{min-width:0;scroll-snap-align:start}
}
@media(max-width:600px){
 html .library-home .library-editorial{grid-template-columns:1fr;gap:28px}
 html .library-home .library-feature-image{height:180px}
}