/* Shared web theme; isolated from the landing illustration and printable documents. */
:root,html[data-theme="light"] {
  color-scheme:light;
  --bg-page:#f7f8fc;--bg-dark:#f7f8fc;--bg-dot:#e7ecf5;
  --card-bg:#fff;--bg-card:#fff;--card-bg-alt:#eef3fc;
  --card-border:#dfe5f0;--border-card:#dfe5f0;--card-border-dark:#b9c5dd;
  --text-primary:#10204a;--text-body:#34415f;--text-muted:#586681;--text-muted-light:#66708a;
  --amber-main:#2864ff;--amber-hover:#174bd5;--amber-light:#e8f1ff;--amber-border:#bed3ff;--border-amber:#bed3ff;--amber-text:#2054c9;
  --dark-pill:#10204a;--dark-pill-bg:#fff;--dark-pill-text:#10204a;--dark-pill-border:#10204a;--dark-pill-hover:#edf2ff;
  --nav-bg:rgba(247,248,252,.96);--anime-outline:#10204a;--anime-shadow:rgba(16,32,74,.1);--on-accent:#fff;
}
html[data-theme="dark"] {
  color-scheme:dark;
  --bg-page:#11182b;--bg-dark:#11182b;--bg-dot:#202b46;
  --card-bg:#19233b;--bg-card:#19233b;--card-bg-alt:#222f4a;
  --card-border:#34415e;--border-card:#34415e;--card-border-dark:#556385;
  --text-primary:#f0f5ff;--text-body:#d5dff0;--text-muted:#bac7dd;--text-muted-light:#a0afca;
  --amber-main:#779dff;--amber-hover:#a1baff;--amber-light:#263b67;--amber-border:#4969a7;--border-amber:#4969a7;--amber-text:#bbd0ff;
  --dark-pill:#f0f5ff;--dark-pill-bg:#19233b;--dark-pill-text:#f0f5ff;--dark-pill-border:#8298bd;--dark-pill-hover:#263b67;
  --nav-bg:rgba(17,24,43,.96);--anime-outline:#8298bd;--anime-shadow:rgba(0,0,0,.2);--on-accent:#11182b;
}
body{background:var(--bg-page);color:var(--text-body)}
.site-mascot-greeting{display:flex;align-items:center;gap:18px;max-width:480px;margin:0 auto 28px;padding:12px 20px 0;background:var(--amber-light);border:1px solid var(--amber-border);border-radius:16px;overflow:hidden}
.site-mascot-greeting img{object-fit:contain;align-self:flex-end}
.site-mascot-greeting strong{display:block;color:var(--text-primary);font-size:17px}
.site-mascot-greeting span{display:block;color:var(--text-muted);font-size:13px;line-height:1.6;padding:6px 0 12px}
h1,h2,h3,h4{color:var(--text-primary);letter-spacing:-.035em}
.card,.filament-card,.software-card,.news-card,.course-card,.error-container,.comments-container,.article-share-box{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;box-shadow:0 4px 18px var(--anime-shadow)}
.card,.filament-card,.news-card,.course-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.btn,.btn-action,.btn-filament-amber,.btn-filament-dark{border-radius:10px;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.btn-primary,.btn-amber,.btn-filament-amber,.btn-action-primary{background:var(--amber-main);color:var(--on-accent);border:2px solid var(--anime-outline);box-shadow:3px 3px 0 var(--anime-outline)}
.btn-primary:hover,.btn-amber:hover,.btn-filament-amber:hover,.btn-action-primary:hover{background:var(--amber-hover);color:var(--on-accent)}
.btn-filament-amber i{color:inherit}
.btn-dark,.btn-filament-dark,.btn-action-secondary{background:var(--card-bg);color:var(--text-primary);border-color:var(--anime-outline)}
.eyebrow,.article-badge,.error-code-badge{background:var(--amber-light);border-color:var(--amber-border);color:var(--amber-text)}
.hero-left h1 span{background:none;-webkit-text-fill-color:currentColor;color:var(--amber-main)}
.news-tab-btn.active,.port-tab-btn.active,.pag-btn.active{background:var(--amber-main);color:var(--on-accent)}
html[data-theme="dark"] .news-tab-btn.active,html[data-theme="dark"] .pag-btn.active{color:var(--on-accent)!important;box-shadow:0 3px 12px var(--anime-shadow)}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,textarea{background:var(--card-bg-alt);color:var(--text-primary);border-color:var(--card-border-dark);transition:border-color .2s ease,box-shadow .2s ease}
input::placeholder,textarea::placeholder{color:var(--text-muted-light)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--amber-main);outline-offset:2px}
a:focus-visible,button:focus-visible{outline:2px solid var(--amber-main);outline-offset:4px}
.glare-hover::before,.card-media::before,.card-spotlight::after,.bg-edge-light{display:none}
.reveal,.reveal-left,.reveal-right{opacity:1;transform:none}
.site-motion{transition:opacity .45s ease,translate .45s ease}
.site-motion.site-motion-pending{opacity:0;translate:0 12px}
.wa-float,.wa-float::before,.wa-float::after{animation:none!important}
.error-desc,.error-footer{color:var(--text-muted)}
.error-body{background:var(--card-bg)}
@media(hover:hover) and (pointer:fine){.card:hover,.filament-card:hover,.news-card:hover,.course-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px var(--anime-shadow)}.btn-primary:hover,.btn-amber:hover,.btn-filament-amber:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--anime-outline)}}
@media(max-width:640px){.container,.wrap{padding-left:18px;padding-right:18px}.card,.filament-card{border-radius:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}.site-motion.site-motion-pending{opacity:1;translate:none}.card:hover,.filament-card:hover,.news-card:hover,.course-card:hover,.btn:hover{transform:none}}

/* Keep white labels readable on filled actions in both themes. */
html{--on-accent:#fff;--button-bg:#2864ff;--button-hover:#174bd5}
html[data-theme="dark"]{--on-accent:#fff}
html :is(.btn-primary,.btn-amber,.btn-filament-amber,.btn-action-primary,.news-tab-btn.active,.port-tab-btn.active,.pag-btn.active){background:var(--button-bg);color:#fff!important}
html :is(.btn-primary,.btn-amber,.btn-filament-amber,.btn-action-primary,.news-tab-btn.active,.port-tab-btn.active,.pag-btn.active):hover{background:var(--button-hover);color:#fff!important}
html :is(.btn-primary,.btn-amber,.btn-filament-amber,.btn-action-primary,.news-tab-btn.active,.port-tab-btn.active,.pag-btn.active) :is(i,span,svg){color:inherit!important}
