/* Armory page styles — Realm Chronos
   Uses site-global tokens from styles.css.
   Only styles armory-specific blocks. */

.armory-container{
    max-width:1200px;
    margin:0 auto;
    padding:140px 24px 64px;  /* clears topbar + navbar */
}

.armory-search-section{
    text-align:center;
    margin-bottom:48px;
}
.armory-search-section h1{
    font-family:'Cinzel',serif;
    font-size:clamp(2.2rem, 5vw, 3.4rem);
    letter-spacing:4px;
    margin:0 0 8px;
    text-transform:uppercase;
    background:linear-gradient(180deg, #fff7e3 0%, var(--gold-bright) 50%, var(--gold) 100%);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
    filter:drop-shadow(0 4px 20px rgba(201,161,78,.3));
}
.armory-subtitle{
    color:var(--text-dim);
    margin:0 0 32px;
    font-size:1rem;
    letter-spacing:.5px;
}

.armory-search-box{
    display:flex;
    gap:8px;
    max-width:520px;
    margin:0 auto;
}
.armory-search-box input{
    flex:1;
    padding:14px 20px;
    background:var(--bg-glass);
    border:1px solid var(--line-strong);
    border-radius:var(--radius);
    color:var(--text);
    font-size:1rem;
    outline:none;
    transition:border-color var(--t);
}
.armory-search-box input:focus{border-color:var(--gold)}
.armory-search-box button{
    padding:14px 28px;
    background:linear-gradient(180deg, var(--gold-bright) 0%, var(--gold) 45%, var(--gold-2) 100%);
    color:#1a1409;
    border:1px solid var(--gold-deep);
    border-radius:var(--radius);
    font-family:'Cinzel',serif;
    font-weight:700;
    letter-spacing:1.5px;
    text-transform:uppercase;
    font-size:.85rem;
    cursor:pointer;
    transition:all var(--t);
    box-shadow:inset 0 1px 0 rgba(255,238,180,.5), 0 4px 12px rgba(201,161,78,.3);
}
.armory-search-box button:hover{
    transform:translateY(-1px);
    box-shadow:inset 0 1px 0 rgba(255,238,180,.6), 0 6px 18px rgba(201,161,78,.4);
}

.armory-search-results{
    max-width:600px;
    margin:16px auto 0;
    display:flex;flex-direction:column;gap:6px;
}
.search-result{
    display:flex;align-items:center;gap:12px;
    padding:11px 16px;
    background:var(--bg-glass);
    border:1px solid var(--line);
    border-radius:var(--radius);
    cursor:pointer;
    transition:all var(--t);
}
.search-result:hover{
    background:rgba(201,161,78,.06);
    border-color:var(--line-strong);
    transform:translateX(3px);
}
.search-result .level{font-weight:700;color:var(--gold-bright);min-width:28px;font-family:'Cinzel',serif}
.search-result .name{font-weight:600;flex:1}
.search-result .race-class{color:var(--text-dim);font-size:.88rem}
.search-result.alliance .name{color:var(--alliance-bright)}
.search-result.horde .name{color:var(--horde-bright)}
.online-dot{
    display:inline-block;width:8px;height:8px;border-radius:50%;
    background:var(--ok);box-shadow:0 0 6px var(--ok);
}

.armory-empty{text-align:center;color:var(--text-mute);margin-top:24px;font-style:italic}

/* Character card */
.armory-character{animation:fadeIn .3s}

.char-header{
    background:linear-gradient(135deg, var(--bg-glass) 0%, var(--bg-elev) 100%);
    border:1px solid var(--line-strong);
    border-radius:var(--radius-lg);
    padding:24px 32px;
    margin-bottom:32px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:24px;align-items:center;
    position:relative;
    overflow:hidden;
}
.char-header::before{
    content:"";position:absolute;top:0;left:0;right:0;height:2px;
    background:linear-gradient(90deg, transparent 0%, var(--gold) 50%, transparent 100%);
}
.char-header.alliance{border-color:rgba(126,181,237,.35)}
.char-header.alliance::before{background:linear-gradient(90deg, transparent 0%, var(--alliance) 50%, transparent 100%)}
.char-header.horde{border-color:rgba(217,85,85,.35)}
.char-header.horde::before{background:linear-gradient(90deg, transparent 0%, var(--horde) 50%, transparent 100%)}

.char-name{
    font-family:'Cinzel',serif;
    font-size:2.2rem;
    margin:0;
    letter-spacing:1.5px;
}
.char-header.alliance .char-name{color:var(--alliance-bright)}
.char-header.horde .char-name{color:var(--horde-bright)}

.char-meta{color:var(--text);margin-top:4px;font-size:.95rem}
.char-meta .lvl{color:var(--gold-bright);font-weight:700}
.char-meta .sep{color:var(--text-mute);margin:0 8px}

.char-faction-badge{
    padding:6px 14px;
    border-radius:var(--radius);
    font-family:'Cinzel',serif;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:1.5px;
    font-weight:700;
}
.char-header.alliance .char-faction-badge{background:rgba(90,143,199,.2);color:var(--alliance-bright);border:1px solid var(--alliance)}
.char-header.horde .char-faction-badge{background:rgba(177,58,58,.2);color:var(--horde-bright);border:1px solid var(--horde)}

.online-badge{
    padding:6px 14px;
    background:rgba(95,176,105,.18);
    color:var(--ok);
    border:1px solid var(--ok);
    border-radius:var(--radius);
    font-family:'Cinzel',serif;
    font-size:.78rem;font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
}

/* Char grid */
.char-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
@media (max-width:768px){.char-grid{grid-template-columns:1fr}}

.char-grid h2{
    font-family:'Cinzel',serif;
    font-size:1.2rem;
    margin:0 0 16px;
    color:var(--gold-bright);
    letter-spacing:2px;
    text-transform:uppercase;
    border-bottom:1px solid var(--line-strong);
    padding-bottom:10px;
    position:relative;
}
.char-grid h2::after{
    content:"";position:absolute;bottom:-1px;left:0;width:60px;height:1px;
    background:var(--gold);
}

/* Equipment grid */
.equip-grid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:8px;
}
.equip-slot{
    display:flex;align-items:center;gap:10px;
    padding:10px 12px;
    background:var(--bg-glass);
    border:1px solid var(--line);
    border-left:3px solid var(--text-mute);
    border-radius:var(--radius);
    transition:all var(--t);
}
.equip-slot.empty{opacity:.4}
.equip-slot.q1{border-left-color:var(--q-common)}
.equip-slot.q2{border-left-color:var(--q-uncommon)}
.equip-slot.q3{border-left-color:var(--q-rare)}
.equip-slot.q4{border-left-color:var(--q-epic)}
.equip-slot.q5{border-left-color:var(--q-legendary)}
.equip-slot.q6{border-left-color:var(--q-artifact)}
.equip-slot:hover{background:rgba(201,161,78,.06);border-color:var(--line-strong)}

