.tw-dialog-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.48);backdrop-filter:blur(2px);animation:tw-dialog-fade .14s ease-out}
.tw-dialog{display:flex;gap:16px;width:min(440px,100%);padding:24px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 24px 64px rgba(15,23,42,.24);color:#0f172a;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;animation:tw-dialog-pop .16s ease-out}
.tw-dialog__icon{display:flex;flex:0 0 40px;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9999px;background:#eff6ff;color:#2563eb;font-size:20px;font-weight:700}
.tw-dialog__icon.is-confirm{background:#fff7ed;color:#c2410c}
.tw-dialog__content{min-width:0;flex:1;padding-top:2px}
.tw-dialog__title{margin:0;color:#0f172a;font-size:16px;font-weight:700;line-height:1.5}
.tw-dialog__message{margin-top:7px;color:#475569;font-size:14px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
.tw-dialog__input{display:block;box-sizing:border-box;width:100%;min-height:104px;margin-top:12px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font:inherit;font-size:14px;line-height:1.5;resize:vertical}
.tw-dialog__input[type="text"]{height:42px;min-height:42px;resize:none}
.tw-dialog__input:focus{border-color:#3b82f6;outline:3px solid rgba(59,130,246,.2)}
.tw-dialog__actions{display:flex;flex:0 0 100%;justify-content:flex-end;gap:9px;margin-top:6px}
.tw-dialog{flex-wrap:wrap}
.tw-dialog__button{min-width:88px;min-height:38px;padding:8px 15px;border:1px solid transparent;border-radius:8px;font:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s}
.tw-dialog__button:focus-visible{outline:3px solid rgba(59,130,246,.35);outline-offset:2px}
.tw-dialog__button.is-primary{background:#2563eb;color:#fff}
.tw-dialog__button.is-primary:hover{background:#1d4ed8}
.tw-dialog__button.is-secondary{border-color:#cbd5e1;background:#fff;color:#334155}
.tw-dialog__button.is-secondary:hover{background:#f8fafc}
@keyframes tw-dialog-fade{from{opacity:0}to{opacity:1}}
@keyframes tw-dialog-pop{from{opacity:0;transform:translateY(5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.tw-dialog-overlay,.tw-dialog{animation:none}}
