@import url('https://fonts.googleapis.com/css2?family=Bangers&family=Inter:wght@400;600;700;900&display=swap');
:root{--bg:#04030a;--panel:rgba(12,8,25,.76);--line:rgba(177,47,255,.38);--violet:#a42cff;--violet2:#e24cff;--text:#fff;--muted:#c7bcd6;--green:#63ff6b;--red:#ff365b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -10%,#24103f 0,#070510 42%,#020108 100%);color:var(--text);font-family:Inter,system-ui,sans-serif;overflow-x:hidden}.mist{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 0 35%,rgba(111,0,255,.25),transparent 28%),radial-gradient(circle at 100% 60%,rgba(111,0,255,.22),transparent 28%),linear-gradient(90deg,rgba(96,28,156,.18),transparent 18%,transparent 82%,rgba(96,28,156,.16)),repeating-radial-gradient(circle at 50% 10%,rgba(255,255,255,.025) 0 1px,transparent 2px 8px);opacity:.95}.orb{position:fixed;border-radius:50%;filter:blur(45px);opacity:.45;pointer-events:none}.orb-a{width:320px;height:320px;background:#7f17ff;left:-90px;top:190px}.orb-b{width:360px;height:360px;background:#9f25ff;right:-100px;bottom:100px}.topbar{height:86px;padding:0 64px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10;background:rgba(3,3,9,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(164,44,255,.24)}.brand{font-family:Bangers,cursive;color:#fff;font-size:46px;letter-spacing:1px;text-decoration:none;text-shadow:0 0 22px rgba(164,44,255,.8);transform:rotate(-4deg)}.brand span{display:block;height:5px;width:150px;background:linear-gradient(90deg,transparent,var(--violet2),transparent);margin-top:-8px}.nav{display:flex;gap:34px}.nav a{position:relative;color:#fff;text-decoration:none;text-transform:uppercase;font-weight:800;letter-spacing:.5px;padding:30px 8px;display:flex;gap:10px;align-items:center}.nav svg{width:24px;fill:none;stroke:#fff;stroke-width:2}.nav a.active:after,.nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:8px;height:3px;background:var(--violet);box-shadow:0 0 22px var(--violet)}.socials{display:flex;gap:16px}.socials a{color:#b841ff;text-decoration:none;font-weight:900;font-size:20px}.page{position:relative;z-index:2;width:min(1600px,94vw);margin:auto}.hero-grid{display:grid;grid-template-columns:2fr .96fr;gap:24px;margin-top:24px}.neon-card{background:linear-gradient(145deg,rgba(16,13,31,.9),rgba(8,5,17,.88));border:1px solid var(--line);border-radius:14px;box-shadow:0 0 0 1px rgba(164,44,255,.06),0 0 28px rgba(164,44,255,.26),inset 0 0 42px rgba(94,19,170,.14)}.player-card{padding:26px;display:flex;flex-direction:column}.stream-top{height:34px;display:flex;align-items:center;gap:18px;font-size:14px;letter-spacing:.4px}.stream-top b{color:#d44cff}.live-dot{background:#ff3151;padding:9px 13px;border-radius:6px;font-weight:900;box-shadow:0 0 18px rgba(255,49,81,.4)}.tw-icon{margin-left:auto;font-size:42px;color:#fff;text-shadow:0 0 18px var(--violet)}.twitch-frame{position:relative;flex:1;min-height:620px;border-radius:8px;overflow:hidden;background:linear-gradient(rgba(0,0,0,.25),rgba(0,0,0,.3)),radial-gradient(circle at 65% 70%,rgba(170,60,255,.25),transparent 28%),linear-gradient(120deg,#07101a,#11101e 45%,#06020d);box-shadow:inset 0 -90px 120px rgba(0,0,0,.75)}.twitch-frame:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.1),transparent),radial-gradient(circle at 30% 40%,rgba(255,255,255,.08),transparent 3%),radial-gradient(circle at 68% 30%,rgba(255,255,255,.08),transparent 2%);pointer-events:none}.twitch-frame iframe,.chat-embed iframe{width:100%;height:100%;border:0}.fake-controls{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:22px;padding:18px 22px;border-top:1px solid rgba(255,255,255,.2);font-size:22px}.fake-controls .pulse{width:10px;height:10px;background:var(--violet);border-radius:50%;box-shadow:0 0 14px var(--violet)}.fake-controls small{font-size:12px}.grow{flex:1}.chat-card{padding:20px;display:flex;flex-direction:column}.chat-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;font-size:15px}.chat-head span{color:#df9aff}.chat-embed{flex:1;min-height:620px;border-radius:10px;overflow:hidden;background:rgba(0,0,0,.3)}.chat-fallback{display:none}.chat-fallback div{padding:10px 4px;border-bottom:1px solid rgba(255,255,255,.06);font-size:14px}.chat-fallback time{float:right;color:#8c8499}.green{color:#5cffb5}.pink{color:#ff37b7}.cyan{color:#54f6ff}.purple{color:#b068ff}.blue{color:#5b8fff}.intro-section{display:grid;grid-template-columns:340px 1fr 1.65fr;gap:32px;align-items:center;margin:52px 0 34px;padding-top:24px;border-top:1px solid rgba(164,44,255,.22)}.photo-ring{width:340px;height:340px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#06040e 58%,rgba(164,44,255,.35) 61%,transparent 64%);box-shadow:0 0 26px var(--violet),0 0 80px rgba(164,44,255,.5),inset 0 0 45px #000;position:relative}.photo-ring:before{content:"";position:absolute;inset:-22px;border-radius:50%;background:conic-gradient(from 20deg,transparent,var(--violet),transparent,var(--violet2),transparent);filter:blur(18px);opacity:.85;z-index:-1;animation:spin 12s linear infinite}.empty-photo{width:280px;height:280px;border-radius:50%;background:#06040d;border:1px solid rgba(255,255,255,.06)}.eyebrow{color:var(--violet2);font-weight:900;letter-spacing:1px;margin:0 0 4px}.intro-text h1{font-family:Bangers,cursive;font-size:82px;line-height:.9;margin:0;text-shadow:8px 6px 0 rgba(98,22,159,.45),0 0 28px rgba(164,44,255,.55)}.intro-text h2{margin:18px 0 18px;color:#d84cff;font-size:22px}.intro-text p{color:#ded8e8;line-height:1.75}.stats{display:flex;gap:34px;margin-top:22px}.stats span{display:grid;grid-template-columns:auto auto;gap:0 8px;color:#d84cff;font-size:36px}.stats b{color:white;font-size:26px}.stats small{grid-column:2;color:#aaa;font-size:10px;text-transform:uppercase}.action-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.action-card{min-height:320px;padding:28px 22px;text-align:center;color:#fff;text-decoration:none;border:1px solid var(--line);border-radius:13px;background:linear-gradient(160deg,rgba(28,17,52,.82),rgba(8,6,18,.88)),radial-gradient(circle at 50% 0,rgba(164,44,255,.28),transparent 35%);box-shadow:inset 0 0 40px rgba(164,44,255,.08);transition:.25s}.action-card:hover{transform:translateY(-8px);box-shadow:0 0 36px rgba(164,44,255,.38)}.action-card i{display:block;color:#cf48ff;font-style:normal;font-size:70px;line-height:1;text-shadow:0 0 22px var(--violet)}.action-card h3{font-size:23px;margin:22px 0 12px}.action-card p{color:#eee;line-height:1.6;min-height:72px}.action-card button{width:100%;border:1px solid rgba(255,255,255,.16);border-radius:7px;padding:14px 12px;color:#fff;background:linear-gradient(180deg,#9d27f5,#5e0da8);font-weight:900;cursor:pointer;box-shadow:0 0 18px rgba(164,44,255,.28)}footer{text-align:center;color:#d8cbe7;letter-spacing:1px;padding:22px 0 40px}footer span{display:inline-block;width:160px;height:1px;background:linear-gradient(90deg,transparent,var(--violet));vertical-align:middle;margin:0 14px}.footer-icons{margin-top:20px;display:flex;gap:28px;justify-content:center}.footer-icons a{color:#b845ff;text-decoration:none;font-weight:800}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1200px){.topbar{padding:0 24px}.hero-grid,.intro-section{grid-template-columns:1fr}.photo-ring{margin:auto}.action-cards{grid-template-columns:1fr 1fr 1fr}}@media(max-width:760px){.topbar{height:auto;padding:18px;flex-direction:column;gap:14px}.nav{gap:8px;flex-wrap:wrap;justify-content:center}.nav a{padding:10px;font-size:13px}.hero-grid{margin-top:16px}.player-card{padding:14px}.chat-card{min-height:420px}.intro-text h1{font-size:62px}.action-cards{grid-template-columns:1fr}.intro-section{gap:24px}.photo-ring{width:270px;height:270px}.empty-photo{width:220px;height:220px}footer span{width:70px}}

.brand-logo{display:flex;align-items:center;gap:14px;transform:none}.brand-logo img{width:54px;height:54px;border-radius:50%;object-fit:cover;border:1px solid rgba(226,76,255,.55);box-shadow:0 0 18px rgba(164,44,255,.65)}.brand-logo .brand-name{font-family:Bangers,cursive;color:#fff;font-size:42px;letter-spacing:1px;text-shadow:0 0 22px rgba(164,44,255,.8);display:block;height:auto;width:auto;background:none;margin:0}.brand-logo .brand-name i{display:block;height:5px;width:135px;background:linear-gradient(90deg,transparent,var(--violet2),transparent);margin-top:-8px}.social-icons a{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(164,44,255,.25);border-radius:10px;background:rgba(12,8,25,.55);box-shadow:inset 0 0 18px rgba(164,44,255,.08);transition:.22s}.social-icons a:hover{transform:translateY(-3px);box-shadow:0 0 18px rgba(164,44,255,.45)}.social-icons svg{width:21px;height:21px;fill:#bf44ff}.real-embed:before{display:none}.real-chat{height:auto}.no-cards{grid-template-columns:340px 1fr;margin-bottom:30px}.profile-photo{width:280px;height:280px;border-radius:50%;object-fit:cover;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 45px #000}.module-buttons{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px}.module-buttons a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:15px 22px;background:linear-gradient(180deg,#9d27f5,#5e0da8);font-weight:900;box-shadow:0 0 18px rgba(164,44,255,.28);transition:.22s}.module-buttons a:hover{transform:translateY(-3px);box-shadow:0 0 28px rgba(164,44,255,.55)}.module-page{padding:42px 0 60px}.module-hero{padding:46px;text-align:center;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center}.module-symbol{font-size:96px;color:#d84cff;text-shadow:0 0 28px var(--violet);line-height:1}.module-hero h1{font-family:Bangers,cursive;font-size:94px;line-height:.9;margin:8px 0;text-shadow:8px 6px 0 rgba(98,22,159,.45),0 0 28px rgba(164,44,255,.55)}.module-hero h2{color:#d84cff;margin:12px 0 16px}.module-hero p{max-width:850px;color:#ded8e8;line-height:1.75}.module-placeholder{width:min(820px,100%);margin-top:30px;padding:44px 22px;border:1px dashed rgba(226,76,255,.55);border-radius:14px;background:rgba(0,0,0,.22);color:#c7bcd6;box-shadow:inset 0 0 38px rgba(164,44,255,.12)}.module-description{margin-top:24px;padding:34px 42px}.module-description h3{font-size:28px;margin:0 0 12px;color:#fff}.module-description p{color:#ded8e8;line-height:1.8}@media(max-width:1200px){.no-cards{grid-template-columns:1fr}.brand-logo .brand-name{font-size:36px}}@media(max-width:760px){.brand-logo img{width:46px;height:46px}.brand-logo .brand-name{font-size:34px}.social-icons{flex-wrap:wrap;justify-content:center}.profile-photo{width:220px;height:220px}.module-hero{padding:30px 18px}.module-hero h1{font-size:64px}.module-description{padding:26px 20px}}

.player-stream-header {
    height: auto;
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
    position: relative;
    z-index: 2;
    font-size: 14px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.jp-live-badge-neon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-width: 145px;
    padding: 10px 26px 10px 16px;
    overflow: hidden;
    border-radius: 9px;
    color: #ffffff;
    background:
        linear-gradient(180deg, rgba(32, 8, 20, .98), rgba(9, 6, 16, .98));
    border: 1px solid rgba(255, 49, 81, .78);
    border-left: 3px solid #a42cff;
    border-right: 3px solid #ff3151;
    box-shadow:
        0 0 14px rgba(255, 49, 81, .42),
        0 0 28px rgba(164, 44, 255, .18),
        inset 0 0 18px rgba(255, 49, 81, .12);
}

.jp-live-badge-neon::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            110deg,
            transparent 0%,
            rgba(255, 255, 255, .18) 45%,
            transparent 70%
        );
    transform: translateX(-140%);
    animation: jpLiveShine 3.6s linear infinite;
    pointer-events: none;
}

