/* Final scoped rules override older layout layers: light surfaces, dark legible labels. */
.quest-school-brand .school-wordmark{background:transparent!important;mix-blend-mode:normal;border:0;border-radius:0;box-shadow:none;height:auto;aspect-ratio:1530/230;object-fit:contain;object-position:center}
.dashboard .main-column .badge-card{background:linear-gradient(145deg,#fffcf2,#f0f5ff);border:1px solid #c9cde3;box-shadow:0 8px 25px #35406918;color:#263453;padding:clamp(22px,2.5vw,36px)}
.dashboard .main-column .badge-card:before{display:none}
.dashboard .main-column .badge-card h3{color:#283657;text-shadow:none;font-size:clamp(29px,2.5vw,40px)}
.dashboard .main-column .badge-card .eyebrow{color:#65547b;letter-spacing:.15em}
.dashboard .main-column .badge-card #badgeCollectionCount{color:#46516c;display:flex;justify-content:space-between;align-items:center;gap:14px;margin:18px 0 24px}
.badge-collection-summary{display:flex;align-items:baseline;gap:8px}.badge-collection-summary>span{font-size:14px}
.dashboard .main-column .badge-card #badgeCollectionCount b{color:#60438d;font-family:var(--quest-display);font-size:27px;font-weight:400}
.badge-filters{display:flex;gap:7px;flex-wrap:wrap}.badge-filters button,#badgePages button{border:1px solid #c6bfdf;background:#fff;color:#493961;min-height:42px;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:800}
.badge-filters button[aria-pressed=true]{color:#fff;background:#694aa5;border-color:#694aa5}
.dashboard .main-column .badge-card #badges{grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}
.dashboard .main-column .badge-card #badges>.badge{background:#edf0f6;border:1px solid #c5cbda;box-shadow:0 4px 0 #d3d8e3;min-height:225px;height:auto;padding:16px 12px;justify-content:flex-start;gap:9px;opacity:1;filter:none}
.dashboard .main-column .badge-card #badges>.badge.unlocked{background:linear-gradient(145deg,#fffdf2,#f9edc9);border-color:#c9a65f;box-shadow:0 4px 0 #d9be80,0 5px 12px #d9bc6620}
.dashboard .main-column .badge-card #badges>.badge>.achievement-emblem{width:86px;height:97px;filter:none;opacity:1}
.dashboard .main-column .badge-card #badges>.badge:not(.unlocked)>.achievement-emblem{filter:grayscale(.7);opacity:.75}
.dashboard .main-column .badge-card #badges>.badge>small{font-family:'Trebuchet MS',system-ui,sans-serif;font-size:16px;font-weight:800;line-height:1.3;color:#293654;min-height:2.6em;display:flex;justify-content:center;align-items:center;text-shadow:none}
.dashboard .main-column .badge-card #badges .badge-goal{color:#495570;font-size:12px;line-height:1.45;text-align:center;flex:1}
.dashboard .main-column .badge-card #badges .badge-state{color:#4c5970;font-style:normal;font-size:10px;letter-spacing:.06em;font-weight:800;background:#e0e5ee;border-radius:9px;padding:4px 8px}
.dashboard .main-column .badge-card #badges .unlocked .badge-state{color:#225f50;background:#d8eee1}
#badgePages{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:22px;flex-wrap:wrap}#badgePages>span{font-size:13px;color:#47516c}#badgePages button:disabled{opacity:.45;cursor:default}
#adventureDialog .achievement-grid article{background:#eef1f7;border:1px solid #c6cddd;opacity:1;filter:none;color:#344260}
#adventureDialog .achievement-grid article.earned{background:linear-gradient(145deg,#fffdf1,#f7ebc6);border-color:#caa65e}
#adventureDialog .achievement-grid h3{color:#293654;font-size:19px;text-shadow:none}#adventureDialog .achievement-grid p{color:#495570;font-size:14px;line-height:1.5}
/* Localised explanation stays with its word, without leaving the library. */
.synonym-zh-toggle{display:inline-flex;align-items:center;gap:6px;background:#f0eafa;border:1px solid #c9bade;color:#56327f;border-radius:10px;font-weight:800;font-size:14px;padding:9px 12px;min-height:42px;margin:10px 0 4px}
.synonym-zh-toggle[aria-expanded=true]{background:#654295;color:#fff;border-color:#654295}
.synonym-word-card .synonym-zh{border:1px solid #cbbbe6;border-left:4px solid #8963b6;border-radius:12px;background:#f6f0ff;padding:15px;margin:9px 0 14px;color:#342f4e}
.synonym-word-card .synonym-zh[hidden]{display:none}
.synonym-zh>b{font-size:15px;color:#553d7b}.synonym-zh>p{font-size:18px;line-height:1.65;margin:8px 0;color:#263453;font-weight:600}.synonym-zh>small{font-size:12px;line-height:1.5;color:#5e536f}
/* Adventure-map realm cards, with visible progress and themed icon plinths. */
#synonymDialog .synonym-map-panel{background:linear-gradient(165deg,#f4f0ff,#edf7fa 60%,#fff5df);padding:22px 16px;border-right:1px solid #cbd1e3}
#synonymDialog .synonym-map-head{padding:8px 8px 20px}
#synonymDialog .synonym-map-head h3{font-family:var(--quest-display);font-weight:400;font-size:32px;color:#3f326e;letter-spacing:.02em;text-shadow:0 2px #fff}
#synonymDialog .synonym-map-head p{color:#72588c;letter-spacing:.14em}
#synonymDialog .synonym-map-head>span{font-size:15px;color:#56617c}
#synonymDialog .synonym-realm{--realm-accent:#7353bd;position:relative;isolation:isolate;display:grid;grid-template-columns:70px minmax(0,1fr) 14px;gap:13px;align-items:center;min-height:128px;margin:0 0 14px;padding:15px 12px;background:linear-gradient(130deg,#fffdf7,#f6f2ff);border:1px solid #cfc5e4;border-radius:20px;box-shadow:0 4px 0 #d6cee5;overflow:hidden;color:#343653}
#synonymDialog .synonym-realm:before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:var(--realm-accent);z-index:-1}
#synonymDialog .synonym-realm>span{width:70px;height:80px;display:grid;place-items:center;background:radial-gradient(circle,#fff,#e9e1f9);border:1px solid #e0c58e;border-radius:18px;box-shadow:0 4px 0 #cec0de;transform:rotate(-4deg)}
#synonymDialog .synonym-realm>span img{width:69px;height:69px;filter:drop-shadow(0 4px 3px #5c47752a);transform:rotate(4deg)}
#synonymDialog .synonym-realm>div{min-width:0}
#synonymDialog .synonym-realm b{font-family:var(--quest-display);font-size:21px;line-height:1.2;font-weight:400;letter-spacing:.02em;white-space:normal;color:#3b3764}
#synonymDialog .synonym-realm small{font-size:12px;color:#55627b;line-height:1.4;margin-top:5px;display:block}
.realm-progress-label{display:block;font-size:11px;line-height:1.4;font-weight:800;margin-top:6px;color:#655082}
.realm-progress-track{display:block;height:5px;background:#e3dfed;border-radius:5px;margin-top:5px;overflow:hidden;width:100%}.realm-progress-track>i{height:100%;display:block;border-radius:5px;background:var(--realm-accent)}
#synonymDialog .synonym-realm>i{font-size:21px;color:#856da0}
#synonymDialog .synonym-realm.active{background:linear-gradient(125deg,#554199,#8261ba);border-color:#c6abe9;box-shadow:0 4px 0 #473077,0 8px 18px #60459e26}
#synonymDialog .synonym-realm.active b,#synonymDialog .synonym-realm.active small,#synonymDialog .synonym-realm.active .realm-progress-label{color:#fff}
#synonymDialog .synonym-realm.active>i{color:#ffe6a3}
#synonymDialog .synonym-realm.active .realm-progress-track{background:#fff3}
#synonymDialog .synonym-realm.active .realm-progress-track>i{background:#ffe3a0}
#synonymDialog .synonym-realm:hover{transform:translateY(-2px);border-color:#a993c9}
#synonymDialog .synonym-realm.all{min-height:110px;margin-bottom:20px}
@media(max-width:1350px){.dashboard .main-column .badge-card #badges{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.dashboard .main-column .badge-card #badges{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard .main-column .badge-card #badgeCollectionCount{align-items:flex-start;flex-direction:column}}
@media(max-width:550px){.dashboard .main-column .badge-card #badges{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard .main-column .badge-card #badges>.badge{padding:14px 9px;min-height:230px}.dashboard .main-column .badge-card #badges>.badge>small{font-size:15px}#badgePages{gap:10px}#synonymDialog .synonym-realm{grid-template-columns:64px minmax(0,1fr) 12px;gap:11px}#synonymDialog .synonym-realm>span{width:64px;height:74px}#synonymDialog .synonym-realm>span img{width:62px;height:62px}}
@media(prefers-reduced-motion:reduce){#synonymDialog .synonym-realm{transition:none}#synonymDialog .synonym-realm:hover{transform:none}}
