/* rekapinaja — 404 page + premium-lock mascot */
.rk404{position:relative;overflow:hidden;font-family:"RKM Jakarta","Plus Jakarta Sans",system-ui,sans-serif}
.rk404-full{min-height:100vh;display:grid;place-items:center;padding:32px 20px;box-sizing:border-box;color:#F5F3FF;
  background:radial-gradient(900px 500px at 10% 0%,rgba(124,58,237,.45),transparent 60%),radial-gradient(800px 500px at 100% 100%,rgba(244,63,94,.35),transparent 60%),#0A0614}
.rk404-inline{border-radius:28px;border:1px solid var(--border,#E2E8F0);padding:36px 28px;
  background:radial-gradient(500px 300px at 0% 0%,rgba(124,58,237,.10),transparent 60%),radial-gradient(500px 300px at 100% 100%,rgba(244,63,94,.10),transparent 60%),var(--card,#fff)}
.rk404-orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.45;pointer-events:none}
.rk404-orb.a{width:380px;height:380px;background:#F97316;right:12%;top:8%;animation:rk404-drift 16s ease-in-out infinite}
.rk404-orb.b{width:300px;height:300px;background:#7C3AED;left:6%;bottom:6%;animation:rk404-drift 20s ease-in-out infinite reverse}
.rk404-in{position:relative;max-width:1020px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1.05fr;gap:36px;align-items:center}
.rk404-art{position:relative;display:grid;place-items:center;min-height:360px}
.rk404-num{position:absolute;font:800 clamp(130px,19vw,230px)/1 "RKM Jakarta","Plus Jakarta Sans",sans-serif;letter-spacing:-.06em;
  background:linear-gradient(180deg,rgba(249,115,22,.55),rgba(244,63,94,.08));-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none}
.rk404-art img{position:relative;width:min(300px,78%);height:auto;filter:drop-shadow(0 26px 34px rgba(0,0,0,.35));animation:rk404-bob 4.2s ease-in-out infinite;transform-origin:50% 95%}
.rk404-inline .rk404-art{min-height:280px}.rk404-inline .rk404-art img{width:min(230px,70%)}
.rk404-chip{display:inline-block;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;color:#EA580C;background:rgba(249,115,22,.12);border:1px solid rgba(249,115,22,.3)}
.rk404-full .rk404-chip{color:#FED7AA}
.rk404 h1{margin:16px 0 12px;font-size:clamp(30px,4vw,46px);line-height:1.08;font-weight:800;letter-spacing:-.03em}
.rk404-full h1{color:#fff}
.rk404 p{margin:0;font-size:16px;line-height:1.65;opacity:.8;max-width:48ch}
.rk404 code{font:600 13px "RKM Mono","JetBrains Mono",ui-monospace,monospace;padding:2px 8px;border-radius:8px;background:rgba(124,58,237,.12);word-break:break-all}
.rk404-act{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.rk404-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:14px;border:1px solid transparent;cursor:pointer;
  font:700 14px "RKM Jakarta","Plus Jakarta Sans",system-ui,sans-serif;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease}
.rk404-btn:hover{transform:translateY(-1px)}.rk404-btn:active{transform:scale(.97)}
.rk404-btn.pri{color:#fff;background:linear-gradient(135deg,#F43F5E,#F97316);box-shadow:0 14px 30px -14px #F43F5E}
.rk404-btn.gho{background:transparent;color:inherit;border-color:rgba(124,58,237,.3)}
.rk404-full .rk404-btn.gho{border-color:rgba(255,255,255,.2);color:#EDE9FE}
.rk404-btn.gho:hover{background:rgba(124,58,237,.1)}
@media (max-width:820px){.rk404-in{grid-template-columns:1fr;gap:8px;text-align:center}.rk404 p{margin:0 auto}.rk404-act{justify-content:center}.rk404-art{min-height:260px}.rk404-art img{width:190px}}

/* Premium lock (langganan habis / belum premium) */
.rkm-lock-mascot{width:150px;height:auto;display:block;filter:drop-shadow(0 18px 24px rgba(124,58,237,.3));animation:rk404-bob 4.2s ease-in-out infinite;transform-origin:50% 95%}
@media (max-width:640px){.rkm-lock-mascot{width:120px}}

@keyframes rk404-bob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-12px) rotate(-1.5deg)}}
@keyframes rk404-drift{0%,100%{transform:translate(0,0)}50%{transform:translate(50px,40px)}}
@media (prefers-reduced-motion:reduce){.rk404 *,.rkm-lock-mascot{animation:none!important}}