.jp-live-badge-neon::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 4px;
    height: 1px;
    background:
        linear-gradient(90deg, transparent, rgba(255, 49, 81, .9), transparent);
    box-shadow: 0 0 10px rgba(255, 49, 81, .8);
    pointer-events: none;
}

.jp-live-led {
    position: relative;
    z-index: 1;
    width: 12px;
    height: 12px;
    flex: 0 0 12px;
    border-radius: 50%;
    background: #ff3151;
    box-shadow:
        0 0 8px #ff3151,
        0 0 22px rgba(255, 49, 81, .85);
    animation: jpLivePulse 1.15s infinite;
}

.jp-live-text {
    position: relative;
    z-index: 1;
    font-size: 18px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .12em;
    color: #ffffff;
    text-shadow:
        0 0 8px rgba(255, 255, 255, .55),
        0 0 18px rgba(255, 49, 81, .35);
}

.player-stream-label {
    color: rgba(255, 255, 255, .86);
    font-weight: 800;
}

.player-stream-label b {
    color: #d44cff;
    text-shadow:
        0 0 8px rgba(212, 76, 255, .80),
        0 0 18px rgba(212, 76, 255, .35);
}

.player-twitch-mark {
    margin-left: auto;
    color: #ffffff;
    font-size: 38px;
    line-height: 1;
    text-shadow:
        0 0 14px var(--violet),
        0 0 28px rgba(164, 44, 255, .55);
}

