/* Cabinet: the roster of heroes and the two deeds (promo code, friends) in the main column; the premium seal and the password on the right. Form controls come from hall-register.css. */
.cab-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px 32px}
.cab-h .page-h p b{font-weight:600}
.cab{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:clamp(20px,3vw,36px);align-items:start;margin-top:clamp(28px,4vw,44px)}
.cab-main,.cab-side{display:grid;gap:clamp(20px,3vw,32px);min-width:0}
.roster,.deed{padding:clamp(24px,3.2vw,38px)}
.roster h2,.deed h2,.seal-card h2{font-size:clamp(28px,2.6vw,36px);color:#eceff1;text-shadow:0 2px 12px #000}

.flash{display:flex;gap:12px;align-items:center;margin-top:26px;padding:14px 18px;font-size:15px;line-height:1.45}
.flash svg{width:20px;height:20px;flex:none}
.flash-ok{background:#0e2821eb;box-shadow:inset 0 0 0 1px #3ddba059,0 18px 30px -22px #000;color:#c9f4e2}
.flash-bad{background:#33191aeb;box-shadow:inset 0 0 0 1px #ff7a665c,0 18px 30px -22px #000;color:#ffc4ba}

.heroes,.friends{list-style:none;margin:18px 0 0;padding:0;border-top:1px solid #e0b35a2e}
.hero-row{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:6px 20px;align-items:center;padding:14px 0;border-bottom:1px solid #e0b35a2e}
.lvl{display:grid;justify-items:center;gap:4px}
.lvl b{font:400 42px/.86 var(--f-carve)}
.lvl small{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#aeb6ba}
.who{min-width:0}
.who b{display:block;font:400 26px/1.1 var(--f-carve);color:#eef1f2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.who small{display:block;margin-top:2px;font-size:14px;color:#b9c1c5}
.st{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:#aeb6ba;white-space:nowrap}
.st i{width:8px;height:8px;flex:none;transform:rotate(45deg);background:#565e61}
.st.on{color:#8ff0c8}
.st.on i{background:var(--rune)}
.quiet{margin-top:16px;font-size:15px;color:#b3bbbf}

.deed-h{display:grid;gap:10px;max-width:64ch}
.deed-h p{font-size:15px;color:#c3cacd}
.deed-h b{color:#eef1f2;font-weight:600}
.deed-f{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto;gap:14px;align-items:end;margin-top:22px}
.deed-f .plate,.link-row .plate{min-height:50px}
#promoCode{text-transform:uppercase;letter-spacing:.06em}
#promoCode::placeholder{text-transform:none;letter-spacing:0;color:#6d7477}
.sel{position:relative}
.sel select{appearance:none;width:100%;height:50px;padding:0 42px 0 14px;border:0;border-radius:2px;background:#070a0b;color:#f0f2f3;font:500 16px var(--f-text);box-shadow:inset 0 0 0 1px #3a3f41,inset 0 2px 6px #000a;cursor:pointer;transition:box-shadow .2s;text-overflow:ellipsis}
.sel select:hover{box-shadow:inset 0 0 0 1px #5a5f61,inset 0 2px 6px #000a}
.sel select:focus{outline:0;box-shadow:inset 0 0 0 1px var(--gold),0 0 0 3px #e0b35a2e,inset 0 2px 6px #000a}
.sel::after{content:"";position:absolute;right:17px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:rotate(45deg);pointer-events:none}
.sel option{background:#0c1011;color:#f0f2f3}

.link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:22px}
.ref{width:100%;height:50px;padding:0 14px;border:0;border-radius:2px;background:#070a0b;color:var(--gold-hi);font:500 16px var(--f-text);box-shadow:inset 0 0 0 1px #5a4a2c,inset 0 2px 6px #000a;text-overflow:ellipsis}
.ref:focus{outline:0;box-shadow:inset 0 0 0 1px var(--gold),0 0 0 3px #e0b35a2e,inset 0 2px 6px #000a}
.friend{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 20px;align-items:center;padding:14px 0;border-bottom:1px solid #e0b35a2e}
.friend .who b{font-size:22px;letter-spacing:.04em}
.claim{display:flex;gap:10px;align-items:center}
.claim .sel select{height:42px;min-width:150px;font-size:15px}
.claim .plate{min-height:42px;padding:0 18px;font-size:15px}

.seal-card{padding:34px 28px 30px;display:grid;justify-items:center;text-align:center;gap:10px}
.seal-card .seal{width:112px;height:112px;margin-bottom:4px;filter:drop-shadow(0 12px 14px #000c)}
.seal-card:not(.is-on) .seal{filter:grayscale(.35) brightness(.78) drop-shadow(0 12px 14px #000c)}
.seal-card:not(.is-on) h2{color:#c9cfd2}
.until{font-size:15px;color:#c8cfd3}
.until b{color:var(--gold-hi);font-weight:600}
.perks{list-style:none;margin:12px 0 0;padding:16px 0 0;width:100%;border-top:1px solid #e0b35a2e;display:grid;gap:10px;font-size:14px;color:#c3cacd}
.perks b{font:400 22px/1 var(--f-carve);margin-right:8px}
.seal-card:not(.is-on) .perks{opacity:.8}

.stack{display:grid;gap:16px;margin-top:18px}
.stack .plate{width:100%}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:1000px){.cab{grid-template-columns:minmax(0,1fr)}.cab-side{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){
  .cab-side{grid-template-columns:minmax(0,1fr)}
  .deed-f,.link-row{grid-template-columns:minmax(0,1fr)}
  .hero-row{grid-template-columns:56px minmax(0,1fr)}
  .hero-row .st{grid-column:2}
  .lvl b{font-size:36px}
  .friend{grid-template-columns:minmax(0,1fr)}
  .claim{flex-wrap:wrap}.claim .sel{flex:1 1 150px}
}
