.modal-overlay{z-index:200;-webkit-backdrop-filter:blur(10px)saturate(140%);animation:modal-fade-in .16s var(--ease-soft,cubic-bezier(.22, .61, .36, 1));background:#0f16228c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{background:var(--paper,#fff);border:1px solid var(--hairline,#e2e5ea);max-height:86vh;animation:modal-pop-in .22s var(--ease-quint,cubic-bezier(.16, 1, .3, 1));border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 24px 60px #0f16222e}.modal-panel--sm{width:min(420px,100%)}.modal-panel--md{width:min(560px,100%)}.modal-panel--lg{width:min(720px,100%)}.modal-panel--xl{width:min(960px,100%)}.modal-panel--fit{width:fit-content;max-width:100%}.modal-header{border-bottom:1px solid var(--hairline-soft,#edeff3);align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.modal-header__title{letter-spacing:-.02em;color:var(--ink,#2f3237);flex:1;margin:0;font-size:16px;font-weight:700}.modal-header__desc{color:var(--ink-muted,#64686e);margin-top:4px;font-size:12.5px;line-height:1.45}.modal-close{color:var(--ink-faint,#a6acb6);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}.modal-close:hover{background:var(--surface-soft,#f8f9fb);color:var(--ink,#2f3237)}.modal-close:disabled{opacity:.45;cursor:not-allowed}.modal-body{color:var(--ink-muted,#64686e);flex:1;padding:18px 20px;font-size:13.5px;line-height:1.5;overflow-y:auto}.modal-body strong{color:var(--ink,#2f3237);font-weight:600}.modal-body ul{margin:10px 0 0;padding-left:1.15em}.modal-footer{border-top:1px solid var(--hairline-soft,#edeff3);background:var(--paper,#fff);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:14px 20px;display:flex}.modal-footer .tg-btn{min-height:36px}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-pop-in{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.modal-overlay,.modal-panel{animation:none}}
