:root{font-family:Inter,system-ui,sans-serif;color:#e5e7eb;background:#0f172a}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#0f172a,#111827)}a{color:inherit;text-decoration:none}input,select,button,textarea{font:inherit}button{cursor:pointer}.login-shell,.screen-center{min-height:100vh;display:grid;place-items:center}.login-card,.card,.sidebar{background:#111827eb;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 60px #00000040}.login-card{width:min(420px,calc(100vw - 32px));border-radius:24px;padding:28px;display:grid;gap:14px}.layout-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{padding:20px;display:flex;flex-direction:column;justify-content:space-between}.brand{font-size:24px;font-weight:800;margin-bottom:18px}.user-chip{display:grid;gap:4px;background:#ffffff0a;padding:14px;border-radius:18px;margin-bottom:18px}.nav-list{display:grid;gap:8px}.nav-link{padding:12px 14px;border-radius:14px;color:#cbd5e1}.nav-link.active{background:#2563eb;color:#fff}.nav-link-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.nav-badge{min-width:24px;height:24px;padding:0 8px;border-radius:999px;background:#ef4444;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;line-height:1;box-shadow:0 4px 14px #ef444459}.page-shell{padding:24px}.card{border-radius:28px;padding:24px}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:20px}.card h1{margin:0;font-size:28px}.card p{color:#94a3b8}.form-grid{display:grid;gap:16px;max-width:820px}label{display:grid;gap:6px;font-size:14px}input,select,textarea{border:1px solid #334155;background:#0b1220;color:#fff;border-radius:14px;padding:12px 14px}textarea{resize:vertical}.btn{border:0;background:#2563eb;color:#fff;border-radius:14px;padding:12px 16px;transition:background .18s ease,transform .18s ease}.btn:hover{background:#1d4ed8;transform:translateY(-1px)}.btn-secondary{background:#334155}.btn-secondary:hover{background:#475569}.page-loading,.success-box,.error-box{padding:14px 16px;border-radius:14px}.success-box{background:#1ec8781f;border:1px solid rgba(30,200,120,.35);color:#b8ffd7;padding:12px 14px;border-radius:14px}.error-box{background:#ff50501f;border:1px solid rgba(255,80,80,.35);color:#ffb8b8;padding:12px 14px;border-radius:14px}.inline-form{display:flex;gap:12px;margin-bottom:18px;flex-wrap:wrap}.inline-form input{flex:1;min-width:220px}.list-stack{display:grid;gap:12px}.list-item,.stat-box{background:#ffffff0a;border-radius:18px;padding:14px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.red-box{border:2px solid #ef4444;border-radius:18px;padding:16px;display:grid;gap:12px}.table-wrap{overflow:auto;margin-top:24px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid rgba(255,255,255,.08)}th{font-weight:700}.user-form{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:18px;margin-top:24px}.form-label{display:grid;gap:8px}.form-label span{font-size:14px;font-weight:600}.form-label-full{grid-column:1 / -1}.settings-box{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px;display:grid;gap:14px}.permissions-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px 24px}.checkbox-row{display:flex;align-items:center;gap:10px}.checkbox-row input{width:18px;height:18px}.users-table-wrapper{margin-top:28px;overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th,.users-table td{text-align:left;padding:14px 10px;border-bottom:1px solid rgba(255,255,255,.08)}.users-table th{font-weight:700}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.table-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.small-button{padding:6px 10px;font-size:13px}.danger-button{background:#ff505033;border:1px solid rgba(255,80,80,.4);color:#ffb8b8;border-radius:10px;padding:8px 12px;cursor:pointer;transition:background .18s ease,transform .18s ease}.danger-button:hover{background:#ff505047;transform:translateY(-1px)}.upload-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px}.upload-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:14px}.upload-card input[type=file]{padding:10px}.upload-name{color:#94a3b8;font-size:12px}.order-item{background:#ffffff0a;border-radius:18px;padding:14px;display:grid;gap:10px}.order-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.order-subline{display:flex;gap:18px;flex-wrap:wrap;color:#cbd5e1;font-size:14px}.muted-text{color:#94a3b8;font-size:14px}.image-link-row{display:flex;gap:14px;flex-wrap:wrap}.image-link-row a{color:#93c5fd;font-size:14px}.status-badge{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.status-wird-bearbeitet{background:#facc152e;color:#fde68a}.status-offen{background:#3b82f62e;color:#bfdbfe}.status-bestellt{background:#22c55e2e;color:#bbf7d0}.status-gesperrt{background:#ef44442e;color:#fecaca}.admin-alert-box{margin-bottom:24px;padding:18px 20px;border-radius:18px;border:1px solid rgba(239,68,68,.35);background:linear-gradient(180deg,#7f1d1d59,#450a0a38);box-shadow:0 10px 30px #7f1d1d2e}.admin-alert-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-alert-head strong{font-size:18px}.admin-alert-head p{margin:8px 0 0;color:#fecaca}.admin-alert-meta{margin-top:8px;font-size:14px;color:#fca5a5}.admin-alert-button{white-space:nowrap}.app-container,.main-container,.page-container{max-width:1600px;margin:0 auto;width:100%;padding:0 20px;box-sizing:border-box}.meldungen-layout{display:grid;gap:20px}.meldungen-form{display:grid;gap:14px}.meldungen-textarea{width:100%;min-height:140px;resize:vertical;border:1px solid #334155;background:#0b1220;color:#fff;border-radius:16px;padding:14px 16px;font:inherit}.meldungen-textarea::placeholder{color:#64748b}.meldungen-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.meldungen-upload-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.meldungen-file-input{display:block;width:100%;max-width:420px;border:1px dashed rgba(255,255,255,.14);background:#ffffff08;color:#cbd5e1;border-radius:14px;padding:12px 14px}.meldungen-file-list{display:grid;gap:8px}.meldungen-file-chip{display:inline-flex;align-items:center;gap:8px;width:fit-content;max-width:100%;padding:8px 12px;border-radius:999px;background:#2563eb24;border:1px solid rgba(96,165,250,.24);color:#bfdbfe;font-size:13px}.meldungen-list{display:grid;gap:16px;margin-top:4px}.meldung-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:18px;display:grid;gap:14px}.meldung-card-head{display:flex;justify-content:space-between;align-items:start;gap:14px;flex-wrap:wrap}.meldung-title{margin:0;font-size:18px;font-weight:700;color:#f8fafc}.meldung-meta{display:flex;gap:14px;flex-wrap:wrap;color:#94a3b8;font-size:13px}.meldung-text{margin:0;color:#e2e8f0;line-height:1.6;white-space:pre-wrap;word-break:break-word}.meldung-images{display:flex;gap:12px;flex-wrap:wrap}.meldung-image-link{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#93c5fd;font-size:14px}.meldung-reply-box{display:grid;gap:10px;padding:14px;border-radius:18px;background:#22c55e14;border:1px solid rgba(34,197,94,.22)}.meldung-reply-label{font-size:13px;font-weight:700;color:#86efac;text-transform:uppercase;letter-spacing:.04em}.meldung-reply-text{margin:0;color:#dcfce7;line-height:1.6;white-space:pre-wrap;word-break:break-word}.meldung-admin-reply{display:grid;gap:10px;margin-top:4px}.meldung-admin-reply textarea{width:100%;min-height:110px;resize:vertical;border:1px solid #334155;background:#0b1220;color:#fff;border-radius:14px;padding:12px 14px;font:inherit}.meldung-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.meldung-status{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:700}.meldung-status-offen{background:#3b82f62e;color:#bfdbfe}.meldung-status-beantwortet{background:#22c55e2e;color:#bbf7d0}.meldung-empty{padding:20px;border-radius:18px;background:#ffffff08;border:1px dashed rgba(255,255,255,.1);color:#94a3b8;text-align:center}.chat-links-table-wrap{overflow-x:auto;margin-top:24px}.chat-links-table{width:100%;min-width:760px;border-collapse:collapse;background:#ffffff05;border-radius:18px;overflow:hidden}.chat-links-table thead th{background:#ffffff0a;color:#e2e8f0;font-weight:700;white-space:nowrap}.chat-links-table tbody tr{transition:background .18s ease}.chat-links-table tbody tr:hover{background:#ffffff08}.chat-links-table td{vertical-align:middle}.chat-link-name{font-weight:700;color:#f8fafc}.chat-link-url{color:#93c5fd;word-break:break-all;line-height:1.5}.chat-link-empty{text-align:center;color:#94a3b8;padding:18px}.chat-link-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chat-link-actions .btn,.chat-link-actions .danger-button{white-space:nowrap}.chat-link-edit-input{width:100%;min-width:220px}.chat-links-head-note{color:#94a3b8;font-size:14px;margin-top:6px}.chat-links-inline-form{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.chat-links-inline-form input{flex:1;min-width:240px}.chat-links-inline-form .btn{align-self:stretch}.success-box,.error-box{animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.chat-message-image{image-rendering:auto}.chat-bubble .chat-bubble-text{word-break:break-word}.message-reactions-wrap{display:grid;gap:8px;align-items:start}.message-reactions-row{align-items:center}.message-reaction-chip,.message-reaction-add,.message-reaction-emoji{transition:transform .15s ease,background .15s ease,border-color .15s ease}.message-reaction-chip:hover,.message-reaction-add:hover,.message-reaction-emoji:hover{transform:translateY(-1px)}.message-reaction-picker{padding-top:2px}@media(max-width:960px){.layout-shell{grid-template-columns:1fr}.sidebar{gap:20px}}@media(max-width:900px){.user-form,.permissions-grid,.upload-grid{grid-template-columns:1fr}}@media(max-width:720px){.meldung-card-head,.meldung-footer,.meldungen-actions,.meldungen-upload-row{flex-direction:column;align-items:stretch}.meldung-meta{flex-direction:column;gap:6px}.meldungen-file-input{max-width:100%}.chat-links-inline-form{flex-direction:column}.chat-link-actions{flex-direction:column;align-items:stretch}.chat-link-actions .btn,.chat-link-actions .danger-button{width:100%}}
