@import "https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700;900&family=Share+Tech+Mono&display=swap";:root{--color-bg:#000;--color-bg-elevated:#040410;--color-surface:#0a0a18;--color-surface-2:#0f0f22;--color-surface-3:#151530;--color-text:#dde4ff;--color-text-secondary:#89c;--color-text-muted:#56a;--color-text-inverse:#000;--color-neon-cyan:#0ff;--color-neon-magenta:#f0a;--color-neon-amber:#fc0;--glow-cyan-sm:0 0 6px #0ff6;--glow-cyan-md:0 0 12px #00ffff80;--glow-cyan-lg:0 0 24px #0ff6, 0 0 48px #0ff3;--glow-magenta-sm:0 0 6px #f0a6;--glow-magenta-md:0 0 12px #ff00aa80;--glow-amber-sm:0 0 6px #fc06;--color-accent:var(--color-neon-cyan);--color-accent-hover:#3ff;--color-accent-muted:#00ffff1a;--color-accent-pink:var(--color-neon-magenta);--color-success:#0f6;--color-success-muted:#00ff661a;--color-error:#f14;--color-error-muted:#ff11441a;--color-warning:var(--color-neon-amber);--color-warning-muted:#ffcc001a;--color-border:#1a1a35;--color-border-emphasized:#2a2a55;--color-border-neon:#00ffff40;--color-overlay:#000000e6;--color-ring:var(--color-neon-cyan);--font-display:"Orbitron", sans-serif;--font-body:"Share Tech Mono", "JetBrains Mono", monospace;--font-mono:"JetBrains Mono", monospace;--text-xs:.7rem;--text-sm:.8rem;--text-base:.9rem;--text-md:1rem;--text-lg:1.15rem;--text-xl:1.35rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:2px;--radius-md:3px;--radius-lg:4px;--radius-xl:6px;--shadow-sm:0 1px 2px #000c;--shadow-md:0 4px 12px #000000e6;--shadow-lg:0 8px 32px #000000f2;--z-base:0;--z-sticky:10;--z-dropdown:20;--z-overlay:40;--z-side-panel:50;--z-modal-backdrop:100;--z-modal:101;--z-toast:200;--z-scanlines:9998;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:var(--color-bg);--surface:var(--color-surface);--surface-2:var(--color-surface-2);--text:var(--color-text);--text-muted:var(--color-text-muted);--accent:var(--color-neon-cyan);--accent-hover:var(--color-accent-hover);--accent-bg:var(--color-accent-muted);--accent-border:var(--color-border-neon);--border:var(--color-border);--success:var(--color-success);--error:var(--color-error)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;line-height:1.6}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}button{cursor:pointer}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;overflow-x:hidden}body:after{content:"";pointer-events:none;z-index:var(--z-scanlines);background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000014 2px 4px);position:fixed;inset:0}body:before{content:"";pointer-events:none;z-index:var(--z-scanlines);background:radial-gradient(#0000 55%,#00000080 100%);position:fixed;inset:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text)}h1{font-size:var(--text-3xl);font-weight:900}h2{font-size:var(--text-2xl);font-weight:700}h3{font-size:var(--text-xl);font-weight:700}h4{font-size:var(--text-lg);font-weight:500}::selection{background:var(--color-neon-cyan);color:var(--color-bg)}:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px;box-shadow:var(--glow-cyan-sm)}a{color:var(--color-neon-cyan);text-decoration:none;transition:text-shadow .2s}a:hover{text-shadow:var(--glow-cyan-sm);text-decoration:underline}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-surface-3);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-neon-cyan)}@media (prefers-reduced-motion:reduce){body:after,body:before{display:none}}.neon-text-cyan{color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-md)}.neon-text-magenta{color:var(--color-neon-magenta);text-shadow:var(--glow-magenta-md)}.neon-text-amber{color:var(--color-neon-amber);text-shadow:var(--glow-amber-sm)}.glitch-hover{cursor:default;position:relative}.glitch-hover:hover{animation:.3s glitch-shift}.glitch-hover:before,.glitch-hover:after{content:attr(data-text);opacity:0;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.glitch-hover:hover:before{color:var(--color-neon-magenta);clip-path:inset(0 0 50%);opacity:1;animation:.3s glitch-shift;transform:translate(-2px)}.glitch-hover:hover:after{color:var(--color-neon-cyan);clip-path:inset(50% 0 0);opacity:1;animation:.3s reverse glitch-shift;transform:translate(2px)}.data-border{position:relative}.data-border:after{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--color-neon-cyan), var(--color-neon-magenta), var(--color-neon-cyan));z-index:-1;opacity:0;pointer-events:none;background-size:200% 100%;transition:opacity .3s;animation:3s linear infinite border-scan;position:absolute;inset:-1px}.data-border:hover:after,.data-border.active:after{opacity:1}.data-divider{background:repeating-linear-gradient(90deg, var(--color-neon-cyan) 0px, var(--color-neon-cyan) 4px, transparent 4px, transparent 8px);opacity:.3;height:1px;margin:var(--space-4) 0}.crt-frame{border:3px solid var(--color-surface-3);border-radius:var(--radius-lg);position:relative;overflow:hidden}.crt-frame:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#0000000f 3px 6px);position:absolute;inset:0}.scanline-sweep{position:relative}.scanline-sweep:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#00ffff0f 50%,#0000 100%);height:50%;transition:top .5s;position:absolute;top:-100%;left:0;right:0}.scanline-sweep:hover:after{top:100%}.data-stream{align-items:center;gap:4px;display:inline-flex}.data-stream-dot{background:var(--color-neon-cyan);border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite data-stream}.data-stream-dot:nth-child(2){animation-delay:.2s}.data-stream-dot:nth-child(3){animation-delay:.4s}.data-stream-dot:nth-child(4){animation-delay:.6s}.data-stream-dot:nth-child(5){animation-delay:.8s}.neon-pulse{animation:2s ease-in-out infinite neon-pulse}@keyframes glitch-shift{0%,to{transform:translate(0)}20%{transform:translate(-2px,1px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,2px)}80%{transform:translate(1px,-2px)}}@keyframes neon-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes border-scan{0%{background-position:200% 0}to{background-position:0 0}}@keyframes data-stream{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}@keyframes stagger-fade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes text-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.8}94%{opacity:1}96%{opacity:.9}97%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.burger-button{cursor:pointer;color:var(--color-text);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;transition:color .2s;display:flex}.burger-button:hover{color:var(--color-neon-cyan)}.burger-icon{flex-direction:column;justify-content:space-between;width:24px;height:18px;display:flex}.line{border-radius:var(--radius-sm);background-color:currentColor;width:100%;height:3px;transition:all .3s}.burger-button.open .line:first-child{transform:translateY(7.5px)rotate(45deg)}.burger-button.open .line:nth-child(2){opacity:0}.burger-button.open .line:nth-child(3){transform:translateY(-7.5px)rotate(-45deg)}.status-bar{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;padding:0 .5rem;display:flex}.status-bar:hover{color:var(--color-neon-cyan)}.status-bar-item{align-items:center;gap:.5rem;display:flex}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot-green{background-color:var(--color-success);box-shadow:0 0 6px #00ff6680}.dot-gray{background-color:var(--color-text-muted)}.status-text{font-family:var(--font-body);white-space:nowrap}.disconnect-btn{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;margin-left:.25rem;padding:0 .25rem;transition:color .2s;display:inline-flex}.disconnect-btn:hover{color:var(--color-neon-amber)}.app-header{background:var(--color-bg);height:64px;z-index:var(--z-sticky);justify-content:space-between;align-items:center;padding:0 1rem;display:flex;position:sticky;top:0}.app-header:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-neon-cyan) 20%, var(--color-neon-magenta) 50%, var(--color-neon-cyan) 80%, transparent 100%);opacity:.6;height:1px;position:absolute;bottom:0;left:0;right:0}.header-left,.header-right{flex:1;align-items:center;display:flex}.header-left{gap:1rem}.header-right{justify-content:flex-end;gap:.5rem}.header-center{flex:2;justify-content:center;align-items:center;display:flex}.header-logo{object-fit:contain;border-radius:var(--radius-sm);width:40px;height:40px}.header-title{color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-sm);margin:0;font-size:1.2rem;font-weight:900;transition:text-shadow .3s}.header-title:hover{text-shadow:var(--glow-cyan-lg)}.app-footer{padding:var(--space-4) var(--space-4);justify-content:center;align-items:center;margin-top:auto;display:flex;position:relative}.app-footer:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--color-neon-magenta) 20%, var(--color-neon-cyan) 50%, var(--color-neon-magenta) 80%, transparent 100%);opacity:.4;height:1px;position:absolute;top:0;left:0;right:0}.footer-text{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted)}.footer-link{color:var(--color-neon-cyan);text-decoration:none;transition:color .2s,text-shadow .2s}.footer-link:hover{color:var(--color-accent-hover);text-shadow:var(--glow-cyan-sm)}.side-panel-backdrop{background:var(--color-overlay);z-index:var(--z-side-panel);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;position:fixed;inset:0}.side-panel-backdrop.open{opacity:1;visibility:visible}.side-panel{background:var(--color-surface);border-left:1px solid var(--color-border-emphasized);width:180px;z-index:var(--z-side-panel);padding:80px var(--space-4) var(--space-4);flex-direction:column;align-items:center;transition:transform .3s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.side-panel.open{transform:translate(0);box-shadow:-8px 0 32px #000c}.side-panel a{color:var(--color-text-secondary);padding:var(--space-3) 0;font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;text-decoration:none;transition:color .2s}.side-panel a:hover{color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-sm)}.side-panel .side-panel-bottom{margin-top:auto}.paywall-overlay{background:var(--color-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:var(--z-modal);justify-content:center;align-items:center;animation:.2s fade-in;display:flex;position:fixed;inset:0}.paywall-modal{background:var(--color-surface);border:1px solid var(--color-border-emphasized);border-radius:var(--radius-lg);padding:var(--space-8);width:90%;max-width:480px;max-height:90vh;box-shadow:var(--shadow-lg), var(--glow-cyan-sm);animation:.3s slide-up;position:relative;overflow-y:auto}.paywall-close{top:var(--space-4);right:var(--space-4);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);background:0 0;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute}.paywall-close:hover{background:var(--color-error);border-color:var(--color-error);color:#fff}.paywall-content{gap:var(--space-6);flex-direction:column;display:flex}.paywall-header{text-align:center}.paywall-header .paywall-icon{border-radius:var(--radius-lg);background:var(--color-accent-muted);width:72px;height:72px;color:var(--color-neon-cyan);margin-bottom:var(--space-4);box-shadow:var(--glow-cyan-sm);justify-content:center;align-items:center;display:inline-flex}.paywall-header h2{margin:0 0 var(--space-2);font-size:var(--text-xl);color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-sm)}.paywall-header .paywall-subtitle{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-sm);margin:0}.payment-details{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.payment-row{justify-content:space-between;align-items:center;display:flex}.payment-label{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.payment-value{color:var(--color-text);font-family:var(--font-body);font-weight:500;font-size:var(--text-sm)}.payment-value.highlight{color:var(--color-neon-magenta);font-size:var(--text-md);text-shadow:var(--glow-magenta-sm)}.payment-value.address-value{align-items:center;gap:var(--space-2);display:flex}.address-text{font-family:var(--font-mono);font-size:var(--text-sm)}.network-badge{background:var(--color-accent-muted);color:var(--color-neon-cyan);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;padding:2px 10px}.copy-button{background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-muted);justify-content:center;align-items:center;padding:4px 6px;transition:all .2s;display:flex}.copy-button:hover{border-color:var(--color-neon-cyan);color:var(--color-neon-cyan)}.tx-link{color:var(--color-neon-cyan);font-family:var(--font-body);font-size:var(--text-xs);align-items:center;gap:4px;text-decoration:none;transition:all .2s;display:flex}.tx-link:hover{text-shadow:var(--glow-cyan-sm);text-decoration:underline}.payment-error{background:var(--color-error-muted);border:1px solid var(--color-error);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);align-items:center;gap:var(--space-3);color:var(--color-error);font-family:var(--font-body);font-size:var(--text-sm);display:flex}.payment-steps{gap:var(--space-3);flex-direction:column;display:flex}.payment-step{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all .2s;display:flex}.payment-step.completed{border-color:var(--color-success);background:var(--color-success-muted)}.payment-step.completed .step-title{color:var(--color-success)}.payment-step.active{border-color:var(--color-neon-cyan);box-shadow:var(--glow-cyan-sm)}.step-indicator{border-radius:var(--radius-lg);background:var(--color-surface-3);border:1px solid var(--color-border);width:40px;height:40px;font-family:var(--font-body);font-weight:700;font-size:var(--text-base);color:var(--color-text-muted);flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.payment-step.completed .step-indicator{background:var(--color-success);border-color:var(--color-success);color:var(--color-bg)}.payment-step.active .step-indicator{border-color:var(--color-neon-cyan);color:var(--color-neon-cyan)}.step-spinner{border:3px solid var(--color-accent-muted);border-top-color:var(--color-neon-cyan);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.payment-step.completed .step-spinner{border-color:var(--color-success-muted);border-top-color:var(--color-success)}.step-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.step-title{font-family:var(--font-body);color:var(--color-text);font-weight:500;font-size:var(--text-sm)}.step-subtitle{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);align-items:center;gap:6px;display:flex}.step-action{padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;font-weight:700;transition:all .2s}.button-primary{background:var(--color-neon-cyan);color:var(--color-bg);box-shadow:var(--glow-cyan-sm)}.button-primary:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--glow-cyan-md)}.button-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.payment-success{background:var(--color-success-muted);border:1px solid var(--color-success);border-radius:var(--radius-sm);padding:var(--space-4);align-items:center;gap:var(--space-3);color:var(--color-success);font-family:var(--font-body);font-weight:500;font-size:var(--text-sm);animation:.3s fade-in;display:flex}.payment-verifying{background:var(--color-accent-muted);border:1px solid var(--color-neon-cyan);border-radius:var(--radius-sm);padding:var(--space-4);align-items:center;gap:var(--space-3);color:var(--color-neon-cyan);font-family:var(--font-body);font-weight:500;font-size:var(--text-sm);animation:.3s fade-in;display:flex}.verifying-spinner{border:3px solid var(--color-accent-muted);border-top-color:var(--color-neon-cyan);border-radius:50%;flex-shrink:0;width:20px;height:20px;animation:.8s linear infinite spin}.paywall-footer{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.paywall-footer p{justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-xs);margin:0;display:flex}.wallet-selection-modal{max-width:440px}.wallet-selection-header{text-align:center;margin-bottom:var(--space-4)}.wallet-selection-header h3{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-sm)}.wallet-selection-header p{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-sm);margin:0}.wallet-connecting{align-items:center;gap:var(--space-4);padding:var(--space-8) 0;flex-direction:column;display:flex}.wallet-connecting p{color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--text-sm);margin:0}.connecting-spinner{border:3px solid var(--color-accent-muted);border-top-color:var(--color-neon-cyan);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.wallet-options{gap:var(--space-3);flex-direction:column;display:flex}.wallet-option{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;font-family:var(--font-body);color:var(--color-text);text-align:left;width:100%;transition:all .2s;display:flex}.wallet-option:hover{border-color:var(--color-border-neon);background:var(--color-surface-3);box-shadow:var(--glow-cyan-sm)}.wallet-option:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.wallet-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.wallet-icon img{object-fit:contain;width:24px;height:24px}.wallet-icon.metamask{background:#1a0a00;border:1px solid #ff8c004d}.wallet-icon.walletconnect{background:#00101a;border:1px solid #2896ff4d}.wallet-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.wallet-name{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text);font-weight:600}.wallet-description{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted)}.wallet-arrow{color:var(--color-text-muted);flex-shrink:0;align-items:center;transition:color .2s;display:flex}.wallet-option:hover .wallet-arrow{color:var(--color-neon-cyan)}.no-wallet-hint{text-align:center;padding:var(--space-4) var(--space-3);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-xs);border:1px dashed var(--color-border);border-radius:var(--radius-md);margin-top:var(--space-2)}.status-indicator{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);background:var(--color-surface);font-family:var(--font-body);border:1px solid;flex-direction:column;animation:.3s fade-in;display:flex}.status-indicator.status-generating{border-color:var(--color-neon-cyan);color:var(--color-neon-cyan);box-shadow:var(--glow-cyan-sm)}.status-indicator.status-completed{border-color:var(--color-success);color:var(--color-success)}.status-indicator.status-error{border-color:var(--color-error);color:var(--color-error)}.status-indicator.status-payment_required{border-color:var(--color-neon-amber);color:var(--color-neon-amber);box-shadow:var(--glow-amber-sm)}.status-icon{justify-content:center;align-items:center;font-size:24px;display:flex}.status-label{font-size:var(--text-sm);text-align:center;font-weight:500}.status-error{font-size:var(--text-xs);color:var(--color-error);text-align:center;max-width:300px}.status-generating .status-icon{animation:1.5s ease-in-out infinite neon-pulse}.status-indicator .data-stream{margin-top:var(--space-1)}.config-page{max-width:600px;padding:var(--space-12) var(--space-6);margin:0 auto}.config-page h2{margin-bottom:var(--space-8);color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-sm)}.config-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);flex-direction:column;align-items:center;display:flex}.config-section h3{margin-bottom:var(--space-4);font-size:var(--text-md)}.config-stat{margin-bottom:var(--space-3);color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--text-sm)}.config-stat strong{color:var(--color-text)}.config-section .button{margin-top:var(--space-4);color:var(--color-error)}w3m-modal,wc-modal,walletconnect-modal,[data-wcm-modal]{z-index:10000!important}.app{flex-direction:column;min-height:100dvh;display:flex}.app-main{max-width:1200px;padding:var(--space-6);gap:var(--space-6);grid-template-columns:380px 1fr;width:100%;margin:0 auto;display:grid;position:relative}@media (width<=900px){.app-main{padding:var(--space-4);grid-template-columns:1fr}}@media (width<=480px){.app-main{padding:var(--space-3);gap:var(--space-4)}}.upload-section:before{content:"[ UPLOAD ]";font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--space-3);display:block}.gallery-section:before{content:"[ PROMPTS ]";font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--space-3);display:block}.status-section:before{content:"[ STATUS ]";font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--space-3);display:block}.result-section:before{content:"[ OUTPUT ]";font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--space-3);display:block}.image-upload>h3,.prompt-gallery>h3,.result-section>h3{display:none}.image-upload{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);height:fit-content;top:var(--space-6);position:sticky}@media (width<=900px){.image-upload{position:static}}@media (width<=480px){.image-upload{padding:var(--space-3)}}.category-selector{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.category-selector label{align-items:center;gap:var(--space-1);cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-secondary);min-height:44px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:all .2s;display:flex}.category-selector label:hover,.category-selector label:focus-visible{border-color:var(--color-neon-cyan);background:var(--color-accent-muted);color:var(--color-neon-cyan)}.category-selector input[type=radio]{accent-color:var(--color-neon-cyan);min-width:18px;min-height:18px}.drop-zone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);justify-content:center;align-items:center;min-height:280px;transition:all .3s;display:flex;position:relative;overflow:hidden}.drop-zone.drag-over{border-color:var(--color-neon-cyan);background:var(--color-accent-muted);box-shadow:var(--glow-cyan-sm)}.drop-zone.has-preview{border-style:solid;border-color:var(--color-surface-2)}.drop-zone.drop-zone-clickable{cursor:pointer}.drop-zone.drop-zone-clickable:hover{border-color:var(--color-border-emphasized)}.drop-placeholder{text-align:center;padding:var(--space-5)}.drop-placeholder p{color:var(--color-text-muted);margin:0 0 var(--space-3);font-family:var(--font-body);font-size:var(--text-sm)}.drop-placeholder .button.file-input-label{padding:var(--space-3) var(--space-5);background:var(--color-neon-cyan);min-height:44px;color:var(--color-bg);font-family:var(--font-body);border-radius:var(--radius-sm);cursor:pointer;font-weight:700;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;box-shadow:var(--glow-cyan-sm);border:none;transition:all .2s;display:inline-block}.drop-placeholder .button.file-input-label:hover{box-shadow:var(--glow-cyan-md);transform:translateY(-1px)}.preview-image{object-fit:contain;max-width:100%;max-height:380px}.image-upload>.button.secondary{width:100%;margin-top:var(--space-3)}.empty-state{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-6);text-align:center;color:var(--color-text-muted);font-family:var(--font-body)}.gallery-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}@media (width<=640px){.gallery-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media (width<=480px){.gallery-grid{gap:var(--space-2);grid-template-columns:repeat(2,1fr)}}.gallery-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);opacity:0;flex-direction:column;justify-content:space-between;transition:all .3s;animation:.4s forwards stagger-fade;display:flex;overflow:hidden}.gallery-item:first-child{animation-delay:0s}.gallery-item:nth-child(2){animation-delay:50ms}.gallery-item:nth-child(3){animation-delay:.1s}.gallery-item:nth-child(4){animation-delay:.15s}.gallery-item:nth-child(5){animation-delay:.2s}.gallery-item:nth-child(6){animation-delay:.25s}.gallery-item:nth-child(7){animation-delay:.3s}.gallery-item:nth-child(8){animation-delay:.35s}.gallery-item:nth-child(9){animation-delay:.4s}.gallery-item:nth-child(10){animation-delay:.45s}.gallery-item:nth-child(11){animation-delay:.5s}.gallery-item:nth-child(12){animation-delay:.55s}.gallery-item:nth-child(13){animation-delay:.6s}.gallery-item:nth-child(14){animation-delay:.65s}.gallery-item:nth-child(15){animation-delay:.7s}.gallery-item:nth-child(16){animation-delay:.75s}.gallery-item:nth-child(17){animation-delay:.8s}.gallery-item:nth-child(18){animation-delay:.85s}.gallery-item:nth-child(19){animation-delay:.9s}.gallery-item:nth-child(20){animation-delay:.95s}.gallery-item.selected{border-color:var(--color-neon-magenta);box-shadow:var(--glow-magenta-sm)}.gallery-item:hover{border-color:var(--color-neon-cyan);box-shadow:var(--shadow-md), var(--glow-cyan-sm);transform:translateY(-2px)}.gallery-image{aspect-ratio:1;position:relative;overflow:hidden}.gallery-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.gallery-item:hover .gallery-image img{transform:scale(1.06)}.gallery-item .gallery-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#00ffff0f 50%,#0000 100%);height:60%;transition:top .5s;position:absolute;top:-100%;left:0;right:0}.gallery-item:hover .gallery-image:after{top:100%}.gallery-info{padding:var(--space-3)}.gallery-info h4{margin:0 0 var(--space-1);font-family:var(--font-display);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text);font-weight:700}.gallery-info .gallery-prompt{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.gallery-item .turn-into-btn{width:100%;padding:var(--space-2) var(--space-3);background:var(--color-neon-cyan);min-height:44px;color:var(--color-bg);cursor:pointer;font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;box-shadow:var(--glow-cyan-sm);border:none;font-weight:700;transition:all .2s}.gallery-item .turn-into-btn:hover:not(:disabled){background:var(--color-accent-hover);box-shadow:var(--glow-cyan-md)}.gallery-item .turn-into-btn:disabled{background:var(--color-surface-3);color:var(--color-text-muted);box-shadow:none;cursor:not-allowed}.gallery-item.selected .turn-into-btn{background:var(--color-neon-magenta);color:var(--color-bg);box-shadow:var(--glow-magenta-sm)}.result-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;grid-column:1/-1;animation:.4s fade-in}.result-section img{border-radius:var(--radius-lg);border:3px solid var(--color-surface-3);max-width:100%;max-height:500px}.result-actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;justify-content:center;display:flex}.result-actions .button{min-height:44px;padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em}.button{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);min-height:44px;font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;border:1px solid #0000;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.button.primary{background:var(--color-neon-cyan);color:var(--color-bg);box-shadow:var(--glow-cyan-sm)}.button.primary:hover:not(:disabled),.button.primary:focus-visible:not(:disabled){box-shadow:var(--glow-cyan-md);background:var(--color-accent-hover)}.button.primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.button.secondary{color:var(--color-text);border-color:var(--color-border);background:0 0}.button.secondary:hover:not(:disabled),.button.secondary:focus-visible:not(:disabled){border-color:var(--color-neon-cyan);background:var(--color-accent-muted);color:var(--color-neon-cyan)}.button.danger{color:#fff;background:#8b0000;border-color:#fff}.button.danger:hover:not(:disabled),.button.danger:focus-visible:not(:disabled){border-color:var(--color-error);background:var(--color-error-muted);color:var(--color-error)}.page-placeholder{max-width:1200px;padding:var(--space-6);text-align:center;width:100%;margin:20px}.page-placeholder h2{margin:0 0 var(--space-4);font-size:var(--text-2xl);color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-sm)}.page-placeholder h3{margin:var(--space-8) 0 var(--space-3);font-size:var(--text-md);color:var(--color-neon-magenta)}.page-placeholder p{font-family:var(--font-body);font-size:var(--text-base);max-width:600px;margin:0 auto;line-height:1.8}.about-steps{text-align:center;max-width:600px;margin:0 auto var(--space-6);color:var(--color-text);line-height:2;font-family:var(--font-body)}.loading-text{color:var(--color-text-muted);font-family:var(--font-body)}.no-wallet-hint{text-align:center;padding:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm);font-family:var(--font-body)}.pwa-update-banner{background:var(--color-neon-amber);color:var(--color-bg);justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);z-index:1000;font-family:var(--font-body);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;font-weight:700;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 8px #00000080}.pwa-update-banner span{font-weight:700}.pwa-update-banner .button{min-height:36px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.pwa-update-banner .button.primary{background:var(--color-bg);color:var(--color-neon-amber);box-shadow:none}.pwa-update-banner .button.primary:hover{background:var(--color-surface)}.pwa-update-banner .button.secondary{color:var(--color-bg);border-color:#0000004d}.pwa-update-banner .button.secondary:hover{color:var(--color-bg);background:#0000001a}.image-modal-overlay{background:var(--color-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;justify-content:center;align-items:center;animation:.2s fade-in;display:flex;position:fixed;inset:0}.image-modal{background:var(--color-surface);border:1px solid var(--color-border-emphasized);border-radius:var(--radius-lg);width:auto;max-width:90vw;max-height:90vh;box-shadow:var(--shadow-lg), var(--glow-cyan-sm);flex-direction:column;animation:.3s slide-up;display:flex;position:relative;overflow:hidden}.image-modal-close{top:var(--space-3);right:var(--space-3);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);z-index:10;background:#0009;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute}.image-modal-close:hover{background:var(--color-error);border-color:var(--color-error);color:#fff}.image-modal-body{background:var(--color-bg);justify-content:center;align-items:center;max-height:70vh;display:flex;overflow:hidden}.image-modal-img{object-fit:contain;max-width:100%;max-height:70vh}.image-modal-info{padding:var(--space-5) var(--space-6);gap:var(--space-4);flex-direction:column;display:flex}.image-modal-actions{justify-content:center;gap:var(--space-3);display:flex}.image-modal-metadata{gap:var(--space-2);padding:var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-direction:column;display:flex}.metadata-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.metadata-label{color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.metadata-value{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);text-align:right;word-break:break-all}.metadata-value.highlight{color:var(--color-success);text-shadow:0 0 6px #00ff664d;font-weight:700}.metadata-value.tx-link{color:var(--color-neon-cyan);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.metadata-value.tx-link:hover{text-shadow:var(--glow-cyan-sm);text-decoration:underline}.my-images-page{grid-column:1/-1;width:100%}.my-images-page .gallery-grid{flex-flow:wrap;justify-content:space-around;display:flex}.my-images-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.my-images-header h2{font-size:var(--text-xl);color:var(--color-neon-cyan);text-shadow:var(--glow-cyan-sm);margin:0}.my-images-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-6);text-align:center;font-family:var(--font-body)}.my-images-empty p{margin:0 0 var(--space-2);font-size:var(--text-base)}.my-images-empty .my-images-hint{color:var(--color-text-muted);font-size:var(--text-sm)}.my-image-card{width:300px;position:relative}.my-image-card .gallery-image{cursor:pointer;aspect-ratio:1;overflow:hidden}.my-image-card .gallery-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.my-image-card:hover .gallery-image img{transform:scale(1.05)}.my-image-card .my-image-delete{top:var(--space-2);right:var(--space-2);border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);opacity:0;background:#000000bf;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute}.my-image-card .my-image-delete:hover{background:var(--color-error);border-color:var(--color-error);color:#fff}.my-image-card:hover .my-image-delete{opacity:1}
