:root{--c-bg: #f5f7fa;--c-surface: #ffffff;--c-surface-muted: #f0f3f8;--c-border: #dde3ec;--c-border-strong: #c5cedb;--c-text: #1a2433;--c-text-muted: #5a6779;--c-primary: #1d4ed8;--c-primary-hover: #1a3fae;--c-primary-soft: #eaf0ff;--c-navy: #0f2a4f;--c-success: #0f7a4d;--c-success-soft: #e6f5ee;--c-warning-soft: #fff6e0;--c-warning: #8a5a00;--c-danger: #b42318;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgb(15 42 79 / .06);--shadow: 0 1px 3px rgb(15 42 79 / .08), 0 4px 12px rgb(15 42 79 / .04);--font-sans: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic UI", Meiryo, system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;--container: 1080px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.75;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased}a{color:var(--c-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.4;margin:0 0 .5em;color:var(--c-navy)}:focus-visible{outline:3px solid rgb(29 78 216 / .45);outline-offset:2px}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 20px}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.site-header{background:var(--c-surface);border-bottom:1px solid var(--c-border);position:sticky;top:0;z-index:10}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:60px}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--c-navy);font-weight:700;font-size:1.15rem;letter-spacing:.02em}.logo:hover{text-decoration:none}.logo__mark{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:var(--c-navy);color:#fff;font-size:.95rem}.logo__tagline{font-size:.75rem;font-weight:400;color:var(--c-text-muted)}.site-nav{display:flex;gap:20px;font-size:.9rem}.site-nav a{color:var(--c-text);white-space:nowrap}@media(max-width:640px){.logo__tagline,.site-nav__category{display:none}}.site-footer{margin-top:64px;padding:32px 0;background:var(--c-navy);color:#c9d4e5;font-size:.85rem}.site-footer a{color:#fff}.site-footer__privacy{margin:0 0 8px}.site-footer__links{display:flex;flex-wrap:wrap;gap:4px 20px;margin:0 0 8px}main{padding:28px 0 0}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0 0 16px;padding:0;font-size:.82rem;color:var(--c-text-muted)}.breadcrumb li+li:before{content:"›";margin-right:4px;color:var(--c-border-strong)}.breadcrumb a{color:var(--c-text-muted)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.tool-card{display:flex;flex-direction:column;gap:6px;height:100%;padding:18px 20px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:var(--c-text);transition:border-color .15s,box-shadow .15s}.tool-card:hover{text-decoration:none;border-color:var(--c-primary);box-shadow:var(--shadow)}.tool-card__title{font-weight:700;color:var(--c-navy)}.tool-card__desc{font-size:.85rem;color:var(--c-text-muted);line-height:1.6}.chip{align-self:flex-start;padding:1px 10px;font-size:.72rem;border-radius:999px;background:var(--c-primary-soft);color:var(--c-primary);font-weight:600}.section{margin-top:40px}.section__title{font-size:1.2rem;padding-left:12px;border-left:4px solid var(--c-primary)}.tool-header{margin-bottom:20px}.tool-header h1{font-size:1.7rem}.tool-header p{margin:0;color:var(--c-text-muted)}.trust-badges{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:14px 0 0;padding:0}.trust-badges li{padding:2px 10px;font-size:.78rem;border-radius:999px;background:var(--c-success-soft);color:var(--c-success);font-weight:600}.trust-badges li:before{content:"✓ "}.tool-body{padding:24px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}@media(max-width:640px){.tool-body{padding:16px}}.tool-meta{margin-top:12px;font-size:.78rem;color:var(--c-text-muted);text-align:right}.draft-banner{margin-bottom:16px;padding:8px 14px;border-radius:var(--radius-sm);background:var(--c-warning-soft);color:var(--c-warning);font-size:.85rem;font-weight:600}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-size:.88rem;font-weight:600;color:var(--c-navy)}.input,.textarea,.select{width:100%;padding:10px 12px;font:inherit;color:var(--c-text);background:var(--c-surface);border:1px solid var(--c-border-strong);border-radius:var(--radius-sm)}.textarea{min-height:220px;resize:vertical;line-height:1.7}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--c-primary);box-shadow:0 0 0 3px #1d4ed826}.btn-row{display:flex;flex-wrap:wrap;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;font:inherit;font-size:.9rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--c-primary);background:var(--c-primary);color:#fff;cursor:pointer}.btn:hover{background:var(--c-primary-hover)}.btn:disabled{opacity:.7;cursor:default}.btn--secondary{background:var(--c-surface);color:var(--c-primary)}.btn--secondary:hover{background:var(--c-primary-soft)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.stat{padding:12px 14px;border-radius:var(--radius);background:var(--c-surface-muted);border:1px solid var(--c-border)}.stat--wide{grid-column:1 / -1}.stat__label{font-size:.78rem;color:var(--c-text-muted)}.stat__value{font-size:1.5rem;font-weight:700;color:var(--c-navy);font-variant-numeric:tabular-nums}.stat__unit{margin-left:2px;font-size:.8rem;font-weight:400;color:var(--c-text-muted)}.tool-section+.tool-section{margin-top:32px;padding-top:24px;border-top:1px solid var(--c-border)}.tool-section__title{font-size:1.05rem;margin-bottom:14px}.form-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 16px}.form-row>.field{min-width:140px}.option-group{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;border:0}.option-group>legend{width:100%;margin-bottom:6px}.option-group label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.panes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:640px){.panes{grid-template-columns:1fr}}.textarea--output{background:var(--c-surface-muted)}.textarea--mono{font-family:var(--font-mono);font-size:.9rem}.stat--primary{background:var(--c-primary-soft);border-color:var(--c-primary)}.mt{margin-top:16px}.btn-row--end{justify-content:flex-end}.note{margin:10px 0 0;font-size:.8rem;color:var(--c-text-muted)}.error-text{margin:6px 0 0;font-size:.82rem;color:var(--c-danger)}.table-wrap{position:relative;overflow-x:auto;border:1px solid var(--c-border);border-radius:var(--radius)}.data-table{width:100%;border-collapse:collapse;font-size:.88rem;background:var(--c-surface)}.data-table th,.data-table td{padding:8px 12px;border-bottom:1px solid var(--c-border);text-align:left;vertical-align:top}.data-table th{background:var(--c-surface-muted);font-weight:600;white-space:nowrap}.data-table tr:last-child td{border-bottom:none}.data-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.data-table .mono{font-family:var(--font-mono)}.field--wide{flex-basis:100%}.color-swatch{display:inline-block;width:1.4em;height:1.4em;margin-right:8px;vertical-align:-.25em;border:1px solid var(--c-border);border-radius:var(--radius-sm);background-image:none}.data-table td{white-space:pre-wrap}.svg-result{max-width:280px;margin-bottom:8px;padding:8px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm)}.svg-result svg{display:block;width:100%;height:auto}.big-time{margin:8px 0 16px;font-size:clamp(2.6rem,11vw,5rem);font-weight:700;line-height:1.1;text-align:center;color:var(--c-navy);font-variant-numeric:tabular-nums;letter-spacing:.02em}.btn--lg{min-width:120px;padding:12px 24px;font-size:1rem}.btn-row--center{justify-content:center}@media print{body:has(.print-sheet){background:#fff}body:has(.print-sheet) :is(.site-header,.site-footer,.breadcrumb,.tool-header,.tool-meta,.section,.draft-banner),.no-print{display:none!important}body:has(.print-sheet) .tool-body{padding:0;border:0;box-shadow:none}body:has(.print-sheet) .container{max-width:none;padding:0}.print-sheet{box-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}[hidden]{display:none!important}
