:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#1a1a1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;position:fixed;overscroll-behavior:none;touch-action:pan-x pan-y}#app{width:100%;height:100%;display:flex;flex-direction:column}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#2a2a2a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}img{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;pointer-events:none}.material-card[data-v-49c486e5]{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.image-container[data-v-49c486e5]{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;background:#0a0a0a}.material-image[data-v-49c486e5]{max-width:100%;max-height:100%;object-fit:contain;transition:transform .1s ease-out;pointer-events:all}.material-info[data-v-49c486e5]{padding:1.5rem;background:linear-gradient(to top,#0a0a0a,transparent);position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;gap:.5rem}.material-name[data-v-49c486e5]{font-size:1.5rem;font-weight:600;color:#fff;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.8)}.material-type[data-v-49c486e5]{font-size:.9rem;color:#aaa;text-transform:uppercase;letter-spacing:.05em;text-shadow:0 1px 2px rgba(0,0,0,.8)}.similar-bar[data-v-b966179f]{flex-shrink:0;background:#0a0a0a;border-top:1px solid #333;padding:1rem 0}.similar-title[data-v-b966179f]{padding:0 1rem .75rem;font-size:.85rem;color:#888;text-transform:uppercase;letter-spacing:.05em}.similar-scroll[data-v-b966179f]{display:flex;gap:1rem;padding:0 1rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none}.similar-scroll[data-v-b966179f]::-webkit-scrollbar{display:none}.similar-item[data-v-b966179f]{flex-shrink:0;width:100px;display:flex;flex-direction:column;gap:.5rem;background:transparent;border:none;padding:0;cursor:pointer;scroll-snap-align:start}.similar-image[data-v-b966179f]{width:100px;height:100px;object-fit:cover;border-radius:8px;border:2px solid #333;transition:border-color .2s}.similar-item:hover .similar-image[data-v-b966179f],.similar-item:active .similar-image[data-v-b966179f]{border-color:#666}.similar-name[data-v-b966179f]{font-size:.75rem;color:#aaa;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.hamburger-menu[data-v-eeaf587b]{position:relative;z-index:100}.header[data-v-eeaf587b]{display:flex;align-items:center;gap:1rem;padding:1rem;background:#0a0a0a;border-bottom:1px solid #333}.hamburger-button[data-v-eeaf587b]{background:none;border:none;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.hamburger-icon[data-v-eeaf587b]{width:28px;height:24px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.hamburger-icon span[data-v-eeaf587b]{display:block;width:100%;height:3px;background:#fff;border-radius:2px;transition:all .3s ease}.hamburger-icon.open span[data-v-eeaf587b]:nth-child(1){transform:translateY(10.5px) rotate(45deg)}.hamburger-icon.open span[data-v-eeaf587b]:nth-child(2){opacity:0}.hamburger-icon.open span[data-v-eeaf587b]:nth-child(3){transform:translateY(-10.5px) rotate(-45deg)}.title[data-v-eeaf587b]{font-size:1.5rem;font-weight:600;color:#fff;margin:0}.menu-overlay[data-v-eeaf587b]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;z-index:99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.menu-content[data-v-eeaf587b]{position:absolute;top:60px;left:0;width:280px;background:#1a1a1a;border-right:1px solid #333;border-bottom:1px solid #333;box-shadow:4px 4px 12px #00000080;padding:.5rem 0}.menu-item[data-v-eeaf587b]{width:100%;display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:none;border:none;color:#aaa;font-size:1.1rem;cursor:pointer;transition:all .2s;border-left:3px solid transparent}.menu-item[data-v-eeaf587b]:hover{background:#2a2a2a;color:#fff}.menu-item.active[data-v-eeaf587b]{background:#2a2a2a;color:#fff;border-left-color:#fff}.menu-icon[data-v-eeaf587b]{font-size:1.5rem}.menu-label[data-v-eeaf587b]{font-weight:500}.slide-enter-active[data-v-eeaf587b],.slide-leave-active[data-v-eeaf587b]{transition:opacity .3s ease}.slide-enter-from[data-v-eeaf587b],.slide-leave-to[data-v-eeaf587b]{opacity:0}@media(max-width:480px){.title[data-v-eeaf587b]{font-size:1.2rem}.menu-content[data-v-eeaf587b]{width:240px}.menu-item[data-v-eeaf587b]{padding:.9rem 1.2rem;font-size:1rem}.menu-icon[data-v-eeaf587b]{font-size:1.3rem}}.index-grid[data-v-b6312b4c]{flex:1;overflow-y:auto;background:#1a1a1a;padding:1rem}.grid-container[data-v-b6312b4c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;max-width:1400px;margin:0 auto}.grid-item[data-v-b6312b4c]{background:#2a2a2a;border-radius:12px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid #333}.grid-item[data-v-b6312b4c]:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0006;border-color:#555}.grid-item[data-v-b6312b4c]:active{transform:translateY(-2px)}.image-wrapper[data-v-b6312b4c]{position:relative;width:100%;padding-top:75%;background:#1a1a1a;overflow:hidden}.image-wrapper img[data-v-b6312b4c]{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.material-info[data-v-b6312b4c]{padding:1rem}.material-name[data-v-b6312b4c]{font-size:1.1rem;font-weight:600;color:#fff;margin:0 0 .5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-type[data-v-b6312b4c]{font-size:.85rem;color:#999;text-transform:uppercase;letter-spacing:.5px}@media(max-width:768px){.grid-container[data-v-b6312b4c]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.index-grid[data-v-b6312b4c],.material-info[data-v-b6312b4c]{padding:.75rem}.material-name[data-v-b6312b4c]{font-size:.95rem}.material-type[data-v-b6312b4c]{font-size:.75rem}}@media(max-width:480px){.grid-container[data-v-b6312b4c]{grid-template-columns:repeat(2,1fr);gap:.75rem}.index-grid[data-v-b6312b4c]{padding:.5rem}}.app[data-v-5b3d2e78]{width:100%;height:100%;display:flex;flex-direction:column;background:#1a1a1a}.back-button[data-v-5b3d2e78]{position:fixed;top:70px;left:1rem;z-index:50;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#1a1a1af2;border:1px solid #444;border-radius:24px;color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000004d}.back-button[data-v-5b3d2e78]:hover{background:#2a2a2af2;border-color:#666;transform:translate(-2px)}.back-button[data-v-5b3d2e78]:active{transform:translate(-1px) scale(.98)}.back-icon[data-v-5b3d2e78]{font-size:1.2rem}.back-label[data-v-5b3d2e78]{font-weight:500}@media(max-width:480px){.back-button[data-v-5b3d2e78]{top:65px;left:.75rem;padding:.6rem 1rem;font-size:.9rem}.back-icon[data-v-5b3d2e78]{font-size:1.1rem}}.offline-banner[data-v-5b3d2e78]{position:fixed;top:0;left:0;right:0;z-index:100;background:#ff9800;color:#000;padding:.5rem;text-align:center;font-weight:500;font-size:.9rem}.loading-screen[data-v-5b3d2e78],.error-screen[data-v-5b3d2e78]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;color:#fff;text-align:center;padding:2rem}.spinner[data-v-5b3d2e78]{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-5b3d2e78 1s linear infinite}@keyframes spin-5b3d2e78{to{transform:rotate(360deg)}}.error-icon[data-v-5b3d2e78]{font-size:4rem;margin-bottom:1rem}.error-screen h2[data-v-5b3d2e78]{margin:0 0 1rem;font-size:1.5rem}.error-screen p[data-v-5b3d2e78]{margin:0 0 1.5rem;color:#ccc}.retry-button[data-v-5b3d2e78]{padding:.75rem 1.5rem;background:#fff;color:#1a1a1a;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:transform .2s}.retry-button[data-v-5b3d2e78]:hover{transform:scale(1.05)}
