.offline-banner[data-v-b456f30c]{position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:430px;background:#f59e0b;color:#fff;text-align:center;padding:8px 16px;font-size:.85rem;font-weight:600;z-index:1000;display:flex;align-items:center;justify-content:center;gap:6px}.offline-icon[data-v-b456f30c]{font-size:1rem}.slide-enter-active[data-v-b456f30c],.slide-leave-active[data-v-b456f30c]{transition:transform .3s ease,opacity .3s ease}.slide-enter-from[data-v-b456f30c],.slide-leave-to[data-v-b456f30c]{transform:translate(-50%) translateY(-100%);opacity:0}.app-shell[data-v-88a2f201]{min-height:100dvh;display:flex;justify-content:center;background:var(--color-bg)}.app-frame[data-v-88a2f201]{width:100%;max-width:430px;min-height:100dvh;display:flex;flex-direction:column;background:var(--color-bg);position:relative;box-shadow:none}@media(min-width:640px){.app-shell[data-v-88a2f201]{background:#f0f0f0;padding:0}.app-frame[data-v-88a2f201]{box-shadow:0 0 40px #00000014;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #e91e8c;--color-primary-light: #f06cb5;--color-primary-dark: #c2176f;--color-bg: #fafafa;--color-surface: #ffffff;--color-text: #1a1a2e;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-error: #ef4444;--color-success: #22c55e;--radius: 12px;--shadow: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{cursor:pointer;border:none;font-family:inherit}input{font-family:inherit}.btn-primary{background:var(--color-primary);color:#fff;padding:14px 24px;border-radius:var(--radius);font-size:1rem;font-weight:600;transition:background .2s;width:100%}.btn-primary:hover{background:var(--color-primary-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.input-field{width:100%;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;background:var(--color-surface);transition:border-color .2s}.input-field:focus{outline:none;border-color:var(--color-primary)}
