.k12-activity{width:min(950px,96vw)}.k12-activity .k11-explanation img{max-height:38vh;object-fit:contain}.k12-gap{display:grid;grid-template-columns:minmax(180px,1fr) minmax(200px,1.1fr);gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #d4cbb8;line-height:1.55}.k12-gap select{font:inherit;background:#fffdf7;color:#292c26;border:2px solid #92836a;border-radius:8px;padding:12px;width:100%;max-width:100%;white-space:normal}.k12-gap select.correct{border-color:#427447;background:#e6f1df}.k12-gap select.incorrect{border-color:#b65730;background:#fff1e6}.k12-correct{color:#355f30;font-weight:bold}.k12-observe{display:flex;gap:12px;padding:12px;align-items:center}.k12-observe input{width:24px;height:24px}.k12-timeline{display:flex;gap:12px;flex-wrap:wrap}.k12-position{font-size:14px;color:#675b49}.k12-activity blockquote{border-left:5px solid #99783e;padding:20px;background:#f3ead8;font:22px/1.6 Georgia,serif}.k12-activity .learning-body>button{margin:8px 8px 8px 0}.k12-activity a{color:#61470d}.k12-activity .learning-conversation p{font-size:19px;line-height:1.6}select:focus-visible,input:focus-visible{outline:3px solid #286e97;outline-offset:3px}@media(max-width:650px){.k12-gap{grid-template-columns:1fr}.k12-activity .learning-conversation p{font-size:17px}.k12-activity .k11-explanation img{max-height:30vh}}

.k12-map-viewer[open]{display:flex;flex-direction:column;gap:8px;overflow:hidden}.k12-map-viewer>header,.k12-map-viewer>.k11-viewer-tools,.k12-map-viewer>.k12-viewer-years,.k12-map-viewer>p{flex-shrink:0}.k12-viewer-years{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.k12-viewer-years button{padding:10px 15px;min-height:44px}.k12-viewer-years button[aria-pressed="true"]{background:#405e48;color:white;border:2px solid #263d2e}.k12-map-viewer>.k11-viewer-port{flex:1;min-height:0;height:auto}.k12-map-viewer>.k11-viewer-tools{margin:0}.k12-map-viewer>p{margin:4px 0;line-height:1.4}@media(max-width:600px){.k12-map-viewer{padding:10px}.k12-viewer-years{gap:5px}.k12-viewer-years button{padding:8px}.k12-map-viewer>p{font-size:12px}}
.k12-river-info{width:min(620px,94vw);padding:24px;background:#f6f1e7;color:#263b32;border:2px solid #8b7757;border-radius:14px}.k12-river-info p{font-size:19px;line-height:1.65}.k12-river-info button{min-height:44px;padding:12px}
dialog.k12-character-bubble{width:min(430px,calc(100vw - 24px));max-height:calc(100dvh - 24px);background:var(--speaker-background,#fff3d8);border-color:var(--speaker-border,#795735);padding:12px;border-radius:20px}dialog.k12-character-bubble::backdrop{background:#14251b12}dialog.k12-character-bubble>.learning-header h2{font-size:14px}dialog.k12-character-bubble .learning-body{max-height:55dvh;overflow:auto;padding:8px}dialog.k12-character-bubble .learning-body>.k12-position{display:none}dialog.k12-character-bubble .learning-conversation{padding:0;border:0;margin:0;background:transparent}dialog.k12-character-bubble .learning-conversation h3{font-size:20px;margin:3px 0 8px}dialog.k12-character-bubble .learning-conversation p{font-size:17px;margin:6px 0;line-height:1.45}dialog.k12-character-bubble .learning-footer{padding:4px}dialog.k12-character-bubble button{float:none}dialog.k12-character-bubble .speech-tail polygon{fill:var(--speaker-background,#fff3d8);stroke:var(--speaker-border,#795735)}.panorama-person.k12-sister>span{display:none}.panorama-person.k12-sister.sister-visible{animation:sister-arrive .6s ease-out}@keyframes sister-arrive{from{opacity:0;transform:translate(-20px,-100%)}to{opacity:1}}@media(prefers-reduced-motion:reduce){.panorama-person.k12-sister.sister-visible{animation:none}}
.karl-chapter dialog.k11-activity.k12-character-bubble{width:min(430px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:visible}.karl-chapter dialog.k12-character-bubble::backdrop{background:#14251b12}@keyframes sister-arrive{from{opacity:0;transform:translate(calc(-50% - 20px),-100%)}to{opacity:1;transform:translate(-50%,-100%)}}
.k12-dialogue .learning-body .learning-conversation{background:var(--speaker-background,#f3ead8);border-left:4px solid var(--speaker-border,#8b7757);border-radius:10px;padding:16px}.k12-dialogue .learning-body .learning-conversation h3{color:#293b32}.k12-dialogue.k12-character-bubble .learning-body .learning-conversation{padding:0;border:0}
/* Compact dialogue layout: one name, one text block, one control row. */
.karl-chapter dialog.k11-activity.k12-compact-dialog{width:min(760px,calc(100vw - 24px));padding:14px 18px;border-radius:22px;max-height:92dvh}.karl-chapter dialog.k11-activity.k12-character-bubble.k12-compact-dialog{width:min(620px,calc(100vw - 24px));max-height:92dvh}.k12-compact-dialog .learning-header{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;padding:0 0 8px}.k12-compact-dialog .learning-header h2{font:700 clamp(20px,2.2vw,28px)/1.2 Georgia,serif;margin:0;flex:1;min-width:0}.k12-compact-dialog .k12-dialog-count{font-size:12px;color:#5d665d;white-space:nowrap;order:1}.k12-compact-dialog .learning-header .learning-close{order:2;min-width:36px;min-height:36px;width:36px;height:36px;margin:0;padding:0;font-size:24px}.k12-compact-dialog .learning-body{padding:0;max-height:calc(92dvh - 90px);overflow:auto}.k12-compact-dialog .learning-body .learning-conversation{padding:4px 0 8px;margin:0;border:0;border-radius:0;background:transparent}.k12-compact-dialog .learning-body .learning-conversation p{font-size:18px;line-height:1.5;margin:5px 0 10px}.k12-dialog-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.k12-dialog-actions button{float:none;margin:0!important;min-height:40px;padding:8px 12px;font-size:14px;border-radius:10px}.k12-dialog-actions #k12-dialog-sound{display:flex;align-items:center;gap:5px}.k12-dialog-actions [data-focus="next"]{margin-left:auto!important;font-size:17px;font-weight:600;min-width:94px}.k12-compact-dialog .k11-explanation{margin:12px 0 0;padding:8px}.k12-compact-dialog .k11-explanation img{max-height:28vh}@media(max-width:480px){.karl-chapter dialog.k11-activity.k12-compact-dialog{padding:12px}.k12-compact-dialog .learning-body .learning-conversation p{font-size:16px}.k12-dialog-actions button{padding:7px 10px}.k12-dialog-actions [data-focus="next"]{min-width:80px}}
/* Portrait-led, single-colour dialogue cards with clearly separated controls. */
.k12-dialog-portrait{width:72px!important;height:72px!important;flex:0 0 72px;border:3px solid var(--speaker-border,#795735);border-radius:50%;background:#fff8ec;object-fit:cover;box-shadow:0 2px 5px #0002}.karl-chapter dialog.k12-dialogue .k12-dialog-actions button{background:#f1dba6;color:#253a32;border:2px solid #9a7a3e;box-shadow:0 1px 2px #0002;font-weight:600}.karl-chapter dialog.k12-dialogue .k12-dialog-actions button:hover{background:#e6c779}.karl-chapter dialog.k12-dialogue .k12-dialog-actions [data-focus="next"]{background:#e8c77f;border-color:#806128;color:#1f332a}.karl-chapter dialog.k12-dialogue .learning-close{background:#f1dba6;border:2px solid #9a7a3e;color:#253a32}.k12-dialogue .k12-dialog-actions button:focus-visible{outline:3px solid #236b8f;outline-offset:3px}.k12-compact-dialog .learning-header{padding-bottom:12px}.k12-compact-dialog .learning-body .learning-conversation p{margin:8px 0 16px;line-height:1.55}@media(max-width:480px){.k12-dialog-portrait{width:54px!important;height:54px!important;flex-basis:54px}.k12-compact-dialog .learning-header h2{font-size:19px}.k12-dialog-actions [data-focus="focus-speaker"]{font-size:12px}}
/* Chapter 11 dialogue structure: fixed panel, portrait/name card, full text width. */
.karl-chapter dialog.k12-activity.k12-dialogue{width:min(1000px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:94dvh;padding:14px;overflow:auto}.k12-dialogue .learning-body{max-height:none;padding:14px;overflow:visible}.k12-dialogue .learning-body .monastery-conversation{padding:18px!important;border:2px solid var(--speaker-border)!important;border-radius:18px;background:var(--speaker-background)!important}.k12-dialogue .monastery-identity{display:flex;align-items:center;gap:16px}.k12-dialogue .monastery-identity .dialogue-portrait{width:76px;height:76px;flex:0 0 76px;border-radius:14px;background:#fff8}.k12-dialogue .monastery-identity h3{font:700 clamp(22px,2.5vw,30px)/1.25 Georgia,serif;margin:0}.k12-dialogue .learning-body .monastery-conversation>p{font-size:clamp(17px,1.8vw,21px);line-height:1.6;margin:18px 0 10px;white-space:normal;overflow-wrap:break-word}.k12-dialogue .learning-body .monastery-conversation>.year-dialog-position{font-size:14px;text-align:right;margin:8px 0 0}.k12-dialogue .learning-body>button,.k12-dialogue .learning-footer button{background:#f1dba6;color:#253a32;border:2px solid #9a7a3e;border-radius:10px;padding:10px 16px;min-height:44px}.k12-dialogue .learning-body>[data-focus="next"]{background:#e8c77f;font-weight:600;margin:12px 8px 4px 0}@media(max-width:700px){.k12-dialogue .learning-body{padding:8px}.k12-dialogue .learning-body .monastery-conversation{padding:12px!important}.k12-dialogue .monastery-identity .dialogue-portrait{width:60px;height:60px;flex-basis:60px}}

/* Match chapter 11: neutral outer frame, colour exclusively inside speaker card. */
.karl-chapter dialog.k12-activity.k12-dialogue{background:#f5e7cb!important;border-color:#795735!important}.karl-chapter dialog.k12-dialogue>.learning-header,.karl-chapter dialog.k12-dialogue>.learning-body,.karl-chapter dialog.k12-dialogue>.learning-footer{background:#f5e7cb!important}.karl-chapter dialog.k12-dialogue .monastery-conversation{background:var(--speaker-background)!important;border:2px solid var(--speaker-border)!important}
.k12-book-transition .k11-transition-skip{position:absolute;right:20px;bottom:24px;z-index:2;padding:12px 18px;background:#f1dba6;color:#263b32;border:2px solid #967338;border-radius:10px;min-height:44px}.k12-activity .k11-book img{width:100%;height:100%;object-fit:contain}.k12-activity .k11-book-hotspot::after{content:'Die Versammlungshalle betreten'}

.k12-book-transition #k12-transition-sound{position:absolute;right:20px;top:20px;z-index:3;min-height:44px;background:#fff4dc;color:#302719}.k12-book-transition audio{display:none!important}

.karl-chapter .k12-scene-routes{position:static;display:flex;flex-wrap:wrap;gap:8px;max-width:100%;margin:10px 0;padding:10px;background:#efe2c5;border-radius:10px;pointer-events:auto}.k12-scene-routes:empty{display:none}.k12-scene-routes button{flex:0 1 auto;max-width:100%;white-space:normal;overflow-wrap:anywhere}

/* Keep long portrait dialogues and their illustrations inside the modal's scroll area. */
.karl-chapter dialog.k12-activity.k12-dialogue>.learning-body{
 flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;
 overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;
}
.karl-chapter dialog.k12-activity.k12-dialogue .k11-explanation{
 max-width:100%;margin:16px 0;padding:12px;
}
.karl-chapter dialog.k12-activity.k12-dialogue .k11-explanation img{
 display:block;width:100%;height:auto;max-height:45dvh;object-fit:contain;
}
.karl-chapter dialog.k12-activity.k12-dialogue .k11-explanation figcaption{
 white-space:normal;overflow-wrap:anywhere;line-height:1.5;margin-top:10px;
}
.k12-irminsul-viewer{overflow-y:auto;overscroll-behavior:contain;}
.k12-irminsul-viewer .k11-viewer-port{height:auto;max-height:60dvh;min-height:120px;}
.k12-irminsul-viewer>p{white-space:normal;overflow-wrap:anywhere;line-height:1.5;}
