.complete-engine,.emotion-lab,.open-stack,.memory-system,.product-simulator{padding:clamp(70px,10vh,120px) 0;background:var(--dawn);color:var(--ink-light);border-top:1px solid rgba(80,70,60,.08)}
.emotion-lab,.memory-system{background:#f2ebe2}
.open-stack{background:#10100f;color:var(--ink-dark)}
.complete-head{max-width:720px;margin:0 auto 42px;text-align:center}
.complete-kicker{display:inline-block;margin-bottom:14px;color:var(--gold-deep);font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:700}
.complete-head h2{font-family:var(--serif);font-size:clamp(1.7rem,4vw,2.8rem);font-weight:400;line-height:1.2;margin-bottom:14px}
.complete-head p{color:var(--ink-light2);font-size:14px;line-height:1.9}
.open-stack .complete-head p{color:var(--ink-dark2)}
.complete-head code{font-size:12px;background:rgba(212,184,150,.16);padding:2px 6px;border-radius:6px}
.engine-map,.stack-grid,.memory-pipeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.engine-node,.stack-grid article,.pipe-card,.sim-panel,.sim-output{border:1px solid rgba(90,78,66,.12);border-radius:14px;padding:22px;background:rgba(255,255,255,.62)}
.engine-node b{color:var(--gold-deep);font-size:12px;letter-spacing:.16em}
.engine-node h3,.stack-grid strong,.pipe-card b,.sim-panel h3,.sim-output h3{display:block;color:var(--ink-light);font-size:16px;font-weight:600;margin:8px 0 8px}
.engine-node p,.stack-grid p,.pipe-card p,.sim-output p,.sim-output li{color:var(--ink-light2);font-size:13px;line-height:1.8}
.engine-node small,.stack-grid span{display:block;color:var(--gold-deep);font-size:11px;margin-top:12px}
.emotion-board{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(280px,1.1fr);gap:20px;align-items:stretch}
.emotion-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.emo{min-height:42px;border:1px solid rgba(90,78,66,.14);border-radius:999px;background:#fff;color:var(--ink-light2);cursor:pointer;font-size:12px;transition:all .2s}
.emo.active,.emo:hover{background:var(--night2);color:var(--gold);border-color:var(--gold-deep)}
.emotion-preview{border-radius:18px;background:var(--night2);padding:28px;color:var(--ink-dark);box-shadow:0 20px 70px rgba(0,0,0,.16)}
.wave-bars{height:88px;display:flex;align-items:end;gap:8px;margin-bottom:22px}
.wave-bars i{display:block;flex:1;border-radius:8px 8px 2px 2px;background:linear-gradient(180deg,var(--gold),var(--sage));animation:emoWave 1.7s ease-in-out infinite}
.wave-bars i:nth-child(1){height:28px}.wave-bars i:nth-child(2){height:60px;animation-delay:.1s}.wave-bars i:nth-child(3){height:38px;animation-delay:.2s}.wave-bars i:nth-child(4){height:76px;animation-delay:.3s}.wave-bars i:nth-child(5){height:44px;animation-delay:.4s}.wave-bars i:nth-child(6){height:64px;animation-delay:.5s}.wave-bars i:nth-child(7){height:34px;animation-delay:.6s}
@keyframes emoWave{50%{transform:scaleY(.55);opacity:.68}}
.emotion-preview h3{font-family:var(--serif);font-size:28px;font-weight:400;margin-bottom:8px;color:var(--dawn)}
.emotion-preview p{font-size:18px;line-height:1.8;color:var(--ink-dark);margin-bottom:18px}
.emotion-preview ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none}
.emotion-preview li{font-size:11px;color:var(--gold);border:1px solid rgba(212,184,150,.24);border-radius:999px;padding:6px 10px}
.open-stack .stack-grid article{background:#191716;border-color:rgba(212,184,150,.16)}
.open-stack .stack-grid strong{color:var(--dawn)}
.open-stack .stack-grid p{color:var(--ink-dark2)}
.memory-pipeline{grid-template-columns:repeat(6,minmax(0,1fr))}
.pipe-card{background:#fff}
.sim-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(280px,1.2fr);gap:18px}
.sim-panel{display:grid;gap:14px}
.sim-panel label{display:grid;gap:6px;color:var(--ink-light2);font-size:12px}
.sim-panel select{width:100%;border:1px solid rgba(90,78,66,.16);border-radius:10px;background:#fff;padding:10px;color:var(--ink-light)}
.sim-panel button{border:none;border-radius:100px;background:var(--gold-deep);color:#fff;padding:12px 18px;cursor:pointer;font-weight:600}
.sim-output ul{margin:10px 0 0 18px}
@media(max-width:900px){.engine-map,.stack-grid{grid-template-columns:1fr 1fr}.memory-pipeline{grid-template-columns:1fr 1fr}.emotion-board,.sim-grid{grid-template-columns:1fr}}
@media(max-width:580px){.engine-map,.stack-grid,.memory-pipeline{grid-template-columns:1fr}.emotion-controls{grid-template-columns:1fr}.complete-head{text-align:left}}
