/* ===== Block 1 (ehem. hh_dashboard.html Z197) ===== */
:root{--bg:#111;--bg2:#1a1a1e;--bg3:#242428;--text:#e8e6e1;--text2:#888780;--accent:#378ADD;--green:#1D9E75;--red:#E24B4A;--amber:#EF9F27;--border:#333;--radius:8px}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}

/* ===== CSS: Tab Navigation (Top-Bar mit Tabs, Version-Button) ===== */
.tab-bar{display:flex;gap:0;background:var(--bg2);border-bottom:2px solid var(--border);padding:0 24px;position:sticky;top:0;z-index:100;align-items:center}
.tab-bar-spacer{flex:1}
.version-btn{padding:4px 10px;font-size:11px;color:var(--text2);background:var(--bg3);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:all 0.15s;white-space:nowrap}
.version-btn:hover{color:var(--text);border-color:var(--accent)}
.rn-subnav-btn{padding:8px 16px;font-size:13px;color:var(--text2);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all 0.15s;font-family:inherit}
.rn-subnav-btn:hover{color:var(--text)}
.rn-subnav-btn.active{color:var(--accent);border-bottom-color:var(--accent)}

/* ===== Versand-Tab (yammt-Ersatz, Phase 5) ===== */
.vs-header h1{font-size:24px;font-weight:600;margin:0}
.vs-header .subtitle{color:var(--text2);font-size:13px;margin-top:2px}
.vs-statusbar{display:flex;align-items:center;gap:24px;margin-top:18px;padding:12px 18px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap}
.vs-budget-block{display:flex;align-items:baseline;gap:6px}
.vs-budget-label{font-size:10px;color:var(--text2);letter-spacing:0.06em;font-weight:600;text-transform:uppercase;margin-right:4px}
.vs-budget-num{font-size:18px;font-weight:600}
.vs-budget-sep{color:var(--text2)}
.vs-budget-pct{font-size:12px;color:var(--text2);margin-left:6px}
.vs-budget-warmup{color:var(--text2);font-size:13px}
.vs-budget-status{font-size:13px;display:flex;align-items:center;gap:6px}
.vs-budget-dot{display:inline-block;width:10px;height:10px;border-radius:50%}
.vs-budget-dot.green{background:var(--green)}
.vs-budget-dot.amber{background:var(--amber)}
.vs-budget-dot.red{background:var(--red)}
.vs-statusbar-spacer{flex:1}
.vs-notbremse{padding:9px 18px;background:var(--red);color:#fff;border:none;border-radius:var(--radius);font-weight:600;font-size:13px;cursor:pointer;transition:background 0.15s}
.vs-notbremse:hover{background:#c43030}
.vs-notbremse.aktiv{background:var(--amber);color:#000}
.vs-notbremse.aktiv:hover{background:#d4891f}
.vs-subnav{display:flex;gap:0;border-bottom:1px solid var(--border);margin:20px 0 24px 0;padding:0}
.vs-subcontent{display:none}
.vs-subcontent.active{display:block}
.vs-placeholder{padding:48px 24px;text-align:center;color:var(--text2);background:var(--bg2);border:1px dashed var(--border);border-radius:var(--radius);font-size:13px}

/* Mandanten/Mailboxen Sub-Tab */
.vs-mb-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.vs-mb-toolbar select{padding:6px 10px;font-size:13px;background:var(--bg2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);font-family:inherit}
.vs-mb-toolbar-spacer{flex:1}
.vs-btn-primary{padding:8px 14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-size:13px;font-weight:600;cursor:pointer;transition:filter 0.15s}
.vs-btn-primary:hover{filter:brightness(1.1)}
.vs-btn-secondary{padding:7px 12px;background:var(--bg2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;cursor:pointer;font-family:inherit;transition:background 0.15s}
.vs-btn-secondary:hover{background:var(--bg3,#2a2a2a)}
.vs-btn-ghost{padding:5px 10px;background:transparent;color:var(--text2);border:1px solid var(--border);border-radius:var(--radius);font-size:11px;cursor:pointer;font-family:inherit;transition:all 0.15s}
.vs-btn-ghost:hover{color:var(--text);border-color:var(--accent)}
.vs-mb-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.vs-mb-table th{padding:10px 12px;background:var(--bg);border-bottom:1px solid var(--border);font-weight:600;color:var(--text2);text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:0.04em}
.vs-mb-table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}
.vs-mb-table tr:last-child td{border-bottom:none}
.vs-mb-table tr:hover td{background:var(--bg)}
.vs-mb-mandant{font-weight:600}
.vs-mb-email{font-family:'SF Mono','Menlo',monospace;font-size:12px;color:var(--text2)}
.vs-mb-actions-cell{display:flex;gap:6px;flex-wrap:wrap}
.vs-tag{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em}
.vs-tag-pool{background:rgba(56,139,253,0.15);color:#388bfd}
.vs-tag-personal{background:rgba(168,85,247,0.15);color:#a855f7}
.vs-tag-yammt{background:rgba(120,120,120,0.18);color:var(--text2);border:1px solid var(--border)}
.vs-tag-status-aktiv{background:rgba(34,197,94,0.15);color:var(--green)}
.vs-tag-status-inaktiv{background:rgba(120,120,120,0.15);color:var(--text2)}
.vs-tag-status-deaktiviert{background:rgba(120,120,120,0.15);color:var(--text2)}
.vs-tag-status-pwung{background:rgba(220,38,38,0.15);color:var(--red)}
.vs-tag-briefing-noch-nicht{background:rgba(245,158,11,0.15);color:var(--amber)}
.vs-tag-briefing-gesendet{background:rgba(34,197,94,0.15);color:var(--green)}
.vs-tag-briefing-fehler{background:rgba(220,38,38,0.15);color:var(--red)}
/* Status-Badges Run-Lifecycle */
.vs-tag-run-draft{background:rgba(120,120,120,0.18);color:var(--text2);border:1px solid var(--border)}
.vs-tag-run-t1, .vs-tag-run-t2, .vs-tag-run-t3{background:rgba(245,158,11,0.15);color:var(--amber)}
.vs-tag-run-scheduled{background:rgba(56,139,253,0.15);color:#388bfd}
.vs-tag-run-running{background:rgba(34,197,94,0.15);color:var(--green)}
.vs-tag-run-paused{background:rgba(245,158,11,0.20);color:#d4891f}
.vs-tag-run-completed{background:rgba(120,120,120,0.18);color:var(--text2)}
.vs-tag-run-cancelled{background:rgba(220,38,38,0.15);color:var(--red)}
/* Progress-Bar */
.vs-progress{display:inline-block;width:100px;height:8px;background:var(--bg);border-radius:4px;overflow:hidden;vertical-align:middle;margin-right:6px}
.vs-progress-fill{height:100%;background:var(--accent);transition:width 0.3s}
.vs-progress-fill.green{background:var(--green)}
.vs-progress-fill.amber{background:var(--amber)}
.vs-progress-label{font-size:11px;color:var(--text2);vertical-align:middle}
/* Freigabe-Chain im Detail-Modal */
.vs-freigabe-chain{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.vs-freigabe-step{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;border:1px solid var(--border)}
.vs-freigabe-step.done{background:rgba(34,197,94,0.10);color:var(--green);border-color:rgba(34,197,94,0.30)}
.vs-freigabe-step.pending{background:transparent;color:var(--text2)}
.vs-freigabe-step.override{background:rgba(245,158,11,0.10);color:var(--amber);border-color:rgba(245,158,11,0.30)}
.vs-mb-empty{padding:48px 24px;text-align:center;color:var(--text2);font-size:13px}

/* Modal */
.vs-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.65);z-index:220;justify-content:center;align-items:flex-start;padding:48px 20px;overflow-y:auto}
.vs-modal.open{display:flex}
.vs-modal-content{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:560px;box-shadow:0 8px 32px rgba(0,0,0,0.4)}
.vs-modal-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.vs-modal-header h3{margin:0;font-size:16px;font-weight:600}
.vs-modal-close{background:none;border:none;color:var(--text2);font-size:22px;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all 0.15s}
.vs-modal-close:hover{background:var(--bg);color:var(--text)}
.vs-modal-body{padding:20px;max-height:60vh;overflow-y:auto}
.vs-modal-footer{padding:14px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}
.vs-modal-mode-toggle{display:flex;gap:0;margin-bottom:18px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;width:fit-content}
.vs-modal-mode-btn{padding:8px 16px;background:transparent;color:var(--text2);border:none;cursor:pointer;font-size:13px;font-family:inherit;transition:all 0.15s}
.vs-modal-mode-btn.active{background:var(--accent);color:#fff;font-weight:600}
.vs-form-row{margin-bottom:14px}
.vs-form-row label{display:block;font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:0.05em;font-weight:600;margin-bottom:5px}
.vs-form-row input, .vs-form-row select{width:100%;padding:8px 10px;font-size:14px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);font-family:inherit;box-sizing:border-box}
.vs-form-row input:focus, .vs-form-row select:focus{outline:none;border-color:var(--accent)}
.vs-form-hint{font-size:11px;color:var(--text2);margin-top:4px}
.vs-form-hint code{font-family:'SF Mono','Menlo',monospace;font-size:11px;background:var(--bg);padding:1px 4px;border-radius:3px}
.vs-form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vs-info-box{padding:14px 16px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);border-left:3px solid var(--amber);color:var(--text);font-size:13px;line-height:1.5}
.vs-info-box code{font-family:'SF Mono','Menlo',monospace;font-size:12px;background:var(--bg2);padding:1px 5px;border-radius:3px}
.vs-status-list{list-style:none;padding:0;margin:0}
.vs-status-list li{padding:8px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;font-size:13px}
.vs-status-list li:last-child{border-bottom:none}
.vs-status-list .vs-status-key{color:var(--text2)}
.vs-status-list .vs-status-val{font-family:'SF Mono','Menlo',monospace;font-size:12px}

/* ===== Wizard Neue Lancierung (Phase 5.4) ===== */
.vs-wizard{padding:4px 0}
.vs-wizard-stepindicator{display:flex;align-items:flex-start;justify-content:space-between;margin:8px 0 28px 0;padding:0 8px;position:relative}
.vs-wizard-stepline{position:absolute;top:14px;left:36px;right:36px;height:2px;background:var(--border);z-index:1}
.vs-wizard-step{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:2;background:var(--bg);padding:0 6px;flex:0 0 auto}
.vs-wizard-step-circle{width:30px;height:30px;border-radius:50%;background:var(--bg2);border:2px solid var(--border);color:var(--text2);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;transition:all 0.2s}
.vs-wizard-step.active .vs-wizard-step-circle{background:var(--accent);border-color:var(--accent);color:#fff}
.vs-wizard-step.done .vs-wizard-step-circle{background:var(--green);border-color:var(--green);color:#fff}
.vs-wizard-step-label{font-size:10px;color:var(--text2);text-transform:uppercase;letter-spacing:0.04em;font-weight:600;max-width:96px;text-align:center;line-height:1.3}
.vs-wizard-step.active .vs-wizard-step-label,.vs-wizard-step.done .vs-wizard-step-label{color:var(--text)}
.vs-wizard-stepcontent{min-height:280px;padding:8px 0}
.vs-wizard-stepcontent-inner{max-width:640px}
.vs-wizard-stepcontent h3{font-size:15px;font-weight:600;margin:0 0 16px 0;color:var(--text)}
.vs-wizard-modus-toggle{display:flex;gap:0;margin-bottom:18px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;width:fit-content}
.vs-wizard-modus-btn{padding:9px 18px;background:transparent;color:var(--text2);border:none;cursor:pointer;font-size:13px;font-family:inherit;transition:all 0.15s}
.vs-wizard-modus-btn.active{background:var(--accent);color:#fff;font-weight:600}
.vs-wizard-dropzone{border:2px dashed var(--border);border-radius:var(--radius);padding:32px 20px;text-align:center;cursor:pointer;transition:all 0.15s;background:var(--bg2)}
.vs-wizard-dropzone:hover,.vs-wizard-dropzone.dragover{border-color:var(--accent);background:rgba(55,138,221,0.05)}
.vs-wizard-dropzone-icon{font-size:32px;display:block;margin-bottom:10px;opacity:0.6}
.vs-wizard-dropzone-text{font-size:13px;color:var(--text2);line-height:1.5}
.vs-wizard-dropzone-text b{color:var(--text)}
.vs-wizard-zf-result{margin-top:16px;padding:14px 16px;border-radius:var(--radius);font-size:13px;line-height:1.5}
.vs-wizard-zf-result.success{background:rgba(34,197,94,0.10);border-left:3px solid var(--green);color:var(--text)}
.vs-wizard-zf-result.error{background:rgba(220,38,38,0.10);border-left:3px solid var(--red);color:var(--text)}
.vs-wizard-zf-result h4{margin:0 0 8px 0;font-size:13px;font-weight:600}
.vs-wizard-zf-result ul{margin:6px 0 0 18px;padding:0;font-size:12px;color:var(--text2)}
.vs-wizard-zf-result li{margin-bottom:3px}
.vs-wizard-mailbox-info{margin-top:10px;padding:10px 14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;color:var(--text2)}
.vs-wizard-mailbox-info b{color:var(--text);font-family:'SF Mono','Menlo',monospace}
.vs-wizard-nav{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}
.vs-wizard-nav-right{display:flex;gap:8px}
.vs-wizard-btn-disabled{opacity:0.45;cursor:not-allowed;pointer-events:none}

/* ===== Wizard Schritt 3 (Phase 5.4b) ===== */
.vs-ql-container{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg2);margin-bottom:8px;overflow:hidden}
.vs-ql-toprow{display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--bg)}
.vs-ql-placeholder-dropdown{position:relative}
.vs-ql-placeholder-btn{padding:5px 10px;background:var(--bg2);color:var(--text);border:1px solid var(--border);border-radius:4px;font-size:12px;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:5px;transition:all 0.15s}
.vs-ql-placeholder-btn:hover{border-color:var(--accent);color:var(--accent)}
.vs-ql-placeholder-menu{display:none;position:absolute;top:calc(100% + 4px);left:0;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px rgba(0,0,0,0.4);z-index:100;min-width:280px;padding:4px 0}
.vs-ql-placeholder-menu.open{display:block}
.vs-ql-placeholder-item{padding:7px 14px;cursor:pointer;font-size:13px;color:var(--text);display:flex;justify-content:space-between;align-items:center;gap:10px}
.vs-ql-placeholder-item:hover{background:var(--bg)}
.vs-ql-pi-key{font-family:'SF Mono','Menlo',monospace;color:var(--accent);font-size:12px}
.vs-ql-pi-pflicht{font-size:9px;text-transform:uppercase;letter-spacing:0.04em;color:var(--amber);font-weight:600}
.vs-ql-pi-section{padding:6px 14px;font-size:10px;text-transform:uppercase;letter-spacing:0.05em;color:var(--text2);font-weight:600;border-top:1px solid var(--border);margin-top:4px}
.vs-ql-pi-section:first-child{border-top:none;margin-top:0}
.vs-ql-spacer{flex:1}
.vs-ql-info{font-size:11px;color:var(--text2)}
/* Quill-Snow Dark-Mode Override */
#vs-wizard-quill{min-height:240px;background:var(--bg2);color:var(--text);font-size:14px}
.ql-toolbar.ql-snow{border:none;border-bottom:1px solid var(--border);background:var(--bg);padding:6px 8px}
.ql-toolbar.ql-snow .ql-stroke{stroke:var(--text2)}
.ql-toolbar.ql-snow .ql-fill{fill:var(--text2)}
.ql-toolbar.ql-snow .ql-picker{color:var(--text)}
.ql-toolbar.ql-snow .ql-picker-options{background:var(--bg2);border-color:var(--border)}
.ql-toolbar.ql-snow button:hover .ql-stroke,.ql-toolbar.ql-snow button.ql-active .ql-stroke,.ql-toolbar.ql-snow .ql-picker-label:hover{stroke:var(--accent);color:var(--accent)}
.ql-toolbar.ql-snow button:hover .ql-fill,.ql-toolbar.ql-snow button.ql-active .ql-fill{fill:var(--accent)}
.ql-container.ql-snow{border:none;font-family:inherit;font-size:14px}
.ql-editor{color:var(--text);min-height:220px;padding:14px 16px;line-height:1.55}
.ql-editor.ql-blank::before{color:var(--text2);font-style:normal;left:16px;right:16px}
.ql-editor a{color:var(--accent)}
/* Phase 5.4e Refinement 13.3 (Memory 1155): Quill-Default-Margin (~1em) ist im
   Mail-Kontext zu gross. Editor + Vorschau auf gleiches knappes Mass setzen. */
.ql-editor p{margin:0 0 0.5em}
.ql-editor ol,.ql-editor ul{margin:0.3em 0 0.5em}
.ql-snow .ql-tooltip{background:var(--bg2);border-color:var(--border);color:var(--text);box-shadow:0 4px 12px rgba(0,0,0,0.4)}
.ql-snow .ql-tooltip input[type=text]{background:var(--bg);color:var(--text);border-color:var(--border)}
/* Placeholder Pill */
.vs-quill-placeholder{display:inline-block;background:rgba(55,138,221,0.20);color:var(--accent);padding:1px 8px;border-radius:4px;font-weight:600;font-size:0.92em;margin:0 1px;user-select:all;cursor:default;white-space:nowrap}
/* Status Pflicht-Box unter Editor */
.vs-wizard-platzhalter-status{padding:10px 14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;color:var(--text2);margin-bottom:18px;line-height:1.7}
.vs-wizard-platzhalter-status b{color:var(--text)}
.vs-wizard-platzhalter-status .vs-pflicht-ok{color:var(--green);font-weight:600}
.vs-wizard-platzhalter-status .vs-pflicht-fehlt{color:var(--red);font-weight:600}
.vs-wizard-platzhalter-status code{font-family:'SF Mono','Menlo',monospace;font-size:11px;background:var(--bg2);padding:1px 5px;border-radius:3px;color:var(--text);margin:0 2px}
/* CV-Upload Section */
.vs-wizard-cv-section h4{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:0.05em;font-weight:600;margin:0 0 8px 0}
.vs-wizard-cv-info{margin-top:10px;padding:12px 14px;background:rgba(34,197,94,0.10);border-left:3px solid var(--green);border-radius:var(--radius);font-size:12px;color:var(--text);line-height:1.6}
.vs-wizard-cv-info b{font-weight:600}
.vs-wizard-cv-info code{font-family:'SF Mono','Menlo',monospace;font-size:11px;color:var(--text2)}
.vs-wizard-cv-remove{margin-left:10px;color:var(--text2);background:none;border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:11px;cursor:pointer;font-family:inherit;transition:all 0.15s}
.vs-wizard-cv-remove:hover{color:var(--red);border-color:var(--red)}

/* ===== Wizard Schritt 4 (Phase 5.4c-2 -- Pre-Send-Vorschau) ===== */
.vs-preview-info{padding:10px 14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;color:var(--text2);margin-bottom:14px;line-height:1.6}
.vs-preview-info b{color:var(--text)}
.vs-preview-layout{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:start}
.vs-preview-sidebar{display:flex;flex-direction:column;gap:8px;max-height:680px;overflow-y:auto;padding-right:4px}
.vs-preview-sample{padding:10px 12px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all 0.12s;position:relative}
.vs-preview-sample:hover{border-color:var(--accent)}
.vs-preview-sample.active{border-color:var(--accent);background:rgba(55,138,221,0.08)}
.vs-preview-sample-cluster{font-size:9px;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;padding:1px 5px;border-radius:3px;display:inline-block;margin-bottom:6px}
.vs-preview-sample-cluster.cl-HH{background:rgba(55,138,221,0.18);color:var(--accent)}
.vs-preview-sample-cluster.cl-PE{background:rgba(168,85,247,0.18);color:#c084fc}
.vs-preview-sample-cluster.cl-IM{background:rgba(34,197,94,0.18);color:var(--green)}
.vs-preview-sample-cluster.cl-ZF{background:rgba(239,159,39,0.18);color:var(--amber)}
.vs-preview-sample-name{font-size:13px;font-weight:600;color:var(--text);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vs-preview-sample-firma{font-size:11px;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vs-preview-sample-email{font-size:10px;color:var(--text2);font-family:'SF Mono','Menlo',monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}
.vs-preview-sample-rotate{position:absolute;top:6px;right:6px;background:none;border:1px solid var(--border);border-radius:4px;width:26px;height:26px;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;color:var(--text2);transition:all 0.12s}
.vs-preview-sample-rotate:hover{border-color:var(--accent);color:var(--accent)}
.vs-preview-main{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.vs-preview-toolbar{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg3);border-bottom:1px solid var(--border)}
.vs-preview-toggle{display:inline-flex;background:var(--bg);border:1px solid var(--border);border-radius:4px;overflow:hidden}
.vs-preview-toggle button{padding:4px 10px;font-size:11px;background:none;border:none;cursor:pointer;color:var(--text2);font-family:inherit}
.vs-preview-toggle button.active{background:var(--accent);color:#fff}
.vs-preview-spacer{flex:1}
.vs-preview-toolbar-info{font-size:11px;color:var(--text2)}
.vs-preview-headers{padding:12px 16px;background:var(--bg);border-bottom:1px solid var(--border);font-size:12px;line-height:1.7}
.vs-preview-headers .vs-ph-row{display:flex;gap:8px}
.vs-preview-headers .vs-ph-label{color:var(--text2);font-weight:600;min-width:56px;flex-shrink:0}
.vs-preview-headers .vs-ph-val{color:var(--text);word-break:break-all}
.vs-preview-headers .vs-ph-subject{color:var(--text);font-weight:600}
.vs-preview-body-html{padding:18px 22px;font-size:13px;background:#fff;color:#1f2937;line-height:1.55;max-height:520px;overflow-y:auto}
/* Phase 5.4e Refinement 13.3+13.4 (Memory 1155): Editor und Vorschau auf gleiches
   knappes Margin/Line-Height. Pflicht-Spiegelung in Versand-Render-Pipeline (BE) sobald
   sie kommt, sonst UX-Bruch beim Mail-Empfaenger. */
.vs-preview-body-html p{margin:0 0 0.5em}
.vs-preview-body-html ul,.vs-preview-body-html ol{margin:0.3em 0 0.5em 24px}
.vs-preview-body-source{padding:14px 18px;font-family:'SF Mono','Menlo',monospace;font-size:11px;color:var(--text);background:var(--bg);white-space:pre-wrap;word-break:break-word;max-height:520px;overflow:auto;line-height:1.5}
.vs-preview-attachment{padding:10px 16px;background:var(--bg);border-top:1px solid var(--border);font-size:12px;color:var(--text2);display:flex;align-items:center;gap:10px}
.vs-preview-attachment a{color:var(--accent);text-decoration:none;font-weight:500}
.vs-preview-attachment a:hover{text-decoration:underline}
.vs-preview-pill-fehler{background:rgba(226,75,74,0.12);border-left:3px solid var(--red);padding:8px 12px;margin:10px 16px 0;font-size:11px;color:var(--red);border-radius:0 4px 4px 0;line-height:1.5}
.vs-preview-empty{padding:32px 24px;text-align:center;color:var(--text2);font-size:13px}

/* === Schritt 5: Freigabe-Kette + Live-Versand (Phase 5.4d) === */
.vs-step5-status-header{background:var(--bg3);padding:10px 16px;border-radius:6px;margin-bottom:16px;font-size:13px;color:var(--text2)}
.vs-step5-status-header b{color:var(--text)}
.vs-step5-cards{display:flex;gap:12px;margin:16px 0}
.vs-step5-card{flex:1;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:14px;display:flex;flex-direction:column}
.vs-step5-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:8px}
.vs-step5-card-title{font-weight:600;font-size:13px}
.vs-step5-card-badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:500;white-space:nowrap}
.vs-step5-card-badge.ok{background:rgba(16,185,129,.18);color:#10b981}
.vs-step5-card-badge.pending{background:rgba(245,158,11,.20);color:#f59e0b}
.vs-step5-card-badge.ready{background:rgba(59,130,246,.18);color:#3b82f6}
.vs-step5-card-badge.locked{background:rgba(107,114,128,.18);color:#9ca3af}
.vs-step5-card-empfaenger{font-size:11px;color:var(--text2);margin-bottom:12px;line-height:1.55;flex:1}
.vs-step5-card-actions{display:flex;gap:6px;margin-top:auto}
.vs-step5-card-actions button{flex:1;padding:6px 8px;font-size:11px}
.vs-step5-live{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:16px;margin-top:16px}
.vs-step5-live h4{margin:0 0 10px 0;font-size:13px;font-weight:600;color:var(--text)}
.vs-step5-live-hint{font-size:11px;color:var(--text2);margin-bottom:14px;line-height:1.55}
.vs-step5-live-modi{display:flex;gap:18px;margin-bottom:12px;font-size:12px;color:var(--text)}
.vs-step5-live-modi label{cursor:pointer;display:flex;align-items:center;gap:6px}
.vs-step5-live-input{margin-bottom:14px;font-size:12px;color:var(--text2)}
.vs-step5-live-input input{padding:6px 10px;font-size:12px;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);margin-right:6px}
.vs-step5-live-input input[type="datetime-local"]{width:220px}
.vs-step5-live-input input[type="number"]{width:80px}

/* ── Hilfe-Overlay ─────────────────────────────────────────────────────── */
.help-btn{padding:4px 10px;font-size:11px;color:#000;background:#EF9F27;border:1px solid #d4891f;border-radius:4px;cursor:pointer;transition:all 0.15s;white-space:nowrap;font-weight:600;margin-right:6px}
.help-btn:hover{background:#d4891f;border-color:#b87a1a}
.help-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.65);z-index:210;justify-content:center;align-items:flex-start;padding:32px 20px;overflow-y:auto}
.help-overlay.active{display:flex}
.help-box{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:800px;overflow:hidden}
.help-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}
.help-header h3{font-size:16px;font-weight:600;margin:0}
.help-close{background:none;border:none;color:var(--text2);font-size:22px;cursor:pointer;padding:2px 8px;line-height:1}
.help-close:hover{color:var(--text)}
.help-nav{display:flex;flex-wrap:wrap;gap:0;background:var(--bg3);border-bottom:2px solid var(--border);padding:0 12px}
.help-nav-btn{padding:9px 12px;font-size:12px;font-weight:500;color:var(--text2);background:none;border:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all 0.15s;white-space:nowrap}
.help-nav-btn:hover{color:var(--text)}
.help-nav-btn.active{color:var(--accent);border-bottom-color:var(--accent)}
.help-content{padding:20px 24px;max-height:68vh;overflow-y:auto}
.help-section{display:none}
.help-section.active{display:block}
.help-h3{font-size:16px;font-weight:600;margin:0 0 4px}
.help-sub{font-size:12px;color:var(--text2);margin-bottom:18px}
.help-block{margin-bottom:16px}
.help-h4{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text2);margin:0 0 6px}
.help-block p,.help-block li{font-size:13px;color:var(--text);line-height:1.7}
.help-block ul{padding-left:16px;margin:4px 0}
.help-block li{margin-bottom:3px}
.help-tip{background:rgba(55,138,221,0.07);border-left:3px solid var(--accent);border-radius:0 6px 6px 0;padding:10px 14px;font-size:12px;color:var(--text);margin-top:12px;line-height:1.6}
.help-tip b{color:var(--accent)}
.hc{background:var(--bg3);padding:1px 6px;border-radius:3px;font-size:11px;color:var(--accent);font-family:monospace;display:inline}
.hbadge{display:inline-block;padding:1px 8px;border-radius:10px;font-size:11px;font-weight:600}
.hbadge-b{background:rgba(55,138,221,0.18);color:var(--accent)}
.hbadge-g{background:rgba(29,158,117,0.18);color:var(--green)}
.hbadge-a{background:rgba(239,159,39,0.18);color:var(--amber)}
.hbadge-r{background:rgba(226,75,74,0.18);color:var(--red)}
.changelog-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.6);z-index:200;justify-content:center;align-items:center}
.changelog-overlay.active{display:flex}
.changelog-box{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);max-width:600px;width:90%;max-height:80vh;overflow-y:auto;padding:24px}
.changelog-box h3{font-size:18px;margin-bottom:16px;color:var(--text)}
.changelog-box .cl-close{float:right;background:none;border:none;color:var(--text2);font-size:18px;cursor:pointer;padding:0 4px}
.changelog-box .cl-close:hover{color:var(--text)}
.cl-entry{margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border)}
.cl-entry:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.cl-version{font-size:14px;font-weight:600;color:var(--accent)}
.cl-date{font-size:12px;color:var(--text2);margin-left:8px}
.cl-items{margin-top:6px;font-size:15px;color:var(--text);line-height:1.6}
.cl-desc{display:block;margin-top:6px;font-size:15px;color:var(--text);line-height:1.6}
.cl-tag{display:inline-block;font-size:10px;font-weight:600;padding:1px 6px;border-radius:3px;margin-right:6px;text-transform:uppercase;letter-spacing:0.3px}
.cl-tag-feature{background:rgba(29,158,117,0.15);color:var(--green)}
.cl-tag-fix{background:rgba(226,75,74,0.15);color:var(--red)}
.cl-tag-improvement{background:rgba(239,159,39,0.15);color:var(--amber)}
.tab-btn{padding:12px 24px;font-size:14px;font-weight:500;color:var(--text2);background:none;border:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all 0.15s}
.tab-btn:hover{color:var(--text);background:rgba(55,138,221,0.05)}
.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}
/* Beta-Marke am Tab-Namen: der Tab ist benutzbar, aber noch nicht fertig -- das
   soll man sehen, ohne den Tab zu oeffnen. Bewusst dezent (kein Rot), damit es
   eine Einordnung bleibt und keine Warnung wird. */
.tab-beta{display:inline-block;margin-left:7px;padding:1px 6px;border-radius:9px;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--amber);border:1px solid var(--amber);vertical-align:middle;line-height:1.5}
.tab-content{display:none;padding:20px 24px}
.tab-content.active{display:block}

/* ===== CSS: Dashboard Tab (Berater-Cockpit, Original Styles) ===== */
h1{font-size:22px;font-weight:600;margin-bottom:4px}
.subtitle{color:var(--text2);font-size:13px;margin-bottom:20px}
.lade-spin{display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid var(--accent);border-top-color:transparent;border-radius:50%;vertical-align:-2px;animation:ladeSpin .7s linear infinite}
@keyframes ladeSpin{to{transform:rotate(360deg)}}
.lade-text{animation:ladePulse 1.3s ease-in-out infinite}
.lade-text em{font-style:normal;color:var(--accent)}
@keyframes ladePulse{0%,100%{opacity:1}50%{opacity:.45}}
.refresh-info{color:var(--text2);font-size:11px;position:absolute;top:60px;right:24px}
.refresh-info button{background:var(--bg3);border:1px solid var(--border);color:var(--text);padding:3px 10px;border-radius:4px;cursor:pointer;font-size:11px;margin-left:6px}
.refresh-info button:hover{background:var(--accent);border-color:var(--accent)}
.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.kpi-card{background:var(--bg2);border-radius:var(--radius);padding:14px 16px;border:1px solid var(--border)}
.kpi-label{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px}
.kpi-value{font-size:22px;font-weight:500}
.kpi-sub{font-size:12px;color:var(--text2);margin-top:4px}
.kpi-hint{grid-column:1/-1;font-size:11px;color:var(--text2);padding:4px 8px;background:var(--bg2);border-radius:4px;border:1px solid var(--border)}
.progress-track{height:6px;background:var(--bg3);border-radius:3px;margin-top:6px;overflow:hidden}
.progress-fill{height:100%;border-radius:3px;transition:width 0.5s}
.section{margin:28px 0 14px;font-size:15px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border);padding-bottom:6px}
.chart-container{background:var(--bg2);border-radius:var(--radius);padding:16px;border:1px solid var(--border);margin-bottom:16px}
.chart-legend{display:flex;gap:16px;font-size:12px;color:var(--text2);margin-bottom:10px;flex-wrap:wrap}
.legend-dot{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:middle}
.legend-line{display:inline-block;width:16px;height:2px;margin-right:4px;vertical-align:middle}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.bar-row{display:flex;align-items:center;margin-bottom:6px;font-size:12px}
.bar-label{width:130px;flex-shrink:0;color:var(--text2)}
.bar-track{flex:1;height:18px;background:var(--bg3);border-radius:3px;overflow:hidden;position:relative}
.bar-fill{height:100%;border-radius:3px}
.bar-val{position:absolute;right:6px;top:0;line-height:18px;font-size:11px;color:var(--text)}
.matrix-wrap{overflow-x:auto;margin-bottom:16px;position:relative}
table.heatmap{border-collapse:collapse;font-size:11px;min-width:100%}
table.heatmap th{background:var(--bg3);color:var(--text2);padding:6px 4px;text-align:center;font-weight:500;border:1px solid var(--border);white-space:nowrap}
table.heatmap td{padding:6px 4px;text-align:center;border:1px solid var(--border);cursor:pointer;transition:opacity 0.15s;white-space:nowrap}
table.heatmap td:hover{opacity:0.8}
table.heatmap td.sum-cell{background:var(--bg3)!important;color:var(--text)!important;font-weight:500;cursor:pointer}
table.heatmap th:first-child{text-align:left;min-width:120px;position:sticky;left:0;z-index:2;background:var(--bg3)}
table.heatmap td:first-child{text-align:left;color:var(--text2);font-weight:500;cursor:default;position:sticky;left:0;z-index:1;background:var(--bg2)}
.hc1{background:rgba(55,138,221,0.15);color:var(--text)}.hc2{background:rgba(55,138,221,0.3);color:var(--text)}.hc3{background:rgba(55,138,221,0.45);color:var(--text)}.hc4{background:rgba(55,138,221,0.6);color:#fff}.hc5{background:rgba(55,138,221,0.8);color:#fff;font-weight:600}
.tag-list{display:flex;flex-wrap:wrap;gap:6px}
.tag{background:var(--bg3);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:11px;color:var(--red)}
.doughnut-wrap{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.doughnut-canvas{width:200px;height:200px;flex-shrink:0}
.doughnut-legend{font-size:12px;line-height:2}
.doughnut-legend .sq{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:middle}
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:1000;justify-content:center;align-items:flex-start;padding:60px 20px;overflow-y:auto}
.modal-overlay.active{display:flex}
.modal{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);width:750px;max-width:95vw;max-height:80vh;overflow-y:auto;padding:20px}
.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.modal-header h3{font-size:15px;font-weight:500}
.modal-close{background:none;border:none;color:var(--text2);font-size:20px;cursor:pointer;padding:4px 8px}
.modal-close:hover{color:var(--text)}
.job-card{border-bottom:1px solid var(--border);padding:10px 0;display:flex;gap:12px;align-items:flex-start}
.job-card:last-child{border-bottom:none}
.job-left{flex:0 0 auto;max-width:340px;min-width:200px}
.job-title{font-weight:500;font-size:13px}
.job-title a{color:var(--accent);text-decoration:none}
.job-title a:hover{text-decoration:underline}
.job-meta{font-size:11px;color:var(--text2);margin-top:2px}
.job-keywords{flex:1;display:flex;flex-wrap:wrap;gap:4px;align-content:flex-start;padding-top:2px}
.kw-pill{display:inline-block;padding:1px 7px;border-radius:10px;font-size:10px;line-height:16px;border:1px solid rgba(255,255,255,0.15)}

/* ===== CSS: CV-Match Tab ===== */
.cv-top-row{display:flex;gap:16px;margin-bottom:20px}
.cv-top-row .cv-dropzone{flex:3;margin-bottom:0}
.cv-top-row .cv-profiles-panel{flex:2;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:10px}
.cv-profiles-panel h4{font-size:13px;font-weight:600;color:var(--text2);margin:0;text-transform:uppercase;letter-spacing:0.5px}
.cv-profiles-panel select{width:100%;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:13px}
.cv-profiles-panel .cv-prof-btns{display:flex;gap:8px}
.cv-profiles-panel .cv-prof-btns button{flex:1;padding:7px 0;font-size:12px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:var(--bg);color:var(--text);transition:all .2s}
.cv-profiles-panel .cv-prof-btns button:hover{border-color:var(--accent);color:var(--accent)}
.cv-profiles-panel .cv-prof-btns button.cv-save-btn{background:var(--accent);color:#000;border-color:var(--accent);font-weight:600}
.cv-profiles-panel .cv-prof-btns button.cv-save-btn:hover{opacity:.85}
.cv-profiles-panel .cv-prof-btns button:disabled{opacity:.4;cursor:not-allowed}
.cv-profiles-panel .cv-prof-info{font-size:11px;color:var(--text2);line-height:1.4}
.cv-dropzone{border:2px dashed var(--border);border-radius:var(--radius);padding:40px;text-align:center;cursor:pointer;background:var(--bg2);margin-bottom:20px;transition:all .2s}
.cv-dropzone:hover,.cv-dropzone.dragover{border-color:var(--accent);background:rgba(56,189,248,0.05)}
.cv-dropzone h3{font-size:16px;font-weight:600;margin-bottom:4px}
.cv-dropzone p{font-size:12px;color:var(--text2)}
.cv-status{text-align:center;padding:20px;color:var(--text2);font-size:13px}
.cv-status.error{color:#f87171}
.cv-spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:cvspin .8s linear infinite;margin-right:6px;vertical-align:middle}
@keyframes cvspin{to{transform:rotate(360deg)}}
.cv-profil{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;margin-bottom:16px}
.cv-profil h3{font-size:14px;color:var(--accent);margin-bottom:8px}
.cv-profil-summary{font-size:12px;color:var(--text2);font-style:italic;margin-bottom:10px}
.cv-dim-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}
.cv-dim-group{display:flex;flex-direction:column;gap:3px}
.cv-dim-label{font-size:10px;color:var(--text2);text-transform:uppercase;letter-spacing:.5px}
.cv-pills{display:flex;flex-wrap:wrap;gap:3px}
.cv-pill{display:inline-block;padding:2px 9px;border-radius:12px;font-size:11px;cursor:pointer;transition:all .15s;border:1px solid transparent}
.cv-pill.on{color:#0f172a}
.cv-pill.off{background:var(--bg2);color:var(--text2);border-color:var(--border);opacity:.6}
.cv-pill.on.t-func{background:#38bdf8}
.cv-pill.on.t-branch{background:#818cf8}
.cv-pill.on.t-hier{background:#34d399}
.cv-pill.on.t-region{background:#fb923c}
.cv-pill.on.t-art{background:#f472b6}
.cv-action-row{display:flex;align-items:center;gap:16px;margin-top:10px}
.cv-rematch{padding:5px 16px;background:var(--accent);color:#0f172a;border:none;border-radius:var(--radius);cursor:pointer;font-size:12px;font-weight:600}
.cv-rematch:hover{opacity:.85}
.cv-radius-wrap{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text2)}
.cv-radius-wrap input[type=range]{width:140px;accent-color:var(--accent);cursor:pointer}
.cv-radius-val{min-width:70px;font-weight:600;color:var(--text)}
.cv-results-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.cv-results-hdr h3{font-size:16px;font-weight:600}
.cv-results-cnt{font-size:12px;color:var(--text2)}
.cv-tbl{width:100%;border-collapse:collapse;font-size:12px}
.cv-tbl thead th{background:var(--bg2);color:var(--text2);text-align:left;padding:7px 8px;border-bottom:1px solid var(--border);font-size:10px;text-transform:uppercase;letter-spacing:.3px;position:sticky;top:0}
.cv-tbl tbody td{padding:7px 8px;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:top}
.cv-tbl tbody tr:hover{background:rgba(255,255,255,.03)}
.cv-score{display:inline-block;padding:1px 7px;border-radius:10px;font-size:11px;font-weight:600;cursor:help}
.cv-s8,.cv-s9,.cv-s10,.cv-s11{background:#7c3aed;color:#fff}.cv-s6,.cv-s7{background:#a855f7;color:#fff}.cv-s5{background:#ec4899;color:#fff}.cv-s4{background:#34d399;color:#0f172a}.cv-s3{background:#34d399;color:#0f172a}.cv-s2{background:#38bdf8;color:#0f172a}.cv-s1{background:#fb923c;color:#0f172a}.cv-s0{background:var(--border);color:var(--text2)}
.cv-hint{font-size:10px;color:var(--text2);margin-top:10px;line-height:1.5;border-top:1px solid var(--border);padding-top:8px}
.cv-zielpos{font-size:12px;color:var(--text);margin-bottom:8px}
.cv-zielpos strong{color:var(--accent)}
.cv-zusatz{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;margin-bottom:16px}
.cv-zusatz-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.cv-zusatz-label{font-size:11px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:.5px}
.cv-zusatz-btn{padding:3px 10px;font-size:11px;background:var(--bg3);color:var(--text2);border:1px solid var(--border);border-radius:4px;cursor:pointer}
.cv-zusatz-btn:hover{border-color:var(--accent);color:var(--text)}
.cv-zusatz-fname{font-size:11px;color:var(--accent);font-style:italic}
.cv-zusatz textarea{width:100%;min-height:80px;max-height:300px;resize:vertical;background:var(--bg3);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:12px;font-family:inherit;line-height:1.5}
.cv-zusatz textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px rgba(55,138,221,0.2)}
.cv-zusatz textarea::placeholder{color:var(--text2);opacity:.7}

/* ===== CSS: Jobportal Tab (BETA, Progress-Bar fuer Portal-Suche) ===== */
.jp-progress{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;margin:16px 0;display:none}
.jp-progress.active{display:block}
.jp-portal-row{display:flex;align-items:center;gap:12px;margin:8px 0;font-size:13px}
.jp-portal-name{width:90px;font-weight:600}
.jp-bar-wrap{flex:1;height:8px;background:var(--bg3);border-radius:4px;overflow:hidden}
.jp-bar{height:100%;border-radius:4px;transition:width 0.4s ease}
.jp-bar.st{background:#3b82f6}.jp-bar.li{background:#06b6d4}.jp-bar.in{background:#8b5cf6}
.jp-portal-status{width:200px;font-size:12px;color:var(--text2)}
.jp-portal-check{color:#22c55e;font-weight:bold;display:none}
.jp-quality{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 20px;margin:12px 0;font-size:13px;display:none}
.jp-quality.active{display:block}
.jp-quality-main{font-size:16px;font-weight:600;margin-bottom:6px}
.jp-quality-detail{color:var(--text2);font-size:12px}
.jp-badge{display:inline-block;font-size:9px;font-weight:700;padding:1px 5px;border-radius:3px;margin-left:6px;vertical-align:middle}
.jp-badge-st{background:#3b82f6;color:#fff}.jp-badge-li{background:#06b6d4;color:#fff}.jp-badge-in{background:#8b5cf6;color:#fff}.jp-badge-ki{background:#16a34a;color:#fff}.jp-badge-hh{background:#eab308;color:#000}.jp-badge-xi{background:#005A8C;color:#fff}.jp-badge-ki2{background:#16a34a;color:#fff}.jp-badge-jw{background:#ea580c;color:#fff}.jp-badge-firma{background:#0d9488;color:#fff}.jp-badge-fj{background:#db2777;color:#fff}.jp-badge-kr{background:#475569;color:#fff}.jp-badge-rj{background:#b45309;color:#fff}.jp-badge-rg{background:#65a30d;color:#fff}.jp-badge-ka{background:#dc2626;color:#fff}.jp-badge-jc{background:#4f46e5;color:#fff}.jp-badge-other{background:#6b7280;color:#fff}
.jp-start-btn{padding:10px 24px;font-size:14px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:8px;cursor:pointer;margin-top:8px}
.jp-start-btn:hover{opacity:0.9}
.jp-start-btn:disabled{opacity:0.5;cursor:not-allowed}

/* ===== CSS: Stellen-Radar Tab (DEPRECATED, Tab entfernt -- nur noch Link auf Live-App) ===== */
.sr-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}
.sr-header h2{font-size:20px;font-weight:600}
.sr-header .sr-sub{font-size:13px;color:var(--text2);margin-top:2px}
.sr-login-btn{padding:7px 18px;font-size:13px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);cursor:pointer;white-space:nowrap;opacity:0.85}
.sr-login-btn:hover{opacity:1}
.sr-toggle-row{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 14px;background:var(--bg3);border-radius:var(--radius);border:1px solid var(--border)}
.sr-toggle-label{font-size:13px;color:var(--text);font-weight:500;cursor:pointer;user-select:none}
.sr-toggle{position:relative;display:inline-block;width:38px;height:20px;cursor:pointer;flex-shrink:0}
.sr-toggle input{opacity:0;width:0;height:0}
.sr-toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--bg2);border:1px solid var(--border);border-radius:20px;transition:.3s}
.sr-toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background:var(--text2);border-radius:50%;transition:.3s}
.sr-toggle input:checked+.sr-toggle-slider{background:var(--accent);border-color:var(--accent)}
.sr-toggle input:checked+.sr-toggle-slider:before{transform:translateX(18px);background:#fff}
.sr-portal-anim{display:none;padding:10px 14px;background:var(--bg2);border-radius:var(--radius);border:1px solid var(--border);margin-top:8px;font-size:12px;color:var(--text2)}
.sr-portal-anim.active{display:block}
.sr-portal-anim .sr-spin{display:inline-block;width:12px;height:12px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:cvspin .7s linear infinite;vertical-align:middle;margin-right:6px}
.sr-prog-wrap{margin-top:8px;height:6px;background:var(--bg3);border-radius:3px;overflow:hidden}
.sr-prog-bar{height:100%;width:0%;background:var(--accent);border-radius:3px;transition:width 0.6s ease}
/* Stellen-Radar: kein Copy&Paste in der ganzen Tabelle (Links sind klickbar) */
#srTable{user-select:none}
/* Freemium blur: nur gezielte Felder */
.cv-tbl tbody tr.sr-blurred td a{pointer-events:none;cursor:default}
.sr-freemium-hint{margin-top:10px;padding:10px 16px;background:rgba(55,138,221,0.08);border:1px solid rgba(55,138,221,0.25);border-radius:var(--radius);font-size:12px;color:var(--text2);display:none}
.sr-freemium-hint.active{display:block}

/* ===== CSS: Stellen-Suche Tab ===== */
.ss-header{margin-bottom:20px}
.ss-header h2{font-size:20px;font-weight:600}
.ss-header .ss-sub{font-size:13px;color:var(--text2);margin-top:2px}
.ss-panel{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;margin-bottom:12px;display:flex;flex-direction:column;gap:12px}
.ss-group{display:flex;flex-direction:column;gap:4px}
.ss-group label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--text2)}
.ss-group input,.ss-group select{padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:13px;background:var(--bg3);color:var(--text);outline:none}
.ss-group input:focus,.ss-group select:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(55,138,221,0.2)}
.ss-group input::placeholder{color:var(--text2)}
#ss-keyword{width:100%}
.ss-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
#ss-funktion-mw,#ss-branche-mw{width:220px;min-width:180px}
#ss-hierarchie-mw{width:180px;min-width:150px}
.ss-group select option{background:var(--bg3);color:var(--text)}
.ss-btn{padding:8px 20px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.15s}
.ss-btn-primary{background:var(--accent);color:white}
.ss-btn-primary:hover{background:#2a6fba}
.ss-btn-reset{background:var(--bg3);color:var(--text);border:1px solid var(--border)}
.ss-btn-reset:hover{background:var(--border)}
.ss-hint{font-size:11px;color:var(--text2);margin-bottom:16px}
.ss-stats{padding:8px 12px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;color:var(--text2);margin-bottom:16px;display:flex;justify-content:space-between}
.ss-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;margin-bottom:8px;transition:border-color 0.15s}
.ss-card:hover{border-color:var(--accent)}
.ss-card-title{font-size:14px;font-weight:600}
.ss-card-title a{color:var(--accent);text-decoration:none}
.ss-card-title a:hover{text-decoration:underline}
.ss-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ss-tag{padding:2px 10px;border-radius:12px;font-size:11px;font-weight:500;white-space:nowrap}
.ss-tag-hh{background:rgba(239,159,39,0.15);color:var(--amber);border:1px solid rgba(239,159,39,0.3)}
.ss-tag-ort{background:rgba(55,138,221,0.15);color:var(--accent);border:1px solid rgba(55,138,221,0.3)}
.ss-tag-funktion{background:rgba(155,89,182,0.15);color:#b388ff;border:1px solid rgba(155,89,182,0.3)}
.ss-tag-branche{background:rgba(29,158,117,0.15);color:var(--green);border:1px solid rgba(29,158,117,0.3)}
.ss-tag-datum{background:var(--bg3);color:var(--text2);border:1px solid var(--border)}
.ss-tag-mandant{background:rgba(100,120,220,0.15);color:#8fa4f0;border:1px solid rgba(100,120,220,0.3)}
.ss-tag-hier{padding:2px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}
.ss-hier-gf{background:rgba(226,75,74,0.15);color:var(--red);border:1px solid rgba(226,75,74,0.3)}
.ss-hier-bereich{background:rgba(239,159,39,0.15);color:var(--amber);border:1px solid rgba(239,159,39,0.3)}
.ss-hier-abt{background:rgba(200,170,50,0.15);color:#d4b83c;border:1px solid rgba(200,170,50,0.3)}
.ss-hier-team{background:rgba(55,138,221,0.15);color:var(--accent);border:1px solid rgba(55,138,221,0.3)}
.ss-hier-fach{background:var(--bg3);color:var(--text2);border:1px solid var(--border)}
.ss-detail-toggle{font-size:12px;color:var(--accent);cursor:pointer;margin-top:6px;display:inline-block;user-select:none}
.ss-detail-toggle:hover{text-decoration:underline}
.ss-detail-box{display:none;margin-top:10px;padding:12px 16px;background:var(--bg3);border-radius:6px;border:1px solid var(--border);font-size:12px;line-height:1.7;color:var(--text)}
.ss-detail-box.open{display:block}
.ss-detail-label{font-weight:600;color:var(--text2);font-size:10px;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:2px}
.ss-detail-kws{margin-top:8px}
.ss-detail-kws span{display:inline-block;background:rgba(55,138,221,0.12);color:var(--accent);padding:1px 8px;border-radius:10px;font-size:11px;margin:2px 3px 2px 0;border:1px solid rgba(55,138,221,0.25)}
.ss-pagination{display:flex;justify-content:center;gap:6px;margin-top:16px;flex-wrap:wrap}
.ss-page-btn{padding:6px 14px;border:1px solid var(--border);border-radius:6px;background:var(--bg2);color:var(--text);cursor:pointer;font-size:12px}
.ss-page-btn:hover{background:var(--bg3)}
.ss-page-btn.active{background:var(--accent);color:white;border-color:var(--accent)}
.ss-page-btn:disabled{opacity:0.3;cursor:default}
.ss-no-results{text-align:center;padding:60px 20px;color:var(--text2)}
.ss-no-results h3{font-size:16px;margin-bottom:8px;color:var(--text)}
.ss-help-toggle{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--accent);cursor:pointer;padding:4px 0;background:none;border:none;margin-bottom:8px;user-select:none}
.ss-help-toggle:hover{opacity:0.8}
.ss-help-toggle .ss-help-arrow{transition:transform 0.2s;display:inline-block}
.ss-help-toggle.open .ss-help-arrow{transform:rotate(180deg)}
.ss-help-box{display:none;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;margin-bottom:14px;font-size:12px;line-height:1.7}
.ss-help-box.open{display:block}
.ss-help-box h4{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text2);margin:10px 0 4px}
.ss-help-box h4:first-child{margin-top:0}
.ss-help-box code{background:var(--bg3);padding:1px 5px;border-radius:3px;font-size:11px;color:var(--accent)}
.ss-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.ss-chip{background:var(--bg3);border:1px solid var(--accent);border-radius:12px;padding:2px 10px;font-size:11px;color:var(--accent);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.ss-chip:hover{background:var(--accent);color:#fff}
.ss-tooltip-icon{display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--bg3);border:1px solid var(--border);color:var(--text2);font-size:9px;font-weight:700;text-align:center;line-height:13px;cursor:help;margin-left:4px;vertical-align:middle;position:relative}
.ss-tooltip-icon:hover::after{content:attr(data-tip);position:absolute;left:18px;top:-4px;background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:11px;color:var(--text);white-space:nowrap;z-index:100;pointer-events:none;box-shadow:0 2px 8px rgba(0,0,0,0.4)}

@media(max-width:768px){
  .ss-panel{padding:12px}
  #ss-keyword,#ss-funktion-mw,#ss-branche-mw{width:100%}
  .ss-group{width:100%}
  .tab-btn{padding:10px 16px;font-size:13px}
}

/* Generator-Modus (Erweiterte Stellen-Suche U-07) */
.ss-mode-toggle{display:flex;gap:0;margin-bottom:14px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;width:fit-content}
.ss-mode-btn{padding:7px 18px;font-size:13px;font-weight:500;cursor:pointer;background:var(--bg2);color:var(--text2);border:none;transition:all 0.15s}
.ss-mode-btn.active{background:var(--accent);color:#fff}
.ss-mode-btn:hover:not(.active){background:var(--bg3)}
#ss-generator-panel{display:none}
#ss-generator-panel.active{display:block}
#ss-freitext-panel.hidden{display:none}
.sg-rows{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.sg-row{display:flex;gap:8px;align-items:flex-start;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}
.sg-row-field{min-width:140px}
.sg-row-field select{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--bg);color:var(--text)}
.sg-row-input{flex:1;min-width:200px}
.sg-row-input input{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--bg);color:var(--text)}
.sg-multi-wrap{position:relative}
.sg-multi-selected{display:flex;flex-wrap:wrap;gap:4px;min-height:32px;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background:var(--bg);cursor:pointer;align-items:center}
.sg-multi-selected:hover{border-color:var(--accent)}
.sg-multi-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;background:var(--accent);color:#fff;border-radius:12px;font-size:11px;white-space:nowrap}
.sg-multi-pill .sg-pill-x{cursor:pointer;font-weight:700;opacity:.7;margin-left:2px}
.sg-multi-pill .sg-pill-x:hover{opacity:1}
.sg-multi-placeholder{color:var(--text2);font-size:12px}
.sg-multi-dropdown{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 6px 16px rgba(0,0,0,.2);z-index:200;margin-top:2px;max-height:280px;overflow:hidden;flex-direction:column}
.sg-multi-dropdown.open{display:flex}
.sg-multi-search{padding:8px;border-bottom:1px solid var(--border)}
.sg-multi-search input{width:100%;padding:5px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--bg2);color:var(--text)}
.sg-multi-opts{overflow-y:auto;max-height:220px;padding:4px 0}
.sg-multi-opt{padding:5px 12px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:6px;color:var(--text)}
.sg-multi-opt:hover{background:var(--bg2)}
.sg-multi-opt.checked{color:var(--accent);font-weight:500}
.sg-multi-opt .sg-check{width:14px;height:14px;border:2px solid var(--text2);border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;color:transparent}
.sg-multi-opt.checked .sg-check{background:var(--accent);border-color:var(--accent);color:#fff}
.sg-multi-bulk{display:flex;gap:8px;padding:6px 12px;border-bottom:1px solid var(--border)}
.sg-multi-bulk button{font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer;padding:2px 4px}
.sg-multi-bulk button:hover{text-decoration:underline}
.sg-row-remove{padding:4px 8px;border:none;background:none;color:var(--text2);cursor:pointer;font-size:16px;line-height:1;border-radius:4px}
.sg-row-remove:hover{background:#fee2e2;color:#ef4444}
.sg-add-row{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;color:var(--accent);background:none;border:1px dashed var(--accent);border-radius:var(--radius);cursor:pointer}
.sg-add-row:hover{background:var(--bg2)}
.sg-add-menu{position:relative;display:inline-block}
.sg-add-dropdown{display:none;position:absolute;top:100%;left:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px rgba(0,0,0,.15);z-index:100;min-width:200px;margin-top:4px}
.sg-add-dropdown.open{display:block}
.sg-add-dropdown div{padding:8px 14px;font-size:12px;cursor:pointer;color:var(--text)}
.sg-add-dropdown div:hover{background:var(--bg2)}
.sg-add-dropdown div.disabled{color:var(--text2);opacity:.4;cursor:default}
.sg-preview{margin-top:10px}
.sg-preview-label{font-size:11px;color:var(--text2);margin-bottom:4px;display:flex;align-items:center;gap:6px}
.sg-preview-label .sg-manual-badge{display:none;background:#f59e0b;color:#fff;font-size:10px;padding:1px 6px;border-radius:3px}
.sg-preview-label .sg-manual-badge.active{display:inline}
.sg-preview textarea{width:100%;min-height:140px;padding:8px 10px;font-family:'Courier New',monospace;font-size:11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);resize:vertical}
.sg-umkreis-row{display:flex;gap:8px;align-items:center}
.sg-umkreis-row input[type=text]{width:80px;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px}
.sg-umkreis-row input[type=range]{width:100px;accent-color:var(--accent)}
.sg-umkreis-row span{font-size:11px;color:var(--text2);min-width:36px}

.hhm-sr:hover{background:var(--bg2);}

/* ===== CSS: Zielfirmen Tab (Zielfirmen-Liste, Bot, Suche) ===== */
.zf-grid{display:grid;grid-template-columns:380px 1fr;gap:24px;margin-top:20px;align-items:start}
.zf-left{display:flex;flex-direction:column;gap:16px}
.zf-right{min-width:0;position:sticky;top:80px}
.zf-panel{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:14px}
.zf-panel-title{font-size:14px;font-weight:600;color:var(--text);margin-bottom:2px}
.zf-label{font-size:12px;font-weight:600;color:var(--text2);display:block;margin-bottom:4px;text-transform:uppercase;letter-spacing:0.5px}
.zf-input{width:100%;padding:8px 10px;background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;outline:none}
.zf-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s;white-space:nowrap}
.zf-btn-primary:hover{background:var(--accent-hover,#1a7a5e);transform:translateY(-1px)}
.zf-btn-primary:active{transform:translateY(0)}
.zf-btn-outline{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}
.zf-btn-outline:hover{background:var(--bg3);border-color:var(--accent)}
.zf-col-opt{display:flex;align-items:center;gap:8px;padding:5px 4px;font-size:13px;color:var(--text);cursor:pointer;border-radius:4px}
.zf-col-opt:hover{background:var(--bg3)}
.zf-col-opt input{accent-color:var(--accent);width:14px;height:14px}
.zf-firm-wrap{position:relative;display:inline-block;max-width:100%;cursor:default}
#zf-tooltip-global{display:none;position:fixed;z-index:9999;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:10px 14px;font-size:12px;color:var(--text);max-width:340px;line-height:1.6;box-shadow:0 4px 20px rgba(0,0,0,0.5);pointer-events:none;white-space:normal}
.zf-input:focus{border-color:var(--accent)}
.zf-sep{border:none;border-top:1px solid var(--border);margin:4px 0}
.zf-dropzone{border:2px dashed var(--border);border-radius:8px;padding:24px 16px;text-align:center;cursor:pointer;background:var(--bg3);transition:border-color .2s,background .2s}
.zf-dropzone:hover{border-color:var(--accent)}
.zf-dropzone.loaded{border-color:var(--green);background:rgba(29,158,117,0.08)}
.zf-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.zf-chip{padding:3px 10px;border-radius:12px;font-size:11px;cursor:pointer;border:1px solid var(--border);background:var(--bg3);color:var(--text2);transition:all .15s;user-select:none}
.zf-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}
.zf-chip:hover{border-color:var(--accent)}
.zf-table{width:100%;border-collapse:collapse;font-size:13px}
.zf-table thead th{text-align:left;padding:8px 10px;background:var(--bg2);border-bottom:2px solid var(--border);color:var(--text2);font-size:11px;text-transform:uppercase;letter-spacing:0.5px;position:sticky;top:0;white-space:nowrap}
.zf-table tbody td{padding:7px 10px;border-bottom:1px solid var(--border);vertical-align:top}
.zf-table tbody tr:hover{background:var(--bg2)}
.zf-table tbody tr.zf-hidden{display:none}
.zf-sortable{cursor:pointer;user-select:none}
.zf-sortable:hover{color:var(--accent)}
.zf-sort-icon{font-size:10px;margin-left:2px}
.zf-sort-icon::after{content:'⇅';opacity:0.4}
.zf-sortable.asc .zf-sort-icon::after{content:'▲';opacity:1}
.zf-sortable.desc .zf-sort-icon::after{content:'▼';opacity:1}
.zf-firm{font-weight:600;color:var(--text)}
.zf-link{font-size:11px;color:var(--accent);text-decoration:none}
.zf-link:hover{text-decoration:underline}
.zf-risk-low{color:var(--green)}
.zf-risk-medium{color:var(--amber)}
.zf-risk-high{color:var(--red)}
.zf-linkedin{font-size:11px;color:var(--accent);text-decoration:none;opacity:0.7}
.zf-linkedin:hover{opacity:1}
.zf-table input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px;cursor:pointer}

/* ===== CSS: Firmen-DB Chat v2 (KI-Chat ueber Firmen-DB) ===== */
.fdb-layout{display:grid;grid-template-columns:300px 1fr;gap:16px;margin-top:12px;height:calc(100vh - 150px)}
.fdb-panel{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;overflow-y:auto}
.fdb-panel-title{font-size:13px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}
.fdb-param-section{margin-bottom:10px}
.fdb-param-label{font-size:11px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}
.fdb-param-value{font-size:13px;color:var(--text);padding:2px 0}
.fdb-param-empty{font-size:13px;color:var(--text2);text-align:center;padding:32px 8px;font-style:italic;line-height:1.5}
.fdb-param-chips{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}
.fdb-param-chip{padding:2px 8px;border-radius:10px;font-size:11px;background:var(--accent);color:#fff}
.fdb-param-chip.ext{background:transparent;color:var(--text);border:1px solid var(--border)}
.fdb-count{font-size:20px;font-weight:700;color:var(--accent);text-align:center;padding:6px 0}
.fdb-panel-btns{display:flex;flex-direction:column;gap:5px;margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}
.fdb-panel-btns button,.fdb-panel-btns select{width:100%;padding:7px 10px;font-size:12px;border-radius:6px;cursor:pointer;border:1px solid var(--border);background:var(--bg3);color:var(--text)}
.fdb-panel-btns button:hover{border-color:var(--accent);background:var(--bg2)}
.fdb-panel-btns .fdb-btn-accent{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:500}
.fdb-panel-btns .fdb-btn-accent:hover{background:var(--accent-hover,#1a7a5e)}
.fdb-main{display:flex;flex-direction:column;min-height:0}
.fdb-chat{flex:1;display:flex;flex-direction:column;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);min-height:0;overflow:hidden;transition:max-height .3s ease}
.fdb-chat.collapsed{max-height:80px;min-height:80px;flex:0 0 80px}
.fdb-chat.collapsed .fdb-chat-msgs{max-height:0;overflow:hidden;padding:0}
.fdb-chat.collapsed .fdb-chat-expand{display:flex}
.fdb-chat-expand{display:none;align-items:center;justify-content:center;padding:4px;font-size:12px;color:var(--text2);cursor:pointer;border-top:1px solid var(--border);gap:4px}
.fdb-chat-expand:hover{color:var(--accent);background:var(--bg3)}
.fdb-chat-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}
.fdb-msg{max-width:82%;padding:9px 13px;border-radius:14px;font-size:13px;line-height:1.55;white-space:pre-wrap;word-wrap:break-word}
.fdb-msg-user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}
.fdb-msg-ai{align-self:flex-start;background:var(--bg3);color:var(--text);border-bottom-left-radius:4px}
.fdb-msg-ai .fdb-feedback{font-size:13px;cursor:pointer;opacity:0.25;float:right;margin:-2px -4px 0 8px}
.fdb-msg-ai .fdb-feedback:hover{opacity:0.7}
.fdb-msg-system{align-self:center;font-size:12px;color:var(--text2);font-style:italic;padding:4px 12px}
.fdb-typing{align-self:flex-start;padding:10px 16px;border-radius:14px;background:var(--bg3);color:var(--text2);font-size:13px;border-bottom-left-radius:4px}
.fdb-typing::after{content:'...';animation:fdbDots 1.2s infinite}
@keyframes fdbDots{0%{content:'.'} 33%{content:'..'} 66%{content:'...'}}
.fdb-chips-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.fdb-chip{padding:4px 12px;border-radius:14px;font-size:12px;cursor:pointer;border:1px solid var(--border);background:var(--bg2);color:var(--text);transition:all .15s}
.fdb-chip:hover{border-color:var(--accent);background:var(--bg3)}
.fdb-chip.kern{border-color:var(--green);color:var(--green)}
.fdb-chip.erweitert{border-color:var(--accent);color:var(--accent)}
.fdb-chat-input-row{border-top:1px solid var(--border);padding:8px 10px;display:flex;gap:6px;align-items:center}
.fdb-chat-input{flex:1;padding:8px 12px;background:var(--bg3);border:1px solid var(--border);border-radius:20px;color:var(--text);font-size:13px;outline:none;font-family:inherit}
.fdb-chat-input:focus{border-color:var(--accent)}
.fdb-send{padding:7px 14px;background:var(--accent);color:#fff;border:none;border-radius:20px;font-size:13px;cursor:pointer;font-weight:500}
.fdb-send:hover{background:var(--accent-hover,#1a7a5e)}
.fdb-send:disabled{opacity:0.4;cursor:not-allowed}
.fdb-attach{font-size:22px;cursor:pointer;opacity:0.7;padding:4px 8px;transition:opacity .15s;background:var(--bg3);border-radius:50%;line-height:1}
.fdb-attach:hover{opacity:1;background:var(--accent);color:#fff}
.fdb-results-wrap{display:none;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-top:12px;flex:1;overflow-y:auto;min-height:200px}
.fdb-drop-overlay{display:none;position:absolute;inset:0;background:rgba(29,158,117,0.12);border:2px dashed var(--accent);border-radius:var(--radius);z-index:50;align-items:center;justify-content:center;font-size:15px;color:var(--accent);font-weight:500}
.fdb-col-dd{display:none;position:absolute;right:0;top:calc(100% + 4px);background:var(--bg2);border:1px solid var(--border);border-radius:8px;z-index:300;min-width:180px;padding:8px;box-shadow:0 4px 16px rgba(0,0,0,0.4)}
.fdb-col-opt{display:flex;align-items:center;gap:8px;padding:5px 4px;font-size:13px;color:var(--text);cursor:pointer;border-radius:4px}
.fdb-col-opt:hover{background:var(--bg3)}
.fdb-col-opt input{accent-color:var(--accent);width:14px;height:14px}
.fdb-risk-low{color:#4ade80}
.fdb-risk-medium{color:#fbbf24}
.fdb-risk-high{color:#f87171}
.fdb-linkedin{text-decoration:none;font-weight:700;font-size:12px;color:var(--accent);padding:1px 4px;border:1px solid var(--accent);border-radius:3px}
.fdb-linkedin:hover{background:var(--accent);color:#fff}
.fdb-rating-hover{cursor:default;position:relative}
#fdb-rating-tip{display:none;position:fixed;z-index:9999;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:12px 14px;min-width:240px;max-width:320px;box-shadow:0 8px 24px rgba(0,0,0,.4);pointer-events:none}
.fdb-desc-hover{cursor:help}
#fdb-desc-tip{display:none;position:fixed;z-index:9999;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:14px 16px;max-width:420px;box-shadow:0 8px 24px rgba(0,0,0,.4);pointer-events:none;font-size:12.5px;line-height:1.5;color:var(--text);white-space:pre-wrap}

/* ===== CSS: Lancierungs-KPIs Tab ===== */
.lkpi-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px;flex-wrap:wrap;gap:12px}
.lkpi-header h1{font-size:22px;font-weight:600;margin-bottom:4px}
.lkpi-header .subtitle{font-size:13px;color:var(--text2)}
.lkpi-mandant-wrap{display:flex;flex-direction:column;gap:4px;min-width:280px}
.lkpi-mandant-wrap label{font-size:11px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:0.5px}
.lkpi-mandant-wrap select{padding:8px 12px;background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;outline:none;cursor:pointer}
.lkpi-mandant-wrap select:focus{border-color:var(--accent)}
.lkpi-loading{color:var(--text2);padding:40px;text-align:center;font-size:13px}
.lkpi-empty{color:var(--text2);padding:40px;text-align:center;font-size:13px;font-style:italic}
.lkpi-section{margin:24px 0 12px;font-size:15px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border);padding-bottom:6px}
.lkpi-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:8px}
.lkpi-kpi-card{background:var(--bg2);border-radius:var(--radius);padding:14px 16px;border:1px solid var(--border)}
.lkpi-kpi-label{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px}
.lkpi-kpi-value{font-size:24px;font-weight:500;color:var(--text)}
.lkpi-kpi-sub{font-size:12px;color:var(--text2);margin-top:4px}
.lkpi-bereich-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:8px}
@media(max-width:1200px){.lkpi-bereich-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.lkpi-bereich-grid{grid-template-columns:repeat(2,1fr)}}
.lkpi-bereich-card{background:var(--bg2);border-radius:var(--radius);padding:12px 14px;border:1px solid var(--border);border-left:3px solid var(--border)}
.lkpi-bereich-card.b4{border-left-color:var(--green)}
.lkpi-bereich-card.b3{border-left-color:var(--accent)}
.lkpi-bereich-card.b2{border-left-color:var(--amber)}
.lkpi-bereich-card.b1{border-left-color:var(--text2)}
.lkpi-bereich-card.b0{border-left-color:var(--red,#ff4d4f)}
.lkpi-bereich-title{font-size:12px;font-weight:600;color:var(--text);margin-bottom:2px}
.lkpi-bereich-hint{font-size:10px;color:var(--text2);margin-bottom:8px}
.lkpi-bereich-row{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;padding:3px 0}
.lkpi-bereich-row .lab{color:var(--text2)}
.lkpi-bereich-row .val{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}
.lkpi-funnel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:8px}
@media(max-width:900px){.lkpi-funnel-grid{grid-template-columns:repeat(2,1fr)}}
.lkpi-funnel-card{background:var(--bg2);border-radius:var(--radius);padding:12px 14px;border:1px solid var(--border);text-align:center}
.lkpi-funnel-value{font-size:26px;font-weight:600;color:var(--green);font-variant-numeric:tabular-nums}
.lkpi-funnel-label{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:0.4px;margin-top:4px}
.lkpi-chart-wrap{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px}
.lkpi-chart-wrap canvas{max-height:260px}
.lkpi-chart-legend{display:flex;gap:14px;font-size:11px;color:var(--text2);margin-top:8px;flex-wrap:wrap}
.lkpi-chart-legend .dot{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:4px;vertical-align:middle}
.lkpi-chart-controls{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border);font-size:11px;color:var(--text2)}
.lkpi-chart-controls .lbl{text-transform:uppercase;letter-spacing:0.4px;font-weight:600}
.lkpi-cat-chk{display:inline-flex;align-items:center;gap:5px;cursor:pointer;user-select:none;color:var(--text);font-size:12px;padding:3px 7px;border-radius:5px;transition:background 0.12s}
.lkpi-cat-chk:hover{background:var(--bg3)}
.lkpi-cat-chk input[type="checkbox"]{margin:0;cursor:pointer;accent-color:var(--accent)}
.lkpi-cat-chk .chk-dot{display:inline-block;width:10px;height:10px;border-radius:2px}
.lkpi-chart-hint{font-size:11px;color:var(--text2);margin-top:8px;opacity:0.8;font-style:italic}
.lkpi-hot-wrap{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:16px}
.lkpi-hot-table{width:100%;border-collapse:collapse;font-size:12px}
.lkpi-hot-table thead th{background:var(--bg3);color:var(--text2);padding:8px 10px;text-align:left;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:0.3px;border-bottom:1px solid var(--border);white-space:nowrap}
.lkpi-hot-table tbody td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:middle}
.lkpi-hot-table tbody tr:last-child td{border-bottom:none}
.lkpi-hot-table tbody tr:hover{background:rgba(55,138,221,0.04)}
.lkpi-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.3px;white-space:nowrap}
.lkpi-badge-mandat{background:rgba(29,158,117,0.18);color:var(--green)}
.lkpi-badge-terminbest{background:rgba(55,138,221,0.2);color:var(--accent)}
.lkpi-badge-terminvor{background:rgba(239,159,39,0.18);color:var(--amber)}
.lkpi-badge-rueckfrage{background:rgba(155,89,182,0.18);color:#b388ff}
.lkpi-badge-ausgang{background:var(--bg3);color:var(--text);border:1px solid var(--border)}

/* ===== CSS: Lancierungs-Account-Status-Banner (KPI + QA) ===== */
.lk-acc-banner{padding:10px 14px;margin:0 0 14px 0;border-radius:8px;border:1px solid;font-size:13px;line-height:1.5;display:flex;gap:10px;align-items:flex-start}
.lk-acc-banner-icon{font-size:16px;flex-shrink:0;line-height:1.2}
.lk-acc-banner-body{flex:1;color:var(--text)}
.lk-acc-banner-title{font-weight:600;margin-bottom:2px}
.lk-acc-banner-hint{color:var(--text2);font-size:12px;margin-top:3px}
.lk-acc-banner.lk-acc-error{background:rgba(229,72,77,0.10);border-color:rgba(229,72,77,0.40)}
.lk-acc-banner.lk-acc-warning{background:rgba(239,159,39,0.10);border-color:rgba(239,159,39,0.40)}
.lk-acc-banner.lk-acc-info{background:var(--bg3);border-color:var(--border)}

        /* ===== CSS: Lancierungs-KPIs Summary-Box (Status Mandant, nur Bereich 4) ===== */
.lkpi-summary-box{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin:0 0 20px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start}
@media(max-width:900px){.lkpi-summary-box{grid-template-columns:1fr}}
.lkpi-summary-head{display:flex;flex-direction:column;gap:4px}
.lkpi-summary-title{font-size:11px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:0.5px}
.lkpi-summary-headline{font-size:15px;color:var(--text);line-height:1.45}
.lkpi-summary-headline b{font-weight:600}
.lkpi-summary-sub{font-size:12px;color:var(--text2);margin-top:2px}
.lkpi-matrix-wrap{min-width:420px}
@media(max-width:900px){.lkpi-matrix-wrap{min-width:0;width:100%;overflow-x:auto}}
.lkpi-matrix{border-collapse:separate;border-spacing:3px;font-size:12px;font-variant-numeric:tabular-nums}
.lkpi-matrix th,.lkpi-matrix td{padding:0;text-align:center;min-width:64px}
.lkpi-matrix thead th{font-size:10px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:0.3px;padding:2px 4px;line-height:1.3}
.lkpi-matrix thead th .sub{display:block;font-size:9px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--text2);opacity:0.75}
.lkpi-matrix tbody th{font-size:10px;font-weight:600;text-align:right;padding-right:10px;white-space:nowrap;text-transform:uppercase;letter-spacing:0.3px}
.lkpi-matrix tbody th.s4{color:var(--green)}
.lkpi-matrix tbody th.s3{color:var(--accent)}
.lkpi-matrix tbody th.s2{color:var(--amber)}
.lkpi-matrix tbody th.s1{color:#b388ff}
.lkpi-matrix .cell{display:inline-block;min-width:44px;padding:8px 10px;border-radius:6px;font-size:14px;font-weight:600;color:var(--text);background:var(--bg3);border:1px solid var(--border);cursor:default}
.lkpi-matrix .cell.zero{color:var(--text2);opacity:0.4;font-weight:400}
.lkpi-matrix .cell.t-heiss{background:rgba(226,75,74,0.22);border-color:rgba(226,75,74,0.45);color:#ff8a76}
.lkpi-matrix .cell.t-warm{background:rgba(239,159,39,0.22);border-color:rgba(239,159,39,0.45);color:var(--amber)}
.lkpi-matrix .cell.t-lau{background:rgba(201,162,39,0.16);border-color:rgba(201,162,39,0.35);color:#d4c04a}
.lkpi-matrix .cell.t-kalt{background:rgba(120,140,165,0.14);border-color:rgba(120,140,165,0.35);color:#8aa0b8}
.lkpi-matrix tfoot td,.lkpi-matrix tbody td.sum,.lkpi-matrix thead th.sum-col{border-left:0}
.lkpi-matrix .sum-cell{display:inline-block;min-width:44px;padding:8px 10px;font-weight:600;color:var(--text);font-size:14px}
.lkpi-matrix tfoot th{font-size:10px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:0.3px;text-align:right;padding-right:10px;padding-top:6px}
.lkpi-matrix tfoot td{padding-top:6px;font-size:12px;color:var(--text2);font-weight:500}
.lkpi-summary-note{grid-column:1/-1;font-size:11px;color:var(--text2);font-style:italic;margin-top:4px;opacity:0.75}

/* Panel 1: Lagebewertung (LLM) */
.lkpi-lagebewertung{grid-column:1/-1;background:var(--bg3);border-left:3px solid var(--green);border-radius:6px;padding:12px 14px;margin-top:10px}
.lkpi-lagebewertung-label{font-size:10px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:5px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.lkpi-lagebewertung-label .updated{font-weight:400;letter-spacing:0;text-transform:none;opacity:0.7}
.lkpi-lagebewertung-text{font-size:13px;line-height:1.55;color:var(--text)}
.lkpi-lagebewertung-empty{color:var(--text2);font-style:italic;font-size:12px}

/* Panel 4: Delta (7-Tage-Vergleich) */
.lkpi-delta-wrap{grid-column:1/-1;margin-top:8px;padding-top:10px;border-top:1px solid var(--border)}
.lkpi-delta-label{font-size:10px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px}
.lkpi-delta-list{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:12px}
.lkpi-delta-item{display:inline-flex;align-items:baseline;gap:6px;color:var(--text2)}
.lkpi-delta-item .val{font-weight:600;font-size:13px;font-variant-numeric:tabular-nums}
.lkpi-delta-item .val.pos{color:var(--green)}
.lkpi-delta-item .val.neg{color:var(--red,#e24b4a)}
.lkpi-delta-item .val.neutral{color:var(--text2)}
.lkpi-delta-empty{font-size:12px;color:var(--text2);font-style:italic}

/* ===== CSS: Lancierungs-QA Tab ===== */
.lqa-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:16px;flex-wrap:wrap;gap:12px}
.lqa-header h1{font-size:22px;font-weight:600;margin-bottom:4px}
.lqa-header .subtitle{font-size:13px;color:var(--text2)}
.lqa-filters{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:14px;display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}
.lqa-filter-group{display:flex;flex-direction:column;gap:4px;min-width:160px}
.lqa-filter-group label{font-size:10px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:0.4px}
.lqa-filter-group select{padding:6px 10px;background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;outline:none;cursor:pointer}
.lqa-filter-group select:focus{border-color:var(--accent)}
.lqa-stats{padding:8px 12px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;color:var(--text2);margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.lqa-reload-btn{padding:5px 12px;background:var(--bg3);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:11px;cursor:pointer}
.lqa-reload-btn:hover{border-color:var(--accent);color:var(--accent)}
.lqa-list-wrap{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.lqa-table{width:100%;border-collapse:collapse;font-size:12px}
.lqa-table thead th{background:var(--bg3);color:var(--text2);padding:8px 10px;text-align:left;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:0.3px;border-bottom:1px solid var(--border);white-space:nowrap}
.lqa-table tbody td{padding:9px 10px;border-bottom:1px solid var(--border);vertical-align:top}
.lqa-table tbody tr:last-child td{border-bottom:none}
.lqa-table tbody tr:hover{background:rgba(55,138,221,0.04)}
.lqa-table tbody tr.done{opacity:0.45}
.lqa-prio{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.3px;white-space:nowrap}
.lqa-prio-hoch{background:rgba(226,75,74,0.18);color:var(--red)}
.lqa-prio-mittel{background:rgba(239,159,39,0.18);color:var(--amber)}
.lqa-prio-niedrig{background:var(--bg3);color:var(--text2);border:1px solid var(--border)}
.lqa-status{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.3px;white-space:nowrap}
.lqa-status-offen{background:rgba(55,138,221,0.18);color:var(--accent)}
.lqa-status-erledigt{background:rgba(29,158,117,0.18);color:var(--green)}
.lqa-status-abgelehnt{background:var(--bg3);color:var(--text2);border:1px solid var(--border)}
.lqa-status-zurueckgestellt{background:rgba(239,159,39,0.18);color:var(--amber)}
.lqa-typ{font-weight:600;color:var(--text);font-size:11px}
.lqa-detail{font-size:11px;color:var(--text2);margin-top:2px;line-height:1.5}
.lqa-handlung{font-size:11px;color:var(--accent);margin-top:4px;line-height:1.4;padding:4px 8px;background:rgba(59,130,246,0.08);border-left:2px solid var(--accent);border-radius:3px}
.lqa-handlung::before{content:"Aktion: ";font-weight:600;color:var(--accent)}
.lqa-actions{display:flex;gap:4px;flex-wrap:wrap}
.lqa-btn{padding:4px 10px;border:1px solid var(--border);border-radius:4px;font-size:11px;cursor:pointer;background:var(--bg3);color:var(--text);white-space:nowrap}
.lqa-btn:hover{border-color:var(--accent);color:var(--accent)}
.lqa-btn-accept{background:rgba(29,158,117,0.15);color:var(--green);border-color:rgba(29,158,117,0.3)}
.lqa-btn-accept:hover{background:rgba(29,158,117,0.25);color:var(--green);border-color:var(--green)}
.lqa-btn-reject{background:rgba(226,75,74,0.1);color:var(--red);border-color:rgba(226,75,74,0.3)}
.lqa-btn-reject:hover{background:rgba(226,75,74,0.2);color:var(--red);border-color:var(--red)}
.lqa-btn-defer{background:rgba(239,159,39,0.1);color:var(--amber);border-color:rgba(239,159,39,0.3)}
.lqa-btn-defer:hover{background:rgba(239,159,39,0.2);color:var(--amber);border-color:var(--amber)}
.lqa-btn:disabled{opacity:0.4;cursor:not-allowed}

/* Lancierungs-QA: Gruppierung nach Empfaenger-Email (Parent + Child Rows) */
.lqa-table tbody tr.lqa-group-parent{background:rgba(55,138,221,0.03);cursor:pointer}
.lqa-table tbody tr.lqa-group-parent:hover{background:rgba(55,138,221,0.08)}
.lqa-table tbody tr.lqa-group-parent td{border-bottom:1px solid var(--border);padding:10px}
.lqa-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid var(--border);border-radius:4px;background:var(--bg3);color:var(--text);font-size:11px;cursor:pointer;padding:0;line-height:1;transition:transform 0.15s}
.lqa-expand-btn:hover{border-color:var(--accent);color:var(--accent)}
.lqa-group-parent.expanded .lqa-expand-btn{background:var(--accent);color:#fff;border-color:var(--accent)}
.lqa-empfaenger{font-size:13.5px;font-weight:600;color:var(--text);letter-spacing:0.01em;word-break:break-all}
.lqa-anzahl-badge{display:inline-block;padding:2px 8px;background:var(--accent);color:#fff;border-radius:10px;font-size:10px;font-weight:700;min-width:26px;text-align:center}
.lqa-anzahl-badge.single{background:var(--bg3);color:var(--text2);border:1px solid var(--border)}
.lqa-mandant-chips{display:flex;flex-wrap:wrap;gap:4px;max-width:260px}
.lqa-mandant-chip{display:inline-block;padding:2px 7px;background:var(--bg3);color:var(--text2);border:1px solid var(--border);border-radius:10px;font-size:10px;white-space:nowrap}
.lqa-mandant-chip.dup{background:rgba(226,75,74,0.12);color:var(--red);border-color:rgba(226,75,74,0.3)}
.lqa-table tbody tr.lqa-group-child{background:rgba(0,0,0,0.08);font-size:11.5px}
.lqa-table tbody tr.lqa-group-child td{padding:7px 10px;border-bottom:1px dashed var(--border)}
.lqa-table tbody tr.lqa-group-child td:first-child{padding-left:28px;color:var(--text2)}
.lqa-table tbody tr.lqa-group-child.collapsed{display:none}
.lqa-bulk-actions{display:flex;gap:4px;flex-wrap:wrap}
.lqa-bulk-actions .lqa-btn{font-size:10.5px;padding:3px 8px}
.lqa-bulk-hint{font-size:9.5px;color:var(--text2);margin-top:2px;opacity:0.75}

/* Lancierungs-QA Mail-Preview: Tooltip auf Typ, Modal fuer Volltext */
.lqa-typ-hover{position:relative;cursor:help;border-bottom:1px dotted var(--text2)}
.lqa-typ-hover .lqa-tooltip{display:none;position:absolute;z-index:1000;top:calc(100% + 6px);left:0;width:420px;max-width:calc(100vw - 80px);background:var(--bg2);color:var(--text);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,0.35);padding:12px 14px;font-size:12px;line-height:1.5;font-weight:normal;white-space:normal;pointer-events:none}
.lqa-typ-hover:hover .lqa-tooltip{display:block}
.lqa-tooltip-meta{font-size:11px;color:var(--text2);margin-bottom:6px}
.lqa-tooltip-subject{font-weight:600;margin-bottom:8px;color:var(--text)}
.lqa-tooltip-quote{font-style:italic;padding:8px 10px;background:var(--bg3);border-left:3px solid var(--amber);border-radius:4px;margin-bottom:8px}
.lqa-tooltip-summary{color:var(--text2);font-size:11.5px}
.lqa-mail-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:6px;padding:0;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--text2);cursor:pointer;font-size:12px;vertical-align:middle;transition:all 0.15s}
.lqa-mail-btn:hover{background:var(--bg3);color:var(--text);border-color:var(--amber)}

/* Mail-Modal */
#lqa-mail-modal{display:none;position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,0.55);align-items:center;justify-content:center;padding:40px 20px}
#lqa-mail-modal.open{display:flex}
.lqa-modal-card{background:var(--bg1);border:1px solid var(--border);border-radius:10px;max-width:820px;width:100%;max-height:calc(100vh - 80px);display:flex;flex-direction:column;box-shadow:0 16px 48px rgba(0,0,0,0.5)}
.lqa-modal-head{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.lqa-modal-head h3{margin:0 0 4px 0;font-size:15px;font-weight:600}
.lqa-modal-meta{font-size:11px;color:var(--text2);line-height:1.5}
.lqa-modal-close{background:transparent;border:none;color:var(--text2);font-size:22px;cursor:pointer;padding:0 4px;line-height:1}
.lqa-modal-close:hover{color:var(--text)}
.lqa-modal-body{padding:16px 20px;overflow-y:auto;flex:1;font-size:13px;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;font-family:inherit;color:var(--text)}

/* ===== CSS: Announcement-Modal (modale Hinweise nach Login) ===== */
.ann-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:300;justify-content:center;align-items:center;animation:annFadeIn 0.25s ease-out}
.ann-overlay.active{display:flex}
@keyframes annFadeIn{from{opacity:0}to{opacity:1}}
@keyframes annScaleIn{from{opacity:0;transform:scale(0.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.ann-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;max-width:560px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.5),0 0 0 1px rgba(255,255,255,0.04);overflow:hidden;animation:annScaleIn 0.28s cubic-bezier(0.16,1,0.3,1)}
.ann-card.ann-card-wide{max-width:820px}
.ann-header{display:flex;align-items:center;gap:12px;padding:20px 24px 16px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(55,138,221,0.08) 0%,transparent 100%)}
.ann-icon{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:rgba(55,138,221,0.18);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:18px}
.ann-header-text{flex:1;min-width:0}
.ann-title{font-size:16px;font-weight:600;color:var(--text);margin:0;line-height:1.3}
.ann-counter{font-size:11px;color:var(--text2);margin-top:3px}
.ann-body{padding:18px 24px 22px;overflow-y:auto;font-size:14px;line-height:1.6;color:var(--text);flex:1}
.ann-body p{margin:0 0 12px 0}
.ann-body p:last-child{margin-bottom:0}
.ann-body ul,.ann-body ol{margin:8px 0 12px 0;padding-left:22px}
.ann-body li{margin:4px 0}
.ann-body strong{color:var(--text);font-weight:600}
.ann-body em{color:var(--text);font-style:italic;opacity:0.92}
.ann-body code{background:var(--bg3);padding:1px 6px;border-radius:4px;font-size:0.92em;color:var(--accent)}
.ann-body a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(55,138,221,0.3);transition:border-color 0.15s}
.ann-body a:hover{border-bottom-color:var(--accent)}
.ann-footer{padding:14px 24px 18px;border-top:1px solid var(--border);background:var(--bg3);display:flex;justify-content:flex-end}
.ann-btn{padding:10px 22px;font-size:13px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:opacity 0.15s,transform 0.1s;letter-spacing:0.01em}
.ann-btn:hover{opacity:0.92}
.ann-btn:active{transform:translateY(1px)}

/* ===== QA-UI (Auto/Review-Sektionen, Konzept_QA_UI) ===== */
.qau-hero{margin:12px 0;padding:14px;background:var(--bg2);border:1px dashed var(--border);border-radius:var(--radius);color:var(--text2);font-size:12px;text-align:center}
.qau-hero-chart{padding:14px 16px;border-style:solid;text-align:left}
.qau-hero-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.qau-hero-title{font-size:14px;font-weight:600;color:var(--text)}
.qau-hero-sub{font-size:11px;color:var(--text2);max-width:60%;text-align:right}
.qau-hero-canvas-wrap{position:relative;height:240px;width:100%}
.qau-hero-status{font-size:11px;color:var(--text2);margin-top:6px;text-align:right}
.qau-hero-status.qau-hero-error{color:#DC2626}
.qau-hero-head-left{flex:1;min-width:0}
.qau-hero-head-right{flex:0 0 auto;position:relative}
.hh-search-wrap{position:relative}
.hh-search-input{padding:6px 10px;background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;outline:none;width:280px;max-width:100%}
.hh-search-input:focus{border-color:var(--accent)}
.hh-search-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:340px;max-width:90vw;background:var(--bg2);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,0.3);max-height:340px;overflow-y:auto;z-index:9999}
.hh-search-item{padding:8px 12px;cursor:pointer;border-bottom:1px solid var(--border);font-size:12px;line-height:1.4}
.hh-search-item:last-child{border-bottom:none}
.hh-search-item:hover,.hh-search-item.active{background:var(--bg3)}
.hh-search-item .hh-search-name{font-weight:600;color:var(--text)}
.hh-search-item .hh-search-meta{font-size:10px;color:var(--text2);margin-top:2px}
.hh-search-empty{padding:10px 12px;font-size:11px;color:var(--text2);text-align:center}

.hh-dossier-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:10000;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto}
.hh-dossier-modal{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:min(960px,100%);max-height:calc(100vh - 80px);display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,0.4)}
.hh-dossier-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);flex:0 0 auto}
.hh-dossier-title{font-size:15px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hh-dossier-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:0.4px;text-transform:uppercase;line-height:1.3}
.hh-dossier-tag.tag-domain{background:#dc2626;color:#fff}
.hh-dossier-tag.tag-email{background:#f59e0b;color:#1f2937}
.hh-dossier-tag.tag-frei{background:#16a34a;color:#fff}
.hh-dossier-close{background:transparent;border:none;color:var(--text2);font-size:24px;cursor:pointer;line-height:1;padding:0 4px}
.hh-dossier-close:hover{color:var(--text)}
.hh-dossier-body{padding:14px 18px;overflow-y:auto}
.hh-dossier-loading{padding:30px;text-align:center;color:var(--text2);font-size:12px}
.hh-dossier-section{margin-bottom:18px}
.hh-dossier-section h3{font-size:12px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:0.4px;margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.hh-dossier-section h3 .hh-sec-toggle{cursor:pointer;font-size:14px;color:var(--text2);font-weight:400;text-transform:none}
.hh-dossier-section .hh-sec-body{font-size:12px;color:var(--text);line-height:1.5}
.hh-dossier-stamm{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;font-size:12px}
.hh-dossier-stamm .hh-label{color:var(--text2);font-size:10px;text-transform:uppercase;letter-spacing:0.3px;display:block;margin-bottom:2px}
.hh-dossier-stamm .hh-value{color:var(--text)}
.hh-dossier-emails{margin-top:10px;font-size:11px;color:var(--text2);word-break:break-all}
.hh-dossier-blacklist{display:flex;flex-direction:column;gap:6px}
.hh-bl-row{padding:8px 10px;border-radius:6px;background:var(--bg2);border:1px solid var(--border);font-size:11px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.hh-bl-row.hh-bl-aktiv{border-left:3px solid #DC2626}
.hh-bl-row.hh-bl-aufgehoben{opacity:0.55;border-left:3px solid var(--text2)}
.hh-bl-row .hh-bl-typ{font-weight:600;color:var(--text)}
.hh-bl-row .hh-bl-meta{color:var(--text2);font-size:10px}
.hh-bl-anlass{flex-basis:100%;margin-top:6px;padding-top:6px;border-top:1px dashed var(--border);font-size:11px;line-height:1.5}
.hh-bl-anlass-label{color:var(--text2);font-size:10px;text-transform:uppercase;letter-spacing:0.3px;margin-right:4px}
.hh-bl-anlass-zitat{color:var(--text);font-style:italic}
.hh-bl-anlass-begr{color:var(--text2);font-size:10px;margin-top:4px;line-height:1.4}
.hh-bl-anlass-orphan{color:var(--text2);font-size:10px;font-style:italic}
.hh-dossier-dh{display:grid;grid-template-columns:1fr;gap:10px}
.hh-dh-field{padding:8px 10px;background:var(--bg2);border:1px solid var(--border);border-radius:6px}
.hh-dh-field .hh-dh-label{font-size:10px;color:var(--text2);text-transform:uppercase;letter-spacing:0.3px;margin-bottom:4px;font-weight:600}
.hh-dh-field .hh-dh-value{font-size:11px;color:var(--text);white-space:pre-wrap;line-height:1.4}
.hh-dh-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.hh-dh-tag{background:var(--bg3);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:10px;color:var(--text)}
.hh-dossier-befunde{width:100%;border-collapse:collapse;font-size:11px}
.hh-dossier-befunde th{text-align:left;padding:6px 8px;background:var(--bg3);font-size:10px;text-transform:uppercase;letter-spacing:0.3px;color:var(--text2);font-weight:500;border-bottom:1px solid var(--border)}
.hh-dossier-befunde th.hh-sort{cursor:pointer;user-select:none}
.hh-dossier-befunde th.hh-sort:hover{color:var(--text);background:var(--border)}
.hh-dossier-befunde td{padding:6px 8px;border-bottom:1px solid var(--border);vertical-align:top}
.hh-dossier-befunde tr.hh-bf-row{cursor:pointer}
.hh-dossier-befunde tr.hh-bf-row:hover{background:var(--bg2)}
.hh-bf-empty{padding:14px;text-align:center;color:var(--text2);font-size:11px;font-style:italic}
.hh-mail-row{padding:6px 8px;border-bottom:1px solid var(--border);font-size:11px;display:grid;grid-template-columns:90px 60px 120px 1fr 100px;gap:8px;align-items:start}
.hh-mail-row:hover{background:var(--bg2)}
.hh-mail-row .hh-mail-betreff{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hh-mail-row .hh-mail-meta{color:var(--text2);font-size:10px}
.hh-mail-empty{padding:14px;text-align:center;color:var(--text2);font-size:11px;font-style:italic}
.hh-mail-collapsed .hh-sec-body{display:none}
.hh-firma-clickable{cursor:pointer;text-decoration:underline;text-decoration-style:dotted;color:var(--accent)}
.hh-firma-clickable:hover{text-decoration-style:solid}
.qau-section{margin:14px 0;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.qau-sec-head{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg3);cursor:pointer;user-select:none;border-bottom:1px solid var(--border)}
.qau-sec-head:hover{background:rgba(55,138,221,0.04)}
.qau-sec-head .qau-caret{font-size:11px;color:var(--text2);width:14px;display:inline-block;transition:transform .15s}
.qau-section.collapsed .qau-caret{transform:rotate(-90deg)}
.qau-section.collapsed .qau-sec-body{display:none}
.qau-sec-title{font-size:14px;font-weight:600;color:var(--text)}
.qau-sec-count{font-size:12px;color:var(--text2);margin-left:auto}
.qau-sec-actions{display:flex;gap:8px;align-items:center}
.qau-sec-body{padding:0}
.qau-toolbar{display:flex;flex-wrap:wrap;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border);align-items:center;font-size:12px}
.qau-filter-grp{display:flex;align-items:center;gap:6px}
.qau-filter-grp label{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:.4px}
.qau-filter-grp select,.qau-filter-grp input[type="checkbox"]{font-size:12px;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:4px 8px;border-radius:4px}
.qau-table{width:100%;border-collapse:collapse;font-size:12px}
.qau-table thead th{background:var(--bg3);color:var(--text2);padding:8px 10px;text-align:left;font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:0.3px;border-bottom:1px solid var(--border);white-space:nowrap}
.qau-table thead th.qau-sort{cursor:pointer;user-select:none}
.qau-table thead th.qau-sort:hover{color:var(--text);background:var(--border)}
.qau-sort-arrow{margin-left:4px;font-size:10px;display:inline-block;min-width:10px}
.qau-table tbody td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}
.qau-table tbody tr:last-child td{border-bottom:none}
.qau-table tbody tr:hover{background:rgba(55,138,221,0.04)}
.qau-empty{padding:24px;text-align:center;color:var(--text2);font-size:13px}
.qau-row-highlight{animation:qauRowFlash 2.6s ease-out}
@keyframes qauRowFlash{0%{background:rgba(255,193,7,.45);box-shadow:inset 0 0 0 2px #ffc107}45%{background:rgba(255,193,7,.30);box-shadow:inset 0 0 0 2px #ffc107}100%{background:transparent;box-shadow:inset 0 0 0 2px transparent}}
.qau-pager{padding:10px 16px;text-align:center;border-top:1px solid var(--border);background:var(--bg3)}
.qau-pager-btn{padding:6px 14px;font-size:12px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:4px;cursor:pointer}
.qau-pager-btn:hover{border-color:var(--accent);color:var(--accent)}
.qau-pager-btn:disabled{opacity:.4;cursor:not-allowed}
.qau-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:10.5px;font-weight:500;letter-spacing:.2px;white-space:nowrap}
.qau-badge.cat-bounce{background:#fed7aa;color:#9a3412}
.qau-badge.cat-absender{background:#fef9c3;color:#854d0e}
.qau-badge.cat-nicht-aktiv{background:#e2e8f0;color:#334155}
.qau-badge.cat-konkurrenz{background:#e9d5ff;color:#6b21a8}
.qau-badge.cat-grundsatz{background:#dbeafe;color:#1e40af}
.qau-badge.cat-branche{background:#d1fae5;color:#065f46}
.qau-badge.cat-fehlklass{background:var(--bg3);color:var(--text2)}
.qau-drift-icon{font-size:11px;color:var(--text2);margin-left:4px;cursor:help}
.qau-massnahme{color:var(--text);line-height:1.4}
.qau-action-btns{display:flex;gap:4px;justify-content:flex-end}
.qau-action-btn{padding:3px 8px;font-size:11px;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:3px;cursor:pointer;white-space:nowrap}
.qau-action-btn:hover{border-color:var(--accent);color:var(--accent)}
.qau-action-btn.qau-action-primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.qau-action-btn.qau-action-primary:hover{opacity:.85;color:#fff}
.qau-action-btn.qau-action-danger:hover{border-color:#dc2626;color:#dc2626}
.qau-bulk-bar{display:flex;align-items:center;gap:10px;padding:8px 16px;background:rgba(55,138,221,0.08);border-bottom:1px solid var(--border);font-size:12px}
.qau-bulk-count{font-weight:600;color:var(--accent)}
.qau-bulk-bar.hidden{display:none}
.qau-toast{position:fixed;top:20px;right:20px;z-index:9999;padding:12px 18px;background:var(--bg2);border:1px solid var(--border);border-radius:6px;box-shadow:0 6px 24px rgba(0,0,0,0.15);font-size:13px;color:var(--text);max-width:380px;animation:qauToastIn .2s ease-out}
.qau-toast.qau-toast-info{border-left:3px solid var(--accent)}
.qau-toast.qau-toast-warn{border-left:3px solid #ca8a04}
@keyframes qauToastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

/* Detail-Modal */
.qau-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9000;display:none;align-items:center;justify-content:center}
.qau-modal-overlay.open{display:flex}
.qau-modal{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);width:min(820px,94vw);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 12px 40px rgba(0,0,0,0.3)}
.qau-modal-head{padding:14px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px}
.qau-modal-head h3{font-size:15px;font-weight:600;color:var(--text);margin:0;flex:1}
.qau-modal-close{background:none;border:none;color:var(--text2);font-size:20px;cursor:pointer;padding:0 6px}
.qau-modal-close:hover{color:var(--text)}
.qau-modal-body{padding:18px 20px;overflow-y:auto;flex:1;font-size:13px;line-height:1.5}
.qau-modal-foot{padding:12px 20px;border-top:1px solid var(--border);background:var(--bg3);display:flex;gap:10px;justify-content:flex-end}
.qau-block{margin-bottom:14px}
.qau-block h4{font-size:11px;font-weight:600;color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin:0 0 6px 0}
.qau-block .qau-block-body{color:var(--text);line-height:1.55}
.qau-quote{padding:10px 14px;border-left:3px solid var(--accent);background:var(--bg3);font-style:italic;border-radius:0 4px 4px 0;color:var(--text)}
.qau-quote-toggle{margin-top:6px;font-size:11px;color:var(--accent);cursor:pointer;text-decoration:underline;background:none;border:none;padding:0}
.qau-mailbody{white-space:pre-wrap;background:var(--bg3);padding:10px 14px;border-radius:4px;max-height:240px;overflow-y:auto;font-size:12px;color:var(--text2)}
.qau-vorhernach{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.qau-vn-col{padding:10px;background:var(--bg3);border-radius:4px}
.qau-vn-col h5{font-size:10px;font-weight:600;color:var(--text2);text-transform:uppercase;margin:0 0 4px 0;letter-spacing:.5px}
.qau-vn-col .qau-vn-content{font-size:12px;color:var(--text);white-space:pre-wrap;max-height:120px;overflow-y:auto}
.qau-historie-toggle{font-size:11px;color:var(--accent);cursor:pointer;background:none;border:none;padding:4px 0;text-decoration:underline}
.qau-historie-list{margin:6px 0 0 0;padding:0;list-style:none;font-size:12px;color:var(--text2)}
.qau-historie-list li{padding:4px 0;border-bottom:1px dashed var(--border)}
.qau-historie-list li:last-child{border-bottom:none}
.qau-historie-list .qau-h-time{color:var(--text2);font-variant-numeric:tabular-nums;margin-right:8px}
.qau-drift-line{font-size:11.5px;color:var(--text2);font-style:italic;margin-top:6px}

/* ===== Block 2 (ehem. hh_dashboard.html Z1786) ===== */
  #tab-apikosten .ak-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}
  #tab-apikosten .ak-header h2{font-size:20px;font-weight:600;margin:0}
  #tab-apikosten .ak-header-right{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text2)}
  #tab-apikosten .ak-controls{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
  #tab-apikosten .ak-controls label{font-size:12px;color:var(--text2);margin-right:4px}
  #tab-apikosten .ak-controls select{padding:4px 10px;font-size:12px;border:1px solid var(--border);border-radius:5px;background:var(--bg2);color:var(--text);cursor:pointer}
  #tab-apikosten .ak-aufl-grp{display:inline-flex;gap:0;border:1px solid var(--border);border-radius:5px;overflow:hidden}
  #tab-apikosten .ak-aufl-grp button{padding:5px 12px;font-size:12px;border:none;background:var(--bg2);color:var(--text2);cursor:pointer;transition:all .15s}
  #tab-apikosten .ak-aufl-grp button.active{background:var(--accent);color:#fff}
  #tab-apikosten .ak-refresh{padding:5px 14px;font-size:12px;border:1px solid var(--border);border-radius:5px;background:var(--bg2);color:var(--text2);cursor:pointer}
  #tab-apikosten .ak-kpi-row{display:grid;grid-template-columns:80px repeat(5, 1fr);gap:8px;margin-bottom:10px;align-items:stretch}
  #tab-apikosten .ak-kpi-row-label{display:flex;align-items:center;font-weight:600;font-size:13px;color:var(--text);padding:0 8px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius)}
  #tab-apikosten .ak-kpi-tile{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;justify-content:center}
  #tab-apikosten .ak-kpi-label{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px}
  #tab-apikosten .ak-kpi-value{font-size:20px;font-weight:600;color:var(--text);line-height:1.1}
  #tab-apikosten .ak-kpi-sub{font-size:10px;color:var(--text2);margin-top:3px}
  #tab-apikosten .ak-chart-wrap{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-top:16px}
  #tab-apikosten .ak-chart-canvaswrap{height:360px;position:relative}
  #tab-apikosten .ak-table-wrap{margin-top:16px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
  #tab-apikosten .ak-table-wrap table{width:100%;border-collapse:collapse;font-size:12px}
  #tab-apikosten .ak-table-wrap th{background:var(--bg3);color:var(--text2);text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);font-weight:600;white-space:nowrap}
  #tab-apikosten .ak-table-wrap td{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text)}
  #tab-apikosten .ak-table-wrap tr{cursor:pointer;transition:background .12s}
  #tab-apikosten .ak-table-wrap tr:hover td{background:var(--bg3)}
  #tab-apikosten .ak-table-wrap td.ak-num{text-align:right;font-variant-numeric:tabular-nums}
  #tab-apikosten .ak-table-wrap th.ak-sortable{cursor:pointer;user-select:none}
  #tab-apikosten .ak-table-wrap th.ak-sortable:hover{color:var(--text)}
  #tab-apikosten .ak-table-wrap th .ak-sort-ind{font-size:9px;margin-left:3px;color:var(--accent)}
  #tab-apikosten .ak-status-aktiv{color:var(--text);font-weight:500}
  #tab-apikosten .ak-status-deaktiviert{color:var(--text2);font-style:italic}
  #tab-apikosten .ak-status-reserve{color:#378ADD}
  #tab-apikosten .ak-status-deaktiviert_phase8{color:var(--text2);font-style:italic}
  #tab-apikosten .ak-org-pcg{display:inline-block;padding:1px 6px;font-size:10px;background:rgba(55,138,221,0.15);color:#378ADD;border-radius:3px;font-weight:600}
  #tab-apikosten .ak-org-np{display:inline-block;padding:1px 6px;font-size:10px;background:rgba(29,158,117,0.15);color:#1D9E75;border-radius:3px;font-weight:600}
  #tab-apikosten .ak-org-abo{display:inline-block;padding:1px 6px;font-size:10px;background:rgba(176,118,219,0.15);color:#B076DB;border-radius:3px;font-weight:600}
  #tab-apikosten .ak-kpi-row-total .ak-kpi-row-label{background:var(--accent);color:#fff;border-color:var(--accent)}
  #tab-apikosten .ak-kpi-row-total .ak-kpi-tile{border-color:var(--accent)}
  #tab-apikosten .ak-kpi-row-total .ak-kpi-value{color:var(--accent)}
  #tab-apikosten .ak-kpi-tile-clickable{cursor:pointer;transition:border-color .12s}
  #tab-apikosten .ak-kpi-tile-clickable:hover{border-color:var(--accent)}
  #tab-apikosten .ak-empty{padding:30px;text-align:center;color:var(--text2);font-size:13px}
  #tab-apikosten .ak-loading{padding:30px;text-align:center;color:var(--text2);font-size:12px}
  #tab-apikosten .ak-error{padding:14px;background:rgba(226,75,74,0.1);border:1px solid #E24B4A;border-radius:6px;color:#E24B4A;font-size:12px;margin-bottom:12px}
  .ak-drill-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:1000;justify-content:center;align-items:center;padding:20px}
  .ak-drill-overlay.active{display:flex}
  .ak-drill-box{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);max-width:920px;width:100%;max-height:90vh;overflow:auto;padding:20px;position:relative}
  .ak-drill-close{position:absolute;top:10px;right:14px;background:none;border:none;font-size:24px;color:var(--text2);cursor:pointer;line-height:1}
  .ak-drill-title{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text)}
  .ak-drill-sub{font-size:12px;color:var(--text2);margin-bottom:14px}
  .ak-drill-kennzahlen{display:grid;grid-template-columns:repeat(3, 1fr);gap:10px;margin-bottom:16px}
  .ak-drill-kennzahl{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}
  .ak-drill-canvaswrap{height:280px;position:relative;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:12px}

/* ===== Block 3 (ehem. hh_dashboard.html Z4320) ===== */
/* ===== CSS: Zeugnis-Bot Tab (Phase 3c Schritt 5a/5b/5c/5d) ===== */
.zb-layout{padding:14px 20px 12px;max-width:1280px;margin:0 auto;display:flex;flex-direction:row;gap:20px;height:calc(90vh - 120px)}
.zb-sidebar{width:240px;background:var(--bg2);border-radius:8px;padding:14px;flex-shrink:0;overflow-y:auto}
.zb-neu-badge{display:inline-block;padding:1px 6px;font-size:9px;font-weight:700;background:#EAB308;color:#000;border-radius:3px;letter-spacing:0.5px;margin-left:6px;vertical-align:middle}
.zb-sb-title{font-size:13px;font-weight:700;color:var(--text);margin-bottom:14px;letter-spacing:0.5px}
.zb-sb-item{margin-bottom:12px}
.zb-sb-label{font-size:10px;text-transform:uppercase;color:var(--text2);letter-spacing:0.8px;margin-bottom:3px}
.zb-sb-value{font-size:13px;color:var(--text);font-weight:500;word-break:break-word}
.zb-sb-hint{margin-top:20px;padding-top:14px;border-top:1px solid var(--bg3);font-size:11px;color:var(--text2);font-style:italic;line-height:1.4}
.zb-main{flex:1;display:flex;flex-direction:column;min-width:0}
.zb-header{margin-bottom:12px;flex-shrink:0}
.zb-header h2{margin:0 0 6px 0;font-size:20px;color:var(--text)}
.zb-subtitle{font-size:12px;color:var(--text2);margin:0;line-height:1.5}
.zb-chat-msgs{background:var(--bg2);border-radius:8px;padding:14px;flex:1;overflow-y:auto;margin-bottom:12px;display:flex;flex-direction:column;gap:10px;min-height:300px;transition:outline 0.15s,background 0.15s}
.zb-chat-msgs.zb-drag-over{outline:2px dashed var(--accent);outline-offset:-4px;background:var(--bg3)}
.zb-msg{padding:10px 14px;border-radius:10px;max-width:80%;white-space:pre-wrap;font-size:14px;line-height:1.55;word-wrap:break-word}
.zb-msg-user{background:var(--accent);color:#fff;align-self:flex-end;margin-left:15%}
.zb-msg-bot{background:var(--bg3);color:var(--text);align-self:flex-start;margin-right:15%}
.zb-msg-system{background:transparent;color:var(--text2);font-style:italic;text-align:center;font-size:12px;align-self:center;padding:4px 12px}
.zb-msg-error{background:#5a2020;color:#fff;align-self:center;font-size:12px;padding:6px 12px;border-radius:6px}
.zb-msg strong{font-weight:700}
.zb-msg em{font-style:italic}
.zb-input-row{display:flex;gap:8px;align-items:stretch;flex-shrink:0}
.zb-input-row textarea{flex:1;padding:8px 12px;border-radius:8px;border:1px solid var(--bg3);background:var(--bg2);color:var(--text);font-family:inherit;font-size:14px;line-height:1.4;resize:vertical;min-height:38px;max-height:160px}
.zb-input-row button{padding:0 16px;border-radius:8px;border:none;font-weight:600;cursor:pointer;font-size:13px;white-space:nowrap}
.zb-input-row .zb-upload-btn{background:var(--bg3);color:var(--text);border:1px solid var(--accent);min-width:140px}
.zb-input-row .zb-upload-btn:hover:not(:disabled){background:var(--accent);color:#fff}
.zb-input-row .zb-send-btn{background:var(--accent);color:#fff;min-width:80px}
.zb-input-row button:disabled{opacity:0.5;cursor:not-allowed}
.zb-typing{display:inline-flex;gap:4px;padding:10px 14px;background:var(--bg3);border-radius:10px;align-self:flex-start}
.zb-typing span{width:8px;height:8px;background:var(--text2);border-radius:50%;animation:zb-bounce 1.4s infinite ease-in-out both}
.zb-typing span:nth-child(1){animation-delay:-0.32s}
.zb-typing span:nth-child(2){animation-delay:-0.16s}
@keyframes zb-bounce{0%,80%,100%{transform:scale(0.7);opacity:0.4}40%{transform:scale(1);opacity:1}}
/* Phase 3c Schritt 5d: Download-Cards fuer Analyse-DOCX und Reklamations-DOCX */
.zb-download-card{align-self:flex-start;display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bg2);border:1px solid var(--accent);border-left:4px solid var(--accent);border-radius:8px;max-width:80%;margin-right:15%;cursor:pointer;transition:background 0.15s}
.zb-download-card:hover{background:var(--bg3)}
.zb-dlc-icon{font-size:24px;flex-shrink:0;line-height:1}
.zb-dlc-body{flex:1;min-width:0}
.zb-dlc-label{font-weight:600;font-size:14px;color:var(--text)}
.zb-dlc-filename{font-size:11px;color:var(--text2);margin-top:2px;font-family:Menlo,Consolas,monospace;word-break:break-all}
.zb-dlc-redownload{font-size:11px;color:var(--accent);margin-top:6px;cursor:pointer;background:transparent;border:none;padding:0;font-family:inherit;text-decoration:underline}
.zb-dlc-redownload:hover{color:var(--text)}
/* V3.1 Schritt 3 (29.04.2026): Sprungmarken-Chips fuer Detailanalyse-Sektionen */
.zb-detail-chips{align-self:flex-start;display:flex;flex-wrap:wrap;gap:6px;max-width:80%;margin-right:15%}
.zb-detail-bar{flex-shrink:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 14px;background:var(--bg2);border-top:1px solid var(--border);border-radius:8px 8px 0 0;margin:0 0 -1px 0}
.zb-detail-bar-label{font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:0.4px;margin-right:4px}
.zb-detail-bar-spacer{flex:1}
.zb-detail-chip-reklamation{padding:6px 12px;background:#c8842c;color:#fff;border:1px solid #c8842c;border-radius:14px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity 0.15s}
.zb-detail-chip-reklamation:hover{opacity:0.85}
.zb-detail-chip{padding:6px 12px;background:var(--bg3);color:var(--text);border:1px solid var(--accent);border-radius:14px;font-size:12px;font-weight:500;cursor:pointer;transition:background 0.15s,color 0.15s;white-space:nowrap;line-height:1.3}
.zb-detail-chip:hover{background:var(--accent);color:#fff}
.zb-detail-chip.zb-detail-chip-all{font-weight:700;border-width:2px}
.zb-suggestions{align-self:flex-start;display:flex;flex-wrap:wrap;gap:6px;max-width:80%;margin:6px 0 12px 0}
.zb-info-chip{padding:6px 14px;background:var(--bg3);color:var(--text);border:1px solid var(--accent);border-radius:14px;font-size:13px;font-weight:500;cursor:pointer;transition:background 0.15s,color 0.15s;white-space:nowrap;line-height:1.3;font-family:inherit}
.zb-info-chip:hover{background:var(--accent);color:#fff}
.zb-info-chip:disabled{opacity:0.5;cursor:default}
.zb-stars-wrap{display:flex;flex-direction:column;gap:8px;width:100%}
.zb-stars-row{display:flex;gap:8px;align-items:center}
.zb-star{font-size:32px;line-height:1;cursor:pointer;color:#888;user-select:none;transition:color 0.12s,transform 0.12s}
.zb-star:hover{transform:scale(1.1)}
.zb-star-filled{color:#fbbc04}
.zb-stars-text{display:flex;flex-direction:column;gap:6px;margin-top:4px}
.zb-stars-text textarea{background:var(--bg3);border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:13px;color:var(--text);resize:vertical;min-height:50px;font-family:inherit}
.zb-stars-send{padding:6px 14px;background:var(--accent);color:#fff;border:none;border-radius:14px;font-size:13px;font-weight:600;cursor:pointer;align-self:flex-start;font-family:inherit}
.zb-stars-send:hover{opacity:0.85}
.zb-stars-send:disabled{opacity:0.5;cursor:default}
.zb-detail-chip.zb-detail-chip-all:hover{background:var(--accent);color:#fff}
.zb-detail-chip.zb-detail-chip-active,.zb-detail-chip.zb-detail-chip-all.zb-detail-chip-active{background:var(--accent);color:#fff;font-weight:600}
.zb-bar-action-chip{padding:6px 14px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:14px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.15s;font-family:inherit;white-space:nowrap}
.zb-bar-action-chip:hover{opacity:0.85}
.zb-bar-action-chip:disabled{opacity:0.5;cursor:default}
.zb-bar-stars{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.zb-bar-stars-prompt{font-size:12px;color:var(--text2)}
.zb-bar-stars-row{display:flex;gap:4px;align-items:center}
.zb-bar-stars-row .zb-star{font-size:24px}
.zb-bar-feedback-text{flex-basis:100%;display:flex;flex-direction:column;gap:6px;margin-top:6px}
.zb-bar-feedback-text textarea{background:var(--bg3);border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:13px;color:var(--text);resize:vertical;min-height:50px;font-family:inherit}
.zb-reset-btn {
  margin-top: 12px;
  padding: 6px 10px;
  font-size: 11px;
  background: var(--bg2, #1a1a1e);
  color: var(--text2, #888780);
  border: 1px solid var(--border, #2a2a2e);
  border-radius: 5px;
  cursor: pointer;
  width: 100%;
  text-align: left;
  transition: background 0.15s, color 0.15s;
}
.zb-reset-btn:hover {
  background: var(--border, #2a2a2e);
  color: var(--text, #d4d4d0);
}

/* ===== Block 4 (ehem. hh_dashboard.html Z6169) ===== */
    .lanc-step{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 auto}
    .lanc-step-dot{width:28px;height:28px;border-radius:50%;background:var(--border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;transition:background .3s}
    .lanc-step-label{font-size:11px;color:var(--text2);white-space:nowrap}
    .lanc-step-line{flex:1;height:3px;background:var(--border);min-width:20px;transition:background .3s}
    .lanc-step.active .lanc-step-dot{background:var(--accent);animation:pulse 1.5s ease-in-out infinite}
    .lanc-step.done .lanc-step-dot{background:var(--green,#16a34a)}
    .lanc-step.done + .lanc-step-line{background:var(--green,#16a34a)}
    @keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}
  .hhm-sr:hover{background:var(--bg2);}

/* ===== Block 5 (ehem. hh_dashboard.html Z10338) ===== */
.lanc-bs{width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,0.2);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.lanc-bs.active{background:#fff;color:var(--accent);animation:pulse 1.5s ease-in-out infinite}
.lanc-bs.done{background:rgba(255,255,255,0.8);color:var(--green,#16a34a)}
.hhm-sr:hover{background:var(--bg2);}

/* ===== Block 6 (ehem. hh_dashboard.html Z10345) ===== */
@keyframes spin{to{transform:rotate(360deg)}}.hhm-sr:hover{background:var(--bg2);}

/* ===== Review-Pool-Tab (superadmin-only, Auftrag 2315, v0.340) =====
   Spiegelt das ak-*-Layout des API-Kosten-Tabs (dort #tab-apikosten-gescoped). */
#tab-reviewpool .ak-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}
#tab-reviewpool .ak-header h2{font-size:20px;font-weight:600;margin:0}
#tab-reviewpool .ak-header-right{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text2)}
#tab-reviewpool .ak-controls{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
#tab-reviewpool .ak-controls label{font-size:12px;color:var(--text2);margin-right:4px}
#tab-reviewpool .ak-aufl-grp{display:inline-flex;gap:0;border:1px solid var(--border);border-radius:5px;overflow:hidden}
#tab-reviewpool .ak-aufl-grp button{padding:5px 12px;font-size:12px;border:none;background:var(--bg2);color:var(--text2);cursor:pointer;transition:all .15s}
#tab-reviewpool .ak-aufl-grp button.active{background:var(--accent);color:#fff}
#tab-reviewpool .ak-refresh{padding:5px 14px;font-size:12px;border:1px solid var(--border);border-radius:5px;background:var(--bg2);color:var(--text2);cursor:pointer}
#tab-reviewpool .ak-table-wrap{margin-top:8px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:auto;max-height:calc(100vh - 220px)}
#tab-reviewpool .ak-loading{padding:30px;text-align:center;color:var(--text2);font-size:12px}
#tab-reviewpool .rp-table{width:100%;border-collapse:collapse;font-size:12px}
#tab-reviewpool .rp-table th{background:var(--bg3);color:var(--text2);text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);font-weight:600;white-space:nowrap;position:sticky;top:0;z-index:1}
#tab-reviewpool .rp-table td{padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}
#tab-reviewpool .rp-table tr:hover td{background:var(--bg3)}
#tab-reviewpool .rp-table a{color:var(--accent);text-decoration:none}
#tab-reviewpool .rp-table a:hover{text-decoration:underline}
#tab-reviewpool .rp-table select,#tab-reviewpool .rp-table input{padding:4px 8px;font-size:12px;border:1px solid var(--border);border-radius:5px;background:var(--bg);color:var(--text)}
#tab-reviewpool .rp-save-state{font-size:12px;white-space:nowrap;min-width:20px}

/* TipTap-Editor (27.07.2026, loest die .ql-*-Regeln von Quill ab) */
.vs-ed-toolbar{display:flex;align-items:center;gap:4px;padding:6px 8px;border-bottom:1px solid var(--border);background:var(--bg);flex-wrap:wrap}
.vs-ed-toolbar button{min-width:30px;padding:4px 8px;background:transparent;color:var(--text2);border:1px solid transparent;border-radius:4px;font-size:12px;font-family:inherit;cursor:pointer;line-height:1.4}
.vs-ed-toolbar button:hover{color:var(--accent);border-color:var(--border)}
.vs-ed-toolbar button.is-active{color:var(--accent);border-color:var(--accent);background:rgba(55,138,221,0.12)}
.vs-ed-sep{width:1px;height:18px;background:var(--border);margin:0 4px}
.vs-ed-hint{font-size:11px;color:var(--text2)}
.vs-ed-content{color:var(--text);min-height:220px;padding:14px 16px;line-height:1.55;font-size:14px;outline:none}
.vs-ed-content p{margin:0 0 0.5em}
.vs-ed-content ol,.vs-ed-content ul{margin:0.3em 0 0.5em;padding-left:1.4em}
.vs-ed-content a{color:var(--accent)}
.vs-ed-content p.is-editor-empty:first-child::before{content:attr(data-placeholder);color:var(--text2);float:left;height:0;pointer-events:none}

/* ============================================================================
   Radar-Tab (Sicht auf die eigenen Mandanten)
   ----------------------------------------------------------------------------
   Der Tab zeigt die Radar-Sicht eines Mandanten -- also soll er auch so aussehen.
   Die Regeln hier sind deshalb 1:1 aus radar_app.html uebernommen
   (.sr-action-btn, der Vorschlags-Knopf aus dem Edit-Panel, .sr-edit-panel h4,
   .sr-edit-label) statt neu erfunden.

   Warum ueberhaupt noetig: .ak-refresh ist in dieser Datei NUR unter
   #tab-apikosten und #tab-reviewpool definiert. Im Radar-Tab trug die Klasse
   also nichts bei und der Browser malte seine Standard-Knoepfe.

   Die Auswahl-Pills brauchen hier nichts: sie nutzen .cv-pill/.cv-pills (weiter
   oben in dieser Datei, aus dem Radar stammend). Groesse und Farbe kommen damit
   aus derselben Quelle wie im Radar selbst -- inklusive der Theme-Korrektur in
   berater-cockpit-hell.css.
   ========================================================================== */
#tab-radarmandant .ak-refresh{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s;white-space:nowrap;border:1px solid var(--border);background:var(--bg2);color:var(--text);font-family:inherit}
#tab-radarmandant .ak-refresh:hover{border-color:var(--accent);color:var(--accent)}
#tab-radarmandant .ak-refresh:disabled{opacity:.5;cursor:not-allowed}
#tab-radarmandant .ak-refresh:disabled:hover{border-color:var(--border);color:var(--text)}
/* Gewaehlte Sicht / Hauptaktion -- gefuellt in der Akzentfarbe. */
#tab-radarmandant .ak-refresh.radm-primaer{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}
#tab-radarmandant .ak-refresh.radm-primaer:hover{opacity:.88;color:#fff;border-color:var(--accent)}
/* Hier stand die Bauform der beiden Vorschlags-Knoepfe. Die Knoepfe sind am 12.08.2026
   entfallen (Vorschlaege laufen automatisch, siehe 23_radar_mandant.js) -- die Regel
   mit ihnen, damit niemand ein totes Muster wiederbelebt. */
/* Editor: Ueberschrift und Feldbeschriftungen wie .sr-edit-panel h4 / .sr-edit-label */
#tab-radarmandant .radm-ed-h{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text2);margin-bottom:12px}
#tab-radarmandant .radm-ed-label{font-size:10px;color:var(--text2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
#tab-radarmandant .radm-ed-hint{font-size:11px;color:var(--text2);margin:-2px 0 6px}
#tab-radarmandant .radm-ed-sec{margin-bottom:14px}
#tab-radarmandant .radm-ed-add{border:1px dashed var(--border);border-radius:14px;padding:3px 10px;font-size:13px;background:var(--bg3);color:var(--text);min-width:150px;font-family:inherit}
/* Filterzeile ueber der Liste -- dieselbe Klasse und dieselben Masse wie die
   srCount-Zeile im Radar (radar_app.html), damit die Zeile wiedererkennbar ist. */
#tab-radarmandant .sr-hide-toggle{font-size:11px;color:var(--text2);cursor:pointer;margin-left:8px;user-select:none}
#tab-radarmandant .sr-hide-toggle:hover{color:var(--text)}
