/* Kidney Dog Diet AI — shared in-app modal */
.kd-modal-lock{overflow:hidden!important}
.kd-modal-overlay{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(17,26,46,.52);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:kdModalFade .16s ease-out}
.kd-modal-dialog{width:min(430px,100%);background:#fff;border:1px solid #D6E0F5;border-radius:22px;box-shadow:0 24px 70px rgba(17,26,46,.28);overflow:hidden;transform-origin:center;animation:kdModalPop .18s ease-out}
.kd-modal-head{display:flex;align-items:center;gap:11px;padding:20px 20px 12px}
.kd-modal-icon{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:0 0 38px;background:#DBE7FE;color:#1D4ED8;font-size:20px;font-weight:900}
.kd-modal-icon.danger{background:#FEE2E2;color:#B91C1C}
.kd-modal-title{margin:0;color:#111A2E;font-size:18px;font-weight:850;line-height:1.25}
.kd-modal-body{padding:0 20px 20px;color:#526582;font-size:14px;line-height:1.6;white-space:pre-line}
.kd-modal-actions{display:flex;gap:10px;padding:14px 20px 20px;border-top:1px solid #EAF0FB}
.kd-modal-btn{min-height:46px;flex:1;border-radius:12px;padding:10px 16px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:transform .12s ease,opacity .12s ease,background .12s ease;border:1.5px solid #D6E0F5;background:#fff;color:#31517E}
.kd-modal-btn:hover,.kd-modal-btn:focus-visible{outline:none;background:#EFF4FE;border-color:#B8C9EB}
.kd-modal-btn:active{transform:scale(.985)}
.kd-modal-btn.primary{background:#2563EB;border-color:#2563EB;color:#fff}
.kd-modal-btn.primary:hover,.kd-modal-btn.primary:focus-visible{background:#1D4ED8;border-color:#1D4ED8}
.kd-modal-btn.danger{background:#DC2626;border-color:#DC2626;color:#fff}
.kd-modal-btn.danger:hover,.kd-modal-btn.danger:focus-visible{background:#B91C1C;border-color:#B91C1C}
@keyframes kdModalFade{from{opacity:0}to{opacity:1}}
@keyframes kdModalPop{from{opacity:.6;transform:scale(.96) translateY(5px)}to{opacity:1;transform:scale(1) translateY(0)}}
@media(max-width:520px){.kd-modal-overlay{padding:16px}.kd-modal-dialog{border-radius:20px}.kd-modal-head{padding:18px 18px 10px}.kd-modal-body{padding:0 18px 18px;font-size:15px}.kd-modal-actions{padding:13px 18px 18px}.kd-modal-btn{min-height:48px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.kd-modal-overlay,.kd-modal-dialog{animation:none}}
