
.amiga-hero{padding:48px 0}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:44px;align-items:center}
.amiga-hero h1{font-size:clamp(3.2rem,5.2vw,5.4rem);line-height:.92;letter-spacing:-.055em;margin:12px 0 20px}.lead{font-size:1.15rem;line-height:1.65;color:#d8dde7}
.wtf{margin:20px 0;padding:15px 17px;border-left:3px solid var(--cyan);background:rgba(86,215,255,.055);border-radius:0 12px 12px 0;font-weight:850}
.amiga500{height:360px;position:relative;display:grid;place-items:center}.machine{width:88%;height:175px;background:linear-gradient(#e9e4d9,#c9c3b7);border:2px solid #aaa397;border-radius:14px 14px 28px 28px;transform:perspective(650px) rotateX(57deg);box-shadow:0 35px 50px rgba(0,0,0,.45);position:relative}.keys{position:absolute;left:7%;right:7%;top:35px;display:grid;grid-template-columns:repeat(15,1fr);gap:4px}.keys i{height:13px;background:#ddd7ca;border:1px solid #9c978d;border-radius:2px}.slot{position:absolute;right:5%;bottom:35px;width:100px;height:9px;background:#393939}.badge{position:absolute;left:7%;bottom:25px;color:#555;font-weight:950;letter-spacing:.05em}
.fact-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.fact,.panel{background:var(--panel);border:1px solid var(--line);border-radius:19px;padding:20px}.fact strong{display:block;color:var(--gold);font-size:1.18rem}.fact small{color:var(--muted)}
.workbench{background:#1c5fa6;border:10px solid #c9c9c9;border-radius:10px;min-height:400px;padding:18px;position:relative;overflow:hidden}.wbbar{position:absolute;left:0;right:0;top:0;height:26px;background:#eee;color:#111;padding:4px 9px;font:700 13px monospace}.icons{display:flex;gap:28px;margin-top:35px}.wbicon{background:none;border:0;color:#fff;cursor:pointer;text-align:center;font-weight:800}.wbicon span{display:block;font-size:3rem}.window{display:none;position:absolute;left:16%;top:95px;width:68%;background:#ddd;color:#111;border:4px double #111;box-shadow:12px 12px 0 rgba(0,0,0,.25)}.window.show{display:block}.wtitle{background:#eee;border-bottom:2px solid #111;padding:5px 8px;font-weight:900}.wbody{padding:20px;min-height:120px}.closewb{float:right;cursor:pointer}
.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.chip{background:#0c1118;border:1px solid #35404c;border-radius:18px;padding:22px;text-align:center}.chip b{font-size:1.5rem;color:var(--cyan)}
.soundlab{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pads{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.pad{min-height:85px;border:1px solid var(--line);background:#222a36;color:#fff;border-radius:15px;font-weight:900;cursor:pointer}.pad:active{transform:scale(.97);outline:2px solid var(--cyan)}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:16px 18px;margin:9px 0}.faq summary{font-weight:900;cursor:pointer}.sources{color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.sources a{color:#a9e8ff}
.next-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.next-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:19px;text-decoration:none}.next-card strong{display:block}.next-card small{color:var(--muted)}
@media(max-width:820px){.hero-grid,.soundlab,.chips{grid-template-columns:1fr}.fact-strip{grid-template-columns:1fr 1fr}.next-cards{grid-template-columns:1fr}.amiga500{height:280px}.amiga-hero h1{font-size:clamp(3rem,13vw,4.6rem)}}

/* ===== Guru Meditation ===== */
.guru-machine{background:#090909;border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow)}
.guru-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.guru-screen{
  min-height:310px;
  background:#050505;
  border:12px solid #303030;
  border-radius:8px;
  display:grid;
  place-items:center;
  padding:28px;
  overflow:hidden;
}
.guru-normal{text-align:center;color:#d8dde7;font-family:monospace}
.guru-normal strong{display:block;font-size:1.5rem;color:#63dcff;margin-bottom:8px}
.guru-normal span{color:#9ba6b5}
.guru-error{display:none;width:100%;max-width:780px}
.guru-screen.crashed{
  border-color:#ff3030;
  animation:guruFlash .72s steps(1,end) infinite;
}
.guru-screen.crashed .guru-normal{display:none}
.guru-screen.crashed .guru-error{display:block}
.guru-box{
  border:5px solid #ff3030;
  color:#ff3030;
  padding:22px 26px;
  text-align:center;
  font:700 clamp(.9rem,2vw,1.25rem)/1.55 monospace;
  letter-spacing:.02em;
}
.guru-box strong{font-size:1.2em}
.guru-explain{margin-top:18px}
@keyframes guruFlash{
  0%,49%{border-color:#ff3030}
  50%,100%{border-color:#4a0909}
}
@media (prefers-reduced-motion:reduce){
  .guru-screen.crashed{animation:none}
}
