.aws-donation-modal {
    position: fixed;
    inset: 0;
    z-index: 10020;
    display: none;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 18px;
    overflow: auto;
    background: rgba(0, 0, 0, .72);
}
.aws-donation-modal.is-open { display: flex; }
.aws-donation-modal [hidden] { display: none !important; }
.aws-donation-panel {
    box-sizing: border-box;
    width: min(92vw, 540px);
    max-height: 88vh;
    padding: 20px;
    overflow-y: auto;
    border: 1px solid rgba(255, 153, 0, .65);
    border-radius: 10px;
    background: #172231;
    color: #f4f7fb;
    box-shadow: 0 18px 55px rgba(0, 0, 0, .55);
}
.aws-donation-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.aws-donation-header h2 { display: flex; align-items: center; gap: 7px; margin: 0; font-size: 1.45rem; }
.aws-donation-title-logo { width: 31px; height: 24px; object-fit: contain; }
.aws-donation-close { width: auto !important; margin: 0 !important; padding: 0 5px !important; border: 0 !important; background: transparent !important; color: #fff !important; font-size: 1.8rem !important; cursor: pointer; }
.aws-donation-greeting { margin: 16px 0; color: #dcecff; line-height: 1.6; white-space: pre-wrap; }
.aws-donation-public { display: flex; align-items: center; gap: 18px; padding: 16px; border-radius: 12px; background: rgba(255,255,255,.07); }
.aws-donation-qr { width: 190px; height: 190px; padding: 8px; border-radius: 8px; background: #fff; object-fit: contain; }
.aws-donation-hint { margin: 8px 0 0; color: rgba(255,255,255,.68); font-size: .78rem; line-height: 1.5; }
.aws-donation-admin { margin-top: 18px; padding-top: 15px; border-top: 1px solid rgba(255,255,255,.18); }
.aws-donation-admin h3 { margin: 0 0 10px; color: #ffca67; }
.aws-donation-admin label { display: grid; gap: 5px; margin-top: 9px; font-size: .78rem; font-weight: 700; }
.aws-donation-admin input, .aws-donation-admin textarea { box-sizing: border-box; width: 100%; padding: 9px; border: 1px solid #52657b; border-radius: 7px; background: #0f1925; color: #fff; font: inherit; }
.aws-donation-admin-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.aws-donation-admin-actions button { width: auto !important; margin: 0 !important; padding: 8px 12px !important; border: 1px solid #ffb84d !important; border-radius: 7px; background: rgba(255,153,0,.16) !important; color: #fff !important; cursor: pointer; }
.aws-donation-admin-actions button:disabled { cursor: wait; opacity: .6; }
@media (max-width: 560px) {
    .aws-donation-modal { padding: 10px; }
    .aws-donation-panel { width: 96vw; padding: 16px 12px; }
    .aws-donation-public { flex-direction: column; text-align: center; }
    .aws-donation-qr { width: min(70vw, 220px); height: min(70vw, 220px); }
}
