.modal-content.modal-wide{width:min(calc(100vw - var(--space-6)), 64rem)}.modal-backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:var(--layer-modal-backdrop);position:fixed;inset:0}.modal-content{width:min(calc(100vw - var(--space-6)), 40rem);max-height:calc(100dvh - var(--space-6));background:var(--color-surface);box-shadow:var(--shadow-popup);border:1px solid var(--color-border);border-radius:var(--radius-panel);padding:var(--space-5);gap:var(--space-3);z-index:var(--layer-modal);display:grid;position:fixed;inset:50% auto auto 50%;overflow-y:auto;transform:translate(-50%,-50%)}.modal-confirm-backdrop{z-index:var(--layer-confirm-backdrop)}.modal-content.modal-confirm{z-index:var(--layer-confirm)}.modal-close{background:var(--color-hover);color:var(--color-muted);min-width:var(--control-size);min-height:var(--control-size);padding:var(--space-2);border:0;flex-shrink:0;place-items:center;display:grid}.modal-close:hover:not(:disabled){color:var(--color-text);background:var(--color-accent-soft)}.modal-heading{justify-content:space-between;align-items:center;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.modal-title{align-items:center;gap:var(--space-2);overflow-wrap:anywhere;min-width:0;display:flex}.modal-title svg{width:1.25rem;height:1.25rem;padding:var(--space-2);box-sizing:content-box;background:var(--color-accent-soft);color:var(--color-accent);border-radius:999px}.modal-danger .modal-title{color:var(--color-danger)}.modal-danger .modal-title svg{background:color-mix(in srgb, var(--color-danger) 12%, var(--color-surface));color:var(--color-danger)}.modal-warning .modal-title{color:var(--color-warning)}.modal-warning .modal-title svg{background:color-mix(in srgb, var(--color-warning) 14%, var(--color-surface));color:var(--color-warning)}.modal-backdrop[data-state=open]{animation:veil-in var(--duration-normal) var(--ease-out)}.modal-backdrop[data-state=closed]{animation:veil-in var(--duration-fast) reverse}.modal-content[data-state=open]{animation:modal-in var(--duration-normal) var(--ease-out)}.modal-content[data-state=closed]{animation:modal-in var(--duration-fast) reverse}@keyframes veil-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.97)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (width<=600px){.modal-content,.modal-content.modal-wide{width:calc(100vw - var(--space-4));max-height:calc(100dvh - var(--space-4));padding:var(--space-4)}}
