/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@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-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:"IBM Plex Sans", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;--spacing:.25rem;--animate-spin:spin 1s linear infinite;--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-void-black:#020408;--color-deep-ocean:#060d17;--color-ocean-surface:#0a1628;--color-ocean-mid:#0f1f33;--color-electric-blue:#007aff;--color-electric-blue-hover:#0a8aff;--color-electric-blue-dim:#005bb5;--color-arctic-cyan:#00f2ff;--color-arctic-cyan-dim:#00b8c4;--color-text-white:#fff;--color-text-platinum:#e5e4e2;--color-text-muted:#89a;--color-text-dim:#4a5568;--color-success:#00e676;--color-warning:#ffb300;--color-danger:#ff3d57;--color-info:#29b6f6;--color-glass-bg:#060d17a6;--color-glass-border:#007aff26;--color-glass-border-hover:#007aff59;--shadow-glow-blue:0 0 20px #007aff4d, 0 0 60px #007aff1a;--shadow-glow-cyan:0 0 20px #00f2ff4d, 0 0 60px #00f2ff1a;--shadow-glow-blue-intense:0 0 30px #007aff80, 0 0 80px #007aff33;--spacing-safe-top:env(safe-area-inset-top);--spacing-safe-bottom:env(safe-area-inset-bottom);--radius-glass:16px;--radius-card:20px;--radius-button:12px;--radius-full:9999px}}@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}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.row-50{grid-row:50}.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}}.block{display:block}.contents{display:contents}.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}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.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);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}.blur{--tw-blur:blur(8px);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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);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,)}.invert{--tw-invert:invert(100%);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,)}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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))}.\[uistio\:mapbox-shared-asset\]{uistio:mapbox-shared-asset}}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-stretch:85% 100%;font-display:swap;src:url(/notice-app/fonts/ibm-plex-sans-roman.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-weight:100 700;font-stretch:85% 100%;font-display:swap;src:url(/notice-app/fonts/ibm-plex-sans-italic.woff2)format("woff2")}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scroll-behavior:smooth}body{background-color:var(--color-void-black);color:var(--color-text-white);min-height:100dvh;line-height:1.6;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}.safe-area-top{padding-top:var(--spacing-safe-top)}.safe-area-bottom{padding-bottom:var(--spacing-safe-bottom)}.app-shell{background:var(--color-void-black);min-height:100dvh}.app-shell--standard{min-height:100dvh}html.uistio-map-route,body.uistio-map-route{overscroll-behavior:none;width:100%;height:100%;overflow:hidden}body.uistio-map-route{position:fixed;inset:0}body.uistio-map-route #root{width:100%;height:100dvh;min-height:100dvh;overflow:hidden}.app-shell--map{overscroll-behavior:none;width:100%;height:100dvh;min-height:100dvh;padding:0;position:relative;overflow:hidden}.foreground-notification-banner{z-index:1000;top:calc(var(--spacing-safe-top) + 12px);left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));max-width:480px;color:var(--color-text-white);background:#060d17f5;border:1px solid #00f2ff47;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin-inline:auto;padding:12px;display:flex;position:fixed;box-shadow:0 18px 48px #0000006b,0 0 24px #007aff29}.foreground-notification-banner__content{min-width:0}.foreground-notification-banner__content strong{color:var(--color-text-platinum);font-size:.88rem;line-height:1.3;display:block}.foreground-notification-banner__content p{color:var(--color-text-muted);overflow-wrap:anywhere;margin-top:4px;font-size:.78rem;line-height:1.4}.foreground-notification-banner__actions{flex:none;gap:6px;display:flex}.foreground-notification-banner__actions button{min-height:44px;color:var(--color-text-platinum);font:inherit;background:#ffffff0f;border:1px solid #ffffff24;border-radius:10px;padding:0 10px;font-size:.76rem;font-weight:700}.foreground-notification-banner__actions button:first-child:not(:last-child){color:var(--color-arctic-cyan);border-color:#00f2ff47}@media (width<=380px){.foreground-notification-banner{flex-direction:column;align-items:flex-start}.foreground-notification-banner__actions{align-self:flex-end}}.glass-card{background:var(--color-glass-bg);-webkit-backdrop-filter:blur(20px)saturate(1.5);border:1px solid var(--color-glass-border);border-radius:var(--radius-card);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-card:hover{border-color:var(--color-glass-border-hover);box-shadow:var(--shadow-glow-blue)}.glass-card-static{background:var(--color-glass-bg);-webkit-backdrop-filter:blur(20px)saturate(1.5);border:1px solid var(--color-glass-border);border-radius:var(--radius-card)}.premium-glass{border-color:#00f2ff33;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 18px 60px #0003}.premium-glass:before{content:"";pointer-events:none;opacity:.72;background:linear-gradient(135deg,#ffffff21,#0000 28% 72%,#00f2ff12);position:absolute;inset:0}.bite-index-gauge{position:relative}.bite-index-gauge--compact{gap:8px}.glow-blue{box-shadow:var(--shadow-glow-blue)}.glow-cyan{box-shadow:var(--shadow-glow-cyan)}.glow-blue-intense{box-shadow:var(--shadow-glow-blue-intense)}.text-glow-blue{text-shadow:0 0 10px #007aff80,0 0 30px #007aff33}.text-glow-cyan{text-shadow:0 0 10px #00f2ff80,0 0 30px #00f2ff33}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #007aff66,0 0 60px #007aff26}50%{box-shadow:0 0 35px #007aff99,0 0 90px #007aff40}}.animate-pulse-glow{animation:2.5s ease-in-out infinite pulse-glow}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:.5s cubic-bezier(.4,0,.2,1) forwards fade-in-up}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{background:linear-gradient(90deg, var(--color-ocean-surface) 25%, var(--color-ocean-mid) 50%, var(--color-ocean-surface) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}@keyframes sonar-ping{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.5)}}.animate-sonar-ping{animation:1.5s ease-out infinite sonar-ping}@keyframes subtle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.animate-float{animation:3s ease-in-out infinite subtle-float}.btn-primary{background:var(--color-electric-blue);color:var(--color-text-white);border-radius:var(--radius-button);cursor:pointer;border:none;padding:12px 28px;font-size:.95rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-primary:hover{background:var(--color-electric-blue-hover);box-shadow:var(--shadow-glow-blue);transform:translateY(-1px)}.btn-primary:active{box-shadow:none;transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{color:var(--color-text-platinum);border:1px solid var(--color-glass-border);border-radius:var(--radius-button);cursor:pointer;background:0 0;padding:12px 28px;font-size:.95rem;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-ghost:hover{border-color:var(--color-electric-blue);color:var(--color-electric-blue);background:#007aff14}.community-tab-list{border:1px solid var(--color-glass-border);border-radius:var(--radius-button);background:#060d17b8;gap:4px;width:100%;padding:4px;display:flex;overflow-x:auto;box-shadow:inset 0 1px #ffffff0a}.community-tab-button{min-height:44px;color:var(--color-text-platinum);text-align:center;white-space:normal;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex:1 0 min(132px,40vw);justify-content:center;align-items:center;padding:9px 10px;font-size:.86rem;font-weight:650;line-height:1.1;transition:background .2s,border-color .2s,color .2s,box-shadow .2s;display:inline-flex}.community-tab-button--active{color:var(--color-text-white);background:linear-gradient(#007aff3d,#00f2ff1a);border-color:#00f2ff47;box-shadow:0 0 16px #007aff2e,inset 0 1px #ffffff14}.mobile-page-shell{background:var(--color-void-black);min-height:100dvh;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}.mobile-page-header{width:100%;max-width:600px;margin:0 auto;padding:28px 20px 0}.mobile-page-main{flex-direction:column;gap:16px;width:100%;max-width:600px;margin:0 auto;padding:16px 16px 0;display:flex}.community-page-main--premium{gap:14px}.mobile-page-content{width:100%;max-width:600px;padding:16px 16px calc(40px + env(safe-area-inset-bottom,0px));margin:0 auto}.community-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.community-module-button{min-height:62px;color:var(--color-text-platinum);text-align:center;white-space:normal;cursor:pointer;background:#060d17bd;border:1px solid #ffffff1a;border-radius:14px;justify-content:center;align-items:center;padding:12px 10px;font-size:.86rem;font-weight:800;line-height:1.15;transition:background .2s,border-color .2s,color .2s,box-shadow .2s;display:flex;box-shadow:inset 0 1px #ffffff0d}.community-module-button--active{color:var(--color-text-white);background:linear-gradient(#007aff42,#00f2ff1a);border-color:#00f2ff57;box-shadow:0 0 18px #007aff33,inset 0 1px #ffffff14}.community-module-grid--premium .community-module-button{background:#060d179e;border-color:#ffffff14;min-height:58px}.community-module-grid--premium .community-module-button--active{background:linear-gradient(#007aff38,#00f2ff17);border-color:#00f2ff47}.bite-forecast-shell{padding:4px 0 0}.bite-forecast-day-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.bite-forecast-day-card{width:100%;min-width:0;max-width:none}.bite-forecast-details-summary{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;display:grid}.bite-forecast-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;min-width:0;display:grid}.modal-panel--keyboard-safe{max-height:min(760px, calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)))}.premium-field-label{color:var(--color-text-muted);flex-direction:column;gap:7px;font-size:.76rem;font-weight:800;display:flex}.competition-control-card{flex-direction:column;gap:12px;padding:12px;display:flex}.competition-quick-actions{grid-template-columns:1fr;gap:10px;display:grid}.competition-action-card{width:100%;min-height:64px;color:var(--color-text-platinum);text-align:left;background:#ffffff0b;border:1px solid #ffffff1a;border-radius:14px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.competition-action-icon{width:42px;height:42px;color:var(--color-arctic-cyan);background:#007aff2e;border-radius:12px;place-items:center;display:grid}.competition-action-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.competition-action-title{color:var(--color-text-platinum);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:850;overflow:hidden}.competition-action-description{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:.76rem;line-height:1.25}.competition-list-card{flex-direction:column;gap:10px;padding:14px;display:flex;overflow:hidden}.premium-empty-state{text-align:center;color:var(--color-text-muted);padding:24px 18px;font-size:.85rem;line-height:1.5}.premium-empty-state h2{color:var(--color-text-platinum);margin:0;font-size:1rem}.premium-empty-state p{margin:8px 0 0}.community-page-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.community-page-title{min-width:0}.community-header-action-slot{flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.community-notification-button{width:42px;height:42px;color:var(--color-text-platinum);background:#ffffff0b;border:1px solid #ffffff1c;border-radius:14px;place-items:center;display:inline-grid;position:relative;box-shadow:inset 0 1px #ffffff12,0 12px 28px #0003}.community-notification-button[aria-expanded=true]{color:var(--color-arctic-cyan);border-color:#00f2ff4d;box-shadow:0 0 18px #007aff29,inset 0 1px #ffffff17}.community-notification-dot{background:var(--color-arctic-cyan);border:2px solid #060d17f0;border-radius:999px;width:8px;height:8px;position:absolute;top:9px;right:9px}.uistio-attention-anchor{position:relative}.uistio-attention-dot{background:var(--color-arctic-cyan);pointer-events:none;border:2px solid #060d17f0;border-radius:999px;width:8px;height:8px;position:absolute;top:7px;right:8px;box-shadow:0 0 10px #00f2ffbf}.bottom-nav-icon-wrapper .uistio-attention-dot{top:-2px;right:-2px}.friend-section-button .uistio-attention-dot{top:5px;right:8px}.community-notification-count{background:var(--color-arctic-cyan);color:#03101b;font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;font-size:.62rem;font-weight:950;display:inline-flex;position:absolute;top:6px;right:6px}.community-glass-card{-webkit-backdrop-filter:blur(16px)saturate(1.28);background:#060d17ad;border:1px solid #ffffff17;border-radius:18px;position:relative;box-shadow:inset 0 1px #ffffff0e,0 18px 48px #00000042}.community-glass-card:before{content:"";pointer-events:none;border-radius:inherit;opacity:.68;background:linear-gradient(135deg,#ffffff1b,#0000 32%,#00f2ff0e);position:absolute;inset:0}.community-glass-card>*{z-index:1;position:relative}.community-hero-card{border-color:#00f2ff3d;flex-direction:column;justify-content:space-between;gap:16px;min-height:172px;padding:18px;display:flex;position:relative;overflow:hidden}.community-hero-card:after{content:"";pointer-events:none;filter:blur(4px);opacity:.82;background:radial-gradient(circle,#007aff42,#00f2ff1a 42%,#0000 70%);height:190px;position:absolute;inset:-36% -18% auto 20%}.community-section-stack{flex-direction:column;gap:14px;display:flex}.community-section-title-row{justify-content:space-between;align-items:center;gap:12px;padding-inline:2px;display:flex}.community-section-title-row h2,.community-section-title-row h3{color:var(--color-arctic-cyan);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:900}.community-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.community-action-card{width:100%;min-height:78px;color:var(--color-text-platinum);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.community-action-card strong{color:var(--color-text-white);font-size:.92rem;font-weight:850;line-height:1.2;display:block}.community-action-copy{min-width:0;display:block}.community-action-description{color:var(--color-text-muted);margin-top:3px;font-size:.72rem;line-height:1.25;display:block}.community-action-icon{width:38px;height:38px;color:var(--color-arctic-cyan);background:#007aff1f;border-radius:13px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff14}.community-action-icon svg{display:block}.community-chip-row{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;gap:8px;padding:1px 2px 4px;display:flex;overflow-x:auto}.community-filter-chip{min-height:38px;color:var(--color-text-platinum);white-space:nowrap;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff1a;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:.78rem;font-weight:800;display:inline-flex}.community-filter-chip-active{color:var(--color-text-white);background:linear-gradient(#007aff33,#00f2ff14);border-color:#00f2ff57;box-shadow:0 0 18px #007aff29,inset 0 1px #ffffff17}.community-rank-list{border-radius:18px;overflow:hidden}.community-rank-row{border-bottom:1px solid #ffffff12;grid-template-columns:34px 38px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:11px 13px;display:grid}.community-rank-row:last-child{border-bottom:0}.community-rank-number{width:28px;height:28px;color:var(--color-text-platinum);font-variant-numeric:tabular-nums;background:#ffffff12;border-radius:999px;place-items:center;font-size:.78rem;font-weight:900;display:inline-grid}.community-rank-number--top{color:var(--color-warning);background:#ffcd5024}.community-avatar-fallback{color:#03101b;background:linear-gradient(135deg,#00f2ffd1,#007aff6b);border-radius:999px;place-items:center;width:38px;height:38px;font-size:.72rem;font-weight:950;display:grid;box-shadow:inset 0 1px #ffffff47,0 8px 20px #007aff24}.community-rank-identity{min-width:0}.community-rank-identity strong{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-platinum);font-size:.9rem;font-weight:850;display:block;overflow:hidden}.community-rank-identity span{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);margin-top:3px;font-size:.72rem;display:block;overflow:hidden}.community-metric-value{color:var(--color-text-white);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1rem;font-weight:920}.community-empty-card{text-align:center;color:var(--color-text-muted);justify-items:center;gap:10px;padding:24px 18px;font-size:.86rem;line-height:1.5;display:grid}.community-empty-card h2,.community-empty-card h3{color:var(--color-text-platinum);margin:0;font-size:1rem;line-height:1.25}.community-empty-card p{margin:0}.community-subtle-badge{min-height:28px;color:var(--color-arctic-cyan);white-space:nowrap;background:#00f2ff13;border:1px solid #00f2ff38;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:.7rem;font-weight:900;display:inline-flex}.community-primary-cta{cursor:pointer;min-height:44px;color:var(--color-text-white);background:linear-gradient(135deg,#007affd6,#0099ffa8);border:1px solid #00f2ff38;border-radius:13px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.9rem;font-weight:800;display:inline-flex;box-shadow:0 12px 28px #007aff38}.community-ghost-cta{cursor:pointer;min-height:44px;color:var(--color-text-platinum);background:#ffffff0b;border:1px solid #ffffff1c;border-radius:13px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.9rem;font-weight:800;display:inline-flex}.community-select-shell{gap:8px;padding:12px;display:grid}.community-select-shell label{color:var(--color-text-muted);font-size:.74rem;font-weight:850}.community-card-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.community-card-meta-grid span{color:var(--color-text-muted);font-size:.68rem;display:block}.community-card-meta-grid strong{color:var(--color-text-platinum);font-variant-numeric:tabular-nums;margin-top:3px;font-size:.88rem;font-weight:850;display:block}@media (width<=380px){.community-action-grid{grid-template-columns:1fr}.community-rank-row{grid-template-columns:30px 34px minmax(0,1fr) auto;gap:8px;padding-inline:10px}.community-avatar-fallback{width:34px;height:34px}.community-card-meta-grid{grid-template-columns:1fr}}@media (width<=420px){.bite-forecast-details-summary{grid-template-columns:1fr;justify-items:center}.bite-forecast-stats-grid{width:100%}}@media (width>=520px){.bite-forecast-day-list{grid-template-columns:repeat(auto-fit,minmax(138px,1fr))}}.friend-section-tabs{gap:6px;display:flex;overflow-x:auto}.friend-section-button{flex:1 0 min(112px,34vw);min-height:40px}.friend-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.btn-danger{background:var(--color-danger);color:var(--color-text-white);border-radius:var(--radius-button);cursor:pointer;border:none;padding:12px 28px;font-size:.95rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-danger:hover{opacity:.9;box-shadow:0 0 20px #ff3d574d}.btn-cta{background:var(--color-electric-blue);color:var(--color-text-white);border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;width:80px;height:80px;font-size:1.5rem;font-weight:700;display:flex;position:relative}.btn-cta:before{content:"";border-radius:var(--radius-full);background:var(--color-electric-blue);opacity:.3;z-index:-1;animation:2.5s ease-in-out infinite pulse-glow;position:absolute;inset:-4px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-void-black)}::-webkit-scrollbar-thumb{background:var(--color-ocean-mid);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-electric-blue-dim)}.glass-widget{-webkit-backdrop-filter:blur(24px)saturate(1.4);border-radius:var(--radius-card);background:#ffffff0d;border:1px solid #ffffff1a;transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-widget:hover{border-color:#00f2ff40;box-shadow:0 0 20px #00f2ff14,0 0 60px #00f2ff0a}.glass-timeline{-webkit-backdrop-filter:blur(16px)saturate(1.2);border-radius:var(--radius-card);background:#ffffff08;border:1px solid #ffffff14}@keyframes rotate-glow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bite-gauge-glow{opacity:.4;animation:8s linear infinite rotate-glow}.bite-score-text{text-shadow:0 0 20px #00f2ff99,0 0 60px #00f2ff4d}.scroll-hidden{-ms-overflow-style:none;scrollbar-width:none}.scroll-hidden::-webkit-scrollbar{display:none}.timeline-item{scroll-snap-align:center;flex-shrink:0}.timeline-item-active{border-color:#00f2ff59;box-shadow:0 0 12px #00f2ff26}.weather-condition-icon{width:38px;height:38px;color:var(--color-arctic-cyan);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;flex:none;place-items:center;display:inline-grid;position:relative;box-shadow:inset 0 1px #ffffff1f}.weather-condition-icon--compact{border-radius:10px;width:32px;height:32px}.weather-condition-icon--clear-day{color:#ffcf5a;background:radial-gradient(circle at 35% 28%,#ffe69657,#ff98001f 58%,#ffffff0a);border-color:#ffcf5a42}.weather-condition-icon--clear-night,.weather-condition-icon--partly-cloudy,.weather-condition-icon--cloudy,.weather-condition-icon--fog{color:#9fc8ff}.weather-condition-icon--rain,.weather-condition-icon--snow{color:#70d8ff}.weather-condition-icon--thunder{color:var(--color-warning)}@keyframes pulse-ring{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}.btn-pulse-ring:after{content:"";border-radius:var(--radius-full);background:var(--color-electric-blue);z-index:-1;animation:2s ease-out infinite pulse-ring;position:absolute;inset:0}.truncate-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.gradient-ocean{background:linear-gradient(135deg, var(--color-deep-ocean), var(--color-ocean-surface))}.border-glow{border:1px solid var(--color-glass-border);transition:border-color .3s}.border-glow:hover{border-color:var(--color-electric-blue)}.app-loading-logo-shell{width:96px;height:96px;box-shadow:none;filter:drop-shadow(0 0 22px #007aff47);background:radial-gradient(circle,#007aff2e 0%,#00f2ff0f 42%,#0000 72%);border-radius:50%;place-items:center;display:grid;position:relative}.app-loading-logo-shell:before{content:"";filter:blur(10px);z-index:-1;background:radial-gradient(circle,#007aff1f,#0000 68%);border-radius:50%;position:absolute;inset:10px}.app-loading-logo{object-fit:contain;width:80px;height:80px;box-shadow:none;background:0 0}.auth-logo-shell{filter:drop-shadow(0 0 24px #007aff47);place-items:center;width:100%;margin:0 auto 28px;display:grid}.auth-logo{object-fit:contain;width:clamp(160px,38vw,200px);max-width:58dvw;height:clamp(160px,38vw,200px);max-height:24dvh;box-shadow:none;background:0 0}.modal-backdrop{z-index:220;padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);background:#020408b8;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.modal-panel{width:min(var(--modal-panel-width,440px), 100%);max-height:min(760px, calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));flex-direction:column;display:flex;overflow:hidden}.modal-scroll-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}.modal-actions{background:linear-gradient(#060d1700,#060d17f5 22%);flex-shrink:0;padding-top:12px;position:sticky;bottom:0}.weather-location-sheet{padding:calc(12px + env(safe-area-inset-top)) 0 0;align-items:end}.weather-location-sheet-panel{width:min(100%,520px);max-height:min(760px, calc(100dvh - 12px - env(safe-area-inset-top)));background:#060d17fa;border-bottom:0;border-radius:20px 20px 0 0;margin-inline:auto;animation:.18s ease-out weather-location-sheet-enter;position:relative}@keyframes weather-location-sheet-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.weather-location-sheet-header{border-bottom:1px solid #ffffff12;align-items:center;gap:12px;padding:16px 64px 12px 16px;display:flex}.weather-location-sheet-header>div{flex:1;min-width:0}.weather-location-sheet-header h2,.weather-location-sheet-eyebrow{margin:0}.weather-location-sheet-header h2{color:var(--color-text-platinum);font-size:1.05rem;font-weight:850}.weather-location-sheet-eyebrow{color:var(--color-arctic-cyan);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:.66rem;font-weight:850}.weather-location-sheet-close{z-index:2;padding:0;position:absolute;top:12px;right:16px}.weather-location-sheet-body{gap:12px;padding:14px 16px;display:grid}.weather-location-search-field{gap:7px;display:grid}.weather-location-search-input-shell{display:block;position:relative}.weather-location-search-input-shell>svg{z-index:1;color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.weather-location-search-input-shell .input-oceanic{min-height:44px;padding-left:42px}.weather-location-current-action,.weather-location-result{width:100%;min-height:44px;color:var(--color-text-platinum);text-align:left;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff1a;border-radius:13px;align-items:center;gap:11px;padding:10px 12px;display:flex}.weather-location-current-action{color:var(--color-arctic-cyan);background:#00f2ff11;border-color:#00f2ff38;font-weight:800}.weather-location-current-action:disabled,.weather-location-result:disabled,.weather-location-retry:disabled{opacity:.45;cursor:not-allowed}.weather-location-results{gap:8px;min-width:0;display:grid}.weather-location-result-copy{gap:2px;min-width:0;display:grid}.weather-location-result-label{overflow-wrap:anywhere;color:var(--color-text-platinum);font-size:.88rem;line-height:1.3}.weather-location-result small{overflow-wrap:anywhere;color:var(--color-text-muted);font-size:.72rem}.weather-location-state,.weather-location-search-error p,.weather-location-selection-error{color:var(--color-text-muted);margin:0;font-size:.8rem;line-height:1.45}.weather-location-search-error{gap:8px;display:grid}.weather-location-selection-error{color:var(--color-warning);font-weight:700}.weather-location-retry{justify-self:start;min-height:44px;padding:9px 14px}.weather-location-attribution{padding:10px 16px calc(10px + env(safe-area-inset-bottom));color:var(--color-text-muted);border-top:1px solid #ffffff12;flex-shrink:0;font-size:.7rem;line-height:1.35}.weather-location-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=600px){.weather-location-sheet{padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));align-items:center}.weather-location-sheet-panel{border-bottom:1px solid #ffffff14;border-radius:20px}}@media (prefers-reduced-motion:reduce){.weather-location-sheet-panel{animation:none}}.home-bite-index-chart{min-width:0;margin:0;padding:0 14px 8px}.home-bite-index-chart__header{justify-content:space-between;align-items:baseline;gap:12px;padding:0 2px 7px;display:flex}.home-bite-index-chart__header h3{color:var(--color-text-platinum);font-size:.76rem;font-weight:650}.home-bite-index-chart__header span{color:#87d7b4;text-align:right;font-size:.66rem;font-weight:620}.home-bite-index-chart__svg{width:100%;height:128px;display:block;overflow:visible}.home-bite-index-chart__surface{fill:#040d17ad;stroke:#a4cdec1a;stroke-width:1px}.home-bite-index-chart__reference{stroke:#94a9be21;stroke-width:1px}.home-bite-index-chart__path{stroke:#378cf1;stroke-width:2.8px;stroke-linecap:round;stroke-linejoin:round}.home-bite-index-chart__current-point{fill:#06111d;stroke:#d8f8ff;stroke-width:2.3px}.home-bite-index-chart__tick{fill:#8da0b4;font-family:var(--font-sans);font-variant-numeric:tabular-nums;font-size:9.5px}.home-bite-index-chart__status{color:var(--color-text-muted);text-align:center;margin:6px 0 0;font-size:.7rem}.weather-analysis-card{-webkit-backdrop-filter:blur(18px);background:#070f1bbd;border:1px solid #a5cdee1c;border-radius:22px;gap:14px;padding:16px;box-shadow:inset 0 1px #ffffff09,0 18px 44px #0003}.weather-analysis-time-control{grid-template-columns:44px minmax(0,1fr) auto 44px;align-items:center;gap:7px;display:grid}.weather-analysis-time-control button{min-width:44px;min-height:44px;color:var(--color-text-platinum);font-family:var(--font-sans);cursor:pointer;background:#040e19a8;border:1px solid #a5cdee1f;border-radius:12px;place-items:center;padding:0;font-size:.72rem;font-weight:650;display:inline-grid}.weather-analysis-time-control button:disabled{color:var(--color-text-dim);opacity:.48;cursor:default}.weather-analysis-time-control button:focus-visible,.weather-data-sources summary:focus-visible{outline:2px solid var(--color-arctic-cyan);outline-offset:2px}.weather-analysis-time-control output{min-width:0;color:var(--color-text-platinum);font-variant-numeric:tabular-nums;text-align:center;overflow-wrap:anywhere;grid-column:2;font-size:.73rem;font-weight:650;line-height:1.25}.weather-analysis-time-control .weather-analysis-time-control__now{width:auto;color:var(--color-arctic-cyan);grid-column:3;padding:0 10px}.weather-analysis-time-control button:last-child{grid-column:4}.weather-analysis-card .weather-chart__heading-row{margin-bottom:5px}.weather-analysis-card .weather-chart__heading-row h3{font-size:.86rem;font-weight:650}.weather-chart__selected-value{color:var(--color-text-platinum);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.76rem;font-weight:650}.weather-analysis-card .weather-chart__legend{margin-bottom:3px;font-size:.64rem}.weather-analysis-card .weather-chart__svg{height:174px}.weather-analysis-card .bite-index-chart .weather-chart__svg{height:136px}.weather-analysis-card .weather-chart__plot-surface{fill:#030c1599;stroke:#a5cdee14}.weather-analysis-card .weather-chart__path{stroke:#62e6f4;stroke-width:2.8px;filter:none}.weather-analysis-card .weather-chart__path--forecast{opacity:.74}.weather-analysis-card .bite-index-chart__path{stroke:#378cf1;opacity:1}.weather-analysis-card .weather-chart__axis-tick line{stroke:#91a8be17}.weather-chart__selection-line--now{stroke-dasharray:3 4}.weather-chart__fishing-window{fill:#4bc79514;stroke:none}.weather-analysis-card__divider{background:#a5cdee14;height:1px}.weather-analysis-card__window{color:#9fb4c7;align-items:center;gap:8px;margin:0;font-size:.7rem;line-height:1.4;display:flex}.weather-analysis-card__window i{background:#4bc795;border-radius:50%;flex:none;width:7px;height:7px}.weather-v2-score-placeholder{text-align:center;align-content:center;place-items:center;gap:4px;min-height:262px;padding:22px 16px;display:grid}.weather-v2-score-placeholder>span:first-child{color:var(--color-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:650}.weather-v2-score-placeholder strong{color:#8093a6;font-size:3rem;line-height:1.15}.weather-v2-score-placeholder>span:not(:first-child){color:#a4b5c5;font-size:.8rem;font-weight:650}.weather-v2-score-placeholder p{max-width:300px;color:var(--color-text-muted);margin:10px 0 0;font-size:.72rem;line-height:1.5}.weather-chart-placeholder{background:linear-gradient(#0000 32%,#91a8be14 33%,#0000 34% 65%,#91a8be14 66%,#0000 67%),#030c1599;border:1px solid #a5cdee14;border-radius:16px}.weather-chart-placeholder--pressure{height:174px}.weather-chart-placeholder--bite{height:136px}.weather-v2-metric-placeholder{min-height:70px}.weather-data-sources{color:var(--color-text-muted);padding:0 2px;font-size:.68rem;line-height:1.5}.weather-data-sources summary{color:#98adbf;cursor:pointer;min-height:44px;font-weight:650}.weather-data-sources p{overflow-wrap:anywhere;margin:5px 0}@media (width<=420px){.home-bite-index-chart__header{gap:3px;display:grid}.home-bite-index-chart__header span{text-align:left}.weather-analysis-card{gap:12px;padding:14px 10px}.weather-factor-donut{width:min(100%,258px)}.weather-factor-legend{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.home-bite-index-chart *,.weather-analysis-card *,.weather-factor-panel *{transition:none!important;animation:none!important}}.weather-location-trigger{max-width:100%;min-height:44px;color:var(--color-text-muted);text-align:left;cursor:pointer;background:#00f2ff0e;border:1px solid #00f2ff29;border-radius:12px;align-items:center;gap:6px;margin-top:4px;padding:8px 10px;font-size:.75rem;font-weight:750;line-height:1.25;display:inline-flex}.weather-location-trigger span{overflow-wrap:anywhere;min-width:0}.weather-location-trigger:focus-visible{outline:2px solid var(--color-arctic-cyan);outline-offset:3px}.weather-location-post-close-alert{gap:10px;display:grid}.weather-location-post-close-alert p{margin:0}.weather-location-post-close-reopen{justify-self:start;min-height:44px;padding:9px 14px}.battle-detail{flex-direction:column;gap:14px;display:flex}.battle-console,.battle-editor{border-radius:min(var(--radius-card), 16px);padding:16px}.battle-console{flex-direction:column;gap:12px;display:flex}.battle-console__topline,.battle-console__title-row,.battle-editor__header,.battle-section-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.battle-console__title-row h2,.battle-editor__header h2,.battle-section-header h3{color:var(--color-text-platinum);letter-spacing:0;margin:0}.battle-console__title-row h2,.battle-editor__header h2{font-size:1.08rem}.battle-section-header h3{font-size:.88rem}.battle-console__title-row p{color:var(--color-text-muted);margin:5px 0 0;font-size:.8rem}.battle-eyebrow{color:var(--color-arctic-cyan);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:900}.battle-status-chip,.battle-chip-row span,.battle-section-header span{min-height:28px;color:var(--color-text-platinum);white-space:nowrap;background:#ffffff12;border:1px solid #ffffff1f;border-radius:999px;align-items:center;padding:0 10px;font-size:.72rem;font-weight:850;display:inline-flex}.battle-chip-row{flex-wrap:wrap;gap:8px;display:flex}.battle-prize-row{color:var(--color-text-platinum);margin:0;font-size:.84rem;line-height:1.45}.battle-prize-row strong{color:var(--color-arctic-cyan)}.battle-alert{border-radius:12px;padding:10px 12px;font-size:.8rem;font-weight:800}.battle-alert--success{color:var(--color-arctic-cyan);background:#00f2ff17;border:1px solid #00f2ff3d}.battle-alert--warning{color:var(--color-warning);background:#ffcd5017;border:1px solid #ffcd503d}.battle-submit-button{justify-content:center}.battle-submit-panel{-webkit-backdrop-filter:blur(18px)saturate(145%);background:linear-gradient(135deg,#0ea5e924,#0f172a6b),#08122294;border:1px solid #7dd3fc38;border-radius:18px;padding:10px;box-shadow:inset 0 1px #ffffff1f,0 18px 44px #00000047}.battle-submit-button--mobile{border-radius:14px;min-height:48px}.battle-submit-button--mobile:disabled{opacity:.58;box-shadow:none}.battle-submit-button--premium{white-space:normal;text-align:center;background:radial-gradient(circle at 18% 0,#ffffff42,#0000 28%),linear-gradient(135deg,#2563ebc7,#06b6d452);border:1px solid #7dd3fc57;border-radius:16px;width:100%;min-height:62px;line-height:1.15;box-shadow:inset 0 1px #ffffff2e,0 14px 30px #2563eb38}.battle-submit-button__label{overflow-wrap:anywhere;min-width:0;display:block}.battle-submit-button--premium:disabled{opacity:.52;filter:saturate(.75);box-shadow:none}.battle-state-card,.battle-empty-state{color:var(--color-text-muted);padding:16px;font-size:.82rem}.battle-leaderboard,.battle-invite-panel,.battle-invite-list,.battle-editor__body,.battle-friend-picker{flex-direction:column;gap:10px;display:flex}.battle-row,.battle-invite-row{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.battle-row{border-radius:min(var(--radius-card), 14px);grid-template-columns:40px minmax(0,1fr) auto auto;padding:12px}.battle-invite-row{padding:10px 0}.social-avatar{color:#03101b;background:linear-gradient(135deg,#00f2fff5,#007aff8f);border-radius:999px;flex:none;place-items:center;width:40px;height:40px;font-size:.72rem;font-weight:950;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff47,0 10px 22px #007aff29}.social-avatar img{object-fit:cover;width:100%;height:100%;display:block}.social-avatar--small{width:34px;height:34px;font-size:.68rem}.battle-avatar{color:#03101b;background:linear-gradient(135deg,#00f2fff5,#007aff8f);border-radius:999px;place-items:center;width:40px;height:40px;font-size:.72rem;font-weight:950;display:grid;box-shadow:inset 0 1px #ffffff47,0 10px 22px #007aff29}.battle-row--own{outline:1px solid #00f2ff6b;box-shadow:inset 0 0 0 1px #00f2ff1a}.battle-row__identity{min-width:0}.battle-row__handle{color:var(--color-text-platinum);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.9rem;font-weight:850;overflow:hidden}.battle-row__meta{color:var(--color-text-muted);margin:3px 0 0;font-size:.72rem}.battle-row__score{color:var(--color-text-white);white-space:nowrap;font-weight:900}.battle-rank-badge{font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:40px;min-height:26px;padding:0 9px;font-size:.75rem;font-weight:950;display:inline-grid}.battle-rank-badge--gold{color:#2a1a00;background:linear-gradient(135deg,#ffe9a6,#f6b73c)}.battle-rank-badge--silver{color:#101923;background:linear-gradient(135deg,#f3f7fb,#aeb8c5)}.battle-rank-badge--bronze{color:#241008;background:linear-gradient(135deg,#f6c08b,#b76b32)}.battle-rank-badge--plain{color:#ffffffd6;background:#ffffff14;border:1px solid #ffffff24}.battle-invite-panel{padding:14px 0}.battle-invite-card{padding:14px}.battle-invite-actions,.battle-editor__actions{align-items:center;gap:8px;display:flex}.battle-editor__body{padding-block:12px}.battle-editor__dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.battle-mode-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.battle-friend-option{min-height:48px;color:var(--color-text-platinum);grid-template-columns:auto 40px minmax(0,1fr);align-items:center;gap:10px;font-size:.84rem;display:grid}@media (width<=420px){.battle-editor__dates,.battle-mode-toggle{grid-template-columns:1fr}.battle-row{grid-template-columns:40px minmax(0,1fr) auto}.battle-row__score{grid-column:2}}.uistio-icon-button{touch-action:manipulation;flex-shrink:0;place-items:center;min-width:44px;min-height:44px;padding:0;line-height:0;display:inline-grid}.uistio-icon-button>svg{display:block}.premium-surface{-webkit-backdrop-filter:blur(18px)saturate(1.28);background:#060d17b8;border:1px solid #ffffff14;border-radius:16px;box-shadow:inset 0 1px #ffffff0e,0 18px 50px #00000038}.premium-surface--quiet{background:#060d1794;border-color:#fff1;box-shadow:inset 0 1px #ffffff0a,0 12px 34px #0000002e}.premium-surface--accent{background:radial-gradient(circle at 22% 0,#007aff29,#0000 34%),#060d17bd;border-color:#00f2ff33}.premium-action-card{width:100%;min-height:68px;color:var(--color-text-platinum);text-align:left;cursor:pointer;touch-action:manipulation;background:#060d17a3;border:1px solid #ffffff14;border-radius:16px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:14px;transition:border-color .2s,background .2s,transform .2s;display:grid;box-shadow:inset 0 1px #ffffff0b}.premium-action-card:active{transform:translateY(1px)}.premium-action-icon{width:42px;height:42px;color:var(--color-arctic-cyan);background:#007aff1f;border-radius:14px;flex:none;place-items:center;display:grid}.premium-action-title{color:var(--color-text-platinum);font-size:.9rem;font-weight:800;line-height:1.2;display:block}.premium-action-description{color:var(--color-text-muted);overflow-wrap:anywhere;margin-top:3px;font-size:.72rem;line-height:1.35;display:block}.premium-status-card{color:var(--color-text-muted);background:#ffffff0b;border:1px solid #ffffff14;border-radius:14px;padding:12px 14px;font-size:.78rem;line-height:1.45}.premium-status-card--warning{color:#ffd58a;background:#ffb30014;border-color:#ffb3003d}.premium-status-card--danger{color:#ffb4c0;background:#ff3d5714;border-color:#ff3d5742}.premium-form-section{gap:12px;display:grid}.premium-field-helper{color:var(--color-text-muted);margin:4px 0 0;font-size:.72rem;line-height:1.45}.map-control-layer--premium{pointer-events:none}.map-fishing-spots-panel--premium{background:#060d17c7;border-color:#ffffff17;border-radius:18px}.catch-location-card{gap:12px;padding:16px;display:grid}.catch-location-summary{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.catch-location-coordinate{color:var(--color-text-platinum);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:.86rem;font-weight:800}.catch-location-picker-coordinate{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.catch-location-actions{gap:10px;display:grid}.catch-location-secondary-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.settings-toggle-row{border-bottom:1px solid #ffffff12;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-height:58px;padding:14px 0;display:grid}.settings-toggle-row:last-child{border-bottom:0}.settings-toggle-copy{gap:3px;min-width:0;display:grid}.settings-toggle-title{color:var(--color-text-platinum);font-size:.85rem;font-weight:750;line-height:1.25}.settings-toggle-description{color:var(--color-text-muted);font-size:.7rem;line-height:1.35}.uistio-toggle{appearance:none;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff24;border-radius:999px;width:42px;height:26px;transition:background .2s,border-color .2s,opacity .2s;position:relative}.uistio-toggle:focus-visible{outline:2px solid var(--color-arctic-cyan);outline-offset:3px}.uistio-toggle:after{content:"";background:#ffffffe0;border-radius:999px;width:18px;height:18px;transition:transform .2s,background .2s;position:absolute;top:3px;left:3px}.uistio-toggle:checked{background:#007affbf;border-color:#00f2ff57}.uistio-toggle:checked:after{background:#fff;transform:translate(16px)}.uistio-toggle:disabled{cursor:not-allowed;opacity:.45}.notification-center-card{margin-top:10px}.notification-list-row{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-top:1px solid #ffffff14;border-radius:0;padding:10px 0 2px}.battle-editor-page{background:var(--color-void-black);min-height:100dvh;padding-bottom:calc(92px + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.battle-editor-page-header{width:100%;max-width:600px;padding:max(28px, env(safe-area-inset-top,0px)) 20px 12px;align-items:center;gap:12px;margin:0 auto;display:flex}.battle-editor-page-header>div{min-width:0}.battle-editor-page-header h2{color:var(--color-text-platinum);letter-spacing:0;margin:0;font-size:1.08rem;line-height:1.15}.battle-editor-page-body{gap:14px;width:100%;max-width:600px;margin:0 auto;padding:0 16px 18px;display:grid}.battle-editor-page-body>.premium-form-section>.premium-surface{padding:14px}.battle-editor-actions{z-index:4;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(18px)saturate(1.3);background:#060d17eb;border-top:1px solid #ffffff14;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:10px;margin:4px -16px -18px;display:grid;position:sticky;bottom:0}@media (width<=360px){.catch-location-secondary-actions,.battle-editor-actions{grid-template-columns:1fr}}.map-depth-dialog-close{touch-action:manipulation;place-items:center;line-height:0;display:inline-grid}.map-depth-dialog-close>svg{display:block}.map-screen-root{overscroll-behavior:none;background:var(--color-void-black);width:100%;height:100%;min-height:100dvh;position:relative;overflow:hidden}.map-control-layer{top:calc(14px + env(safe-area-inset-top,0px));z-index:32;pointer-events:none;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;gap:8px;display:flex;position:absolute;left:12px;right:84px}.map-status-cluster{pointer-events:none;flex-direction:column;order:2;align-items:flex-start;gap:6px;min-width:0;max-width:min(56vw,240px);display:flex}.map-status-cluster:empty{display:none}.map-status-pill,.map-layer-button{color:var(--color-text-platinum);-webkit-backdrop-filter:blur(20px)saturate(1.45);background:#060d17c7;border:1px solid #00f2ff29;border-radius:14px;justify-content:center;align-items:center;gap:7px;font-size:.74rem;font-weight:750;line-height:1.2;display:inline-flex;box-shadow:inset 0 1px #ffffff14,0 12px 32px #0000003d}.map-status-pill{text-overflow:ellipsis;white-space:nowrap;width:fit-content;max-width:100%;min-height:34px;padding:7px 11px;overflow:hidden}.map-status-pill-error{color:#ffb4b4;background:#ff585824;border-color:#ff585852}.map-layer-button{cursor:pointer;pointer-events:auto;touch-action:manipulation;white-space:nowrap;flex:none;order:1;min-width:44px;max-width:132px;min-height:44px;padding:0 13px}.map-layer-button[aria-pressed=true]{background:#00f2ff2e;border-color:#00f2ff75;box-shadow:inset 0 1px #ffffff1f,0 0 18px #00f2ff29}.map-bottom-overlay-stack{z-index:35;pointer-events:none;flex-direction:column-reverse;align-items:center;gap:8px;display:flex;position:absolute;left:12px;right:12px}.map-fishing-spots-panel{width:min(360px,100%);max-width:100%;color:var(--color-text-platinum);-webkit-backdrop-filter:blur(22px)saturate(1.45);pointer-events:auto;background:#060d17d1;border:1px solid #ffffff1a;border-radius:16px;margin:0 auto;padding:8px;box-shadow:inset 0 1px #ffffff14,0 16px 44px #00000047}.map-fishing-spots-panel-collapsed,.map-fishing-spots-panel-expanded{flex-direction:column;gap:8px;display:flex}.map-fishing-spots-header{width:100%;min-height:48px;color:var(--color-text-platinum);text-align:left;cursor:pointer;touch-action:manipulation;background:#ffffff09;border:0;border-radius:12px;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 10px 8px;display:grid;position:relative}.map-sheet-handle{background:#ffffff2e;border-radius:999px;width:34px;height:3px;position:absolute;top:5px;left:50%;transform:translate(-50%)}.map-fishing-spots-title{white-space:nowrap;align-items:center;gap:7px;min-width:0;font-size:.78rem;font-weight:850;line-height:1.2;display:inline-flex}.map-fishing-spots-summary{min-width:0;color:var(--color-text-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;font-weight:750;line-height:1.2;overflow:hidden}.map-fishing-spots-panel-body{border-top:1px solid #ffffff14;flex-direction:column;gap:8px;padding-top:8px;display:flex}.map-fishing-layer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.map-fishing-layer-button{min-height:44px;color:var(--color-text-platinum);cursor:pointer;touch-action:manipulation;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:0 8px;font-size:.72rem;font-weight:850}.map-fishing-layer-button[data-layer=private][aria-pressed=true]{background:#22c55e29;border-color:#22c55e8c}.map-fishing-layer-button[data-layer=community][aria-pressed=true]{background:#facc1526;border-color:#facc158c}.map-fishing-layer-button[data-layer=pending][aria-pressed=true]{background:#fb718529;border-color:#fb71858c}.map-fishing-add-button{min-height:44px;color:var(--color-text-platinum);cursor:pointer;touch-action:manipulation;background:#00f2ff24;border:1px solid #00f2ff59;border-radius:12px;justify-content:center;align-items:center;gap:7px;font-size:.76rem;font-weight:850;display:flex}.map-fishing-add-button:disabled{cursor:not-allowed;opacity:.62}.map-fishing-spot-selection-panel{width:min(520px,100%);max-width:100%;color:var(--color-text-platinum);-webkit-backdrop-filter:blur(18px)saturate(1.3);pointer-events:auto;background:#060d17e6;border:1px solid #00f2ff47;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:12px 14px;display:flex;box-shadow:0 18px 60px #00000057}.map-overlay-bottom-sheet{-webkit-backdrop-filter:blur(16px)saturate(1.3);background:#060d17c7;border:1px solid #ffffff14;border-radius:10px;width:min(520px,100%);max-width:100%;margin:0 auto;padding:8px 10px;box-shadow:0 12px 38px #0000003d}.map-depth-attribution{color:var(--color-text-muted);white-space:normal;overflow-wrap:anywhere;text-wrap:pretty;pointer-events:none;font-size:.62rem;line-height:1.45}.map-depth-dialog-copy{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-wrap:anywhere;max-height:min(34dvh,220px);overflow-y:auto}.competition-date-row{align-items:center;gap:8px;min-width:0;display:flex}.competition-date-row svg{flex:none}.competition-date-text{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0;line-height:1.25;display:block}@media (width<=380px){.map-control-layer{top:calc(12px + env(safe-area-inset-top,0px));gap:6px;left:10px;right:78px}.map-status-cluster{max-width:min(52vw,210px)}.map-layer-button{max-width:116px;padding:0 11px;font-size:.7rem}.map-fishing-spots-panel{padding:7px}.map-fishing-spots-header{grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;gap:6px;padding-inline:8px}.map-fishing-spots-summary{font-size:.62rem}.map-overlay-bottom-sheet{max-width:100%}.map-bottom-overlay-stack{left:10px;right:10px}.map-fishing-spot-selection-panel{padding:10px 11px}.app-loading-logo-shell{width:88px;height:88px}.app-loading-logo{width:74px;height:74px}.auth-logo{width:clamp(148px,52vw,180px);height:clamp(148px,52vw,180px);max-height:22dvh}.modal-backdrop{padding-inline:10px}.competition-date-text{font-size:.68rem}}.input-oceanic{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-button);width:100%;color:var(--color-text-white);font-family:var(--font-sans);background:#ffffff0d;border:1px solid #ffffff1a;outline:none;padding:12px 16px;font-size:.9rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.input-oceanic::placeholder{color:var(--color-text-dim)}.input-oceanic:focus{background:#ffffff12;border-color:#00f2ff66;box-shadow:0 0 16px #00f2ff1a,0 0 40px #00f2ff0d}.input-oceanic option{background:var(--color-deep-ocean);color:var(--color-text-white)}textarea.input-oceanic{line-height:1.5}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.mapboxgl-ctrl-top-right{top:calc(58px + env(safe-area-inset-top,0px))!important;right:12px!important}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{margin:0 0 8px!important}.mapboxgl-ctrl-group{-webkit-backdrop-filter:blur(18px)saturate(1.35);overflow:hidden;background:#060d17c2!important;border:1px solid #ffffff1f!important;border-radius:12px!important;box-shadow:inset 0 1px #ffffff14,0 12px 32px #0000003d!important}.mapboxgl-ctrl-group button{width:34px!important;height:34px!important}.mapboxgl-ctrl-attrib{opacity:1;-webkit-backdrop-filter:blur(14px)saturate(1.25);max-width:min(66vw,300px)!important;color:var(--color-text-muted)!important;background:#060d17b8!important;border-radius:10px!important;font-size:.65rem!important}.mapboxgl-ctrl-attrib a{color:var(--color-text-platinum)!important}.mapboxgl-ctrl-logo{opacity:1}.bottom-nav{z-index:100;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(24px)saturate(1.5);background:#060d17d1;border-top:1px solid #007aff1f;justify-content:space-around;align-items:flex-end;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{cursor:pointer;color:var(--color-text-dim);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:3px;padding:6px 10px;transition:color .25s;display:flex;position:relative}.bottom-nav-item:hover{color:var(--color-text-muted)}.bottom-nav-item-active{color:var(--color-arctic-cyan)}.bottom-nav-icon-wrapper{justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative}.bottom-nav-indicator{background:var(--color-arctic-cyan);border-radius:50%;width:4px;height:4px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%);box-shadow:0 0 8px #00f2ff99,0 0 20px #00f2ff4d}.bottom-nav-label{letter-spacing:.03em;font-size:.6rem;font-weight:500}.bottom-nav-cta{cursor:pointer;width:56px;height:56px;color:var(--color-text-white);background:linear-gradient(135deg, var(--color-electric-blue), #09f);-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;display:flex;position:relative;transform:translateY(-12px);box-shadow:0 4px 20px #007aff66,0 0 40px #007aff26}.bottom-nav-cta:hover{transform:translateY(-14px);box-shadow:0 6px 28px #007aff80,0 0 60px #007aff33}.bottom-nav-cta:active{transform:translateY(-10px)}.bottom-nav-cta-ring{background:var(--color-electric-blue);opacity:0;z-index:-1;border-radius:50%;animation:2.5s ease-out infinite nav-cta-pulse;position:absolute;inset:-3px}@keyframes nav-cta-pulse{0%{opacity:.35;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.profile-avatar{background:#ffffff0d;border:2px solid #00f2ff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:80px;display:flex;overflow:hidden;box-shadow:0 0 20px #00f2ff1a}.profile-avatar img{object-fit:cover;width:100%;height:100%}.stat-card{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-glass);text-align:center;background:#ffffff0a;border:1px solid #ffffff14;padding:16px;transition:border-color .3s,box-shadow .3s}.stat-card:hover{border-color:#00f2ff33;box-shadow:0 0 16px #00f2ff0f}.settings-row{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.settings-row:last-child{border-bottom:none}.factor-bar{background:#ffffff0f;border-radius:3px;width:100%;height:6px;overflow:hidden}.factor-bar-fill{border-radius:3px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.section-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.section-header:before{content:"";background:var(--color-arctic-cyan);border-radius:2px;flex-shrink:0;width:3px;height:16px}.weather-chart-card{gap:18px;min-width:0;padding:16px;display:grid;overflow:hidden}.weather-pressure-chart,.bite-index-chart{min-width:0;margin:0}.weather-chart__heading-row{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.weather-chart__heading-row h3{min-width:0;color:var(--color-text-platinum);overflow-wrap:anywhere;font-size:.86rem;font-weight:750;line-height:1.35}.weather-chart__heading-meta{flex:none;align-items:center;gap:7px;display:flex}.weather-chart__selected-time{color:var(--color-text-platinum);font-variant-numeric:tabular-nums;white-space:nowrap;background:#007aff14;border:1px solid #00f2ff38;border-radius:999px;padding:4px 7px;font-size:.64rem;font-weight:750}.weather-chart__unit{color:var(--color-text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex:none;font-size:.68rem}.weather-chart__legend{color:var(--color-text-muted);flex-wrap:wrap;gap:5px 14px;margin-bottom:8px;font-size:.66rem;line-height:1.35;display:flex}.weather-chart__legend span{align-items:center;gap:6px;display:inline-flex}.weather-chart__legend-line{border-top:2px solid var(--color-arctic-cyan);width:22px;display:inline-block}.weather-chart__legend-line--dashed{opacity:.72;border-top-style:dashed}.weather-chart__svg{touch-action:pan-y;cursor:crosshair;width:100%;height:196px;display:block;overflow:visible}.weather-chart__plot-surface{fill:url(#weather-chart-surface-gradient);stroke:#7dd3fc1c;stroke-width:1px}.bite-index-chart__plot-surface{fill:url(#bite-index-chart-surface-gradient)}.bite-index-chart .weather-chart__svg{height:132px}.weather-pressure-chart--compact{padding:0 14px 4px}.weather-pressure-chart--compact .weather-chart__svg{height:124px}.weather-pressure-chart--compact .weather-chart__legend{margin-bottom:4px}.weather-chart__axis-tick line{stroke:#8899aa21;stroke-width:1px}.weather-chart__axis-tick text,.weather-chart__time-tick,.weather-chart__now-label{fill:var(--color-text-muted);font-family:var(--font-sans);font-variant-numeric:tabular-nums;font-size:10px}.weather-chart__now-label{fill:var(--color-text-platinum);font-weight:800}.weather-chart__path{stroke:var(--color-arctic-cyan);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6px;filter:drop-shadow(0 0 4px #00f2ff33)}.weather-chart__path--forecast{opacity:.72}.bite-index-chart__path{stroke:var(--color-electric-blue);filter:drop-shadow(0 0 4px #007aff42)}.weather-chart__selected-point{fill:var(--color-void-black);stroke:var(--color-text-platinum);stroke-width:2.5px}.bite-index-chart__selected-point{stroke:var(--color-electric-blue)}.weather-chart__tooltip{pointer-events:none;filter:drop-shadow(0 7px 12px #00000080)}.weather-chart__tooltip rect{fill:#05101bf0;stroke:#00f2ff85;stroke-width:1px}.bite-index-chart__tooltip rect{stroke:#398bffad}.weather-chart__tooltip-value,.weather-chart__tooltip-time{fill:var(--color-text-platinum);font-family:var(--font-sans);font-variant-numeric:tabular-nums;font-size:9px;font-weight:750}.weather-chart__tooltip-time{fill:var(--color-text-muted);font-size:7.5px;font-weight:650}.weather-chart__interaction-hint{color:var(--color-text-muted);text-align:center;margin-top:3px;font-size:.64rem;font-weight:650}.weather-chart__stepper{justify-content:center;gap:8px;margin-top:6px;display:flex}.weather-chart__stepper-button{width:44px;min-width:44px;min-height:44px;color:var(--color-text-platinum);cursor:pointer;background:linear-gradient(145deg,#0e273bd1,#020e18bd);border:1px solid #00f2ff3d;border-radius:999px;padding:0;font-size:1.05rem;font-weight:700;line-height:1;box-shadow:inset 0 1px #ffffff12,0 6px 16px #0000003d}.weather-chart__stepper-button:focus-visible{outline:2px solid var(--color-arctic-cyan);outline-offset:2px}.weather-chart__stepper-button:disabled{opacity:.42;cursor:default}.weather-chart__now-line{stroke:var(--color-text-platinum);stroke-dasharray:2 4;stroke-width:1.25px}.weather-chart__selection-line{stroke:var(--color-arctic-cyan);stroke-width:2px}.weather-chart__fishing-window{fill:#00e67617;stroke:#00e67657;stroke-width:1px}.weather-chart__summary,.weather-chart__source,.weather-chart__source-details,.weather-chart__window-summary,.weather-chart__empty{color:var(--color-text-muted);margin-top:8px;font-size:.7rem;line-height:1.5}.weather-chart__summary{color:var(--color-text-platinum)}.weather-chart__source{overflow-wrap:anywhere}.weather-chart__source-details{overflow-wrap:anywhere;border-top:1px solid #ffffff0f}.weather-chart__source-details summary{min-height:44px;color:var(--color-text-muted);cursor:pointer;align-items:center;font-size:.68rem;font-weight:700;display:flex}.weather-chart__source-details[open] summary{color:var(--color-text-platinum)}.weather-chart__window-summary{padding-left:18px}p.weather-chart__window-summary{padding-left:0}.weather-chart__empty{text-align:center;border:1px dashed #8899aa42;border-radius:12px;padding:18px 12px}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.weather-chart-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.weather-chart-range__button{min-width:0;min-height:44px;color:var(--color-text-muted);font:inherit;cursor:pointer;background:#ffffff09;border:1px solid #ffffff1a;border-radius:12px;font-size:.78rem;font-weight:750}.weather-chart-range__button--active{color:var(--color-text-platinum);background:#007aff24;border-color:#00f2ff57}.weather-chart-range__button:focus-visible,.weather-v2-window:focus-visible,.weather-v2-forecast-point:focus-visible,.dashboard-bite-index-card:focus-visible{outline:2px solid var(--color-arctic-cyan);outline-offset:3px}.weather-v2-score-card{min-width:0;overflow:hidden}.weather-v2-selected-time{color:var(--color-text-muted);text-align:center;overflow-wrap:anywhere;justify-content:center;align-items:center;gap:8px;padding:0 16px 16px;font-size:.75rem;line-height:1.45;display:flex}.weather-v2-now-button{min-width:44px;min-height:36px;color:var(--color-arctic-cyan);font:inherit;cursor:pointer;background:#007aff1a;border:1px solid #00f2ff47;border-radius:999px;padding:6px 11px;font-size:.7rem;font-weight:800}.weather-v2-now-button:focus-visible{outline:2px solid var(--color-arctic-cyan);outline-offset:2px}.weather-v2-score-unavailable,.weather-v2-score-summary{text-align:center;gap:4px;padding:28px 18px 16px;display:grid}.weather-v2-score-unavailable span,.weather-v2-score-summary span{color:var(--color-text-muted);font-size:.75rem}.weather-v2-window-list{gap:8px;display:grid}.weather-v2-window{width:100%;min-height:58px;color:var(--color-text-platinum);font:inherit;text-align:left;cursor:pointer;gap:3px;padding:10px 12px;font-size:.75rem;line-height:1.4;display:grid}.weather-v2-window span{color:var(--color-text-muted)}.weather-v2-window--active{background:#007aff1f;border-color:#00f2ff52}.weather-v2-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.weather-v2-metric-grid .glass-widget{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 8px;min-width:0;padding:12px;display:grid}.weather-v2-metric-grid .glass-widget>span{color:var(--color-text-muted);overflow-wrap:anywhere;grid-column:1/-1;font-size:.66rem}.weather-v2-forecast-strip{gap:4px;padding:12px 8px;display:flex;overflow-x:auto}.weather-v2-forecast-point{min-height:112px;color:var(--color-text-platinum);font:inherit;text-align:center;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:1px solid #0000;border-radius:12px;flex:0 0 96px;justify-items:center;gap:4px;padding:9px 7px;font-size:.68rem;line-height:1.3;display:grid}.weather-symbol-icon{color:var(--color-text-muted);place-items:center;display:inline-grid}.weather-symbol-icon--sun{color:#f2c45a}.weather-symbol-icon--cloud{color:#b7c2cc}.weather-symbol-icon--rain{color:#38cce0}.weather-symbol-icon--snow{color:#cceef4}.weather-symbol-icon--thunder{color:#f1b84b}.weather-factor-panel{min-width:0}.weather-factor-panel__intro{color:var(--color-text-muted);overflow-wrap:anywhere;margin-top:4px;font-size:.7rem;line-height:1.45}.weather-factor-donut-wrap{place-items:center;margin:10px 0 8px;display:grid}.weather-factor-donut{filter:drop-shadow(0 12px 20px #00000047);width:min(100%,282px);height:auto;overflow:visible}.weather-factor-donut__glass{fill:#040d179e;stroke:#a5cdee14;stroke-width:1px}.weather-factor-donut__remainder,.weather-factor-donut__pointer-target,.weather-factor-donut__fill{fill:none;transform-origin:120px 120px;transform:rotate(-90deg)}.weather-factor-donut__remainder{stroke:#ffffff17;stroke-width:14px}.weather-factor-donut__pointer-target{stroke:#0000;stroke-width:34px;pointer-events:stroke;cursor:pointer}.weather-factor-donut__segment-track{fill:none;stroke:#97aec21f;stroke-width:14px;transform-origin:120px 120px;transform:rotate(-90deg)}.weather-factor-donut__segment-track.is-selected{stroke:#97aec22e;stroke-width:18px}.weather-factor-donut__fill{pointer-events:none;stroke:var(--factor-color);stroke-width:14px;stroke-linecap:butt;opacity:.68;filter:none;animation:.32s cubic-bezier(.4,0,.2,1) weather-factor-donut-in}.weather-factor-donut__fill.is-selected{stroke-width:18px;opacity:1;filter:drop-shadow(0 0 3px var(--factor-color))}.weather-factor-donut__score,.weather-factor-donut__level{fill:var(--color-text-platinum);font-family:var(--font-sans)}.weather-factor-donut__score{letter-spacing:-.04em;font-size:2.1rem;font-weight:820}.weather-factor-donut__level{fill:var(--color-arctic-cyan);font-size:.75rem;font-weight:760}.weather-factor-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;display:grid}.weather-factor-legend__button{min-width:0;min-height:50px;color:var(--color-text-platinum);font-family:var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:11px;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;column-gap:14px;padding:8px 10px;transition:background .18s,box-shadow .18s;display:grid}.weather-factor-legend__button>i{background:var(--factor-color);width:8px;height:8px;box-shadow:0 0 5px var(--factor-color);border-radius:999px}.weather-factor-legend__label{overflow-wrap:anywhere;min-width:0;font-size:.78rem;font-weight:600;line-height:1.3}.weather-factor-legend__value{min-width:0;color:var(--factor-color);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.74rem;font-weight:700;line-height:1.3}.weather-factor-legend__button:last-child:nth-child(odd){grid-column:1/-1}.weather-factor-legend__button.is-selected{box-shadow:inset 2px 0 0 var(--factor-color);background:#0a192794;border-color:#a5cdee14}.weather-factor-legend__button:disabled{cursor:default;opacity:.55}.weather-factor-legend__button:focus-visible{outline:2px solid var(--factor-color);outline-offset:2px}.weather-factor-detail{background:#07121ea3;border:1px solid #a5cdee17;border-radius:13px;gap:6px;margin-top:10px;padding:13px 14px;display:grid}.weather-factor-detail>div{align-items:center;gap:12px;display:flex}.weather-factor-detail__marker{background:var(--factor-color);width:8px;height:8px;box-shadow:0 0 8px var(--factor-color);border-radius:999px}.weather-factor-detail h4{color:var(--color-text-platinum);font-size:.78rem}.weather-factor-detail>strong{color:var(--color-text-platinum);font-family:var(--font-sans);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:3px 14px;font-size:.72rem;font-weight:650;display:flex}.weather-factor-detail p{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:.68rem;line-height:1.45}.weather-factor-panel__attribution{color:var(--color-text-muted);font-family:var(--font-sans);overflow-wrap:anywhere;border-top:1px solid #ffffff0f;gap:3px;margin-top:14px;padding-top:11px;font-size:.68rem;line-height:1.45;display:grid}@keyframes weather-factor-donut-in{0%{opacity:0}to{opacity:.74}}.dashboard-bite-index-card{min-width:0}.dashboard-weather-location{overflow-wrap:anywhere;flex-wrap:wrap;min-width:0}.dashboard-weather-v2-empty{margin:16px}@media (width<=420px){.weather-chart-card{gap:14px;padding:13px 10px}.weather-chart__svg{height:178px}.bite-index-chart .weather-chart__svg{height:122px}.weather-pressure-chart--compact .weather-chart__svg{height:112px}.weather-factor-donut{width:min(100%,258px)}.weather-factor-legend{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.weather-chart--reduced-motion-safe,.weather-chart--reduced-motion-safe *,.weather-chart-range__button,.weather-v2-window,.weather-v2-forecast-point,.weather-factor-donut__fill,.weather-factor-legend__button{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
