/* Arcana Mystica custom game chambers: responsive, scoped; no homepage styles modified. */
body[data-page="magic"],body[data-page="potions"],body[data-page="fortune"]{background:#0c0619}
body[data-page="magic"] .page-bg,body[data-page="potions"] .page-bg,body[data-page="fortune"] .page-bg{background:radial-gradient(ellipse 70% 25% at 50% 5%,#632b835e,transparent),radial-gradient(ellipse 42% 40% at 0% 68%,#6b29714f,transparent),radial-gradient(ellipse 42% 40% at 100% 68%,#6b29714f,transparent),linear-gradient(180deg,#080514,#1a0c31 53%,#0a0617)}
.gp{--gp-gold:#f4d599;--gp-muted:#e2d0eb;--gp-panel:#201033;--gp-line:#dfb37583;font-size:15px;color:#f7eafa}
.gp h1,.gp h2,.gp h3,.gp h4{font-family:'Cinzel',Georgia,serif;color:var(--gp-gold);line-height:1.23}
.gp p{line-height:1.7}.gp button,.gp input,.gp textarea,.gp a{font-size:inherit}
.gp button{cursor:pointer}.gp button:focus-visible,.gp a:focus-visible{outline:3px solid #f7cf8b;outline-offset:3px}
.gp-eyebrow{letter-spacing:.15em;text-transform:uppercase;color:#e4b877;font-size:1em;font-weight:700}
.gp-hero{padding-top:44px;padding-bottom:40px;display:grid;gap:14px;grid-template-columns:1fr;align-items:center}
.gp-hero h1{font-size:clamp(2.1rem,7.2vw,4.55rem);margin:16px 0 12px;text-shadow:0 0 29px #a069cb65}
.gp-hero h1 span{display:block;font-size:.53em;line-height:1.4;font-weight:500;color:#fff1cc}
.gp-intro{color:#ead8f2;max-width:650px;line-height:1.8}
.gp-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.gp-tags span{border:1px solid #d7a8788c;background:#30183dd9;border-radius:100px;color:#f4d59f;padding:8px 11px}
.gp-hero-art{height:210px;max-width:460px;overflow:hidden;border-radius:25px;position:relative;box-shadow:0 17px 80px #af63d244;border:1px solid #e1b16e55}
.gp-hero-art img{width:100%;height:100%;object-fit:cover;display:block}
.gp-layout{display:grid;grid-template-columns:1fr;gap:20px;align-items:start;padding-bottom:75px}
.gp-stage{position:relative;min-width:0;border:1px solid var(--gp-line);border-radius:25px;background:linear-gradient(145deg,#351947e9,#150a27f2 75%);box-shadow:0 20px 80px #0007,inset 0 0 45px #b36bd019;overflow:hidden}
.gp-stage:before{content:'';position:absolute;inset:-30% -30% auto auto;width:390px;height:400px;border-radius:50%;background:radial-gradient(circle,#b36cdb22,transparent 70%);pointer-events:none}
.gp-stage-header{padding:23px 22px 15px;position:relative}.gp-stage-header h2{font-size:clamp(1.55rem,3.1vw,2.18rem);margin:8px 0}.gp-stage-header p:not(.gp-eyebrow){color:var(--gp-muted)}
.gp-meter{display:flex;gap:7px;margin:0 22px 22px}.gp-meter span{height:7px;flex:1;background:#583465;border-radius:100px}.gp-meter span.done{background:linear-gradient(90deg,#f3d7a0,#b574dc);box-shadow:0 0 12px #c886df85}
.gp-stage-board{border-top:1px solid #c89b7033;padding:26px 20px 32px;min-height:370px;position:relative}.gp-stage-board h3{font-size:1.4rem;margin-bottom:10px}.gp-stage-board>p{color:#e0cbe9;margin-bottom:20px}
.gp-stage-footer{border-top:1px solid #c89b7033;background:#1008218a;padding:15px 20px;display:flex;gap:15px;align-items:center;justify-content:space-between;flex-wrap:wrap;color:#e1caeb}.gp-stage-footer>div{display:flex;gap:9px;flex-wrap:wrap}
.gp-button,.gp-outline{display:inline-flex;align-items:center;justify-content:center;text-align:center;border-radius:100px;min-height:47px;padding:10px 19px;line-height:1.3;text-decoration:none;transition:transform .2s,box-shadow .2s}
.gp-button{border:1px solid #f8dda6;color:#28152c;background:linear-gradient(120deg,#ffdb91,#d09b55,#ffdfa3);font-weight:800;box-shadow:0 0 20px #d3a15c65}.gp-outline{background:#251035e5;border:1px solid #c79862;color:#f8dca7}
.gp-button:hover,.gp-outline:hover{transform:translateY(-2px);box-shadow:0 0 23px #c594c44c}.gp button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.gp-options{display:grid;grid-template-columns:1fr;gap:12px}.gp-option{display:flex;gap:13px;align-items:center;text-align:left;min-height:94px;padding:15px 14px;background:linear-gradient(145deg,#442256a0,#1b0c34);border:1px solid #be956c80;border-radius:17px;color:#fff;transition:.2s}
.gp-option:hover,.gp-option.chosen{background:#53306ab9;border-color:#fad9a7;box-shadow:inset 0 0 25px #cf88e520,0 0 16px #bc7be530}
.gp-option .gp-emoji{font-size:2rem;flex:0 0 44px;text-align:center;color:#ffdb95;filter:drop-shadow(0 0 12px #db86ed)}.gp-option strong{display:block;font:500 1.15em Georgia,serif;color:var(--gp-gold)}.gp-option small{display:block;margin-top:3px;color:#e4d4e9;line-height:1.5;font-size:1em}
.gp-aside{padding:23px;border:1px solid #ddb77987;border-radius:23px;background:linear-gradient(165deg,#361c48ed,#150c2af5);box-shadow:0 19px 65px #0005;min-width:0}.gp-mentor{display:grid;grid-template-columns:79px 1fr;gap:14px;align-items:center;margin-bottom:15px}.gp-mentor img{width:79px;height:91px;object-fit:cover;object-position:50% 17%;border-radius:50% 50% 13px 13px;border:1px solid #e9bb84;box-shadow:0 0 20px #ac67db66}.gp-mentor h3{font-size:1.2em;margin:6px 0 3px}.gp-mentor p:not(.gp-eyebrow){color:#dec8e4}.gp-aside>p{color:#e4d5ec}.gp-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}.gp-buttons button{flex:1}.gp-side-stat{padding:17px;border:1px solid #d29a7f71;border-radius:16px;margin-top:22px;background:#4020506d}.gp-side-stat h3{margin-bottom:10px}.gp-side-note{font-size:1em;color:#d8c6e1;margin-top:12px}
.gp-stats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.gp-stats span{padding:9px 15px;background:#35174c;border:1px solid #b28e6a91;border-radius:17px;color:#f4e0ed}.gp-stats strong{color:#f7dba0;font-size:1.16em}
.gp-runes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:640px;margin:25px auto}.gp-rune{height:85px;position:relative;border:1px solid #d9a976;border-radius:13px;background:linear-gradient(140deg,#3d1c5b,#180c39);color:#f8db95;font-size:2.1rem;box-shadow:0 0 14px #4d236e44;transform-style:preserve-3d;transition:transform .3s,background .3s}.gp-rune .gp-rune-front,.gp-rune .gp-rune-back{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden}.gp-rune .gp-rune-back{opacity:0;transform:rotateY(180deg)}.gp-rune.flipped{transform:rotateY(180deg);background:linear-gradient(140deg,#8a4b9c,#3b164e);box-shadow:0 0 19px #c579e577}.gp-rune.flipped .gp-rune-back{opacity:1}.gp-rune.matched{border-color:#ffda92;box-shadow:0 0 22px #ffd19b77}
.gp-control-row{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:11px;margin-top:21px}
.gp-result{text-align:center;padding:25px 11px;border-radius:22px;background:radial-gradient(ellipse at 50% 15%,#7d3f9f64,transparent 70%);animation:gpEnter .45s ease both}.gp-result h3{font-size:clamp(1.5rem,3vw,2rem);margin:12px auto}.gp-result p{color:#ebd7ee}.gp-result-icon{font-size:4.1rem;color:#ffd991;text-shadow:0 0 31px #efadf7}.gp-result .gp-tags{justify-content:center;margin:16px auto}
.gp-herbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.gp-herb{border:1px solid #c3937190;background:#291340;border-radius:15px;color:#fff;padding:13px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:127px}.gp-herb>span{font-size:2rem}.gp-herb strong{color:#f6dca9;font-family:Georgia,serif}.gp-herb small{font-size:1em;color:#e4d3ed}.gp-herb.chosen{background:#593071b3;border-color:#ffdfa2;box-shadow:0 0 21px #b66bd248}
.gp-cauldron{margin:18px auto;display:grid;place-items:center;border-radius:50%;width:175px;height:175px;font-size:6rem;color:#f7d392;text-shadow:0 0 35px #ce83fe;background:radial-gradient(circle at 30% 30%,#b974d35c,#2d105477 70%);box-shadow:inset 0 0 23px #e5a3e962,0 0 36px #c484d36d;position:relative;cursor:pointer}.gp-cauldron span{position:absolute;bottom:8px;font-size:1rem;letter-spacing:.2em}.gp-cauldron.bubbling{animation:gpBubble .65s ease-in-out infinite alternate}
.gp-action-note{border-left:3px solid #f3d297;border-radius:0 13px 13px 0;background:#47265f6a;padding:15px 16px;margin:18px auto}.gp-input{display:grid;gap:9px;color:#ffdda6;margin:20px auto}.gp-input textarea{min-height:100px;resize:vertical;border:1px solid #bd977a;background:#1c0e32;color:#fff;border-radius:15px;padding:14px;width:100%}.gp-input textarea::placeholder{color:#d8c8e1}
.gp-tarot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px auto}.gp-tarot{height:153px;border:2px double #e2b676;border-radius:12px;color:#f6d9a0;background:repeating-radial-gradient(circle at center,#261343 0 18px,#3b1d5d 19px 21px,#261343 22px 40px);box-shadow:inset 0 0 20px #8f4cb32c,0 0 14px #9566aa30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:transform .4s,background .4s}.gp-tarot:hover:not(:disabled){transform:translateY(-4px)}.gp-tarot.revealed{background:radial-gradient(circle at 40% 35%,#754d98,#241139);border-color:#ffdb95}.gp-card-symbol{font-size:1.7rem;filter:drop-shadow(0 0 12px #ad79e2)}.gp-tarot strong{font:500 1em Georgia,serif}.gp-tarot small{color:#e4cfeb;font-size:1em}.gp-board-label{text-align:center;color:#f5dcbb!important}.gp-reading{text-align:left;display:grid;gap:15px;margin:23px auto}.gp-reading article{display:grid;grid-template-columns:57px 1fr;gap:13px;border:1px solid #b18b7988;padding:14px;border-radius:16px;background:#36194f8a}.gp-reading article>span{font-size:2rem;color:#ffdaa0}.gp-reading h4{font-size:1.16em;margin:5px 0}.gp-reading small{color:#eebd80;font-size:1em}.gp-reading p{color:#f2e5f8}.gp-steps-hint{color:#f2daae}
.gp-dialog{max-width:680px;width:calc(100% - 26px);max-height:86dvh;overflow:auto;background:radial-gradient(ellipse at top right,#693c79,#201131 56%,#110922);border:1px solid #edc790;border-radius:25px;padding:21px;color:#f8e6fa;box-shadow:0 0 100px #000c;font-size:15px}.gp-dialog::backdrop{background:#050210dd;backdrop-filter:blur(7px)}.gp-dialog h2{font-family:'Cinzel',Georgia,serif;color:#f4d49e}.gp-modal-top{display:grid;grid-template-columns:58px 1fr auto;gap:11px;align-items:center}.gp-modal-top img{width:58px;height:72px;object-fit:cover;border-radius:12px;border:1px solid #daba7f}.gp-dialog ol{line-height:1.9;padding-left:23px;margin:22px 0}.gp-dialog li{padding:5px}.gp-dialog p{line-height:1.7}.gp-particles{position:fixed;inset:0;z-index:20;pointer-events:none;overflow:hidden}.gp-particles span{position:absolute;color:#ffe0a9;font-size:20px;text-shadow:0 0 19px #f3a9f3;animation:gpParticle 1.6s ease-out forwards}
@keyframes gpEnter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes gpBubble{to{transform:scale(1.045) translateY(-5px);box-shadow:0 0 80px #c37fe7}}@keyframes gpParticle{to{transform:translate(var(--x),var(--y)) scale(.4);opacity:0}}
@media(min-width:650px){.gp-hero{grid-template-columns:1.35fr .85fr}.gp-hero-art{height:300px}.gp-options{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-tarot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gp-tarot{height:190px}.gp-herbs{grid-template-columns:repeat(3,minmax(0,1fr))}.gp-rune{height:100px}}
@media(min-width:900px){.gp-layout{grid-template-columns:minmax(0,1fr) 300px}.gp-hero{min-height:360px}.gp-hero-art{height:320px}.gp-stage-board{padding:28px}.gp-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1200px){.gp{font-size:16px}.gp-dialog{font-size:16px}.gp-hero{padding-top:55px}.gp-layout{grid-template-columns:minmax(0,1fr) 335px}.gp-runes{gap:13px}.gp-rune{height:115px}}
@media(prefers-reduced-motion:reduce){.gp *{animation:none!important;transition:none!important}}
/* Keep revealed rune symbols facing the player; transform the card surface, not the lettering. */
.gp-rune .gp-rune-front,.gp-rune .gp-rune-back{backface-visibility:visible}
.gp-rune .gp-rune-back{opacity:0;transform:scale(.65);transition:opacity .2s,transform .2s}
.gp-rune.flipped{transform:translateY(-2px)}
.gp-rune.flipped .gp-rune-front{opacity:0}
.gp-rune.flipped .gp-rune-back{opacity:1;transform:none}
/* 2026-11-05 game evolution: illuminated constellation trail and an interactive alchemy altar */
.gp-rune-lore{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:13px;margin:14px auto 0;padding:14px;border-radius:15px;background:radial-gradient(ellipse,#67408b6a,transparent 82%);color:#dfa8f9}.gp-rune-lore b{font-size:21px;color:#7e6a92;text-shadow:0 0 8px #ad70c3;transition:transform .25s,color .3s}.gp-rune-lore b.lit{color:#ffda90;transform:scale(1.3);text-shadow:0 0 18px #ffc66f,0 0 35px #c67ef5}.gp-rune.matched{background:radial-gradient(circle at center,#5c2980,#220c3e);box-shadow:0 0 22px #ebc07780,inset 0 0 25px #ffda9168}.gp-potion-altar{display:grid;gap:12px;place-items:center;margin:16px auto 24px;max-width:560px}.gp-potion-bowl{min-height:175px;width:min(100%,320px);border-radius:48% 48% 45% 45%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ffe2a4;font-size:64px;background:radial-gradient(ellipse at 50% 10%,#a052c4bd,#5e207496 45%,#170c31f5);border:2px solid #dab074;box-shadow:inset 0 -20px 45px #0005,0 0 29px #ba6df781,0 20px 31px #0c061a;animation:gpAltarGlow 4s ease-in-out infinite alternate}.gp-potion-bowl>span{display:block;min-height:28px;font-size:15px;color:#f4ddb9;max-width:260px;text-align:center;text-shadow:0 0 16px #f9c887}.gp-potion-slots{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.gp-potion-slots span{border:1px dashed #d5a679a3;background:#251035;border-radius:50px;padding:8px 14px;color:#e9d6ee;font-size:15px;text-align:center}.gp-brew-progress{width:min(420px,95%);height:15px;border:1px solid #e1b476;border-radius:20px;margin:20px auto;background:#291338;overflow:hidden}.gp-brew-progress span{height:100%;display:block;background:linear-gradient(90deg,#9c5fd4,#e9b569,#f9e2a9);box-shadow:0 0 16px #fae3a3;transition:width .2s}.gp-potion-reward{background:radial-gradient(ellipse at top,#693187b0,#210f39a3 70%)}.gp-potion-orb{font-size:80px;max-width:170px;min-height:160px;margin:4px auto 12px;border:2px solid #e6c28e;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 25%,#cd8ff6b0,#4d1a8ad9 60%,#21113b);color:#ffe2a4;box-shadow:0 0 40px #af71ea66, inset 0 0 30px #e3c9f357;animation:gpAltarGlow 5s ease-in-out infinite alternate}@keyframes gpAltarGlow{to{box-shadow:inset 0 -18px 48px #4f2187,0 0 52px #be83eab3,0 14px 25px #090511}}@media(prefers-reduced-motion:reduce){.gp-potion-bowl,.gp-potion-orb{animation:none!important}}

/* Celestial Tarot now uses the same 78-card shuffled deck and keyboard/touch drag as Classic. */
.gp-celestial-reverse{display:flex;align-items:center;gap:11px;color:#ffdfac;background:#24122d;border:1px solid #c9a06788;border-radius:12px;padding:14px 17px;font-size:15px;margin:18px auto}
.gp-celestial-reverse input{width:22px;height:22px;accent-color:#d6ac71}
.gp-celestial-shuffle-info{text-align:center;color:#f4c687;font-size:15px;margin:12px 0}
.gp-celestial-drop{border:2px dashed #d9ac7c;background:#542b6ca9;color:#f9eadd;padding:17px;border-radius:16px;text-align:center;margin:14px 0 22px;cursor:pointer;font-size:15px;transition:box-shadow .2s,background .2s}
.gp-celestial-drop.is-over,.gp-celestial-drop:hover,.gp-celestial-drop:focus-visible{background:#65377d;box-shadow:0 0 23px #d3a5e3}
.gp-celestial-illustration{width:min(85px,95%);height:116px;object-fit:cover;margin:4px auto;border:1px solid #ddb16a;border-radius:5px}
.gp-celestial-result-img{width:75px;height:117px;object-fit:cover;border:2px solid #d0a975;border-radius:7px}
.gp-celestial-illustration.is-reversed,.gp-celestial-result-img.is-reversed{transform:rotate(180deg)}
.gp-celestial-ghost{position:fixed;z-index:200;transform:translate(-50%,-50%);pointer-events:none;display:grid;place-items:center;width:64px;height:97px;border:2px solid #f4d28d;background:#391b54;box-shadow:0 0 23px #bf85e7;color:#f5d695;font-size:36px;border-radius:8px}
.gp-tarot[draggable="true"]{cursor:grab;touch-action:none}
.gp-celestial-voice{font-size:15px;margin-top:9px}
@media(min-width:1200px){.gp-celestial-reverse,.gp-celestial-drop,.gp-celestial-shuffle-info,.gp-celestial-voice{font-size:16px}}
