#overlay { overflow-y: auto; padding: 24px 12px; box-sizing: border-box; justify-content: safe center; }
#overlay > * { flex-shrink: 0; }
#player-recovery { width: min(460px, calc(100vw - 32px)); color: #e9edf7; font-size: 13px; letter-spacing: 0; }
#player-recovery summary { cursor: pointer; color: #d1dff6; text-align: center; padding: 9px; }
#player-recovery .recovery-body { padding: 18px; background: #182131; border: 1px solid #64738d; border-radius: 8px; margin-top: 8px; }
#overlay #player-recovery p { font-size: 13px; letter-spacing: 0; line-height: 1.5; opacity: 1; margin: 0 0 12px; color: #c4cfe2; }
#player-recovery label { display: block; font-weight: 600; margin-bottom: 8px; }
#player-recovery input, #player-recovery textarea { box-sizing: border-box; width: 100%; background: #0d1523; color: #f1f5ff; border: 1px solid #8191ad; border-radius: 5px; padding: 10px; font: 13px monospace; }
#player-recovery textarea { resize: none; min-height: 76px; }
#player-recovery input::placeholder { color: #aebed7; }
#player-recovery button { background: #304966; border: 1px solid #819fbe; color: #fff; font-family: inherit; font-size: 13px; font-weight: 600; padding: 9px 12px; border-radius: 5px; cursor: pointer; min-height: 38px; }
#player-recovery button:hover { background: #3e5a7e; }
#player-recovery button:disabled { opacity: .5; cursor: wait; }
#player-recovery :is(button,input,textarea,summary):focus-visible { outline: 3px solid #b3d3ff; outline-offset: 3px; }
#player-recovery .recovery-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
#recovery-generated { margin-top: 18px; }
#recovery-restore-form { border-top: 1px solid #56667d; margin-top: 18px; padding-top: 18px; }
#recovery-status { line-height: 1.5; margin-top: 10px; color: #c4cfe2; overflow-wrap: anywhere; }
#recovery-status[data-state=error] { color: #ffa99e; }
#recovery-status[data-state=success] { color: #8eebb8; }
