/* Module 115 — copyable code beside a practical's guide (v1.399.822). Design G5hjAJ / gRrSW / d0BXe5. */
.ra-pcode{--pc-ink:#001242;--pc-text:#344054;--pc-mut:#525C70;--pc-line:#D5DFE8;--pc-btn:#CBD5DF;--pc-pri:#006D91;--pc-pri-d:#005E7C;--pc-tint:#E6F5FB;--pc-code:#F2F6F9;--pc-code-ink:#132A3A;--pc-ok:#067647;--pc-ok-bg:#E4F6EC;--pc-ok-line:#9FD4B6;--pc-warn:#9A3412;
	--pc-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
	margin:0 0 18px;font-family:var(--ra-font-display,"Source Sans 3",system-ui,sans-serif);color:var(--pc-text);min-width:0;max-width:100%}
.ra-pcode *,.ra-pcode *::before,.ra-pcode *::after{box-sizing:border-box}
.ra-pcode .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* toolbar: Guide | Guide + Code ............ Download code */
.ra-pcode-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.ra-pcode-modes{display:inline-flex;gap:4px}
.ra-pcode:not(.is-ready) .ra-pcode-modes{visibility:hidden}
/* v1.399.826 (user: "these buttons are super huge, not following site standard"): the site's own stage buttons
   (document bar: Full screen, up/down) are 30px, Roboto 12px/700, 3px corners, #E2E2E2 border, navy text. Same here. */
