*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:transparent;font-family:Tahoma,Arial,sans-serif;color:#eaecef;user-select:none}button,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible{outline:2px solid #c29aff;outline-offset:2px}[hidden]{display:none!important}
:root{--accent:#b784f2;--panel:rgba(27,34,39,.9);--tile:rgba(18,26,32,.65);--unit:1vh}
#inventory{position:absolute;left:50%;top:13vh;width:70vh;height:74vh;transform:translateX(-50%)}
.panel{position:relative;background:var(--panel);border-radius:2.1vh;height:100%;padding:2.1vh 3.4vh;box-shadow:0 1.4vh 5vh #0002;backdrop-filter:blur(7px)}
header{height:5.8vh;display:flex;align-items:flex-start;padding-top:.2vh;gap:1.4vh}.heading{font-family:Arial,sans-serif;font-size:1.8vh;font-weight:800;color:var(--accent);display:flex;align-items:center;gap:1.1vh;white-space:nowrap;padding-top:.4vh}.heading button{background:#e6e6e9;color:#9165c7;border:0;width:2.1vh;height:2.1vh;border-radius:50%;font-size:2vh;line-height:1.5vh;padding:0}
nav{margin-left:auto;display:flex;gap:.7vh}nav button{width:3vh;height:3vh;display:grid;place-items:center;border-radius:50%;background:#181d2180;border:0;padding:.65vh;color:#a4a8ac}nav button.active{background:#9461d7;color:white;box-shadow:0 0 0 .3vh #c1a0f2}svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#close{position:absolute;right:1vh;top:.7vh;border:0;background:none;font-size:1.8vh;opacity:.55}
.grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.7vh;align-content:start;max-height:59vh;overflow:auto;padding:.2vh .05vh 1vh;scrollbar-width:thin;scrollbar-color:#9d6ade #20272d}.item{position:relative;height:10vh;min-width:0;background:var(--tile);border:1px solid transparent;border-radius:1.2vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.6vh .4vh 1.8vh;cursor:grab;touch-action:none}.item:hover{background:#253038;border-color:#a17aca70}.item.selected{border-color:#b784f2}.item img{width:5vh;height:5vh;object-fit:contain;pointer-events:none;filter:drop-shadow(0 .35vh .3vh #0005)}.item .qty{position:absolute;top:.65vh;left:.35vh;right:.35vh;text-align:center;font-size:.9vh;font-weight:bold;color:#f4f4f4}.item .name{position:absolute;bottom:.75vh;left:.4vh;right:.4vh;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:.95vh;font-weight:500}.item.cash{cursor:default}.item.drag-over{border-color:#9df4dc}.hide-labels .item .name{display:none}
.shortcut-rail{position:absolute;left:-10.8vh;top:6.2vh;width:8.8vh;background:#20282cc9;border-radius:1.1vh;padding:.8vh;box-shadow:0 .4vh 1vh #0002}.hot-slot{position:relative;width:7.1vh;height:7.1vh;margin-bottom:1.7vh;border:1px solid #9b9ea077;border-radius:.65vh;background:#8c929226;display:grid;place-items:center;touch-action:none;cursor:grab}.hot-slot:last-child{margin-bottom:.6vh}.hot-slot .number{font-family:Arial,sans-serif;font-size:2.5vh;font-weight:800;color:#c6c8c880}.hot-slot.filled .number{position:absolute;top:.4vh;left:.5vh;font-size:1.1vh;color:#ccb1f7}.hot-slot img{width:4.8vh;height:4.8vh;object-fit:contain;pointer-events:none}.hot-slot .qty{position:absolute;right:.4vh;bottom:.3vh;font-size:1vh}.hot-slot .remove{display:none;position:absolute;top:.1vh;right:.15vh;border:0;background:#15191bc9;border-radius:50%;color:#ddd;padding:0 .3vh}.hot-slot.filled:hover .remove{display:block}.hot-slot.empty-stock img{opacity:.3}.hot-slot.drag-over{border-color:#cea7ff;background:#b784f244;box-shadow:0 0 1vh #b784f244}.pages{display:flex;gap:.4vh;justify-content:center}.pages i{height:1vh;width:2vh;background:#12191dcc;border-radius:.6vh}.pages i:first-child{background:#9c6ad5}
footer{position:absolute;bottom:1.1vh;left:1.4vh;right:2vh;display:flex;align-items:center;gap:1vh;color:#c6cbd0;font-size:1vh}footer label{display:flex;align-items:center;white-space:nowrap;gap:.35vh}input[type=checkbox]{accent-color:#ac79e7;width:1.4vh;height:1.4vh;margin:0}.foot-hint{margin-left:auto;font-size:.85vh;opacity:.6}#capacity{opacity:.6}#search-wrap{margin-bottom:1vh}#search{width:100%;border:1px solid #a981dd66;border-radius:.6vh;background:#10191e77;color:white;padding:1vh;font-size:1.4vh;outline:none}#search-wrap:not([hidden])~.grid{max-height:53vh}#empty{font-size:1.6vh;text-align:center;opacity:.5;padding:8vh 0}
#quickbar{position:absolute;bottom:3.4vh;left:50%;transform:translateX(-50%);width:62vh}.quick-meta{display:flex;justify-content:flex-end;gap:.25vh;margin-bottom:.3vh;height:1.7vh}.quick-meta span{background:#12627bc7;padding:.15vh 1.2vh;font-size:.85vh;font-weight:bold;clip-path:polygon(0 0,94% 0,100% 100%,6% 100%)}.quick-meta button{background:#154c60;border:0;line-height:1vh;padding:0 .5vh}#quick-slots{display:flex;gap:.6vh}#quick-slots .hot-slot{width:8.35vh;height:7.7vh;border-color:#5ca7b388;background:#1d414b9c;border-radius:.5vh;margin:0;cursor:pointer}#quick-slots .hot-slot img{width:5.4vh;height:5.4vh}#quick-slots .hot-slot .number{font-size:1.2vh;position:absolute;left:.6vh;top:.5vh;color:#c1f0f4}#quickbar small{display:block;text-align:right;font-size:1vh;color:#d0e5e9;margin-top:.5vh;text-shadow:0 1px 2px #000}
#context{position:fixed;z-index:20;width:220px;background:#1b232bf5;border:1px solid #ab7cde80;border-radius:10px;padding:10px;box-shadow:0 8px 30px #0006}#context b{display:block;font-size:13px;padding:7px;color:#cba4ff}#context button{display:block;width:100%;padding:10px;text-align:left;background:#ffffff08;border:0;border-radius:5px;margin:3px 0;font-size:12px}#context button:hover{background:#956bd855}#context small{display:block;padding:8px;font-size:10px;color:#9da5ae}#toast{position:absolute;left:50%;bottom:10vh;transform:translateX(-50%);padding:10px 18px;border:1px solid #aa83dd80;background:#151c24ed;border-radius:9px;font-size:13px;z-index:40}.drag-ghost{position:fixed;z-index:99;width:64px;height:64px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 5px 8px #0009)}.preview{background:radial-gradient(ellipse at 25% 40%,#6c777b,#404c52 50%,#222e36)!important}#preview-badge{position:fixed;top:14px;left:16px;font-size:11px;color:#c9d9e0;letter-spacing:1px}
@media(max-aspect-ratio:1/1){#inventory{--scale:.8;transform:translateX(-44%) scale(.8);transform-origin:top center}}
