.pq{border-top:3px double var(--rule-strong);margin-top:3rem;padding-top:1.75rem}.pq-heading{font-family:var(--font-serif);font-size:1.4rem;font-weight:600;line-height:1.3;margin:0 0 .6rem;color:var(--primary)}.pq-intro{font-size:.95rem;line-height:1.6;color:var(--ink-muted);max-width:58ch;margin:0 0 1.5rem}.pq-cabinet{--pq-bg: #203e3c;--pq-card: #2c4f74;--pq-deep: #1e3650;--pq-line: #3b638f;--pq-sand: #e3d1ac;--pq-gold: #f3c969;--pq-ok: #4ade80;--pq-bad: #f87171;background:var(--pq-bg);border:1px solid var(--pq-line);border-radius:10px;padding:clamp(1rem,3vw,1.5rem);color:var(--pq-sand);font-size:.95rem;line-height:1.55;display:flex;flex-direction:column;gap:1rem}.pq-cabinet kbd{font-family:var(--font-mono);font-size:.9em;background:var(--pq-deep);border:1px solid var(--pq-line);border-radius:3px;padding:.05em .35em}.pq-cabinet code{font-family:var(--font-mono);font-size:.9em}.pq-screen{background:var(--pq-card);border-radius:8px;padding:clamp(1rem,3vw,1.6rem)}.pq-cabinet [hidden]{display:none!important}.pq-btn{font-family:var(--font-mono);font-size:.82rem;font-weight:600;letter-spacing:.03em;border-radius:6px;padding:.7rem 1.2rem;cursor:pointer;border:1px solid transparent;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.pq-btn-primary{background:var(--pq-sand);color:#16302e;border-color:var(--pq-sand);width:100%}.pq-btn-primary:hover:not(:disabled){background:#fff}.pq-btn-ghost{background:transparent;color:var(--pq-sand);border-color:var(--pq-sand)}.pq-btn-ghost:hover:not(:disabled){background:var(--pq-deep)}.pq-btn:disabled{background:var(--pq-deep);border-color:var(--pq-line);color:#e3d1ac73;cursor:not-allowed}.pq-cabinet :focus-visible{outline:2px solid var(--pq-sand);outline-offset:2px}.pq-reg{max-width:26rem;margin:0 auto;display:flex;flex-direction:column;gap:.9rem}.pq-reg-head{text-align:center;margin-bottom:.4rem}.pq-reg-mark{font-size:2.6rem;line-height:1;margin-bottom:.5rem}.pq-reg-title{font-family:var(--font-serif);font-size:1.7rem;font-weight:700}.pq-reg-sub,.pq-final-sub{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.pq-field{display:flex;flex-direction:column;gap:.3rem}.pq-field label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.pq-field input{font-family:inherit;font-size:.95rem;color:var(--pq-sand);background:var(--pq-deep);border:1px solid var(--pq-line);border-radius:6px;padding:.65rem .75rem}.pq-field input::placeholder{color:#e3d1ac73}.pq-field input:focus{border-color:var(--pq-sand);outline:none}.pq-reg-error{min-height:1.2rem;font-size:.82rem;font-weight:600;text-align:center;color:var(--pq-bad)}.pq-reg-note{font-size:.76rem;text-align:center}.pq-hud{display:flex;flex-direction:column;gap:.75rem}.pq-hud-row,.pq-hud-progress{background:var(--pq-card);border-radius:8px;padding:.8rem 1rem}.pq-hud-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pq-hud-who{display:flex;align-items:center;gap:.7rem;min-width:0}.pq-avatar{flex-shrink:0;width:2.3rem;height:2.3rem;display:grid;place-items:center;border-radius:50%;background:var(--pq-deep);border:1px solid var(--pq-line)}.pq-hud-name{display:block;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.pq-hud-class{display:block;font-size:.8rem;opacity:.75;line-height:1.2}.pq-hud-score{text-align:right;flex-shrink:0}.pq-hud-label{display:block;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}.pq-hud-value{display:block;font-family:var(--font-mono);font-size:1.5rem;font-weight:700;color:var(--pq-gold);line-height:1.1}.pq-hud-meta{display:flex;justify-content:space-between;gap:.75rem;font-family:var(--font-mono);font-size:.72rem;margin-bottom:.5rem}.pq-level-title{color:var(--pq-gold);text-align:right}.pq-bar{background:var(--pq-deep);border-radius:999px;height:.5rem;overflow:hidden}.pq-bar-fill{background:var(--pq-sand);height:100%;width:0%;border-radius:999px;transition:width .3s ease}.pq-game{display:flex;flex-direction:column;gap:1.1rem}.pq-question{text-align:center}.pq-q-icon{font-size:2.8rem;line-height:1;margin-bottom:.6rem}.pq-q-prompt{font-size:1.1rem;font-weight:600;line-height:1.45;max-width:46ch;margin:0 auto}.pq-q-value{font-family:var(--font-mono);font-size:1.7rem;font-weight:700;color:var(--pq-gold);margin-top:.6rem;overflow-wrap:anywhere}.pq-q-code{font-family:var(--font-mono);font-size:.9rem;text-align:left;white-space:pre-wrap;background:var(--pq-deep);border:1px solid var(--pq-line);border-radius:6px;padding:.8rem .9rem;margin-top:.9rem;overflow-x:auto}.pq-options{display:grid;gap:.7rem}.pq-option{display:flex;align-items:flex-start;gap:.7rem;text-align:left;font:inherit;color:inherit;background:var(--pq-deep);border:2px solid var(--pq-line);border-radius:8px;padding:.85rem .95rem;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.pq-option:hover:not(:disabled){border-color:var(--pq-sand)}.pq-option-key{flex-shrink:0;width:1.5rem;height:1.5rem;display:grid;place-items:center;border-radius:50%;background:var(--pq-line);color:#fff;font-family:var(--font-mono);font-size:.72rem;font-weight:700}.pq-option-text{font-weight:600;white-space:pre-wrap;overflow-wrap:anywhere}.pq-option.is-mono .pq-option-text{font-family:var(--font-mono);font-size:.88rem}.pq-option.is-correct{background:var(--pq-ok);border-color:var(--pq-ok);color:#14331f}.pq-option.is-correct .pq-option-key{background:#14331f}.pq-option.is-wrong{background:var(--pq-bad);border-color:var(--pq-bad);color:#3b0d0d;opacity:.55}.pq-option:disabled{cursor:not-allowed}.pq-feedback{border:2px solid var(--pq-line);border-radius:8px;padding:.9rem 1rem;text-align:center;background:var(--pq-deep)}.pq-feedback.is-correct{border-color:var(--pq-ok);background:#4ade8024}.pq-feedback.is-hint{border-color:var(--pq-gold);background:#f3c96924}.pq-feedback.is-wrong{border-color:var(--pq-bad);background:#f8717124}.pq-feedback-icon{font-size:1.5rem;line-height:1;margin-bottom:.35rem}.pq-feedback-title{font-weight:700;font-size:1.05rem;margin-bottom:.2rem}.pq-feedback.is-correct .pq-feedback-title{color:var(--pq-ok)}.pq-feedback.is-hint .pq-feedback-title{color:var(--pq-gold)}.pq-feedback.is-wrong .pq-feedback-title{color:var(--pq-bad)}.pq-feedback-text{font-size:.9rem}.pq-answer{display:block;font-family:var(--font-mono);font-size:.85rem;font-weight:700;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--pq-deep);border-radius:4px;padding:.4rem .6rem;margin:.4rem 0;text-align:left}.pq-next{width:auto;margin-top:.8rem}.pq-keyhint{font-size:.74rem;text-align:center}.pq-trans{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.6rem}.pq-trans-title{font-family:var(--font-serif);font-size:1.6rem;font-weight:700}.pq-trans-level{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--pq-gold)}.pq-stars{font-size:2rem;letter-spacing:.2rem;line-height:1}.pq-stars .is-dim{opacity:.2}.pq-badge{background:var(--pq-deep);border:1px solid var(--pq-gold);border-radius:8px;padding:1.1rem 1.5rem;width:100%;max-width:20rem}.pq-badge-mark{font-size:2.4rem;line-height:1}.pq-badge-label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;opacity:.8}.pq-badge-name{font-weight:700;font-size:1.05rem;color:var(--pq-gold)}.pq-trans-score{font-size:.95rem}.pq-trans-score strong,.pq-final-line strong{font-family:var(--font-mono);color:var(--pq-gold)}.pq-trans .pq-btn-primary{max-width:20rem;margin-top:.5rem}.pq-final{display:flex;flex-direction:column;gap:1.25rem}.pq-final-head{text-align:center}.pq-final-mark{font-size:2.6rem;line-height:1;margin-bottom:.3rem}.pq-final-title{font-family:var(--font-serif);font-size:1.7rem;font-weight:700}.pq-final-grid{display:grid;gap:.9rem}.pq-panel{background:var(--pq-deep);border:1px solid var(--pq-line);border-radius:8px;padding:.9rem 1rem}.pq-panel-rank{border-color:var(--pq-gold);text-align:center;display:flex;flex-direction:column;justify-content:center}.pq-panel-label,.pq-block-title{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;opacity:.8;margin-bottom:.3rem}.pq-block-title{opacity:1;color:var(--pq-gold);border-bottom:1px solid var(--pq-line);padding-bottom:.4rem;margin-bottom:.7rem}.pq-final-name{font-weight:700;font-size:1.1rem;color:var(--pq-gold);overflow-wrap:anywhere}.pq-final-line{font-size:.88rem;opacity:.9}.pq-final-rank{font-weight:700;font-size:1.35rem;color:var(--pq-gold);line-height:1.2}.pq-badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.5rem}.pq-badge-chip{background:var(--pq-deep);border:1px solid rgba(243,201,105,.5);border-radius:6px;padding:.5rem .65rem;font-size:.82rem;text-align:center}.pq-chip-stars{display:block;font-size:.72rem;letter-spacing:.1em}.pq-review{background:var(--pq-deep);border:1px solid var(--pq-line);border-radius:8px;padding:.85rem 1rem;max-height:14rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;font-size:.85rem}.pq-review-perfect{color:var(--pq-ok);font-weight:700;text-align:center;padding:.5rem 0}.pq-review-item{border-bottom:1px solid var(--pq-line);padding-bottom:.65rem}.pq-review-item:last-child{border-bottom:none;padding-bottom:0}.pq-review-q{font-family:var(--font-mono);font-size:.76rem;opacity:.7;white-space:pre-wrap}.pq-review-a{font-family:var(--font-mono);font-weight:700;color:var(--pq-ok);white-space:pre-wrap}.pq-review-why{font-size:.8rem;font-style:italic;opacity:.9}.pq-pledge{background:var(--pq-bg);border:1px dashed var(--pq-sand);border-radius:8px;padding:1rem 1.1rem}.pq-pledge-note{font-size:.82rem;opacity:.85;margin-bottom:.6rem}.pq-check{display:flex;align-items:flex-start;gap:.6rem;font-size:.88rem;padding:.3rem .35rem;border-radius:4px;cursor:pointer}.pq-check:hover{background:var(--pq-card)}.pq-check input{accent-color:var(--pq-card);width:1.1rem;height:1.1rem;margin-top:.1rem;flex-shrink:0}.pq-save-status{min-height:1.3rem;text-align:center;font-size:.85rem;font-weight:600;color:var(--pq-gold)}.pq-save-status.is-done{color:var(--pq-ok)}.pq-actions{display:grid;gap:.6rem}.pq-actions .pq-btn{width:100%}@media(min-width:560px){.pq-options{grid-template-columns:1fr 1fr}.pq-options.is-wide{grid-template-columns:1fr}.pq-final-grid{grid-template-columns:1fr 1fr}.pq-actions{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:no-preference){.pq-screen,.pq-feedback{animation:pq-pop .3s ease-out both}.pq-option:hover:not(:disabled){transform:translateY(-2px)}.pq-option.is-shaking{animation:pq-shake .4s cubic-bezier(.36,.07,.19,.97) both}}@keyframes pq-pop{0%{transform:scale(.98);opacity:0}to{transform:scale(1);opacity:1}}@keyframes pq-shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}@media print{html[data-pq-print] body *{visibility:hidden!important}html[data-pq-print] .pq-final,html[data-pq-print] .pq-final *{visibility:visible!important}html[data-pq-print] .pq-final{position:absolute;top:0;left:0;width:100%;box-sizing:border-box;background:#fff;color:#16302e}html[data-pq-print] .pq-final .pq-panel,html[data-pq-print] .pq-final .pq-review,html[data-pq-print] .pq-final .pq-badge-chip{background:#fff;border-color:#9aa3ad}html[data-pq-print] .pq-final .pq-final-name,html[data-pq-print] .pq-final .pq-final-rank,html[data-pq-print] .pq-final .pq-block-title,html[data-pq-print] .pq-final .pq-final-line strong,html[data-pq-print] .pq-final .pq-review-a{color:#16302e}html[data-pq-print] .pq-final .pq-review{max-height:none;overflow:visible}html[data-pq-print] .pq-print-hide{display:none!important}}.concept-list strong{font-weight:700;color:var(--ink)}.concept-list em{font-style:italic;color:var(--ink-muted)}.concept-list u{text-decoration:underline;text-decoration-color:var(--stamp-progress);text-decoration-thickness:2px;text-underline-offset:2px}.concept-list code{font-family:var(--font-mono);font-size:.88em;background:var(--surface-container-low, #f4f3f7);border:1px solid var(--rule);border-radius:3px;padding:.05em .35em}.concept-list .hl-primary{color:var(--primary);font-weight:600}.concept-list .hl-secondary{color:var(--secondary);font-weight:600}.concept-list .hl-gold{color:var(--stamp-done);font-weight:600}.demo-widget-block{border-top:1px solid var(--rule);padding-top:1.5rem;margin-top:1.5rem}.demo-widget-block+.demo-widget-block{border-top:none;padding-top:0;margin-top:1.25rem}.demo-widget-title{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--primary);margin:0 0 1rem}.reveal-btn{font-family:var(--font-mono);font-size:.78rem;font-weight:600;letter-spacing:.03em;background:var(--paper);color:var(--stamp-done);border:1px solid var(--stamp-done);border-radius:4px;padding:.55rem 1.1rem;cursor:pointer;transition:background-color .15s ease,color .15s ease}.reveal-btn:hover{background:var(--stamp-done);color:var(--paper)}.exercise-demo{margin-top:1.25rem}.demo-inputs{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:.9rem}.demo-inputs label{display:flex;flex-direction:column;gap:.3rem;font-family:var(--font-mono);font-size:.72rem;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em}.demo-inputs input{font-family:var(--font-mono);font-size:.9rem;color:var(--ink);background:var(--surface-container-low, #f4f3f7);border:1px solid var(--rule-strong);border-radius:4px;padding:.45rem .6rem;width:9rem}.demo-btn{font-family:var(--font-mono);font-size:.78rem;font-weight:500;background:var(--stamp-done);color:var(--paper);border:none;border-radius:4px;padding:.55rem 1rem;cursor:pointer;transition:background-color .15s ease}.demo-btn:hover{background:var(--primary)}.demo-btn:disabled{opacity:.5;cursor:not-allowed}.demo-btn-ghost{background:transparent;border:1px solid var(--rule-strong);color:var(--ink-muted)}.demo-btn-ghost:hover{background:var(--surface-container-low, #f4f3f7);color:var(--ink)}.demo-repl-btn{font-family:var(--font-mono);font-size:.76rem;background:var(--surface-container-low, #f4f3f7);color:var(--ink);border:1px solid var(--rule-strong);border-radius:4px;padding:.45rem .7rem;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.demo-repl-btn:hover{border-color:var(--stamp-done);background:var(--paper)}.demo-step{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-muted);margin:0 0 1rem}.demo-split{display:flex;flex-direction:column;gap:1.1rem}.demo-code{background:#0d2d49;color:#e3eaf0;border-radius:4px;padding:1rem 1.1rem;overflow-x:auto;margin:0;border-left:3px solid var(--stamp-done);width:100%;box-sizing:border-box}.demo-code code{font-family:var(--font-mono);font-size:.78rem;line-height:1.65}.code-line{display:block;padding:.05rem .35rem;margin:0 -.35rem;border-radius:3px;white-space:pre-wrap;word-break:break-word;transition:background-color .2s ease,opacity .2s ease}.code-line.active{background:#2c4f7473}.code-line.is-comment{font-style:italic}.demo-side{display:flex;flex-direction:column;gap:.9rem}.bucket-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6rem}.bucket{display:flex;flex-direction:column;gap:.3rem;background:var(--surface-container-low, #f4f3f7);border:1px solid var(--rule-strong);border-radius:4px;padding:.5rem .65rem;transition:border-color .2s ease,background-color .2s ease}.bucket span{font-family:var(--font-mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted)}.bucket strong{font-family:var(--font-mono);font-size:1rem;color:var(--ink)}.bucket.is-filled{border-color:var(--stamp-done);background:var(--paper)}.bucket.is-filled strong{color:var(--stamp-done)}.demo-input-row{display:flex;gap:.5rem}.demo-input-row input{flex:1;font-family:var(--font-mono);font-size:.85rem;background:var(--surface-container-low, #f4f3f7);border:1px solid var(--rule-strong);border-radius:4px;padding:.45rem .6rem;color:var(--ink)}.demo-output{background:var(--surface-container-low, #f4f3f7);border:1px dashed var(--rule-strong);border-radius:4px;padding:.7rem .85rem;min-height:3rem;font-family:var(--font-mono);font-size:.8rem;color:var(--ink);line-height:1.6}.demo-traceback{white-space:pre-wrap;word-break:break-word}.demo-output p{margin:0}.demo-output .placeholder{color:var(--ink-muted);font-style:italic}.demo-output .is-error{color:#b3402a}.demo-output .is-ok{color:var(--stamp-done);font-weight:600}.course-page[data-astro-cid-d3j36rfn]{max-width:720px;margin:0 auto;padding:clamp(2rem,6vw,3.5rem) clamp(1.25rem,4vw,1.5rem) 5rem}.back-link[data-astro-cid-d3j36rfn]{display:inline-block;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.05em;color:var(--ink-muted);text-decoration:none;margin-bottom:2rem}.back-link[data-astro-cid-d3j36rfn]:hover{color:var(--ink)}.course-header[data-astro-cid-d3j36rfn]{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;border-bottom:3px double var(--rule-strong);padding-bottom:1.75rem;margin-bottom:1.75rem}.eyebrow[data-astro-cid-d3j36rfn]{display:flex;align-items:center;gap:.55rem;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .9rem}.eyebrow-dot[data-astro-cid-d3j36rfn]{width:.5rem;height:.5rem;border-radius:50%;background:var(--stamp-done);flex-shrink:0}h1[data-astro-cid-d3j36rfn]{font-family:var(--font-serif);font-weight:700;font-size:clamp(2.1rem,5vw,2.75rem);line-height:1.05;margin:0 0 .5rem;letter-spacing:-.01em;color:var(--primary)}.subtitle[data-astro-cid-d3j36rfn]{font-family:var(--font-serif);font-style:italic;font-size:1.1rem;color:var(--ink-muted);margin:0}.intro[data-astro-cid-d3j36rfn]{font-size:1.02rem;line-height:1.65;color:var(--ink-muted);max-width:58ch;margin:0 0 2rem}.topic-tabs[data-astro-cid-d3j36rfn]{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem}.topic-tab[data-astro-cid-d3j36rfn]{font-family:var(--font-mono);font-size:.85rem;font-weight:600;background:var(--paper);color:var(--ink-muted);border:1px solid var(--rule-strong);border-radius:999px;padding:.55rem 1.15rem;cursor:pointer;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.topic-tab[data-astro-cid-d3j36rfn]:hover{color:var(--ink)}.topic-tab[data-astro-cid-d3j36rfn].is-active{background:var(--primary);border-color:var(--primary);color:var(--paper)}.topic-panel[data-astro-cid-d3j36rfn]{padding-top:.25rem}.session-head[data-astro-cid-d3j36rfn]{display:flex;align-items:baseline;gap:.9rem;margin-bottom:1.25rem}.session-num[data-astro-cid-d3j36rfn]{font-family:var(--font-mono);font-weight:600;font-size:.85rem;color:var(--stamp-done);flex-shrink:0}.session-head[data-astro-cid-d3j36rfn] h2[data-astro-cid-d3j36rfn]{font-family:var(--font-serif);font-size:1.4rem;font-weight:600;margin:0;line-height:1.3;color:var(--primary)}.section-label[data-astro-cid-d3j36rfn]{font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--stamp-done);margin:0 0 .65rem}.concept[data-astro-cid-d3j36rfn]{margin-bottom:1.75rem}.concept-list[data-astro-cid-d3j36rfn]{margin:0;padding-left:1.3em;max-width:62ch}.concept-list[data-astro-cid-d3j36rfn] li[data-astro-cid-d3j36rfn]{font-size:.95rem;line-height:1.65;color:var(--ink);margin:0 0 .6rem}.concept-list[data-astro-cid-d3j36rfn] li[data-astro-cid-d3j36rfn]::marker{color:var(--stamp-done)}.concept-list[data-astro-cid-d3j36rfn] li[data-astro-cid-d3j36rfn]:last-child{margin-bottom:0}.key-terms[data-astro-cid-d3j36rfn]{background:var(--surface-container-low, #f4f3f7);border:1px solid var(--rule);border-radius:6px;padding:1rem 1.25rem;margin-bottom:1.75rem}.key-terms[data-astro-cid-d3j36rfn] .section-label[data-astro-cid-d3j36rfn]{margin-bottom:.75rem}.key-terms-list[data-astro-cid-d3j36rfn]{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:.5rem 1rem}.key-terms-list[data-astro-cid-d3j36rfn] dt[data-astro-cid-d3j36rfn]{font-family:var(--font-mono);font-weight:700;font-size:.82rem;color:var(--ink);white-space:nowrap}.key-terms-list[data-astro-cid-d3j36rfn] dd[data-astro-cid-d3j36rfn]{margin:0;font-size:.85rem;line-height:1.5;color:var(--ink-muted)}.exercise[data-astro-cid-d3j36rfn]{border-top:3px double var(--rule-strong);padding-top:1.5rem}.activity[data-astro-cid-d3j36rfn]{border:1px dashed var(--rule-strong);border-radius:4px;padding:.9rem 1.1rem;margin-bottom:1.5rem}.activity-label[data-astro-cid-d3j36rfn]{display:inline-block;font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--stamp-done);margin-bottom:.35rem}.activity[data-astro-cid-d3j36rfn] p[data-astro-cid-d3j36rfn]{margin:0;font-size:.92rem;line-height:1.55;color:var(--ink-muted)}.course-materials[data-astro-cid-d3j36rfn]{margin-top:3rem;padding-top:1.75rem;border-top:1px solid var(--rule)}.course-materials[data-astro-cid-d3j36rfn] h3[data-astro-cid-d3j36rfn]{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .9rem;font-weight:600}.source-note[data-astro-cid-d3j36rfn]{font-size:.85rem;line-height:1.6;color:var(--ink-muted);margin:0;max-width:56ch}.source-note[data-astro-cid-d3j36rfn] a[data-astro-cid-d3j36rfn]{color:var(--primary);border-bottom:1px solid var(--rule-strong);text-decoration:none;padding-bottom:.05rem;transition:border-color .15s ease,color .15s ease}.source-note[data-astro-cid-d3j36rfn] a[data-astro-cid-d3j36rfn]:hover{border-color:var(--stamp-done);color:var(--stamp-done)}@media(max-width:560px){.course-header[data-astro-cid-d3j36rfn]{flex-direction:column}}
