:root{--bg:#f7f8fa;--fg:#14202b;--mut:#5b6b7a;--acc:#0b6b4f;--card:#fff;--bd:#dde3e9}
*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg)}
header{background:#fff;border-bottom:1px solid var(--bd)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
header .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding-top:14px;padding-bottom:14px}
.brand{display:inline-flex;align-items:center;line-height:0}.brand img{height:35px;width:auto;display:block}
nav a{color:var(--fg);text-decoration:none;margin-right:14px;font-size:15px}nav a.on,nav a:hover{color:var(--acc);font-weight:600}
main{padding:28px 20px 60px}h1{font-size:32px;margin:.2em 0}h2{margin-top:1.6em}
.lead{color:var(--mut);font-size:18px;max-width:720px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:24px 0}
.card{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:18px}.card h3{margin-top:0}
a{color:var(--acc)}.btn{display:inline-block;background:var(--acc);color:#fff;padding:9px 16px;border-radius:8px;text-decoration:none;border:0;font-size:16px;cursor:pointer}
.notice{background:#fff8e1;border:1px solid #f0d98a;border-radius:8px;padding:12px 14px;margin:16px 0;font-size:14px}
.tools{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}input,select{padding:8px 10px;border:1px solid var(--bd);border-radius:8px;font-size:15px}
.tw{overflow-x:auto;background:#fff;border:1px solid var(--bd);border-radius:10px}
table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:10px 12px;border-bottom:1px solid var(--bd);text-align:left;vertical-align:top}
th{background:#eef2f5;cursor:pointer;white-space:nowrap;user-select:none}th:hover{background:#e3e9ee}
.muted{color:var(--mut);font-size:14px}.tag{background:#e6f3ee;color:var(--acc);border-radius:4px;padding:1px 6px;font-size:12px}
footer{border-top:1px solid var(--bd);background:#fff;padding:22px 0;color:var(--mut);font-size:13px}
canvas{max-width:100%;background:#fff;border:1px solid var(--bd);border-radius:10px}
.big{font-size:44px;font-weight:800;color:var(--acc)}
html{-webkit-text-size-adjust:100%}img,svg,video{max-width:100%;height:auto}
.btn,.btn2{min-height:44px;line-height:26px}
nav a{display:inline-block;padding:9px 6px;margin-right:6px}
.notice,.muted{overflow-wrap:anywhere}
input,select,button{font-size:16px;min-height:44px}
th{min-height:44px}
@media(max-width:640px){
body{font-size:16px}
.wrap{padding:0 16px}main{padding:20px 16px 48px}
h1{font-size:26px}h2{font-size:22px}.lead{font-size:17px}.big{font-size:36px}
header .wrap{gap:0 12px;padding-top:8px;padding-bottom:8px}
nav{display:flex;flex-wrap:wrap;width:100%}
nav a{font-size:16px;line-height:24px;padding:10px 8px;margin:0}
.grid{grid-template-columns:1fr}
.btn,.btn2{display:block;text-align:center;width:100%;padding:10px 16px}
.callout{padding:18px 16px!important}.callout h2{font-size:22px!important}
.tools input,.tools select{flex:1 1 100%;width:100%}
.notice{font-size:15px}footer{font-size:14px}
.tw{border:0;background:none;overflow:visible}
.tw table,.tw tbody,.tw tr,.tw td{display:block;width:100%}
.tw thead{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.tw thead tr{display:flex;flex-wrap:wrap;gap:6px}
.tw th{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--bd);border-radius:8px;padding:0 12px;font-size:14px}
.tw tr{background:#fff;border:1px solid var(--bd);border-radius:10px;margin-bottom:12px;padding:6px 0}
.tw td{border:0;padding:6px 14px;font-size:15px;overflow-wrap:anywhere}
.tw td[data-label]:before{content:attr(data-label);display:block;font-size:12px;color:var(--mut);text-transform:uppercase;letter-spacing:.03em}
.tw td a{display:inline-block;padding:10px 0}
.tw:not(:has(thead)){overflow-x:auto;background:#fff;border:1px solid var(--bd)}
.tw:not(:has(thead)) table{display:table}.tw:not(:has(thead)) tr{display:table-row;border:0;margin:0;padding:0}.tw:not(:has(thead)) td,.tw:not(:has(thead)) th{display:table-cell;width:auto}
canvas{height:auto!important}
}
@media(max-width:640px){.tw thead tr{background:none;border:0;margin:0;padding:0}}
@media(max-width:640px){.tw:not(:has(thead)) td,.tw:not(:has(thead)) th{white-space:nowrap}.slot input{width:100%;margin-bottom:8px}.slot .btn{width:100%}}
td a.btn{color:#fff;padding:6px 14px;min-height:36px;line-height:24px;white-space:nowrap}
.calc{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:14px 0}.calc label{display:flex;flex-direction:column;font-size:14px;color:var(--mut);gap:4px}.calc input,.calc select{width:100%;font-size:16px}
.res{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:14px 0}.res .card .big{font-size:28px}
@media(max-width:640px){td a.btn{display:block;width:100%;white-space:normal;padding:10px 16px}}

/* auto loan rates */
.rf{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.rf label{display:flex;flex-direction:column;font-size:14px;color:var(--mut);gap:4px}.rf select{width:100%;font-size:16px;min-height:44px}
.sr{position:absolute;left:-9999px}
.rcards{display:none}.rtw{background:#fff;border:1px solid var(--bd);border-radius:10px;overflow:hidden}
.rtab td,.rtab th{padding:10px 12px}.rtab th{cursor:pointer}.rtab td.num{font-size:18px;color:var(--acc);white-space:nowrap}.rtab td a.btn{display:inline-block}
.rtab summary,.rc summary{cursor:pointer;color:var(--acc);min-height:44px;display:flex;align-items:center;font-size:15px}
.rt2{margin:6px 0;width:auto;min-width:240px}
@media(max-width:640px){
.rtw{display:none}.rcards{display:block}
.rf{grid-template-columns:1fr}
.rc{background:#fff;border:1px solid var(--bd);border-radius:10px;padding:14px;margin-bottom:12px}
.rh{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.rn{min-width:0;overflow-wrap:anywhere}
.ra{text-align:right;flex:none}.av{display:block;font-size:32px;font-weight:800;color:var(--acc);line-height:1.1}.al{display:block;font-size:12px;color:var(--mut)}.sl{font-size:18px;font-weight:700;color:var(--mut)}
.rk{color:var(--mut);font-size:14px}.rm{margin:8px 0 2px;display:flex;flex-wrap:wrap;gap:6px}.rm .tag{font-size:14px;padding:3px 8px}
.rnote{margin:4px 0}.rc .btn{margin-top:4px}.rc details p{margin:6px 0;font-size:15px;overflow-wrap:anywhere}.rc .src{display:inline-flex;align-items:center;min-height:44px}
.rc .rt2{width:100%}.rc .rt2 td,.rc .rt2 th{display:table-cell;width:auto;font-size:15px}
}
.rtab td{overflow-wrap:normal}.rtab td a{white-space:nowrap}
