*{margin:0;padding:0;box-sizing:border-box}body{background:#0f141e;overflow:hidden}.app{display:flex;justify-content:center;align-items:center;min-height:100vh;position:relative}.loading,.error{display:flex;justify-content:center;align-items:center;min-height:100vh;color:#fff;font-family:monospace;font-size:18px}.error{color:#ff6b6b}.upload-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff;font-family:monospace;padding:20px}.upload-page h1{font-size:32px;margin-bottom:10px}.upload-page .description{color:#999;margin-bottom:40px}.drop-zone{border:2px dashed #444;border-radius:12px;padding:60px 80px;text-align:center;transition:all .2s;cursor:pointer}.drop-zone:hover,.drop-zone.drag-over{border-color:#6af;background:#66aaff1a}.drop-zone p{margin:10px 0;color:#888}.file-button{display:inline-block;padding:10px 24px;background:#3a7bd5;color:#fff;border-radius:6px;cursor:pointer;margin-top:10px;transition:background .2s}.file-button:hover{background:#4a8be5}.error-message{color:#ff6b6b;margin-top:20px}.format-info{margin-top:40px;padding:20px;background:#ffffff0d;border-radius:8px;max-width:400px}.format-info h3{margin-bottom:10px;font-size:14px;color:#888}.format-info pre{font-size:12px;color:#6af;overflow-x:auto}.back-button{position:absolute;top:20px;left:20px;padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;cursor:pointer;font-family:monospace;transition:background .2s}.back-button:hover{background:#fff3}.upload-link{position:absolute;top:20px;right:20px;padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;text-decoration:none;font-family:monospace;transition:background .2s}.upload-link:hover{background:#fff3}