.equip-slot .slot-label{
    font-size:.7rem;
    color:var(--text-mute);
    text-transform:uppercase;
    letter-spacing:1px;
}
.equip-slot .item-name{font-size:.92rem;font-weight:500;margin-top:2px}
.equip-slot .item-ilvl{font-size:.72rem;color:var(--gold);margin-left:6px;font-family:'Cinzel',serif;font-weight:700}
.equip-slot .item-enchant,
.equip-slot .item-gem{
    margin-left:4px;font-size:.85rem;text-decoration:none;
    opacity:.85;transition:all .15s;
}
.equip-slot .item-enchant:hover,
.equip-slot .item-gem:hover{opacity:1;transform:scale(1.15)}
.equip-slot.q1 .item-name{color:var(--q-common)}
.equip-slot.q2 .item-name{color:var(--q-uncommon)}
.equip-slot.q3 .item-name{color:var(--q-rare)}
.equip-slot.q4 .item-name{color:var(--q-epic)}
.equip-slot.q5 .item-name{color:var(--q-legendary)}
.equip-slot.q6 .item-name{color:var(--q-artifact)}
.equip-slot .empty-label{color:var(--text-mute);font-style:italic;font-size:.85rem}

.equip-slot a{color:inherit;text-decoration:none;flex:1}

/* Stats */
.stats-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px 16px;
    background:var(--bg-glass);
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    padding:18px 22px;
    margin-bottom:24px;
}
.stat-row{display:flex;justify-content:space-between;padding:4px 0}
.stat-row .label{color:var(--text-dim);font-size:.85rem}
.stat-row .value{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}
.stat-row.primary .value{color:var(--gold-bright);font-size:1.05rem;font-family:'Cinzel',serif}
.stat-row.heading{
    grid-column:1/-1;
    color:var(--gold);
    text-transform:uppercase;
    letter-spacing:1.5px;
    font-family:'Cinzel',serif;
    font-size:.72rem;
    border-top:1px solid var(--line);
    margin-top:8px;
    padding-top:12px;
    font-weight:700;
}
.stat-row.heading:first-of-type{border-top:none;margin-top:0;padding-top:0}

.extras-grid{
    background:var(--bg-glass);
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    padding:18px 22px;
}
.extras-row{display:flex;justify-content:space-between;padding:6px 0}
.extras-row .label{color:var(--text-dim);font-size:.85rem}
.extras-row .value{font-weight:600;font-variant-numeric:tabular-nums}

/* Money display already covered in styles.css */
