@import "https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;500;700&display=swap";
:root{--bg-color:#050505;--panel-bg:#0d0d0d;--border-color:#222;--primary:#f5a623;--primary-hover:#f8e71c;--text-main:#e0e0e0;--text-muted:#777;--accent:#4a90e2;--danger:#d0021b;--danger-bg:#d0021b1a;--success:#0df043}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-position:top;background-size:30px 30px;flex-direction:column;min-height:100vh;font-family:Roboto Mono,monospace;display:flex;overflow-x:hidden}.app-container{width:100%;max-width:950px;margin:0 auto;padding:4rem 1.5rem}.glass-panel{background:var(--panel-bg);border:1px solid var(--border-color);border-top:2px solid var(--primary);padding:2.5rem;box-shadow:0 10px 30px #000c}.title{text-align:left;color:var(--text-main);text-transform:uppercase;letter-spacing:2px;margin-bottom:.25rem;font-size:1.8rem;font-weight:700}.subtitle{text-align:left;color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border-color);margin-bottom:2rem;padding-bottom:1rem;font-size:.85rem}.dropzone{border:1px dashed var(--text-muted);text-align:center;cursor:pointer;background:var(--bg-color);padding:3rem 2rem;transition:all .2s}.dropzone:hover,.dropzone.active{border-color:var(--primary);background:#f5a6230d}.dropzone-icon{color:var(--text-muted);width:32px;height:32px;margin-bottom:1rem}.dropzone:hover .dropzone-icon{color:var(--primary)}.btn{background:var(--bg-color);color:var(--text-main);border:1px solid var(--border-color);text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1.5rem;font-family:Roboto Mono,monospace;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:hover{border-color:var(--primary);color:var(--primary);background:#f5a6231a}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.loading-spinner{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.file-info{border:1px solid var(--border-color);background:var(--bg-color);align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.status-text{color:var(--primary);text-align:center;text-transform:uppercase;letter-spacing:1px;margin-top:1rem;font-size:.85rem}.pdf-viewer-container{border:1px solid var(--border-color);background:#111;justify-content:center;max-width:100%;padding:1rem;display:flex;overflow-x:auto}.react-pdf__Page{margin-bottom:1rem;box-shadow:0 5px 15px #000!important}.react-pdf__Page__textContent span{background:#f5a62326;border-radius:0;outline:1px solid #f5a6234d;transition:background .1s,outline .1s;cursor:crosshair!important}.react-pdf__Page__textContent span:hover{z-index:10;background:#f5a62366;outline:1px solid #f5a623cc}.react-pdf__Page__textContent span.marked-redact{outline:2px solid var(--danger);z-index:10;color:#0000!important;background:#000!important}@media (max-width:768px){.app-container{padding:1.5rem .75rem}.glass-panel{padding:1.5rem}.title{font-size:1.35rem;line-height:1.4}.subtitle{margin-bottom:1.5rem;font-size:.75rem}.dropzone{padding:2rem 1rem}.btn{width:100%;margin-bottom:.5rem;padding:.6rem 1rem;font-size:.8rem}.file-info{flex-direction:column;align-items:flex-start;gap:.5rem}.file-info button{align-self:flex-end;margin-top:-30px}}
