.literature-quest { --lq-ink:var(--kt-294f42); --lq-muted:var(--kt-607368); --lq-green:var(--ks-3d6b4d); --lq-line:var(--ks-dce5d9); --lq-mint:var(--ks-e8f1e6); --lq-coral:var(--ks-f6e3d7); --lq-paper:var(--ks-fffef9); color:var(--lq-ink); max-width:1280px; margin:0 auto; padding-bottom:20px; }
.literature-quest * { box-sizing:border-box; }
.literature-quest a { color:inherit; }
.literature-quest a:focus-visible,.literature-quest button:focus-visible,.literature-quest summary:focus-visible,.literature-quest input:focus-visible,.literature-quest textarea:focus-visible { outline:3px solid var(--ks-ae653e); outline-offset:4px; }
.literature-quest h1,.literature-quest h2,.literature-quest h3,.lq-route-number,.lq-progress-visual>span { font-family:KahierNunito,Roboto,sans-serif; color:var(--lq-ink); }
.lq-icon { width:22px; height:22px; flex-shrink:0; vertical-align:middle; }
.lq-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.lq-breadcrumb { display:flex; gap:9px; align-items:center; flex-wrap:wrap; color:var(--lq-muted); font-size:11px; line-height:1.65; margin-bottom:21px; }
.lq-breadcrumb a:hover { text-decoration:underline; text-underline-offset:3px; }
.lq-eyebrow { color:var(--kt-607554); font-size:10px; font-weight:700; letter-spacing:.9px; line-height:1.5; text-transform:uppercase; margin:0 0 9px; }
.lq-hero { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(245px,1fr); align-items:center; gap:22px; background:var(--ks-edf3e5); border:1px solid var(--ks-d9e5cf); border-radius:28px; padding:36px; overflow:hidden; }
.literature-quest .lq-hero h1 { font-size:clamp(34px,3.2vw,47px); line-height:1.13; margin:15px 0 17px; font-weight:900; letter-spacing:-1.1px; }
.lq-hero h1 em { color:var(--kt-628255); font-style:normal; }
.lq-hero-copy>p:not(.lq-eyebrow) { font-size:14px; line-height:1.75; color:var(--lq-muted); max-width:470px; margin:0; }
.lq-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 17px; margin:24px 0 19px; }
.lq-hero-actions>span { color:var(--kt-63745c); font-size:11px; }
.lq-button { display:inline-flex; align-items:center; justify-content:center; gap:10px; border:1px solid var(--ks-3d6b4d); border-bottom:4px solid var(--ks-2a4f36); border-radius:13px; min-height:45px; padding:11px 15px 9px; background:var(--ks-3d6b4d); color:var(--kt-fff)!important; font-family:inherit; font-size:12px; font-weight:600; line-height:1.55; cursor:pointer; text-align:center; transition:background .15s,transform .15s; text-decoration:none; }
.lq-button .lq-icon { width:18px; height:18px; }
.lq-button:hover { background:var(--ks-315b40); transform:translateY(-1px); }
.lq-button:disabled { cursor:default; color:var(--kt-697869)!important; background:var(--ks-e5ebe1); border-color:var(--ks-d7e0d0); transform:none; }
.lq-secondary { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:43px; border:1px solid var(--ks-cfdccb); border-bottom:3px solid var(--ks-cfdccb); border-radius:11px; background:var(--ks-fffef9); padding:10px 13px 8px; font-family:inherit; font-size:11px; font-weight:600; color:var(--kt-456548); line-height:1.55; cursor:pointer; text-align:center; }
.lq-secondary:hover { background:var(--ks-f0f5e9); }
.lq-hero-tags { display:flex; flex-wrap:wrap; gap:7px; }
.lq-hero-tags>span { color:var(--kt-627458); font-size:10px; line-height:1.5; padding:5px 8px; border-radius:7px; background:var(--ks-f9fbf3); border:1px solid var(--ks-dce7d1); }
.lq-hero-art { height:270px; width:100%; max-width:300px; position:relative; margin:auto; }
.lq-art-orbit { position:absolute; inset:13px 0; border-radius:50%; border:1px dashed var(--ks-b4c5a6); transform:rotate(-25deg); }
.lq-monster { position:absolute; top:40px; left:50%; transform:translateX(-50%) rotate(-5deg); width:146px; height:166px; border-radius:57px 60px 43px 46px; background:var(--ks-82a77f); box-shadow:inset -10px -8px 0 var(--ks-719970),0 9px 0 var(--ks-d4dfc9); }
.lq-monster-horn { position:absolute; z-index:-1; top:-17px; width:31px; height:45px; background:var(--ks-f6ddbd); border-radius:30% 60% 45% 50%; box-shadow:inset -4px -2px 0 var(--ks-ddc4a0); }
.lq-monster-horn.is-left { left:14px; transform:rotate(-28deg); }
.lq-monster-horn.is-right { right:14px; transform:rotate(28deg); }
.lq-monster-eye { width:24px; height:27px; background:var(--ks-fffef3); border-radius:50%; position:absolute; top:49px; }
.lq-monster-eye:after { content:""; position:absolute; width:9px; height:12px; background:var(--ks-294f42); border-radius:50%; top:9px; left:9px; }
.lq-monster-eye.is-left { left:35px; }
.lq-monster-eye.is-right { right:32px; }
.lq-monster-cheek { position:absolute; top:78px; width:23px; height:12px; background:var(--ks-dfae90); border-radius:50%; opacity:.88; }
.lq-monster-cheek.is-left { left:15px; }
.lq-monster-cheek.is-right { right:14px; }
.lq-monster-smile { position:absolute; width:29px; height:15px; border-bottom:3px solid var(--ks-315b40); border-radius:0 0 50% 50%; top:78px; left:61px; }
.lq-monster-book { position:absolute; top:112px; left:34px; width:89px; height:65px; display:grid; place-items:center; transform:rotate(9deg); color:var(--kt-a97554); background:var(--ks-fff9e9); border-radius:7px 16px 16px 7px; box-shadow:0 4px 0 var(--ks-ddc5a4); }
.lq-monster-book>.lq-icon { width:39px; height:39px; }
.lq-art-star { position:absolute; right:17px; top:18px; color:var(--ktk-a67c43); background:var(--ksk-f5e6bc); padding:9px; border-radius:13px; transform:rotate(14deg); }
.lq-art-star>.lq-icon { width:25px; height:25px; }
.lq-art-question { position:absolute; left:2px; top:13px; transform:rotate(-8deg); border:1px solid var(--ks-dddac5); border-radius:11px; padding:8px 10px; background:var(--ks-fffef8); font-size:10px; color:var(--kt-726b4e); }
.lq-art-note { position:absolute; bottom:10px; right:6px; color:var(--kt-8c6649); background:var(--ks-f6e2d1); padding:8px 11px; border-radius:7px; font-size:11px; transform:rotate(5deg); box-shadow:0 3px 0 var(--ks-e9cdb5); }
.lq-route { margin:26px 0 20px; }
.lq-route ol { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); list-style:none; margin:0; padding:0; gap:10px; }
.lq-route li { min-width:0; }
.lq-route a { display:flex; flex-direction:column; align-items:flex-start; height:100%; padding:16px 12px 13px; background:var(--ks-fffefa); border:1px solid var(--ks-dce5d7); border-bottom:4px solid var(--ks-dce5d7); border-radius:17px; position:relative; }
.lq-route a:hover { background:var(--ks-f4f8ed); }
.lq-route-number { display:grid; place-items:center; width:33px; height:33px; background:var(--ks-ecf2e4); border-radius:11px; font-size:16px; font-weight:800; margin-bottom:13px; }
.lq-route a>span:nth-child(2) { display:flex; flex-direction:column; gap:5px; }
.lq-route strong { font-size:12px; line-height:1.5; }
.lq-route small { color:var(--lq-muted); font-size:10px; line-height:1.6; }
.lq-route-state { color:var(--kt-7b785d); font-size:9px; font-weight:600; line-height:1.5; margin-top:auto; padding-top:13px; }
.lq-route .is-done a { background:var(--ksk-e9f2e5); border-color:var(--ksk-c3d6b9); }
.lq-route .is-done .lq-route-number { background:var(--ksk-52784f); color:var(--ktk-fff); }
.lq-route .is-done .lq-route-state { color:var(--ktk-446d42); }
.lq-route .is-declared a { background:var(--ks-fcf3e9); border-color:var(--ks-e8d6bf); }
.lq-route .is-declared .lq-route-number { background:var(--ks-a87550); }
.lq-route .is-declared .lq-route-state { color:var(--kt-8f694b); }
.lq-progress-panel { display:flex; align-items:center; gap:26px; padding:19px 22px; background:var(--ks-f1f4e9); border:1px solid var(--ks-e0e6d5); border-radius:19px; margin-bottom:16px; }
.lq-progress-panel>div:first-child { flex:1; min-width:0; }
.lq-progress-panel .lq-eyebrow { font-size:9px; margin-bottom:6px; }
.lq-progress-summary { font-size:12px; line-height:1.65; font-weight:600; margin:0 0 5px; }
.lq-progress-explainer { color:var(--lq-muted); font-size:10px; line-height:1.75; margin:0; max-width:620px; }
.lq-progress-visual { width:186px; flex-shrink:0; }
.lq-progress-visual>span { display:block; font-size:28px; line-height:1.3; font-weight:800; margin-bottom:6px; }
.lq-progress-visual small { color:var(--kt-6b7a62); font-family:Roboto,sans-serif; font-size:10px; font-weight:400; }
.lq-progress-visual progress { display:block; width:100%; height:9px; border:0; border-radius:10px; overflow:hidden; background:var(--ks-dfe6d5); accent-color:var(--ks-75935a); }
.lq-progress-visual progress::-webkit-progress-bar { background:var(--ks-dfe6d5); border-radius:10px; }
.lq-progress-visual progress::-webkit-progress-value { background:var(--ks-75935a); border-radius:10px; }
.lq-progress-visual progress::-moz-progress-bar { background:var(--ks-75935a); border-radius:10px; }
.lq-account-note { display:flex; align-items:center; gap:12px; padding:10px 5px; color:var(--kt-68775f); margin-bottom:26px; }
.lq-account-note>.lq-icon { width:18px; height:18px; color:var(--kt-9c794e); }
.lq-account-note p { font-size:10px; line-height:1.75; margin:0; flex:1; }
.lq-account-note a { display:inline-flex; align-items:center; gap:8px; font-size:11px; font-weight:600; text-decoration:underline; text-underline-offset:3px; flex-shrink:0; }
.lq-account-note a>.lq-icon { width:16px; height:16px; }
.lq-account-note.is-guest { background:var(--ks-fbf0df); border:1px solid var(--ks-ecdfc6); border-radius:12px; padding:13px 16px; }
.lq-anchor { display:block; scroll-margin-top:25px; }
.lq-section { margin:0 0 36px; scroll-margin-top:25px; }
.lq-section-heading { display:flex; align-items:flex-start; gap:16px; margin-bottom:20px; }
.lq-section-badge { display:grid; place-items:center; flex-shrink:0; position:relative; width:49px; height:51px; background:var(--ks-e4eedc); color:var(--kt-648453); border-radius:17px; transform:rotate(-5deg); box-shadow:0 4px 0 var(--ks-d6e3cb); }
.lq-section-badge>.lq-icon { width:26px; height:26px; }
.lq-section-badge small { position:absolute; right:-7px; bottom:-5px; display:grid; place-items:center; width:20px; height:20px; border:2px solid var(--ks-fffdf6); background:var(--ks-6d8b5c); color:var(--kt-fff); border-radius:50%; font-size:8px; font-weight:700; transform:rotate(5deg); }
.lq-section-heading .lq-eyebrow { font-size:9px; margin-bottom:6px; }
.literature-quest .lq-section-heading h2 { font-size:27px; line-height:1.22; font-weight:800; margin:0 0 8px; }
.lq-section-heading>div>p:not(.lq-eyebrow) { color:var(--lq-muted); font-size:12px; line-height:1.8; max-width:740px; margin:0; }
.lq-reading-layout { display:grid; grid-template-columns:minmax(0,1fr) 225px; gap:20px; align-items:start; }
.lq-text { min-width:0; background:var(--lq-paper); border:1px solid var(--ks-e0dfd1); border-radius:21px; box-shadow:0 5px 0 var(--ks-eeebdd); padding:27px 30px; }
.lq-text-header { margin-bottom:22px; border-bottom:1px solid var(--ks-e8e3d3); padding-bottom:18px; }
.lq-text-label { display:inline-block; font-size:9px; font-weight:700; letter-spacing:1px; color:var(--kt-99754c); margin-bottom:8px; }
.literature-quest .lq-text-header h3 { font-size:28px; font-weight:800; line-height:1.2; margin:0 0 10px; color:var(--kt-62533d); }
.lq-text-header .lq-work-title { font-size:12px; margin:0 0 6px; color:var(--kt-786144); }
.lq-text-header>p { color:var(--kt-84755e); font-size:10px; line-height:1.75; margin:0; }
.lq-context { background:var(--ks-f2efdf); border-radius:10px; padding:14px 16px; color:var(--kt-6b694f); font-size:12px; line-height:1.8; margin:0 0 24px; }
.lq-excerpt { font-family:Georgia,'Times New Roman',serif; font-size:16px; line-height:1.95; color:var(--kt-494b3d); }
.lq-excerpt p { display:grid; grid-template-columns:17px minmax(0,1fr); align-items:baseline; gap:12px; margin:0 0 18px; scroll-margin-top:25px; }
.lq-excerpt p:target { background:var(--ks-f4ecd4); border-radius:8px; outline:8px solid var(--ks-f4ecd4); }
.lq-paragraph-number { font-family:Roboto,sans-serif; color:var(--kt-a28a68); font-size:9px; line-height:1.5; font-weight:600; }
.lq-text-note { border-top:1px solid var(--ks-e8e3d3); margin:23px 0 15px; padding-top:16px; font-size:10px; line-height:1.8; color:var(--kt-867964); }
.lq-text-links { display:flex; align-items:center; flex-wrap:wrap; gap:9px 20px; }
.lq-text-links a { color:var(--kt-6e7352); font-size:10px; line-height:1.6; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.lq-reading-rail { display:grid; gap:17px; min-width:0; }
.lq-reading-mission { padding:22px; border:1px solid var(--ks-ecd7c2); background:var(--ks-faecdc); border-radius:20px; }
.lq-rail-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:var(--ks-fff7ec); color:var(--kt-a57851); margin-bottom:18px; transform:rotate(-6deg); }
.lq-reading-mission .lq-eyebrow { font-size:9px; color:var(--kt-956e48); }
.literature-quest .lq-reading-mission h3 { font-size:22px; font-weight:800; line-height:1.2; margin:0 0 12px; color:var(--kt-815d3f); }
.lq-reading-mission>p:not(.lq-eyebrow) { color:var(--kt-856c54); font-size:12px; line-height:1.75; margin:0 0 16px; }
.lq-reading-mission a { display:flex; align-items:center; gap:8px; color:var(--kt-866443); font-size:10px; font-weight:600; line-height:1.65; }
.lq-reading-mission a .lq-icon { width:16px; height:16px; }
.lq-glossary { background:var(--ks-fffef9); border:1px solid var(--ks-dce5d8); border-radius:19px; padding:18px 20px; }
.lq-glossary summary { cursor:pointer; color:var(--kt-527047); font-weight:600; font-size:12px; line-height:1.5; }
.lq-glossary dl { margin:18px 0 0; }
.lq-glossary dl>div { border-top:1px solid var(--ks-e9eddf); padding-top:12px; margin-top:12px; }
.lq-glossary dl>div:first-child { border-top:0; margin-top:0; padding-top:0; }
.lq-glossary dt { color:var(--kt-6a7b52); font-size:11px; line-height:1.6; font-weight:600; }
.lq-glossary dd { color:var(--lq-muted); font-size:11px; line-height:1.75; margin:4px 0 0; }
.lq-state-fields { border:0; padding:0; margin:0; min-width:0; }
.lq-state-fields:disabled { opacity:.62; }
.lq-state-fields:disabled input,.lq-state-fields:disabled textarea { cursor:wait; }
.lq-declaration { display:flex; gap:11px; align-items:flex-start; border:1px dashed var(--ks-dbcfb7); background:var(--ks-fcf5e9); padding:15px 18px; border-radius:13px; margin:19px 0 0; cursor:pointer; }
.lq-declaration input,.lq-criteria input { width:17px; height:17px; min-width:17px; margin:2px 0 0; accent-color:var(--ks-66834d); cursor:pointer; }
.lq-declaration>span { display:flex; flex-direction:column; gap:5px; }
.lq-declaration strong { color:var(--kt-806346); font-size:11px; font-weight:600; line-height:1.7; }
.lq-declaration small { color:var(--kt-8b795e); font-size:10px; line-height:1.7; }
.lq-lesson-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:start; }
.lq-method { padding:24px; border:1px solid var(--lq-line); background:var(--ks-fffefb); border-radius:20px; scroll-margin-top:25px; min-width:0; }
.lq-method:target { outline:3px solid var(--ks-ceab79); outline-offset:5px; }
.lq-method-heading { margin-bottom:17px; }
.lq-method-heading .lq-eyebrow { font-size:9px; color:var(--kt-72905e); }
.literature-quest .lq-method h3 { font-size:23px; line-height:1.24; font-weight:800; margin:0; }
.lq-method>p:not(.lq-tip) { color:var(--lq-muted); font-size:12px; line-height:1.85; margin:0 0 15px; }
.lq-example { border-left:3px solid var(--ks-92ad73); background:var(--ks-f1f5e9); border-radius:0 10px 10px 0; padding:14px 17px; margin:19px 0; }
.lq-example strong { font-size:10px; text-transform:uppercase; letter-spacing:.5px; font-weight:700; color:var(--kt-6b8556); }
.lq-example p { font-size:12px; line-height:1.8; color:var(--kt-5d7352); margin:8px 0 0; }
.lq-tip { display:flex; align-items:flex-start; gap:11px; color:var(--kt-8b6a49); background:var(--ks-fbf1df); border-radius:12px; padding:13px 15px; font-size:11px; line-height:1.8; margin:16px 0 21px; }
.lq-tip .lq-icon { width:19px; height:19px; margin-top:2px; color:var(--kt-aa8952); }
.lq-challenge { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-top:19px; border-top:1px solid var(--ks-e4eadc); }
.lq-challenge>div { flex:1; min-width:0; }
.lq-challenge .lq-eyebrow { font-size:8px; margin-bottom:5px; }
.lq-challenge strong { display:block; font-size:12px; line-height:1.6; }
.lq-challenge p { font-size:10px; line-height:1.65; color:var(--lq-muted); margin:6px 0 0; }
.lq-challenge .lq-button { font-size:11px; padding:9px 12px 7px; min-height:42px; flex-shrink:0; }
.lq-lesson-pair .lq-challenge { flex-direction:column; align-items:flex-start; }
.lq-lesson-pair .lq-challenge .lq-button { align-self:stretch; }
.lq-question-status { background:var(--ks-eef4e8); border-radius:12px; margin-top:15px; padding:14px 17px; font-size:11px; line-height:1.75; color:var(--kt-687f56); }
.lq-question-status>span { display:flex; align-items:center; gap:9px; }
.lq-question-status .lq-icon { width:18px; height:18px; }
.lq-question-status strong { color:var(--kt-557248); font-size:11px; font-weight:600; }
.lq-question-status p { font-size:11px; margin:6px 0 0; line-height:1.75; }
.lq-question-status a { text-decoration:underline; text-underline-offset:3px; font-weight:600; }
.lq-text-button { font-family:inherit; background:none; border:0; padding:5px 0; text-decoration:underline; text-underline-offset:3px; font-size:11px; font-weight:600; color:var(--kt-5c7950); cursor:pointer; }
.lq-toolbox { display:flex; align-items:stretch; gap:11px; flex-wrap:wrap; margin-top:17px; }
.lq-toolbox a { display:flex; align-items:center; gap:10px; background:var(--ks-fffef8); border:1px solid var(--ks-dbe3d4); border-radius:12px; padding:13px 15px; flex:1; font-size:11px; font-weight:600; line-height:1.6; min-width:185px; }
.lq-toolbox a:hover { background:var(--ks-f0f5e9); }
.lq-toolbox .lq-icon { width:19px; height:19px; color:var(--kt-829366); }
.lq-toolbox .lq-icon:last-child { width:16px; height:16px; margin-left:auto; }
.lq-workshop { border:1px solid var(--ks-eadbca); background:var(--ks-fcf6ed); border-radius:23px; padding:26px; }
.lq-workshop .lq-section-badge { color:var(--kt-ab7653); background:var(--ks-f4e1ce); box-shadow:0 4px 0 var(--ks-e6c8ab); }
.lq-workshop .lq-section-badge small { background:var(--ks-b2875c); }
.lq-workshop .lq-eyebrow { color:var(--kt-a17b54); }
.lq-prompt { padding:18px 20px; background:var(--ks-fffdfa); border:1px solid var(--ks-eddfc9); border-radius:15px; margin-bottom:23px; }
.lq-prompt .lq-writing-preparation { padding-top:12px; margin-top:12px; border-top:1px solid var(--ks-ece3d2); font-size:12px; }
.lq-prompt-sticker { display:inline-block; font-size:9px; font-weight:700; letter-spacing:.6px; padding:5px 7px; color:var(--kt-967240); background:var(--ks-f6eccf); border-radius:5px; margin-bottom:7px; }
.lq-prompt p { color:var(--kt-79684f); font-size:13px; line-height:1.8; margin:7px 0 0; }
.lq-help { font-size:10px!important; line-height:1.8!important; color:var(--kt-7a7c67)!important; }
.lq-draft-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:19px; margin-bottom:23px; }
.lq-draft { min-width:0; }
.lq-draft>label { display:flex; align-items:center; gap:8px; color:var(--kt-8d6a49); font-size:12px; font-weight:600; line-height:1.6; margin-bottom:12px; }
.lq-draft>label>span { display:grid; place-items:center; width:25px; height:25px; background:var(--ks-f0e3ce); border-radius:8px; font-size:10px; font-weight:700; }
.lq-draft.is-revised>label { color:var(--kt-5a7950); }
.lq-draft.is-revised>label>span { background:var(--ks-e6edd9); }
.lq-draft textarea { display:block; width:100%; max-width:100%; min-height:225px; resize:vertical; border:1px solid var(--ks-dac8ae); border-radius:14px; padding:16px; font-family:inherit; font-size:13px; line-height:1.85; color:var(--kt-5d624f); background:var(--ks-fffdfa); }
.lq-draft.is-revised textarea { border-color:var(--ks-bfcead); background:var(--ks-fffefb); }
.lq-draft textarea::placeholder { color:var(--kt-9c947f); font-style:italic; }
.lq-draft-meta { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-top:9px; }
.lq-draft-meta p { color:var(--kt-8c7f68); font-size:10px; line-height:1.7; margin:0; }
.lq-draft-meta>span { white-space:nowrap; color:var(--kt-8b8068); font-size:9px; line-height:1.7; }
.lq-criteria { border:1px solid var(--ks-e0e5d6); border-radius:15px; padding:17px 19px 7px; margin:0; min-width:0; background:var(--ks-fffef9); }
.lq-criteria legend { color:var(--kt-617a4b); font-family:KahierNunito,Roboto,sans-serif; font-size:17px; font-weight:800; line-height:1.4; padding:0 7px; }
.lq-criteria label { display:flex; align-items:flex-start; gap:10px; cursor:pointer; font-size:11px; line-height:1.75; color:var(--kt-657458); margin-bottom:13px; }
.lq-workshop .lq-declaration { background:var(--ks-f9edda); border-color:var(--ks-dcc6a5); }
.lq-model { margin-top:20px; border-top:1px solid var(--ks-e8d9c1); padding:15px 0 0; }
.lq-model summary { cursor:pointer; color:var(--kt-997149); font-size:11px; line-height:1.75; font-weight:600; }
.lq-model>p { font-size:12px; line-height:1.85; color:var(--kt-856f52); margin:12px 0 0; }
.lq-speaking { border:1px solid var(--ks-dce6d3); background:var(--ks-f0f5e9); border-radius:23px; padding:26px; }
.lq-oral-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; align-items:start; }
.lq-oral-prompt { color:var(--kt-5c7350); font-size:13px; line-height:1.85; margin:0 0 20px; }
.lq-oral-tips { list-style:none; padding:0; margin:0 0 18px; }
.lq-oral-tips li { display:flex; align-items:flex-start; gap:12px; margin-bottom:14px; }
.lq-oral-tips li>span { display:grid; place-items:center; flex-shrink:0; width:25px; height:25px; border:1px solid var(--ks-d4e0c9); border-radius:9px; background:var(--ks-fcfff7); color:var(--kt-729059); font-size:10px; font-weight:600; }
.lq-oral-tips p { margin:2px 0 0; font-size:11px; line-height:1.8; color:var(--kt-6c7e5e); }
.lq-speaking .lq-declaration { margin-top:18px; background:var(--ks-f8f1e1); }
.lq-save-panel { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:17px 22px; background:var(--ks-fffef9); border:1px solid var(--ks-d6e1d0); border-bottom:4px solid var(--ks-d6e1d0); border-radius:19px; padding:21px 23px; margin:-7px 0 27px; }
.lq-save-panel>div:first-child { flex:1; min-width:225px; }
.lq-save-panel strong { font-family:KahierNunito,Roboto,sans-serif; font-size:18px; line-height:1.4; font-weight:800; color:var(--kt-537149); }
.lq-save-panel p { color:var(--lq-muted); font-size:10px; line-height:1.8; margin:7px 0 0; }
.lq-save-panel .is-error { color:var(--ktk-a34f39); }
.lq-save-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:10px; }
.lq-save-recovery { flex-basis:100%; border-top:1px solid var(--ks-eadccc); padding-top:12px; }
.lq-save-recovery p { color:var(--kt-976948); margin:0 0 12px; }
.lq-save-recovery[hidden] { display:none; }
.lq-reference { border:1px solid var(--ks-dde3d3); border-radius:18px; background:var(--ks-f5f5ec); padding:21px 23px; }
.lq-reference>div { display:flex; align-items:flex-start; gap:15px; }
.lq-reference>div>.lq-icon { width:26px; height:26px; color:var(--kt-8b956c); margin-top:4px; }
.lq-reference .lq-eyebrow { font-size:9px; color:var(--kt-7f8864); margin:0 0 7px; }
.lq-reference strong { font-size:12px; line-height:1.75; color:var(--kt-667953); }
.lq-reference p:not(.lq-eyebrow) { color:var(--kt-79806a); font-size:11px; line-height:1.8; margin:8px 0 0; }
.lq-reference>a { display:inline-flex; align-items:center; gap:8px; margin:15px 0 0 41px; color:var(--kt-617b50); font-size:10px; line-height:1.7; font-weight:600; text-decoration:underline; text-underline-offset:3px; }
.lq-reference>a>.lq-icon { width:16px; height:16px; }
.lq-end { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; padding:24px 2px; }
.lq-end a { display:inline-flex; align-items:center; gap:8px; color:var(--kt-658155); font-size:11px; font-weight:600; line-height:1.6; }
.lq-end .lq-icon { width:16px; height:16px; }
@media (max-width:1250px) { .lq-hero { padding:29px; gap:14px; } .lq-reading-layout { grid-template-columns:minmax(0,1fr) 200px; gap:16px; } .lq-text { padding:25px; } .lq-reading-mission { padding:19px; } .lq-method { padding:22px; } .lq-route a { padding:14px 10px 12px; } .lq-route strong { font-size:11px; } }
@media (max-width:1000px) { .lq-hero { grid-template-columns:minmax(0,1.5fr) minmax(195px,1fr); } .lq-hero-art { max-width:240px; } .lq-art-question { font-size:9px; left:0; top:8px; } .lq-art-star { right:2px; top:46px; } .lq-art-note { font-size:10px; right:0; } .lq-route ol { gap:8px; } .lq-route small { font-size:9px; } .lq-route-state { font-size:8px; } .lq-reading-layout { grid-template-columns:minmax(0,1fr); } .lq-reading-rail { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); align-items:start; } .lq-glossary dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; } .lq-glossary dl>div { margin:0; border:0; padding:0; } .lq-progress-panel { gap:18px; padding:18px; } .lq-progress-visual { width:150px; } .lq-progress-visual small { font-size:9px; } .lq-lesson-pair { grid-template-columns:minmax(0,1fr); } .lq-lesson-pair .lq-challenge { flex-direction:row; align-items:center; } .lq-lesson-pair .lq-challenge .lq-button { align-self:center; } .lq-workshop,.lq-speaking { padding:23px; } .lq-draft-grid { gap:16px; } .lq-draft-meta { flex-direction:column; gap:4px; } .lq-oral-layout { gap:20px; } }
@media (max-width:760px) { .lq-hero { grid-template-columns:minmax(0,1fr); padding:28px; } .lq-hero-art { display:none; } .literature-quest .lq-hero h1 { font-size:37px; } .lq-hero-copy>p:not(.lq-eyebrow) { max-width:100%; } .lq-route ol { grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; } .lq-route a { padding:12px 8px; border-radius:13px; } .lq-route small { display:none; } .lq-route strong { font-size:10px; } .lq-route-number { width:29px; height:29px; border-radius:9px; font-size:14px; margin-bottom:10px; } .lq-route-state { font-size:8px; } .lq-progress-panel { align-items:flex-start; flex-direction:column; gap:14px; } .lq-progress-visual { width:100%; display:flex; align-items:center; gap:15px; } .lq-progress-visual>span { flex-shrink:0; font-size:25px; margin:0; } .lq-progress-visual progress { max-width:220px; } .lq-account-note { flex-wrap:wrap; gap:9px; } .lq-account-note p { flex-basis:calc(100% - 32px); } .lq-account-note a { margin-left:30px; } .lq-section-heading { gap:14px; } .literature-quest .lq-section-heading h2 { font-size:25px; } .lq-section-heading>div>p:not(.lq-eyebrow) { font-size:11px; } .lq-draft-grid,.lq-oral-layout { grid-template-columns:1fr; } .lq-draft-grid { gap:22px; } .lq-draft-meta { flex-direction:row; } .lq-oral-layout { gap:14px; } .lq-save-panel { padding:20px; } .lq-save-actions { width:100%; justify-content:flex-start; } }
@media (max-width:540px) { .lq-breadcrumb { font-size:10px; gap:6px; margin-bottom:17px; } .lq-hero { border-radius:22px; padding:24px 21px; } .lq-hero .lq-eyebrow { font-size:8px; letter-spacing:.6px; } .literature-quest .lq-hero h1 { font-size:33px; letter-spacing:-.8px; } .lq-hero-copy>p:not(.lq-eyebrow) { font-size:12px; } .lq-hero-actions { gap:13px; margin-top:22px; align-items:flex-start; flex-direction:column; } .lq-hero-actions>span { font-size:10px; } .lq-route { margin:21px 0 18px; } .lq-route ol { grid-template-columns:1fr; gap:9px; } .lq-route a { display:grid; grid-template-columns:30px minmax(0,1fr) 100px; gap:10px; align-items:center; border-bottom-width:3px; padding:10px 12px; } .lq-route-number { margin:0; width:28px; height:29px; } .lq-route strong { font-size:11px; } .lq-route small { display:block; font-size:9px; } .lq-route a>span:nth-child(2) { gap:3px; } .lq-route-state { margin:0; padding:0; font-size:9px; text-align:right; } .lq-progress-panel { padding:17px; border-radius:15px; } .lq-progress-summary { font-size:11px; } .lq-progress-explainer { font-size:10px; } .lq-progress-visual { gap:12px; } .lq-progress-visual>span { font-size:24px; } .lq-progress-visual small { font-size:9px; } .lq-account-note.is-guest { padding:13px; } .lq-section { margin-bottom:30px; } .lq-section-heading { gap:12px; margin-bottom:18px; } .lq-section-badge { width:39px; height:41px; border-radius:13px; margin-top:2px; } .lq-section-badge>.lq-icon { width:22px; height:22px; } .lq-section-badge small { width:17px; height:17px; font-size:7px; right:-5px; bottom:-5px; } .lq-section-heading .lq-eyebrow { font-size:8px; letter-spacing:.7px; } .literature-quest .lq-section-heading h2 { font-size:23px; line-height:1.23; } .lq-text { padding:22px 18px; border-radius:17px; } .literature-quest .lq-text-header h3 { font-size:26px; } .lq-text-header { margin-bottom:18px; } .lq-context { padding:13px; font-size:11px; } .lq-excerpt { font-size:16px; line-height:1.9; } .lq-excerpt p { grid-template-columns:12px minmax(0,1fr); gap:8px; margin-bottom:17px; } .lq-text-links { gap:10px; } .lq-text-note { font-size:9px; } .lq-reading-rail { grid-template-columns:1fr; gap:14px; } .lq-reading-mission { padding:19px; } .lq-rail-icon { margin-bottom:13px; } .lq-reading-mission p:not(.lq-eyebrow) { font-size:11px; } .lq-glossary { padding:18px; } .lq-glossary dl { gap:15px; } .lq-glossary dt,.lq-glossary dd { font-size:10px; } .lq-declaration { padding:13px; gap:9px; } .lq-declaration strong { font-size:10px; } .lq-declaration small { font-size:9px; } .lq-method { padding:20px 18px; border-radius:17px; } .literature-quest .lq-method h3 { font-size:22px; } .lq-method>p:not(.lq-tip) { font-size:12px; } .lq-example { padding:13px 14px; } .lq-example p { font-size:11px; } .lq-tip { padding:12px; font-size:10px; gap:8px; } .lq-challenge,.lq-lesson-pair .lq-challenge { flex-direction:column; align-items:flex-start; gap:14px; } .lq-challenge .lq-button,.lq-lesson-pair .lq-challenge .lq-button { align-self:stretch; } .lq-toolbox { gap:8px; } .lq-toolbox a { min-width:100%; padding:12px 14px; font-size:10px; } .lq-question-status { padding:13px 15px; } .lq-question-status p,.lq-question-status strong { font-size:10px; } .lq-workshop,.lq-speaking { padding:21px 17px; border-radius:19px; } .lq-prompt { padding:15px; border-radius:12px; } .lq-prompt p { font-size:12px; } .lq-prompt-sticker { font-size:8px; } .lq-draft textarea { padding:14px; font-size:14px; min-height:220px; } .lq-draft>label { font-size:11px; } .lq-draft-meta { gap:9px; } .lq-draft-meta p { font-size:9px; } .lq-draft-meta>span { font-size:8px; } .lq-criteria { padding:16px 14px 4px; border-radius:12px; } .lq-criteria legend { font-size:16px; } .lq-criteria label { font-size:10px; gap:9px; } .lq-model summary { font-size:10px; } .lq-model>p { font-size:11px; } .lq-oral-prompt { font-size:12px; } .lq-oral-tips p { font-size:10px; } .lq-save-panel { padding:18px; border-radius:15px; } .lq-save-panel>div:first-child { min-width:0; flex-basis:100%; } .lq-save-panel strong { font-size:17px; } .lq-save-actions { flex-direction:column; align-items:stretch; } .lq-save-actions>* { width:100%; } .lq-save-actions .lq-button { font-size:11px; } .lq-reference { padding:18px; border-radius:15px; } .lq-reference>div { gap:12px; } .lq-reference>div>.lq-icon { width:21px; height:21px; } .lq-reference strong { font-size:11px; } .lq-reference p:not(.lq-eyebrow) { font-size:10px; } .lq-reference>a { margin-left:0; font-size:10px; } .lq-end { padding:21px 2px; gap:14px; } .lq-end a { font-size:10px; } }
@media (prefers-reduced-motion:reduce) { .lq-button { transition:none; } .lq-button:hover { transform:none; } }
@media print { .lq-hero-art,.lq-route,.lq-account-note,.lq-save-panel,.lq-save-recovery,.lq-toolbox,.lq-challenge,.lq-end { display:none; } .lq-hero,.lq-reading-layout,.lq-draft-grid,.lq-oral-layout,.lq-lesson-pair { display:block; } .lq-section,.lq-method,.lq-text { break-inside:auto; background:var(--ks-fff); box-shadow:none; border-color:var(--ks-bbb); } .lq-draft textarea { min-height:180px; } .lq-reading-rail { margin-top:20px; } }

