.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:64px;padding:0 24px;display:flex}.wordmark{color:var(--ink);letter-spacing:-.025em;font-size:1.25rem;font-weight:850;text-decoration:none}.top-actions,.privacy-note{align-items:center;display:flex}.top-actions{gap:18px}.privacy-note{color:var(--muted);gap:7px;font-size:.875rem}.privacy-note svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:18px}.language-control select{min-width:58px;min-height:40px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 8px;font-size:.8125rem;font-weight:750}.tool{flex:1;width:min(100% - 32px,760px);margin:0 auto;padding:64px 0 36px}.site-footer{font-variant-numeric:tabular-nums;color:var(--muted);border-top:1px solid var(--line);justify-content:center;gap:12px;padding:20px 24px;font-size:.75rem;display:flex}.site-footer span+span:before{content:"·";margin-right:12px}.intro{text-align:center;margin-bottom:56px}.intro h1{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:2.5rem;line-height:1.1}.intro p{color:var(--muted);margin:12px 0 0;font-size:1.125rem}.workflow-step{border-bottom:1px solid var(--line);margin-bottom:32px;padding:0 0 36px;transition:opacity .18s ease-out}.workflow-step.is-locked{opacity:.38}.step-heading{align-items:center;gap:10px;margin-bottom:18px;display:flex}.step-heading>span{width:28px;height:28px;color:var(--bg);background:var(--ink);border-radius:50%;place-items:center;font-size:.78rem;font-weight:800;display:grid}.step-heading h2{letter-spacing:-.01em;margin:0;font-size:1rem}.dropzone{cursor:pointer;background:var(--bg);border:1.5px dashed var(--muted);border-radius:var(--radius);flex-direction:column;justify-content:center;align-items:center;gap:10px;width:min(100%,360px);min-height:190px;margin-inline:auto;transition:background .16s ease-out,border-color .16s ease-out;display:flex}.dropzone:hover,.dropzone[data-dragging=true]{background:var(--accent-soft);border-color:var(--accent)}.dropzone svg{fill:none;width:34px;stroke:var(--accent);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.dropzone strong{min-height:44px;color:var(--bg);background:var(--accent);border-radius:var(--radius-sm);align-items:center;padding:0 20px;font-size:.925rem;display:inline-flex}.dropzone span{color:var(--muted);font-size:.875rem}.file-strip{border:1px solid var(--line);border-radius:var(--radius);padding:18px}.file-main{justify-content:space-between;align-items:center;gap:16px;display:flex}.file-meta{flex-direction:column;gap:4px;min-width:0;display:flex}.file-meta strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-meta span{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.8rem}.replace-button{cursor:pointer;border:1px solid var(--line);border-radius:var(--radius-sm);flex:none;align-items:center;min-height:44px;padding:0 14px;font-size:.82rem;font-weight:700;display:inline-flex}.replace-button:hover{border-color:var(--ink)}.waveform{align-items:center;gap:2px;height:64px;margin-top:18px;display:flex;overflow:hidden}.waveform i{background:var(--accent);border-radius:2px;flex:1;min-width:1px;max-width:4px;display:block}.shift-panel{text-align:center;max-width:590px;margin:0 auto}.field-label{margin-bottom:8px;font-size:.82rem;font-weight:750;display:block}.stepper{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:minmax(72px,1fr) minmax(160px,2fr) minmax(72px,1fr);display:grid;overflow:hidden}.stepper button{cursor:pointer;background:var(--surface);border:0;min-height:96px;font-size:2rem;font-weight:500}.stepper button:first-child{border-right:1px solid var(--line)}.stepper button:last-child{border-left:1px solid var(--line)}.stepper button:hover:not(:disabled){background:var(--surface-strong)}.stepper button:disabled{color:var(--line);cursor:not-allowed}.stepper output{font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;align-items:center;display:flex}.stepper output strong{letter-spacing:-.03em;font-size:2.6rem;line-height:1}.stepper output span{color:var(--muted);margin-top:5px;font-size:.8rem}.presets{border:0;justify-content:center;gap:8px;min-inline-size:0;margin-top:14px;padding:0;display:flex}.presets button{font-variant-numeric:tabular-nums;cursor:pointer;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);min-width:48px;min-height:44px;padding:0 10px;font-weight:700}.presets button:hover:not(:disabled){border-color:var(--accent)}.presets button.is-selected{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.presets button:disabled{cursor:not-allowed}.shift-description{min-height:24px;color:var(--accent);margin:15px 0 18px;font-weight:700}.process-button,.download-button,.secondary-button{border-radius:var(--radius-sm);min-height:50px;font-weight:800;text-decoration:none}.process-button{width:100%;color:var(--ink);cursor:pointer;background:var(--primary);border:0}.process-button:hover:not(:disabled){color:var(--bg);background:var(--primary-hover)}.process-button:disabled{color:var(--muted);cursor:not-allowed;background:var(--surface-strong)}.progress-wrap{align-items:center;gap:12px;margin-top:14px;display:flex}.progress-wrap progress{height:8px;accent-color:var(--accent);border:0;border-radius:4px;flex:1;overflow:hidden}.progress-wrap span{font-variant-numeric:tabular-nums;min-width:42px;color:var(--muted);font-size:.78rem}.error-message{color:var(--error);margin:14px 0 0;font-size:.875rem}.dropzone+.error-message{text-align:center}.result-step{min-height:130px}.result-row{justify-content:space-between;align-items:center;gap:18px;display:flex}.result-message{align-items:center;gap:12px;min-width:0;display:flex}.result-message>div{flex-direction:column;gap:3px;min-width:0;display:flex}.result-message strong{font-size:1.05rem}.result-message span:not(.checkmark){text-overflow:ellipsis;color:var(--muted);white-space:nowrap;font-size:.78rem;overflow:hidden}.checkmark{width:36px;height:36px;color:var(--bg);background:var(--accent);border-radius:50%;flex:none;place-items:center;font-weight:850;display:grid}.result-actions{flex:none;gap:10px;display:flex}.secondary-button{cursor:pointer;background:var(--bg);border:1px solid var(--line);padding:0 18px}.secondary-button:hover{border-color:var(--ink)}.download-button{color:var(--bg);background:var(--accent);align-items:center;padding:0 18px;display:inline-flex}.download-button:hover{background:oklch(46% .17 258)}.result-placeholder{background:var(--surface);border-radius:var(--radius-sm);height:50px}.reset-button{min-height:44px;color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:0 auto;text-decoration:underline;display:block}.visually-hidden{white-space:nowrap!important;clip:rect(0, 0, 0, 0)!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@media (width<=640px){.topbar{min-height:58px;padding:0 16px}.privacy-note span{display:none}.top-actions{gap:10px}.tool{width:min(100% - 24px,760px);padding-top:40px}.intro{margin-bottom:40px}.intro h1{font-size:2rem}.intro p{font-size:1rem}.workflow-step{margin-bottom:26px;padding-bottom:28px}.dropzone{min-height:170px}.file-strip{padding:14px}.stepper{grid-template-columns:72px minmax(0,1fr) 72px}.stepper button{min-height:84px}.stepper output strong{font-size:2.25rem}.presets{grid-template-columns:repeat(4,1fr);display:grid}.presets button{min-width:0}.result-row{flex-direction:column;align-items:stretch}.result-actions{grid-template-columns:1fr 1.4fr;display:grid}.secondary-button,.download-button{justify-content:center;padding:0 12px}}
