/* Public reading view of the maintained patent editor. */
.readerTextSection{padding:28px;border-top:1px solid var(--line);scroll-margin-top:24px}
.readerTextSection+.readerPair{border-top:1px solid var(--line)}
.readerTextSection .editable>div>p:first-child,.readerPair .editable>div>p:first-child{margin-top:0}
.readerLive table{width:100%;border-collapse:collapse;table-layout:auto;margin:20px 0;font-size:16px;line-height:1.7}
.readerLive caption{text-align:left;font-weight:600;padding-bottom:12px;color:var(--ink)}
.readerLive th,.readerLive td{padding:12px;text-align:left;vertical-align:top;border:1px solid var(--line);overflow-wrap:anywhere}
.readerLive thead th{background:var(--wash,var(--paper));font-weight:600}
@media(max-width:760px){.readerTextSection{padding:22px 20px}.readerLive table{font-size:15px}.readerLive th,.readerLive td{padding:10px 6px}}
.readerLive{--reader-heading-background:var(--wash,var(--paper))}
html,body{background:var(--wash,var(--paper));scroll-behavior:smooth}
body{padding:36px 20px 28px}
.toolbar,.figureControls{display:none!important}
.metaBar{--reader-meta-font-size:15px;grid-template-columns:232px minmax(0,1fr) minmax(340px,1.25fr);margin-bottom:16px;border:1px solid var(--line);border-radius:16px;box-shadow:0 5px 20px #172f4d10}
.metaField{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;align-content:start;padding:3px 8px}
.metaField:nth-child(-n+2){border-bottom:1px solid var(--line)}
.metaField:nth-child(2){grid-column:span 2;border-right:0}
.metaLabel{font-size:var(--reader-meta-font-size);font-weight:600;line-height:1.35;margin-bottom:0}
.metaValue,#jurisdictions{min-width:0;font-size:var(--reader-meta-font-size);line-height:1.35;overflow-wrap:anywhere}
.page{width:100%;max-width:1120px;min-height:0;padding:0;box-shadow:none;background:transparent}
.hero{margin:0 0 20px;border:1px solid var(--line);border-radius:16px;padding:28px 30px;box-shadow:0 5px 20px #172f4d10}
#heading{margin:0;font-family:"Microsoft JhengHei","Noto Sans TC",sans-serif;font-size:clamp(26px,3.2vw,38px);line-height:1.4;letter-spacing:.01em;color:var(--ink)}
.readerTitle{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.readerTitle #heading{max-width:100%}
.metaValue .readerPatentBadge{display:inline-block;max-width:100%;padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:var(--soft,var(--paper));color:var(--accent,var(--teal));font:inherit;text-decoration:none;overflow-wrap:anywhere}
.metaValue .readerPatentBadge:hover{background:none;color:var(--accent-hover,var(--ink));text-decoration:none}
.readerPatentBadge:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
@media(max-width:760px){.metaField:last-child{grid-column:1/-1}}
.sectionTitle{font-size:20px;line-height:1.6;margin-bottom:12px}
.readerSectionTitle{font-size:24px;background:var(--reader-heading-background);color:var(--ink);border-left:4px solid var(--teal);border-radius:0 8px 8px 0;padding:10px 16px;margin:0 0 20px}
.editable{font-size:17px;line-height:1.95;overflow-wrap:anywhere}
.editable p+p{margin-top:1.25em}
body.published-reader .workspace{display:block;box-shadow:none;overflow:visible}
.readerSectionHeader{padding:0}
.readerScopeNote{flex:1 1 30rem;min-width:0;margin:0;padding:0;border:0;background:transparent;color:var(--muted);font-size:14px;font-weight:500;line-height:1.7;overflow-wrap:anywhere}
.readerChapter{margin:0 0 28px;padding:0;border:1px solid var(--line);border-radius:16px;background:#fff}
.readerChapter .readerSectionTitle{margin:0;padding:14px 28px;border:0;border-bottom:1px solid var(--line);border-radius:15px 15px 0 0;background:var(--reader-heading-background)}
.readerChapterBody{padding:24px 28px 28px}
.readerChapterBody .editable>p:first-child{margin-top:0}
.readerChapterBody .editable>p:last-child{margin-bottom:0}
.readerPair{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:36px;align-items:center;scroll-margin:20px;padding:28px;margin:0;border:0;border-radius:0;background:transparent}
.readerPair+.readerPair{border-top:1px solid var(--line)}
.readerPair .figurePane{border:0}
.textPane{padding:0;min-width:0;border:0}
.figurePane{padding:0;min-width:0}
.readerPassageTitle{font-size:21px;line-height:1.5;color:var(--ink);margin:0 0 18px}
.readerOverviewDescription{margin:0;font-size:17px;line-height:1.95;color:var(--text,var(--ink));overflow-wrap:anywhere}
.readerOverviewDescription p{margin:0 0 16px}
.readerIllustration{width:fit-content;max-width:100%;margin:auto;text-align:left}
.readerIllustration img{display:block;width:auto;height:auto;max-width:100%;max-height:320px;object-fit:contain;margin:auto}
.readerIllustration .image-media{display:inline-block;width:auto;max-width:100%}
.readerIllustration figcaption{width:0;min-width:100%;margin:12px 0 0;color:var(--muted);font-size:16px;line-height:1.7;text-align:center}
.readerPair .figureMedia{position:relative;width:100%!important;max-width:min(440px,calc(320px * var(--figure-ratio,1)));margin:auto;transition:none}
.readerPair .figureMedia.caption-side{width:var(--caption-group-width)!important}
.readerPair .figureSvg{cursor:default}
/* The same document remains readable when scripting is unavailable. */
.readerLive:not(.readerEnhanced) .ref{cursor:inherit}
.readerLive:not(.readerEnhanced) .hotspot{pointer-events:none;cursor:inherit}
.readerIllustration{width:min(var(--application-width),calc(var(--application-height-limit,320px) * var(--application-ratio)))}
.readerIllustration .image-media{display:inline-block;width:100%}
.readerIllustration img{width:100%;height:auto}
@media(max-width:760px){.readerIllustration{--application-height-limit:240px}}
.readerPair .figureCard{position:relative}
:is(.readerPair,.readerComparisonSection) .figureImage{position:relative;width:100%;padding-top:0}
:is(.readerPair,.readerComparisonSection) .figureCaption{position:relative}
.readerCaptionText{display:block}
.readerApplication{margin-top:28px}
.readerApplicationBody{padding:28px}
@media(max-width:650px){.readerApplicationBody{padding:22px 20px}}
.readerReferences{padding:0 28px 24px;font-size:14px;line-height:1.8;color:var(--muted)}
.readerReferences h3{font-size:15px;margin:0 0 8px}
.readerReferences p{margin:4px 0}
.readerReferences a{color:var(--teal)}
.figureSvg{max-height:none;height:auto}
.readerPair .figureSvg{max-height:none}
.noteCard{margin-top:24px}
.noteBody{font-size:16px;line-height:1.85;overflow-wrap:anywhere}
.noteBody table{width:100%;border-collapse:collapse;margin:20px 0}
.noteBody th,.noteBody td{padding:14px 16px;text-align:left;vertical-align:top;border:1px solid var(--line)}
.noteBody th{background:var(--soft,var(--paper))}
.noteBody td:first-child{width:135px;font-weight:600}
.noteBody a{color:var(--teal)}
.figureCard{padding:0}
.figureCard[hidden]{display:none!important}
.figureCard+.figureCard{padding-top:22px}
.figureCaption{height:auto;padding:12px 0 0;font-size:16px;line-height:1.7;white-space:normal;overflow:visible;text-overflow:clip;text-align:center}
.hotspot:focus{outline:none;fill:#ffd84d;fill-opacity:.65;stroke:var(--teal);stroke-width:2}
.readerFooter{max-width:1120px;margin:22px auto 0;padding:0 4px;color:var(--muted);font-size:18px;line-height:1.8}
.readerFooter a{color:var(--teal);text-underline-offset:3px}
/* Stack technical passages before the text column becomes cramped on portrait tablets. */
@media screen and (max-width:960px){.readerPair{grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}}
@media(max-width:760px){body{padding:20px 12px}.metaBar{grid-template-columns:1fr 1fr;margin-bottom:14px}.metaField{padding:12px;border-bottom:1px solid var(--line)}.metaField:first-child{grid-column:1/-1}.hero{padding:22px 20px;margin-bottom:14px}.readerPair{grid-template-columns:1fr}.textPane{padding:24px 20px;border-right:0;border-bottom:1px solid var(--line)}.readerPair .figurePane{border-left:0}.figurePane{padding:22px 18px 12px}.editable{font-size:16px;line-height:1.95}.sectionTitle{font-size:19px}.figureCaption{font-size:16px}.readerFooter{padding:0 8px}#terminal-translation .figureSvg,#near-chip-storage .figureSvg{max-height:none}}
@media(max-width:760px){.readerPair .figureSvg{max-height:none}.readerSectionHeader{padding:22px 20px 0}.noteBody{font-size:15px}.noteBody th,.noteBody td{padding:10px 8px}.noteBody td:first-child{width:66px}}
@media print{body{padding:0}.page{width:100%;max-width:none}.hero,.workspace{box-shadow:none}.readerFooter{display:none}.readerPair{grid-template-columns:1fr 1fr}.editable{font-size:13px}.sectionTitle{font-size:16px}}
@media(max-width:760px){.readerSectionHeader{padding:0}.readerPair{grid-template-columns:1fr;gap:24px;padding:22px 20px}.readerPair .textPane,.readerPair .figurePane{padding:0;border:0}.readerPassageTitle{font-size:19px}.readerIllustration img{max-height:240px}.readerPair .figureMedia{max-width:min(440px,calc(240px * var(--figure-ratio,1)))}.readerOverviewDescription{font-size:16px}.readerReferences{padding-inline:20px}}
@media(max-width:760px){.readerChapter .readerSectionTitle{font-size:22px;padding:12px 20px}.readerChapterBody{padding:20px}.readerApplicationBody{padding:22px 20px}}
.readerChapter .readerSectionHeader--annotated{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 20px;padding:14px 28px;background:var(--reader-heading-background);border-bottom:1px solid var(--line);border-radius:15px 15px 0 0}
.readerChapter .readerSectionHeader--annotated .readerSectionTitle{flex:none;margin:0;padding:0;border:0;background:transparent;border-radius:0}
@media(max-width:760px){.readerChapter .readerSectionHeader--annotated{padding:12px 20px}}
/* Measured glyph size decides the image width; compact mode is explicitly a preview. */
.readerLive .readerPair{grid-template-columns:minmax(0,1fr)}
.readerLive .readerPair.readability-columns{grid-template-columns:minmax(var(--minimum-text-width,320px),1fr) var(--figure-column-width);gap:var(--text-figure-gap,36px)}
.readerLive .readerPair .figureMedia{max-width:var(--readable-display-width,min(var(--inline-max-width,560px),calc(var(--inline-max-height,420px) * var(--figure-ratio,1))))}
@media(max-width:650px){.readerLive .readerPair .figureMedia{max-width:var(--readable-display-width,min(var(--inline-max-width,560px),calc(var(--mobile-max-height,240px) * var(--figure-ratio,1))))}}

.readerApplicationImages{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;min-width:0}
/* Explicit source/product comparison: captions stay with their own full-width column. */
.readerComparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin:20px 0 24px}
.readerComparisonColumn{min-width:0}
.readerComparisonFigure{margin:0;min-width:0}
.readerComparisonFigure .image-media{display:block;width:100%}
.readerComparisonFigure img{display:block;width:100%;height:300px;object-fit:contain}
.readerComparisonFigure figcaption{margin:14px 0 0;padding:12px 14px;border:0;background:var(--wash,var(--paper));font-family:var(--editorial-sans);font-size:var(--type-caption,16px);font-weight:400;line-height:1.8;text-align:left;color:var(--text)}
@media(max-width:720px){.readerComparison{grid-template-columns:minmax(0,1fr);gap:24px}.readerComparisonFigure img{height:220px}}
.readerComparisonSection{--comparison-image-height:300px}
.readerComparisonSection .readerComparisonImage{height:var(--comparison-image-height);display:flex;align-items:center;justify-content:center}
.readerComparisonSection .readerComparisonImage>.image-media{padding-top:0}
.readerComparisonSection .figureImage{width:var(--readable-display-width,min(100%,calc(var(--comparison-image-height) * var(--figure-ratio))))}
.readerComparisonSection .figureSvg{display:block;width:100%;height:auto;max-height:none}
.readerComparisonSection .textPane{padding:0;border:0}
.readerComparisonSection :is(.readerComparisonApplication,.readerComparisonTechnology){margin-top:20px}
.readerComparisonColumn .textPane>p:first-child{margin-top:0}
.readerComparisonColumn .textPane p:last-child{margin-bottom:0}
.readerComparisonSection figcaption{white-space:normal}
@media(max-width:720px){.readerComparisonSection{--comparison-image-height:220px}}

/* Compact bibliography keeps each label above its complete value. */
@media(max-width:900px){.readerLive .metaBar{grid-template-columns:minmax(0,1fr)}.readerLive .metaField{grid-column:auto;grid-template-columns:minmax(0,1fr);gap:2px;padding:3px 8px;border-right:0;border-bottom:1px solid var(--line)}.readerLive .metaField:last-child{border-bottom:0}}

/* Prose, figures and metadata share the full patent reading width. */
.readerLive :is(.readerChapterBody>.editable,.readerTextSection:not(.readerComparisonSection)>.editable,.readerPair>.textPane,.readerApplicationBody>.textPane,.noteBody,.readerReferences,.readerAuthor){width:100%;max-width:1082px;margin-inline:auto}
.readerLive :is(.solutionCard>.readerSectionHeader,.readerTextSection:not(.readerComparisonSection)>.readerPassageTitle,.readerApplication>.readerSectionTitle,.noteCard .sectionTitle){max-width:1082px;margin-inline:auto}
