/* f3dprint - Dunkelmodus (html[data-theme="dark"]) und Bedienelemente für Design/Sprache */
.f3d-tools { display: inline-flex; align-items: center; gap: .35rem; }
.f3d-tool { display: inline-flex; align-items: center; justify-content: center; height: 2.25rem; min-width: 2.25rem; padding: 0 .55rem; border-radius: .9rem; border: 1px solid #e2e8f0; background: #fff; color: #475569;
  font-size: 10px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; cursor: pointer; line-height: 1; transition: all .2s; }
.f3d-tool:hover { border-color: #6366f1; color: #4f46e5; }
.f3d-tool:focus-visible { outline: 2px solid #6366f1; outline-offset: 2px; }
.f3d-tool svg { width: 16px; height: 16px; }
.f3d-tool .i-sun { display: none; }
html[data-theme="dark"] .f3d-tool .i-sun { display: block; }
html[data-theme="dark"] .f3d-tool .i-moon { display: none; }

html[data-theme="dark"] { color-scheme: dark; }
html[data-theme="dark"] body { background-color: #0b1120 !important; color: #cbd5e1 !important; }
html[data-theme="dark"] .bg-white, html[data-theme="dark"] .glass-card, html[data-theme="dark"] .legal-card, html[data-theme="dark"] .item-card,
html[data-theme="dark"] .mat-card, html[data-theme="dark"] .service-card, html[data-theme="dark"] .premium-add-card, html[data-theme="dark"] #viewer-container { background-color: #111a2e !important; }
html[data-theme="dark"] .glass-nav { background: rgba(11, 17, 32, .94) !important; }
html[data-theme="dark"] .bg-slate-50, html[data-theme="dark"] .bg-slate-100 { background-color: #16213a !important; }
html[data-theme="dark"] .bg-white\/90 { background-color: rgba(17, 26, 46, .9) !important; }
html[data-theme="dark"] .bg-indigo-50, html[data-theme="dark"] .bg-indigo-50\/50, html[data-theme="dark"] .bg-indigo-50\/60, html[data-theme="dark"] .bg-indigo-100 { background-color: #1e2750 !important; }
html[data-theme="dark"] .bg-green-50 { background-color: #10301f !important; } html[data-theme="dark"] .bg-red-50 { background-color: #3a1620 !important; }
html[data-theme="dark"] .bg-amber-50 { background-color: #3a2b10 !important; } html[data-theme="dark"] .bg-sky-50 { background-color: #10283a !important; }
html[data-theme="dark"] .form-input { background: #0f1830 !important; border-color: #263353 !important; color: #e2e8f0 !important; }
html[data-theme="dark"] .form-input:focus { border-color: #6366f1 !important; background: #0b1226 !important; }
html[data-theme="dark"] input, html[data-theme="dark"] select, html[data-theme="dark"] textarea { color-scheme: dark; }
html[data-theme="dark"] .form-input::placeholder { color: #64748b; }
html[data-theme="dark"] .border-slate-100, html[data-theme="dark"] .border-slate-200, html[data-theme="dark"] .border-slate-300 { border-color: #263353 !important; }
html[data-theme="dark"] .border-indigo-100, html[data-theme="dark"] .border-indigo-200 { border-color: #33407a !important; }
html[data-theme="dark"] .border-green-100 { border-color: #1d5136 !important; } html[data-theme="dark"] .border-red-100 { border-color: #6b2434 !important; }
html[data-theme="dark"] .border-amber-100, html[data-theme="dark"] .border-amber-200 { border-color: #6b4d18 !important; } html[data-theme="dark"] .border-sky-100 { border-color: #1d4a6b !important; }
html[data-theme="dark"] .text-slate-900, html[data-theme="dark"] .text-slate-800 { color: #f1f5f9 !important; }
html[data-theme="dark"] .text-slate-700, html[data-theme="dark"] .text-slate-600 { color: #cbd5e1 !important; }
html[data-theme="dark"] .text-slate-500 { color: #94a3b8 !important; }
html[data-theme="dark"] .text-slate-400 { color: #8693a8 !important; }
html[data-theme="dark"] .text-indigo-600, html[data-theme="dark"] .text-indigo-800, html[data-theme="dark"] .text-indigo-900 { color: #a5b4fc !important; }
html[data-theme="dark"] .text-green-700, html[data-theme="dark"] .text-green-600 { color: #86efac !important; }
html[data-theme="dark"] .text-red-600, html[data-theme="dark"] .text-red-700 { color: #fca5a5 !important; }
html[data-theme="dark"] .text-amber-800 { color: #fcd34d !important; } html[data-theme="dark"] .text-sky-800 { color: #7dd3fc !important; }
/* dunkle Buttons (bg-slate-900) bleiben erkennbar */
html[data-theme="dark"] .bg-slate-900 { background-color: #4f46e5 !important; color: #fff !important; }
html[data-theme="dark"] .bg-slate-900:hover, html[data-theme="dark"] .hover\:bg-indigo-600:hover { background-color: #6366f1 !important; }
html[data-theme="dark"] .process-card-dark { background-color: #070c18 !important; border-color: #263353 !important; }
html[data-theme="dark"] .service-card:hover { background-color: #1e2750 !important; border-color: #4f46e5 !important; }
html[data-theme="dark"] .custom-radio:checked + label, html[data-theme="dark"] .shipping-radio:checked + .premium-label, html[data-theme="dark"] .shipping-radio:checked + label { background-color: #1e2750 !important; color: #c7d2fe !important; }
html[data-theme="dark"] .tier-inactive, html[data-theme="dark"] .status-dot { background-color: #16213a !important; border-color: #263353 !important; color: #64748b; }
html[data-theme="dark"] .text-done { color: #e2e8f0 !important; } html[data-theme="dark"] .dot-done { background: #4f46e5 !important; border-color: #4f46e5 !important; }
html[data-theme="dark"] .f3d-tool { background: #111a2e; border-color: #263353; color: #cbd5e1; }
html[data-theme="dark"] .f3d-tool:hover { border-color: #818cf8; color: #c7d2fe; }
html[data-theme="dark"] img { filter: brightness(.92); }
html[data-theme="dark"] .hover\:bg-slate-100:hover, html[data-theme="dark"] .hover\:bg-slate-200:hover { background-color: #1e2a47 !important; }
html[data-theme="dark"] #cookie-overlay > div { background-color: #111a2e !important; }

@media (max-width: 420px) {
  .f3d-tools { gap: .2rem; }
  .f3d-tool { height: 2rem; min-width: 2rem; padding: 0 .3rem; border-radius: .75rem; font-size: 9px; letter-spacing: .06em; }
  .f3d-tool svg { width: 14px; height: 14px; }
  nav .flex.items-center.gap-3 { gap: .4rem; }
}
.f3d-tools--menu { display: none; }
@media (max-width: 359px) {
  .f3d-tools--head { display: none; }
  .f3d-tools--menu { display: inline-flex; }
  .f3d-tools--menu .f3d-tool { height: 2.5rem; min-width: 2.75rem; }
}

/* Rechtstexte (AGB, Datenschutz, Impressum, Widerruf) im Dunkelmodus gut lesbar */
html[data-theme="dark"] .legal-content h2 { color: #f1f5f9 !important; }
html[data-theme="dark"] .legal-content h3 { color: #a5b4fc !important; }
html[data-theme="dark"] .legal-content h4 { color: #e2e8f0 !important; }
html[data-theme="dark"] .legal-content p, html[data-theme="dark"] .legal-content li, html[data-theme="dark"] .legal-content td { color: #cbd5e1 !important; }
html[data-theme="dark"] .legal-content strong, html[data-theme="dark"] .legal-content b, html[data-theme="dark"] .legal-content u, html[data-theme="dark"] .legal-content em { color: #f1f5f9 !important; }
html[data-theme="dark"] .legal-content code { background: #1e2a47 !important; color: #e0e7ff !important; padding: .1rem .35rem; border-radius: 6px; }
html[data-theme="dark"] .legal-content a { color: #a5b4fc !important; }
html[data-theme="dark"] .highlight-box { background: #16213a !important; border-left-color: #818cf8 !important; }
html[data-theme="dark"] .highlight-box p, html[data-theme="dark"] .highlight-box span, html[data-theme="dark"] .highlight-box strong { color: #f1f5f9 !important; }
html[data-theme="dark"] .highlight-box .text-slate-400 { color: #a3b0c4 !important; }
html[data-theme="dark"] .alert-box { background: #3a1620 !important; border-left-color: #fb7185 !important; }
html[data-theme="dark"] .alert-box p, html[data-theme="dark"] .alert-box li, html[data-theme="dark"] .alert-box strong { color: #fecdd3 !important; }
html[data-theme="dark"] .legal-content .text-slate-300 { color: #94a3b8 !important; }

/* weitere Farbklassen im Dunkelmodus (Hinweise, Status-Marken) */
html[data-theme="dark"] .bg-amber-100 { background-color: #3a2b10 !important; }
html[data-theme="dark"] .bg-green-100, html[data-theme="dark"] .bg-emerald-100 { background-color: #10301f !important; }
html[data-theme="dark"] .bg-red-100 { background-color: #3a1620 !important; }
html[data-theme="dark"] .bg-sky-100 { background-color: #10283a !important; }
html[data-theme="dark"] .bg-slate-200 { background-color: #1e2a47 !important; }
html[data-theme="dark"] .text-indigo-700, html[data-theme="dark"] .text-indigo-800\/80, html[data-theme="dark"] .text-indigo-900\/80 { color: #c7d2fe !important; }
html[data-theme="dark"] .text-amber-900, html[data-theme="dark"] .text-amber-700 { color: #fcd34d !important; }
html[data-theme="dark"] .text-emerald-800, html[data-theme="dark"] .text-emerald-700, html[data-theme="dark"] .text-emerald-600 { color: #6ee7b7 !important; }
html[data-theme="dark"] .text-green-500 { color: #86efac !important; }
html[data-theme="dark"] .text-red-500 { color: #fca5a5 !important; }
html[data-theme="dark"] .text-rose-600 { color: #fda4af !important; }
html[data-theme="dark"] .border-emerald-100, html[data-theme="dark"] .border-green-200 { border-color: #1d5136 !important; }

/* Datei-Auswahl im Design-Formular: im Dunkelmodus passend dunkel statt heller Fläche */
html[data-theme="dark"] .file-upload-btn { background: #0f1830; border-color: #34446e; color: #cbd5e1; }
html[data-theme="dark"] .file-upload-btn:hover { background: #16213a; border-color: #818cf8; color: #c7d2fe; }
