/* ═══════════════════════════════════════════════════════
   theme-sheikah.css  —  Breath of the Wild / Sheikah Slate
   ═══════════════════════════════════════════════════════ */

@font-face {
    font-family: 'Calamity';
    src: url('../fonts/Calamity-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

@font-face {
    font-family: 'WildBreath';
    src: url('../fonts/The Wild Breath of Zelda.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

:root {
    --sheikah-cyan:     #00e5ff;
    --sheikah-bg:       rgba(6, 12, 22, 0.90);
    --sheikah-border:   rgba(0, 229, 255, 0.22);
    --sheikah-glow:     rgba(0, 229, 255, 0.10);
    --sheikah-muted:    rgba(0, 229, 255, 0.38);
}

.theme-sheikah {
    font-family: 'Calamity', sans-serif;
}

/* ── header ─────────────────────────────────────────── */
.theme-sheikah #header {
    background: var(--sheikah-bg);
    border: 1px solid var(--sheikah-border);
    border-left: 2px solid var(--sheikah-cyan);
    border-radius: 3px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 0 24px rgba(0, 229, 255, 0.07);
}

.theme-sheikah #header .title {
    font-family: 'WildBreath', 'Calamity', sans-serif;
    font-size: 14px;
    color: var(--sheikah-cyan);
    text-shadow: 0 0 12px rgba(0, 229, 255, 0.55), var(--outline);
    letter-spacing: 0.14em;
}

.theme-sheikah #header .game-label {
    color: var(--sheikah-muted);
    font-size: 10px;
    letter-spacing: 0.06em;
    text-shadow: var(--outline);
}

/* ── feed ────────────────────────────────────────────── */
.theme-sheikah #feed { gap: 4px; }

/* ── entry cards ─────────────────────────────────────── */
.theme-sheikah .entry {
    background: var(--sheikah-bg);
    border: 1px solid var(--sheikah-border);
    border-left: 2px solid transparent;
    border-radius: 3px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    padding: 5px 10px;
    position: relative;
    overflow: hidden;
    animation: sheikahIn 0.28s cubic-bezier(0.22, 1, 0.36, 1) both;
}

/* left accent by type */
.theme-sheikah .entry.prog   { border-left-color: var(--prog); }
.theme-sheikah .entry.useful { border-left-color: var(--useful); }
.theme-sheikah .entry.trap   { border-left-color: var(--trap); }
.theme-sheikah .entry.normal { border-left-color: var(--sheikah-cyan); }

/* scanning line that sweeps across on entry */
.theme-sheikah .entry::before {
    content: '';
    position: absolute;
    top: 0; left: -100%;
    width: 60%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.06), transparent);
    animation: sheikahScan 0.5s ease-out both;
    pointer-events: none;
}

/* flash glow by type */
.theme-sheikah .entry::after {
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0;
    animation: sheikahFlash 0.55s ease-out both;
    pointer-events: none;
}

.theme-sheikah .entry.prog::after   { background: rgba(245, 197, 66, 0.10); }
.theme-sheikah .entry.useful::after { background: rgba(74, 222, 128, 0.07); }
.theme-sheikah .entry.trap::after   { background: rgba(248, 113, 113, 0.10); }
.theme-sheikah .entry.normal::after { background: var(--sheikah-glow); }

/* ── item name ───────────────────────────────────────── */
.theme-sheikah .s-name {
    font-family: 'Calamity', sans-serif;
    font-size: 15px;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    gap: 6px;
}

.theme-sheikah .entry.prog   .s-name { color: var(--prog);          text-shadow: 0 0 10px rgba(245,197,66,0.35),   var(--outline); }
.theme-sheikah .entry.useful .s-name { color: var(--useful);        text-shadow: 0 0 10px rgba(74,222,128,0.3),    var(--outline); }
.theme-sheikah .entry.trap   .s-name { color: var(--trap);          text-shadow: 0 0 10px rgba(248,113,113,0.35),  var(--outline); }
.theme-sheikah .entry.normal .s-name { color: var(--sheikah-cyan);  text-shadow: 0 0 10px rgba(0,229,255,0.3),     var(--outline); }

/* ── badge ───────────────────────────────────────────── */
.theme-sheikah .s-badge {
    font-family: 'Calamity', sans-serif;
    font-size: 9px;
    padding: 1px 5px;
    border-radius: 2px;
    flex-shrink: 0;
    letter-spacing: 0.1em;
    text-shadow: none;
}

.theme-sheikah .entry.prog   .s-badge { background: rgba(245,197,66,0.14);  color: var(--prog);          border: 1px solid rgba(245,197,66,0.32); }
.theme-sheikah .entry.useful .s-badge { background: rgba(74,222,128,0.11);  color: var(--useful);        border: 1px solid rgba(74,222,128,0.28); }
.theme-sheikah .entry.trap   .s-badge { background: rgba(248,113,113,0.14); color: var(--trap);          border: 1px solid rgba(248,113,113,0.3); }
.theme-sheikah .entry.normal .s-badge { background: rgba(0,229,255,0.09);   color: var(--sheikah-cyan);  border: 1px solid rgba(0,229,255,0.22); }

/* ── meta row ────────────────────────────────────────── */
.theme-sheikah .s-meta {
    font-size: 11px;
    margin-top: 1px;
    color: rgba(148, 163, 184, 0.65);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-shadow: var(--outline);
    line-height: 1.3;
}

.theme-sheikah .slot-name {
    text-shadow: var(--outline);
}

.theme-sheikah .s-sep {
    color: var(--sheikah-muted);
    margin: 0 3px;
}

/* ── animations ──────────────────────────────────────── */
@keyframes sheikahScan {
    from { left: -60%; }
    to   { left: 160%; }
}

@keyframes sheikahFlash {
    0%   { opacity: 1; }
    100% { opacity: 0; }
}

@keyframes sheikahIn {
    from { opacity: 0; transform: translateX(-8px); }
    to   { opacity: 1; transform: none; }
}

.theme-sheikah .entry.removing {
    animation: sheikahOut 0.22s ease-out forwards;
}

@keyframes sheikahOut {
    to {
        opacity: 0;
        max-height: 0;
        padding: 0 10px;
        margin: 0;
    }
}
