.loader-overlay[data-v-3ad57628]{position:fixed;inset:0;z-index:99999;background:var(--c-loader-bg, #0f0800);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem}.loader-core[data-v-3ad57628]{position:relative;width:100px;height:100px;display:flex;align-items:center;justify-content:center}.loader-ring[data-v-3ad57628]{position:absolute;border-radius:50%;border:3.5px solid transparent}.loader-ring--outer[data-v-3ad57628]{inset:0;border-top-color:var(--c-primary, #e85d04);border-right-color:var(--c-accent, #ffba08);animation:spin-3ad57628 1s linear infinite}.loader-ring--inner[data-v-3ad57628]{inset:14px;border-top-color:var(--c-accent, #ffba08);border-left-color:var(--c-primary-light, #fb8500);animation:spin-3ad57628 .65s linear infinite reverse}.loader-logo[data-v-3ad57628]{width:54px;height:54px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;padding:8px;animation:pulse-glow-3ad57628 2s ease-in-out infinite}.loader-logo img[data-v-3ad57628]{width:100%;height:100%;object-fit:contain}.loader-brand[data-v-3ad57628]{text-align:center}.loader-brand__name[data-v-3ad57628]{font-family:var(--font-display, "Playfair Display", serif);font-size:1.875rem;font-weight:700;color:#fff;letter-spacing:.02em}.loader-brand__sub[data-v-3ad57628]{font-size:.9rem;color:#ffffff73;margin-top:.25rem;display:flex;align-items:center;justify-content:center;gap:0}.loader-dots-inline span[data-v-3ad57628]{animation:dot-blink-3ad57628 1.4s infinite;animation-fill-mode:both}.loader-dots-inline span[data-v-3ad57628]:nth-child(2){animation-delay:.2s}.loader-dots-inline span[data-v-3ad57628]:nth-child(3){animation-delay:.4s}.loader-dots[data-v-3ad57628]{display:flex;gap:.5rem}.loader-dots span[data-v-3ad57628]{width:8px;height:8px;border-radius:50%;background:var(--c-primary, #e85d04);animation:dot-wave-3ad57628 1.2s ease-in-out infinite}.loader-dots span[data-v-3ad57628]:nth-child(2){animation-delay:.15s;background:var(--c-primary-light, #fb8500)}.loader-dots span[data-v-3ad57628]:nth-child(3){animation-delay:.3s;background:var(--c-accent, #ffba08)}@keyframes spin-3ad57628{to{transform:rotate(360deg)}}@keyframes pulse-glow-3ad57628{0%,to{box-shadow:0 0 20px #e85d0466}50%{box-shadow:0 0 40px #e85d04bf,0 0 65px #ffba084d}}@keyframes dot-wave-3ad57628{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes dot-blink-3ad57628{0%,80%,to{opacity:0}40%{opacity:1}}.loader-fade-leave-active[data-v-3ad57628]{transition:opacity .5s ease}.loader-fade-leave-to[data-v-3ad57628]{opacity:0}.route-progress[data-v-73bf0869]{position:fixed;top:0;left:0;height:3px;width:0%;background:linear-gradient(90deg,var(--c-primary, #14582c),var(--c-primary-light, #1e7a3e));box-shadow:0 0 8px var(--c-primary-light, #1e7a3e);z-index:100000;opacity:0;transition:width .2s ease,opacity .3s ease;pointer-events:none}.route-progress.active[data-v-73bf0869]{opacity:1}.dlg-overlay[data-v-e462f60e]{position:fixed;inset:0;z-index:99998;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:var(--sp-4)}.dlg-card[data-v-e462f60e]{width:100%;max-width:400px;background:var(--c-surface);border-radius:var(--r-2xl);box-shadow:var(--shadow-lg);padding:var(--sp-7, 1.75rem) var(--sp-6) var(--sp-6);text-align:center;display:flex;flex-direction:column;align-items:center}.dlg-icon[data-v-e462f60e]{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-4);flex-shrink:0}.dlg-icon--info[data-v-e462f60e]{background:var(--c-info-bg);color:var(--c-info)}.dlg-icon--success[data-v-e462f60e]{background:var(--c-success-bg);color:var(--c-success)}.dlg-icon--error[data-v-e462f60e],.dlg-icon--danger[data-v-e462f60e]{background:var(--c-danger-bg);color:var(--c-danger)}.dlg-icon--warning[data-v-e462f60e]{background:var(--c-warning-bg);color:var(--c-warning)}.dlg-title[data-v-e462f60e]{font-family:var(--font-display);font-size:1.15rem;font-weight:700;color:var(--c-text);margin:0 0 var(--sp-2)}.dlg-msg[data-v-e462f60e]{font-size:.9rem;color:var(--c-text-muted);line-height:1.6;margin:0 0 var(--sp-6)}.dlg-type-confirm[data-v-e462f60e]{width:100%;margin-bottom:var(--sp-5)}.dlg-type-confirm .form-input[data-v-e462f60e]{text-align:center}.dlg-actions[data-v-e462f60e]{display:flex;gap:var(--sp-3);width:100%}.dlg-actions .btn[data-v-e462f60e]{flex:1;justify-content:center}.btn-danger[data-v-e462f60e]{background:var(--c-danger);color:#fff;border:1px solid var(--c-danger)}.btn-danger[data-v-e462f60e]:hover{filter:brightness(1.08)}.btn-warning[data-v-e462f60e]{background:var(--c-warning);color:#fff;border:1px solid var(--c-warning)}.btn-warning[data-v-e462f60e]:hover{filter:brightness(1.08)}.dlg-fade-enter-active[data-v-e462f60e],.dlg-fade-leave-active[data-v-e462f60e]{transition:opacity .2s ease}.dlg-fade-enter-from[data-v-e462f60e],.dlg-fade-leave-to[data-v-e462f60e]{opacity:0}.dlg-pop-enter-active[data-v-e462f60e]{transition:transform .22s cubic-bezier(.34,1.56,.64,1),opacity .18s ease}.dlg-pop-leave-active[data-v-e462f60e]{transition:transform .15s ease,opacity .15s ease}.dlg-pop-enter-from[data-v-e462f60e],.dlg-pop-leave-to[data-v-e462f60e]{opacity:0;transform:scale(.92) translateY(8px)}.wa-fab[data-v-e9f1b481]{position:fixed;left:var(--sp-5);bottom:var(--sp-5);z-index:400;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #25d36666,0 2px 8px #00000026;transition:transform var(--t-fast),box-shadow var(--t-fast);animation:wa-fab-in-e9f1b481 .3s ease}.wa-fab[data-v-e9f1b481]:hover{transform:scale(1.08);box-shadow:0 10px 28px #25d36680,0 4px 10px #0000002e}.wa-fab[data-v-e9f1b481]:active{transform:scale(.96)}@keyframes wa-fab-in-e9f1b481{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media(max-width:900px){.wa-fab[data-v-e9f1b481]{bottom:calc(62px + var(--sp-4));left:var(--sp-4);width:52px;height:52px}}@media(prefers-reduced-motion:reduce){.wa-fab[data-v-e9f1b481]{animation:none}}
