:root{--nt-modal-accent:#10b981;--nt-modal-overlay:rgba(15,23,42,.76);--nt-modal-radius:24px;--nt-modal-z:9000}
html.nt-modal-scroll-lock,html.nt-modal-scroll-lock body{overflow:hidden!important;overscroll-behavior:none}
.nt-modal-overlay{position:fixed;inset:0;z-index:var(--nt-modal-z);display:none;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow:hidden;background:var(--nt-modal-overlay);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.nt-modal-overlay.nt-modal-open{display:flex!important;animation:ntModalFade .18s ease both}.nt-modal-panel{display:flex;width:min(100%,520px);max-height:min(94dvh,900px);min-height:0;overflow:hidden;flex-direction:column;border:1px solid rgba(148,163,184,.24);border-radius:var(--nt-modal-radius);background:#fff;box-shadow:0 28px 80px rgba(2,6,23,.34);animation:ntModalPanel .22s cubic-bezier(.2,.8,.2,1) both}.nt-modal--compact .nt-modal-panel{width:min(100%,500px)}.nt-modal--editor .nt-modal-panel{width:min(100%,1000px)}.nt-modal-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#fff}.nt-modal-header h1,.nt-modal-header h2,.nt-modal-header h3{margin:0;color:#0f172a;font-size:20px;font-weight:900;letter-spacing:-.02em}.nt-modal-body{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:22px 24px;scrollbar-gutter:stable}.nt-modal-footer{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:10px;padding:14px 24px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #e2e8f0;background:#fff}.nt-modal-footer button,.nt-modal-close{min-height:44px}.nt-modal-close{min-width:44px;display:grid;place-items:center;border-radius:12px;color:#64748b;background:#f1f5f9}.nt-modal-overlay :focus-visible{outline:3px solid color-mix(in srgb,var(--nt-modal-accent) 32%,transparent);outline-offset:2px}
.nt-modal-panel:not(:has(>.nt-modal-body)):not(:has(>.nt-modal-header)){overflow-y:auto;overscroll-behavior:contain}
.nt-modal--drawer{align-items:stretch;justify-content:flex-end;padding:0}.nt-modal--drawer .nt-modal-panel{width:min(100%,460px);height:100dvh;max-height:none;border-radius:0;border-width:0 0 0 1px;animation-name:ntModalDrawer}.nt-modal--sheet{align-items:flex-end;padding:0}.nt-modal--sheet .nt-modal-panel{width:100%;max-width:none;max-height:88dvh;border-radius:24px 24px 0 0;animation-name:ntModalSheet}
@keyframes ntModalFade{from{opacity:0}to{opacity:1}}@keyframes ntModalPanel{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@keyframes ntModalDrawer{from{transform:translateX(100%)}to{transform:none}}@keyframes ntModalSheet{from{transform:translateY(100%)}to{transform:none}}
@media(max-width:900px){.nt-modal--editor .nt-modal-panel{width:min(100%,620px)}.nt-modal-header{padding:17px 18px}.nt-modal-body{padding:18px}.nt-modal-footer{padding:12px 18px calc(12px + env(safe-area-inset-bottom))}}
@media(max-width:520px){.nt-modal-overlay:not(.nt-modal--drawer){align-items:flex-end;padding:0}.nt-modal-overlay:not(.nt-modal--drawer) .nt-modal-panel{width:100%;max-width:none;max-height:94dvh;border-radius:22px 22px 0 0}.nt-modal-footer>*{flex:1;min-width:0}.nt-modal--compact .nt-modal-body{padding:17px 16px}}
@media(prefers-reduced-motion:reduce){.nt-modal-overlay,.nt-modal-panel{animation:none!important;transition:none!important}}