.ra-pcode button.ra-pcode-mode,.ra-pcode button.ra-pcode-dl,.ra-pcode button.ra-pcode-reset,.ra-pcode button.ra-pcode-page,.ra-pcode button.ra-pcode-copy,.ra-pcode button.ra-pcode-select{
	display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;min-height:0;padding:6px 12px;margin:0;border:1px solid var(--ra-line,#E2E2E2);border-radius:var(--ra-radius-sm,3px);background:#fff;color:var(--ra-navy,#001242);
	font:700 12px/1 var(--ra-font-accent,Roboto),system-ui,sans-serif;text-transform:none;letter-spacing:0;cursor:pointer;box-shadow:none;white-space:nowrap}
.ra-pcode button svg{width:13px;height:13px;flex:none}
.ra-pcode button.ra-pcode-mode:hover,.ra-pcode button.ra-pcode-dl:hover,.ra-pcode button.ra-pcode-reset:hover,.ra-pcode button.ra-pcode-page:hover,.ra-pcode button.ra-pcode-copy:hover,.ra-pcode button.ra-pcode-select:hover{background:var(--ra-sunk,#F4F4F4);border-color:#CDD3DC}
.ra-pcode button.ra-pcode-mode.is-on,.ra-pcode button.ra-pcode-mode.is-on:hover{background:var(--ra-primary,#05A2DB);border-color:var(--ra-primary,#05A2DB);color:#fff}
.ra-pcode button:focus-visible,.ra-pcode .ra-pcode-pre:focus-visible,.ra-pcode input:focus-visible,.ra-pcode select:focus-visible{outline:2px solid var(--pc-ink);outline-offset:2px}
.ra-pcode .ra-pcode-narrow{display:none}
.ra-pcode.is-narrow .ra-pcode-wide{display:none}
.ra-pcode.is-narrow .ra-pcode-narrow{display:inline}

/* panels */
.ra-pcode-grid{display:block;min-width:0}
.ra-pcode-guide{min-width:0}
.ra-pcode-guide>.ra-st-doc{margin:0}
.ra-pcode-side{min-width:0;display:flex;flex-direction:column;gap:14px;margin-top:18px}
.ra-pcode.is-ready.is-wide[data-mode="split"].has-guide .ra-pcode-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:20px;align-items:start}
.ra-pcode.is-ready.is-wide[data-mode="split"].has-guide .ra-pcode-side{margin-top:0;position:sticky;top:calc(var(--ra-pcode-top,73px) + 4px);max-height:calc(100vh - var(--ra-pcode-top,73px) - 20px);overflow:auto;padding-right:2px}
.ra-pcode.is-ready[data-mode="guide"] .ra-pcode-side{display:none}
.ra-pcode.is-ready.is-narrow[data-mode="split"].has-guide .ra-pcode-guide{display:none}
.ra-pcode.is-ready.is-narrow[data-mode="split"] .ra-pcode-side{margin-top:0}
.ra-pcode.no-guide .ra-pcode-side{margin-top:0}
/* small screens: the Guide | Code switch stays reachable while reading, so each tab keeps its place */
.ra-pcode.is-ready.is-narrow.has-guide .ra-pcode-bar{position:sticky;top:var(--ra-pcode-top,60px);z-index:6;margin:0 -4px 14px;padding:8px 4px;background:var(--ra-sunk,#F4F7FA);box-shadow:0 1px 0 var(--pc-line)}

.ra-pcode-h{margin:0;font:700 22px/1.2 var(--ra-font-display,"Source Sans 3",sans-serif);color:var(--pc-ink)}
.ra-pcode-sub{margin:4px 0 0;font-size:14px;color:var(--pc-mut)}
.ra-pcode-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.ra-pcode-sel select,.ra-pcode-find input{height:32px;border:1px solid var(--pc-btn);border-radius:4px;background:#fff;color:var(--pc-pri-d);font:600 13px var(--ra-font-display,"Source Sans 3",sans-serif)}
.ra-pcode-sel select{padding:0 30px 0 12px;max-width:100%}
.ra-pcode-find{position:relative;flex:1;min-width:150px;display:block;margin:0}
.ra-pcode-find svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--pc-pri);pointer-events:none}
.ra-pcode-find input{width:100%;padding:0 12px 0 32px;font-weight:400;color:var(--pc-text)}
.ra-pcode-list{display:flex;flex-direction:column;gap:12px}

/* one code block (component d0BXe5) */
.ra-pcode-card{background:#fff;border:1px solid var(--pc-line);border-radius:6px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.ra-pcode-card[hidden]{display:none}
.ra-pcode-ch{display:flex;align-items:center;gap:10px;justify-content:space-between}
.ra-pcode-ct,.ra-pcode .ra-pcode-card .ra-pcode-ct{margin:0;text-transform:none;letter-spacing:normal;font:700 15.5px/1.3 var(--ra-font-display,"Source Sans 3",sans-serif);color:var(--pc-ink);overflow-wrap:anywhere;min-width:0}
.ra-pcode button.ra-pcode-copy{flex:none}
.ra-pcode button.ra-pcode-copy.is-ok{background:var(--pc-ok-bg);border-color:var(--pc-ok-line);color:var(--pc-ok)}
.ra-pcode button.ra-pcode-copy.is-fail{border-color:#F3C8A8;color:var(--pc-warn)}
.ra-pcode-pre{margin:0;padding:12px 14px;background:var(--pc-code);border:1px solid var(--pc-btn);border-radius:4px;color:var(--pc-code-ink);
	font:400 13px/1.7 var(--pc-mono);white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;tab-size:4;max-height:420px;overflow:auto;user-select:text;-webkit-user-select:text}
.ra-pcode-pre code{font:inherit;background:none;padding:0;color:inherit;white-space:inherit;border:0}
.ra-pcode-cf{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ra-pcode-meta{font:600 12.5px/1.2 var(--ra-font-display,"Source Sans 3",sans-serif);color:var(--pc-mut)}

.ra-pcode-msg{margin:0;font-size:13.5px;line-height:1.45;color:var(--pc-ok)}
.ra-pcode-msg.is-fail{color:var(--pc-warn)}
.ra-pcode-msg .ra-pcode-select{margin-top:6px}
.ra-pcode-none{padding:18px;border:1px dashed var(--pc-line);border-radius:6px;text-align:center;color:var(--pc-mut)}
.ra-pcode-none p{margin:0 0 10px}
.ra-pcode-note{margin:0;font-size:13px;line-height:1.45;color:var(--pc-mut)}
.ra-pcode-flash{animation:ra-pcode-flash 1.6s ease-out}
@keyframes ra-pcode-flash{0%{box-shadow:0 0 0 4px rgba(0,109,145,.45)}100%{box-shadow:0 0 0 4px rgba(0,109,145,0)}}

@media (max-width:600px){
	.ra-pcode-bar{gap:8px}
	.ra-pcode button.ra-pcode-mode,.ra-pcode button.ra-pcode-dl,.ra-pcode button.ra-pcode-copy,.ra-pcode button.ra-pcode-page,.ra-pcode button.ra-pcode-select{height:36px}
	.ra-pcode-tools{flex-direction:column;align-items:stretch}
	.ra-pcode-sel select{width:100%;height:38px}
	.ra-pcode-find input{height:38px}
}
@media (prefers-reduced-motion:reduce){.ra-pcode-flash{animation:none}}

/* ---------------- author: Edit lesson → Content → Code blocks (design bxdr2) ---------------- */
.ra-pce{--pc-ink:#001242;--pc-text:#344054;--pc-mut:#525C70;--pc-line:#D5DFE8;--pc-btn:#CBD5DF;--pc-pri:#006D91;--pc-pri-d:#005E7C;--pc-tint:#E6F5FB;--pc-code:#F2F6F9;--pc-code-ink:#132A3A;--pc-ok:#067647;--pc-warn:#9A3412;--pc-bad:#B42318;
	--pc-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
	display:flex;flex-direction:column;gap:14px;font-family:var(--ra-font-display,"Source Sans 3",system-ui,sans-serif);color:var(--pc-text);font-size:14px;line-height:1.45;text-align:left}
.ra-pce *,.ra-pce *::before,.ra-pce *::after{box-sizing:border-box}
.ra-pce [hidden]{display:none!important}
.ra-pce-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
.ra-pce-head h4,.ra-pce .ra-pce-head h4{text-transform:none;letter-spacing:normal;margin:0;font:700 18px/1.25 var(--ra-font-display,"Source Sans 3",sans-serif);color:var(--pc-ink)}
.ra-pce-head p{margin:4px 0 0;font-size:13.5px;color:var(--pc-mut);font-weight:400}
.ra-pce-st{flex:none;display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:100px;font:600 11.5px/1.4 var(--ra-font-display,"Source Sans 3",sans-serif);background:#EEF1F5;color:var(--pc-mut);white-space:nowrap}
.ra-pce-st.is-pub{background:#E4F6EC;color:var(--pc-ok)}
.ra-pce-st.is-unpub{background:#FFF4DE;color:#8A5A00}
.ra-pce-st.is-busy{background:var(--pc-tint);color:var(--pc-pri-d)}
.ra-pce-st.is-fail{background:#FDECEC;color:var(--pc-bad)}
.ra-pce-note{margin:0;padding:10px 12px;border-radius:4px;font-size:13px;font-weight:400;background:#F8FAFC;border:1px solid var(--pc-line);color:var(--pc-mut)}
.ra-pce-note.is-warn{background:#FFF7ED;border-color:#F3C8A8;color:var(--pc-warn)}
.ra-pce-note.is-bad{background:#FDECEC;border-color:#F3B4B4;color:var(--pc-bad)}
.ra-pce-note b{color:inherit}
.ra-pce .ra-pce-note button{margin:6px 8px 0 0}
.ra-pce-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ra-pce-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#fff;border:1px solid var(--pc-line);border-radius:4px}
.ra-pce-row.is-edit{background:var(--pc-tint);border-color:var(--pc-pri)}
.ra-pce-row.is-bad{border-color:var(--pc-bad)}
.ra-pce-row.is-drag{opacity:.45}
.ra-pce-row.is-over{box-shadow:0 -3px 0 var(--pc-pri)}
.ra-pce-grip{flex:none;display:flex;color:#667085;cursor:grab;padding:4px 2px;touch-action:none}
.ra-pce-rt{flex:1;min-width:0}
.ra-pce-rt b{display:block;font:600 15px/1.3 var(--ra-font-display,"Source Sans 3",sans-serif);color:var(--pc-text);overflow-wrap:anywhere}
.ra-pce-row.is-edit .ra-pce-rt b{color:var(--pc-pri-d)}
.ra-pce-rt small{display:block;font-size:12.5px;color:var(--pc-mut);font-weight:400}
.ra-pce-rt small.is-bad{color:var(--pc-bad);font-weight:600}
.ra-pce .ra-pce-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 12px;margin:0;border:1px solid var(--pc-btn);border-radius:4px;background:#fff;color:var(--pc-pri-d);font:600 14px/1.1 var(--ra-font-display,"Source Sans 3",sans-serif);cursor:pointer;text-transform:none;letter-spacing:0;box-shadow:none;width:auto}
.ra-pce .ra-pce-btn:hover:not(:disabled){background:var(--pc-tint);border-color:var(--pc-pri)}
.ra-pce .ra-pce-btn:disabled{opacity:.45;cursor:default}
.ra-pce .ra-pce-btn.is-pri{background:var(--pc-pri);border-color:var(--pc-pri);color:#fff}
.ra-pce .ra-pce-btn.is-pri:hover:not(:disabled){background:var(--pc-pri-d)}
.ra-pce .ra-pce-btn.is-ico{width:32px;min-height:32px;padding:0;color:var(--pc-mut)}
.ra-pce .ra-pce-btn.is-link{border:0;background:none;padding:0;min-height:0;text-decoration:underline}
.ra-pce .ra-pce-btn:focus-visible,.ra-pce input:focus-visible,.ra-pce select:focus-visible,.ra-pce textarea:focus-visible{outline:2px solid var(--pc-ink);outline-offset:2px}
.ra-pce-ed{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--pc-line);border-radius:4px;background:#fff}
.ra-pce-ed .ra-pce-f{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0}
.ra-pce-ed .ra-pce-f>span{font:600 13px/1.2 var(--ra-font-display,"Source Sans 3",sans-serif);color:var(--pc-text)}
.ra-pce-ed .ra-pce-f>span small{font-weight:400;color:var(--pc-mut)}
.ra-pce-ed input,.ra-pce-ed select{width:100%;height:40px;padding:0 10px;border:1px solid var(--pc-btn);border-radius:4px;background:#fff;color:#101828;font:400 15px var(--ra-font-display,"Source Sans 3",sans-serif)}
.ra-pce-ed textarea{width:100%;min-height:150px;padding:12px 14px;border:1px solid var(--pc-btn);border-radius:4px;background:var(--pc-code);color:var(--pc-code-ink);font:400 13px/1.7 var(--pc-mono);resize:vertical;white-space:pre;overflow:auto;tab-size:4}
.ra-pce-ed .is-err input,.ra-pce-ed .is-err select,.ra-pce-ed .is-err textarea{border-color:var(--pc-bad)}
.ra-pce-err{margin:0;font-size:12.5px;font-weight:600;color:var(--pc-bad)}
.ra-pce-hint{margin:0;font-size:12px;color:var(--pc-mut);font-weight:400}
.ra-pce-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ra-pce-acts{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ra-pce-acts>span{display:inline-flex;gap:8px}
.ra-pce-pv{border-top:1px dashed var(--pc-line);padding-top:12px}
.ra-pce-pv>b{display:block;margin-bottom:8px;font:700 11.5px/1 var(--ra-font-display,"Source Sans 3",sans-serif);letter-spacing:.08em;color:var(--pc-pri)}
.ra-pce-pv .ra-pcode-card{pointer-events:none}
.ra-pce-pv>.ra-pcode{margin:0}
.ra-pce-empty{display:flex;flex-direction:column;gap:12px;align-items:flex-start;padding:20px;background:#F4F7FA;border:1px solid var(--pc-line);border-radius:6px}
.ra-pce-empty b{font:700 18px/1.25 var(--ra-font-display,"Source Sans 3",sans-serif);color:var(--pc-ink)}
.ra-pce-empty p{margin:0;font-size:14px;color:var(--pc-mut);font-weight:400}
.ra-pce-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--pc-line)}
.ra-pce-undo{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:4px;background:#001242;color:#fff;font-size:13.5px}
.ra-pce .ra-pce-undo .ra-pce-btn{background:transparent;border-color:rgba(255,255,255,.5);color:#fff;min-height:30px}
.ra-pce.ra-pce-seg{flex-direction:row;flex-wrap:wrap;gap:8px;margin:0 0 4px}
.ra-pce-seg .ra-pce-btn.is-on{background:var(--pc-pri);border-color:var(--pc-pri);color:#fff}
.ra-pce-oncode>:not(.ra-pce-seg):not(.ra-pce-host):not(.ra-cs-chead){display:none!important}
.ra-pcf{margin:6px 0 14px;border:1px solid #E2E2E2;border-radius:6px;background:#FAFBFC}
.ra-pcf>summary{cursor:pointer;padding:10px 12px;font-weight:700;font-size:13.5px;color:#001242}
.ra-pcf>.ra-pce,.ra-pcf>.ra-pce-hold{padding:0 12px 12px}
@media (max-width:560px){.ra-pce-3{grid-template-columns:1fr}.ra-pce-head{flex-direction:column}}

/* editors only: code waiting to be published (v1.399.823) */
.ra-pcode-draftnote{margin:0 0 14px;padding:10px 14px;border:1px solid #F5D08A;border-left:4px solid #C77B18;border-radius:4px;background:#FFF8EB;color:#7A4A00;font:400 14px/1.5 var(--ra-font-display,"Source Sans 3",system-ui,sans-serif)}
.ra-pcode-draftnote b{color:#5C3700}
.ra-pce-pubhint{margin:0;padding:8px 12px;border-radius:4px;background:#FFF4DE;color:#8A5A00;font-size:13.5px;font-weight:600}
