*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base: #0a0e17;--bg-surface: #111827;--bg-elevated: #1a2332;--bg-hover: #1f2b3d;--border: #1e293b;--border-subtle: #162032;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--accent: #3b82f6;--accent-hover: #2563eb;--accent-glow: rgba(59, 130, 246, .15);--accent-soft: rgba(59, 130, 246, .08);--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--font-sans: "DM Sans", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--sidebar-width: 260px;--transition: .18s ease}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0}.sidebar-header{padding:1.25rem 1rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--border)}.logo{width:36px;height:36px;object-fit:contain;border-radius:var(--radius-sm)}.app-title{font-weight:600;font-size:1.1rem;letter-spacing:-.02em;color:var(--text-primary)}.sidebar-nav{flex:1;padding:.75rem .5rem;display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;transition:all var(--transition)}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent-soft);color:var(--accent)}.sidebar-footer{padding:1rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem}.user-info{display:flex;align-items:center;gap:.6rem}.user-avatar{width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600}.user-name{font-size:.85rem;color:var(--text-secondary)}.logout-btn{background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.4rem .75rem;color:var(--text-muted);font-family:var(--font-sans);font-size:.8rem;cursor:pointer;transition:all var(--transition)}.logout-btn:hover{border-color:var(--danger);color:var(--danger)}.main-content{flex:1;overflow-y:auto;padding:2rem 2.5rem}.page-header{margin-bottom:2rem}.page-header h1{font-size:1.75rem;font-weight:700;letter-spacing:-.03em;margin-bottom:.25rem}.page-subtitle{color:var(--text-secondary);font-size:.95rem}.search-container{margin-bottom:2rem}.search-box{display:flex;align-items:center;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.15rem .15rem .15rem 1rem;transition:border-color var(--transition),box-shadow var(--transition)}.search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.search-icon{color:var(--text-muted);flex-shrink:0}.search-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:.95rem;padding:.75rem}.search-input::placeholder{color:var(--text-muted)}.search-btn{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);padding:.65rem 1.5rem;font-family:var(--font-sans);font-size:.9rem;font-weight:600;cursor:pointer;transition:background var(--transition);white-space:nowrap}.search-btn:hover:not(:disabled){background:var(--accent-hover)}.search-btn:disabled{opacity:.6;cursor:not-allowed}.loading-state{display:flex;justify-content:center;padding:3rem 0}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted);font-size:.95rem}.empty-state.welcome{padding:4rem 1rem}.welcome-icon{color:var(--accent);margin-bottom:1rem;opacity:.5}.hint-tags{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-top:1rem}.hint-tag{background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;padding:.35rem 1rem;color:var(--text-secondary);font-family:var(--font-mono);font-size:.8rem;cursor:pointer;transition:all var(--transition)}.hint-tag:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.result-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition)}.result-card:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-glow)}.card-header{padding:1rem 1.25rem .5rem;display:flex;align-items:baseline;gap:.75rem}.card-title{font-size:1.1rem;font-weight:700;font-family:var(--font-mono);color:var(--accent)}.card-alias{font-size:.8rem;color:var(--text-muted)}.card-body{padding:.5rem 1.25rem 1.25rem}.card-meta{display:flex;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid var(--border-subtle);font-size:.88rem}.card-meta:last-of-type{border-bottom:none}.meta-label{color:var(--text-muted)}.meta-value{color:var(--text-primary);font-family:var(--font-mono);font-size:.85rem}.card-meta.warn .meta-value{color:var(--warning)}.card-comment{margin-top:.75rem;font-size:.85rem;color:var(--text-secondary);line-height:1.5}.selection-breadcrumb{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;padding:1rem 1.25rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.breadcrumb-step{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--text-muted);font-family:var(--font-sans);font-size:.88rem;cursor:pointer;padding:.3rem 0;transition:color var(--transition)}.breadcrumb-step:disabled{cursor:default}.breadcrumb-step.done{color:var(--success)}.breadcrumb-step.current{color:var(--accent)}.step-number{width:24px;height:24px;border-radius:50%;border:1.5px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.breadcrumb-arrow{color:var(--text-muted);font-size:.75rem}.selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.selection-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;text-align:center;cursor:pointer;font-family:var(--font-sans);transition:all var(--transition);display:flex;flex-direction:column;align-items:center;gap:.75rem}.selection-card:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.selection-card-icon{color:var(--accent);opacity:.7}.selection-card-label{font-size:.95rem;font-weight:600;color:var(--text-primary)}.selection-card-sub{font-size:.8rem;color:var(--text-muted)}.druckwerte-section{margin-top:1rem}.table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg)}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th{background:var(--bg-elevated);padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:.65rem 1rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}.cell-highlight{font-weight:700;font-family:var(--font-mono);color:var(--accent)}.cell-comment{color:var(--text-muted);font-size:.85rem;max-width:200px}@media (max-width: 768px){.app-shell{flex-direction:column}.sidebar{width:100%;flex-direction:row;align-items:center;border-right:none;border-bottom:1px solid var(--border)}.sidebar-header{border-bottom:none;padding:.75rem 1rem}.sidebar-nav{flex-direction:row;padding:0;gap:0}.sidebar-footer{display:none}.main-content{padding:1.25rem}.results-grid{grid-template-columns:1fr}.selection-grid{grid-template-columns:repeat(2,1fr)}}
