/* EARTH.ONLINE homepage theme prototype.
   The light palette is warm editorial paper, charcoal type and restrained
   constructivist signal colors. It is intentionally scoped to index.html. */

.home-theme-live{
  position:fixed;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

[data-site-theme-toggle]{position:relative;isolation:isolate;-webkit-tap-highlight-color:transparent}
.brand-logo-link[data-site-theme-toggle]{border-radius:50%;overflow:visible}
.brand-logo-link[data-site-theme-toggle]::before{
  content:"";position:absolute;inset:3px;border:1px solid transparent;border-radius:50%;
  transition:border-color .25s ease,transform .45s cubic-bezier(.2,.8,.2,1),opacity .25s;
  opacity:.68;
}
.brand-logo-link[data-site-theme-toggle]::after{
  content:attr(data-theme-target) " / MODE";position:absolute;left:0;top:calc(100% + 10px);
  width:max-content;padding:5px 8px;border:1px solid var(--line-2);background:var(--bg-1);
  color:var(--ink-1);font:9px/1.2 var(--mono);letter-spacing:.15em;text-transform:uppercase;
  opacity:0;pointer-events:none;transform:translateY(-3px);transition:opacity .18s,transform .18s;
  box-shadow:0 10px 30px rgba(0,0,0,.14);
}
.brand-logo-link[data-site-theme-toggle]:hover::before,
.brand-logo-link[data-site-theme-toggle]:focus-visible::before{border-color:var(--rust-3);transform:rotate(28deg) scale(1.08)}
.brand-logo-link[data-site-theme-toggle]:hover::after,
.brand-logo-link[data-site-theme-toggle]:focus-visible::after{opacity:1;transform:translateY(0)}
.brand-logo-link[data-site-theme-toggle]:focus-visible{outline:1px solid var(--rust-3);outline-offset:4px}
[data-site-theme-toggle] .brand-logo,
.m-site-theme-toggle img{transition:transform .52s cubic-bezier(.2,.8,.2,1),filter .3s ease}
[data-site-theme-toggle]:active .brand-logo,
.m-site-theme-toggle:active img{transform:scale(.92) rotate(12deg)}

.eo-theme-transition body[data-home-theme],
.eo-theme-transition body[data-home-theme] :is(.strip,.nav,.home-hero,.hero-bg,.news,.eo-ia-banner,#modules,#modules .mod,.section,.wq-banner,.shop-banner,.rv-summary,footer,.m-appbar,.m-tabbar,.m-sheet-mask){
  transition:background-color .42s ease,color .34s ease,border-color .34s ease,filter .42s ease,box-shadow .42s ease!important;
}

html[data-theme="light"] body[data-home-theme]{
  --bg-0:#f1eee7;
  --bg-1:#e9e5dc;
  --bg-2:#dfdad0;
  --bg-3:#d3cdc1;
  --bg-4:#c5beb1;
  --line:rgba(24,28,28,.09);
  --line-2:rgba(24,28,28,.17);
  --line-3:rgba(24,28,28,.34);
  --ink-0:#191d1d;
  --ink-1:#4e5351;
  --ink-2:#777770;
  --ink-3:#a39d92;
  --rust:#943b2d;
  --rust-2:#ad4433;
  --rust-3:#b94b38;
  --rust-deep:#6f2a20;
  --rust-soft:rgba(148,59,45,.1);
  --rust-edge:rgba(148,59,45,.32);
  --rev:#c53a29;
  --rev-2:#ad2f21;
  --rev-deep:#741d14;
  --rev-soft:rgba(197,58,41,.1);
  --mustard:#c69b25;
  --amber:#a46b27;
  --amber-soft:rgba(164,107,39,.11);
  --green:#48775a;
  --green-soft:rgba(72,119,90,.1);
  --blue:#42677d;
  --theme-bg:#ece8df;
  --grid-line:rgba(24,28,28,.028);
  --chrome-bg:#e7e2d9;
  --nav-bg:rgba(241,238,231,.88);
  --hover-fill:rgba(24,28,28,.045);
  --home-paper:#f3f0e9;
  --home-paper-2:#e4dfd5;
  --home-ink:#181c1c;
  --home-muted:#4c514f;
  --home-rust-ink:#8b2e22;
  --home-gold-ink:#70500b;
  --home-rule:rgba(24,28,28,.26);
  background:#f1eee7;color:var(--ink-0);
}

html[data-theme="light"] body[data-home-theme]::after{opacity:.028;mix-blend-mode:multiply}
html[data-theme="light"] body[data-home-theme] .strip{
  color:var(--ink-1);box-shadow:0 1px 0 rgba(255,255,255,.45) inset;
}
html[data-theme="light"] body[data-home-theme] .nav{
  box-shadow:0 10px 32px rgba(53,45,34,.055);backdrop-filter:blur(16px) saturate(.92);
}
html[data-theme="light"] body[data-home-theme] .brand-logo{
  filter:drop-shadow(0 5px 12px rgba(54,45,34,.14)) saturate(.88) contrast(1.02);
}
html[data-theme="light"] body[data-home-theme] .brand-logo-link[data-site-theme-toggle]::before{border-color:rgba(148,59,45,.22)}
html[data-theme="light"] body[data-home-theme] .nav.nav-open .nav-links{background:rgba(241,238,231,.98)}

/* Light hero: the orbital image becomes archival texture rather than a dark wall. */
html[data-theme="light"] body[data-home-theme] .home-hero{
  background:#ded8cd;color:var(--home-ink);border-bottom:1px solid var(--home-rule);
}
html[data-theme="light"] body[data-home-theme] .home-hero .hero-bg{
  filter:grayscale(.24) sepia(.1) brightness(1.38) contrast(.76) saturate(.58);
  opacity:.62;
}
html[data-theme="light"] body[data-home-theme] .home-hero .hero-bg::after{
  background:
    linear-gradient(90deg,rgba(239,235,226,.94) 0%,rgba(239,235,226,.78) 38%,rgba(239,235,226,.34) 72%,rgba(239,235,226,.18) 100%),
    radial-gradient(ellipse 50% 55% at 0 0,rgba(197,58,41,.11),transparent 66%),
    linear-gradient(180deg,rgba(228,222,210,.08),rgba(228,222,210,.36));
}
html[data-theme="light"] body[data-home-theme] .home-hero :is(.meta-bar,.meta-bar .right,.title,.title .en,.desc){color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] .home-hero .meta-bar .rule{background:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] .home-hero .meta-bar .grow,
html[data-theme="light"] body[data-home-theme] .home-hero .lead .rule .bar{background:rgba(24,28,28,.24)}
html[data-theme="light"] body[data-home-theme] .home-hero .lead .kicker{
  color:var(--home-ink);background:rgba(243,240,233,.78);border-color:var(--home-ink);backdrop-filter:blur(8px);
}
html[data-theme="light"] body[data-home-theme] .home-hero .lead .rule{color:var(--home-muted)}
html[data-theme="light"] body[data-home-theme] .home-hero .lead .rule .ed{color:#fff8ed}
html[data-theme="light"] body[data-home-theme] .home-hero .desc{opacity:1}
html[data-theme="light"] body[data-home-theme] .home-hero .cta .btn-a{color:#fff8ed;box-shadow:0 14px 30px rgba(136,42,29,.13)}
html[data-theme="light"] body[data-home-theme] .home-hero .cta .btn-a:hover{background:var(--home-ink);border-color:var(--home-ink);color:#fff8ed}
html[data-theme="light"] body[data-home-theme] .home-hero .cta .btn-a.btn-ghost{
  color:var(--home-ink);border-color:var(--home-ink);background:rgba(243,240,233,.5);box-shadow:none;
}
html[data-theme="light"] body[data-home-theme] .home-hero .cta .btn-a.btn-ghost:hover{background:var(--home-ink);color:#fff8ed}

html[data-theme="light"] body[data-home-theme] .home-hero .news{
  color:var(--home-ink);background:linear-gradient(180deg,rgba(247,244,237,.9),rgba(232,227,216,.87));
  border:1px solid rgba(24,28,28,.29);border-left:3px solid var(--rev);
  box-shadow:0 28px 74px rgba(57,48,36,.15);backdrop-filter:blur(12px) saturate(.75);
}
html[data-theme="light"] body[data-home-theme] .home-hero .news::before{background:var(--home-ink);opacity:.42}
html[data-theme="light"] body[data-home-theme] .home-hero .news :is(.news-hd,.news-more,.item .msg){color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] .home-hero .news :is(.news-hd,.news-more){border-color:rgba(24,28,28,.2)}
html[data-theme="light"] body[data-home-theme] .home-hero .news .item{border-color:rgba(24,28,28,.09)}
html[data-theme="light"] body[data-home-theme] .home-hero .news .item:hover{background:rgba(24,28,28,.035)}
html[data-theme="light"] body[data-home-theme] .home-hero .news .item .msg{opacity:.84}
html[data-theme="light"] body[data-home-theme] .home-hero .news .news-hd .ver-tag,
html[data-theme="light"] body[data-home-theme] .home-hero .news .item .meta{color:var(--home-muted)}
html[data-theme="light"] body[data-home-theme] .home-hero .news .item .meta .lvl.info{color:#31566c;border-color:#31566c}
html[data-theme="light"] body[data-home-theme] .home-hero .news .item .meta .lvl.ok{color:#2f6144;border-color:#2f6144}
html[data-theme="light"] body[data-home-theme] .home-hero .news .item .meta .lvl.warn{color:var(--home-gold-ink);border-color:var(--home-gold-ink)}
html[data-theme="light"] body[data-home-theme] .home-hero .news .item .meta .lvl.err{color:var(--home-rust-ink);border-color:var(--home-rust-ink)}

/* Protocol banner keeps the constructivist accent but loses the black slab. */
html[data-theme="light"] body[data-home-theme] .eo-ia-banner{background:#e6e1d7}
html[data-theme="light"] body[data-home-theme] .eo-ia-banner::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,rgba(255,255,255,.34),transparent 44%);
}
html[data-theme="light"] body[data-home-theme] .eo-ia-brand{color:#fff8ed}
html[data-theme="light"] body[data-home-theme] .eo-ia-cta{color:#fff8ed}
html[data-theme="light"] body[data-home-theme] .eo-ia-kick{color:var(--home-rust-ink)}
html[data-theme="light"] body[data-home-theme] .eo-ia-sub{color:var(--home-muted)}

/* Modules become an editorial index: paper fields, hard rules, one red anchor. */
html[data-theme="light"] body[data-home-theme] #modules{
  background:#ddd7cc;border-bottom-color:var(--home-ink);
}
html[data-theme="light"] body[data-home-theme] #modules .section-head{border-color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] #modules :is(.section-title,.section-num .v){color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] #modules .section-num{color:var(--home-muted)}
html[data-theme="light"] body[data-home-theme] #modules .section-eyebrow{color:var(--home-rust-ink)}
html[data-theme="light"] body[data-home-theme] #modules .section-title .accent{color:var(--home-gold-ink)}
html[data-theme="light"] body[data-home-theme] #modules .mods-grid{
  background:transparent;border-color:var(--home-ink);box-shadow:0 24px 70px rgba(57,48,36,.08);
}
html[data-theme="light"] body[data-home-theme] #modules .mod{
  background:rgba(243,240,233,.72);color:var(--home-ink);border-color:var(--home-ink);
}
html[data-theme="light"] body[data-home-theme] #modules .mod:hover{background:#f7f4ed;color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] #modules .mod::after{color:rgba(24,28,28,.055)}
html[data-theme="light"] body[data-home-theme] #modules .mod:hover::after{color:rgba(197,58,41,.12)}
html[data-theme="light"] body[data-home-theme] #modules .mod :is(.mod-num,.mod-name .en,.mod-desc,.mod-foot){color:var(--home-muted)}
html[data-theme="light"] body[data-home-theme] #modules .mod-desc strong{color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] #modules .mod-foot{border-color:rgba(24,28,28,.18)}
html[data-theme="light"] body[data-home-theme] #modules .mod .mod-status:is(.live,.beta){
  color:var(--home-ink);border-color:#9b7416;background:rgba(198,155,37,.13);
}
html[data-theme="light"] body[data-home-theme] #modules .mod .mod-status:is(.live,.beta) .dot{background:var(--home-gold-ink)}
html[data-theme="light"] body[data-home-theme] #modules .mod.m3{background:rgba(78,102,113,.08)}
html[data-theme="light"] body[data-home-theme] #modules .mod.m6{background:rgba(197,58,41,.065)}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1{background:var(--rev);color:#fff8ed}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1 :is(.mod-desc,.mod-foot,.mod-name .en,.mod-arrow){color:#fff8ed}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1 .mod-foot .mono{color:#fff8ed!important}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1 .mod-num{color:#fff0bd}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1 .mod-tag,
html[data-theme="light"] body[data-home-theme] #modules .mod.m1 .mod-status:is(.live,.beta){
  color:var(--home-ink);background:#e5bb3f;border-color:#e5bb3f;
}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1 .mod-status:is(.live,.beta) .dot{background:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1:hover{background:#f7f4ed;color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] #modules .mod.m1:hover :is(.mod-desc,.mod-foot,.mod-name .en){color:var(--home-muted)}
html[data-theme="light"] body[data-home-theme] #modules .mod:hover .mod-arrow{color:#fff8ed}

html[data-theme="light"] body[data-home-theme] .section:has(> .section-inner > :is(.wq-banner,.shop-banner,.rv-summary)) .hr-tick{color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] .section:has(> .section-inner > :is(.wq-banner,.shop-banner,.rv-summary)) .hr-tick::after{background:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] :is(.wq-banner,.shop-banner){
  background:#f4f0e7;box-shadow:0 20px 55px rgba(57,48,36,.075);
}
html[data-theme="light"] body[data-home-theme] :is(.wq-banner,.shop-banner) .v{color:var(--home-rust-ink)}
html[data-theme="light"] body[data-home-theme] .rv-summary{
  background:#ece7dd;border-color:var(--home-ink);box-shadow:0 20px 55px rgba(57,48,36,.075);
}
html[data-theme="light"] body[data-home-theme] .rv-summary .score{border-color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] .rv-summary .score :is(.deno,.ct){color:#fff8ed;opacity:1}
html[data-theme="light"] body[data-home-theme] .rv-summary .quote{color:var(--home-ink);border-color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] .rv-summary .quote p{color:var(--home-ink);opacity:1}
html[data-theme="light"] body[data-home-theme] .rv-summary .quote .meta{color:var(--home-muted);opacity:1;border-top-color:rgba(24,28,28,.2)}
html[data-theme="light"] body[data-home-theme] .rv-summary .quote .vote.down{color:#fff8ed}

html[data-theme="light"] body[data-home-theme] footer{
  background:#ddd7cd;color:var(--ink-1);border-top:1px solid var(--home-ink);
}
html[data-theme="light"] body[data-home-theme] footer .foot-top{border-color:rgba(24,28,28,.17)}
html[data-theme="light"] body[data-home-theme] footer :is(.foot-brand .desc,.foot-col a,.foot-bot,.foot-bot .legal,.foot-bot .stamp){color:var(--home-muted)}
html[data-theme="light"] body[data-home-theme] footer .foot-col h5{color:var(--home-ink)}
html[data-theme="light"] body[data-home-theme] footer .foot-col a:hover{color:var(--home-rust-ink)}
html[data-theme="light"] body[data-home-theme] footer .foot-col a .ext{color:var(--home-rust-ink)}

@media (max-width:1023px){
  .m-site-theme-toggle{padding:0;border:0;text-align:left}
  .m-site-theme-toggle::after{
    content:"";position:absolute;left:23px;top:31px;width:7px;height:7px;border-radius:50%;
    background:var(--rust-3);border:2px solid var(--m-shell-bg,#08080a);box-shadow:0 0 0 1px rgba(0,0,0,.12);
  }
  html[data-theme="light"] body[data-home-theme] :is(.m-appbar,.m-tabbar){
    --ink-0:#191d1d;--ink-1:#555a57;--bg-0:#f1eee7;--rev:#b94b38;
    background:rgba(239,235,226,.96)!important;color:#191d1d!important;
    border-color:rgba(24,28,28,.14)!important;box-shadow:0 8px 28px rgba(57,48,36,.08)!important;
  }
  html[data-theme="light"] body[data-home-theme] .m-appbar-inner{color:#191d1d}
  html[data-theme="light"] body[data-home-theme] .m-appbar-brand{color:#191d1d}
  html[data-theme="light"] body[data-home-theme] .m-site-theme-toggle::after{border-color:#efebe2}
  html[data-theme="light"] body[data-home-theme] .m-tab-label{color:var(--home-muted)!important}
  html[data-theme="light"] body[data-home-theme] .m-tab.is-active .m-tab-label{color:var(--home-ink)!important}
  html[data-theme="light"] body[data-home-theme] .eo-ia-sub{color:var(--home-muted)!important}
  html[data-theme="light"] body[data-home-theme] .m-tab-icon-logo img{filter:saturate(.74) contrast(.92)}
  html[data-theme="light"] body[data-home-theme] .m-tab.is-active .m-tab-icon-logo img{filter:saturate(1.05) contrast(1.04)}
  html[data-theme="light"] body[data-home-theme] .m-sheet-mask{
    --bg-1:#ebe6dc;--line:rgba(24,28,28,.1);--line-2:rgba(24,28,28,.17);--line-3:rgba(24,28,28,.3);
    --ink-0:#191d1d;--ink-1:#555a57;background:rgba(25,28,28,.36);
  }
}

@media (max-width:720px){
  .brand-logo-link[data-site-theme-toggle]::after{display:none}
  html[data-theme="light"] body[data-home-theme] #modules .mod-desc{color:var(--home-muted)!important}
  html[data-theme="light"] body[data-home-theme] #modules .mod-desc strong{color:var(--home-ink)!important}
  html[data-theme="light"] body[data-home-theme] #modules .mod.m1 .mod-desc{color:#fff8ed!important}
  html[data-theme="light"] body[data-home-theme] .home-hero .hero-bg{opacity:.48;filter:grayscale(.3) sepia(.12) brightness(1.48) contrast(.72) saturate(.5)}
  html[data-theme="light"] body[data-home-theme] .home-hero .hero-bg::after{
    background:linear-gradient(180deg,rgba(239,235,226,.88),rgba(239,235,226,.63) 54%,rgba(239,235,226,.78));
  }
  html[data-theme="light"] body[data-home-theme] .home-hero .news{box-shadow:0 18px 44px rgba(57,48,36,.12)}
  html[data-theme="light"] body[data-home-theme] #modules .mods-grid{box-shadow:none}
}

@media (hover:none){
  html[data-theme="light"] body[data-home-theme] #modules .mod.m1:hover{background:var(--rev);color:#fff8ed}
  html[data-theme="light"] body[data-home-theme] #modules .mod.m1:hover :is(.mod-desc,.mod-foot,.mod-name .en,.mod-arrow){color:#fff8ed}
  html[data-theme="light"] body[data-home-theme] #modules .mod.m1:hover .mod-num{color:#fff0bd}
  html[data-theme="light"] body[data-home-theme] #modules .mod.m1:hover .mod-tag,
  html[data-theme="light"] body[data-home-theme] #modules .mod.m1:hover .mod-status:is(.live,.beta){
    color:var(--home-ink);background:#e5bb3f;border-color:#e5bb3f;
  }
}

@media (prefers-reduced-motion:reduce){
  [data-site-theme-toggle] img,[data-site-theme-toggle]::before{transition:none!important}
}
