@keyframes app-modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes app-modal-panel-in{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.app-modal-overlay{z-index:2500;background:#00000085;justify-content:center;align-items:flex-start;padding:2rem 1rem;animation:.2s ease-out app-modal-overlay-in;display:flex;position:fixed;inset:0;overflow-y:auto}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.app-modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}.app-modal-overlay--centered{align-items:stretch;padding:1.5rem 1rem}.app-modal-panel{border-radius:var(--radius-lg,.75rem);border:1px solid var(--app-border,#334155);background:var(--app-surface,#1e293b);width:min(960px,95vw);max-height:calc(100dvh - 4rem);box-shadow:var(--shadow-lg,0 16px 48px #00000059);flex-direction:column;animation:.2s ease-out app-modal-panel-in;display:flex;overflow:hidden}.app-modal-panel--narrow{width:min(480px,95vw)}.app-modal-panel--wide{width:min(1100px,92vw);max-height:calc(100dvh - 3rem);margin:auto}.app-modal-panel--viewport-fill{height:calc(100dvh - 4rem);max-height:calc(100dvh - 4rem);overflow:hidden}.app-modal-panel--natural{max-height:none;margin-block:0;overflow:visible}.app-modal-panel__header{border-bottom:1px solid color-mix(in srgb, var(--app-border,#334155) 65%, transparent);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1.15rem;display:flex}.app-modal-panel__title{font-size:1.125rem;font-weight:600;font-family:var(--font-display);color:var(--app-text);margin:0}.app-modal-panel__close{border-radius:var(--radius-sm,.375rem);width:2rem;height:2rem;color:var(--app-text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1.35rem;line-height:1;display:inline-flex}.app-modal-panel__close:hover:not(:disabled){background:color-mix(in srgb, var(--app-text) 8%, transparent);color:var(--app-text)}.app-modal-panel__close:disabled{opacity:.45;cursor:default}@media (prefers-reduced-motion:reduce){.app-modal-overlay,.app-modal-panel{animation:none}}
