:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#a63b00;--color-primary-strong:#7f2b00;--color-primary-vibrant:#ff5f00;--color-on-primary:#fff;--color-on-vibrant:#531a00;--color-background:#f8f9fa;--color-foreground:#191c1d;--color-surface:#fff;--color-surface-low:#f3f4f5;--color-surface-high:#e7e8e9;--color-muted-foreground:#5b4137;--color-border:#e1e3e4;--color-border-warm:#e4bfb1;--color-danger:#ba1a1a;--color-success:#18743c;--color-focus:#a63b00;--shadow-action:0 4px 12px #a63b0033;--motion-fast:.16s;--motion-medium:.28s;color:var(--color-foreground);background:var(--color-background);font-synthesis:none;text-rendering:optimizelegibility;font-family:Hanken Grotesk,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--color-background);min-width:320px;min-height:100%;overflow-x:hidden}body{background:var(--color-background);overscroll-behavior-y:contain;min-width:320px;min-height:100dvh;margin:0;overflow-x:hidden}button,input,a{font:inherit}button,.file-button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{border:0}svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:24px;height:24px}[hidden]{display:none!important}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;top:max(8px, env(safe-area-inset-top));min-height:44px;color:var(--color-on-primary);background:var(--color-primary);border-radius:8px;padding:11px 16px;position:fixed;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.app-header{z-index:50;min-height:calc(64px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8f9faf5;position:fixed;top:0;left:0;right:0}.app-header-inner{grid-template-columns:minmax(72px,1fr) auto minmax(72px,1fr);align-items:center;gap:8px;width:min(100% - 24px,520px);min-height:64px;margin:0 auto;display:grid}.app-brand{min-width:0;color:var(--color-primary);grid-column:2;justify-content:center;align-items:center;gap:10px;display:inline-flex}.app-brand h1{color:inherit;letter-spacing:-.015em;white-space:nowrap;margin:0;font-size:20px;font-weight:800;line-height:1.2}.brand-icon{stroke-width:2px;flex:none;width:27px;height:27px}.header-back{min-width:72px;min-height:44px;color:var(--color-primary);cursor:pointer;background:0 0;border-radius:8px;grid-column:1;justify-self:start;align-items:center;gap:2px;padding:8px 8px 8px 4px;font-weight:700;display:inline-flex}.header-back:hover{background:var(--color-surface-low)}.header-back:active{opacity:.7}.header-back svg{stroke-width:2.2px;width:26px;height:26px}.header-spacer{grid-column:3}.results-view .brand-icon{display:none}.page-shell{width:min(100% - 32px,440px);padding-top:calc(64px + env(safe-area-inset-top) + 28px);padding-bottom:max(40px, calc(env(safe-area-inset-bottom) + 24px));margin:0 auto}.upload-view,.result-panel{min-width:0}.upload-view:focus-visible{outline:none}.upload-view:focus-visible .file-picker{box-shadow:0 0 0 3px #a63b001f}h1,h2,h3,p{overflow-wrap:anywhere}.tool-card{min-width:0}.file-picker{min-height:190px;color:var(--color-foreground);text-align:center;background:var(--color-background);transition:border-color var(--motion-fast) ease, background-color var(--motion-fast) ease;border:2px dashed #c8c6c5;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px 24px;display:flex;position:relative}.file-picker:hover,.file-picker:focus-within{border-color:var(--color-primary);background:#fff7f2}.file-picker>svg{width:48px;height:48px;color:var(--color-primary);stroke-width:1.7px}.file-picker h2{margin:0;font-size:20px;font-weight:650;line-height:1.3}.file-picker p{color:var(--color-muted-foreground);margin:4px 0 0;font-size:15px;line-height:1.5}.file-picker .file-button{z-index:1;color:#0000;cursor:pointer;background:0 0;border-radius:8px;font-size:0;display:block;position:absolute;inset:0;overflow:hidden}.password-section{margin-top:24px}.field-label,.selected-files-header>strong{color:var(--color-muted-foreground);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:650;line-height:1.4;display:block}.password-control{position:relative}.password-control input{width:100%;min-height:52px;color:var(--color-foreground);background:var(--color-surface);border:1px solid var(--color-border);transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;border-radius:4px;padding:12px 56px 12px 14px;font-size:16px;line-height:1.5}.password-control input::placeholder{color:#7d7b7a}.password-control input:focus{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.password-control input[aria-invalid=true]{border-color:var(--color-danger);box-shadow:0 0 0 1px var(--color-danger)}.icon-button{width:44px;height:44px;color:var(--color-muted-foreground);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:10px;display:inline-flex;position:absolute;top:4px;right:4px}.icon-button:hover{background:var(--color-surface-low)}.field-error{min-height:22px;color:var(--color-danger);margin:7px 0 0;font-size:14px;font-weight:650;line-height:1.5}.selected-files{min-width:0;margin-top:18px}.selected-files-header{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.selected-files-header>strong{margin:0}.text-button{min-height:44px;color:var(--color-primary);cursor:pointer;background:0 0;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:8px 10px;font-weight:700;display:inline-flex}.text-button:hover{background:#fff1e7}.file-list,.result-list{gap:12px;margin:8px 0 0;padding:0;list-style:none;display:grid}.file-list-item{background:var(--color-surface-low);border:1px solid var(--color-border);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 12px;min-width:0;padding:12px;display:grid}.file-details{flex-direction:column;gap:2px;min-width:0;display:flex}.file-details strong,.result-item-copy strong{overflow-wrap:anywhere}.file-details strong{font-size:15px;line-height:1.4}.file-details span,.result-item-copy span{color:var(--color-muted-foreground);font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.45}.file-status{min-height:24px;color:var(--color-primary);white-space:nowrap;justify-content:center;align-items:center;padding:2px 0;font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:650;line-height:1.4;display:inline-flex}[data-status=success] .file-status{color:var(--color-success)}[data-status=failed] .file-status,[data-status=invalid] .file-status{color:var(--color-danger)}[data-status=cancelled] .file-status,[data-status=not_encrypted] .file-status{color:var(--color-muted-foreground)}.file-progress{grid-column:1/-1;min-width:0}.file-progress-track{background:var(--color-border);border-radius:999px;width:100%;height:6px;display:block;position:relative;overflow:hidden}.file-progress-fill{width:var(--file-progress,0%);background:var(--color-primary);border-radius:inherit;height:100%;transition:width var(--motion-medium) ease;display:block}.file-progress.is-indeterminate .file-progress-fill{width:46%;animation:1.1s ease-in-out infinite progress-indeterminate}[data-status=failed] .file-progress-fill,[data-status=invalid] .file-progress-fill{background:var(--color-danger)}[data-status=cancelled] .file-progress-fill,[data-status=not_encrypted] .file-progress-fill{background:#77706c}.file-message{min-width:0;color:var(--color-muted-foreground);overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:14px;line-height:1.5}[data-status=failed]>.file-message,[data-status=invalid]>.file-message{color:var(--color-danger)}.actions,.result-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.actions>*,.result-actions>*{flex:180px}.primary-button,.secondary-button,.file-action-link,.file-action-button{cursor:pointer;min-height:48px;transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, opacity var(--motion-fast) ease, box-shadow var(--motion-fast) ease;border-radius:8px;justify-content:center;align-items:center;padding:11px 18px;font-weight:750;text-decoration:none;display:inline-flex}.primary-button{color:var(--color-on-primary);background:var(--color-primary);box-shadow:var(--shadow-action)}.primary-button:hover{background:var(--color-primary-strong)}.secondary-button{color:var(--color-foreground);background:var(--color-surface);border:1px solid var(--color-border)}.secondary-button:hover,.file-action-link:hover,.file-action-button:hover{background:var(--color-surface-low)}.primary-button:active,.secondary-button:active,.text-button:active,.icon-button:active,.file-action-link:active,.file-action-button:active{opacity:.72}button:disabled{cursor:not-allowed;opacity:.45;box-shadow:none}.status-panel{border:1px solid var(--color-border-warm);background:#fff1e7;border-radius:8px;align-items:center;gap:12px;min-height:84px;margin-top:16px;padding:14px;display:flex}.status-panel strong{margin-bottom:3px;font-size:15px;line-height:1.4;display:block}.status-panel p{color:var(--color-muted-foreground);margin:0;font-size:13px;line-height:1.5}.spinner{border:3px solid var(--color-border-warm);border-top-color:var(--color-primary);border-radius:999px;flex:none;width:24px;height:24px;animation:.8s linear infinite spin}.privacy-note{color:var(--color-muted-foreground);text-align:center;margin:24px auto 0;font-size:13px;line-height:1.6}.result-panel{padding-bottom:24px}.result-panel:focus-visible{outline:none}.result-panel:focus-visible .result-overview{box-shadow:0 0 0 3px #a63b001f,0 4px 12px #00000005}.wave-stage{place-items:center;width:min(100%,350px);height:340px;margin:0 auto 20px;padding-top:24px;display:grid;position:relative;overflow:visible}.wave-stage canvas{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.wave-lock{z-index:1;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.lock-icon{width:96px;height:96px;position:relative}.lock-shackle{width:60px;height:50px;color:var(--color-primary-vibrant);transform-origin:15px 25px;transition:transform .7s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;left:20px;transform:translateY(10px)}.lock-shackle path{fill:none;stroke:currentColor;stroke-width:6px}.lock-shackle.is-unlocked{transform:translateY(-14px)rotate(-15deg)}.lock-body{background:var(--color-primary-vibrant);border-radius:10px;place-items:center;height:64px;display:grid;position:absolute;bottom:0;left:8px;right:8px;box-shadow:0 8px 18px #ff5f0038}.lock-keyhole{background:var(--color-surface);border-radius:999px;width:16px;height:16px}.wave-status{color:var(--color-primary);letter-spacing:.16em;margin-top:14px;font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:800;line-height:1.4}.result-overview{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;width:100%;margin-bottom:44px;padding:14px;box-shadow:0 4px 12px #00000005}.result-overview h2{margin:0 0 4px;font-size:18px;line-height:1.4}.result-overview p{color:var(--color-primary);margin:0;font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.5}.result-panel.is-success .result-overview{border-color:color-mix(in srgb, var(--color-success) 30%, var(--color-border))}.result-panel.has-errors .result-overview{border-color:var(--color-border-warm)}.result-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.result-section-heading h3{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:800;line-height:1.2}.result-count{min-height:28px;color:var(--color-on-vibrant);background:var(--color-primary-vibrant);border-radius:999px;flex:none;align-items:center;padding:5px 10px;font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:800;line-height:1.4;display:inline-flex}.result-list{gap:14px;margin-top:18px}.result-list-item{background:var(--color-surface);border:2px solid color-mix(in srgb, var(--color-primary-vibrant) 18%, var(--color-border));border-radius:16px;min-width:0;padding:16px;box-shadow:0 2px 8px #00000008}.result-item-header{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.result-item-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.result-item-copy strong{min-width:0;font-size:16px;line-height:1.4}.result-list-item .file-status{background:#fff1e7;border-radius:999px;min-height:28px;padding:4px 9px}.result-list-item>.file-message{margin-top:10px}.file-result-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.file-action-link,.file-action-button{min-height:44px;color:var(--color-on-primary);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:999px;padding:9px 14px}.share-error:empty{min-height:0;margin:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progress-indeterminate{0%{transform:translate(-110%)}to{transform:translate(240%)}}@media (width>=768px){.page-shell{width:min(100% - 64px,520px);padding-top:calc(64px + env(safe-area-inset-top) + 48px)}.file-picker{min-height:210px}.wave-stage{width:400px;height:370px}}@media (width<=420px){.page-shell{width:min(100% - 20px,440px);padding-top:calc(64px + env(safe-area-inset-top) + 20px)}.app-header-inner{width:calc(100% - 12px)}.file-picker{min-height:170px;padding:24px 16px}.selected-files-header{align-items:flex-start}.result-section-heading h3{font-size:26px}.result-item-header{flex-direction:column;align-items:stretch}.result-list-item .file-status{align-self:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.file-progress.is-indeterminate .file-progress-fill{width:60%;animation:none;transform:none}}
