/* Kompaktes, ruhiges Rechner-Design: kleine Eingabefelder, Kennzahlen als Zeile statt grosser Kacheln */
.tool .form-container{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 18px;margin-bottom:1.2rem;padding:0;background:none;border:0;border-radius:0}
.tool .form-container.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1000px){.tool .form-container,.tool .form-container.two{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.tool .form-container,.tool .form-container.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 12px;padding:0}}
@media (max-width:420px){.tool .form-container,.tool .form-container.two{grid-template-columns:1fr}}
.tool .form-container{align-items:end}.tool .form-group{justify-content:flex-end;min-width:0}
.tool label{font-size:.78rem;font-weight:600;color:#5b6874;margin-bottom:5px;line-height:1.3}
.tool label .hint,.tool .hint{font-size:.72rem;color:#8a97a3;font-weight:400}
.tool .form-group input,.tool .form-group select{height:38px;padding:0 10px;font-size:.95rem;border:1px solid #d5dce2;border-radius:8px;background:#fff;box-shadow:0 1px 0 rgba(16,24,40,.03);transition:border-color .15s,box-shadow .15s}
.tool .form-group select{padding-right:6px}
.tool .form-group input:hover,.tool .form-group select:hover{border-color:#b9c4cc}
.tool .form-group input:focus,.tool .form-group select:focus{outline:0;border-color:#2e9e5b;box-shadow:0 0 0 3px rgba(46,158,91,.18)}
.tool .form-group input[type=checkbox]{height:auto;width:16px;margin:0 8px 0 0;accent-color:#2e9e5b}
.tool .form-group:has(input[type=checkbox]){flex-direction:row;align-items:center;padding-top:20px}
.tool .form-group:has(input[type=checkbox]) label{margin:0;font-weight:500;font-size:.85rem}
/* Kennzahlen: offene Leiste, oben je eine feine Linie */
.tool .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:4px 26px;margin-top:1rem;border:0;background:none;border-radius:0;overflow:visible}
.tool .kpi{background:none;border:0;border-top:2px solid #e3e8ec;border-radius:0;text-align:left;padding:10px 0 8px;margin:0}
.tool .kpi b{font-size:1.22rem;font-weight:650;color:#0f6b46;letter-spacing:-.01em}
.tool .kpi span{display:block;font-size:.76rem;color:#6b7782;margin-top:2px;line-height:1.3}
.tool .kpi.blue{border-top-color:#9db8e6}.tool .kpi.blue b{color:#1f5fbf}
.tool .main-action-btn{padding:.7rem;font-size:1rem;border-radius:8px}
.tool .result{margin-top:1.2rem;padding:.9rem 0;font-size:1.05rem}
.tool .chart-wrapper{border-radius:10px;border-color:#e6ebef;margin-top:1.5rem}
.tool h2{font-size:1.15rem}

/* Altersvorsorgedepot: gegliedertes Formular */
.tool .form-cap{font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#8a97a3;margin:1.1rem 0 .5rem;padding-top:.6rem;border-top:1px solid #eef1f4}
.tool .form-cap:first-of-type{margin-top:.4rem;border-top:0;padding-top:0}
.tool .form-container.av-top{grid-template-columns:repeat(2,minmax(0,340px))}
@media (max-width:760px){.tool .form-container.av-top{grid-template-columns:1fr}}
.tool .form-group.av-chk{justify-content:flex-end;padding-top:0}
.tool .form-group.av-chk label{display:flex;gap:8px;align-items:flex-start;font-weight:500;font-size:.85rem;color:#33414d;margin:0 0 6px;line-height:1.35}
.tool .form-group.av-chk input[type=checkbox]{margin:2px 0 0;flex:none;height:16px}
.tool .form-group:has(input[type=checkbox]){padding-top:0}
.tool .av-kidhint{margin:-6px 0 0;min-height:0}
.tool .av-kidhint:empty{display:none}
.tool .av-cmp{margin:1rem 0 0;padding:10px 14px;border-left:3px solid #7c3aed;background:#faf8ff;font-size:.92rem;color:#33414d;border-radius:0 6px 6px 0}
.tool .av-years{margin-top:1rem;font-size:.9rem}
.tool .av-years summary{cursor:pointer;font-weight:600;color:#33414d}
.tool .av-years .av-tablewrap{max-height:420px;overflow:auto;margin-top:8px}
.tool .av-yt{min-width:0}
.tool .av-yt td.num.neg{color:#b3372d}.tool .av-yt td.num.pos{color:#0f6b46}
