.fortune-choice-hero-art{
    width:50px !important;
    height:50px !important;
    border-radius:16px !important;
    overflow:hidden;
    background:linear-gradient(180deg, rgba(255,227,160,.12), rgba(255,255,255,.02)) !important;
    box-shadow:0 10px 18px rgba(0,0,0,.16);
}
.fortune-choice-hero-art img{display:block;width:100%;height:100%;object-fit:contain;transform:scale(1.15);}

.fortune-choice-card.is-hidden-personality{
    background:
        radial-gradient(circle at top left, rgba(255,225,140,.14), transparent 34%),
        linear-gradient(145deg, rgba(35,22,52,.98), rgba(13,18,32,.99)) !important;
    border:1px solid rgba(255,226,157,.16) !important;
    box-shadow:0 14px 30px rgba(10,10,18,.24), inset 0 1px 0 rgba(255,255,255,.05);
}
.personality-choice-mirror,
.court-choice-symbol{
    overflow:visible !important;
}
.personality-choice-mirror .fortune-choice-art,
.court-choice-symbol .fortune-choice-art{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:contain;
    filter:drop-shadow(0 10px 16px rgba(0,0,0,.24));
}
.personality-choice-mirror .fortune-choice-symbol,
.court-choice-symbol .fortune-choice-symbol{
    position:absolute;
    width:34px;
    height:34px;
    right:-8px;
    bottom:-8px;
    object-fit:contain;
    filter:drop-shadow(0 8px 14px rgba(0,0,0,.25));
}

