@keyframes tut-fade{0%{opacity:0}to{opacity:1}}@keyframes tut-pop{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}@keyframes tut-step-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}.tut-help-btn{border-radius:var(--ui-radius-md);border:1px solid var(--ui-border);background:var(--ui-surface);min-width:36px;height:36px;color:var(--ui-text-2);font-family:var(--ui-font);font-size:var(--ui-text-sm);cursor:pointer;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease), border-color var(--ui-fast) var(--ui-ease);flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex;position:relative}.tut-help-btn:hover{background:var(--ui-primary-soft);border-color:var(--ui-primary);color:var(--ui-primary-text)}.tut-help-btn--icon-only{width:36px;padding:0}.tut-help-btn__dot{background:var(--ui-primary);border:2px solid var(--ui-surface);border-radius:50%;width:9px;height:9px;position:absolute;top:-3px;right:-3px}.tut-prompt{right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:9990;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-xl);width:min(340px,100vw - 24px);box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);animation:tut-pop .24s var(--ui-ease);gap:12px;padding:16px;display:flex;position:fixed}.tut-prompt__badge{border-radius:var(--ui-radius-md);background:var(--ui-gradient-brand);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.tut-prompt__content{flex:1;min-width:0}.tut-prompt__title{color:var(--ui-text);margin:0;font-size:1rem;font-weight:800}.tut-prompt__desc{color:var(--ui-text-2);margin:4px 0 12px;font-size:.9rem;line-height:1.45}.tut-prompt__actions{justify-content:flex-end;gap:8px;display:flex}.tut-deck-overlay{z-index:9996;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);font-family:var(--ui-font);animation:tut-fade .18s var(--ui-ease);background:#0f172a99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.tut-deck{background:var(--ui-surface);touch-action:pan-y;-webkit-user-select:none;user-select:none;width:min(460px,100%);max-height:calc(100dvh - 32px);animation:tut-pop .24s var(--ui-ease);border-radius:22px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px -16px #0f172a80}.tut-deck__visual{aspect-ratio:16/10;border-bottom:1px solid var(--ui-border);background:#eef2f7;flex-shrink:0;position:relative}.tut-scene{width:100%;height:100%;display:block}.tut-deck__close{color:#fff;cursor:pointer;background:#0f172a99;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:absolute;top:10px;right:10px}.tut-deck__close:hover{background:#0f172acc}.tut-deck__body{animation:tut-step-in .22s var(--ui-ease);padding:18px 22px 4px;overflow-y:auto}.tut-deck__progress{gap:6px;margin-bottom:14px;display:flex}.tut-deck__seg{background:var(--ui-border);cursor:pointer;height:5px;transition:background .2s var(--ui-ease);border:none;border-radius:3px;flex:1;padding:0}.tut-deck__seg.is-on{background:var(--ui-primary)}.tut-deck__eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--ui-primary-text);margin-bottom:6px;font-size:.78rem;font-weight:700}.tut-deck__title{color:var(--ui-text);margin:0 0 6px;font-size:1.4rem;font-weight:800;line-height:1.25}.tut-deck__text{color:var(--ui-text-2);margin:0;font-size:1.06rem;line-height:1.5}.tut-deck__footer{padding:18px 22px calc(18px + env(safe-area-inset-bottom,0px));gap:10px;display:flex}.tut-deck__btn{flex:1;justify-content:center;height:48px;font-size:1rem;font-weight:700}.tut-deck__btn--main{flex:2}@media (width<=640px){.tut-deck-overlay{align-items:flex-end;padding:0}.tut-deck{border-radius:22px 22px 0 0;width:100%;max-height:94dvh}.tut-prompt{width:auto;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}}.tut-launcher-overlay{z-index:9995;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);font-family:var(--ui-font);animation:tut-fade .16s var(--ui-ease);background:#0f172a8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.tut-launcher{background:var(--ui-surface);border:1px solid var(--ui-border);width:min(480px,100%);max-height:min(86dvh,640px);box-shadow:var(--ui-shadow-lg);animation:tut-pop .2s var(--ui-ease);border-radius:22px;flex-direction:column;display:flex;overflow:hidden}.tut-launcher__header{justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 12px;display:flex}.tut-launcher__title{color:var(--ui-text);margin:0;font-size:1.25rem;font-weight:800}.tut-launcher__sub{color:var(--ui-text-muted);margin:4px 0 0;font-size:.9rem}.tut-launcher__close{background:var(--ui-surface-3);width:36px;height:36px;color:var(--ui-text-2);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tut-launcher__body{flex-direction:column;gap:10px;padding:8px 20px 16px;display:flex;overflow-y:auto}.tut-tour-item{text-align:left;border:1px solid var(--ui-border);background:var(--ui-surface);cursor:pointer;width:100%;min-height:72px;transition:border-color var(--ui-fast) var(--ui-ease), background var(--ui-fast) var(--ui-ease);border-radius:16px;align-items:center;gap:14px;padding:12px 14px;font-family:inherit;display:flex}.tut-tour-item:hover{border-color:var(--ui-primary);background:var(--ui-primary-soft)}.tut-tour-item.is-here{border-color:var(--ui-primary);box-shadow:0 0 0 1px var(--ui-primary) inset}.tut-tour-item__icon{background:var(--ui-primary-soft);width:44px;height:44px;color:var(--ui-primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tut-tour-item__info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tut-tour-item__title{color:var(--ui-text);font-size:1rem;font-weight:700}.tut-tour-item__desc{color:var(--ui-text-muted);font-size:.86rem;line-height:1.4}.tut-tour-item__go{background:var(--ui-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.tut-tour-item__go.is-done{background:var(--ui-success-soft);color:var(--ui-success)}.tut-launcher__footer{padding:12px 20px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--ui-border);background:var(--ui-surface-2);justify-content:space-between;align-items:center;gap:10px;display:flex}.tut-coach-toggle{color:var(--ui-text-2);cursor:pointer;align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:inline-flex}.tut-coach-toggle input{width:18px;height:18px}.tut-coach{z-index:35;border-radius:var(--ui-radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#f8fafc;max-width:min(440px,100% - 24px);font-family:var(--ui-font);pointer-events:auto;animation:tut-fade .2s var(--ui-ease);background:#0f172ae6;align-items:center;gap:8px;padding:6px 6px 6px 12px;font-size:.86rem;font-weight:600;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #00000040}.tut-coach__icon{color:#fbbf24;flex-shrink:0}.tut-coach__text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.tut-coach__cta{border-radius:var(--ui-radius-full);color:#fff;white-space:nowrap;cursor:pointer;background:#3b82f6;border:none;flex-shrink:0;align-items:center;gap:4px;height:28px;padding:0 12px;font-family:inherit;font-size:.8rem;font-weight:700;display:inline-flex}.tut-coach__cta:hover{background:#2563eb}.tut-coach__close{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.tut-coach__close:hover{color:#fff;background:#ffffff1f}@media (width<=640px){.tut-coach{font-size:.8rem;top:8px}}.nt-toasts{top:calc(16px + env(safe-area-inset-top,0px));z-index:20000;pointer-events:none;width:min(380px,100vw - 24px);font-family:var(--ui-font);flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;right:16px}@media (width<=640px){.nt-toasts{top:calc(10px + env(safe-area-inset-top,0px));align-items:stretch;right:50%;transform:translate(50%)}}.nt-toast{--nt-tone:var(--ui-primary);--nt-tone-soft:var(--ui-primary-soft);background:var(--ui-surface);width:100%;color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-lg);pointer-events:auto;animation:nt-toast-in .26s var(--ui-ease) both;align-items:flex-start;gap:12px;padding:12px 10px 14px 12px;display:flex;position:relative;overflow:hidden}.nt-toast--success{--nt-tone:var(--ui-success);--nt-tone-soft:var(--ui-success-soft)}.nt-toast--error{--nt-tone:var(--ui-danger);--nt-tone-soft:var(--ui-danger-soft)}.nt-toast--warning{--nt-tone:var(--ui-warning);--nt-tone-soft:var(--ui-warning-soft)}.nt-toast--info{--nt-tone:var(--ui-info);--nt-tone-soft:var(--ui-info-soft)}.nt-toast__icon{background:var(--nt-tone-soft);width:34px;height:34px;color:var(--nt-tone);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.nt-toast__body{flex:1;min-width:0;padding-top:1px}.nt-toast__title{font-size:.92rem;font-weight:700;line-height:1.3}.nt-toast__msg{color:var(--ui-text-muted);overflow-wrap:anywhere;margin-top:2px;font-size:.84rem;line-height:1.4}.nt-toast__title+.nt-toast__msg{margin-top:3px}.nt-toast__body>.nt-toast__msg:first-child{color:var(--ui-text);margin-top:6px;font-weight:500}.nt-toast__close{width:30px;height:30px;color:var(--ui-text-faint);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.nt-toast__close:hover{background:var(--ui-border-subtle);color:var(--ui-text)}.nt-toast__timer{background:var(--nt-tone);opacity:.55;transform-origin:0;width:100%;height:3px;animation:linear forwards nt-toast-timer;position:absolute;bottom:0;left:0}@keyframes nt-toast-in{0%{opacity:0;transform:translateY(-10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes nt-toast-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.nt-overlay{z-index:20010;background:var(--ui-overlay);-webkit-backdrop-filter:blur(3px);font-family:var(--ui-font);animation:nt-fade-in .16s var(--ui-ease) both;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.nt-dialog{--nt-tone:var(--ui-primary);--nt-tone-soft:var(--ui-primary-soft);background:var(--ui-surface);width:min(420px,100%);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-xl);box-shadow:var(--ui-shadow-lg);animation:nt-dialog-in .2s var(--ui-ease) both;padding:22px 22px 18px}.nt-dialog--danger,.nt-dialog--error{--nt-tone:var(--ui-danger);--nt-tone-soft:var(--ui-danger-soft)}.nt-dialog--warning{--nt-tone:var(--ui-warning);--nt-tone-soft:var(--ui-warning-soft)}.nt-dialog--success{--nt-tone:var(--ui-success);--nt-tone-soft:var(--ui-success-soft)}.nt-dialog--info{--nt-tone:var(--ui-info);--nt-tone-soft:var(--ui-info-soft)}.nt-dialog__icon{background:var(--nt-tone-soft);width:44px;height:44px;color:var(--nt-tone);border-radius:12px;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.nt-dialog__title{color:var(--ui-text);margin:0;font-size:1.12rem;font-weight:700;line-height:1.3}.nt-dialog__msg{color:var(--ui-text-muted);white-space:pre-line;margin:8px 0 0;font-size:.92rem;line-height:1.5}.nt-dialog__copy{background:var(--ui-bg);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);align-items:center;gap:8px;margin-top:14px;padding:8px 8px 8px 12px;display:flex}.nt-dialog__copy code{min-width:0;color:var(--ui-text);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;flex:1;font-size:.78rem}.nt-dialog__actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.nt-btn{border-radius:var(--ui-radius-md);min-height:42px;font:inherit;cursor:pointer;touch-action:manipulation;transition:background var(--ui-fast) var(--ui-ease), transform 80ms var(--ui-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-size:.92rem;font-weight:650;display:inline-flex}.nt-btn:active{transform:scale(.97)}.nt-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.nt-btn--sm{flex-shrink:0;min-height:34px;padding:0 12px;font-size:.82rem}.nt-btn--primary{background:var(--ui-gradient-primary);color:var(--ui-text-on-primary);box-shadow:var(--ui-shadow-primary)}.nt-btn--danger{background:var(--ui-danger);color:#fff}.nt-btn--secondary{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border-strong)}.nt-btn--secondary:hover{background:var(--ui-bg)}@keyframes nt-fade-in{0%{opacity:0}to{opacity:1}}@keyframes nt-dialog-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.nt-overlay{align-items:flex-end;padding:0}.nt-dialog{width:100%;padding:22px 20px calc(16px + env(safe-area-inset-bottom,0px));border-radius:var(--ui-radius-xl) var(--ui-radius-xl) 0 0;border-bottom:none;animation-name:nt-sheet-in}.nt-dialog__actions{flex-direction:column-reverse}.nt-dialog__actions .nt-btn{width:100%;min-height:50px;font-size:1rem}}@keyframes nt-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.nt-toast,.nt-overlay,.nt-dialog{animation:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-md:13px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand-blue:#3b82f6;--color-surface:#fff;--color-text-primary:#111827;--color-border:#e5e7eb;--font-family-base:"Inter", system-ui, -apple-system, sans-serif;--font-size-body:16px;--transition-fast:.15s ease}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.start\!{inset-inline-start:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mt-4{margin-top:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\!ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)!important}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;font-family:var(--font-family-base);font-size:var(--font-size-body);color:var(--color-text-primary);background:var(--color-surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}body{overscroll-behavior:none;touch-action:manipulation}.mapboxgl-ctrl-group{overflow:hidden;border-radius:var(--radius-md)!important;box-shadow:0 2px 8px #0000001f!important}.mapboxgl-ctrl-top-right{top:90px!important}.mapboxgl-ctrl-group button{width:40px!important;height:40px!important}.my-location-marker{width:20px;height:20px;position:relative}.my-location-marker__dot{z-index:2;background:#fff;border:3px solid #3b82f6;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;line-height:1;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #00000040}.my-location-marker__ring{z-index:1;background:#3b82f633;border-radius:50%;width:40px;height:40px;animation:2s ease-out infinite location-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes location-pulse{0%{opacity:1;transform:translate(-50%,-50%)scale(.5)}to{opacity:0;transform:translate(-50%,-50%)scale(2)}}.map-pin{cursor:pointer;width:28px;height:28px;transform:rotate(-45deg) scale(var(--pin-scale,1));will-change:transform;transition:transform var(--transition-fast);border:3px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 2px 6px #0000004d}.map-pin:hover{transform:rotate(-45deg) scale(calc(var(--pin-scale,1) * 1.15))}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #f9731666}70%{transform:scale(1.05);box-shadow:0 0 0 10px #f9731600}to{transform:scale(1);box-shadow:0 0 #f9731600}}.loading-spinner{border:3px solid var(--color-border);border-top-color:var(--color-brand-blue);border-radius:50%;width:34px;height:34px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.team-marker{cursor:pointer;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:relative}.team-marker__pulse{background:#3b82f640;border-radius:50%;animation:2s ease-out infinite teamPulse;position:absolute;inset:0}.team-marker__dot{color:#fff;border:3px solid var(--color-brand-blue);z-index:1;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;font-weight:700;line-height:1;display:flex;position:relative;box-shadow:0 2px 8px #00000040}.team-marker--dashboard .team-marker__dot{width:32px;height:32px;font-size:13px}@keyframes teamPulse{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(2)}}@media (width<=1023px){.dash-main{padding:76px 16px 16px!important}}.map-pin-container{justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative}.map-pin-note-indicator{color:#fff;z-index:10;pointer-events:none;background:#2563eb;border:1.5px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 2px 4px #00000040}.map-pin-tooltip{color:#f8fafc;font-family:var(--font-family-base);pointer-events:none;opacity:0;visibility:hidden;z-index:9999;white-space:normal;text-align:left;background:#0f172af2;border:1px solid #ffffff26;border-radius:8px;width:200px;padding:8px 12px;font-size:12px;line-height:1.4;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;bottom:38px;left:50%;transform:translate(-50%)scale(.85);box-shadow:0 4px 12px #00000059}.map-pin-tooltip:after{content:"";border:6px solid #0000;border-top-color:#0f172af2;position:absolute;top:100%;left:50%;transform:translate(-50%)}.map-pin-container:hover .map-pin-tooltip{opacity:1;visibility:visible;transform:translate(-50%)scale(1)}.map-pin-tooltip__header{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #ffffff1a;margin-bottom:4px;padding-bottom:4px;font-size:10px;font-weight:700}.map-pin-tooltip__body{word-break:break-word;color:#e2e8f0;max-height:120px;overflow-y:auto}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes hailPopoverIn{0%{opacity:0;transform:translate(-50%,-46%)scale(.96)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.hail-filter-backdrop{-webkit-backdrop-filter:blur(2px);z-index:999;background:#00000073;animation:.18s ease-out stormBackdropFade;position:fixed;inset:0}@keyframes stormBackdropFade{0%{opacity:0}to{opacity:1}}.hail-filter-popover__header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.hail-filter-popover__header h4{color:#fff;letter-spacing:.02em;margin:0;font-size:15px;font-weight:700}.hail-filter-popover__section{margin-bottom:14px}.hail-filter-popover__label{color:#ffffff80;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:600;display:block}.hail-filter-popover__size-btns{grid-template-columns:1fr 1fr;gap:6px;display:grid}.hail-size-btn{color:#fffc;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.hail-size-btn:hover{background:#ffffff1a;border-color:#fff3}.hail-size-btn--active{border-color:var(--hail-btn-color,#fff6);color:#fff;background:#ffffff26;box-shadow:0 0 8px #ffffff1a}.hail-size-btn__dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.hail-filter-popover__date-btns{grid-template-columns:1fr 1fr;gap:6px;display:grid}.hail-date-btn{color:#fffc;cursor:pointer;text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:600;transition:all .15s}.hail-date-btn:hover{background:#ffffff1a}.hail-date-btn--active{color:#fff;background:#3b82f64d;border-color:#3b82f699}.hail-filter-popover__legend{border-top:1px solid #ffffff14;flex-direction:column;gap:4px;margin-bottom:10px;padding:10px 0;display:flex}.hail-legend-item{color:#ffffffb3;align-items:center;gap:8px;font-size:11px;display:flex}.hail-legend-swatch{opacity:.9;border-radius:3px;flex-shrink:0;width:14px;height:14px}.hail-filter-popover__off-btn{color:#fca5a5;cursor:pointer;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;width:100%;padding:8px;font-size:12px;font-weight:600;transition:all .15s}.hail-filter-popover__off-btn:hover{background:#ef444433;border-color:#ef444480}.hail-popup{min-width:140px;padding:4px 2px}.hail-popup__badge{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;margin-bottom:6px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.hail-popup__size{color:#1e293b;margin-bottom:2px;font-size:14px;font-weight:700}.hail-popup__date{color:#64748b;font-size:12px}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.knock-badge{color:#fbbf24;background:#1e293b;border:2px solid #fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-8px;box-shadow:0 1px 3px #0000004d}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--ui-primary:#3b82f6;--ui-primary-strong:#2563eb;--ui-primary-soft:#eff6ff;--ui-primary-soft-2:#dbeafe;--ui-primary-text:#1d4ed8;--ui-accent:#6366f1;--ui-gradient-primary:linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--ui-gradient-brand:linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--ui-bg:#f4f7fb;--ui-bg-tint:radial-gradient(900px 500px at 15% -10%, #3b82f614, transparent 60%), radial-gradient(800px 500px at 110% 110%, #8b5cf60f, transparent 60%), #f4f7fb;--ui-surface:#fff;--ui-surface-2:#f8fafc;--ui-surface-3:#f1f5f9;--ui-sidebar:#fff;--ui-overlay:#0f172a73;--ui-border:#e2e8f0;--ui-border-strong:#cbd5e1;--ui-border-subtle:#0f172a0f;--ui-text:#0f172a;--ui-text-2:#334155;--ui-text-muted:#64748b;--ui-text-faint:#94a3b8;--ui-text-on-primary:#fff;--ui-success:#16a34a;--ui-success-soft:#dcfce7;--ui-warning:#d97706;--ui-warning-soft:#fef3c7;--ui-danger:#dc2626;--ui-danger-soft:#fee2e2;--ui-info:#0284c7;--ui-info-soft:#e0f2fe;--ui-violet:#7c3aed;--ui-violet-soft:#ede9fe;--ui-radius-sm:8px;--ui-radius-md:12px;--ui-radius-lg:14px;--ui-radius-xl:20px;--ui-radius-full:999px;--ui-shadow-sm:0 1px 2px #0f172a0d;--ui-shadow-md:0 1px 2px #0f172a0a, 0 8px 24px -8px #0f172a1a;--ui-shadow-lg:0 1px 2px #0f172a0a, 0 16px 40px -12px #0f172a2e;--ui-shadow-primary:0 8px 18px -8px #2563eba6;--ui-focus-ring:0 0 0 4px #3b82f62e;--ui-font:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--ui-text-xs:.72rem;--ui-text-sm:.8125rem;--ui-text-md:.875rem;--ui-text-lg:1rem;--ui-text-xl:1.25rem;--ui-text-2xl:1.5rem;--ui-ease:cubic-bezier(.4, 0, .2, 1);--ui-fast:.15s}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ui-primary:#3b82f6;--ui-primary-strong:#60a5fa;--ui-primary-soft:#3b82f624;--ui-primary-soft-2:#3b82f638;--ui-primary-text:#93c5fd;--ui-accent:#818cf8;--ui-bg:#0b1120;--ui-bg-tint:radial-gradient(900px 500px at 15% -10%, #3b82f61a, transparent 60%), radial-gradient(800px 500px at 110% 110%, #8b5cf614, transparent 60%), #0b1120;--ui-surface:#111827;--ui-surface-2:#0f172a;--ui-surface-3:#1e293b;--ui-sidebar:#0f172a;--ui-overlay:#0009;--ui-border:#1e293b;--ui-border-strong:#334155;--ui-border-subtle:#ffffff0f;--ui-text:#f1f5f9;--ui-text-2:#cbd5e1;--ui-text-muted:#94a3b8;--ui-text-faint:#64748b;--ui-success:#4ade80;--ui-success-soft:#22c55e26;--ui-warning:#fbbf24;--ui-warning-soft:#f59e0b26;--ui-danger:#f87171;--ui-danger-soft:#ef444426;--ui-info:#38bdf8;--ui-info-soft:#0ea5e926;--ui-violet:#a78bfa;--ui-violet-soft:#8b5cf629;--ui-shadow-sm:0 1px 2px #0006;--ui-shadow-md:0 1px 2px #0006, 0 8px 24px -8px #00000080;--ui-shadow-lg:0 1px 2px #0006, 0 16px 40px -12px #0009;--ui-shadow-primary:0 8px 18px -8px #2563eb99;--ui-focus-ring:0 0 0 4px #3b82f64d}.ui-page{max-width:1280px;margin:0 auto}.ui-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;display:flex}.ui-page-header__title{font-size:var(--ui-text-2xl);letter-spacing:-.02em;color:var(--ui-text);margin:0;font-weight:700}.ui-page-header__subtitle{font-size:var(--ui-text-md);color:var(--ui-text-muted);margin:4px 0 0}.ui-page-header__actions{align-items:center;gap:8px;display:flex}.ui-card{background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-md)}.ui-card--pad{padding:20px}.ui-card__header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.ui-card__title{font-size:var(--ui-text-lg);color:var(--ui-text);margin:0;font-weight:700}.ui-card__body{padding:20px}.ui-label{font-size:var(--ui-text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-text-muted);margin-bottom:8px;font-weight:700;display:block}.ui-btn{border-radius:var(--ui-radius-sm);height:38px;font-family:var(--ui-font);font-size:var(--ui-text-md);white-space:nowrap;cursor:pointer;transition:background-color var(--ui-fast) var(--ui-ease), border-color var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease), transform var(--ui-fast) var(--ui-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:600;line-height:1;display:inline-flex}.ui-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.ui-btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.ui-btn--lg{border-radius:var(--ui-radius-md);height:46px;padding:0 18px;font-size:.95rem}.ui-btn--sm{height:30px;font-size:var(--ui-text-sm);padding:0 10px}.ui-btn--block{width:100%}.ui-btn--icon{width:36px;padding:0}.ui-btn--primary{background:var(--ui-gradient-primary);color:var(--ui-text-on-primary);box-shadow:var(--ui-shadow-primary)}.ui-btn--primary:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.ui-btn--secondary{background:var(--ui-surface);color:var(--ui-text-2);border-color:var(--ui-border);box-shadow:var(--ui-shadow-sm)}.ui-btn--secondary:hover:not(:disabled){background:var(--ui-surface-2);border-color:var(--ui-border-strong)}.ui-btn--ghost{color:var(--ui-text-muted);background:0 0}.ui-btn--ghost:hover:not(:disabled){background:var(--ui-surface-3);color:var(--ui-text)}.ui-btn--danger{background:var(--ui-danger-soft);color:var(--ui-danger)}.ui-btn--danger:hover:not(:disabled){background:var(--ui-danger);color:#fff}.ui-input,.ui-select,.ui-textarea{box-sizing:border-box;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface-2);width:100%;height:42px;color:var(--ui-text);font-family:var(--ui-font);font-size:var(--ui-text-md);transition:border-color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease);outline:none;padding:0 12px}.ui-textarea{resize:vertical;height:auto;min-height:90px;padding:10px 12px}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--ui-text-faint)}.ui-input:focus,.ui-select:focus,.ui-textarea:focus{background:var(--ui-surface);border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring)}.ui-input--sm,.ui-select--sm{height:34px;font-size:var(--ui-text-sm)}.ui-field{flex-direction:column;gap:6px;display:flex}.ui-field__label{font-size:var(--ui-text-sm);color:var(--ui-text-2);font-weight:600}.ui-field__hint{font-size:var(--ui-text-xs);color:var(--ui-text-muted)}.ui-segmented{border-radius:var(--ui-radius-md);background:var(--ui-surface-3);border:1px solid var(--ui-border);gap:4px;padding:4px;display:flex}.ui-segmented__btn{color:var(--ui-text-muted);font-family:var(--ui-font);font-size:var(--ui-text-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease);background:0 0;border:none;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:7px 8px;font-weight:600;display:flex}.ui-segmented__btn:hover:not(.is-active){color:var(--ui-text)}.ui-segmented__btn.is-active{background:var(--ui-surface);color:var(--ui-primary-strong);box-shadow:var(--ui-shadow-sm), 0 2px 6px #0f172a0f}.ui-tabs{border-bottom:1px solid var(--ui-border);gap:4px;display:flex}.ui-tabs__btn{color:var(--ui-text-muted);font-family:var(--ui-font);font-size:var(--ui-text-md);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:600}.ui-tabs__btn:hover{color:var(--ui-text)}.ui-tabs__btn.is-active{color:var(--ui-primary-strong);border-bottom-color:var(--ui-primary)}.ui-badge{border-radius:var(--ui-radius-full);font-size:var(--ui-text-xs);background:var(--ui-surface-3);color:var(--ui-text-2);align-items:center;gap:4px;padding:2px 8px;font-weight:700;line-height:1.5;display:inline-flex}.ui-badge--primary{background:var(--ui-primary-soft-2);color:var(--ui-primary-text)}.ui-badge--success{background:var(--ui-success-soft);color:var(--ui-success)}.ui-badge--warning{background:var(--ui-warning-soft);color:var(--ui-warning)}.ui-badge--danger{background:var(--ui-danger-soft);color:var(--ui-danger)}.ui-badge--violet{background:var(--ui-violet-soft);color:var(--ui-violet)}.ui-icon-badge{background:var(--ui-primary-soft);width:40px;height:40px;color:var(--ui-primary-strong);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ui-icon-badge--success{background:var(--ui-success-soft);color:var(--ui-success)}.ui-icon-badge--warning{background:var(--ui-warning-soft);color:var(--ui-warning)}.ui-icon-badge--danger{background:var(--ui-danger-soft);color:var(--ui-danger)}.ui-icon-badge--violet{background:var(--ui-violet-soft);color:var(--ui-violet)}.ui-icon-badge--info{background:var(--ui-info-soft);color:var(--ui-info)}.ui-table-wrap{overflow-x:auto}.ui-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--ui-text-md);color:var(--ui-text-2)}.ui-table th{z-index:1;text-align:left;font-size:var(--ui-text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--ui-text-muted);background:var(--ui-surface-2);border-bottom:1px solid var(--ui-border);padding:10px 16px;font-weight:700;position:sticky;top:0}.ui-table td{border-bottom:1px solid var(--ui-border);padding:12px 16px}.ui-table tr:last-child td{border-bottom:none}.ui-table tbody tr:hover td{background:var(--ui-surface-2)}.ui-modal-overlay{z-index:3000;background:var(--ui-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ui-modal{background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-xl);width:100%;max-width:520px;max-height:calc(100vh - 32px);box-shadow:var(--ui-shadow-lg);overflow-y:auto}.ui-modal__header{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.ui-modal__title{font-size:var(--ui-text-lg);color:var(--ui-text);margin:0;font-weight:700}.ui-modal__body{padding:20px}.ui-modal__footer{border-top:1px solid var(--ui-border);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.ui-empty{text-align:center;color:var(--ui-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:48px 24px;display:flex}.ui-empty__icon{background:var(--ui-surface-3);width:52px;height:52px;color:var(--ui-text-faint);border-radius:14px;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.ui-empty__title{font-size:var(--ui-text-lg);color:var(--ui-text);margin:0;font-weight:700}.ui-divider{color:var(--ui-text-faint);font-size:var(--ui-text-xs);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:12px;font-weight:600;display:flex}.ui-divider:before,.ui-divider:after{content:"";background:var(--ui-border);flex:1;height:1px}.fa-spin{animation:.8s linear infinite fa-spin}@keyframes fa-spin{to{transform:rotate(360deg)}}.fa-page{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;width:100%;height:100%;padding:calc(20px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(20px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));box-sizing:border-box;background:var(--ui-bg-tint);color:var(--ui-text);font-family:var(--ui-font);flex-direction:column;display:flex;overflow-y:auto}.fa-card{box-sizing:border-box;background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-xl);width:100%;max-width:400px;box-shadow:var(--ui-shadow-lg);margin:auto;padding:28px 24px 24px}@media (width>=420px){.fa-card{padding:32px 32px 28px}}.fa-brand{text-align:center;margin-bottom:24px}.fa-brand__logo{justify-content:center;align-items:center;width:84px;height:84px;margin:0 auto 14px;display:flex}.fa-brand__logo img{filter:drop-shadow(0 8px 18px #0f172a38)}.fa-brand__title{letter-spacing:-.02em;color:var(--ui-text);margin:0;font-size:1.5rem;font-weight:800;line-height:1.2}.fa-brand__title span{color:var(--ui-primary-strong)}.fa-brand__subtitle{font-size:var(--ui-text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ui-text-muted);margin:6px 0 0;font-weight:700}.fa-form{flex-direction:column;gap:16px;display:flex}.fa-intro{color:var(--ui-text-2);text-align:center;margin:0;font-size:.95rem;line-height:1.55}.fa-field{flex-direction:column;gap:6px;display:flex}.fa-label{font-size:var(--ui-text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-text-2);font-weight:700}.fa-input-wrap{position:relative}.fa-input-wrap__icon{color:var(--ui-text-faint);pointer-events:none;transition:color var(--ui-fast) var(--ui-ease);position:absolute;top:50%;left:15px;transform:translateY(-50%)}.fa-input-wrap:focus-within .fa-input-wrap__icon{color:var(--ui-primary)}.fa-input{box-sizing:border-box;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-2);width:100%;height:50px;color:var(--ui-text);font-family:var(--ui-font);appearance:none;transition:border-color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease);outline:none;padding:0 14px 0 44px;font-size:16px}.fa-input::placeholder{color:var(--ui-text-faint)}.fa-input:focus{background:var(--ui-surface);border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring)}.fa-input--mono{letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.fa-alert{--fa-tone:var(--ui-danger);--fa-tone-soft:var(--ui-danger-soft);border-radius:var(--ui-radius-md);background:var(--fa-tone-soft);border:1px solid color-mix(in srgb, var(--fa-tone) 28%, transparent);color:var(--ui-text);align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;font-weight:500;line-height:1.45;display:flex}.fa-alert svg{color:var(--fa-tone);flex-shrink:0;margin-top:1px}.fa-alert--success{--fa-tone:var(--ui-success);--fa-tone-soft:var(--ui-success-soft)}.fa-btn{box-sizing:border-box;border-radius:var(--ui-radius-md);width:100%;min-height:52px;font-family:var(--ui-font);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease), filter var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:1rem;font-weight:700;display:flex}.fa-btn:active:not(:disabled){transform:scale(.98)}.fa-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fa-btn:disabled{opacity:.65;cursor:not-allowed}.fa-btn--primary{background:var(--ui-gradient-primary);color:var(--ui-text-on-primary);box-shadow:var(--ui-shadow-primary)}.fa-btn--primary:hover:not(:disabled){filter:brightness(1.05)}.fa-btn--success{background:var(--ui-success);color:#fff;box-shadow:0 8px 18px -8px color-mix(in srgb, var(--ui-success) 70%, transparent)}.fa-btn--success:hover:not(:disabled){filter:brightness(1.05)}.fa-btn--secondary{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border-strong);box-shadow:var(--ui-shadow-sm)}.fa-btn--secondary:hover:not(:disabled){background:var(--ui-surface-2)}.fa-btn--inline{width:auto;min-width:160px;margin:0 auto}.fa-forgot-row{justify-content:flex-end;margin-top:-6px;display:flex}.fa-link-btn{border-radius:var(--ui-radius-sm);min-height:44px;color:var(--ui-primary-strong);font-family:var(--ui-font);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:.9rem;font-weight:600;display:inline-flex}.fa-link-btn:hover{text-decoration:underline}.fa-link-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fa-link-btn--muted{width:100%;color:var(--ui-text-2)}.fa-link-btn--muted:hover{color:var(--ui-text)}.fa-forgot-row .fa-link-btn{margin-right:-8px}.fa-divider{color:var(--ui-text-muted);font-size:var(--ui-text-xs);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:12px;margin:8px 0 0;font-weight:700;display:flex}.fa-divider:before,.fa-divider:after{content:"";background:var(--ui-border);flex:1;height:1px}.fa-register{text-align:center;flex-direction:column;gap:12px;display:flex}.fa-hint{color:var(--ui-text-2);margin:0;font-size:.875rem;line-height:1.5}.fa-loading{color:var(--ui-primary);justify-content:center;align-items:center;padding:28px 0 8px;display:flex}.fa-loading-screen{background:var(--ui-bg-tint);width:100%;height:100%;color:var(--ui-text-muted);font-family:var(--ui-font);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:.9rem;font-weight:500;display:flex}.fa-spinner{box-sizing:border-box;border:3px solid var(--ui-primary-soft-2);border-top-color:var(--ui-primary);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite fa-spin}.fa-status{text-align:center}.fa-status__icon{border-radius:var(--ui-radius-lg);background:var(--fa-tone-soft,var(--ui-danger-soft));width:64px;height:64px;color:var(--fa-tone,var(--ui-danger));justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.fa-status__icon--warning{--fa-tone:var(--ui-warning);--fa-tone-soft:var(--ui-warning-soft)}.fa-status__title{letter-spacing:-.01em;color:var(--ui-text);margin:0 0 8px;font-size:1.3rem;font-weight:800}.fa-status__text{max-width:320px;color:var(--ui-text-2);margin:0 auto 24px;font-size:.95rem;line-height:1.55}.fa-conn{--fa-tone:var(--ui-danger);--fa-tone-soft:var(--ui-danger-soft);top:calc(68px + env(safe-area-inset-top,0px));z-index:11;box-sizing:border-box;background:var(--ui-surface);width:max-content;max-width:calc(100% - 24px);color:var(--ui-text);border:1px solid var(--ui-border);border-left:4px solid var(--fa-tone);border-radius:var(--ui-radius-full);box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);animation:fa-conn-in .3s var(--ui-ease);align-items:center;gap:10px;margin:0 auto;padding:6px 14px 6px 6px;font-size:.875rem;font-weight:600;line-height:1.3;display:flex;position:fixed;left:0;right:0}.fa-conn--syncing{--fa-tone:var(--ui-primary);--fa-tone-soft:var(--ui-primary-soft)}.fa-conn__icon{background:var(--fa-tone-soft);width:30px;height:30px;color:var(--fa-tone);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@keyframes fa-conn-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.fa-rural-toast{bottom:calc(89px + env(safe-area-inset-bottom,0px));z-index:15;box-sizing:border-box;background:var(--ui-surface);width:max-content;max-width:calc(100vw - 24px);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);opacity:0;transition:transform .25s var(--ui-ease), opacity .25s var(--ui-ease);align-items:center;gap:12px;padding:10px 10px 10px 12px;display:flex;position:fixed;left:50%;transform:translate(-50%)translateY(20px)}.fa-rural-toast.show{opacity:1;transform:translate(-50%)translateY(0)}.fa-rural-toast__icon{background:var(--ui-primary-soft);width:36px;height:36px;color:var(--ui-primary-strong);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.fa-rural-toast__text{color:var(--ui-text);font-size:.95rem;font-weight:700;line-height:1.3}.fa-rural-toast__actions{flex-shrink:0;gap:8px;display:flex}.fa-rural-toast__btn{border-radius:var(--ui-radius-md);min-width:64px;height:44px;font-family:var(--ui-font);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform 80ms var(--ui-ease), filter var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:4px;padding:0 14px;font-size:.95rem;font-weight:700;display:inline-flex}.fa-rural-toast__btn:active{transform:scale(.96)}.fa-rural-toast__btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fa-rural-toast__btn--yes{background:var(--ui-success);color:#fff}.fa-rural-toast__btn--yes:active{filter:brightness(.92)}.fa-rural-toast__btn--no{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border-strong)}.fa-rural-toast__btn--no:active{background:var(--ui-surface-3)}.fa-territory-toast{bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:9999;box-sizing:border-box;background:var(--ui-surface);width:min(440px,100vw - 24px);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);animation:fa-toast-up .35s var(--ui-ease);will-change:transform, opacity;backface-visibility:hidden;align-items:center;gap:12px;padding:12px 8px 12px 12px;display:flex;position:fixed;left:50%;overflow:hidden;transform:translate(-50%)}.fa-territory-toast--out{animation:.3s ease-in forwards fa-toast-down}@keyframes fa-toast-up{0%{opacity:0;transform:translate(-50%,30px)}to{opacity:1;transform:translate(-50%)}}@keyframes fa-toast-down{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,30px)}}.fa-territory-toast__icon{color:#fff;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;box-shadow:inset 0 0 0 1px #0f172a14}.fa-territory-toast__content{flex:1;min-width:0}.fa-territory-toast__title{font-size:var(--ui-text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-text-muted);margin-bottom:2px;font-weight:700}.fa-territory-toast__message{color:var(--ui-text);overflow-wrap:anywhere;font-size:.92rem;font-weight:500;line-height:1.35}.fa-territory-toast__message strong{color:var(--ui-text);font-weight:700}.fa-territory-toast__counter{color:var(--ui-text-muted);margin-top:3px;font-size:.75rem;font-weight:600}.fa-territory-toast__actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.fa-territory-toast__view{border-radius:var(--ui-radius-md);background:var(--ui-gradient-primary);height:40px;color:var(--ui-text-on-primary);font-family:var(--ui-font);cursor:pointer;box-shadow:var(--ui-shadow-primary);touch-action:manipulation;border:none;padding:0 14px;font-size:.875rem;font-weight:700}.fa-territory-toast__dismiss{border-radius:var(--ui-radius-md);width:44px;height:44px;color:var(--ui-text-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.fa-territory-toast__dismiss:hover,.fa-territory-toast__dismiss:active{background:var(--ui-surface-3);color:var(--ui-text)}.fa-territory-toast__view:focus-visible,.fa-territory-toast__dismiss:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fa-goal-overlay{z-index:9999;padding:calc(24px + env(safe-area-inset-top,0px)) 20px calc(24px + env(safe-area-inset-bottom,0px));background:var(--ui-overlay);-webkit-backdrop-filter:blur(6px);font-family:var(--ui-font);animation:fa-fade-in .2s var(--ui-ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.fa-goal-card{--fa-goal-tone:var(--ui-primary);--fa-goal-tone-soft:var(--ui-primary-soft);--fa-goal-gradient:var(--ui-gradient-brand);box-sizing:border-box;text-align:center;background:var(--ui-surface);border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-xl);width:100%;max-width:380px;max-height:calc(100dvh - 48px);box-shadow:var(--ui-shadow-lg), 0 0 0 4px color-mix(in srgb, var(--fa-goal-tone) 18%, transparent);padding:26px 22px 22px;animation:.38s cubic-bezier(.34,1.56,.64,1) fa-pop-in;position:relative;overflow:hidden auto}.fa-goal-card:before{content:"";background:radial-gradient(260px 140px at 50% 0%, color-mix(in srgb, var(--fa-goal-tone) 18%, transparent), transparent 75%);pointer-events:none;height:140px;position:absolute;inset:0 0 auto}.fa-goal-card--gold{--fa-goal-tone:#f59e0b;--fa-goal-tone-soft:var(--ui-warning-soft);--fa-goal-gradient:linear-gradient(135deg, #f59e0b 0%, #ef4444 100%)}.fa-goal__icon-wrap{justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 14px;display:flex;position:relative}.fa-goal__pulse-ring{background:color-mix(in srgb, var(--fa-goal-tone) 28%, transparent);border-radius:50%;animation:1.8s ease-out infinite fa-pulse-ring;position:absolute;inset:0}.fa-goal__icon{z-index:1;background:var(--fa-goal-gradient);color:#fff;width:62px;height:62px;box-shadow:0 10px 24px -8px color-mix(in srgb, var(--fa-goal-tone) 70%, transparent);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.fa-goal__badge{border-radius:var(--ui-radius-full);background:var(--fa-goal-tone-soft);color:var(--ui-text);border:1px solid color-mix(in srgb, var(--fa-goal-tone) 35%, transparent);font-size:var(--ui-text-xs);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;padding:5px 14px;font-weight:800;display:inline-block;position:relative}.fa-goal__title{letter-spacing:-.02em;color:var(--ui-text);margin:0 0 6px;font-size:1.4rem;font-weight:800;line-height:1.2;position:relative}.fa-goal__subtitle{color:var(--ui-text-2);margin:0 0 16px;font-size:.92rem;line-height:1.45;position:relative}.fa-goal__meme-wrap{border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);border:1px solid var(--ui-border);width:100%;box-shadow:var(--ui-shadow-md);margin:0 auto 18px;position:relative;overflow:hidden}.fa-goal__meme{object-fit:cover;width:100%;max-height:210px;display:block}.fa-goal__btn{border-radius:var(--ui-radius-md);background:var(--fa-goal-gradient);color:#fff;width:100%;min-height:52px;font-family:var(--ui-font);letter-spacing:.02em;cursor:pointer;box-shadow:0 10px 22px -10px color-mix(in srgb, var(--fa-goal-tone) 80%, transparent);touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .15s var(--ui-ease), filter .15s var(--ui-ease);border:none;justify-content:center;align-items:center;gap:8px;font-size:1rem;font-weight:800;display:flex;position:relative}.fa-goal__btn:hover{filter:brightness(1.05)}.fa-goal__btn:active{transform:scale(.97)}.fa-goal__btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}@keyframes fa-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fa-pop-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes fa-pulse-ring{0%{opacity:1;transform:scale(.85)}to{opacity:0;transform:scale(1.45)}}@media (prefers-reduced-motion:reduce){.fa-conn,.fa-territory-toast,.fa-goal-overlay,.fa-goal-card,.fa-goal__pulse-ring{animation:none}}@keyframes fm-popover-in{0%{opacity:0;transform:translate(-50%,-46%)scale(.96)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes fm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fm-toast-in{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes fm-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fm-install-pulse{0%{box-shadow:0 0 #3b82f673}70%{box-shadow:0 0 0 8px #3b82f600}to{box-shadow:0 0 #3b82f600}}@keyframes fm-mode-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--ui-danger) 45%, transparent), var(--fm-btn-shadow)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--ui-danger) 0%, transparent), var(--fm-btn-shadow)}}@keyframes fm-spin{to{transform:rotate(360deg)}}.top-bar{z-index:10;padding:8px 12px;padding-top:max(8px, env(safe-area-inset-top,0px));padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(12px, env(safe-area-inset-right,0px));background:var(--ui-surface);-webkit-backdrop-filter:none;border-bottom:1px solid var(--ui-border);box-shadow:var(--ui-shadow-sm);font-family:var(--ui-font);color:var(--ui-text);align-items:center;gap:8px;display:flex;position:fixed;top:0;left:0;right:0}.top-bar__logo{border-radius:var(--ui-radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.top-bar__title{letter-spacing:-.02em;min-width:0;color:var(--ui-text);white-space:nowrap;text-overflow:ellipsis;font-size:1.125rem;font-weight:700;overflow:hidden}.top-bar__title span{color:var(--ui-primary-strong)}.top-bar__spacer{flex:1;min-width:4px}.topbar-dash-btn{border-radius:var(--ui-radius-md);background:var(--ui-gradient-primary);height:44px;color:var(--ui-text-on-primary);box-shadow:var(--ui-shadow-primary);font-family:inherit;font-size:var(--ui-text-md);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--ui-fast) var(--ui-ease), filter var(--ui-fast) var(--ui-ease);border:none;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:700;display:inline-flex}.topbar-dash-btn:hover{filter:brightness(1.05)}.topbar-dash-btn:active{transform:scale(.97)}.topbar-dash-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.install-btn{border:1px solid var(--ui-primary-soft-2);border-radius:var(--ui-radius-md);background:var(--ui-primary-soft);height:44px;color:var(--ui-primary-text);box-shadow:none;font-family:inherit;font-size:var(--ui-text-md);cursor:pointer;-webkit-tap-highlight-color:transparent;flex-shrink:0;justify-content:center;align-items:center;gap:6px;margin-right:0;padding:0 14px;font-weight:700;animation:2.4s ease-out infinite fm-install-pulse;display:inline-flex}.install-btn:active{transform:scale(.97)}.install-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.top-bar__user{flex-shrink:0;align-items:center;gap:4px;display:flex}.top-bar__avatar{border-radius:var(--ui-radius-full);border:2px solid var(--ui-border-strong);background:var(--ui-surface-3);width:44px;height:44px;color:var(--ui-text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--ui-fast) var(--ui-ease), border-color var(--ui-fast) var(--ui-ease);flex-shrink:0;justify-content:center;align-items:center;font-size:22px;font-weight:700;line-height:1;display:flex}.top-bar__avatar:hover{border-color:var(--ui-primary)}.top-bar__avatar:active{transform:scale(.92)}.top-bar__avatar:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.top-bar__avatar--emoji{font-size:22px;line-height:1}.top-bar__signout{border-radius:var(--ui-radius-md);width:44px;height:44px;color:var(--ui-text-2);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.top-bar__signout:hover,.top-bar__signout:active{background:var(--ui-surface-3);color:var(--ui-text)}.top-bar__signout:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.top-bar__signout svg{color:currentColor;width:20px;height:20px}@media (width<=400px){.topbar-dash-btn,.install-btn{width:44px;padding:0}.topbar-dash-btn__text,.install-btn__text{display:none}}.avatar-picker-overlay{z-index:100;background:var(--ui-overlay);-webkit-backdrop-filter:blur(4px);animation:fm-fade-in .16s var(--ui-ease);position:fixed;inset:0}.avatar-picker{z-index:101;max-width:560px;max-height:80vh;padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-xl) var(--ui-radius-xl) 0 0;box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);animation:fm-sheet-up .3s var(--ui-ease);border-bottom:none;margin:0 auto;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.avatar-picker__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.avatar-picker__title{font-size:var(--ui-text-xl);color:var(--ui-text);margin:0;font-weight:700}.avatar-picker__close{border-radius:var(--ui-radius-full);background:var(--ui-surface-3);width:40px;height:40px;color:var(--ui-text-2);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.avatar-picker__close:hover{background:var(--ui-border);color:var(--ui-text)}.avatar-picker__subtitle{font-size:var(--ui-text-md);color:var(--ui-text-muted);margin:0 0 18px}.avatar-picker__grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.avatar-picker__item{border:2px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);cursor:pointer;-webkit-tap-highlight-color:transparent;min-height:84px;transition:border-color var(--ui-fast) var(--ui-ease), background var(--ui-fast) var(--ui-ease), transform var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px 4px;font-family:inherit;display:flex}.avatar-picker__item:hover:not(:disabled){border-color:var(--ui-border-strong)}.avatar-picker__item:active{transform:scale(.95)}.avatar-picker__item--active,.avatar-picker__item--active:hover:not(:disabled){border-color:var(--ui-primary);background:var(--ui-primary-soft);box-shadow:var(--ui-focus-ring)}.avatar-picker__item--taken{opacity:.45;cursor:not-allowed;filter:grayscale()}.avatar-picker__emoji{font-size:1.75rem;line-height:1}.avatar-picker__label{font-size:var(--ui-text-xs);text-align:center;color:var(--ui-text-2);font-weight:600;line-height:1.2}.avatar-picker__item--active .avatar-picker__label{color:var(--ui-primary-text)}.field-map{--fm-top:calc(max(8px, env(safe-area-inset-top,0px)) + 92px);--fm-right:max(10px, env(safe-area-inset-right,0px));--fm-btn:48px;--fm-step:56px;--fm-btn-shadow:0 1px 2px #0f172a24, 0 4px 12px -2px #0f172a47;font-family:var(--ui-font)}.field-map .mapboxgl-ctrl-top-right{right:calc(var(--fm-right) - 10px);top:calc(var(--fm-top) - 10px)!important}.field-map .mapboxgl-ctrl-group{border:1px solid var(--ui-border-strong);overflow:hidden;border-radius:var(--ui-radius-md)!important;box-shadow:var(--fm-btn-shadow)!important}.field-map .mapboxgl-ctrl-group button{width:var(--fm-btn)!important;height:var(--fm-btn)!important}.field-map .mapboxgl-ctrl-group button+button{border-top:1px solid var(--ui-border)}.field-map .map-style-toggle,.field-map .my-location-toggle,.field-map .rural-mode-toggle,.field-map .map-toggle-stack button{right:var(--fm-right);z-index:5;width:var(--fm-btn);height:var(--fm-btn);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-md);background:var(--ui-surface);-webkit-backdrop-filter:none;color:var(--ui-text);box-shadow:var(--fm-btn-shadow);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease), border-color var(--ui-fast) var(--ui-ease), transform .12s var(--ui-ease);justify-content:center;align-items:center;padding:0;font-size:20px;animation:none;display:flex;position:absolute;transform:none}.field-map .map-style-toggle svg,.field-map .my-location-toggle svg,.field-map .rural-mode-toggle svg,.field-map .map-toggle-stack button svg{color:currentColor;flex-shrink:0;width:22px;height:22px}.field-map .map-style-toggle{top:calc(var(--fm-top) + 108px)}.field-map .my-location-toggle{top:calc(var(--fm-top) + 108px + var(--fm-step))}.field-map .rural-mode-toggle{top:calc(var(--fm-top) + 108px + var(--fm-step) * 2)}.field-map .map-toggle-stack{top:calc(var(--fm-top) + 108px + var(--fm-step) * 3);right:var(--fm-right);z-index:5;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute}.field-map .map-toggle-stack button{position:static}@media (hover:hover){.field-map .map-style-toggle:hover,.field-map .my-location-toggle:hover,.field-map .rural-mode-toggle:hover,.field-map .map-toggle-stack button:hover{background:var(--ui-surface-2);border-color:var(--ui-text-faint);transform:none}}.field-map .map-style-toggle:active,.field-map .my-location-toggle:active,.field-map .rural-mode-toggle:active,.field-map .map-toggle-stack button:active{background:var(--ui-surface-3);transform:scale(.94)}.field-map .map-style-toggle:focus-visible,.field-map .my-location-toggle:focus-visible,.field-map .rural-mode-toggle:focus-visible,.field-map .map-toggle-stack button:focus-visible{box-shadow:var(--ui-focus-ring), var(--fm-btn-shadow);outline:none}.field-map .my-location-toggle--active,.field-map .map-toggle-stack .hail-layer-toggle--active,.field-map .map-toggle-stack .wind-swath-layer-toggle--active,.field-map .map-toggle-stack .tornado-layer-toggle--active,.field-map .my-location-toggle--active:hover,.field-map .map-toggle-stack .hail-layer-toggle--active:hover,.field-map .map-toggle-stack .wind-swath-layer-toggle--active:hover,.field-map .map-toggle-stack .tornado-layer-toggle--active:hover{background:var(--ui-primary-strong);border-color:var(--ui-primary-strong);color:var(--ui-text-on-primary);box-shadow:var(--ui-shadow-primary), var(--fm-btn-shadow)}.field-map .rural-mode-toggle--active,.field-map .rural-mode-toggle--active:hover{background:var(--ui-success);border-color:var(--ui-success);color:#fff}.field-map .map-toggle-stack .target-mode-toggle--active,.field-map .map-toggle-stack .target-mode-toggle--active:hover,.field-map .map-toggle-stack .hail-hide-toggle--active,.field-map .map-toggle-stack .hail-hide-toggle--active:hover{background:var(--ui-danger);border-color:var(--ui-danger);color:#fff;animation:2s ease-in-out infinite fm-mode-pulse}.field-map .hail-layer-toggle__spinner{border:2.5px solid color-mix(in srgb, currentColor 25%, transparent);border-top-color:currentColor;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite fm-spin;display:inline-block}.field-map .fm-search{top:calc(max(8px, env(safe-area-inset-top,0px)) + 60px);z-index:20;position:absolute;left:12px;right:12px}.field-map .fm-search__box{background:var(--ui-surface);border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-md);height:52px;box-shadow:var(--ui-shadow-lg);transition:border-color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease);align-items:center;gap:8px;padding:0 4px 0 14px;display:flex}.field-map .fm-search__box:focus-within{border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring), var(--ui-shadow-lg)}.field-map .fm-search__icon{color:var(--ui-text-muted);flex-shrink:0}.field-map .fm-search__input{min-width:0;height:100%;color:var(--ui-text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:16px}.field-map .fm-search__input::placeholder{color:var(--ui-text-faint)}.field-map .fm-search__close{border-radius:var(--ui-radius-sm);width:44px;height:44px;color:var(--ui-text-2);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.field-map .fm-search__close:hover,.field-map .fm-search__close:active{background:var(--ui-surface-3);color:var(--ui-text)}.field-map .fm-search__results{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);max-height:280px;box-shadow:var(--ui-shadow-lg);margin-top:6px;padding:4px;overflow-y:auto}.field-map .fm-search__result{border-radius:var(--ui-radius-sm);width:100%;min-height:48px;color:var(--ui-text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:flex-start;gap:10px;padding:12px;font-family:inherit;font-size:15px;line-height:1.35;display:flex}.field-map .fm-search__result+.fm-search__result{border-top:1px solid var(--ui-border)}.field-map .fm-search__result svg{color:var(--ui-primary);flex-shrink:0;margin-top:2px}.field-map .fm-search__result:hover,.field-map .fm-search__result:active{background:var(--ui-primary-soft);color:var(--ui-primary-text)}.field-map .fm-address-card{z-index:10;background:var(--ui-surface);width:calc(100% - 32px);max-width:360px;color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-lg);padding:16px;position:absolute;bottom:220px;left:50%;transform:translate(-50%)}.field-map .fm-address-card__address{color:var(--ui-text);word-break:break-word;align-items:flex-start;gap:8px;margin-bottom:14px;padding-right:36px;font-size:15px;font-weight:600;line-height:1.4;display:flex}.field-map .fm-address-card__address svg{color:var(--ui-primary);flex-shrink:0;margin-top:1px}.field-map .fm-address-card__actions{flex-direction:column;gap:8px;display:flex}.field-map .fm-address-card__measure{background:var(--ui-gradient-primary,linear-gradient(135deg, #008ce4 0%, #006bb3 100%));color:#fff;box-shadow:0 8px 18px -8px #008ce499}.field-map .fm-address-card__measure:hover:not(:disabled){filter:brightness(1.05)}.field-map .fm-address-card__report{color:#fff;background:linear-gradient(135deg,#f59e0b,#ea580c);box-shadow:0 8px 18px -8px #ea580c99}.field-map .fm-address-card__report:hover:not(:disabled){filter:brightness(1.05)}.field-map .fm-address-card__close{border-radius:var(--ui-radius-sm);width:36px;height:36px;color:var(--ui-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:8px;right:8px}.field-map .fm-address-card__close:hover,.field-map .fm-address-card__close:active{background:var(--ui-surface-3);color:var(--ui-text)}.field-map .hail-filter-backdrop{z-index:999;background:var(--ui-overlay);-webkit-backdrop-filter:blur(2px);animation:.18s ease-out fm-fade-in;position:fixed;inset:0}.field-map .hail-filter-popover{z-index:1000;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--ui-surface);-webkit-backdrop-filter:none;width:min(92vw,360px);max-height:min(85vh,100dvh - 32px);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-xl);box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);padding:18px;animation:.22s cubic-bezier(.16,1,.3,1) fm-popover-in;position:fixed;inset:50% auto auto 50%;overflow-y:auto;transform:translate(-50%,-50%)}.field-map .hail-filter-popover::-webkit-scrollbar{width:6px}.field-map .hail-filter-popover::-webkit-scrollbar-track{background:0 0}.field-map .hail-filter-popover::-webkit-scrollbar-thumb{background:var(--ui-border-strong);border-radius:10px}.field-map .hail-filter-popover__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.field-map .hail-filter-popover__header h4{font-size:var(--ui-text-lg);letter-spacing:0;color:var(--ui-text);align-items:center;gap:10px;margin:0;font-weight:700;display:flex}.field-map .fm-filter__icon{background:var(--ui-primary-soft);width:34px;height:34px;color:var(--ui-primary-strong);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.field-map .hail-filter-popover__close{border-radius:var(--ui-radius-sm);background:var(--ui-surface-3);width:40px;height:40px;color:var(--ui-text-2);cursor:pointer;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease);border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;display:flex}.field-map .hail-filter-popover__close:hover,.field-map .hail-filter-popover__close:active{background:var(--ui-border);color:var(--ui-text)}.field-map .hail-filter-popover__section{margin-bottom:16px}.field-map .hail-filter-popover__label{font-size:var(--ui-text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--ui-text-2);margin-bottom:8px;font-weight:700;display:block}.field-map .hail-filter-popover__size-btns,.field-map .hail-filter-popover__date-btns{grid-template-columns:1fr 1fr;gap:8px;display:grid}.field-map .hail-size-btn,.field-map .hail-date-btn{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-sm);background:var(--ui-surface);min-height:44px;color:var(--ui-text);font-family:inherit;font-size:var(--ui-text-md);box-shadow:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--ui-fast) var(--ui-ease), border-color var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease);align-items:center;gap:8px;padding:0 12px;font-weight:600;line-height:1.2;display:flex}.field-map .hail-date-btn{text-align:center;justify-content:center}@media (hover:hover){.field-map .hail-size-btn:hover,.field-map .hail-date-btn:hover{background:var(--ui-surface-2);border-color:var(--ui-text-faint)}}.field-map .hail-size-btn:active,.field-map .hail-date-btn:active{background:var(--ui-surface-3)}.field-map .hail-size-btn--active,.field-map .hail-date-btn--active,.field-map .hail-size-btn--active:hover,.field-map .hail-date-btn--active:hover{background:var(--ui-primary-soft);border-color:var(--ui-primary);box-shadow:inset 0 0 0 1px var(--ui-primary);color:var(--ui-primary-text);font-weight:700}.field-map .hail-size-btn__dot{border-radius:50%;flex-shrink:0;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0f172a2e}.field-map .fm-filter__mode{width:100%}.field-map .fm-filter__mode .ui-segmented__btn{min-height:40px;font-size:var(--ui-text-md);flex:1}.field-map .fm-filter__mode .ui-segmented__btn.is-active{color:var(--ui-primary-text)}.field-map .hail-filter-popover__custom-dates{gap:8px;margin-top:10px;display:flex}.field-map .hail-filter-popover__date-input{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.field-map .hail-filter-popover__date-input label{font-size:var(--ui-text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ui-text-2);font-weight:700}.field-map .hail-filter-popover__date-input input[type=date]{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-sm);background:var(--ui-surface);width:100%;min-width:0;height:44px;color:var(--ui-text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;transition:border-color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease);outline:none;padding:0 10px;font-family:inherit;font-size:15px}.field-map .hail-filter-popover__date-input input[type=date]:focus{border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring)}.field-map .hail-filter-popover__date-input input[type=date]::-webkit-calendar-picker-indicator{filter:none;cursor:pointer}.field-map .hail-filter-popover__legend{border-top:1px solid var(--ui-border);flex-direction:column;gap:6px;margin-bottom:12px;padding:12px 0;display:flex}.field-map .hail-legend-item,.field-map .hail-filter-popover__legend-item{font-size:var(--ui-text-sm);color:var(--ui-text-2);align-items:center;gap:10px;font-weight:500;display:flex}.field-map .hail-legend-swatch,.field-map .hail-filter-popover__legend-swatch{opacity:.9;border-radius:4px;flex-shrink:0;width:16px;height:16px;box-shadow:inset 0 0 0 1px #0f172a26}.field-map .hail-filter-popover__off-btn{border-radius:var(--ui-radius-md);background:var(--ui-danger-soft);width:100%;min-height:46px;color:var(--ui-danger);font-family:inherit;font-size:var(--ui-text-md);cursor:pointer;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease);border:1px solid #0000;justify-content:center;align-items:center;padding:0 14px;font-weight:700;display:flex}.field-map .hail-filter-popover__off-btn:hover,.field-map .hail-filter-popover__off-btn:active{background:var(--ui-danger);border-color:var(--ui-danger);color:#fff}.field-map .mapboxgl-popup-content{border-radius:var(--ui-radius-md);background:var(--ui-surface);color:var(--ui-text);box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);padding:14px}.field-map .mapboxgl-popup-close-button{border-radius:var(--ui-radius-sm);width:32px;height:32px;color:var(--ui-text-muted);font-size:20px;line-height:1;top:6px;right:6px}.field-map .mapboxgl-popup-close-button:hover{background:var(--ui-surface-3);color:var(--ui-text)}.field-map .mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:var(--ui-surface)}.field-map .mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-bottom-color:var(--ui-surface)}.field-map .hail-popup{min-width:180px;padding:0 28px 0 0}.field-map .hail-popup__badge{border-radius:var(--ui-radius-full);letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.field-map .hail-popup__size{color:var(--ui-text);align-items:center;gap:6px;margin-bottom:4px;font-size:15px;font-weight:700;display:flex}.field-map .hail-popup__size svg{color:var(--ui-text-muted);flex-shrink:0}.field-map .hail-popup__size--danger,.field-map .hail-popup__size--danger svg{color:var(--ui-danger)}.field-map .hail-popup__date{font-size:var(--ui-text-sm);color:var(--ui-text-2);align-items:center;gap:6px;display:inline-flex}.field-map .hail-popup__date--clickable{border:1px solid var(--ui-primary-soft-2);border-radius:var(--ui-radius-sm);background:var(--ui-primary-soft);min-height:36px;color:var(--ui-primary-text);cursor:pointer;transition:background var(--ui-fast) var(--ui-ease);margin:4px 0 0;padding:0 10px;font-family:inherit;font-weight:600;text-decoration:none}.field-map .hail-popup__date--clickable:hover,.field-map .hail-popup__date--clickable:active{background:var(--ui-primary-soft-2);color:var(--ui-primary-text);text-decoration:none}.field-map .hail-popup__delete{border-radius:var(--ui-radius-sm);background:var(--ui-danger-soft);width:100%;min-height:40px;color:var(--ui-danger);font-family:inherit;font-size:var(--ui-text-sm);cursor:pointer;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;margin-top:10px;padding:0 12px;font-weight:700;display:flex}.field-map .hail-popup__delete:hover{background:var(--ui-danger);border-color:var(--ui-danger);color:#fff}.field-map .hail-popup__delete:active{transform:scale(.97)}.field-map .fm-team-popup{text-align:center;font-size:var(--ui-text-md);color:var(--ui-text);padding:2px 4px;font-weight:600}.field-map .fm-team-popup__label{font-size:var(--ui-text-sm);color:var(--ui-text-muted);margin-top:2px;font-weight:500}.field-map .hail-cap-toast,.field-map .target-zoom-toast{--fm-tone:var(--ui-warning);--fm-tone-soft:var(--ui-warning-soft);bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:20;background:var(--ui-surface);-webkit-backdrop-filter:none;width:max-content;max-width:calc(100vw - 24px);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-lg);font-family:var(--ui-font);font-size:var(--ui-text-md);text-align:left;white-space:normal;align-items:center;gap:10px;padding:8px 16px 8px 8px;font-weight:600;line-height:1.35;animation:.3s ease-out fm-toast-in;display:flex;position:absolute;left:50%;transform:translate(-50%)}.field-map .target-zoom-toast{--fm-tone:var(--ui-info);--fm-tone-soft:var(--ui-info-soft)}.field-map .fm-toast__icon{background:var(--fm-tone-soft);width:34px;height:34px;color:var(--fm-tone);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.field-map .fm-toast__text{min-width:0}.field-map .rural-banner{bottom:calc(34px + env(safe-area-inset-bottom,0px));z-index:5;background:var(--ui-success);-webkit-backdrop-filter:none;color:#fff;border:2px solid var(--ui-surface);border-radius:var(--ui-radius-full);width:max-content;max-width:calc(100vw - 24px);min-height:44px;box-shadow:var(--fm-btn-shadow);font-family:var(--ui-font);font-size:var(--ui-text-md);text-align:center;white-space:normal;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-weight:700;line-height:1.3;animation:.3s fm-toast-in;display:flex;position:absolute;left:50%;transform:translate(-50%)}.field-map .rural-banner svg{flex-shrink:0}@media (prefers-reduced-motion:reduce){.install-btn,.field-map .map-toggle-stack .target-mode-toggle--active,.field-map .map-toggle-stack .hail-hide-toggle--active{animation:none}}.bottom-sheet-overlay{z-index:20;background:var(--ui-overlay);opacity:0;transition:opacity .25s var(--ui-ease);pointer-events:none;position:fixed;inset:0}.bottom-sheet-overlay.open{opacity:1;pointer-events:auto}.bottom-sheet{z-index:21;box-sizing:border-box;background:var(--ui-surface);color:var(--ui-text);font-family:var(--ui-font);border-radius:var(--ui-radius-xl) var(--ui-radius-xl) 0 0;border-top:1px solid var(--ui-border-subtle);padding:8px 16px calc(16px + env(safe-area-inset-bottom,0px));padding-left:calc(16px + env(safe-area-inset-left,0px));padding-right:calc(16px + env(safe-area-inset-right,0px));will-change:transform;backface-visibility:hidden;-webkit-tap-highlight-color:transparent;transition:transform .35s cubic-bezier(.32,.72,0,1);position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -12px 32px -12px #0f172a47}.bottom-sheet.open{transform:translateY(0)}@media (width>=640px){.bottom-sheet{max-width:560px;margin:0 auto}}.fs-handle{border-radius:var(--ui-radius-full);background:var(--ui-border-strong);width:40px;height:5px;margin:2px auto 14px}.fs-hail-pill{border-radius:var(--ui-radius-full);background:linear-gradient(135deg, var(--ui-warning) 0%, color-mix(in srgb, var(--ui-warning) 78%, #000) 100%);color:#fff;width:fit-content;min-height:40px;font-family:var(--ui-font);letter-spacing:.01em;cursor:pointer;touch-action:manipulation;box-shadow:0 8px 18px -8px color-mix(in srgb, var(--ui-warning) 80%, transparent);transition:transform 80ms var(--ui-ease), filter var(--ui-fast) var(--ui-ease);border:none;justify-content:center;align-items:center;gap:8px;margin:4px auto 10px;padding:0 18px;font-size:.9rem;font-weight:700;display:flex}.fs-hail-pill:hover{filter:brightness(1.05)}.fs-hail-pill:active{transform:scale(.97)}.fs-hail-pill:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fs-header{align-items:center;gap:12px;margin-bottom:14px;display:flex}.fs-header__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fs-header__title{letter-spacing:-.02em;color:var(--ui-text);margin:0;font-size:1.25rem;font-weight:800;line-height:1.2}.fs-header__sub{min-width:0;max-width:100%;font-family:var(--ui-font);font-size:var(--ui-text-sm);color:var(--ui-text-muted);align-items:center;gap:5px;font-weight:500;display:flex}.fs-header__sub--copyable{appearance:none;text-align:left;cursor:pointer;touch-action:manipulation;border-radius:var(--ui-radius-xs);transition:color var(--ui-fast) var(--ui-ease), opacity var(--ui-fast) var(--ui-ease);background:0 0;border:none;margin:0;padding:2px 0}.fs-header__sub--copyable:hover:not(:disabled){color:var(--ui-text-2)}.fs-header__sub--copyable:active:not(:disabled){opacity:.7}.fs-header__sub--copyable:disabled{cursor:default}.fs-header__sub--copyable.is-copied{color:var(--ui-success,#16a34a);font-weight:600}.fs-header__sub svg{flex-shrink:0}.fs-header__sub span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fs-icon-btn{border:1px solid var(--ui-border);border-radius:var(--ui-radius-full);background:var(--ui-surface-3);width:44px;height:44px;color:var(--ui-text-2);cursor:pointer;touch-action:manipulation;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease), transform 80ms var(--ui-ease);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.fs-icon-btn--nav{color:var(--ui-primary)}.fs-icon-btn:hover{background:var(--ui-border);color:var(--ui-text)}.fs-icon-btn--nav:hover{background:var(--ui-primary-soft,#2563eb1a);color:var(--ui-primary)}.fs-icon-btn:active{transform:scale(.94)}.fs-icon-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fs-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;max-height:60vh;margin:0 -4px;padding:2px 4px 4px;overflow-y:auto}.fs-form-container{flex-direction:column;display:flex}.fs-form-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;max-height:72vh;margin:0 -4px;padding:2px 4px 4px;overflow-y:auto}.fs-section-label{font-size:var(--ui-text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-text-muted);align-items:center;gap:6px;margin:0;font-weight:700;display:flex}.fs-section-label svg{color:var(--ui-text-faint)}.fs-quick-actions{margin-bottom:12px}.fs-measure-btn{border-radius:var(--ui-radius-lg);background:var(--ui-gradient-primary,linear-gradient(135deg, #008ce4 0%, #006bb3 100%));color:#fff;width:100%;min-height:48px;font-family:var(--ui-font);letter-spacing:.01em;cursor:pointer;touch-action:manipulation;transition:transform 80ms var(--ui-ease), filter var(--ui-fast) var(--ui-ease);border:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.95rem;font-weight:700;display:flex;box-shadow:0 4px 14px -4px #008ce473}.fs-measure-btn:hover{filter:brightness(1.05)}.fs-measure-btn:active{transform:scale(.98)}.fs-measure-btn:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fs-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (width<=339px){.fs-status-grid{grid-template-columns:minmax(0,1fr)}}.fs-status{border:2px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);min-height:60px;color:var(--ui-text);font-family:var(--ui-font);text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;box-shadow:var(--ui-shadow-sm);transition:border-color var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease), transform 80ms var(--ui-ease);align-items:center;gap:10px;padding:10px 12px;font-size:.95rem;font-weight:600;display:flex;position:relative}.fs-status:hover{border-color:var(--ui-border-strong)}.fs-status:active{transform:scale(.97)}.fs-status:focus-visible{box-shadow:var(--ui-focus-ring);outline:none}.fs-status.is-active{border-color:var(--status-color);background:color-mix(in srgb, var(--status-color) 12%, var(--ui-surface));box-shadow:0 0 0 2px color-mix(in srgb, var(--status-color) 28%, transparent);font-weight:700}.fs-status__swatch{color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:19px;line-height:1;display:flex;position:relative;box-shadow:inset 0 0 0 1px #0f172a14}.fs-status__check{border-radius:var(--ui-radius-full);background:var(--status-color);color:#fff;border:2px solid var(--ui-surface);box-sizing:border-box;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;bottom:-6px;right:-6px}.fs-status__label{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;line-height:1.2;display:-webkit-box;overflow:hidden}.fs-notes{border-top:1px solid var(--ui-border);flex-direction:column;gap:10px;margin-top:18px;padding-top:16px;display:flex}.fs-notes__header{justify-content:space-between;align-items:center;gap:8px;min-height:40px;display:flex}.ui-btn.fs-notes__edit{height:40px;color:var(--ui-primary-text);font-size:var(--ui-text-md);padding:0 12px}.ui-btn.fs-notes__edit:hover:not(:disabled){background:var(--ui-primary-soft);color:var(--ui-primary-text)}.fs-note-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-2);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--ui-fast) var(--ui-ease), border-color var(--ui-fast) var(--ui-ease);padding:12px 14px;position:relative}.fs-note-card:hover{background:var(--ui-surface-3);border-color:var(--ui-border-strong)}.fs-note-card__text{color:var(--ui-text);white-space:pre-wrap;word-break:break-word;margin:0;font-size:1rem;line-height:1.5}.fs-note-card__hint{font-size:var(--ui-text-xs);color:var(--ui-primary-text);text-align:right;margin-top:6px;font-weight:600;display:block}.fs-note-card__meta{border-top:1px solid var(--ui-border);font-size:var(--ui-text-xs);color:var(--ui-text-muted);overflow-wrap:anywhere;margin-top:8px;padding-top:8px}.fs-note-empty{border:1px dashed var(--ui-border-strong);border-radius:var(--ui-radius-md);font-size:var(--ui-text-md);color:var(--ui-text-muted);padding:12px 14px}.fs-note-edit{flex-direction:column;gap:10px;display:flex}.fs-textarea{box-sizing:border-box;border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-md);background:var(--ui-surface-2);width:100%;min-height:96px;color:var(--ui-text);font-family:var(--ui-font);resize:vertical;transition:border-color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease);outline:none;padding:12px 14px;font-size:16px;line-height:1.5}.fs-textarea::placeholder{color:var(--ui-text-faint)}.fs-textarea:focus{background:var(--ui-surface);border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring)}.fs-note-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ui-btn.fs-btn{border-radius:var(--ui-radius-md);touch-action:manipulation;height:auto;min-height:48px;padding:0 16px;font-size:.95rem}.ui-btn.fs-btn:active:not(:disabled){transform:scale(.97)}.ui-btn.fs-btn--xl{min-height:56px;font-size:1.05rem;font-weight:700}.ui-btn.fs-delete-btn{color:var(--ui-danger);border-color:color-mix(in srgb, var(--ui-danger) 30%, transparent);background:0 0;margin-top:16px}.ui-btn.fs-delete-btn:hover:not(:disabled){background:var(--ui-danger-soft);color:var(--ui-danger)}.fs-spin{animation:.9s linear infinite fs-spin}@keyframes fs-spin{to{transform:rotate(360deg)}}.fs-form{flex-direction:column;gap:16px;display:flex}.fs-field{flex-direction:column;gap:6px;min-width:0;display:flex}.fs-field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.fs-input-wrap{align-items:center;display:flex;position:relative}.fs-input-wrap__icon{color:var(--ui-text-faint);pointer-events:none;transition:color var(--ui-fast) var(--ui-ease);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.fs-input-wrap:focus-within .fs-input-wrap__icon{color:var(--ui-primary)}.fs-input-wrap__chevron{color:var(--ui-text-muted);pointer-events:none;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.fs-input,.fs-select{box-sizing:border-box;border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-md);background:var(--ui-surface-2);width:100%;min-width:0;height:48px;color:var(--ui-text);font-family:var(--ui-font);transition:border-color var(--ui-fast) var(--ui-ease), box-shadow var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease);outline:none;padding:0 14px;font-size:16px;font-weight:500}.fs-input--icon{padding-left:42px}.fs-input[type=date]{appearance:none;text-align:left;align-items:center;display:flex}.fs-input[type=date]::-webkit-date-and-time-value{text-align:left}.fs-select{appearance:none;cursor:pointer;padding-right:32px}.fs-input::placeholder{color:var(--ui-text-faint)}.fs-input:focus,.fs-select:focus{background:var(--ui-surface);border-color:var(--ui-primary);box-shadow:var(--ui-focus-ring)}.fs-time-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px;display:grid}.fs-time-row__sep{color:var(--ui-text-muted);font-size:1.25rem;font-weight:800}.fs-schedule{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);flex-direction:column;gap:16px;padding:14px;display:flex}.fs-schedule .fs-input,.fs-schedule .fs-select{background:var(--ui-surface)}.fs-check-row{border:1px solid var(--ui-border-strong);border-radius:var(--ui-radius-md);background:var(--ui-surface);min-height:52px;color:var(--ui-text);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color var(--ui-fast) var(--ui-ease), background-color var(--ui-fast) var(--ui-ease);align-items:center;gap:12px;padding:0 14px;font-size:.95rem;font-weight:600;display:flex}.fs-check-row:has(input:checked){border-color:var(--ui-primary);background:var(--ui-primary-soft)}.fs-check-row__icon{color:var(--ui-text-muted);flex-shrink:0}.fs-check-row:has(input:checked) .fs-check-row__icon{color:var(--ui-primary-text)}.fs-check-row__text{flex:1;min-width:0}.fs-check-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--ui-primary);cursor:pointer;flex-shrink:0;margin:0}.fs-submit{margin-top:4px}.fs-success{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:28px 16px 20px;animation:.35s cubic-bezier(.16,1,.3,1) fs-pop-in;display:flex}.fs-success__icon{border-radius:var(--ui-radius-full);background:var(--ui-success-soft);width:72px;height:72px;color:var(--ui-success);justify-content:center;align-items:center;margin-bottom:8px;display:flex}.fs-success__title{color:var(--ui-text);margin:0;font-size:1.2rem;font-weight:800}.fs-success__text{font-size:var(--ui-text-md);color:var(--ui-text-muted);margin:0}@keyframes fs-pop-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.fs-proof-overlay{z-index:100;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));background:var(--ui-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;animation:.2s ease-out fs-fade-in;display:flex;position:fixed;inset:0}.fs-proof{box-sizing:border-box;background:var(--ui-surface);width:100%;max-width:400px;max-height:calc(100dvh - 32px);color:var(--ui-text);font-family:var(--ui-font);border:1px solid var(--ui-border-subtle);border-radius:var(--ui-radius-xl);box-shadow:var(--ui-shadow-lg);animation:.22s cubic-bezier(.16,1,.3,1) fs-pop-in;overflow-y:auto}.fs-proof__header{border-bottom:1px solid var(--ui-border);align-items:center;gap:12px;padding:16px 16px 14px 20px;display:flex}.fs-proof__heading{flex:1;min-width:0}.fs-proof__title{letter-spacing:-.01em;color:var(--ui-text);margin:0;font-size:1.05rem;font-weight:800}.fs-proof__subtitle{font-size:var(--ui-text-xs);color:var(--ui-text-muted);margin:2px 0 0;font-weight:600}.fs-proof__content{padding:16px 20px 20px}.fs-proof__address{box-sizing:border-box;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-2);color:var(--ui-text-2);font-size:var(--ui-text-md);word-break:break-word;cursor:pointer;-webkit-user-select:all;user-select:all;transition:background var(--ui-fast) var(--ui-ease), color var(--ui-fast) var(--ui-ease), border-color var(--ui-fast) var(--ui-ease);align-items:center;gap:8px;margin:16px 20px 0;padding:10px 12px;font-weight:600;line-height:1.35;display:flex}.fs-proof__address>svg{color:var(--ui-text-muted);flex-shrink:0}.fs-proof__address-text{flex:1;min-width:0}.fs-proof__address:hover{background:var(--ui-surface-3)}.fs-proof__address.copied{background:var(--ui-success-soft);border-color:color-mix(in srgb, var(--ui-success) 30%, transparent);color:var(--ui-success)}.fs-proof__address.copied>svg{color:var(--ui-success)}.fs-proof__hero{border-radius:var(--ui-radius-lg);background:var(--ui-surface-2);border:1px solid var(--ui-border);text-align:center;flex-direction:column;align-items:center;gap:6px;margin-bottom:8px;padding:18px 16px;display:flex}.fs-proof__badge{border-radius:var(--ui-radius-full);font-size:var(--ui-text-xs);letter-spacing:.06em;text-transform:uppercase;align-items:center;padding:4px 10px;font-weight:800;display:inline-flex}.fs-proof__hail-icon{border-radius:var(--ui-radius-full);justify-content:center;align-items:center;width:56px;height:56px;margin-top:6px;display:flex}.fs-proof__size{letter-spacing:-.02em;color:var(--ui-text);font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:800;line-height:1.05}.fs-proof__size-label{font-size:var(--ui-text-md);color:var(--ui-text-muted);font-weight:600}.fs-proof__rows{flex-direction:column;display:flex}.fs-proof__row{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 2px;display:flex}.fs-proof__row:last-child{border-bottom:none}.fs-proof__row-label{font-size:var(--ui-text-sm);color:var(--ui-text-muted);flex-shrink:0;align-items:center;gap:8px;font-weight:600;display:flex}.fs-proof__row-label svg{color:var(--ui-text-faint)}.fs-proof__row-val{font-size:var(--ui-text-md);color:var(--ui-text);text-align:right;font-weight:700}.fs-proof__row-val.urgent{color:var(--ui-danger)}.fs-proof__row-val.expired{color:var(--ui-text-faint)}.fs-proof__row.multi-storm{border-radius:var(--ui-radius-md);background:var(--ui-violet-soft);border-bottom:none;margin-top:8px;padding:12px}.fs-proof__row.multi-storm .fs-proof__row-label,.fs-proof__row.multi-storm .fs-proof__row-label svg{color:var(--ui-violet)}.fs-proof__actions{flex-direction:column;gap:10px;margin-top:18px;display:flex}@keyframes fs-fade-in{0%{opacity:0}to{opacity:1}}.fs-reknock-toast{z-index:99999;border-radius:var(--ui-radius-xl);background:color-mix(in srgb, var(--ui-text) 92%, transparent);color:#fff;min-width:180px;font-family:var(--ui-font);text-align:center;box-shadow:var(--ui-shadow-lg);pointer-events:none;flex-direction:column;align-items:center;gap:4px;padding:20px 32px;animation:.4s ease-out fs-reknock-pop;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.fs-reknock-toast__count{align-items:center;gap:10px;font-size:28px;font-weight:800;line-height:1.1;display:flex}.fs-reknock-toast__text{opacity:.85;font-size:14px;font-weight:500}@keyframes fs-reknock-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}60%{opacity:1;transform:translate(-50%,-50%)scale(1.15)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (prefers-reduced-motion:reduce){.bottom-sheet,.bottom-sheet-overlay{transition-duration:1ms}.fs-success,.fs-proof,.fs-proof-overlay,.fs-reknock-toast{animation:none}}
