/* ============================================================
   RAH ENHANCE v3 — Control Panel PREMIUM (mewah) skin
   Loaded AFTER theme.css. Cinzel display font + gold/navy luxe,
   green→gold for primary actions (green kept only for success/online).
   ============================================================ */

/* ---------- Self-hosted Cinzel (display) ---------- */
@font-face{font-family:'Cinzel';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/Cinzel-400.woff2) format('woff2')}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/Cinzel-600.woff2) format('woff2')}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/Cinzel-700.woff2) format('woff2')}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:800;font-display:swap;src:url(fonts/Cinzel-800.woff2) format('woff2')}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:900;font-display:swap;src:url(fonts/Cinzel-900.woff2) format('woff2')}
@font-face{font-family:'Cinzel Decorative';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/CinzelDecorative-700.woff2) format('woff2')}
@font-face{font-family:'Cinzel Decorative';font-style:normal;font-weight:900;font-display:swap;src:url(fonts/CinzelDecorative-900.woff2) format('woff2')}

:root{
  --rah-serif:'Cinzel',Georgia,'Times New Roman',serif;
  --rah-deco:'Cinzel Decorative','Cinzel',Georgia,serif;
  --rah-gold:#f3c35f; --rah-gold-lite:#ffe8b0; --rah-gold-deep:#9f6a24;
  --rah-goldgrad:linear-gradient(135deg,#fff2b0,#f0b94e 44%,#a6691f 100%);
}

/* ---------- backdrop ala LANDING: art blur + vignette + gold radial ---------- */
body::after{
  content:"";position:fixed;inset:-28px;pointer-events:none;z-index:-2;
  background:
    radial-gradient(circle at 50% 20%, rgba(84,185,255,.14), transparent 38%),
    linear-gradient(180deg, rgba(4,7,15,.42), rgba(4,7,15,.96) 72%),
    url('../img/roh-bg.png') center top / cover no-repeat;
  filter:blur(8px) saturate(1.1) brightness(.55);
  transform:scale(1.05);
}
body{position:relative}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:
    radial-gradient(circle at 14% 16%, rgba(243,195,95,.14), transparent 22%),
    radial-gradient(circle at 86% 24%, rgba(43,214,163,.09), transparent 24%),
    linear-gradient(90deg, rgba(0,0,0,.66), transparent 22%, transparent 78%, rgba(0,0,0,.7)),
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.88)) !important;
  background-size:auto !important;opacity:1 !important;
}