@keyframes jpLivePulse {
    0%, 100% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(.72);
        opacity: .5;
    }
}

@keyframes jpLiveShine {
    0% {
        transform: translateX(-150%);
    }

    100% {
        transform: translateX(150%);
    }
}

@media(max-width: 760px) {
    .player-stream-header {
        gap: 12px;
        margin-bottom: 14px;
        flex-wrap: wrap;
    }

    .jp-live-badge-neon {
        min-width: 126px;
        padding: 9px 20px 9px 14px;
    }

    .jp-live-text {
        font-size: 16px;
    }

    .player-twitch-mark {
        font-size: 30px;
    }
}
.nav svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:#d98cff;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:
    drop-shadow(0 0 5px rgba(216,76,255,.9))
    drop-shadow(0 0 14px rgba(164,44,255,.45));
}

.nav a:hover svg,
.nav a.active svg{
  stroke:#ffffff;
  filter:
    drop-shadow(0 0 6px rgba(255,255,255,.8))
    drop-shadow(0 0 18px rgba(164,44,255,.9));
}

.ouija-top-section{
    margin-bottom:24px;
}

.ouija-top-section .module-symbol{
    width:86px;
    height:86px;
    margin-bottom:8px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid rgba(226,76,255,.38);
    background:radial-gradient(circle, rgba(164,44,255,.20), rgba(0,0,0,.25));
    box-shadow:0 0 32px rgba(164,44,255,.42), inset 0 0 28px rgba(164,44,255,.16);
    color:#d84cff;
    font-size:76px;
    line-height:1;
    text-shadow:0 0 28px var(--violet);
}

.ouija-module-zone{
    margin-top:24px;
    padding:38px;
    display:grid;
    grid-template-columns:1fr 1.25fr;
    gap:32px;
    align-items:center;
}

