:root{--bg-color: #1a1a1a;--card-bg: #222222;--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-dim: #888888;--accent-color: #ff8c00;--accent-hover: rgba(255, 140, 0, .2);--border-light: #404040;--font-sans: "Noto Sans", sans-serif;--font-mono: "Space Mono", monospace;--radius-lg: 1.5rem;--radius-md: 1rem;--radius-sm: .5rem}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-sans);min-height:100vh;display:flex;justify-content:center;align-items:center;padding:1rem}.app-container{width:100%;max-width:600px;display:flex;flex-direction:column;gap:2rem}.font-mono{font-family:var(--font-mono)}.text-dim{color:var(--text-dim)}.highlight{color:var(--accent-color)}header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.brand{font-size:.75rem;padding:.25rem .75rem;border:1px solid var(--accent-color);color:var(--accent-color);border-radius:999px;text-transform:uppercase;margin-bottom:.5rem}h1{font-size:1.5rem;letter-spacing:-.05em;font-weight:700;color:var(--text-primary);cursor:pointer;transition:opacity .2s}h1:hover{opacity:.8}h1:hover~.manifest-container .manifest-toggle{color:var(--accent-color);opacity:1}h1:hover~.manifest-container .manifest-toggle:before,h1:hover~.manifest-container .manifest-toggle:after{background:var(--accent-color)}.manifest-container{width:100%;max-width:550px;margin-top:2rem;display:flex;flex-direction:column}.manifest-toggle{width:100%;background:transparent;border:none;color:var(--text-dim);font-size:.75rem;cursor:pointer;padding:0;margin-bottom:0;display:flex;align-items:center;justify-content:center;gap:1rem;letter-spacing:.1em;opacity:.7;transition:opacity .2s;padding-bottom:1rem}.manifest-list{width:100%;border-bottom:1px solid var(--border-light);padding:0 0 1.5rem;display:flex;flex-direction:column;gap:1rem;text-align:center}.manifest-toggle:hover{color:var(--accent-color);opacity:1}.manifest-toggle:before,.manifest-toggle:after{content:"";height:1px;background:var(--border-light);flex:1;transition:background .2s}.manifest-toggle:hover:before,.manifest-toggle:hover:after{background:var(--accent-color)}.manifest-content{width:100%;overflow:hidden;max-height:0;opacity:0;transition:all .6s cubic-bezier(.19,1,.22,1)}.manifest-content.expanded{max-height:300px;opacity:1}.manifest-item{font-size:.8rem;display:flex;justify-content:center;gap:1rem;line-height:1.4}.manifest-item .value{color:var(--text-secondary)}.manifest-item a{color:var(--text-secondary);text-decoration:underline;text-underline-offset:2px}.manifest-item a:hover,.manifest-item strong,.manifest-item.highlight .value,.manifest-item.highlight .label{color:var(--accent-color)}@media(max-width:600px){.manifest-item{flex-direction:column;gap:.25rem;padding:0 1rem;white-space:normal;text-align:center}.manifest-list{padding-left:0;padding-right:0}h1{font-size:1.25rem;max-width:300px;margin:0 auto;line-height:1.3;text-wrap:balance}}.card{background:var(--card-bg);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:1.5rem;transition:border-color .2s}.hidden{display:none!important}.drop-zone{border:2px dashed var(--border-light);border-radius:var(--radius-md);padding:3rem 1rem;text-align:center;cursor:pointer;transition:all .3s ease}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--accent-color);background:var(--accent-hover)}.upload-content .icon{font-size:3rem;display:block;margin-bottom:1rem;color:var(--text-secondary)}.sub-text{color:var(--text-dim);font-size:.875rem;margin-top:.5rem}.file-info{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-light);padding-bottom:1rem;margin-bottom:1.5rem;font-size:.9rem}#filename{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:65%}.control-group{margin-bottom:1.5rem}.control-group label{display:block;font-size:.75rem;color:var(--text-dim);margin-bottom:.5rem}.custom-select-wrapper{position:relative;-webkit-user-select:none;user-select:none;width:100%}.custom-select{position:relative;display:flex;flex-direction:column}.select-trigger{position:relative;display:flex;align-items:center;justify-content:space-between;padding:1rem;font-size:1rem;color:var(--text-primary);background:transparent;border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.custom-select.open .select-trigger{border-color:var(--accent-color);border-bottom-left-radius:0;border-bottom-right-radius:0}.arrow{position:relative;height:10px;width:10px}.arrow:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(45deg);border-right:2px solid var(--text-primary);border-bottom:2px solid var(--text-primary);width:6px;height:6px;transition:transform .2s}.custom-select.open .arrow:after{transform:translate(-50%,-50%) rotate(225deg);border-color:var(--accent-color)}.select-options{position:absolute;display:block;top:100%;left:0;right:0;border:1px solid var(--accent-color);border-top:0;background:var(--card-bg);transition:all .2s;opacity:0;visibility:hidden;pointer-events:none;z-index:10;border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);overflow:hidden;box-shadow:0 10px 20px #00000080}.custom-select.open .select-options{opacity:1;visibility:visible;pointer-events:all}.custom-option{position:relative;display:block;padding:1rem;font-size:1rem;color:var(--text-secondary);cursor:pointer;transition:all .2s}.custom-option:hover{background-color:var(--accent-hover);color:var(--text-primary)}.custom-option.selected{color:var(--accent-color);font-weight:700;background-color:#ff8c000d}.btn-primary{width:100%;background:transparent;border:2px solid var(--accent-color);color:var(--accent-color);padding:1rem;border-radius:var(--radius-md);font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase;text-decoration:none;display:inline-block;text-align:center}.btn-primary:hover{background:var(--accent-color);color:var(--bg-color)}.btn-secondary{width:100%;background:transparent;border:1px solid var(--border-light);color:var(--text-secondary);padding:.75rem;border-radius:var(--radius-md);font-size:.875rem;cursor:pointer;margin-top:1rem;transition:all .2s;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.btn-secondary:hover{border-color:var(--text-primary);color:var(--text-primary)}.btn-secondary:before{content:"";position:absolute;top:0;left:0;height:100%;width:0%;background:#ffffff1a;transition:width 0s;z-index:-1}.btn-secondary.holding:before{width:100%;transition:width 1s linear}.btn-secondary:active{transform:scale(.98)}.progress-container{text-align:center;padding:2rem;display:flex;flex-direction:column;gap:.5rem}.progress-container h2{font-size:1rem;color:var(--text-primary);margin-bottom:.5rem;font-weight:500;letter-spacing:.02em}.progress-info{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem;padding:0 .25rem;font-family:var(--font-mono)}.progress-bar-container{width:100%;height:8px;background:#2a2a2a;border-radius:999px;overflow:hidden;position:relative}.progress-fill{height:100%;width:0%;border-radius:999px;background:var(--accent-color);background-image:linear-gradient(45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.2) 75%,transparent 75%,transparent);background-size:30px 30px;transition:width .6s cubic-bezier(.4,0,.2,1);animation:shimmer 1s linear infinite;box-shadow:0 0 15px #ff8c0080}@keyframes shimmer{0%{background-position:0 0}to{background-position:60px 0}}#progress-text{font-weight:400}#progress-percent{font-weight:700;color:var(--accent-color)}.results-card{text-align:center;padding:2rem}.results-card h2{font-family:var(--font-mono);font-size:1rem;margin-bottom:2.5rem;color:var(--accent-color);letter-spacing:.05em;text-transform:none;font-weight:700;word-break:break-all;line-height:1.4}.stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-bottom:2.5rem;padding:0 1rem}.stat-item{display:flex;flex-direction:column;gap:.75rem;align-items:center}.stat-item .label{font-family:var(--font-mono);font-size:.7rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.stat-item .value{font-family:var(--font-mono);font-size:1.25rem;font-weight:700;color:var(--text-primary)}#download-link{margin-bottom:1rem;border-width:2px;font-size:1rem;padding:1.2rem;letter-spacing:.05em}#reset-btn{margin-top:0;border-color:var(--border-light);color:var(--text-dim);opacity:.8;padding:1.2rem;font-size:.9rem;letter-spacing:.05em;text-transform:uppercase}#reset-btn:hover{border-color:var(--text-secondary);color:var(--text-secondary);opacity:1}footer{text-align:center;color:var(--text-dim);font-size:.75rem;margin-top:auto}footer a{color:var(--accent-color);text-decoration:none}footer a:hover{text-decoration:underline}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}section:not(.hidden){animation:slideUp .4s ease-out}
