/* Shared world identities: frost, embers, and both worlds together. */
body[data-world="both"]{--realm-bg:#101218;--realm-panel:#1b1d27;--realm-line:#51515c;--realm-accent:#e4c391;--realm-bright:#f4ebe0;--realm-muted:#bac0cd;--realm-glow:#64729120;--realm-image:url('assets/sanctuary.png')}
body[data-world="human"]{--realm-bg:#0b131b;--realm-panel:#111e2a;--realm-line:#355267;--realm-accent:#a9d9f3;--realm-bright:#e2f3ff;--realm-muted:#a7bbc9;--realm-glow:#427fa22b;--realm-image:url('assets/human-world-clean.png')}
body[data-world="devil"]{--realm-bg:#180c0b;--realm-panel:#291411;--realm-line:#70412d;--realm-accent:#f1b475;--realm-bright:#ffe9d4;--realm-muted:#cbb3a3;--realm-glow:#b843192b;--realm-image:url('assets/devil-world-clean.png')}
.realm-theme,.realm-theme .armoury-page{--gold:var(--realm-accent);--panel:var(--realm-panel);--line:var(--realm-line);--bright:var(--realm-bright);--muted:var(--realm-muted);background:var(--realm-bg);color:var(--realm-bright)}
.realm-theme header,.realm-theme footer{background:var(--realm-bg);border-color:var(--realm-line)}
.realm-theme .armoury-page,.realm-theme .world-directory{background:radial-gradient(ellipse at 85% 15%,var(--realm-glow),transparent 65%),var(--realm-bg)}
.realm-theme .hero,.realm-theme .armoury-page .hero{padding:48px 0 44px;background:linear-gradient(90deg,var(--realm-bg) 2%,transparent 130%),linear-gradient(0deg,var(--realm-bg),transparent 95%),var(--realm-image) right 17%/cover;border-color:var(--realm-line)}
.realm-theme .hero:after{background:linear-gradient(0deg,var(--realm-bg),transparent)}
.realm-theme .hero h1{color:var(--realm-bright);text-shadow:0 3px 24px #000c}
.realm-theme .hero p{color:var(--realm-muted)}
.realm-theme .hero .eyebrow{color:var(--realm-accent)}
.realm-theme[data-world="both"] .hero{background:#101218}
.realm-theme[data-world="both"] .hero:before{content:'';position:absolute;inset:0 50% 0 0;z-index:-1;background:linear-gradient(90deg,#142135a8,#101218c9),linear-gradient(0deg,#101218,transparent),url('assets/human-world-clean.png') 30% 16%/cover}
.realm-theme[data-world="both"] .hero:after{inset:0 0 0 50%;background:linear-gradient(90deg,#101218d4,#39160659),linear-gradient(0deg,#101218,transparent),url('assets/devil-world-clean.png') 55% 25%/cover}
.realm-theme[data-world="both"] .armoury-page,.realm-theme[data-world="both"] .world-directory{background:radial-gradient(ellipse at 0 15%,#355e7b29,transparent 60%),radial-gradient(ellipse at 100% 30%,#95412029,transparent 60%),var(--realm-bg)}
.realm-theme[data-world="both"] .guide-card,.realm-theme[data-world="both"] .character-card{background:linear-gradient(110deg,#233c5047,#4329203b),var(--realm-panel)}
.realm-theme[data-world="both"] .armoury-table thead{background:linear-gradient(110deg,#263e55,#452b21)}
.realm-theme[data-world="both"] .armoury-table th{background:transparent}
.realm-theme .armoury-search.panel{background:linear-gradient(110deg,#1b3349,#302725 65%,#492b1e);color:var(--realm-bright);box-shadow:inset 0 1px #ffffff0d,0 8px 25px #0003}
.realm-theme .armoury-search h2{color:var(--realm-bright)}
.realm-theme .armoury-search .eyebrow,.realm-theme .armoury-search .meta{color:var(--realm-accent)}
.realm-theme .armoury-search .button{background:var(--realm-accent);color:var(--realm-bg);border-color:var(--realm-accent)}
.realm-theme .search-kinds button{background:#152332;color:#d7e0e9;border-color:#687282}
.realm-theme .search-kinds [aria-selected=true]{background:#e4c391;color:#281e11;border-color:#e4c391}
.realm-theme .guide-card,.realm-theme .armoury-page .panel,.realm-theme .character-card,.realm-theme .empty{background:linear-gradient(125deg,var(--realm-glow),transparent 85%),var(--realm-panel);border-color:var(--realm-line);box-shadow:inset 0 1px #ffffff07,0 8px 25px #0002}
.realm-theme .guide-card:hover,.realm-theme .character-card:hover{border-color:var(--realm-accent)}
.realm-theme .guide-card p,.realm-theme .guide-note,.realm-theme .character-card .meta{color:var(--realm-muted)}
.realm-theme .armoury-links,.realm-theme .world-tabs,.realm-theme .card-link,.realm-theme .recipe-card details,.realm-theme .recipe-hint{border-color:var(--realm-line)}
.realm-theme .armoury-links a[aria-current],.realm-theme .world-tabs a[aria-current],.realm-theme .character-rating strong,.realm-theme .recipe-card summary,.realm-theme .pos-cell,.realm-theme .rank-cell{color:var(--realm-accent)}
.realm-theme .armoury-table-wrap{border-color:var(--realm-line)}
.realm-theme .armoury-table{background:var(--realm-bg)}
.realm-theme .armoury-table th{background:var(--realm-panel);color:var(--realm-accent);border-color:var(--realm-line)}
.realm-theme .armoury-table td{border-color:var(--realm-line)}
.realm-theme .armoury-table tr:nth-child(even){background:var(--realm-glow)}
.realm-theme .armoury-table tr:hover{background:var(--realm-panel)}
.realm-theme .rank-medal{color:var(--realm-accent);border-color:var(--realm-accent);background:var(--realm-glow)}
.realm-theme .race-symbol{border-color:var(--realm-line);background:var(--realm-glow)}
.realm-theme main input,.realm-theme main select{background:var(--realm-bg);border-color:var(--realm-line);color:var(--realm-bright)}
.realm-theme .button.quiet,.realm-theme .button.outline{border-color:var(--realm-line);color:var(--realm-accent);background:var(--realm-panel)}
.realm-theme .feed-filter-chips a{background:var(--realm-panel);border-color:var(--realm-line);color:var(--realm-muted)}
.realm-theme .feed-filter-chips a[aria-current]{background:var(--realm-accent);color:var(--realm-bg)}
.realm-theme .world-feed li{background:var(--realm-panel);border-color:var(--realm-line)}
.realm-theme .world-feed p,.realm-theme .world-feed time{color:var(--realm-muted)}
.realm-theme .world-feed a{color:var(--realm-accent)}

/* Community: frost on the left, embers on the right, a clear reading surface between. */
.forum-theme{--bg:#0d1016;--panel:#141a23;--line:#303741;--muted:#a8b2c0;--bright:#f1ede5;--gold:#e7bd83;background:var(--bg)}
.forum-theme header{background:#0b1017;border-bottom:1px solid #39404c}
.forum-theme header:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,#72c7ee,transparent 48%,#e27a45);pointer-events:none}
.forum-theme main{background:radial-gradient(ellipse at 0 20%,#345c7821,transparent 52%),radial-gradient(ellipse at 100% 32%,#a13e1922,transparent 54%),#0d1016}
.forum-theme footer{background:#0b1017;border-color:#313841}
.forum-theme .button:not(.outline):not(.quiet){background:linear-gradient(115deg,#efcea0,#d79c60);border:1px solid #f6d7a6;color:#271a12;box-shadow:0 4px 20px #0003;font-weight:700}
.forum-theme .button:hover{filter:brightness(1.1)}
.forum-theme input,.forum-theme textarea,.forum-theme select{background:#0e141d;border-color:#3b4654;color:#e8edf4}
.forum-theme input::placeholder,.forum-theme textarea::placeholder{color:#8493a5}
.forum-theme :focus-visible{outline:2px solid #b4dcf1;outline-offset:4px}
.forum-hero{position:relative;isolation:isolate;overflow:hidden;min-height:250px;background:#0c121a;border-bottom:1px solid #5d4a3e}
.forum-world-art{position:absolute;inset:0;z-index:-2;background-repeat:no-repeat;pointer-events:none}
.forum-hero .human-art{right:50%;background-image:linear-gradient(90deg,#0d152235,#0d10167a),url('assets/human-world-clean.png');background-position:center,28% 29%;background-size:cover;mask-image:linear-gradient(90deg,#000 65%,transparent)}
.forum-hero .devil-art{left:50%;background-image:linear-gradient(90deg,#0d101673,#130a0625),url('assets/devil-world-clean.png');background-position:center,55% 38%;background-size:cover;mask-image:linear-gradient(270deg,#000 65%,transparent)}
.forum-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0d1016 0,transparent 65%),linear-gradient(90deg,transparent,#0d1016e6 39%,#0d1016dd 60%,transparent);pointer-events:none}
.forum-hero:after{content:'';position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,#83cff8,transparent 46%,transparent 54%,#f88747);opacity:.65}
.forum-hero-inner{padding:40px 0 28px;position:relative;text-align:center}
.forum-hero .eyebrow{font-size:9px;letter-spacing:3.2px;color:#e9c798;margin-bottom:18px}
.forum-hero h1{font:500 clamp(28px,3.5vw,45px)/1.25 Cinzel,Georgia,serif;max-width:850px;margin:0 auto;text-shadow:0 3px 25px #000;overflow-wrap:anywhere}
.forum-hero p{font-size:14px;line-height:1.8;color:#c7cbd1;max-width:440px;margin:18px auto 0;text-wrap:pretty}
.forum-hero .actions{justify-content:center;margin-top:25px}
.forum-hero .crumb{text-align:left;font-size:11px;color:#a9b5c7;margin-bottom:28px}
.forum-hero-home .forum-hero-inner{padding-top:52px;padding-bottom:26px}
.forum-hero-home h1{font-size:clamp(34px,4.6vw,58px);line-height:1.14;letter-spacing:-1.8px}
.forum-hero-home h1 span{display:block}
.forum-hero-home h1 span:first-child{color:#d2edff}
.forum-hero-home h1 span:last-child{color:#f4cf9e}
.forum-world-signature{display:flex;justify-content:space-between;align-items:center;margin-top:35px;font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#bce5ff}
.forum-world-signature span:last-child{color:#f2ae78}
.forum-world-signature i{font-style:normal;font-size:9px;margin:0 12px;opacity:.8}
.forum-world-signature b{font:9px Cinzel,serif;letter-spacing:5px;color:#a9957b;position:relative}
.forum-world-signature b:before,.forum-world-signature b:after{content:'';position:absolute;top:50%;height:1px;width:50px;background:#6e63523d}
.forum-world-signature b:before{right:calc(100% + 20px)}.forum-world-signature b:after{left:calc(100% + 15px)}
.forum-theme .layout{grid-template-columns:minmax(0,1fr) 280px;gap:30px;padding-top:34px}
.forum-theme .layout>section{min-width:0}
.forum-theme .section-head h2{font-size:23px;letter-spacing:-.3px}
.forum-theme .section-head .meta{font-size:10px}
.forum-theme .categories{gap:13px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:38px}
.forum-theme .category{--category-accent:#98cce8;--category-shade:#203446;position:relative;min-width:0;display:flex;gap:15px;align-items:flex-start;padding:21px 20px;border:1px solid #354656;background:linear-gradient(120deg,#21364a60,transparent 80%),#141b25;box-shadow:0 5px 20px #0002}
.forum-theme .category-ember{--category-accent:#e9ac7e;--category-shade:#47291f;border-color:#593c2f;background:linear-gradient(120deg,#5c2e1f45,transparent 80%),#1d191b}
.forum-theme .category:before{content:'';position:absolute;inset:16px auto 16px -1px;width:2px;background:var(--category-accent);opacity:.6}
.forum-theme .category:hover{border-color:var(--category-accent);box-shadow:0 5px 24px #0004}
.forum-theme .category .icon{width:37px;height:41px;flex-shrink:0;background:linear-gradient(150deg,var(--category-shade),transparent);border:1px solid var(--category-accent);color:var(--category-accent);font-size:23px;display:grid;place-items:center;clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%)}
.forum-theme .category>div{min-width:0;flex:1}
.forum-theme .category h3{color:#f1e9df;font-size:16px;font-weight:500}
.forum-theme .category p{color:#b0b5c0;font-size:12px;line-height:1.65;margin:7px 0 13px}
.forum-theme .category small{font-size:10px;color:var(--category-accent);display:flex;align-items:center;justify-content:space-between;gap:8px}
.forum-theme .category small span{font-size:17px}
.forum-theme .search{gap:9px;margin-bottom:18px}
.forum-theme .search input{min-width:0;box-shadow:inset 0 2px 5px #0003}
.forum-theme .search .button{border-color:#4e5d70;background:#202a37;color:#dce5ef}
.forum-theme .topic-list{border:0;display:grid;gap:9px}
.forum-theme .topic{padding:18px;border:1px solid #333b47;background:linear-gradient(115deg,#19232ec9,#1b1b23);border-radius:2px;gap:17px}
.forum-theme .topic:has(.topic-title:hover){border-color:#8299ae;background:#1c2835}
.forum-theme .topic-pinned{border-color:#80604075;background:linear-gradient(110deg,#2b241d,#1a1e28)}
.forum-theme .topic-mark{color:#a1bed6;font-size:24px;width:25px;flex-shrink:0}
.forum-theme .topic-pinned .topic-mark{color:#e7bd83}
.forum-theme .topic-title{font-size:15px;font-weight:600;color:#e7e7ec;line-height:1.5}
.forum-theme .topic .meta{font-size:10px;margin-top:7px;color:#a4b1c0}
.forum-theme .topic-count{display:grid;gap:1px;text-align:center;min-width:44px;color:#a2b2c3;font-size:10px}
.forum-theme .topic-count strong{font-size:20px;font-weight:400;color:#dfc29d}
.forum-theme .panel,.forum-theme .composer,.forum-theme .empty{background:linear-gradient(130deg,#22304730,transparent 70%),#141a23;border:1px solid #35404e;box-shadow:0 8px 24px #0002}
.forum-sidebar .panel{padding:25px}
.forum-sidebar .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:14px}
.forum-sidebar h3{font-size:23px;line-height:1.35}
.forum-sidebar p{font-size:12px;line-height:1.9;color:#b4bdc9}
.forum-sidebar .forum-welcome{border-top:2px solid #d4b082}
.forum-welcome .button{margin:21px 0 12px;width:100%;justify-content:center}
.forum-welcome>.meta{font-size:9px;text-align:center;display:block;line-height:1.6}
.forum-realm-links{display:grid;margin:20px 0;gap:10px}
.forum-realm-links a{position:relative;display:flex;justify-content:center;flex-direction:column;min-height:112px;padding:18px;border:1px solid #41637a;background:linear-gradient(90deg,#0a1826f2,#0a182666),url('assets/human-world-clean.png') center 32%/cover}
.forum-realm-links .forum-realm-devil{border-color:#6b432c;background:linear-gradient(90deg,#281007f2,#28100777),url('assets/devil-world-clean.png') center 35%/cover}
.forum-realm-links small{font-size:8px;text-transform:uppercase;letter-spacing:2px;color:#bce5ff;margin-bottom:9px}
.forum-realm-devil small{color:#f2ae78}
.forum-realm-links strong{font:15px Cinzel,Georgia,serif;font-weight:500;max-width:170px;color:#efebe2}
.forum-realm-links a>span{position:absolute;right:16px;bottom:18px;color:#dcc8aa}
.forum-realm-links a:hover{border-color:#dcc8aa}
.forum-sidebar .forum-code{background:linear-gradient(145deg,#1f2e4038,#49231526),#131922}
.forum-code h3{font-size:18px}
.forum-code p{margin:13px 0 20px}
.forum-code>a{border-top:1px solid #384352;padding-top:17px;display:flex;justify-content:space-between;color:#d6b386;font-size:11px}
.forum-theme .post{border-color:#3b4654;background:#151c26;box-shadow:0 8px 24px #0002}
.forum-theme .post-author{background:linear-gradient(160deg,#263c5044,#58301c25),#111823;border-color:#3b4654}
.forum-theme .post-body{padding:28px}
.forum-theme .post-content{color:#dae0e9;line-height:1.85}
.forum-theme .post-tools{border-top:1px solid #33425370;padding-top:16px}
.forum-theme .composer{border-top:2px solid #ac9676;padding:28px}
.forum-theme .composer h2{color:#e4c7a1}
.forum-theme .composer label{font-size:12px;color:#c5cfdd}
.forum-theme .composer .meta{color:#aab6c6}
.forum-theme .staff-tools{margin-top:0;background:#201c17;border-color:#7f623944}
.forum-theme .badge{background:#a67c3020;color:#e2c292;border-color:#8b694e75}

@media(max-width:1050px){
  .forum-theme .layout{grid-template-columns:minmax(0,1fr) 250px;gap:22px}
  .forum-theme .category{padding:18px 15px;gap:12px}
  .forum-theme .category .icon{width:29px;height:35px;font-size:19px}
  .forum-theme .category h3{font-size:15px}
  .forum-sidebar .panel{padding:21px}
}
@media(max-width:760px){
  .realm-theme .hero,.realm-theme .armoury-page .hero{padding:34px 0;background-position:center,center,68% 22%}
  .forum-hero-home .forum-hero-inner{padding-top:36px;padding-bottom:19px}
  .forum-hero-inner{padding:28px 0 20px}
  .forum-hero .eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:16px}
  .forum-hero-home h1{font-size:39px;letter-spacing:-1.2px}
  .forum-hero p{font-size:12px;max-width:300px;margin-top:17px}
  .forum-hero .human-art{right:42%;background-position:center,23% 24%}
  .forum-hero .devil-art{left:42%;background-position:center,58% 32%}
  .forum-hero:before{background:linear-gradient(0deg,#0d1016,transparent 110%),linear-gradient(90deg,#0d101638,#0d1016a6 45%,#0d101638)}
  .forum-hero .actions{margin-top:23px}
  .forum-world-signature{font-size:8px;letter-spacing:2px;margin-top:30px}
  .forum-world-signature i{margin:0 5px;font-size:7px}
  .forum-world-signature b{font-size:7px;letter-spacing:3px}
  .forum-world-signature b:before,.forum-world-signature b:after{display:none}
  .forum-theme .layout{display:flex;gap:30px;padding-top:27px}
  .forum-theme .categories{grid-template-columns:1fr;gap:10px;margin-bottom:29px}
  .forum-theme .category{flex-direction:row;padding:19px;gap:16px}
  .forum-theme .category .icon{width:36px;height:41px;font-size:23px}
  .forum-theme .category h3{font-size:17px}
  .forum-theme .category p{font-size:12px;margin:6px 0 10px}
  .forum-theme .section-head h2{font-size:21px}
  .forum-theme .section-head>.meta{max-width:100px;font-size:9px}
  .forum-theme .topic{padding:15px 12px;gap:10px}
  .forum-theme .topic-title{font-size:14px}
  .forum-theme .topic-mark{width:17px;font-size:20px}
  .forum-theme .topic-count{min-width:34px}
  .forum-theme .topic-count strong{font-size:17px}
  .forum-theme .layout>.forum-sidebar{display:grid;gap:18px}
  .forum-realm-links{margin:0;grid-template-columns:1fr 1fr;gap:10px}
  .forum-realm-links a{padding:17px 13px;min-height:136px}
  .forum-realm-links small{font-size:7px;letter-spacing:1px}
  .forum-realm-links strong{font-size:15px}
  .forum-theme .post-body,.forum-theme .composer{padding:21px}
  .forum-theme .post-author{border-bottom:1px solid #3b4654}
  .forum-theme .composer .actions{flex-direction:column}
  .forum-theme .composer .actions .button{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:no-preference){
  .forum-theme .category,.forum-realm-links a,.forum-theme .topic{transition:border-color .18s,background .18s,box-shadow .18s}
}

/* Account entry and confirmation share the community's Both Worlds artwork. */
.login-scene{position:relative;isolation:isolate;overflow:hidden;background:#0b1018;min-height:calc(100vh - 90px);padding:48px 24px 40px}
.login-scene .forum-world-art{bottom:-24%}
.login-scene .human-art{right:50%;background:linear-gradient(90deg,#0b15263b,#0b1018de),url('assets/human-world-clean.png') 28% top/cover}
.login-scene .devil-art{left:50%;background:linear-gradient(90deg,#0b1018de,#28100642),url('assets/devil-world-clean.png') 56% top/cover}
.login-scene:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0b1018,transparent 65%);pointer-events:none}
.auth-wrap{max-width:480px;margin:auto}
.auth-card{position:relative;padding:29px 38px 26px;border:1px solid #7d858f;background:linear-gradient(135deg,#17283bec,#1b1921f5 50%,#2d1b16ef);box-shadow:-16px 0 65px #6388b326,16px 0 65px #bb582522,0 20px 60px #0008;text-align:center}
.auth-card:before{content:'';position:absolute;inset:-1px -1px auto;height:2px;background:linear-gradient(90deg,#b7e6ff,#c4d3e4 40%,#e9c691 60%,#ee783c)}
.auth-crest{font:37px/1 Georgia,serif;color:#d4e9ff;text-shadow:-6px 0 18px #7bc5f8,6px 0 18px #ff9a64;margin-bottom:13px}
.auth-card .eyebrow{font-size:8px;letter-spacing:2.8px;color:#dbbe99;margin-bottom:13px}
.auth-card h1{font:500 34px/1.2 Cinzel,Georgia,serif;color:#f7eddf;margin:0}
.auth-card .auth-intro{font-size:12px;line-height:1.8;color:#c0c8d5;margin:16px 0 25px}
.auth-card label{display:block;text-align:left;color:#dde5ef;font-size:12px;margin:19px 0}
.auth-card input{display:block;width:100%;margin-top:8px;min-height:46px;background:#0c1420eb;border:1px solid #536477;color:#f0f2f7;border-radius:0}
.auth-card input:focus{border-color:#a9d8f5}
.auth-card label small{font-size:10px;display:block;margin-top:7px;color:#b3becc;line-height:1.5;font-weight:400}
.auth-card .button{width:100%;display:flex;justify-content:center;gap:22px;min-height:45px}
.auth-card .button:not(.outline){border:1px solid #f0ce9a;background:linear-gradient(110deg,#efcfa3,#d9985c);color:#23180f;font-weight:700}
.auth-card .button.outline{background:#111d2b;border-color:#556778;color:#c7e3f5}
.auth-card .button:disabled{cursor:wait;opacity:.7}
.auth-card .form-error{text-align:left;line-height:1.6;font-size:12px}
.auth-card .auth-private{color:#acb8c9;font-size:10px;line-height:1.7;margin:22px 0 0}
.auth-worlds{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;font-size:8px;text-transform:uppercase;letter-spacing:1.4px;color:#b2d9f1}
.auth-worlds span:last-child{color:#eaaa79}.auth-worlds b{font:10px Cinzel,Georgia,serif;letter-spacing:0;color:#cfc2b2}
.auth-success{padding-top:38px}
.auth-success-mark{border:1px solid #9ecbcd;color:#c7eff0;box-shadow:0 0 34px #669dbc29;background:#152c36;width:55px;height:55px;display:grid;place-items:center;margin:0 auto 25px;border-radius:50%;font-size:29px}
.auth-success .eyebrow{color:#c0e2df}
.auth-success-actions{display:grid;gap:11px}
.auth-characters{margin-top:25px;border-top:1px solid #ffffff1e;padding-top:22px;text-align:left}
.auth-characters>.eyebrow{display:block}
.auth-characters a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid #ffffff15;color:#e3d5c0;font-size:13px;overflow-wrap:anywhere}
.auth-characters small{font-size:9px;color:#afc2d4;white-space:nowrap}
.auth-characters a:hover{color:#bfe4f9}
.auth-success h1:focus{outline:0}

/* Website-only badges; actual equipped character renders are unchanged. */
.player-symbols{gap:10px}
.race-symbol{width:42px;height:45px;object-fit:contain;border-color:#7e716166;background:linear-gradient(135deg,#4b627b40,#4e2e1840);border-radius:3px}
.class-badge{position:relative;display:inline-grid;place-items:center;width:42px;height:45px;flex-shrink:0;border:1px solid #426783;background:radial-gradient(ellipse,#3255726b,#101b29);border-radius:3px;color:#acd6f2;cursor:help;outline-offset:3px}
.class-badge.devil-class{border-color:#865437;background:radial-gradient(ellipse,#944f2863,#26120d);color:#f0b774}
.class-badge>img{width:100%;height:100%;object-fit:contain}
.class-badge>span{font:24px Georgia,serif}
.class-badge:after{content:attr(data-label);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);z-index:5;visibility:hidden;width:max-content;max-width:210px;padding:9px 12px;background:#0c121a;border:1px solid #889aad;color:#eff0f2;font:11px/1.5 'DM Sans',sans-serif;box-shadow:0 5px 16px #0009;pointer-events:none;white-space:normal;text-align:center}
.class-badge:hover:after,.class-badge:focus:after{visibility:visible}
.class-badge:focus-visible{outline:2px solid #e8c99a}
@media(max-width:760px){
  .login-scene{padding:29px 18px 32px;min-height:calc(100vh - 110px)}
  .login-scene .human-art{background-position:24% top}
  .login-scene .devil-art{background-position:60% top}
  .auth-card{padding:28px 23px 25px}
  .auth-card h1{font-size:30px}
  .auth-card .auth-intro{font-size:12px;margin-bottom:23px}
  .auth-card .eyebrow{font-size:8px;letter-spacing:2px}
  .auth-worlds{gap:8px;font-size:7px;letter-spacing:1px}
  .auth-worlds b{font-size:9px}
  .auth-characters a{font-size:12px}
  .race-symbol,.class-badge{width:37px;height:40px}
}

/* Crafting and combat records share each realm's existing palette. */
.craft-filter-label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;color:var(--muted,#a7b0ae)}
.craft-filters{align-items:end;flex-wrap:wrap}.craft-filters input{min-width:150px}.craft-filters select{min-width:150px}
.material-uses{list-style:none;margin:18px 0 0;padding:0}.material-uses li{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #a9804d33}.material-uses img{width:44px;height:44px;object-fit:contain}.material-uses small{display:block;font-size:.75rem;color:var(--muted,#a7b0ae);margin-top:5px}.material-uses strong{margin-left:auto;white-space:nowrap}
.combat-totals{margin-top:20px}.combat-totals .meta{line-height:1.6}.honours-table td{white-space:nowrap}.event-badge.world-boss{background:#713378;color:#fff}
@media(max-width:650px){.craft-filters>*{flex:1 1 100%}.craft-filter-label select{width:100%}}

.guide-filters .craft-filter-label{margin:0}.guide-filters .craft-filter-label select,.guide-filters .craft-filter-label input{margin:0}.guide-grid>.panel.recipe-card{margin-top:0}

.auth-recovery-links{display:flex;justify-content:center;flex-wrap:wrap;gap:7px 18px;margin-top:20px;font-size:11px;color:#c8d8e7}.auth-recovery-links a{text-decoration:underline;text-underline-offset:3px}.auth-card #recovery-result:not(:empty){padding:12px;border:1px solid #6b7f84;background:#13232a;color:#d9e5dd}