/* Shared corpus layout keeps the notebook palette across literary quests. */
.lq-corpus { display:grid; gap:25px; min-width:0; }
.lq-corpus-text { scroll-margin-top:25px; }
.lq-corpus-text:target { outline:3px solid var(--ks-9eae80); outline-offset:4px; }
.lq-corpus-text .lq-glossary { margin-top:20px; background:var(--ks-f6f7ed); box-shadow:none; }
.lq-corpus-text .lq-glossary dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 20px; }
.lq-corpus-text .lq-glossary dl>div { border:0; margin:0; padding:0; }
.lq-corpus-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0 0 22px; }
.lq-corpus-links a { display:flex; align-items:center; gap:10px; min-width:0; padding:14px; border:1px solid var(--ks-d7e3d1); border-bottom:3px solid var(--ks-d7e3d1); border-radius:14px; background:var(--ks-fcfdf5); color:var(--kt-476c51); font-size:14px; font-weight:700; line-height:1.5; }
.lq-corpus-links a:hover { background:var(--ks-edf4e7); }
.lq-corpus-links a>span { min-width:0; flex:1; }
.lq-corpus-links small { display:block; color:var(--kt-66795e); font-size:12px; font-weight:400; line-height:1.5; margin-top:3px; }
.lq-corpus-links a>.lq-icon:last-child { width:17px; height:17px; }
.lq-corpus-reminder { padding:21px; border:1px dashed var(--ks-c9d7bf); border-radius:17px; background:var(--ks-f5f7eb); }
.lq-corpus-reminder strong { font-family:KahierNunito,Roboto,sans-serif; color:var(--kt-537149); font-size:18px; line-height:1.4; }
.lq-corpus-reminder p { color:var(--kt-667558); font-size:14px; line-height:1.8; margin:12px 0 0; }
.lq-origin-world { position:absolute; width:100%; height:245px; inset:13px 0 0; }
.lq-world-art .lq-art-question { z-index:1; top:4px; left:4px; }
.lq-world-art .lq-art-note { bottom:0; right:12px; }
.lq-world-art .lq-art-orbit { inset:24px 0 12px; }
.lq-comparison { margin-top:25px; padding:25px; border:1px solid var(--ks-d6dec7); border-radius:22px; background:var(--ks-f6f7eb); }
.literature-quest .lq-comparison h3 { font-size:25px; line-height:1.25; font-weight:800; margin:8px 0 11px; }
.lq-comparison>header>p { color:var(--kt-617455); font-size:14px; line-height:1.8; margin:0 0 21px; }
.lq-comparison-table-wrap { max-width:100%; overflow-x:auto; border:1px solid var(--ks-d8e0cc); border-radius:13px; background:var(--ks-fffefa); margin-bottom:23px; }
.lq-comparison-table-wrap:focus-visible { outline:3px solid var(--ks-ae653e); outline-offset:4px; }
.lq-comparison-table { width:100%; min-width:560px; border-collapse:collapse; color:var(--kt-5b7051); font-size:14px; line-height:1.7; }
.lq-comparison-table caption { text-align:left; font-weight:700; color:var(--kt-456548); padding:15px; border-bottom:1px solid var(--ks-dbe2d0); }
.lq-comparison-table th,.lq-comparison-table td { padding:15px; text-align:left; vertical-align:top; }
.lq-comparison-table thead th { background:var(--ks-e9efde); color:var(--kt-4a6849); font-size:12px; font-weight:700; }
.lq-comparison-table tbody tr+tr { border-top:1px solid var(--ks-e1e5d8); }
.lq-comparison-table tbody th { width:21%; font-size:14px; font-weight:600; }
.lq-comparison-table td:nth-child(2) { width:43%; }
.lq-comparison-table summary { color:var(--kt-8a693e); font-size:14px; font-weight:600; cursor:pointer; }
.lq-comparison-table details p { font-size:14px; line-height:1.75; margin:10px 0 0; }
.lq-comparison-draft { margin-top:7px; }
.lq-comparison-draft>label { color:var(--kt-476949); font-size:17px; }
.lq-comparison-draft>p { color:var(--kt-637456); font-size:14px; line-height:1.8; margin:0 0 12px; }
.lq-comparison-draft textarea { border-color:var(--ks-c4d1b6); min-height:230px; }
.lq-comparison>.lq-help { margin:16px 0 0; }
.lq-comparison-draft .lq-draft-meta a { display:inline-block; color:var(--kt-456548); text-decoration:underline; text-underline-offset:3px; }
.lq-oral-passages { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 17px; }
.lq-oral-passages a { display:inline-flex; align-items:center; gap:6px; color:var(--kt-4d7049); font-size:12px; line-height:1.6; padding:8px 11px; border:1px solid var(--ks-d2ddc7); border-radius:9px; background:var(--ks-fcfff7); }
.lq-oral-passages a:hover { background:var(--ks-e4edda); }
.lq-oral-passages .lq-icon { width:17px; height:17px; }
.lq-oral-preparation,.lq-oral-revision { color:var(--kt-5e7350); font-size:14px; line-height:1.8; margin:0 0 18px; }
.lq-oral-revision { border-left:3px solid var(--ks-a6b58a); padding-left:14px; }
.lq-save-panel { scroll-margin-top:25px; }

