:root{--paper:#fff;--ink:#24272b;--muted:#666d75;--line:#e4e7ea;--soft:#f5f7f8;--accent:#426caa;--accent-soft:#edf3fa;--width:1080px;--font:system-ui,-apple-system,"Segoe UI","Noto Sans JP","Yu Gothic",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 var(--font)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.wrap{width:min(var(--width),calc(100% - 48px));margin-inline:auto}.site-header{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:30px}.brand{font-size:19px;font-weight:750;letter-spacing:-.04em}.brand span{color:var(--accent)}.nav{display:flex;gap:25px;margin-left:auto}.nav a,.header-link{font-size:14px;color:#4c535c}.nav a:hover,.header-link:hover,.footer-links a:hover{color:var(--accent)}.header-link{font-weight:700;border:1px solid var(--line);padding:7px 12px;border-radius:3px}.hero{padding:57px 0 39px;display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:center}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:700;margin:0 0 10px}.hero h1{font-size:clamp(32px,5vw,51px);letter-spacing:-.055em;line-height:1.25;margin:0 0 14px;font-weight:750}.hero p:not(.eyebrow){max-width:600px;color:var(--muted);font-size:15px;margin:0}.hero-note{background:var(--soft);border:1px solid var(--line);padding:18px 20px}.hero-note b{display:block;font-size:15px;margin-bottom:4px}.hero-note p{font-size:14px!important;line-height:1.7}.counts{display:flex;gap:24px;border-block:1px solid var(--line);padding:12px 0;color:var(--muted);font-size:14px}.counts strong{color:var(--ink);font-size:14px;margin-right:5px}.browser-tools{padding:30px 0 16px;display:flex;gap:10px}.search{width:min(350px,100%);height:40px;border:1px solid #d5d9dd;border-radius:3px;padding:0 12px;color:var(--ink);outline:none}.search:focus,.filters select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #426caa18}.filters select{height:40px;min-width:160px;background:#fff;border:1px solid #d5d9dd;border-radius:3px;padding:0 10px;color:var(--ink)}.result-count{margin-left:auto;align-self:center;font-size:14px;color:var(--muted)}.generator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding-bottom:60px}.generator-card{min-height:118px;padding:15px 16px;border:1px solid var(--line);background:#fff;transition:border-color .15s,background .15s}.generator-card:hover{border-color:#9db0c8;background:#fcfdff}.generator-card .card-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.generator-card small{font-size:13px;color:var(--muted)}.generator-card .arrow{font-size:15px;color:var(--accent)}.generator-card h2{font-size:15px;line-height:1.45;margin:8px 0 3px;font-weight:700}.generator-card p{font-size:14px;line-height:1.55;color:var(--muted);margin:0}.section-title{font-size:21px;letter-spacing:-.025em;margin:2px 0 4px}.section-intro{font-size:14px;color:var(--muted);margin:0 0 17px}.site-footer{border-top:1px solid var(--line);background:#fbfcfc}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0}.footer-brand{font-weight:750;font-size:16px}.footer-brand span{color:var(--accent)}.footer-links{display:flex;gap:17px;flex-wrap:wrap}.footer-links a{font-size:14px;color:#525962}.footer-copy{font-size:13px;color:var(--muted);white-space:nowrap}
/* Generator detail and information pages */
.breadcrumbs{font-size:14px;color:var(--muted);padding:22px 0 7px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.page-heading{padding:9px 0 27px;border-bottom:1px solid var(--line)}.page-heading h1{font-size:36px;line-height:1.3;letter-spacing:-.05em;margin:0 0 9px}.page-heading p{max-width:720px;font-size:15px;color:var(--muted);margin:0}.detail-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:28px;padding:26px 0 48px}.panel{border:1px solid var(--line);padding:20px;background:#fff}.panel h2{font-size:19px;letter-spacing:-.025em;margin:0 0 14px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field label{display:block;font-size:14px;font-weight:700;margin-bottom:5px}.field select{width:100%;height:39px;background:#fff;border:1px solid #d5d9dd;border-radius:3px;padding:0 10px;color:var(--ink)}.primary-button{height:41px;padding:0 15px;margin-top:14px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:3px;font-size:14px;font-weight:700;cursor:pointer}.primary-button:hover{background:#345a92}.results-head{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:18px;padding-top:13px}.results-head h3{font-size:14px;margin:0}.plain-button{border:0;background:transparent;color:var(--accent);font-size:13px;cursor:pointer}.result-list{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:7px}.result-list li{min-height:43px;padding:9px 10px;background:var(--soft);border:1px solid #edf0f2;font-size:15px;font-weight:650;display:flex;justify-content:space-between;align-items:center;gap:8px}.copy-button{border:0;background:transparent;color:var(--accent);font-size:13px;cursor:pointer}.side-note{background:var(--soft);padding:17px;border:1px solid var(--line);margin-bottom:12px}.side-note h3{font-size:15px;margin:0 0 6px}.side-note p,.side-note li{font-size:14px;color:var(--muted);margin:0}.side-note ol{padding-left:18px;margin:0}.side-note li+li{margin-top:4px}.related{margin-top:16px}.related a{display:block;border-bottom:1px solid var(--line);padding:10px 0;font-size:14px;color:var(--accent)}.article{max-width:780px;padding:0 0 62px}.article h2{font-size:21px;letter-spacing:-.03em;margin:0 0 10px}.article p{font-size:15px;color:#555d65}.article-block{padding:17px 0;border-bottom:1px solid var(--line)}.article-block h2{font-size:19px;margin:0 0 7px}.article-block p,.article-block li{font-size:15px;color:#555d65}.article-block ul{padding-left:20px}.notice{font-size:13px;color:var(--muted);margin:18px 0 0}.toast{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);background:#24272b;color:white;padding:8px 14px;border-radius:3px;font-size:13px;opacity:0;transition:opacity .2s;pointer-events:none}.toast.show{opacity:1}.empty-state{padding:28px;border:1px solid var(--line);color:var(--muted);font-size:15px;grid-column:1/-1}.contact-placeholder{border:1px solid var(--line);padding:17px;background:var(--soft);font-size:14px;color:#505861}
@media(max-width:760px){.wrap{width:calc(100% - 32px)}.site-header{height:64px;gap:14px}.brand{font-size:17px}.nav{display:none}.header-link{font-size:13px;padding:6px 8px;margin-left:auto}.hero{grid-template-columns:1fr;gap:18px;padding:39px 0 27px}.hero h1{font-size:37px}.hero-note{max-width:none}.browser-tools{flex-wrap:wrap;padding-top:22px}.search{width:100%}.filters{flex:1}.filters select{width:100%}.result-count{margin-left:0}.generator-grid{grid-template-columns:repeat(2,1fr);gap:8px}.generator-card{min-height:117px;padding:12px}.generator-card h2{font-size:15px}.generator-card p{font-size:13px}.footer-inner{align-items:flex-start;flex-direction:column;gap:12px}.footer-links{gap:12px}.page-heading h1{font-size:30px}.detail-layout{grid-template-columns:1fr;gap:14px;padding-top:18px}.panel{padding:16px}.field-grid{grid-template-columns:1fr 1fr}.result-list li{font-size:13px;padding:8px}.side-column{display:grid;grid-template-columns:1fr 1fr;gap:10px}.side-note{margin-bottom:0}.related{grid-column:1/-1}}
@media(max-width:420px){.hero h1{font-size:31px}.generator-grid{grid-template-columns:1fr}.counts{gap:14px;font-size:13px}.counts strong{font-size:15px}.field-grid{grid-template-columns:1fr}.side-column{grid-template-columns:1fr}}
