:root{--ink:#13231b;--muted:#5f6f66;--line:#dbe4de;--paper:#f7faf8;--surface:#fff;--accent:#147a4a;--accent-dark:#0e5b37;--accent-soft:#e5f4ec;--danger:#b42318;--radius:18px;--shadow:0 12px 38px #13231b14;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Inter,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;line-height:1.7}a{color:var(--accent-dark);text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}img{max-width:100%}.container{width:min(1120px,100% - 32px);margin-inline:auto}.narrow{width:min(760px,100% - 32px);margin-inline:auto}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:8px;padding:10px 14px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:16px}.site-header{z-index:50;backdrop-filter:blur(12px);background:#f7faf8eb;border-bottom:1px solid #dbe4decc;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:68px;display:flex}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:10px;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;background:var(--ink);border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.site-header nav,.site-footer nav{flex-wrap:wrap;gap:18px;display:flex}.site-header nav a,.site-footer nav a{color:var(--muted);font-size:.92rem;text-decoration:none}.hero{padding:76px 0 36px}.eyebrow{color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:.82rem;font-weight:800}h1,h2,h3{letter-spacing:-.035em;line-height:1.25}h1{max-width:900px;margin:0;font-size:clamp(2.3rem,7vw,5rem)}h2{margin-top:0;font-size:clamp(1.55rem,4vw,2.45rem)}h3{margin-top:0}.lead{max-width:720px;color:var(--muted);margin:22px 0 0;font-size:clamp(1.05rem,2vw,1.22rem)}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.button-link{background:var(--ink);color:#fff;border-radius:12px;justify-content:center;align-items:center;min-height:50px;padding:0 20px;font-weight:800;text-decoration:none;display:inline-flex}.button-link:hover{background:var(--accent-dark)}.hero-proof{color:var(--muted);margin:12px 0 0;font-size:.82rem;font-weight:700}.section{padding:54px 0}.home-tools-section{padding-top:24px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.section-heading p{max-width:560px;color:var(--muted);margin:0}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.tool-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);color:inherit;padding:24px;text-decoration:none;transition:transform .2s,border-color .2s;display:block}.tool-card:hover{border-color:#9fc8b0;transform:translateY(-3px)}.tool-card.featured{background:linear-gradient(135deg, var(--surface), var(--accent-soft));border-color:#9fc8b0;grid-column:1/-1;padding:30px}.tool-card .tag{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;margin-bottom:14px;padding:5px 9px;font-size:.78rem;font-weight:800;display:inline-block}.tool-card.featured .tag{background:var(--ink);color:#fff}.tool-card h3{margin-bottom:8px;font-size:1.3rem}.tool-card.featured h3{font-size:clamp(1.55rem,3vw,2rem)}.tool-card p{color:var(--muted);margin:0}.feature-strip{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.feature{background:var(--surface);padding:26px}.feature strong{margin-bottom:6px;display:block}.feature p{color:var(--muted);margin:0;font-size:.94rem}.page-head{padding:38px 0 24px}.page-head h1{font-size:clamp(2rem,5vw,3.6rem)}.page-head .lead{margin-top:14px}.breadcrumbs{margin-bottom:26px}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:.86rem;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";color:#9aa8a0;margin-left:8px}.calculator-shell{grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);align-items:start;gap:24px;display:grid}.calc-panel,.result-panel,.content-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.calc-panel,.result-panel{padding:26px}.result-panel{position:sticky;top:92px}.form-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.form-grid.two{grid-template-columns:repeat(2,1fr)}.field{gap:6px;display:grid}.field label{font-size:.88rem;font-weight:800}.field input,.field select{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #bfcac3;border-radius:10px;padding:10px 12px}.field input:focus,.field select:focus{border-color:var(--accent);outline:3px solid #147a4a2e}.field-note{color:var(--muted);font-size:.8rem}fieldset{border:0;margin:0 0 20px;padding:0}legend{margin-bottom:12px;font-weight:800}.button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:12px;width:100%;min-height:50px;font-weight:800}.button:hover{background:var(--accent-dark)}.result-kicker{color:var(--muted);margin:0 0 6px;font-size:.84rem;font-weight:700}.result-value{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,5vw,3.25rem);line-height:1.15}.result-detail{color:var(--muted);margin:14px 0 0}.status-good{color:var(--accent-dark)}.status-bad{color:var(--danger)}.error{color:var(--danger);margin:12px 0 0;font-size:.9rem}.optimizer-shell{grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);align-items:start;gap:24px;display:grid}.optimizer-form{padding:0;overflow:hidden}.optimizer-step{border-bottom:1px solid var(--line);padding:26px}.step-heading{align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.step-heading>span{background:var(--ink);color:#fff;border-radius:999px;flex:0 0 32px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.step-heading strong{font-size:1.05rem;display:block}.step-heading p{color:var(--muted);margin:2px 0 0;font-size:.88rem}.quantity-field{max-width:180px;margin-top:14px}.candidate-list{gap:12px;display:grid}.candidate-row{border:1px solid var(--line);background:var(--paper);border-radius:14px;grid-template-columns:1.3fr repeat(3,minmax(76px,.7fr));gap:10px;padding:14px;display:grid}.optimizer-form>.button{width:calc(100% - 52px);margin:26px}.optimizer-form>.error{margin:-14px 26px 26px}.optimizer-results{gap:16px;display:grid;position:sticky;top:92px}.optimizer-summary{position:static}.optimizer-summary .result-value{font-size:clamp(1.7rem,4vw,2.6rem)}.optimizer-result-list{gap:12px;display:grid}.optimizer-result-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;padding:20px}.optimizer-result-card.is-recommended{border:2px solid var(--accent)}.optimizer-result-card.is-rejected{opacity:.72;box-shadow:none}.optimizer-result-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.optimizer-result-head h3{margin:6px 0 0;font-size:1.25rem}.candidate-dimensions{color:var(--muted);text-align:right;margin:0;font-size:.86rem}.recommendation-badge,.rank-badge{border-radius:999px;padding:4px 8px;font-size:.74rem;font-weight:800;display:inline-block}.recommendation-badge{background:var(--accent);color:#fff}.rank-badge{color:var(--muted);background:#edf1ee}.optimizer-metrics{border:1px solid var(--line);background:var(--line);border-radius:12px;grid-template-columns:repeat(2,1fr);gap:1px;display:grid;overflow:hidden}.optimizer-metric{background:var(--paper);padding:12px}.optimizer-metric span{color:var(--muted);font-size:.76rem;display:block}.optimizer-metric strong{margin-top:2px;font-size:1.05rem;display:block}.optimizer-result-detail{color:var(--muted);margin:14px 0 0;font-size:.86rem}.optimizer-rejected-message{margin:0 0 12px;font-weight:800}.content-stack{gap:18px;margin-top:32px;display:grid}.content-card{padding:28px}.content-card h2{font-size:1.45rem}.content-card p:last-child{margin-bottom:0}.notice{border-left:4px solid var(--accent);background:var(--accent-soft);color:#244f38;border-radius:10px;padding:16px 18px}.site-footer{border-top:1px solid var(--line);background:#eef4f0;margin-top:70px;padding:36px 0}.footer-inner{justify-content:space-between;align-items:start;gap:28px;display:flex}.site-footer p{color:var(--muted);margin:6px 0 0;font-size:.9rem}@media (width<=900px){.optimizer-shell{grid-template-columns:1fr}.optimizer-results{position:static}}@media (width<=760px){.site-header nav a:not(:first-child){display:none}.hero{padding:50px 0 30px}.home-tools-section{padding-top:18px}.tool-grid,.calculator-shell,.feature-strip{grid-template-columns:1fr}.feature-strip{gap:1px}.result-panel{position:static}.form-grid,.form-grid.two{grid-template-columns:1fr}.section-heading,.footer-inner{flex-direction:column;align-items:start}.candidate-row{grid-template-columns:repeat(3,1fr)}.candidate-name{grid-column:1/-1}.optimizer-step{padding:20px}.optimizer-form>.button{width:calc(100% - 40px);margin:20px}.optimizer-form>.error{margin:-8px 20px 20px}}
