:root{--surface:#fff;--bg:#f8fafc;--ink:#152238;--muted:#4b5c73;--teal:#1d4ed8;--line:#cbd5e1;--mint:#eff6ff;--paper:var(--bg);--code-bg:#eff4fb;--code-header:#e2eaf6;--code-text:#152238;--code-line:#bdcbe0;--code-keyword:#1d4ed8;--code-string:#166534;--code-comment:#52657d;--code-type:#6d28d9;--focus:#1d4ed8;--danger:#b91c1c;color-scheme:light}:root[data-theme=dark]{--surface:#142238;--bg:#0b1423;--ink:#eef4ff;--muted:#b5c4da;--teal:#8ab4ff;--line:#3a4b64;--mint:#1d304b;--paper:var(--bg);--code-bg:#101e33;--code-header:#182a44;--code-text:#eef4ff;--code-line:#3a4b64;--code-keyword:#9cbcff;--code-string:#c2dfa6;--code-comment:#a7b8d0;--code-type:#c4b5fd;--focus:#8ab4ff;--danger:#fca5a5;color-scheme:dark}@media(prefers-color-scheme:dark){:root[data-theme=system]{--surface:#142238;--bg:#0b1423;--ink:#eef4ff;--muted:#b5c4da;--teal:#8ab4ff;--line:#3a4b64;--mint:#1d304b;--paper:var(--bg);--code-bg:#101e33;--code-header:#182a44;--code-text:#eef4ff;--code-line:#3a4b64;--code-keyword:#9cbcff;--code-string:#c2dfa6;--code-comment:#a7b8d0;--code-type:#c4b5fd;--focus:#8ab4ff;--danger:#fca5a5;color-scheme:dark}}
html{background:var(--bg)}body,body.home{background:var(--bg);color:var(--ink);--home-bg:var(--bg);--home-panel:var(--surface);--home-line:var(--line);--home-text:var(--ink);--home-muted:var(--muted)}body.home header,header,footer,body.home footer{background:var(--surface);color:var(--ink)}.header-row{height:auto;min-height:94px;flex-wrap:wrap;gap:12px;padding-top:16px;padding-bottom:16px}.nav,body.home .nav{gap:16px;flex-wrap:wrap}.nav a,body.home .nav a{color:var(--ink)}button[data-theme]{border:1px solid var(--line);padding:7px 12px;border-radius:8px;background:var(--surface);color:var(--ink);font-size:12px}.card,.path-card,.learning-card,.project-item,.course,.reading-guide,.practice,.home-project,.home-article,.technology-card,.home-author-band,.home-band,.home-author-band,.interest-form{background:var(--surface);color:var(--ink);border-color:var(--line)}body.home .hero{background:var(--bg);border-color:var(--line)}body.home h1,body.home h2,body.home h3,body.home a:not(.button),body.home .home-article h3 a,body.home .home-project h3,body.home .technology-card h3,body.home .home-journey h3,body.home .course h3{color:var(--ink)}body.home p,body.home .meta,body.home .hero p,body.home .technology-card p,body.home .home-journey p,body.home .project-facts,body.home .course p{color:var(--muted)}.button,body.home .button,.filters .button{background:#2563eb;color:#fff;border-color:#2563eb}.button.secondary,body.home .button.secondary{background:var(--surface);color:var(--teal);border-color:var(--line)}.button:hover,.filters .button:hover{background:#1d4ed8;color:#fff}a:hover{color:var(--teal)}.hero-grid{gap:36px}.hero h1{font-size:clamp(2.8rem,5vw,4.7rem)}.global-search{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:24px 0}.global-search label{flex:1;min-width:180px}.global-search input,.filters input,.filters select,.lab input,.lab select,.lab textarea,.interest-form input,.interest-form select{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:10px 12px;border-radius:8px;width:100%}.interest-form input[type=checkbox]{width:auto}.entry-paths{display:flex;gap:10px;flex-direction:column;font-size:14px;margin:20px 0}.unified-footer{display:flex;gap:20px;flex-wrap:wrap;padding-bottom:32px;padding-top:24px}.unified-footer a{font-size:14px}.trail-nav{background:var(--mint);border:1px solid var(--line);border-radius:12px;padding:20px;margin:28px 0}.trail-nav div{display:flex;gap:24px;flex-wrap:wrap;margin-top:12px}.byline{font-size:14px;color:var(--muted);margin:12px 0}.path-steps li{gap:16px;flex-wrap:wrap}.path-steps label{white-space:normal;min-width:100px}.filters{flex-wrap:wrap;gap:12px}.filters label{flex:1;min-width:160px}.lab{display:grid;gap:18px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.lab label{display:grid;gap:8px}.lab textarea{font:14px/1.6 Consolas,monospace;resize:vertical}.lab pre,.prose pre{overflow:auto;white-space:pre;max-width:100%;background:#0f1f35;color:#eef4ff;padding:20px;border-radius:10px}.search-result{padding:18px 22px;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:12px}.search-result>a{font-weight:700;font-size:18px}.search-result p{margin:8px 0 0;color:var(--muted)}.table-scroll{overflow:auto}.table-scroll table{min-width:850px}.table-scroll code{font-size:12px}.text-page table{display:block;overflow:auto;max-width:100%}td,th{padding:12px;vertical-align:top;border-bottom:1px solid var(--line)}.notice,.download-license{background:var(--mint);color:var(--ink);border-color:var(--line)}.prose,.toc{min-width:0}.prose code:not(pre code){color:var(--ink);background:var(--mint)}.toc a,.tag,.eyebrow{color:var(--teal)}.tag{background:var(--mint)}.portrait{height:auto;max-width:100%}h1,h2,h3,a,p{overflow-wrap:break-word}.wrap{width:100%;max-width:1180px}button{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:10px 14px;border-radius:8px}button:disabled{opacity:.65;cursor:not-allowed}[hidden]{display:none!important}:focus-visible{outline:3px solid #d97706;outline-offset:4px}.skip:focus{background:var(--surface);color:var(--ink);z-index:100}input[type=checkbox]{accent-color:#2563eb;min-width:18px;min-height:18px}body.home .hero-carousel .terminal code{color:var(--code-text)}.home-search{display:none!important}
@media(max-width:1100px){.nav,body.home .nav{gap:12px}.header-row .brand img{width:125px}.header-row{gap:10px}.nav a{font-size:13px}.hero-grid{grid-template-columns:1fr 1fr}}@media(max-width:800px){#menu-toggle{display:block}.nav,body.home .nav{display:none;width:100%}.nav.open,body.home .nav.open{display:flex;flex-direction:column;align-items:flex-start;padding:16px 0}.header-row{position:relative}.hero-grid{grid-template-columns:1fr}.wrap{padding-left:20px;padding-right:20px}.path-grid,.grid{grid-template-columns:1fr}.article-layout{grid-template-columns:1fr}.toc{position:static}.global-search input{max-width:100%}.footer-row{flex-wrap:wrap}.table-scroll{max-width:100%}.trail-nav div{gap:16px}.lab{padding:18px}.hero-carousel{min-width:0}.hero-carousel pre{overflow:auto}.terminal{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body.home{--paper:var(--bg)}body.home .header-row{height:auto;min-height:94px;flex-wrap:wrap;gap:14px;padding-top:14px;padding-bottom:14px}body.home .hero-grid{gap:36px}body.home .hero .eyebrow{color:var(--teal)}@media(max-width:800px){body.home .hero-grid{grid-template-columns:1fr}body.home .header-row{flex-wrap:wrap}body.home #menu-toggle{display:block}body.home .nav{display:none;width:100%}body.home .nav.open{display:flex;flex-direction:column;align-items:flex-start}body.home .home-projects,body.home .home-journey,body.home .technology-grid,body.home .latest-layout,body.home .editorial-grid{grid-template-columns:1fr}}
/* Controle de aparência: ícone discreto após a navegação, sem rótulo no menu. */
.header-row .brand{order:1;flex-shrink:0}.header-row .nav{order:2;margin-left:auto}.header-row .appearance-toggle{order:3;flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;padding:0;background:transparent;border:1px solid transparent;border-radius:50%;color:var(--ink);font-size:0}.header-row .appearance-toggle:hover{background:var(--mint);border-color:var(--line)}.header-row .appearance-toggle svg{display:block}.header-row .appearance-toggle svg[hidden]{display:none}.header-row #menu-toggle{order:4}body.home .header-row .appearance-toggle{color:var(--ink)}
@media(max-width:1080px){.header-row #menu-toggle,body.home .header-row #menu-toggle{display:block}.header-row .brand{margin-right:auto}.header-row .nav,body.home .header-row .nav{display:none;order:5;flex-basis:100%;width:100%;margin-left:0}.header-row .nav.open,body.home .header-row .nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 0}.header-row .nav a{padding:8px 0}.header-row,body.home .header-row{gap:12px;flex-wrap:wrap}.header-row .appearance-toggle{margin-left:auto}.header-row .brand img{width:154px;height:auto}body.home .header-row .brand img{width:154px;height:50px}}

/* Cabeçalho compartilhado em todas as páginas. */
header .header-row,body.home header .header-row{height:auto;min-height:86px;gap:16px;padding-block:14px;flex-wrap:nowrap}header .brand img,body.home header .brand img{display:block;width:180px;height:54px;max-height:54px;object-fit:contain;background:#e8edf5;padding:5px 10px;border-radius:6px}header .nav a,body.home header .nav a{font-size:13px;padding-block:8px}header .home-search{display:none}@media(max-width:1080px){header .header-row,body.home header .header-row{flex-wrap:wrap;min-height:80px}header .brand img,body.home header .brand img{width:154px;height:50px;max-height:50px}header .nav,body.home header .nav{position:static;top:auto;left:auto;right:auto;background:var(--surface);border:0;align-items:flex-start;justify-content:flex-start}header .nav.open,body.home header .nav.open{display:flex}header #menu-toggle,body.home header #menu-toggle{margin-left:0}}

header .brand img,body.home header .brand img{height:54px!important;min-height:54px;max-height:54px!important}@media(max-width:1080px){header .brand img,body.home header .brand img{height:50px!important;min-height:50px;max-height:50px!important}}

/* Slogan oficial: destaque sem alterar a identidade do cabeçalho. */
body.home .hero h1.brand-slogan{font-size:clamp(2rem,3.3vw,3rem);line-height:1.15;letter-spacing:-.035em;max-width:100%;text-wrap:balance}body.home .hero h1.brand-slogan span{color:var(--teal)}.footer-slogan{display:block;max-width:32ch;margin-top:8px;line-height:1.6}.brand-purpose{padding:24px;border-left:3px solid var(--teal);background:var(--mint);margin-bottom:32px}.brand-purpose h2{margin-top:0}.brand-purpose p:last-child{margin-bottom:0}@media(max-width:600px){body.home .hero h1.brand-slogan{font-size:clamp(1.75rem,7.2vw,2.6rem)}}

/* Cursos e rodapé: conteúdo com respiro e áreas alinhadas. */
body.home .course{padding:24px;border:1px solid var(--line);border-top:3px solid var(--teal);border-radius:12px;min-width:0;gap:0}body.home .course h3{min-height:2.8em}body.home .course p{margin-bottom:24px}body.home .course .button{margin-top:auto}body.home .footer-row{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,.8fr);gap:32px;align-items:start}body.home .footer-row>div:first-child{grid-column:1;grid-row:1}body.home .home-footer-links{grid-column:2;grid-row:1;gap:24px}body.home footer .socials{grid-column:3;grid-row:1;display:flex;flex-direction:column;gap:8px}body.home .footer-row>div:last-child{grid-column:1/-1;grid-row:2;border-top:1px solid var(--line);padding-top:20px;line-height:1.8}body.home .unified-footer{border-top:1px solid var(--line);margin-top:24px;padding-top:20px;padding-bottom:0;gap:12px 24px}body.home .unified-footer a{font-size:13px}@media(max-width:800px){body.home .footer-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body.home footer .socials{grid-column:1;grid-row:2}body.home .footer-row>div:last-child{grid-row:3}body.home .course h3{min-height:0}}@media(max-width:600px){body.home .footer-row{grid-template-columns:minmax(0,1fr);gap:24px}body.home .footer-row>div:first-child,body.home .home-footer-links,body.home footer .socials,body.home .footer-row>div:last-child{grid-column:1;grid-row:auto}body.home .home-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}body.home footer .socials{flex-direction:row;flex-wrap:wrap;gap:12px 20px}body.home .course{padding:20px}}

/* Superfícies e estados compartilhados nos temas claro, escuro e do sistema. */
.filters,.filters button,.featured,.carousel-panels,.carousel-article,.quick-links>a,.home-subjects a{background:var(--surface);color:var(--ink);border-color:var(--line)}
.toc,.learning-band,.courses,.reading-guide,.practice{background:var(--mint);color:var(--ink)}
.practice details{background:var(--surface);color:var(--ink)}
.button.secondary:hover,body.home .button.secondary:hover{background:var(--mint);color:var(--teal);border-color:var(--teal)}
body.home .technology-icon,body.home .journey-number,body.home .project-heading>span:first-child,body.home .editorial-number{color:var(--teal)}
body.home .home-journey>a,body.home .editorial-item{background:transparent}
body.home .home-article:hover,body.home .technology-card:hover{background:var(--mint);border-color:var(--teal)}
body.home .home-article h3 a:hover,body.home .editorial-item h3 a:hover{color:var(--teal)}
body.home .home-journey>a:hover h3{color:var(--teal)}
.terminal,.code-block,body.home .hero .terminal{background:var(--code-bg);color:var(--code-text);border-color:var(--code-line)}
.terminal-bar,.code-head,body.home .terminal-bar{background:var(--code-header);color:var(--code-text);border-color:var(--code-line)}
.terminal pre,.code-block pre,.prose pre,.lab pre{background:var(--code-bg);color:var(--code-text)}
.terminal small,body.home .terminal small{color:var(--code-comment);border-color:var(--code-line)}
.code-head button{background:transparent;color:var(--code-text);border-color:var(--code-line)}
.code-head button:hover{background:var(--code-bg)}
.hljs-keyword,.hljs-literal,.cyan,body.home .hljs-keyword,body.home .hljs-literal{color:var(--code-keyword)}
.hljs-string,.gold,body.home .hljs-string{color:var(--code-string)}
.hljs-comment{color:var(--code-comment)}
.hljs-title,.hljs-type{color:var(--code-type)}
.carousel-controls button,body.home .carousel-controls button{background:var(--surface);color:var(--muted);border-color:var(--line)}
.carousel-controls button:hover,.carousel-dots button[aria-current],body.home .carousel-controls button:hover,body.home .carousel-dots button[aria-current]{background:var(--mint);color:var(--teal);border-color:var(--teal)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
.field-error{color:var(--danger)}[aria-invalid=true]{border-color:var(--danger)}
:is(a,button,input,select,textarea,summary):focus-visible,body.home :is(a,button):focus-visible,.interest-form :is(input,select):focus-visible,.home-article:focus-within{outline:3px solid var(--focus);outline-offset:4px}
.home-article h3 a:focus-visible{outline:none}
.course-list>.course{display:flex;flex-direction:column;border:1px solid var(--line);border-top:3px solid var(--teal);border-radius:12px;min-width:0}
.course-list>.course .button{margin-top:auto;align-self:flex-start}
@media(max-width:800px){body.home .technology-card,body.home .technology-card:nth-last-child(-n+2){grid-column:auto}body.home .home-project{display:flex}body.home .project-heading,body.home .home-project>p,body.home .project-facts,body.home .home-project .home-actions{grid-column:auto;grid-row:auto}.course-list{grid-template-columns:1fr}}

body.home .skip{background:var(--surface);color:var(--ink)}
