:root{--bg-base: #0a0a0a;--bg-panel: #0f0f0f;--bg-surface: #141414;--bg-raised: #1a1a1a;--accent: #00e5ff;--accent-dim: #00b8cc;--accent-glow: rgba(0, 229, 255, .12);--success: #00ff9f;--success-dim: #00cc7a;--success-glow: rgba(0, 255, 159, .1);--text-primary: #e8e8e8;--text-secondary:#8a8a8a;--text-muted: #555555;--text-accent: var(--accent);--error: #ff4444;--error-dim: #cc2222;--error-glow: rgba(255, 68, 68, .12);--warning: #ffaa00;--border: #2a2a2a;--border-dim: #1e1e1e;--border-accent: var(--accent-dim);--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", ui-monospace, "SF Mono", "Consolas", "Liberation Mono", "Courier New", monospace;--sp-xs: .25rem;--sp-sm: .5rem;--sp-md: .75rem;--sp-lg: 1rem;--sp-xl: 1.5rem;--sp-2xl: 2rem;--transition: .15s ease}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;font-family:var(--font-mono);font-size:.92rem;line-height:1.6;background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,229,255,.015) 2px,rgba(0,229,255,.015) 4px)}@keyframes glitch-clip{0%{clip-path:inset(0 0 96% 0);transform:translate(-2px)}10%{clip-path:inset(30% 0 60% 0);transform:translate(2px)}20%{clip-path:inset(60% 0 30% 0);transform:translate(-1px)}30%{clip-path:inset(80% 0 5% 0);transform:translate(1px)}40%{clip-path:inset(0 0 0 0);transform:translate(0)}to{clip-path:inset(0 0 0 0);transform:translate(0)}}@keyframes glitch-shift{0%{opacity:0}5%{opacity:.6;color:var(--accent);transform:translate(3px,-1px)}10%{opacity:0}15%{opacity:.4;color:var(--error);transform:translate(-3px,1px)}20%{opacity:0}to{opacity:0}}@keyframes glitch-main{0%,89%{transform:translate(0)}90%{transform:translate(-1px)}91%{transform:translate(1px)}92%{transform:translate(0)}to{transform:translate(0)}}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}#root{width:100%}.app-shell{min-height:100vh;display:grid;place-items:start center;padding:var(--sp-2xl) var(--sp-lg)}.panel{width:min(800px,100%);background:var(--bg-panel);border:1px solid var(--border);border-radius:0;padding:var(--sp-xl);box-shadow:0 0 0 1px var(--border-dim),0 2px 40px #000c,0 0 80px #00e5ff0a;position:relative}.panel:before{content:"● ● ●";display:block;position:absolute;top:-1.6rem;left:0;color:var(--text-muted);font-size:.55rem;letter-spacing:.35rem}h1{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);position:relative;display:inline-block;animation:glitch-main 6s infinite}h1:before,h1:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none}h1:before{animation:glitch-clip 6s infinite;animation-delay:.1s;color:var(--error);opacity:0;animation-fill-mode:forwards}h1:after{animation:glitch-shift 6s infinite;animation-delay:0s}h1 .cursor{display:inline-block;width:.6ch;height:1.1em;background:var(--accent);margin-left:.3ch;vertical-align:text-bottom;animation:cursor-blink 1.1s step-end infinite}h2{margin:var(--sp-lg) 0 0;font-size:1rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary)}h2:before{content:"> ";color:var(--accent);opacity:.7}@media(prefers-reduced-motion:reduce){h1,h1:before,h1:after{animation:none}h1:before,h1:after{display:none}.cursor{animation:none;opacity:1}}.subtitle{margin:var(--sp-xs) 0 var(--sp-lg);color:var(--text-secondary);font-size:.85rem}.subtitle:before{content:"# ";color:var(--text-muted)}.guidance{margin:var(--sp-md) 0 0;font-size:.85rem;color:var(--text-secondary)}.guidance:before{content:"// ";color:var(--text-muted)}.mode-toggle{margin-top:var(--sp-lg);display:inline-flex;gap:0;border:1px solid var(--border);border-radius:0;padding:0;background:var(--bg-surface);overflow:hidden}.mode-button{border:none;border-right:1px solid var(--border);border-radius:0;padding:var(--sp-sm) var(--sp-md);background:transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color var(--transition),background var(--transition)}.mode-button:last-child{border-right:none}.mode-button:hover:not(.active){color:var(--text-primary);background:var(--bg-raised)}.mode-button.active{background:var(--bg-raised);color:var(--accent);box-shadow:inset 0 -2px 0 0 var(--accent)}.dropzone{display:grid;place-items:center;gap:var(--sp-xs);border:1px dashed var(--border-accent);border-radius:0;padding:var(--sp-2xl) var(--sp-lg);text-align:center;cursor:pointer;background:var(--bg-surface);transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);margin-top:var(--sp-lg);position:relative;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,229,255,.02) 3px,rgba(0,229,255,.02) 4px)}.dropzone:before{content:"[ DROP ZONE ]";position:absolute;top:-.6rem;left:var(--sp-md);background:var(--bg-surface);padding:0 var(--sp-sm);font-size:.65rem;letter-spacing:.15em;color:var(--text-muted)}.dropzone:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-glow),inset 0 0 20px var(--accent-glow)}.dropzone.dragging{border-color:var(--accent);background-color:var(--bg-raised);box-shadow:0 0 0 1px var(--accent),inset 0 0 30px var(--accent-glow)}.dropzone input{display:none}.dropzone strong{color:var(--text-primary);font-size:.9rem;letter-spacing:.05em}.dropzone span{color:var(--text-secondary);font-size:.82rem}button{font-family:var(--font-mono);font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--accent-dim);border-radius:0;padding:var(--sp-sm) var(--sp-lg);background:transparent;color:var(--accent);cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition);position:relative}button:not(.mode-button):before{content:"[ "}button:not(.mode-button):after{content:" ]"}button:hover:not(:disabled){background:var(--accent-glow);border-color:var(--accent);box-shadow:0 0 8px var(--accent-glow);color:var(--accent)}button:active:not(:disabled){background:#00e5ff33}button:disabled{opacity:.35;cursor:not-allowed;border-color:var(--border);color:var(--text-muted)}.ghost{border-color:var(--border);color:var(--text-secondary);font-size:.75rem}.ghost:hover:not(:disabled){border-color:var(--text-secondary);color:var(--text-primary);background:var(--bg-raised);box-shadow:none}.toolbar{margin-top:var(--sp-lg);display:flex;align-items:center;gap:var(--sp-md);flex-wrap:wrap}.toolbar small{color:var(--text-muted);font-size:.78rem}.toolbar small:before{content:"— "}.file-list{margin:var(--sp-lg) 0 0;padding:0;list-style:none;display:grid;gap:1px}.file-list li{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--border);border-radius:0;padding:var(--sp-md) var(--sp-md);gap:var(--sp-md);background:var(--bg-surface);transition:border-color var(--transition),background var(--transition)}.file-list li:hover{border-color:var(--border-accent);background:var(--bg-raised)}.file-list p{margin:0;word-break:break-word;font-size:.85rem}.file-list small{color:var(--text-muted);font-size:.75rem}.file-index{color:var(--accent);font-weight:700;min-width:1.5ch}.file-actions{display:flex;flex-wrap:wrap;gap:var(--sp-xs);justify-content:flex-end}.selection-card{margin-top:var(--sp-md);border:1px solid var(--success-dim);border-radius:0;background:var(--bg-surface);padding:var(--sp-md);position:relative}.selection-card:before{content:"[ FILE LOADED ]";position:absolute;top:-.6rem;left:var(--sp-md);background:var(--bg-surface);padding:0 var(--sp-sm);font-size:.65rem;letter-spacing:.12em;color:var(--success-dim)}.selection-card p{margin:0;font-size:.85rem}.selection-card small{color:var(--text-muted);font-size:.75rem}.change-file-link{display:inline-block;margin-top:var(--sp-sm);font-size:.75rem;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.change-file-link:hover{color:var(--accent-bright, var(--accent))}.current-file-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md);margin-top:var(--sp-md);padding:var(--sp-sm) var(--sp-md);background:var(--bg-surface);border:1px solid var(--success-dim);border-radius:0;font-size:.8rem;color:var(--text-muted)}.current-file-banner strong{color:var(--text)}.clear-file-btn{background:none;border:1px solid var(--border-dim);color:var(--text-muted);font-size:.75rem;padding:.1rem .5rem;cursor:pointer;border-radius:0;flex-shrink:0}.clear-file-btn:hover{border-color:var(--error, #ff4444);color:var(--error, #ff4444)}.field-group{margin-top:var(--sp-lg);display:grid;gap:var(--sp-xs)}.field-group label{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.field-group label:before{content:"> ";color:var(--accent);opacity:.6}.field-group input[type=text],.field-group input[type=number]{font-family:var(--font-mono);font-size:.9rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:0;padding:var(--sp-sm) var(--sp-md);color:var(--text-primary);transition:border-color var(--transition),box-shadow var(--transition);outline:none}.field-group input[type=text]:focus,.field-group input[type=number]:focus{border-color:var(--accent-dim);box-shadow:0 0 0 1px var(--accent-glow)}.field-group input[type=text]::placeholder,.field-group input[type=number]::placeholder{color:var(--text-muted)}.field-group input:disabled{opacity:.45;cursor:not-allowed}.field-group small{color:var(--text-muted);font-size:.75rem}.mode-group{border:1px solid var(--border);border-radius:0;padding:var(--sp-md);background:var(--bg-surface)}.mode-group legend{padding:0 var(--sp-sm);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-dim)}.inline-option{display:flex;align-items:center;gap:var(--sp-sm);font-size:.85rem;cursor:pointer;color:var(--text-primary);padding:var(--sp-xs) 0}.inline-option.muted{color:var(--text-muted)}.inline-option input[type=radio]{accent-color:var(--accent);width:.85rem;height:.85rem;cursor:pointer}.error{margin-top:var(--sp-md);color:var(--error);font-size:.85rem;border-left:2px solid var(--error);padding-left:var(--sp-md);background:var(--error-glow);padding:var(--sp-sm) var(--sp-md)}.error:before{content:"[ERROR] ";font-weight:700;letter-spacing:.08em}.toolbar+small,small.status{color:var(--text-muted);font-size:.78rem}.field-group ul{margin:var(--sp-sm) 0 0;padding:0;list-style:none;display:grid;gap:1px;border:1px solid var(--border);background:var(--border)}.field-group ul li{background:var(--bg-surface);padding:var(--sp-xs) var(--sp-md);font-size:.82rem;color:var(--text-secondary)}.field-group ul li:before{content:"  "}@media(max-width:640px){.file-list li{flex-direction:column;align-items:flex-start}.file-actions{width:100%;justify-content:flex-start}.mode-toggle{flex-wrap:wrap}.mode-button{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}}.page-list{display:flex;flex-direction:column;gap:6px;margin:12px 0}.page-list-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-secondary, #1a1a2e);transition:opacity .15s}.page-list-row.deleted{opacity:.45}.page-list-row.deleted .page-label{text-decoration:line-through;color:var(--text-secondary)}.page-label{font-size:.9rem}.page-controls{display:flex;gap:6px}.page-controls button{padding:2px 8px;font-size:.8rem;min-width:36px}.page-controls .delete-btn{color:#e05;border-color:#e05}.page-controls .undo-btn{color:var(--accent, #7c6af7);border-color:var(--accent, #7c6af7)}.history-panel{margin-top:1rem;border-top:1px solid var(--border, #333);padding-top:.5rem;font-size:.82rem}.history-toggle{background:none;border:none;color:var(--muted, #888);cursor:pointer;font-size:.82rem;padding:.25rem 0;text-align:left}.history-toggle:hover{color:var(--fg, #eee)}.history-body{margin-top:.5rem}.history-empty{color:var(--muted, #888);font-style:italic}.history-list{list-style:none;margin:0 0 .5rem;padding:0;display:flex;flex-direction:column;gap:.2rem}.history-row{display:grid;grid-template-columns:3.5rem 5rem 1.2rem 1fr;gap:.4rem;align-items:center;padding:.15rem .3rem;border-radius:3px}.history-row--succeeded{background:#00c8500f}.history-row--failed{background:#dc323214}.history-time{color:var(--muted, #888)}.history-type{font-weight:500;text-transform:capitalize}.history-status{text-align:center;font-weight:700}.history-row--succeeded .history-status{color:#4caf50}.history-row--failed .history-status{color:#e53935}.history-label{color:var(--muted, #aaa);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-clear{background:none;border:1px solid var(--border, #444);border-radius:4px;color:var(--muted, #888);cursor:pointer;font-size:.78rem;padding:.2rem .6rem}.history-clear:hover{color:var(--fg, #eee);border-color:var(--fg, #888)}
