/* NachGermany Tools — shared platform styles */
.tools-page{background:var(--cream);min-height:100vh}.tools-main{padding:64px 0 96px}.tools-hero{max-width:860px;margin-bottom:44px}.tools-hero .eyebrow,.tool-kicker{color:var(--red);font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.tools-hero h1{font-size:clamp(2.5rem,6vw,5.2rem);line-height:.98;letter-spacing:-.06em;margin:16px 0 20px}.tools-hero p{max-width:680px;color:var(--muted);font-size:1.12rem}.tool-category{margin:56px 0}.tool-category h2{font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:-.04em;margin:0 0 8px}.tool-category>p{color:var(--muted);margin:0 0 24px}.tool-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tool-card{background:var(--white);border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;min-height:220px;transition:transform var(--transition),box-shadow var(--transition)}.tool-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}.tool-card .tool-kicker{font-size:.65rem}.tool-card h3{font-size:1.25rem;margin:12px 0 8px;letter-spacing:-.02em}.tool-card p{color:var(--muted);font-size:.93rem;margin:0 0 20px}.tool-card .button{margin-top:auto;align-self:flex-start}.tool-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:56px;align-items:start}.tool-intro{position:sticky;top:32px}.breadcrumb{font-size:.82rem;color:var(--muted);margin-bottom:26px}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.tool-intro h1{font-size:clamp(2.2rem,4vw,4rem);line-height:1;letter-spacing:-.055em;margin:12px 0 18px}.tool-intro>p{color:var(--muted);font-size:1.06rem}.info-box,.source-box,.disclaimer{border-left:3px solid var(--gold);background:rgba(255,255,255,.68);padding:16px 18px;margin-top:24px;font-size:.92rem}.source-box{border-left-color:var(--red)}.source-box strong,.info-box strong{display:block;margin-bottom:6px}.source-box a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.tool-panel{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:28px}.progress-wrap{margin-bottom:24px}.progress-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.83rem;margin-bottom:8px}.progress{height:5px;background:var(--soft)}.progress span{display:block;height:100%;background:var(--red);transition:width .2s ease}.tool-step[hidden]{display:none}.tool-step h2{font-size:1.35rem;margin:0 0 20px;letter-spacing:-.02em}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label,.field legend{font-weight:700;font-size:.9rem}.field legend{padding:0;margin-bottom:8px}.field input,.field select{width:100%;border:1px solid #bdbdb8;background:#fff;padding:13px 12px;border-radius:var(--radius-sm);color:var(--text);min-height:48px}.field input:focus,.field select:focus,.tool-panel button:focus-visible,.tool-card a:focus-visible{outline:3px solid rgba(215,25,32,.22);outline-offset:2px;border-color:var(--red)}.field small{color:var(--muted);font-size:.78rem}.field-error{color:#a00;font-size:.78rem;min-height:1em}.choice-list{display:grid;gap:9px}.choice{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--line);cursor:pointer}.choice:has(input:checked){border-color:var(--red);background:#fff7f7}.choice input{accent-color:var(--red)}.tool-actions{display:flex;justify-content:space-between;gap:12px;margin-top:26px}.tool-actions .button{min-width:120px}.button[disabled]{opacity:.45;cursor:not-allowed}.result{margin-top:24px;border-top:1px solid var(--line);padding-top:24px}.result h2{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--red);margin:0 0 10px}.result-score{font-size:clamp(2rem,4vw,3.4rem);line-height:1;letter-spacing:-.05em;font-weight:900;margin:4px 0 14px}.result p{margin:8px 0;color:var(--muted)}.result ul{margin:14px 0;padding-left:20px}.result li{margin:6px 0}.breakdown{background:var(--soft);padding:14px 16px;margin-top:16px;font-size:.9rem}.result .disclaimer{margin-top:18px}.tool-footer{margin-top:30px}.related{border-top:1px solid var(--line);padding-top:28px;margin-top:40px}.related h2{font-size:1.3rem}.related-links{display:flex;flex-wrap:wrap;gap:10px}.related-links a{border:1px solid var(--line);padding:10px 13px;background:#fff;font-size:.88rem}.tool-cta{margin-top:46px;background:var(--black);color:#fff;padding:32px}.tool-cta h2{margin:0 0 8px;font-size:1.6rem}.tool-cta p{color:#d6d6d6;margin:0 0 20px}.tool-cta .button-primary{background:#fff;color:var(--black)}.tool-cta .button-red{margin-left:8px}.restart{margin-top:16px;color:var(--red);font-weight:700;text-decoration:underline;text-underline-offset:3px;background:none;border:0;padding:0}.legal-note{font-size:.8rem;color:var(--muted);margin-top:12px}@media(max-width:900px){.tool-shell{grid-template-columns:1fr;gap:28px}.tool-intro{position:static}.tool-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tools-main{padding-top:44px}}@media(max-width:600px){.container{width:min(calc(100% - 32px),var(--container))}.tool-card-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.tool-panel{padding:20px}.tool-actions{position:sticky;bottom:0;background:#fff;padding-top:14px;z-index:2}.tool-cta .button{display:block;text-align:center;margin:10px 0 0}.tools-hero h1{font-size:2.7rem}}
.tool-discovery{margin:18px 0 12px;padding:20px;background:var(--white);border:1px solid var(--line)}.tool-search-label{display:block;font-weight:800;font-size:.9rem;margin-bottom:8px}.tool-search{width:100%;min-height:50px;border:1px solid #bdbdb8;border-radius:var(--radius-sm);padding:12px 14px}.tool-search:focus,.tool-filter:focus-visible{outline:3px solid rgba(215,25,32,.22);outline-offset:2px;border-color:var(--red)}.tool-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.tool-filter{padding:9px 14px;border:1px solid var(--line);background:var(--white);font-size:.85rem;font-weight:750}.tool-filter.is-active,.tool-filter:hover{border-color:var(--black);background:var(--black);color:var(--white)}.no-tools-found{margin:16px 0 0;color:var(--muted)}.tool-card[hidden],.tool-category[hidden]{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
