/* Deterministic reader stylesheet: O011 HTML v19 */
:root{color-scheme:light dark;--paper:#fffdf9;--ink:#1e293b;--muted:#52606d;--line:#cbd5e1;--accent:#315c8c;--soft:#eef4fa;--proof:#f5f3ff;--max:78rem}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e8edf2;color:var(--ink);font:clamp(1rem,.25vw + .95rem,1.15rem)/1.68 Georgia,"Times New Roman",serif}
a{color:#174f87;text-underline-offset:.16em}.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:1rem;top:1rem;z-index:10;background:#fff;color:#000;padding:.7rem 1rem;border:2px solid #000}
.masthead{background:#18324c;color:#fff}.masthead-inner,main,.unit-nav ol,footer p{width:min(calc(100% - 2rem),var(--max));margin-inline:auto}.masthead-inner{padding:clamp(2rem,6vw,5rem) 0}.masthead h1{font-size:clamp(2.1rem,5vw,4.6rem);line-height:1.04;max-width:18ch;margin:.25rem 0}.subtitle{font-size:clamp(1.25rem,2.5vw,2rem);margin:.3rem 0}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font:700 .76rem/1.4 system-ui,sans-serif}
.unit-nav{position:sticky;top:0;z-index:4;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 10px #0f172a18;overflow-x:auto}.unit-nav ol{display:flex;gap:.35rem;list-style:none;padding:.6rem 0}.unit-nav a{display:block;white-space:nowrap;padding:.4rem .7rem;border-radius:.35rem;text-decoration:none;font:650 .9rem/1.2 system-ui,sans-serif}.unit-nav a:hover,.unit-nav a:focus{background:var(--soft)}
main{background:var(--paper);padding:clamp(1rem,4vw,4rem);box-shadow:0 1rem 4rem #0f172a18}.frontmatter,.backmatter{border-left:.35rem solid var(--accent);padding:0 0 0 clamp(1rem,3vw,2rem);margin:0 0 5rem}.unit{margin:0 0 7rem;scroll-margin-top:5rem}.unit-header{border-bottom:.2rem solid var(--accent);padding-top:1rem}.unit h2{font-size:clamp(1.85rem,4vw,3.2rem);line-height:1.15;margin:.2rem 0 1rem}.lecture,.worksheet,.solutions{margin-top:3rem}.lecture>h3,.worksheet>h3,.solutions>h3{font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.2;border-bottom:1px solid var(--line);padding-bottom:.45rem}.source-section{margin-top:2.5rem}.source-section h3{font:750 clamp(1.2rem,2.2vw,1.6rem)/1.25 system-ui,sans-serif;color:#234e75}
.semantic-block,.exercise,.source-solution{margin:1.5rem 0;padding:clamp(1rem,2.4vw,1.6rem);border:1px solid var(--line);border-radius:.55rem;background:#fff}.semantic-block h4,.exercise h4,.source-solution h4{font:750 1.08rem/1.3 system-ui,sans-serif;margin:0 0 .8rem;color:#234e75}.definition{border-left:.35rem solid #3b82a0}.theorem{border-left:.35rem solid #475569}.exercise{border-left:.35rem solid #7c3aed}.source-solution{border-left:.35rem solid #16856b;background:#f1fbf7}.scope-note,.dependency-note{color:var(--muted)}.solution-marker,.points{display:inline-block;font:650 .78rem/1 system-ui,sans-serif;padding:.32rem .48rem;margin:0 .5rem .5rem 0;border-radius:99rem;background:#e9d5ff;color:#4c1d95}.points{background:#dbeafe;color:#1e3a8a}
.proof,.hint{margin:1rem 0 0;padding:1rem;border-radius:.4rem;background:var(--proof)}.proof h5,.hint h5{font:750 .93rem/1.2 system-ui,sans-serif;margin:0 0 .5rem}.footnote{display:inline-block;border-bottom:1px dotted currentColor;color:var(--muted);font-size:.92em}.source-list{padding-left:1.8rem}.source-list.abc{list-style-type:lower-alpha}.source-list li>p:first-child{margin-top:0}.source-list li>p:last-child{margin-bottom:0}
.math.inline{font-family:"Cambria Math","STIX Two Math",serif;overflow-wrap:anywhere}.math.display{margin:1.25rem 0;padding:.8rem;overflow-x:auto;text-align:center;background:#f8fafc;border-radius:.35rem;color:#111827}
figure{margin:2rem auto;max-width:46rem;text-align:center}figure img{display:block;width:auto;max-width:100%;max-height:34rem;margin:auto;object-fit:contain}figcaption{margin:.65rem auto 0;color:var(--muted);font:.88rem/1.5 system-ui,sans-serif}.figure-caption{display:block;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:1rem}.media-rights{display:block;margin-top:.3rem}
p{max-width:74ch}.semantic-block p,.exercise p,.source-solution p{max-width:none}footer{background:#18324c;color:#fff;padding:1rem 0;margin-top:2rem}footer p{font:600 .85rem/1.4 system-ui,sans-serif}
@media(max-width:46rem){body{background:var(--paper)}main{width:100%;padding:1rem;box-shadow:none}.masthead-inner,.unit-nav ol,footer p{width:min(calc(100% - 1.4rem),var(--max))}.semantic-block,.exercise,.source-solution{padding:1rem}.unit-nav{position:static}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(prefers-color-scheme:dark){:root{--paper:#111827;--ink:#e5e7eb;--muted:#bac5d1;--line:#475569;--soft:#26384d}.unit-nav{background:#111827}.semantic-block,.exercise{background:#172033}.source-solution{background:#102e29}.math.display{background:#f8fafc;color:#111827}.source-section h3,.semantic-block h4,.exercise h4,.source-solution h4,a{color:#8ec5ff}}

/* Keep MathJax's intrinsic width inside the reader-owned scrolling region. */
.math.display{max-width:100%;min-width:0;contain:inline-size}
@media(max-width:46rem){.unit,.lecture,.worksheet,.semantic-block,.exercise,.source-solution,.proof{min-width:0;max-width:100%}.math.inline{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle}}

/* Static-first controls for admitted animated media. */
.animated-media-stage{display:grid;place-items:center;min-height:8rem}.animated-media-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.55rem;margin:.8rem auto 0;font:650 .88rem/1.25 system-ui,sans-serif}.animated-media-controls button,.animated-media-download{appearance:none;border:1px solid #315c8c;border-radius:.35rem;background:#fff;color:#174f87;padding:.55rem .75rem;text-decoration:none;cursor:pointer}.animated-media-controls button:hover,.animated-media-controls button:focus-visible,.animated-media-download:hover,.animated-media-download:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}.animated-media-controls button:disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.72}.animated-media-status{flex-basis:100%;color:var(--muted);font-weight:400}.animated-media-image{contain:layout paint}
@media(prefers-reduced-motion:reduce){.animated-media-controls [data-animation-action="play"]::after{content:" (gerak dikurangi)"}}
@media(prefers-color-scheme:dark){.animated-media-controls button,.animated-media-download{background:#172033;color:#8ec5ff;border-color:#8ec5ff}}

/* Receipt-backed source-linked animations remain explicit local downloads. */
.source-linked-animation{display:block;margin:1rem 0;padding:.8rem 1rem;border-left:.3rem solid #16856b;background:#f1fbf7;border-radius:.35rem}.source-linked-animation-download{display:inline-block;font:700 .95rem/1.35 system-ui,sans-serif}.source-linked-animation .media-rights{font:.82rem/1.45 system-ui,sans-serif;color:var(--muted);margin-top:.35rem}.solution-backlink{font:650 .88rem/1.3 system-ui,sans-serif}
@media(prefers-color-scheme:dark){.source-linked-animation{background:#102e29}}


.supplement,.assessment-bank{margin:3rem auto;max-width:88rem;padding:1.5rem;border-top:4px solid var(--accent)}
.supplement-nav{max-width:88rem;margin:0 auto;padding:1rem}.supplement-nav ul{display:flex;flex-wrap:wrap;gap:.8rem;list-style:none;padding:0}
.exam-form{margin:2rem 0;padding:1rem;border:1px solid var(--line);border-radius:.5rem}.exam-problem,.exam-solution{scroll-margin-top:5rem}
.exam-learner{display:grid;gap:1rem}.exam-solutions{margin-top:2rem}.original-repairs{margin-top:3rem;padding-top:1rem;border-top:2px solid var(--line)}
.bridge .definition,.bridge .beispiel{padding:1rem;margin:1rem 0;border-left:4px solid var(--accent);background:var(--surface)}
.supplement .math.inline,.assessment-bank .math.inline{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle}
.supplement .math.display,.assessment-bank .math.display{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden}
