/* Dragons Land universal modal system. Scoped to the three main-screen modals. */
:root{--dlm-gold:#ffcc57;--dlm-gold2:#e79725;--dlm-ink:#081321;--dlm-glow:#ffb52b}
#energy-crystal-main-modal,#dragons-main-modal,#workers-gnomes-main-modal{
 position:fixed;inset:0;z-index:15000;box-sizing:border-box;
 display:flex;align-items:center;justify-content:center;
 padding:calc(18px + env(safe-area-inset-top)) 12px calc(18px + env(safe-area-inset-bottom));
 background:rgba(2,7,19,.78);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);
 opacity:0;visibility:hidden;pointer-events:none;transition:opacity .24s ease,visibility .24s ease;
}
#energy-crystal-main-modal.show,#dragons-main-modal.show,#workers-gnomes-main-modal.show{
 opacity:1;visibility:visible;pointer-events:auto;
}
#energy-crystal-main-modal>.main-modal-content,#dragons-main-modal>.main-modal-content,#workers-gnomes-main-modal>.main-modal-content{
 position:relative;box-sizing:border-box;display:block;width:min(100%,480px);max-width:480px;
 max-height:min(86dvh,800px);overflow-y:auto;overscroll-behavior:contain;
 padding:46px 16px 22px;margin:0;color:#fff;
 background:linear-gradient(155deg,rgba(25,40,68,.98),rgba(7,15,31,.99) 64%,rgba(17,25,43,.98));
 border:2px solid var(--dlm-gold);border-radius:22px;
 box-shadow:0 0 0 3px rgba(255,181,43,.11),0 0 25px rgba(255,177,37,.30),0 20px 60px rgba(0,0,0,.7);
 transform:translate3d(0,-115vh,0) rotate(-2deg);opacity:.8;
 transition:transform .52s cubic-bezier(.19,1.35,.42,1),opacity .34s ease;
 scrollbar-width:thin;scrollbar-color:#d79b35 #101a2d;
}
#energy-crystal-main-modal.show>.main-modal-content,#dragons-main-modal.show>.main-modal-content,#workers-gnomes-main-modal.show>.main-modal-content{
 transform:translate3d(0,0,0) rotate(0);opacity:1;
}
#energy-crystal-main-modal>.main-modal-content::before,#dragons-main-modal>.main-modal-content::before,#workers-gnomes-main-modal>.main-modal-content::before{
 content:"";position:absolute;top:0;left:14%;right:14%;height:3px;
 background:linear-gradient(90deg,transparent,#fff2ae,var(--dlm-gold),transparent);box-shadow:0 0 12px #ffc65a;
}
#energy-crystal-main-modal .main-modal-close,#dragons-main-modal .main-modal-close,#workers-gnomes-main-modal .main-modal-close{
 position:absolute;top:9px;right:10px;z-index:2;display:grid;place-items:center;
 width:34px;height:34px;padding:0;cursor:pointer;font:normal 28px/1 Arial,sans-serif;
 color:#ffe1a2;background:#121c30;border:1px solid #dca347;border-radius:50%;
 box-shadow:0 0 8px #f9ad3055;
}
#energy-crystal-main-modal h2,#dragons-main-modal h2,#workers-gnomes-main-modal h2{
 margin:0 0 14px;text-align:center;color:#ffe3a0;font-family:'Russo One',sans-serif;font-size:clamp(19px,5vw,26px);font-weight:500;
 text-shadow:0 2px 9px #f59a3a88;
}
#energy-crystal-main-modal button:not(.main-modal-close),#dragons-main-modal button:not(.main-modal-close),#workers-gnomes-main-modal button:not(.main-modal-close){
 cursor:pointer;border:1px solid #f1b64e;border-radius:12px;color:#ffe9b5;
 background:linear-gradient(180deg,#273750,#101a2e);box-shadow:inset 0 1px 0 #ffffff22;
 padding:9px 12px;min-height:36px;
}
#energy-crystal-main-modal button:not(.main-modal-close):active,#dragons-main-modal button:not(.main-modal-close):active,#workers-gnomes-main-modal button:not(.main-modal-close):active{transform:scale(.97)}
#energy-crystal-main-modal img,#dragons-main-modal img,#workers-gnomes-main-modal img{max-width:100%;height:auto}
@media(prefers-reduced-motion:reduce){
 #energy-crystal-main-modal,#dragons-main-modal,#workers-gnomes-main-modal,
 #energy-crystal-main-modal>.main-modal-content,#dragons-main-modal>.main-modal-content,#workers-gnomes-main-modal>.main-modal-content{transition-duration:.01ms}
}
