:root{--color-bg-primary: #121212;--color-bg-secondary: #1e1e1e;--color-bg-card: #252525;--color-text-primary: #e0e0e0;--color-text-secondary: #a0a0a0;--color-text-muted: #757575;--color-accent: #d4af37;--color-accent-hover: #e5c158;--color-border: #333333;--color-overlay: rgba(0, 0, 0, .7);--font-heading: "Inter", sans-serif;--font-body: "Inter", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 8rem;font-family:var(--font-body);line-height:1.6;font-weight:400;color-scheme:dark;color:var(--color-text-primary);background-color:var(--color-bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;display:flex;flex-direction:column}a{color:var(--color-text-primary);text-decoration:none;transition:color .3s ease}a:hover{color:var(--color-accent)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:1.2;margin-bottom:.5em;font-weight:600}h1{font-size:3.5rem}h2{font-size:2.5rem}h3{font-size:1.75rem}button{cursor:pointer;border:none;background:none;font-family:inherit}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-sm)}.text-accent{color:var(--color-accent)}.text-center{text-align:center}.export-menu{position:relative}.export-btn{background:linear-gradient(135deg,#e0e0e0,#fff);color:#000;padding:.6rem 1.5rem;border-radius:30px;font-weight:700;font-size:.85rem;margin-right:2rem;border:none;transition:all .3s ease;box-shadow:0 4px 15px #ffffff1a;letter-spacing:.05em;cursor:pointer}.export-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #fff3;background:#fff}.export-overlay{position:fixed;inset:0;z-index:998}.export-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#1a1a1a;border:1px solid #333;border-radius:8px;min-width:220px;box-shadow:0 8px 24px #00000080;z-index:999;overflow:hidden}.export-option{padding:.75rem 1rem;color:#e0e0e0;cursor:pointer;transition:background .2s;display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.export-option:not(.disabled):hover{background:#252525;color:#fff}.export-option.disabled{color:#444;cursor:default;padding:.25rem 1rem;font-size:.7rem}.dimension-label{color:#666;font-size:.75rem;font-family:monospace}.export-option:not(.disabled):hover .dimension-label{color:var(--color-accent)}@media(max-width:768px){.export-btn{padding:.5rem 1rem;font-size:.75rem;margin-right:0;max-width:120px}.export-dropdown{min-width:180px;right:0}}.topbar{grid-area:top;background-color:#000;display:flex;justify-content:space-between;align-items:center;padding:0 2rem;border-bottom:1px solid #1a1a1a}.topbar-left,.topbar-center,.topbar-right{display:flex;align-items:center}.logo-text{font-family:Pacifico,cursive;font-weight:400;font-size:1.2rem;color:#fff;margin-left:.75rem;letter-spacing:.05em;text-transform:none;background:linear-gradient(to right,#fff,#ddd);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.logo-icon{display:inline-block;color:var(--color-accent);font-size:1.25rem;transform:rotate(15deg)}.tool-toggle-btn{padding:.6rem 1.2rem;background:#1a1a1a;border:1px solid #333;color:#888;border-radius:4px;cursor:pointer;transition:all .2s;font-size:.85rem;font-weight:500;margin-right:1rem}.tool-toggle-btn:hover{background:#252525;border-color:#555;color:#fff}.tool-toggle-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;box-shadow:0 0 10px #ff4d4d4d}.download-btn{background:linear-gradient(135deg,#e0e0e0,#fff);color:#000;padding:.6rem 1.5rem;border-radius:30px;font-weight:700;font-size:.85rem;margin-right:2rem;border:none;transition:all .3s ease;box-shadow:0 4px 15px #ffffff1a;letter-spacing:.05em}.download-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #fff3;background:#fff}.user-profile{display:flex;align-items:center;gap:1.5rem;color:#666;font-size:.9rem}.icon-btn{color:#666;font-size:1rem;background:none;border:none;cursor:pointer;transition:color .2s}.icon-btn:hover{color:#fff}.batch-toggle{display:flex;align-items:center;color:#888;font-size:.8rem;gap:.75rem;cursor:pointer;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.toggle-switch{width:40px;height:22px;background-color:#222;border-radius:11px;position:relative;transition:background-color .3s}.toggle-switch.active{background-color:var(--color-accent)}.toggle-switch:after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;background-color:#666;border-radius:50%;transition:transform .3s,background-color .3s}.toggle-switch.active:after{transform:translate(18px);background-color:#fff}@media(max-width:768px){.topbar{padding:0 1rem}.logo-text,.batch-toggle{display:none!important}.user-profile .user-name{display:none}.user-profile .icon-btn:not(:last-child){display:none}.topbar-center{display:none!important}.topbar-right{gap:.5rem}.tool-toggle-btn{padding:.4rem .8rem;font-size:.75rem;margin-right:.5rem}}.sidebar-section{margin-bottom:2rem}.stock-brand-header{color:var(--color-accent);font-size:.8rem;margin-top:1.5rem;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.1em;padding-left:.25rem;border-bottom:1px solid #222;padding-bottom:.25rem}.stock-group:first-child .stock-brand-header{margin-top:0}.stock-list{display:flex;flex-direction:column;gap:.5rem}.stock-item{background-color:#161616;padding:.75rem 1rem;border-radius:4px;cursor:pointer;border:1px solid transparent;transition:all .2s}.stock-item:hover{background-color:#1f1f1f;border-color:#333;transform:translate(4px)}.stock-header{display:flex;justify-content:space-between;margin-bottom:.1rem}.stock-name{font-weight:600;font-size:.85rem;color:#e0e0e0}.category-header{font-size:.75rem;color:#444;margin-top:1rem;padding:.5rem .25rem;border-bottom:2px solid #222;background:#ffffff05}.lens-style{border-left:3px solid var(--color-accent)!important}.stock-desc{font-size:.7rem;color:#666;line-height:1.25}.slider-container{margin-bottom:1.5rem}.slider-header{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.85rem;color:var(--color-text-secondary)}.slider-input{-webkit-appearance:none;width:100%;height:4px;background:#333;border-radius:2px;outline:none}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--color-text-primary);border-radius:50%;cursor:pointer;transition:background .2s}.slider-input::-webkit-slider-thumb:hover{background:var(--color-accent)}.controls-panel{grid-area:controls;background-color:#0a0a0a;border-right:1px solid #222;padding:1.5rem;display:flex;flex-direction:column;gap:2rem;overflow-y:auto}.controls-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.controls-header h3{font-size:.75rem;letter-spacing:.1em;color:#666;margin:0}.sliders-container{display:flex;flex-direction:column}.landing-container{background-color:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;overflow-x:hidden;font-family:var(--font-body)}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 5%;position:absolute;top:0;width:100%;z-index:100}.logo{display:flex;align-items:center}.logo-text{font-family:Pacifico,cursive;font-weight:400;font-size:1.5rem;color:#fff;margin-left:.75rem;letter-spacing:.05em;text-transform:none;background:linear-gradient(to right,#fff,#ddd);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.logo-icon{display:inline-block;color:var(--color-accent);font-size:1.5rem;transform:rotate(15deg)}.nav-cta{background:#ffffff0d;border:1px solid var(--color-border);padding:.6rem 1.2rem;font-size:.9rem;border-radius:4px;transition:all .3s ease}.nav-cta:hover{background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent)}.hero{height:100vh;display:flex;align-items:center;padding:0 10%;position:relative;overflow:hidden}.hero-content{max-width:700px;z-index:2}.hero-title{font-family:Pacifico,cursive;font-size:clamp(3rem,8vw,5rem);line-height:1.3;margin-bottom:2rem;font-weight:400;letter-spacing:1px;background:linear-gradient(to bottom,#fff,#a0a0a0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.25rem;color:var(--color-text-secondary);margin-bottom:3rem;line-height:1.8;max-width:500px}.hero-actions{display:flex;gap:1.5rem}.primary-btn{background-color:var(--color-accent);color:var(--color-bg-primary);padding:1.2rem 2.5rem;font-weight:600;border-radius:4px;font-size:1rem;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 10px 30px #d4af3733}.primary-btn:hover{transform:translateY(-5px);box-shadow:0 15px 40px #d4af374d}.secondary-btn{border:1px solid var(--color-border);padding:1.2rem 2.5rem;color:var(--color-text-primary);border-radius:4px;font-size:1rem;transition:all .3s ease}.secondary-btn:hover{background:#ffffff0d;border-color:var(--color-text-primary)}.hero-visual{position:absolute;right:-5%;top:50%;transform:translateY(-50%);width:60%;height:80%;z-index:1;pointer-events:none}.visual-circle{width:100%;height:100%;background:radial-gradient(circle at center,rgba(212,175,55,.1) 0%,transparent 70%);filter:blur(50px);animation:pulse 8s infinite alternate}.visual-grain{position:absolute;inset:0;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}@keyframes pulse{0%{opacity:.3;transform:scale(.9)}to{opacity:.6;transform:scale(1.1)}}.features{padding:var(--spacing-xl) 10%;background:var(--color-bg-secondary)}.section-header{text-align:center;margin-bottom:var(--spacing-xl)}.section-header h2{font-size:3rem;margin-bottom:1rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem}.feature-card{padding:3rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;transition:transform .3s ease,border-color .3s ease}.feature-card:hover{transform:translateY(-10px);border-color:var(--color-accent)}.feature-icon{font-size:2.5rem;margin-bottom:1.5rem}.feature-card h3{margin-bottom:1rem}.feature-card p{color:var(--color-text-secondary);line-height:1.7}.stocks-preview{padding:4rem 0;background:var(--color-bg-primary);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);overflow:hidden;white-space:nowrap}.stock-marquee{display:inline-block;animation:marquee 40s linear infinite}.stock-marquee span{font-size:2rem;font-weight:800;margin-right:4rem;color:#ffffff1a;letter-spacing:4px;transition:color .3s ease}.stock-marquee span:hover{color:var(--color-accent)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.landing-footer{padding:5rem 10%;border-top:1px solid var(--color-border);background:var(--color-bg-primary);text-align:center}.footer-logo{display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.footer-logo span{color:var(--color-accent)}.landing-footer p{color:var(--color-text-muted);font-size:.9rem}@media(max-width:768px){.hero{padding:0 5%;text-align:center}.hero-content{margin-top:4rem}.hero-actions{justify-content:center;flex-direction:column}.hero-visual{display:none}}.app-shell{display:grid;grid-template-areas:"top top top" "controls work sidebar";grid-template-columns:310px 1fr 310px;grid-template-rows:60px 1fr;height:100vh;height:100svh;width:100vw;overflow:hidden;background-color:#000;position:relative}@media(max-width:1024px){.app-shell{display:flex;flex-direction:column;overflow:hidden}.topbar{flex-shrink:0}.sidebar,.controls-panel{position:fixed;bottom:60px;left:0;right:0;height:40vh;z-index:100;background-color:#0a0a0a;border-top:1px solid #1a1a1a;transform:translateY(100%);transition:transform .3s ease;display:flex!important}.sidebar.active,.controls-panel.active{transform:translateY(0)}}.sidebar{grid-area:sidebar;background-color:#0a0a0a;border-left:1px solid #1a1a1a;padding:1.5rem;display:flex;flex-direction:column;gap:2rem;overflow-y:auto}.sidebar h3{font-size:.7rem;letter-spacing:.15em;color:#555;margin-bottom:1.25rem;text-transform:uppercase;font-weight:600}.work-area{grid-area:work;background-color:#050505;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:auto}.drop-zone{width:100%;height:calc(100% - 4rem);max-width:800px;max-height:400px;border:1px dashed #333;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#666;background:radial-gradient(circle at center,#0e0e0e,#050505);transition:all .3s;cursor:pointer;margin:auto}.drop-zone:hover{border-color:var(--color-accent);color:#999;background:#111}.drop-content{text-align:center}.upload-icon{font-size:2.5rem;margin-bottom:1rem;opacity:.5;color:var(--color-accent)}.drop-content h2{font-size:1.2rem;color:#fff;font-weight:500;margin-bottom:.5rem}.image-container{display:inline-block;position:relative;line-height:0}.close-btn{position:absolute;top:1rem;right:1rem;color:#fff;font-size:1.5rem;background:#0009;border:1px solid rgba(255,255,255,.1);cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.close-btn:hover{background:var(--color-accent);border-color:transparent}.batch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;width:100%;height:100%;align-content:start}.batch-item{aspect-ratio:1;overflow:hidden;border-radius:4px;border:1px solid #222}.batch-item img{width:100%;height:100%;object-fit:cover}.mobile-nav{display:none;background-color:#050505;border-top:1px solid #1a1a1a;padding:.5rem 0;padding-bottom:env(safe-area-inset-bottom,.5rem);justify-content:space-around;position:fixed;bottom:0;left:0;right:0;z-index:200}@media(max-width:1024px){.mobile-nav{display:flex}.mobile-nav button{background:none;border:none;color:#666;display:flex;flex-direction:column;align-items:center;gap:.25rem;font-size:.7rem;text-transform:uppercase;font-weight:600;transition:color .2s}.mobile-nav button span{font-size:1.25rem}.mobile-nav button.active{color:var(--color-accent)}.work-area{padding:1rem;padding-bottom:calc(70px + env(safe-area-inset-bottom,0px));flex-grow:1;display:flex;align-items:center;justify-content:center;overflow:hidden}canvas{max-height:70vh!important}.sidebar,.controls-panel{box-shadow:0 -10px 30px #000c}}:root{--color-accent: #d4af37}
