*{box-sizing:border-box}body{margin:0;background:#f6f7f9;color:#222;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif}header{background:#fff;padding:22px;border-bottom:1px solid #ddd}header h1{margin:0 0 6px;font-size:25px}header p{margin:0;color:#666}main{max-width:900px;margin:auto;padding:18px}.card,.result,.notice{background:#fff;border-radius:12px;padding:16px;margin-bottom:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.grid label{font-size:13px;color:#666}.grid select,.grid input{display:block;width:100%;margin-top:5px;padding:10px;border:1px solid #ccc;border-radius:8px;font-size:16px;background:white}button{width:100%;margin-top:15px;padding:13px;background:#111;color:#fff;border:0;border-radius:8px;font-size:16px;font-weight:bold}.notice{background:#fff8df;border:1px solid #eadb9b;font-size:13px}.result{border:1px solid #e4e4e4}.maker{font-size:12px;color:#777}.name{font-size:17px;font-weight:bold;margin:3px 0}.price{font-size:20px;font-weight:bold}.detail,.help{margin-top:8px;color:#666;font-size:13px}.status{margin:0 0 12px;color:#666;font-size:13px}.growth-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.growth-grid div{padding:10px;border:1px solid #e4e4e4;border-radius:8px;background:#fafafa;font-size:13px}.summary{padding:12px;border-radius:8px;background:#f1f3f5;margin-bottom:12px}.buy{display:inline-block;margin-top:10px;padding:9px 12px;background:#111;color:#fff;border-radius:7px;text-decoration:none;font-size:13px}.error{background:#fff0f0;border-color:#e0aaaa}h3{margin:22px 0 10px}@media(max-width:650px){.grid{grid-template-columns:1fr 1fr}.growth-grid{grid-template-columns:repeat(2,1fr)}.price{font-size:18px}}
.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-button{margin-top:0;background:#eee;color:#222}.mode-button.active{background:#111;color:#fff}.hidden{display:none}.status-line{font-weight:bold;margin-top:10px}.card>label{display:block;font-size:13px;color:#666}.card>label input{display:block;width:100%;margin-top:5px;padding:10px;border:1px solid #ccc;border-radius:8px;font-size:16px}@media(max-width:650px){.mode-grid{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.growth-grid{grid-template-columns:repeat(2,1fr)}.price{font-size:18px}}
.rakuten-head{display:flex;justify-content:space-between;align-items:center;margin:8px 0 10px;font-size:14px}.rakuten-head span{font-size:12px;color:#777}.rakuten-card{display:flex;gap:12px}.rakuten-img{width:100px;height:100px;object-fit:contain;background:#fff;border-radius:8px;flex:none}.rakuten-body{min-width:0;flex:1}@media(max-width:650px){.rakuten-img{width:84px;height:84px}.rakuten-card{padding:12px}.rakuten-card .name{font-size:15px}}
#carFitSection .fit-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}#carFitSection .fit-links .buy{display:inline-block}@media(max-width:650px){#carFitSection .fit-links{display:grid}.carFitSection .buy{width:100%;box-sizing:border-box}}
.affiliate-note{font-size:12px;color:#666;background:#f7f7f7;padding:9px 11px;border-radius:6px;margin:8px 0 12px}
.ranked-card{position:relative}.rank{font-size:13px;font-weight:700;margin-bottom:5px}.score{font-weight:700;margin:5px 0}.summary b{font-weight:700}
.reason{font-size:13px;margin:5px 0;font-weight:600}
.timing{margin:10px 0;padding:12px;border:1px solid #ddd;border-radius:8px;background:#fafafa}.timing-row{display:block;padding:3px 0;font-size:13px}.timing small{color:#777}
.product-visual{min-height:10px;margin:4px 0 8px}.product-img{display:block;width:150px;height:150px;object-fit:contain;margin:0 auto 8px;border-radius:8px;background:#fff}.market-link{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 0;border-top:1px solid #eee;font-size:12px}.market-link .buy{margin:0;padding:7px 9px}.score-breakdown{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:7px 0}.score-breakdown span{font-size:11px;text-align:center;padding:5px 2px;background:#f5f5f5;border-radius:5px}@media(max-width:650px){.product-img{width:120px;height:120px}.score-breakdown{grid-template-columns:repeat(2,1fr)}.market-link{align-items:flex-start;flex-direction:column;width:100%}.market-link .buy{width:100%;box-sizing:border-box;text-align:center}}
.car-fit-result{margin-top:10px;padding:12px;border:1px solid #ddd;border-radius:8px;background:#fafafa}.car-fit-result span{display:block;margin:6px 0}.car-fit-result .buy{display:inline-block}.fit-links{margin-top:10px}
.timing-chart{display:flex;align-items:flex-end;gap:12px;height:180px;margin:14px 0 8px;padding:8px 4px;border-bottom:1px solid #ccc}.timing-col{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;font-size:11px}.timing-label{font-weight:700;margin-bottom:4px}.timing-bar{height:110px;width:30px;display:flex;align-items:flex-end;justify-content:center}.timing-bar i{display:block;width:100%;border-radius:5px 5px 0 0;background:#bbb}.timing-status{margin:4px 0}.cost-chart{display:grid;gap:10px;margin:12px 0}.cost-chart>div{display:grid;grid-template-columns:95px 85px 1fr 100px;gap:8px;align-items:center;font-size:13px}.cost-chart i{height:14px;border-radius:7px;background:#bbb;display:block}.cost-chart small{font-size:11px}.strategy{margin:12px 0}@media(max-width:650px){.cost-chart>div{grid-template-columns:80px 75px 1fr}.cost-chart small{grid-column:1/-1}.timing-chart{gap:5px}}
.site-footer{max-width:900px;margin:0 auto;padding:8px 22px 28px;color:#666;font-size:12px;line-height:1.7}.site-footer a{color:#444}

/* Mobile-first UX refresh */
:root{color-scheme:light}html{scroll-behavior:smooth}body{font-size:16px;line-height:1.55;color:#18212b;background:#f5f7fa}header{padding:20px 18px 16px;border-bottom:1px solid #d9e0e7}header h1{font-size:clamp(24px,6vw,32px);line-height:1.3;max-width:720px}header p{font-size:16px;color:#465363}.eyebrow{font-size:13px!important;font-weight:700;letter-spacing:.04em;color:#245c49!important;margin:0 0 8px}.header-affiliate{margin:12px 0 0!important;font-size:12px!important}main{padding:14px;max-width:780px}.card{border:1px solid #dfe5eb;border-radius:16px;padding:18px;box-shadow:0 2px 8px rgba(24,33,43,.035)}h2{font-size:21px;line-height:1.35;margin:0 0 14px}h3{font-size:18px;line-height:1.4}.mode-grid{grid-template-columns:1fr;gap:10px}.mode-button{min-height:64px;text-align:left;padding:16px 18px;border:1px solid #cbd5df;background:#fff;color:#15212b;border-radius:12px;font-size:17px}.mode-button:after{content:"›";float:right;font-size:25px;line-height:1}.mode-button.active{background:#173e32;color:#fff;border-color:#173e32}.grid{gap:12px}.grid label,.card>label{font-size:15px;color:#273444;line-height:1.45}.grid select,.grid input,.card>label input{min-height:48px;padding:11px 12px;border:1px solid #9ba9b7;border-radius:9px;color:#17212b;font-size:16px}input[type=number],input[type=text],input[type=search]{width:100%;max-width:100%}input::placeholder{color:#667483;opacity:1}button,.buy{min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.35}button{padding:12px 16px;border-radius:10px;background:#173e32}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #1769aa;outline-offset:3px}.help,.detail,.status{font-size:14px;line-height:1.55;color:#485767}.hidden{display:none!important}.wizard-progress{display:flex;justify-content:space-between;gap:12px;padding:0 0 12px;margin-bottom:16px;border-bottom:1px solid #dce3e9;color:#405365;font-size:13px;font-weight:700}.wizard-progress span:first-child{color:#176348}.result-section{scroll-margin-top:12px}.summary{border:1px solid #c7ded2;background:#eff7f2;padding:16px;border-radius:12px;font-size:16px}.summary strong,.summary b{font-size:18px}.affiliate-note{font-size:13px;line-height:1.5;color:#3f4a56}.notice{padding:14px;border-radius:10px;font-size:14px;line-height:1.55}.site-footer{font-size:13px;color:#465363}.site-footer a{color:#174f80;text-decoration:underline}details{margin:12px 0}summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:700}#carFitSection{scroll-margin-top:12px}#carFitSection .fit-links a{min-height:44px}.result{border-radius:12px}.buy{font-size:14px;padding:10px 14px;border-radius:9px;background:#173e32;color:white;text-decoration:none}.error,[aria-invalid=true]{border-color:#b42318!important}.field-error{font-size:14px;color:#b42318;font-weight:600;margin:5px 0 0}.result-hero{border:2px solid #b8d8c6;background:#f0f8f3;border-radius:14px;padding:16px;margin-bottom:14px}.result-hero h2{margin-bottom:8px}.step-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.local-save-note{flex-basis:100%;margin:0;color:#536170;font-size:12px;line-height:1.4}.step-actions button{margin-top:0;flex:1}.secondary-action{background:#fff!important;color:#1b2b39!important;border:1px solid #9ba9b7!important}@media(max-width:420px){main{padding:10px}.card{padding:15px;margin-bottom:12px}.grid{grid-template-columns:1fr}.grid label{margin-bottom:2px}.mode-button{font-size:17px}.cost-chart>div{grid-template-columns:76px 70px 1fr}.site-footer{padding-left:12px;padding-right:12px}}@media(min-width:651px){.mode-grid{grid-template-columns:1fr 1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.data-note{margin:8px 0;padding:9px 11px;border-left:3px solid #b7791f;background:#fff8e8;color:#624a1e;font-size:13px;line-height:1.55;border-radius:4px}