.ouija-module-head h2,
.ouija-rules-card h2{
    margin:8px 0 16px;
    color:#ffffff;
    font-size:34px;
    text-shadow:0 0 18px rgba(164,44,255,.45);
}

.ouija-module-kicker{
    color:var(--violet2);
    font-weight:900;
    letter-spacing:.12em;
    font-size:13px;
}

.ouija-module-head p,
.ouija-rules-card p{
    color:#ded8e8;
    line-height:1.8;
}

.ouija-board-placeholder{
    position:relative;
    overflow:hidden;
    min-height:310px;
    padding:34px 26px;
    border-radius:18px;
    border:1px solid rgba(226,76,255,.36);
    background:
        radial-gradient(circle at 50% 0, rgba(226,76,255,.22), transparent 42%),
        linear-gradient(160deg, rgba(28,17,52,.70), rgba(5,4,12,.92));
    box-shadow:
        inset 0 0 46px rgba(164,44,255,.14),
        0 0 28px rgba(164,44,255,.20);
    text-align:center;
}

.ouija-board-glow{
    position:absolute;
    inset:-80px;
    background:conic-gradient(from 90deg, transparent, rgba(164,44,255,.22), transparent, rgba(226,76,255,.18), transparent);
    filter:blur(28px);
    opacity:.8;
    animation:spin 16s linear infinite;
}

.ouija-board-title,
.ouija-board-line,
.ouija-board-actions,
.ouija-board-placeholder button,
.ouija-board-placeholder small{
    position:relative;
    z-index:1;
}

.ouija-board-title{
    font-family:Bangers,cursive;
    font-size:68px;
    letter-spacing:2px;
    text-shadow:7px 5px 0 rgba(98,22,159,.35), 0 0 26px rgba(164,44,255,.65);
}

.ouija-board-line{
    margin-top:14px;
    color:#e9dfff;
    letter-spacing:.28em;
    font-weight:800;
    font-size:14px;
}

.ouija-board-actions{
    display:flex;
    justify-content:center;
    gap:70px;
    margin:24px 0 20px;
    color:#d84cff;
    font-weight:900;
    text-shadow:0 0 14px rgba(216,76,255,.8);
}

.ouija-board-placeholder button{
    border:1px solid rgba(255,255,255,.16);
    border-radius:9px;
    padding:14px 28px;
    color:#fff;
    background:linear-gradient(180deg,#9d27f5,#5e0da8);
    font-weight:900;
    letter-spacing:.08em;
    cursor:not-allowed;
    box-shadow:0 0 22px rgba(164,44,255,.35);
}

.ouija-board-placeholder small{
    display:block;
    margin-top:16px;
    color:#c7bcd6;
}

.ouija-rules-card{
    margin-top:24px;
    padding:40px 46px;
}

.ouija-rules-card h3{
    margin:0 0 14px;
    color:#ffffff;
    font-size:25px;
}

.ouija-danger{
    color:#ff5d7c;
    font-weight:900;
}

.ouija-rule-separator{
    height:1px;
    margin:34px 0;
    background:linear-gradient(90deg, transparent, rgba(226,76,255,.9), transparent);
    box-shadow:0 0 16px rgba(164,44,255,.5);
}

.ouija-success-box{
    margin-top:22px;
    padding:18px 22px;
    border-left:4px solid #63ff6b;
    border-radius:10px;
    color:#ecfff0;
    background:rgba(35,110,55,.18);
    box-shadow:inset 0 0 24px rgba(99,255,107,.08);
}

.ouija-rules-list{
    margin:0;
    padding-left:22px;
    color:#e6e2ef;
    line-height:2;
}

.ouija-curse-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:26px;
}

.ouija-curse-card{
    padding:22px;
    border-radius:12px;
    border:1px solid rgba(180,71,255,.35);
    background:rgba(255,255,255,.035);
    box-shadow:inset 0 0 24px rgba(164,44,255,.08);
    transition:.25s;
}

.ouija-curse-card:hover{
    transform:translateY(-5px);
    box-shadow:0 0 24px rgba(180,71,255,.32), inset 0 0 24px rgba(164,44,255,.10);
}

.ouija-curse-card b{
    display:block;
    margin-bottom:10px;
    color:#ffffff;
}

.ouija-curse-card span{
    display:block;
    color:#d7d1e7;
    line-height:1.55;
}

.ouija-warning-box{
    margin-top:42px;
    padding:30px;
    text-align:center;
    border-radius:14px;
    border:1px solid rgba(255,70,95,.42);
    background:linear-gradient(180deg, rgba(90,15,30,.25), rgba(20,8,16,.58));
    box-shadow:0 0 24px rgba(255,50,90,.18), inset 0 0 34px rgba(255,49,81,.06);
}

.ouija-warning-box h2{
    margin:24px 0 0;
    color:#ff5b77;
    font-size:26px;
}

@media(max-width:1200px){
    .ouija-module-zone{
        grid-template-columns:1fr;
    }

    .ouija-curse-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:760px){
    .ouija-module-zone,
    .ouija-rules-card{
        padding:26px 20px;
    }

    .ouija-board-title{
        font-size:52px;
    }

    .ouija-board-line{
        letter-spacing:.16em;
        font-size:12px;
    }

    .ouija-board-actions{
        gap:36px;
    }

    .ouija-curse-grid{
        grid-template-columns:1fr;
    }
}


