@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@700&display=swap";:root{--bg-primary: #0a0a0f;--bg-secondary: #1a1a24;--accent-gold: #d4af37;--accent-rose: #e8b4b8;--text-primary: #ffffff;--text-secondary: #a0a0b0;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Playfair Display", serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-primary);background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);color:var(--text-primary);overflow:hidden;width:100vw;height:100vh}#app{width:100%;height:100%;position:relative}#canvas-container{width:100%;height:100%;position:absolute;top:0;left:0}#loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-primary);z-index:1000;transition:opacity .5s ease-out}#loading.hidden{opacity:0;pointer-events:none}.loading-spinner{width:50px;height:50px;border:3px solid rgba(212,175,55,.1);border-top-color:var(--accent-gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{margin-top:var(--spacing-md);font-size:1rem;color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase}#ui-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:100}.header{position:absolute;top:0;left:0;right:0;padding:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-display);font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-rose) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.product-info{position:absolute;bottom:var(--spacing-lg);left:var(--spacing-lg);max-width:400px;padding:var(--spacing-md);background:#fffffff2;border-radius:16px;border:1px solid rgba(212,175,55,.3);box-shadow:0 8px 32px #00000026;color:#333}.product-name{font-family:var(--font-display);font-size:1.8rem;font-weight:700;margin-bottom:var(--spacing-xs);background:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-rose) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.product-description{font-size:.95rem;line-height:1.6;color:#666;margin-bottom:var(--spacing-sm)}.product-features{list-style:none;font-size:.85rem;color:#666}.product-features li{padding:var(--spacing-xs) 0;border-bottom:1px solid rgba(255,255,255,.05)}.product-features li:last-child{border-bottom:none}.product-features li:before{content:"✦";color:var(--accent-gold);margin-right:var(--spacing-xs)}.controls{position:absolute;bottom:var(--spacing-lg);right:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm);pointer-events:all}.control-btn{width:50px;height:50px;border-radius:50%;border:1px solid rgba(212,175,55,.5);background:#fffffff2;color:var(--accent-gold);font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.control-btn:hover{background:#d4af3733;border-color:var(--accent-gold);transform:scale(1.1)}.control-btn:active{transform:scale(.95)}.instructions{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--text-secondary);font-size:.9rem;opacity:0;animation:fadeInOut 4s ease-in-out 1s}@keyframes fadeInOut{0%,to{opacity:0}20%,80%{opacity:1}}.watermark{position:absolute;bottom:var(--spacing-sm);right:var(--spacing-sm);font-size:.75rem;color:#ffffff4d;letter-spacing:.05em}@media(max-width:768px){.product-info{max-width:calc(100% - 2 * var(--spacing-lg));bottom:var(--spacing-md);left:var(--spacing-md)}.controls{bottom:var(--spacing-md);right:var(--spacing-md)}.header{padding:var(--spacing-md)}.logo{font-size:1.2rem}.product-name{font-size:1.4rem}}
