.solve-problem { margin: 20px 0; color: #b1bad6; font-size: 13px; }
.solve-problem summary { cursor: pointer; width: fit-content; color: #c0c3ff; padding: 8px 0; }
.solve-problem form { max-width: 580px; margin: 12px 0; }
.solve-problem label, .failure-review label { display: block; margin: 14px 0 8px; }
.solve-problem textarea, .failure-review textarea, .failure-review select { width: 100%; padding: 11px; border: 1px solid #3b456b; border-radius: 8px; background: #0c132b; color: #eef0ff; font: inherit; box-sizing: border-box; color-scheme: dark; }
.solve-problem textarea, .failure-review textarea { resize: vertical; }
.solve-problem button, .failure-review button { margin-top: 10px; cursor: pointer; }
.solve-problem p, .failure-review p { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.6; }
.solve-problem h3, .failure-review h3 { font-size: 14px; color: #eef0ff; }
#developer-feedback { padding: 18px; background: #111936; border-radius: 8px; margin-bottom: 14px; }
.problem-discord { display: inline-block; margin-top: 14px; color: #a5a7ff; font-size: 12px; }
.failure-review { padding: 16px; margin: 18px 0; border: 1px solid #303a5b; border-radius: 10px; background: #111936; font-size: 12px; }
.failure-review small { display: block; margin-top: 4px; color: #a1a8c7; font-size: 10px; }
.solve-problem :focus-visible, .failure-review :focus-visible { outline: 2px solid #989bff; outline-offset: 3px; }
.report-navigation { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.report-navigation .report-consent { margin: 0 0 0 auto; padding: 0; }

.problem-dialog { margin: auto; width: min(540px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow-y: auto; box-sizing: border-box; padding: 26px; border: 1px solid #354164; border-radius: 18px; background: #111936; color: #eef0ff; box-shadow: 0 24px 90px #0008; }
.problem-dialog::backdrop { background: #030817b8; backdrop-filter: blur(5px); }
.problem-dialog form { margin: 0; }
.problem-dialog header, .problem-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.problem-dialog h2 { font-size: 22px; margin: 0; }
.problem-dialog header button { margin: 0; font-size: 24px; line-height: 1; }
.problem-dialog footer { justify-content: flex-end; margin-top: 20px; }
.problem-dialog p { color: #b1bad6; margin-top: 12px; }
.problem-dialog label span, .problem-hint { color: #a1a8c7; font-size: 12px; }
.problem-secondary { border: 1px solid #3b456b; border-radius: 8px; background: #202a4a; color: #d7def7; padding: 9px 12px; font: inherit; }
.problem-time-row { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.problem-time-row input { flex: 1; min-width: 100px; width: 120px; padding: 10px; border: 1px solid #3b456b; border-radius: 8px; background: #0c132b; color: #eef0ff; font: inherit; color-scheme: dark; }
.problem-time-row button { margin: 0; }
#problem-error { color: #ffb3bd; }
.problem-dialog button:disabled { opacity: .55; cursor: wait; }
@media(max-width: 480px) { .problem-dialog { padding: 20px; } .problem-dialog h2 { font-size: 20px; } }
