    .relic-map{--accent:#b88746;--glow:#f4e2a8;background:radial-gradient(900px 700px at 50% -10%,#2c2112 0%,#090909 85%);font-family:Inter,system-ui,sans-serif;color:#f5f0e9;padding:clamp(44px,7vw,90px) 16px;position:relative;overflow:hidden}
    .relic-map .visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

    .relic-map .machine{position:relative;width:min(330px,84vw);aspect-ratio:1;margin:0 auto;display:grid;place-items:center;animation:idle 5.4s ease-in-out infinite}
    @keyframes idle{0%,100%{transform:scale(1)}40%{transform:scale(1.03)}}
    .relic-map .machine.is-solved{animation:solved 2.2s ease-in-out infinite;filter:drop-shadow(0 0 18px rgba(255,230,150,.45))}
    @keyframes solved{0%,100%{transform:scale(1.01)}50%{transform:scale(1.07)}}
    .relic-map .machine.is-hit{animation:hit .2s ease-out 1}
    @keyframes hit{0%{transform:scale(1)}60%{transform:scale(1.03)}100%{transform:scale(1)}}

    .relic-map .gear{appearance:none;border:0;padding:0;position:absolute;border-radius:50%;cursor:pointer;transition:transform .4s ease;background:repeating-conic-gradient(from 0deg,var(--accent) 0deg 10deg,transparent 10deg 20deg);mask:radial-gradient(circle at center,transparent 42%,black 45%);-webkit-tap-highlight-color:transparent;touch-action:manipulation}
    .relic-map .gear:nth-child(1){width:100%;height:100%;opacity:.4}
    .relic-map .gear:nth-child(2){width:70%;height:70%;opacity:.6}
    .relic-map .gear:nth-child(3){width:40%;height:40%;opacity:.8}
    .relic-map .gear::after{content:"";position:absolute;inset:-16px;border-radius:50%}
    .relic-map .mark{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--glow);box-shadow:0 0 10px var(--glow);top:0;left:50%;transform:translate(-50%,-50%)}
    .relic-map .link{position:absolute;width:3px;height:150px;background:linear-gradient(to bottom,var(--accent),transparent);top:50%;left:50%;transform:translate(-50%,-50%) rotate(var(--angle));opacity:.3}
    .relic-map .link.active{opacity:.85;filter:brightness(1.45)}
    .relic-map .core{width:88px;height:88px;border-radius:50%;background:radial-gradient(circle,var(--accent) 0%,#2c2112 70%);box-shadow:0 0 20px rgba(184,135,70,.4);transition:.35s}
    .relic-map .core.partial{box-shadow:0 0 30px 10px rgba(184,135,70,.42)}
    .relic-map .core.active{background:radial-gradient(circle,var(--glow) 0%,var(--accent) 70%);box-shadow:0 0 70px 25px rgba(255,230,150,.8)}

    .relic-map .video-modal,.relic-map .afterlife-video-modal{position:fixed;inset:0;display:none;place-items:center;background:rgba(0,0,0,.8);z-index:99999}
    .relic-map .video-modal.show,.relic-map .afterlife-video-modal.show{display:grid}
    .relic-map .video-box,.relic-map .afterlife-video-box{width:min(900px,95vw);background:#0e0e0e;border:1px solid #3b2f1a;border-radius:14px;padding:10px;position:relative}
    .relic-map .video-head{display:flex;justify-content:space-between;align-items:center;margin:4px 6px 8px;font-weight:700}
    .relic-map .video-close,.relic-map .afterlife-video-close{appearance:none;border:1px solid #443620;background:#1a1712;color:#f0e8d8;border-radius:8px;padding:6px 10px;cursor:pointer}
    .relic-map .video-wrap{border-radius:10px;overflow:hidden;background:#000;position:relative}
    .relic-map .video-wrap video,.relic-map .afterlife-video-box video{width:100%;display:block;border-radius:8px}
    .relic-map .unmute{position:absolute;right:8px;bottom:8px;display:none;border:1px solid #444;background:#111;color:#eee;border-radius:999px;padding:8px 12px}
    .relic-map .unmute.show{display:inline-block}

    .relic-map .afterlife-game{padding:1rem;max-width:1080px;margin:2rem auto 0;background:#070707;color:#fff;border-radius:14px;border:1px solid rgba(255,255,255,.09);text-align:left;padding-bottom:calc(1rem + 108px)}
    .relic-map .is-hidden{display:none !important}
    .relic-map .ag-layout{display:grid;grid-template-columns:1fr;gap:.9rem}
    .relic-map .ag-pool,.relic-map .ag-tomb{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px}
    .relic-map .ag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
    .relic-map .ag-card{border:0;background:#111;border-radius:10px;overflow:hidden;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
    .relic-map .ag-card img{width:100%;height:108px;object-fit:cover;display:block}
    .relic-map .ag-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.6rem 0}
    .relic-map .ag-slot{background:#111;border:1px dashed #444;border-radius:.8rem;height:104px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:4px;color:#bbb}
    .relic-map .ag-slot img{width:100%;height:100%;object-fit:cover;display:block}
    .relic-map .ag-slot.is-correct{border:2px solid #43c06b;box-shadow:0 0 0 2px rgba(67,192,107,.22) inset}
    .relic-map .ag-slot.is-wrong{border:2px solid #e15858;box-shadow:0 0 0 2px rgba(225,88,88,.2) inset}
    .relic-map .evaluate-btn{width:100%;min-height:44px;padding:.9rem;border-radius:999px;border:0;background:#d4a53f;color:#000;font-weight:800;cursor:pointer}
    .relic-map .result{margin-top:.6rem;white-space:pre-line}
    .relic-map .ag-description{margin-top:.6rem;color:#cfd6dd;font-size:.92rem}

    .relic-map .bw-epilog{margin:2rem auto 0;max-width:1080px;background:#0b0f12;color:#e9ecef;padding:clamp(32px,5vw,60px) 16px;border-radius:14px;border:1px solid rgba(255,255,255,.08);text-align:center}
    .relic-map .bw-epilog .box{max-width:920px;margin:0 auto;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:16px;box-shadow:0 18px 48px rgba(0,0,0,.55)}
    .relic-map .bw-epilog .cta{margin-top:14px}
    .relic-map .bw-epilog .btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font:900 14px/1 Inter,system-ui,sans-serif;padding:12px 16px;border-radius:999px;background:#50a605;color:#071407;min-height:44px;min-width:min(320px,92vw)}

    .relic-map .desc-hud{position:fixed;left:0;right:0;bottom:0;z-index:999998;display:none;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.78));backdrop-filter:blur(9px)}
    .relic-map .desc-hud.show{display:block}
    .relic-map .desc-hud .inner{max-width:1080px;margin:0 auto;background:rgba(16,16,16,.9);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:10px;display:flex;gap:10px;align-items:flex-start}
    .relic-map .desc-hud .tag{font:900 11px/1 Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#d4a53f;padding:8px 10px;border-radius:999px;background:rgba(212,165,63,.1);border:1px solid rgba(212,165,63,.22)}
    .relic-map .desc-hud .text{flex:1;font:700 14px/1.35 Inter,system-ui,sans-serif}
    .relic-map .desc-hud .close{appearance:none;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.25);color:#fff;border-radius:10px;padding:8px 10px;font-weight:900;cursor:pointer}
    .relic-map.is-modal-open .desc-hud{display:none !important}

    @media (min-width:860px){
      .relic-map .ag-layout{grid-template-columns:1fr 1fr}
      .relic-map .ag-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
      .relic-map .ag-slots{grid-template-columns:repeat(5,minmax(0,1fr))}
    }
