/* Specus Fiction: one black-ink engraving system, 17 October 2026. */
.fiction-guide{--paper:#fff;--ink:#111;--muted:#555;--rule:#d6d6d6;--accent:#111;background:var(--paper);color:var(--ink)}
.guide-wrap{width:min(1060px,88%);margin-inline:auto}
.guide-symbols{position:absolute;width:0;height:0;overflow:hidden}
.guide-intro{padding-top:64px;padding-bottom:44px;max-width:1060px}
.guide-kicker{font:11px/1.5 var(--mono);color:var(--muted);margin:0 0 28px}
.fiction-guide h1{font:500 clamp(36px,5.2vw,64px)/1.12 var(--mono);letter-spacing:-.055em;margin:0 0 32px}
.guide-intro>p:not(.guide-kicker):not(.guide-reading){font:19px/1.8 var(--reading);max-width:730px;margin:0 0 20px}
.guide-intro>p.guide-lead{font-size:22px!important;line-height:1.65!important}
.guide-start{display:inline-flex;gap:24px;align-items:center;font:12px/1.6 var(--mono);margin:10px 0 20px;padding-bottom:5px;border-bottom:1px solid var(--ink);text-decoration:none}
.guide-start span{color:var(--paper);background:var(--ink);padding:2px 7px}
.guide-reading{font:11px/1.6 var(--mono);color:var(--muted);margin:0}
.guide-toc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;padding-bottom:64px}
.guide-toc a{display:flex;gap:14px;border-top:1px solid var(--rule);padding:12px 0;text-decoration:none;font:11px/1.7 var(--mono)}
.guide-toc a:hover{text-decoration:underline}.guide-toc span{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}
.guide-section{border-top:1px solid var(--rule);padding:44px 0 64px;display:grid;grid-template-columns:240px minmax(0,1fr);column-gap:58px;row-gap:32px;scroll-margin-top:42px}
.guide-section-head{min-width:0}.guide-number{display:inline-block;font:10px/1.6 var(--mono);color:var(--muted);margin-bottom:15px}
.fiction-guide h2{font:500 clamp(23px,2.6vw,32px)/1.3 var(--mono);letter-spacing:-.035em;margin:0}
.guide-prose{min-width:0}.guide-prose p{font:18px/1.8 var(--reading);margin:0 0 19px}.guide-prose p:last-child{margin-bottom:0}
.guide-diagram,.guide-scene,.guide-cards{grid-column:1/-1;min-width:0;margin:4px 0 0}
.guide-diagram{background:var(--paper);border:1px solid var(--rule);padding:24px}
.guide-drawing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.guide-drawing{min-width:0}.guide-drawing svg{display:block;width:100%;height:auto;max-height:245px;color:#111}
.guide-drawing h3{font:500 15px/1.5 var(--mono);margin:13px 0 8px;letter-spacing:-.02em}
.guide-drawing p{font:15px/1.65 var(--reading);margin:0}.guide-drawing p:empty{display:none}
.guide-pair .guide-drawing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-four .guide-drawing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.guide-four h3{font-size:12px}.guide-single .guide-drawing-grid{grid-template-columns:1fr}.guide-single .guide-drawing{text-align:center}.guide-single svg{max-height:290px;max-width:640px;margin:auto}
.fiction-guide .guide-diagram figcaption{font:12px/1.75 var(--reading);color:var(--muted);border-top:1px solid var(--rule);padding:17px 0 0;margin-top:24px;max-width:100%}
.guide-scene a{display:block}.guide-scene img{display:block;width:100%;height:auto}
.fiction-guide .guide-scene figcaption{display:grid;grid-template-columns:1fr;gap:9px;padding:15px 0 0;border:0}
.guide-scene figcaption p{font:14px/1.75 var(--reading);color:var(--ink);margin:0;max-width:800px}.guide-scene figcaption small{font:10px/1.7 var(--mono);color:var(--muted)}
.guide-scene-small{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;max-width:820px;margin-left:auto;margin-right:auto;width:100%}
.guide-scene-small img{mix-blend-mode:multiply}.fiction-guide .guide-scene-small figcaption{padding:0}
.guide-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}
.guide-cards>div{border-top:1px solid var(--rule);padding-top:17px;min-width:0}.guide-card-number{font:10px var(--mono);color:var(--muted)}
.guide-cards h3{font:500 20px/1.4 var(--mono);letter-spacing:-.035em;margin:12px 0}.guide-cards p{font:16px/1.75 var(--reading);margin:0 0 12px}.guide-cards .guide-cost{font-size:14px;color:var(--muted);border-left:2px solid #999;padding-left:14px}.guide-cost span{font-weight:600}
.guide-about{background:#111;color:var(--paper);padding:52px 0 48px}.guide-about h2{margin-bottom:24px}.guide-about p{font:17px/1.8 var(--reading);max-width:760px;margin:0 0 18px}.guide-links{display:flex;flex-wrap:wrap;gap:18px 30px;margin:30px 0 36px}.guide-links a{font:11px/1.7 var(--mono);color:var(--paper)}.guide-about p.guide-source{font:11px/1.8 var(--mono);color:#bbb;margin:12px 0 0}
.d-accent{stroke:#111;stroke-width:3.5}.d-muted{stroke:#111;stroke-width:1.1}.d-ghost{stroke:#111;stroke-dasharray:6 5;stroke-width:2}
@media(max-width:900px){.guide-section{grid-template-columns:190px minmax(0,1fr);gap:28px}.guide-toc{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-four .guide-drawing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-four h3{font-size:14px}}
@media(max-width:650px){.guide-wrap{width:88%}.guide-intro{padding-top:38px;padding-bottom:32px}.guide-kicker{font-size:10px;margin-bottom:22px}.fiction-guide h1{font-size:36px;overflow-wrap:anywhere;margin-bottom:24px}.guide-intro>p.guide-lead{font-size:19px!important}.guide-intro>p:not(.guide-kicker):not(.guide-reading){font-size:17px;line-height:1.75}.guide-toc{gap:0 18px;padding-bottom:38px}.guide-toc a{font-size:10px;gap:9px}.guide-section{display:block;padding:29px 0 40px;scroll-margin-top:26px}.guide-section-head{margin-bottom:22px}.guide-number{margin-bottom:10px}.fiction-guide h2{font-size:25px}.guide-prose p{font-size:17px;line-height:1.8}.guide-diagram,.guide-scene,.guide-cards{margin-top:28px}.guide-diagram{padding:18px}.guide-drawing-grid,.guide-pair .guide-drawing-grid{grid-template-columns:1fr;gap:27px}.guide-drawing svg{max-width:320px;max-height:210px;margin-inline:auto}.guide-drawing h3{font-size:15px;margin-top:9px}.guide-drawing p{font-size:15px}.guide-drawing:not(:last-child){border-bottom:1px solid var(--rule);padding-bottom:25px}.guide-four .guide-drawing:not(:last-child){border:0;padding-bottom:0}.guide-four .guide-drawing-grid{gap:12px 20px}.guide-four h3{font-size:11px}.guide-four .guide-drawing svg{min-height:84px}.guide-scene-small{display:block;max-width:440px}.guide-scene-small figcaption{margin-top:14px}.guide-cards{grid-template-columns:1fr;gap:20px}.guide-cards h3{font-size:19px}.guide-about{padding-top:36px}.guide-links{display:grid;gap:18px}.guide-scene figcaption p{font-size:13px}.guide-scene figcaption small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.fiction-guide{scroll-behavior:auto}}
@media print{.guide-toc,.guide-start,.guide-reading,.guide-links{display:none}.guide-wrap{width:100%}.guide-section{display:block;padding:24px 0;break-inside:auto}.guide-section-head{margin-bottom:16px}.guide-prose p{font-size:11pt}.guide-diagram,.guide-scene{break-inside:avoid;margin-top:22px}.guide-about{background:white;color:black}.guide-about p.guide-source{color:#444}.guide-drawing-grid{grid-template-columns:repeat(3,1fr)!important}.guide-pair .guide-drawing-grid{grid-template-columns:repeat(2,1fr)!important}.guide-single .guide-drawing-grid{grid-template-columns:1fr!important}}

/* Characters and vocabulary use the same line, white ground and print scale. */
.fiction-guide [hidden]{display:none!important}
.fiction-guide :is(a,button,input):focus-visible{outline:2px solid currentColor;outline-offset:5px}
.guide-utility{display:flex;flex-wrap:wrap;gap:16px 36px;padding:0 0 26px;font:12px/1.7 var(--mono)}
.guide-utility a{text-decoration:underline;text-underline-offset:5px}
.guide-reference{padding-top:42px;padding-bottom:54px;border-top:1px solid var(--rule);scroll-margin-top:32px}
.reference-heading{display:grid;grid-template-columns:240px minmax(0,1fr);gap:58px;margin-bottom:32px}
.reference-heading>p{font:17px/1.8 var(--reading);margin:0;max-width:710px}
.character-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 34px}
.character{min-width:0;margin:0;scroll-margin-top:32px}
.character-image{display:block;max-width:300px;margin:0 auto 24px;background:white}
.character-image img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.fiction-guide .character figcaption{padding:0;border:0;max-width:none;margin:0;color:var(--ink)}
.character h3{font:500 22px/1.35 var(--mono);letter-spacing:-.035em;margin:0 0 10px}
.character p{font:15px/1.75 var(--reading);margin:0 0 12px;color:var(--ink)}
.character p.character-role{font:11px/1.65 var(--mono);color:var(--muted);min-height:36px}
.character p.character-stake{color:var(--muted)}
.reference-chapter{display:inline-block;font:11px/1.7 var(--mono);text-decoration:underline;text-underline-offset:4px;margin-top:5px;color:inherit}
.reference-note{font:11px/1.8 var(--mono);color:var(--muted);margin:32px 0 0;max-width:720px}
.fiction-guide .term-link{color:inherit;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:#777;text-underline-offset:4px;text-decoration-thickness:1px}
.fiction-guide .term-link:hover{text-decoration-style:solid;text-decoration-color:currentColor}
.quick-reference{margin-bottom:34px}
.quick-terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 30px;list-style:none;padding:0;margin:0 0 24px}
.quick-terms li{display:flex;align-items:center;gap:14px;min-width:0}
.term-icon{flex-shrink:0;width:58px;height:58px;color:#111;display:block}
.quick-terms .term-link{font:500 15px/1.5 var(--mono)}
.quick-terms li span{display:block;font:12px/1.6 var(--reading);color:var(--muted);margin-top:4px}
.guide-example{grid-column:1/-1;border-top:1px solid var(--rule);padding-top:24px}
.guide-example h3{font:500 21px/1.5 var(--mono);margin:0 0 20px}
.guide-example dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}
.guide-example dt{font:11px/1.7 var(--mono);color:var(--muted);margin-bottom:10px}
.guide-example dd{font:17px/1.7 var(--reading);margin:0}
.guide-example>p{font:14px/1.75 var(--reading);margin:24px 0 0;max-width:760px;color:var(--muted)}
.vocabulary-search{max-width:500px;margin:24px 0 40px}
.vocabulary-search label{display:block;font:11px/1.7 var(--mono);margin-bottom:8px}
.vocabulary-search input{box-sizing:border-box;border:1px solid #aaa;border-radius:0;padding:13px 16px;background:#fff;color:#111;font:16px/1.6 var(--reading);width:100%;appearance:none}
.vocabulary-group{margin:36px 0 0}
.vocabulary-group>h3{font:500 17px/1.6 var(--mono);margin:0 0 18px}
.vocabulary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px;margin:0}
.vocabulary-entry{border-top:1px solid var(--rule);padding:20px 0 28px;scroll-margin-top:32px;min-width:0}
.vocabulary-entry:target{outline:2px solid #111;outline-offset:8px}
.vocabulary-entry dt{display:flex;gap:16px;align-items:center;font:500 19px/1.4 var(--mono);margin-bottom:14px;letter-spacing:-.025em}
.vocabulary-entry dd{margin:0}
.vocabulary-entry p{font:16px/1.75 var(--reading);margin:0 0 12px}
.fiction-guide .term-example{font:14px/1.75 var(--reading);color:var(--muted);margin:15px 0}
.term-example>span:first-child{font-weight:600}
.vocabulary-empty{font:16px/1.7 var(--reading)}
.term-dialog{box-sizing:border-box;width:min(520px,calc(100% - 32px));max-height:85dvh;padding:28px 32px 36px;border:1px solid #111;background:white;color:#111;overflow:auto}
.term-dialog::backdrop{background:rgb(0 0 0 / .4)}
.term-dialog form{display:flex;justify-content:flex-end;margin:0 0 8px}
.term-close{border:0;border-bottom:1px solid #999;background:none;border-radius:0;color:#111;cursor:pointer;padding:6px 0;font:12px/1.5 var(--mono)}
.term-dialog-icon .term-icon{width:85px;height:85px;margin-bottom:14px}
.term-dialog h2{font-size:27px;line-height:1.3;margin-bottom:20px}
.term-dialog-definition{font:18px/1.8 var(--reading);margin:0 0 20px}
.term-dialog a{color:inherit}
@media(max-width:900px){.reference-heading{grid-template-columns:190px minmax(0,1fr);gap:28px}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 30px}.quick-terms{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.guide-reference{padding:30px 0 38px}.reference-heading{display:block;margin-bottom:26px}.reference-heading h2{margin-bottom:18px}.reference-heading>p{font-size:16px}.guide-utility{font-size:11px;gap:14px 24px}.character-grid{grid-template-columns:1fr;gap:40px}.character-image{max-width:290px;margin-bottom:20px}.character h3{font-size:23px}.character p{font-size:16px}.character p.character-role{min-height:0;font-size:11px}.reference-note{font-size:10px}.quick-terms{gap:20px 18px}.quick-terms li{display:block}.quick-terms .term-icon{width:52px;height:52px;margin-bottom:8px}.quick-terms .term-link{font-size:13px}.quick-terms li span{font-size:12px}.vocabulary-list{grid-template-columns:1fr}.vocabulary-entry dt{font-size:19px}.vocabulary-entry p{font-size:16px}.guide-example{margin-top:28px}.guide-example dl{grid-template-columns:1fr;gap:20px}.guide-example dd{font-size:16px}.term-dialog{padding:20px 24px 28px}.term-dialog h2{font-size:25px}}
@media print{.guide-utility,.vocabulary-search,.term-dialog{display:none}.character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.character{break-inside:avoid}.character p,.vocabulary-entry p{font-size:10pt}.character-image{max-width:160px}.vocabulary-entry{break-inside:avoid}.term-link{text-decoration:none!important}.vocabulary-entry[hidden],.vocabulary-group[hidden]{display:block!important}}
