.hk-server-rescue { box-sizing: border-box; width: min(94vw, 720px); max-height: 88dvh; overflow-y: auto; padding: 24px; border: 0; border-radius: 18px; color: #24483f; background: #fff; font-family: inherit; }
.hk-server-rescue::backdrop { background: rgba(0, 0, 0, .65); }
.hk-server-rescue h2 { margin-top: 0; font-size: 1.5rem; }
[data-tablet-server-directory-status] { font-size: .85rem; line-height: 1.4; }
.hk-server-rescue .hk-tablet-server-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 18px 0; }
.hk-server-rescue .hk-tablet-server-link { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px; border: 1px solid #c8ddd5; border-radius: 10px; background: #f2f8f5; text-decoration: none; color: #24483f; }
.hk-server-rescue .hk-tablet-server-name, .hk-server-rescue .hk-tablet-server-address { display: block; overflow-wrap: anywhere; }
.hk-server-rescue .hk-tablet-server-name { font-weight: 800; }
.hk-server-rescue .hk-tablet-server-address { font-size: .8rem; margin-top: 5px; }
.hk-server-rescue .hk-tablet-server-state { font-size: .8rem; font-weight: 800; }
.hk-server-rescue button { padding: 12px 16px; border: 0; border-radius: 10px; color: #fff; background: #00695c; font: inherit; font-weight: 750; cursor: pointer; }
.hk-server-rescue-manual { margin: 20px 0; }
.hk-server-rescue-manual input { box-sizing: border-box; display: block; width: 100%; margin: 8px 0; padding: 12px; border: 1px solid #c8ddd5; border-radius: 8px; font: inherit; }
.hk-server-rescue [data-rescue-error] { color: #a83232; }
@media (max-width: 520px) { .hk-server-rescue .hk-tablet-server-grid { grid-template-columns: 1fr; } }
