:root{--paper:#f6f2e9;--paper-deep:#ede6d9;--ink:#253b33;--muted:#6b7168;--rust:#98482f;--gold:#b8a17a;--line:#d8d0c1;--serif:'Noto Serif TC','Songti TC','STSong','PMingLiU',serif;--sans:'PingFang TC','Microsoft JhengHei','Noto Sans TC',sans-serif;--header:88px}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:0}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.7;-webkit-font-smoothing:antialiased}button,a,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--rust);outline-offset:5px}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:default;opacity:.4}h1,h2,h3,h4,p,figure,blockquote{margin:0}h1,h2,h3,blockquote{font-family:var(--serif);font-weight:600}h1,h2{letter-spacing:.025em;line-height:1.3}h2{font-size:clamp(32px,4vw,56px)}h3{font-size:26px;line-height:1.5}button{border:0;background:none}svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;fill:none}::selection{background:#d9bfa1;color:var(--ink)}.accent{color:var(--rust)}.skip-link{position:fixed;left:24px;top:-80px;z-index:200;padding:12px;background:var(--ink);color:white}.skip-link:focus{top:12px}.site-header{height:var(--header);padding:0 max(32px,calc((100vw - 1360px)/2));display:flex;align-items:center;justify-content:space-between;gap:32px;position:sticky;top:0;z-index:30;background:rgba(246,242,233,.97);border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:13px;font-family:var(--serif);font-size:22px;letter-spacing:.1em;line-height:1.2;white-space:nowrap}.wordmark small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.15em;margin-top:6px;color:var(--muted)}.seal{display:grid;place-items:center;background:var(--rust);color:var(--paper);height:42px;width:38px;border-radius:1px;font-size:26px;font-family:var(--serif)}nav{display:flex;gap:26px;font-size:14px}nav a{padding:10px 0;position:relative}nav a:after{content:'';position:absolute;left:0;right:100%;bottom:3px;height:1px;background:var(--rust);transition:right .2s}nav a:hover:after,nav a.active:after{right:0}nav a.active{color:var(--rust)}.header-actions{display:flex;gap:16px}.icon-button{display:flex;align-items:center;gap:7px;padding:8px 0;font-size:12px;white-space:nowrap}.icon-button[aria-pressed=true]{color:var(--rust)}.reading-progress{height:2px;position:absolute;left:0;right:0;bottom:-1px}.reading-progress span{display:block;height:100%;width:0;background:var(--rust);transition:width .15s}.chapter{scroll-margin-top:100px;position:relative}.hero,.meaning,.reading,.structure,.heart,.reflection,.closing{max-width:1280px;margin:0 auto;padding:110px 48px}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:72px;padding-top:68px;padding-bottom:78px;min-height:calc(100svh - var(--header));align-items:center}.eyebrow{font-size:13px;letter-spacing:.12em;color:var(--rust);display:flex;align-items:center;gap:20px;margin-bottom:28px}.eyebrow span{color:var(--muted);letter-spacing:.08em;border-left:1px solid var(--line);padding-left:20px;font-size:12px}.hero h1{font-size:clamp(48px,5.6vw,76px);line-height:1.32;letter-spacing:.025em}.hero-intro{margin-top:28px;color:var(--muted);font-size:17px;line-height:1.9}.primary-button{margin-top:34px;display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:53px;padding:14px 23px;color:var(--paper);background:var(--ink);font-size:14px;transition:background .2s,transform .2s}.primary-button:hover{background:var(--rust);transform:translateY(-2px)}.primary-button span{font-size:20px;line-height:1}.hero-caption{font-size:11px;color:var(--muted);margin-top:19px;letter-spacing:.04em}.hero-portrait{position:relative;margin:0 14px 0 0;align-self:center}.portrait-frame{height:480px;width:100%;background:var(--paper-deep);position:relative}.portrait-frame:before{content:'';position:absolute;top:-14px;left:14px;right:-14px;bottom:14px;border:1px solid var(--gold);z-index:-1}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:64% center;filter:saturate(.78);display:block}.hero-portrait figcaption{display:flex;justify-content:space-between;margin-top:18px;font-size:11px;letter-spacing:.07em;color:var(--muted)}.vertical-note{position:absolute;writing-mode:vertical-rl;right:-36px;top:12px;color:var(--muted);font-family:var(--serif);font-size:12px;letter-spacing:.26em}.section-heading>p:last-child{margin-top:25px;font-size:17px;color:var(--muted);line-height:1.9}.meaning{border-top:1px solid var(--line)}.meaning-layout{display:grid;grid-template-columns:1fr 1.65fr;gap:80px;margin-top:62px}.meaning-intro{position:relative;display:flex;flex-direction:column;justify-content:center}.large-character{font-family:var(--serif);font-size:190px;line-height:1.15;color:#dfd7c8;display:block;margin-left:-12px}.meaning-intro p{font-size:20px;font-family:var(--serif);line-height:1.9;margin-top:8px}.meaning-list article{display:flex;gap:32px;padding:28px 0;border-top:1px solid var(--line)}.meaning-list article:last-child{border-bottom:1px solid var(--line)}.item-number{font-size:12px;color:var(--rust);font-family:Georgia,serif;padding-top:10px}.meaning-list h3{font-size:26px}.meaning-list p{margin-top:10px;color:var(--muted);font-size:16px}.quiet-question{display:grid;grid-template-columns:1fr 2fr 1fr;gap:28px;align-items:center;margin-top:60px;padding-top:35px}.quiet-question>span,.heart-question>span{font-size:12px;color:var(--rust);letter-spacing:.09em}.quiet-question p{font-family:var(--serif);font-size:23px}.text-button{display:inline-flex;align-items:center;gap:20px;padding:9px 0;border-bottom:1px solid currentColor;font-size:13px;line-height:1.5;width:max-content;max-width:100%}.text-button:hover{color:var(--rust)}.teacher-note{display:none;grid-column:1/-1;margin-top:30px;padding:22px 26px;border-left:3px solid var(--gold);background:#e9e3d7;color:#4d574e;font-size:14px;line-height:1.9}.teacher-note strong{display:block;margin-bottom:8px;color:var(--rust);font-size:13px}.show-notes .teacher-note{display:block}.reading{border-top:1px solid var(--line)}.reading-top{display:flex;justify-content:space-between;align-items:end;gap:35px}.section-side{font-family:var(--serif);font-size:20px;color:var(--muted);border-left:1px solid var(--line);padding-left:30px;line-height:1.85}.reading-tools{display:flex;gap:0;border-bottom:1px solid var(--line);margin-top:52px}.reading-mode{font-size:15px;display:flex;align-items:center;gap:15px;padding:16px 26px;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--muted)}.reading-mode:first-child{padding-left:0;padding-right:40px}.reading-mode span{font-size:11px;font-family:Georgia,serif}.reading-mode.active{border-bottom-color:var(--rust);color:var(--rust)}.reading-hint{color:var(--muted);font-size:13px;margin:20px 0 32px}.scripture{font-family:var(--serif);font-size:clamp(21px,2.15vw,28px);line-height:2;letter-spacing:.035em;max-width:1050px}.scripture p+p{margin-top:22px}.scripture mark{color:inherit;background:transparent;transition:background .25s,box-shadow .25s}.scripture.show-markers [data-mark=marker],.scripture.show-ending [data-mark=ending]{background:#e5cba8;box-shadow:0 0 0 3px #e5cba8}.scripture.show-ending .ending-passage{border-left:3px solid var(--rust);padding-left:24px}.source-line{display:flex;justify-content:space-between;align-items:center;margin-top:35px;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.word-note{margin-top:18px;font-size:13px;color:var(--muted)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.word-note summary:before{content:'＋';margin-right:10px;color:var(--rust)}.word-note[open] summary:before{content:'－'}.word-note p{margin:12px 0 0;padding:16px 22px;background:var(--paper-deep);line-height:2}.word-note small{font-size:12px}.structure{border-top:1px solid var(--line)}.structure-workspace{display:grid;grid-template-columns:230px 1fr;gap:42px;margin-top:48px}.passage-nav{display:flex;flex-direction:column;border-top:1px solid var(--line)}.passage-tab{position:relative;text-align:left;padding:20px 16px 20px 45px;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:21px;transition:background .2s}.passage-tab>span{position:absolute;left:9px;top:25px;font-family:var(--sans);font-size:12px;color:var(--rust)}.passage-tab small{font-family:var(--sans);display:block;font-size:11px;color:var(--muted);margin-top:4px}.passage-tab.active{background:var(--paper-deep);border-left:2px solid var(--rust);padding-left:43px}.passage-tab.complete .done-mark:after{content:'✓';position:absolute;right:10px;top:25px;color:var(--rust);font-size:12px}.passage-panel{background:#fffcf5;padding:36px 40px;border:1px solid var(--line)}.small-label{font-size:11px;letter-spacing:.1em;color:var(--muted);font-family:var(--sans);display:block}.passage-panel blockquote{font-size:clamp(23px,2.4vw,32px);line-height:1.85;margin-top:22px;white-space:pre-line;min-height:134px}.passage-question{margin-top:23px;font-size:15px;color:var(--muted)}.answer-options{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.answer-option{padding:10px 14px;border:1px solid var(--line);font-size:13px;background:transparent;transition:all .2s}.answer-option:hover{border-color:var(--rust);color:var(--rust)}.answer-option.chosen{background:var(--ink);border-color:var(--ink);color:var(--paper)}.answer-feedback{margin-top:22px;padding:20px 0 0;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.answer-feedback strong{color:var(--rust);display:block;margin-bottom:5px}.passage-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:32px}.next-passage{display:flex;gap:25px;align-items:center;font-size:13px}.structure-map{margin-top:28px;border-bottom:1px solid var(--line)}.structure-map summary{display:flex;justify-content:space-between;font-size:14px;padding:15px 0;color:var(--rust)}.structure-map ol{padding:0;margin:10px 0 25px;display:grid;grid-template-columns:repeat(5,1fr);list-style:none;counter-reset:step}.structure-map li{padding:10px 17px;border-left:1px solid var(--line);counter-increment:step}.structure-map li:first-child{padding-left:0;border:0}.structure-map li:before{content:'0' counter(step);font-size:11px;color:var(--rust)}.structure-map strong{display:block;font-family:var(--serif);font-size:19px;margin:8px 0}.structure-map li span{font-size:12px;color:var(--muted)}.heart{border-top:1px solid var(--line)}.contrast{display:grid;grid-template-columns:1fr 1fr;margin-top:55px;gap:80px}.contrast>div+div{padding-left:80px;border-left:1px solid var(--line)}.contrast blockquote{font-size:clamp(32px,4.3vw,58px);line-height:1.55;margin-top:20px}.contrast>div+div blockquote{color:var(--rust)}.heart-question{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-top:70px}.heart-question p{font-family:var(--serif);font-size:clamp(25px,2.8vw,38px);line-height:1.6}.interpretation{margin-top:55px;padding-top:30px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:40px}.interpretation p{font-size:19px;line-height:1.9}.scenario{background:var(--ink);color:var(--paper);padding:100px max(48px,calc((100vw - 1184px)/2));display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.scenario .eyebrow{color:#e0b999}.scenario .eyebrow span{color:#c7d0c8;border-color:#617269}.scenario h2{font-size:clamp(32px,3.8vw,52px)}.scenario-story{font-size:18px;color:#d0d8d1;line-height:2;margin-top:30px}.scenario-tag{display:block;margin-top:24px;color:#b0bfb4;font-size:11px;letter-spacing:.1em}.thoughts{padding-top:66px}.thoughts h3{font-family:var(--sans);font-size:19px;font-weight:500}.thoughts>p{font-size:12px;color:#b0bfb4;margin-top:6px}.thought-options{display:flex;flex-direction:column;gap:0;margin-top:24px;border-top:1px solid #5c7064}.thought-options button{display:flex;text-align:left;align-items:start;gap:16px;font-size:15px;line-height:1.9;padding:21px 0;border-bottom:1px solid #5c7064;color:var(--paper)}.choice-box{width:19px;height:19px;flex-shrink:0;border:1px solid #98ab9d;margin-top:5px;display:grid;place-items:center}.thought-options button[aria-pressed=true] .choice-box{background:#d9b899;color:var(--ink);border-color:#d9b899}.thought-options button[aria-pressed=true] .choice-box:after{content:'✓';font-size:13px}.light-button{display:flex;align-items:center;gap:25px;background:var(--paper);color:var(--ink);font-size:14px;margin-top:30px;padding:14px 20px;min-height:50px}.light-button:hover{background:#e0b999}.scenario .text-button{color:#e0b999}.scenario button:focus-visible{outline-color:#e0b999}.discussion-prompts{margin-top:30px;border-top:1px solid #5c7064;padding-top:24px}.discussion-prompts>p:first-child{font-size:13px;color:#d0d8d1}.discussion-prompts ol{list-style:none;padding:0;margin:22px 0}.discussion-prompts li{display:flex;gap:20px;margin-top:25px}.discussion-prompts li>span{font-family:Georgia,serif;font-size:12px;color:#dfb596;margin-top:4px}.discussion-prompts h4{font-weight:500;font-size:17px}.discussion-prompts li p{font-size:14px;color:#bdcbbf;margin-top:7px;line-height:1.9}.discussion-reminder{margin-top:24px!important;font-size:12px!important;color:#c3d0c6!important;line-height:1.9!important}.scenario .teacher-note{background:#344c40;color:#d0d8d1;border-color:#bd9f7a}.scenario .teacher-note strong{color:#e0b999}.reflection-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:90px;margin-top:55px}.reflection h2{font-size:clamp(30px,3.6vw,49px)}.reflection-quote{padding-top:10px}.reflection-quote blockquote{font-size:34px;line-height:1.8;margin-top:22px}.reflection-quote>p{margin-top:26px;font-size:15px;color:var(--muted);line-height:1.9}.reflection-quote small{display:block;font-size:11px;color:var(--muted);margin-top:8px}form label{font-size:15px;display:block;margin-bottom:28px}form label>span{font-size:11px;color:var(--rust);font-family:Georgia,serif;margin-right:14px}textarea{display:block;margin-top:12px;padding:14px 16px;width:100%;font-family:var(--sans);font-size:15px;line-height:1.7;color:var(--ink);background:#fffcf5;border:1px solid var(--line);border-radius:0;resize:vertical;min-height:96px}textarea::placeholder{color:#8a8d83;font-size:13px}.reflection-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.reflection-actions .primary-button{margin:0}.privacy-note{margin-top:17px;font-size:11px;color:var(--muted)}.form-status{font-size:12px;color:var(--rust);min-height:22px}.closing{border-top:1px solid var(--line);padding-top:100px;padding-bottom:100px;display:grid;grid-template-columns:1.7fr 1fr;gap:35px}.closing .eyebrow{grid-column:1/-1}.closing h2{font-size:clamp(42px,5.3vw,70px);grid-row:2/4}.closing>p:not(.eyebrow){font-family:var(--serif);font-size:23px;align-self:center}.closing .text-button{align-self:start}footer{border-top:1px solid var(--line);max-width:1184px;margin:0 auto;padding:32px 0 42px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.footer-title{font-family:var(--serif);font-size:20px;color:var(--ink)}footer .text-button{font-size:11px}.presentation-controls{position:fixed;z-index:60;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:var(--paper);box-shadow:0 5px 30px #0002;padding:8px 12px;align-items:center;gap:15px;white-space:nowrap}.presentation-controls:not([hidden]){display:flex}.presentation-controls button{padding:8px 10px;font-size:15px;color:var(--paper)}.presentation-controls button:last-child{font-size:11px;border-left:1px solid #637467}.presentation-controls span{font-size:12px;min-width:90px;text-align:center}.presentation .site-header nav{display:none}.presentation{--header:72px}.presentation .chapter{min-height:calc(100svh - 72px);scroll-margin-top:72px}.presentation .hero{padding-top:45px;padding-bottom:70px}.presentation .scripture{font-size:30px;max-width:none}.presentation .teacher-note{font-size:16px}.presentation .reading,.presentation .structure,.presentation .heart,.presentation .reflection,.presentation .meaning{padding-top:70px;padding-bottom:100px}.presentation .scenario{padding-top:75px;padding-bottom:100px}.timer{position:fixed;right:28px;bottom:28px;z-index:80;width:220px;background:#fffcf5;border:1px solid var(--line);box-shadow:0 7px 30px #0002;padding:17px 20px}.timer>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.timer span{font-size:11px;color:var(--muted)}.timer>p{font-family:Georgia,serif;font-variant-numeric:tabular-nums;font-size:50px;line-height:1.4;margin:9px 0;color:var(--ink)}.timer button{font-size:12px;padding:4px;color:var(--rust)}#timer-close{font-size:23px;line-height:1}.timer.finished{border-color:var(--rust)}.timer.finished>p{color:var(--rust)}dialog{max-width:620px;width:calc(100% - 36px);border:1px solid var(--line);padding:42px;background:var(--paper);color:var(--ink);max-height:85svh;overflow:auto}dialog::backdrop{background:#152b2380;backdrop-filter:blur(3px)}dialog h2{font-size:32px;margin-bottom:30px}dialog h3{font-size:22px;margin-top:24px}dialog p:not(.eyebrow){font-size:14px;line-height:1.9;margin-top:14px}.dialog-close{position:absolute;right:18px;top:12px;font-size:28px;color:var(--muted)}.toast{position:fixed;z-index:100;bottom:25px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--ink);color:var(--paper);padding:12px 25px;font-size:13px;transition:transform .2s;max-width:90vw;text-align:center}.toast.visible{transform:translateX(-50%) translateY(0)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}[hidden]{display:none!important}
@media(min-width:1500px){.hero{gap:100px}.portrait-frame{height:540px}}@media(max-width:1080px){.site-header{padding:0 26px;gap:20px}nav{gap:17px;font-size:12px}.header-actions{gap:13px}.icon-button span{display:none}.hero{gap:50px}.hero h1{font-size:62px}.portrait-frame{height:430px}.hero-caption{max-width:300px}.scenario{gap:45px}.structure-workspace{grid-template-columns:190px 1fr;gap:24px}.passage-panel{padding:28px}.reflection-layout{gap:45px}footer{margin:0 48px}}@media(max-width:760px){:root{--header:74px}html{scroll-padding-top:0}.site-header{padding:0 22px;gap:20px}.wordmark{font-size:19px}.seal{height:35px;width:32px;font-size:23px}.wordmark small{font-size:9px}.site-header nav{display:none}.header-actions{gap:17px}.icon-button svg{width:21px;height:21px}.hero,.meaning,.reading,.structure,.heart,.reflection,.closing{padding:65px 24px}.hero{grid-template-columns:1fr;gap:42px;padding-top:42px;min-height:auto}.hero h1{font-size:clamp(52px,10.8vw,75px)}.hero h1 br:nth-of-type(2){display:none}.eyebrow{font-size:11px;gap:14px;margin-bottom:23px}.eyebrow span{font-size:10px;padding-left:14px}.hero-intro{font-size:16px;margin-top:24px}.hero-caption{max-width:none;font-size:10px}.hero-portrait{margin-right:16px}.portrait-frame{height:390px;max-height:70svh}.portrait-frame img{object-position:61% 54%}.vertical-note{right:-26px;font-size:10px}.hero-portrait figcaption{font-size:10px}.hero .teacher-note{margin-top:0}.section-heading>p:last-child{font-size:15px}.meaning-layout{grid-template-columns:1fr;gap:30px;margin-top:40px}.meaning-intro{display:none}.meaning-list article{gap:24px;padding:24px 0}.meaning-list h3{font-size:25px}.meaning-list p{font-size:15px}.quiet-question{grid-template-columns:1fr;gap:18px;padding-top:15px;margin-top:35px}.quiet-question p{font-size:23px}.reading-top{display:block}.section-side{font-size:16px;margin-top:25px;padding-left:17px}.reading-tools{margin-top:32px;justify-content:space-between}.reading-mode,.reading-mode:first-child{padding:15px 6px;gap:8px;font-size:13px}.reading-mode span{font-size:10px}.reading-hint{font-size:12px;line-height:1.8}.scripture{font-size:21px;line-height:1.95}.scripture p+p{margin-top:22px}.source-line{align-items:start;gap:15px;font-size:10px}.source-line .text-button{font-size:11px;white-space:nowrap;padding-top:0;gap:8px}.structure-workspace{display:block;margin-top:30px}.passage-nav{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:18px;border:0;gap:4px}.passage-tab{padding:12px 3px!important;text-align:center;font-family:var(--sans);font-size:11px;border:1px solid var(--line);line-height:1.5}.passage-tab>span{position:static;display:block;font-size:16px;font-family:var(--serif);margin-bottom:4px}.passage-tab small{display:none}.passage-tab.active{border:1px solid var(--rust);background:var(--paper-deep)}.passage-tab.complete .done-mark:after{right:4px;top:2px;font-size:9px}.passage-panel{padding:25px 21px}.passage-panel blockquote{font-size:23px;line-height:1.8;min-height:0;margin-top:18px}.passage-question{font-size:14px}.answer-options{gap:7px}.answer-option{font-size:12px;padding:10px 12px}.answer-feedback{font-size:13px}.passage-bottom .text-button{font-size:11px}.structure-map ol{display:block;margin:0 0 15px}.structure-map li{padding:12px 0;border:0;border-top:1px solid var(--line);display:flex;align-items:baseline;gap:16px}.structure-map li:first-child{border-top:1px solid var(--line);padding-left:0}.structure-map strong{font-size:18px;margin:0}.structure-map li span{font-size:11px}.contrast{gap:20px;margin-top:36px}.contrast>div+div{padding-left:20px}.contrast blockquote{font-size:29px;margin-top:16px;line-height:1.7}.small-label{font-size:10px}.heart-question{display:block;margin-top:43px}.heart-question p{font-size:27px;margin-top:18px}.interpretation{display:block;margin-top:35px}.interpretation p{font-size:18px;margin-top:17px}.scenario{padding:65px 24px;display:block}.scenario h2{font-size:37px}.scenario-story{font-size:16px;line-height:1.9;margin-top:25px}.thoughts{padding-top:43px}.thoughts h3{font-size:18px}.thought-options button{font-size:14px}.light-button{font-size:13px;gap:15px}.reflection h2{font-size:33px;line-height:1.5}.reflection-layout{display:block;margin-top:34px}.reflection-quote{padding:0 0 35px;border-bottom:1px solid var(--line);margin-bottom:35px}.reflection-quote blockquote{font-size:28px;margin-top:16px}.reflection-quote>p{font-size:14px;margin-top:18px}form label{font-size:14px}textarea{font-size:16px}.reflection-actions{gap:19px}.reflection-actions .primary-button{font-size:13px;padding:13px 16px;gap:20px}.reflection-actions .text-button{font-size:12px}.privacy-note{font-size:10px;line-height:1.9}.closing{display:block}.closing h2{font-size:48px}.closing>p:not(.eyebrow){font-size:21px;margin-top:35px}.closing .text-button{margin-top:25px}footer{display:flex;flex-direction:column;align-items:start;margin:0 24px;padding:30px 0;gap:15px}.teacher-note{padding:18px 20px;font-size:13px}.presentation .scripture{font-size:24px}.presentation .hero{padding:40px 24px 90px}.presentation-controls{bottom:15px;gap:7px;padding:6px 9px;max-width:95vw}.presentation-controls button{padding:8px}.presentation-controls span{font-size:11px;min-width:78px}.timer{right:18px;bottom:82px;width:190px;padding:15px}.timer>p{font-size:44px}dialog{padding:35px 25px}dialog h2{font-size:28px}.desktop-only{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{.site-header,.header-actions,.teacher-note,.presentation-controls,.timer,footer,.answer-options,.thought-options,button,.privacy-note{display:none!important}.chapter{padding:25px!important;break-inside:avoid}.hero{min-height:0;display:block}.hero-portrait{display:none}h1{font-size:40px!important}h2{font-size:28px!important}.scripture{font-size:17px}.scenario{background:white;color:var(--ink)}.scenario-story{color:var(--ink)}textarea{border:1px solid #999}.passage-nav{display:none}.passage-panel{border:0;padding:0}.meaning-layout{display:block}.meaning-intro{display:none}}
/* Keep classroom navigation reachable while a notification is visible. */
.presentation .toast{bottom:95px}
@media(max-width:760px){.hero h1 br:nth-of-type(2){display:initial}}

.hero h1 .course-subtitle{display:block;font-family:var(--serif);font-size:.48em;letter-spacing:.12em;line-height:1.5;color:var(--rust);margin-top:20px}

.portrait-frame img{object-fit:contain;object-position:center;filter:none}

/* Preface: the spiritual inheritance and the care experienced by students. */
.meaning-intro.spirit-intro{justify-content:flex-start;padding-top:12px}
.spirit-intro .large-character{font-size:140px;line-height:1;margin-bottom:20px}
.spirit-intro .spirit-quote{font-size:29px;line-height:1.8;margin-top:14px;color:var(--rust)}
.spirit-intro .spirit-caption{font-family:var(--sans);font-size:14px;line-height:1.9;color:var(--muted);margin-top:20px}
.meaning-list p{max-width:560px;line-height:1.9}
.student-gratitude{margin-top:56px;background:var(--paper-deep);padding:34px 40px;border-left:3px solid var(--rust)}
.student-gratitude .eyebrow{margin-bottom:16px}
.student-gratitude h3{font-size:31px;color:var(--rust)}
.student-gratitude>p:last-child{font-family:var(--serif);font-size:22px;line-height:1.9;margin-top:20px}
.meaning-transition{margin-top:40px;padding-top:30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:30px}
.meaning-transition>p{font-size:16px;line-height:1.9;color:var(--muted)}
.meaning-transition .text-button{white-space:nowrap;color:var(--rust)}
.qianren-reading{margin-top:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.qianren-reading summary{display:flex;justify-content:space-between;gap:20px;padding:17px 0;font-size:13px;color:var(--muted)}
.qianren-reading[open] summary{color:var(--rust)}
.qianren-reading-body{padding:18px 0 30px;max-width:1000px}
.qianren-reading-body p{font-size:16px;line-height:2.05;margin-top:20px}
.qianren-reading-body .material-source{font-size:12px;color:var(--muted);margin-top:0}
@media(max-width:760px){
 .meaning-intro.spirit-intro{display:block;padding:0 0 26px;border-bottom:1px solid var(--line)}
 .spirit-intro .large-character{display:none}
 .spirit-intro .spirit-quote{font-size:28px;margin-top:12px}
 .spirit-intro .spirit-caption{font-size:13px;margin-top:14px}
 .student-gratitude{margin-top:35px;padding:25px 22px}
 .student-gratitude h3{font-size:25px;line-height:1.6}
 .student-gratitude>p:last-child{font-size:19px;line-height:1.9;margin-top:16px}
 .meaning-transition{display:block;margin-top:32px;padding-top:25px}
 .meaning-transition>p{font-size:15px}
 .meaning-transition .text-button{margin-top:20px;font-size:12px}
 .qianren-reading summary{font-size:12px}
 .qianren-reading-body p{font-size:15px}
}

.spirit-portrait{display:block;width:180px;height:200px;max-width:100%;object-fit:contain;object-position:center bottom;margin:0 0 22px;filter:none;flex-shrink:0}
@media(max-width:760px){
 .meaning-intro.spirit-intro{display:flow-root}
 .spirit-portrait{float:right;width:clamp(78px,24vw,100px);height:130px;margin:0 0 12px 14px}
 .spirit-intro .spirit-quote{font-size:clamp(24px,7vw,28px)}
}

/* Larger classroom typography and a clearer introductory composition. */
.hero-intro,.section-heading>p:last-child{font-size:20px;line-height:1.85}
nav{font-size:16px;gap:24px}
.icon-button{font-size:14px}
.text-button,.primary-button,.light-button,.next-passage{font-size:16px;min-height:44px}
.section-side{font-size:23px}
.reading-mode{font-size:18px}
.reading-hint{font-size:16px}
.scripture{font-size:clamp(25px,2.3vw,32px);line-height:1.95}
.passage-tab{font-size:23px}
.passage-tab small,.small-label{font-size:13px}
.passage-panel blockquote{font-size:clamp(27px,2.5vw,34px)}
.passage-question,.answer-feedback{font-size:18px;line-height:1.85}
.answer-option{font-size:16px;padding:12px 17px;min-height:47px}
.structure-map summary{font-size:17px}
.structure-map strong{font-size:22px}
.structure-map li span{font-size:15px}
.interpretation p{font-size:22px}
.scenario-story{font-size:21px}
.thoughts h3{font-size:23px}
.thoughts>p,.discussion-prompts>p:first-child{font-size:16px}
.thought-options button{font-size:18px;line-height:1.85}
.discussion-prompts h4{font-size:21px}
.discussion-prompts li p{font-size:18px}
.discussion-reminder{font-size:15px!important}
form label{font-size:18px}
textarea{font-size:18px;min-height:112px}
textarea::placeholder{font-size:15px}
.privacy-note{font-size:13px}
.teacher-note{font-size:16px}
.reflection-quote>p{font-size:18px}
.reflection-quote small{font-size:13px}

#meaning{padding-top:82px;padding-bottom:90px}
.meaning-opening{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.85fr);grid-template-areas:'heading portrait' 'spirit portrait';column-gap:58px;row-gap:32px;align-items:start}
.meaning-opening .section-heading{grid-area:heading;align-self:end}
.meaning-opening h2{font-size:clamp(40px,4.5vw,62px);line-height:1.38;letter-spacing:.025em}
.meaning-opening .section-heading>p:last-child{font-size:21px;line-height:1.85;max-width:650px;margin-top:24px}
.meaning-spirit{grid-area:spirit;padding-top:25px;border-top:1px solid var(--line)}
.meaning-spirit .small-label{font-size:13px;letter-spacing:.1em}
.meaning-spirit .spirit-quote{font-family:var(--serif);font-size:clamp(30px,3.2vw,43px);line-height:1.6;color:var(--rust);margin-top:12px}
.meaning-spirit .spirit-caption{font-size:18px;line-height:1.8;color:var(--muted);margin-top:18px;font-family:var(--sans)}
.meaning-portrait{grid-area:portrait;align-self:center;justify-self:center;width:100%;max-width:350px;margin:0;padding:0}
.meaning-portrait .spirit-portrait{display:block;width:100%;height:auto;max-height:470px;object-fit:contain;object-position:center bottom;float:none;margin:0;filter:none}
.meaning-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin-top:62px}
.meaning-principles article{display:block;min-width:0;padding:26px 0 0;border-top:1px solid var(--line);border-bottom:0!important}
.meaning-principles .item-number{display:block;font-size:15px;padding:0;line-height:1.5;margin-bottom:15px}
.meaning-principles h3{font-size:28px;line-height:1.55;font-weight:600;letter-spacing:.015em}
.meaning-principles p{font-size:21px;line-height:1.85;margin-top:15px;color:#526158;max-width:none}
#meaning .student-gratitude{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);column-gap:45px;row-gap:14px;margin-top:64px;padding:38px 42px;border-left:0;background:#ebe4d6}
#meaning .student-gratitude>.eyebrow{grid-column:1;grid-row:1;margin:0;align-self:end;line-height:1.8}
#meaning .student-gratitude h3{grid-column:1;grid-row:2;font-size:31px;line-height:1.6;color:var(--rust);align-self:start;max-width:330px}
#meaning .student-gratitude>p:last-child{grid-column:2;grid-row:1/3;font-size:25px;line-height:1.95;margin:0;align-self:center}
#meaning .student-gratitude .desktop-only{display:none}
#meaning .quiet-question{grid-template-columns:180px minmax(0,1fr) auto;gap:28px;margin-top:48px;padding-top:0}
#meaning .quiet-question>span{font-size:14px}
#meaning .quiet-question p{font-size:28px;line-height:1.7}
#meaning .meaning-transition{gap:40px;margin-top:42px;padding-top:32px}
#meaning .meaning-transition>p{font-size:19px;line-height:1.85}
#meaning .qianren-reading{margin-top:36px}
#meaning .qianren-reading summary{font-size:16px;padding:20px 0}
#meaning .qianren-reading-body p{font-size:19px;line-height:1.95}
#meaning .qianren-reading-body .material-source{font-size:14px}

@media(min-width:1500px){.meaning-portrait{max-width:370px}.meaning-portrait .spirit-portrait{max-height:485px}}
@media(min-width:761px) and (max-width:1099px){
 .meaning-opening{grid-template-columns:minmax(0,1.5fr) minmax(255px,.9fr);column-gap:34px;row-gap:26px}
 .meaning-opening h2{font-size:46px}
 .meaning-opening .section-heading>p:last-child{font-size:20px}
 .meaning-portrait{max-width:315px}
 .meaning-spirit .spirit-quote{font-size:34px}
 .meaning-spirit .spirit-caption{font-size:17px}
 .meaning-principles{grid-template-columns:1fr;gap:0;margin-top:48px}
 .meaning-principles article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:20px;padding:25px 0}
 .meaning-principles .item-number{padding-top:7px;margin:0}
 .meaning-principles article>div{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.65fr);gap:28px;align-items:start}
 .meaning-principles h3{font-size:26px}
 .meaning-principles p{font-size:21px;margin:0}
 #meaning .student-gratitude{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:14px 30px;padding:30px}
 #meaning .student-gratitude h3{font-size:28px}
 #meaning .student-gratitude>p:last-child{font-size:23px}
 #meaning .quiet-question{grid-template-columns:1fr auto;gap:14px 28px}
 #meaning .quiet-question>span{grid-column:1/-1}
 #meaning .quiet-question p{font-size:26px}
 #meaning .meaning-transition{display:block}
 #meaning .meaning-transition .text-button{margin-top:20px}
}
@media(max-width:760px){
 .hero-intro,.section-heading>p:last-child{font-size:18px}
 .section-side{font-size:19px}
 .reading-mode{font-size:15px}
 .reading-hint{font-size:15px}
 .scripture{font-size:23px;line-height:1.95}
 .passage-tab{font-size:12px}
 .passage-tab>span{font-size:18px}
 .passage-panel{padding:27px 22px}
 .passage-panel blockquote{font-size:25px}
 .passage-question,.answer-feedback{font-size:16px}
 .answer-option{font-size:14px;padding:10px 13px}
 .passage-bottom .text-button{font-size:14px}
 .structure-map strong{font-size:20px}
 .structure-map li span{font-size:13px}
 .scenario-story{font-size:19px}
 .thoughts h3{font-size:21px}
 .thought-options button{font-size:17px}
 .discussion-prompts li p{font-size:17px}
 .reflection-quote>p{font-size:17px}
 .reflection-actions .primary-button,.reflection-actions .text-button{font-size:15px}
 .privacy-note{font-size:12px}
 #meaning{padding-top:58px;padding-bottom:64px}
 .meaning-opening{grid-template-columns:1fr;grid-template-areas:'heading' 'portrait' 'spirit';row-gap:28px}
 .meaning-opening h2{font-size:clamp(33px,8.8vw,42px);line-height:1.42}
 .meaning-opening .section-heading>p:last-child{font-size:19px;line-height:1.85;margin-top:20px}
 .meaning-portrait{width:min(78vw,280px);max-width:100%;margin:0 auto}
 .meaning-portrait .spirit-portrait{width:100%;height:auto;max-height:350px;float:none;margin:0}
 .meaning-spirit{padding-top:25px;text-align:center}
 .meaning-spirit .spirit-quote{font-size:31px;line-height:1.7;margin-top:12px}
 .meaning-spirit .spirit-caption{font-size:17px;line-height:1.9;margin-top:17px}
 .meaning-principles{grid-template-columns:1fr;gap:0;margin-top:38px}
 .meaning-principles article{display:flex;gap:18px;padding:24px 0}
 .meaning-principles .item-number{flex:0 0 26px;font-size:14px;padding-top:8px;margin:0}
 .meaning-principles h3{font-size:26px;line-height:1.6}
 .meaning-principles p{font-size:19px;line-height:1.9;margin-top:13px}
 #meaning .student-gratitude{display:block;margin-top:30px;padding:28px 24px}
 #meaning .student-gratitude>.eyebrow{font-size:12px;gap:12px;margin:0 0 15px}
 #meaning .student-gratitude h3{font-size:27px;max-width:none}
 #meaning .student-gratitude>p:last-child{font-size:21px;line-height:1.9;margin-top:18px}
 #meaning .quiet-question{display:block;margin-top:35px}
 #meaning .quiet-question>span{display:block;font-size:13px;margin-bottom:17px}
 #meaning .quiet-question p{font-size:25px;line-height:1.65}
 #meaning .quiet-question .text-button{margin-top:20px}
 #meaning .meaning-transition{display:block;margin-top:32px;padding-top:27px}
 #meaning .meaning-transition>p{font-size:18px;line-height:1.9}
 #meaning .meaning-transition .text-button{font-size:15px;margin-top:21px}
 #meaning .qianren-reading summary{font-size:14px;line-height:1.8}
 #meaning .qianren-reading-body p{font-size:18px;line-height:1.95}
 #meaning .qianren-reading-body .material-source{font-size:13px}
}

.reading-origin{margin-top:24px;font-weight:700;font-size:clamp(18px,1.75vw,23px);line-height:1.9}.reading-origin p+p{margin-top:3px}
@media(max-width:760px){.reading-origin{font-size:18px;line-height:1.9}}

/* Author annotations are a separate reading view. */
.reading-annotations{margin-top:34px}
.annotation-header{max-width:850px;margin-bottom:30px}
.annotation-header .eyebrow{margin-bottom:15px}
.annotation-header h3{font-size:32px;line-height:1.5}
.annotation-header>p:last-child{font-size:18px;line-height:1.9;color:var(--muted);margin-top:15px}
.annotation-group{border-top:1px solid var(--line)}
.annotation-group:last-child{border-bottom:1px solid var(--line)}
.annotation-group summary{display:flex;align-items:center;gap:24px;padding:25px 0}
.annotation-number{font-family:Georgia,serif;color:var(--rust);font-size:15px;min-width:32px}
.annotation-group summary strong{display:block;font-family:var(--serif);font-size:28px;font-weight:600}
.annotation-group summary small{display:block;color:var(--muted);font-size:15px;margin-top:4px}
.annotation-disclosure{margin-left:auto;width:24px;text-align:center;color:var(--rust);font-size:24px}
.annotation-disclosure:before{content:'＋'}
.annotation-group[open] .annotation-disclosure:before{content:'−'}
.annotation-entries{padding-bottom:8px}
.annotation-entry{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.65fr);gap:40px;padding:28px 0;border-top:1px solid var(--line)}
.annotation-original .small-label,.annotation-comment .small-label{font-size:12px;margin-bottom:12px}
.annotation-original>p{font-family:var(--serif);font-size:25px;line-height:1.8;color:var(--rust)}
.annotation-text{font-size:21px;line-height:1.95;white-space:pre-line;color:var(--ink)}
.annotation-source{font-size:13px;color:var(--muted);padding:7px 0 24px}
@media(max-width:760px){
 .reading-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
 .reading-mode,.reading-mode:first-child{justify-content:center;padding:14px 3px;gap:6px;font-size:14px;white-space:nowrap}
 .reading-mode span{font-size:10px}
 .annotation-header h3{font-size:27px}
 .annotation-header>p:last-child{font-size:17px}
 .annotation-group summary{gap:14px;padding:22px 0}
 .annotation-group summary strong{font-size:25px}
 .annotation-group summary small{font-size:13px}
 .annotation-number{min-width:24px;font-size:13px}
 .annotation-entry{grid-template-columns:1fr;gap:20px;padding:24px 0}
 .annotation-original>p{font-size:24px}
 .annotation-text{font-size:19px;line-height:1.9}
 .annotation-source{font-size:12px}
}

/* Symbolic illustrations follow the selected reading view. */
#reading .reading-top{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:center;gap:48px}
#reading .reading-side{min-width:0;align-self:center}
#reading .reading-emblem{margin:0;text-align:center}
#reading .reading-art-stage{height:224px;position:relative;isolation:isolate}
#reading .reading-art-stage:before{content:'';position:absolute;inset:12% 8%;border-radius:50%;background:radial-gradient(ellipse,rgba(184,161,122,.12),transparent 70%);z-index:-1}
#reading .reading-art-stage img{display:block;width:100%;height:100%;object-fit:contain}
#reading .reading-emblem figcaption{font-family:var(--serif);font-size:16px;letter-spacing:.08em;color:var(--rust);margin-top:12px;line-height:1.7}
#reading .reading-side .section-side{font-size:22px;line-height:1.8;border:0;padding:0;margin:22px 0 0;text-align:center}
@media(max-width:1000px) and (min-width:761px){
 #reading .reading-top{grid-template-columns:minmax(0,1fr) 275px;gap:28px}
 #reading .reading-art-stage{height:202px}
 #reading .reading-side .section-side{font-size:19px}
}
@media(max-width:760px){
 #reading .reading-top{grid-template-columns:1fr;gap:30px}
 #reading .reading-side{width:100%;max-width:360px;justify-self:center}
 #reading .reading-art-stage{height:210px;max-width:300px;margin:0 auto}
 #reading .reading-emblem figcaption{font-size:15px;margin-top:10px}
 #reading .reading-side .section-side{font-size:19px;margin-top:18px;line-height:1.85}
}
@media print{#reading .reading-side{display:none}#reading .reading-top{display:block}}

/* Part two: connected generations, close reading and shared practice. */
.realm-chapter{max-width:1280px;margin:0 auto;padding:100px 48px}
.realm-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.realm-chapter .section-heading>p:last-child{font-size:22px;line-height:1.9;margin-top:24px;color:var(--muted)}
.realm-intro-grid h2{font-size:clamp(40px,4.6vw,64px);line-height:1.4}
.realm-opening-question{border-top:1px solid var(--line);margin-top:40px;padding-top:28px}
.realm-opening-question h3{font-size:30px;margin:14px 0}
.realm-opening-question>p{font-size:20px;color:var(--muted);line-height:1.9}
.realm-map{position:relative;width:100%;aspect-ratio:5/4;margin-top:6px}
.realm-map-lines{position:absolute;inset:0;width:100%;height:100%;stroke:var(--gold);fill:none;stroke-width:1.5}
.realm-map-lines circle{stroke-dasharray:3 7;opacity:.55}
.realm-map-lines .realm-map-spokes{stroke-dasharray:5 6;opacity:.5}
.realm-map-center{position:absolute;left:50%;top:52.5%;transform:translate(-50%,-50%);width:128px;height:128px;border-radius:50%;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 0 10px var(--paper)}
.realm-map-center span{font-size:13px;letter-spacing:.12em}
.realm-map-center strong{font-family:var(--serif);font-size:29px;font-weight:500;letter-spacing:.06em}
.realm-node{position:absolute;transform:translate(-50%,-50%);padding:11px 22px;min-width:130px;border:1px solid var(--gold);background:var(--paper);transition:background .2s,color .2s}
.realm-node small{display:block;font-size:12px;white-space:nowrap;color:var(--muted)}
.realm-node strong{display:block;font-family:var(--serif);font-size:26px;font-weight:600;white-space:nowrap}
.realm-node.active,.realm-node:hover{background:var(--rust);border-color:var(--rust);color:var(--paper)}
.realm-node.active small,.realm-node:hover small{color:var(--paper)}
.realm-node-social{left:50%;top:13.75%}.realm-node-students{left:20%;top:78.75%}.realm-node-youth{left:80%;top:78.75%}
.realm-map-instruction{text-align:center;font-size:14px;color:var(--muted);margin-top:0}
.realm-map-detail{margin-top:26px;padding:24px 0 0;border-top:1px solid var(--line);min-height:235px}
.realm-map-detail blockquote{font-size:28px;line-height:1.6;margin:12px 0;color:var(--rust)}
.realm-map-detail article>p{font-size:20px;line-height:1.8}
.realm-source{font-size:13px!important;line-height:1.8!important;color:var(--muted);margin-top:22px!important}
.realm-reading-heading{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:center}
.realm-origin{font-size:20px;font-weight:600;line-height:1.9;margin-top:24px}
.realm-reading-guide{font-family:var(--serif);font-size:34px;line-height:1.7;border-left:1px solid var(--gold);padding-left:30px}
.realm-reading-guide span{font-family:var(--sans);font-size:17px;color:var(--muted)}
.realm-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-top:40px}
.realm-tabs>button{display:flex;gap:12px;align-items:center;padding:18px 4px;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:19px;color:var(--muted)}
.realm-tabs>button span{font-family:Georgia,serif;font-size:13px;color:var(--rust)}
.realm-tabs>button.active{color:var(--ink);border-bottom-color:var(--rust)}
.realm-read-panel{padding-top:30px}
.realm-poem-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.realm-poem-heading .text-button{font-size:14px}
.realm-poem{font-family:var(--serif);font-size:clamp(23px,2.6vw,32px);line-height:2.15;margin:25px 0}
.realm-poem p{margin-bottom:8px}
.realm-poem p>span{border-radius:2px;transition:background .2s,color .2s}
.realm-poem.show-acrostic p>span{background:var(--rust);color:var(--paper);box-shadow:0 0 0 4px var(--rust)}
.realm-acrostic-result{color:var(--rust);font-size:18px;margin:20px 0}
.realm-original-continuation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:26px}
.realm-original-continuation>summary{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:22px 0;font-size:19px;cursor:pointer;list-style:none}
.realm-original-continuation>summary::-webkit-details-marker{display:none}
.realm-original-continuation>summary span{color:var(--rust)}
.realm-original-continuation[open]>summary span{transform:rotate(45deg)}
.realm-original{font-family:var(--serif);font-size:25px;line-height:1.95;padding:10px 0 30px}
.realm-original-group+.realm-original-group{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.realm-original-group .small-label{margin-bottom:16px;display:block;font-family:var(--sans)}
.realm-original-group p+p{margin-top:18px}
.realm-panel-intro{font-size:21px;line-height:1.9;color:var(--muted)}
.realm-structure-list{padding:0;margin:24px 0 0;list-style:none}
.realm-structure-list li{display:grid;grid-template-columns:40px 1fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line)}
.realm-structure-list li>span{font-family:Georgia,serif;color:var(--rust);padding-top:7px}
.realm-structure-list h3{font-size:29px}.realm-structure-answer{font-size:21px;line-height:1.8;margin:9px 0 20px}
.realm-structure-list blockquote{font-size:23px;line-height:1.9;color:var(--rust);font-weight:500}
.realm-structure-list blockquote .small-label{display:block;font-family:var(--sans);color:var(--muted);font-size:12px;margin-bottom:10px}
.realm-note-body{font-size:21px;line-height:1.95;padding:5px 0 26px;white-space:pre-line}
.realm-note-body p+p{margin-top:20px}
.realm-relation-tabs{margin-top:36px}
.realm-relation-panel{display:grid;grid-template-columns:1fr 1fr;gap:46px;padding:38px 0 30px;min-height:300px;align-items:center}
.realm-relation-quote h3{font-size:28px;line-height:1.65;margin-top:17px}
.realm-relation-quote blockquote{font-size:26px;line-height:1.9;color:var(--rust);font-weight:500;margin-top:15px}
.realm-relation-question{padding-left:36px;border-left:1px solid var(--line)}
.realm-relation-question>p{font-family:var(--serif);font-size:27px;line-height:1.8;margin-top:16px}
.realm-relation-question>small{display:block;font-size:15px;line-height:1.9;color:var(--muted);margin-top:18px}
.realm-four-words{border-top:1px solid var(--line);padding-top:26px}
.realm-four-words>p{display:flex;gap:0;margin-top:16px;justify-content:space-between;max-width:670px}
.realm-four-words>p span{font-family:var(--serif);font-size:32px;letter-spacing:.12em}
.realm-case{background:var(--ink);color:var(--paper);max-width:none;padding-left:max(48px,calc((100vw - 1184px)/2));padding-right:max(48px,calc((100vw - 1184px)/2))}
.realm-case-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}
.realm-case .eyebrow,.realm-case .small-label{color:#d8b68b}.realm-case .eyebrow span{color:#c6d0c7;border-color:#627167}
.realm-case .realm-case-story{font-size:24px;line-height:1.9;color:#e0e6dc;margin-top:28px}
.realm-case .realm-case-invite{font-size:21px;line-height:1.9;color:#e0e6dc;margin-top:30px}
.realm-case .scenario-tag{display:inline-block;color:#c7d1c7;border-color:#627167;margin-top:18px}
.realm-case .light-button{margin-top:26px}
.realm-case-prompts>p{margin-bottom:18px}
.realm-case-prompts details{border-top:1px solid #627167}
.realm-case-prompts details:last-of-type{border-bottom:1px solid #627167}
.realm-case-prompts summary{display:grid;grid-template-columns:26px 1fr 20px;gap:16px;align-items:start;padding:25px 0;list-style:none;cursor:pointer;font-family:var(--serif);font-size:24px;line-height:1.7}
.realm-case-prompts summary::-webkit-details-marker{display:none}
.realm-case-prompts summary>span{font-family:Georgia,serif;font-size:13px;color:#d8b68b;padding-top:8px}
.realm-case-prompts summary i{font-style:normal;font-size:21px;color:#d8b68b;transition:transform .2s}
.realm-case-prompts details[open] summary i{transform:rotate(45deg)}
.realm-case-prompts details>div{padding:0 0 25px 42px}
.realm-case-prompts details p{font-size:20px;line-height:1.95;color:#e0e6dc;margin-top:12px}
.realm-case-return{margin-top:28px;border-left:2px solid #b8a17a;padding:0 0 0 24px}
.realm-case-return blockquote{font-size:25px;line-height:1.8;margin-top:16px}
.realm-case-keywords{color:#d8b68b;font-family:var(--serif);font-size:24px;letter-spacing:.06em;margin-top:18px}
.realm-case-return>p:last-child{font-size:19px;line-height:1.9;margin-top:18px;color:#e0e6dc}
.realm-case .teacher-note{grid-column:auto;border-color:#627167;color:#e0e6dc;background:rgba(255,255,255,.04)}
.realm-case .teacher-note strong{color:#d8b68b}
.realm-reflection-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;margin-top:42px}
.realm-final-quote blockquote{font-size:30px;line-height:1.9;margin-top:20px}
.realm-reflection-grid form label{font-size:20px}
.realm-reflection-grid textarea{font-size:19px;line-height:1.85}
.realm-final-line{border-top:1px solid var(--line);padding-top:38px;margin-top:50px;display:flex;justify-content:space-between;align-items:end;gap:30px}
.realm-final-line>p{font-family:var(--serif);font-size:38px;line-height:1.6}
.realm-final-line>p span{color:var(--rust)}
.realm-final-line>div{display:flex;flex-direction:column;gap:12px;align-items:start}
.closing .closing-next{color:var(--rust);margin-top:20px;display:inline-flex}
@media(max-width:1000px) and (min-width:761px){
 .realm-intro-grid,.realm-case-grid{gap:40px}.realm-node{min-width:110px;padding:10px 13px}.realm-node strong{font-size:23px}.realm-node small{font-size:10px}.realm-map-center{width:100px;height:100px}.realm-map-center strong{font-size:25px}.realm-map-center span{font-size:11px}
 .realm-relation-panel{gap:26px}.realm-relation-question{padding-left:26px}.realm-relation-question>p{font-size:24px}.realm-reflection-grid{gap:38px}
}
@media(max-width:760px){
 .realm-chapter{padding:65px 24px}.realm-intro-grid,.realm-case-grid{grid-template-columns:1fr;gap:35px}.realm-intro-grid h2{font-size:42px;line-height:1.4}.realm-intro-grid h2 br:nth-of-type(2){display:none}
 .realm-chapter .section-heading>p:last-child{font-size:19px;margin-top:20px}.realm-opening-question{margin-top:30px;padding-top:25px}.realm-opening-question h3{font-size:28px}.realm-opening-question>p{font-size:19px}
 .realm-map-wrap{max-width:470px;width:100%;margin:0 auto}.realm-node{min-width:105px;padding:9px 11px}.realm-node strong{font-size:23px}.realm-node small{font-size:10px}.realm-map-center{width:102px;height:102px;box-shadow:0 0 0 5px var(--paper)}.realm-map-center strong{font-size:25px}.realm-map-center span{font-size:11px}.realm-map-instruction{font-size:12px;margin-top:8px}.realm-map-detail{min-height:230px;margin-top:23px}.realm-map-detail blockquote{font-size:26px}.realm-map-detail article>p{font-size:19px}
 .realm-reading-heading{grid-template-columns:1fr;gap:28px}.realm-origin{font-size:18px}.realm-reading-guide{font-size:26px;padding-left:20px}.realm-reading-guide br:first-child{display:none}.realm-reading-guide span{font-size:16px}
 .realm-tabs{gap:0;justify-content:space-between;margin-top:30px}.realm-tabs>button{font-size:16px;gap:8px;padding:16px 4px}.realm-tabs>button span{font-size:11px}.realm-read-panel{padding-top:25px}.realm-poem-heading{align-items:start;flex-direction:column;gap:5px}.realm-poem-heading .text-button{font-size:14px}.realm-poem{font-size:23px;line-height:1.95;margin-top:20px}.realm-poem p{margin-bottom:16px}.realm-poem wbr:after{content:''}.realm-acrostic-result{font-size:16px;line-height:1.8}
 .realm-original-continuation>summary{font-size:17px;line-height:1.8}.realm-original{font-size:22px;line-height:1.95}.realm-source{font-size:12px!important}.realm-panel-intro{font-size:19px}.realm-structure-list li{grid-template-columns:24px 1fr;gap:16px;padding:25px 0}.realm-structure-list h3{font-size:26px}.realm-structure-answer{font-size:19px}.realm-structure-list blockquote{font-size:21px}.realm-note-body{font-size:19px}
 .realm-relation-panel{grid-template-columns:1fr;gap:26px;padding-top:28px;min-height:0}.realm-relation-quote h3{font-size:25px}.realm-relation-quote blockquote{font-size:23px}.realm-relation-question{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.realm-relation-question>p{font-size:24px}.realm-relation-question>small{font-size:14px}.realm-four-words>p span{font-size:25px}
 .realm-case .realm-case-story{font-size:21px}.realm-case .realm-case-invite{font-size:19px}.realm-case-prompts summary{font-size:22px;grid-template-columns:24px 1fr 18px;gap:12px}.realm-case-prompts details>div{padding-left:36px}.realm-case-prompts details p{font-size:19px}.realm-case-return{padding-left:18px}.realm-case-return blockquote{font-size:23px}.realm-case-keywords{font-size:22px}
 .realm-reflection-grid{grid-template-columns:1fr;gap:32px;margin-top:30px}.realm-final-quote{padding-bottom:28px;border-bottom:1px solid var(--line)}.realm-final-quote blockquote{font-size:26px}.realm-reflection-grid form label{font-size:18px}.realm-reflection-grid textarea{font-size:18px}.realm-final-line{display:block;padding-top:30px;margin-top:35px}.realm-final-line>p{font-size:34px}.realm-final-line>div{margin-top:25px}
 .closing .closing-next{margin-top:15px}
}
@media print{.realm-chapter{padding:25px!important;break-inside:auto}.realm-intro-grid,.realm-reading-heading,.realm-relation-panel,.realm-case-grid,.realm-reflection-grid{display:block}.realm-map-wrap,.realm-tabs,.realm-case-prompts>button{display:none!important}.realm-case{background:white;color:var(--ink)}.realm-case .realm-case-story,.realm-case .realm-case-invite{color:var(--ink)}.realm-original{font-size:18px}.realm-final-quote blockquote{font-size:22px}}

/* Canonical text, seven reading steps and paired supplementary notes. */
.realm-step-question{font-size:18px;line-height:1.9;margin-top:20px;color:var(--muted)}
.realm-step-question>span{display:block;font-size:12px;letter-spacing:.08em;color:var(--rust);margin-bottom:5px}
.realm-note-anchor{border-left:2px solid var(--gold);padding:0 0 0 22px;margin:4px 0 26px}
.realm-note-anchor blockquote{font-size:23px;line-height:1.9;color:var(--rust);font-weight:500;margin-top:12px}
.realm-note-body>.small-label{display:block;margin-bottom:14px}
@media(max-width:760px){.realm-step-question{font-size:17px}.realm-note-anchor{padding-left:17px}.realm-note-anchor blockquote{font-size:21px}}

/* A quiet reading pause between discussion and personal reflection. */
.affinity-reflection{max-width:1280px;margin:0 auto;padding:105px 48px;border-bottom:1px solid var(--line)}
.affinity-layout{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:70px;align-items:start}
.affinity-heading h2{font-size:clamp(38px,4.1vw,56px);line-height:1.5}
.affinity-caption{font-size:13px;color:var(--muted);margin-top:24px;letter-spacing:.08em}
.affinity-prose{font-family:var(--serif);font-size:24px;line-height:1.95;letter-spacing:.015em}
.affinity-prose>p+p{margin-top:26px}
.affinity-prose .affinity-lead{font-size:30px;line-height:1.8;margin-bottom:32px}
.affinity-prose .affinity-memory{border-left:2px solid var(--gold);padding:6px 0 6px 25px;margin-top:34px}
.affinity-memory>.affinity-memory-quote{display:inline-block;color:var(--rust);font-size:27px;margin-top:10px}
@media(max-width:1000px) and (min-width:761px){.affinity-layout{gap:40px;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr)}.affinity-prose{font-size:22px}.affinity-prose .affinity-lead{font-size:27px}.affinity-memory>.affinity-memory-quote{font-size:25px}}
@media(max-width:760px){.affinity-reflection{padding:65px 24px}.affinity-layout{grid-template-columns:1fr;gap:32px}.affinity-heading h2{font-size:38px;line-height:1.5}.affinity-heading h2 br:first-of-type{display:none}.affinity-caption{margin-top:17px}.affinity-prose{font-size:21px;line-height:1.95}.affinity-prose>p+p{margin-top:24px}.affinity-prose .affinity-lead{font-size:25px;margin-bottom:27px}.affinity-prose .affinity-memory{padding-left:19px;margin-top:29px}.affinity-memory>.affinity-memory-quote{font-size:23px}}
@media print{.affinity-reflection{padding:25px!important;break-inside:auto}.affinity-layout{display:block}.affinity-heading{margin-bottom:22px}.affinity-prose{font-size:18px;line-height:1.8}.affinity-prose .affinity-lead{font-size:22px}.affinity-memory>.affinity-memory-quote{font-size:21px}}

/* On-demand sentence marking for the reflection page. */
.affinity-mark-tools{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}
.affinity-mark-buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.affinity-mark-buttons button{min-height:44px;padding:9px 16px;font-size:16px;line-height:1.6;border:1px solid var(--gold)}
#affinity-mark-toggle[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
#affinity-mark-clear{border-color:transparent;padding-left:4px;padding-right:4px;color:var(--rust)}
.affinity-mark-hint,.affinity-mark-status{font-size:14px;line-height:1.8;color:var(--muted);margin-top:14px}
.affinity-mark-status:empty{display:none}
.affinity-prose .affinity-sentence{border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.is-marking .affinity-sentence{cursor:pointer}
.is-marking .affinity-sentence:hover{box-shadow:0 2px 0 var(--gold)}
.affinity-prose .affinity-sentence.is-highlighted{color:var(--ink);background:#efd393;box-shadow:0 2px 0 #c09a51}
.affinity-sentence:focus-visible{outline:2px solid var(--rust);outline-offset:4px}
@media(max-width:760px){.affinity-mark-tools{margin-top:25px;padding-top:21px}.affinity-mark-hint,.affinity-mark-status{font-size:14px}}
@media print{.affinity-mark-tools{display:none!important}.affinity-prose .affinity-sentence.is-highlighted{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* Japanese-style book and stationery still life for the structure chapter. */
.structure-heading-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:45px;align-items:center}
.structure-illustration{margin:0;width:100%;justify-self:end}
.structure-illustration img{display:block;width:100%;height:280px;object-fit:contain}
@media(max-width:1000px) and (min-width:761px){.structure-heading-layout{grid-template-columns:minmax(0,1fr) 280px;gap:30px}.structure-illustration img{height:235px}}
@media(max-width:760px){.structure-heading-layout{grid-template-columns:1fr;gap:25px}.structure-illustration{width:min(100%,310px);justify-self:center}.structure-illustration img{height:230px}}
@media print{.structure-heading-layout{display:block}.structure-illustration{display:none}}

/* A small journey vignette for the reflection on companionship and results. */
.affinity-illustration{width:min(100%,340px);margin:26px 0 0}
.affinity-illustration img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:1000px) and (min-width:761px){.affinity-illustration{max-width:280px}}
@media(max-width:760px){.affinity-illustration{width:min(100%,300px);margin:24px auto 0}}
@media print{.affinity-illustration{display:none}}

/* An illustrated reading header; one scene follows each reading tab. */
#realms-reading .realm-reading-heading{grid-template-columns:minmax(0,1fr) 350px;gap:52px;align-items:center}
#realms-reading .realm-reading-heading .eyebrow{margin-bottom:22px}
#realms-reading .realm-origin{border-left:2px solid var(--gold);padding-left:22px;font-size:20px;font-weight:500;line-height:1.95;margin-top:27px}
#realms-reading .realm-reading-aside{min-width:0;align-self:center}
#realms-reading .realm-tab-illustration{margin:0;text-align:center}
#realms-reading .realm-tab-art-stage{height:258px}
#realms-reading .realm-tab-art-stage img{display:block;width:100%;height:100%;object-fit:contain}
#realms-reading .realm-tab-illustration figcaption{color:var(--rust);font-family:var(--serif);font-size:17px;letter-spacing:.08em;line-height:1.8;margin-top:12px;min-height:31px}
#realms-reading .realm-reading-guide{font-size:23px;line-height:1.7;text-align:center;border:0;padding:0;margin:17px 0 0}
#realms-reading .realm-reading-guide br{display:none}
#realms-reading .realm-reading-guide span{display:block;font-size:15px;line-height:1.8;color:var(--muted);margin-top:4px}
#realms-reading>.realm-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);margin-top:38px}
#realms-reading>.realm-tabs>button{justify-content:center;padding:18px 15px;font-size:20px;min-height:64px;transition:background .18s}
#realms-reading>.realm-tabs>button:hover{background:rgba(184,161,122,.08)}
#realms-reading>.realm-tabs>button.active{background:var(--paper-deep);color:var(--rust);border-bottom-color:var(--rust)}
#realms-reading .realm-read-panel{padding-top:32px}
#realms-reading .realm-poem-heading{padding:0 3px}
#realms-reading .realm-poem{background:linear-gradient(110deg,rgba(237,230,217,.7),rgba(237,230,217,.12));border-left:3px solid var(--gold);padding:28px 34px;margin-top:23px;line-height:2.1}
#realms-reading .realm-poem p{margin:0}
#realms-reading .realm-poem p+p{margin-top:10px}
#realms-reading .realm-original-continuation>summary{font-family:var(--serif);font-size:22px;padding:25px 0;line-height:1.7}
#realms-reading .realm-original-group{max-width:1000px}
#realms-reading .realm-original-group .small-label{color:var(--rust);font-size:13px;margin-bottom:17px}
#realms-reading .realm-original-group+.realm-original-group{margin-top:33px;padding-top:30px}
#realms-reading .realm-panel-intro{max-width:920px;font-size:21px;margin-bottom:10px}
#realms-reading .realm-structure-list li{grid-template-columns:48px minmax(0,1fr);gap:25px;padding:33px 0}
#realms-reading .realm-structure-list li>span{font-size:26px;line-height:1.6;padding-top:1px;color:var(--gold)}
#realms-reading .realm-structure-list blockquote{border-left:2px solid var(--gold);padding:15px 24px;background:rgba(237,230,217,.4);max-width:980px}
#realms-reading .annotation-header{padding:0 0 24px;margin-bottom:8px;border-bottom:1px solid var(--line)}
#realms-reading .annotation-group:first-of-type{border-top:0}
#realms-reading .annotation-group summary{padding:27px 0}
#realms-reading .realm-note-anchor{background:rgba(237,230,217,.35);padding:17px 24px;margin-bottom:26px}
@media(max-width:1000px) and (min-width:761px){
 #realms-reading .realm-reading-heading{grid-template-columns:minmax(0,1fr) 285px;gap:30px}
 #realms-reading .realm-origin{font-size:18px;padding-left:18px}
 #realms-reading .realm-tab-art-stage{height:225px}
 #realms-reading .realm-reading-guide{font-size:21px}
}
@media(max-width:760px){
 #realms-reading .realm-reading-heading{grid-template-columns:1fr;gap:28px}
 #realms-reading .realm-origin{font-size:18px;padding-left:17px;margin-top:22px}
 #realms-reading .realm-reading-aside{max-width:340px;width:100%;justify-self:center}
 #realms-reading .realm-tab-art-stage{height:235px}
 #realms-reading .realm-tab-illustration figcaption{font-size:16px;margin-top:9px;min-height:29px}
 #realms-reading .realm-reading-guide{font-size:21px;margin-top:12px}
 #realms-reading .realm-reading-guide span{font-size:14px}
 #realms-reading>.realm-tabs{margin-top:28px}
 #realms-reading>.realm-tabs>button{font-size:17px;gap:8px;padding:15px 5px;min-height:58px}
 #realms-reading .realm-read-panel{padding-top:26px}
 #realms-reading .realm-poem{font-size:23px;line-height:2;padding:23px 18px;margin-top:20px}
 #realms-reading .realm-poem p+p{margin-top:15px}
 #realms-reading .realm-original-continuation>summary{font-size:19px;padding:22px 0}
 #realms-reading .realm-panel-intro{font-size:19px}
 #realms-reading .realm-structure-list li{grid-template-columns:28px minmax(0,1fr);gap:15px;padding:27px 0}
 #realms-reading .realm-structure-list li>span{font-size:21px;padding-top:4px}
 #realms-reading .realm-structure-list h3{font-size:25px}
 #realms-reading .realm-structure-list blockquote{font-size:21px;padding:14px 16px}
 #realms-reading .annotation-header{padding-bottom:22px}
 #realms-reading .annotation-group summary{padding:23px 0}
 #realms-reading .realm-note-anchor{padding:15px 17px}
}
@media print{#realms-reading .realm-reading-aside{display:none}#realms-reading .realm-reading-heading{display:block}#realms-reading .realm-poem{padding:18px;background:none;font-size:18px}#realms-reading .realm-structure-list li{break-inside:avoid}}

/* Every course canvas is 1600 × 900, scaled into the available screen. */
body.deck-mode{height:100dvh;overflow:hidden;background:#e6e1d8;--header:72px}
.deck-mode .site-header{height:72px;padding:0 28px;gap:25px;background:var(--paper);position:relative}
.deck-mode .wordmark{font-size:20px}.deck-mode .wordmark small{font-size:10px}
.deck-mode .header-actions{gap:18px}.deck-mode .icon-button{font-size:13px}
.deck-mode nav{display:flex;gap:25px;font-size:14px}
.deck-mode #main{height:calc(100dvh - 136px);width:100%;padding:14px 20px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.deck-mode .slide-frame{position:relative;flex:none;width:var(--deck-width,1280px);height:var(--deck-height,720px);aspect-ratio:16/9;background:var(--paper);box-shadow:0 12px 42px #253b3315;overflow:hidden}
.deck-mode .chapter{position:absolute!important;left:0;top:0;width:1600px!important;max-width:none!important;height:900px!important;min-height:900px!important;max-height:900px!important;margin:0!important;padding:50px 76px!important;box-sizing:border-box;overflow:visible;transform-origin:0 0;transform:translate(var(--deck-offset-x,0px),var(--deck-offset-y,0px)) scale(var(--deck-total-scale,1));scroll-margin:0;--deck-space:1}
.deck-mode .chapter.deck-tight{--deck-space:.75;padding-top:36px!important;padding-bottom:36px!important}
.deck-mode h2{font-size:62px;line-height:1.3;letter-spacing:.025em}
.deck-mode h3{font-size:32px;line-height:1.5}
.deck-mode .eyebrow{font-size:18px;gap:20px;margin-bottom:18px;letter-spacing:.1em}
.deck-mode .eyebrow span{font-size:16px;padding-left:20px}
.deck-mode .small-label{font-size:17px;line-height:1.5}
.deck-mode .section-heading>p:last-child{font-size:27px;line-height:1.7;margin-top:18px}
.deck-mode .primary-button{font-size:23px;min-height:58px;padding:13px 24px;margin-top:23px}
.deck-mode .text-button,.deck-mode .next-passage{font-size:22px;line-height:1.5;gap:18px}
.deck-mode .light-button{font-size:23px;line-height:1.5;padding:14px 20px}
.deck-mode .desktop-only{display:initial}
.deck-mode .teacher-note{display:none!important}
.deck-mode footer{display:none}
.deck-mode .presentation-controls{position:fixed;left:0;right:0;bottom:0;top:auto;transform:none;width:100%;max-width:none;height:64px;min-height:64px;display:flex;justify-content:center;gap:16px;padding:8px 20px;border-radius:0;background:var(--paper);color:var(--ink);border-top:1px solid var(--line);box-shadow:none;z-index:40}
.deck-mode .presentation-controls button{font-size:15px;line-height:1.4;padding:8px 12px;min-width:42px;min-height:42px;color:var(--ink)}
.deck-mode .presentation-controls #chapter-label{font-size:14px;min-width:85px;text-align:center;white-space:nowrap}
.deck-mode #exit-presentation{display:none}
.deck-mode .deck-page-select{font:inherit;font-size:14px;line-height:1.5;max-width:350px;width:280px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);padding:8px 12px}
.deck-mode.presentation .site-header{display:none}
.deck-mode.presentation #main{height:calc(100dvh - 64px)}
.deck-mode.presentation #exit-presentation{display:block}
.deck-mode .deck-source-button{font-size:13px!important;color:var(--muted)!important}
.deck-mode .deck-link{font-size:20px;line-height:1.5;padding:12px 0;border-top:1px solid var(--line);color:var(--rust);text-align:left;cursor:pointer;display:inline-block}
.deck-mode .deck-pager{min-width:0}
.deck-mode .deck-page-viewport{height:440px;min-height:0;margin:0;overflow:visible}
.deck-mode .deck-subpage{margin:0!important;max-width:none}
.deck-mode .deck-page-nav{height:52px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);margin-top:14px;padding-top:10px}
.deck-mode .deck-subpage-button{font-size:21px;line-height:1.5;padding:7px 0;white-space:nowrap}
.deck-mode .deck-page-status{font-size:19px;line-height:1.5;color:var(--muted);text-align:center}
.deck-mode .deck-subtitle{font-family:var(--serif);font-size:27px;line-height:1.5;color:var(--rust);margin:0 0 15px}
/* Opening. */
.deck-mode #opening{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}
.deck-mode #opening h1{font-size:70px;line-height:1.3;letter-spacing:.02em}
.deck-mode #opening .course-subtitle{font-size:44px;line-height:1.65;margin-top:15px;display:block}
.deck-mode #opening .hero-intro{font-size:27px;line-height:1.75;margin-top:22px}
.deck-mode #opening .hero-caption{font-size:16px;margin-top:18px;max-width:none}
.deck-mode #opening .hero-portrait{margin:0 15px 0 0;width:100%}
.deck-mode #opening .portrait-frame{height:620px;max-height:none;background:transparent}
.deck-mode #opening .portrait-frame img{object-fit:contain;object-position:center;filter:none}
.deck-mode #opening .hero-portrait figcaption{font-size:17px;margin-top:18px}
.deck-mode #opening .vertical-note{font-size:17px;right:-58px;width:26px;line-height:26px;white-space:nowrap}
/* Preface, split into spirit and care. */
.deck-mode #meaning .meaning-opening{display:grid;grid-template-columns:1fr 400px;grid-template-areas:'heading portrait' 'spirit portrait';gap:20px 60px;align-items:center}
.deck-mode #meaning .section-heading{grid-area:heading}
.deck-mode #meaning .meaning-opening h2{font-size:64px;line-height:1.35}
.deck-mode #meaning .section-heading>p:last-child{font-size:25px;line-height:1.65;margin-top:17px}
.deck-mode #meaning .meaning-portrait{grid-area:portrait;width:360px;max-width:none;margin:0 auto}
.deck-mode #meaning .meaning-portrait img{width:100%;height:410px;max-height:none;object-fit:contain;float:none;margin:0}
.deck-mode #meaning .meaning-spirit{grid-area:spirit;padding:0;border:0;text-align:left}
.deck-mode #meaning .spirit-quote{font-size:38px;line-height:1.5;margin-top:8px}
.deck-mode #meaning .spirit-quote br{display:none}
.deck-mode #meaning .spirit-caption{font-size:22px;line-height:1.6;margin-top:10px}
.deck-mode #meaning .spirit-caption br{display:none}
.deck-mode #meaning .meaning-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:calc(32px * var(--deck-space))}
.deck-mode #meaning .meaning-principles article{display:block;border-top:1px solid var(--line);padding:18px 0 0;min-width:0}
.deck-mode #meaning .meaning-principles .item-number{display:block;font-size:18px;margin:0 0 6px;padding:0}
.deck-mode #meaning .meaning-principles h3{font-size:30px;line-height:1.5}
.deck-mode #meaning .meaning-principles p{font-size:25px;line-height:1.65;margin-top:12px}
.deck-mode #meaning-care{display:grid;grid-template-columns:1.1fr .9fr;gap:35px 75px;align-content:center}
.deck-mode #meaning-care .student-gratitude{display:block;padding:0;margin:0;background:none;border:0}
.deck-mode #meaning-care .student-gratitude h2{font-size:70px;line-height:1.4;margin-top:22px}
.deck-mode #meaning-care .student-gratitude>p:last-child{font-size:32px;line-height:1.9;margin-top:30px}
.deck-mode #meaning-care .quiet-question{display:block;margin:0;padding:35px;border:1px solid var(--line);align-self:center}
.deck-mode #meaning-care .quiet-question>span{font-size:19px;display:block;margin-bottom:20px}
.deck-mode #meaning-care .quiet-question p{font-size:35px;line-height:1.7}
.deck-mode #meaning-care .quiet-question .text-button{margin-top:25px}
.deck-mode #meaning-care .meaning-transition{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid var(--line);padding-top:28px;margin:10px 0 0}
.deck-mode #meaning-care .meaning-transition>p{font-size:25px;line-height:1.75}
.deck-mode #meaning-care .meaning-transition .text-button{font-size:22px;margin:0;white-space:nowrap}
.deck-mode #meaning-care>.qianren-reading{grid-column:1/-1;justify-self:start;margin:0;padding:8px 0;border:0;font-size:19px}
/* First text: fixed header and independent annotation pages. */
.deck-mode #reading .reading-top{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:45px;height:220px;align-items:center}
.deck-mode #reading .reading-top>div:first-child{display:grid;grid-template-columns:380px minmax(0,1fr);gap:10px 30px;align-items:start}
.deck-mode #reading .reading-top .eyebrow{grid-column:1;grid-row:1;margin:0}
.deck-mode #reading .reading-top h2{grid-column:1;grid-row:2;font-size:66px}
.deck-mode #reading .reading-origin{grid-column:2;grid-row:1/3;font-size:21px;line-height:1.65;margin:0;padding-left:25px;border-left:1px solid var(--gold)}
.deck-mode #reading .reading-origin p+p{margin-top:2px}
.deck-mode #reading .reading-side{width:300px;max-width:none;margin:0}
.deck-mode #reading .reading-art-stage{height:135px;width:100%;max-width:none;margin:0}
.deck-mode #reading .reading-emblem figcaption{font-size:17px;line-height:1.5;margin-top:6px}
.deck-mode #reading .reading-side .section-side{font-size:18px;line-height:1.5;margin-top:10px;padding:0;border:0}
.deck-mode #reading .reading-side .section-side br{display:none}
.deck-mode #reading .reading-tools{margin-top:15px;display:flex;justify-content:flex-start;gap:40px;border-bottom:1px solid var(--line)}
.deck-mode #reading .reading-mode{font-size:24px;padding:11px 4px;gap:14px;min-height:52px}
.deck-mode #reading .reading-mode span{font-size:15px}
.deck-mode #reading .reading-hint{font-size:21px;line-height:1.5;margin:15px 0 19px}
.deck-mode #reading .scripture{font-size:29px;line-height:1.65;margin:0}
.deck-mode #reading .scripture p+p{margin-top:16px}
.deck-mode #reading .source-line{font-size:17px;margin-top:20px;padding:14px 0 0;align-items:center}
.deck-mode #reading .source-line .text-button{font-size:19px}
.deck-mode #reading .word-note{font-size:18px;margin-top:8px;padding:4px 0;border:0}
.deck-mode #reading .reading-annotations{margin-top:0}
.deck-mode #reading .annotation-header{margin:0 0 16px;max-width:none}
.deck-mode #reading .annotation-header .eyebrow{display:none}
.deck-mode #reading .annotation-header h3{font-size:29px;line-height:1.4}
.deck-mode #reading .annotation-header>p:last-child{font-size:19px;line-height:1.5;margin-top:6px}
.deck-mode #reading .deck-page-viewport{height:300px}
.deck-mode #reading .annotation-entry{grid-template-columns:400px minmax(0,1fr);gap:45px;padding:18px 0 0;display:grid;border-top:1px solid var(--line)}
.deck-mode #reading .annotation-original>p{font-size:32px;line-height:1.65}
.deck-mode #reading .annotation-text{font-size:27px;line-height:1.65;white-space:pre-line}
.deck-mode #reading .annotation-original .small-label,.deck-mode #reading .annotation-comment .small-label{font-size:16px;margin-bottom:12px}
.deck-mode #reading .deck-subtitle{font-size:23px;margin-bottom:8px}
.deck-mode #reading .annotation-source{font-size:16px;margin:13px 0 0;padding:0}
.deck-mode #reading .deck-page-nav{margin-top:6px;height:42px}
/* Structure exercise. */
.deck-mode #structure .structure-heading-layout{display:grid;grid-template-columns:1fr 370px;gap:50px;align-items:center;height:235px}
.deck-mode #structure .structure-heading-layout h2{font-size:59px;line-height:1.3}
.deck-mode #structure .structure-heading-layout .section-heading>p:last-child{font-size:23px;line-height:1.6;margin-top:13px}
.deck-mode #structure .structure-illustration{width:350px;margin:0;justify-self:end}
.deck-mode #structure .structure-illustration img{height:220px;width:100%;object-fit:contain}
.deck-mode #structure .structure-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);gap:35px;margin-top:25px}
.deck-mode #structure .passage-nav{display:flex;flex-direction:column;margin:0;border:0;gap:0}
.deck-mode #structure .passage-tab{font-size:24px;text-align:left;padding:15px 15px 15px 43px!important;border:0;border-bottom:1px solid var(--line);line-height:1.35;font-family:var(--serif)}
.deck-mode #structure .passage-tab>span{position:absolute;left:9px;top:14px;font-size:23px;margin:0;display:inline}
.deck-mode #structure .passage-tab small{display:block;font-size:16px;margin-top:5px}
.deck-mode #structure .passage-tab.active{background:var(--paper-deep);border-color:var(--line);color:var(--rust)}
.deck-mode #structure .passage-panel{padding:24px 30px;min-height:400px;display:block}
.deck-mode #structure .passage-panel blockquote{font-size:34px;line-height:1.55;min-height:0;margin-top:12px;white-space:pre-line}
.deck-mode #structure .passage-question{font-size:23px;line-height:1.6;margin-top:16px}
.deck-mode #structure .answer-options{gap:10px;margin-top:14px;display:flex;flex-wrap:wrap}
.deck-mode #structure .answer-option{font-size:21px;padding:9px 15px}
.deck-mode #structure .answer-feedback{font-size:21px;line-height:1.55;padding:14px 17px;margin-top:15px}
.deck-mode #structure .answer-feedback p{margin-top:4px}
.deck-mode #structure .passage-bottom{margin-top:16px;padding-top:13px}
.deck-mode #structure .passage-bottom .text-button,.deck-mode #structure .next-passage{font-size:20px}
.deck-mode #structure>.structure-map{margin-top:20px;padding-top:12px;width:100%;font-size:22px}
/* Intention and scenario. */
.deck-mode #heart{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto 1fr auto;gap:18px 70px;align-content:center}
.deck-mode #heart>.eyebrow{grid-column:1/-1;margin:0}
.deck-mode #heart>h2{grid-column:1;grid-row:2;font-size:75px;line-height:1.25;margin:12px 0 0}
.deck-mode #heart .contrast{grid-column:1;grid-row:3;display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:20px 0 0;align-self:center}
.deck-mode #heart .contrast>div+div{padding-left:27px}
.deck-mode #heart .contrast blockquote{font-size:48px;line-height:1.5;margin-top:17px}
.deck-mode #heart .heart-question{grid-column:2;grid-row:2/4;display:block;margin:0;align-self:center;border-left:1px solid var(--line);padding-left:45px}
.deck-mode #heart .heart-question>span{font-size:19px}
.deck-mode #heart .heart-question p{font-size:42px;line-height:1.7;margin-top:23px}
.deck-mode #heart .interpretation{grid-column:1/-1;grid-row:4;display:flex;align-items:center;gap:35px;border-top:1px solid var(--line);padding-top:25px;margin-top:20px}
.deck-mode #heart .interpretation p{font-size:28px;line-height:1.7;margin:0}
.deck-mode #heart .interpretation p br{display:none}
.deck-mode #scenario{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1.08fr;gap:70px;align-items:center}
.deck-mode #scenario h2{font-size:61px;line-height:1.35}
.deck-mode #scenario .scenario-story{font-size:28px;line-height:1.85;margin-top:28px}
.deck-mode #scenario .scenario-tag{font-size:17px;margin-top:20px}
.deck-mode #scenario .thoughts{padding:0}
.deck-mode #scenario .thoughts h3{font-size:30px}
.deck-mode #scenario .thoughts>p{font-size:22px;margin-top:12px}
.deck-mode #scenario .thought-options{gap:12px;margin-top:25px}
.deck-mode #scenario .thought-options button{font-size:25px;line-height:1.6;padding:15px 18px}
.deck-mode #scenario .light-button{margin-top:24px}
.deck-mode #scenario .discussion-prompts{margin-top:22px}
.deck-mode #scenario .discussion-prompts>p{font-size:21px;line-height:1.65}
.deck-mode #scenario .discussion-prompts li{gap:18px;padding:16px 0}
.deck-mode #scenario .discussion-prompts li h4{font-size:27px}
.deck-mode #scenario .discussion-prompts li p{font-size:24px;line-height:1.65;margin-top:6px}
.deck-mode #scenario .discussion-prompts .discussion-reminder{font-size:20px;line-height:1.65;margin-top:15px}
.deck-mode #scenario .is-discussing>.thought-options,.deck-mode #scenario .is-discussing>h3,.deck-mode #scenario .is-discussing>p{display:none}
/* Reflection on companionship: three readable passages, same highlighting. */
.deck-mode #affinity-reflection .affinity-layout{display:grid;grid-template-columns:490px minmax(0,1fr);gap:70px;align-items:start}
.deck-mode #affinity-reflection .affinity-heading h2{font-size:55px;line-height:1.45}
.deck-mode #affinity-reflection .affinity-heading h2 br{display:initial}
.deck-mode #affinity-reflection .affinity-caption{font-size:17px;margin-top:17px}
.deck-mode #affinity-reflection .affinity-illustration{width:310px;margin:20px 0 0}
.deck-mode #affinity-reflection .affinity-illustration img{width:100%;height:210px;object-fit:contain}
.deck-mode #affinity-reflection .affinity-mark-tools{margin-top:22px;padding-top:18px}
.deck-mode #affinity-reflection .affinity-mark-buttons button{font-size:21px;min-height:48px;padding:10px 17px}
.deck-mode #affinity-reflection .affinity-mark-hint,.deck-mode #affinity-reflection .affinity-mark-status{font-size:18px;line-height:1.6;margin-top:12px}
.deck-mode #affinity-reflection .affinity-prose{font-size:32px;line-height:1.85;letter-spacing:.015em;height:650px;padding-top:32px}
.deck-mode #affinity-reflection .affinity-prose p+p{margin-top:26px}
.deck-mode #affinity-reflection .affinity-lead{font-size:38px;line-height:1.65;margin-bottom:28px}
.deck-mode #affinity-reflection .affinity-memory{padding:5px 0 5px 28px;margin-top:32px;border-left:2px solid var(--gold)}
.deck-mode #affinity-reflection .affinity-memory-quote{font-size:35px;line-height:1.8;margin-top:15px}
/* Personal practice and transition. */
.deck-mode #reflection .section-heading h2{font-size:52px;line-height:1.3}
.deck-mode #reflection .section-heading>p:last-child{font-size:24px;line-height:1.5;margin-top:13px}
.deck-mode #reflection .reflection-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;margin-top:26px}
.deck-mode #reflection .reflection-quote{border:0;margin:0;padding:15px 0 0}
.deck-mode #reflection .reflection-quote blockquote{font-size:36px;line-height:1.6;margin-top:17px}
.deck-mode #reflection .reflection-quote>p{font-size:24px;line-height:1.7;margin-top:20px}
.deck-mode #reflection .reflection-quote>small{font-size:16px;line-height:1.5}
.deck-mode form label{display:block;font-size:24px;line-height:1.5;margin-bottom:17px}
.deck-mode form label>span{font-size:16px;margin-right:15px}
.deck-mode textarea{display:block;width:100%;font-size:24px;line-height:1.5;height:72px;min-height:72px;resize:none;padding:10px 14px;margin-top:8px}
.deck-mode .reflection-actions{display:flex;gap:25px;align-items:center;margin-top:17px}
.deck-mode .reflection-actions .primary-button{margin:0;font-size:21px;min-height:50px;padding:11px 20px}
.deck-mode .reflection-actions .text-button{font-size:20px}
.deck-mode .privacy-note,.deck-mode .form-status{font-size:16px;line-height:1.5;margin-top:10px}
/* Second part: overview. */
.deck-mode #three-realms .realm-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.deck-mode #three-realms .realm-intro-grid h2{font-size:61px;line-height:1.35}
.deck-mode #three-realms .section-heading>p{font-size:27px;line-height:1.7;margin-top:20px}
.deck-mode #three-realms .realm-opening-question{margin-top:30px;padding-top:24px}
.deck-mode #three-realms .realm-opening-question h3{font-size:33px;line-height:1.5;margin:15px 0}
.deck-mode #three-realms .realm-opening-question>p{font-size:25px;line-height:1.7}
.deck-mode #three-realms .realm-map-wrap{width:100%;max-width:560px;margin:0 auto}
.deck-mode #three-realms .realm-map{height:385px;width:100%;aspect-ratio:auto;margin:0}
.deck-mode #three-realms .realm-node{min-width:146px;padding:10px 17px}
.deck-mode #three-realms .realm-node strong{font-size:28px}
.deck-mode #three-realms .realm-node small{font-size:15px}
.deck-mode #three-realms .realm-map-center{width:126px;height:126px}
.deck-mode #three-realms .realm-map-center strong{font-size:31px}
.deck-mode #three-realms .realm-map-center span{font-size:16px}
.deck-mode #three-realms .realm-map-instruction{font-size:18px;margin-top:10px}
.deck-mode #three-realms .realm-map-detail{margin-top:20px;padding-top:18px;min-height:0}
.deck-mode #three-realms .realm-map-detail blockquote{font-size:30px;line-height:1.5;margin:10px 0}
.deck-mode #three-realms .realm-map-detail article>p{font-size:25px;line-height:1.65}
.deck-mode .realm-source{font-size:16px!important;line-height:1.5!important;margin-top:14px!important}
/* Second text: an illustration per tab, and one passage per inner page. */
.deck-mode #realms-reading .realm-reading-heading{display:grid;grid-template-columns:1fr 290px;gap:40px;align-items:center;height:200px}
.deck-mode #realms-reading .realm-reading-heading>div:first-child{display:grid;grid-template-columns:365px minmax(0,1fr);gap:10px 25px;align-items:start}
.deck-mode #realms-reading .realm-reading-heading .eyebrow{grid-column:1;grid-row:1;margin:0}
.deck-mode #realms-reading .realm-reading-heading h2{grid-column:1;grid-row:2;font-size:64px}
.deck-mode #realms-reading .realm-origin{grid-column:2;grid-row:1/3;font-size:20px;line-height:1.6;margin:0;padding-left:22px;max-width:none}
.deck-mode #realms-reading .realm-reading-aside{width:290px;max-width:none;justify-self:end}
.deck-mode #realms-reading .realm-tab-art-stage{height:155px}
.deck-mode #realms-reading .realm-tab-illustration figcaption{font-size:17px;line-height:1.5;margin-top:7px;min-height:0}
.deck-mode #realms-reading .realm-reading-guide{font-size:17px;line-height:1.5;margin-top:7px}
.deck-mode #realms-reading .realm-reading-guide span{display:none}
.deck-mode #realms-reading>.realm-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:18px}
.deck-mode #realms-reading>.realm-tabs>button{font-size:25px;line-height:1.5;padding:11px 15px;min-height:54px}
.deck-mode #realms-reading>.realm-tabs>button span{font-size:17px}
.deck-mode #realms-reading .realm-read-panel{padding-top:22px}
.deck-mode #realms-reading .realm-poem-heading{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px}
.deck-mode #realms-reading .realm-poem-heading .text-button{font-size:19px}
.deck-mode #realms-reading .realm-poem{font-size:32px;line-height:1.9;margin:15px 0 0;padding:20px 30px}
.deck-mode #realms-reading .realm-poem p+p{margin-top:2px}
.deck-mode #realms-reading .realm-acrostic-result{font-size:21px;line-height:1.5;margin-top:12px}
.deck-mode #realms-reading .deck-full-pages{font-family:var(--serif);font-size:30px;line-height:1.6}
.deck-mode #realms-reading .realm-original-group{font-family:var(--serif);font-size:30px;line-height:1.6;border:0;padding:10px 0 0}
.deck-mode #realms-reading .realm-original-group .small-label{font-family:var(--sans);font-size:20px;line-height:1.5;margin-bottom:15px;color:var(--rust)}
.deck-mode #realms-reading [data-canonical-section=relationships]{font-size:28px;line-height:1.45}
.deck-mode #realms-reading .realm-panel-intro{font-size:21px;line-height:1.5;margin:0 0 15px;max-width:none}
.deck-mode #realms-reading .realm-structure-list{list-style:none;padding:0;margin:0;height:405px}
.deck-mode #realms-reading .realm-structure-list li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:25px;padding:8px 0 0;border:0}
.deck-mode #realms-reading .realm-structure-list li>span{font-size:32px;line-height:1.4;padding-top:2px}
.deck-mode #realms-reading .realm-structure-list h3{font-size:35px;line-height:1.4}
.deck-mode #realms-reading .realm-structure-answer{font-size:26px;line-height:1.6;margin:12px 0 17px}
.deck-mode #realms-reading .realm-structure-list blockquote{font-size:27px;line-height:1.5;padding:14px 24px;max-width:none}
.deck-mode #realms-reading .realm-structure-list blockquote .small-label{font-size:16px;margin-bottom:8px}
.deck-mode #realms-reading .annotation-header{margin:0 0 14px;padding:0 0 12px;max-width:none}
.deck-mode #realms-reading .annotation-header .eyebrow{display:none}
.deck-mode #realms-reading .annotation-header h3{font-size:28px;line-height:1.4}
.deck-mode #realms-reading .annotation-header>p:last-child{font-size:18px;line-height:1.5;margin-top:6px}
.deck-mode #realms-reading .deck-realm-notes{height:345px}
.deck-mode #realms-reading .deck-realm-note-page>.deck-subtitle{font-size:26px;line-height:1.4;margin-bottom:12px}
.deck-mode #realms-reading .realm-note-anchor{padding:8px 20px;margin:0 0 12px}
.deck-mode #realms-reading .realm-note-anchor .small-label{font-size:15px}
.deck-mode #realms-reading .realm-note-anchor blockquote{font-size:25px;line-height:1.45;margin-top:5px}
.deck-mode #realms-reading .realm-note-body{font-size:24px;line-height:1.5;padding:0;white-space:pre-line}
.deck-mode #realms-reading .realm-note-body>.small-label{font-size:15px;margin-bottom:5px}
.deck-mode #realms-reading .realm-note-body p{margin:0}
.deck-mode #realms-reading .annotation-source{font-size:14px;line-height:1.5;padding:0;margin-top:10px}
.deck-mode #realms-reading .deck-page-nav{height:44px;margin-top:10px;padding-top:8px}
/* Relationships, collaboration and final practice. */
/* Notes and extended sources are overlays, leaving the course canvas intact. */
.deck-mode .deck-notes-panel{position:fixed;right:24px;top:90px;width:min(520px,90vw);max-height:calc(100dvh - 175px);overflow:auto;z-index:75;background:var(--paper);box-shadow:0 12px 45px #0003;border:1px solid var(--gold);padding:24px}
.deck-mode .deck-notes-panel .teacher-note:not([hidden]){display:block!important;border:0;margin:0;padding:0;background:none;font-size:17px;line-height:1.9;color:var(--ink)}
.deck-mode .deck-notes-panel .teacher-note strong{display:block;color:var(--rust);font-size:19px;margin-bottom:12px}
.deck-mode dialog{width:min(1280px,92vw,calc((100dvh - 70px)*16/9));height:auto;aspect-ratio:16/9;max-height:calc(100dvh - 70px);max-width:none;padding:42px 50px;overflow:auto}
.deck-mode dialog h2{font-size:36px;line-height:1.4;margin-bottom:22px}
.deck-mode dialog p{font-size:22px;line-height:1.9;margin-top:18px}
.deck-mode dialog h3{font-size:28px;margin-top:25px}
.deck-mode dialog .dialog-close{font-size:28px;min-height:42px;min-width:42px}
.deck-mode .deck-supplement-body .structure-map ol{display:block}
.deck-mode .deck-supplement-body ol{font-size:23px;line-height:1.9;padding-left:28px}
.deck-mode .deck-supplement-body ol li{margin:17px 0}
.deck-mode .deck-supplement-body ol li strong{font-size:27px;display:inline;margin-right:25px}
.deck-mode .deck-supplement-body ol li span{font-size:22px}
.deck-mode .timer{width:230px;right:24px;bottom:80px;padding:18px;z-index:85}
.deck-mode .timer>p{font-size:52px}
.deck-mode .timer button,.deck-mode .timer-label{font-size:16px}
@media(max-width:850px){.deck-mode .site-header{padding:0 16px;gap:15px}.deck-mode .site-header nav{display:none}.deck-mode .wordmark{font-size:18px}.deck-mode .icon-button span{display:none}.deck-mode .presentation-controls{gap:7px;padding:8px}.deck-mode .deck-page-select{width:210px;max-width:35vw;font-size:12px;padding:8px}.deck-mode .presentation-controls #chapter-label{font-size:12px;min-width:65px}.deck-mode .deck-source-button{display:none}.deck-mode .presentation-controls button{font-size:13px;padding:7px}.deck-mode #main{padding:14px 20px}}
@media print{body.deck-mode{height:auto;overflow:visible;background:white}.deck-mode .site-header,.deck-mode .presentation-controls,.deck-mode .deck-page-nav,.deck-mode .deck-notes-panel{display:none!important}.deck-mode #main{height:auto;display:block;padding:0;overflow:visible}.deck-mode .slide-frame{display:block!important;width:1600px;height:900px;box-shadow:none;page-break-after:always;overflow:hidden}.deck-mode .chapter{transform:none!important;position:relative!important}.deck-mode .slide-frame[hidden]{display:block!important}}

/* Keep the exercise choices and its explanation inside the same slide. */
.deck-mode #structure .structure-heading-layout{grid-template-columns:minmax(0,1fr) 340px;gap:45px}
.deck-mode #structure .structure-heading-layout .section-heading{display:grid;grid-template-columns:minmax(0,1fr) 340px;column-gap:25px;align-items:center}
.deck-mode #structure .structure-heading-layout .eyebrow{grid-column:1/-1}
.deck-mode #structure .structure-heading-layout h2{grid-column:1;grid-row:2;font-size:55px}
.deck-mode #structure .structure-heading-layout .section-heading>p:last-child{grid-column:2;grid-row:2;font-size:22px;line-height:1.65;margin:0}
.deck-mode #structure .passage-panel{position:relative;min-height:440px;padding:20px 24px}
.deck-mode #structure .passage-panel blockquote{font-size:32px;line-height:1.45;margin-top:10px}
.deck-mode #structure .passage-question{font-size:22px;line-height:1.5;margin-top:12px}
.deck-mode #structure .answer-options{gap:9px;margin-top:12px}
.deck-mode #structure .answer-option{font-size:20px;padding:8px 14px}
.deck-mode #structure .passage-bottom{margin-top:12px;padding-top:10px}
.deck-mode #structure .answer-feedback{position:absolute;left:24px;right:24px;bottom:74px;background:var(--paper-deep);border:1px solid var(--gold);box-shadow:0 8px 25px #253b3320;z-index:5;font-size:23px;line-height:1.6;padding:20px 24px;margin:0}
.deck-mode #structure .deck-feedback-close{display:block;font-size:19px;color:var(--rust);border-top:1px solid var(--gold);padding:10px 0 0;margin-top:15px}
.deck-mode #three-realms .realm-map{height:auto;aspect-ratio:5/4;width:100%;max-width:520px;margin:0 auto}

/* Longer annotations use a shorter header, with the complete metadata available in the text view. */
.deck-mode #reading.deck-reading-notes .reading-top{height:125px}
.deck-mode #reading.deck-reading-notes .reading-top>div:first-child{display:block}
.deck-mode #reading.deck-reading-notes .reading-origin{display:none}
.deck-mode #reading.deck-reading-notes .reading-top h2{font-size:53px;line-height:1.3;margin-top:12px}
.deck-mode #reading.deck-reading-notes .reading-art-stage{height:85px}
.deck-mode #reading.deck-reading-notes .reading-side .section-side{display:none}
.deck-mode #reading.deck-reading-notes .deck-page-viewport{height:390px}
.deck-mode #realms-reading .deck-realm-notes{height:400px}
.deck-mode #realms-reading .realm-structure-list{height:440px}
.deck-mode #realms-reading [data-canonical-section=relationships]{line-height:1.4}
.deck-mode #realms-reading [data-canonical-section=relationships]>.small-label{font-size:18px;line-height:1.4;margin-bottom:10px}

/* A quiet closing canvas after the personal action page. */
.deck-mode #course-conclusion{display:grid;grid-template-columns:540px minmax(0,1fr);grid-template-rows:1fr auto;gap:40px 85px;align-items:center;background:var(--paper)}
.deck-mode #course-conclusion .conclusion-heading{align-self:center}
.deck-mode #course-conclusion h2{font-size:60px;line-height:1.5;letter-spacing:.015em;margin-top:30px}
.deck-mode #course-conclusion .conclusion-copy{font-size:29px;line-height:1.85;max-width:none}
.deck-mode #course-conclusion .conclusion-copy p{margin:0}
.deck-mode #course-conclusion .conclusion-copy p+p{margin-top:26px}
.deck-mode #course-conclusion .conclusion-sendoff{grid-column:1/-1;border-top:1px solid var(--line);padding-top:30px;margin:0;font-family:var(--serif);font-size:34px;line-height:1.6;letter-spacing:.04em}
.deck-mode #course-conclusion .conclusion-sendoff span{color:var(--rust)}

/* Both full-text readers use one fixed typographic and navigation grid. */
.deck-mode :is(#reading,#realms-reading).deck-full-reading{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:164px 58px 34px minmax(0,1fr) 30px;gap:10px;align-content:stretch}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-header{grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:40px;height:164px;margin:0;align-items:center}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-header>div:first-child{display:grid;grid-template-columns:420px minmax(0,1fr);gap:8px 30px;align-items:center}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-header .eyebrow{grid-column:1;grid-row:1;margin:0;font-size:18px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-header h2{grid-column:1;grid-row:2;font-size:64px;line-height:1.3;margin:0}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-origin,.realm-origin){grid-column:2;grid-row:1/3;border-left:1px solid var(--gold);padding:0 0 0 25px;margin:0;max-width:none;font-size:21px;line-height:1.4;font-weight:600}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-origin,.realm-origin) p+p{margin-top:2px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-side,.realm-reading-aside){width:250px;max-width:none;margin:0;justify-self:end}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-art-stage,.realm-tab-art-stage){height:130px;width:100%;max-width:none;margin:0}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-emblem,.realm-tab-illustration) figcaption{font-size:17px;line-height:1.5;min-height:0;margin:4px 0 0;text-align:center}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.section-side,.realm-reading-guide){display:none}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-tabs{grid-row:2;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-template-columns:none;gap:0;margin:0;border-bottom:1px solid var(--line);align-items:stretch}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-tabs>button{display:flex;align-items:center;justify-content:center;gap:14px;min-height:0;height:58px;padding:10px 12px;font-size:24px;line-height:1.5}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-tabs>button span{font-size:16px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-hint{grid-row:3;color:var(--muted);font-size:21px;line-height:1.5;margin:0;padding:0;align-self:center}
.deck-mode #realms-reading>.course-reading-hint,.deck-mode #realms-reading>.course-reading-footer{display:none}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-panel{grid-row:4;min-height:0;height:100%;padding:0;margin:0}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-reading-pager{display:grid;grid-template-rows:minmax(0,1fr) 48px;gap:10px;height:100%;min-height:0}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-page-viewport{height:100%;min-height:0;max-width:none;width:100%;padding:12px 36px;border-left:3px solid var(--gold);font-family:var(--serif);font-size:36px;font-weight:500;line-height:1.65;letter-spacing:.035em}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-subpage{display:flex;flex-direction:column;justify-content:center;align-items:stretch;height:100%;max-width:none;width:100%;padding:0;margin:0;border:0;font-family:var(--serif);font-size:36px;font-weight:500;line-height:1.65;letter-spacing:.035em}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-subpage>.small-label{display:block;font-family:var(--sans);font-size:19px;line-height:1.5;margin:0 0 16px;color:var(--rust);letter-spacing:.06em}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-subpage p{margin:0;font:inherit;line-height:inherit;letter-spacing:inherit}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-subpage p+p{margin:0}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .value-line{font:inherit;color:inherit}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-page-nav{height:48px;margin:0;padding:8px 0 0;border-top:1px solid var(--line)}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-subpage-button{font-size:22px;line-height:1.5;padding:4px 0}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-page-status{font-size:20px;line-height:1.5}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-footer{grid-row:5;display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0;padding:0;border:0;font-size:16px;line-height:1.5;color:var(--muted)}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-footer>span{flex:1}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-footer :is(.text-button,.word-note){margin:0;padding:0;font-size:17px;line-height:1.5;white-space:nowrap;border:0}
.deck-mode #realms-reading.deck-full-reading .realm-poem-heading{display:flex;align-items:center;justify-content:space-between;flex-direction:row;padding:0;margin:0 0 10px;min-height:30px}
.deck-mode #realms-reading.deck-full-reading .realm-poem-heading .small-label{font-size:19px;line-height:1.5;letter-spacing:.06em}
.deck-mode #realms-reading.deck-full-reading .realm-poem-heading .text-button{font-size:19px;line-height:1.5;padding:0;border:0}
.deck-mode #realms-reading.deck-full-reading .realm-poem{font-family:var(--serif);font-size:36px;font-weight:500;line-height:1.65;letter-spacing:.035em;margin:0;padding:0;background:none;border:0}
.deck-mode #realms-reading.deck-full-reading .realm-poem p+p{margin-top:0}
.deck-mode #realms-reading.deck-full-reading .deck-subpage .realm-acrostic-result{font-family:var(--sans);font-size:21px;line-height:1.5;letter-spacing:.03em;color:var(--rust);margin:10px 0 0}

.deck-mode #realms-reading.deck-full-reading>.course-reading-hint{display:block}

.deck-mode #realms-reading.deck-full-reading>.course-reading-footer{margin-top:0!important}

/* The dignified hand-drawn portrait returns beside the course conclusion. */
.deck-mode #course-conclusion .conclusion-heading{min-width:0;align-self:center}
.deck-mode #course-conclusion h2{font-size:56px;line-height:1.4;margin-top:20px}
.deck-mode #course-conclusion .conclusion-portrait{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;width:100%;height:310px;margin:18px 0 0}
.deck-mode #course-conclusion .conclusion-portrait:before{content:'';position:absolute;z-index:-1;inset:8% 12% 0;background:radial-gradient(ellipse,rgba(184,161,122,.17),transparent 70%)}
.deck-mode #course-conclusion .conclusion-portrait img{display:block;width:auto;height:100%;max-width:100%;object-fit:contain}

/* Closing spread: a newly drawn garden portrait and a full-height message. */
.deck-mode #course-conclusion{grid-template-columns:540px minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:0 70px;align-items:center}
.deck-mode #course-conclusion .conclusion-portrait{grid-column:1;grid-row:1;align-self:stretch;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;margin:0}
.deck-mode #course-conclusion .conclusion-portrait:before{display:none}
.deck-mode #course-conclusion .conclusion-portrait img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
.deck-mode #course-conclusion .conclusion-message{grid-column:2;grid-row:1;display:flex;flex-direction:column;justify-content:center;gap:24px;min-width:0;max-height:800px}
.deck-mode #course-conclusion .conclusion-heading{align-self:stretch}
.deck-mode #course-conclusion .eyebrow{margin:0 0 18px}
.deck-mode #course-conclusion h2{font-size:54px;line-height:1.3;letter-spacing:.015em;margin:0}
.deck-mode #course-conclusion .conclusion-copy{font-size:28px;line-height:1.65}
.deck-mode #course-conclusion .conclusion-copy p+p{margin-top:16px}
.deck-mode #course-conclusion .conclusion-sendoff{grid-column:auto;border-top:1px solid var(--gold);padding-top:22px;font-size:28px;line-height:1.6;letter-spacing:.035em}
.deck-mode #course-conclusion .conclusion-sendoff span{display:block}

/* Bring the portrait and the spiritual focus together; keep the three principles below. */
.deck-mode #meaning{display:grid;grid-template-rows:480px minmax(0,1fr);gap:28px}
.deck-mode #meaning .meaning-opening{grid-template-columns:430px minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:'portrait heading' 'portrait spirit';gap:18px 60px;height:480px;align-items:center}
.deck-mode #meaning .meaning-opening .section-heading{align-self:center;min-width:0}
.deck-mode #meaning .meaning-opening .eyebrow{margin-bottom:18px}
.deck-mode #meaning .meaning-opening h2{font-size:62px;line-height:1.3}
.deck-mode #meaning .section-heading>p:last-child{max-width:none;font-size:25px;line-height:1.6;margin-top:16px}
.deck-mode #meaning .meaning-portrait{width:385px;height:480px;max-width:none;margin:0;align-self:center;justify-self:center}
.deck-mode #meaning .meaning-portrait img{display:block;width:100%;height:100%;max-height:none;object-fit:contain}
.deck-mode #meaning .meaning-spirit{align-self:center;padding-left:26px;border-left:3px solid var(--gold)}
.deck-mode #meaning .spirit-quote{font-size:38px;line-height:1.55;margin-top:6px}
.deck-mode #meaning .spirit-caption{font-size:23px;line-height:1.6;margin-top:8px}
.deck-mode #meaning .meaning-principles{gap:32px;margin:0;align-self:start}
.deck-mode #meaning .meaning-principles article{padding-top:20px}
.deck-mode #meaning .meaning-principles h3{font-size:31px;line-height:1.5}
.deck-mode #meaning .meaning-principles p{font-size:26px;line-height:1.65;margin-top:12px}

/* Five passages and shuffled roles can be connected in either direction. */
.deck-mode #structure{display:grid;grid-template-rows:148px minmax(0,1fr) 110px;gap:16px}
.deck-mode #structure .structure-heading-layout{height:148px;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:40px;align-items:center}
.deck-mode #structure .structure-heading-layout .section-heading{display:block;min-width:0}
.deck-mode #structure .structure-heading-layout .eyebrow{margin-bottom:12px;font-size:18px}
.deck-mode #structure .structure-heading-layout h2{font-size:48px;line-height:1.3}
.deck-mode #structure .structure-heading-layout .section-heading>p:last-child{font-size:23px;line-height:1.5;margin-top:12px}
.deck-mode #structure .structure-illustration{width:220px;height:145px;margin:0;align-self:center}
.deck-mode #structure .structure-illustration img{display:block;width:100%;height:100%;object-fit:contain}
.deck-mode #structure .match-stage{display:grid;grid-template-columns:800px 120px minmax(0,1fr);grid-template-rows:28px minmax(0,1fr);gap:10px 0;min-height:0}
.deck-mode #structure .match-column-label{font-size:19px;line-height:1.4;letter-spacing:.04em;color:var(--muted);align-self:center}
.deck-mode #structure .match-column-label:first-child{grid-column:1;grid-row:1}
.deck-mode #structure .match-column-label:nth-child(2){grid-column:3;grid-row:1}
.deck-mode #structure .match-passages{grid-column:1;grid-row:2}
.deck-mode #structure .match-roles{grid-column:3;grid-row:2}
.deck-mode #structure .match-column{display:grid;grid-template-rows:repeat(5,minmax(0,1fr));gap:10px;min-height:0}
.deck-mode #structure .match-option{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:center;min-height:0;width:100%;padding:10px 16px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);text-align:left}
.deck-mode #structure .match-option:hover{background:#efe8db;border-color:var(--gold)}
.deck-mode #structure .match-option.is-selected{outline:3px solid var(--rust);outline-offset:-3px;background:#f0e3d0}
.deck-mode #structure .match-option.is-matched{border:2px solid var(--pair-color);padding:9px 15px;background:#f0ede3}
.deck-mode #structure .match-option.is-reviewing{box-shadow:inset 0 0 0 2px var(--pair-color)}
.deck-mode #structure .match-option.is-mismatch{border:2px dashed var(--rust);padding:9px 15px}
.deck-mode #structure .match-badge{font:18px/1.4 Georgia,serif;color:var(--muted)}
.deck-mode #structure .is-matched .match-badge{color:var(--pair-color);font-weight:700}
.deck-mode #structure .match-quote{font-family:var(--serif);font-size:24px;line-height:1.3;letter-spacing:.01em}
.deck-mode #structure .match-clue{background:#e7d6b8;color:inherit;border-radius:2px;padding:0 1px}
.deck-mode #structure .match-role-body{display:flex;flex-direction:column;gap:3px}
.deck-mode #structure .match-role-body strong{font-family:var(--serif);font-size:26px;line-height:1.4;font-weight:600}
.deck-mode #structure .match-role-description{font-size:18px;line-height:1.4;color:var(--muted)}
.deck-mode #structure .match-state{position:absolute;left:8px;bottom:5px;width:42px;text-align:center;color:var(--pair-color);font-size:11px;line-height:1.2}
.deck-mode #structure #structure-connections{grid-column:2;grid-row:2;display:block;width:100%;height:100%;min-height:0;overflow:visible;stroke:none;pointer-events:none}
.deck-mode #structure .match-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;min-height:0}
.deck-mode #structure .match-feedback{align-self:stretch;padding:10px 18px;background:var(--paper-deep);border-left:3px solid var(--gold);min-width:0}
.deck-mode #structure .match-feedback strong{display:block;font-size:22px;line-height:1.35;color:var(--rust);font-weight:600}
.deck-mode #structure .match-feedback p{font-size:19px;line-height:1.45;margin-top:4px}
.deck-mode #structure .match-actions{display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 24px}
.deck-mode #structure .match-progress{font-size:21px;color:var(--rust);grid-column:1/-1;line-height:1.5}
.deck-mode #structure .match-actions .text-button,.deck-mode #structure .match-actions .structure-map{font-size:19px;line-height:1.4;padding:4px 0;margin:0;border:0;border-bottom:1px solid var(--line);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.deck-mode #structure .match-option{transition:none}}

/* Read the contrast in three steps: intention, the text's result, and self-reflection. */
.deck-mode #heart{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:160px 350px 250px;gap:20px;align-content:start}
.deck-mode #heart .heart-heading{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:40px;align-items:center;min-height:0}
.deck-mode #heart .heart-heading .eyebrow{margin-bottom:12px}
.deck-mode #heart .heart-heading h2{font-size:54px;line-height:1.3;margin:0}
.deck-mode #heart .heart-intro{font-size:24px;line-height:1.5;color:var(--muted);margin-top:8px}
.deck-mode #heart .heart-path-art{width:240px;height:160px;margin:0}
.deck-mode #heart .heart-path-art img{display:block;width:100%;height:100%;object-fit:contain}
.deck-mode #heart .heart-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;min-height:0}
.deck-mode #heart .heart-path{display:grid;grid-template-rows:60px minmax(0,1fr);gap:20px;min-width:0;padding:26px 28px;border-top:4px solid var(--path-color);border-radius:4px;background:var(--path-paper)}
.deck-mode #heart .heart-path-public{--path-color:#416b56;--path-paper:#eaf0e6}
.deck-mode #heart .heart-path-private{--path-color:#985c40;--path-paper:#f0e4d8}
.deck-mode #heart .heart-path-heading{display:flex;align-items:center;gap:20px;border-bottom:1px solid #b8a17a66;padding-bottom:12px}
.deck-mode #heart .heart-path-heading h3{font-size:32px;line-height:1.4;color:var(--path-color)}
.deck-mode #heart .heart-path-heading p{font-size:21px;line-height:1.5;color:var(--muted)}
.deck-mode #heart .heart-flow{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);gap:15px;align-items:center;min-width:0}
.deck-mode #heart .heart-step-label{font-family:var(--sans);font-size:17px;line-height:1.5;color:var(--muted);white-space:nowrap}
.deck-mode #heart .heart-step-label>span{font-family:Georgia,serif;color:var(--path-color,var(--rust));font-size:19px;margin-right:5px}
.deck-mode #heart .heart-flow-step blockquote{font-family:var(--serif);font-size:36px;line-height:1.5;letter-spacing:.02em;font-weight:600;margin-top:16px}
.deck-mode #heart .heart-flow-arrow{font-family:var(--sans);font-size:32px;line-height:1;color:var(--path-color);margin-top:40px;text-align:center}
.deck-mode #heart .heart-application{display:grid;grid-template-columns:1.15fr 1fr;gap:45px;align-items:center;padding:22px 28px;border:1px solid var(--gold);border-radius:4px;background:#f0eadf;min-height:0}
.deck-mode #heart .heart-apply-question>.heart-step-label{font-size:19px}
.deck-mode #heart .heart-question-copy{font-family:var(--serif);font-size:31px;line-height:1.55;margin-top:10px}
.deck-mode #heart .heart-interpretation{padding-left:32px;border-left:1px solid var(--gold)}
.deck-mode #heart .heart-interpretation .small-label{font-size:18px;color:var(--rust)}
.deck-mode #heart .heart-interpretation>p{font-size:25px;line-height:1.65;margin-top:10px}

/* Choice selection turns into a full-canvas moment of reflection. */
.deck-mode #scenario.is-thinking{display:block}
.deck-mode #scenario .scenario-thinking{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 0}
.deck-mode #scenario .scenario-thinking:focus{outline:none}
.deck-mode #scenario .scenario-thinking>.eyebrow{display:block;font-size:25px;letter-spacing:.16em;color:#d1b78c;margin:0 0 30px}
.deck-mode #scenario .scenario-thinking h2{font-size:72px;line-height:1.5;letter-spacing:.025em;max-width:100%;margin:0}
.deck-mode #scenario .thinking-accent{color:#e4c897}
.deck-mode #scenario .thinking-invite{font-size:26px;line-height:1.7;color:#d5d7cc;margin-top:30px}
.deck-mode #scenario .thinking-actions{display:flex;align-items:center;justify-content:center;gap:40px;margin-top:45px}
.deck-mode #scenario .thinking-actions .light-button{margin:0;font-size:23px}
.deck-mode #scenario .thinking-actions .text-button{font-size:22px}

/* A wide reading spread replaces the tall sidebar and its unused space. */
.deck-mode #affinity-reflection .affinity-layout{height:100%;display:grid;grid-template-columns:minmax(0,1fr) 250px;grid-template-rows:130px minmax(0,1fr) 60px;gap:16px 36px;align-items:stretch}
.deck-mode #affinity-reflection .affinity-heading{grid-column:1;grid-row:1;align-self:center;min-width:0}
.deck-mode #affinity-reflection .affinity-heading .eyebrow{margin-bottom:12px}
.deck-mode #affinity-reflection .affinity-heading h2{font-size:50px;line-height:1.3;letter-spacing:.025em}
.deck-mode #affinity-reflection .affinity-illustration{grid-column:2;grid-row:1;width:250px;height:130px;max-width:none;margin:0}
.deck-mode #affinity-reflection .affinity-illustration img{display:block;width:100%;height:100%;object-fit:contain}
.deck-mode #affinity-reflection .affinity-reader{grid-column:1/-1;grid-row:2;display:grid;grid-template-rows:minmax(0,1fr) 48px;gap:10px;min-height:0;height:100%}
.deck-mode #affinity-reflection .affinity-prose{font-family:var(--serif);font-size:34px;line-height:1.65;letter-spacing:.01em;width:100%;max-width:1320px;height:100%;min-height:0;padding:0;margin:0 auto}
.deck-mode #affinity-reflection .affinity-prose>.deck-subpage{display:flex;flex-direction:column;justify-content:center;height:100%;width:100%;max-width:none}
.deck-mode #affinity-reflection .affinity-prose p{margin:0}
.deck-mode #affinity-reflection .affinity-prose p+p{margin-top:18px}
.deck-mode #affinity-reflection .affinity-memory{padding:0 0 0 24px;border-left:2px solid var(--gold)}
.deck-mode #affinity-reflection .affinity-memory-quote{display:inline;color:var(--rust);font-size:36px;line-height:1.65;margin:0}
.deck-mode #affinity-reflection .affinity-conclusion{font-weight:600;color:var(--rust)}
.deck-mode #affinity-reflection .deck-page-nav{height:48px;margin:0;padding-top:8px}
.deck-mode #affinity-reflection .affinity-mark-tools{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;margin:0;padding:8px 0 0;border-top:1px solid var(--line)}
.deck-mode #affinity-reflection .affinity-mark-buttons{flex-wrap:nowrap}
.deck-mode #affinity-reflection .affinity-mark-buttons button{font-size:20px;line-height:1.5;min-height:44px;padding:7px 14px;white-space:nowrap}
.deck-mode #affinity-reflection .affinity-mark-hint,.deck-mode #affinity-reflection .affinity-mark-status{font-size:17px;line-height:1.5;margin:0}

/* Large hand-drawn scene and deliberate line-by-line reading. */
.deck-mode #affinity-reflection .affinity-layout{grid-template-columns:400px minmax(0,1fr);grid-template-rows:118px minmax(0,1fr) 60px;gap:16px 32px}
.deck-mode #affinity-reflection .affinity-heading{grid-column:1/-1;grid-row:1}
.deck-mode #affinity-reflection .affinity-illustration{grid-column:1;grid-row:2;width:400px;height:100%;max-width:none;margin:0;align-self:stretch;display:flex;align-items:center;justify-content:center}
.deck-mode #affinity-reflection .affinity-illustration img{width:100%;height:100%;max-height:none;object-fit:contain}
.deck-mode #affinity-reflection .affinity-reader{grid-column:2;grid-row:2}
.deck-mode #affinity-reflection .affinity-prose{font-size:32px;line-height:1.6;letter-spacing:.005em;max-width:none;width:100%;margin:0;padding:0}
.deck-mode #affinity-reflection .affinity-prose p+p{margin-top:22px}
.deck-mode #affinity-reflection .affinity-memory{padding:0;border:0}
.deck-mode #affinity-reflection .affinity-memory-quote{font-size:34px;line-height:1.6;font-weight:600}
.deck-mode #affinity-reflection .affinity-conclusion{font-weight:600;color:var(--rust)}

/* Each paragraph is a generous highlight target with its own visible control. */
.deck-mode #affinity-reflection .affinity-layout{grid-template-columns:360px minmax(0,1fr);grid-template-rows:106px minmax(0,1fr) 60px;gap:16px 24px}
.deck-mode #affinity-reflection .affinity-heading h2{font-size:48px;line-height:1.3}
.deck-mode #affinity-reflection .affinity-heading .eyebrow{margin-bottom:8px}
.deck-mode #affinity-reflection .affinity-illustration{width:360px;height:100%}
.deck-mode #affinity-reflection .affinity-illustration img{border-radius:5px}
.deck-mode #affinity-reflection .affinity-prose{font-size:31px;line-height:1.6;letter-spacing:.005em}
.deck-mode #affinity-reflection .affinity-paragraph{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;min-width:0;cursor:pointer}
.deck-mode #affinity-reflection .affinity-paragraph+.affinity-paragraph{margin-top:16px}
.deck-mode #affinity-reflection .affinity-paragraph>p{min-width:0;width:100%;margin:0;padding:8px;border:0;border-radius:5px;transition:background .15s,box-shadow .15s}
.deck-mode #affinity-reflection .affinity-paragraph:hover>p{background:#ece5d8}
.deck-mode #affinity-reflection .affinity-paragraph.is-highlighted>p{background:#ecd7ac;box-shadow:inset 4px 0 0 #a47b3d}
.deck-mode #affinity-reflection .affinity-paragraph-toggle{display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin-top:10px;border:1px solid var(--gold);border-radius:50%;font:17px/1 Georgia,serif;color:var(--rust);background:var(--paper)}
.deck-mode #affinity-reflection .affinity-paragraph-toggle:hover{background:var(--paper-deep);border-color:var(--rust)}
.deck-mode #affinity-reflection .affinity-paragraph-toggle[aria-pressed=true]{color:var(--paper);background:var(--ink);border-color:var(--ink);font:23px/1 var(--sans)}
.deck-mode #affinity-reflection .affinity-memory-quote{font-size:33px;line-height:1.6}
.deck-mode #affinity-reflection .affinity-mark-tools{grid-template-columns:minmax(0,1fr) auto auto;gap:24px}
.deck-mode #affinity-reflection .affinity-mark-hint{font-size:18px}
.deck-mode #affinity-reflection .affinity-mark-status{font-size:18px;color:var(--rust);min-width:110px}
.deck-mode #affinity-reflection #affinity-mark-clear{font-size:19px;padding:8px 16px;border:1px solid var(--gold);color:var(--ink)}
@media(prefers-reduced-motion:reduce){.deck-mode #affinity-reflection .affinity-paragraph>p{transition:none}}

.deck-mode #affinity-reflection .affinity-mark-status:empty{display:block;visibility:hidden}
.deck-mode #affinity-reflection .affinity-paragraph:not(.is-highlighted):focus-within>p{background:#ece5d8}

/* A three-step practice worksheet with the source above and actions below. */
.deck-mode #reflection{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:180px 120px minmax(0,1fr);gap:20px}
.deck-mode #reflection .practice-heading{display:grid;grid-template-columns:minmax(0,1fr) 350px;grid-template-rows:30px minmax(0,1fr);column-gap:60px;row-gap:12px;min-height:0;align-items:center}
.deck-mode #reflection .practice-heading .eyebrow{grid-column:1/-1;grid-row:1;margin:0}
.deck-mode #reflection .practice-heading h2{grid-column:1;grid-row:2;font-size:48px;line-height:1.3;margin:0}
.deck-mode #reflection .practice-heading>p:last-child{grid-column:2;grid-row:2;font-size:24px;line-height:1.7;color:var(--muted);border-left:2px solid var(--gold);padding-left:24px;margin:0}
.deck-mode #reflection .practice-anchor{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;align-items:center;padding:12px 26px;background:var(--paper-deep);border-left:4px solid var(--gold);border-radius:4px;min-height:0}
.deck-mode #reflection .reflection-quote{margin:0;padding:0;border:0;min-width:0}
.deck-mode #reflection .reflection-quote .small-label,.deck-mode #reflection .practice-understanding .small-label{display:block;font-size:16px;line-height:1.5;color:var(--rust);margin:0}
.deck-mode #reflection .reflection-quote blockquote{font-size:31px;line-height:1.5;letter-spacing:.01em;margin-top:8px;font-weight:600}
.deck-mode #reflection .practice-understanding{padding-left:30px;border-left:1px solid var(--gold)}
.deck-mode #reflection .practice-understanding p{font-size:22px;line-height:1.5;margin-top:4px;color:var(--muted)}
.deck-mode #reflection .practice-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr) 88px;gap:20px 24px;height:100%;min-height:0;margin:0}
.deck-mode #reflection .practice-card{display:flex;flex-direction:column;gap:14px;height:100%;min-width:0;min-height:0;border:1px solid var(--line);border-radius:8px;background:#fbf8f1;padding:22px;margin:0}
.deck-mode #reflection .practice-card:focus-within{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.deck-mode #reflection .practice-card>.practice-step{display:block;align-self:start;font:25px/1.2 Georgia,serif;letter-spacing:.04em;color:var(--rust);margin:0}
.deck-mode #reflection .practice-card>.practice-field-title{display:block;font-family:var(--serif);font-size:25px;line-height:1.45;font-weight:600;color:var(--ink);margin:0;min-height:37px}
.deck-mode #reflection .practice-card textarea{flex:1;display:block;min-height:0;height:auto;width:100%;padding:12px 14px;margin:0;border:1px solid #d9d0c0;border-radius:4px;background:var(--paper);font-family:var(--sans);font-size:23px;line-height:1.7;resize:none;color:var(--ink)}
.deck-mode #reflection .practice-card textarea::placeholder{color:#797c70;opacity:1}
.deck-mode #reflection .practice-form-footer{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;align-items:center;gap:40px;border-top:1px solid var(--line);padding-top:16px;min-width:0}
.deck-mode #reflection .reflection-actions{margin:0;gap:28px;flex:none}
.deck-mode #reflection .reflection-actions .primary-button{margin:0;min-height:54px;font-size:22px;padding:12px 24px}
.deck-mode #reflection .reflection-actions .text-button{font-size:21px}
.deck-mode #reflection .practice-save-note{max-width:660px;min-width:0}
.deck-mode #reflection .practice-save-note .privacy-note{font-size:17px;line-height:1.5;margin:0}
.deck-mode #reflection .practice-save-note .form-status{font-size:17px;line-height:1.5;color:var(--rust);margin:4px 0 0;min-height:26px}

/* Clone-only text fields preserve the on-screen card layout in the PNG. */
.deck-mode #reflection .practice-card .practice-export-field{flex:1;display:block;min-height:0;height:auto;width:100%;padding:12px 14px;margin:0;border:1px solid #d9d0c0;border-radius:4px;background:var(--paper);font-family:var(--sans);font-size:23px;line-height:1.7;color:var(--ink);white-space:pre-wrap;overflow-wrap:break-word;overflow:hidden}
.deck-mode #reflection .practice-export-field[data-empty=true]{color:#797c70}
.deck-mode #reflection #download-reflection[aria-busy=true]{cursor:progress}

/* Japanese closing spread. Dedicated classes keep the legacy .closing grid out. */
.deck-mode #closing{display:block;background:var(--paper);color:var(--ink)}
.deck-mode #closing .ending-layout{width:100%;height:100%;display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);grid-template-rows:40px minmax(0,1fr) 150px;grid-template-areas:"intro art" "words art" "footer footer";gap:24px 48px}
.deck-mode #closing .ending-eyebrow{grid-area:intro;align-self:center;display:flex;align-items:center;gap:18px;margin:0;font-size:18px;line-height:1.5;letter-spacing:.12em;color:#8b6947}
.deck-mode #closing .ending-eyebrow span{font-size:16px;letter-spacing:.06em;color:var(--muted);border-left:1px solid var(--gold);padding-left:18px}
.deck-mode #closing .ending-words{grid-area:words;align-self:center;display:block;margin:0;padding:0;font-family:var(--serif);font-size:70px;line-height:1.55;font-weight:600;letter-spacing:.035em;color:var(--ink)}
.deck-mode #closing .ending-words>span{display:block;white-space:nowrap}
.deck-mode #closing .ending-line-accent{color:#8b6947}
.deck-mode #closing .ending-art{grid-area:art;align-self:stretch;justify-self:stretch;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0;margin:0;padding:0}
.deck-mode #closing .ending-art img{display:block;width:100%;height:100%;object-fit:contain}
.deck-mode #closing .ending-footer{grid-area:footer;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:center;padding:18px 0 0;margin:0;border-top:1px solid var(--line);min-width:0}
.deck-mode #closing .ending-continuity{margin:0;font-family:var(--serif);font-size:33px;line-height:1.7;letter-spacing:.01em;color:var(--ink)}
.deck-mode #closing .ending-continuity br{display:initial}
.deck-mode #closing .ending-actions{display:flex;align-items:center;gap:28px;margin:0;padding:0}
.deck-mode #closing .ending-return{display:inline-flex;align-items:center;gap:14px;padding:8px 0;border-bottom:1px solid var(--gold);font-size:20px;line-height:1.5;color:var(--muted);white-space:nowrap}
.deck-mode #closing .ending-return:hover{color:var(--rust)}
.deck-mode #closing .ending-next{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:56px;padding:12px 22px;background:var(--ink);color:var(--paper);border-radius:3px;font-size:21px;line-height:1.5;white-space:nowrap}
.deck-mode #closing .ending-next:hover{background:#3f594b}

/* A quiet, high-contrast reading layout around the three-realm triangle. */
.deck-mode #three-realms{display:block;isolation:isolate;overflow:hidden;background:#f6f2e9;color:#253b33}
.deck-mode #three-realms .realm-landing{position:relative;width:100%;height:100%;display:grid;grid-template-rows:40px minmax(0,1fr) 108px;gap:20px}
.deck-mode #three-realms .realm-landing-top{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #d8d0c1;padding-bottom:12px}
.deck-mode #three-realms .realm-landing-top .eyebrow{margin:0;flex-shrink:0}
.deck-mode #three-realms .realm-landing-top>p:last-child{font-size:23px;color:#536357;line-height:1.5}
.deck-mode #three-realms .realm-landing-main{display:grid;grid-template-columns:300px minmax(0,1fr) 400px;gap:24px;align-items:center;min-height:0}
.deck-mode #three-realms .realm-landing-title{align-self:center;padding-bottom:25px}
.deck-mode #three-realms .realm-landing-rule{display:block;width:46px;height:2px;background:#82917a;margin-bottom:26px}
.deck-mode #three-realms .realm-landing-title h2{font-size:46px;line-height:1.55;letter-spacing:.02em;white-space:nowrap}
.deck-mode #three-realms .realm-landing-title>p{font-size:25px;line-height:1.75;margin-top:26px;color:#536357}
.deck-mode #three-realms .realm-map-wrap{position:relative;isolation:isolate;width:100%;max-width:none;margin:0;min-width:0;align-self:center}
#three-realms .realm-backdrops{position:absolute;inset:14px -8px 45px;z-index:-1;overflow:hidden;pointer-events:none;background:#f6f2e9;mask-image:radial-gradient(ellipse at center,#000 32%,transparent 73%);-webkit-mask-image:radial-gradient(ellipse at center,#000 32%,transparent 73%)}
#three-realms .realm-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 62%;opacity:0;filter:saturate(.45);transition:opacity .65s ease}
#three-realms .realm-backdrop.is-active{opacity:.24}
.deck-mode #three-realms .realm-map{position:relative;width:100%;max-width:640px;height:auto;aspect-ratio:5/4;margin:0 auto}
.deck-mode #three-realms .realm-map-lines{stroke:#82917a;stroke-width:1.5}
.deck-mode #three-realms .realm-map-triangle{fill:rgba(246,242,233,.72);stroke-width:2}
.deck-mode #three-realms .realm-map-lines circle{opacity:.22}
.deck-mode #three-realms .realm-map-spokes{opacity:.55}
.deck-mode #three-realms .realm-map-center{width:146px;height:146px;background:#faf8f2;color:#253b33;border:2px solid #82917a;box-shadow:0 0 0 8px rgba(246,242,233,.95);gap:0}
.deck-mode #three-realms .realm-map-center strong{font-size:30px;letter-spacing:.04em;white-space:nowrap}
.deck-mode #three-realms .realm-node{min-width:180px;padding:16px 22px;background:#fffdf8;border:1px solid #b4beac;border-radius:3px;box-shadow:0 3px 10px rgba(37,59,51,.04);color:#253b33;transition:background .2s,border-color .2s,box-shadow .2s}
.deck-mode #three-realms .realm-node:before{content:"";position:absolute;left:12px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--realm-selected);opacity:.5}
.deck-mode #three-realms .realm-node strong{font-size:32px;line-height:1.6;letter-spacing:.06em}
.deck-mode #three-realms .realm-node small{font-size:18px;line-height:1.6;color:#536357}
.deck-mode #three-realms .realm-node-social{--realm-selected:#2454cc}
.deck-mode #three-realms .realm-node-students{--realm-selected:#f28c28}
.deck-mode #three-realms .realm-node-youth{--realm-selected:#96df48}
.deck-mode #three-realms .realm-node.active{background:#fffdf8;border-color:var(--realm-selected);color:#253b33;box-shadow:0 0 0 2px var(--realm-selected),0 4px 12px rgba(37,59,51,.06)}
.deck-mode #three-realms .realm-node:hover{background:#f1eee5;border-color:var(--realm-selected);color:#253b33}
.deck-mode #three-realms .realm-node.active small,.deck-mode #three-realms .realm-node:hover small{color:#536357}
.deck-mode #three-realms .realm-node.active:before{opacity:1}
.deck-mode #three-realms .realm-map-instruction{position:relative;text-align:center;font-size:19px;line-height:1.6;margin:12px 0 0;color:#536357;background:#f6f2e9}
.deck-mode #three-realms .realm-map-detail{margin:0;padding:30px 26px 24px;min-height:430px;border:1px solid #d8d0c1;border-top:2px solid #82917a;background:#fffdf8;align-self:center;box-shadow:none}
.deck-mode #three-realms .realm-map-detail .small-label{font-size:16px;color:#536357;letter-spacing:.04em}
.deck-mode #three-realms .realm-map-detail blockquote{font-size:31px;line-height:1.55;margin:20px 0 18px;color:#253b33;letter-spacing:.02em}
.deck-mode #three-realms .realm-map-detail article>p{font-size:26px;line-height:1.75;color:#253b33}
.deck-mode #three-realms .realm-map-detail .realm-source{font-size:15px!important;line-height:1.65!important;margin:22px 0 0!important;padding-top:16px;border-top:1px solid #d8d0c1;color:#536357}
.deck-mode #three-realms .realm-opening-question{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;margin:0;padding:17px 26px;border-top:1px solid #d8d0c1;background:#eeeadf}
.deck-mode #three-realms .realm-opening-question .small-label{font-size:16px;letter-spacing:.08em;color:#536357}
.deck-mode #three-realms .realm-opening-question h3{font-size:30px;line-height:1.5;margin:5px 0 0;color:#253b33}
.deck-mode #three-realms .realm-opening-question>p{font-size:24px;line-height:1.65;margin:0;color:#536357}
@media(prefers-reduced-motion:reduce){#three-realms .realm-backdrop,.deck-mode #three-realms .realm-node{transition:none}}
@media print{#three-realms .realm-backdrops{display:none}}

/* Follow the care we receive into respect and companionship. */
.deck-mode #realms-relations{display:grid;grid-template-columns:1fr;grid-template-rows:174px 122px minmax(0,1fr) 92px;gap:20px;background:#f6f2e9}
.deck-mode #realms-relations .relation-journey-header{grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:36px;align-items:center}
.deck-mode #realms-relations .section-heading .eyebrow{margin:0 0 13px;font-size:18px}
.deck-mode #realms-relations .section-heading h2{font-size:51px;line-height:1.4;letter-spacing:.015em}
.deck-mode #realms-relations .section-heading h2 br{display:none}
.deck-mode #realms-relations .section-heading>p:last-child{font-size:25px;line-height:1.7;margin-top:13px;color:#536357}
.deck-mode #realms-relations .relation-bridge-art{width:340px;margin:0;align-self:center}
.deck-mode #realms-relations .relation-bridge-art svg{display:block;width:100%;height:150px;stroke-linecap:round;stroke-linejoin:round}
.deck-mode #realms-relations .realm-relation-tabs{grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;border:1px solid #d8d0c1;background:#eeeadf;overflow:visible}
.deck-mode #realms-relations .realm-relation-tabs>button{display:grid;grid-template-columns:52px minmax(0,1fr) 32px;gap:20px;align-items:center;text-align:left;width:100%;min-width:0;margin:0;padding:20px 28px;border:0;border-right:1px solid #d8d0c1;position:relative;color:#536357;background:transparent;transition:background .2s}
.deck-mode #realms-relations .realm-relation-tabs>button:last-child{border-right:0}
.deck-mode #realms-relations .realm-relation-tabs>button:hover{background:#e8e5da}
.deck-mode #realms-relations .realm-relation-tabs>button.active{color:#253b33;background:#e1eadb;box-shadow:inset 0 -3px 0 #637c5e}
.deck-mode #realms-relations .realm-relation-tabs .relation-step-number{display:grid;place-items:center;width:52px;height:52px;border:1px solid #a9b49e;border-radius:50%;color:inherit;font:23px Georgia,serif}
.deck-mode #realms-relations .realm-relation-tabs .relation-step-copy{display:block;border:0;color:inherit;font-family:var(--sans)}
.deck-mode #realms-relations .relation-step-copy strong{display:block;font-size:29px;font-family:var(--serif);font-weight:600;line-height:1.5}
.deck-mode #realms-relations .relation-step-copy small{display:block;font-size:19px;line-height:1.6;margin-top:4px;color:#536357;white-space:nowrap}
.deck-mode #realms-relations .realm-relation-tabs .relation-step-arrow{font-size:29px;color:#87977c;line-height:1}
.deck-mode #realms-relations .realm-relation-tabs>button:last-child .relation-step-arrow{visibility:hidden}
.deck-mode #realms-relations .realm-relation-panel{grid-column:1;grid-row:3;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;padding:0;min-height:0;align-items:stretch}
.deck-mode #realms-relations .realm-relation-quote{background:#eeeadf;padding:28px 32px;border:1px solid #ded8cb;display:flex;flex-direction:column;justify-content:center}
.deck-mode #realms-relations .realm-relation-quote>.small-label{font-size:17px;line-height:1.5;color:#65705e}
.deck-mode #realms-relations .realm-relation-quote h3{font-size:31px;line-height:1.6;margin-top:18px;color:#253b33}
.deck-mode #realms-relations .realm-relation-quote blockquote{font-size:32px;line-height:1.85;margin-top:10px;color:#253b33;font-weight:500}
.deck-mode #realms-relations .realm-relation-question{padding:28px 32px;background:#fffdf8;border:1px solid #ded8cb;border-left:3px solid #879b7c;display:flex;flex-direction:column;justify-content:center}
.deck-mode #realms-relations .realm-relation-question>.small-label{font-size:17px;line-height:1.5;color:#65705e}
.deck-mode #realms-relations .realm-relation-question>p{font-size:31px;line-height:1.8;margin-top:18px;color:#253b33}
.deck-mode #realms-relations .realm-relation-question>small{display:block;font-size:21px;line-height:1.7;margin-top:17px;color:#536357}
.deck-mode #realms-relations .relation-journey-bottom{grid-row:4;display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:32px;align-items:center;border-top:1px solid #d8d0c1;padding-top:15px}
.deck-mode #realms-relations .realm-four-words{padding:0;border:0;display:flex;align-items:center;gap:28px}
.deck-mode #realms-relations .realm-four-words>.small-label{font-size:17px;color:#65705e;max-width:90px;line-height:1.6}
.deck-mode #realms-relations .realm-four-words>p{display:flex;justify-content:flex-start;gap:0;margin:0;max-width:none}
.deck-mode #realms-relations .realm-four-words>p span{font-size:30px;letter-spacing:.08em;padding:0 24px;border-right:1px solid #c9c8b7}
.deck-mode #realms-relations .realm-four-words>p span:first-child{padding-left:0}
.deck-mode #realms-relations .realm-four-words>p span:last-child{border:0;padding-right:0}
.deck-mode #realms-relations .relation-journey-bottom>.realm-source{font-size:16px!important;line-height:1.7!important;color:#65705e;margin:0!important;text-align:right}
@media(prefers-reduced-motion:reduce){.deck-mode #realms-relations .realm-relation-tabs>button{transition:none}}

/* A life-course path connecting the three realms. */
.deck-mode #realms-scenario{display:grid;grid-template-rows:156px 280px minmax(0,1fr) 64px;grid-template-columns:1fr;gap:20px;background:#f6f2e9;color:#253b33}
.deck-mode #realms-scenario .track-heading{display:grid;grid-template-columns:minmax(0,1fr) 510px;gap:40px;align-items:center}
.deck-mode #realms-scenario .track-heading .eyebrow{margin:0 0 12px;font-size:18px;color:#72775e}
.deck-mode #realms-scenario .track-heading h2{font-size:49px;line-height:1.4;letter-spacing:.02em}
.deck-mode #realms-scenario .track-heading h2 br{display:none}
.deck-mode #realms-scenario .track-heading>p{font-size:26px;line-height:1.75;color:#536357;border-left:1px solid #c7c9b7;padding-left:30px}
.deck-mode #realms-scenario .track-landscape{position:relative;isolation:isolate;min-height:0;border-top:1px solid #ddd5c6;border-bottom:1px solid #ddd5c6;background:#f1ede2}
.deck-mode #realms-scenario .track-route{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;stroke-linecap:round}
.deck-mode #realms-scenario .track-stops{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:100%;gap:26px;padding:10px 18px}
.deck-mode #realms-scenario .track-stop{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:6px;padding:12px 8px;transition:background .2s,border-color .2s}
.deck-mode #realms-scenario .track-stop:hover{background:rgba(255,253,248,.6)}
.deck-mode #realms-scenario .track-stop.active{background:#fffdf8;border-color:#a7b29b;box-shadow:0 4px 18px rgba(37,59,51,.04)}
.deck-mode #realms-scenario .track-stop-number{position:absolute;left:18px;top:15px;font:18px Georgia,serif;color:#728367}
.deck-mode #realms-scenario .track-stop-art{width:166px;height:114px;display:block;stroke:#6c7d5f;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:14px}
.deck-mode #realms-scenario .track-stop strong{font-family:var(--serif);font-size:29px;line-height:1.6;letter-spacing:.01em;font-weight:600;white-space:nowrap}
.deck-mode #realms-scenario .track-stop small{font-size:20px;line-height:1.7;color:#536357;margin-top:6px}
.deck-mode #realms-scenario .track-panels{min-height:0}
.deck-mode #realms-scenario .track-panel{height:100%;display:grid;grid-template-columns:1.05fr 1fr;gap:0;border:1px solid #d8d0c1;background:#fffdf8}
.deck-mode #realms-scenario .track-life,.deck-mode #realms-scenario .track-scripture{padding:20px 30px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.deck-mode #realms-scenario .track-life{border-right:1px solid #d8d0c1}
.deck-mode #realms-scenario .small-label{font-size:16px;line-height:1.6;color:#6c765e;letter-spacing:.04em}
.deck-mode #realms-scenario .track-life h3{font-size:30px;line-height:1.6;margin:7px 0 0}
.deck-mode #realms-scenario .track-life p{font-size:26px;line-height:1.7;margin:8px 0 0;color:#253b33}
.deck-mode #realms-scenario .track-scripture{background:#eeeadf}
.deck-mode #realms-scenario .track-scripture blockquote{font-size:29px;line-height:1.7;margin:8px 0 0;color:#253b33;font-weight:500}
.deck-mode #realms-scenario .track-one{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:center;border-left:3px solid #90a17d;padding-left:22px}
.deck-mode #realms-scenario .track-one p{font-size:25px;line-height:1.6;letter-spacing:0}
.deck-mode #realms-scenario .track-one strong{font-family:var(--serif);font-weight:600;color:#3f5b3e;white-space:nowrap}
.deck-mode #realms-scenario .track-one small{font-size:16px;line-height:1.65;color:#65705e;text-align:right}
@media(prefers-reduced-motion:reduce){.deck-mode #realms-scenario .track-stop{transition:none}}

/* Read the closing exhortation, then bring it back to today's practice. */
.deck-mode #realms-reflection{display:grid;grid-template-columns:1fr;grid-template-rows:128px 108px 102px minmax(0,1fr) 118px;gap:24px;background:#f6f2e9;color:#253b33}
.deck-mode #realms-reflection .return-heading{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:40px;align-items:center}
.deck-mode #realms-reflection .return-heading .eyebrow{margin:0 0 10px;font-size:18px}
.deck-mode #realms-reflection .return-heading h2{font-size:52px;line-height:1.4;letter-spacing:.01em}
.deck-mode #realms-reflection .return-heading h2 br{display:none}
.deck-mode #realms-reflection .return-heading>p{font-size:25px;line-height:1.8;color:#536357;border-left:1px solid #c8cbb8;padding-left:28px}
.deck-mode #realms-reflection .return-scripture{display:grid;grid-template-columns:170px minmax(0,1fr);gap:26px;align-items:center;padding:12px 26px;background:linear-gradient(100deg,#f1e2c7,#eee6d7);border-left:3px solid #b68b4e}
.deck-mode #realms-reflection .return-scripture .small-label{display:block;font-size:17px;color:#536357}
.deck-mode #realms-reflection .return-scripture small{display:block;font-size:16px;margin-top:7px;color:#65705e}
.deck-mode #realms-reflection .return-scripture blockquote{font-size:27px;line-height:1.5;color:#253b33;letter-spacing:.01em;font-weight:500}
.deck-mode #realms-reflection .return-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.deck-mode #realms-reflection .return-choices button{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 25px;border:1px solid var(--return-border);background:var(--return-wash);text-align:left;transition:background .2s,border-color .2s}
.deck-mode #realms-reflection .return-choices button:hover{background:var(--return-selected);border-color:var(--return-accent)}
.deck-mode #realms-reflection .return-choices button.active{background:var(--return-selected);border-color:var(--return-accent);box-shadow:inset 0 -4px 0 var(--return-accent)}
.deck-mode #realms-reflection .return-choices button>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--return-border);border-radius:50%;font:19px Georgia,serif;color:var(--return-ink);background:#fffdf8}
.deck-mode #realms-reflection .return-choices strong{font-family:var(--serif);font-size:33px;font-weight:600;white-space:nowrap}
.deck-mode #realms-reflection .return-choices small{font-size:20px;white-space:nowrap;color:var(--return-ink)}
.deck-mode #realms-reflection .return-panels{min-height:0}
.deck-mode #realms-reflection .return-panel{display:grid;grid-template-columns:1.12fr 1fr;height:100%;min-height:0;border:1px solid var(--return-border);background:#fffdf8;box-shadow:inset 4px 0 0 var(--return-accent)}
.deck-mode #realms-reflection .return-question,.deck-mode #realms-reflection .return-understanding{display:flex;flex-direction:column;justify-content:center;padding:22px 30px;min-width:0}
.deck-mode #realms-reflection .return-question{border-right:1px solid var(--return-border)}
.deck-mode #realms-reflection .return-panel .small-label{font-size:17px;line-height:1.6;color:var(--return-ink);letter-spacing:.04em}
.deck-mode #realms-reflection .return-question p{font-family:var(--serif);font-size:36px;line-height:1.75;margin-top:12px;color:#253b33;font-weight:500}
.deck-mode #realms-reflection .return-understanding{background:var(--return-wash)}
.deck-mode #realms-reflection .return-understanding p{font-size:27px;line-height:1.75;margin-top:12px;color:#253b33}
.deck-mode #realms-reflection .return-understanding small{font-size:21px;line-height:1.7;margin-top:14px;color:#536357}
.deck-mode #realms-reflection .return-sendoff{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:30px;align-items:center;border-top:1px solid #d8d0c1;padding-top:15px}
.deck-mode #realms-reflection .return-sendoff p>span{display:block;font-size:25px;line-height:1.6;color:#536357}
.deck-mode #realms-reflection .return-sendoff p>strong{display:block;font-family:var(--serif);font-size:29px;line-height:1.6;color:#835a3e;font-weight:600}
.deck-mode #realms-reflection .return-reading-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.deck-mode #realms-reflection .return-reading-links .text-button{font-size:20px;line-height:1.5;padding:4px 0;gap:12px}
/* Soft warm, blue and green accents distinguish the three reflection themes. */
.deck-mode #realms-reflection :is([data-return-self="duty"],[data-return-self-panel="duty"]){--return-accent:#ad7b45;--return-ink:#7a4b25;--return-border:#d9bc97;--return-wash:#fbf2e5;--return-selected:#f1dfc6}
.deck-mode #realms-reflection :is([data-return-self="heart"],[data-return-self-panel="heart"]){--return-accent:#6487a5;--return-ink:#3e5c76;--return-border:#b8cbd9;--return-wash:#eaf1f6;--return-selected:#d9e6f0}
.deck-mode #realms-reflection :is([data-return-self="vow"],[data-return-self-panel="vow"]){--return-accent:#789464;--return-ink:#43633b;--return-border:#becdaf;--return-wash:#edf3e7;--return-selected:#dfebd4}
.deck-mode #realms-reflection .return-choices button.active>span{background:var(--return-ink);border-color:var(--return-ink);color:#fffdf8}
@media(prefers-reduced-motion:reduce){.deck-mode #realms-reflection .return-choices button{transition:none}}

/* Course-wide spacing review: retain all copy, palettes and 1600 × 900 canvases. */
/* Keep the opening's vertical motto in its own lane, clear of the portrait frame. */
.deck-mode #opening .hero-portrait{width:100%;margin:0;padding-right:52px;isolation:isolate}
.deck-mode #opening .portrait-frame{height:620px;border:1px solid var(--gold);padding:18px;box-sizing:border-box;overflow:hidden;background:transparent}
.deck-mode #opening .portrait-frame:before{display:none}
.deck-mode #opening .portrait-frame img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.deck-mode #opening .vertical-note{right:0;top:28px;width:30px;font-size:18px;line-height:30px;padding:0;letter-spacing:.22em}
.deck-mode #opening .hero-portrait figcaption{gap:18px;line-height:1.65}
/* Enlarge the artwork on both text readers while leaving five lines at full size. */
.deck-mode :is(#reading,#realms-reading).deck-full-reading{grid-template-rows:180px 60px 30px minmax(0,1fr) 30px;gap:10px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-header{height:180px;grid-template-columns:minmax(0,1fr) 280px;gap:36px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-side,.realm-reading-aside){width:280px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-art-stage,.realm-tab-art-stage){height:150px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading :is(.reading-emblem,.realm-tab-illustration) figcaption{font-size:16px;line-height:1.5;margin-top:4px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-tabs>button{height:60px;padding:12px 16px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-hint{font-size:20px;line-height:1.5}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-reading-pager{grid-template-rows:minmax(0,1fr) 54px;gap:12px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-page-viewport{padding:16px 38px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .deck-page-nav{height:54px;padding:10px 0 0;gap:24px}
.deck-mode :is(#reading,#realms-reading).deck-full-reading .course-reading-footer :is(.text-button,.word-note){min-height:0}
.deck-mode #realms-reading.deck-full-reading .realm-poem-heading{gap:24px;min-height:33px;margin-bottom:12px;flex-wrap:nowrap}
.deck-mode #realms-reading.deck-full-reading .realm-poem-heading .realm-acrostic-result{font:21px/1.5 var(--sans);letter-spacing:.03em;color:var(--rust);margin:0;padding:0;white-space:nowrap}
/* Annotation and structure modes use a consistent compact heading and separate navigation. */
.deck-mode #reading.deck-reading-notes{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:170px 60px minmax(0,1fr) 36px;gap:12px}
.deck-mode #reading.deck-reading-notes .reading-top{grid-row:1;height:170px;grid-template-columns:minmax(0,1fr) 280px;gap:36px}
.deck-mode #reading.deck-reading-notes .reading-side{width:280px}
.deck-mode #reading.deck-reading-notes .reading-art-stage{height:140px}
.deck-mode #reading.deck-reading-notes .reading-emblem figcaption{font-size:16px;line-height:1.5;margin:4px 0 0}
.deck-mode #reading.deck-reading-notes .reading-tools{grid-row:2;height:60px;margin:0;gap:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.deck-mode #reading.deck-reading-notes .reading-mode{justify-content:center;padding:12px 16px;min-height:0;height:60px}
.deck-mode #reading.deck-reading-notes #reading-hint{display:none}
.deck-mode #reading.deck-reading-notes .reading-annotations{grid-row:3;display:flex;flex-direction:column;min-height:0;height:100%;margin:0}
.deck-mode #reading.deck-reading-notes .annotation-header{display:flex;gap:28px;align-items:center;flex-shrink:0;margin:0 0 12px;padding:0;min-height:42px}
.deck-mode #reading.deck-reading-notes .annotation-header h3{flex:none;font-size:28px;line-height:1.5}
.deck-mode #reading.deck-reading-notes .annotation-header>p:last-child{font-size:19px;line-height:1.6;margin:0}
.deck-mode #reading.deck-reading-notes .reading-annotations>.deck-pager{display:grid;grid-template-rows:minmax(0,1fr) 54px;gap:12px;flex:1;min-height:0}
.deck-mode #reading.deck-reading-notes .deck-page-viewport{height:100%;min-height:0}
.deck-mode #reading.deck-reading-notes .deck-page-nav{height:54px;margin:0;padding:10px 0 0}
.deck-mode #reading.deck-reading-notes .source-line{grid-row:4;display:flex;align-items:center;margin:0;padding:0;border:0;gap:24px;min-height:0;font-size:16px}
.deck-mode #reading.deck-reading-notes .source-line .text-button{font-size:18px;line-height:1.5;min-height:0;padding:0;white-space:nowrap}
.deck-mode #realms-reading:not(.deck-full-reading){display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:170px 60px minmax(0,1fr);gap:12px}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-reading-heading{grid-row:1;height:170px;grid-template-columns:minmax(0,1fr) 280px;gap:36px}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-reading-heading>div:first-child{display:block}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-reading-heading h2{font-size:53px;line-height:1.3;margin-top:12px}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-origin,.deck-mode #realms-reading:not(.deck-full-reading) .realm-reading-guide{display:none}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-reading-aside{width:280px}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-tab-art-stage{height:140px}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-tab-illustration figcaption{font-size:16px;line-height:1.5;margin-top:4px}
.deck-mode #realms-reading:not(.deck-full-reading)>.realm-tabs{grid-row:2;margin:0;height:60px}
.deck-mode #realms-reading:not(.deck-full-reading)>.realm-tabs>button{padding:12px 16px;height:60px;min-height:0}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-read-panel{grid-row:3;height:100%;min-height:0;display:flex;flex-direction:column;padding:0}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-read-panel>.deck-pager{display:grid;grid-template-rows:minmax(0,1fr) 54px;gap:12px;flex:1;min-height:0}
.deck-mode #realms-reading:not(.deck-full-reading) :is(.deck-realm-notes,.realm-structure-list){height:100%;min-height:0}
.deck-mode #realms-reading:not(.deck-full-reading) .realm-panel-intro{flex-shrink:0;margin:0 0 12px;font-size:20px;line-height:1.5}
.deck-mode #realms-reading:not(.deck-full-reading) .annotation-header{display:flex;align-items:center;gap:28px;flex-shrink:0;margin:0 0 12px;padding:0;min-height:42px}
.deck-mode #realms-reading:not(.deck-full-reading) .annotation-header h3{flex:none;font-size:28px;line-height:1.5}
.deck-mode #realms-reading:not(.deck-full-reading) .annotation-header>p:last-child{font-size:18px;line-height:1.5;margin:0}
.deck-mode #realms-reading:not(.deck-full-reading) .deck-page-nav{height:54px;margin:0;padding:10px 0 0;gap:24px}
/* Give matching cards consistent inner padding, including selected and matched states. */
.deck-mode #structure{grid-template-rows:148px minmax(0,1fr) 100px}
.deck-mode #structure .structure-heading-layout{grid-template-columns:minmax(0,1fr) 270px;gap:32px}
.deck-mode #structure .structure-illustration{width:270px;height:148px;display:flex;align-items:center;justify-content:center}
.deck-mode #structure .structure-illustration img{transform:translateY(-8px) scale(1.2)}
.deck-mode #structure .match-option{padding:12px 20px}
.deck-mode #structure .match-option.is-matched,.deck-mode #structure .match-option.is-mismatch{padding:11px 19px}
.deck-mode #structure .match-role-body strong{line-height:1.35}
.deck-mode #structure .match-state{left:14px;bottom:9px;width:36px}
/* The comparison artwork gets a larger header without compressing the reflection text. */
.deck-mode #heart{grid-template-rows:180px 330px 250px}
.deck-mode #heart .heart-heading{grid-template-columns:minmax(0,1fr) 280px;gap:36px}
.deck-mode #heart .heart-path-art{width:280px;height:180px}
/* Comfortable choice-button borders and marked-paragraph edges. */
.deck-mode #scenario .thought-options button{padding:20px 24px}
.deck-mode #affinity-reflection .affinity-paragraph>p{padding:8px 18px}
/* Placeholder copy uses the same readable size as the input; exports keep the same inset. */
.deck-mode #reflection .practice-card textarea,.deck-mode #reflection .practice-card .practice-export-field{padding:14px 18px}
.deck-mode #reflection .practice-card textarea::placeholder{font-size:inherit;line-height:inherit}
/* Leave a wider ring around the name in the triangle's center. */
.deck-mode #three-realms .realm-map-center{width:164px;height:164px}
/* Slightly enlarge the object illustrations on the relationship and life-course pages. */
.deck-mode #realms-relations .relation-journey-header{grid-template-columns:minmax(0,1fr) 380px}
.deck-mode #realms-relations .relation-bridge-art{width:380px}
.deck-mode #realms-relations .relation-bridge-art svg{height:170px}
.deck-mode #realms-scenario .track-stop-art{width:180px;height:126px}
.deck-mode #structure .match-role-body{gap:2px}
.deck-mode #structure .match-role-description{line-height:1.35}
