.dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:0;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--card-border);border-radius:14px;box-shadow:0 24px 64px rgba(15,23,42,.22);color:var(--text)}.dialog::-webkit-backdrop{background:rgba(15,23,42,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog::backdrop{background:rgba(15,23,42,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}dialog.dialog:not([open]){display:none}.dialog-wide{width:min(880px,calc(100vw - 32px))}.dialog:focus{outline:none}.dialog[open]{animation:dialog-rise .18s ease-out}.dialog[open]::-webkit-backdrop{animation:dialog-fade .15s ease-out}.dialog[open]::backdrop{animation:dialog-fade .15s ease-out}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 16px;border-bottom:1px solid var(--border-soft)}.dialog-title{margin:0;font-size:17px;font-weight:650;letter-spacing:-.02em;color:var(--text)}.dialog-desc{margin:6px 0 0;max-width:64ch;color:var(--muted);font-size:13px;line-height:1.6}.dialog-close{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.dialog-close:hover{background:var(--surface-2);color:var(--text)}.dialog-body{padding:18px 22px 22px;overflow-y:auto}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:16px 22px 20px;border-top:1px solid var(--border-soft)}@keyframes dialog-fade{0%{opacity:0}}@keyframes dialog-rise{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.dialog[open]::-webkit-backdrop{animation:none}.dialog[open],.dialog[open]::backdrop{animation:none}}.confirm{width:min(440px,calc(100vw - 32px))}.confirm .dialog-body{padding:20px 22px 0}.confirm-title{margin:0;font-size:17px;font-weight:650;letter-spacing:-.02em;color:var(--text)}.confirm-body{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.6;white-space:pre-line}.confirm-danger,.confirm-danger:hover{background:var(--red);border-color:var(--red);color:#fff}.confirm-danger:hover{filter:brightness(.94)}