/* Readable body text and labels remain stable at every viewport width. */
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) :is(.lq-hero-copy>p:not(.lq-eyebrow),.lq-section-heading>div>p:not(.lq-eyebrow),.lq-context,.lq-method>p:not(.lq-tip),.lq-example p,.lq-reading-mission>p:not(.lq-eyebrow),.lq-prompt p,.lq-model>p,.lq-oral-prompt,.lq-oral-tips p,.lq-criteria label,.lq-declaration strong,.lq-glossary dt,.lq-glossary dd,.lq-draft>label,.lq-draft textarea,.lq-progress-summary,.lq-question-status p,.lq-question-status strong,.lq-challenge strong,.lq-reference strong,.lq-reference p:not(.lq-eyebrow),.lq-account-note p,.lq-button,.lq-secondary,.lq-toolbox a,.lq-end a,.lq-route strong) { font-size:14px; }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) :is(.lq-breadcrumb,.lq-eyebrow,.lq-text-label,.lq-text-header>p,.lq-text-note,.lq-text-links a,.lq-declaration small,.lq-route small,.lq-route-state,.lq-progress-explainer,.lq-progress-visual small,.lq-hero-tags>span,.lq-hero-actions>span,.lq-tip,.lq-challenge p,.lq-example strong,.lq-account-note a,.lq-reading-mission a,.lq-reading-mission .lq-eyebrow,.lq-model summary,.lq-prompt-sticker,.lq-draft-meta p,.lq-draft-meta>span,.lq-save-panel p,.lq-reference>a,.lq-text-button,.lq-glossary summary,.lq-art-note,.lq-art-question,.lq-question-status,.lq-paragraph-number) { font-size:12px; }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-help { font-size:12px!important; }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-excerpt { font-size:18px; line-height:1.9; }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-excerpt p { grid-template-columns:18px minmax(0,1fr); }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route a { padding:15px 12px; }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-reading-layout { grid-template-columns:minmax(0,1fr) 245px; }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-glossary summary { font-size:14px; }
.literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-reference p { max-width:85ch; }
@media (max-width:1100px) {
  .literature-quest:is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-reading-layout { grid-template-columns:minmax(0,1fr); }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-reading-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route ol { grid-template-columns:repeat(3,minmax(0,1fr)); }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route small { display:block; }
}
@media (max-width:760px) {
  .lq-corpus-links { grid-template-columns:1fr; gap:9px; }
  .lq-corpus-links a { padding:12px 14px; }
  .lq-corpus-links a>span { display:flex; align-items:baseline; flex-wrap:wrap; gap:3px 10px; }
  .lq-corpus-links small { margin:0; }
  .lq-comparison { padding:21px 17px; }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route ol { grid-template-columns:1fr; }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route a { display:grid; grid-template-columns:30px minmax(0,1fr) 112px; gap:10px; align-items:center; }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route-number { margin:0; }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route-state { padding:0; text-align:right; }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-reading-rail { grid-template-columns:1fr; }
  .lq-corpus-text .lq-glossary dl { grid-template-columns:1fr; }
}
@media (max-width:400px) {
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route a { grid-template-columns:30px minmax(0,1fr); }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-route-state { grid-column:2; text-align:left; }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-draft-meta { flex-wrap:wrap; }
  :is(.lq-origins,.lq-poetry,.lq-theatre,.lq-adventure) .lq-progress-visual { flex-wrap:wrap; }
}
@media print {
  .lq-corpus-links { display:none; }
  .lq-comparison-table-wrap { overflow:visible; }
  .lq-comparison-table { min-width:0; }
}

