:root{--paper:#f7f5ef;--surface:#fffefb;--ink:#1e333c;--muted:#76817e;--line:#e5e5db;--accent:#9f7943;--accent-soft:#ebe5d6;--navy:#172e38;--body-size:19px;--shadow:0 18px 70px #10262b20;--yellow:#f2e790;--pink:#f1c7d3;--blue:#bddde9;--green:#cde1bc;--orange:#f0d0aa;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-size:14px;line-height:1.55}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b29b68;outline-offset:3px}button{border:0;background:none}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.skip-link{position:fixed;top:-60px;left:20px;z-index:1000;background:var(--navy);color:#fff;padding:12px}.skip-link:focus{top:10px}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;padding:34px 22px 20px;background:#f0f0e8;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:40}.brand{display:flex;gap:12px;align-items:center;margin:0 7px 34px}.brand-symbol{font-family:Georgia,serif;font-size:36px;line-height:1;position:relative;letter-spacing:-9px;width:37px}.brand-symbol span{font-family:Arial;font-size:30px;font-weight:normal;position:absolute;left:13px;top:2px;color:var(--accent)}.brand b{display:block;font-family:"Noto Serif TC","Songti TC",serif;font-size:24px;letter-spacing:4px}.brand small{display:block;font-size:9px;letter-spacing:2.8px;color:var(--accent);margin-top:2px}.collection-label{margin:0 7px;font-size:13px;font-weight:700;letter-spacing:2px}.collection-sub{font-size:8px;letter-spacing:1px;color:var(--muted);margin:5px 7px 21px}.primary-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;margin-bottom:22px}.nav-button{display:flex;align-items:center;gap:12px;width:100%;padding:12px 13px;border-radius:5px;text-align:left;font-size:13px;font-weight:600;margin:3px 0}.nav-button>span{width:21px;font-family:Georgia,serif;font-size:20px;text-align:center}.nav-button.active{background:var(--navy);color:#fff}.nav-button:not(.active):hover{background:var(--accent-soft)}kbd{font-family:inherit;font-size:10px;letter-spacing:1px;font-weight:400}.nav-button kbd{margin-left:auto;opacity:.45}.lesson-nav-heading{display:flex;justify-content:space-between;margin:0 10px 11px;font-size:11px;letter-spacing:1px}.lesson-nav-heading span:last-child{color:var(--muted);font-size:10px}.lesson-list{overflow:auto;flex:1;margin-right:-10px;padding-right:9px;scrollbar-width:thin;scrollbar-color:#cbcec3 transparent}.unit-label{padding:16px 10px 8px;font-size:10px;color:var(--accent);letter-spacing:1.5px}.lesson-link{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;line-height:1.5;padding:9px 10px;color:#66736f;border-radius:4px}.lesson-link .lesson-no{font-size:10px;padding-top:2px;opacity:.7;min-width:19px;font-variant-numeric:tabular-nums}.lesson-link .lesson-name{font-size:12px}.lesson-link.active{background:#e3e6db;color:var(--ink);font-weight:700}.lesson-link:hover{background:var(--accent-soft)}.read-dot{color:var(--accent);font-size:10px;margin-left:auto}.sidebar-footer{padding:19px 8px 0;border-top:1px solid var(--line);font-size:10px;letter-spacing:.8px;margin-top:18px;line-height:2;color:var(--muted)}.sidebar-footer>span:last-child{font-size:9px;opacity:.8}.status-dot{display:inline-block;width:5px;height:5px;border-radius:100%;background:#8c9c75;margin-right:7px}.workspace{grid-column:2;min-width:0}.topbar{height:80px;padding:0 40px;display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:30}.breadcrumb{font-size:11px;letter-spacing:1px;display:flex;gap:12px;align-items:center}.breadcrumb>span:first-child{color:var(--muted)}.breadcrumb b{font-weight:500}.slash{color:#b8beb2}.search-launch{display:flex;gap:10px;align-items:center;margin-left:auto;color:var(--muted);font-size:11px;padding:9px 13px;border:1px solid var(--line);border-radius:4px}.search-launch>span:first-child{font-size:22px;line-height:16px}.search-launch kbd{font-size:9px;margin-left:28px}.icon-button{height:35px;min-width:35px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;border-radius:5px}.icon-button:hover{background:var(--accent-soft)}.menu-toggle{display:none}main{min-height:calc(100vh - 146px)}.view{max-width:1530px;margin:auto;padding:38px 50px 70px}.eyebrow{font-size:9px;letter-spacing:2.8px;color:var(--accent);font-weight:600}.lesson-hero{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-bottom:28px}.lesson-index{font-family:Georgia,serif;display:flex;align-items:center;gap:13px;color:var(--accent);margin-bottom:12px;font-size:11px}.lesson-index:before{content:"";width:30px;height:1px;background:var(--accent)}h1,h2,h3,p{margin-top:0}.lesson-hero h1{font-family:"Noto Serif TC","Songti TC","PMingLiU",serif;font-size:clamp(26px,2.7vw,38px);line-height:1.55;letter-spacing:1px;margin:0 0 10px;font-weight:600}.lesson-en-title{font-family:Georgia,"Times New Roman",serif;color:var(--muted);font-size:18px;line-height:1.5;margin:0;max-width:750px}.hero-number{font-family:Georgia,serif;color:#e1e1d4;font-size:95px;font-weight:400;line-height:1;letter-spacing:-5px;padding:0 14px}.reading-meta{padding:19px 24px;background:#edf0e8;display:flex;gap:18px;align-items:flex-start;border-left:2px solid #9ea98e;margin-bottom:25px;font-family:Georgia,"Noto Serif TC","Songti TC",serif;font-size:14px}.meta-label{font-family:Arial,sans-serif;font-size:9px;letter-spacing:2px;color:var(--accent);white-space:nowrap;margin-top:3px}.reading-meta .scripture-text{display:flex;flex-wrap:wrap;gap:8px 22px}.reading-meta p{margin:0}.reading-meta p+ p{color:var(--muted)}.reader-tools{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--line);margin-bottom:0;position:sticky;top:80px;background:var(--paper);z-index:25;padding-top:4px}.section-tabs{display:flex;gap:30px}.section-tab{padding:13px 0 17px;font-size:13px;position:relative;color:var(--muted)}.section-tab.active{font-weight:700;color:var(--ink)}.section-tab.active:after{content:"";height:2px;background:var(--accent);position:absolute;bottom:-1px;left:0;right:0}.section-tab small{font-family:Georgia,serif;font-size:10px;margin-left:7px;opacity:.5}.segmented{display:flex;background:#eceee6;padding:3px;border-radius:4px;font-size:10px;gap:2px}.segmented button{padding:5px 10px;white-space:nowrap}.segmented .active{background:var(--surface);box-shadow:0 1px 3px #223c3310;border-radius:3px}.reader-tools-right{display:flex;gap:13px;align-items:center}.source-button{font-size:10px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.reading-topline{display:flex;justify-content:space-between;padding:19px 1px 12px;color:var(--muted);font-size:9px;letter-spacing:1.6px}.reading-topline .language-heading{display:grid;grid-template-columns:1fr 1fr;flex:1;gap:40px}.reading-topline .language-heading span:last-child{padding-left:24px}.reading-note{font-size:11px;color:var(--muted);background:var(--accent-soft);padding:9px 14px;border-radius:3px;margin:10px 0}.bilingual-row{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--line);scroll-margin-top:165px}.passage{position:relative;padding:19px 25px 21px 0;line-height:1.9;font-size:var(--body-size);font-family:"Noto Serif TC","Songti TC","PMingLiU",Georgia,serif;white-space:pre-line;overflow-wrap:anywhere;user-select:text;min-width:0}.passage.lang-en{padding-left:25px;padding-right:0;border-left:1px solid var(--line);font-family:Georgia,"Times New Roman",serif;line-height:1.85;font-size:calc(var(--body-size) + 0px)}.passage:empty:before{content:"此段無對應文字";font-family:Arial,sans-serif;font-size:12px;color:var(--muted);font-style:italic}.outline .passage{font-weight:600;font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;line-height:1.85;font-size:calc(var(--body-size) - 2px)}.outline .lang-en{font-family:Arial,sans-serif;font-weight:500;font-size:calc(var(--body-size) - 2px);line-height:1.8}.bilingual-row.heading-row{background:#edeee560}.heading-row .passage{font-weight:700}.bilingual-row.level-1 .passage{padding-inline-start:16px}.bilingual-row.level-2 .passage{padding-inline-start:31px}.bilingual-row.level-3 .passage{padding-inline-start:45px}.bilingual-row.level-4 .passage,.bilingual-row.level-5 .passage{padding-inline-start:57px}.bilingual-row.level-1 .lang-en{padding-inline-start:40px}.bilingual-row.level-2 .lang-en{padding-inline-start:55px}.bilingual-row.level-3 .lang-en{padding-inline-start:68px}.bilingual-row.level-4 .lang-en,.bilingual-row.level-5 .lang-en{padding-inline-start:79px}.single-language .bilingual-row{display:block}.single-language .passage{border:0;padding-left:0}.single-language .reading-topline .language-heading{display:block}.single-language .reading-topline .language-heading span{padding:0}.row-focus{animation:row-flash 2s ease-out}@keyframes row-flash{0%,40%{background:#d9cfa755}100%{background:transparent}}mark.user-highlight{color:inherit;background:var(--yellow);padding:1px 0;border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}mark.user-highlight[data-color=pink]{background:var(--pink)}mark.user-highlight[data-color=blue]{background:var(--blue)}mark.user-highlight[data-color=green]{background:var(--green)}mark.user-highlight[data-color=orange]{background:var(--orange)}mark.search-hit{background:#9b7743;color:white;border-radius:2px;padding:1px 0}.reader-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:30px;gap:15px}.page-step{display:flex;flex-direction:column;max-width:35%;text-align:left;gap:5px}.page-step.next{text-align:right}.page-step small{font-size:9px;letter-spacing:1.5px;color:var(--accent)}.page-step span{font-size:12px}.read-button{border:1px solid var(--line);border-radius:4px;padding:9px 15px;font-size:12px;white-space:nowrap}.read-button.done{background:var(--accent-soft);color:var(--accent);border-color:transparent}.workspace-footer{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding:22px 50px;letter-spacing:1px}.workspace-footer span:first-child{font-family:serif;letter-spacing:3px}.loading-view{text-align:center;padding:140px 20px;color:var(--muted)}.loading-view h1{font-family:serif;font-size:24px;color:var(--ink);font-weight:500}.loader{width:26px;height:26px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:100%;animation:spin 1s linear infinite;margin:0 auto 25px}@keyframes spin{to{transform:rotate(360deg)}}.selection-toolbar{position:fixed;z-index:100;display:flex;gap:7px;align-items:center;padding:9px 12px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.selection-toolbar>span{font-size:10px;color:var(--muted);margin-right:4px}.color-button{width:23px;height:23px;border-radius:100%;background:var(--yellow);border:2px solid #fff8;box-shadow:0 0 0 1px #00000012}.color-button[data-color=pink]{background:var(--pink)}.color-button[data-color=blue]{background:var(--blue)}.color-button[data-color=green]{background:var(--green)}.color-button[data-color=orange]{background:var(--orange)}.toolbar-remove{font-size:10px;border-left:1px solid var(--line);padding-left:10px;color:var(--muted)}dialog{color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:30px;border-radius:12px;box-shadow:var(--shadow);max-height:88vh;max-width:calc(100vw - 24px)}dialog::backdrop{background:#10242c80;backdrop-filter:blur(3px)}.search-dialog{width:760px}.settings-dialog{width:560px}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:22px}.dialog-heading h2{font-family:"Noto Serif TC","Songti TC",serif;font-size:24px;margin:7px 0 0;letter-spacing:1px}.search-field{border-bottom:2px solid var(--accent);display:flex;align-items:center;gap:12px;margin:12px 0 15px}.search-field>span{font-size:30px;color:var(--accent)}.search-field input{width:100%;padding:10px 0;border:none;background:transparent;font-size:18px;color:var(--ink);outline:none}.filter-row{display:flex;gap:9px;flex-wrap:wrap}.filter-row select,.vocabulary-filters select{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:8px 12px;border-radius:4px;font-size:11px;max-width:260px}.result-summary{font-size:11px;color:var(--muted);padding:18px 0 10px}.search-results{overflow:auto;max-height:52vh}.search-result{display:block;width:100%;text-align:left;padding:16px 3px;border-bottom:1px solid var(--line)}.result-location{font-size:10px;color:var(--accent);margin-bottom:7px}.result-snippet{font-family:Georgia,"Songti TC",serif;font-size:14px;line-height:1.8}.search-result:hover{background:var(--paper)}.setting-section{border-top:1px solid var(--line);padding:20px 0 4px}.setting-section h3{font-size:13px;font-weight:600}.setting-section p{font-size:12px;line-height:1.9;color:var(--muted);margin:13px 0}.font-controls{display:flex;align-items:center;gap:20px}.font-controls button{padding:7px 15px;border:1px solid var(--line);border-radius:4px;font-size:16px}.font-controls span{font-size:12px;color:var(--muted)}.button{padding:10px 16px;border-radius:4px;font-size:12px}.button.primary{background:var(--navy);color:white}.button.secondary{border:1px solid var(--line);background:var(--paper)}.button-row{display:flex;gap:10px;flex-wrap:wrap}.source-links a{display:block;font-size:12px;color:var(--accent);margin:8px 0;text-decoration:underline;text-underline-offset:3px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;z-index:200;padding:13px 22px;border-radius:5px;box-shadow:var(--shadow);font-size:12px;max-width:90vw;text-align:center}.page-heading{padding:5px 0 30px}.page-heading h1{font-family:"Noto Serif TC","Songti TC",serif;font-size:34px;font-weight:500;margin:9px 0 10px;letter-spacing:2px}.page-heading p{font-size:13px;color:var(--muted);max-width:720px;line-height:1.9}.stats-band{display:flex;gap:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:0 0 25px}.stat-item{display:flex;align-items:baseline;gap:10px}.stat-item strong{font:32px Georgia,serif;color:var(--accent)}.stat-item span{font-size:11px;color:var(--muted)}.vocabulary-search{background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:12px 17px;border-radius:5px;flex:1;min-width:180px}.vocabulary-search>span{font-size:22px;color:var(--muted)}.vocabulary-search input{background:none;border:none;outline:none;min-width:0;width:100%;color:var(--ink);font-size:13px}.vocabulary-filters{display:flex;flex-wrap:wrap;gap:9px;align-items:stretch;margin-bottom:15px}.vocabulary-filters select{max-width:200px}.vocabulary-count{font-size:11px;color:var(--muted);margin:15px 0}.vocabulary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vocab-card{background:var(--surface);border:1px solid var(--line);padding:22px 23px;border-radius:5px;min-width:0}.vocab-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.vocab-word{font:24px Georgia,"Times New Roman",serif;overflow-wrap:anywhere;margin:0 0 6px}.vocab-zh{font-size:14px;margin:0 0 10px;line-height:1.8}.vocab-star{color:#bcc1b8;font-size:25px;padding:0}.vocab-star.active{color:var(--accent)}.vocab-tag{font-size:9px;color:var(--accent);background:var(--accent-soft);padding:4px 7px;letter-spacing:.5px;border-radius:3px}.vocab-meta{display:flex;gap:12px;align-items:center;font-size:10px;color:var(--muted);margin-top:14px;flex-wrap:wrap}.vocab-context{margin:15px 0 0;padding:12px 0 0;border-top:1px solid var(--line);color:var(--muted);font-family:Georgia,serif;font-size:13px;line-height:1.7}.context-link{margin-top:9px;font-family:Arial,sans-serif;font-size:10px;color:var(--accent);padding:0;text-decoration:underline;text-underline-offset:3px}.pagination{display:flex;justify-content:center;gap:16px;align-items:center;font-size:12px;margin:27px 0 0}.pagination button{padding:8px 12px;border:1px solid var(--line);border-radius:4px}.empty-state{padding:70px 20px;text-align:center;border:1px dashed var(--line);color:var(--muted);font-size:13px;line-height:2}.empty-state strong{font-family:serif;font-size:22px;display:block;color:var(--ink);font-weight:500;margin-bottom:10px}.highlight-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:20px}.highlight-card{padding:20px 23px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:4px;margin-bottom:12px}.highlight-card[data-color=pink]{border-left-color:var(--pink)}.highlight-card[data-color=blue]{border-left-color:var(--blue)}.highlight-card[data-color=green]{border-left-color:var(--green)}.highlight-card[data-color=orange]{border-left-color:var(--orange)}.highlight-text{font-family:Georgia,"Songti TC",serif;font-size:18px;line-height:1.9;margin:10px 0 12px;overflow-wrap:anywhere}.highlight-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;color:var(--muted)}.highlight-actions button{font-size:11px;color:var(--accent)}.delete-highlight{color:var(--muted)!important}.sidebar-shade{display:none}.mobile-language{display:none}
body.dark{--paper:#18262b;--surface:#203239;--ink:#e6e7dd;--muted:#9faea9;--line:#34474b;--accent:#c6a36b;--accent-soft:#35443f;--navy:#0f1e24;--yellow:#746633;--pink:#754b5c;--blue:#375e71;--green:#486440;--orange:#75593e;color-scheme:dark}body.dark .sidebar{background:#132227}body.dark .lesson-link.active{background:#2b3f42}body.dark .reading-meta{background:#263b39}body.dark .hero-number{color:#33474a}body.dark .segmented{background:#203338}body.dark .heading-row{background:#22343a}body.dark .color-button{border-color:#ffffff20}body.dark .vocab-star{color:#687c7d}body.dark .vocab-star.active{color:var(--accent)}
@media(min-width:1600px){.view{padding-left:70px;padding-right:70px}.passage{padding-right:35px}.passage.lang-en{padding-left:35px}}
@media(max-width:1200px){.app-shell{grid-template-columns:235px 1fr}.sidebar{width:235px;padding-inline:16px}.view{padding:30px 30px 55px}.topbar{padding:0 25px}.breadcrumb{gap:8px}.search-launch kbd{display:none}.hero-number{font-size:78px}.lesson-hero h1{font-size:29px}.passage{font-size:calc(var(--body-size) - 1px);padding-right:19px}.passage.lang-en{padding-left:19px}.stats-band{gap:25px}.stat-item{gap:7px}.stat-item strong{font-size:27px}.vocab-card{padding:18px}}
@media(max-width:900px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .25s ease;width:275px}.sidebar.open{transform:translateX(0)}.sidebar-shade.active{display:block;position:fixed;inset:0;background:#10252c70;z-index:35}.workspace{width:100%}.menu-toggle{display:inline-flex}.topbar{height:66px;padding:0 20px;gap:8px}.breadcrumb{font-size:10px}.breadcrumb>span:first-child,.breadcrumb .slash{display:none}.search-launch{padding:6px 9px;font-size:10px}.search-launch>span:first-child{font-size:22px}.icon-button{min-width:32px}.reader-tools{top:66px}.view{padding:30px 28px 50px}.lesson-hero h1{font-size:31px}.lesson-en-title{font-size:18px}.hero-number{font-size:85px}.workspace-footer{padding:20px 28px}.page-heading h1{font-size:31px}.search-dialog{max-height:91vh}}
@media(max-width:620px){.topbar{padding:0 12px}.breadcrumb{font-size:10px;letter-spacing:.2px}.search-launch{border:0;gap:5px;padding:5px}.search-launch>span:nth-child(2){display:none}.search-launch>span:first-child{font-size:28px}.view{padding:25px 19px 40px}.lesson-hero{gap:12px;margin-bottom:23px;grid-template-columns:1fr auto}.hero-number{font-size:64px;padding:0;align-self:start;margin-top:35px;letter-spacing:-4px}.lesson-index{font-size:10px;margin-bottom:9px}.lesson-hero h1{font-size:26px;letter-spacing:.5px;line-height:1.6}.lesson-en-title{font-size:16px;line-height:1.5}.reading-meta{padding:14px 15px;gap:10px;margin-bottom:15px;font-size:13px;flex-direction:column}.meta-label{font-size:8px}.reading-meta .scripture-text{display:block}.reading-meta p+p{margin-top:4px}.reader-tools{gap:8px;flex-wrap:wrap;padding-top:0}.section-tabs{gap:24px}.section-tab{font-size:12px;padding:13px 0}.section-tab small{display:none}.reader-tools-right{gap:4px}.segmented{font-size:9px}.segmented button{padding:5px 8px}.source-button{display:none}.reading-topline{padding:15px 0 7px;letter-spacing:1px;font-size:8px}.reading-topline .language-heading{display:block}.reading-topline .language-heading span:last-child{display:none}.bilingual-row{display:block;padding:7px 0 10px}.passage{padding:10px 0 9px;line-height:1.9;font-size:var(--body-size)}.passage.lang-en{border:0;padding:9px 0 13px;font-size:calc(var(--body-size) - 1px);line-height:1.8;color:#5e6d6e}.dark .passage.lang-en{color:#b8c5c1}.passage.lang-en:before{content:"EN";font-family:Arial,sans-serif;display:block;color:var(--accent);font-size:8px;letter-spacing:1.5px;line-height:1;margin-bottom:9px;font-weight:400}.single-language .passage.lang-en:before{display:none}.outline .passage,.outline .lang-en{font-size:calc(var(--body-size) - 2px)}.bilingual-row.level-1 .passage,.bilingual-row.level-1 .lang-en{padding-inline-start:11px}.bilingual-row.level-2 .passage,.bilingual-row.level-2 .lang-en{padding-inline-start:21px}.bilingual-row.level-3 .passage,.bilingual-row.level-3 .lang-en{padding-inline-start:30px}.bilingual-row.level-4 .passage,.bilingual-row.level-4 .lang-en,.bilingual-row.level-5 .passage,.bilingual-row.level-5 .lang-en{padding-inline-start:39px}.single-language .bilingual-row{padding:0}.reader-bottom{gap:10px;flex-wrap:wrap}.page-step{max-width:31%;font-size:10px}.page-step span{font-size:11px}.read-button{font-size:11px;padding:9px 11px}.page-step small{font-size:8px}.workspace-footer{padding:18px 20px;font-size:8px;gap:20px}.workspace-footer span:last-child{max-width:210px;text-align:right;line-height:1.8}.selection-toolbar{gap:6px;padding:9px 10px}.color-button{width:25px;height:25px}.page-heading{padding-bottom:19px}.page-heading h1{font-size:28px}.page-heading p{font-size:12px}.stats-band{gap:18px;justify-content:space-between;padding:17px 0;flex-wrap:wrap}.stat-item{flex-direction:column;gap:3px}.stat-item strong{font-size:26px}.stat-item span{font-size:9px}.vocabulary-grid{grid-template-columns:1fr}.vocabulary-filters select{flex:1;max-width:100%;min-width:80px;padding:8px 9px;font-size:10px}.vocabulary-search{min-width:100%;padding:9px 13px}.vocab-card{padding:20px}.vocab-word{font-size:25px}.highlight-filters select{max-width:100%;flex:1;font-size:11px}.highlight-card{padding:17px}.highlight-text{font-size:17px}dialog{padding:22px 18px}.dialog-heading h2{font-size:22px}.search-field input{font-size:16px}.filter-row select{max-width:100%;flex:1}.search-results{max-height:54vh}.search-result{padding:14px 0}.result-snippet{font-size:13px}.search-dialog{width:calc(100% - 20px)}.reading-note{font-size:10px;padding:9px 11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.passage,.passage.lang-en,.outline .passage,.outline .lang-en{line-height:var(--body-line-height,2.05)}.toolbar-copy{font-size:10px;color:var(--muted);border-right:1px solid var(--line);padding-right:9px;margin-right:2px}.mobile-nav{display:none}#line-height{width:200px;accent-color:var(--accent)}
@media(max-width:620px){.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:32;background:var(--surface);border-top:1px solid var(--line);padding:7px 10px calc(7px + env(safe-area-inset-bottom));justify-content:space-around;transition:transform .22s}.mobile-nav.nav-hidden{transform:translateY(110%)}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:65px;font-family:Georgia,serif;font-size:21px;color:var(--muted)}.mobile-nav button span{font-size:9px;font-family:Arial,sans-serif}.mobile-nav button.active{color:var(--accent)}.workspace-footer{padding-bottom:85px}.toast{bottom:85px}.selection-toolbar{z-index:110;max-width:calc(100vw - 14px);gap:5px}.selection-toolbar>span{display:none}.toolbar-copy{padding-right:6px}.color-button{width:23px;height:23px}.toolbar-remove{padding-left:7px}}
#content-tools .secondary{padding:9px 12px;border:1px solid var(--line);border-radius:4px;font-size:11px;margin:0 7px 7px 0;background:var(--paper)}

.source-notes b{font-size:11px;font-weight:600}.source-notes ul{padding-left:17px;margin:5px 0 0}.source-notes li{margin:3px 0}.alignment-note{grid-column:1 / -1;font-family:Arial,"Microsoft JhengHei",sans-serif;font-size:10px;font-weight:400;color:var(--muted);padding:7px 12px;background:var(--accent-soft);border-radius:3px;margin:0 0 10px;line-height:1.8}.outline .passage,.outline .passage.lang-en{font-family:Arial,"Noto Sans TC","Microsoft JhengHei",sans-serif;font-weight:600}.outline .heading-row .passage{font-weight:700}
/* Inline vocabulary preserves the original text nodes and highlight offsets. */
.dictionary-term{cursor:pointer;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:color-mix(in srgb,currentColor 38%,transparent);text-decoration-thickness:1px;text-underline-offset:.2em;border-radius:2px;transition:background-color .15s,color .15s}
.dictionary-term:hover,.dictionary-term:focus-visible{background:rgba(181,145,83,.13);text-decoration-style:solid;text-decoration-color:currentColor;outline:2px solid transparent}
.dictionary-term:focus-visible{outline-color:var(--accent,#a88854);outline-offset:3px}
.dictionary-term mark{cursor:pointer}
.dictionary-dialog{width:min(540px,calc(100vw - 32px));max-height:min(82dvh,760px);padding:30px;border:1px solid var(--line,#ddd);border-radius:14px;background:var(--paper,#f7f5ef);color:var(--ink,#172d37);box-shadow:0 24px 90px rgba(15,35,42,.2);overflow:auto;overscroll-behavior:contain}
.dictionary-dialog::backdrop{background:rgba(13,29,37,.22);backdrop-filter:blur(2px)}
.dictionary-close{position:absolute;top:12px;right:12px}
.dictionary-definition h2{font-family:Georgia,'Times New Roman',serif;font-size:32px;line-height:1.25;margin:10px 0 6px;overflow-wrap:anywhere;padding-right:20px}
.dictionary-lemma{font-size:12px;color:var(--muted,#747870);margin:6px 0 12px}.dictionary-lemma span{font-size:15px;margin-left:6px}
.dictionary-meaning{font-size:21px;line-height:1.65;margin:8px 0 15px;font-weight:600}
.dictionary-phrase{padding:14px 16px;border-left:2px solid var(--accent,#a88854);background:rgba(167,139,87,.07);margin-top:20px}.dictionary-phrase>span{display:block;font-size:11px;color:var(--muted,#747870);margin-bottom:6px}.dictionary-phrase strong{display:block;font-family:Georgia,serif;font-size:19px}.dictionary-phrase p{margin:5px 0;line-height:1.6}
.dictionary-popup-examples{margin-top:22px;padding-top:18px;border-top:1px solid var(--line,#ddd)}.dictionary-popup-examples h3{font-size:13px;margin:0 0 16px;font-weight:600}
.entry-example+.entry-example{margin-top:20px;padding-top:15px;border-top:1px solid var(--line,#ddd)}.example-source{font-size:10px;line-height:1.7;letter-spacing:.04em;color:var(--muted,#747870);margin-bottom:7px}.example-zh{font-size:13px;line-height:1.8;margin:6px 0 8px;color:var(--muted,#747870)}.entry-example .vocab-context{margin:5px 0 9px;line-height:1.75}
.dictionary-hint{font-size:12px;line-height:1.7;color:var(--muted,#747870);margin:15px 0 0}
.dictionary-popup-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;position:sticky;bottom:-30px;background:var(--paper,#f7f5ef);padding:16px 0 4px;border-top:1px solid var(--line,#ddd)}
.more-examples{margin-top:15px;padding-top:12px;border-top:1px solid var(--line,#ddd)}.more-examples summary{cursor:pointer;font-size:12px;line-height:1.8;color:var(--accent,#a88854);margin-bottom:14px}.more-examples[open] summary{margin-bottom:20px}
.vocab-card.dictionary-focused{outline:2px solid var(--accent,#a88854);outline-offset:3px;box-shadow:0 10px 28px rgba(120,99,55,.09)}
.dictionary-return{border:0;background:transparent;color:var(--muted,#747870);font:inherit;font-size:12px;cursor:pointer;padding:0 0 22px}.dictionary-return:hover{color:var(--ink,#172d37)}
@media(max-width:640px){.dictionary-dialog{width:calc(100vw - 20px);max-height:82dvh;padding:24px 20px;border-radius:16px 16px 10px 10px;margin:auto auto max(10px,env(safe-area-inset-bottom))}.dictionary-definition h2{font-size:29px}.dictionary-meaning{font-size:20px}.dictionary-popup-actions{bottom:-24px;padding-bottom:8px}.dictionary-popup-actions .button{flex:1;min-height:43px;font-size:12px}.dictionary-term{text-underline-offset:.18em}}
.example-note{font-size:11px;color:var(--muted,#747870);line-height:1.65;margin:7px 0}.selection-toolbar #selection-dictionary{font-size:11px;white-space:nowrap}
.excerpts .passage.lang-zh:empty::before{content:'中文原版未收錄此段；請參閱此段的來源說明。';display:block;font-family:var(--sans,system-ui,sans-serif);font-size:13px;line-height:1.8;color:var(--muted,#72766d);font-weight:400}
.excerpts .passage.lang-en:empty::before{content:'中文原版補充內容（英文原版無此段）';display:block;font-family:var(--sans,system-ui,sans-serif);font-size:13px;line-height:1.8;color:var(--muted,#72766d);font-weight:400}