.personality-page{
    background:linear-gradient(180deg, #0a0f1d, #171227 50%, #1b122e 100%);
    color:#f4eef8;
}
.personality-hero,
.personality-card,
.personality-result > *{
    border:1px solid rgba(255,255,255,.07);
    box-shadow:0 18px 36px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
.personality-hero,
.personality-card{
    position:relative;
    overflow:hidden;
    border-radius:26px;
    background:
        radial-gradient(circle at top left, rgba(255,218,120,.12), transparent 32%),
        linear-gradient(180deg, rgba(25,18,42,.97), rgba(10,13,26,.98));
}
.personality-hero{
    display:grid;
    grid-template-columns:170px minmax(0,1fr);
    gap:18px;
    padding:18px;
    margin-bottom:16px;
    align-items:center;
}
.personality-hero-art{position:relative;height:210px;}
.personality-hero-figure,
.personality-hero-emblem,
.personality-access-symbol img,
.personality-scan img{display:block;width:100%;height:100%;object-fit:contain;}
.personality-hero-figure{filter:drop-shadow(0 16px 22px rgba(0,0,0,.26));}
.personality-hero-emblem{
    position:absolute;
    width:78px;
    height:78px;
    left:-6px;
    bottom:2px;
}
.personality-hero-copy small,
.personality-card-title small,
.personality-access-gate small,
.personality-result-hero small{
    color:#d6c8db;
}
.personality-hero-copy h2{margin:6px 0 10px;font-size:25px;line-height:1.45;color:#ffe3a3;}
.personality-hero-copy p{margin:0;line-height:1.9;color:#efe7f7;font-size:14px;}
.personality-card{padding:18px;margin-bottom:16px;}
.personality-access-gate{text-align:center;}
.personality-access-symbol{
    width:96px;
    height:96px;
    margin:0 auto 12px;
    padding:10px;
    border-radius:26px;
    background:rgba(255,255,255,.05);
}
.personality-access-gate h2{margin:6px 0 10px;font-size:24px;color:#ffe3a3;}
.personality-access-gate p,
.personality-access-gate strong,
.personality-disclaimer{line-height:1.8;color:#ede4f5;}
.personality-card-title{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.personality-card-title > span{
    width:42px;height:42px;border-radius:14px;display:grid;place-items:center;
    font-weight:800;color:#2b180f;background:linear-gradient(135deg,#ffd88f,#f4be63);
}
.personality-card-title h3{margin:2px 0 0;color:#ffe5a8;font-size:22px;}
.personality-field{display:grid;gap:8px;margin-bottom:14px;}
.personality-field > span{color:#f0deae;font-weight:700;}
.personality-field input,
.personality-text-answer{
    border:none;
    outline:none;
    border-radius:16px;
    padding:14px 15px;
    background:rgba(255,255,255,.06);
    color:#fff;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);
}
.personality-field-note,
.personality-text-counter span,
.personality-loading-note{color:#d2c5d9;}
.personality-intro-note{
    position:relative;
    padding:14px 16px 14px 92px;
    border-radius:20px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.06);
    overflow:hidden;
}
.personality-intro-note::before{
    content:"";
    position:absolute;
    left:8px;
    top:50%;
    width:74px;
    height:74px;
    transform:translateY(-50%);
    background:url('personality-tarot.webp') center/contain no-repeat;
    filter:drop-shadow(0 10px 16px rgba(0,0,0,.22));
}
.personality-intro-note b{display:block;margin-bottom:4px;color:#ffe4a8;font-size:15px;}
.personality-intro-note span{display:block;line-height:1.85;color:#efe8f6;font-size:13px;}
.personality-primary,
.personality-secondary,
.personality-last-result{
    border:none;
    min-height:52px;
    border-radius:18px;
    padding:0 18px;
    font-weight:800;
}
.personality-primary{background:linear-gradient(135deg,#ffd88f,#f4be63);color:#2f180e;box-shadow:0 14px 24px rgba(244,190,99,.22);}
.personality-secondary,
.personality-last-result{background:rgba(255,255,255,.06);color:#fff8de;border:1px solid rgba(255,255,255,.06);}
.personality-quiz-actions,
.personality-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;}
.personality-progress,
.personality-loading-bar{height:12px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden;}
.personality-progress i,
.personality-loading-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffd88f,#f4be63);}
.personality-progress-head,
.personality-loading-progress-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;color:#ffefc6;}
.personality-question-wrap h2,
.personality-loading h2{color:#ffe2a1;font-size:24px;line-height:1.5;}
.personality-question-wrap p,
.personality-loading p{color:#efe8f6;line-height:1.85;}
.personality-scan{
    position:relative;
    width:112px;
    height:112px;
    margin:0 auto 16px;
    display:grid;
    place-items:center;
}
.personality-scan i{
    position:absolute;
    inset:0;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 0 0 10px rgba(255,255,255,.02), 0 0 28px rgba(242,192,97,.18);
}
.personality-scan img{width:88px;height:88px;position:relative;z-index:1;}
.personality-scan span{position:absolute;top:-4px;right:10px;color:#ffe59f;font-size:20px;}
.personality-result-hero,
.personality-final,
.personality-disclaimer{border-radius:24px;padding:18px;background:rgba(255,255,255,.05);margin-bottom:14px;}
.personality-result-hero{
    position:relative;
    overflow:hidden;
    background:
        linear-gradient(90deg, rgba(9,11,22,.82), rgba(9,11,22,.48)),
        url('personality-hero.webp') left center/220px auto no-repeat,
        linear-gradient(180deg, rgba(26,18,43,.98), rgba(10,13,26,.98));
}
.personality-result-hero span{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);color:#ffecbe;font-size:12px;}
.personality-result-hero h2{margin:10px 0 8px;color:#ffe4a7;font-size:26px;}
.personality-result-hero p{margin:0 0 8px;line-height:1.9;color:#f0e9f8;}
.personality-final small{display:block;color:#d5c9db;margin-bottom:6px;}
.personality-final p{margin:0;line-height:1.9;color:#fff4d1;font-size:15px;}

@media (max-width: 720px){
    .personality-hero{grid-template-columns:1fr;}
    .personality-hero-art{height:190px;}
}
@media (max-width: 560px){
    .personality-hero,
    .personality-card{padding:16px;border-radius:22px;}
    .personality-hero-copy h2{font-size:21px;}
    .personality-card-title h3,
    .personality-access-gate h2,
    .personality-question-wrap h2,
    .personality-loading h2{font-size:20px;}
    .personality-intro-note{padding-left:16px;padding-top:96px;}
    .personality-intro-note::before{left:50%;top:10px;transform:translateX(-50%);}
    .personality-result-hero{background:
        linear-gradient(180deg, rgba(9,11,22,.82), rgba(9,11,22,.48)),
        url('personality-hero.webp') center top/160px auto no-repeat,
        linear-gradient(180deg, rgba(26,18,43,.98), rgba(10,13,26,.98));padding-top:150px;}
}
