.app-toast-region{z-index:var(--fs-z-overlay,1200);pointer-events:none;gap:.75rem;width:min(24rem,100vw - 2rem);display:grid;position:fixed;inset-block-start:max(1rem, env(safe-area-inset-top));inset-inline-end:max(1rem, env(safe-area-inset-right))}.app-toast{pointer-events:auto;border:1px solid var(--border,var(--line-1,#94a3b847));border-inline-start:4px solid var(--accent,#38bdf8);border-radius:var(--radius-lg,16px);background:var(--surface-elevated,var(--surface-1,#111827));color:var(--text-primary,var(--text-1,#f8fafc));box-shadow:var(--shadow,var(--shadow-lg,0 22px 56px #0000003d));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:.85rem .95rem;display:grid}.app-toast--success{border-inline-start-color:var(--success,#22c55e)}.app-toast--error{border-inline-start-color:var(--danger,#ef4444)}.app-toast--warning{border-inline-start-color:var(--warning,#f59e0b)}.app-toast--info{border-inline-start-color:var(--accent,#38bdf8)}.app-toast__content{min-width:0}.app-toast__title{margin:0 0 .2rem;font-size:.9rem;line-height:1.2;display:block}.app-toast__message{color:var(--text-secondary,var(--text-2,#cbd5e1));margin:0;font-size:.88rem;line-height:1.45}.app-toast__close,.app-feedback-dialog__close{color:var(--text-secondary,var(--text-2,#cbd5e1));cursor:pointer;background:0 0;border:0;border-radius:999px;line-height:1}.app-toast__close{width:1.8rem;height:1.8rem;font-size:1.25rem}.app-toast__close:hover,.app-feedback-dialog__close:hover{color:var(--text-primary,var(--text-1,#f8fafc));background:color-mix(in srgb, var(--accent,#38bdf8) 14%, transparent)}.app-toast__close:focus-visible,.app-feedback-dialog__close:focus-visible,.app-feedback-dialog__button:focus-visible{outline:var(--focus-ring,2px solid #38bdf88c);outline-offset:2px}.app-feedback-dialog__overlay{z-index:var(--fs-z-modal,1300);background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent,#38bdf8) 12%, transparent), transparent 42%), #02061794;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.app-feedback-dialog{border:1px solid var(--border,var(--line-1,#94a3b847));border-radius:var(--radius-xl,22px);background:var(--surface-elevated,var(--surface-1,#111827));width:min(30rem,100%);color:var(--text-primary,var(--text-1,#f8fafc));box-shadow:var(--shadow,var(--shadow-xl,0 28px 72px #00000057));padding:1.25rem}.app-feedback-dialog--danger{border-color:color-mix(in srgb, var(--danger,#ef4444) 45%, var(--border,var(--line-1)))}.app-feedback-dialog__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.app-feedback-dialog__title{margin:0;font-size:1.08rem;line-height:1.25}.app-feedback-dialog__close{width:2rem;height:2rem;font-size:1.35rem}.app-feedback-dialog__message{color:var(--text-secondary,var(--text-2,#cbd5e1));margin-block-start:.85rem;font-size:.94rem;line-height:1.55}.app-feedback-dialog__field{color:var(--text-primary,var(--text-1,#f8fafc));gap:.5rem;margin-block-start:1rem;display:grid}.app-feedback-dialog__textarea{resize:vertical;min-height:6.25rem}.app-feedback-dialog__actions{justify-content:flex-end;gap:.7rem;margin-block-start:1.25rem;display:flex}.app-feedback-dialog__button--cancel{background:color-mix(in srgb, var(--surface-elevated,var(--surface-1)) 78%, var(--text-secondary,#cbd5e1))}.app-feedback-dialog__button--danger{border-color:color-mix(in srgb, var(--danger,#ef4444) 70%, transparent)}@media (width<=640px){.app-toast-region{width:auto;inset-inline:1rem}.app-feedback-dialog__actions{flex-direction:column-reverse}}.operation-overlay{z-index:calc(var(--fs-z-modal,1300) + 20);place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.operation-overlay__backdrop{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent,#38bdf8) 11%, transparent), transparent 42%), #0206179e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute;inset:0}.operation-overlay__dialog{border:1px solid var(--border,var(--line-1,#94a3b847));border-radius:var(--radius-xl,22px);background:var(--surface-elevated,var(--surface-1,#111827));width:min(32rem,100%);color:var(--text-primary,var(--text-1,#f8fafc));box-shadow:var(--shadow,var(--shadow-xl,0 28px 72px #00000057));outline:none;padding:1.3rem;position:relative}.operation-overlay__dialog:focus-visible{outline:var(--focus-ring,2px solid #38bdf88c);outline-offset:4px}.operation-overlay__status{align-items:flex-start;gap:1rem;display:flex}.operation-overlay__indicator{border:3px solid color-mix(in srgb, var(--accent,#38bdf8) 28%, transparent);border-top-color:var(--accent,#38bdf8);width:3rem;height:3rem;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--surface-elevated,#111827) 70%, transparent);border-radius:999px;flex:none;animation:.9s linear infinite operation-overlay-spin}.operation-overlay__indicator--success{border-color:color-mix(in srgb, var(--success,#22c55e) 55%, transparent);color:var(--success,#22c55e);place-items:center;font-size:1.35rem;font-weight:700;animation:none;display:grid}.operation-overlay__copy{min-width:0}.operation-overlay__eyebrow{color:var(--text-secondary,var(--text-2,#cbd5e1));letter-spacing:.04em;text-transform:uppercase;margin:0 0 .25rem;font-size:.8rem}.operation-overlay__title{margin:0;font-size:1.08rem;line-height:1.25}.operation-overlay__description{color:var(--text-secondary,var(--text-2,#cbd5e1));margin:.7rem 0 0;font-size:.94rem;line-height:1.55}.operation-overlay__hint{color:var(--text-secondary,var(--text-2,#cbd5e1));margin:.85rem 0 0;font-size:.82rem;line-height:1.45}.operation-overlay__step{color:var(--text-primary,var(--text-1,#f8fafc));justify-content:space-between;align-items:center;gap:.75rem;margin:.8rem 0 0;font-size:.88rem;line-height:1.45;display:flex}.operation-overlay__step-progress{color:var(--text-secondary,var(--text-2,#cbd5e1));font-variant-numeric:tabular-nums;flex:none}.operation-overlay__progress{background:color-mix(in srgb, var(--accent,#38bdf8) 15%, transparent);border-radius:999px;width:100%;height:.45rem;margin:.55rem 0 0;position:relative;overflow:hidden}.operation-overlay__progress-bar{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--accent,#38bdf8) 86%, white 8%), color-mix(in srgb, var(--accent,#38bdf8) 62%, white 18%));height:100%;transition:width .18s;display:block}@keyframes operation-overlay-spin{to{transform:rotate(360deg)}}@media (width<=640px){.operation-overlay__status{gap:.85rem}.operation-overlay__indicator{width:2.7rem;height:2.7rem}}