/* Poetry keeps each stanza and line visible in the notebook. */
.lq-poetry-art .lq-art-orbit { inset:28px 0 10px; }
.lq-poetry-art .lq-art-question { z-index:1; top:1px; left:0; }
.lq-poetry-art .lq-art-note { right:0; bottom:0; }
.lq-poetry-feather { position:absolute; width:100%; height:250px; inset:14px 0 0; }
.lq-poetry-word { position:absolute; z-index:1; font-family:Georgia,serif; font-size:18px; font-style:italic; color:var(--kt-6a8052); }
.lq-poetry-word.is-first { left:8px; top:99px; transform:rotate(-12deg); }
.lq-poetry-word.is-second { right:-2px; top:145px; transform:rotate(9deg); color:var(--kt-9b7448); }
.lq-poem .lq-excerpt p { margin-bottom:29px; }
.lq-poem-lines { min-width:0; overflow-wrap:anywhere; }
.lq-poetry .lq-model>p:first-of-type { font-family:Georgia,'Times New Roman',serif; line-height:1.9; }
.lq-poetry .lq-draft textarea { tab-size:4; }
@media print { .lq-poem .lq-excerpt p { break-inside:avoid; } }

/* Theatre keeps the roles, stage directions and dialogue visually distinct. */
.lq-theatre-art .lq-art-orbit { inset:28px 0 10px; }
.lq-theatre-art .lq-art-question { z-index:1; top:0; left:0; }
.lq-theatre-art .lq-art-note { right:0; bottom:0; }
.lq-theatre-stage { position:absolute; width:100%; height:250px; inset:13px 0 0; }
.lq-corpus-links.is-single { grid-template-columns:minmax(0,1fr); }
.lq-play .lq-excerpt p { margin-bottom:24px; }
.lq-reply { display:block; min-width:0; overflow-wrap:anywhere; }
.lq-speaker-line { display:block; margin-bottom:4px; line-height:1.7; }
.lq-speaker { font-family:KahierNunito,Roboto,sans-serif; font-size:15px; font-weight:800; color:var(--kt-3e624b); }
.lq-stage-direction { font-family:Georgia,'Times New Roman',serif; font-size:16px; font-style:italic; color:var(--kt-64745d); }
.lq-speech { display:block; }
.lq-theatre .lq-model>p:first-of-type { font-family:Georgia,'Times New Roman',serif; line-height:1.9; }
.lq-theatre .lq-draft textarea { tab-size:4; }
@media print { .lq-speaker-line { break-after:avoid; } }

/* Adventure follows a map from the first clue to a new narrative. */
.lq-adventure-art .lq-art-orbit { inset:28px 0 10px; }
.lq-adventure-art .lq-art-question { z-index:1; top:0; left:0; }
.lq-adventure-art .lq-art-note { right:0; bottom:0; }
.lq-adventure-map { position:absolute; width:100%; height:250px; inset:13px 0 0; }
.lq-adventure .lq-hero { background:var(--ks-eaf2e8); }
.lq-adventure .lq-route-number { border:1px dashed var(--ks-afc6a7); }
.lq-adventure .lq-route .is-done .lq-route-number { border-style:solid; border-color:transparent; }
.lq-adventure .lq-comparison { background:var(--ks-f4f7ec); }
.lq-adventure .lq-comparison .lq-prompt-sticker { background:var(--ks-f6e3d7); color:var(--kt-82583f); }
