.ui-button::before{content:"";display:inline-block;width:17px;height:17px;margin-right:8px;vertical-align:-3px;flex-shrink:0;background:currentColor;mask:var(--ui-icon) center/contain no-repeat;-webkit-mask:var(--ui-icon) center/contain no-repeat}.ui-button{position:relative}.ui-button.ui-icon-only{font-size:0!important}.ui-icon-only::before{margin:0;vertical-align:middle}.ui-button:disabled{cursor:not-allowed}.ui-button.ui-busy{color:transparent!important;cursor:wait;pointer-events:none;opacity:.75}.ui-busy>*{visibility:hidden}.ui-busy::before{visibility:hidden}.ui-busy::after{content:"";position:absolute;left:calc(50% - 9px);top:calc(50% - 9px);width:18px;height:18px;border:2px solid #95829f;border-top-color:#d9c5ee;border-radius:50%;animation:ui-spin .75s linear infinite}.ui-snack-region{position:fixed;z-index:2000;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(520px,calc(100% - 32px));display:grid;gap:10px}.ui-snackbar{display:flex;gap:18px;align-items:center;padding:17px 20px;border:1px solid #ffffff30;background:#302635;color:#fff;border-radius:14px;box-shadow:0 12px 40px #24182d30;font-size:14px;line-height:1.5;animation:ui-enter .18s ease-out}.ui-snackbar>span{flex:1}.ui-snackbar a{color:#e5d2fa;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.ui-snackbar button{background:none;color:inherit;border:0;min-width:32px;min-height:32px;cursor:pointer}.ui-error{background:#552e3d}.ui-modal{box-sizing:border-box;width:min(460px,calc(100% - 32px));max-height:85dvh;padding:32px;border:1px solid #e2dbe6;border-radius:20px;background:#fbf8f3;color:#302635;box-shadow:0 24px 90px #21152938}.ui-modal::backdrop{background:#241b3066;backdrop-filter:blur(4px)}.ui-modal h2{font-size:25px;letter-spacing:-.7px;line-height:1.2;margin:0 0 16px}.ui-modal p{font-size:14px;line-height:1.75;white-space:pre-line;margin:0}.ui-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.ui-modal-actions button{border:1px solid #d9d0df;border-radius:9px;padding:12px 16px;background:transparent;font:inherit;font-size:13px;cursor:pointer}.ui-modal-actions .ui-primary{background:#302635;color:#fff;border-color:#302635}.ui-button:focus-visible{outline:2px solid #9b76b7;outline-offset:4px}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-enter{from{opacity:0;transform:translateY(8px)}}@media(prefers-reduced-motion:reduce){.ui-snackbar{animation:none}.ui-busy::after{animation-duration:1.8s}}@media(max-width:480px){.ui-modal{padding:25px}.ui-modal-actions{flex-wrap:wrap}.ui-snackbar{gap:10px;padding:14px}}