.ouija-modules-section{
    margin-top:24px;
}

.ouija-modules-grid{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:26px;
    margin-top:30px;
}

.ouija-real-module{
    position:relative;
    overflow:hidden;
    padding:22px;
    border-radius:14px;
    border:1px solid rgba(180,71,255,.32);
    background:
        radial-gradient(circle at 50% 0, rgba(164,44,255,.22), transparent 42%),
        linear-gradient(160deg, rgba(20,12,36,.86), rgba(5,4,12,.92));
    box-shadow:
        inset 0 0 36px rgba(164,44,255,.08),
        0 0 22px rgba(164,44,255,.16);
}

.ouija-real-module::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(120deg, transparent, rgba(255,255,255,.045), transparent);
    opacity:.55;
}

.ouija-real-module-head{
    position:relative;
    z-index:2;
    text-align:center;
    margin-bottom:18px;
}

.ouija-real-module-head span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 13px;
    border-radius:999px;
    border:1px solid rgba(226,76,255,.38);
    color:#e6a6ff;
    background:rgba(164,44,255,.10);
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.ouija-real-module-head h3{
    margin:14px 0 8px;
    color:#fff;
    font-size:25px;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.ouija-real-module-head p{
    max-width:620px;
    margin:0 auto;
    color:#d8d0e8;
    line-height:1.65;
    font-size:14px;
}

.jp-ouija-board{
    position:relative;
    width:100%;
    aspect-ratio:1536 / 1024;
    overflow:hidden;
    border-radius:12px;
    background:url('../ouija/img/planche_jerlapive.png') no-repeat center center;
    background-size:contain;
    box-shadow:
        0 0 26px rgba(164,44,255,.28),
        inset 0 0 90px rgba(0,0,0,.45);
}

.jp-ouija-board::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 50% 50%, transparent 54%, rgba(0,0,0,.35) 100%),
        linear-gradient(180deg, rgba(164,44,255,.06), transparent 42%, rgba(0,0,0,.16));
}

.jp-ouija-planchette{
    position:absolute;
    left:13%;
    top:20%;
    z-index:5;
    width:25%;
    aspect-ratio:1/1;
    background:url('../ouija/img/planchette_transparente.png') no-repeat center center;
    background-size:contain;
    transform:translate(-50%, -50%);
    transition:top 1s ease, left 1s ease;
    pointer-events:none;
    filter:
        drop-shadow(0 0 10px rgba(0,0,0,.65))
        drop-shadow(0 0 16px rgba(164,44,255,.35));
}

.jp-ouija-result-wrap{
    position:absolute;
    z-index:4;
    top:61%;
    left:50%;
    width:72%;
    transform:translateX(-50%);
    pointer-events:none;
    text-align:center;
}

.jp-ouija-smoke{
    position:absolute;
    inset:0;
    border-radius:50%;
    background:radial-gradient(ellipse at center, rgba(164,44,255,.32) 0%, rgba(30,15,45,.25) 50%, transparent 100%);
    opacity:0;
    transform:scale(.55);
    transition:opacity 1s ease, transform 1s ease;
    filter:blur(10px);
}

.jp-ouija-result{
    position:relative;
    z-index:2;
    min-height:42px;
    padding:9px 12px;
    color:#4b0058;
    font-family:'Bangers', cursive;
    font-size:clamp(18px, 2.1vw, 30px);
    line-height:1.15;
    letter-spacing:.03em;
    text-shadow:
        0 0 8px rgba(255,210,120,.8),
        0 0 16px rgba(164,44,255,.38);
    opacity:0;
    transform:scale(.84);
    transition:opacity 1s ease, transform 1s ease;
}

.jp-ouija-button{
    position:absolute;
    z-index:6;
    left:50%;
    bottom:9%;
    transform:translateX(-50%);
    padding:clamp(7px, 1.2vw, 11px) clamp(14px, 2.3vw, 22px);
    border-radius:999px;
    border:1px solid rgba(226,76,255,.52);
    color:#fff;
    background:linear-gradient(180deg, rgba(157,39,245,.92), rgba(94,13,168,.92));
    box-shadow:
        0 0 18px rgba(164,44,255,.42),
        inset 0 0 16px rgba(255,255,255,.08);
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    cursor:pointer;
    transition:.22s;
}

.jp-ouija-button:hover{
    transform:translateX(-50%) translateY(-2px);
    box-shadow:0 0 28px rgba(164,44,255,.62);
}

.jp-ouija-button:disabled{
    opacity:.55;
    cursor:not-allowed;
}

.jp-ouija-overlay{
    position:absolute;
    inset:0;
    z-index:7;
    pointer-events:none;
    background:rgba(0,0,0,.58);
    opacity:0;
    transition:opacity .5s ease;
}

.jp-ouija-module-foot{
    position:relative;
    z-index:2;
    margin-top:14px;
    color:#bfb2d5;
    text-align:center;
    font-size:13px;
    line-height:1.6;
}

@media(max-width:1200px){
    .ouija-modules-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:760px){
    .ouija-real-module{
        padding:14px;
    }

    .ouija-real-module-head h3{
        font-size:21px;
    }

    .jp-ouija-planchette{
        width:30%;
    }

    .jp-ouija-result{
        font-size:18px;
    }

    .jp-ouija-button{
        font-size:11px;
    }
}

.ouija-two-modules-grid{
    align-items:stretch;
}

.jp-malus-panel-module{
    display:flex;
    flex-direction:column;
}

