@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.toast-container[data-v-bfd7a0b1]{position:fixed;top:calc(var(--safe-area-top) + 16px);left:50%;transform:translate(-50%);z-index:9999;width:calc(100% - 32px);max-width:400px;display:flex;flex-direction:column;gap:var(--space-sm);pointer-events:none}.toast-item[data-v-bfd7a0b1]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--text-body-md);font-weight:500;box-shadow:var(--shadow-lg);pointer-events:auto;cursor:pointer}.toast-item--info[data-v-bfd7a0b1]{background:var(--color-on-surface);color:var(--color-surface)}.toast-item--success[data-v-bfd7a0b1]{background:var(--color-success);color:#fff}.toast-item--error[data-v-bfd7a0b1]{background:var(--color-error);color:#fff}.toast-item--warning[data-v-bfd7a0b1]{background:var(--color-warning);color:var(--color-on-warning)}.toast-item__icon[data-v-bfd7a0b1]{font-size:18px;flex-shrink:0}.toast-item__message[data-v-bfd7a0b1]{flex:1}.toast-enter-active[data-v-bfd7a0b1]{transition:all .3s ease}.toast-leave-active[data-v-bfd7a0b1]{transition:all .2s ease}.toast-enter-from[data-v-bfd7a0b1]{transform:translateY(-20px);opacity:0}.toast-leave-to[data-v-bfd7a0b1]{transform:translate(100%);opacity:0}#app{position:relative;overflow-x:hidden}:root{--color-primary: #4c18ac;--color-primary-dark: #3a1285;--color-primary-light: #6b3dc4;--color-primary-container: #e9ddff;--color-on-primary: #ffffff;--color-on-primary-container: #1b0058;--color-secondary: #625b71;--color-secondary-container: #e8def8;--color-on-secondary: #ffffff;--color-on-secondary-container: #1d192b;--color-tertiary: #7d5260;--color-tertiary-container: #ffd8e4;--color-error: #ba1a1a;--color-error-container: #ffdad6;--color-on-error: #ffffff;--color-on-error-container: #410002;--color-success: #198754;--color-success-container: #d1f4e5;--color-on-success: #ffffff;--color-warning: #ffc107;--color-warning-container: #fff3cd;--color-on-warning: #000000;--color-background: #fffbfe;--color-surface: #fffbfe;--color-surface-variant: #e7e0ec;--color-on-surface: #1c1b1f;--color-on-surface-variant: #49454f;--color-outline: #79747e;--color-outline-variant: #cac4d0;--gradient-primary: linear-gradient(180deg, #5c28bc 0%, #4c18ac 30%, #3a1285 70%, #2a0d65 100%);--gradient-primary-card: linear-gradient(135deg, #4c18ac, #6b3dc4);--gradient-patrol-card: linear-gradient(135deg, #1565c0, #42a5f5);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-xxl: 48px;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .16);--icon-xs: 16px;--icon-sm: 20px;--icon-md: 24px;--icon-lg: 32px;--icon-xl: 48px;--button-sm: 40px;--button-md: 48px;--button-lg: 56px;--font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-display-lg: 57px;--text-display-md: 45px;--text-display-sm: 36px;--text-headline-lg: 32px;--text-headline-md: 28px;--text-headline-sm: 24px;--text-title-lg: 22px;--text-title-md: 16px;--text-title-sm: 14px;--text-body-lg: 16px;--text-body-md: 14px;--text-body-sm: 12px;--text-label-lg: 14px;--text-label-md: 12px;--text-label-sm: 11px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;height:100%}body{font-family:var(--font-family);background:var(--color-background);color:var(--color-on-surface);line-height:1.5;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:100dvh;max-width:430px;margin:0 auto;position:relative;overflow-x:hidden}#app{min-height:100dvh;display:flex;flex-direction:column}button,a,nav,.no-select{user-select:none;-webkit-user-select:none}button,a,[role=button],.touchable{min-height:44px;min-width:44px}::-webkit-scrollbar{display:none}*{scrollbar-width:none}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}input,select,textarea{font-size:16px}a{color:var(--color-primary);text-decoration:none}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}h1{font-size:var(--text-headline-lg);font-weight:700}h2{font-size:var(--text-headline-md);font-weight:600}h3{font-size:var(--text-headline-sm);font-weight:600}h4{font-size:var(--text-title-lg);font-weight:600}h5{font-size:var(--text-title-md);font-weight:600}h6{font-size:var(--text-title-sm);font-weight:600}@media(min-width:431px){body{box-shadow:0 0 40px #0000001a;min-height:100vh}}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active{transition:transform .3s cubic-bezier(.25,.8,.25,1),opacity .3s ease;position:absolute;width:100%;top:0;left:0}.slide-left-enter-from{transform:translate(100%);opacity:0}.slide-left-leave-to{transform:translate(-30%);opacity:0}.slide-right-enter-from{transform:translate(-100%);opacity:0}.slide-right-leave-to{transform:translate(30%);opacity:0}.fade-enter-active,.fade-leave-active{transition:opacity .25s ease}.fade-enter-from,.fade-leave-to{opacity:0}.sheet-enter-active{transition:transform .3s cubic-bezier(.32,.72,0,1)}.sheet-leave-active{transition:transform .25s cubic-bezier(.32,.72,0,1)}.sheet-enter-from,.sheet-leave-to{transform:translateY(100%)}.backdrop-enter-active,.backdrop-leave-active{transition:opacity .25s ease}.backdrop-enter-from,.backdrop-leave-to{opacity:0}@keyframes scaleIn{0%{transform:scale(0);opacity:0}60%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes fadeInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.px-lg{padding-left:var(--space-lg);padding-right:var(--space-lg)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.text-center{text-align:center}.text-sm{font-size:var(--text-body-sm)}.text-md{font-size:var(--text-body-md)}.text-lg{font-size:var(--text-body-lg)}.text-muted{color:var(--color-on-surface-variant)}.text-primary{color:var(--color-primary)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.w-full{width:100%}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-hidden{overflow:hidden}.overflow-auto{overflow-y:auto;-webkit-overflow-scrolling:touch}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.press-effect{transition:transform .15s ease;cursor:pointer}.press-effect:active{transform:scale(.96)}