/* ---------- reveal + hover polish ---------- */
html.rah-fx-on .rah-reveal{opacity:0;transform:translateY(24px)}
html.rah-fx-on .rah-reveal.rah-in{opacity:1;transform:none;transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}
a,button,.btn,.card,.spec-card,.hnav-link,.hnav-top,.nav-link,input,select{transition:transform .16s ease,box-shadow .22s ease,filter .2s ease,color .2s ease,background .2s ease,border-color .2s ease}
::selection{background:rgba(243,195,95,.30);color:#fff}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:rgba(0,0,0,.25)}
::-webkit-scrollbar-thumb{background:linear-gradient(#caa04a,#7a5520);border-radius:9px;border:2px solid rgba(0,0,0,.2)}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(#f3c35f,#9f6a24)}

/* ---------- Cinzel headings everywhere ---------- */
.cp-content h1,.cp-content h2,.cp-content h3,.page-title,.card h3,.menu-title,
.legal-doc h1,.legal-doc h2,.spec-card .spec-big,.status-title,.stat-card .num,
.topnav a,.hnav-link,.hnav-top,.brand,.hnav-drop a,.topnav-dd-menu a{
  font-family:var(--rah-serif) !important;
}
.brand{letter-spacing:.06em;font-weight:800}
.hnav-link,.hnav-top{letter-spacing:.04em;text-transform:uppercase;font-size:.86rem;font-weight:700}

/* gold-gradient title text (like landing sec-head) */
.cp-content h1,.cp-content h2,.page-title,.card h3{
  background:linear-gradient(180deg,#fff6d8 0%,#f5cd7c 46%,#b9812f 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  filter:drop-shadow(0 4px 14px rgba(0,0,0,.5));text-transform:uppercase;letter-spacing:.02em;
}
.page-title{font-size:40px}
.card h3{font-size:19px}

/* ---------- GREEN → GOLD (primary actions) ---------- */
/* Register button in topbar */
.actions .btn.green,.btn.green{
  color:#1c1204 !important;background:var(--rah-goldgrad) !important;
  border-color:rgba(243,195,95,.7) !important;
  box-shadow:0 10px 26px rgba(243,195,95,.22),inset 0 1px 0 rgba(255,255,255,.6) !important;
}
/* Submit buttons inside content */
.cp-content input[type=submit],.cp-content button,.cp-content .submit,.cp-content input[type=button],
button[type=submit],input[type=submit]{
  color:#1c1204 !important;background:var(--rah-goldgrad) !important;
  border:1px solid rgba(243,195,95,.7) !important;border-radius:11px !important;
  font-weight:800 !important;letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;
  box-shadow:0 10px 26px rgba(243,195,95,.20),inset 0 1px 0 rgba(255,255,255,.6) !important;
}
/* sidebar (hidden) + any green nav hover -> gold */
.nav-link:hover,.nav-link.active{
  background:linear-gradient(90deg,rgba(159,106,36,.55),rgba(243,195,95,.12)) !important;
  border-color:rgba(243,195,95,.5) !important;box-shadow:0 0 22px rgba(243,195,95,.14) !important;
}
/* input focus green -> gold */
input:focus,select:focus,textarea:focus,
.cp-content input:focus,.cp-content select:focus,.item-search input:focus{
  border-color:var(--rah-gold) !important;box-shadow:0 0 0 3px rgba(243,195,95,.14) !important;
}

/* ---------- premium button shine ---------- */
.btn.gold,.btn.green,.q-btn,.cp-content input[type=submit],.cp-content button,.cp-content .submit{
  position:relative;overflow:hidden;
}
.btn.gold::before,.btn.green::before,.q-btn::before,
.cp-content input[type=submit]::before,.cp-content .submit::before{
  content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);
}
.btn.gold:hover::before,.btn.green:hover::before,.q-btn:hover::before{left:150%;transition:left .6s ease}
.btn:hover,button:hover{transform:translateY(-2px);filter:brightness(1.07)}
.btn.gold:hover,.btn.green:hover{box-shadow:0 12px 30px rgba(243,195,95,.4)}

/* ---------- topbar / nav — gaya NAV LANDING (kaca gelap + uppercase + pill) ---------- */
.topbar{
  position:sticky;top:0;z-index:120;
  height:auto !important;min-height:68px;               /* FIX: theme.css kunci 74px -> nav wrap meluber */
  align-items:center;row-gap:0;
  background:linear-gradient(180deg,rgba(4,7,15,.90),rgba(4,7,15,.55)) !important;
  backdrop-filter:blur(18px);border-bottom:1px solid rgba(243,195,95,.18) !important;
}
.topbar::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(243,195,95,.55),transparent)}
.brand{color:#ffeec2 !important;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;gap:10px}
.brand img{height:40px;border-radius:10px}
.topbar .brand img{transition:transform .3s ease,filter .3s ease}
.topbar .brand:hover img{transform:rotate(-5deg) scale(1.06);filter:drop-shadow(0 0 10px rgba(243,195,95,.6))}
/* nav link = landing .lnk: kecil, uppercase, underline emas animasi */
.hnav{gap:2px}
.hnav-link,.hnav-top{
  position:relative;padding:23px 9px;border-bottom:0 !important;
  font-size:.73rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,247,223,.82);
}
.hnav-link::after,.hnav-top::after{
  content:"";position:absolute;left:9px;right:9px;bottom:15px;height:1px;
  background:linear-gradient(90deg,transparent,var(--rah-gold),transparent);
  transform:scaleX(0);transition:transform .25s ease;
}
.hnav-link:hover,.hnav-top:hover,.hnav-link.active{color:#fff !important;text-shadow:0 0 12px rgba(243,195,95,.4)}
.hnav-link:hover::after,.hnav-top:hover::after,.hnav-link.active::after{transform:scaleX(1)}
.hnav-drop{background:linear-gradient(180deg,#0d1526,#05080f) !important;border-color:rgba(243,195,95,.34) !important;box-shadow:0 20px 46px rgba(0,0,0,.6) !important;border-radius:12px}
.hnav-drop a{text-transform:none;font-size:.9rem}
.hnav-drop a:hover,.topnav-dd-menu a:hover{background:rgba(243,195,95,.14) !important;color:#ffe9a8 !important;padding-left:16px}
.hnav-gm{color:#ffd98a !important}
/* actions = pill landing: LOGIN ghost + REGISTER gold + Discord icon */
.actions{gap:8px}
.actions .btn{
  display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 14px;border-radius:11px;
  font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:#ffe6a7;background:rgba(255,255,255,.05);border:1px solid rgba(243,195,95,.34);
  box-shadow:none;
}
.actions .btn svg{width:15px;height:15px;fill:currentColor;flex:0 0 auto}
.actions .btn.dc{padding:0 12px}
.actions .btn.usr{cursor:default}
@media(max-width:1280px){.brand span{display:none}}

/* ---------- panels / cards / forms as glass ---------- */
.card,.cp-content form,.cp-content > table,.cp-content fieldset,.status-strip,.spec-card,.stat-card{
  border-color:rgba(243,195,95,.30) !important;
}
.card,.cp-content form,.cp-content fieldset{
  background:linear-gradient(180deg,rgba(11,20,34,.86),rgba(5,11,20,.92)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 22px 60px rgba(0,0,0,.45) !important;
  position:relative;
}
/* subtle gold corner glow on primary content card */
.cp-content form::before{
  content:"";position:absolute;inset:0;border-radius:16px;pointer-events:none;
  background:radial-gradient(120px 120px at 100% 0%,rgba(243,195,95,.10),transparent 60%);
}
.card:hover{transform:translateY(-4px);box-shadow:0 26px 60px rgba(0,0,0,.5),0 0 0 1px rgba(243,195,95,.45),0 0 26px rgba(243,195,95,.12) !important}
table tr:hover td{background:rgba(243,195,95,.07)}
.cp-content table th{color:var(--rah-gold-lite) !important}

/* login/register form: center + ornate frame feel */
.cp-content form{border-radius:18px !important}
label{color:#f3e3bf !important}

/* status online dot keep green (semantic); success msg keep green tint */
.online,.dot{}
.cp-content .message,.cp-content .success{border-color:rgba(46,206,124,.5) !important}

/* spec cards premium */
.spec-card{background:linear-gradient(180deg,#121a2b,#070b13) !important}
.spec-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.45),0 0 0 1px rgba(243,195,95,.42),0 0 24px rgba(243,195,95,.14)}
.spec-card.spec-on{animation:rahBoxGlow 4s ease-in-out infinite}
@keyframes rahBoxGlow{0%,100%{box-shadow:0 12px 30px rgba(0,0,0,.4),inset 0 0 0 1px rgba(243,195,95,.16)}50%{box-shadow:0 12px 34px rgba(0,0,0,.4),inset 0 0 0 1px rgba(243,195,95,.5),0 0 26px rgba(243,195,95,.18)}}

/* headings subtle glow + legal shimmer */
.legal-doc h1{background:linear-gradient(100deg,#caa04a,#f3c35f,#fff3cf,#f3c35f,#caa04a);background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:rahShimmer 7s linear infinite}
@keyframes rahShimmer{to{background-position:220% center}}

/* content link hover */
.cp-content a:not(.btn):hover{text-shadow:0 0 8px rgba(243,195,95,.4)}

/* q-btn (item search) already gold — add hover lift */
.q-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(243,195,95,.32)}

/* ---------- Home DASHBOARD ---------- */
.rah-hero{position:relative;display:flex;align-items:center;gap:30px;padding:34px 36px;border:1px solid rgba(243,195,95,.32);border-radius:20px;overflow:hidden;margin:0 0 18px;
  background:linear-gradient(115deg,rgba(6,13,24,.94),rgba(6,13,24,.55) 60%,rgba(7,20,38,.35)),url('../img/roh-bg.png') right -40px center/620px no-repeat;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 22px 60px rgba(0,0,0,.5)}
.rah-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 120% at 100% 0%,rgba(243,195,95,.16),transparent 55%)}
.rah-hero .logo{width:154px;max-width:34%;position:relative;filter:drop-shadow(0 10px 26px rgba(0,0,0,.6))}
.rah-hero .htxt{position:relative;min-width:0}
.rah-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;font-family:var(--rah-serif);font-weight:700;font-size:.72rem;letter-spacing:.13em;color:#ffe4a1;border:1px solid rgba(243,195,95,.3);background:linear-gradient(90deg,rgba(243,195,95,.12),rgba(43,214,163,.06))}
.rah-hero h1{font-family:var(--rah-serif);font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:34px;margin:14px 0 8px;background:linear-gradient(180deg,#fff6d8,#f5cd7c 46%,#b9812f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.rah-hero p{color:#d8c9ab;line-height:1.65;max-width:600px;margin:0}
.rah-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.rah-cta .btn,.qcard .btn{text-decoration:none}
.dot.off{background:#ff7373 !important;box-shadow:0 0 13px #ff7373 !important}
.rah-status{margin-bottom:18px}
.rah-status .rah-num{font-family:var(--rah-serif);font-weight:800;font-size:1.5rem;color:#ffe7a2;line-height:1}
.rah-status .status-title{font-size:.68rem;letter-spacing:.13em;color:#a9966a;text-transform:uppercase}
.quick-grid{margin:0 0 24px}
.qcard{display:flex;flex-direction:column;align-items:flex-start;gap:9px;text-align:left}
.qcard .qico{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;font-size:24px;color:#1a1102;background:linear-gradient(135deg,#fff0a8,#d89b38);box-shadow:0 14px 30px rgba(243,195,95,.2);margin-bottom:2px}
.qcard h3{margin:0 !important;font-size:17px !important;-webkit-text-fill-color:initial}
.qcard p{color:#cbbd9c;font-size:13px;line-height:1.55;margin:0;flex:1}
.qcard .btn.block{margin-top:6px;font-size:.76rem;width:100%;text-align:center}
.rah-news{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:6px 0 8px}
.rah-news-card{position:relative;border:1px solid rgba(243,195,95,.22);border-radius:16px;padding:20px;background:linear-gradient(180deg,rgba(11,20,34,.82),rgba(5,11,20,.9));box-shadow:0 18px 46px rgba(0,0,0,.35)}
.rah-news-card:hover{border-color:rgba(243,195,95,.44);transform:translateY(-4px)}
.rah-news-tag{display:inline-block;padding:4px 10px;border-radius:8px;font-size:10px;font-weight:800;letter-spacing:.12em;color:#1c1204;background:linear-gradient(135deg,#ffe8b0,#e0a63e);margin-bottom:10px}
.rah-news-card h4{font-family:var(--rah-serif);font-weight:700;color:#ffe6aa;font-size:16px;margin:0 0 8px}
.rah-news-meta{color:#9a8f74;font-size:.75rem;margin-bottom:8px}
.rah-news-body{color:#d3c6a9;font-size:13.5px;line-height:1.6}
.rah-news-body p{margin:0 0 8px}
.rah-news-card .news_link{display:inline-block;margin-top:10px;color:var(--rah-gold);font-weight:700;font-size:.82rem}
.cp-content h2{margin-top:26px}
@media(max-width:900px){.rah-news{grid-template-columns:1fr}.rah-hero{flex-direction:column;text-align:center}.rah-hero .logo{width:120px;max-width:60%}.rah-cta{justify-content:center}}

@media (pointer:coarse){#rah-fx-canvas{display:none !important}}
@media (prefers-reduced-motion: reduce){#rah-fx-canvas{display:none !important}*{animation-duration:.001s !important}}

/* RAH-ICON-FIX 2026-07-07: icon DB diperbesar (asli 24px) */
.cp-content img[src*="/data/items/icons/"]{width:24px;height:24px;max-width:24px;min-width:24px;object-fit:contain;image-rendering:pixelated;vertical-align:middle;border-radius:0}
.vertical-table td.icon-td{width:32px;text-align:center;padding:4px 6px}
.cp-content img[src*="/data/monsters/"]{height:64px;width:auto;image-rendering:pixelated}

/* ===== #78: Unified CP filter (search-form mob/account/char -> gaya Item Database) ===== */
.toggler{display:none}
.search-form{display:block!important;background:linear-gradient(180deg,#141c2e,#101725)!important;border:1px solid #2a3350!important;border-radius:14px!important;padding:16px 20px!important;margin:14px 0!important;box-shadow:0 2px 10px rgba(0,0,0,.35)!important}
.search-form p{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 12px!important;padding:0 0 12px;border-bottom:1px dashed rgba(200,162,74,.16)}
.search-form p:last-child{margin-bottom:0!important;padding-bottom:0;border-bottom:0}
.search-form label{font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:#c8a24a;font-weight:800;margin:0 -4px 0 0;white-space:nowrap}
.search-form input[type=text],.search-form select{width:auto!important;min-width:150px;max-width:230px;background:#0d1524!important;border:1px solid #2f3a56!important;border-radius:8px!important;color:#e8ecf4!important;padding:7px 10px!important;font-size:.88rem;box-sizing:border-box}
.search-form select{min-width:130px;cursor:pointer}
.search-form select[name$="_op"]{min-width:110px;max-width:150px;color:#b9c4da!important}
.search-form select[name*="birthdate"],.search-form select[id*="birthdate"]{min-width:74px!important;max-width:92px!important}
.search-form input[type=checkbox]{width:auto!important;min-width:0!important;accent-color:#e0a83a;transform:scale(1.15);margin:0 2px}
.search-form input[type=text]:focus,.search-form select:focus{border-color:#f3c35f!important;outline:0;box-shadow:0 0 0 2px rgba(243,195,95,.16)!important}
.search-form input[type=submit]{background:linear-gradient(180deg,#f7d778,#e0a83a)!important;color:#3a2a08!important;border:0!important;border-radius:9px!important;padding:9px 24px!important;font-weight:800;cursor:pointer;margin-left:auto;box-shadow:0 2px 6px rgba(224,168,58,.25)}
.search-form input[type=submit]:hover{filter:brightness(1.06)}
.search-form input[type=button]{width:auto!important;background:transparent!important;color:#c8a24a!important;border:1px solid #3a4256!important;border-radius:9px!important;padding:8px 16px!important;font-weight:700;cursor:pointer}
@media(max-width:640px){.search-form input[type=text],.search-form select{max-width:none;flex:1 1 140px}}