.jp-malus-toolbar{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:2px 0 16px;
}

.jp-malus-reset{
    border:1px solid rgba(226,76,255,.52);
    border-radius:999px;
    padding:10px 18px;
    color:#fff;
    background:linear-gradient(180deg, rgba(157,39,245,.92), rgba(94,13,168,.92));
    box-shadow:
        0 0 18px rgba(164,44,255,.36),
        inset 0 0 16px rgba(255,255,255,.08);
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
    cursor:pointer;
    transition:.22s;
}

.jp-malus-reset:hover{
    transform:translateY(-2px);
    box-shadow:0 0 28px rgba(164,44,255,.58);
}

.jp-malus-counter{
    color:#e6a6ff;
    font-size:13px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.jp-malus-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:8px;
    max-height:520px;
    overflow:auto;
    padding:4px 6px 4px 2px;
    scrollbar-width:thin;
    scrollbar-color:rgba(226,76,255,.75) rgba(255,255,255,.05);
}

.jp-malus-cell{
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:9px 8px;
    border-radius:10px;
    border:1px solid rgba(99,255,107,.36);
    color:#eaffee;
    background:linear-gradient(180deg, rgba(19,92,35,.58), rgba(7,34,18,.72));
    box-shadow:
        inset 0 0 18px rgba(99,255,107,.07),
        0 0 10px rgba(99,255,107,.10);
    font-size:12px;
    font-weight:800;
    line-height:1.25;
    cursor:pointer;
    transition:.18s;
    user-select:none;
}

.jp-malus-cell:hover{
    transform:translateY(-2px);
    border-color:rgba(99,255,107,.72);
    box-shadow:0 0 16px rgba(99,255,107,.24);
}

.jp-malus-cell.is-selected{
    color:#fff;
    border-color:rgba(255,255,255,.86);
    background:linear-gradient(180deg, rgba(215,7,48,.94), rgba(95,8,25,.92));
    box-shadow:
        0 0 18px rgba(255,49,81,.42),
        inset 0 0 18px rgba(255,255,255,.10);
}

@media(max-width:1200px){
    .jp-malus-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
        max-height:none;
    }
}

@media(max-width:760px){
    .jp-malus-toolbar{
        flex-direction:column;
        align-items:stretch;
    }

    .jp-malus-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .jp-malus-cell{
        min-height:54px;
        font-size:11px;
    }
}

.ouija-module-zone.ouija-modules-section{
    display:block;
    width:100%;
    padding:34px;
}

.ouija-module-zone.ouija-modules-section .ouija-modules-grid{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
    gap:30px;
    width:100%;
    margin-top:0;
    align-items:stretch;
}

.ouija-left-modules-stack{
    min-width:0;
    display:grid;
    grid-template-rows:auto auto;
    gap:30px;
}

.ouija-module-zone.ouija-modules-section .ouija-real-module{
    min-width:0;
    min-height:650px;
    padding:30px;
    display:flex;
    flex-direction:column;
}

.ouija-module-zone.ouija-modules-section .ouija-real-module-head{
    margin-bottom:22px;
}

.ouija-module-zone.ouija-modules-section .ouija-real-module-head h3{
    font-size:30px;
    line-height:1.05;
}

.ouija-module-zone.ouija-modules-section .ouija-real-module-head p{
    font-size:15px;
    line-height:1.65;
}

.ouija-module-zone.ouija-modules-section .jp-ouija-board{
    width:100%;
    max-width:680px;
    margin:0 auto;
}

.ouija-module-zone.ouija-modules-section .jp-ouija-button{
    padding:7px 15px;
    min-width:auto;
    font-size:11px;
    line-height:1.1;
    letter-spacing:.08em;
    opacity:.92;
    box-shadow:
        0 0 12px rgba(164,44,255,.34),
        inset 0 0 12px rgba(255,255,255,.07);
}

.ouija-module-zone.ouija-modules-section .jp-ouija-button:hover{
    opacity:1;
    box-shadow:0 0 18px rgba(164,44,255,.52);
}

.ouija-module-zone.ouija-modules-section .jp-malus-panel-module{
    display:flex;
    flex-direction:column;
    min-height:1330px;
}

.ouija-module-zone.ouija-modules-section .jp-malus-toolbar{
    margin-bottom:20px;
}

.ouija-module-zone.ouija-modules-section .jp-malus-grid{
    flex:1;
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:11px;
    max-height:none;
    overflow-y:auto;
    padding:6px 8px 6px 2px;
}

.ouija-module-zone.ouija-modules-section .jp-malus-cell{
    min-height:74px;
    padding:10px;
    font-size:13px;
    line-height:1.18;
}

@media(max-width:1200px){
    .ouija-module-zone.ouija-modules-section .ouija-modules-grid{
        grid-template-columns:1fr;
    }

    .ouija-module-zone.ouija-modules-section .ouija-real-module,
    .ouija-module-zone.ouija-modules-section .jp-malus-panel-module{
        min-height:auto;
    }

    .ouija-module-zone.ouija-modules-section .jp-malus-grid{
        max-height:none;
    }
}

@media(max-width:760px){
    .ouija-module-zone.ouija-modules-section{
        padding:20px;
    }

    .ouija-left-modules-stack{
        gap:20px;
    }

    .ouija-module-zone.ouija-modules-section .ouija-real-module{
        padding:18px;
    }

    .ouija-module-zone.ouija-modules-section .ouija-real-module-head h3{
        font-size:23px;
    }

    .ouija-module-zone.ouija-modules-section .jp-malus-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:9px;
    }

    .ouija-module-zone.ouija-modules-section .jp-malus-cell{
        min-height:60px;
        font-size:11px;
    }
}


