:root{--surface:#f2efe9;--card:#f7f4ee;--container:#e9dfcc;--container-low:#ece8dd;--ink:#211d18;--ink-2:#514c46;--ink-3:#6b655c;--line:#211d18;--line-soft:#cfc8ba;--accent:#b0455a;--accent-ink:#fdf9f3;--accent-text:#8f3145;--error:#ba1a1a;--error-soft:#ffdad6;--error-ink:#93000a;--r-sm:2px;--font-sans:"Geist", "IBM Plex Sans JP", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "Cascadia Mono", monospace}*{box-sizing:border-box}body{background:var(--surface);color:var(--ink);font-family:var(--font-sans);margin:0;font-size:16px;line-height:1.8}h1,h2,h3{font-feature-settings:"palt";line-height:1.4}h1{margin:24px 0 8px;font-size:32px}h2{margin:64px 0 16px;font-size:22px}.container-tool h2{margin:36px 0 12px}a{color:var(--accent-text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}code,.mono{font-family:var(--font-mono);font-size:14px}.container{max-width:720px;margin-inline:auto;padding-inline:16px}.container-tool{max-width:960px;margin-inline:auto;padding-inline:16px}.site-header{border-bottom:2px solid var(--line);background:var(--surface)}.site-header .inner{align-items:center;gap:24px;max-width:960px;margin-inline:auto;padding:12px 16px;display:flex}.site-header .brand{color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.brand-mark{width:33px;height:36px;display:block}.brand-text{flex-direction:column;line-height:1.25;display:flex}.brand-name{letter-spacing:.01em;font-size:17px;font-weight:800}.brand-sub{color:var(--ink-3);letter-spacing:.24em;font-size:11px}.site-header nav{gap:20px;margin-left:auto;font-size:14px;display:flex}.tool-card{background:var(--card);border:2px solid var(--line);min-height:280px;margin-top:20px;padding:24px}.tool-note{color:var(--ink-3);flex-wrap:wrap;gap:16px;margin-top:8px;font-size:13px;display:flex}.tool-note .badge{background:var(--ink);color:var(--surface);border-radius:var(--r-sm);padding:1px 8px}.lane{align-items:stretch;gap:12px;margin-top:12px;display:flex}.lane-tag{font-family:var(--font-mono);background:var(--ink);color:var(--surface);flex-direction:column;flex:0 0 56px;justify-content:center;align-items:center;gap:2px;padding:8px 4px;font-weight:600;display:flex}.lane-tag .lane-letter{font-size:18px;line-height:1}.lane-tag .lane-label{font-size:11px;line-height:1;font-family:var(--font-sans);font-weight:500}.lane-tag.audio{background:var(--accent);color:var(--accent-ink)}.lane-body{flex:1;min-width:0}.lane-join{text-align:center;width:56px;color:var(--accent);font-family:var(--font-mono);user-select:none;margin:10px 0 -2px;font-weight:600;line-height:1}.dropzone{border:1px solid var(--line);text-align:center;cursor:pointer;color:var(--ink-2);width:100%;font:inherit;background:0 0;padding:20px;transition:background .15s}.dropzone.audio{border-color:var(--accent)}.dropzone:hover,.dropzone.dragover{background:#ece7db}.dropzone.audio:hover,.dropzone.audio.dragover{background:#f6eae7}.dropzone .formats{color:var(--ink-3);margin-top:4px;font-size:13px;display:block}.info-grid{border:1px solid var(--line-soft);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:4px 16px;padding:12px 16px;font-size:14px;display:grid}.info-grid dt{color:var(--ink-3);font-size:13px}.info-grid dd{font-family:var(--font-mono);margin:0 0 6px}.file-name{font-family:var(--font-mono);overflow-wrap:anywhere;margin-bottom:8px;font-size:14px}.passthrough-note{margin-top:8px;font-size:14px}.passthrough-note.convert{color:var(--accent-text)}.options{gap:12px;margin-top:24px;font-size:15px;display:grid}.options-head{color:var(--ink-2);letter-spacing:.05em;align-items:center;gap:12px;font-size:13px;display:flex}.options-head:after{content:"";background:var(--line-soft);flex:1;height:1px}.options fieldset{border:1px solid var(--line);margin:0;padding:12px 16px}.options legend{color:var(--ink-2);padding-inline:4px;font-size:14px}.options label{display:block}.options input[type=number]{font-family:var(--font-mono);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);width:120px;padding:4px 8px}.options select{font:inherit;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--ink);padding:4px 8px;font-size:14px}.options-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;display:flex}.options-row .btn-primary{margin-top:0;margin-left:auto}.hint{color:var(--ink-3);font-size:13px}.btn-primary{background:var(--ink);color:var(--surface);font:inherit;cursor:pointer;border:none;margin-top:20px;padding:12px 32px;font-weight:600;text-decoration:none;transition:background .15s;display:inline-block}.btn-primary:hover:not(:disabled){background:#3a352e}.btn-primary:disabled{background:var(--container);color:var(--ink-3);cursor:not-allowed}.btn-secondary{border:1px solid var(--line);font:inherit;cursor:pointer;color:var(--ink);background:0 0;padding:8px 20px}.progress-track{background:var(--container);height:8px;margin-top:20px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .2s}.progress-label{font-family:var(--font-mono);color:var(--ink-2);margin-top:6px;font-size:14px}.result video{background:#000;width:100%;max-height:400px;margin-top:12px}.error-box{background:var(--error-soft);color:var(--error-ink);margin-top:16px;padding:12px 16px;font-size:15px}.warn-box{background:var(--container);color:var(--ink);margin-top:12px;padding:8px 16px;font-size:14px}.prose-lines span{display:block}.howto-steps{gap:24px;margin:12px 0 0;padding:0;list-style:none;display:flex}.howto-steps li{background:var(--card);border:1px solid var(--line-soft);flex:1;padding:16px 20px;line-height:1.6;position:relative}.howto-steps li:not(:last-child):after{content:"→";color:var(--ink-3);font-weight:600;position:absolute;top:50%;right:-19px;transform:translateY(-50%)}.step-head{align-items:center;gap:10px;display:flex}.step-num{background:var(--ink);width:28px;height:28px;color:var(--surface);font-family:var(--font-mono);flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.howto-steps strong{font-size:16px}.step-note{color:var(--ink-3);margin-top:4px;font-size:13px;display:block}@media (width<=640px){.howto-steps{flex-direction:column;gap:28px}.howto-steps li:not(:last-child):after{content:"↓";inset:auto auto -24px 50%;transform:translate(-50%)}}.ad-slot{max-width:720px;margin:48px auto}.ad-slot .label{color:var(--ink-3);font-size:12px}.ad-slot .frame{background:var(--container);min-height:280px}.tool-list{gap:16px;margin-top:32px;display:grid}.tool-list a{background:var(--card);border:1px solid var(--line);color:var(--ink);padding:16px 20px;text-decoration:none;transition:border-color .15s,background .15s;display:block}.tool-list a:hover{border-color:var(--accent);background:#f6eae7}.tool-list .desc{color:var(--ink-2);font-size:14px}.tool-list-coming{border:1px dashed var(--line-soft);text-align:center;color:var(--ink-3);padding:16px 20px;font-size:14px}.page-updated{color:var(--ink-3);font-size:13px}.policy-links{font-size:14px}.facts{border:1px solid var(--line-soft);grid-template-columns:auto 1fr;gap:6px 24px;margin:24px 0 0;padding:16px 20px;font-size:15px;display:grid}.facts dt{color:var(--ink-3)}.facts dd{margin:0}.contact-form{gap:24px;margin-top:32px;display:grid}.contact-form label{margin-bottom:6px;font-size:15px;font-weight:600;display:block}.contact-form .req{background:var(--ink);color:var(--surface);border-radius:var(--r-sm);vertical-align:2px;margin-left:8px;padding:1px 6px;font-size:11px;font-weight:600}.contact-form select,.contact-form input[type=email],.contact-form input[type=text],.contact-form textarea{font:inherit;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--ink);padding:8px 10px}.contact-form input[type=email],.contact-form input[type=text],.contact-form textarea{width:100%}.contact-form textarea{resize:vertical;min-height:180px;line-height:1.7}.contact-form .botcheck{display:none}.field-note{color:var(--ink-3);margin:4px 0 0;font-size:13px}.site-footer{border-top:2px solid var(--line);background:var(--container-low);margin-top:96px}.site-footer .inner{max-width:960px;margin-inline:auto;padding:24px 16px 32px}.site-footer nav{flex-wrap:wrap;gap:8px 24px;font-size:14px;display:flex}.site-footer .copyright{color:var(--ink-3);margin-top:12px;font-size:13px}.site-footer .rights-note{color:var(--ink-3);margin-top:4px;font-size:12px}.only-mobile{display:none}@media (width<=767px){.only-desktop{display:none}.only-mobile{display:inline-block}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
