.blocking-error[data-v-12b28fad]{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background-color:var(--color-background);color:var(--color-text);font-family:inherit;z-index:9999}.error-wrapper[data-v-12b28fad]{width:100%;max-width:100%;padding:1rem;display:flex;align-items:center;justify-content:center}.error-card[data-v-12b28fad]{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:.75rem;padding:3rem 2rem;max-width:600px;width:100%;text-align:center;box-shadow:0 1px 3px var(--color-shadow)}.error-icon[data-v-12b28fad]{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 1.5rem;background-color:#dc26261a;border:2px solid var(--color-error);border-radius:50%;color:var(--color-error);animation:gentle-pulse-12b28fad 2s ease-in-out infinite}.error-icon-svg[data-v-12b28fad]{font-size:3rem}@keyframes gentle-pulse-12b28fad{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.02)}}.error-title[data-v-12b28fad]{font-size:1.5rem;font-weight:600;color:var(--color-text);margin:0 0 .75rem;line-height:1.3}.error-description[data-v-12b28fad]{font-size:1rem;color:var(--color-text-secondary);margin:0 0 2rem;line-height:1.6}.error-code-badge[data-v-12b28fad]{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:var(--color-primary-bg);border:1px solid var(--color-primary);border-left:4px solid var(--color-primary);border-radius:.5rem;font-size:.875rem}.code-label[data-v-12b28fad]{color:var(--color-text-secondary);font-weight:500}.code-value[data-v-12b28fad]{font-family:Courier New,monospace;color:var(--color-primary);font-weight:600;letter-spacing:.05em}.base-button[data-v-02a3bfb8]{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;position:relative}.spinner[data-v-02a3bfb8]{width:1rem;height:1rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin-02a3bfb8 .6s linear infinite}@keyframes spin-02a3bfb8{to{transform:rotate(360deg)}}.modal-overlay[data-v-fa8e5c8f]{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-fa8e5c8f]{background:var(--color-background);border-radius:12px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header[data-v-fa8e5c8f]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border)}.modal-header h2[data-v-fa8e5c8f]{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.close-button[data-v-fa8e5c8f]{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.close-button[data-v-fa8e5c8f]:hover{background:var(--color-background-secondary);color:var(--color-text)}.modal-body[data-v-fa8e5c8f]{flex:1;padding:1.5rem;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:400px}.loading[data-v-fa8e5c8f]{color:var(--color-text-secondary);font-size:.875rem}.crop-canvas[data-v-fa8e5c8f]{display:block;max-width:100%;max-height:100%;user-select:none;-webkit-user-select:none;touch-action:none}.modal-footer[data-v-fa8e5c8f]{padding:1.5rem;border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;gap:1rem}.help-text[data-v-fa8e5c8f]{font-size:.875rem;color:var(--color-text-secondary);margin:0;display:flex;align-items:center;gap:.5rem}.help-icon[data-v-fa8e5c8f]{font-size:1rem}.button-group[data-v-fa8e5c8f]{display:flex;gap:.75rem}.crop-btn-icon[data-v-fa8e5c8f]{flex-shrink:0}@media (max-width: 768px){.modal-content[data-v-fa8e5c8f]{max-height:95vh}.modal-body[data-v-fa8e5c8f]{min-height:300px}.modal-footer[data-v-fa8e5c8f]{flex-direction:column;align-items:stretch}.help-text[data-v-fa8e5c8f]{text-align:center}.button-group[data-v-fa8e5c8f]{width:100%}.button-group button[data-v-fa8e5c8f]{flex:1}}.toast-container[data-v-16dc07c8]{position:fixed;top:1rem;left:1rem;z-index:9999;pointer-events:none;max-width:400px;width:100%}.toast-list[data-v-16dc07c8]{display:flex;flex-direction:column;gap:.75rem}.toast[data-v-16dc07c8]{pointer-events:auto;cursor:pointer;border-radius:1rem;overflow:hidden;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000001a,0 4px 16px #0000000d,inset 0 1px #ffffff1a;transition:all .3s cubic-bezier(.4,0,.2,1);transform:translateY(calc(var(--toast-index) * .5rem))}.toast[data-v-16dc07c8]:hover{transform:translateY(calc(var(--toast-index) * .5rem)) translate(.25rem);box-shadow:0 12px 40px #00000026,0 6px 20px #00000014,inset 0 1px #ffffff26}.toast-success[data-v-16dc07c8]{background:#10b98126;border-color:#10b9814d}.toast-error[data-v-16dc07c8]{background:#ef444426;border-color:#ef44444d}.toast-warning[data-v-16dc07c8]{background:#f59e0b26;border-color:#f59e0b4d}.toast-info[data-v-16dc07c8]{background:#3b82f626;border-color:#3b82f64d}.toast-content[data-v-16dc07c8]{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;position:relative}.toast-icon[data-v-16dc07c8]{flex-shrink:0;width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;margin-top:.125rem}.toast-success .toast-icon[data-v-16dc07c8]{color:#10b981}.toast-error .toast-icon[data-v-16dc07c8]{color:#ef4444}.toast-warning .toast-icon[data-v-16dc07c8]{color:#f59e0b}.toast-info .toast-icon[data-v-16dc07c8]{color:var(--color-primary)}.toast-text[data-v-16dc07c8]{flex:1;min-width:0}.toast-title[data-v-16dc07c8]{font-weight:600;font-size:.875rem;line-height:1.25;color:var(--color-text);margin-bottom:.125rem}.toast-message[data-v-16dc07c8]{font-size:.8125rem;line-height:1.4;color:var(--color-text-secondary);word-wrap:break-word}.toast-close[data-v-16dc07c8]{flex-shrink:0;width:1.5rem;height:1.5rem;border:none;background:#0000001a;border-radius:.375rem;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-muted);transition:all .2s;font-size:.75rem}.toast-close[data-v-16dc07c8]:hover{background:#0003;color:var(--color-text)}[data-theme=dark] .toast[data-v-16dc07c8]{border-color:#ffffff1a;box-shadow:0 8px 32px #0000004d,0 4px 16px #0003,inset 0 1px #ffffff0d}[data-theme=dark] .toast[data-v-16dc07c8]:hover{box-shadow:0 12px 40px #0006,0 6px 20px #00000040,inset 0 1px #ffffff14}[data-theme=dark] .toast-close[data-v-16dc07c8]{background:#ffffff1a}[data-theme=dark] .toast-close[data-v-16dc07c8]:hover{background:#fff3}.toast-enter-active[data-v-16dc07c8]{transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.toast-leave-active[data-v-16dc07c8]{transition:all .3s cubic-bezier(.4,0,1,1)}.toast-enter-from[data-v-16dc07c8],.toast-leave-to[data-v-16dc07c8]{opacity:0;transform:translate(-100%) scale(.95)}.toast-move[data-v-16dc07c8]{transition:transform .3s cubic-bezier(.4,0,.2,1)}@media (max-width: 640px){.toast-container[data-v-16dc07c8]{top:.5rem;left:.5rem;right:.5rem;max-width:none;width:auto}.toast[data-v-16dc07c8]{border-radius:.75rem}.toast-content[data-v-16dc07c8]{padding:.875rem;gap:.625rem}.toast-icon[data-v-16dc07c8]{width:1rem;height:1rem;margin-top:.25rem}.toast-title[data-v-16dc07c8]{font-size:.8125rem;font-weight:600}.toast-message[data-v-16dc07c8]{font-size:.75rem;line-height:1.3}.toast-close[data-v-16dc07c8]{width:1.25rem;height:1.25rem;font-size:.625rem}}:root{--color-primary: #1e3a8a;--color-primary-hover: #1e40af;--color-primary-light: #3b82f6;--color-primary-bg: #eff6ff;--color-background: #f9fafb;--color-surface: #ffffff;--color-surface-hover: #f3f4f6;--color-border: #e5e7eb;--color-text: #111827;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-error: #dc2626;--color-success: #059669;--color-shadow: rgba(0, 0, 0, .05);--color-overlay: rgba(0, 0, 0, .4)}[data-theme=dark]{--color-primary: #22d3ee;--color-primary-hover: #67e8f9;--color-primary-light: #0891b2;--color-primary-bg: #164e63;--color-background: #0c1222;--color-surface: #1a2332;--color-surface-hover: #243447;--color-border: #475569;--color-text: #f8fafc;--color-text-secondary: #e2e8f0;--color-text-muted: #cbd5e1;--color-error: #f87171;--color-success: #34d399;--color-shadow: rgba(0, 0, 0, .3);--color-overlay: rgba(0, 0, 0, .65)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--color-background);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100vh}[id^=section-]{scroll-margin-top:calc(var(--header-height, 4rem) + .5rem)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--color-text)}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}input,textarea,select{font-family:inherit;font-size:1rem;color:var(--color-text);background-color:var(--color-background);border:1px solid var(--color-border);border-radius:.5rem;padding:.75rem 1rem;width:100%;transition:all .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 25%,transparent)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--color-text);font-size:.875rem}button{font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;border:none;border-radius:.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-surface-hover)}button:disabled{opacity:.5;cursor:not-allowed}.error-message{color:var(--color-error);font-size:.875rem;margin-top:.25rem}.success-message{color:var(--color-success);font-size:.875rem;margin-top:.25rem}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform .3s}.slide-enter-from,.slide-leave-to{transform:translate(-100%)}