.ghost-vote-page{
    padding-bottom:60px;
}

.ghost-vote-hero{
    min-height:auto;
    padding:44px 36px;
    margin-bottom:24px;
}

.ghost-vote-hero .module-symbol{
    width:86px;
    height:86px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid rgba(226,76,255,.38);
    background:radial-gradient(circle, rgba(164,44,255,.20), rgba(0,0,0,.25));
    box-shadow:0 0 32px rgba(164,44,255,.42), inset 0 0 28px rgba(164,44,255,.16);
    color:#d84cff;
    font-size:70px;
    line-height:1;
    text-shadow:0 0 28px var(--violet);
}

.ghost-vote-module{
    padding:34px;
    margin-top:24px;
}

.ghost-vote-module-head{
    text-align:center;
    max-width:940px;
    margin:0 auto 30px;
}

.ghost-vote-kicker{
    display:inline-block;
    margin-bottom:10px;
    color:var(--violet2);
    font-size:12px;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.ghost-vote-module-head h2{
    margin:0 0 14px;
    color:#ffffff;
    font-size:34px;
    line-height:1.1;
    text-shadow:0 0 20px rgba(164,44,255,.45);
}

.ghost-vote-module-head p{
    max-width:850px;
    margin:0 auto;
    color:#ded8e8;
    line-height:1.7;
}

.ghost-vote-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    align-items:stretch;
    gap:28px;
    width:100%;
}

.ghost-vote-panel{
    min-height:760px;
    height:100%;
    padding:26px;
    border-radius:16px;
    background:linear-gradient(145deg,rgba(35,15,60,.86),rgba(8,5,17,.94));
    border:1px solid rgba(177,47,255,.42);
    box-shadow:
        0 0 28px rgba(164,44,255,.24),
        inset 0 0 42px rgba(94,19,170,.16);
}

.ghost-vote-cast{
    display:flex;
    flex-direction:column;
}

.ghost-vote-results{
    display:flex;
    flex-direction:column;
}

.ghost-panel-title{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:22px;
    color:#ffffff;
    font-size:22px;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.ghost-panel-title span{
    font-size:28px;
    filter:drop-shadow(0 0 12px rgba(164,44,255,.85));
}

.ghost-vote-form{
    display:grid;
    gap:12px;
    margin-bottom:24px;
}

.ghost-vote-form label{
    color:#d84cff;
    font-size:12px;
    font-weight:900;
    letter-spacing:.10em;
    text-transform:uppercase;
}

.ghost-vote-form input{
    width:100%;
    min-height:48px;
    padding:0 16px;
    border-radius:10px;
    border:1px solid rgba(226,76,255,.35);
    outline:none;
    color:#ffffff;
    background:rgba(0,0,0,.28);
    box-shadow:inset 0 0 20px rgba(164,44,255,.10);
}

.ghost-vote-form input:focus{
    border-color:rgba(226,76,255,.78);
    box-shadow:
        0 0 16px rgba(164,44,255,.28),
        inset 0 0 20px rgba(164,44,255,.14);
}

.ghost-vote-input-line{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
}

.ghost-vote-form button{
    min-height:48px;
    padding:0 22px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:10px;
    color:#fff;
    background:linear-gradient(180deg,#9d27f5,#5e0da8);
    font-weight:900;
    cursor:pointer;
    box-shadow:0 0 18px rgba(164,44,255,.28);
    transition:.22s;
}

.ghost-vote-form button:hover{
    transform:translateY(-2px);
    box-shadow:0 0 28px rgba(164,44,255,.55);
}

.ghost-vote-form small{
    color:#c7bcd6;
    line-height:1.45;
}

.ghost-choice-grid{
    flex:1;
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:10px;
    max-height:560px;
    overflow-y:auto;
    padding:4px 6px 4px 4px;
    scrollbar-width:thin;
    scrollbar-color:rgba(226,76,255,.75) rgba(255,255,255,.05);
}

.ghost-choice{
    position:relative;
    min-height:98px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    border:1px solid rgba(226,76,255,.22);
    border-radius:10px;
    color:#ffffff;
    background:
        linear-gradient(rgba(20,5,28,.66), rgba(5,2,10,.80)),
        url('../img/ghost-vote-card.png');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-blend-mode:multiply;
    cursor:pointer;
    transition:.22s;
    box-shadow:
        inset 0 0 28px rgba(0,0,0,.38),
        0 0 10px rgba(164,44,255,.10);
}

.ghost-choice::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 50% 16%, rgba(226,76,255,.16), transparent 45%),
        linear-gradient(180deg, rgba(0,0,0,.16), rgba(0,0,0,.42));
}

.ghost-choice:hover{
    transform:translateY(-4px) scale(1.015);
    border-color:rgba(226,76,255,.58);
    box-shadow:
        0 0 18px rgba(164,44,255,.35),
        inset 0 0 30px rgba(0,0,0,.45);
}

.ghost-choice span,
.ghost-choice strong,
.ghost-choice em{
    position:relative;
    z-index:1;
}

