/* Nachhilfe Online – kostenlose Rechner (page-rechner.php). Nur Klassen mit Präfix nho-rechner;
   Farben ausschließlich aus den Premium-Tokens (base.css), damit Hell/Dunkel automatisch passt. */
.nho-rechner-page{--nho-rechner-err:#b42318;--nho-rechner-err-bg:#fef3f2}
html[data-look="dunkel"] .nho-rechner-page{--nho-rechner-err:#ff9b8f;--nho-rechner-err-bg:rgba(255,120,100,.1)}

.nho-rechner-sec{scroll-margin-top:90px}
.nho-rechner{display:grid;gap:22px;min-width:0;padding:clamp(18px,3.4vw,40px);border:1px solid var(--pm-line);border-radius:28px;background:var(--pm-surface);box-shadow:0 40px 90px -50px rgba(10,15,36,.4)}
@media(min-width:1000px){
  .nho-rechner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:48px;align-items:start}
  .nho-rechner-head,.nho-rechner-nojs{grid-column:1/-1}
  .nho-rechner-result{position:sticky;top:96px}
}
.nho-rechner-head{display:grid;gap:10px}
.nho-rechner-head h2{font-size:clamp(1.8rem,4vw,2.8rem)}
.nho-rechner-nojs{padding:14px 18px;border:1px dashed var(--pm-line);border-radius:16px;color:var(--pm-muted);font-size:16px}

/* Formular */
.nho-rechner-form{display:grid;gap:20px;min-width:0}
.nho-rechner-fields{display:grid;gap:16px;min-width:0}
@media(min-width:600px){.nho-rechner-fields:not(.nho-rechner-bruch){grid-template-columns:repeat(2,minmax(0,1fr))}}
.nho-rechner-field{display:grid;gap:7px;min-width:0;align-content:start}
.nho-rechner-field[hidden],[data-modes][hidden]{display:none!important}
.nho-rechner label,.nho-rechner legend{color:var(--pm-ink);font:600 15px/1.35 var(--pm-sans)}
.nho-rechner-hint{color:var(--pm-muted);font-size:14px;line-height:1.45}
.nho-rechner .nho-rechner-field input[type=text]{width:100%;min-width:0;min-height:52px;margin:0;padding:12px 14px;border:1px solid var(--pm-line);border-radius:14px;background:var(--pm-paper);color:var(--pm-ink);font:500 17px/1.3 var(--pm-sans);box-shadow:none;transition:border-color .2s,box-shadow .2s}
.nho-rechner .nho-rechner-field input[type=text]::placeholder{color:var(--pm-muted);opacity:.75}
.nho-rechner .nho-rechner-field input[type=text]:focus{outline:none;border-color:var(--pm-orange);box-shadow:0 0 0 4px rgba(255,116,24,.2)}
.nho-rechner .nho-rechner-field input[aria-invalid=true]{border-color:var(--nho-rechner-err);box-shadow:0 0 0 3px var(--nho-rechner-err-bg)}
.nho-rechner-err{margin:0;color:var(--nho-rechner-err);font-size:14px;font-weight:500;line-height:1.45}
.nho-rechner-err::before{content:"! ";font-weight:700}
.nho-rechner-err[hidden]{display:none}

/* Umschalter (Radiogruppe als Segmente) */
.nho-rechner-seg{min-width:0;margin:0;padding:0;border:0}
.nho-rechner-seg legend{margin-bottom:10px;padding:0}
.nho-rechner-seg-opts{display:flex;flex-wrap:wrap;gap:8px}
.nho-rechner-seg input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.nho-rechner-seg label{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border:1px solid var(--pm-line);border-radius:999px;background:var(--pm-paper);color:var(--pm-ink);font-size:15px;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.nho-rechner-seg label:hover{border-color:var(--pm-ink)}
.nho-rechner-seg input:checked+label{background:var(--pm-ink);border-color:var(--pm-ink);color:var(--pm-surface)}
.nho-rechner-seg input:focus-visible+label{outline:2px solid var(--pm-orange);outline-offset:3px}
.nho-rechner-seg input:disabled+label{opacity:.5;cursor:default}

/* Notenzeilen */
.nho-rechner-rows{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.nho-rechner-row{display:grid;grid-template-columns:24px minmax(0,1fr) minmax(0,1fr) 44px;gap:8px;align-items:end}
.nho-rechner-nr{align-self:end;min-height:52px;display:grid;place-items:center;color:var(--pm-muted);font:600 14px var(--pm-sans)}
.nho-rechner-row .nho-rechner-field label{font-size:13.5px;font-weight:500;color:var(--pm-muted)}
.nho-rechner-row .nho-rechner-err{grid-column:auto}
.nho-rechner-del{width:44px;height:52px;margin:0;padding:0;border:1px solid var(--pm-line);border-radius:14px;background:transparent;color:var(--pm-muted);font:400 24px/1 var(--pm-sans);cursor:pointer}
.nho-rechner-del:hover{border-color:var(--nho-rechner-err);color:var(--nho-rechner-err)}
.nho-rechner-del[hidden]{display:block!important;visibility:hidden}
.nho-rechner-row:has([aria-invalid=true]){align-items:start}
.nho-rechner-row:has([aria-invalid=true]) .nho-rechner-nr,.nho-rechner-row:has([aria-invalid=true]) .nho-rechner-del{margin-top:26px}
.nho-rechner .nho-rechner-add{justify-self:start;min-height:44px;padding:0 20px;font-size:15px}
.nho-rechner .nho-rechner-add:disabled{opacity:.5;cursor:default}

/* Aktionen */
.nho-rechner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.nho-rechner-actions .pm-btn{min-width:180px}
@media(max-width:520px){.nho-rechner-actions .pm-btn{width:100%}}
.nho-rechner-reset{min-height:44px;margin:0;padding:0 6px;border:0;background:none;color:var(--pm-ink);font:600 15px var(--pm-sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.nho-rechner-privacy{color:var(--pm-muted);font-size:13.5px;line-height:1.5}

/* Ergebnis */
.nho-rechner-result{display:grid;gap:16px;min-width:0}
.nho-rechner-out{display:grid;gap:10px;min-width:0;padding:clamp(18px,2.6vw,28px);border-radius:22px;background:var(--pm-paper);border:1px solid var(--pm-line);overflow-wrap:anywhere}
.nho-rechner-out:empty{padding:18px 20px;border-style:dashed}
.nho-rechner-out:empty::before{content:"Hier erscheint dein Ergebnis mit Rechenweg.";color:var(--pm-muted);font-size:15px}
.nho-rechner-out-label{color:var(--pm-orange-ink);font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.nho-rechner-out-label+.nho-rechner-steps{margin-top:-2px}
.nho-rechner-out-value{font:600 clamp(2rem,6vw,3.2rem)/1.1 var(--pm-sans);letter-spacing:-.03em;color:var(--pm-ink)}
.nho-rechner-out-answer{color:var(--pm-ink);font-size:17px;font-weight:500}
.nho-rechner-out-extra{color:var(--pm-muted);font-size:16px}
.nho-rechner-out-extra+.nho-rechner-out-label,.nho-rechner-out-answer+.nho-rechner-out-label{margin-top:10px}
.nho-rechner-steps{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:nho-step}
.nho-rechner-steps li{position:relative;padding-left:34px;color:var(--pm-muted);font-size:15.5px;line-height:1.55;counter-increment:nho-step}
.nho-rechner-steps li::before{content:counter(nho-step);position:absolute;left:0;top:1px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:rgba(255,116,24,.14);color:var(--pm-orange-ink);font-size:12.5px;font-weight:700}
.nho-rechner-out.nho-rechner-out-err{background:var(--nho-rechner-err-bg);border-color:var(--nho-rechner-err)}
.nho-rechner-out .nho-rechner-out-msg{color:var(--nho-rechner-err);font-size:17px;font-weight:600;letter-spacing:0;line-height:1.45}

/* Erklärung */
.nho-rechner-formel{font:italic 400 clamp(1.3rem,2.4vw,1.6rem)/1.25 var(--pm-serif);color:var(--pm-ink)!important;letter-spacing:0}
.nho-rechner-formeln li{font-variant-numeric:tabular-nums}
.nho-rechner-page .pm-card .pm-n-big{font-style:normal}

/* Ergebnis: Hinweise, Details (nicht live), Tabellen */
.nho-rechner-out-note{color:var(--pm-muted);font-size:14.5px;line-height:1.55}
.nho-rechner-details{display:grid;gap:10px;min-width:0;overflow-wrap:anywhere}
.nho-rechner-details:empty{display:none}
.nho-rechner-table-wrap{max-width:100%;overflow-x:auto}
.nho-rechner-table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums;color:var(--pm-ink)}
.nho-rechner-table caption{padding-bottom:8px;text-align:left;color:var(--pm-muted);font-size:14px;font-weight:600}
.nho-rechner-table th,.nho-rechner-table td{padding:9px 10px;border-bottom:1px solid var(--pm-line);text-align:left;vertical-align:top}
.nho-rechner-table thead th{color:var(--pm-muted);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.nho-rechner-table tbody th{font-weight:600}
.pm-split-text .nho-rechner-table-wrap{padding:clamp(14px,2vw,22px);border:1px solid var(--pm-line);border-radius:20px;background:var(--pm-surface)}

/* Kontrollkästchen, Grenzen-Gruppe */
.nho-rechner-check{display:inline-flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}
.nho-rechner .nho-rechner-check input{width:22px;height:22px;margin:0;accent-color:var(--pm-orange)}
.nho-rechner-grenzen{display:grid;gap:10px;min-width:0;margin:0;padding:16px;border:1px solid var(--pm-line);border-radius:18px}
.nho-rechner-grenzen legend{padding:0 6px}
.nho-rechner-grenzen-felder{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(min-width:600px){.nho-rechner-grenzen-felder{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
.nho-noten-voll{grid-column:1/-1}
.nho-rechner-seg .nho-rechner-hint{margin:-4px 0 10px}

/* Weitere Rechner unter den FAQ */
.nho-rechner-mehr{margin-top:28px}

/* Übersicht: Suche, Filter-Chips, Kacheln im Bento-Stil der Startseite */
.nho-rechner-tools{display:grid;gap:14px;margin-bottom:clamp(28px,4vw,44px)}
.nho-rechner-tools[hidden]{display:none}
.nho-rechner-suche{max-width:520px}
.nho-rechner-suche label{color:var(--pm-ink);font:600 15px var(--pm-sans)}
.nho-rechner-suche input{width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--pm-line);border-radius:999px;background:var(--pm-surface);color:var(--pm-ink);font:500 17px var(--pm-sans)}
.nho-rechner-suche input:focus{outline:none;border-color:var(--pm-orange);box-shadow:0 0 0 4px rgba(255,116,24,.2)}
.nho-rechner-chips{display:flex;flex-wrap:wrap;gap:8px}
.nho-rechner-chip-filter{min-height:44px;padding:8px 16px;border:1px solid var(--pm-line);border-radius:999px;background:var(--pm-surface);color:var(--pm-ink);font:600 15px var(--pm-sans);cursor:pointer}
.nho-rechner-chip-filter[aria-pressed=true]{background:var(--pm-ink);border-color:var(--pm-ink);color:var(--pm-surface)}
.nho-rechner-chip-filter:focus-visible{outline:2px solid var(--pm-orange);outline-offset:3px}
.nho-rechner-treffer{color:var(--pm-muted);font-size:14px}
.nho-rechner-gruppe{margin-top:clamp(28px,4vw,48px)}
.nho-rechner-gruppe[hidden]{display:none}
.nho-rechner-gruppe-h{margin-bottom:16px!important;font-size:clamp(1.4rem,2.6vw,1.9rem)!important}
.nho-rechner-kacheln{display:grid;gap:16px;margin:0;padding:0;list-style:none;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.nho-rechner-kacheln{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1040px){.nho-rechner-kacheln{grid-template-columns:repeat(4,minmax(0,1fr))}.nho-rechner-kachel-gross{grid-column:span 2;grid-row:span 2}}
.nho-rechner-kacheln li[hidden]{display:none}
.nho-rechner-kachel{height:100%;text-decoration:none;color:inherit}
.nho-rechner-kachel h4{margin:0;font:600 clamp(1.25rem,2vw,1.5rem)/1.15 var(--pm-sans);letter-spacing:-.03em}
.nho-rechner-kachel:focus-visible{outline:2px solid var(--pm-orange);outline-offset:3px}
.nho-rechner-icon{display:inline-grid;place-items:center;min-width:52px;height:52px;padding:0 10px;border-radius:16px;background:rgba(255,116,24,.12);color:var(--pm-orange-ink);font:italic 400 28px/1 var(--pm-serif);align-self:flex-start}
.nho-rechner-kachel-gross .nho-rechner-kachel{background:var(--pm-night);border-color:var(--pm-night);color:#fff}
html[data-look="dunkel"] .nho-rechner-kachel-gross .nho-rechner-kachel{background:var(--pm-night-3);border-color:rgba(255,255,255,.16)}
.nho-rechner-kachel-gross .nho-rechner-kachel p{color:var(--pm-muted-d)}
.nho-rechner-kachel-gross .nho-rechner-icon{background:rgba(255,116,24,.2);color:var(--pm-orange-2)}
.nho-rechner-kachel-gross h4{font-size:clamp(1.6rem,3vw,2.3rem)}
.nho-rechner-leer{color:var(--pm-muted);font-size:17px}
