.toast-viewport{z-index:var(--z-toast);pointer-events:none;flex-direction:column;align-items:flex-end;gap:10px;width:min(460px,100vw - 32px);display:flex;position:fixed;bottom:24px;right:24px}.toast-list{flex-direction:column;align-items:flex-end;gap:10px;width:100%;display:flex}.toast-list:empty{display:none}.toast{border-radius:var(--r-lg);background:var(--n-900);color:#fff;max-width:100%;min-height:52px;box-shadow:var(--sh-3);font-size:var(--fs-15);line-height:20px;font-weight:var(--fw-semibold);text-align:left;align-items:center;gap:12px;padding:12px 16px;display:flex}.toast-viewport .toast{pointer-events:auto;animation:toast-in var(--dur) var(--ease);padding-right:6px}.toast>.icon{stroke-width:2.2px;width:22px;height:22px}.toast-success>.icon{color:#8edba6}.toast-error>.icon{color:#ffb1a6}.toast-text{flex:1;min-width:0}.toast-action{border-radius:var(--r-sm);min-height:32px;color:var(--gold-300);font-weight:var(--fw-bold);white-space:nowrap;flex:none;margin-left:auto;padding:6px 4px 6px 12px;text-decoration:none}.toast-action:hover{text-decoration:underline}.toast-close{border-radius:var(--r-md);color:#fff;opacity:.72;width:36px;height:36px;transition:opacity var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);flex:none;place-items:center;display:grid}.toast-close .icon{stroke-width:2.2px;width:18px;height:18px}.toast-close:hover{opacity:1;background:#ffffff1f}.toast-action:focus-visible{box-shadow:0 0 0 2px var(--n-900), 0 0 0 4.5px #fff;opacity:1}.toast-close:focus-visible{box-shadow:0 0 0 2px var(--n-900), 0 0 0 4.5px #fff;opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}@media (min-width:1024px){body.toast-top .toast-viewport{align-items:center;top:24px;bottom:auto;left:50%;right:auto;transform:translate(-50%)}body.toast-top .toast-list{align-items:center}body.toast-top .toast-viewport .toast{animation-name:toast-in-top}}@keyframes toast-in-top{0%{opacity:0;transform:translateY(-10px)}}@media (max-width:1023px){.toast-viewport{width:auto;left:16px;right:16px;bottom:calc(var(--tabbar-h,0px) + 12px + env(safe-area-inset-bottom));align-items:stretch}.toast-list{align-items:stretch}.toast-viewport .toast{font-size:var(--fs-16);min-height:56px;line-height:22px}.toast-action{min-height:var(--hit)}.toast-close{width:var(--hit);height:var(--hit)}}@media (max-width:599.98px){body:has(.overlay-modal) .toast-viewport{bottom:auto;top:calc(12px + env(safe-area-inset-top))}}.spinner{width:24px;height:24px;color:inherit;flex:none;place-items:center;display:inline-grid}.spinner svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;width:100%;height:100%;animation:.8s linear infinite spinner-turn}.spinner-track{opacity:.22}.spinner-sm{width:16px;height:16px}.spinner-sm svg{stroke-width:3px}.spinner-lg{width:40px;height:40px;color:var(--n-400)}.spinner-lg svg{stroke-width:2px}.page-spinner{min-height:240px;padding:var(--sp-8);flex:1;place-items:center;display:grid}@keyframes spinner-turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner svg{animation:1.2s ease-in-out infinite spinner-blink!important}@keyframes spinner-blink{50%{opacity:.35}}}.btn{min-height:var(--control-h);min-width:var(--control-h);padding:0 var(--control-px);border-radius:var(--control-radius);color:var(--color-text);font-family:inherit;font-size:var(--control-font);font-weight:var(--fw-bold);text-align:center;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);background:0 0;border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;line-height:1.15;text-decoration:none;display:inline-flex;position:relative}.btn .icon{stroke-width:2px;width:1.2em;height:1.2em}.btn.is-focus{box-shadow:0 0 0 2px #fff, 0 0 0 5px var(--color-focus);outline:none}.btn:focus-visible{box-shadow:0 0 0 2px #fff, 0 0 0 5px var(--color-focus);outline:none}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover,.btn-primary.is-hover{background:var(--color-primary-hover)}.btn-primary:active,.btn-primary.is-pressed{background:var(--color-primary-pressed)}.btn-secondary{background:var(--n-0);border-color:var(--n-300);color:var(--n-900)}.btn-secondary:hover,.btn-secondary.is-hover{background:var(--n-50);border-color:var(--n-400)}.btn-secondary:active,.btn-secondary.is-active{background:var(--n-100);border-color:var(--n-900)}.btn-tonal{background:var(--n-100);color:var(--n-900)}.btn-tonal:hover{background:var(--n-150)}.btn-tonal:active{background:var(--n-200)}.btn-ghost{color:var(--n-900);padding:0 12px}.btn-ghost:hover{background:var(--n-100)}.btn-ghost:active{background:var(--n-150)}.btn-link{color:var(--color-link);min-width:0;padding:0 4px}.btn-link:hover{text-decoration:underline}.btn-link-neutral{color:var(--n-900);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1.5px}.btn-link-neutral:hover{color:var(--n-700)}.btn-approve{background:var(--color-approve);color:#fff}.btn-approve:hover{background:var(--color-approve-hover)}.btn-approve:active{background:var(--green-700)}.btn-danger{background:var(--n-0);border-color:var(--danger-600);color:var(--danger-600)}.btn-danger:hover{background:var(--danger-50)}.btn-danger:active{background:var(--danger-100)}.btn-inverse{color:var(--red-500);background:#fff}.btn-inverse:hover{background:var(--red-50)}.btn[disabled],.btn.is-disabled,.btn[aria-disabled=true]:not(.is-loading){background:var(--n-100);color:var(--color-text-disabled);cursor:not-allowed;box-shadow:none;border-color:#0000;text-decoration:none}.btn-link[disabled],.btn-link.is-disabled,.btn-ghost[disabled],.btn-ghost.is-disabled{background:0 0}.btn-lg{--control-h:56px;--control-font:var(--fs-18);--control-radius:14px}.btn-sm{--control-h:32px;--control-px:12px;--control-font:var(--fs-13);--control-radius:6px}.btn-block{width:100%;display:flex}.btn-icon{width:var(--control-h);padding:0}.btn-icon .icon{width:1.35em;height:1.35em}.btn-on-brand{color:#fff}.btn-on-brand:hover{background:#ffffff24}.btn-on-brand:focus-visible{box-shadow:0 0 0 2px var(--red-600), 0 0 0 5px #fff}.btn-block .btn-label,.density-touch .btn .btn-label{white-space:normal}.btn-block{padding-top:6px;padding-bottom:6px}.btn.is-loading{cursor:progress}.btn.is-loading>:not(.btn-spinner){visibility:hidden}.btn-spinner{place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.btn-spinner .spinner{width:1.25em;height:1.25em}@media (pointer:coarse){.btn-sm:after{content:"";height:var(--hit);min-width:var(--hit);position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.btn-sm.btn-icon:after{width:var(--hit);left:50%;right:auto;transform:translate(-50%,-50%)}.btn-link{min-height:var(--hit)}}.empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:32px 24px;display:flex}.empty-fig{place-items:center;margin-bottom:8px;display:grid;position:relative}.empty-mark{width:72px;height:69px;color:var(--n-300);fill:var(--n-50);stroke:currentColor;stroke-width:3px}.empty-fig .icon{color:var(--n-500);position:absolute;top:24px}.empty-title{font-size:var(--fs-18);line-height:1.3;font-weight:var(--fw-bold)}.empty-text{color:var(--color-text-secondary);max-width:34ch}.empty-action{margin-top:10px}.empty-compact{gap:6px;padding:20px 16px}.empty-compact .empty-mark{width:56px;height:54px}.empty-compact .empty-fig .icon{width:22px;height:22px;top:18px}.empty-compact .empty-title{font-size:var(--fs-16)}
