/* Europa777 theme — JF design tokens, self-hosted fonts, fox motion. */
.eu-app{
  --a7-navy-deep:#000A2B;
  --a7-bg:#00123F;
  --a7-navy:#001A55;
  --a7-surface:#00246F;
  --a7-surface-2:#0A3286;
  --a7-line:#2C4FA6;
  --a7-flag-blue:#003399;
  --a7-red:#FFCC00;
  --a7-red-2:#2F6BFF;
  --a7-red-hi:#FFE066;
  --a7-red-deep:#B88A00;
  --a7-red-text:#FFCC00;
  --a7-red-rgb:255,204,0;
  --a7-white:#FFFFFF;
  --a7-text:#FFFFFF;
  --a7-text-2:#D6DEF5;
  --a7-muted:#A9B8DE;
  --a7-muted-2:#8A9ACB;
  --a7-on-accent:#00123F;
}
@keyframes eu-kb{0%{transform:scale(1)}100%{transform:scale(1.06)}}@keyframes eu-breathe{0%,100%{transform:rotate(-.6deg) scale(1,1)}50%{transform:rotate(.5deg) scale(1.006,1.014)}}@keyframes eu-pulse{0%,100%{opacity:.35;transform:scale(.9)}50%{opacity:.95;transform:scale(1.08)}}@keyframes eu-tw{0%,100%{opacity:.15;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}@keyframes eu-flick{0%,100%{opacity:.75}20%{opacity:.95}45%{opacity:.6}70%{opacity:1}}@keyframes eu-rise{0%{opacity:0;transform:translate(0,0) scale(.6)}15%{opacity:1}100%{opacity:0;transform:translate(var(--dx),-120px) scale(1)}}@keyframes eu-shim{0%{background-position:0 0}100%{background-position:200% 0}}@keyframes eu-head{0%,100%{transform:rotate(-3deg) translateY(0)}22%{transform:rotate(1.5deg) translateY(-2px)}48%{transform:rotate(3deg) translateY(1px)}70%{transform:rotate(-.5deg) translateY(-1px)}}@keyframes eu-coin{0%,100%{transform:rotate(1.5deg) translateY(0)}50%{transform:rotate(-3.2deg) translateY(-5px)}}@keyframes eu-wal{0%,100%{transform:rotate(-2.5deg)}35%{transform:rotate(4deg)}60%{transform:rotate(3deg)}}@keyframes eu-ear{0%,78%,100%{transform:rotate(0)}82%{transform:rotate(-4.5deg)}86%{transform:rotate(2deg)}90%{transform:rotate(-1.5deg)}94%{transform:rotate(0)}}@keyframes eu-tail{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3.5deg)}}@keyframes eu-body{0%,100%{transform:translateY(0) scale(1,1)}50%{transform:translateY(-3px) scale(1.004,1.01)}}@keyframes eu-pose{0%{opacity:0;transform:translateY(10px) scale(.97)}3%{opacity:1;transform:translateY(-4px) scale(1.015)}6%{transform:translateY(0) scale(1)}25%{opacity:1;transform:translateY(0) scale(1)}28%{opacity:0;transform:translateY(4px) scale(.99)}100%{opacity:0}}@keyframes eu-fade{0%{opacity:0}100%{opacity:1}}@keyframes eu-thumb{0%,100%{transform:rotate(0)}18%{transform:rotate(-8deg)}30%{transform:rotate(-5.5deg)}40%{transform:rotate(-8deg)}62%{transform:rotate(-1deg)}}@keyframes eu-ding{0%,14%{opacity:0;transform:scale(.4)}20%{opacity:1;transform:scale(1.25)}34%{opacity:0;transform:scale(.8)}100%{opacity:0}}@keyframes eu-headB{0%,100%{transform:rotate(0) translateY(0)}30%{transform:rotate(1.6deg) translateY(-1.5px)}62%{transform:rotate(-1.2deg) translateY(0)}72%{transform:rotate(2deg) translateY(-1px)}84%{transform:rotate(.6deg)}}@keyframes eu-wink{0%,64%{opacity:0}68%{opacity:1}80%{opacity:1}85%,100%{opacity:0}}@keyframes eu-in{0%{opacity:0;transform:translateY(24px)}100%{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){[data-eu-anim]{animation:none!important}}[data-eu-paused] [data-eu-anim]{animation-play-state:paused!important}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url("/europa/fonts/archivo-400-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;
}
/* cyrillic-ext */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-400-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-400-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-400-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-400-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;
}
/* cyrillic-ext */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-500-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-500-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-500-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-500-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family:Cinzel;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/europa/fonts/ibm-plex-mono-500-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;
}

.eu-app{min-height:100vh;background:var(--a7-bg);color:var(--a7-text);font-family:Archivo,Helvetica,sans-serif;}
.eu-app button,.eu-app input,.eu-app select{font-family:inherit;}
.eu-mono{font-family:Cinzel,ui-monospace,monospace;}
.eu-app a{color:inherit;text-decoration:none;}
.eu-scroll{scrollbar-width:none;}
.eu-scroll::-webkit-scrollbar{display:none;}
.eu-app img{max-width:100%;}
.eu-fox img{max-width:none;}
@media (prefers-reduced-motion:reduce){[data-eu-anim]{animation:none!important}}
@keyframes euS-star{0%{opacity:0;transform:scale(0) rotate(-90deg)}70%{opacity:1;transform:scale(1.35) rotate(10deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes euS-ring{to{transform:rotate(360deg)}}
@keyframes euS-coin{0%{transform:translateY(-140px) rotateY(0) scale(.6);opacity:0}35%{opacity:1}55%{transform:translateY(0) rotateY(540deg) scale(1)}68%{transform:translateY(-18px) rotateY(620deg) scale(1)}80%,100%{transform:translateY(0) rotateY(720deg) scale(1)}}
@keyframes euS-glow{0%,100%{box-shadow:0 0 0 0 rgba(255,204,0,0)}50%{box-shadow:0 0 50px 8px rgba(255,204,0,.45)}}
@keyframes euS-bar{from{width:0}to{width:100%}}
@keyframes euS-win{0%,85%{opacity:0;transform:scale(.6)}100%{opacity:1;transform:scale(1)}}
@keyframes euS-out{to{opacity:0;transform:scale(1.06);filter:blur(6px)}}
@keyframes euS-burst{0%{opacity:0;transform:translate(0,0) scale(.4)}20%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) scale(1)}}
