.system-orbit{position:relative;min-height:500px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(180deg,rgba(15,20,29,.58),rgba(7,10,15,.27));box-shadow:var(--shadow);overflow:hidden}.orbit-center,.orbit-node{position:absolute;z-index:2;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:rgba(7,10,15,.82);backdrop-filter:blur(12px)}.orbit-center{left:50%;top:50%;transform:translate(-50%,-50%);min-width:150px}.orbit-node{min-width:118px}.orbit-center strong,.orbit-node strong{display:block;font-size:13px}.orbit-center span,.orbit-node span{display:block;margin-top:4px;color:var(--muted);font:500 9px/1.2 var(--font-mono)}.orbit-node.n1{left:58%;top:10%}.orbit-node.n2{right:3%;top:56%}.orbit-node.n3{left:4%;top:62%}.orbit-node.n4{left:8%;top:13%}.orbit-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1}.orbit-lines path{fill:none;stroke:rgba(87,230,255,.2);stroke-width:1.2;stroke-dasharray:6 9;animation:dash 12s linear infinite}@keyframes dash{to{stroke-dashoffset:-120}}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:linear-gradient(160deg,rgba(13,18,26,.78),rgba(7,10,15,.48))}.project-image{width:100%;aspect-ratio:16/9;object-fit:cover;background:#101722}.media-missing{aspect-ratio:16/9;display:grid;place-items:center;background:#101722;color:var(--muted)}.project-card-body{padding:25px}.card-topline{display:flex;justify-content:space-between;color:var(--subtle);font:650 9px/1 var(--font-mono)}.project-card h3{margin:48px 0 11px;font:700 31px/1 var(--font-display);letter-spacing:-.045em}.project-card p{color:var(--muted)}.tag-list,.status-pills{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0;padding:0;list-style:none}.tag-list li,.status-pills li{padding:6px 8px;border:1px solid var(--line);border-radius:999px;color:#aeb9c7;font:550 9px/1 var(--font-mono)}.card-links{display:flex;gap:16px;flex-wrap:wrap}.last-update{color:var(--subtle);font-size:11px}.case-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;align-items:center}.case-content,.prose-grid{display:grid;grid-template-columns:1fr 330px;gap:70px;align-items:start}.prose{max-width:760px}.prose h2{margin:45px 0 12px;font:700 28px/1 var(--font-display)}.prose p,.plain-list{color:var(--soft)}.case-aside,.fact-sheet,.surface-card{padding:26px;border:1px solid var(--line);border-radius:20px;background:rgba(8,12,18,.7)}.case-aside{position:sticky;top:105px}.case-aside h2{margin:24px 0 5px;color:var(--subtle);font:650 9px/1 var(--font-mono);text-transform:uppercase}.case-aside h2:first-child{margin-top:0}
.lab-panel,.blacklight-bridge{display:grid;grid-template-columns:1.02fr .98fr;gap:0;border:1px solid var(--line);border-radius:26px;background:rgba(8,12,18,.64);overflow:hidden}.lab-panel>div:first-child,.blacklight-bridge>div:first-child{padding:42px}.terminal-card{margin:18px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#07090d;display:flex;flex-direction:column;gap:15px;color:#aeb8c6;font:500 11px/1.4 var(--font-mono)}.terminal-card b{color:var(--green)}.layer-grid,.status-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.layer-grid article{min-height:250px;padding:22px;border:1px solid var(--line);border-radius:20px;background:rgba(8,12,18,.66)}.layer-grid article>span{color:var(--cyan);font:650 9px/1 var(--font-mono)}.layer-grid h2{margin:72px 0 8px;font:700 25px/1 var(--font-display)}.layer-grid p{color:var(--muted);font-size:12px}.status-columns{grid-template-columns:repeat(3,1fr)}.callout{padding:26px;border:1px solid var(--line);border-radius:18px;background:rgba(8,12,18,.65)}.callout p{color:var(--muted)}
.infra-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.infra-mini a,.infra-node-card{padding:20px;border:1px solid var(--line);border-radius:17px;background:rgba(8,12,18,.66)}.infra-mini strong,.infra-mini span{display:block}.infra-mini span{margin-top:7px;color:var(--muted);font:500 9px/1 var(--font-mono)}.infra-topology{position:relative;min-height:570px;border:1px solid var(--line);border-radius:26px;background:rgba(8,12,18,.54)}.infra-topology svg{position:absolute;inset:0;width:100%;height:100%}.infra-topology path{fill:none;stroke:rgba(87,230,255,.18);stroke-width:1.3;stroke-dasharray:7 10}.topology-node{position:absolute}.topology-node a{display:block;min-width:145px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#090e15}.topology-node strong,.topology-node span{display:block}.topology-node span{margin-top:5px;color:var(--muted);font:500 9px/1 var(--font-mono)}.topology-node.edge{left:50%;top:11%;transform:translateX(-50%)}.topology-node.hefesto{left:8%;bottom:12%}.topology-node.goiatuba{left:50%;bottom:5%;transform:translateX(-50%)}.topology-node.poseidon{right:8%;bottom:12%}.infra-node-grid,.tech-matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.infra-node-card>div{display:flex;align-items:center;gap:9px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 14px var(--green)}.infra-node-card p,.tech-card p{color:var(--muted);font-size:12px}.infra-node-card small{color:var(--subtle);font:500 9px/1.4 var(--font-mono)}.tech-card{min-height:220px;padding:22px;border:1px solid var(--line);border-radius:18px;background:rgba(8,12,18,.66)}.tech-card h3{margin:0 0 6px;font:700 21px/1 var(--font-display)}.tech-card>span{color:var(--cyan);font:550 9px/1 var(--font-mono)}.tech-card p{margin-top:45px;line-height:1.55}
.about-grid,.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.surface-card h2{font:700 37px/1 var(--font-display);letter-spacing:-.05em}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.contact-card{min-height:230px;padding:26px;border:1px solid var(--line);border-radius:20px;background:rgba(8,12,18,.7);display:flex;flex-direction:column;justify-content:space-between}.contact-card h2{font:700 28px/1 var(--font-display)}.contact-card small{color:var(--muted)}.journal-pipeline{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:32px}.journal-pipeline span,.journal-pipeline strong{padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:rgba(8,12,18,.7);font:600 10px/1 var(--font-mono)}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.filter{border:1px solid var(--line);border-radius:10px;padding:8px 12px;background:var(--surface-soft);color:var(--text);cursor:pointer}.filter.active{border-color:var(--cyan)}.journal-list,.journal-preview{display:grid}.journal-list article,.journal-preview article{display:grid;grid-template-columns:135px 1fr;gap:25px;padding:22px 0;border-top:1px solid var(--line)}.journal-list p,.journal-preview p{color:var(--muted)}.type-badge{color:var(--cyan);font:650 9px/1 var(--font-mono)}.blacklight-preview{min-height:350px;display:flex;flex-direction:column;justify-content:center;align-items:center;border-left:1px solid rgba(255,122,24,.18);background:radial-gradient(circle at 50% 50%,rgba(255,122,24,.12),transparent 40%),#09080c}.blacklight-preview span{font:800 80px/1 var(--font-display);color:var(--orange)}.blacklight-preview strong{font:700 25px/1 var(--font-display)}.blacklight-preview small{margin-top:8px;color:var(--muted)}.blacklight-preview i{margin-top:35px;color:#ffc18e;font:650 9px/1 var(--font-mono)}
@media(max-width:1020px){.project-grid,.infra-node-grid,.tech-matrix,.layer-grid,.status-columns,.service-grid{grid-template-columns:repeat(2,1fr)}.infra-mini{grid-template-columns:repeat(2,1fr)}.case-content,.prose-grid{grid-template-columns:1fr}.case-aside{position:static}.about-grid{grid-template-columns:1fr}}
@media(max-width:680px){.system-orbit{min-height:405px}.orbit-node{min-width:95px;padding:9px}.orbit-node.n1{left:53%;top:8%}.orbit-node.n2{right:1%;top:58%}.orbit-node.n3{left:1%;top:65%}.orbit-node.n4{left:1%;top:12%}.project-grid,.infra-node-grid,.tech-matrix,.layer-grid,.status-columns,.service-grid,.contact-grid{grid-template-columns:1fr}.journal-list article,.journal-preview article{grid-template-columns:1fr;gap:7px}.infra-topology{min-height:500px}.topology-node.hefesto{left:2%;bottom:14%}.topology-node.poseidon{right:2%;bottom:14%}}


/* Light-theme component surfaces. Dark-mode originals above remain untouched. */
:root[data-theme="light"] .system-orbit{
  background:
    linear-gradient(180deg,rgba(255,255,255,.88),rgba(235,241,248,.82));
  border-color:var(--line-strong);
  box-shadow:0 26px 75px rgba(45,62,86,.14);
}
:root[data-theme="light"] .orbit-center,
:root[data-theme="light"] .orbit-node{
  background:rgba(255,255,255,.94);
  border-color:rgba(30,58,92,.2);
  box-shadow:0 10px 25px rgba(45,62,86,.08);
}
:root[data-theme="light"] .orbit-center strong,
:root[data-theme="light"] .orbit-node strong{color:var(--text)}
:root[data-theme="light"] .orbit-center span,
:root[data-theme="light"] .orbit-node span{color:#56667a}
:root[data-theme="light"] .orbit-lines path{stroke:rgba(8,124,145,.34)}

:root[data-theme="light"] .project-card,
:root[data-theme="light"] .case-aside,
:root[data-theme="light"] .fact-sheet,
:root[data-theme="light"] .surface-card,
:root[data-theme="light"] .lab-panel,
:root[data-theme="light"] .blacklight-bridge,
:root[data-theme="light"] .layer-grid article,
:root[data-theme="light"] .callout,
:root[data-theme="light"] .infra-mini a,
:root[data-theme="light"] .infra-node-card,
:root[data-theme="light"] .infra-topology,
:root[data-theme="light"] .tech-card,
:root[data-theme="light"] .contact-card,
:root[data-theme="light"] .journal-pipeline span,
:root[data-theme="light"] .journal-pipeline strong{
  background:rgba(255,255,255,.82);
  border-color:var(--line);
}

:root[data-theme="light"] .project-card{
  background:linear-gradient(160deg,rgba(255,255,255,.94),rgba(236,242,248,.86));
}
:root[data-theme="light"] .project-image,
:root[data-theme="light"] .media-missing{background:#e8eef5}
:root[data-theme="light"] .tag-list li,
:root[data-theme="light"] .status-pills li{color:#46576d}
:root[data-theme="light"] .card-topline,
:root[data-theme="light"] .last-update{color:#68768a}

:root[data-theme="light"] .terminal-card{
  background:#111827;
  border-color:#263247;
  color:#cbd5e1;
  box-shadow:0 16px 36px rgba(17,24,39,.12);
}

:root[data-theme="light"] .infra-topology path{stroke:rgba(8,124,145,.28)}
:root[data-theme="light"] .topology-node a{
  background:rgba(255,255,255,.96);
  border-color:rgba(30,58,92,.2);
  box-shadow:0 10px 24px rgba(45,62,86,.08);
}
:root[data-theme="light"] .infra-node-card p,
:root[data-theme="light"] .tech-card p,
:root[data-theme="light"] .journal-list p,
:root[data-theme="light"] .journal-preview p,
:root[data-theme="light"] .callout p,
:root[data-theme="light"] .layer-grid p{color:#526174}

:root[data-theme="light"] .filter{
  background:rgba(255,255,255,.88);
  color:var(--text);
}
:root[data-theme="light"] .filter.active{
  border-color:var(--cyan);
  background:rgba(8,124,145,.08);
}