.ghost-choice span{
    min-width:24px;
    height:24px;
    display:grid;
    place-items:center;
    border-radius:50%;
    font-size:12px;
    font-weight:900;
    color:#ffffff;
    background:rgba(164,44,255,.32);
    border:1px solid rgba(226,76,255,.42);
    text-shadow:0 0 8px rgba(255,255,255,.45);
}

.ghost-choice strong{
    max-width:92%;
    font-size:13px;
    line-height:1.05;
    color:#ffffff;
    text-shadow:0 0 8px rgba(0,0,0,.85), 0 0 12px rgba(164,44,255,.55);
}

.ghost-choice em{
    margin-top:3px;
    font-style:normal;
    font-size:18px;
    font-weight:900;
    color:#63ff6b;
    text-shadow:0 0 14px rgba(99,255,107,.55);
}

.ghost-vote-summary{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:22px;
}

.ghost-vote-summary div{
    padding:20px;
    border-radius:14px;
    background:rgba(0,0,0,.24);
    border:1px solid rgba(226,76,255,.22);
}

.ghost-vote-summary span{
    display:block;
    margin-bottom:8px;
    color:#c7bcd6;
    text-transform:uppercase;
    font-size:11px;
    letter-spacing:.08em;
}

.ghost-vote-summary strong{
    color:#ffffff;
    font-size:26px;
    text-shadow:0 0 16px rgba(164,44,255,.42);
}

.ghost-results-list{
    flex:1;
    display:grid;
    align-content:start;
    gap:12px;
    max-height:520px;
    overflow-y:auto;
    padding-right:4px;
}

.ghost-result-row{
    padding:13px;
    border-radius:12px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.06);
}

.ghost-result-row.is-top{
    border-color:rgba(226,76,255,.55);
    box-shadow:0 0 18px rgba(164,44,255,.20);
}

.ghost-result-meta{
    display:flex;
    justify-content:space-between;
    gap:12px;
    margin-bottom:8px;
    color:#ffffff;
}

.ghost-result-meta span{
    color:#d7d1e7;
    font-size:13px;
    white-space:nowrap;
}

.ghost-result-bar{
    height:10px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.08);
}

.ghost-result-bar i{
    display:block;
    height:100%;
    min-width:3px;
    border-radius:inherit;
    background:linear-gradient(90deg,#7c1fd1,#e24cff);
    box-shadow:0 0 16px rgba(226,76,255,.62);
    transition:width .35s ease;
}

.ghost-last-vote{
    margin-top:20px;
    padding:16px 18px;
    border-radius:12px;
    color:#ded8e8;
    background:rgba(164,44,255,.10);
    border:1px solid rgba(226,76,255,.24);
}

.ghost-last-vote strong{
    color:#ffffff;
}

.ghost-vote-description{
    margin-top:24px;
    padding:40px 46px;
}

.ghost-vote-description h3{
    margin:0 0 16px;
    color:#ffffff;
    font-size:30px;
    text-shadow:0 0 18px rgba(164,44,255,.45);
}

.ghost-vote-description p{
    color:#ded8e8;
    line-height:1.85;
    font-size:16px;
}

.ghost-vote-description strong{
    color:#ffffff;
}

.ghost-vote-description-highlight{
    margin-top:24px;
    padding:22px 24px;
    border-radius:14px;
    border:1px solid rgba(226,76,255,.38);
    background:rgba(164,44,255,.10);
    box-shadow:inset 0 0 28px rgba(164,44,255,.08);
    color:#ffffff;
    font-weight:800;
    line-height:1.7;
}

@media(max-width:1200px){
    .ghost-vote-layout{
        grid-template-columns:1fr;
    }

    .ghost-vote-panel{
        min-height:auto;
    }

    .ghost-choice-grid{
        max-height:none;
    }
}

@media(max-width:760px){
    .ghost-vote-module{
        padding:24px 16px;
    }

    .ghost-vote-module-head h2{
        font-size:26px;
    }

    .ghost-vote-input-line,
    .ghost-vote-summary{
        grid-template-columns:1fr;
    }

    .ghost-choice-grid{
        grid-template-columns:repeat(2, minmax(0,1fr));
    }

    .ghost-choice{
        min-height:92px;
    }

    .ghost-vote-description{
        padding:28px 22px;
    }
}


.ghost-results-title{
    position:relative;
}

.ghost-hidden-reset{
    margin-left:auto;
    width:28px;
    height:28px;
    border-radius:50%;
    border:1px solid rgba(226,76,255,.22);
    color:rgba(255,255,255,.45);
    background:rgba(12,8,25,.28);
    font-size:14px;
    font-weight:900;
    line-height:1;
    cursor:pointer;
    opacity:.18;
    transition:.22s;
}

.ghost-hidden-reset:hover{
    opacity:1;
    color:#fff;
    border-color:rgba(226,76,255,.75);
    background:linear-gradient(180deg, rgba(157,39,245,.82), rgba(94,13,168,.82));
    box-shadow:0 0 18px rgba(164,44,255,.45);
    transform:rotate(-25deg) scale(1.05);
}

/* ============================================================
   FOOTER
============================================================ */

.jp-footer{

    margin:40px 0 20px;

    display:flex;
    justify-content:center;
    align-items:center;

}

.jp-footer-copy{

    display:flex;
    align-items:center;
    justify-content:center;

    gap:0px; 

    font-size:12px;
    color:#8d87a4;

    white-space:nowrap;

}

.jp-footer-copy .author{

    color:#d84cff;

    font-weight:700;

    text-shadow:0 0 8px rgba(216,76,255,.55);

}