/* EasyTutorGuide Backend Steps 1–16; structural reproduction of TypeScript tutorial layout.
   No UI framework, no blocking remote fonts; shared across sixteen courses. */
:root{color-scheme:light;--paper:#fff;--ink:#17324a;--muted:#53677d;--bg:#f4f7fa;--surface:#f8fbff;--line:#cbd9e6;--blue:#147ed0;--dark:#0c3f70;--mint:#238b68;--grad:linear-gradient(112deg,#eaf6ff 0%,#f5f7ff 52%,#e9f7f0 100%);--header:linear-gradient(105deg,#ecf7ff 0%,#eef3ff 54%,#e9f8ef 100%);--shadow:0 12px 36px #1f355017;--code:#062b22;--code-line:#215d47;--code-text:#dbfff0;--accent:#0b5fbc;--fsize:1rem}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px;overflow-x:clip}body{margin:0;background:var(--bg);color:var(--ink);font:var(--fsize)/1.72 system-ui,-apple-system,'Segoe UI',Arial,sans-serif;overflow-x:clip;min-width:0}img,svg{max-width:100%}img{height:auto}a{color:var(--accent)}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #1379db;outline-offset:3px}code,pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;text-align:left}pre{overflow-x:auto;max-width:100%;white-space:pre;line-height:1.55}code{font-size:.91em}h1,h2,h3{line-height:1.3;overflow-wrap:anywhere}h1{font-size:clamp(1.55rem,3vw,2.55rem);margin:.35rem 0 1.1rem;font-weight:790;letter-spacing:-.02em}h2{font-size:clamp(1.18rem,2vw,1.55rem)}h3{font-size:1.08rem}p,li{overflow-wrap:anywhere}button{border:0;background:transparent} .sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.skip{position:absolute;top:-50px;z-index:1000;background:white;padding:.5rem}.skip:focus{top:2px}.topbar{position:relative;z-index:15;background:var(--header);border-bottom:1px solid var(--line)}.bar-main{max-width:1560px;margin:auto;min-height:73px;padding:10px clamp(12px,2.5vw,36px);display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;min-width:0;gap:.6rem;color:var(--ink);text-decoration:none}.brand-logo{width:clamp(105px,15vw,184px);height:56px;object-fit:contain;object-position:left center}.brand-fallback{font-size:1.14rem;font-weight:800;letter-spacing:-.035em;color:#0a6aab}.brand-logo:not([hidden])+.brand-fallback{display:none}.header-title{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dark)}.header-utilities{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.iconbtn{width:40px;height:40px;border:1px solid #bad1e5;border-radius:11px;display:inline-grid;place-items:center;color:#0d486e;background:#fff9;flex:none}.iconbtn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.iconbtn:hover{background:#dceffd}.navrow{display:flex;gap:9px;padding:7px clamp(12px,2.5vw,36px);align-items:center;flex-wrap:wrap;background:linear-gradient(100deg,#dff0fc,#f1f5fe,#e4f5eb);border-top:1px solid #d9e8f4}.navrow a{text-decoration:none;padding:.18rem .5rem;font-size:.85rem;font-weight:680;color:#19496d;border-radius:6px}.navrow a:hover{background:#fff}.navrow .nav-em{background:linear-gradient(115deg,#d9f0ff,#dfe4ff,#ddf5e5)}.translation{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:50px;padding:6px clamp(12px,2.5vw,36px);background:#ffffffb3;border-top:1px solid #e1ebf4}.translation select{max-width:min(230px,100%);padding:.42rem .55rem;border:1px solid #c3d4e2;border-radius:7px;background:white;color:#18364d}.translation .apply{background:#136fab;color:white;padding:7px 13px;border-radius:7px;font-weight:700}.translation .attribution{font-size:.78rem;color:#3f607b;text-decoration:none}.translation .translation-status{font-size:.72rem;color:#52687b}.wrapper{max-width:1600px;margin:auto;display:grid;grid-template-columns:minmax(250px,315px) minmax(0,1fr);gap:22px;padding:18px clamp(12px,2.2vw,35px)}.sidebar{position:sticky;top:12px;align-self:start;max-height:calc(100vh - 24px);overflow:auto;scrollbar-width:thin;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:var(--shadow);padding:15px}.sidebar h2{font-size:1.04rem;margin:.2rem 0 .6rem}.sidebar-input{width:100%;background:#f6fbff;border:1px solid #bed1e1;padding:10px;border-radius:8px;color:var(--ink)}.navsection{margin-top:10px;border:1px solid #d2e0e9;border-radius:9px;overflow:hidden}.navsection summary{cursor:pointer;font-size:.81rem;font-weight:800;color:#1b5779;background:linear-gradient(100deg,#ebf6ff,#e7f4ef);padding:9px 10px;list-style-position:inside}.navsection a{display:block;text-decoration:none;font-size:.79rem;line-height:1.37;padding:8px 10px;border-top:1px solid #eff3f7;color:#31516c}.navsection a:hover,.navsection a[aria-current=page]{background:#e4f3ff;color:#064e92}.sidebar-stat{font-size:.75rem;color:#607383;padding:.6rem 0}.sidebar-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.sidebar-close{display:none}.main{min-width:0}.hero{background:var(--header);border:1px solid #cbdceb;border-radius:16px;padding:clamp(18px,3vw,34px);box-shadow:var(--shadow)}.eyebrow{color:#105d91;text-transform:uppercase;letter-spacing:.09em;font-size:.73rem;font-weight:820}.lede{max-width:850px;color:#476078;margin:.7rem 0 1.1rem}.controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:14px 0}.button,.ctrl{border:1px solid #c5d7e6;background:#fff;color:#174f78;padding:8px 11px;border-radius:9px;text-decoration:none;font-weight:730;font-size:.84rem}.button:hover,.ctrl:hover{background:#ecf6ff}.button.primary{background:#116aac;color:white}.module{background:var(--paper);border:1px solid #cfdee9;border-radius:15px;padding:clamp(16px,2.5vw,30px);margin-top:17px;box-shadow:0 3px 15px #28435a0b}.module h2{margin:0 0 .8rem}.crumb{font-size:.82rem;margin:0 0 10px}.crumb a{text-decoration:none}.notice{border-inline-start:4px solid #248c72;background:#effaf6;padding:11px 13px;color:#234a3f;border-radius:8px}.stats{display:flex;flex-wrap:wrap;gap:10px}.stats .stat{border-radius:9px;padding:7px 10px;background:#fff9;border:1px solid #d1e0ec;min-width:130px}.stats .stat strong{display:block;font-size:1rem}.stats .stat span{display:block;font-size:.72rem;color:#506979}.topic{border:1px solid #cfdde8;border-radius:10px;margin:13px 0;overflow:hidden;background:#fff}.topic>summary{cursor:pointer;list-style:none;padding:13px 16px;background:linear-gradient(105deg,#eaf5ff,#f5f8fb,#e8f6ee);color:#17476e;font-weight:800;position:relative;padding-inline-end:42px}.topic>summary::after{content:'+';position:absolute;inset-inline-end:15px;top:8px;font-weight:900;font-size:1.4rem}.topic[open]>summary::after{content:'−'}.topic-body{padding:13px 18px}.topic-body p{margin:.6rem 0 1rem}.code-demo{background:var(--code);color:var(--code-text);border-radius:12px;margin:17px 0;overflow:hidden;border:1px solid var(--code-line)}.code-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;border-bottom:1px solid var(--code-line);font-size:.75rem;font-weight:800;color:#a9ecca;letter-spacing:.04em}.code-demo pre{padding:15px 17px;margin:0;color:#e5fff0;font-size:.87rem}.code-demo .output{border-top:1px solid #347b5f;background:#0a3b2b}.code-demo .why{padding:10px 16px;border-top:1px solid #347b5f;background:#124832;color:#e8fff0;line-height:1.55;font-size:.87rem}.copybtn{border:1px solid #497d66;border-radius:7px;background:#265c47;color:white;padding:3px 8px;font-size:.74rem}.practice{margin:10px 0;border:1px solid #d9e6ef;border-radius:9px;padding:9px 13px}.practice summary{cursor:pointer;color:#195578;font-weight:750}.mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px}.tile{padding:14px;border:1px solid #d2e0ec;border-radius:11px;background:#f9fcff}.tile h3{font-size:1rem;margin:.2rem 0}.tile a{font-weight:800;text-decoration:none}.tile .num{font-size:.7rem;color:#54708c}.level-heading{margin-top:20px;background:linear-gradient(100deg,#e3f3fc,#edf2ff,#e8f8ed);padding:11px 16px;border-radius:10px}.chapter-pagination{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:14px 0}.foot{margin-top:45px;background:linear-gradient(105deg,#e9f6ff,#f4f8fc 53%,#e6f4ec);border-top:1px solid #cfdfeb;padding:30px clamp(12px,3vw,42px);color:#21445a}.foot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1450px;margin:auto}.foot h2,.foot h3{font-size:1rem;color:#174b71}.foot a{display:inline-block;color:#215372;margin:3px 8px 3px 0;text-decoration:none}.foot a:hover{text-decoration:underline}.foot-logo{width:150px;height:60px;object-fit:contain}.socials{display:flex;gap:7px;flex-wrap:wrap}.socials a{width:34px;height:34px;border-radius:9px;display:inline-grid;place-items:center;border:1px solid #c6d7e2;background:#fff9}.socials svg{width:17px;height:17px;stroke:#174b72;fill:none;stroke-width:1.9}.foot-meta{max-width:1450px;margin:18px auto 0;border-top:1px solid #cadce9;padding-top:15px;font-size:.78rem;color:#526a7d}.consent{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:99;width:min(660px,calc(100% - 24px));background:#173a53;color:white;padding:16px 18px;border:1px solid #739db3;border-radius:13px;box-shadow:0 8px 32px #0006;display:flex;align-items:center;gap:13px;justify-content:space-between;flex-wrap:wrap}.consent p{margin:0;flex:1;min-width:220px;font-size:.84rem}.consent button{background:#c9f6db;color:#0b402e;padding:8px 15px;border-radius:8px;font-weight:750}.mobile-toggle{display:none}.overlay{display:none}.topic-nav{display:flex;flex-wrap:wrap;gap:7px}.topic-nav a{font-size:.77rem;text-decoration:none;background:#edf5ff;padding:5px 9px;border-radius:8px}.tag{font-size:.75rem;color:#427295}.lesson-progress{height:6px;border-radius:8px;background:#dceaf4;overflow:hidden}.lesson-progress div{height:100%;background:linear-gradient(90deg,#1e90ff,#4360d9,#2b9675)}[hidden]{display:none!important}@media(max-width:950px){.wrapper{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;z-index:80;inset-block:0;inset-inline-start:0;width:min(350px,88vw);max-height:none;border-radius:0;transform:translateX(-115%);transition:transform .2s ease}.sidebar.is-open{transform:translateX(0)}.mobile-toggle{display:inline-grid}.sidebar-close{display:inline-grid}.overlay.active{display:block;position:fixed;inset:0;z-index:75;background:#102b44a9}.bar-main{min-height:62px}.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[dir=rtl] .sidebar{transform:translateX(115%)}html[dir=rtl] .sidebar.is-open{transform:translateX(0)}}@media(max-width:550px){.bar-main{gap:5px}.header-title{display:none}.header-utilities{gap:4px}.iconbtn{width:34px;height:35px}.brand-logo{width:112px;height:44px}.navrow{gap:4px}.navrow a{padding:5px;font-size:.74rem}.translation{gap:4px}.translation select{max-width:160px}.wrapper{padding:10px;gap:8px}.hero{padding:15px}.module{padding:14px}.foot-grid{grid-template-columns:1fr}.chapter-pagination>a{flex:1;min-width:120px;text-align:center}.stats .stat{min-width:110px;flex:1}h1{font-size:1.56rem}.topic-body{padding:12px}.code-demo pre{font-size:.78rem}}html[dir=rtl] .brand-logo{object-position:right center}html[dir=rtl] pre,html[dir=rtl] .code-demo{direction:ltr}html[dir=rtl] .sidebar{text-align:right}body.night{color-scheme:dark;--bg:#102438;--paper:#193249;--ink:#edf7ff;--muted:#c3d6e8;--line:#456078;--surface:#1c354d;--accent:#98d3ff;--header:linear-gradient(112deg,#173957,#273758 55%,#1b4e42)}body.night .topbar,body.night .navrow,body.night .translation,body.night .foot{color:#eef8ff;background:var(--header);border-color:#3e5870}body.night .brand-fallback,body.night .header-title,body.night .navrow a,body.night .foot a,body.night .foot h3,body.night .foot h2,body.night .translation .attribution{color:#ecf7ff}body.night .sidebar,body.night .module,body.night .hero,body.night .tile,body.night .topic{background:var(--paper);border-color:#425d73}body.night .topic>summary,body.night .level-heading,body.night .navsection summary{background:linear-gradient(110deg,#264a6b,#313e63,#23534a);color:#efffff}body.night .navsection a,body.night .navsection a[aria-current=page],body.night .topic-body,body.night .notice{color:#edf9ff;background:#1d3e58}body.night .lede,body.night .stats .stat span,body.night .stat,body.night .eyebrow{color:#cbddeb}body.night .iconbtn,body.night .ctrl,body.night .button:not(.primary){background:#204766;color:#eef9ff;border-color:#58788e}body.night .sidebar-input,body.night .translation select{background:#102b41;color:#eef9ff;border-color:#52728a}body.night .notice{border-color:#5aab91}body.night .stats .stat{background:#24465f}body.night .practice{border-color:#4f697e}body.night .topic-nav a{background:#204f70;color:#e8f7ff}@media print{.topbar,.sidebar,.overlay,.controls,.consent,.chapter-pagination,.foot{display:none!important}.wrapper{display:block;padding:0}.module,.hero{box-shadow:none;break-inside:avoid}.topic:not([open])>.topic-body{display:block}.topic>summary{color:#000;background:#fff}}

.topic-body .subchapter-outcome{background:linear-gradient(110deg,#e6f4fc,#eaf6f0);border:1px solid #c4dce5;border-radius:9px;padding:12px;margin:12px 0}.step-sequence{padding:1rem 1.4rem;background:#f5fbff;border-radius:10px}.training-note{border-inline-start:4px solid #16806a;padding:10px 12px;background:#eaf7f1}.topic-body strong{color:#135a7d}.chapter-search-results{font-size:.78rem}.word-audit{font-size:.75rem;color:#53677d}@media(max-width:640px){.topic-body{padding:12px}.hero,.module{padding:15px}.chapter-pagination>*{max-width:100%}}body.night .subchapter-outcome,body.night .training-note,body.night .step-sequence{background:#173c4c;color:#e9f6ff}pre.code,pre.output{white-space:pre;overflow-x:auto}html[dir=rtl] pre,html[dir=rtl] code{direction:ltr;text-align:left}a.chapter-link[hidden]{display:none}

/* Contrast corrections after small-device/night-mode screenshot checks. */
body.night .navrow .nav-em{background:linear-gradient(110deg,#173e61,#244568,#1d5b4c);border:1px solid #587895;color:#f4fbff}
body.night .topic-body strong{color:#b9e9ff}
body.night .topic-body .training-note strong{color:#d8f7ff}
body.night .foot-meta,body.night .translation-status,body.night .sidebar-stat{color:#d0e5f6}
body.night .module p,body.night .module li,body.night .topic-body p{color:#edf8ff}
body.night .stats .stat strong{color:#f3fdff}
body.night .code-demo strong{color:#c2ffdc}
body.night .consent{background:#153348;color:#f2faff}

/* Consolidated Frontend Levels 1–15 accessibility & policy navigation. */
:root{--etg-logo-gradient:linear-gradient(107deg,#1e90ff 0%,#4b65c7 52%,#16875d 100%)}
.bar-main{background:linear-gradient(110deg,#f0faff,#f4f6ff 48%,#e8f9f2)}
.navrow{background:linear-gradient(110deg,#187dc9 0%,#435cbd 53%,#15885f 100%)}
.navrow a{color:#fff!important}
.navrow a:hover,.navrow a:focus-visible{background:#fff2;color:#fff!important}
.navrow .blog-accent{background:#a34206!important;color:#fff!important;border:1px solid #f8be7a!important;border-radius:8px;font-weight:800}
.navrow .blog-accent:hover{background:#743001!important}
.foot{background:linear-gradient(120deg,#eff8ff 0%,#f3f5ff 50%,#eaf9f2 100%);color:var(--ink)}
.footer-legal-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 24px;padding:10px 10px 18px;margin-bottom:20px;border-bottom:1px solid #c4d6e2}
.footer-legal-row a{font-weight:750;color:#145380;text-decoration:underline;text-underline-offset:3px}
.foot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.sidebar,.layout,.module,.topic,.topic-body,.content,.code-demo,.code,.output,pre{min-width:0;max-width:100%}
.code-demo{overflow:hidden}.code-demo pre{overflow-x:auto;white-space:pre;max-width:100%}
.iconbtn svg,.copybtn svg{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}
.disclaimer-note{background:#f1f8ff;color:#17334d;border:1px solid #b8d2e8;border-radius:12px;padding:13px 17px;margin:15px 0}
.night .disclaimer-note{background:#173043;color:#ecf6ff;border-color:#3c5b72}
.night .footer-legal-row a{color:#d4efff}
.night .navrow .blog-accent{background:#9d3f00!important}
.foot-grid a{color:inherit}
.brand-logo{object-fit:contain;max-width:min(190px,36vw);height:auto;aspect-ratio:184/56}
@media(max-width:680px){.foot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.foot-grid>div{min-width:0}.foot-grid a{overflow-wrap:anywhere}.footer-legal-row{gap:7px 16px}.brand-logo{max-width:min(150px,37vw)}}
@media(max-width:380px){.foot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;font-size:.8rem}.brand-logo{max-width:119px}.footer-legal-row{font-size:.86rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Backend: six subchapters per lesson; improve long identifiers and dark mode. */
.topic-body{overflow-wrap:anywhere}.topic-body pre{white-space:pre;overflow-x:auto;max-width:100%}.topic-body p,.module p{max-width:82ch}html[dir="rtl"] .code-demo,html[dir="rtl"] pre{direction:ltr;text-align:left} .powered{font-size:.8rem;color:var(--muted)} .mobile-hide-text{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}

/* Guaranteed mobile drawer positions in both writing directions. */
@media(max-width:950px){
 html[dir="ltr"] .sidebar:not(.is-open){left:0;right:auto;transform:translateX(-110%)}
 html[dir="rtl"] .sidebar:not(.is-open){right:0;left:auto;transform:translateX(110%)}
 html[dir="ltr"] .sidebar.is-open{left:0;right:auto;transform:translateX(0)}
 html[dir="rtl"] .sidebar.is-open{right:0;left:auto;transform:translateX(0)}
}
@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}

/* Guaranteed mobile drawer positions in both writing directions. */
@media(max-width:950px){
 html[dir="ltr"] .sidebar:not(.is-open){left:0;right:auto;transform:translateX(-110%)}
 html[dir="rtl"] .sidebar:not(.is-open){right:0;left:auto;transform:translateX(110%)}
 html[dir="ltr"] .sidebar.is-open{left:0;right:auto;transform:translateX(0)}
 html[dir="rtl"] .sidebar.is-open{right:0;left:auto;transform:translateX(0)}
}
@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}

/* Data courses: 6 expandable subchapters; reading layout and RTL safety */
html,body{max-width:100%;overflow-x:clip}.wrapper,.main,.module,.topic,.topic-body{min-width:0} .topic-body pre{max-width:100%;overflow:auto;white-space:pre} .topic-body p{max-width:86ch} html[dir="rtl"] .code-demo,html[dir="rtl"] pre{direction:ltr;text-align:left} .course-icon{width:20px;height:20px} .data-diagnostic{background:#edf9fb;border-left:3px solid #126591;padding:12px;border-radius:8px} body.night .data-diagnostic{background:#143e48;border-color:#4ae6d2;color:#f0fbff}
@media(max-width:950px){html[dir="ltr"] .sidebar:not(.is-open){left:0;right:auto;transform:translateX(-110%)}html[dir="rtl"] .sidebar:not(.is-open){right:0;left:auto;transform:translateX(110%)}html[dir="ltr"] .sidebar.is-open{left:0;right:auto;transform:translateX(0)}html[dir="rtl"] .sidebar.is-open{right:0;left:auto;transform:translateX(0)}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}

/* Python-course teaching-style additions; no blocking third-party fonts. */
.verified-labs{border:1px solid #b4cdd1;background:#f8fcfa;padding:clamp(12px,2vw,26px);contain:layout style;}
.verified-labs h2{margin-top:.2rem}.verified-demo{position:relative;border:1px solid #84b19a;border-radius:12px;overflow:hidden;margin:1.3rem 0;background:#eef9f3;padding:14px}
.verified-demo h3{margin:0 42px .5rem 0;color:#0d4d36}.run-label,.output-label{font-size:.78rem;font-weight:750;letter-spacing:.04em;color:#155a41;margin:.6rem 0 .3rem}
.verified-demo pre.code{background:#052a21;color:#e8fff2;padding:1.05rem;border:1px solid #2b7860;border-radius:8px;white-space:pre;overflow:auto;max-width:100%;tab-size:4}
.verified-demo pre.verified-output{background:#0a3b2e;color:#c9ffe0;border:1px solid #257f63;padding:1rem;border-radius:8px;white-space:pre;overflow:auto;max-width:100%}
.verified-demo .copy-example{position:absolute;top:15px;right:12px;border:1px solid #14735b;border-radius:8px;color:#0e533d;background:#d9f4e5;padding:5px 7px;line-height:1}
.verified-demo .worked-explanation{background:#fff;color:#183b32;padding:1rem;border-radius:7px;line-height:1.6;overflow-wrap:anywhere}
.verified-demo .execution-note{font-size:.83rem;font-style:italic;color:#3f6757;margin-bottom:0}
.verified-labs .source-link a,.lab-quicklink a{display:inline-block;color:#084a36;font-weight:700;text-decoration:underline}
body.night .verified-labs{background:#102b2d;border-color:#42686a}
body.night .verified-demo{background:#123b33;border-color:#426f5c}body.night .verified-demo h3,body.night .verified-demo .run-label,body.night .verified-demo .output-label{color:#bdffd9}
body.night .verified-demo .worked-explanation{color:#f4fff8;background:#1c4140}body.night .verified-demo .execution-note{color:#bfdecf}
body.night .verified-labs .source-link a,body.night .lab-quicklink a{color:#acffd0}
html[dir=rtl] .verified-demo .copy-example{right:auto;left:12px}html[dir=rtl] .verified-demo h3{margin:0 0 .5rem 42px}
html[dir=rtl] .verified-demo pre,html[dir=rtl] .verified-demo code{direction:ltr;text-align:left;unicode-bidi:isolate}
/* Translator: keep Google widget hidden without allowing its toolbar to shift layouts. */
#google_translate_element{position:absolute!important;left:-9999px;top:0;width:1px;height:1px;overflow:hidden}
.goog-te-banner-frame,.skiptranslate iframe{display:none!important}body{top:0!important}html,body{max-width:100%;overflow-x:clip}
.translation-status{overflow-wrap:anywhere}.translation select{max-width:100%}
@media(max-width:600px){.verified-demo{padding:10px}.verified-demo pre{font-size:.79rem}.verified-labs{padding:10px}}
@media print{.verified-demo{break-inside:avoid}.copy-example{display:none}}

/* New beginner lesson units; accessible light/night code styles */
.beginner-bridge{border:1px solid #b7d4c9;border-inline-start:4px solid #238b68;background:linear-gradient(125deg,#f7fcff,#effaf4);margin-block:1.2rem}.beginner-bridge p{line-height:1.8}.beginner-bridge pre{white-space:pre;max-width:100%;overflow:auto}.beginner-bridge .code{background:#062b22;color:#e5fff2;padding:1rem;border-radius:9px}.beginner-bridge .output{background:#11392b;color:#effff6;padding:1rem;border-radius:9px}body.night .beginner-bridge{background:#102d2e;border-color:#337263;color:#e8fff4}body.night .beginner-bridge p{color:#e8fff4}@media(max-width:400px){.beginner-bridge{min-width:0}.beginner-bridge pre{font-size:.82rem}}


/* ETG Data 2026-11-08: legible brand promotions, no pink, stable mobile/RTL. */
.navrow .nav-em,
body.night .navrow .nav-em {
  background:linear-gradient(112deg,#13558e 0%,#253f80 51%,#176b50 100%)!important;
  color:#ffffff!important;
  border:1px solid rgba(255,255,255,.60)!important;
  border-radius:8px;
  font-weight:800;
  text-shadow:0 1px 1px rgba(0,0,0,.24);
  box-shadow:0 1px 3px rgba(13,41,65,.18);
}
.navrow .nav-em:hover,
.navrow .nav-em:focus-visible,
body.night .navrow .nav-em:hover,
body.night .navrow .nav-em:focus-visible {
  background:linear-gradient(112deg,#0a3e70,#1a3069 55%,#105b43)!important;
  color:#ffffff!important;
  outline-offset:2px;
}
html[dir="rtl"] .translation,
html[dir="rtl"] .topbar,
html[dir="rtl"] .wrapper,
html[dir="rtl"] .sidebar,
html[dir="rtl"] .main,
html[dir="rtl"] .foot { direction:rtl; }
html[dir="rtl"] .sidebar,
html[dir="rtl"] .main { text-align:right; }
html[dir="rtl"] pre,
html[dir="rtl"] code,
html[dir="rtl"] .code-demo,
html[dir="rtl"] .verified-demo pre { direction:ltr; text-align:left; unicode-bidi:isolate; }
.translation [data-translate-fallback]:not([hidden]) {
  display:inline-flex;align-items:center;min-height:35px;
  padding:6px 10px;border-radius:8px;
  background:#e5f3ff;color:#134e7b;border:1px solid #9bc3df;
  font-size:.79rem;font-weight:750;text-decoration:underline;
}
.translation [data-translate-fallback][hidden]{display:none!important}
.translation .translation-status{min-width:0;overflow-wrap:anywhere;line-height:1.45}
body.night .translation [data-translate-fallback]:not([hidden]) {background:#204c61;color:#f2faff;border-color:#6b9fb1}
@media(max-width:640px){.translation{gap:7px}.translation .translation-status{flex-basis:100%}}
