.modal-backdrop{z-index:200;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;padding:24px;animation:.16s modal-fade-in;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius-xl);background:var(--surface-overlay);width:min(560px,100%);max-height:min(680px,100%);box-shadow:var(--shadow-xs), var(--shadow-modal);flex-direction:column;animation:.18s modal-in;display:flex}.modal-sm{width:min(420px,100%)}.modal-lg{width:min(760px,100%);max-height:min(760px,100%)}.modal-head{justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 16px;display:flex}.modal-title{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:17px;font-weight:600}.modal-hint{color:var(--ink-soft);margin:4px 0 0;font-size:13px;line-height:1.5}.modal-form{display:contents}.modal-body{flex:auto;align-content:start;gap:16px;min-height:0;padding:4px 22px 20px;display:grid;overflow-y:auto}.modal-text{color:var(--ink-body);margin:0;padding:0 22px 20px;font-size:13px;line-height:1.6}.modal-foot{border-top:1px solid var(--line);background:var(--surface-raised);border-radius:0 0 var(--radius-xl) var(--radius-xl);align-items:center;gap:12px;padding:14px 22px;display:flex}.modal-foot-actions{align-items:center;gap:8px;margin-left:auto;display:flex}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.modal-backdrop,.modal{animation:none}}@media (width<=980px){.modal-backdrop{align-items:flex-end;padding:0}.modal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:92vh}.modal-foot{border-radius:0}}
