/* Dedicated image cells keep artwork, rarity and text from overlapping. */
.item-visual{--art-size:88px;display:grid;place-items:center;box-sizing:border-box;width:var(--art-size);height:var(--art-size);min-width:var(--art-size);flex:0 0 var(--art-size);border:1px solid #6c7257;border-radius:10px;padding:5px;background:#142219;overflow:hidden;line-height:0}
.item-visual.art-small{--art-size:64px}.item-visual.art-large{--art-size:104px}
.item-visual[data-quality=unique],.item-visual[data-quality=runeword]{border-color:#b19a64}
.item-visual[data-quality=magic]{border-color:#739bb1}.item-visual[data-quality=rare]{border-color:#93a86c}
.item-visual[data-quality=support]{border-color:#6da79a}.item-visual[data-quality=empty]{opacity:.4;border-style:dashed}
.item-portrait{display:block;width:100%;height:100%;border-radius:5px;background-image:url('assets/item-icons-v1.webp');background-repeat:no-repeat;background-size:500% 500%}
.item-slot-art{display:block;width:100%;height:100%}
.item-card-heading{display:flex;align-items:center;gap:16px;margin-bottom:14px;min-width:0}
.item-card-heading>div,.catalog-top>div,.equipped-heading>div{min-width:0;flex:1;overflow-wrap:anywhere}
.item-card-heading h3{margin:5px 0;line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}
.item-card-heading small{display:block;font-size:11px;line-height:1.7}
.catalog-top{gap:14px;align-items:center;min-height:104px}.catalog-top h3{font-size:16px;word-break:keep-all;overflow-wrap:anywhere}.catalog-top small{line-height:1.7}
.equipment-grid .equipped-heading{display:flex;gap:12px;align-items:center;margin-bottom:10px;min-width:0}
.equipment-grid .equipped-heading small{display:block;color:#a8b6a3;margin-bottom:5px}
.equipment-grid .equipped-heading strong{display:block;word-break:keep-all;overflow-wrap:anywhere;line-height:1.6}
.equipment-grid article>p{font-size:11px;line-height:1.8;overflow-wrap:anywhere;color:#adbfab}
.equipment-grid article>.item-buttons{margin-top:10px}
.core-summary,.support-summary{display:flex;align-items:center;gap:12px;margin:12px 0}
.core-summary>div,.support-summary>div{min-width:0}.support-summary strong{line-height:1.6;overflow-wrap:anywhere}
.item-modal .item-tabs{margin-left:0}.item-modal .item-tabs button{min-height:44px}
/* Main navigation uses generous hit targets with persistent text labels. */
.topbar{height:auto;min-height:98px;padding-block:16px;gap:22px;flex-wrap:wrap}
.topbar .brand{flex-shrink:0}.topbar .top-note{margin-left:0}
.topbar .main-nav{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-left:auto;flex-wrap:wrap}
.topbar .main-nav .nav-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:12px 16px;border:1px solid #536047;border-radius:9px;background:#1c2a20;color:#e1e4d2;font-size:14px;font-weight:600;line-height:1.4;white-space:nowrap}
.topbar .main-nav .nav-button:hover{border-color:#b9a477;background:#2b392a}
.nav-icon{display:block;flex:0 0 25px;width:25px;height:25px;color:#d5bd86}
.topbar .main-nav .nav-secondary{min-height:48px;padding:10px 12px;font-size:12px;background:#152219;color:#b8c8b1}
.topbar .main-nav .nav-secondary .nav-icon{width:21px;height:21px;flex-basis:21px}
.topbar .main-nav #sound-btn{min-height:48px;min-width:62px;border:1px solid #43523f;border-radius:8px;font-size:12px;padding:10px}
@media(max-width:1280px){.topbar .top-note{display:none}.topbar{padding-inline:24px;gap:16px}.topbar .main-nav .nav-button{padding:11px 13px}}
@media(max-width:1020px){.topbar{gap:14px}.topbar .main-nav{gap:7px}.topbar .main-nav .nav-button{font-size:13px;gap:7px;padding:10px}.nav-icon{width:23px;height:23px;flex-basis:23px}}
@media(max-width:850px){.topbar .main-nav{width:100%;justify-content:stretch;margin-left:0}.topbar .main-nav .nav-button{flex:1;min-height:54px}.topbar .main-nav #records-btn,.topbar .main-nav #sound-btn{display:none}.catalog-top .art-large{--art-size:88px}}
@media(max-width:580px){.topbar{padding:14px 16px}.topbar .main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.topbar .main-nav .nav-button{min-width:0;font-size:13px;justify-content:flex-start;padding:11px 14px}.item-card-heading{gap:12px}.item-card-heading .item-visual{--art-size:76px}.item-card-heading h3{font-size:16px}.catalog-top{min-height:92px}.catalog-top .art-large{--art-size:88px}}
