.fsp-shell-wrap{--fsp-panel-gradient:linear-gradient(155deg, color-mix(in oklch, var(--elevated) 72%, var(--card)) 0%, var(--card) 100%);--fsp-panel-gradient-steep:linear-gradient(180deg, color-mix(in oklch, var(--elevated) 80%, var(--card)) 0%, var(--card) 100%);--fsp-scrim:color-mix(in oklch, var(--foreground) 45%, transparent);--fsp-scrim-strong:color-mix(in oklch, var(--foreground) 62%, transparent);--fsp-overlay:color-mix(in oklch, var(--foreground) 22%, transparent);--fsp-overlay-mid:color-mix(in oklch, var(--foreground) 28%, transparent);--fsp-overlay-strong:color-mix(in oklch, var(--foreground) 35%, transparent);--fsp-inset-highlight:inset 0 1px 0 color-mix(in oklch, var(--foreground) 6%, transparent);--fsp-shadow-sm:var(--elevation-2);--fsp-shadow-md:var(--elevation-3);--fsp-shadow-lg:var(--elevation-4);background:var(--background);height:100dvh;min-height:100dvh;color:var(--foreground);font-family:var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif;overflow:hidden}.fsp-shell-wrap .fsp-shell{height:100%}.fish-stock-subnav{background:var(--fsp-panel-gradient);border:1px solid rgb(var(--cs-green-rgb) / .18);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1rem;flex-direction:column;gap:.75rem;margin-bottom:1.25rem;padding:1rem 1.1rem;display:flex}.fish-stock-subnav__brand{flex-direction:column;gap:.15rem;margin:0;display:flex}.fish-stock-subnav__product{letter-spacing:.14em;text-transform:uppercase;color:var(--cs-green);font-size:.78rem;font-weight:600}.fish-stock-subnav__tagline{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));font-size:.85rem}.fish-stock-subnav__links{flex-wrap:wrap;gap:.45rem;display:flex}.fish-stock-subnav__link{color:color-mix(in oklch, var(--foreground) 85%, transparent);border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);border-radius:999px;padding:.4rem .75rem;font-size:.82rem;text-decoration:none;transition:border-color .15s,color .15s,background .15s}.fish-stock-subnav__link:hover,.fish-stock-subnav__link--active{color:var(--cs-green);border-color:rgb(var(--cs-green-rgb) / .45);background:rgb(var(--cs-green-rgb) / .08)}.fish-stock-metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.fish-stock-metric{padding:1rem!important}.fish-stock-metric__label{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.75rem}.fish-stock-metric__value{color:var(--cs-green);word-break:break-word;margin:.35rem 0 0;font-size:1.45rem;font-weight:600;line-height:1.25}.fish-stock-metric__value--mono{letter-spacing:.02em;color:var(--foreground);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.95rem}.fish-stock-metric__hint{color:var(--muted-foreground);margin:.25rem 0 0;font-size:.78rem}.fish-stock-table{border-collapse:collapse;width:100%;font-size:.88rem}.fish-stock-table th,.fish-stock-table td{border-bottom:1px solid var(--border);text-align:left;padding:.65rem .75rem}.fish-stock-table th{color:var(--muted-foreground);font-weight:500}.fish-stock-scan-input{letter-spacing:.08em;border:2px solid rgb(var(--cs-green-rgb) / .35);background:var(--fsp-overlay-strong);color:#fff;border-radius:1rem;outline:none;width:100%;padding:1rem 1.1rem;font-size:1.6rem}.fish-stock-scan-input:focus{border-color:var(--cs-green);box-shadow:0 0 0 3px rgb(var(--cs-green-rgb) / .15)}.fish-stock-form{gap:.75rem;display:grid}.fish-stock-form label{color:color-mix(in oklch, var(--foreground) 78%, var(--muted-foreground));gap:.35rem;font-size:.82rem;display:grid}.fish-stock-form input,.fish-stock-form select,.fish-stock-form textarea{border:1px solid var(--border);background:var(--fsp-overlay-mid);color:#fff;border-radius:.65rem;padding:.65rem .75rem}.fish-stock-btn{background:linear-gradient(135deg, var(--cs-green), var(--cs-green-dark));color:var(--primary-foreground);cursor:pointer;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.65rem 1rem;font-weight:600;display:inline-flex}.fish-stock-btn--ghost{border:1px solid rgb(var(--cs-green-rgb) / .35);color:var(--cs-green);background:0 0}.fish-stock-btn--danger{color:#ffb0b0;border-color:#ff787859}.fish-stock-btn:focus-visible{outline:2px solid rgb(var(--cs-green-rgb) / .55);outline-offset:2px}.fish-stock-btn:disabled{opacity:.55;cursor:not-allowed}.fish-stock-match-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem;display:grid}.fish-stock-match-card{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);border-radius:1rem;padding:1rem}.fish-stock-mt{margin-top:1rem}.fish-stock-match-card__score{color:var(--cs-green);font-size:1.25rem;font-weight:700}.fsp-shell{background:radial-gradient(ellipse 120% 80% at 50% -20%, rgb(var(--cs-green-rgb) / .08), transparent 55%), linear-gradient(180deg, var(--cs-bg) 0%, var(--cs-surface) 40%, var(--cs-bg) 100%);min-height:100vh;color:var(--cs-text);display:flex;overflow-x:hidden}.fsp-sidebar-backdrop{background:var(--fsp-scrim);z-index:40;display:none;position:fixed;inset:0}.fsp-sidebar-backdrop--open{display:block}.fsp-sidebar{border-right:1px solid rgb(var(--cs-green-rgb) / .12);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);isolation:isolate;z-index:50;background:#080e0beb;flex-direction:column;flex-shrink:0;width:280px;height:100vh;max-height:100vh;padding:1.25rem 1rem;display:flex;position:sticky;top:0;overflow:hidden}.fsp-sidebar__body{flex-direction:column;flex:1;min-height:0;display:flex}.fsp-sidebar__nav{scrollbar-gutter:stable;flex:1;min-height:0;padding-right:.15rem;overflow:hidden auto}.fsp-sidebar__brand{flex-direction:column;gap:.35rem;margin-bottom:1.5rem;padding:0 .5rem;display:flex}.fsp-sidebar__brand-logo{width:140px;max-width:100%;height:auto;filter:drop-shadow(0 4px 20px rgb(var(--cs-green-rgb) / .25));margin-bottom:.15rem;display:block}.fsp-sidebar__logo{letter-spacing:-.02em;color:#fff;font-size:1.15rem;font-weight:700}.fsp-sidebar__badge{text-transform:uppercase;letter-spacing:.12em;border:1px solid rgb(var(--cs-green-rgb) / .35);max-width:100%;color:var(--cs-green);background:rgb(var(--cs-green-rgb) / .08);border-radius:999px;flex-shrink:0;align-self:flex-start;padding:.2rem .5rem;font-size:.68rem;display:inline-flex}.fsp-sidebar__group{margin-bottom:.75rem}.fsp-sidebar__group-toggle{width:100%;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:.45rem .5rem;font-size:.72rem;display:flex}.fsp-sidebar__chevron{opacity:.7;transition:transform .15s}.fsp-sidebar__chevron--collapsed{transform:rotate(-90deg)}.fsp-sidebar__list{flex-direction:column;gap:.15rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.fsp-sidebar__link{color:color-mix(in oklch, var(--foreground) 85%, transparent);border-radius:.65rem;align-items:center;gap:.65rem;min-width:0;padding:.55rem .65rem;font-size:.88rem;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:flex}.fsp-sidebar__link-icon{flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;display:inline-flex}.fsp-sidebar__link-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fsp-sidebar__link:hover{background:color-mix(in oklch, var(--foreground) 4%, transparent);color:#fff}.fsp-sidebar__link--active{color:var(--cs-green);background:linear-gradient(90deg, rgb(var(--cs-green-rgb) / .16), rgb(var(--cs-green-rgb) / .06));box-shadow:inset 3px 0 0 var(--cs-green), inset 0 0 0 1px rgb(var(--cs-green-rgb) / .22), 0 0 24px rgb(var(--cs-green-rgb) / .1);font-weight:600}.fsp-sidebar__link--active:hover{color:var(--cs-green-soft)}.fsp-sidebar__back{color:var(--muted-foreground);border:1px solid var(--border);border-radius:.65rem;flex-shrink:0;align-items:center;gap:.5rem;margin-top:auto;padding:.75rem .65rem;font-size:.85rem;text-decoration:none;transition:color .15s,border-color .15s,background .15s;display:flex}.fsp-sidebar__back span{min-width:0;line-height:1.35}.fsp-sidebar__back:hover{color:var(--cs-green);border-color:rgb(var(--cs-green-rgb) / .25);background:rgb(var(--cs-green-rgb) / .05)}.fsp-shell__main{flex-direction:column;flex:1;min-width:0;display:flex}.fsp-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30;background:#060a08bf;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:.85rem 1.25rem;display:flex;position:sticky;top:0}.fsp-header__menu{background:color-mix(in oklch, var(--foreground) 6%, transparent);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.45rem;display:none}.fsp-header__left{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.fsp-header__fishery-label,.fsp-header__lake-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);font-size:.65rem;display:block}.fsp-header__fishery-name{font-size:.9rem;font-weight:600}.fsp-header__lake-select{border:1px solid var(--border);background:var(--fsp-overlay-strong);color:#fff;border-radius:.5rem;margin-top:.15rem;padding:.35rem .5rem;font-size:.85rem}.fsp-header__search-wrap{flex:1;min-width:220px;position:relative}.fsp-header__search-wrap--open .fsp-header__search{border-color:rgb(var(--cs-green-rgb) / .45);box-shadow:0 0 0 3px rgb(var(--cs-green-rgb) / .1), 0 8px 32px var(--fsp-overlay-strong)}.fsp-header__search{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 42%, transparent);border-radius:999px;align-items:center;gap:.5rem;padding:.55rem .95rem;transition:border-color .2s,box-shadow .2s;display:flex}.fsp-header__search:focus-within{border-color:rgb(var(--cs-green-rgb) / .4);box-shadow:0 0 0 3px rgb(var(--cs-green-rgb) / .08)}.fsp-header__search-icon{color:color-mix(in oklch, var(--muted-foreground) 85%, transparent);flex-shrink:0}.fsp-header__search-input{color:#fff;background:0 0;border:none;outline:none;flex:1;font-size:.88rem}.fsp-header__actions{flex-wrap:wrap;gap:.4rem;display:flex}.fsp-header__action{color:var(--primary-foreground);background:linear-gradient(135deg, var(--cs-green), var(--cs-green-dark));border-radius:.55rem;align-items:center;gap:.35rem;padding:.45rem .7rem;font-size:.78rem;font-weight:500;text-decoration:none;display:inline-flex}.fsp-header__action--ghost{border:1px solid rgb(var(--cs-green-rgb) / .35);color:var(--cs-green);background:0 0}.fsp-header__status{flex-wrap:wrap;gap:.35rem;display:flex}.fsp-header__pill{border:1px solid var(--border);color:color-mix(in oklch, var(--foreground) 78%, var(--muted-foreground));border-radius:999px;padding:.25rem .55rem;font-size:.68rem}.fsp-header__pill--live{border-color:rgb(var(--cs-green-rgb) / .4);color:var(--cs-green)}.fsp-header__pill--ok{border-color:rgb(var(--cs-green-rgb) / .3);color:#7dffb0}.fsp-header__pill--warn{color:#ffc266;border-color:#ffb45066}.fsp-header__pill--muted{opacity:.65}.fsp-shell__content{flex:1;padding:1.5rem 1.5rem 2.5rem;overflow-x:hidden}.fsp-shell .next-pillar,.fsp-shell .next-page__hero .next-pillar__label,.fsp-shell .next-page__happened{display:none}.fsp-shell .next-page__hero{background:0 0;border:none;margin-bottom:.5rem;padding:0 0 1rem}.fsp-shell .next-page__title{font-size:1.65rem;font-weight:700}.fsp-dashboard{position:relative}.fsp-dashboard__bg{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.fsp-dashboard__bg-fish{color:rgb(var(--cs-green-rgb) / .04);opacity:.9;position:absolute}.fsp-dashboard__bg-fish--a{top:-2rem;right:4%;transform:rotate(-12deg)}.fsp-dashboard__bg-fish--b{bottom:8%;left:-2rem;transform:rotate(18deg)scaleX(-1)}.fsp-dashboard>:not(.fsp-dashboard__bg){z-index:1;position:relative}.fsp-hero{justify-content:space-between;align-items:flex-start;gap:1.25rem;margin-bottom:1.75rem;display:flex}.fsp-hero__aside{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.75rem;display:flex}.fsp-hero__headline{letter-spacing:-.02em;color:#fff;margin:.5rem 0 0;font-size:clamp(1.25rem,2.5vw,1.65rem);font-weight:600}.fsp-hero__eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--cs-green);margin:0;font-size:.75rem}.fsp-hero__title{letter-spacing:-.03em;margin:.35rem 0 0;font-size:clamp(2rem,4vw,2.75rem);font-weight:700}.fsp-hero__subtitle{max-width:42rem;color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:.75rem 0 0;font-size:1.05rem;line-height:1.5}.fsp-hero__refresh{border:1px solid rgb(var(--cs-green-rgb) / .35);background:rgb(var(--cs-green-rgb) / .1);color:var(--cs-green);cursor:pointer;border-radius:.65rem;padding:.55rem 1rem;font-weight:500}.fsp-kpi-strip{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.fsp-kpi{background:color-mix(in oklch, var(--foreground) 3%, transparent);border:1px solid var(--border);box-shadow:0 0 30px rgb(var(--cs-green-rgb) / .03);border-radius:1rem;padding:1rem 1.1rem;transition:border-color .2s,transform .2s}.fsp-kpi:hover{border-color:rgb(var(--cs-green-rgb) / .18);transform:translateY(-1px)}.fsp-kpi__icon{background:rgb(var(--cs-green-rgb) / .1);width:2rem;height:2rem;color:var(--cs-green);border-radius:.55rem;justify-content:center;align-items:center;margin-bottom:.65rem;display:inline-flex}.fsp-kpi__label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);margin:0;font-size:.7rem}.fsp-kpi__value{color:var(--cs-green);margin:.4rem 0 0;font-size:1.35rem;font-weight:600}.fsp-kpi__status{text-transform:uppercase;letter-spacing:.06em;margin:.3rem 0 0;font-size:.72rem;font-weight:600}.fsp-kpi__status--excellent{color:var(--cs-green-soft)}.fsp-kpi__status--monitor{color:#ffc266}.fsp-kpi__status--poor{color:#ff6b6b}.fsp-kpi--health-excellent .fsp-kpi__value{color:var(--cs-green-soft)}.fsp-kpi--health-monitor .fsp-kpi__value{color:#ffc266}.fsp-kpi--health-poor .fsp-kpi__value{color:#ff6b6b}.fsp-kpi--health-poor{background:#ff3c3c0f;border-color:#ff5a5a59}.fsp-kpi--water-stable .fsp-kpi__value{color:var(--cs-green-soft)}.fsp-kpi--water-risk .fsp-kpi__value{color:#ffc266}.fsp-kpi--water-critical .fsp-kpi__value{color:#ff6b6b}.fsp-dashboard__grid{grid-template-columns:repeat(12,1fr);gap:1rem;display:grid}.fsp-card{background:color-mix(in oklch, var(--card) 85%, transparent);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:1.15rem;padding:1.25rem;transition:border-color .2s,box-shadow .2s}.fsp-card:hover{border-color:rgb(var(--cs-green-rgb) / .2);box-shadow:0 8px 32px var(--fsp-overlay-mid), 0 0 24px rgb(var(--cs-green-rgb) / .04)}.fsp-card--ai-glow{position:relative}.fsp-card--ai-glow:before{content:"";border-radius:inherit;background:linear-gradient(135deg, rgb(var(--cs-green-rgb) / .35), transparent 40%, rgb(var(--cs-green-rgb) / .12));pointer-events:none;opacity:.65;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.fsp-card__title{align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1rem;font-weight:600;display:flex}.fsp-card--span-4{grid-column:span 4}.fsp-card--span-8{grid-column:span 8}.fsp-card__empty{color:var(--muted-foreground);font-size:.9rem}.fsp-insight-list{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.fsp-insight{background:color-mix(in oklch, var(--foreground) 3%, transparent);border-left:3px solid rgb(var(--cs-green-rgb) / .5);border-radius:.65rem;padding:.65rem .75rem;font-size:.88rem}.fsp-insight--warn{border-left-color:#ffc266}.fsp-attention-list{flex-direction:column;gap:.65rem;display:flex}.fsp-attention{border:1px solid var(--border);color:inherit;border-radius:.75rem;gap:.65rem;padding:.75rem;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.fsp-attention:hover{transform:translateY(-1px)}.fsp-attention__icon{opacity:.85;flex-shrink:0;align-items:flex-start;padding-top:.1rem;display:inline-flex}.fsp-attention__body{flex:1;min-width:0}.fsp-attention__context{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.75rem}.fsp-attention__action{color:var(--cs-green);margin-top:.45rem;font-size:.75rem;font-weight:600;display:inline-block}.fsp-attention--urgent{background:#ff3c3c14;border-color:#ff5a5a73}.fsp-attention--warning{background:#ffa0320f;border-color:#ffb45059}.fsp-attention--healthy{border-color:rgb(var(--cs-green-rgb) / .35);background:rgb(var(--cs-green-rgb) / .06)}.fsp-attention__title{margin:0;font-size:.9rem;font-weight:600}.fsp-attention__detail{color:var(--muted-foreground);margin:.25rem 0 0;font-size:.8rem}.fsp-timeline{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.fsp-timeline li{gap:.75rem;font-size:.85rem;display:flex}.fsp-timeline__at{width:4.5rem;color:var(--muted-foreground);flex-shrink:0}.fsp-capture-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;display:grid}.fsp-capture-card{border:1px solid var(--border);color:inherit;border-radius:.85rem;gap:.75rem;padding:.85rem;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.fsp-capture-card:hover{border-color:rgb(var(--cs-green-rgb) / .3);background:rgb(var(--cs-green-rgb) / .05)}.fsp-capture-card__thumb{border-radius:.75rem;flex-shrink:0;width:4.5rem;height:4.5rem;overflow:hidden}.fsp-capture-card__thumb--photo img{object-fit:cover;width:100%;height:100%;display:block}.fsp-capture-card__thumb--placeholder{background:var(--fsp-panel-gradient);border:1px solid rgb(var(--cs-green-rgb) / .15);color:rgb(var(--cs-green-rgb) / .45);justify-content:center;align-items:center;display:flex}.fsp-capture-card__body{flex:1;min-width:0}.fsp-capture-card__date{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.72rem}.fsp-capture-card__name{margin:0;font-weight:600}.fsp-capture-card__meta{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.8rem}.fsp-capture-card__badges{flex-wrap:wrap;gap:.35rem;margin-top:.4rem;display:flex}.fsp-badge{border:1px solid color-mix(in oklch, var(--foreground) 15%, transparent);color:color-mix(in oklch, var(--foreground) 78%, var(--muted-foreground));border-radius:999px;padding:.15rem .4rem;font-size:.65rem}.fsp-badge--ai{border-color:rgb(var(--cs-green-rgb) / .35);color:var(--cs-green);align-items:center;gap:.2rem;display:inline-flex}.fsp-badge--pit{color:#9ec5ff;border-color:#78b4ff59;align-items:center;gap:.2rem;display:inline-flex}.fsp-badge--warn{color:#ffd9a8;border-color:#ffb45059;align-items:center;gap:.2rem;display:inline-flex}.fsp-badge--danger{color:#ffb0b0;border-color:#ff646459;align-items:center;gap:.2rem;display:inline-flex}.fsp-twin-summary__muted{color:var(--muted-foreground)!important;font-size:.95rem!important;font-weight:500!important}.fsp-insight-cards{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.fsp-insight-card{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 2%, transparent);color:inherit;border-radius:.75rem;align-items:flex-start;gap:.65rem;padding:.75rem;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.fsp-insight-card:hover{border-color:rgb(var(--cs-green-rgb) / .28);background:rgb(var(--cs-green-rgb) / .05)}.fsp-insight-card--warn{border-left:3px solid #ffc266}.fsp-insight-card--up{border-left:3px solid var(--cs-green)}.fsp-insight-card--neutral{border-left:3px solid var(--muted-foreground)}.fsp-insight-card__icon{background:rgb(var(--cs-green-rgb) / .1);color:var(--cs-green);border-radius:.5rem;flex-shrink:0;padding:.35rem;display:inline-flex}.fsp-insight-card__body{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.fsp-insight-card__title{font-size:.88rem;font-weight:600}.fsp-insight-card__detail{color:var(--muted-foreground);font-size:.8rem;line-height:1.4}.fsp-insight-card__action{color:var(--cs-green);flex-shrink:0;align-self:center;font-size:.72rem}.fsp-system-status{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;max-width:28rem;display:flex}.fsp-system-status__pill{border:1px solid var(--border);background:var(--fsp-overlay-mid);border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.68rem;display:inline-flex}.fsp-system-status__label{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.fsp-system-status__value{font-weight:600}.fsp-system-status__pill--ok{border-color:rgb(var(--cs-green-rgb) / .35);color:#7dffb0}.fsp-system-status__pill--warn{color:#ffc266;border-color:#ffb45066}.fsp-system-status__pill--error{color:#ff8a8a;border-color:#ff5a5a73}.fsp-dashboard--v2{flex-direction:column;gap:1.25rem;display:flex}.fsp-dash-hero{border:1px solid rgb(var(--cs-green-rgb) / .18);background:radial-gradient(ellipse 80% 120% at 100% 0%, rgb(var(--cs-green-rgb) / .12), transparent 55%), var(--fsp-panel-gradient);box-shadow:0 12px 40px var(--fsp-overlay-strong), var(--fsp-inset-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.25rem;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.25rem;padding:1.5rem 1.65rem;display:flex}.fsp-dash-hero__main{flex-direction:column;flex:1;gap:.85rem;min-width:min(100%,28rem);display:flex}.fsp-dash-hero__copy{max-width:40rem}.fsp-dash-hero__refreshed{color:var(--muted-foreground);margin:0;font-size:.75rem}.fsp-dash-hero__actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.fsp-dash-demo-badge{letter-spacing:.06em;text-transform:uppercase;color:#ffd08a;background:#ffb43c1a;border:1px solid #ffc86459;border-radius:999px;margin-bottom:.5rem;padding:.2rem .55rem;font-size:.65rem;font-weight:600;display:inline-block}.fsp-dash-demo-walkthrough{background:#ffb43c0d;border:1px solid #ffc86433;border-radius:.85rem;padding:.85rem 1rem}.fsp-dash-demo-walkthrough__head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.fsp-dash-demo-walkthrough__head .fsp-card__title{margin:0;font-size:.9rem}.fsp-dash-demo-walkthrough__close{border:1px solid var(--border);width:1.75rem;height:1.75rem;color:var(--muted-foreground);cursor:pointer;background:0 0;border-radius:.45rem;justify-content:center;align-items:center;display:inline-flex}.fsp-dash-demo-walkthrough__links{flex-wrap:wrap;gap:.5rem 1rem;margin-top:.65rem;font-size:.82rem;display:flex}.fsp-dash-demo-walkthrough__links a{color:var(--cs-green);text-decoration:none}.fsp-dash-alert-strip{scrollbar-width:thin;gap:.65rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.fsp-dash-alert-card{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);min-width:12rem;max-width:20rem;color:inherit;border-radius:.85rem;flex:none;align-items:center;gap:.65rem;padding:.75rem .9rem;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.fsp-dash-alert-card:hover{transform:translateY(-1px)}.fsp-dash-alert-card--critical{background:#ff3c3c14;border-color:#ff5a5a73}.fsp-dash-alert-card--review{background:#ffa0320f;border-color:#ffb45059}.fsp-dash-alert-card__count{background:var(--fsp-overlay-mid);border-radius:.5rem;justify-content:center;align-items:center;min-width:1.75rem;height:1.75rem;font-size:.8rem;font-weight:700;display:inline-flex}.fsp-dash-alert-card__body{flex-direction:column;gap:.15rem;min-width:0;display:flex}.fsp-dash-alert-card__label{font-size:.82rem;font-weight:600;line-height:1.3}.fsp-dash-alert-card__cta{color:var(--cs-green);font-size:.72rem}.fsp-dash-metrics-sections{flex-direction:column;gap:1.25rem;display:flex}.fsp-dash-metrics-group__title{text-transform:uppercase;letter-spacing:.1em;color:var(--muted-foreground);margin:0 0 .65rem;font-size:.72rem;font-weight:600}.fsp-dash-metrics-group__grid{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.75rem;display:grid}.fsp-dash-metric{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);border-radius:1rem;flex-direction:column;min-height:6.5rem;padding:1rem 1.05rem;transition:border-color .15s;display:flex}.fsp-dash-metric:hover{border-color:rgb(var(--cs-green-rgb) / .18)}.fsp-dash-metric__icon{background:rgb(var(--cs-green-rgb) / .1);width:2rem;height:2rem;color:var(--cs-green);border-radius:.55rem;justify-content:center;align-items:center;margin-bottom:.55rem;display:inline-flex}.fsp-dash-metric__label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted-foreground);margin:0;font-size:.7rem}.fsp-dash-metric__value{letter-spacing:-.02em;color:#fff;margin:.35rem 0 0;font-size:1.45rem;font-weight:600;line-height:1.15}.fsp-dash-metric__hint{color:var(--muted-foreground);margin:.35rem 0 0;font-size:.72rem;line-height:1.35}.fsp-dash-metric--warn .fsp-dash-metric__value{color:#ffc266}.fsp-dash-metric--risk .fsp-dash-metric__value{color:#ff8a8a}.fsp-dash-metric--ok .fsp-dash-metric__value{color:#7dffb0}.fsp-dashboard__grid--v2{margin-top:.25rem}.fsp-card__head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.fsp-card__head-row .fsp-card__title{margin:0}.fsp-card__subtitle{color:var(--muted-foreground);margin:.25rem 0 0;font-size:.82rem}.fsp-insight-card--critical{border-left:3px solid #ff6b6b}.fsp-insight-card--review{border-left:3px solid #ffc266}.fsp-insight-card--info{border-left:3px solid #78b4ffa6}.fsp-attention-groups{flex-direction:column;gap:1rem;display:flex}.fsp-attention-group__title{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in oklch, var(--muted-foreground) 85%, transparent);margin:0 0 .45rem;font-size:.68rem;font-weight:600}.fsp-attention__badge{text-transform:uppercase;letter-spacing:.05em;border:1px solid color-mix(in oklch, var(--foreground) 15%, transparent);color:color-mix(in oklch, var(--foreground) 78%, var(--muted-foreground));border-radius:999px;flex-shrink:0;align-self:flex-start;padding:.15rem .45rem;font-size:.62rem;font-weight:700}.fsp-attention__badge--critical{color:#ffb0b0;border-color:#ff5a5a73}.fsp-attention__badge--review{color:#ffd08a;border-color:#ffb45066}.fsp-attention__badge--info{color:#b8d4ff;border-color:#78b4ff59}.fsp-capture-grid--premium{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.fsp-capture-card--premium{align-items:center;padding-right:2rem;position:relative}.fsp-capture-card__weight{color:var(--cs-green);margin:.2rem 0 0;font-size:.95rem;font-weight:600}.fsp-capture-card__chevron{opacity:.35;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.fsp-dash-capture-filters{flex-wrap:wrap;gap:.35rem;display:flex}.fsp-card--twin-premium{border-color:rgb(var(--cs-green-rgb) / .22);background:radial-gradient(ellipse 100% 80% at 0% 100%, rgb(var(--cs-green-rgb) / .08), transparent 50%), color-mix(in oklch, var(--card) 90%, transparent)}.fsp-twin-module__metrics--dash{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:0 0 1rem;display:grid}.fsp-twin-state{font-weight:600}.fsp-twin-state--stable{color:#7dffb0}.fsp-twin-state--watch{color:#ffc266}.fsp-twin-state--risk{color:#ff9f6b}.fsp-twin-state--critical{color:#ff8a8a}.fsp-dash-empty{text-align:center;border:1px dashed color-mix(in oklch, var(--foreground) 12%, transparent);background:color-mix(in oklch, var(--foreground) 2%, transparent);min-height:18rem;color:var(--muted-foreground);border-radius:1.15rem;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;padding:2.5rem 1.5rem;display:flex}.fsp-dash-empty h2{color:#fff;margin:0;font-size:1.25rem}.fsp-dash-empty p{max-width:26rem;margin:0;line-height:1.5}.fsp-dash-empty__actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.fsp-dash-empty--error{color:#ffc8c8bf;border-color:#ff5a5a40}.fsp-dashboard-skeleton{flex-direction:column;gap:1.25rem;display:flex}.fsp-dashboard-skeleton__hero,.fsp-dashboard-skeleton__alert,.fsp-dashboard-skeleton__group-title,.fsp-dashboard-skeleton__metric,.fsp-dashboard-skeleton__panel{background:linear-gradient(90deg, color-mix(in oklch, var(--foreground) 4%, transparent) 0%, color-mix(in oklch, var(--foreground) 8%, transparent) 50%, color-mix(in oklch, var(--foreground) 4%, transparent) 100%);background-size:200% 100%;border-radius:1rem;animation:1.4s ease-in-out infinite fsp-skeleton-shimmer}.fsp-dashboard-skeleton__hero{height:10rem}.fsp-dashboard-skeleton__alerts{gap:.65rem;display:flex;overflow:hidden}.fsp-dashboard-skeleton__alert{flex:0 0 10rem;height:3.5rem}.fsp-dashboard-skeleton__group-title{width:8rem;height:.75rem;margin-bottom:.65rem}.fsp-dashboard-skeleton__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.fsp-dashboard-skeleton__metric{min-height:6.5rem}.fsp-dashboard-skeleton__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.fsp-dashboard-skeleton__panel{min-height:14rem}@keyframes fsp-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.fsp-search-panel{z-index:60;border:1px solid rgb(var(--cs-green-rgb) / .22);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 16px 48px var(--fsp-scrim), 0 0 32px rgb(var(--cs-green-rgb) / .06);background:#080e0bfa;border-radius:1rem;padding:.65rem;position:absolute;top:calc(100% + .45rem);left:0;right:0}.fsp-search-panel__group+.fsp-search-panel__group{border-top:1px solid var(--border);margin-top:.65rem;padding-top:.65rem}.fsp-search-panel__label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);align-items:center;gap:.35rem;margin:0 0 .4rem;font-size:.68rem;display:flex}.fsp-search-panel__list{margin:0;padding:0;list-style:none}.fsp-search-panel__item{color:inherit;border-radius:.55rem;flex-direction:column;gap:.1rem;padding:.5rem .55rem;text-decoration:none;transition:background .12s;display:flex}.fsp-search-panel__item:hover{background:rgb(var(--cs-green-rgb) / .08)}.fsp-search-panel__item-title{font-size:.88rem;font-weight:600}.fsp-search-panel__item-sub{color:var(--muted-foreground);font-size:.75rem}.fsp-search-panel__empty{color:var(--muted-foreground);margin:0;padding:.5rem;font-size:.85rem}.fsp-search-panel__footer{border:none;border-top:1px solid var(--border);width:100%;color:var(--cs-green);cursor:pointer;text-align:left;background:0 0;margin-top:.65rem;padding:.55rem;font-size:.8rem;font-weight:600}.fsp-btn-glow{box-shadow:0 0 20px rgb(var(--cs-green-rgb) / .15);transition:box-shadow .2s,transform .15s}.fsp-btn-glow:hover{box-shadow:0 0 28px rgb(var(--cs-green-rgb) / .28)}.fsp-twin-summary{grid-template-columns:repeat(2,1fr);gap:.75rem;margin:0;display:grid}.fsp-twin-summary dt{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-size:.7rem}.fsp-twin-summary dd{color:var(--cs-green);margin:.2rem 0 0;font-size:1.1rem;font-weight:600}.fsp-section__head{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;display:flex}.fsp-section__title{margin:0;font-size:1.65rem;font-weight:700}.fsp-section__subtitle{color:var(--muted-foreground);max-width:40rem;margin:.35rem 0 0}.fsp-section__refresh{border:1px solid color-mix(in oklch, var(--foreground) 15%, transparent);color:var(--cs-green);cursor:pointer;background:0 0;border-radius:.55rem;margin-left:auto;padding:.45rem .85rem}.fsp-section__toolbar{flex-wrap:wrap;align-items:flex-end;gap:.65rem;display:flex}.fsp-section__actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.fsp-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.fsp-profile-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.fsp-profile-page{gap:1.15rem;display:grid}.fsp-profile-hero{gap:1.15rem;margin-bottom:0;display:grid;padding:1.35rem!important}.fsp-profile-hero--premium{background:var(--fsp-panel-gradient);border:1px solid rgb(var(--cs-green-rgb) / .16);box-shadow:0 0 0 1px rgb(var(--cs-green-rgb) / .04) inset, 0 18px 48px var(--fsp-overlay-strong), 0 0 40px rgb(var(--cs-green-rgb) / .06)}.fsp-profile-hero__main{grid-template-columns:minmax(0,1fr) minmax(160px,220px);align-items:start;gap:1.35rem;display:grid}.fsp-profile-hero__identity{min-width:0}.fsp-profile-hero__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--cs-green-rgb) / .75);align-items:center;gap:.35rem;margin:0 0 .45rem;font-size:.72rem;display:inline-flex}.fsp-profile-hero__media-card{gap:.45rem;display:grid}.fsp-profile-hero__media-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground);margin:0;font-size:.72rem}.fsp-profile-hero__media{border:1px solid rgb(var(--cs-green-rgb) / .2);background:var(--fsp-overlay-strong);box-shadow:0 10px 28px var(--fsp-overlay-mid);border-radius:.95rem;overflow:hidden}.fsp-profile-hero__img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.fsp-profile-hero__placeholder{text-align:center;min-height:180px;color:var(--muted-foreground);background:radial-gradient(circle at 50% 30%, rgb(var(--cs-green-rgb) / .08), transparent 55%), var(--fsp-overlay-mid);place-items:center;gap:.5rem;padding:1.25rem;font-size:.82rem;display:grid}.fsp-profile-hero__media-count{color:var(--muted-foreground);align-items:center;gap:.35rem;margin:0;font-size:.76rem;display:inline-flex}.fsp-profile-hero__name{color:#f5f7f5;margin:0;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:700;line-height:1.1}.fsp-profile-hero__species{color:color-mix(in oklch, var(--foreground) 68%, transparent);margin:.4rem 0 0;font-size:.95rem}.fsp-profile-hero__chips{flex-wrap:wrap;gap:.4rem;margin-top:.9rem;display:flex}.fsp-profile-hero__meta-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.85rem;display:flex}.fsp-profile-hero__code-chip{letter-spacing:.03em;color:color-mix(in oklch, var(--foreground) 88%, transparent);background:color-mix(in oklch, var(--foreground) 6%, transparent);border:1px solid var(--border);border-radius:.45rem;padding:.28rem .55rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;display:inline-flex}.fsp-profile-hero__meta-item{color:var(--muted-foreground);font-size:.82rem}.fsp-profile-hero__actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:.55rem;padding-top:.35rem;display:flex}.fsp-stat-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem;display:grid}.fsp-stat-card{background:color-mix(in oklch, var(--foreground) 2%, transparent);border:1px solid var(--border);transition:border-color .15s,box-shadow .15s;padding:.95rem 1rem!important}.fsp-stat-card:hover{border-color:rgb(var(--cs-green-rgb) / .18);box-shadow:0 8px 24px color-mix(in oklch, var(--foreground) 18%, transparent)}.fsp-stat-card__head{align-items:center;gap:.4rem;display:flex}.fsp-stat-card__icon{color:rgb(var(--cs-green-rgb) / .7);display:inline-flex}.fish-stock-metric__value--profile{color:color-mix(in oklch, var(--foreground) 94%, transparent);font-size:1.2rem}.fsp-gallery-panel{padding:1.1rem!important}.fsp-gallery-panel__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.65rem;margin-bottom:.85rem;display:flex}.fsp-gallery-panel__sub{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.82rem}.fsp-image-gallery--premium{align-items:stretch}.fsp-image-card--premium{transition:transform .15s,border-color .15s,box-shadow .15s}.fsp-image-card--premium:hover{border-color:rgb(var(--cs-green-rgb) / .22);box-shadow:0 12px 28px var(--fsp-overlay-mid);transform:translateY(-2px)}.fsp-profile-grid--premium{margin-top:0}.fsp-profile-panel{min-height:100%;padding:1.05rem!important}.fsp-profile-panel--insight{background:var(--fsp-panel-gradient)}.fsp-profile-panel--wide{grid-column:1/-1}.fsp-empty-state{gap:.35rem;padding:1rem 0 .25rem;display:grid}.fsp-empty-state--gallery{text-align:center;border:1px dashed color-mix(in oklch, var(--foreground) 12%, transparent);background:color-mix(in oklch, var(--foreground) 18%, transparent);border-radius:.9rem;place-items:center;padding:2rem 1rem}.fsp-empty-state__title{color:color-mix(in oklch, var(--foreground) 88%, transparent);margin:0;font-size:.95rem;font-weight:600}.fsp-empty-state__detail{color:var(--muted-foreground);margin:0;font-size:.82rem}.fsp-timeline-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.fsp-timeline-list__item{grid-template-columns:auto 1fr;align-items:start;gap:.65rem;display:grid}.fsp-timeline-list__dot{background:var(--cs-green);width:8px;height:8px;box-shadow:0 0 10px rgb(var(--cs-green-rgb) / .45);border-radius:50%;margin-top:.45rem}.fsp-timeline-list__title{color:color-mix(in oklch, var(--foreground) 90%, transparent);margin:0;font-size:.92rem;font-weight:600}.fsp-timeline-list__meta{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.8rem}.fsp-note-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.fsp-note-card{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);border-radius:.7rem;padding:.7rem .8rem}.fsp-note-card__date{color:var(--muted-foreground);margin:0;font-size:.74rem}.fsp-note-card__text{color:color-mix(in oklch, var(--foreground) 82%, transparent);margin:.25rem 0 0;font-size:.86rem;line-height:1.45}.fsp-insight-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0 0 .85rem;display:grid}.fsp-insight-metrics dt{text-transform:uppercase;letter-spacing:.07em;color:var(--muted-foreground);margin:0;font-size:.72rem}.fsp-insight-metrics dd{color:var(--cs-green);margin:.2rem 0 0;font-size:1.15rem;font-weight:600}.fsp-profile-skeleton__block,.fsp-profile-skeleton__chip,.fsp-profile-skeleton__media,.fsp-profile-skeleton__stat,.fsp-profile-skeleton__image-card{background:linear-gradient(90deg, color-mix(in oklch, var(--foreground) 4%, transparent) 0%, color-mix(in oklch, var(--foreground) 9%, transparent) 50%, color-mix(in oklch, var(--foreground) 4%, transparent) 100%);background-size:200% 100%;border-radius:.65rem;animation:1.4s ease-in-out infinite fsp-skeleton-shimmer}.fsp-profile-skeleton__block--title{width:55%;height:2rem}.fsp-profile-skeleton__block--subtitle{width:40%;height:1rem;margin-top:.65rem}.fsp-profile-skeleton__chips{gap:.45rem;margin-top:.85rem;display:flex}.fsp-profile-skeleton__chip{width:5.5rem;height:1.4rem}.fsp-profile-skeleton__media{aspect-ratio:1;width:100%;margin-top:.75rem}.fsp-profile-skeleton__stat{min-height:5.5rem}.fsp-profile-skeleton__gallery{padding:1rem!important}.fsp-profile-skeleton__gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.fsp-profile-skeleton__image-card{aspect-ratio:.85}.fsp-capture-history{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.fsp-capture-history__row{border-bottom:1px solid var(--border);grid-template-columns:minmax(88px,auto) minmax(72px,auto) 1fr;align-items:baseline;gap:.65rem;padding:.55rem 0;font-size:.88rem;display:grid}.fsp-capture-history__date{color:var(--muted-foreground)}.fsp-capture-history__weight{color:var(--cs-green);font-weight:600}.fsp-capture-history__lake{color:color-mix(in oklch, var(--foreground) 72%, transparent);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fsp-twin-summary--profile{margin-bottom:.85rem}.fsp-form{gap:.85rem;display:grid}.fsp-form__section{border:1px solid var(--border);border-radius:.85rem;gap:.75rem;margin:0;padding:1rem;display:grid}.fsp-form__legend{text-transform:uppercase;letter-spacing:.08em;color:var(--cs-green);padding:0 .35rem;font-size:.78rem}.fsp-form-card{margin-bottom:1rem}.fsp-field{gap:.35rem;display:grid}.fsp-field--checkbox{color:color-mix(in oklch, var(--foreground) 85%, transparent);align-items:center;gap:.5rem;font-size:.88rem;display:flex}.fsp-field__label{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.fsp-field__input{border:1px solid var(--border);background:var(--fsp-overlay-mid);color:#fff;border-radius:.65rem;padding:.65rem .75rem;font-size:.92rem}.fsp-field__input--error{border-color:#ff787873;box-shadow:0 0 0 2px #ff50501f}.fsp-field__error{color:#ffb0b0;font-size:.78rem}.fsp-inline-status{margin:0;font-size:.88rem}.fsp-inline-status--success{color:var(--cs-green)}.fsp-inline-status--error{color:#ff6b6b}.fsp-inline-status--info{color:color-mix(in oklch, var(--foreground) 65%, transparent)}.fsp-data-list{margin-top:1rem}.fsp-data-list__title{margin:0 0 .35rem;font-size:1.1rem;font-weight:600}.fsp-data-list__desc{color:var(--muted-foreground);margin:0 0 .75rem;font-size:.88rem}.fsp-data-list__cards{gap:.75rem;display:grid}.fsp-data-list__state{text-align:center;padding:1.25rem}.fsp-data-list__state--empty .fsp-data-list__empty-title{margin:0 0 .35rem;font-weight:600}.fsp-data-list__empty-desc{color:var(--muted-foreground);margin:0 0 1rem;font-size:.88rem}.fsp-list-card{padding:1rem!important}.fsp-list-card__title{color:var(--cs-green);margin:0;font-weight:600;text-decoration:none}.fsp-list-card__meta{color:color-mix(in oklch, var(--foreground) 85%, transparent);margin:.35rem 0 0;font-size:.9rem}.fsp-list-card__sub{color:var(--muted-foreground);margin:.25rem 0 0;font-size:.82rem}.fsp-card__title{color:color-mix(in oklch, var(--foreground) 85%, transparent);margin:0 0 .75rem;font-size:.95rem;font-weight:600}.fsp-card__link{color:var(--cs-green);margin-top:.5rem;font-size:.85rem;text-decoration:none;display:inline-block}.fsp-filters{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.fsp-suggestion-chips{flex-wrap:wrap;gap:.45rem;display:flex}.fsp-suggestion-chip{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 4%, transparent);color:color-mix(in oklch, var(--foreground) 75%, transparent);cursor:pointer;text-align:left;border-radius:.55rem;padding:.4rem .7rem;font-size:.78rem}.fsp-suggestion-chip:hover{border-color:rgb(var(--cs-green-rgb) / .35);color:var(--cs-green)}.fsp-lake-brain-results{gap:.75rem;margin-top:1rem;display:grid}.fsp-map-panel{margin:1rem 0;overflow:hidden}.fsp-map-panel__img{object-fit:contain;border-radius:.75rem;width:100%;max-height:420px}.fsp-raw-json{max-height:320px;color:color-mix(in oklch, var(--foreground) 78%, var(--muted-foreground));margin:0;font-size:.75rem;overflow:auto}.fsp-image-gallery{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.85rem;display:grid}.fsp-image-card{border:1px solid var(--border);background:var(--fsp-overlay);border-radius:.85rem;flex-direction:column;min-height:100%;display:flex;overflow:hidden}.fsp-image-card--failed{background:#281c0c59;border-color:#ffb45047}.fsp-image-card__media{flex:none}.fsp-image-card__img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.fsp-image-card__body{flex-direction:column;flex:auto;gap:.45rem;min-height:0;padding:0 .65rem .65rem;display:flex}.fsp-image-card__meta{flex-wrap:wrap;gap:.35rem;padding-top:.5rem;display:flex}.fsp-image-card__status{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:0;font-size:.78rem;line-height:1.4}.fsp-image-card__actions{flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.25rem;display:flex}.fsp-reader-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.85rem;display:grid}.fsp-reader-grid--premium{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.fsp-reader-page{flex-direction:column;gap:1.25rem;display:flex}.fsp-reader-hero{border:1px solid rgb(var(--cs-green-rgb) / .14);background:radial-gradient(120% 140% at 0% 0%, rgb(var(--cs-green-rgb) / .1), transparent 55%), var(--fsp-panel-gradient);box-shadow:0 18px 48px var(--fsp-overlay-strong);border-radius:1.25rem;padding:1.5rem 1.65rem}.fsp-reader-hero__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--cs-green-rgb) / .75);margin:0 0 .35rem;font-size:.72rem}.fsp-reader-hero__title{letter-spacing:-.02em;color:#f4fff8;margin:0;font-size:clamp(1.65rem,2.5vw,2.1rem);font-weight:650}.fsp-reader-hero__subtitle{max-width:44rem;color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:.5rem 0 0;font-size:.95rem;line-height:1.55}.fsp-reader-hero__helper{color:#ffc878d9;max-width:44rem;margin:.65rem 0 0;font-size:.82rem;line-height:1.5}.fsp-reader-hero__actions{flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;display:flex}.fsp-reader-hero__refresh{opacity:.75}.fsp-reader-compat{border:1px solid rgb(var(--cs-green-rgb) / .12);background:linear-gradient(135deg, rgb(var(--cs-green-rgb) / .06), #080e0beb);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;display:grid;padding:1rem 1.15rem!important}.fsp-reader-compat__title{color:#f4fff8;margin:0;font-size:1.05rem;font-weight:600}.fsp-reader-compat__text{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:.45rem 0 .75rem;font-size:.88rem;line-height:1.55}.fsp-reader-compat__badges{flex-wrap:wrap;gap:.4rem;display:flex}.fsp-reader-compat__badge{border:1px solid rgb(var(--cs-green-rgb) / .22);background:rgb(var(--cs-green-rgb) / .08);color:rgb(var(--cs-green-rgb) / .92);border-radius:999px;padding:.25rem .55rem;font-size:.72rem}.fsp-reader-compat__warning{color:#ffb464e6;margin:.85rem 0 0;font-size:.8rem}.fsp-reader-compat__guide{margin-top:.75rem}.fsp-reader-compat__media{justify-content:center;align-items:center;display:flex}.fsp-reader-compat__icon{border:1px solid rgb(var(--cs-green-rgb) / .22);background:rgb(var(--cs-green-rgb) / .1);width:72px;height:72px;color:rgb(var(--cs-green-rgb) / .95);border-radius:12px;place-items:center;display:grid}.fsp-reader-compat__image-wrap,.fsp-reader-compat__image{display:none}.fsp-reader-setup{padding:1rem 1.25rem!important}.fsp-reader-setup__toggle{color:#f4fff8;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;margin:0 0 .75rem;padding:0;font-size:1rem;font-weight:600;display:flex}.fsp-reader-setup__grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.fsp-reader-setup__section h3{color:var(--cs-green);align-items:center;gap:.4rem;margin:0 0 .5rem;font-size:.92rem;display:flex}.fsp-reader-setup__section ol{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:0;padding-left:1.15rem;font-size:.84rem;line-height:1.55}.fsp-reader-device{border:1px solid var(--border);background:var(--fsp-panel-gradient);transition:border-color .15s,box-shadow .15s;padding:1.1rem 1.15rem!important}.fsp-reader-device--connected{border-color:rgb(var(--cs-green-rgb) / .35);box-shadow:0 0 28px rgb(var(--cs-green-rgb) / .12)}.fsp-reader-device__head{align-items:flex-start;gap:.65rem;display:flex}.fsp-reader-device__icon{border:1px solid rgb(var(--cs-green-rgb) / .2);background:rgb(var(--cs-green-rgb) / .08);width:2.25rem;height:2.25rem;color:var(--cs-green);border-radius:.65rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.fsp-reader-device__titles{flex:1;min-width:0}.fsp-reader-device__name-row{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.fsp-reader-device__name{color:#f4fff8;margin:0;font-size:1rem;font-weight:600}.fsp-reader-device__model{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.8rem}.fsp-reader-device__demo-badge{letter-spacing:.04em;text-transform:uppercase;color:#9eb8ff;background:#78a0ff26;border-radius:999px;padding:.12rem .45rem;font-size:.65rem;font-weight:600}.fsp-reader-device__demo-badge--test{color:#ffd080;background:#ffc85026}.fsp-reader-device__rename-prompt{color:#ffd282f2;text-align:left;cursor:pointer;background:#ffc8500f;border:1px dashed #ffc85059;border-radius:.55rem;width:100%;margin:.65rem 0 0;padding:.45rem .6rem;font-size:.78rem;display:block}.fsp-reader-device__badges{flex-wrap:wrap;gap:.35rem;margin-top:.75rem;display:flex}.fsp-reader-badge{border-radius:999px;padding:.2rem .5rem;font-size:.72rem;font-weight:500;display:inline-block}.fsp-reader-badge--connected{background:rgb(var(--cs-green-rgb) / .15);color:var(--cs-green)}.fsp-reader-badge--disconnected{background:color-mix(in oklch, var(--foreground) 8%, transparent);color:var(--muted-foreground)}.fsp-reader-badge--unknown{color:#c8c8dcd9;background:#b4b4c81f}.fsp-reader-badge--needs-setup{color:#ffb84d;background:#ffb45026}.fsp-reader-badge--test-mode{color:#9eb8ff;background:#78a0ff26}.fsp-reader-device__type-badge{border:1px solid var(--border);color:var(--muted-foreground);border-radius:999px;padding:.2rem .5rem;font-size:.72rem}.fsp-reader-device__facts{grid-template-columns:1fr 1fr;gap:.55rem .75rem;margin:.85rem 0 0;padding:0;display:grid}.fsp-reader-device__facts div{min-width:0}.fsp-reader-device__facts dt{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);margin:0;font-size:.68rem}.fsp-reader-device__facts dd{color:color-mix(in oklch, var(--foreground) 85%, transparent);word-break:break-word;margin:.15rem 0 0;font-size:.82rem}.fsp-reader-device__actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:.35rem;margin-top:.9rem;padding-top:.75rem;display:flex}.fsp-reader-menu{position:relative}.fsp-reader-menu__trigger{border:1px solid var(--border);background:var(--fsp-overlay);width:1.85rem;height:1.85rem;color:color-mix(in oklch, var(--foreground) 65%, transparent);cursor:pointer;border-radius:.45rem;justify-content:center;align-items:center;display:flex}.fsp-reader-menu__panel{z-index:20;border:1px solid var(--border);background:var(--card);min-width:11rem;box-shadow:0 12px 32px var(--fsp-scrim);border-radius:.65rem;padding:.35rem;position:absolute;top:calc(100% + .25rem);right:0}.fsp-reader-menu__item{width:100%;color:color-mix(in oklch, var(--foreground) 85%, transparent);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:.4rem;padding:.45rem .6rem;font-size:.82rem;text-decoration:none;display:block}.fsp-reader-menu__item:hover{background:color-mix(in oklch, var(--foreground) 6%, transparent)}.fsp-reader-menu__item--danger{color:#ffb0b0}.fsp-reader-empty,.fsp-reader-loading{text-align:center;color:var(--muted-foreground);flex-direction:column;align-items:center;gap:.5rem;display:flex;padding:1.25rem 1rem!important}.fsp-reader-loading{text-align:left;align-items:flex-start;padding:.35rem 0!important}.fsp-reader-empty__title{color:#f4fff8;margin:.5rem 0 0;font-size:1.05rem;font-weight:600}.fsp-reader-empty__detail{max-width:28rem;margin:0;font-size:.88rem;line-height:1.5}.fsp-reader-empty__actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.fsp-reader-configured{gap:.65rem;display:grid}.fsp-reader-configured__head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.fsp-reader-configured__head h3{margin:0;font-size:1rem;font-weight:650}.fsp-reader-configured__head p{color:var(--muted-foreground);margin:0;font-size:.82rem}.fsp-reader-configured__list{gap:.65rem;display:grid}.fsp-reader-row{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:.85rem 1rem}.fsp-reader-row__main{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) auto;align-items:center;gap:.75rem;display:grid}.fsp-reader-row__name{margin:0;font-size:.95rem}.fsp-reader-row__meta{flex-wrap:wrap;gap:.4rem;margin:.35rem 0 0;display:flex}.fsp-reader-row__connection{color:var(--muted-foreground);font-size:.78rem}.fsp-reader-row__scan{gap:2px;margin:0;font-size:.88rem;display:grid}.fsp-reader-row__scan-label{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.fsp-reader-row__actions{justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.fsp-reader-row__details{margin-top:.65rem}.fsp-reader-row__details summary{cursor:pointer;color:var(--muted-foreground);font-size:.8rem;font-weight:600}.fsp-reader-activity__empty-state{justify-items:start;gap:.45rem;padding:.35rem 0 0;display:grid}.fsp-reader-activity__cards{margin:0;padding:0;list-style:none;display:none}.fsp-reader-activity__card{border:1px solid var(--border);background:var(--card);border-radius:10px;gap:.45rem;padding:.85rem 1rem;display:grid}.fsp-reader-activity__card p{gap:2px;margin:0;display:grid}.fsp-reader-activity__card strong{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.fsp-reader-activity__head{margin-bottom:.65rem}.fsp-reader-activity__title{color:#f4fff8;margin:0;font-size:1.05rem;font-weight:600}.fsp-reader-activity__desc{color:var(--muted-foreground);margin:.25rem 0 0;font-size:.82rem}.fsp-reader-activity__table-wrap{border:1px solid var(--border);border-radius:.85rem;overflow-x:auto}.fsp-reader-activity__table{border-collapse:collapse;width:100%;font-size:.82rem}.fsp-reader-activity__table th,.fsp-reader-activity__table td{text-align:left;border-bottom:1px solid var(--border);padding:.65rem .85rem}.fsp-reader-activity__table th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);background:var(--fsp-overlay-mid);font-size:.7rem}.fsp-reader-activity__table td{color:color-mix(in oklch, var(--foreground) 75%, transparent)}.fsp-reader-activity__table a{color:var(--cs-green);text-decoration:none}.fsp-reader-activity__empty{text-align:center;color:var(--muted-foreground);padding:1.5rem!important}.fsp-reader-activity__result{text-transform:capitalize}.fsp-reader-activity__result--found{color:var(--cs-green)}.fsp-reader-activity__result--not_found{color:#ffb464e6}.fsp-reader-modal__backdrop{z-index:80;background:var(--fsp-scrim-strong);cursor:pointer;border:none;position:fixed;inset:0}.fsp-reader-modal{z-index:81;border:1px solid rgb(var(--cs-green-rgb) / .18);background:var(--fsp-panel-gradient);width:min(92vw,28rem);max-height:min(88vh,42rem);box-shadow:0 24px 64px var(--fsp-scrim);border-radius:1rem;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.fsp-reader-modal--wide{width:min(92vw,36rem)}.fsp-reader-modal__head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.15rem;display:flex}.fsp-reader-modal__title{color:#f4fff8;margin:0;font-size:1.05rem;font-weight:600}.fsp-reader-modal__close{background:color-mix(in oklch, var(--foreground) 6%, transparent);width:2rem;height:2rem;color:color-mix(in oklch, var(--foreground) 78%, var(--muted-foreground));cursor:pointer;border:none;border-radius:.45rem;justify-content:center;align-items:center;display:flex}.fsp-reader-modal__body{padding:1rem 1.15rem 1.15rem}.fsp-reader-modal__steps{border:1px solid rgb(var(--cs-green-rgb) / .12);background:rgb(var(--cs-green-rgb) / .05);border-radius:.65rem;margin-top:.5rem;padding:.75rem .85rem}.fsp-reader-modal__steps-title{color:var(--cs-green);margin:0 0 .45rem;font-size:.82rem;font-weight:600}.fsp-reader-modal__steps ol{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:0;padding-left:1.1rem;font-size:.8rem;line-height:1.5}.fsp-field__textarea{resize:vertical;min-height:4.5rem}.fsp-reader-test__input{width:100%}.fsp-reader-test__detected{border:1px solid rgb(var(--cs-green-rgb) / .2);background:rgb(var(--cs-green-rgb) / .06);border-radius:.65rem;margin-top:.85rem;padding:.75rem .85rem}.fsp-reader-test__label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground);margin:0;font-size:.72rem}.fsp-reader-test__value{color:var(--cs-green);word-break:break-all;margin:.25rem 0 0;font-family:ui-monospace,monospace;font-size:1rem}.fsp-reader-test__result{color:color-mix(in oklch, var(--foreground) 78%, var(--muted-foreground));margin:.65rem 0 0;font-size:.85rem}.fsp-reader-test__actions{flex-wrap:wrap;gap:.4rem;margin-top:1rem;display:flex}.fsp-reader-card{padding:1rem!important}.fsp-reader-card__status{background:rgb(var(--cs-green-rgb) / .15);color:var(--cs-green);border-radius:999px;padding:.2rem .5rem;font-size:.72rem;display:inline-block}.fsp-reader-card__status--disabled{background:color-mix(in oklch, var(--foreground) 8%, transparent);color:var(--muted-foreground)}@media (max-width:900px){.fsp-reader-compat,.fsp-reader-setup__grid,.fsp-reader-row__main{grid-template-columns:1fr}.fsp-reader-row__actions{justify-content:flex-start}}@media (max-width:720px){.fsp-reader-hero__actions{flex-direction:column;align-items:stretch}.fsp-reader-hero__actions .fish-stock-btn{justify-content:center}.fsp-reader-device__facts{grid-template-columns:1fr}.fsp-reader-activity__table-wrap{display:none}.fsp-reader-activity__cards{gap:.65rem;display:grid}}.fsp-ai-compare{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem;display:grid}.fsp-ai-compare img{aspect-ratio:4/3;object-fit:cover;border-radius:.65rem;width:100%}.fsp-lake-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.85rem;display:grid}.fsp-lake-card{border:1px solid var(--border);color:inherit;border-radius:1rem;padding:1.1rem;text-decoration:none;transition:border-color .15s,box-shadow .15s}.fsp-lake-card:hover,.fsp-lake-card--active{border-color:rgb(var(--cs-green-rgb) / .35);box-shadow:0 0 24px rgb(var(--cs-green-rgb) / .08)}.fsp-lake-card__name{margin:0;font-weight:600}.fsp-lake-card__hint{color:var(--cs-green);margin:.35rem 0 0;font-size:.8rem}.fsp-link-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.fsp-link-list a{color:var(--cs-green);text-decoration:none}.fsp-ops-card{border:1px solid rgb(var(--cs-green-rgb) / .2);background:linear-gradient(135deg, rgb(var(--cs-green-rgb) / .08), #080e0be6);color:inherit;border-radius:1rem;margin-bottom:1rem;padding:1.25rem;text-decoration:none;transition:box-shadow .2s,border-color .2s;display:block}.fsp-ops-card:hover{border-color:rgb(var(--cs-green-rgb) / .45);box-shadow:0 0 32px rgb(var(--cs-green-rgb) / .12)}.fsp-ops-card__title{color:var(--cs-green);margin:0;font-size:1.1rem;font-weight:700}.fsp-ops-card__subtitle{color:var(--muted-foreground);margin:.35rem 0 .75rem;font-size:.9rem}.fsp-ops-card__cta{color:#fff;font-size:.85rem;font-weight:600}@media (max-width:1100px){.fsp-card--span-4,.fsp-card--span-8{grid-column:span 12}.fsp-header__actions{order:4;width:100%}.fsp-hero{flex-direction:column}.fsp-hero__aside{align-items:flex-start;width:100%}.fsp-system-status{justify-content:flex-start;max-width:none}.fsp-dash-hero{flex-direction:column;align-items:stretch}.fsp-dash-hero__actions{width:100%}.fsp-dash-metrics-group__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-dashboard-skeleton__metrics,.fsp-dashboard-skeleton__grid{grid-template-columns:1fr}}@media (max-width:900px){.fsp-sidebar{transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.fsp-sidebar--open{transform:translate(0)}.fsp-header__menu{display:inline-flex}.fsp-header__search-wrap{flex:none;order:3;width:100%;min-width:0}.fsp-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-dash-hero__actions .fish-stock-btn{flex:calc(50% - .3rem);justify-content:center;min-width:0}.fsp-dash-metrics-group__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-capture-grid,.fsp-profile-grid,.fsp-profile-hero__main{grid-template-columns:1fr}.fsp-profile-hero__media-card{max-width:240px}.fsp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-profile-hero__actions .fish-stock-btn{flex:calc(50% - .3rem);min-width:9.5rem}.fsp-image-gallery,.fsp-image-gallery--premium,.fsp-profile-skeleton__gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-shell__content{padding:1rem 1rem 2rem}}@media (max-width:560px){.fsp-shell:has(.fsp-stocktake-page) .fsp-header__search-wrap{display:none}.fsp-shell:has(.fsp-stocktake-page) .fsp-header__actions{flex-wrap:nowrap;padding-bottom:.2rem;overflow-x:auto}.fsp-shell:has(.fsp-stocktake-page) .fsp-header__action{flex:none;min-height:2.75rem}.fsp-stocktake-page .fsp-pit-result{padding:1rem!important}.fsp-stocktake-page .fsp-pit-result__head h1{font-size:1.45rem}.fsp-stocktake-review-row{padding:.75rem 0}.fsp-stocktake-page .fish-stock-btn,.fsp-stocktake-page input,.fsp-stocktake-page select{min-height:2.75rem}.fsp-stat-grid,.fsp-image-gallery,.fsp-image-gallery--premium,.fsp-insight-metrics{grid-template-columns:1fr}}.fsp-registry-page{gap:1.25rem;display:grid}.fsp-registry-hero{border:1px solid rgb(var(--cs-green-rgb) / .14);background:radial-gradient(120% 140% at 0% 0%, rgb(var(--cs-green-rgb) / .1), transparent 55%), var(--fsp-panel-gradient);box-shadow:0 18px 48px var(--fsp-overlay-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.25rem;padding:1.5rem 1.65rem}.fsp-registry-hero__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--cs-green-rgb) / .75);margin:0 0 .35rem;font-size:.72rem}.fsp-registry-hero__title{letter-spacing:-.02em;color:#f4fff8;margin:0;font-size:clamp(1.65rem,2.5vw,2.1rem);font-weight:650}.fsp-registry-hero__subtitle{max-width:42rem;color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:.5rem 0 0;font-size:.95rem;line-height:1.55}.fsp-registry-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin:1.35rem 0 0;padding:0;display:grid}.fsp-registry-stat{border:1px solid var(--border);background:var(--fsp-overlay);border-radius:.9rem;padding:.85rem 1rem}.fsp-registry-stat dt{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);margin:0;font-size:.72rem}.fsp-registry-stat dd{color:#f8fffb;margin:.35rem 0 0;font-size:1.2rem;font-weight:650}.fsp-registry-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.fsp-registry-search{flex:18rem;min-width:min(100%,20rem);max-width:36rem;position:relative}.fsp-registry-search__icon{color:color-mix(in oklch, var(--muted-foreground) 85%, transparent);pointer-events:none;position:absolute;top:50%;left:.95rem;transform:translateY(-50%)}.fsp-registry-search__input{border:1px solid var(--border);background:var(--fsp-overlay-mid);color:#fff;border-radius:.85rem;outline:none;width:100%;padding:.8rem 1rem .8rem 2.5rem;font-size:.92rem;transition:border-color .15s,box-shadow .15s}.fsp-registry-search__input::placeholder{color:var(--muted-foreground)}.fsp-registry-search__input:focus{border-color:rgb(var(--cs-green-rgb) / .45);box-shadow:0 0 0 3px rgb(var(--cs-green-rgb) / .12)}.fsp-registry-toolbar__actions{align-items:center;gap:.55rem;display:flex}.fsp-registry-toolbar__refresh{opacity:.9;padding:.6rem .85rem;font-size:.84rem}.fsp-registry-toolbar__add{align-items:center;gap:.4rem;display:inline-flex}.fsp-registry-filters{flex-wrap:wrap;gap:.45rem;display:flex}.fsp-registry-filter{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);color:color-mix(in oklch, var(--foreground) 72%, transparent);cursor:pointer;border-radius:999px;padding:.45rem .85rem;font-size:.82rem;transition:border-color .15s,background .15s,color .15s}.fsp-registry-filter:hover{border-color:rgb(var(--cs-green-rgb) / .28);color:#eafff3}.fsp-registry-filter--active{border-color:rgb(var(--cs-green-rgb) / .45);background:rgb(var(--cs-green-rgb) / .12);color:#c8ffe0}.fsp-registry-filter:focus-visible{outline:2px solid rgb(var(--cs-green-rgb) / .55);outline-offset:2px}.fsp-registry-table-card{border:1px solid var(--border);background:#080e0cb8;padding:0;overflow:hidden}.fsp-registry-table-wrap{overflow-x:auto}.fsp-registry-table{border-collapse:collapse;width:100%;font-size:.88rem}.fsp-registry-table th,.fsp-registry-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:.85rem 1rem}.fsp-registry-table th{letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground);background:color-mix(in oklch, var(--foreground) 18%, transparent);font-size:.72rem;font-weight:500}.fsp-registry-table__col-thumb{width:3.5rem}.fsp-registry-table__col-actions{width:11rem}.fsp-registry-row{cursor:pointer;transition:background .15s,box-shadow .15s}.fsp-registry-row:hover,.fsp-registry-row:focus-visible{background:rgb(var(--cs-green-rgb) / .05);box-shadow:inset 0 0 0 1px rgb(var(--cs-green-rgb) / .18);outline:none}.fsp-registry-thumb{border-radius:.85rem;flex-shrink:0;width:4.25rem;height:4.25rem;overflow:hidden}.fsp-registry-thumb--photo img{object-fit:cover;width:100%;height:100%;display:block}.fsp-registry-thumb--placeholder{background:linear-gradient(145deg, rgb(var(--cs-green-rgb) / .18), color-mix(in oklch, var(--foreground) 4%, transparent));border:1px solid rgb(var(--cs-green-rgb) / .2);color:rgb(var(--cs-green-rgb) / .85);place-items:center;display:grid}.fsp-registry-fish-cell__name{color:#f5fff9;font-weight:650;text-decoration:none}.fsp-registry-fish-cell__name:hover{color:var(--cs-green);text-decoration:underline}.fsp-registry-fish-cell__meta{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.78rem}.fsp-registry-pit{color:color-mix(in oklch, var(--foreground) 82%, transparent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.fsp-registry-pit--missing{color:var(--muted-foreground);font-family:inherit;font-style:normal}.fsp-registry-table__weight{font-variant-numeric:tabular-nums;white-space:nowrap}.fsp-registry-table__capture{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));white-space:nowrap}.fsp-registry-badge{letter-spacing:.02em;border:1px solid #0000;border-radius:999px;align-items:center;padding:.22rem .55rem;font-size:.74rem;font-weight:600;display:inline-flex}.fsp-registry-badge--active{color:#9dffc8;background:rgb(var(--cs-green-rgb) / .12);border-color:rgb(var(--cs-green-rgb) / .28)}.fsp-registry-badge--quarantined{color:#ffd89a;background:#ffb84d1f;border-color:#ffb84d4d}.fsp-registry-badge--moved{color:#b8d4ff;background:#78aaff1a;border-color:#78aaff47}.fsp-registry-badge--deceased,.fsp-registry-badge--sold{color:var(--muted-foreground);background:#ff787814;border-color:#ff787833}.fsp-registry-table__actions{white-space:nowrap;align-items:center;gap:.35rem;display:flex}.fsp-registry-action{color:var(--cs-green);border-radius:.55rem;align-items:center;gap:.15rem;padding:.35rem .55rem;font-size:.8rem;text-decoration:none;display:inline-flex}.fsp-registry-action:hover{background:rgb(var(--cs-green-rgb) / .1)}.fsp-registry-menu{position:relative}.fsp-registry-menu__trigger{width:2rem;height:2rem;color:color-mix(in oklch, var(--foreground) 65%, transparent);cursor:pointer;background:0 0;border:none;border-radius:.55rem;place-items:center;display:grid}.fsp-registry-menu__trigger:hover{background:color-mix(in oklch, var(--foreground) 6%, transparent);color:#fff}.fsp-registry-menu__panel{z-index:20;border:1px solid var(--border);background:var(--card);min-width:9.5rem;box-shadow:0 12px 32px var(--fsp-scrim);border-radius:.65rem;padding:.35rem;position:absolute;top:calc(100% + .25rem);right:0}.fsp-registry-menu__item{color:color-mix(in oklch, var(--foreground) 85%, transparent);border-radius:.45rem;padding:.5rem .65rem;font-size:.82rem;text-decoration:none;display:block}.fsp-registry-menu__item:hover{background:rgb(var(--cs-green-rgb) / .1);color:#c8ffe0}.fsp-registry-empty{text-align:center;color:var(--muted-foreground);justify-items:center;gap:.65rem;padding:2.5rem 1.5rem;display:grid}.fsp-registry-empty__title{color:color-mix(in oklch, var(--foreground) 88%, transparent);margin:0;font-size:1.05rem;font-weight:600}.fsp-registry-empty__detail{max-width:22rem;color:var(--muted-foreground);margin:0;font-size:.9rem}.fsp-registry-skeleton{display:grid}.fsp-registry-skeleton__row{border-bottom:1px solid var(--border);grid-template-columns:2.75rem 1fr 6rem 5rem;align-items:center;gap:1rem;padding:.9rem 1rem;display:grid}.fsp-registry-skeleton__thumb,.fsp-registry-skeleton__line,.fsp-registry-skeleton__pill{background:linear-gradient(90deg, color-mix(in oklch, var(--foreground) 4%, transparent) 0%, color-mix(in oklch, var(--foreground) 10%, transparent) 50%, color-mix(in oklch, var(--foreground) 4%, transparent) 100%);background-size:200% 100%;border-radius:.5rem;animation:1.4s ease-in-out infinite fsp-skeleton-shimmer}.fsp-registry-skeleton__thumb{width:2.75rem;height:2.75rem}.fsp-registry-skeleton__lines{gap:.4rem;display:grid}.fsp-registry-skeleton__line{height:.65rem}.fsp-registry-skeleton__line--title{width:55%}.fsp-registry-skeleton__line--sub{width:35%}.fsp-registry-skeleton__pill{width:4rem;height:1.4rem}.fsp-registry-skeleton__pill--wide{width:6rem}@media (max-width:960px){.fsp-registry-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-registry-table__capture,.fsp-registry-table th:nth-child(6){display:none}}@media (max-width:720px){.fsp-registry-toolbar{flex-direction:column;align-items:stretch}.fsp-registry-toolbar__actions{justify-content:flex-end}.fsp-registry-table th:nth-child(3),.fsp-registry-table td:nth-child(3),.fsp-registry-action span{display:none}}.fsp-profile-page-wrap{gap:1rem;display:grid}.fsp-profile-page--v2{gap:1.35rem}.fsp-profile-tabs{border:1px solid var(--border);background:var(--fsp-overlay);border-radius:1rem;flex-wrap:wrap;gap:.4rem;padding:.35rem;display:flex;overflow-x:auto}.fsp-profile-tabs__btn{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:.65rem;padding:.5rem .9rem;font-size:.84rem;font-weight:500}.fsp-profile-tabs__btn:hover{color:#eafff3;background:color-mix(in oklch, var(--foreground) 4%, transparent)}.fsp-profile-tabs__btn--active{background:rgb(var(--cs-green-rgb) / .14);color:#c8ffe0;box-shadow:inset 0 0 0 1px rgb(var(--cs-green-rgb) / .22)}.fsp-profile-tabs__btn:focus-visible{outline:2px solid rgb(var(--cs-green-rgb) / .55);outline-offset:2px}.fsp-profile-hero--v2 .fsp-profile-hero__media-card--v2{min-width:min(100%,380px)}.fsp-profile-hero__media--v2{border:1px solid rgb(var(--cs-green-rgb) / .22);min-height:320px;box-shadow:0 0 0 1px var(--fsp-overlay-strong) inset, 0 12px 40px rgb(var(--cs-green-rgb) / .08);background:var(--fsp-overlay-strong);border-radius:1rem}.fsp-profile-hero__placeholder--v2{min-height:320px}.fsp-profile-hero__media-footer{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.55rem;display:flex}.fsp-profile-hero__manage-images{justify-content:center;width:100%;margin-top:.65rem}.fsp-profile-hero__notice{color:#ffd2d2e6;background:#ff505014;border:1px solid #ff787838;border-radius:.65rem;margin:.75rem 0 0;padding:.55rem .75rem;font-size:.82rem}.fsp-profile-hero--deceased{opacity:.96}.fsp-profile-hero__actions--v2 .fsp-profile-hero__refresh{opacity:.85}.fsp-badge--code{letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem}.fsp-badge--muted{color:var(--muted-foreground);border-color:color-mix(in oklch, var(--foreground) 10%, transparent)}.fsp-stat-card__copy{background:color-mix(in oklch, var(--foreground) 5%, transparent);width:1.75rem;height:1.75rem;color:var(--muted-foreground);cursor:pointer;border:none;border-radius:.45rem;place-items:center;margin-left:auto;display:grid}.fsp-stat-card__copy:hover{color:var(--cs-green);background:rgb(var(--cs-green-rgb) / .1)}.fsp-stat-card__pit-value{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fsp-profile-overview{grid-template-columns:1fr 1fr;align-items:start;gap:1rem;display:grid}.fsp-profile-overview__col{gap:1rem;display:grid}.fsp-profile-overview__more{cursor:pointer;background:0 0;border:none;justify-self:start;padding:0}.fsp-profile-panel__head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.fsp-profile-panel__link{color:var(--cs-green);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;text-decoration:none}.fsp-profile-panel__link:hover{text-decoration:underline}.fsp-profile-panel__footer-btn{margin-top:.85rem}.fsp-profile-panel--quarantine{border-color:#ffb84d47;box-shadow:inset 0 0 0 1px #ffb84d14}.fsp-profile-panel--twin{border-color:rgb(var(--cs-green-rgb) / .18);background:radial-gradient(120% 100% at 100% 0%, rgb(var(--cs-green-rgb) / .08), transparent 50%), #080e0cd9}.fsp-twin-module__head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.fsp-twin-module__tag{letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--cs-green-rgb) / .65);margin:0;font-size:.68rem}.fsp-twin-module__metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:0 0 .85rem;display:grid}.fsp-twin-module__metrics dt{color:var(--muted-foreground);margin:0;font-size:.72rem}.fsp-twin-module__metrics dd{color:#f4fff8;margin:.2rem 0 0;font-size:1.05rem;font-weight:650}.fsp-twin-module__note{color:var(--muted-foreground);margin:0 0 .85rem;font-size:.78rem;line-height:1.45}.fsp-capture-timeline{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.fsp-capture-timeline__item{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 18%, transparent);border-radius:.85rem;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.fsp-capture-timeline__weight{color:#f5fff9;margin:0;font-weight:650}.fsp-capture-timeline__meta{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.78rem}.fsp-activity-timeline{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.fsp-activity-timeline__item{align-items:flex-start;gap:.65rem;display:flex}.fsp-activity-timeline__icon{background:rgb(var(--cs-green-rgb) / .1);width:1.75rem;height:1.75rem;color:var(--cs-green);border-radius:.5rem;flex-shrink:0;place-items:center;display:grid}.fsp-activity-timeline__title{color:color-mix(in oklch, var(--foreground) 90%, transparent);margin:0;font-size:.88rem;font-weight:600}.fsp-activity-timeline__meta{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.78rem}.fsp-profile-image-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.fsp-profile-image-preview__item{aspect-ratio:1;border:1px solid var(--border);border-radius:.75rem;overflow:hidden}.fsp-profile-image-preview__item img{object-fit:cover;width:100%;height:100%;display:block}.fsp-empty-state--compact{padding:1.25rem .5rem}.fsp-image-card__date{color:var(--muted-foreground);margin:.35rem 0 0;font-size:.75rem}.fsp-image-card__actions--menu{justify-content:space-between}.fsp-image-card__menu-trigger{margin-left:auto}.fsp-registry-menu__item--danger{color:#ffb0b0;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.35rem;width:100%;display:flex}.fsp-image-gallery--premium .fsp-image-card--premium{min-height:100%}@media (max-width:960px){.fsp-profile-overview{grid-template-columns:1fr}.fsp-profile-hero--v2 .fsp-profile-hero__main{flex-direction:column}.fsp-profile-hero__media-card--v2{width:100%;max-width:none}}@media (max-width:720px){.fsp-profile-tabs{flex-wrap:nowrap}.fsp-profile-hero__actions--v2{flex-wrap:nowrap;padding-bottom:.25rem;overflow-x:auto}.fsp-profile-hero__actions--v2 .fish-stock-btn{flex:none}.fsp-twin-module__metrics{grid-template-columns:1fr}}.fsp-pit-page{gap:1.25rem;display:grid}.fsp-pit-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-top:1rem;display:grid}.fsp-pit-summary-card{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;padding:.75rem;display:flex}.fsp-pit-summary-card span{color:var(--muted-foreground);font-size:.78rem}.fsp-pit-summary-card strong{color:var(--cs-green);font-size:1.1rem}.fsp-stocktake-review-row{border-bottom:1px solid var(--border);gap:.75rem;padding:.85rem 0;display:grid}.fsp-stocktake-review-row>div:first-child{flex-wrap:wrap;justify-content:space-between;gap:.35rem 1rem;display:flex}.fsp-stocktake-review-row>div:first-child span{color:var(--muted-foreground)}.fsp-stocktake-review-controls{grid-template-columns:minmax(11rem,1fr) minmax(12rem,1fr) auto;align-items:center;gap:.5rem;display:grid}.fsp-stocktake-review-controls select,.fsp-stocktake-review-controls input{min-width:0;min-height:2.75rem}.fsp-pit-hero{border:1px solid rgb(var(--cs-green-rgb) / .2);background:radial-gradient(120% 120% at 0% 0%, rgb(var(--cs-green-rgb) / .1), transparent 55%), var(--fsp-panel-gradient);box-shadow:0 18px 50px var(--fsp-overlay-mid);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:1.15rem;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem 1.5rem;padding:1.35rem 1.4rem;display:flex}.fsp-pit-hero__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--cs-green-rgb) / .75);margin:0 0 .35rem;font-size:.72rem;font-weight:600}.fsp-pit-hero__title{color:#f2fff7;letter-spacing:-.02em;margin:0;font-size:clamp(1.65rem,3vw,2.1rem);font-weight:700}.fsp-pit-hero__subtitle{max-width:52ch;color:var(--muted-foreground);margin:.55rem 0 0;font-size:.92rem;line-height:1.55}.fsp-pit-hero__chips{flex-wrap:wrap;gap:.4rem;margin-top:.9rem;display:flex}.fsp-pit-hero__actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.fsp-pit-chip{color:#dcffebe0;border:1px solid rgb(var(--cs-green-rgb) / .22);background:rgb(var(--cs-green-rgb) / .08);border-radius:999px;align-items:center;gap:.35rem;padding:.28rem .62rem;font-size:.72rem;font-weight:500;display:inline-flex}.fsp-pit-chip--live{color:#c8ffe0;border-color:rgb(var(--cs-green-rgb) / .45);box-shadow:0 0 18px rgb(var(--cs-green-rgb) / .15)}.fsp-pit-chip--muted{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));border-color:color-mix(in oklch, var(--foreground) 10%, transparent);background:color-mix(in oklch, var(--foreground) 4%, transparent)}.fsp-pit-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.75fr);align-items:start;gap:1rem;display:grid}.fsp-pit-layout__main{gap:1rem;display:grid}.fsp-pit-console{border-color:rgb(var(--cs-green-rgb) / .16)!important;background:radial-gradient(100% 80% at 50% 0%, rgb(var(--cs-green-rgb) / .06), transparent 60%), #060a08d1!important;padding:1.15rem 1.2rem!important}.fsp-pit-console__head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.fsp-pit-console__title{color:#eefef4;margin:0;font-size:1rem;font-weight:650}.fsp-pit-console__status{color:rgb(var(--cs-green-rgb) / .75);font-size:.78rem}.fsp-pit-console__status--loading{animation:1.4s ease-in-out infinite fsp-pit-pulse}@keyframes fsp-pit-pulse{0%,to{opacity:.55}50%{opacity:1}}.fsp-pit-console__label{color:var(--muted-foreground);margin-bottom:.45rem;font-size:.78rem;display:block}.fsp-pit-scan-input{letter-spacing:.1em;border:1px solid rgb(var(--cs-green-rgb) / .28);background:var(--fsp-overlay-strong);color:#c8ffe0;border-radius:1rem;width:100%;padding:1rem 1.15rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1.35rem,2.5vw,1.75rem);transition:border-color .15s,box-shadow .15s}.fsp-pit-scan-input::placeholder{color:var(--muted-foreground);letter-spacing:.04em}.fsp-pit-scan-input:focus{border-color:var(--cs-green);box-shadow:0 0 0 3px rgb(var(--cs-green-rgb) / .18), 0 0 28px rgb(var(--cs-green-rgb) / .12);outline:none}.fsp-pit-console__helpers{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;margin-top:.75rem;display:flex}.fsp-pit-console__hint{color:var(--muted-foreground);margin:0;font-size:.8rem;line-height:1.45}.fsp-pit-console__hint kbd,.fsp-pit-history__empty-desc kbd{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 6%, transparent);border-radius:.35rem;padding:.1rem .35rem;font-family:inherit;font-size:.75em}.fsp-pit-console__manual{color:var(--cs-green);cursor:pointer;background:0 0;border:none;align-items:center;gap:.35rem;padding:0;font-size:.8rem;display:inline-flex}.fsp-pit-console__manual:hover{text-decoration:underline}.fsp-pit-console__warning{color:#ffc96a;margin:.65rem 0 0;font-size:.8rem}.fsp-pit-console__error{color:#ffb0b0;margin:.65rem 0 0;font-size:.8rem}.fsp-pit-console__normalized{color:var(--muted-foreground);margin:.5rem 0 0;font-size:.78rem}.fsp-pit-mono{letter-spacing:.06em;color:#b8ffd4;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.fsp-pit-result{border-style:solid;border-width:1px;padding:1.1rem 1.2rem!important}.fsp-pit-result--empty{text-align:center;border-color:color-mix(in oklch, var(--foreground) 8%, transparent)!important;background:var(--fsp-overlay)!important;padding:2rem 1.2rem!important}.fsp-pit-result--loading{border-color:rgb(var(--cs-green-rgb) / .2)!important;background:rgb(var(--cs-green-rgb) / .04)!important}.fsp-pit-result--success{box-shadow:0 0 32px rgb(var(--cs-green-rgb) / .08);border-color:rgb(var(--cs-green-rgb) / .35)!important;background:radial-gradient(100% 120% at 0% 0%, rgb(var(--cs-green-rgb) / .12), transparent 55%), #060c09e0!important}.fsp-pit-result--warn{box-shadow:0 0 28px #ffb84d14;background:radial-gradient(100% 120% at 0 0,#ffb84d1a,#0000 55%),#120e08e0!important;border-color:#ffb84d59!important}.fsp-pit-result--conflict{box-shadow:0 0 28px #ff505014;background:radial-gradient(100% 120% at 0 0,#ff50501a,#0000 55%),#100808e0!important;border-color:#ff646459!important}.fsp-pit-result__empty-icon{color:rgb(var(--cs-green-rgb) / .45);margin-bottom:.5rem}.fsp-pit-result__head{align-items:flex-start;gap:.75rem;display:flex}.fsp-pit-result__icon--success{color:var(--cs-green);flex-shrink:0}.fsp-pit-result__icon--warn{color:#ffb84d;flex-shrink:0}.fsp-pit-result__icon--conflict{color:#ff7a7a;flex-shrink:0}.fsp-pit-result__label{color:#f4fff8;margin:0;font-size:1rem;font-weight:650}.fsp-pit-result__sub{color:var(--muted-foreground);margin:.35rem 0 0;font-size:.84rem;line-height:1.45}.fsp-pit-result__pit{color:var(--muted-foreground);margin:.5rem 0 0;font-size:.82rem}.fsp-pit-result__hint{color:var(--muted-foreground);margin:.75rem 0 0;font-size:.84rem}.fsp-pit-result__body{align-items:flex-start;gap:1rem;margin-top:1rem;display:flex}.fsp-pit-result__thumb{border:1px solid var(--border);border-radius:.9rem;flex-shrink:0;width:5.75rem;height:5.75rem;overflow:hidden}.fsp-pit-result__thumb--photo img{object-fit:cover;width:100%;height:100%;display:block}.fsp-pit-result__thumb--placeholder{background:rgb(var(--cs-green-rgb) / .08);color:rgb(var(--cs-green-rgb) / .55);place-items:center;display:grid}.fsp-pit-result__grid{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:0;display:grid}.fsp-pit-result__grid dt{color:var(--muted-foreground);margin:0;font-size:.72rem}.fsp-pit-result__grid dd{color:color-mix(in oklch, var(--foreground) 90%, transparent);margin:.15rem 0 0;font-size:.9rem}.fsp-pit-result__actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.fsp-pit-copy{align-items:center;gap:.35rem;display:inline-flex}.fsp-pit-help-card{height:100%;border-color:color-mix(in oklch, var(--foreground) 10%, transparent)!important;background:var(--fsp-overlay)!important;padding:1rem!important}.fsp-pit-help-card__media{border:1px solid rgb(var(--cs-green-rgb) / .15);background:var(--fsp-overlay-strong);border-radius:.9rem;place-items:center;min-height:160px;margin-bottom:.85rem;display:grid;position:relative;overflow:hidden}.fsp-pit-help-card__img{object-fit:contain;width:100%;height:auto;max-height:200px;display:block}.fsp-pit-help-card__pulse{background:var(--cs-green);width:.55rem;height:.55rem;box-shadow:0 0 12px rgb(var(--cs-green-rgb) / .65);border-radius:50%;animation:1.6s ease-in-out infinite fsp-pit-pulse;position:absolute;inset:auto .75rem .75rem auto}.fsp-pit-help-card__title{color:#eefef4;margin:0 0 .65rem;font-size:.95rem;font-weight:650}.fsp-pit-help-card__badges{flex-wrap:wrap;gap:.35rem;margin-bottom:.75rem;display:flex}.fsp-pit-help-card__note{color:var(--muted-foreground);margin:0;font-size:.8rem;line-height:1.5}.fsp-pit-bottom{grid-template-columns:minmax(0,1.6fr) minmax(240px,.8fr);align-items:start;gap:1rem;display:grid}.fsp-pit-history{padding:1rem 1.1rem!important}.fsp-pit-history__head{justify-content:space-between;align-items:center;margin-bottom:.85rem;display:flex}.fsp-pit-history__title{margin:0;font-size:1rem;font-weight:650}.fsp-pit-history__refresh{background:color-mix(in oklch, var(--foreground) 5%, transparent);width:2rem;height:2rem;color:var(--muted-foreground);cursor:pointer;border:none;border-radius:.55rem;place-items:center;display:grid}.fsp-pit-history__refresh:hover{color:var(--cs-green);background:rgb(var(--cs-green-rgb) / .1)}.fsp-pit-history__table-wrap{overflow-x:auto}.fsp-pit-history__table{border-collapse:collapse;width:100%;font-size:.82rem}.fsp-pit-history__table th,.fsp-pit-history__table td{text-align:left;border-bottom:1px solid var(--border);padding:.55rem .65rem}.fsp-pit-history__table th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);font-size:.72rem;font-weight:600}.fsp-pit-history__result--success{color:#7dffb0}.fsp-pit-history__result--warn{color:#ffc96a}.fsp-pit-history__result--danger{color:#ff9a9a}.fsp-pit-history__actions{gap:.35rem;display:flex}.fsp-pit-history__action{background:color-mix(in oklch, var(--foreground) 5%, transparent);width:1.75rem;height:1.75rem;color:var(--muted-foreground);cursor:pointer;border:none;border-radius:.45rem;place-items:center;text-decoration:none;display:grid}.fsp-pit-history__action:hover{color:var(--cs-green);background:rgb(var(--cs-green-rgb) / .1)}.fsp-pit-history__empty{text-align:center;padding:1.5rem .5rem}.fsp-pit-history__empty-title{color:color-mix(in oklch, var(--foreground) 82%, transparent);margin:0;font-weight:650}.fsp-pit-history__empty-desc{max-width:36ch;color:var(--muted-foreground);margin:.45rem auto 0;font-size:.82rem;line-height:1.5}.fsp-pit-csv-card{align-content:start;gap:.65rem;display:grid;padding:1rem 1.1rem!important}.fsp-pit-csv-card__title{margin:0;font-size:1rem;font-weight:650}.fsp-pit-csv-card__desc{color:var(--muted-foreground);margin:0;font-size:.84rem;line-height:1.45}.fsp-pit-csv-card__actions{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.fsp-pit-modal-backdrop{z-index:80;background:var(--fsp-scrim-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.fsp-pit-modal{border:1px solid var(--border);background:var(--fsp-panel-gradient);width:min(100%,520px);max-height:min(90vh,720px);box-shadow:0 24px 60px var(--fsp-scrim);border-radius:1rem;padding:1.15rem 1.2rem;overflow:auto}.fsp-pit-modal--wide{width:min(100%,640px)}.fsp-pit-modal__head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.fsp-pit-modal__title{margin:0;font-size:1.05rem;font-weight:650}.fsp-pit-modal__close{background:color-mix(in oklch, var(--foreground) 5%, transparent);width:2rem;height:2rem;color:var(--muted-foreground);cursor:pointer;border:none;border-radius:.55rem;place-items:center;display:grid}.fsp-pit-modal__intro{color:var(--muted-foreground);margin:0 0 .85rem;font-size:.84rem;line-height:1.45}.fsp-pit-modal__foot{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.fsp-pit-settings-steps{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.fsp-pit-settings-step{align-items:flex-start;gap:.75rem;display:flex}.fsp-pit-settings-step__num{background:rgb(var(--cs-green-rgb) / .12);width:1.6rem;height:1.6rem;color:var(--cs-green);border-radius:.45rem;flex-shrink:0;place-items:center;font-size:.78rem;font-weight:700;display:grid}.fsp-pit-settings-step__title{color:color-mix(in oklch, var(--foreground) 90%, transparent);margin:0;font-size:.9rem;font-weight:600}.fsp-pit-settings-step__detail{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.8rem;line-height:1.45}.fsp-pit-csv-actions{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.fsp-pit-csv-upload{cursor:pointer}.fsp-pit-csv-textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.fsp-pit-csv-preview{margin-top:.75rem}.fsp-pit-csv-preview__summary{color:var(--muted-foreground);margin:0 0 .5rem;font-size:.8rem}.fsp-pit-csv-preview__table-wrap{border:1px solid var(--border);border-radius:.75rem;overflow:auto}.fsp-pit-csv-preview__table{border-collapse:collapse;width:100%;font-size:.8rem}.fsp-pit-csv-preview__table th,.fsp-pit-csv-preview__table td{text-align:left;border-bottom:1px solid color-mix(in oklch, var(--foreground) 5%, transparent);padding:.45rem .6rem}.fsp-pit-csv-preview__row--invalid td{color:#ffb0b0}.fsp-pit-csv-preview__more{color:var(--muted-foreground);margin:0;padding:.45rem .6rem;font-size:.78rem}.fsp-pit-assign-search{color:color-mix(in oklch, var(--muted-foreground) 85%, transparent);align-items:center;gap:.5rem;display:flex}.fsp-pit-assign-search input{flex:1}.fsp-pit-assign-list{gap:.35rem;max-height:220px;margin-top:.65rem;display:grid;overflow:auto}.fsp-pit-assign-item{text-align:left;border:1px solid var(--border);background:var(--fsp-overlay);color:inherit;cursor:pointer;border-radius:.65rem;gap:.1rem;padding:.55rem .65rem;display:grid}.fsp-pit-assign-item--active{border-color:rgb(var(--cs-green-rgb) / .35);background:rgb(var(--cs-green-rgb) / .08)}.fsp-pit-assign-item__name{color:color-mix(in oklch, var(--foreground) 90%, transparent);font-size:.88rem;font-weight:600}.fsp-pit-assign-item__meta{color:var(--muted-foreground);font-size:.76rem}.fsp-pit-assign-empty{color:var(--muted-foreground);text-align:center;margin:0;padding:.75rem .25rem;font-size:.82rem}@media (max-width:960px){.fsp-pit-layout,.fsp-pit-bottom{grid-template-columns:1fr}.fsp-pit-history__table th:nth-child(5),.fsp-pit-history__table td:nth-child(5){display:none}}@media (max-width:720px){.fsp-pit-hero__actions{width:100%}.fsp-pit-hero__actions .fish-stock-btn{flex:auto;justify-content:center}.fsp-pit-result__body{flex-direction:column}.fsp-pit-result__grid{grid-template-columns:1fr}.fsp-pit-history__table th:nth-child(4),.fsp-pit-history__table td:nth-child(4){display:none}}.fsp-analytics{flex-direction:column;gap:1.25rem;display:flex}.fsp-analytics-hero{border:1px solid rgb(var(--cs-green-rgb) / .18);background:radial-gradient(ellipse 80% 120% at 100% 0%, rgb(var(--cs-green-rgb) / .12), transparent 55%), var(--fsp-panel-gradient);box-shadow:0 12px 40px var(--fsp-overlay-strong), var(--fsp-inset-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.25rem;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1.5rem 1.65rem;display:flex}.fsp-analytics-hero__main{flex-direction:column;flex:1;gap:.85rem;min-width:min(100%,20rem);display:flex}.fsp-analytics-hero__title{letter-spacing:-.02em;color:#fff;margin:0;font-size:1.65rem;font-weight:700}.fsp-analytics-hero__subtitle{max-width:40rem;color:var(--muted-foreground);margin:.35rem 0 0;font-size:.92rem;line-height:1.5}.fsp-analytics-hero__scope{max-width:14rem}.fsp-analytics-hero__refreshed{color:var(--muted-foreground);margin:0;font-size:.75rem}.fsp-analytics-hero__actions{flex-wrap:wrap;gap:.5rem;display:flex}.fsp-analytics-chips{flex-wrap:wrap;gap:.4rem;display:flex}.fsp-analytics-chips--scroll{scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:.2rem;overflow-x:auto}.fsp-analytics-chip{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 4%, transparent);color:color-mix(in oklch, var(--foreground) 72%, transparent);cursor:pointer;border-radius:999px;flex:none;padding:.42rem .75rem;font-size:.78rem;transition:border-color .15s,color .15s,background .15s}.fsp-analytics-chip--sm{padding:.3rem .55rem;font-size:.72rem}.fsp-analytics-chip:hover{border-color:rgb(var(--cs-green-rgb) / .35);color:var(--cs-green)}.fsp-analytics-chip--active{border-color:rgb(var(--cs-green-rgb) / .45);background:rgb(var(--cs-green-rgb) / .12);color:#7dffb0}.fsp-analytics-status{flex-wrap:wrap;gap:.4rem;display:flex}.fsp-analytics-status-chip{letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border);color:var(--muted-foreground);border-radius:999px;padding:.25rem .55rem;font-size:.68rem;font-weight:600}.fsp-analytics-status-chip--ok{border-color:rgb(var(--cs-green-rgb) / .28);color:#7dffb0;background:rgb(var(--cs-green-rgb) / .08)}.fsp-analytics-status-chip--warn{color:#ffd08a;background:#ffa03214;border-color:#ffb45059}.fsp-analytics-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.fsp-analytics-metric{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);border-radius:1rem;flex-direction:column;min-height:7rem;padding:1rem 1.05rem;transition:border-color .15s;display:flex}.fsp-analytics-metric:hover{border-color:rgb(var(--cs-green-rgb) / .18)}.fsp-analytics-metric__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.fsp-analytics-metric__icon{background:rgb(var(--cs-green-rgb) / .1);width:2rem;height:2rem;color:var(--cs-green);border-radius:.55rem;justify-content:center;align-items:center;display:inline-flex}.fsp-analytics-metric__label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted-foreground);margin:0;font-size:.68rem}.fsp-analytics-metric__value{letter-spacing:-.02em;color:#fff;margin:.3rem 0 0;font-size:1.4rem;font-weight:600;line-height:1.15}.fsp-analytics-metric__helper{color:var(--muted-foreground);margin:.35rem 0 0;font-size:.72rem;line-height:1.35}.fsp-analytics-metric--warn .fsp-analytics-metric__value{color:#ffc266}.fsp-analytics-metric--risk .fsp-analytics-metric__value{color:#ff8a8a}.fsp-analytics-metric--ok .fsp-analytics-metric__value{color:#7dffb0}.fsp-analytics-trend{color:var(--muted-foreground);align-items:center;gap:.2rem;font-size:.68rem;font-weight:600;display:inline-flex}.fsp-analytics-trend--up{color:#7dffb0}.fsp-analytics-trend--down{color:#ff9f9f}.fsp-analytics-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.fsp-analytics-layout__left,.fsp-analytics-layout__right{flex-direction:column;gap:1rem;display:flex}.fsp-analytics-lower{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.fsp-analytics-panel__insight{color:var(--muted-foreground);margin:.85rem 0 0;font-size:.82rem;line-height:1.5}.fsp-analytics-panel__insight a{color:var(--cs-green)}.fsp-analytics-chart{margin-top:.25rem}.fsp-analytics-chart__bars{align-items:flex-end;gap:.45rem;min-height:9rem;padding:.5rem 0 0;display:flex}.fsp-analytics-chart__bar-wrap{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.35rem;min-width:0;height:9rem;display:flex}.fsp-analytics-chart__bar{background:linear-gradient(180deg, rgb(var(--cs-green-rgb) / .85), rgb(var(--cs-green-rgb) / .35));border-radius:.45rem .45rem .15rem .15rem;width:100%;max-width:2.5rem;transition:height .25s}.fsp-analytics-chart__bar--predicted{background:linear-gradient(#78b4ffbf,#78b4ff40);border:1px dashed #78b4ff73}.fsp-analytics-chart__label{color:var(--muted-foreground);text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.62rem;overflow:hidden}.fsp-analytics-chart-empty{border:1px dashed color-mix(in oklch, var(--foreground) 10%, transparent);background:color-mix(in oklch, var(--foreground) 2%, transparent);text-align:center;min-height:8rem;color:var(--muted-foreground);border-radius:.85rem;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;padding:1.25rem;font-size:.85rem;display:flex}.fsp-analytics-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:.85rem;display:grid}.fsp-analytics-stat__label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-size:.68rem;display:block}.fsp-analytics-stat__value{color:#fff;margin-top:.2rem;font-size:.92rem;font-weight:600;display:block}.fsp-analytics-stat__value--ok{color:#7dffb0}.fsp-analytics-stat__value--warn{color:#ffc266}.fsp-analytics-bars{flex-direction:column;gap:.55rem;display:flex}.fsp-analytics-bars__row{flex-direction:column;gap:.25rem;display:flex}.fsp-analytics-bars__meta{color:color-mix(in oklch, var(--foreground) 65%, transparent);justify-content:space-between;font-size:.78rem;display:flex}.fsp-analytics-bars__track{background:color-mix(in oklch, var(--foreground) 6%, transparent);border-radius:999px;height:.45rem;overflow:hidden}.fsp-analytics-bars__fill{border-radius:inherit;background:linear-gradient(90deg, rgb(var(--cs-green-rgb) / .75), rgb(var(--cs-green-rgb) / .35));height:100%;display:block}.fsp-analytics-bars__fill--accent{background:linear-gradient(90deg,#78b4ffbf,#78b4ff4d)}.fsp-analytics-lake-grid{flex-direction:column;gap:.65rem;display:flex}.fsp-analytics-lake-card{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 2%, transparent);border-radius:.85rem;padding:.85rem .95rem}.fsp-analytics-lake-card__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.55rem;display:flex}.fsp-analytics-lake-card__head h3{margin:0;font-size:.92rem;font-weight:600}.fsp-analytics-risk{text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--border);border-radius:999px;padding:.15rem .45rem;font-size:.65rem;font-weight:700}.fsp-analytics-risk--low{color:#7dffb0;border-color:rgb(var(--cs-green-rgb) / .3)}.fsp-analytics-risk--moderate{color:#ffd08a;border-color:#ffb45059}.fsp-analytics-risk--high{color:#ffb0b0;border-color:#ff5a5a59}.fsp-analytics-lake-card__bars{flex-direction:column;gap:.45rem;display:flex}.fsp-analytics-lake-card__metric{color:var(--muted-foreground);grid-template-columns:4.5rem 1fr auto;align-items:center;gap:.5rem;font-size:.75rem;display:grid}.fsp-analytics-lake-card__metric strong{color:#fff;font-size:.78rem}.fsp-analytics-lake-card__meta{color:var(--muted-foreground);margin:.5rem 0 0;font-size:.72rem}.fsp-analytics-insights{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.fsp-analytics-insight{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);color:var(--muted-foreground);border-radius:.75rem;gap:.65rem;padding:.75rem .85rem;display:flex}.fsp-analytics-insight svg{color:var(--cs-green);flex-shrink:0;margin-top:.1rem}.fsp-analytics-insight--critical{border-left:3px solid #ff6b6b}.fsp-analytics-insight--review{border-left:3px solid #ffc266}.fsp-analytics-insight--info{border-left:3px solid #78b4ffa6}.fsp-analytics-insight--positive{border-left:3px solid var(--cs-green)}.fsp-analytics-insight__title{color:#fff;margin:0;font-size:.88rem;font-weight:600}.fsp-analytics-insight__detail{margin:.25rem 0 0;font-size:.8rem;line-height:1.45}.fsp-analytics-health-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.fsp-analytics-health-stat{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 2%, transparent);color:var(--muted-foreground);border-radius:.75rem;flex-direction:column;gap:.25rem;padding:.75rem .85rem;font-size:.75rem;display:flex}.fsp-analytics-health-stat strong{color:#fff;font-size:1.2rem}.fsp-analytics-health-stat a{color:var(--cs-green);font-size:.72rem;text-decoration:none}.fsp-analytics-health-stat--alert{background:#ff3c3c0f;border-color:#ff5a5a40}.fsp-analytics-health-stat--warn strong{color:#ffc266}.fsp-analytics-health-stat__note{color:color-mix(in oklch, var(--muted-foreground) 85%, transparent);font-size:.68rem}.fsp-analytics-forecast-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.fsp-analytics-capacity-empty{border:1px dashed color-mix(in oklch, var(--foreground) 10%, transparent);background:color-mix(in oklch, var(--foreground) 2%, transparent);border-radius:.75rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;margin-top:.85rem;padding:.85rem;display:flex}.fsp-analytics-capacity-empty p{color:var(--muted-foreground);margin:0;font-size:.82rem}.fsp-analytics-top-fish{flex-direction:column;gap:.55rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.fsp-analytics-top-fish li{background:color-mix(in oklch, var(--foreground) 3%, transparent);border:1px solid var(--border);border-radius:.65rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;padding:.55rem .65rem;display:grid}.fsp-analytics-top-fish--compact li{grid-template-columns:auto 1fr auto}.fsp-analytics-top-fish__rank{background:rgb(var(--cs-green-rgb) / .12);color:#7dffb0;border-radius:.4rem;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.72rem;font-weight:700;display:inline-flex}.fsp-analytics-top-fish a{color:#fff;font-size:.88rem;font-weight:600;text-decoration:none}.fsp-analytics-top-fish a:hover{color:var(--cs-green)}.fsp-analytics-top-fish__meta{color:var(--muted-foreground);margin-top:.1rem;font-size:.72rem;display:block}.fsp-analytics-composition{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.fsp-analytics-composition__title{text-transform:uppercase;letter-spacing:.07em;color:var(--muted-foreground);margin:0 0 .55rem;font-size:.72rem;font-weight:600}.fsp-analytics-pills{flex-wrap:wrap;gap:.4rem;display:flex}.fsp-analytics-pill{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);color:color-mix(in oklch, var(--foreground) 65%, transparent);border-radius:999px;padding:.35rem .6rem;font-size:.75rem}.fsp-analytics-pill strong{color:#fff;margin-left:.25rem}.fsp-analytics-coverage{border:1px solid rgb(var(--cs-green-rgb) / .15);background:rgb(var(--cs-green-rgb) / .04);border-radius:.75rem;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;padding:.75rem;display:grid}.fsp-analytics-coverage span{color:var(--muted-foreground);font-size:.72rem;display:block}.fsp-analytics-coverage strong{color:#7dffb0;margin-top:.2rem;font-size:1.1rem;display:block}.fsp-analytics-mortality-card{margin-top:.25rem}.fsp-analytics-mortality{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.fsp-analytics-skeleton__hero,.fsp-analytics-skeleton__chip,.fsp-analytics-skeleton__metric,.fsp-analytics-skeleton__panel,.fsp-analytics-skeleton__group-title{background:linear-gradient(90deg, color-mix(in oklch, var(--foreground) 4%, transparent) 0%, color-mix(in oklch, var(--foreground) 8%, transparent) 50%, color-mix(in oklch, var(--foreground) 4%, transparent) 100%);background-size:200% 100%;border-radius:.85rem;animation:1.4s infinite fsp-shimmer}.fsp-analytics-skeleton__hero{height:10rem}.fsp-analytics-skeleton__chips{gap:.5rem;display:flex}.fsp-analytics-skeleton__chip{border-radius:999px;width:5rem;height:2rem}.fsp-analytics-skeleton__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.fsp-analytics-skeleton__metric{height:7rem}.fsp-analytics-skeleton__columns{grid-template-columns:1.35fr 1fr;gap:1rem;display:grid}.fsp-analytics-skeleton__col{flex-direction:column;gap:1rem;display:flex}.fsp-analytics-skeleton__panel{height:14rem}.fsp-analytics-skeleton__lower{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}@media (max-width:1100px){.fsp-analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-analytics-layout,.fsp-analytics-lower,.fsp-analytics-skeleton__metrics,.fsp-analytics-skeleton__lower,.fsp-analytics-skeleton__columns{grid-template-columns:1fr}}@media (max-width:720px){.fsp-analytics-hero{flex-direction:column;align-items:stretch}.fsp-analytics-hero__actions{width:100%}.fsp-analytics-forecast-grid,.fsp-analytics-composition{grid-template-columns:1fr}}.fsp-passport-page{gap:1.25rem;display:grid;position:relative}.fsp-passport-page--preview-open{overflow:hidden}.fsp-passport-hero{border:1px solid rgb(var(--cs-green-rgb) / .14);background:radial-gradient(120% 140% at 0% 0%, rgb(var(--cs-green-rgb) / .1), transparent 55%), var(--fsp-panel-gradient);box-shadow:0 18px 48px var(--fsp-overlay-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.25rem;padding:1.5rem 1.65rem}.fsp-passport-hero__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--cs-green-rgb) / .75);margin:0 0 .35rem;font-size:.72rem}.fsp-passport-hero__title{letter-spacing:-.02em;color:#f4fff8;margin:0;font-size:clamp(1.65rem,2.5vw,2.1rem);font-weight:650}.fsp-passport-hero__subtitle{max-width:42rem;color:color-mix(in oklch, var(--foreground) 72%, transparent);margin:.5rem 0 0;font-size:.95rem;line-height:1.55}.fsp-passport-hero__helper{max-width:44rem;color:var(--muted-foreground);margin:.65rem 0 0;font-size:.84rem;line-height:1.5}.fsp-passport-hero__actions{flex-wrap:wrap;gap:.55rem;margin-top:1.15rem;display:flex}.fsp-passport-hero__actions .fish-stock-btn{align-items:center;gap:.4rem;display:inline-flex}.fsp-passport-hero__chips{flex-wrap:wrap;gap:.45rem;margin-top:1rem;display:flex}.fsp-passport-chip{border:1px solid var(--border);background:var(--fsp-overlay);color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.76rem;display:inline-flex}.fsp-passport-chip--ready{border-color:rgb(var(--cs-green-rgb) / .28);color:#b8ffd4}.fsp-passport-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.fsp-passport-toolbar__search{flex:18rem}.fsp-passport-toolbar__controls{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.fsp-passport-sort__select{border:1px solid var(--border);background:var(--fsp-overlay-mid);color:#fff;border-radius:.85rem;outline:none;padding:.6rem .85rem;font-size:.84rem}.fsp-passport-sort__select:focus{border-color:rgb(var(--cs-green-rgb) / .45);box-shadow:0 0 0 3px rgb(var(--cs-green-rgb) / .12)}.fsp-passport-view-toggle{border:1px solid var(--border);border-radius:.85rem;display:inline-flex;overflow:hidden}.fsp-passport-view-toggle__btn{background:var(--fsp-overlay);color:var(--muted-foreground);cursor:pointer;border:none;justify-content:center;align-items:center;padding:.55rem .7rem;display:inline-flex}.fsp-passport-view-toggle__btn--active{background:rgb(var(--cs-green-rgb) / .14);color:#c8ffe0}.fsp-passport-filters{scrollbar-width:thin;flex-wrap:nowrap;gap:.45rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.fsp-passport-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1rem;display:grid}.fsp-passport-card{border:1px solid var(--border);background:#080e0cb8;gap:.85rem;padding:1rem;display:grid;position:relative}.fsp-passport-card--selected{border-color:rgb(var(--cs-green-rgb) / .38);box-shadow:0 0 0 1px rgb(var(--cs-green-rgb) / .12)}.fsp-passport-card--skeleton{min-height:16rem}.fsp-passport-card__select{z-index:2;position:absolute;top:.75rem;left:.75rem}.fsp-passport-card__select input{width:1rem;height:1rem;accent-color:var(--cs-green)}.fsp-passport-card__thumb{aspect-ratio:16/10;border:1px solid var(--border);border-radius:.85rem;width:100%;overflow:hidden}.fsp-passport-card__thumb--photo img{object-fit:cover;width:100%;height:100%;display:block}.fsp-passport-card__thumb--placeholder{background:var(--fsp-overlay-mid);color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;gap:.35rem;font-size:.75rem;display:flex}.fsp-passport-card__body{gap:.45rem;display:grid}.fsp-passport-card__head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.fsp-passport-card__name{color:#f4fff8;margin:0;font-size:1rem;font-weight:650}.fsp-passport-card__code{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.78rem}.fsp-passport-card__meta,.fsp-passport-card__weight{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:0;font-size:.82rem}.fsp-passport-pit{border:1px solid rgb(var(--cs-green-rgb) / .22);background:rgb(var(--cs-green-rgb) / .08);color:#b8ffd4;border-radius:999px;align-self:flex-start;padding:.2rem .55rem;font-size:.72rem;display:inline-flex}.fsp-passport-pit--missing{color:#ffd4a8;background:#ffb46414;border-color:#ffb46447}.fsp-passport-card__completeness{margin-top:.25rem}.fsp-passport-card__completeness-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.fsp-passport-card__completeness-pct{color:var(--muted-foreground);font-size:.76rem}.fsp-passport-completeness{text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.fsp-passport-completeness--complete{color:#7dffb8}.fsp-passport-completeness--good{color:#9fd4ff}.fsp-passport-completeness--needs_data{color:#ffd48a}.fsp-passport-completeness--incomplete{color:#ffb0b0}.fsp-passport-card__progress{background:color-mix(in oklch, var(--foreground) 8%, transparent);border-radius:999px;height:.35rem;overflow:hidden}.fsp-passport-card__progress-fill{border-radius:inherit;height:100%;display:block}.fsp-passport-card__progress-fill--complete{background:linear-gradient(90deg, var(--cs-green-dark), var(--cs-green))}.fsp-passport-card__progress-fill--good{background:linear-gradient(90deg,#4a9eff,#7ec8ff)}.fsp-passport-card__progress-fill--needs_data{background:linear-gradient(90deg,#e6a23c,#ffd48a)}.fsp-passport-card__progress-fill--incomplete{background:linear-gradient(90deg,#e74c3c,#ff9b9b)}.fsp-passport-card__actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.fsp-passport-card__actions .fish-stock-btn{align-items:center;gap:.35rem;padding:.5rem .75rem;font-size:.82rem;display:inline-flex}.fsp-passport-list-card{border:1px solid var(--border);background:#080e0cb8;padding:0;overflow:hidden}.fsp-passport-list-wrap{overflow-x:auto}.fsp-passport-list{border-collapse:collapse;width:100%;font-size:.86rem}.fsp-passport-list th,.fsp-passport-list td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:.8rem .9rem}.fsp-passport-list th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);font-size:.72rem}.fsp-passport-list__col-check{width:2.5rem}.fsp-passport-list__row:hover{background:rgb(var(--cs-green-rgb) / .04)}.fsp-passport-list .fsp-passport-card__thumb{aspect-ratio:1;width:3.25rem}.fsp-passport-list__name{color:#f4fff8;margin:0;font-weight:600}.fsp-passport-list__sub{color:var(--muted-foreground);margin:.15rem 0 .35rem;font-size:.78rem}.fsp-passport-list__actions{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.fsp-passport-empty{text-align:center;color:var(--muted-foreground);justify-items:center;gap:.65rem;padding:2.5rem 1.5rem;display:grid}.fsp-passport-empty__title{color:#f4fff8;margin:0;font-size:1.1rem;font-weight:650}.fsp-passport-empty__detail{max-width:28rem;margin:0;font-size:.9rem;line-height:1.5}.fsp-passport-empty__actions{flex-wrap:wrap;justify-content:center;gap:.55rem;margin-top:.35rem;display:flex}.fsp-passport-bulk{z-index:20;border:1px solid rgb(var(--cs-green-rgb) / .28);box-shadow:0 12px 40px var(--fsp-scrim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#060c0af2;border-radius:1rem;flex-wrap:wrap;align-items:center;gap:.55rem;padding:.85rem 1rem;display:flex;position:sticky;bottom:1rem}.fsp-passport-bulk__count{color:#c8ffe0;margin:0 .5rem 0 0;font-size:.88rem;font-weight:600}.fsp-passport-skeleton__thumb,.fsp-passport-skeleton__line,.fsp-passport-skeleton__bar{background:linear-gradient(90deg, color-mix(in oklch, var(--foreground) 6%, transparent) 0%, color-mix(in oklch, var(--foreground) 12%, transparent) 50%, color-mix(in oklch, var(--foreground) 6%, transparent) 100%);background-size:200% 100%;border-radius:.5rem;animation:1.4s infinite fsp-skeleton-shimmer;display:block}.fsp-passport-skeleton__thumb{aspect-ratio:16/10;width:100%}.fsp-passport-skeleton__line{height:.75rem}.fsp-passport-skeleton__line--title{width:70%}.fsp-passport-skeleton__line--sub{width:45%}.fsp-passport-skeleton__bar{width:100%;height:.35rem}.fsp-passport-preview__backdrop{z-index:60;background:var(--fsp-scrim);cursor:pointer;border:none;position:fixed;inset:0}.fsp-passport-preview{z-index:70;border-left:1px solid rgb(var(--cs-green-rgb) / .18);background:radial-gradient(120% 100% at 100% 0%, rgb(var(--cs-green-rgb) / .08), transparent 50%), var(--fsp-panel-gradient);width:min(28rem,100vw);height:100vh;box-shadow:-12px 0 48px var(--fsp-scrim);flex-direction:column;display:flex;position:fixed;top:0;right:0}.fsp-passport-preview__head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1.15rem 1.15rem .85rem;display:flex}.fsp-passport-preview__brand{gap:.15rem;display:grid}.fsp-passport-preview__brand-name{color:var(--cs-green);font-size:1.1rem;font-weight:700}.fsp-passport-preview__brand-tag{color:var(--muted-foreground);font-size:.78rem}.fsp-passport-preview__close{border:1px solid var(--border);background:var(--fsp-overlay);width:2rem;height:2rem;color:color-mix(in oklch, var(--foreground) 72%, transparent);cursor:pointer;border-radius:.65rem;justify-content:center;align-items:center;display:inline-flex}.fsp-passport-preview__body{flex:1;gap:1rem;padding:1rem 1.15rem;display:grid;overflow-y:auto}.fsp-passport-preview__media{border:1px solid var(--border);border-radius:1rem;overflow:hidden}.fsp-passport-preview__photo{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.fsp-passport-preview__photo-placeholder{background:var(--fsp-overlay-mid);min-height:10rem;color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;font-size:.84rem;display:flex}.fsp-passport-preview__identity{gap:.35rem;display:grid}.fsp-passport-preview__name{color:#f4fff8;margin:0;font-size:1.35rem;font-weight:650}.fsp-passport-preview__code{color:var(--muted-foreground);margin:0;font-size:.84rem}.fsp-passport-preview__facts{grid-template-columns:1fr 1fr;gap:.75rem;margin:0;display:grid}.fsp-passport-preview__facts dt{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);margin:0;font-size:.7rem}.fsp-passport-preview__facts dd{color:#f0fff6;margin:.2rem 0 0;font-size:.88rem}.fsp-passport-preview__qr{text-align:center;border:1px dashed rgb(var(--cs-green-rgb) / .28);background:rgb(var(--cs-green-rgb) / .04);color:var(--muted-foreground);justify-items:center;gap:.35rem;padding:1.25rem;display:grid}.fsp-passport-preview__qr p{color:#d8ffe8;margin:0;font-weight:600}.fsp-passport-preview__qr span{font-size:.78rem}.fsp-passport-preview__foot{border-top:1px solid var(--border);gap:.55rem;padding:1rem 1.15rem 1.15rem;display:grid}.fsp-passport-preview__download,.fsp-passport-preview__profile{justify-content:center;align-items:center;gap:.4rem;width:100%;display:inline-flex}@media (min-width:1100px){.fsp-passport-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:720px){.fsp-passport-hero__actions{flex-direction:column;align-items:stretch}.fsp-passport-hero__actions .fish-stock-btn{justify-content:center}.fsp-passport-toolbar{flex-direction:column;align-items:stretch}.fsp-passport-toolbar__controls{justify-content:space-between}.fsp-passport-preview{border-left:none;width:100vw}.fsp-passport-bulk{bottom:.5rem;left:.5rem;right:.5rem}}button.fsp-registry-menu__item{cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:none;align-items:center;gap:.35rem;display:flex}.fsp-health-page,.fsp-water-page{gap:1.25rem;display:grid}.fsp-health-hero{border:1px solid rgb(var(--cs-green-rgb) / .18);background:radial-gradient(ellipse 90% 120% at 0% 0%, rgb(var(--cs-green-rgb) / .1), transparent 55%), var(--fsp-panel-gradient);box-shadow:0 12px 40px var(--fsp-overlay-strong), var(--fsp-inset-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1.25rem;grid-template-columns:1fr auto;gap:1.15rem;padding:1.5rem 1.65rem;display:grid}.fsp-water-page .fsp-health-hero{background:radial-gradient(ellipse 90% 120% at 0% 0%, #64b4ff1a, transparent 55%), var(--fsp-panel-gradient);border-color:#64b4ff33}.fsp-health-hero__intro{grid-column:1/-1}.fsp-health-hero__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--cs-green-rgb) / .75);margin:0 0 .35rem;font-size:.72rem;font-weight:600}.fsp-health-hero__title{color:#f2fff7;letter-spacing:-.02em;margin:0;font-size:clamp(1.65rem,3vw,2.1rem);font-weight:700}.fsp-health-hero__subtitle{max-width:52ch;color:var(--muted-foreground);margin:.55rem 0 0;font-size:.92rem;line-height:1.55}.fsp-health-hero__actions{flex-wrap:wrap;place-self:start end;align-items:center;gap:.5rem;display:flex}.fsp-health-hero__refresh,.fsp-health-hero__cta{align-items:center;gap:.4rem;display:inline-flex}.fsp-health-stats{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.65rem;margin:0;display:grid}.fsp-health-stat{border:1px solid var(--border);background:var(--fsp-overlay);border-radius:.9rem;gap:.2rem;padding:.85rem 1rem;display:grid}.fsp-health-stat dt{text-transform:uppercase;letter-spacing:.07em;color:var(--muted-foreground);margin:0;font-size:.68rem}.fsp-health-stat dd{color:#f4fff8;margin:0;font-size:1.35rem;font-weight:650;line-height:1.1}.fsp-health-stat__hint{color:var(--muted-foreground);font-size:.72rem}.fsp-health-stat--critical dd{color:#ff9a9a}.fsp-health-stat--warning dd{color:#ffc96a}.fsp-health-stat--stable dd{color:#7dffb0}.fsp-health-stat--info dd{color:color-mix(in oklch, var(--foreground) 72%, transparent)}.fsp-health-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.fsp-health-toolbar__spacer{flex:1}.fsp-health-toolbar__actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.fsp-health-search{flex:16rem;max-width:28rem;position:relative}.fsp-health-search__icon{color:var(--muted-foreground);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.fsp-health-search__input{border:1px solid var(--border);background:var(--fsp-overlay-mid);color:#fff;border-radius:.85rem;outline:none;width:100%;padding:.65rem .85rem .65rem 2.35rem;font-size:.88rem}.fsp-health-search__input::placeholder{color:var(--muted-foreground)}.fsp-health-search__input:focus{border-color:rgb(var(--cs-green-rgb) / .4);box-shadow:0 0 0 3px rgb(var(--cs-green-rgb) / .12)}.fsp-health-sort__select{border:1px solid var(--border);background:var(--fsp-overlay-mid);color:#fff;border-radius:.85rem;outline:none;padding:.6rem .85rem;font-size:.84rem}.fsp-health-filters{scrollbar-width:thin;flex-wrap:nowrap;gap:.45rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.fsp-health-filter{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 4%, transparent);color:color-mix(in oklch, var(--foreground) 72%, transparent);cursor:pointer;border-radius:999px;flex:none;padding:.42rem .8rem;font-size:.8rem;transition:border-color .15s,color .15s,background .15s}.fsp-health-filter:hover{border-color:rgb(var(--cs-green-rgb) / .35);color:var(--cs-green)}.fsp-health-filter--active{border-color:rgb(var(--cs-green-rgb) / .45);background:rgb(var(--cs-green-rgb) / .12);color:#7dffb0}.fsp-health-badge,.fsp-health-severity{letter-spacing:.02em;border:1px solid #0000;border-radius:999px;align-items:center;padding:.22rem .55rem;font-size:.72rem;font-weight:600;display:inline-flex}.fsp-health-badge--open{color:#ffd89a;background:#ffb84d1f;border-color:#ffb84d4d}.fsp-health-badge--monitoring{color:#b8d4ff;background:#78aaff1a;border-color:#78aaff47}.fsp-health-badge--treatment{color:#c8b8ff;background:#a078ff1f;border-color:#a078ff47}.fsp-health-badge--resolved{color:#9dffc8;background:rgb(var(--cs-green-rgb) / .12);border-color:rgb(var(--cs-green-rgb) / .28)}.fsp-health-badge--quarantined{color:#ffd89a;background:#ffb84d1f;border-color:#ffb84d4d}.fsp-health-badge--deceased{color:var(--muted-foreground);background:#ff787814;border-color:#ff787833}.fsp-health-badge--archived{color:var(--muted-foreground);background:color-mix(in oklch, var(--foreground) 5%, transparent);border-color:color-mix(in oklch, var(--foreground) 10%, transparent)}.fsp-health-severity--critical{color:#ffb0b0;background:#ff50501f;border-color:#ff50504d}.fsp-health-severity--warning{color:#ffd08a;background:#ffb4501f;border-color:#ffb4504d}.fsp-health-severity--info{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));background:color-mix(in oklch, var(--foreground) 6%, transparent);border-color:color-mix(in oklch, var(--foreground) 12%, transparent)}.fsp-health-severity--stable{color:#9dffc8;background:rgb(var(--cs-green-rgb) / .12);border-color:rgb(var(--cs-green-rgb) / .28)}.fsp-health-cards{gap:.75rem;display:grid}.fsp-health-card{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex;border:1px solid var(--border)!important;background:#080e0cb8!important;padding:1rem 1.1rem!important}.fsp-health-card--record{grid-template-columns:auto 1fr auto;align-items:center;display:grid}.fsp-health-card__head{flex:1;gap:.85rem;min-width:0;display:flex}.fsp-health-card__icon{background:rgb(var(--cs-green-rgb) / .1);width:2.5rem;height:2.5rem;color:var(--cs-green);border-radius:.75rem;flex-shrink:0;place-items:center;display:grid}.fsp-health-card__body{flex:1;min-width:0}.fsp-health-card__badges{flex-wrap:wrap;gap:.35rem;margin-bottom:.45rem;display:flex}.fsp-health-card__type{text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-size:.72rem}.fsp-health-card__title{color:#f4fff8;margin:0;font-size:1rem;font-weight:650}.fsp-health-card__detail{color:color-mix(in oklch, var(--foreground) 70%, var(--muted-foreground));margin:.35rem 0 0;font-size:.86rem;line-height:1.45}.fsp-health-card__context{color:var(--muted-foreground);margin:.45rem 0 0;font-size:.78rem}.fsp-health-card__grouped{color:var(--muted-foreground);border:1px solid var(--border);border-radius:999px;padding:.2rem .5rem;font-size:.72rem}.fsp-health-card__actions{align-items:center;margin-left:auto;display:flex}.fsp-health-card__action{color:var(--cs-green);border-radius:.55rem;align-items:center;gap:.15rem;padding:.4rem .65rem;font-size:.82rem;text-decoration:none;display:inline-flex}.fsp-health-card__action:hover{background:rgb(var(--cs-green-rgb) / .1)}.fsp-health-thumb{border:1px solid var(--border);border-radius:.75rem;flex-shrink:0;width:3rem;height:3rem;overflow:hidden}.fsp-health-thumb--photo img{object-fit:cover;width:100%;height:100%;display:block}.fsp-health-thumb--placeholder{background:linear-gradient(145deg, rgb(var(--cs-green-rgb) / .15), color-mix(in oklch, var(--foreground) 4%, transparent))}.fsp-health-empty{text-align:center;justify-items:center;gap:.65rem;padding:2.5rem 1.5rem;display:grid}.fsp-health-empty__title{color:color-mix(in oklch, var(--foreground) 88%, transparent);margin:0;font-size:1.05rem;font-weight:600}.fsp-health-empty__detail{max-width:24rem;color:var(--muted-foreground);margin:0;font-size:.9rem}.fsp-health-skeleton{gap:.65rem;display:grid}.fsp-health-skeleton__row{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 18%, transparent);border-radius:.9rem;grid-template-columns:3rem 1fr 5rem;align-items:center;gap:1rem;padding:1rem;display:grid}.fsp-health-skeleton__thumb,.fsp-health-skeleton__line,.fsp-health-skeleton__pill{background:linear-gradient(90deg, color-mix(in oklch, var(--foreground) 4%, transparent) 0%, color-mix(in oklch, var(--foreground) 10%, transparent) 50%, color-mix(in oklch, var(--foreground) 4%, transparent) 100%);background-size:200% 100%;border-radius:.5rem;animation:1.4s ease-in-out infinite fsp-skeleton-shimmer}.fsp-health-skeleton__thumb{width:3rem;height:3rem}.fsp-health-skeleton__lines{gap:.4rem;display:grid}.fsp-health-skeleton__line{height:.65rem}.fsp-health-skeleton__line--title{width:55%}.fsp-health-skeleton__line--sub{width:35%}.fsp-health-skeleton__pill{width:4.5rem;height:1.4rem}.fsp-water-form-card{background:#060a0ed1!important;border-color:#64b4ff33!important;padding:1.15rem 1.2rem!important}.fsp-water-form-card__title{color:#eef6ff;margin:0 0 .85rem;font-size:1rem;font-weight:650}.fsp-water-form{gap:.85rem;display:grid}.fsp-water-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.fsp-water-params{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem;display:grid}.fsp-water-param-card{border:1px solid var(--border)!important;background:var(--fsp-overlay)!important;padding:.95rem 1rem!important}.fsp-water-param-card__head{color:var(--muted-foreground);align-items:center;gap:.45rem;font-size:.78rem;display:flex}.fsp-water-param-card__head span:last-child{margin-left:auto}.fsp-water-param-card__value{color:#f4fff8;margin:.55rem 0 0;font-size:1.25rem;font-weight:650}.fsp-water-param{text-transform:uppercase;letter-spacing:.04em;border:1px solid #0000;border-radius:999px;padding:.18rem .5rem;font-size:.68rem;font-weight:600;display:inline-flex}.fsp-water-param--stable{color:#9dffc8;background:rgb(var(--cs-green-rgb) / .12);border-color:rgb(var(--cs-green-rgb) / .28)}.fsp-water-param--watch{color:#ffd08a;background:#ffb4501f;border-color:#ffb4504d}.fsp-water-param--risk{color:#ffb0b0;background:#ff50501f;border-color:#ff50504d}.fsp-water-param--nodata{color:var(--muted-foreground);background:color-mix(in oklch, var(--foreground) 5%, transparent);border-color:color-mix(in oklch, var(--foreground) 10%, transparent)}.fsp-water-trend{border-top:1px dashed color-mix(in oklch, var(--foreground) 8%, transparent);color:var(--muted-foreground);align-items:center;gap:.35rem;margin-top:.65rem;padding-top:.55rem;font-size:.72rem;display:flex}.fsp-water-table-card{border:1px solid var(--border)!important;background:#080e0cb8!important;padding:1rem 1.1rem!important}.fsp-water-table-card__title{margin:0 0 .85rem;font-size:1rem;font-weight:650}.fsp-water-table-wrap{overflow-x:auto}.fsp-water-table{border-collapse:collapse;width:100%;font-size:.86rem}.fsp-water-table th,.fsp-water-table td{text-align:left;border-bottom:1px solid var(--border);padding:.65rem .75rem}.fsp-water-table th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);font-size:.72rem;font-weight:600}.fsp-water-table-card__hint{color:var(--muted-foreground);margin:.75rem 0 0;font-size:.78rem}@media (max-width:720px){.fsp-health-hero__actions{width:100%}.fsp-health-card--record{grid-template-columns:auto 1fr}.fsp-health-card__actions{grid-column:1/-1;margin-left:0}.fsp-water-form__grid{grid-template-columns:1fr}}.fsp-recharts-wrap .recharts-cartesian-grid-horizontal line,.fsp-recharts-wrap .recharts-cartesian-grid-vertical line{stroke:color-mix(in oklch, var(--foreground) 6%, transparent)}.fsp-chart-tooltip{background:#08100cf2;border:1px solid #38ff8840;border-radius:8px;padding:.5rem .65rem;font-size:.75rem}.fsp-chart-tooltip__label{color:var(--muted-foreground);display:block}.fsp-chart-tooltip__value{color:#38ff88;font-weight:600;display:block}.fsp-water-trends{gap:1rem;display:grid}.fsp-water-trend-chart__title{color:color-mix(in oklch, var(--foreground) 65%, transparent);margin:0 0 .35rem;font-size:.8rem}.fsp-family-tree__roots,.fsp-family-tree__children{margin:0;padding-left:0;list-style:none}.fsp-family-tree__children{border-left:1px solid #38ff8833;margin-left:1.25rem;padding-left:.75rem}.fsp-family-tree__node{color:inherit;background:#38ff880f;border:1px solid #38ff8833;border-radius:8px;flex-direction:column;gap:.15rem;margin:.35rem 0;padding:.45rem .65rem;text-decoration:none;display:inline-flex}.fsp-family-tree__name{font-size:.85rem;font-weight:600}.fsp-family-tree__code{color:var(--muted-foreground);font-size:.72rem}.fsp-capacity-form-list{gap:1rem;display:grid}.fsp-capacity-form-card__title{margin:0 0 .75rem;font-size:1rem}.fsp-passport-bulk__progress{color:color-mix(in oklch, var(--foreground) 65%, transparent);margin:.5rem 0 0;font-size:.85rem}.fsp-trophy--v2{flex-direction:column;gap:1.25rem;display:flex}.fsp-trophy__hero{margin-bottom:0}.fsp-trophy__podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:1rem;display:grid}.fsp-trophy-podium{text-align:center;border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 3%, transparent);color:inherit;border-radius:1.15rem;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem 1rem;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.fsp-trophy-podium:hover{border-color:rgb(var(--cs-green-rgb) / .3);transform:translateY(-2px)}.fsp-trophy-podium--rank-1{background:linear-gradient(180deg, #ffc8501a, color-mix(in oklch, var(--foreground) 2%, transparent));border-color:#ffd76459;min-height:14rem}.fsp-trophy-podium--rank-2,.fsp-trophy-podium--rank-3{min-height:12rem}.fsp-trophy-podium__rank{color:#ffd98a;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;display:inline-flex}.fsp-trophy-podium__name{margin:0;font-size:1.05rem;font-weight:700}.fsp-trophy-podium__weight{color:var(--cs-green);margin:0;font-size:1.35rem;font-weight:700}.fsp-trophy-podium__meta{color:var(--muted-foreground);margin:0;font-size:.78rem}.fsp-trophy__list-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);margin:0 0 .75rem;font-size:.85rem}.fsp-trophy-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;display:grid}.fsp-trophy-card{border:1px solid var(--border);color:inherit;border-radius:.9rem;align-items:center;gap:.75rem;padding:.85rem;text-decoration:none;display:flex}.fsp-trophy-card:hover{border-color:rgb(var(--cs-green-rgb) / .25)}.fsp-trophy-card__rank{color:color-mix(in oklch, var(--muted-foreground) 85%, transparent);min-width:1.75rem;font-size:.72rem;font-weight:700}.fsp-trophy-card__name{margin:0;font-weight:600}.fsp-trophy-card__weight{color:var(--cs-green);margin:.15rem 0 0;font-weight:600}.fsp-trophy-card__meta{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.78rem}.fsp-trophy__skeleton,.fsp-captures__skeleton{background:linear-gradient(90deg, color-mix(in oklch, var(--foreground) 4%, transparent), color-mix(in oklch, var(--foreground) 8%, transparent), color-mix(in oklch, var(--foreground) 4%, transparent));background-size:200% 100%;border-radius:1rem;min-height:12rem;animation:1.4s ease-in-out infinite fsp-skeleton-shimmer}.fsp-captures--v2{flex-direction:column;gap:1.25rem;display:flex}.fsp-captures__stats{margin:0}.fsp-captures__toolbar{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 2%, transparent);border-radius:1rem;flex-wrap:wrap;align-items:flex-end;gap:.75rem;padding:1rem 1.1rem;display:flex}@media (max-width:900px){.fsp-trophy__podium{grid-template-columns:1fr}.fsp-trophy-podium--rank-1,.fsp-trophy-podium--rank-2,.fsp-trophy-podium--rank-3{min-height:auto}.fsp-captures__toolbar{flex-direction:column;align-items:stretch}}.fsp-uploads--v2{flex-direction:column;gap:1.25rem;display:flex}.fsp-uploads__queue{flex-direction:column;gap:.45rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.fsp-uploads__row{color:color-mix(in oklch, var(--foreground) 75%, transparent);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.fsp-uploads__row--done{color:var(--cs-green)}.fsp-uploads__row--error{color:#ff6b6b}.fsp-uploads__row-msg{opacity:.85;margin-left:auto;font-size:.78rem}.fsp-zone-editor{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.fsp-zone-editor__hint,.fsp-heatmap-modal__hint{color:var(--muted-foreground);margin:0;font-size:.82rem}.fsp-zone-editor__map{border:1px solid var(--border);cursor:crosshair;border-radius:.75rem;min-height:12rem;position:relative;overflow:hidden}.fsp-zone-editor__image{width:100%;height:auto;display:block}.fsp-zone-editor__placeholder{text-align:center;color:var(--muted-foreground);background:var(--fsp-overlay-mid);padding:3rem 1rem}.fsp-zone-editor__overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.fsp-zone-editor__circle{fill:rgb(var(--cs-green-rgb) / .12);stroke:rgb(var(--cs-green-rgb) / .45);stroke-width:.4px}.fsp-zone-editor__circle--active{fill:rgb(var(--cs-green-rgb) / .22);stroke:var(--cs-green);stroke-width:.6px}.fsp-zone-editor__label{fill:color-mix(in oklch, var(--foreground) 85%, transparent);text-anchor:middle;dominant-baseline:middle;font-size:3px}.fsp-zone-editor__list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.fsp-zone-editor__row{grid-template-columns:auto 1fr repeat(3,4rem) auto;align-items:center;gap:.35rem;display:grid}.fsp-zone-editor__row--active{background:rgb(var(--cs-green-rgb) / .06);border-radius:.5rem;padding:.2rem}.fsp-zone-editor__select{color:inherit;cursor:pointer;background:0 0;border:none;padding:.25rem}.fsp-zone-editor__num{padding:.35rem .4rem}.fsp-zone-editor__actions{flex-wrap:wrap;gap:.5rem;display:flex}.fsp-aimatch-quality__title{align-items:center;gap:.5rem;display:flex}.fsp-aimatch-quality__badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.15rem .45rem;font-size:.68rem;font-weight:700}.fsp-aimatch-quality__badge--pass{background:rgb(var(--cs-green-rgb) / .15);color:var(--cs-green)}.fsp-aimatch-quality__badge--warn{color:#ffc864;background:#ffc86426}.fsp-aimatch-quality__badge--fail{color:#ff6b6b;background:#ff6b6b26}.fsp-aimatch-quality__loading{color:var(--muted-foreground);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.fsp-aimatch-quality__item{align-items:flex-start;gap:.4rem;font-size:.82rem;display:flex}.fsp-aimatch-quality__item--pass svg{color:var(--cs-green)}.fsp-aimatch-quality__item--warn svg{color:#ffc864}.fsp-aimatch-quality__item--fail svg{color:#ff6b6b}.fsp-lake-brain--v2{flex-direction:column;gap:1.25rem;display:flex}.fsp-lake-brain__source{color:var(--muted-foreground);align-items:center;gap:.35rem;margin-top:.5rem;font-size:.75rem;display:inline-flex}.fsp-aimatch-page--v2{flex-direction:column;gap:1.25rem;max-width:56rem;display:flex}.fsp-aimatch-hero__intro{flex-direction:column;gap:.35rem;display:flex}.fsp-aimatch-hero__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:rgb(var(--cs-green-rgb) / .75);margin:0;font-size:.72rem}.fsp-aimatch-hero__title{margin:0;font-size:1.75rem;font-weight:700}.fsp-aimatch-hero__subtitle,.fsp-aimatch-hero__helper{color:color-mix(in oklch, var(--foreground) 65%, transparent);max-width:42rem;margin:0;font-size:.92rem}.fsp-aimatch-chips{flex-wrap:wrap;gap:.45rem;margin-top:.75rem;display:flex}.fsp-aimatch-chip{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 4%, transparent);border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.75rem;display:inline-flex}.fsp-aimatch-chip--online{border-color:rgb(var(--cs-green-rgb) / .35);color:var(--cs-green)}.fsp-aimatch-chip--offline{color:#ff8a8a;border-color:#ff6b6b59}.fsp-aimatch-chip--degraded{color:#ffc864;border-color:#ffc86459}.fsp-aimatch-steps__list{grid-template-columns:repeat(4,1fr);gap:.5rem;margin:0;padding:0;list-style:none;display:grid}@media (max-width:720px){.fsp-aimatch-steps__list{grid-template-columns:1fr 1fr}}.fsp-aimatch-steps__item{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 15%, transparent);color:var(--muted-foreground);border-radius:.65rem;align-items:center;gap:.5rem;padding:.55rem .65rem;font-size:.78rem;display:flex}.fsp-aimatch-steps__item--current{border-color:rgb(var(--cs-green-rgb) / .45);background:rgb(var(--cs-green-rgb) / .08);color:#fff}.fsp-aimatch-steps__item--done{color:color-mix(in oklch, var(--foreground) 75%, transparent)}.fsp-aimatch-steps__badge{background:color-mix(in oklch, var(--foreground) 8%, transparent);border-radius:999px;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;font-size:.72rem;font-weight:700;display:inline-flex}.fsp-aimatch-steps__item--current .fsp-aimatch-steps__badge{background:var(--cs-green);color:var(--primary-foreground)}.fsp-aimatch-session{border-color:rgb(var(--cs-green-rgb) / .15);flex-direction:column;gap:1rem;display:flex}.fsp-aimatch-session__title{margin:0;font-size:1.1rem}.fsp-aimatch-session__sub{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.82rem}.fsp-aimatch-drop{border:1px dashed color-mix(in oklch, var(--foreground) 15%, transparent);text-align:center;border-radius:.85rem;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1rem;display:flex}.fsp-aimatch-drop--active{border-color:rgb(var(--cs-green-rgb) / .5);background:rgb(var(--cs-green-rgb) / .05)}.fsp-aimatch-drop__title{margin:0;font-weight:600}.fsp-aimatch-drop__formats{color:var(--muted-foreground);margin:0;font-size:.8rem}.fsp-aimatch-uploaded{grid-template-columns:minmax(8rem,12rem) 1fr;align-items:start;gap:1rem;display:grid}@media (max-width:600px){.fsp-aimatch-uploaded{grid-template-columns:1fr}}.fsp-aimatch-uploaded__preview img{object-fit:cover;border:1px solid var(--border);border-radius:.65rem;width:100%;min-height:280px}.fsp-aimatch-uploaded__status{color:var(--cs-green);align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;display:inline-flex}.fsp-aimatch-uploaded__name{margin:.35rem 0 0;font-weight:600}.fsp-aimatch-uploaded__facts{color:var(--muted-foreground);margin:.35rem 0 0;padding-left:1rem;font-size:.8rem}.fsp-aimatch-uploaded__actions{flex-wrap:wrap;gap:.4rem;margin-top:.65rem;display:flex}.fsp-aimatch-quality--session{background:var(--fsp-overlay);border:1px solid var(--border);border-radius:.65rem;padding:.85rem}.fsp-aimatch-quality__head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.fsp-aimatch-quality__list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.fsp-aimatch-quality__tag{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in oklch, var(--foreground) 8%, transparent);color:var(--muted-foreground);vertical-align:middle;border-radius:.25rem;margin-left:.35rem;padding:.05rem .35rem;font-size:.62rem;display:inline-block}.fsp-aimatch-quality__detail{color:var(--muted-foreground);margin-top:.1rem;font-size:.78rem;display:block}.fsp-aimatch-scope-block{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;padding-top:.5rem;display:flex}.fsp-aimatch-scope__helper{color:var(--muted-foreground);margin:0 0 .5rem;font-size:.8rem}.fsp-aimatch-scope__option{align-items:center;gap:.45rem;margin-bottom:.35rem;font-size:.88rem;display:flex}.fsp-aimatch-run{align-self:flex-start}.fsp-aimatch-loading{border-color:rgb(var(--cs-green-rgb) / .2);background:rgb(var(--cs-green-rgb) / .05);align-items:center;gap:.75rem;padding:1rem;display:flex}.fsp-aimatch-loading__title{margin:0;font-weight:600}.fsp-aimatch-loading__sub{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.8rem}.fsp-aimatch-result{flex-direction:column;gap:1rem;margin-top:.25rem;padding:1.1rem;display:flex}.fsp-aimatch-result--success{border-color:rgb(var(--cs-green-rgb) / .35);background:linear-gradient(180deg, rgb(var(--cs-green-rgb) / .1), color-mix(in oklch, var(--foreground) 10%, transparent))}.fsp-aimatch-result--review,.fsp-aimatch-result--neutral{background:linear-gradient(180deg, #ffc86414, color-mix(in oklch, var(--foreground) 10%, transparent));border-color:#ffc86459}.fsp-aimatch-result--error{background:linear-gradient(180deg, #ff6b6b14, color-mix(in oklch, var(--foreground) 10%, transparent));border-color:#ff6b6b59}.fsp-aimatch-result__hero{align-items:flex-start;gap:.65rem;display:flex}.fsp-aimatch-result__title{margin:0;font-size:1.15rem;font-weight:700}.fsp-aimatch-result__body{color:color-mix(in oklch, var(--foreground) 65%, transparent);margin:.35rem 0 0;font-size:.88rem}.fsp-aimatch-result__best{grid-template-columns:minmax(11rem,16rem) 1fr;gap:1.25rem;display:grid}.fsp-aimatch-result__best-thumb img{border:1px solid rgb(var(--cs-green-rgb) / .25);border-radius:.55rem;width:100%}.fsp-aimatch-result__best-name{margin:0;font-size:1.2rem;font-weight:700}.fsp-aimatch-result__best-code{color:var(--muted-foreground);margin:.15rem 0 .5rem;font-size:.85rem}.fsp-aimatch-result__actions{flex-wrap:wrap;gap:.45rem;margin-top:.75rem;display:flex}.fsp-aimatch-result__reasons{color:var(--muted-foreground);margin:0;padding-left:1.1rem;font-size:.85rem}.fsp-aimatch-result__candidates,.fsp-aimatch-result__also-grid{flex-direction:column;gap:.65rem;display:flex}.fsp-aimatch-result__also-title{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.82rem}.fsp-aimatch-candidate{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 15%, transparent);border-radius:.65rem;grid-template-columns:7.5rem 1fr;gap:.85rem;padding:.75rem;display:grid}.fsp-aimatch-candidate__thumb{position:relative}.fsp-aimatch-candidate__thumb img{aspect-ratio:4/3;object-fit:cover;border-radius:.45rem;width:100%}.fsp-aimatch-candidate__placeholder{aspect-ratio:4/3;background:color-mix(in oklch, var(--foreground) 6%, transparent);border-radius:.45rem;justify-content:center;align-items:center;display:flex}.fsp-aimatch-candidate__rank{background:var(--fsp-scrim-strong);border-radius:.25rem;padding:.1rem .35rem;font-size:.65rem;font-weight:700;position:absolute;top:.25rem;left:.25rem}.fsp-aimatch-candidate__name{margin:0;font-weight:600}.fsp-aimatch-candidate__code{color:var(--muted-foreground);margin:.1rem 0 0;font-size:.78rem}.fsp-aimatch-candidate__head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.fsp-aimatch-candidate__facts{grid-template-columns:repeat(2,1fr);gap:.35rem .75rem;margin:.5rem 0;font-size:.78rem;display:grid}.fsp-aimatch-candidate__facts dt{color:var(--muted-foreground)}.fsp-aimatch-candidate__facts dd{margin:0}.fsp-aimatch-candidate__actions{flex-wrap:wrap;gap:.35rem;display:flex}.fsp-aimatch-confidence{border-radius:.35rem;padding:.2rem .45rem;font-size:.75rem;font-weight:600;display:inline-block}.fsp-aimatch-confidence--very{background:rgb(var(--cs-green-rgb) / .15);color:var(--cs-green)}.fsp-aimatch-confidence--likely{color:#8fd4ff;background:#64c8ff26}.fsp-aimatch-confidence--possible{color:#ffc864;background:#ffc86426}.fsp-aimatch-confidence--low{color:#ff9a9a;background:#ff6b6b1f}.fsp-aimatch-toast{background:rgb(var(--cs-green-rgb) / .08);border:1px solid rgb(var(--cs-green-rgb) / .2);border-radius:.5rem;margin:0;padding:.65rem .75rem;font-size:.85rem}.fsp-aimatch-history-section{border-top:1px solid var(--border);margin-top:.5rem;padding-top:1rem}.fsp-aimatch-history--v2 .fsp-aimatch-history__list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.fsp-aimatch-history--v2 .fsp-aimatch-history__item{border:1px solid var(--border);background:color-mix(in oklch, var(--foreground) 12%, transparent);border-radius:.55rem;grid-template-columns:3rem 1fr auto;align-items:center;gap:.65rem;padding:.55rem;display:grid}.fsp-aimatch-history--v2 .fsp-aimatch-history__thumb img{object-fit:cover;border-radius:.35rem;width:3rem;height:3rem}.fsp-aimatch-history__result{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.12rem .4rem;font-size:.68rem;font-weight:700}.fsp-aimatch-history__result--ok{background:rgb(var(--cs-green-rgb) / .12);color:var(--cs-green)}.fsp-aimatch-history__result--review,.fsp-aimatch-history__result--neutral{color:#ffc864;background:#ffc8641f}.fsp-aimatch-history__result--error{color:#ff8a8a;background:#ff6b6b1f}.fsp-aimatch-history__row{align-items:center;gap:.5rem;margin-bottom:.15rem;display:flex}.fsp-aimatch-history__score{color:var(--muted-foreground);font-size:.75rem}.fsp-aimatch-history__score--muted{opacity:.7;font-style:italic}.fsp-aimatch-history__line{margin:0;font-size:.85rem}.fsp-aimatch-history__meta{color:var(--muted-foreground);margin:.15rem 0 0;font-size:.72rem}.fsp-aimatch-history__actions{flex-direction:column;gap:.25rem;display:flex}.fsp-aimatch-history__btn{padding:.25rem .45rem;font-size:.72rem}.fsp-aimatch-drawer-backdrop{z-index:60;background:var(--fsp-scrim-strong);justify-content:flex-end;display:flex;position:fixed;inset:0}.fsp-aimatch-drawer{background:var(--card);border-left:1px solid var(--border);flex-direction:column;gap:1rem;width:min(32rem,100vw);height:100%;padding:1.25rem;display:flex;overflow-y:auto}.fsp-aimatch-drawer__compare{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.fsp-aimatch-drawer__figure img{border:1px solid var(--border);border-radius:.45rem;width:100%}.fsp-aimatch-drawer__figure figcaption{color:var(--muted-foreground);margin-bottom:.35rem;font-size:.72rem}.fsp-aimatch-drawer__actions{flex-direction:column;gap:.4rem;display:flex}.fsp-aimatch-drawer__header{justify-content:space-between;gap:.5rem;display:flex}.fsp-aimatch-drawer__close{color:inherit;cursor:pointer;background:0 0;border:none}.carp360-wordmark{align-items:baseline;gap:.05em;display:inline-flex}.carp360-wordmark__text{letter-spacing:.16em;text-transform:uppercase;background:linear-gradient(120deg, var(--fsp-accent,#3ddc84), var(--fsp-accent-2,#7fe6b3));color:#0000;-webkit-background-clip:text;background-clip:text;font-family:JetBrains Mono,SF Mono,IBM Plex Mono,ui-monospace,monospace;font-weight:600}.carp360-wordmark__tm{letter-spacing:normal;opacity:.8;-webkit-text-fill-color:currentColor;color:var(--fsp-accent,#3ddc84);margin-left:.05em;font-size:.5em}.carp360-wordmark--sm .carp360-wordmark__text{letter-spacing:.1em;font-size:.95rem}.carp360-wordmark--md .carp360-wordmark__text{font-size:1.15rem}.carp360-wordmark--lg .carp360-wordmark__text{letter-spacing:.14em;font-size:1.75rem}.carp360-wordmark--hero .carp360-wordmark__text{letter-spacing:.12em;font-size:2.75rem}.fsp-pit-offline-banner{border:1px solid color-mix(in oklch, var(--fsp-accent,#3ddc84) 35%, transparent);background:color-mix(in oklch, var(--fsp-accent,#3ddc84) 8%, transparent);border-radius:.65rem;align-items:center;gap:.6rem;margin-bottom:.85rem;padding:.65rem .85rem;font-size:.84rem;display:flex}.fsp-pit-offline-banner--inline{margin-bottom:.65rem}.fsp-pit-duplicate-banner{border:1px solid color-mix(in oklch, var(--fsp-text-muted,#94a3b8) 35%, transparent);background:color-mix(in oklch, var(--fsp-surface-raised,#f8fafc) 85%, transparent);border-radius:.65rem;margin-bottom:.65rem;padding:.65rem .85rem}.fsp-pit-duplicate-banner__title{color:var(--fsp-text,#0f172a);margin:0;font-size:.9rem;font-weight:600}.fsp-pit-duplicate-banner__detail{color:var(--fsp-text-muted,#64748b);margin:.2rem 0 0;font-size:.84rem}.fsp-pit-offline-banner__action{color:var(--fsp-accent,#3ddc84);cursor:pointer;background:0 0;border:none;margin-left:auto;font-weight:600;text-decoration:underline}.fsp-pit-result--unknown{background:#f59e0b0f;background:lab(72.7914% 26.933 75.434/.06);border-color:#f59e0b73;border-color:lab(72.7914% 26.933 75.434/.45)}.fsp-pit-result--invalid,.fsp-pit-result--offline{border-color:#ef444459;border-color:lab(55.7852% 65.6164 40.7976/.35)}.fsp-pit-result__raw{color:var(--muted-foreground);font-size:.78rem}.fsp-pit-conflict-list{margin:.5rem 0 0;padding-left:1.1rem;font-size:.86rem}.fsp-pit-assign-confirm{background:color-mix(in oklch, var(--foreground) 4%, transparent);border-radius:.55rem;margin-top:.75rem;padding:.75rem}.fsp-pit-assign-confirm__summary{margin:0 0 .5rem;font-size:.86rem}.fsp-pit-id-card .fsp-pit-chip--live{margin-top:.25rem}.fsp-reader-test__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:.75rem 0;font-size:.84rem;display:grid}.fsp-reader-test__grid dt{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.fsp-reader-test__grid dd{font-family:var(--font-mono,ui-monospace, monospace);margin:.15rem 0 0}.fsp-capture-form--from-scan{border-color:color-mix(in oklch, var(--fsp-accent,#3ddc84) 35%, transparent)}.fsp-capture-form__scan-banner{background:color-mix(in oklch, var(--fsp-accent,#3ddc84) 10%, transparent);border-radius:.55rem;margin:0 0 1rem;padding:.65rem .8rem;font-size:.86rem}.fsp-field--highlight .fsp-field__input{border-color:color-mix(in oklch, var(--fsp-accent,#3ddc84) 55%, transparent);box-shadow:0 0 0 1px color-mix(in oklch, var(--fsp-accent,#3ddc84) 25%, transparent)}.fsp-field-session-bar{border:1px solid color-mix(in oklch, var(--foreground) 12%, transparent);background:var(--fsp-overlay);border-radius:.85rem;margin-bottom:1rem;padding:.85rem 1rem}.fsp-field-session-bar__row{flex-wrap:wrap;align-items:flex-end;gap:.65rem;display:flex}.fsp-field-session-bar__field{flex:140px;min-width:0}.fsp-field-session-bar__start{white-space:nowrap;flex:none}.fsp-field-session-bar__status{color:var(--muted-foreground);margin:.5rem 0 0;font-size:.8rem}.fsp-field-panel{border-color:color-mix(in oklch, var(--fsp-accent,#3ddc84) 25%, transparent)!important;padding:1rem!important}.fsp-field-panel__head{align-items:center;gap:.85rem;margin-bottom:.85rem;display:flex}.fsp-field-panel__thumb{border:1px solid color-mix(in oklch, var(--foreground) 12%, transparent);border-radius:.75rem;flex-shrink:0;width:4.5rem;height:4.5rem;overflow:hidden}.fsp-field-panel__thumb--photo img{object-fit:cover;width:100%;height:100%;display:block}.fsp-field-panel__thumb--placeholder{background:var(--fsp-overlay-strong);color:var(--muted-foreground);place-items:center;display:grid}.fsp-field-panel__name{margin:0;font-size:1.15rem;font-weight:650}.fsp-field-panel__code{color:var(--muted-foreground);margin:.15rem 0 .4rem;font-size:.85rem}.fsp-field-panel__meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem;margin:0 0 1rem;font-size:.85rem;display:grid}.fsp-field-panel__meta dt{color:var(--muted-foreground);margin:0;font-size:.72rem}.fsp-field-panel__meta dd{margin:.1rem 0 0}.fsp-field-status-chip{background:color-mix(in oklch, var(--fsp-accent,#3ddc84) 18%, transparent);border:1px solid color-mix(in oklch, var(--fsp-accent,#3ddc84) 35%, transparent);border-radius:999px;padding:.15rem .5rem;font-size:.75rem;display:inline-block}.fsp-field-follow-banner{background:#f59e0b1f;background:lab(72.7914% 26.933 75.434/.12);border:1px solid #f59e0b59;border:1px solid lab(72.7914% 26.933 75.434/.35);border-radius:.65rem;align-items:flex-start;gap:.5rem;margin-bottom:.85rem;padding:.65rem .75rem;font-size:.85rem;display:flex}.fsp-field-follow-banner__title{margin:0;font-weight:600}.fsp-field-follow-banner__msg{color:var(--muted-foreground);margin:.2rem 0 0;font-size:.8rem}.fsp-field-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.fsp-field-action-grid--single{grid-template-columns:1fr}.fsp-field-action-btn{border:1px solid color-mix(in oklch, var(--foreground) 14%, transparent);background:var(--fsp-overlay-strong);min-height:4.25rem;color:inherit;text-align:center;cursor:pointer;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.65rem .5rem;font-size:.78rem;font-weight:550;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.fsp-field-action-btn:hover{border-color:color-mix(in oklch, var(--fsp-accent,#3ddc84) 45%, transparent);background:color-mix(in oklch, var(--fsp-accent,#3ddc84) 8%, var(--fsp-overlay-strong))}.fsp-field-action-btn--primary{background:color-mix(in oklch, var(--fsp-accent,#3ddc84) 22%, transparent);border-color:color-mix(in oklch, var(--fsp-accent,#3ddc84) 50%, transparent);flex-direction:row;grid-column:1/-1;min-height:3.25rem;font-size:.95rem}.fsp-field-form{border-top:1px solid color-mix(in oklch, var(--foreground) 10%, transparent);margin-top:.5rem;padding-top:.75rem}.fsp-field-form__title{margin:0 0 .65rem;font-size:1rem;font-weight:650}.fsp-field-form__sub{color:var(--muted-foreground);margin:0 0 .4rem;font-size:.78rem}.fsp-field-form__hint{color:var(--muted-foreground);margin:.5rem 0 0;font-size:.8rem}.fsp-field-form__link{color:var(--fsp-accent,#3ddc84);text-decoration:underline}.fsp-field-form__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.85rem;display:flex}.fsp-field-chip-row{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.fsp-field-chip-row--wrap{margin-bottom:.85rem}.fsp-field-chip{border:1px solid color-mix(in oklch, var(--foreground) 18%, transparent);color:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.45rem .75rem;font-size:.82rem}.fsp-field-chip--sm{padding:.35rem .55rem;font-size:.75rem}.fsp-field-chip--active{border-color:color-mix(in oklch, var(--fsp-accent,#3ddc84) 55%, transparent);background:color-mix(in oklch, var(--fsp-accent,#3ddc84) 18%, transparent)}.fsp-field-panel--saved{text-align:center}.fsp-field-panel__saved-icon{color:var(--fsp-accent,#3ddc84);margin-bottom:.5rem}.fsp-field-panel__saved-title{margin:0;font-size:1.1rem;font-weight:650}.fsp-field-panel__saved-sub{color:var(--muted-foreground);margin:.35rem 0 1rem;font-size:.85rem}.fsp-pit-field-wrap__pit{margin:0 0 .65rem;font-size:.85rem}.fsp-pit-field-wrap__copy{margin-left:.5rem}@media (min-width:640px){.fsp-field-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fsp-field-action-btn--primary{grid-column:span 1}}@media (max-width:900px){.fsp-pit-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-stocktake-review-controls{grid-template-columns:1fr}}.fsp-passport-page{flex-direction:column;gap:1rem;max-width:1100px;display:flex}.fsp-passport-hero .fsp-passport-number{letter-spacing:.04em;color:var(--muted-foreground);margin:.5rem 0 0;font-size:.78rem}.fsp-passport-snapshot{border-top:1px solid color-mix(in oklch, var(--foreground) 10%, transparent);grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-top:1rem;padding-top:1rem;display:grid}@media (min-width:720px){.fsp-passport-snapshot{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.fsp-passport-snapshot{grid-template-columns:repeat(6,minmax(0,1fr))}}.fsp-passport-snapshot__item{background:color-mix(in oklch, var(--foreground) 4%, transparent);border-radius:.75rem;align-items:flex-start;gap:.55rem;padding:.55rem .65rem;display:flex}.fsp-passport-snapshot__label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);font-size:.68rem;display:block}.fsp-passport-snapshot__item strong{font-size:.95rem}.fsp-passport-actions{flex-wrap:wrap;gap:.5rem}.fsp-passport-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.fsp-passport-section{flex-direction:column;gap:.85rem;padding:1rem 0 1.5rem;display:flex}.fsp-passport-section h2{margin:.4rem 0 0;font-size:1.05rem}.fsp-passport-dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;display:grid}.fsp-passport-dl dt{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground);font-size:.72rem}.fsp-passport-dl dd{margin:.15rem 0 0}.fsp-passport-list{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.fsp-passport-list__item{border:1px solid color-mix(in oklch, var(--foreground) 8%, transparent);background:color-mix(in oklch, var(--foreground) 3%, transparent);border-radius:.75rem;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem .85rem;display:flex}.fsp-passport-list__item p{margin:.25rem 0 0;font-size:.88rem}.fsp-passport-list__actions{flex-shrink:0;gap:.4rem;display:flex}.fsp-passport-timeline{border-left:2px solid color-mix(in oklch, rgb(var(--cs-green-rgb)) 45%, transparent);margin:0;padding:0;list-style:none}.fsp-passport-timeline__item{padding:0 0 1rem 1rem;position:relative}.fsp-passport-timeline__item:before{content:"";background:rgb(var(--cs-green-rgb));border-radius:999px;width:.65rem;height:.65rem;position:absolute;top:.35rem;left:-.4rem}.fsp-passport-timeline__item time{color:var(--muted-foreground);font-size:.72rem;display:block}.fsp-passport-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}@media (min-width:720px){.fsp-passport-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}.fsp-passport-metrics>div{background:color-mix(in oklch, var(--foreground) 4%, transparent);border-radius:.75rem;padding:.7rem .8rem}.fsp-passport-metrics span{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;display:block}.fsp-passport-chart{align-items:flex-end;gap:.35rem;min-height:140px;padding:.75rem .25rem;display:flex;overflow-x:auto}.fsp-passport-chart__col{flex-direction:column;justify-content:flex-end;align-items:center;gap:.25rem;min-width:2rem;height:120px;display:flex}.fsp-passport-chart__bar{background:linear-gradient(180deg, #b8ffd4, rgb(var(--cs-green-rgb)));border-radius:.35rem .35rem 0 0;width:1.1rem}.fsp-passport-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}@media (min-width:720px){.fsp-passport-photos{grid-template-columns:repeat(3,minmax(0,1fr))}}.fsp-passport-photo{color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.75rem;flex-direction:column;gap:.35rem;padding:0;display:flex;overflow:hidden}.fsp-passport-photo.is-selected{border-color:rgb(var(--cs-green-rgb));box-shadow:0 0 0 2px rgb(var(--cs-green-rgb) / .25)}.fsp-passport-photo img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.fsp-passport-photo span{color:var(--muted-foreground);padding:0 .15rem .35rem;font-size:.72rem}.fsp-passport-compare{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.fsp-passport-compare img{aspect-ratio:4/3;object-fit:cover;border-radius:.75rem;width:100%}.fsp-passport-empty{color:var(--muted-foreground);align-items:center;gap:.4rem;margin:0;font-size:.9rem;display:flex}.fsp-passport-details{border:1px solid color-mix(in oklch, var(--foreground) 8%, transparent);border-radius:.75rem;padding:.65rem .75rem}.fsp-passport-details summary{cursor:pointer;font-weight:600}.fsp-muted{color:var(--muted-foreground);font-size:.85rem}.fsp-welfare-badge{text-transform:uppercase;letter-spacing:.04em;background:color-mix(in oklch, var(--foreground) 8%, transparent);border-radius:999px;align-items:center;padding:.15rem .5rem;font-size:.72rem;display:inline-flex}.fsp-welfare-badge--good{background:rgb(var(--cs-green-rgb) / .18);color:#b8ffd4}.fsp-welfare-badge--monitor{color:#ffd27a;background:#ffc85029}.fsp-welfare-badge--concern{color:#ffb070;background:#ff8c3c2e}.fsp-welfare-badge--urgent{color:#ff9b9b;background:#ff505033}.fsp-welfare-badge--unknown{color:var(--muted-foreground)}.fsp-passport-tabs.fsp-profile-tabs{z-index:20;background:color-mix(in oklch, var(--background) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in oklch, var(--foreground) 10%, transparent);gap:.35rem;margin:0 -.15rem;padding:.35rem .15rem;position:sticky;top:0}.fsp-passport-tabs .fsp-profile-tabs__btn{min-width:4.75rem;min-height:2.75rem;color:color-mix(in oklch, var(--foreground) 88%, transparent);padding:.55rem .85rem;font-size:.88rem;font-weight:600}.fsp-passport-tabs .fsp-profile-tabs__btn--active{color:#e8fff2;background:rgb(var(--cs-green-rgb) / .22);border-color:rgb(var(--cs-green-rgb) / .4)}.fsp-passport-list__item--urgent{background:#ff78281f;border-color:#ff8c3c73;box-shadow:inset 3px 0 #ff8c3cd9}.fsp-passport-snapshot__item--alert{background:#ff78281a;border-color:#ff8c3c66}.fsp-passport-snapshot__item--alert strong{color:#ffc28a}.fsp-passport-hero .fsp-profile-hero__name{text-shadow:0 1px 2px #00000073}.fsp-passport-hero .fsp-profile-hero__species,.fsp-passport-hero .fsp-passport-number{color:color-mix(in oklch, var(--foreground) 82%, transparent)}.fsp-passport-actions .fish-stock-btn{min-height:2.75rem;padding-inline:1rem}.fsp-passport-list__actions .fish-stock-btn{min-height:2.5rem}.fsp-passport-upload-hint{border:1px dashed rgb(var(--cs-green-rgb) / .4);background:rgb(var(--cs-green-rgb) / .08);color:#d8ffe8;border-radius:.75rem;margin:0;padding:.75rem .9rem;font-size:.9rem}.fsp-passport-chart{min-height:160px}.fsp-passport-chart__bar{min-width:1.25rem}.fsp-passport-chart__col span{color:color-mix(in oklch, var(--foreground) 70%, transparent);font-size:.68rem}.fsp-passport-metrics>div{min-height:4.25rem}.fsp-passport-dl dd{color:color-mix(in oklch, var(--foreground) 92%, transparent);font-size:.95rem}.fsp-profile-hero--deceased{outline-offset:2px;outline:2px solid #ffa05059}.fsp-welfare-badge--concern,.fsp-welfare-badge--urgent{font-weight:700}@media (max-width:480px){.fsp-passport-dl{grid-template-columns:1fr}.fsp-passport-list__item{flex-direction:column}.fsp-passport-list__actions{width:100%}.fsp-passport-list__actions .fish-stock-btn{flex:1}.fsp-passport-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.fsp-passport-section{max-width:72rem}.fsp-passport-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}.fsp-insights-page{flex-direction:column;gap:1.25rem;padding-bottom:2.5rem;display:flex}.fsp-insights-windows{flex-wrap:wrap;gap:.4rem;display:flex}.fsp-insights-windows__btn{border:1px solid color-mix(in oklch, var(--border) 80%, transparent);background:color-mix(in oklch, var(--card) 88%, transparent);color:var(--foreground);cursor:pointer;border-radius:.55rem;padding:.4rem .75rem;font-size:.85rem}.fsp-insights-windows__btn--active{background:color-mix(in oklch, var(--primary) 18%, var(--card));border-color:color-mix(in oklch, var(--primary) 45%, var(--border));font-weight:600}.fsp-insights-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:900px){.fsp-insights-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fsp-insights-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.fsp-insights-panel{padding:1.1rem 1.15rem}.fsp-insights-panel h2{align-items:center;gap:.45rem;margin:0 0 .75rem;font-size:1rem;display:flex}.fsp-insights-panel h3{align-items:center;gap:.35rem;margin:.5rem 0;font-size:.85rem;display:flex}.fsp-insights-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem .85rem;margin:0;display:grid}.fsp-insights-metrics dt{color:var(--muted-foreground);font-size:.75rem}.fsp-insights-metrics dd{margin:.1rem 0 0;font-size:1.15rem;font-weight:600}.fsp-insights-hero-metric{letter-spacing:-.02em;margin:.15rem 0 .35rem;font-size:1.85rem;font-weight:650}.fsp-insights-confidence{letter-spacing:.04em;border-radius:.4rem;padding:.25rem .55rem;font-size:.85rem;font-weight:700;display:inline-flex}.fsp-insights-confidence--GOOD{background:color-mix(in oklch, #72b875 22%, var(--card))}@supports (color:lab(0% 0 0)){.fsp-insights-confidence--GOOD{background:color-mix(in oklch, lab(69.0092% -33.5937 27.2) 22%, var(--card))}}.fsp-insights-confidence--PARTIAL{background:color-mix(in oklch, #e7b643 22%, var(--card))}@supports (color:lab(0% 0 0)){.fsp-insights-confidence--PARTIAL{background:color-mix(in oklch, lab(77.0057% 10.1238 62.6808) 22%, var(--card))}}.fsp-insights-confidence--LIMITED{background:color-mix(in oklch, #de826a 20%, var(--card))}@supports (color:lab(0% 0 0)){.fsp-insights-confidence--LIMITED{background:color-mix(in oklch, lab(64.2207% 34.898 28.8479) 20%, var(--card))}}.fsp-insights-rationale{color:var(--muted-foreground);margin:.65rem 0 0;padding-left:1.1rem;font-size:.85rem}.fsp-insights-attention h2{align-items:center;gap:.45rem;font-size:1.05rem;display:flex}.fsp-insights-attention__list{flex-direction:column;gap:.55rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.fsp-insights-attention__item{border:1px solid color-mix(in oklch, var(--border) 75%, transparent);background:color-mix(in oklch, var(--card) 92%, transparent);border-radius:.65rem;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem .9rem;display:flex}.fsp-insights-attention__item--urgent,.fsp-insights-attention__item--high{border-color:color-mix(in oklch, #df6446 45%, var(--border))}@supports (color:lab(0% 0 0)){.fsp-insights-attention__item--urgent,.fsp-insights-attention__item--high{border-color:color-mix(in oklch, lab(58.034% 47.39 41.015) 45%, var(--border))}}.fsp-insights-attention__item p{color:var(--muted-foreground);margin:.25rem 0 0;font-size:.85rem}.fsp-insights-split{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:640px){.fsp-insights-split{grid-template-columns:1fr 1fr}}.fsp-insights-split ul,.fsp-insights-compact-list{margin:0;padding:0;list-style:none}.fsp-insights-split li,.fsp-insights-compact-list li{border-bottom:1px solid color-mix(in oklch, var(--border) 55%, transparent);justify-content:space-between;gap:.75rem;padding:.35rem 0;font-size:.9rem;display:flex}.fsp-insights-status-line{margin-top:.75rem;font-size:.8rem}.fsp-insights-fish-summary{margin:0 0 1rem;font-size:1rem;line-height:1.55}.fsp-session-dash{border:1px solid color-mix(in oklch, var(--fsp-accent,#3ddc84) 30%, transparent);background:var(--fsp-overlay);border-radius:.85rem;margin-bottom:1rem;padding:.85rem 1rem}.fsp-session-dash__head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.fsp-session-dash__title{text-transform:capitalize;margin:0;font-size:1rem;font-weight:650}.fsp-session-dash__meta,.fsp-session-dash__progress,.fsp-session-dash__last-meta{color:var(--muted-foreground);margin:.25rem 0 0;font-size:.8rem}.fsp-session-dash__status{color:var(--muted-foreground);align-items:center;gap:.35rem;font-size:.75rem;display:inline-flex}.fsp-session-dash__counters{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.75rem;display:grid}.fsp-session-dash__counter{text-align:center;background:var(--fsp-overlay-strong);border-radius:.65rem;padding:.5rem}.fsp-session-dash__counter--primary .fsp-session-dash__counter-value{color:var(--fsp-accent,#3ddc84)}.fsp-session-dash__counter-value{font-size:1.35rem;font-weight:700;line-height:1.1;display:block}.fsp-session-dash__counter-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground);margin-top:.15rem;font-size:.65rem;display:block}.fsp-session-dash__last{border-top:1px solid color-mix(in oklch, var(--foreground) 10%, transparent);margin-top:.75rem;padding-top:.65rem}.fsp-session-dash__last-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);margin:0;font-size:.7rem}.fsp-session-dash__last-body{margin:.2rem 0 0;font-size:.9rem}.fsp-netting-capture__fish{margin:0;font-size:1.2rem;font-weight:650}.fsp-netting-capture__meta,.fsp-netting-capture__hint{color:var(--muted-foreground);margin:.25rem 0 .75rem;font-size:.85rem}.fsp-netting-capture__warn{color:#fbbf24;background:#f59e0b26;background:lab(72.7914% 26.933 75.434/.15);border-radius:.5rem;margin:0 0 .75rem;padding:.5rem .65rem;font-size:.85rem}.fsp-netting-capture__weight{min-height:3rem;font-size:1.35rem!important}.fsp-netting-capture__conditions{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.fsp-netting-capture__chip{border:1px solid color-mix(in oklch, var(--foreground) 15%, transparent);min-height:2.5rem;color:inherit;background:0 0;border-radius:999px;padding:.45rem .75rem;font-size:.85rem}.fsp-netting-capture__chip--active{border-color:var(--fsp-accent,#3ddc84);background:color-mix(in oklch, var(--fsp-accent,#3ddc84) 15%, transparent)}.fsp-netting-capture__actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.fsp-netting-capture__actions--stack{flex-direction:column}.fsp-netting-capture__actions .fish-stock-btn{flex:auto;min-height:2.75rem}.fsp-netting-saved__title{color:var(--fsp-accent,#3ddc84);margin:0;font-size:1.05rem;font-weight:650}.fsp-netting-saved__sub{color:var(--muted-foreground);margin:.35rem 0 0;font-size:.85rem}.fsp-session-recovery{background:#f59e0b14;background:lab(72.7914% 26.933 75.434/.08);border:1px solid #f59e0b59;border:1px solid lab(72.7914% 26.933 75.434/.35);border-radius:.85rem;margin-bottom:1rem;padding:.85rem 1rem}.fsp-session-recovery__title{margin:0 0 .35rem;font-weight:650}.fsp-session-recovery__actions{flex-wrap:wrap;gap:.5rem;margin-top:.65rem;display:flex}.fsp-session-summary__title{margin:0 0 .5rem}.fsp-session-summary__list{margin:0;padding-left:1.1rem;font-size:.9rem}.fsp-session-summary__note{color:var(--muted-foreground);margin:.75rem 0 0;font-size:.85rem}.carp360-sync-status{color:var(--muted-foreground);align-items:center;gap:.4rem;font-size:.75rem;text-decoration:none;display:inline-flex}.carp360-sync-status>span{align-items:baseline;gap:.35rem;display:inline-flex}.carp360-sync-status--field{border:1px solid var(--border);background:var(--card);border-radius:.7rem;width:fit-content;max-width:100%;margin:.55rem 0 0;padding:.55rem .7rem}.carp360-sync-status--field>span{flex-direction:column;gap:.1rem}.carp360-sync-status--field small{color:var(--muted-foreground);font-size:.7rem}.carp360-session-loading{min-height:100dvh;padding:max(1.5rem, env(safe-area-inset-top)) max(1.5rem, env(safe-area-inset-right)) max(1.5rem, env(safe-area-inset-bottom)) max(1.5rem, env(safe-area-inset-left));color:#f5f2e8;background:var(--c360-navy,#071a26);place-content:center;justify-items:center;gap:1rem;display:grid}.carp360-session-loading__logo{width:min(12rem,54vw);height:auto}.carp360-session-loading__spinner{border:2px solid #f5f2e840;border-top-color:currentColor;border-radius:999px;width:1.25rem;height:1.25rem;animation:.8s linear infinite c360-session-spin}.carp360-session-loading p{margin:0;font-size:.82rem}@keyframes c360-session-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.carp360-session-loading__spinner{animation:none}}.fsp-sync-page{width:100%;max-width:72rem;margin:0 auto}.fsp-sync-card{padding:1rem}.fsp-sync-detail__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.fsp-sync-detail__grid>div{background:var(--fsp-overlay-strong);border-radius:.7rem;padding:.75rem}.fsp-sync-detail__grid strong,.fsp-sync-detail__grid span{display:block}.fsp-sync-detail__grid strong{font-size:1.35rem}.fsp-sync-detail__grid span,.fsp-sync-detail__meta{color:var(--muted-foreground);font-size:.75rem}.fsp-sync-detail__status{margin:1rem 0 .65rem;font-weight:650}.fsp-sync-conflicts{margin-top:1.25rem}.fsp-sync-conflict{border:1px solid #f59e0b66;border:1px solid lab(72.7914% 26.933 75.434/.4);border-radius:.75rem;margin-top:.75rem;padding:.85rem}.fsp-sync-conflict__kind{text-transform:capitalize;margin:0 0 .65rem;font-weight:650}.fsp-sync-conflict__compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.fsp-sync-conflict__compare pre{white-space:pre-wrap;max-height:12rem;font-size:.7rem;overflow:auto}.fsp-sync-conflict__actions{flex-wrap:wrap;gap:.65rem;margin-top:.8rem;display:flex}@media (max-width:600px){.fsp-sync-detail__grid,.fsp-sync-conflict__compare{grid-template-columns:1fr}}
