/* w274 (04.11.2026, Julian): KI-Assistent im Handwerker-Portal. Farben aus den Portal-Tokens, hell und dunkel ziehen mit. */
.hwki-fenster{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);z-index:206;display:none;flex-direction:column;background:var(--card);border-left:1px solid var(--border);box-shadow:-12px 0 30px rgba(15,23,42,.18)}
.hwki-fenster.offen{display:flex}
.hwki-kopf{flex:none;display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border)}
.hwki-kopf h2{margin:0;font-size:16px;font-weight:700;color:var(--text)}
.hwki-kopf p{margin:1px 0 0;font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}
.hwki-zu{margin-left:auto;flex:none;width:34px;height:34px;border:1px solid var(--border-strong);border-radius:8px;background:transparent;color:var(--text);font-size:17px;cursor:pointer}
.hwki-zu:hover{background:var(--card-hover)}
.hwki-knoepfe{flex:none;display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 14px;border-bottom:1px solid var(--border)}
.hwki-knoepfe button{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:38px;padding:6px 10px;border:1px solid var(--border-strong);border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer}
.hwki-knoepfe button:hover{background:var(--card-hover)}
.hwki-zahl{flex:none;min-width:20px;padding:0 6px;border-radius:999px;background:var(--accent-glow);color:var(--text);font-size:11.5px;font-weight:700;line-height:18px;text-align:center;font-variant-numeric:tabular-nums}
.hwki-verlauf{flex:1 1 auto;min-height:0;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}
.hwki-m{max-width:92%;padding:9px 11px;border-radius:10px;font-size:14px;line-height:1.45;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}
.hwki-m.ki{align-self:flex-start;background:var(--card);border:1px solid var(--border)}
.hwki-m.du{align-self:flex-end;background:var(--accent-glow)}
.hwki-m.warte{color:var(--text-muted)}
.hwki-leer{font-size:13.5px;line-height:1.5;color:var(--text-muted)}
.hwki-leer ul{margin:6px 0 0;padding-left:18px}
.hwki-aktion{align-self:flex-start;max-width:92%;display:flex;flex-direction:column;gap:6px;padding:9px 11px;border:1px solid var(--border-strong);border-radius:10px;background:var(--card);font-size:13.5px;color:var(--text)}
.hwki-z{display:flex;gap:10px;font-size:12.5px;line-height:1.35}
.hwki-z span:first-child{flex:none;width:84px;color:var(--text-muted)}
.hwki-z span:last-child{min-width:0;overflow-wrap:anywhere;color:var(--text)}
.hwki-kn{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.hwki-kn-status{font-size:12.5px}
.hwki-kn-status.gut{color:var(--fg-green);font-weight:600}
.hwki-kn-status.schlecht{color:var(--danger)}
.hwki-aktion .t{font-weight:600;overflow-wrap:anywhere}
.hwki-aktion .s{font-size:12.5px;color:var(--text-muted)}
.hwki-form{flex:none;display:flex;align-items:flex-end;gap:8px;padding:10px 14px;border-top:1px solid var(--border);background:var(--card)}
.hwki-form textarea{flex:1 1 auto;min-width:0;box-sizing:border-box;min-height:40px;max-height:140px;padding:9px 11px;border:1px solid var(--border-strong);border-radius:9px;background:var(--bg);color:var(--text);font:inherit;font-size:14px;resize:none}
.hwki-form button{flex:none}
.hwki-wahl{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;background:var(--card)}
.hwki-wahl .kopf{flex:none;display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border)}
.hwki-wahl h3{margin:0;font-size:15px;color:var(--text)}
.hwki-wahl input{box-sizing:border-box;width:calc(100% - 28px);margin:10px 14px 4px;height:38px;padding:0 11px;border:1px solid var(--border-strong);border-radius:9px;background:var(--bg);color:var(--text);font:inherit;font-size:14px}
.hwki-wahl-liste{flex:1 1 auto;min-height:0;overflow-y:auto;padding:6px 14px 14px}
.hwki-wahl-liste h4{margin:12px 0 4px;font-size:12px;font-weight:700;color:var(--text-muted)}
.hwki-wahl-liste button{display:block;width:100%;margin:0 0 5px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:13.5px;text-align:left;cursor:pointer;overflow-wrap:anywhere}
.hwki-wahl-liste button:hover{background:var(--card-hover)}
.hwki-wahl-liste small{display:block;color:var(--text-muted);font-size:12px;margin-top:1px}
.hwki-erg{position:fixed;inset:0;z-index:207;display:none;flex-direction:column;background:var(--bg)}
.hwki-erg.offen{display:flex}
.hwki-erg-kopf{flex:none;display:flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:1px solid var(--border);background:var(--card)}
.hwki-erg-kopf h2{margin:0;font-size:16px;color:var(--text);overflow-wrap:anywhere}
.hwki-erg-kopf p{margin:1px 0 0;font-size:12px;color:var(--text-muted)}
.hwki-erg-inhalt{flex:1 1 auto;min-height:0;overflow-y:auto;padding:16px 18px 24px}
.hwki-breite{max-width:1120px;margin:0 auto}
.hwki-zahlen{display:flex;flex-wrap:wrap;gap:24px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--card)}
.hwki-zahlen div{min-width:120px}
.hwki-zahlen span{display:block;font-size:12px;color:var(--text-muted)}
.hwki-zahlen b{font-size:18px;color:var(--text);font-variant-numeric:tabular-nums}
.hwki-erg h3{margin:18px 0 6px;font-size:14.5px;color:var(--text)}
.hwki-erg h3 small{font-weight:400;color:var(--text-muted);font-size:12.5px}
.hwki-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:10px;background:var(--card)}
.hwki-tab{width:100%;border-collapse:collapse;font-size:13.5px;color:var(--text)}
.hwki-tab th{padding:8px 10px;text-align:left;font-size:11.5px;font-weight:700;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}
.hwki-tab td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}
.hwki-tab tr:last-child td{border-bottom:0}
.hwki-tab .z{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.hwki-tab small{display:block;margin-top:2px;color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}
.hwki-tab .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hwki-tab .w{width:34px;padding-right:0}
.hwki-tab .gut{color:var(--accent);font-weight:700}
.hwki-warn{color:var(--warning,#b45309)}
.hwki-quellen{margin-top:4px;font-size:12px;color:var(--text-muted)}
.hwki-quellen summary{cursor:pointer}
.hwki-quellen div{display:flex;justify-content:space-between;gap:10px;font-variant-numeric:tabular-nums}
.hwki-liste{margin:0;padding:10px 14px 10px 28px;border:1px solid var(--border);border-radius:10px;background:var(--card);font-size:13.5px;line-height:1.5;color:var(--text)}
.hwki-erg-fuss{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 18px;border-top:1px solid var(--border);background:var(--card)}
.hwki-erg-fuss .summe{margin-right:auto;font-size:13.5px;color:var(--text);font-variant-numeric:tabular-nums}
.hwki-erg-fuss small{display:block;color:var(--text-muted);font-size:12px}
.hwki-stand{height:6px;border-radius:999px;background:var(--border);overflow:hidden}
.hwki-stand i{display:block;width:40%;height:100%;border-radius:999px;background:var(--accent);animation:hwkiLauf 1.4s ease-in-out infinite}
@keyframes hwkiLauf{0%{transform:translateX(-100%)}100%{transform:translateX(260%)}}
@media (prefers-reduced-motion:reduce){.hwki-stand i{animation:none;width:100%;opacity:.5}}
.hwki-start{display:flex;align-items:center;gap:10px;margin:0 0 16px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card)}
.hwki-start .ic{flex:none;display:flex;color:var(--accent)}
.hwki-start input{flex:1 1 auto;min-width:0;height:38px;padding:0 11px;border:1px solid var(--border-strong);border-radius:9px;background:var(--bg);color:var(--text);font:inherit;font-size:14px}
.hwki-start input::placeholder{color:var(--text-muted)}
.hwki-start input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.hwki-start button{flex:none}
@media (max-width:700px){.hwki-start{padding:8px}.hwki-start .ic{display:none}}
.hwki-fall-hinweis{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding:9px 11px;border:1px solid var(--warning,#b45309);border-radius:8px;font-size:13.5px;line-height:1.45;color:var(--text)}
.hwki-fall-hinweis small{color:var(--text-muted);font-size:12px}
.hwki-fall-z{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin-top:5px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}
.hwki-fall-z:hover{background:var(--card-hover)}
.hwki-fall-z time{flex:none;color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}
@media (max-width:700px){
  .hwki-erg-inhalt{padding:12px 12px 20px}
  .hwki-erg-kopf,.hwki-erg-fuss{padding-left:12px;padding-right:12px}
  .hwki-zahlen{gap:12px 18px}
  .hwki-zahlen div{min-width:42%}
  .hwki-erg-fuss .summe{width:100%}
  .hwki-erg-fuss button{flex:1 1 auto}
}
