.uploader-wrapper{width:100%}.desktop-uploader{display:flex}.uploader{position:relative;min-height:240px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:linear-gradient(135deg,rgba(37,99,235,.03),transparent 50%),var(--bg-secondary);border-radius:12px;transition:all .3s ease;overflow:hidden}.uploader:hover{background:linear-gradient(135deg,rgba(37,99,235,.06),transparent 50%),var(--bg-tertiary)}.uploader.dragging{background:linear-gradient(135deg,rgba(37,99,235,.1),transparent 50%),var(--bg-tertiary)}.uploader-border{position:absolute;top:0;right:0;bottom:0;left:0;border:2px dashed var(--border-color);border-radius:12px;pointer-events:none;transition:all .3s ease}.uploader:hover .uploader-border,.uploader.dragging .uploader-border{border-color:var(--accent-primary)}.file-input{display:none}.uploader-content{display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:2rem;text-align:center;z-index:1}.upload-icon{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:50%;transition:all .3s ease}.upload-icon svg{width:36px;height:36px;color:var(--text-muted);transition:all .3s ease}.uploader:hover .upload-icon,.uploader.dragging .upload-icon{background:var(--accent-glow);border-color:var(--accent-primary);transform:scale(1.05)}.uploader:hover .upload-icon svg,.uploader.dragging .upload-icon svg{color:var(--accent-primary)}.upload-text{display:flex;flex-direction:column;gap:.35rem}.upload-title{font-size:1.1rem;font-weight:500;color:var(--text-primary)}.upload-subtitle{font-size:.9rem;color:var(--text-muted)}.upload-formats{display:flex;gap:.5rem}.upload-formats span{font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:500;color:var(--text-muted);background:var(--bg-tertiary);padding:.3rem .6rem;border-radius:4px;border:1px solid var(--border-color)}.uploader.dragging .upload-icon{animation:bounce .5s ease infinite}@keyframes bounce{0%,to{transform:scale(1.05) translateY(0)}50%{transform:scale(1.05) translateY(-5px)}}.mobile-uploader{display:none;flex-direction:column;gap:1rem}.mobile-upload-btn{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;background:#fff;border:1px solid var(--border-color);border-radius:14px;cursor:pointer;transition:all .2s ease;text-align:left;-webkit-tap-highlight-color:transparent}.mobile-upload-btn:active{transform:scale(.98);background:var(--bg-secondary)}.mobile-btn-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:12px;flex-shrink:0}.mobile-btn-icon svg{width:24px;height:24px;color:#fff}.mobile-btn-text{flex:1;display:flex;flex-direction:column;gap:.2rem}.mobile-btn-title{font-family:Outfit,sans-serif;font-size:1rem;font-weight:600;color:var(--text-primary)}.mobile-btn-subtitle{font-size:.85rem;color:var(--text-muted)}.mobile-btn-arrow{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.mobile-upload-hint{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#2563eb0d;border:1px solid rgba(37,99,235,.15);border-radius:12px}.mobile-upload-hint svg{width:18px;height:18px;color:var(--accent-primary);flex-shrink:0;margin-top:1px}.mobile-upload-hint span{font-size:.85rem;line-height:1.5;color:var(--text-secondary)}@media (max-width: 768px){.desktop-uploader{display:none}.mobile-uploader{display:flex}}@media (min-width: 769px){.desktop-uploader{display:flex}.mobile-uploader{display:none}}.camera-container{display:flex;flex-direction:column;gap:1.25rem}.camera-viewport{position:relative;aspect-ratio:8.5 / 11;max-width:400px;margin:0 auto;background:var(--bg-secondary);border-radius:12px;overflow:hidden;border:1px solid var(--border-color)}.camera-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--text-muted)}.camera-placeholder-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:50%}.camera-placeholder-icon svg{width:32px;height:32px}.camera-placeholder p{font-size:.9rem}.camera-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.error-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#ef44441a;border:1px solid var(--danger);border-radius:50%}.error-icon svg{width:28px;height:28px;color:var(--danger)}.camera-error p{color:var(--text-secondary);max-width:280px}.retry-btn{padding:.6rem 1.25rem;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);font-family:Outfit,sans-serif;font-size:.9rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease}.retry-btn:hover{background:var(--bg-secondary);border-color:var(--border-hover)}.camera-video{width:100%;height:100%;object-fit:contain;background:#000;display:none}.camera-video.active{display:block}.capture-canvas{display:none}.camera-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.viewfinder{position:absolute;top:24px;right:24px;bottom:24px;left:24px}.corner{position:absolute;width:24px;height:24px;border-color:var(--accent-orange);border-style:solid;border-width:0}.corner.tl{top:0;left:0;border-top-width:3px;border-left-width:3px;border-top-left-radius:8px}.corner.tr{top:0;right:0;border-top-width:3px;border-right-width:3px;border-top-right-radius:8px}.corner.bl{bottom:0;left:0;border-bottom-width:3px;border-left-width:3px;border-bottom-left-radius:8px}.corner.br{bottom:0;right:0;border-bottom-width:3px;border-right-width:3px;border-bottom-right-radius:8px}.camera-hint{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.5rem 1rem;border-radius:20px}.camera-hint span{font-size:.8rem;color:#fff;white-space:nowrap}.camera-controls{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:.75rem}.start-camera-btn{display:flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border:none;color:#fff;font-family:Outfit,sans-serif;font-size:1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px var(--accent-glow);min-height:52px}.start-camera-btn svg{width:22px;height:22px}.start-camera-btn:hover{transform:translateY(-2px);box-shadow:0 6px 28px var(--accent-glow)}.start-camera-btn:active{transform:translateY(0)}.control-btn{width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:50%;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.control-btn svg{width:22px;height:22px}.control-btn:hover,.control-btn:active{background:var(--bg-secondary);border-color:var(--border-hover);color:var(--text-primary)}.switch-btn:hover,.switch-btn:active{border-color:var(--accent-primary);color:var(--accent-primary)}.stop-btn:hover,.stop-btn:active{border-color:var(--danger);color:var(--danger)}.capture-btn{width:76px;height:76px;display:flex;align-items:center;justify-content:center;background:transparent;border:4px solid var(--accent-orange);border-radius:50%;cursor:pointer;transition:all .2s ease;padding:6px;-webkit-tap-highlight-color:transparent}.capture-btn-inner{width:100%;height:100%;background:var(--accent-orange);border-radius:50%;transition:all .15s ease}.capture-btn:hover{transform:scale(1.05)}.capture-btn:hover .capture-btn-inner{background:var(--accent-orange-secondary)}.capture-btn:active .capture-btn-inner{transform:scale(.9)}@keyframes pulse{0%,to{box-shadow:0 0 #f59e0b66}50%{box-shadow:0 0 0 12px #f59e0b00}}.capture-btn{animation:pulse 2s ease-in-out infinite}.preview-mode .camera-viewport{aspect-ratio:8.5 / 11}.preview-image{width:100%;height:100%;object-fit:contain;background:#000;display:block}.preview-overlay{position:absolute;top:0;left:0;right:0;padding:1rem;background:linear-gradient(to bottom,rgba(0,0,0,.5),transparent)}.preview-badge{display:inline-flex;align-items:center;gap:.4rem;background:#fffffff2;padding:.4rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;color:var(--text-primary)}.preview-badge svg{width:14px;height:14px;color:var(--accent-primary)}.preview-info{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:8px}.preview-filename-btn{display:flex;align-items:center;gap:.4rem;padding:.3rem .5rem;margin:-.3rem 0;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all .2s ease}.preview-filename-btn:hover{background:var(--bg-tertiary);border-color:var(--border-color)}.preview-filename-btn:hover .preview-edit-icon{opacity:1}.preview-filename{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-primary);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-edit-icon{width:14px;height:14px;color:var(--text-muted);opacity:0;flex-shrink:0;transition:opacity .2s ease}.preview-filename-edit{display:flex;align-items:center}.preview-filename-input{width:140px;padding:.3rem .5rem;font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-primary);background:#fff;border:2px solid var(--accent-primary);border-radius:6px 0 0 6px;outline:none}.preview-filename-input:focus{box-shadow:0 0 0 3px var(--accent-glow)}.preview-filename-ext{padding:.3rem .5rem;font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-muted);background:var(--bg-tertiary);border:2px solid var(--accent-primary);border-left:none;border-radius:0 6px 6px 0}.preview-size{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--text-muted)}.preview-actions{display:flex;gap:.75rem;padding:.5rem 0}.preview-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:1rem;min-height:72px;border:none;border-radius:12px;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.preview-btn svg{width:24px;height:24px}.preview-btn span{font-size:.8rem}.cancel-btn{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.cancel-btn:hover,.cancel-btn:active{background:#ef44441a;border-color:var(--danger);color:var(--danger)}.retake-btn{background:var(--bg-tertiary);color:var(--accent-primary);border:1px solid var(--accent-primary)}.retake-btn:hover,.retake-btn:active{background:var(--accent-glow)}.accept-btn{background:linear-gradient(135deg,var(--success),#16a34a);color:#fff;border:none;box-shadow:0 4px 16px #22c55e40}.accept-btn:hover,.accept-btn:active{transform:translateY(-1px);box-shadow:0 6px 20px #22c55e59}@media (max-width: 768px){.camera-container{gap:1rem}.camera-viewport{max-width:100%;border-radius:16px}.preview-mode .camera-viewport{max-width:100%}.viewfinder{top:16px;right:16px;bottom:16px;left:16px}.corner{width:32px;height:32px;border-width:0}.corner.tl{border-top-width:4px;border-left-width:4px}.corner.tr{border-top-width:4px;border-right-width:4px}.corner.bl{border-bottom-width:4px;border-left-width:4px}.corner.br{border-bottom-width:4px;border-right-width:4px}.camera-controls{gap:2rem;padding:1rem .5rem}.control-btn{width:56px;height:56px}.control-btn svg{width:24px;height:24px}.capture-btn{width:80px;height:80px}.start-camera-btn{width:100%;justify-content:center;padding:1.1rem 2rem;font-size:1.1rem;min-height:56px}.preview-actions{gap:.5rem}.preview-btn{min-height:80px;border-radius:14px}.preview-btn svg{width:28px;height:28px}.preview-btn span{font-size:.85rem}.preview-info{flex-direction:column;gap:.25rem;padding:.75rem}}@media (max-width: 380px){.preview-btn{padding:.75rem;min-height:70px}.preview-btn span{font-size:.75rem}.camera-hint span{font-size:.7rem}}@media (max-height: 500px) and (orientation: landscape){.camera-viewport,.preview-mode .camera-viewport{max-height:70vh}.camera-controls{padding:.5rem}.capture-btn{width:64px;height:64px}.control-btn{width:44px;height:44px}.preview-btn{min-height:56px;flex-direction:row;gap:.5rem}.preview-btn svg{width:20px;height:20px}}.table-container{overflow-x:auto}.image-table{width:100%;border-collapse:collapse}.image-table th{text-align:left;padding:.9rem 1rem;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap}.image-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.image-table tbody tr:last-child td{border-bottom:none}.image-row{animation:rowFadeIn .3s ease-out both;transition:background .15s ease}.image-row:hover{background:var(--bg-secondary)}.col-preview{width:72px}.col-status{width:120px}.col-type{width:80px}.col-actions{width:90px;text-align:center}.thumbnail-btn{position:relative;display:block;width:48px;height:48px;padding:0;border:none;background:none;cursor:pointer;border-radius:6px;overflow:hidden}.thumbnail{width:100%;height:100%;object-fit:cover;border-radius:6px;border:1px solid var(--border-color);transition:transform .2s ease}.thumbnail-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;opacity:0;transition:opacity .2s ease;border-radius:6px}.thumbnail-overlay svg{width:18px;height:18px;color:#fff}.thumbnail-btn:hover .thumbnail-overlay{opacity:1}.thumbnail-btn:hover .thumbnail{transform:scale(1.05)}.file-name-btn{display:flex;align-items:center;gap:.5rem;max-width:220px;padding:.35rem .5rem;margin:-.35rem -.5rem;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all .2s ease;text-align:left}.file-name-btn:hover{background:var(--bg-secondary);border-color:var(--border-color)}.file-name-btn:hover .edit-icon{opacity:1}.file-name{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;color:var(--text-primary)}.edit-icon{width:14px;height:14px;color:var(--text-muted);opacity:0;flex-shrink:0;transition:opacity .2s ease}.filename-edit{display:flex;align-items:center;gap:0}.filename-input{width:140px;padding:.35rem .5rem;font-family:JetBrains Mono,monospace;font-size:.85rem;color:var(--text-primary);background:#fff;border:2px solid var(--accent-primary);border-radius:6px 0 0 6px;outline:none;transition:all .2s ease}.filename-input:focus{box-shadow:0 0 0 3px var(--accent-glow)}.filename-extension{padding:.35rem .5rem;font-family:JetBrains Mono,monospace;font-size:.85rem;color:var(--text-muted);background:var(--bg-secondary);border:2px solid var(--accent-primary);border-left:none;border-radius:0 6px 6px 0}.status-queued{color:var(--success);background:#22c55e1a;border:1px solid rgba(34,197,94,.3)}.type-badge{display:inline-block;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:500;color:var(--accent-primary);background:var(--accent-glow);padding:.25rem .5rem;border-radius:4px;border:1px solid rgba(37,99,235,.2)}.action-btn.delete-btn{color:var(--text-muted)}.action-btn.delete-btn:hover{background:#ef44441a;border-color:var(--danger);color:var(--danger)}.img-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:9999;animation:imgModalFadeIn .2s ease-out}@keyframes imgModalFadeIn{0%{opacity:0}to{opacity:1}}.img-modal{display:flex;flex-direction:column;width:100%;max-width:800px;max-height:90vh;background:#fff;border-radius:16px;box-shadow:0 25px 80px #0006,0 10px 30px #0003;overflow:hidden;animation:imgModalSlideIn .3s ease-out}@keyframes imgModalSlideIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.img-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.img-modal-header-info{display:flex;align-items:center;gap:.75rem;overflow:hidden}.img-modal-header-info svg{width:20px;height:20px;color:#2563eb;flex-shrink:0}.img-modal-filename{font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:500;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.img-modal-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#64748b;border-radius:8px;cursor:pointer;transition:all .15s ease;flex-shrink:0}.img-modal-close svg{width:20px;height:20px}.img-modal-close:hover{background:#fee2e2;color:#ef4444}.img-modal-close-fixed{position:fixed;top:20px;right:20px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#fff;border:none;color:#1e293b;border-radius:50%;cursor:pointer;transition:all .2s ease;z-index:1002;box-shadow:0 4px 20px #0000004d}.img-modal-close-fixed svg{width:26px;height:26px}.img-modal-close-fixed:hover{background:#ef4444;color:#fff;transform:scale(1.1)}.img-modal-close-fixed:active{transform:scale(.95)}.img-modal-hint{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:.6rem 1.25rem;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffe6;font-size:.8rem;border-radius:100px;z-index:1002;pointer-events:none;animation:hintFadeIn .3s ease .5s backwards}.img-modal-hint kbd{display:inline-block;padding:.15rem .4rem;margin:0 .15rem;background:#fff3;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:.75rem}@keyframes hintFadeIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.img-modal-body{flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#f1f5f9;overflow:auto;min-height:200px}.img-modal-image{max-width:100%;max-height:calc(90vh - 180px);width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 8px 30px #0000001f,0 4px 12px #00000014;background:#fff}.img-modal-footer{padding:1rem 1.25rem;background:#fff;border-top:1px solid #e2e8f0}.img-modal-meta{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}.img-modal-meta-item{display:flex;align-items:center;gap:.4rem;font-family:JetBrains Mono,monospace;font-size:.75rem;color:#64748b}.img-modal-meta-item svg{width:14px;height:14px;color:#94a3b8}@media (max-width: 768px){.image-table th,.image-table td{padding:.6rem .75rem}.col-date{display:none}.col-name{min-width:120px}.file-name{max-width:100px}.file-name-btn{max-width:140px}.filename-input{width:90px}.img-modal-overlay{padding:.75rem}.img-modal{max-height:95vh;border-radius:12px}.img-modal-header{padding:.85rem 1rem}.img-modal-filename{font-size:.8rem;max-width:180px}.img-modal-body{padding:1rem}.img-modal-image{max-height:calc(95vh - 160px)}.img-modal-footer{padding:.85rem 1rem}.img-modal-meta{gap:1rem}.img-modal-meta-item{font-size:.7rem}.img-modal-close-fixed{top:12px;right:12px;width:46px;height:46px}.img-modal-close-fixed svg{width:22px;height:22px}.img-modal-hint{bottom:16px;font-size:.75rem;padding:.5rem 1rem}.action-btn{width:36px;height:36px}.action-btn svg{width:18px;height:18px}}@media (max-width: 480px){.col-type,.col-size,.status-badge span{display:none}.status-badge{padding:.35rem}.col-status,.col-actions{width:auto}.action-buttons{gap:.25rem}.action-btn{width:32px;height:32px}}.delete-wrapper{position:relative}.action-btn.delete-btn.active{background:#ef44441a;border-color:var(--danger);color:var(--danger)}.delete-popover{position:absolute;right:100%;top:50%;transform:translateY(-50%);margin-right:8px;display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 4px 20px #00000026,0 2px 6px #0000001a;white-space:nowrap;z-index:50;animation:popoverIn .15s ease-out}.delete-popover:after{content:"";position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:6px solid white;border-top:6px solid transparent;border-bottom:6px solid transparent}.delete-popover:before{content:"";position:absolute;right:-7px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:7px solid #e2e8f0;border-top:7px solid transparent;border-bottom:7px solid transparent}@keyframes popoverIn{0%{opacity:0;transform:translateY(-50%) translate(4px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.delete-popover-text{font-family:Outfit,sans-serif;font-size:.8rem;font-weight:600;color:#64748b}.delete-popover-actions{display:flex;gap:.35rem}.delete-popover-btn{padding:.35rem .7rem;font-family:Outfit,sans-serif;font-size:.75rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.delete-popover-btn.cancel{background:#f1f5f9;color:#64748b}.delete-popover-btn.cancel:hover{background:#e2e8f0;color:#1e293b}.delete-popover-btn.confirm{background:#ef4444;color:#fff}.delete-popover-btn.confirm:hover{background:#dc2626}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.empty-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:50%;margin-bottom:1.25rem}.empty-icon svg{width:40px;height:40px;color:var(--text-muted)}.empty-title{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin-bottom:.35rem}.empty-subtitle{font-size:.9rem;color:var(--text-muted)}.petition-table-container{overflow-x:auto}.petition-table{width:100%;border-collapse:collapse}.petition-table th{text-align:left;padding:.9rem 1rem;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap}.petition-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.petition-table tbody tr:last-child td{border-bottom:none}.petition-row{animation:rowFadeIn .3s ease-out both;transition:background .15s ease}.petition-row:hover{background:var(--bg-secondary)}@keyframes rowFadeIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.col-icon{width:50px}.col-name{min-width:180px}.col-pages{width:100px}.col-size{width:90px}.col-status{width:130px}.col-date{width:160px}.col-actions{width:70px;text-align:center}.zip-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-primary),var(--accent-orange));border-radius:8px}.zip-icon svg{width:22px;height:22px;color:#fff}.petition-name{display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:500;color:var(--text-primary)}.pages-badge{display:inline-block;font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:500;color:var(--accent-primary);background:var(--accent-glow);padding:.25rem .6rem;border-radius:4px;border:1px solid rgba(37,99,235,.2)}.size-text,.date-text{font-family:JetBrains Mono,monospace;font-size:.8rem;color:var(--text-secondary)}.status-badge{display:inline-flex;align-items:center;gap:.4rem;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:500;padding:.3rem .6rem;border-radius:6px;white-space:nowrap}.status-badge svg{width:14px;height:14px;flex-shrink:0}.status-packaging,.status-uploading{color:var(--accent-primary);background:var(--accent-glow);border:1px solid rgba(37,99,235,.3)}.status-completed{color:var(--success);background:#22c55e1a;border:1px solid rgba(34,197,94,.3)}.status-error{color:var(--danger);background:#ef44441a;border:1px solid rgba(239,68,68,.3)}.status-badge svg.spin{animation:spin 1s linear infinite}.action-buttons{display:flex;align-items:center;justify-content:center;gap:.35rem}.action-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease}.action-btn svg{width:16px;height:16px}.action-btn.retry-btn{color:var(--accent-orange);border-color:var(--accent-orange)}.action-btn.retry-btn:hover{background:var(--accent-orange);color:#fff}.success-indicator{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:var(--success)}.success-indicator svg{width:20px;height:20px}@media (max-width: 768px){.petition-table th,.petition-table td{padding:.6rem .75rem}.col-date,.col-size{display:none}.petition-name{max-width:140px}}@media (max-width: 480px){.col-pages,.status-badge span{display:none}.status-badge{padding:.35rem}.col-status{width:auto}}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transition:opacity .3s ease}.tutorial-overlay.visible{opacity:1}.tutorial-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tutorial-modal{position:relative;width:100%;max-width:440px;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;overflow:hidden;transform:scale(.95) translateY(10px);transition:transform .3s ease}.tutorial-overlay.visible .tutorial-modal{transform:scale(1) translateY(0)}.tutorial-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;z-index:10}.tutorial-close svg{width:18px;height:18px}.tutorial-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tutorial-content{padding:2.5rem 2rem 1.5rem;text-align:center}.tutorial-icon{width:80px;height:80px;margin:0 auto 1.25rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:20px;box-shadow:0 8px 32px var(--accent-glow)}.tutorial-icon svg{width:40px;height:40px;color:#fff}.tutorial-step-indicator{display:inline-block;padding:.3rem .75rem;background:var(--bg-secondary);border-radius:20px;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem}.tutorial-title{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.tutorial-description{font-size:.95rem;line-height:1.6;color:var(--text-secondary);max-width:360px;margin:0 auto}.tutorial-highlight-badge{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.25rem;padding:.5rem 1rem;border-radius:10px;font-size:.85rem;font-weight:600}.tutorial-highlight-badge.upload,.tutorial-highlight-badge.queue{background:#2563eb1a;color:var(--accent-primary);border:1px solid rgba(37,99,235,.3)}.tutorial-highlight-badge.process,.tutorial-highlight-badge.processed{background:#22c55e1a;color:var(--success);border:1px solid rgba(34,197,94,.3)}.tutorial-progress{display:flex;justify-content:center;gap:.5rem;padding:.5rem 0 1.5rem}.progress-dot{width:8px;height:8px;border-radius:50%;background:var(--border-color);cursor:pointer;transition:all .2s ease}.progress-dot:hover{background:var(--text-muted)}.progress-dot.active{width:24px;border-radius:4px;background:var(--accent-primary)}.progress-dot.completed{background:var(--accent-primary);opacity:.5}.tutorial-actions{display:flex;gap:.75rem;padding:0 1.5rem 1.5rem}.tutorial-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.25rem;border:none;border-radius:12px;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.tutorial-btn svg{width:18px;height:18px}.tutorial-btn.secondary{background:var(--bg-secondary);color:var(--text-secondary)}.tutorial-btn.secondary:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tutorial-btn.primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 4px 16px var(--accent-glow)}.tutorial-btn.primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--accent-glow)}@media (max-width: 480px){.tutorial-overlay{padding:.75rem}.tutorial-modal{border-radius:16px}.tutorial-content{padding:2rem 1.5rem 1rem}.tutorial-icon{width:70px;height:70px}.tutorial-icon svg{width:35px;height:35px}.tutorial-title{font-size:1.3rem}.tutorial-description{font-size:.9rem}.tutorial-actions{flex-direction:column-reverse;padding:0 1rem 1rem}.tutorial-btn{padding:1rem}}.app{min-height:100vh;display:flex;flex-direction:column;position:relative;overflow-x:hidden}.app-bg{position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse 80% 50% at 50% -20%,var(--accent-glow),transparent),radial-gradient(ellipse 60% 40% at 100% 100%,var(--accent-orange-glow),transparent),var(--bg-primary);z-index:-1}.header{padding:1.5rem 5rem 1rem 1.5rem;border-bottom:1px solid var(--border-color);background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:1.5rem}.logo-section{display:flex;align-items:center;gap:.75rem}.logo-icon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-icon svg{width:42px;height:42px;filter:drop-shadow(0 2px 4px rgba(37,99,235,.15))}.logo-text{font-family:Outfit,sans-serif;font-size:1.6rem;font-weight:700;letter-spacing:-.02em;line-height:1}.logo-petition{background:linear-gradient(180deg,#94a3b8,#64748b,#475569,#64748b,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 1px 0 rgba(0,0,0,.15))}.logo-smart{background:linear-gradient(135deg,var(--accent-primary),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tagline{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;padding-left:1.5rem;border-left:1px solid var(--border-color);white-space:nowrap}.header-user{position:absolute;top:1rem;right:1rem}.user-avatar-btn{display:flex;align-items:center;gap:.5rem;padding:.25rem;background:transparent;border:none;cursor:pointer;border-radius:50px;transition:all .2s ease}.user-avatar-btn:hover{background:#ffffff1a}.user-avatar{width:40px;height:40px;border-radius:50%;border:2px solid var(--accent-primary);object-fit:cover;box-shadow:0 2px 8px #2563eb33;transition:border-color .2s ease}.user-avatar-btn:hover .user-avatar{border-color:var(--accent-secondary)}.user-chevron{width:16px;height:16px;color:var(--text-muted);transition:transform .2s ease}.user-avatar-btn:hover .user-chevron{color:var(--text-primary)}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:260px;background:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 10px 40px #00000026,0 2px 10px #0000001a;z-index:100;animation:dropdownSlideIn .2s ease-out;overflow:hidden}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-header{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--bg-secondary)}.user-dropdown-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-primary)}.user-dropdown-info{display:flex;flex-direction:column;gap:.15rem;overflow:hidden}.user-dropdown-name{font-weight:600;font-size:.95rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-dropdown-email{font-size:.8rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-dropdown-divider{height:1px;background:var(--border-color)}.user-dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;background:none;border:none;font-size:.9rem;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;text-align:left}.user-dropdown-item svg{width:18px;height:18px;flex-shrink:0}.user-dropdown-item:hover{background:var(--bg-secondary);color:var(--text-primary)}.user-dropdown-item.logout-item:hover{background:#ef444414;color:var(--danger)}.auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.auth-loading-spinner{width:48px;height:48px;border:4px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.auth-loading p{font-family:Outfit,sans-serif;font-size:1rem;color:var(--text-muted)}.login-app{overflow:hidden}.login-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#f8fafc,#e2e8f0);z-index:0;overflow:hidden}.login-bg-shape{position:absolute;border-radius:50%;filter:blur(80px);opacity:.6}.login-bg-shape-1{width:600px;height:600px;background:linear-gradient(135deg,#2563eb26,#3b82f61a);top:-200px;right:-100px;animation:floatShape 20s ease-in-out infinite}.login-bg-shape-2{width:500px;height:500px;background:linear-gradient(135deg,#f59e0b1f,#fbbf2414);bottom:-150px;left:-100px;animation:floatShape 25s ease-in-out infinite reverse}.login-bg-shape-3{width:300px;height:300px;background:linear-gradient(135deg,#2563eb1a,#f59e0b1a);top:50%;left:50%;transform:translate(-50%,-50%);animation:floatShape 15s ease-in-out infinite}@keyframes floatShape{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}.login-screen{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.login-card{position:relative;width:100%;max-width:420px;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px;padding:3rem 2.5rem;box-shadow:0 4px 6px #00000005,0 12px 24px #0000000a,0 24px 48px #0000000f;text-align:center;animation:cardEnter .6s cubic-bezier(.16,1,.3,1);border:1px solid rgba(255,255,255,.8)}@keyframes cardEnter{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-corner{position:absolute;width:60px;height:60px;pointer-events:none}.login-corner:before,.login-corner:after{content:"";position:absolute;background:linear-gradient(135deg,var(--accent-primary),var(--accent-orange));opacity:.15}.login-corner-tl{top:12px;left:12px}.login-corner-tl:before{width:24px;height:3px;border-radius:2px}.login-corner-tl:after{width:3px;height:24px;border-radius:2px}.login-corner-tr{top:12px;right:12px}.login-corner-tr:before{right:0;width:24px;height:3px;border-radius:2px}.login-corner-tr:after{right:0;width:3px;height:24px;border-radius:2px}.login-corner-bl{bottom:12px;left:12px}.login-corner-bl:before{bottom:0;width:24px;height:3px;border-radius:2px}.login-corner-bl:after{bottom:0;width:3px;height:24px;border-radius:2px}.login-corner-br{bottom:12px;right:12px}.login-corner-br:before{right:0;bottom:0;width:24px;height:3px;border-radius:2px}.login-corner-br:after{right:0;bottom:0;width:3px;height:24px;border-radius:2px}.login-logo{width:100px;height:100px;margin:0 auto 1.5rem;animation:logoEnter .8s cubic-bezier(.16,1,.3,1) .2s backwards}@keyframes logoEnter{0%{opacity:0;transform:scale(.5) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0)}}.login-logo svg{width:100%;height:100%;filter:drop-shadow(0 8px 24px rgba(37,99,235,.25))}.login-title{font-family:Outfit,sans-serif;font-size:2.5rem;font-weight:700;letter-spacing:-.03em;margin-bottom:.5rem;animation:textEnter .6s cubic-bezier(.16,1,.3,1) .3s backwards}@keyframes textEnter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-petition{background:linear-gradient(180deg,#94a3b8,#64748b,#475569,#64748b,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-smart{background:linear-gradient(135deg,var(--accent-primary),var(--accent-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-tagline{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text-muted);letter-spacing:.15em;text-transform:uppercase;margin-bottom:2rem;animation:textEnter .6s cubic-bezier(.16,1,.3,1) .4s backwards}.login-features{display:flex;justify-content:center;gap:1.5rem;margin-bottom:2rem;animation:textEnter .6s cubic-bezier(.16,1,.3,1) .5s backwards}.login-feature{display:flex;flex-direction:column;align-items:center;gap:.5rem}.login-feature svg{width:28px;height:28px;color:var(--accent-primary);opacity:.8}.login-feature span{font-family:Outfit,sans-serif;font-size:.7rem;font-weight:500;color:var(--text-muted);white-space:nowrap}.login-main-btn{position:relative;display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:1.1rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border:none;border-radius:16px;color:#fff;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px var(--accent-glow),inset 0 1px #fff3;animation:textEnter .6s cubic-bezier(.16,1,.3,1) .6s backwards;overflow:hidden}.login-main-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s ease}.login-main-btn:hover:before{opacity:1}.login-main-btn svg{width:22px;height:22px;transition:transform .3s ease}.login-main-btn:hover{transform:translateY(-3px);box-shadow:0 8px 32px var(--accent-glow),inset 0 1px #fff3}.login-main-btn:hover svg{transform:translate(4px)}.login-main-btn:active{transform:translateY(-1px)}.login-security{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.5rem;font-size:.75rem;color:var(--text-muted);animation:textEnter .6s cubic-bezier(.16,1,.3,1) .7s backwards}.login-security svg{width:14px;height:14px;opacity:.6}.login-copyright{margin-top:2rem;font-family:JetBrains Mono,monospace;font-size:.65rem;color:var(--text-muted);opacity:.6;animation:textEnter .6s cubic-bezier(.16,1,.3,1) .8s backwards}@media (max-width: 480px){.login-screen{padding:1.5rem}.login-card{padding:2.5rem 1.75rem;border-radius:24px}.login-corner{width:40px;height:40px}.login-corner:before{width:16px}.login-corner:after{height:16px}.login-logo{width:80px;height:80px}.login-title{font-size:2rem}.login-tagline{font-size:.6rem;margin-bottom:1.5rem}.login-features{gap:1rem;margin-bottom:1.5rem}.login-feature svg{width:24px;height:24px}.login-feature span{font-size:.6rem}.login-main-btn{padding:1rem 1.25rem;font-size:1rem;border-radius:14px}.login-bg-shape-1{width:400px;height:400px}.login-bg-shape-2{width:350px;height:350px}.login-bg-shape-3{width:200px;height:200px}}.main{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.input-section,.table-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.section-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:.75rem}.section-header h2{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.tab-switcher{display:flex;background:var(--bg-secondary);border-radius:10px;padding:4px;gap:4px}.tab-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border:none;background:transparent;color:var(--text-secondary);font-family:Outfit,sans-serif;font-size:.85rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.tab-btn svg{width:18px;height:18px}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{background:#fff;color:var(--accent-primary);box-shadow:0 2px 8px #00000014}.tab-badge{background:var(--accent-primary);color:#fff;font-size:.65rem;font-weight:600;padding:.15rem .4rem;border-radius:10px;font-family:JetBrains Mono,monospace;margin-left:.25rem}.tab-btn.active .tab-badge{background:var(--accent-primary)}.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 0;margin-bottom:.5rem}.clear-all-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-family:Outfit,sans-serif;font-size:.8rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.clear-all-btn svg{width:15px;height:15px}.clear-all-btn:hover,.clear-all-btn:active{border-color:var(--danger);color:var(--danger)}.process-btn{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem 1rem;border:none;border-radius:8px;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 2px 8px var(--accent-glow);-webkit-tap-highlight-color:transparent}.process-btn svg{width:16px;height:16px}.process-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--accent-glow)}.process-btn:active{transform:translateY(0)}.process-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.process-btn svg.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.process-btn.success{background:linear-gradient(135deg,var(--success),#16a34a);box-shadow:0 4px 20px #22c55e66;animation:successPulse .6s ease-out;transform:scale(1.05)}.process-btn.success:hover{transform:scale(1.05)}.process-btn.success svg.checkmark{animation:checkDraw .4s ease-out forwards}@keyframes successPulse{0%{transform:scale(1);box-shadow:0 2px 8px var(--accent-glow)}50%{transform:scale(1.1);box-shadow:0 8px 30px #22c55e80}to{transform:scale(1.05);box-shadow:0 4px 20px #22c55e66}}@keyframes checkDraw{0%{stroke-dasharray:24;stroke-dashoffset:24}to{stroke-dasharray:24;stroke-dashoffset:0}}.input-content{padding:1rem}.footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.footer-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.footer-copyright{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text-muted)}.footer-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);border-radius:8px;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.footer-btn svg{width:16px;height:16px}.help-footer-btn{color:var(--text-secondary)}.help-footer-btn:hover{background:var(--bg-tertiary);border-color:var(--accent-primary);color:var(--accent-primary)}.name-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease}.name-modal{position:relative;width:100%;max-width:400px;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 25px 80px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.name-modal-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.name-modal-close svg{width:16px;height:16px}.name-modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.name-modal-icon{width:56px;height:56px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));border-radius:14px}.name-modal-icon svg{width:28px;height:28px;color:#fff}.name-modal-title{font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:700;color:var(--text-primary);text-align:center;margin-bottom:.25rem}.name-modal-subtitle{font-size:.9rem;color:var(--text-muted);text-align:center;margin-bottom:1.5rem}.name-modal-input-wrapper{display:flex;margin-bottom:1rem}.name-modal-input{flex:1;padding:.75rem 1rem;font-family:JetBrains Mono,monospace;font-size:.9rem;color:var(--text-primary);background:#fff;border:2px solid var(--border-color);border-radius:10px 0 0 10px;outline:none;transition:all .2s ease}.name-modal-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.name-modal-ext{display:flex;align-items:center;padding:.75rem 1rem;font-family:JetBrains Mono,monospace;font-size:.9rem;color:var(--text-muted);background:var(--bg-secondary);border:2px solid var(--border-color);border-left:none;border-radius:0 10px 10px 0}.name-modal-info{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px;margin-bottom:1.5rem}.name-modal-info svg{width:16px;height:16px;color:var(--accent-primary)}.name-modal-info span{font-size:.85rem;color:var(--text-secondary)}.name-modal-actions{display:flex;gap:.75rem}.name-modal-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:none;border-radius:10px;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.name-modal-btn svg{width:18px;height:18px}.name-modal-btn.secondary{background:var(--bg-secondary);color:var(--text-secondary)}.name-modal-btn.secondary:hover{background:var(--bg-tertiary);color:var(--text-primary)}.name-modal-btn.primary{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff;box-shadow:0 4px 16px var(--accent-glow)}.name-modal-btn.primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--accent-glow)}.name-modal-btn.primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.confirm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease}.confirm-modal{width:100%;max-width:380px;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 25px 80px #0000004d;animation:slideUp .3s ease;text-align:center}.confirm-modal-icon{width:56px;height:56px;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:14px}.confirm-modal-icon svg{width:28px;height:28px;color:#fff}.confirm-modal-title{font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.confirm-modal-subtitle{font-size:.9rem;color:var(--text-muted);line-height:1.5;margin-bottom:1.5rem}.confirm-modal-actions{display:flex;gap:.75rem}.confirm-modal-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease}.confirm-modal-btn svg{width:18px;height:18px}.confirm-modal-btn.secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.confirm-modal-btn.secondary:hover{background:var(--bg-tertiary);color:var(--text-primary)}.confirm-modal-btn.danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 16px #ef44444d}.confirm-modal-btn.danger:hover{transform:translateY(-1px);box-shadow:0 6px 20px #ef444466}@media (min-width: 769px){.header{padding:2rem 5.5rem 1rem 2rem}.logo-icon{width:46px;height:46px}.logo-icon svg{width:46px;height:46px}.logo-text{font-size:1.8rem}.tagline{font-size:.75rem}.main{padding:2rem;gap:2rem}.section-header{padding:1.25rem 1.5rem}.section-header h2{font-size:1.25rem}.input-content{padding:1.5rem}}@media (max-width: 480px){.header{padding:1rem 4rem 1rem 1rem}.header-content,.logo-section{gap:.5rem}.logo-icon{width:36px;height:36px}.logo-icon svg{width:36px;height:36px}.logo-text{font-size:1.4rem}.tagline{display:block;font-size:.6rem;text-align:center;width:100%;margin-top:.25rem;padding-left:0;border-left:none}.header-content{flex-direction:column;align-items:center;text-align:center;gap:.25rem}.header-user{top:.75rem;right:.75rem}.user-avatar{width:34px;height:34px}.user-chevron{display:none}.user-dropdown{width:240px;right:-.5rem}.footer-content{flex-wrap:wrap;justify-content:center;gap:.75rem}.footer-btn{padding:.4rem .75rem;font-size:.75rem}.footer-btn svg{width:14px;height:14px}.footer-copyright{order:3;width:100%;text-align:center;font-size:.6rem}.main{padding:.75rem;gap:1rem}.input-section,.table-section{border-radius:12px}.section-header{padding:.75rem 1rem;gap:.5rem}.section-header h2{font-size:1rem}.tab-switcher{padding:3px;gap:2px}.tab-btn{padding:.45rem .75rem;font-size:.8rem}.tab-btn svg{width:16px;height:16px}.clear-all-btn{padding:.45rem .7rem;font-size:.75rem}.clear-all-btn svg{width:14px;height:14px}.input-content{padding:.75rem}.footer{padding:.75rem 1rem}.footer-copyright{font-size:.6rem}}@supports (padding-top: env(safe-area-inset-top)){.header{padding-top:calc(1rem + env(safe-area-inset-top));padding-left:calc(1rem + env(safe-area-inset-left));padding-right:calc(1rem + env(safe-area-inset-right))}.main{padding-left:calc(.75rem + env(safe-area-inset-left));padding-right:calc(.75rem + env(safe-area-inset-right))}.footer{padding-bottom:calc(1rem + env(safe-area-inset-bottom));padding-left:calc(1rem + env(safe-area-inset-left));padding-right:calc(1rem + env(safe-area-inset-right))}@media (min-width: 769px){.header{padding-top:calc(2rem + env(safe-area-inset-top))}}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.input-section,.table-section{animation:fadeIn .4s ease-out}.table-section{animation-delay:.1s;animation-fill-mode:both}.app{overscroll-behavior-y:contain}.tab-btn,.clear-all-btn,button{touch-action:manipulation}:root{--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--accent-primary: #2563eb;--accent-secondary: #1d4ed8;--accent-orange: #f59e0b;--accent-orange-secondary: #d97706;--accent-glow: rgba(37, 99, 235, .12);--accent-orange-glow: rgba(245, 158, 11, .12);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border-color: #e2e8f0;--border-hover: #cbd5e1;--danger: #ef4444;--danger-hover: #dc2626;--success: #22c55e}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent-primary);color:#fff}
