/* Die Ticketansicht übernimmt die Typografie und Goldakzente des Profils. */
.support-workspace { --support-line: #443a2d; --support-gold: #e4b759; color: #eee9e0; padding: clamp(16px,3vw,32px); background: #171615; border: 1px solid var(--support-line); border-radius: 12px; max-width: 1120px; margin: 24px auto; }
.support-workspace [hidden], .support-notification[hidden] { display: none !important; }
.support-tabs,.support-actions,.support-filters { display: flex; gap: 12px; flex-wrap: wrap; align-items: end; }
.support-content > .support-actions { margin: 24px 0 28px; row-gap: 20px; }
.support-tabs { padding-bottom: 16px; border-bottom: 1px solid var(--support-line); }
.support-workspace .support-tabs .btn[aria-pressed="true"] { background: #382a16; border-color: var(--support-gold); color: #f6d28c; }
.support-content h2 { margin: 24px 0 16px; font-size: clamp(23px,3vw,32px); line-height: 1.25; }
.support-workspace button,.support-workspace input,.support-workspace select { min-height: 44px; }
.support-workspace button { cursor: pointer; }
.support-workspace .btn { padding: 10px 16px; font: inherit; font-weight: 600; border-radius: 6px; background: #302719; background-image: none; color: #efd39d; border: 1px solid #806238; box-shadow: none; }
.support-workspace .btn.btn-ghost { background: #211f1b; color: #dfd2bb; border-color: #514636; }
.support-workspace .btn:hover { background: #40321e; color: #ffe1a7; border-color: var(--support-gold); }
.profile-workspace:has(.support-workspace) .profile-workspace-nav .btn { background: #211f1b; color: #dfd2bb; border: 1px solid #514636; box-shadow: none; }
.profile-workspace:has(.support-workspace) .profile-workspace-nav .btn:hover,
.profile-workspace:has(.support-workspace) .profile-workspace-nav .btn.is-active { background: #382a16; border-color: #e4b759; color: #f6d28c; }
.support-workspace input[type="file"]::file-selector-button { padding: 8px 12px; margin-right: 12px; background: #302719; color: #efd39d; border: 1px solid #806238; border-radius: 5px; cursor: pointer; }
.support-workspace button:disabled { cursor: wait; opacity: .6; }
.support-workspace :focus-visible { outline: 3px solid var(--support-gold); outline-offset: 3px; }
.support-form { display: grid; gap: 18px; margin-top: 20px; max-width: 780px; }
.support-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.support-workspace .support-form-actions > .btn { width: auto; max-width: 100%; flex: 0 1 auto; }
.support-form > .btn { justify-self: start; }
.support-workspace label { display: grid; gap: 8px; color: #e1d9ca; font-size: 14px; flex: 1 1 170px; }
.support-workspace input,.support-workspace textarea,.support-workspace select { box-sizing: border-box; max-width: 100%; width: 100%; color: #f4f0e9; background: #23211e; border: 1px solid #6a5a43; border-radius: 6px; padding: 10px 12px; font: inherit; }
.support-workspace textarea { min-height: 110px; resize: vertical; }
.support-workspace fieldset { display: grid; gap: 16px; border: 1px solid var(--support-line); padding: 18px; min-width: 0; }
.support-workspace legend { color: var(--support-gold); padding: 0 8px; }
.support-workspace p { max-width: 78ch; overflow-wrap: anywhere; }
.support-form .support-check { display: flex; align-items: center; gap: 12px; }
.support-check input { width: 22px; height: 22px; min-height: 22px; accent-color: var(--support-gold); }
.support-workspace .support-notice { position: fixed; right: max(24px, env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom)); z-index: 10000; display: flex; align-items: center; gap: 12px; width: max-content; max-width: min(440px, calc(100% - 48px)); max-height: calc(100dvh - 48px); overflow: auto; box-sizing: border-box; margin: 0; padding: 12px 14px 12px 18px; border: 1px solid #806238; border-radius: 8px; background: #302719; color: #f6cd80; box-shadow: 0 8px 28px #0008; font-size: 16px; line-height: 1.5; }
.support-notice:empty { display: none; }
.support-notice-copy { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .support-workspace .support-notice { right: max(12px, env(safe-area-inset-right)); bottom: max(12px, env(safe-area-inset-bottom)); max-width: calc(100% - 24px); max-height: calc(100dvh - 24px); }
}
.support-filters { margin: 18px 0; }
.support-list { margin-top: 20px; display: grid; gap: 1px; border-block: 1px solid var(--support-line); }
.support-ticket-row { display: grid; gap: 8px; padding: 18px; text-align: left; border: 0; border-bottom: 1px solid var(--support-line); color: #eee9e0; background: transparent; font: inherit; }
.support-ticket-row:hover { background: #27231c; }
.support-meta { font-size: 13px; color: #c6b9a3; }
.support-ranking-fields { max-width: 78ch; padding: 18px; background: #211e19; border-left: 3px solid #b9934e; }
.support-ranking-fields dt { color: #e4c58e; font-weight: 600; margin-top: 14px; }
.support-ranking-fields dd { margin: 6px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.support-messages { padding: 0; list-style: none; margin-top: 28px; }
.support-message { padding: 18px 0; border-bottom: 1px solid var(--support-line); }
.support-message>p:not(.support-meta) { white-space: pre-wrap; }
.support-message.is-internal { padding: 18px; background: #2a251a; border-left: 3px solid #b9934e; }
.support-inline { display: flex; gap: 12px; align-items: end; flex: 1 1 100%; }
.support-admin-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 28px 0; }
.support-workspace[data-admin="1"] { max-width: none; margin: 28px 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.support-workspace .support-admin-tile { width: 100%; min-width: 0; min-height: 320px; font: inherit; text-align: left; }
.support-admin-tile .blank-tool-card-copy strong { font-size: clamp(24px, 2.5vw, 34px); line-height: 1.2; overflow-wrap: anywhere; }
.support-notification { position: fixed; bottom: 22px; right: 22px; z-index: 1000; max-width: calc(100vw - 44px); box-sizing: border-box; padding: 14px 20px; background: #e4b759; color: #171615; border-radius: 8px; box-shadow: 0 3px 18px #0008; font-size: 14px; font-weight: 600; }
.support-restricted { max-width: 1180px; margin: auto; padding: 40px 20px; }
@media(max-width:600px) { .support-admin-grid { grid-template-columns: minmax(0,1fr); } .support-inline { display: grid; width: 100%; } .support-actions>* { max-width: 100%; } .support-tabs button { flex: 1 1 130px; } .support-workspace { margin: 16px 0; } }

/* Geschützte Bilder bleiben innerhalb des Ticketverlaufs. */
.support-workspace .support-image-preview { display: inline-grid; vertical-align: top; gap: 8px; width: min(220px,100%); min-height: 150px; margin: 10px 12px 0 0; padding: 10px; border: 1px solid #6a5a43; border-radius: 8px; background: #23211e; color: #eee9e0; text-align: left; font: inherit; overflow-wrap: anywhere; }
.support-workspace .support-image-preview:hover { border-color: #e4b759; background: #302719; }
.support-image-preview img { width: 100%; height: 140px; object-fit: contain; background: #121110; border-radius: 4px; }
.support-image-preview span { font-size: 13px; }
.support-image-preview .support-image-hint { color: #efd39d; }
.support-image-dialog { box-sizing: border-box; width: min(1120px,calc(100vw - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 18px; border: 1px solid #806238; border-radius: 10px; background: #171615; color: #eee9e0; box-shadow: 0 20px 80px #0009; }
.support-image-dialog[open] { display: grid; gap: 16px; }
.support-image-dialog::backdrop { background: #000d; }
.support-image-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.support-image-header h2 { margin: 0; font-size: 18px; overflow-wrap: anywhere; min-width: 0; }
.support-image-close { flex: 0 0 auto; min-height: 44px; padding: 10px 16px; border: 1px solid #806238; border-radius: 6px; background: #302719; color: #efd39d; font: inherit; cursor: pointer; }
.support-image-close:hover { background: #40321e; }
.support-image-close:focus-visible { outline: 3px solid #e4b759; outline-offset: 3px; }
.support-image-stage { min-height: 100px; display: grid; place-items: center; overflow: auto; }
.support-image-stage img { display: block; width: auto; max-width: 100%; max-height: calc(100dvh - 150px); object-fit: contain; }
@media(max-width:600px) { .support-image-dialog { padding: 12px; } .support-image-header { align-items: start; gap: 10px; } .support-image-header h2 { font-size: 15px; } }

body.support-image-open { overflow: hidden; }

/* Feld und Nachweis bilden einen zusammengehörigen Bereich. */
.support-ranking-entry { display: grid; gap: 12px; padding: 18px 0; border-bottom: 1px solid #514633; }
.support-ranking-entry:last-child { border-bottom: 0; }
.support-ranking-entry label { margin: 0; }
.support-evidence-group { margin-top: 16px; }
.support-evidence-group h4 { margin: 0 0 6px; font-size: 15px; color: #efd39d; }

/* Originalhinweise aus den Ranking- und Feedback-Tickets des Bots. */
.support-ticket-guide { margin: 20px 0; border: 1px solid #6a5a43; border-radius: 8px; background: #211e19; }
.support-ticket-guide summary { padding: 16px 18px; color: #efd39d; font-size: 18px; font-weight: 600; cursor: pointer; }
.support-guide-body { padding: 0 18px 20px; }
.support-guide-body h3 { margin: 22px 0 10px; font-size: 18px; color: #e4c58e; }
.support-guide-body p { white-space: pre-line; }
.support-guide-body ol { padding-inline-start: 1.75em; margin-inline: 0; list-style-position: outside; list-style-type: decimal; }
.support-guide-body li { margin: 8px 0; }
.support-guide-body a { color: #efd39d; text-decoration: underline; }
.support-guide-warning { padding: 14px 16px; border-left: 3px solid #e4b759; background: #302719; font-weight: 600; }
.support-guide-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.support-workspace .support-guide-image { display: grid; gap: 10px; padding: 10px; min-width: 0; border: 1px solid #6a5a43; border-radius: 6px; background: #171615; color: #efd39d; font: inherit; text-align: left; cursor: pointer; }
.support-workspace .support-guide-image:hover { background: #302719; border-color: #e4b759; }
.support-guide-image img { display: block; width: 100%; aspect-ratio: 16/9; object-fit: contain; }
.support-guide-image span { font-size: 13px; }
@media(max-width:600px) { .support-guide-gallery { grid-template-columns: minmax(0,1fr); } .support-guide-body { padding: 0 12px 16px; } .support-ticket-guide summary { padding: 14px 12px; } }
