:root{font-family:Inter,Noto Sans JP,Yu Gothic UI,Hiragino Sans,system-ui,sans-serif;color:#f4f7f7;background:#090b0c;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #f4f7f7;--muted: #9ca7a8;--line: #303638;--surface: #15191a;--surface-soft: #1b2022;--green: #81d8d0;--green-dark: #b7f0eb;--green-soft: rgb(129 216 208 / 12%);--lime: #81d8d0;--danger: #ff7f87;--shadow: 0 28px 80px rgb(0 0 0 / 38%)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 14% 8%,rgb(129 216 208 / 14%),transparent 29rem),radial-gradient(circle at 88% 46%,rgb(129 216 208 / 7%),transparent 32rem),linear-gradient(180deg,#0d1011 0,#07090a);color-scheme:dark}button,input{font:inherit}button,label[for=pdf-file]{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,label[for=pdf-file]:focus-within,summary:focus-visible,a:focus-visible{outline:3px solid rgb(129 216 208 / 38%);outline-offset:3px}.app-shell{position:relative;min-height:100vh;overflow:hidden}.app-shell:before{position:fixed;z-index:-1;inset:0;background-image:linear-gradient(rgb(255 255 255 / 2.5%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 2.5%) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 72%);content:"";pointer-events:none}.site-header{display:flex;align-items:center;justify-content:space-between;width:min(1120px,calc(100% - 40px));margin:0 auto;padding:24px 0 18px;border-bottom:1px solid rgb(255 255 255 / 8%)}.brand{display:inline-flex;gap:10px;align-items:center;color:var(--ink);font-size:1.05rem;font-weight:800;letter-spacing:-.02em;text-decoration:none}.brand-mark{display:block;width:38px;height:38px;border:1px solid rgb(129 216 208 / 26%);border-radius:11px;object-fit:cover}.privacy-pill{display:inline-flex;gap:8px;align-items:center;padding:9px 14px;border:1px solid rgb(129 216 208 / 24%);border-radius:999px;color:var(--green-dark);background:#15191ac7;font-size:.78rem;font-weight:700;backdrop-filter:blur(8px)}.privacy-pill span,.action-row>p span{color:var(--green);font-size:.65rem}.compat-panel{margin-top:24px;padding:24px 28px;border:1px solid rgb(255 127 135 / 34%);border-radius:20px;color:#ffc2c6;background:#4f14193d}.compat-panel p{margin:8px 0 0;color:#e69ca1}.compat-panel details{margin-top:12px}.compat-panel summary,.error-panel summary,.diagnostics summary{cursor:pointer;font-size:.76rem;font-weight:700}.compat-panel ul,.diagnostics ul{margin:10px 0 0;padding-left:1.2em;font-size:.78rem;line-height:1.6}.file-warning{margin:12px 0 0;padding:10px 12px;border-radius:10px;color:#f4d7a8;background:#7a4e1247;font-size:.76rem;line-height:1.55}.drop-zone.is-disabled{cursor:not-allowed;opacity:.55;pointer-events:none}main{width:min(980px,calc(100% - 40px));margin:0 auto}.hero{max-width:760px;padding:58px 0 28px}.eyebrow,.section-kicker{margin:0 0 12px;color:var(--green);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-shadow:0 0 24px rgb(129 216 208 / 24%)}.hero h2{max-width:720px;margin:0;font-size:clamp(2.7rem,8vw,5.4rem);font-weight:800;line-height:.98;letter-spacing:-.065em;text-wrap:balance}.hero-copy{max-width:680px;margin:28px 0 0;color:var(--muted);font-size:clamp(1rem,2vw,1.16rem);line-height:1.85}.trust-list{display:flex;flex-wrap:wrap;gap:12px 24px;padding:0;margin:30px 0 0;color:#c5cdce;font-size:.84rem;font-weight:700;list-style:none}.trust-list li:before{margin-right:9px;color:var(--green);content:"✓"}.workspace,.status-panel,.result-panel,.error-panel{border:1px solid rgb(255 255 255 / 10%);border-radius:28px;background:#121617eb;box-shadow:var(--shadow);backdrop-filter:blur(16px)}.workspace{margin-top:32px;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,var(--shadow)}.workspace-heading,.status-heading{display:flex;gap:24px;align-items:end;justify-content:space-between;padding:30px 34px;border-bottom:1px solid var(--line)}.workspace-heading h1,.status-heading h2,.result-heading h2{margin:0;font-size:clamp(1.45rem,4vw,2rem);letter-spacing:-.035em}.workspace-heading>p{margin:0 0 4px;color:var(--muted);font-size:.82rem}.input-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr)}.input-section{padding:34px}.settings-section{border-left:1px solid var(--line);background:#ffffff05}.step-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}.step-number{display:grid;flex:0 0 auto;width:30px;height:30px;place-items:center;border-radius:50%;color:#071111;background:var(--green);font-size:.78rem;font-weight:800}.step-heading h3{margin:1px 0 5px;font-size:1.04rem}.step-heading p{margin:0;color:var(--muted);font-size:.78rem}#pdf-file{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.drop-zone{position:relative;display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:center;min-height:184px;padding:28px;border:1.5px dashed #4a5557;border-radius:20px;background:#111516;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.drop-zone:hover,.drop-zone.is-dragging{border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 0 0 1px #81d8d01f;transform:translateY(-2px)}.drop-zone.has-file{border-style:solid;border-color:#81d8d0a3;background:var(--green-soft)}.file-icon{display:grid;width:54px;height:66px;place-items:center;border-radius:8px 8px 12px 12px;color:#071111;background:var(--green);box-shadow:0 10px 28px #81d8d02e;font-size:.72rem;font-weight:900;letter-spacing:.04em}.drop-copy{display:grid;gap:6px}.drop-copy strong{overflow:hidden;font-size:.95rem;text-overflow:ellipsis;white-space:nowrap}.drop-copy span,.file-meta{color:var(--muted);font-size:.76rem}.file-meta{grid-column:2;min-height:1.2em;margin-top:-26px}.file-list{display:grid;gap:7px;max-height:148px;overflow:auto;margin:12px 0 0;padding:0;list-style:none}.file-list li{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:10px;color:#d7dcdc;background:#181d1e;font-size:.72rem}.file-list li span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-list li span:last-child{flex:0 0 auto;color:var(--muted)}.dpi-control>label{display:block;margin-bottom:8px;color:#c5cdce;font-size:.78rem;font-weight:700}.number-field{display:flex;align-items:center;overflow:hidden;border:1px solid #454d4f;border-radius:14px;background:#101415}.number-field:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #81d8d01f}.number-field input{width:100%;padding:16px;border:0;outline:0;color:var(--ink);background:transparent;font-size:1.24rem;font-weight:800}.number-field span{padding-right:16px;color:var(--muted);font-size:.75rem;font-weight:800}.preset-group{display:grid;gap:8px;margin-top:14px}.preset{padding:10px 12px;border:1px solid transparent;border-radius:10px;color:#adb6b7;background:transparent;font-size:.78rem;font-weight:700;text-align:left;cursor:pointer}.preset:hover{color:var(--ink);background:#ffffff0d}.preset.is-active{border-color:#81d8d057;color:var(--green-dark);background:var(--green-soft)}.action-row{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:24px 34px;border-top:1px solid var(--line)}.action-row>p{max-width:34rem;margin:0;color:var(--muted);font-size:.76rem;line-height:1.6}.action-buttons{display:flex;gap:10px}.primary-button,.secondary-button,.download-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 22px;border-radius:13px;font-size:.86rem;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.primary-button,.download-button{border:1px solid var(--green);color:#071111;background:var(--green);box-shadow:0 10px 28px #81d8d02e}.primary-button:hover:not(:disabled),.download-button:hover:not(:disabled){background:var(--green-dark);box-shadow:0 14px 34px #81d8d03d;transform:translateY(-1px)}.primary-button:disabled,.download-button:disabled{border-color:#373d3f;color:#6e7779;background:#252a2b;box-shadow:none;cursor:not-allowed}.secondary-button{border:1px solid #4a5355;color:var(--ink);background:#1b2021}.secondary-button:hover{border-color:#697477;background:#242a2b}.status-panel,.result-panel,.error-panel{margin-top:24px}.status-heading strong{color:var(--green);font-size:1.4rem}.progress-track{height:9px;margin:32px 34px 18px;overflow:hidden;border-radius:999px;background:#282e30}.progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4fbdb6,var(--green));box-shadow:0 0 18px #81d8d047;transition:width .24s ease}.status-detail{margin:0 34px;color:var(--muted);font-size:.88rem}.stage-list{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;padding:24px 34px 32px;margin:0;list-style:none}.stage-list li{padding-top:9px;border-top:2px solid #394043;color:#7d8789;font-size:.67rem;font-weight:700}.stage-list li.is-complete,.stage-list li.is-current{border-color:var(--green);color:var(--green-dark)}.stage-list li.is-current{font-weight:900}.result-panel{padding:34px}.result-heading{display:flex;gap:18px;align-items:center}.result-heading p:last-child{margin:7px 0 0;color:var(--muted);font-size:.84rem}.success-mark{display:grid;flex:0 0 auto;width:48px;height:48px;place-items:center;border-radius:50%;color:#071111;background:var(--lime);font-size:1.35rem;font-weight:900}.success-mark.is-warning{color:#201508;background:#f4ba68}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}.metric-card{display:grid;gap:8px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}.metric-card.is-highlighted{border-color:#81d8d061;background:var(--green-soft)}.metric-card span{color:var(--muted);font-size:.7rem;font-weight:700}.metric-card strong{font-size:1.16rem;letter-spacing:-.03em}.result-actions{display:grid;gap:10px;margin-top:22px}.zip-download{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:15px 16px;border-radius:14px;color:var(--green-dark);background:var(--green-soft)}.zip-download>span{font-size:.76rem;font-weight:700}.batch-result-item{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.batch-result-item>div{display:grid;min-width:0;gap:4px}.batch-result-item strong{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.batch-result-item span{color:var(--muted);font-size:.7rem}.batch-result-item .download-button{min-height:42px;flex:0 0 auto;padding:0 16px;font-size:.74rem}.technical-details{margin-top:20px;border-top:1px solid var(--line)}.technical-details summary{padding:18px 0 0;color:var(--muted);font-size:.76rem;font-weight:700;cursor:pointer}pre{max-height:360px;overflow:auto;padding:18px;border-radius:12px;border:1px solid #2d3436;color:#cde5e3;background:#090c0d;font:.72rem/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap}.error-panel{padding:24px 28px;border-color:#ff7f8757;color:#ffc2c6;background:#4f14193d}.error-panel p{margin:7px 0 0;color:#e69ca1;white-space:pre-wrap}.error-panel details{margin-top:12px}.error-panel pre{max-height:160px;margin:8px 0 0}footer{width:min(980px,calc(100% - 40px));margin:0 auto;padding:38px 0 48px;color:#6f797b;font-size:.72rem}footer a{color:var(--green-dark);text-decoration:none}footer a:hover{text-decoration:underline}.diagnostics{margin-top:14px}.diagnostics .is-ok{color:var(--green-dark)}.diagnostics .is-ng{color:#ffc2c6}[hidden]{display:none!important}@media(max-width:760px){.site-header,main,footer{width:min(100% - 24px,620px)}.site-header{padding:16px 0}.privacy-pill{padding:8px 10px;font-size:.68rem}.hero{padding:50px 4px 38px}.hero h2{font-size:clamp(2.75rem,15vw,4.3rem)}.workspace,.status-panel,.result-panel,.error-panel{border-radius:20px}.workspace{margin-top:20px}.workspace-heading,.status-heading,.action-row{align-items:flex-start;padding:24px}.workspace-heading>p{display:none}.input-grid{grid-template-columns:1fr}.input-section{padding:26px 24px}.settings-section{border-top:1px solid var(--line);border-left:0}.action-row{flex-direction:column}.action-buttons,.action-buttons button{width:100%}.stage-list{grid-template-columns:repeat(3,1fr);padding:22px 24px 26px}.progress-track{margin-right:24px;margin-left:24px}.status-detail{margin:0 24px}.result-panel{padding:26px 24px}.metric-grid{grid-template-columns:1fr 1fr}.result-actions{width:100%}.batch-result-item,.zip-download{align-items:stretch;flex-direction:column}.batch-result-item .download-button,.zip-download .download-button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
