.glitch-input-wrap{width:100%}.glitch-input-label{display:flex;align-items:center;gap:.35rem;font-family:var(--font-display);font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--text-dim);margin-bottom:.4rem}.glitch-input{width:100%;padding:.75rem;font-family:var(--font-body);font-size:.85rem;color:var(--text);background:#ff00ff08;border:1px solid var(--border);border-radius:6px;resize:vertical;outline:none;line-height:1.5}.glitch-input:focus{border-color:var(--accent);box-shadow:0 0 8px #ff00ff1a}.glitch-input::placeholder{color:var(--text-dim);opacity:.4}.glitch-input-actions{display:flex;align-items:center;justify-content:space-between;margin-top:.35rem}.glitch-charcount{font-size:.65rem;color:var(--text-dim)}.glitch-copy-btn{display:flex;align-items:center;gap:.3rem;padding:.3rem .6rem;font-family:var(--font-body);font-size:.65rem;color:var(--text-dim);background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:color .15s,border-color .15s}.glitch-copy-btn:hover{color:var(--accent);border-color:var(--accent)}.glitch-preview-area{position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem}.glitch-preview-frame{position:relative;overflow:hidden}.glitch-text{position:relative;display:inline-block;animation:glitchFlicker calc(var(--flicker-speed) * 3) infinite step-end}.glitch-text:before,.glitch-text:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.glitch-text:before{animation:glitchSplit1 calc(var(--flicker-speed) * 2) infinite linear alternate-reverse;clip-path:inset(0 calc(var(--glitch-int) * 1.5) 0 0);color:var(--neon-color);opacity:.85}.glitch-text:after{animation:glitchSplit2 calc(var(--flicker-speed) * 2) infinite linear alternate-reverse;clip-path:inset(0 0 0 calc(var(--glitch-int) * 1.5));color:#0ff;opacity:.85}@keyframes glitchSplit1{0%{transform:translate(0)}25%{transform:translate(calc(var(--glitch-int) * -1),calc(var(--glitch-int)))}50%{transform:translate(calc(var(--glitch-int)),calc(var(--glitch-int) * -.5))}75%{transform:translate(calc(var(--glitch-int) * -.5),calc(var(--glitch-int)))}to{transform:translate(0)}}@keyframes glitchSplit2{0%{transform:translate(0)}25%{transform:translate(calc(var(--glitch-int)),calc(var(--glitch-int) * -1))}50%{transform:translate(calc(var(--glitch-int) * -1),calc(var(--glitch-int) * .5))}75%{transform:translate(calc(var(--glitch-int) * .5),calc(var(--glitch-int) * -1))}to{transform:translate(0)}}@keyframes glitchFlicker{0%,90%{opacity:1}92%{opacity:.7}94%{opacity:1}96%{opacity:.3}98%{opacity:.8}to{opacity:1}}.glitch-scanline{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.3) 2px,rgba(0,0,0,.3) 4px);z-index:2}.glitch-flicker{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;background:#ffffff08;animation:screenFlicker var(--flicker-speed) infinite step-end}@keyframes screenFlicker{0%,to{opacity:0}50%{opacity:1}}.glitch-copy-html-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;font-family:var(--font-body);font-size:.7rem;color:var(--text-dim);background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .15s}.glitch-copy-html-btn:hover{color:var(--accent);border-color:var(--accent);box-shadow:0 0 10px #ff00ff1a}.effect-controls{display:flex;flex-direction:column;gap:.35rem;width:100%}.effect-section-title{font-family:var(--font-display);font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--text-dim);margin-bottom:.25rem;display:flex;align-items:center;gap:.35rem}.effect-label{font-size:.7rem;color:var(--text-dim);margin-top:.25rem}.effect-slider{width:100%;-webkit-appearance:none;height:4px;background:var(--border);border-radius:2px;outline:none}.effect-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid var(--bg);box-shadow:0 0 4px #00000080}.effect-value{font-size:.65rem;color:var(--text-dim);text-align:right}.effect-color-row{display:flex;align-items:center;gap:.5rem}.effect-color-swatches{display:flex;gap:3px;flex-wrap:wrap}.effect-swatch{width:22px;height:22px;border-radius:4px;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .1s}.effect-swatch:hover{transform:scale(1.15)}.effect-swatch--active{border-color:#fff;box-shadow:0 0 6px currentColor}.effect-hex{font-family:var(--font-body);font-size:.7rem;color:var(--text-dim)}.effect-color-input{width:100%;height:32px;padding:2px;border:1px solid var(--border);border-radius:4px;background:transparent;cursor:pointer}:root{--bg: #0a0a0a;--text: #e0e0e0;--text-dim: #666;--accent: #ff00ff;--border: rgba(255, 0, 255, .15);--font-body: "JetBrains Mono", monospace;--font-display: "Silkscreen", monospace;--font-jp: "Noto Serif JP", serif}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;min-height:100vh}body{font-family:var(--font-body);background:var(--bg);color:var(--text)}.app{display:flex;flex-direction:column;min-height:100vh;background:var(--bg)}.app-header{text-align:center;padding:2rem 1rem 1rem;border-bottom:1px solid var(--border)}.app-title{font-family:var(--font-display);font-size:1.2rem;text-transform:uppercase;letter-spacing:.2em;color:var(--accent);text-shadow:0 0 10px var(--accent)}.app-subtitle{font-size:.7rem;color:var(--text-dim);margin-top:.3rem;text-transform:uppercase;letter-spacing:.15em}.app-main{flex:1;display:flex;flex-direction:column}.app-columns{display:flex;flex:1}.app-controls{flex:0 0 340px;padding:1rem;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.app-preview{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;overflow:hidden}.app-credit{text-align:center;font-size:.55rem;color:var(--text-dim);padding:.5rem;border-top:1px solid var(--border);-webkit-user-select:none;user-select:none}@media(max-width:768px){.app-columns{flex-direction:column}.app-controls{flex:none;border-right:none;border-bottom:1px solid var(--border)}}
