:root{--bg-color: #121212;--card-bg: #1e1e1e;--text-primary: #ffffff;--text-secondary: #aaaaaa;--accent: #bb86fc;--font-family: "Inter", system-ui, Avenir, Helvetica, Arial, sans-serif;--content-padding: 20px}html,body{height:100%;width:100%;margin:0;padding:0;overflow-x:hidden}body{margin:0;font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased}#root{min-height:100vh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}a{color:inherit;text-decoration:none}.container{width:100%;max-width:1200px;padding:0 var(--content-padding);box-sizing:border-box}.hero{text-align:left;margin-bottom:0;border-bottom:1px solid #222}.hero p{font-size:1rem;color:#777;font-weight:300;font-style:italic;margin:0;letter-spacing:.3px}.hero h1{font-size:3rem;margin-bottom:10px;background:linear-gradient(to right,#bb86fc,#03dac6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header{margin-bottom:30px}.back-link{display:inline-block;margin-bottom:20px;color:var(--accent);font-weight:700}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.card{background-color:var(--card-bg);border-radius:12px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;border:1px solid #333}.card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #00000080;border-color:var(--accent)}.card-image{width:100%;height:200px;object-fit:cover}.placeholder-image{width:100%;height:200px;background:linear-gradient(135deg,#1e1e1e,#2a2a2a);display:flex;align-items:center;justify-content:center}.placeholder-text{font-weight:900;font-size:1.5rem;letter-spacing:2px;background:linear-gradient(to right,#bb86fc,#03dac6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase}.card-content{padding:20px}.card-content h2{margin:0 0 10px;font-size:1.5rem}.card-stats{display:flex;gap:10px;margin-bottom:12px}.stat-tag{background-color:#333;padding:4px 8px;border-radius:4px;font-size:.85rem;color:var(--accent)}.tag-badge{display:inline-block;background-color:var(--accent);color:#121212;font-weight:700;padding:4px 10px;border-radius:20px;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.card-meta{margin-bottom:12px;font-size:.9rem;color:var(--text-secondary)}.meta-row{margin:4px 0}.card-desc{font-size:.95rem;line-height:1.4;color:#ccc}.loading,.error{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.error{color:#cf6679}.detail-view{display:flex;flex-direction:column;gap:30px}.model-container{width:100%;border-radius:12px;overflow:hidden;border:1px solid #333}.info-panel h1{font-size:2.5rem;margin-bottom:10px}.info-panel h2{color:var(--text-secondary);margin-bottom:20px}.meta{font-style:italic;color:var(--accent)}.description{margin-top:20px;line-height:1.6;color:#ddd;font-size:1rem}.ar-btn{display:block;width:100%;margin-top:12px;padding:12px 20px;font-size:1rem;font-weight:700;border:none;border-radius:10px;background:linear-gradient(135deg,var(--accent),#03dac6);color:#121212;cursor:pointer;transition:opacity .3s,transform .2s}.ar-btn:hover:not(:disabled){transform:translateY(-2px);opacity:.9}.ar-btn-disabled{background:#333;color:#666;cursor:not-allowed}@media(min-width:768px){.detail-view{flex-direction:row}.model-container{flex:2}.info-panel{flex:1}}.app-layout{display:flex;flex-direction:column;min-height:100vh;width:100%}.main-content{flex:1;width:100%;display:flex;flex-direction:column;align-items:center}.app-header{background-color:#121212f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:1000;width:100%}.header-container{max-width:1200px;margin:0 auto;padding:15px var(--content-padding);display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.2rem;font-weight:800;background:linear-gradient(to right,#bb86fc,#03dac6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:1px}.icon-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center}.bottom-nav{position:fixed;bottom:0;left:0;width:100%;background-color:#1e1e1e;border-top:1px solid #333;display:flex;justify-content:space-around;padding:15px 0;padding-bottom:max(15px,env(safe-area-inset-bottom));z-index:1000}.nav-item{color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;width:100%;cursor:pointer;transition:color .3s}.nav-item:hover,.nav-item.active{color:var(--accent)}.main-content{padding-bottom:80px}.ar-controls{margin-top:15px;background-color:#2a2a2a;padding:15px;border-radius:10px;border:1px solid #333}.control-group{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.control-group:last-child{margin-bottom:0}.control-group label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.toggle-group{display:flex;background-color:#1a1a1a;border-radius:8px;padding:2px;border:1px solid #333}.toggle-btn{background:none;border:none;color:var(--text-secondary);padding:6px 12px;font-size:.85rem;cursor:pointer;border-radius:6px;transition:all .2s}.toggle-btn:hover{color:#fff}.toggle-btn.active{background-color:var(--accent);color:#121212;font-weight:700}.splash-screen{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#121212;display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s ease-out,visibility .5s}.splash-screen.fade-out{opacity:0;visibility:hidden;pointer-events:none}.splash-content{text-align:center;display:flex;flex-direction:column;align-items:center}.splash-logo{font-size:5rem;margin-bottom:20px;animation:pulse 2s infinite ease-in-out}.splash-content h1{font-size:2.5rem;background:linear-gradient(to right,#bb86fc,#03dac6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 30px;letter-spacing:2px}.splash-loader{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-radius:50%;border-top-color:var(--accent);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}to{transform:scale(1);opacity:1}}
