/*!
 * @hagyyyy/design-system tokens v1.0.0
 * 生成物 — 編集禁止。正本: hagyyyy-inc/design-system tokens/tokens.json
 * 再生成: node tokens/build-tokens.mjs / 配布: node scripts/sync-tokens.mjs
 * design-tokens-version: 1.0.0
 */
:root{--paper:#f5f0e8;--card:#fcfaf5;--sunken:#ece7de;--ink:#221d19;--ink-muted:#625b54;--ink-faint:#8c857d;--line:#d6d0c8;--line-strong:#c4bcb3;--brand:#d97706;--brand-contrast:#2f1203;--brand-soft:#fbf3df;--brand-ink:#6b3815;--brand-link:#9f4400;--ok:#38724a;--ok-contrast:#fcfaf5;--ok-soft:#d7eddb;--warn:#b37d38;--warn-contrast:#221d19;--warn-soft:#f7e8c8;--danger:#b23a31;--danger-contrast:#fcfaf5;--danger-soft:#ffdfd8;--ink-inverse:#29211a;--paper-inverse:#ebe7df;--focus-ring:#d97706;--background:var(--paper);--foreground:var(--ink);--surface:var(--card);--border:var(--line);--input:var(--line-strong);--ring:var(--focus-ring);--muted:var(--ink-muted);--accent:var(--brand);--primary:var(--brand);--primary-foreground:var(--brand-contrast);--success:var(--ok);--warning:var(--warn);--destructive:var(--danger);--urgent:var(--danger);--error:var(--danger);--font-sans:-apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", "Segoe UI", system-ui, sans-serif;--font-display:"Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;--font-num:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--text-4xl:38px;--leading-tight:1.25;--leading-normal:1.6;--leading-relaxed:1.8;--weight-normal:400;--weight-medium:500;--weight-bold:700;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-px:1px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-full:9999px;--shadow-1:0 1px 2px #211c150f;--shadow-2:0 4px 16px #211c151a;--container:1200px;--container-narrow:720px;--bp-sm:640px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--z-nav:100;--z-overlay:800;--z-modal:900;--z-toast:1000;--dur-1:.12s;--dur-2:.2s;--ease:cubic-bezier(.25, .1, .25, 1)}[data-theme=dark]{--paper:#0a0a0a;--card:#171717;--sunken:#121212;--ink:#fafafa;--ink-muted:#a4a4a4;--ink-faint:#717171;--line:#2e2e2e;--line-strong:#484848;--brand:#f69432;--brand-contrast:#0a0a0a}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;line-height:1.9}.wrap{max-width:var(--container-narrow);margin:0 auto;padding:0 20px}.site-header{border-bottom:1px solid var(--line)}.site-header .wrap{justify-content:space-between;align-items:baseline;padding-top:14px;padding-bottom:14px;display:flex}.brand{align-items:center;gap:var(--space-2);letter-spacing:.02em;font-size:1.05rem;font-weight:700;display:inline-flex}.brand-mark{width:var(--space-6);height:var(--space-6);display:block}.brand-by{color:var(--muted);font-size:.8rem}.hero{text-align:center;padding:48px 0 8px}.eyebrow{color:var(--muted);letter-spacing:.12em;margin:0 0 8px;font-size:.78rem;font-weight:700}.hero h1{letter-spacing:.01em;margin:0 0 12px;font-size:clamp(1.6rem,4.5vw,2.3rem);line-height:1.5}.hero .lede{color:var(--muted);max-width:40em;margin:0 auto}.tool-section{padding:24px 0 8px}.tool-card{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:24px}.dropzone{border:2px dashed var(--line-strong);padding:var(--space-12) var(--space-6);text-align:center;cursor:pointer;border-radius:12px;transition:background .15s,border-color .15s}.dropzone:hover,.dropzone.dragging{background:var(--soft);border-color:var(--ink)}.dropzone-main{margin:0 0 10px;font-size:1.15rem;font-weight:700}.dropzone-sub{color:var(--muted);max-width:34em;margin:0 auto;font-size:.85rem}.unsupported{color:var(--error);text-align:center;margin:0}.panel{flex-direction:column;gap:18px;display:flex}.file-info{border-bottom:1px solid var(--line);flex-direction:column;gap:2px;padding-bottom:14px;display:flex}.image-summary{grid-template-columns:var(--space-24) 1fr;border-bottom:1px solid var(--line);align-items:center;gap:18px;padding-bottom:14px;display:grid}.image-summary img,.result-preview{width:100%;max-height:var(--space-32);object-fit:contain;border-radius:var(--radius-lg);background:var(--sunken);display:block}.image-summary .file-info{border:0;padding:0}.file-name{word-break:break-all;font-weight:700}.file-meta{color:var(--muted);font-size:.85rem}fieldset{border:0;flex-direction:column;gap:16px;margin:0;padding:0;display:flex}fieldset:disabled{opacity:.55}.presets{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.preset{border:1px solid var(--line);cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.preset input{opacity:0;pointer-events:none;position:absolute}.preset.selected{border-color:var(--ink);background:var(--soft);box-shadow:inset 0 0 0 1px var(--ink)}.preset-label{font-weight:700}.preset-note{color:var(--muted);font-size:.78rem;line-height:1.6}.options{flex-direction:column;gap:6px;display:flex}.select-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.select-row label{gap:var(--space-1);color:var(--muted);flex-direction:column;font-size:.82rem;font-weight:700;display:flex}.select-row select{border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;color:var(--ink);background:var(--paper);font:inherit;padding:10px 12px}.target-size-row{cursor:text;flex-wrap:wrap;align-items:center;gap:8px;font-size:.92rem;display:flex}.target-size-input{width:var(--space-24);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink);background:var(--paper);font:inherit;text-align:right;padding:8px 10px}.target-size-note{color:var(--muted);margin:2px 0 0;font-size:.85rem}.target-size-note-warn{color:var(--warn)}.check{cursor:pointer;align-items:center;gap:8px;font-size:.92rem;display:flex}.check input{width:16px;height:16px;accent-color:var(--ink)}.estimate{margin:0;font-size:.92rem}.estimate-warn,.warn{color:var(--warn);font-size:.85rem}.warn{margin:0}.error{color:var(--error);margin:14px 0 0;font-size:.9rem}.actions{align-items:center;gap:14px;display:flex}.primary{appearance:none;background:var(--ink);color:var(--paper);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-8);font-size:1rem;font-weight:700;font-family:var(--font-sans);cursor:pointer;border:0;justify-content:center;align-items:center;text-decoration:none;transition:opacity .15s;display:inline-flex}.primary:hover{opacity:.82}.ghost{appearance:none;font-size:.9rem;font-family:var(--font-sans);color:var(--muted);cursor:pointer;background:0 0;border:0;padding:8px 4px;text-decoration:underline}.ghost:hover{color:var(--ink)}.result-headline{margin:0;font-size:1.1rem;font-weight:700}.result-preview{max-height:calc(var(--space-32) * 3)}.result-sizes{flex-wrap:wrap;align-items:baseline;gap:10px;margin:0;font-size:1.05rem;display:flex}.result-sizes strong{font-size:1.5rem}.result-sizes .arrow{color:var(--muted)}.reduction{color:var(--warn);font-weight:700}section.static{padding:var(--text-4xl) 0 var(--space-1)}section.static h2{border-bottom:1px solid var(--line);margin:0 0 18px;padding-bottom:10px;font-size:1.25rem}.features{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.feature h3{margin:0 0 6px;font-size:1rem}.feature p{color:var(--muted);margin:0;font-size:.88rem}.steps{margin:0;padding-left:1.4em}.steps li{margin-bottom:8px}.prose p{margin:0 0 14px}.faq details{border-bottom:1px solid var(--line);padding:4px 0}.faq summary{cursor:pointer;padding:10px 0;font-weight:700;list-style-position:inside}.faq details p{color:var(--ink-muted);margin:0 0 14px;font-size:.94rem}.legal p,.about p{color:var(--ink-muted);margin:0 0 12px;font-size:.9rem}.related-tool{gap:var(--space-3);padding:var(--space-4) var(--text-lg);border:var(--space-px) solid var(--line);border-radius:var(--radius-lg);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;text-decoration:none;transition:border-color .15s,background .15s;display:grid}.related-tool:hover{border-color:var(--ink);background:var(--sunken)}.related-logo{width:36px;height:36px;display:block}.related-tool strong,.related-tool small{display:block}.related-tool small{margin-top:var(--space-1);color:var(--ink-muted);font-size:.82rem}.related-arrow{color:var(--ink-muted);font-size:1.25rem}.site-footer{border-top:1px solid var(--line);margin-top:48px}.site-footer .wrap{padding-top:var(--space-5);padding-bottom:var(--space-8);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.82rem;display:flex}.site-footer a{color:var(--muted)}@media (width<=640px){.presets,.features{grid-template-columns:1fr}.hero{padding-top:32px}.dropzone{padding:40px 16px}}.desktop-cta p{margin:0 0 var(--space-3)}.desktop-cta-links{gap:var(--space-4);flex-wrap:wrap;display:flex}.desktop-note{color:var(--ink-muted);font-size:var(--text-xs)}
