/* VOCABULARIA v1.9.82 · final RPG interface polish.
   Visual layer only: panels, buttons, gauges, item frames, typography.
   Payment / pass screens keep their own source styles. */

@font-face{font-family:"Cinzel";font-style:normal;font-weight:400 900;font-display:swap;
 src:url("fonts/cinzel-latin.woff2") format("woff2");
 unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cinzel";font-style:normal;font-weight:400 900;font-display:swap;
 src:url("fonts/cinzel-latin-ext.woff2") format("woff2");
 unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
 --rpg-display:"Cinzel",Georgia,"Times New Roman","Apple SD Gothic Neo","Malgun Gothic",serif;
 --rpg-gold-hi:#fff3cc;--rpg-gold:#e2bd66;--rpg-gold-lo:#8d6322;--rpg-gold-line:#b8923f;
 --rpg-ink:#07090e;--rpg-iron-hi:#2c3447;--rpg-iron:#171d2a;--rpg-iron-lo:#0b0f17;
 --rpg-text:#f1e8d2;--rpg-muted:#aeb9c9;
 --rpg-frame:0 0 0 1px var(--rpg-ink),0 0 0 2px var(--rpg-gold-line),0 0 0 3px var(--rpg-ink),0 26px 60px rgba(0,0,0,.6);
 --rpg-frame-inset:inset 0 1px 0 rgba(255,244,214,.14),inset 0 0 0 1px rgba(226,189,102,.16),inset 0 0 48px rgba(0,0,0,.42);
 --rpg-corner:26px;
}

/* ---------- ornamental corners (mounted by rpg-ui.js) ---------- */
.rpgCorners{position:absolute;inset:0;pointer-events:none;z-index:9;border-radius:inherit}
.rpgCorners b{position:absolute;width:var(--rpg-corner);height:var(--rpg-corner);background:url("ui/corner.svg") center/contain no-repeat;filter:drop-shadow(0 1px 1px rgba(0,0,0,.7))}
.rpgCorners b:nth-child(1){left:2px;top:2px}
.rpgCorners b:nth-child(2){right:2px;top:2px;transform:rotate(90deg)}
.rpgCorners b:nth-child(3){right:2px;bottom:2px;transform:rotate(180deg)}
.rpgCorners b:nth-child(4){left:2px;bottom:2px;transform:rotate(270deg)}
.rpgCorners.small{--rpg-corner:18px}
.rpgCorners.small b{filter:drop-shadow(0 1px 1px rgba(0,0,0,.7)) brightness(1.05)}
:where(.menuCard,.setupWrap,.modalCard,.heroPick,.hud,.gReelWrap,.finalReportCard,.v1954HallCard,.v1937RoundCard,.v1937CumCard,.v1935ReportCard,.diffBox){position:relative}

