@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
:root{--bg-primary:#151515;--bg-secondary:#0a0a0a;--bg-panel:#1e1e1e;--bg-panel-hover:#1e1e1e;--text-primary:#fff;--text-secondary:#888;--accent-primary:#fff;--accent-hover:#ccc;--accent-glow:transparent;--border-color:#ffffff0d;--border-glow:transparent}*{box-sizing:border-box;margin:0;padding:0}img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none}.protected-image-wrapper{display:block;position:relative}.protected-image-wrapper img{pointer-events:none;-webkit-user-drag:none;user-drag:none}.protected-image-wrapper:after{content:"";z-index:1;pointer-events:auto;position:absolute;inset:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;height:100vh;font-family:Inter,sans-serif;display:flex;overflow:hidden}a{color:inherit;text-decoration:none}h1{letter-spacing:-.02em;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}p{color:var(--text-secondary);line-height:1.6}.glass-panel{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:12px}.btn{cursor:pointer;background:var(--accent-primary);color:var(--bg-primary);border:none;border-radius:8px;justify-content:center;align-items:center;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn-secondary{border:1px solid var(--border-color);color:var(--text-primary);background:0 0}.btn-secondary:hover{background:var(--bg-panel-hover)}.main-nav{border-radius:12px;justify-content:space-between;align-items:center;margin:1.5rem 2rem;padding:1rem 2rem;display:flex}.nav-brand{letter-spacing:-.02em;color:var(--text-primary);text-transform:uppercase;font-size:1.25rem;font-weight:700}.nav-links{gap:2rem;display:flex}.nav-links a{color:var(--text-secondary);font-size:.9rem;font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--text-primary)}.main-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem}.page-header{text-align:center;margin-bottom:3rem;animation:.6s ease-out fadeInDown}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%{box-shadow:0 0 #fff3}70%{box-shadow:0 0 0 15px #fff0}to{box-shadow:0 0 #fff0}}.renderer-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:inherit;z-index:10;background:#000000d9;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.renderer-loader{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2rem;display:flex}.renderer-spinner{border:3px solid #ffffff26;border-top-color:#fff;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.renderer-loader-text{color:var(--text-secondary);font-size:.9rem;font-weight:500}.renderer-progress-bar{background:#ffffff1a;border-radius:2px;width:200px;height:3px;overflow:hidden}.renderer-progress-fill{background:#fff;border-radius:2px;height:100%;transition:width .3s}.renderer-error{color:#ff6b6b;text-align:center;flex-direction:column;align-items:center;gap:.75rem;max-width:300px;padding:2rem;font-size:.9rem;display:flex}.canvas-loading-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:30;color:var(--text-secondary);background:#0a0a1499;flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.9rem;display:flex;position:absolute;inset:0}.canvas-loading-overlay p{font-variant-numeric:tabular-nums;margin:0;font-weight:500}.canvas-loading-bar{border:1px solid var(--border-color);background:#ffffff14;border-radius:2px;width:220px;height:4px;overflow:hidden}.canvas-loading-bar-fill{background:var(--accent-primary,#7c6aff);height:100%;transition:width .15s ease-out}.canvas-loading-error-icon{color:#ff6b6b;font-size:2rem;line-height:1}.preview-layout{flex-direction:column;gap:.75rem;height:calc(100vh - 90px);display:flex}.preview-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.preview-header-left{align-items:center;gap:1rem;display:flex}.preview-back-btn{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:.4rem;font-size:.85rem;transition:color .2s;display:inline-flex}.preview-back-btn:hover{color:var(--text-primary)}.preview-title{flex-direction:column;display:flex}.preview-h1{letter-spacing:-.01em;margin:0;font-size:1.1rem;font-weight:600;line-height:1.2}.preview-meta{color:var(--text-secondary);margin-top:.1rem;font-size:.75rem}.preview-header-right{align-items:center;gap:.75rem;display:flex}.preview-layers-toggle{align-items:center;gap:.4rem;padding:8px 14px;font-size:.8rem;display:inline-flex}.preview-body{flex:1;gap:.75rem;min-height:0;display:flex}.preview-canvas-panel{background:#080808;flex:1;justify-content:center;align-items:center;min-width:0;display:flex;position:relative;overflow:hidden}.preview-canvas{width:100%;height:100%}.preview-canvas-wrap{width:100%;height:100%;position:relative;overflow:hidden}.preview-fallback-image{object-fit:contain;z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.preview-sidebar{flex-direction:column;flex-shrink:0;gap:.75rem;width:300px;max-height:100%;transition:all .3s;display:flex;overflow:hidden auto}.preview-sidebar.hidden{opacity:0;pointer-events:none;width:0;overflow:hidden}.preview-sidebar.visible{opacity:1;width:300px}.sidebar-section{flex-shrink:0;padding:1.25rem}.sidebar-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);align-items:center;gap:.4rem;margin-bottom:1rem;font-size:.78rem;font-weight:600;display:flex}.design-uploader{flex-direction:column;gap:1rem;display:flex}.design-dropzone{border:2px dashed var(--border-color);cursor:pointer;border-radius:10px;min-height:100px;transition:all .2s;overflow:hidden}.design-dropzone:hover,.design-dropzone.dragging{background:#ffffff08;border-color:#fff6}.design-dropzone.has-design{border-style:solid}.design-dropzone-empty{color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;display:flex}.design-dropzone-title{color:var(--text-primary);font-size:.85rem;font-weight:500}.design-dropzone-sub{color:var(--text-secondary);font-size:.75rem}.design-preview-wrap{align-items:center;gap:.75rem;padding:.75rem;display:flex}.design-preview-thumb{object-fit:cover;border-radius:6px;flex-shrink:0;width:56px;height:56px}.design-preview-label{color:var(--text-primary);flex-direction:column;gap:.25rem;font-size:.8rem;font-weight:500;display:flex;overflow:hidden}.design-preview-label span:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.design-replace-hint{font-size:.72rem;color:var(--text-secondary)!important;font-weight:400!important}.control-group{flex-direction:column;gap:.5rem;display:flex}.control-label-row{justify-content:space-between;align-items:center;display:flex}.control-label{color:var(--text-secondary);font-size:.8rem;font-weight:500}.control-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:600}.control-slider{appearance:none;cursor:pointer;background:#ffffff1f;border-radius:2px;outline:none;width:100%;height:4px;transition:background .2s}.control-slider::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;box-shadow:0 2px 8px #0006}.control-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.btn-export{color:var(--text-primary);cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:10px 16px;font-size:.85rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-export:hover:not(:disabled){background:#ffffff24;border-color:#ffffff4d}.btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}.layer-list{flex-direction:column;gap:.4rem;max-height:260px;display:flex;overflow-y:auto}.layer-row{background:#ffffff08;border:1px solid #0000;border-radius:6px;align-items:center;gap:.6rem;padding:.5rem .6rem;transition:background .15s;display:flex}.layer-row:hover{background:#ffffff0e}.layer-row--design{background:#ffffff0d;border-color:#ffffff1f}.layer-role-badge{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.62rem;font-weight:700}.badge-bg{color:#7bb4ff;background:#78b4ff2e}.badge-shadow{color:#c07bff;background:#b478ff2e}.badge-highlight{color:#ffd264;background:#ffd2642e}.badge-design{color:#64ffa0;background:#64ffa02e}.layer-info{flex-direction:column;min-width:0;display:flex}.layer-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:500;overflow:hidden}.layer-blend{color:var(--text-secondary);font-size:.7rem}.meta-grid{flex-direction:column;gap:.5rem;display:flex}.meta-row{justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.meta-label{color:var(--text-secondary)}.meta-value{font-variant-numeric:tabular-nums;font-weight:500}.gallery-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.gallery-card{color:inherit;cursor:pointer;flex-direction:column;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.gallery-card:hover{transform:translateY(-3px);box-shadow:0 16px 48px #0006}.gallery-card-thumb{aspect-ratio:16/10;background:#0a0a0a;position:relative;overflow:hidden}.gallery-card-img{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.gallery-card:hover .gallery-card-img{transform:scale(1.04)}.gallery-card-overlay{opacity:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.gallery-card:hover .gallery-card-overlay{opacity:1}.gallery-card-open{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border:1px solid #ffffff4d;border-radius:20px;align-items:center;gap:.4rem;padding:8px 16px;font-size:.85rem;font-weight:600;display:inline-flex}.gallery-card-body{flex-direction:column;gap:.35rem;padding:1rem 1.25rem;display:flex}.gallery-card-title{color:var(--text-primary);font-size:.95rem;font-weight:600}.gallery-card-meta{color:var(--text-secondary);gap:.75rem;font-size:.75rem;display:flex}::-webkit-scrollbar{display:none!important}*{-ms-overflow-style:none!important;scrollbar-width:none!important}.app-wrapper{flex-direction:row;width:100vw;height:100vh;display:flex;overflow:hidden}.app-sidebar-left{border-right:1px solid var(--border-color);background:var(--bg-primary);z-index:40;flex-direction:column;flex-shrink:0;width:240px;padding:1.5rem 1rem;display:flex;overflow-y:auto}.app-sidebar-right{border-left:1px solid var(--border-color);background:var(--bg-primary);z-index:40;flex-direction:column;flex-shrink:0;width:280px;padding:1.5rem 1rem;display:flex;overflow-y:auto}.app-main{flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden auto}.fluid-grid{background-color:#0000;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:12px;display:grid}.masonry-grid{column-count:6;column-gap:.5rem}@media (max-width:1400px){.masonry-grid{column-count:5}}@media (max-width:1200px){.masonry-grid{column-count:4}}@media (max-width:900px){.masonry-grid{column-count:3}}@media (max-width:600px){.masonry-grid{column-count:2}}.mockup-gallery-card{transition:all .3s}.mockup-gallery-card:hover{transform:translateY(-4px);border-color:#fff6!important;box-shadow:0 10px 30px #ffffff1a!important}.mockup-img-inner{width:100%;height:100%;transition:all .4s cubic-bezier(.4,0,.2,1)}.mockup-gallery-card:hover .mockup-img-inner{filter:blur(5px)brightness(.6);transform:scale(1.05)}.mockup-hover-btn{color:#000;opacity:0;pointer-events:none;z-index:10;background:#fff;border-radius:100px;align-items:center;gap:4px;padding:8px 16px;font-size:.85rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.9);box-shadow:0 4px 12px #0000004d}.mockup-gallery-card:hover .mockup-hover-btn{opacity:1;transform:translate(-50%,-50%)scale(1)}.brutalist-item{will-change:transform;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1)}.brutalist-item:hover{z-index:10;transform:translateY(-4px)scale(1.01);box-shadow:0 10px 30px #0000001a}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{opacity:0;animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeUp}.interactive-btn{transition:all .2s}.interactive-btn:hover{transform:scale(1.05);background:var(--accent-primary)!important;color:var(--bg-primary)!important;border-color:var(--accent-primary)!important}.interactive-btn:active{transform:scale(.95)}.interactive-text-link{transition:all .2s;position:relative}.interactive-text-link:hover{transform:translateY(-1px);color:var(--text-primary)!important}.interactive-text-link:active{transform:translateY(1px)}.sidebar-nav-item{color:var(--text-secondary);border-radius:8px;align-items:center;gap:12px;margin-bottom:4px;padding:10px 16px;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.sidebar-nav-item svg{width:18px;height:18px}.sidebar-nav-item:hover,.sidebar-nav-item.active{background:var(--bg-panel);color:var(--text-primary)}.header-nav-pill{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:24px;align-items:center;gap:4px;padding:4px;display:flex;box-shadow:0 0 60px 15px #ffffff26}.header-nav-pill a{width:40px;height:40px;color:var(--text-secondary);border-radius:20px;justify-content:center;align-items:center;transition:all .2s;display:flex}.header-nav-pill a:hover,.header-nav-pill a.active{color:var(--text-primary);background:#ffffff1a}@media (max-width:768px){.app-wrapper{flex-direction:column-reverse}.app-sidebar{border-right:none;border-top:1px solid var(--border-color);flex-direction:row;justify-content:space-around;align-items:center;width:100%;height:70px;padding-top:0}.app-main{padding:0}.fluid-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;padding:8px}}
@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayXXThin-s.p.06lltl77q3b3q.ttf)format("truetype");font-display:swap;font-weight:100;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayXXThinItalic-s.p.3-ky8il_m_voj.ttf)format("truetype");font-display:swap;font-weight:100;font-style:italic}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayXThin-s.p.2hf1e9ngx_rq1.ttf)format("truetype");font-display:swap;font-weight:200;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayXThinItalic-s.p.0a8hr9v-zu16u.ttf)format("truetype");font-display:swap;font-weight:200;font-style:italic}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayThin-s.p.17vz-zda_n31-.ttf)format("truetype");font-display:swap;font-weight:300;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayThinItalic-s.p.3qi6xffkxmy7a.ttf)format("truetype");font-display:swap;font-weight:300;font-style:italic}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayLight-s.p.0vrwbbu72v8dl.ttf)format("truetype");font-display:swap;font-weight:350;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayLightItalic-s.p.3t4bb3hj12o84.ttf)format("truetype");font-display:swap;font-weight:350;font-style:italic}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayRoman-s.p.42ecful1dj4dh.ttf)format("truetype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayRomanItalic-s.p.2jci62e4ijjxj.ttf)format("truetype");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayMediu-s.p.34rpai2weogwz.ttf)format("truetype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayMediumItalic-s.p.0g6zajg4m0hye.ttf)format("truetype");font-display:swap;font-weight:500;font-style:italic}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayBold-s.p.38-79mzobwz08.ttf)format("truetype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayBoldItalic-s.p.2pkhnlp-x0_w-.ttf)format("truetype");font-display:swap;font-weight:700;font-style:italic}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayBlack-s.p.12y3mz153an34.ttf)format("truetype");font-display:swap;font-weight:900;font-style:normal}@font-face{font-family:neueHaas;src:url(../media/NeueHaasDisplayBlackItalic-s.p.20_v4ao-r_336.ttf)format("truetype");font-display:swap;font-weight:900;font-style:italic}@font-face{font-family:neueHaas Fallback;src:local(Arial);ascent-override:87.46%;descent-override:19.46%;line-gap-override:21.38%;size-adjust:93.53%}.neuehaas_6312e3a5-module__sfqJWa__className{font-family:neueHaas,neueHaas Fallback}.neuehaas_6312e3a5-module__sfqJWa__variable{--font-neue:"neueHaas", "neueHaas Fallback"}
@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYULTRALIGHTITALIC-s.p.2k9bdx0tqfh6c.otf)format("opentype");font-display:swap;font-weight:100;font-style:italic}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYTHINITALIC-s.p.009l-91_4h8ko.otf)format("opentype");font-display:swap;font-weight:200;font-style:italic}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYLIGHTITALIC-s.p.2g60f-vt3u6tv.otf)format("opentype");font-display:swap;font-weight:300;font-style:italic}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYREGULAR-s.p.20xy-73-675no.otf)format("opentype");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYMEDIUM-s.p.1ulpgkjekqxnt.otf)format("opentype");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYSEMIBOLDITALIC-s.p.42xw28w5j-3-p.otf)format("opentype");font-display:swap;font-weight:600;font-style:italic}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYBOLD-s.p.38o12hsqftmij.otf)format("opentype");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYHEAVYITALIC-s.p.3o70cwlkvxm05.otf)format("opentype");font-display:swap;font-weight:800;font-style:italic}@font-face{font-family:sfPro;src:url(../media/SFPRODISPLAYBLACKITALIC-s.p.1hzs5uueken2g.otf)format("opentype");font-display:swap;font-weight:900;font-style:italic}@font-face{font-family:sfPro Fallback;src:local(Arial);ascent-override:101.52%;descent-override:25.72%;line-gap-override:0.0%;size-adjust:93.79%}.sfpro_76f76808-module__El3bHG__className{font-family:sfPro,sfPro Fallback}.sfpro_76f76808-module__El3bHG__variable{--font-sf:"sfPro", "sfPro Fallback"}
