.wq-badge-modal{position:fixed;inset:0;display:none;z-index:99999;font-family:'Afacad',system-ui,sans-serif;}
.wq-badge-modal[aria-hidden="false"]{display:flex;align-items:flex-start;justify-content:center;}
.wq-badge-modal-backdrop{position:absolute;inset:0;background:rgba(20,18,14,0.55);backdrop-filter:blur(2px);}
.wq-badge-modal-card{
    position:relative;max-width:440px;width:calc(100% - 32px);margin:6vh 16px;
    background:#FBF8F1;color:#2A241B;border-radius:18px;padding:22px 22px 20px;
    box-shadow:0 22px 60px rgba(0,0,0,0.32);
    text-align:center;animation:wqBadgeModalIn .22s ease-out;
    max-height:88vh;overflow-y:auto;
}
@keyframes wqBadgeModalIn{from{opacity:0;transform:translateY(8px) scale(.98);}to{opacity:1;transform:none;}}
.wq-badge-modal-x{
    position:absolute;top:8px;right:12px;background:none;border:0;
    font-size:24px;line-height:1;color:#7A6E5C;cursor:pointer;padding:4px 8px;z-index:2;
}
.wq-badge-modal-x:hover{color:#2A241B;}

/* Hero */
.wq-badge-modal-hero{padding:6px 0 14px;}
.wq-badge-modal-icon-ring{
    width:124px;height:124px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;
    border-radius:50%;background:#fff;
    box-shadow:0 0 0 4px var(--wq-modal-color,#8E8E8E),
               0 0 0 6px rgba(255,255,255,.7),
               0 8px 24px rgba(0,0,0,.12);
}
.wq-badge-modal-icon{width:88px;height:88px;object-fit:contain;display:block;}
.wq-badge-modal-title{font-size:22px;margin:0 0 4px;font-weight:800;color:#1F1A12;line-height:1.2;}
.wq-badge-modal-era{
    font-size:11px;letter-spacing:.12em;text-transform:uppercase;
    color:var(--wq-modal-color,#8E8E8E);margin:0 0 10px;font-weight:700;
}
.wq-badge-modal-tagline{font-style:italic;font-size:14.5px;color:#5C5141;margin:0;line-height:1.45;}

/* Stat chips */
.wq-badge-modal-chips{
    display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
    margin:4px 0 16px;
}
.wq-badge-modal-chip{
    background:#fff;border:1px solid color-mix(in srgb, var(--wq-modal-color,#8E8E8E) 25%, #E8DEC6);
    border-radius:10px;padding:8px 6px;display:flex;flex-direction:column;align-items:center;gap:2px;
    min-width:0;
}
.wq-badge-modal-chip-ico{
    width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    background:color-mix(in srgb, var(--wq-modal-color,#8E8E8E) 14%, #fff);
    color:var(--wq-modal-color,#8E8E8E);margin-bottom:2px;
}
.wq-badge-modal-chip-val{
    font-size:14px;font-weight:800;color:#1F1A12;line-height:1.1;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;
}
.wq-badge-modal-chip-lbl{
    font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;
    color:#7A6E5C;font-weight:600;line-height:1.15;
}

/* Historic description */
.wq-badge-modal-desc{
    font-size:14px;line-height:1.55;color:#3D352A;text-align:left;
    margin:0 0 14px;padding:0 2px;
}
.wq-badge-modal-desc:empty{display:none;}

/* Did you know */
.wq-badge-modal-fact{
    display:flex;gap:10px;align-items:flex-start;text-align:left;
    background:linear-gradient(135deg, color-mix(in srgb, var(--wq-modal-color,#8E8E8E) 8%, #F2EBDB), #F2EBDB);
    border-left:3px solid var(--wq-modal-color,#8E8E8E);
    padding:10px 12px;border-radius:0 10px 10px 0;
}
.wq-badge-modal-fact:has(.wq-badge-modal-fact-text:empty){display:none;}
.wq-badge-modal-fact-ico{
    flex:0 0 auto;width:24px;height:24px;border-radius:50%;
    background:#fff;color:var(--wq-modal-color,#8E8E8E);
    display:flex;align-items:center;justify-content:center;margin-top:1px;
}
.wq-badge-modal-fact-body{display:flex;flex-direction:column;gap:2px;min-width:0;}
.wq-badge-modal-fact-label{
    font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
    color:var(--wq-modal-color,#8E8E8E);
}
.wq-badge-modal-fact-text{font-size:13px;line-height:1.5;color:#4A4030;}

@media (max-width:480px){
    .wq-badge-modal-card{margin:4vh 12px;padding:18px 16px 16px;}
    .wq-badge-modal-icon-ring{width:104px;height:104px;}
    .wq-badge-modal-icon{width:74px;height:74px;}
    .wq-badge-modal-title{font-size:19px;}
    .wq-badge-modal-chip-val{font-size:13px;}
    .wq-badge-modal-chip-lbl{font-size:9px;}
}