/* ---------- shared surfaces ---------- */
.rpgFramed{
 border:1px solid #5c4521!important;
 box-shadow:var(--rpg-frame),var(--rpg-frame-inset)!important;
 background-image:
  linear-gradient(180deg,rgba(255,236,196,.045),transparent 16%,transparent 84%,rgba(0,0,0,.28)),
  repeating-linear-gradient(135deg,rgba(255,255,255,.012) 0 2px,transparent 2px 7px),
  linear-gradient(160deg,#141c2b,#0a101a 55%,#070b12)!important;
 background-color:#0b1019!important;
}
.rpgFramed.rpgOnArt{background-image:none!important;background-color:transparent!important}
.rpgFramed.rpgTranslucent{background-image:linear-gradient(160deg,rgba(16,23,37,.90),rgba(7,11,18,.94))!important;background-color:transparent!important}

/* engraved display type */
.rpgDisplay{font-family:var(--rpg-display)!important;font-weight:800;letter-spacing:.06em;
 background:linear-gradient(180deg,#fff7df 0%,#f3d78e 42%,#b88a34 70%,#f6e3ad 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
 filter:drop-shadow(0 2px 0 #1b1206) drop-shadow(0 4px 10px rgba(0,0,0,.6))}
.rpgDividerLine{display:block;width:min(320px,80%);height:20px;margin:10px auto 4px;background:url("ui/divider.svg") center/contain no-repeat;opacity:.95}

/* ---------- buttons ---------- */
button.primary,.primary,#startMenu #btnNewGame,#gate .gateEnter,.spButton.ready,.defeatNewGame{
 position:relative;font-family:inherit;color:#2a1a06!important;
 border:1px solid #5a3d12!important;border-radius:11px!important;
 background:
  linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,0) 48%,rgba(0,0,0,.08) 52%,rgba(0,0,0,0)),
  linear-gradient(180deg,#fff1c2 0%,#edc96f 38%,#d6a944 60%,#a4752a 100%)!important;
 box-shadow:0 0 0 1px #0a0e15,0 0 0 2px #e6c98a66,inset 0 1px 0 #fff8e3,inset 0 -2px 0 #7c5518,0 10px 24px rgba(0,0,0,.45),0 0 26px rgba(236,196,106,.22)!important;
 text-shadow:0 1px 0 rgba(255,255,255,.45)!important;letter-spacing:.08em!important;font-weight:900!important;
 animation:none!important;transition:transform .14s,filter .14s,box-shadow .14s;
}
button.primary:hover,.primary:hover,#gate .gateEnter:hover,.spButton.ready:hover{filter:brightness(1.07);transform:translateY(-1px)}
button.primary:active,.primary:active,#gate .gateEnter:active,.spButton.ready:active{transform:translateY(1px);box-shadow:0 0 0 1px #0a0e15,0 0 0 2px #e6c98a66,inset 0 2px 6px rgba(0,0,0,.3),0 4px 10px rgba(0,0,0,.4)!important}
.primary:disabled,#start:disabled{filter:grayscale(.55) brightness(.75)!important;opacity:.6!important;transform:none!important}
#gate .gateEnter{min-height:60px;animation:rpgEnterPulse 2s ease-in-out infinite!important}
#gate .gateEnter span{color:#2a1a06;font-family:var(--rpg-display);font-weight:900;font-size:15px;letter-spacing:.22em}
#gate .gateEnter small{color:#4a3312;font-weight:800}
@keyframes rpgEnterPulse{0%,100%{box-shadow:0 0 0 1px #0a0e15,0 0 0 2px #e6c98a66,inset 0 1px 0 #fff8e3,inset 0 -2px 0 #7c5518,0 10px 24px rgba(0,0,0,.45),0 0 22px rgba(236,196,106,.18)}
 50%{box-shadow:0 0 0 1px #0a0e15,0 0 0 2px #f1d9a3aa,inset 0 1px 0 #fff8e3,inset 0 -2px 0 #7c5518,0 12px 28px rgba(0,0,0,.5),0 0 44px rgba(236,196,106,.42)}}

.ghostBtn,.menuBtn2,.rankingEntry,#gate .rankingEntry,#startMenu .ghostBtn,#startMenu .menuBtn2,.stopBtn,#game .stopBtn,.statBtn,.sbReset,.nDel,.sReset,
#v1954HallModal .v1954HallBtns button,#v1954HallPager button,.notesTabs button,.vocabTabs button,.v1943BookTabs button,.v1936ExitBtns .ghostBtn,.slot,.swBtn,.stepBtn{
 color:var(--rpg-text)!important;
 border:1px solid #6f5a33!important;border-radius:10px!important;
 background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,0) 50%),linear-gradient(180deg,#2b3446,#161c29 70%,#10151f)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.12),inset 0 -1px 0 rgba(0,0,0,.5),0 6px 14px rgba(0,0,0,.35)!important;
 text-shadow:0 1px 1px rgba(0,0,0,.6);transition:border-color .15s,filter .15s,transform .14s;
}
.ghostBtn:hover,.menuBtn2:hover:not(:disabled),.rankingEntry:hover,.stopBtn:hover,#game .stopBtn:hover,.statBtn:hover:not(:disabled),.slot:hover:not(:disabled),.swBtn:hover,.stepBtn:hover,
#v1954HallModal .v1954HallBtns button:hover,#v1954HallPager button:hover:not(:disabled),.notesTabs button:hover,.vocabTabs button:hover{
 border-color:#e2bd66!important;filter:brightness(1.12);background:linear-gradient(180deg,rgba(255,236,196,.10),rgba(255,255,255,0) 50%),linear-gradient(180deg,#334058,#1b2231 70%,#131926)!important}
.ghostBtn:active,.menuBtn2:active,.rankingEntry:active,.stopBtn:active,.slot:active{transform:translateY(1px)}
.menuBtn2:disabled{opacity:.45!important;filter:grayscale(.4)}
#gate .rankingEntry,#btnMenuRanking{color:#ffe8ae!important;border-color:#b8923f!important;background:linear-gradient(180deg,rgba(255,236,196,.08),rgba(255,255,255,0) 50%),linear-gradient(180deg,#2d3245,#141a26 70%,#0f1420)!important}
.notesTabs button.on,.vocabTabs button.active,.v1943BookTabs button.on,.swBtn.on{border-color:#e2bd66!important;color:#fff0c2!important;background:linear-gradient(180deg,rgba(255,236,196,.16),rgba(255,255,255,0) 55%),linear-gradient(180deg,#5a4722,#2d2412)!important}
.swBtn.on{color:#1b1206!important;background:linear-gradient(180deg,#9fe8bb,#5fbe86)!important;border-color:#2f6b47!important;text-shadow:none}
.slot.confirm{border-color:#ffb08e!important}.slot.justSaved{border-color:#7fe1a6!important}
.quitBtn,#btnQuit{color:#ffb9b9!important;border-color:#8a4a44!important}

/* icon buttons in HUD */
#game .iconBtn,.iconBtn{
 min-width:40px;min-height:40px;border-radius:10px!important;color:#f3dfa8!important;
 border:1px solid #7a6338!important;
 background:radial-gradient(circle at 50% 30%,rgba(255,236,196,.10),transparent 60%),linear-gradient(180deg,#2b3446,#131926)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.14),inset 0 -1px 0 rgba(0,0,0,.6),0 5px 12px rgba(0,0,0,.4)!important;
}
#game .iconBtn:hover,.iconBtn:hover{border-color:#e2bd66!important;filter:brightness(1.15)}
.v1976UiIcon{color:#f3d78e}
.iconBtn .pip{border:1px solid #fff3;box-shadow:0 0 0 1px #070a10,0 0 10px rgba(255,90,90,.7)}
#game .notesBtn{color:#ffe8c8!important}

/* ---------- gauges ---------- */
.track,.bigTrack,.sBar,#v1943BossTimer{
 position:relative;height:11px!important;border-radius:7px!important;overflow:hidden;
 background:linear-gradient(180deg,#05070b,#10141d)!important;
 border:1px solid #5c4521!important;
 box-shadow:0 0 0 1px #070a10,inset 0 2px 4px rgba(0,0,0,.85),inset 0 -1px 0 rgba(255,255,255,.05)!important;
}
.track.xp{height:8px!important}
.track i,.bigTrack i,.sBar i,#v1943BossTimer i{
 border-radius:5px!important;
 background-image:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,.08) 45%,rgba(0,0,0,.18) 55%,rgba(0,0,0,.28))!important;
 box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 0 10px rgba(255,255,255,.08)!important;
}
.track.hp i{background-color:#d8503f!important;background-image:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,.1) 45%,rgba(0,0,0,.18) 55%,rgba(0,0,0,.3)),linear-gradient(90deg,#c43d2e,#ff8a6e)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 0 12px rgba(255,100,80,.35)!important}
.track.en i,.bigTrack.heroEnergy i{background-color:#3f8fe0!important;background-image:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,.1) 45%,rgba(0,0,0,.18) 55%,rgba(0,0,0,.3)),linear-gradient(90deg,#2b74d0,#9fe4ff)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 0 12px rgba(100,180,255,.35)!important}
.hudEnemy .track.en i,.bigTrack.enemyEnergy i{background-color:#e08a3f!important;background-image:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,.1) 45%,rgba(0,0,0,.18) 55%,rgba(0,0,0,.3)),linear-gradient(90deg,#d8692a,#ffe39f)!important}
.track.xp i{background-color:#8f6cff!important;background-image:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,.1) 45%,rgba(0,0,0,.18) 55%,rgba(0,0,0,.3)),linear-gradient(90deg,#7b57ff,#8fe9ff)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 0 10px rgba(150,120,255,.45)!important}
.track:after,.bigTrack:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),rgba(0,0,0,.45) calc(10% - 1px) 10%)}
.xpText{color:#d2c2ff}
.energyLabel{color:#e9dcc0;font-weight:700;letter-spacing:.08em}

/* ---------- gate / title ---------- */
#gate .improveEnglishHero{font-family:var(--rpg-display)!important;font-weight:900!important;letter-spacing:.07em!important;
 background:linear-gradient(180deg,#fffaf0 0%,#f6dd9c 40%,#c3952f 68%,#fff0bf 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;
 text-shadow:none!important;filter:drop-shadow(0 3px 0 #2a1b08) drop-shadow(0 0 22px rgba(236,196,106,.35)) drop-shadow(0 10px 24px rgba(0,0,0,.8))}
#gate .eduTagline{color:#f3d78e;text-shadow:0 2px 6px #000}
#gate .eduTaglineKr:after{content:"";display:block;width:min(360px,86vw);height:20px;margin:12px auto 0;background:url("ui/divider.svg") center/contain no-repeat}
#gate .gateHeroCard{border:1px solid #6f5a33;border-radius:16px;box-shadow:var(--rpg-frame),inset 0 0 0 1px rgba(226,189,102,.18)!important}
#gate .gateHeroCard:hover{box-shadow:var(--rpg-frame),0 0 30px color-mix(in srgb,var(--class-glow,#e2bd66) 38%,transparent),inset 0 0 0 1px rgba(226,189,102,.3)!important;transform:translateY(-4px)}
#gate .gateHeroText b{font-family:var(--rpg-display);font-weight:800;letter-spacing:.08em;
 background:linear-gradient(180deg,#fff7df,#f3d78e 45%,#c9a04a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #1b1206) drop-shadow(0 4px 10px rgba(0,0,0,.8))}
#gate .gateHeroText span{color:#e9dcc0;font-weight:800}
#gate .gateHeroText{padding-bottom:16px}
#gate .gateHeroText:before{content:"";display:block;width:60%;height:1px;margin:0 0 8px;background:linear-gradient(90deg,#e2bd66,transparent)}
#gate .titleOnlyVersion{font-family:var(--rpg-display);color:#c9b98e;letter-spacing:.3em}
#gate .rankingEntry{font-weight:800}

/* ---------- start menu ---------- */
#startMenu .menuCard{border-radius:18px!important;padding:34px 32px 26px!important}
#startMenu .menuCard:before{display:none!important}
#startMenu .eyebrow{color:#d6c08a;font-family:var(--rpg-display);letter-spacing:.3em}
#startMenu .menuLogo{font-family:var(--rpg-display)!important;font-weight:900;filter:drop-shadow(0 2px 0 #1b1206) drop-shadow(0 0 16px rgba(255,222,139,.3))}
#startMenu .menuEduLine{color:#e9dcc0;padding-bottom:24px;background:url("ui/divider.svg") center bottom/min(300px,80%) 18px no-repeat;margin-bottom:22px}
#startMenu .menuBtns{gap:10px}
#startMenu #btnNewGame{min-height:58px;font-size:16px}
#startMenu .menuNote{border-top:0!important;padding-top:8px;color:#aeb9c9}
#startMenu .menuExitActions{border-top:1px solid rgba(226,189,102,.22)!important}
#startMenu .v1935Hall,#startMenu .v1943Daily{
 border-radius:12px!important;border:1px solid #5c4521!important;
 background:linear-gradient(180deg,rgba(255,236,196,.05),rgba(0,0,0,0) 40%),linear-gradient(160deg,#121a2a,#0a0f19)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.1),inset 0 0 30px rgba(0,0,0,.4)!important}
#startMenu .v1935HallHead b{font-family:var(--rpg-display);color:#f3d78e;letter-spacing:.04em}
#startMenu .v1935HallRow{border:1px solid rgba(226,189,102,.1);background:rgba(255,255,255,.03)}
#startMenu .v1935HallRow.top3{border-color:rgba(226,189,102,.35);background:linear-gradient(90deg,rgba(226,189,102,.14),rgba(226,189,102,.03))}
#startMenu .v1943DailyTop b{color:#ffe8ae}
#startMenu .v1976Credits{color:#c9b98e}

/* ---------- setup ---------- */
#setup .setupWrap{border-radius:18px!important}
#setup .eyebrow{color:#d6c08a;font-family:var(--rpg-display);letter-spacing:.3em}
#setup .title{font-family:var(--rpg-display);font-weight:800;color:#fff3cc;text-shadow:0 2px 0 #1b1206,0 6px 18px rgba(0,0,0,.7);letter-spacing:.04em}
#setup .setupHeader .sub{padding-bottom:18px;background:url("ui/divider.svg") center bottom/min(320px,80%) 18px no-repeat}
#setup .diffBox{border-radius:14px!important;border:1px solid #5c4521!important;background:linear-gradient(160deg,#111a2a,#0a0f19)!important;box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.1),inset 0 0 40px rgba(0,0,0,.4)!important}
#setup .diffBox .eyebrow{color:#f3d78e}
#setup .diff{
 position:relative;border-radius:10px!important;border:1px solid #6f5a33!important;color:#f1e8d2;
 background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 50%),linear-gradient(180deg,#263048,#121826)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.1),inset 0 -1px 0 rgba(0,0,0,.5),0 6px 14px rgba(0,0,0,.3)!important;
 padding-left:16px!important;
}
#setup .diff:hover{border-color:#e2bd66!important;filter:brightness(1.12)}
#setup .diff b{font-family:var(--rpg-display);font-weight:800;color:#fff3cc;letter-spacing:.04em}
#setup .diff span{color:#b9c7d8}
#setup .diff.active{outline:0!important;border-color:#f3d78e!important;background:linear-gradient(180deg,rgba(255,236,196,.18),rgba(255,236,196,.02) 60%),linear-gradient(180deg,#4b3b1c,#241c0d)!important;box-shadow:0 0 0 1px #070a10,0 0 0 2px #e2bd66,0 0 22px rgba(236,196,106,.35),inset 0 1px 0 rgba(255,244,214,.2)!important}
#setup .diff.active b{color:#fff7df}#setup .diff.active span{color:#f1e8d2}
#setup .diff.active:after{content:"◆";position:absolute;right:11px;top:50%;transform:translateY(-50%);color:#f3d78e;font-size:12px;text-shadow:0 0 8px #f3d78e}
#setup .levelBandNote{color:#c9b98e;font-family:var(--rpg-display);letter-spacing:.12em;font-size:9px}
#setup .heroPick{border-radius:16px!important;border:1px solid #5c4521!important;box-shadow:var(--rpg-frame),inset 0 0 0 1px rgba(226,189,102,.14)!important;background:linear-gradient(180deg,#141c2b,#080d16)!important}
#setup .heroPick.selected{outline:0!important;border-color:#f3d78e!important;box-shadow:var(--rpg-frame),0 0 0 2px #e2bd66,0 0 34px rgba(236,196,106,.32),inset 0 0 0 1px rgba(226,189,102,.3)!important}
#setup .heroPick .role{color:#9fe8ff;font-weight:900}
#setup .heroName{font-family:var(--rpg-display)!important;font-weight:800;color:#fff3cc!important;letter-spacing:.03em;text-shadow:0 2px 0 #1b1206,0 4px 12px rgba(0,0,0,.6)}
#setup .heroInfo{border-top:1px solid rgba(226,189,102,.3);background:linear-gradient(180deg,rgba(226,189,102,.06),transparent 30%)}
#setup .v1952StudyBadge{border-color:#6f5a33!important;background:linear-gradient(180deg,#2b3446,#161c29)!important;color:#f1e8d2!important}
#setup .selected .v1952StudyBadge{border-color:#e2bd66!important;color:#fff0c2!important;background:linear-gradient(180deg,#5a4722,#2d2412)!important}
#setup .levelRequiredMsg{color:#f3d78e}#setup .levelRequiredMsg.ok{color:#9fe8bb}
#setup .setupAction #start{min-height:56px}

/* ---------- battle HUD ---------- */
#game .hud{border-radius:13px!important;padding:12px 15px!important}
#game .hudTitle{font-family:var(--rpg-display);font-weight:800;font-size:15px;letter-spacing:.03em;color:#fff3cc;text-shadow:0 1px 0 #1b1206,0 2px 8px rgba(0,0,0,.6)}
#game .hudMeta{color:#b9c7d8}
#game .hudEnemy.boss{border-color:#a33b3b!important;box-shadow:0 0 0 1px var(--rpg-ink),0 0 0 2px #c0463f,0 0 0 3px var(--rpg-ink),0 0 30px rgba(255,60,60,.35),var(--rpg-frame-inset)!important}
#sceneNamePlate{border:1px solid #6f5a33!important;border-radius:10px!important;background:linear-gradient(180deg,rgba(28,34,48,.9),rgba(10,14,22,.92))!important;box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.14),0 10px 24px rgba(0,0,0,.4)!important;padding:8px 22px!important}
#sceneEn{font-family:var(--rpg-display);color:#f3d78e;font-weight:700;letter-spacing:.18em}
#sceneKr{color:#e9dcc0}
#v1935ScoreHud{border:1px solid #6f5a33!important;box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.14),0 10px 24px rgba(0,0,0,.4)!important;border-radius:12px!important}
#v1935ScoreHud .scoreMain{font-family:var(--rpg-display)}

/* fighter cards */
#game .fighter{border-radius:16px!important;border:1px solid #5c4521!important;box-shadow:var(--rpg-frame),inset 0 0 0 1px rgba(226,189,102,.16)!important}
#game #heroFighter{border-top-color:#8fb7e0!important}
#game #enemyFighter{border-top-color:#d59a6a!important}
#game .fighterInfo:before{content:"";position:absolute;left:0;right:0;top:-10px;height:1px;background:linear-gradient(90deg,#e2bd66,transparent 70%)}
#game .fighterName{font-family:var(--rpg-display)!important;font-weight:800;letter-spacing:.03em;
 background:linear-gradient(180deg,#fff7df,#f3d78e 50%,#d1aa52);-webkit-background-clip:text;background-clip:text;color:transparent;
 filter:drop-shadow(0 2px 0 #1b1206) drop-shadow(0 4px 12px rgba(0,0,0,.8))}
#heroFighter.v1934Grade .fighterName{background:linear-gradient(180deg,#fff,#fff7df 50%,#f3d78e);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #1b1206) drop-shadow(0 0 10px var(--v1934Glow))}
#game .centerVs{font-family:var(--rpg-display);color:rgba(243,215,142,.22);font-weight:900;text-shadow:0 0 30px rgba(236,196,106,.2)}
#game .specialReady{border-color:#e2bd66;background:linear-gradient(180deg,rgba(90,71,34,.9),rgba(45,36,18,.9));color:#fff0c2;font-weight:900;box-shadow:0 0 0 1px #070a10}
#game .fighter.evolved:before,#enemyFighter.boss:before{font-family:var(--rpg-display)}
.gradeChip{font-weight:900!important}
#enemyFighter .elemChip{font-weight:800}

/* equipment slots inside hero card */
#heroFighter #equipIcons .equipIcon{
 border-radius:9px!important;border:1px solid #7a6338!important;
 background:radial-gradient(circle at 50% 40%,rgba(255,236,196,.08),transparent 65%),linear-gradient(180deg,#1a2130,#0a0f17)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.14),inset 0 0 12px rgba(0,0,0,.7),0 6px 14px rgba(0,0,0,.4)!important;
}
#heroFighter #equipIcons .equipIcon.filled{box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.18),inset 0 0 10px rgba(0,0,0,.6),0 0 12px rgba(236,196,106,.25),0 6px 14px rgba(0,0,0,.4)!important}

/* question panel */
#game .question{border-radius:16px!important;border:1px solid #5c4521!important;
 background:linear-gradient(160deg,rgba(16,24,38,.97),rgba(7,11,19,.98))!important;
 box-shadow:var(--rpg-frame),inset 0 1px 0 rgba(255,244,214,.14),inset 0 0 0 1px rgba(226,189,102,.14)!important}
#game .question:before{opacity:.22!important}
#game .qlabel{color:#f3d78e;font-family:var(--rpg-display);font-weight:700;letter-spacing:.22em;font-size:10px}
#game .qword{color:#fff8e6;text-shadow:0 2px 0 #1b1206,0 4px 14px rgba(0,0,0,.7)}
#game .hint{color:#f3d78e;text-shadow:0 1px 2px #000}
#game .ans{
 color:#fff5de!important;border-radius:10px!important;border:1px solid #6f5a33!important;
 background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,0) 50%),linear-gradient(180deg,#273149,#141a28 70%,#0f1420)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.12),inset 0 -1px 0 rgba(0,0,0,.55),0 6px 14px rgba(0,0,0,.35)!important;
 text-shadow:0 1px 1px rgba(0,0,0,.7);font-weight:800;min-height:48px;
}
#game .ans:hover:not(:disabled){border-color:#e2bd66!important;background:linear-gradient(180deg,rgba(255,236,196,.12),rgba(255,255,255,0) 50%),linear-gradient(180deg,#36425d,#1b2232 70%,#131926)!important;transform:translateY(-1px)}
#game .ans.good{border-color:#7fe1a6!important;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,0) 50%),linear-gradient(180deg,#1e5240,#0f3328)!important;box-shadow:0 0 0 1px #070a10,0 0 18px rgba(127,225,166,.35),inset 0 1px 0 rgba(255,255,255,.2)!important;color:#d9ffe9!important}
#game .ans.bad{border-color:#e78c8c!important;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,0) 50%),linear-gradient(180deg,#5a2430,#36151f)!important;box-shadow:0 0 0 1px #070a10,0 0 18px rgba(231,140,140,.3),inset 0 1px 0 rgba(255,255,255,.15)!important;color:#ffdcdc!important}
#game .chip{border:1px solid #6f5a33!important;border-radius:9px!important;color:#fff5de;
 background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,0) 50%),linear-gradient(180deg,#2e2a4d,#171630)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.12),0 5px 12px rgba(0,0,0,.35)!important}
#game .chip.used{opacity:.18}
#game .sbLine{border:1px dashed rgba(226,189,102,.45)!important;background:rgba(226,189,102,.05)!important;border-radius:10px!important}
#game .sbLine .chip{border-color:#e2bd66!important}
#game .sbLine.good{border-style:solid!important;border-color:#7fe1a6!important}
#game .sbLine.bad{border-style:solid!important;border-color:#e78c8c!important}
#game .gBlank{border-bottom-color:#f3d78e;color:#f3d78e}
#game .spButton{border-radius:10px!important;font-family:inherit;letter-spacing:.08em}
#game .spButton:not(.ready){border:1px solid #4a5366!important;background:linear-gradient(180deg,#5c6779,#394353)!important;color:#0f1520!important;box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,255,255,.2)!important}
#game .spButton.ready{color:#2a1a06!important}
#game .spInfo{color:#b9c7d8}
#game .speakBtn{border:1px solid #7a6338!important;border-radius:9px!important;background:linear-gradient(180deg,#2b3446,#131926)!important;box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.14)!important;color:#f3dfa8}
.grammarTypeHint{color:#a8e9c1}.bossTimeRemaining{color:#f3d78e}
#toast .big{font-family:var(--rpg-display);background:linear-gradient(180deg,#fff7df,#f3d78e 50%,#c9a04a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 0 #1b1206) drop-shadow(0 6px 18px rgba(0,0,0,.8))}
#toast .small{color:#f1e8d2}
#dropToast{border:1px solid #6f5a33!important;border-radius:14px!important;box-shadow:var(--rpg-frame)!important;background:linear-gradient(160deg,#141c2b,#0a101a)!important}
#dropToast .tx b{font-family:var(--rpg-display);color:#fff3cc}
.spSkillName,#levelUpBanner .lvlBig,.bossBanner .bb1,.vTitle,#critBanner,.vCombatCritTitle,.v1943ComboBurst{font-family:var(--rpg-display)!important}

/* ---------- modals ---------- */
.modalOverlay{background:rgba(2,4,9,.74)!important}
.modalCard{border-radius:16px!important;padding:28px 26px 24px!important}
.modalHeader{font-family:var(--rpg-display)!important;font-weight:800;letter-spacing:.05em;color:#fff3cc!important;
 text-shadow:0 2px 0 #1b1206,0 4px 14px rgba(0,0,0,.7);
 padding-bottom:22px;margin-bottom:8px!important;background:url("ui/divider.svg") center bottom/min(280px,80%) 18px no-repeat}
.modalCard .sub,.pointsLeft{color:#b9c7d8}
.statRow{border-bottom:1px solid rgba(226,189,102,.14)!important}
.statIcon{filter:drop-shadow(0 2px 3px rgba(0,0,0,.6))}
.statName{color:#f1e8d2}.statVal{color:#fff3cc;font-family:var(--rpg-display)}
.optHead{color:#f1e8d2}.optHead b{color:#f3d78e}
.optCard input[type=range]{border:1px solid #5c4521;height:10px!important;box-shadow:inset 0 2px 4px rgba(0,0,0,.8);background:linear-gradient(90deg,#e2bd66 var(--p,100%),#0b0f17 var(--p,100%))!important}
.optCard input[type=range]::-webkit-slider-thumb{background:radial-gradient(circle at 40% 35%,#fff8e3,#e2bd66 60%,#8d6322)!important;border:2px solid #3a2a10!important;box-shadow:0 0 0 1px #e2bd66,0 3px 8px rgba(0,0,0,.6)!important}
.optCard input[type=range]::-moz-range-thumb{background:radial-gradient(circle at 40% 35%,#fff8e3,#e2bd66 60%,#8d6322)!important;border:2px solid #3a2a10!important}
.optNote,.notesHint,.slotMsg{color:#aeb9c9}
.nameInput,.frNameInput,.v1942ExitNameInput,.v1943Input{border:1px solid #6f5a33!important;background:#070b12!important;box-shadow:inset 0 2px 6px rgba(0,0,0,.7),0 0 0 1px #070a10!important;border-radius:9px!important}
.nameInput:focus,.v1942ExitNameInput:focus{border-color:#e2bd66!important;outline:0}

/* inventory / item frames */
#invModal .equipSlot{
 border-radius:10px!important;border:1px solid #6f5a33!important;color:#d6c08a!important;font-family:var(--rpg-display);font-weight:700;
 background:radial-gradient(circle at 50% 50%,rgba(255,236,196,.06),transparent 70%),linear-gradient(180deg,#141b29,#080c14)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.12),inset 0 0 26px rgba(0,0,0,.7)!important}
#invModal .slotItem{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#f1e8d2}
#invModal .itemCard{border-radius:10px!important;border:1px solid #6f5a33!important;
 background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0) 40%),linear-gradient(160deg,#172031,#0a0f19)!important;
 box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.1),inset 0 0 26px rgba(0,0,0,.5),0 10px 20px rgba(0,0,0,.35)!important}
#invModal .itemCard:hover{border-color:#e2bd66!important}
#invModal .itemCard .nm{color:#fff3cc}
#invModal .itemCard.r-uncommon{border-color:#4fbf7d!important}#invModal .itemCard.r-rare{border-color:#4d9cf0!important}
#invModal .itemCard.r-epic{border-color:#a97cf5!important}#invModal .itemCard.r-legendary{border-color:#e2bd66!important;box-shadow:0 0 0 1px #070a10,0 0 22px rgba(236,196,106,.4),inset 0 1px 0 rgba(255,244,214,.14)!important}
.rlabel{border:1px solid currentColor;text-shadow:0 1px 1px #000}
.eqGradeBadge,.v1933GradeBadge,.v1933ResultBadge,.eqPanelGrade{font-family:inherit}
.slot .sn{color:#d6c08a;font-family:var(--rpg-display)}
.slot .sh{color:#fff3cc}

/* notes */
.nItem{border:1px solid rgba(226,189,102,.16)!important;background:linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,.01))!important;border-radius:10px!important}
.nQ{color:#fff8e6}

/* ---------- summon ---------- */
#gachaScreen .gBg{background:radial-gradient(circle at 50% 38%,#3a2560 0%,#120d24 52%,#05040a 100%)!important}
#gachaScreen .gBg:after{content:"";position:absolute;inset:0;background:repeating-conic-gradient(from 0deg at 50% 40%,rgba(243,215,142,.06) 0 4deg,transparent 4deg 14deg);-webkit-mask:radial-gradient(circle at 50% 40%,#000,transparent 60%);mask:radial-gradient(circle at 50% 40%,#000,transparent 60%);animation:rpgSpin 70s linear infinite}
@keyframes rpgSpin{to{transform:rotate(360deg)}}
#gachaScreen .gInner{z-index:1}
#gachaScreen .gTitle{font-weight:900;letter-spacing:.08em;background:linear-gradient(180deg,#fff7df,#f3d78e 45%,#c9a04a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #1b1206) drop-shadow(0 0 18px rgba(255,200,90,.45));text-shadow:none}
#gachaScreen .gSub{color:#e9dcc0}
#gachaScreen .gReelWrap{border-radius:14px!important;border:1px solid #5c4521!important;box-shadow:var(--rpg-frame),inset 0 0 50px rgba(0,0,0,.9)!important;background:linear-gradient(180deg,#0b0a16,#050409)!important}
#gachaScreen .gMarker{border:3px solid #f3d78e!important;border-radius:12px!important;box-shadow:0 0 0 2px #1b1206,0 0 22px rgba(243,215,142,.8),inset 0 0 0 1px #1b1206,inset 0 0 18px rgba(243,215,142,.3)!important}
#gachaScreen .gcard{border-radius:10px!important}
#gachaScreen .gcard .glab{font-family:inherit}
#gachaScreen .gOdds{color:#aeb9c9}
#gachaScreen .gResult .rBig{font-family:var(--rpg-display);letter-spacing:.03em}
#gachaScreen #gGo{min-height:56px}

/* ---------- reports / halls ---------- */
.finalReportCard,#v1954HallModal .v1954HallCard,.v1937RoundCard,.v1937CumCard,#v1935ReportModal .v1935ReportCard{border-radius:16px!important}
.frTitle,.v1935ReportTitle,.v1937Title,#v1954HallModal h2,.v1936ExitScore b,.v1937RepHead strong{font-family:var(--rpg-display)!important;color:#fff3cc!important;text-shadow:0 2px 0 #1b1206,0 4px 14px rgba(0,0,0,.7)}
.frAccuracy,.v1935Stat,.v1937Stat,.frStats>div,.v1936ExitScore,.vocabPersonal{border:1px solid #5c4521!important;background:linear-gradient(160deg,#141c2b,#0a0f19)!important;box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.1)!important}
.frAccuracy strong{color:#f3d78e!important}
.vocabLeaders button{border:1px solid #6f5a33!important;background:linear-gradient(180deg,#263048,#121826)!important;box-shadow:0 0 0 1px #070a10,inset 0 1px 0 rgba(255,244,214,.1)!important}
.v1935HallRow.top3,#v1954HallRows .v1935HallRow.top3{border-color:rgba(226,189,102,.35)!important;background:linear-gradient(90deg,rgba(226,189,102,.14),rgba(226,189,102,.03))!important}

/* bye screen */
#byeScreen .byeCard{border-radius:16px!important}

/* ---------- scrollbars ---------- */
*{scrollbar-width:thin;scrollbar-color:#8d6322 #070a10}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-track{background:#070a10;border-radius:8px}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#e2bd66,#8d6322);border:2px solid #070a10;border-radius:8px}

/* ---------- credits dialog ---------- */
.v1976CreditDialog{border:1px solid #5c4521;box-shadow:var(--rpg-frame),var(--rpg-frame-inset);background:linear-gradient(160deg,#141c2b,#0a0f19)}
.v1976CreditDialog h2{font-family:var(--rpg-display);color:#f3d78e}

/* ---------- responsive ---------- */
@media(max-width:1100px){
 :root{--rpg-corner:22px}
 #game .hud{padding:9px 11px!important}
}
@media(max-width:700px){
 :root{--rpg-corner:18px;--rpg-frame:0 0 0 1px var(--rpg-ink),0 0 0 2px var(--rpg-gold-line),0 14px 34px rgba(0,0,0,.55)}
 .rpgCorners b{filter:drop-shadow(0 1px 1px rgba(0,0,0,.7)) brightness(1.05)}
 #game .hud .rpgCorners,#game .question .rpgCorners{--rpg-corner:14px}
 #game .hud{padding:8px 9px!important;border-radius:11px!important}
 #game .hudTitle{font-size:12px}
 .track,.bigTrack{height:9px!important}.track.xp{height:7px!important}
 #game .iconBtn,.iconBtn{min-width:36px;min-height:36px}
 #game .ans{min-height:50px}
 #startMenu .menuCard{padding:26px 18px 22px!important}
 .modalCard{padding:20px 14px 16px!important}
 .modalHeader{padding-bottom:20px;background-size:min(220px,78%) 16px}
 #gate .eduTaglineKr:after{height:16px;margin-top:8px}
 #gate .gateEnter{min-height:54px}
 #setup .diff{padding-left:12px!important}
 #setup .setupAction{background:linear-gradient(180deg,rgba(6,10,17,0),rgba(7,11,19,.97) 22%)!important;border-top:1px solid rgba(226,189,102,.22)}
 #setup .levelRequiredMsg{padding-top:10px}
 #setup .diff.active:after{right:8px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 #gate .gateEnter{animation:none!important}
 #gachaScreen .gBg:after{animation:none}
}
