@font-face{font-family:DIN Next LT Arabic;src:url(/fonts/DINNextLTArabic-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:DIN Next LT Arabic;src:url(/fonts/DINNextLTArabic-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DIN Next LT Arabic;src:url(/fonts/DINNextLTArabic-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:DIN Next LT Arabic;src:url(/fonts/DINNextLTArabic-Medium.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:DIN Next LT Arabic;src:url(/fonts/DINNextLTArabic-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:DIN Next LT Arabic;src:url(/fonts/DINNextLTArabic-Heavy.ttf) format("truetype");font-weight:800;font-style:normal;font-display:swap}:root{--bg: #f6f4f8;--surface: #ffffff;--surface-2: #f1ecf5;--ink: #0e2346;--ink-2: #33415c;--line: #dcd5e4;--accent: #653b83;--accent-ink: #4a2b61;--accent-2: #8a5aa8;--gold: #f4b833;--warn: #a03e26;--warn-bg: #f6e6df;--good: #3f6e36;--good-bg: #e8f3e3;--danger: #a03e26;--danger-bg: #f6e6df;--series-1: #2a78d6;--series-2: #eb6834;--shadow: 0 1px 2px rgba(14, 35, 70, .06), 0 6px 20px rgba(14, 35, 70, .06);--hero-gradient: linear-gradient(160deg, #653b83 0%, #4a2b61 48%, #0e2346 100%);--text-2xs: 12px;--text-xs: 12px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 15px;--text-xl: 16px;--text-2xl: 18px;--text-3xl: 20px;--text-4xl: 22px;--text-5xl: 24px;--text-6xl: 28px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--scroll-edge: rgba(14, 35, 70, .22);--accent-fill: #653b83;--accent-fill-ink: #ffffff;--nav-active-bg: #653b83;--nav-active-ink: #ffffff;--font-sans: "DIN Next LT Arabic", "Segoe UI", Tahoma, "Geeza Pro", -apple-system, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Code", "Segoe UI Mono", Consolas, monospace;--field-code: 8rem;--field-num: 11rem;--field-text: 26rem;--field-prose: 44rem;--radius-mark: 3px;--radius-sm: 8px;--radius-md: 12px;--radius-pill: 999px}@media (prefers-color-scheme: dark){:root{--bg: #0e2346;--surface: #162a4f;--surface-2: #1e345c;--ink: #f1eef4;--ink-2: #c4bdd0;--line: #3a4d6e;--accent: #ad84cd;--accent-ink: #d3bce6;--accent-2: #8a63a9;--gold: #f4b833;--warn: #e0805e;--warn-bg: #2c1c15;--good: #83bc6b;--good-bg: #17251a;--danger: #e0805e;--danger-bg: #2c1c15;--series-1: #3987e5;--series-2: #d95926;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 24px rgba(0, 0, 0, .35);--hero-gradient: linear-gradient(160deg, #3a2350 0%, #221537 48%, #060f22 100%);--scroll-edge: rgba(0, 0, 0, .45);--accent-fill: #ad84cd;--accent-fill-ink: #0e2346;--nav-active-bg: #4a2b61;--nav-active-ink: #f1eef4}}:root[data-theme=dark]{--bg: #0e2346;--surface: #162a4f;--surface-2: #1e345c;--ink: #f1eef4;--ink-2: #c4bdd0;--line: #3a4d6e;--accent: #ad84cd;--accent-ink: #d3bce6;--accent-2: #8a63a9;--gold: #f4b833;--warn: #e0805e;--warn-bg: #2c1c15;--good: #83bc6b;--good-bg: #17251a;--danger: #e0805e;--danger-bg: #2c1c15;--series-1: #3987e5;--series-2: #d95926;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 24px rgba(0, 0, 0, .35);--hero-gradient: linear-gradient(160deg, #3a2350 0%, #221537 48%, #060f22 100%);--scroll-edge: rgba(0, 0, 0, .45);--accent-fill: #ad84cd;--accent-fill-ink: #0e2346;--nav-active-bg: #4a2b61;--nav-active-ink: #f1eef4}:root[data-theme=light]{--bg: #f6f4f8;--surface: #ffffff;--surface-2: #f1ecf5;--ink: #0e2346;--ink-2: #33415c;--line: #dcd5e4;--accent: #653b83;--accent-ink: #4a2b61;--accent-2: #8a5aa8;--gold: #f4b833;--warn: #a03e26;--warn-bg: #f6e6df;--good: #3f6e36;--good-bg: #e8f3e3;--danger: #a03e26;--danger-bg: #f6e6df;--series-1: #2a78d6;--series-2: #eb6834;--shadow: 0 1px 2px rgba(14, 35, 70, .06), 0 6px 20px rgba(14, 35, 70, .06);--hero-gradient: linear-gradient(160deg, #653b83 0%, #4a2b61 48%, #0e2346 100%);--scroll-edge: rgba(14, 35, 70, .22);--accent-fill: #653b83;--accent-fill-ink: #ffffff;--nav-active-bg: #653b83;--nav-active-ink: #ffffff}*,*:before,*:after{box-sizing:border-box}html{color-scheme:light dark}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-lg);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html[lang=ar] body{font-family:var(--font-sans)}code,.mono{font-family:var(--font-mono);direction:ltr;unicode-bidi:isolate}.dir-arrow{direction:ltr;unicode-bidi:isolate;display:inline-block}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}a{color:var(--accent-ink);text-decoration:none}a:hover{text-decoration:underline}input:where(:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])),select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink);transition:border-color .12s ease,box-shadow .12s ease}input::placeholder,textarea::placeholder{color:var(--ink-2);opacity:.65}input:where(:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])):hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}input:where(:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])):focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}input[type=checkbox]{width:16px;height:16px;margin:0;flex:none;accent-color:var(--accent);cursor:pointer}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;flex:0 0 auto;background:var(--surface);border-inline-end:1px solid var(--line);padding:var(--space-5) var(--space-3);display:flex;flex-direction:column;gap:4px}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-panel{display:flex;flex-direction:column;margin-top:22px;flex:1}.sidebar nav{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}.nav-icon{display:inline-flex;flex:none;width:18px;height:18px}.sidebar button.navlink{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;gap:10px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-md);color:var(--ink-2);transition:background-color .12s ease,color .12s ease}.sidebar button.navlink:hover{background:var(--surface-2);color:var(--ink)}.sidebar button.navlink.active{background:var(--nav-active-bg);color:var(--nav-active-ink);font-weight:600}.sidebar a.navlink{display:flex;align-items:center;gap:10px;width:100%;text-align:start;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ink-2);font-size:var(--text-base);cursor:pointer;text-decoration:none}.sidebar a.navlink:hover{background:var(--surface-2);color:var(--ink)}.sidebar a.navlink.active{background:var(--nav-active-bg);color:var(--nav-active-ink);font-weight:600}.nav-group,.admin-nav{display:flex;flex-direction:column;gap:2px}.nav-group-toggle{display:flex!important;justify-content:space-between;align-items:center;width:100%}.nav-sublinks{display:flex;flex-direction:column;gap:2px;padding-inline-start:10px}.nav-sublink{font-size:var(--text-sm)!important}.nav-chevron{display:inline-flex;flex:none;width:14px;height:14px;opacity:.7}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-inline-start:6px;border-radius:var(--radius-sm);background:var(--warn-bg);color:var(--warn);font-size:var(--text-xs);font-weight:700}.catalog-context-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:16px}.catalog-context-bar .field.compact{margin:0;min-width:180px}.catalog-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;flex:1 1 100%;font-size:var(--text-sm)}.catalog-breadcrumb.standalone{margin-bottom:16px}.page-breadcrumb{margin-bottom:12px}.catalog-breadcrumb .crumb-sep{display:inline-flex;flex:none;width:13px;height:13px;opacity:.6}.filter-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.view-toggle{display:flex;gap:6px;margin-inline-start:auto}.request-card-grid,.catalog-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.catalog-hub-card{display:block;text-decoration:none;color:inherit}.catalog-hub-card:hover{border-color:var(--accent)}.catalog-hub-card h2{font-size:var(--text-md);margin:0}.hub-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;padding:1px 7px;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-2);font-size:var(--text-sm);font-weight:700}.compact-card{padding:14px}.compact-card .card-header-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.compact-card .small{font-size:var(--text-sm)}.checkbox-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:var(--text-base)}.program-picker{border:0;padding:0;margin:0 0 12px;min-width:0}.program-picker legend{padding:0;margin-bottom:4px;font-size:var(--text-sm);font-weight:600;color:var(--ink-2)}.merit-trait-picker{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow-y:auto;padding:4px 0}.merit-trait-row{display:grid;grid-template-columns:1fr 100px;gap:12px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm)}.merit-trait-row .checkbox-row{margin:0}.merit-trait-row input[type=number]{width:100%}textarea.mono{width:100%;font-family:var(--font-mono);font-size:var(--text-base);padding:10px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink)}.calculated-component-row select{width:100%;font-size:var(--text-base)}.table-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:10px}.table-search{flex:1;min-width:160px;max-width:320px}.table-pager{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:12px;flex-wrap:wrap}.pager-buttons{display:flex;gap:8px;align-items:center}.sort-btn{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.sort-btn.active{font-weight:600}.sort-arrow{display:inline-flex;flex:none;width:12px;height:12px;opacity:.7}.sort-btn.active .sort-arrow{opacity:1}.pill.good{background:var(--good-bg);color:var(--good)}.sidebar .spacer{flex:1}.cycle-strip{list-style:none;margin:0 0 var(--space-5);padding:0;display:grid;grid-template-columns:repeat(var(--stages, 4),minmax(0,1fr));gap:var(--space-3)}.cycle-strip>li{position:relative;min-width:0}.cycle-strip>li:not(.sr-only)+li:not(.sr-only):before{content:"";position:absolute;inset-inline-start:calc(-1 * var(--space-3));top:50%;width:var(--space-3);border-top:1px solid var(--line)}.cycle-stage{box-sizing:border-box;height:100%;min-height:44px;display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:inherit;text-decoration:none;transition:border-color .12s ease,background-color .12s ease}a.cycle-stage:hover,a.cycle-stage:focus-visible{border-color:var(--accent);background:var(--surface-2)}.cycle-stage.current{border-color:var(--series-1);border-width:2px;background:color-mix(in srgb,var(--series-1) 12%,var(--surface))}.cycle-stage.blocked{border-color:var(--warn);background:var(--warn-bg)}.cycle-stage.blocked .cycle-stage-state{color:var(--warn)}.cycle-stage.done .cycle-stage-icon{color:var(--good)}.cycle-stage.upcoming .cycle-stage-name{color:var(--ink-2)}.cycle-stage-name{display:flex;align-items:center;gap:6px;font-size:var(--text-md);font-weight:600;color:var(--ink)}.cycle-stage-icon{flex:none;color:var(--ink-2)}.cycle-stage-state{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:var(--text-sm);color:var(--ink-2)}.cycle-stage-metric{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink)}.cycle-stage-caption{font-size:var(--text-xs);color:var(--ink-2)}@media (max-width: 780px){.cycle-strip{gap:var(--space-2)}.cycle-strip>li:not(.sr-only)+li:not(.sr-only):before{inset-inline-start:calc(-1 * var(--space-2));width:var(--space-2)}.cycle-stage{padding:var(--space-2) var(--space-3)}.cycle-stage-icon{display:none}.cycle-stage-state{flex-direction:column;gap:0}}@media (max-width: 480px){.cycle-strip{grid-template-columns:minmax(0,1fr)}.cycle-strip>li:not(.sr-only)+li:not(.sr-only):before{inset-inline-start:var(--space-5);top:calc(-1 * var(--space-2));width:0;height:var(--space-2);border-top:0;border-inline-start:1px solid var(--line)}.cycle-stage{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:var(--space-3)}.cycle-stage-icon{display:inline-flex}.cycle-stage-state{flex-direction:row;gap:var(--space-3)}.cycle-stage-caption{flex-basis:100%}}.main .lede:has(+.farm-code-chip){margin-bottom:var(--space-2)}.farm-code-chip{display:inline-flex;align-items:center;gap:6px;margin-bottom:var(--space-4);padding-block:2px;padding-inline:10px 4px;border-radius:var(--radius-pill);background:var(--surface-2);font-size:var(--text-sm)}@media (pointer: coarse){.farm-code-chip .icon-btn{min-width:44px;min-height:44px}}.next-step{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3) var(--space-5);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6)}.next-step-text{flex:1 1 260px;min-width:0}.next-step-text h2{margin:0 0 2px;font-size:var(--text-xl);font-weight:700;color:inherit}.next-step-text p{margin:0;overflow-wrap:anywhere}.next-step-eyebrow{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.85}html[dir=rtl] .next-step-eyebrow{letter-spacing:0}.attention-table th:first-child,.attention-table td:first-child{width:1%;padding-inline-end:var(--space-4)}.attention-table td:nth-child(2){white-space:normal}.next-step-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.hint-tooltip{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);width:max-content;max-width:220px;background:var(--ink);color:var(--surface);font-size:var(--text-sm);font-weight:500;line-height:1.4;padding:8px 10px;border-radius:var(--radius-sm);box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:opacity .12s ease;z-index:20;text-align:center;pointer-events:none}.sidebar .nav-section-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--ink-2);padding:4px 12px 6px}.section-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--ink-2);padding-bottom:6px}.animal-id-heading{display:flex;align-items:center;gap:6px;margin:0}.animal-identity-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.animal-identity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.animal-actions{position:relative;flex:none}.animal-actions-menu{position:absolute;z-index:20;top:calc(100% + 6px);inset-inline-end:0;min-width:240px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow)}.animal-actions-menu button,.animal-actions-menu a{all:unset;box-sizing:border-box;display:block;width:100%;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base);font-weight:600;color:var(--ink);text-align:start}.animal-actions-menu button:hover,.animal-actions-menu a:hover{background:var(--surface-2)}.animal-actions-menu button.danger{color:var(--danger)}.animal-actions-menu button:disabled{opacity:.5;cursor:not-allowed}.animal-actions-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.record-actions-menu{position:relative;display:inline-block}.animal-identity-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.animal-identity-status .animal-status-tags{margin-top:0}.animal-identity-highlights{display:flex;flex-wrap:wrap;gap:10px 32px;padding-top:10px;border-top:1px solid var(--line)}.animal-identity-highlights .animal-identity-metric{margin-top:4px}.animal-identity .animal-identity-fields{padding-top:10px;border-top:1px solid var(--line);gap:10px 16px}.animal-identity-facts{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 28px;align-items:start}.animal-identity-metric{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.animal-identity-metric .mono{font-weight:700}.animal-identity .banner{margin:0;padding:6px 10px;font-size:var(--text-sm);line-height:1.35;border-radius:var(--radius-sm)}.icon-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:4px;border-radius:var(--radius-sm);color:var(--ink-2);transition:background-color .12s ease,color .12s ease}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.sidebar .program-switcher{margin-bottom:16px;display:block}.sidebar .program-switcher .select-label{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--ink-2);margin-bottom:6px}.sidebar .program-switcher .program-name-display{font-size:var(--text-base);font-weight:600;color:var(--ink)}.sidebar .role-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.role-pill{display:inline-flex;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600;padding:3px 9px;border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink-2);width:fit-content}.role-pill.manager{background:var(--accent-fill);color:var(--accent-fill-ink)}.role-pill.analyst{background:var(--good);color:#fff}.sidebar .theme-row{display:flex;gap:8px;flex-wrap:wrap;padding-inline:var(--space-3)}.sidebar-foot{margin-top:8px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.sidebar-account{display:flex;flex-direction:column;gap:2px}.sidebar-account-btn{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;gap:10px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--ink-2);direction:inherit;text-align:start;transition:background-color .12s ease,color .12s ease}.sidebar-account-btn:hover{background:var(--surface-2);color:var(--ink)}.sidebar-account-btn.danger{color:var(--danger)}.sidebar-account-btn.danger:hover{background:var(--danger-bg);color:var(--danger)}.sidebar .user-email{display:flex;flex-direction:column;gap:2px;font-size:var(--text-sm);color:var(--ink-2);margin-bottom:10px;word-break:break-all}.sidebar .user-email .user-name{font-weight:600;color:var(--ink)}.sidebar .user-email .user-farm{font-size:var(--text-xs);font-weight:600;color:var(--ink)}.sidebar .user-email .user-addr{font-size:var(--text-xs)}.lang-toggle{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;padding:5px 10px;border-radius:var(--radius-pill);border:1px solid var(--line);color:var(--ink-2);background:var(--surface-2);transition:color .12s ease,border-color .12s ease}.lang-toggle:hover{color:var(--ink);border-color:var(--accent)}.lang-toggle.symbol{min-width:0;padding:5px 8px;font-weight:700;font-size:var(--text-sm);letter-spacing:.02em;direction:ltr;unicode-bidi:isolate}.menu-toggle{all:unset;cursor:pointer;display:none;padding:6px 8px;border-radius:var(--radius-sm);border:1px solid var(--line);color:var(--ink);transition:border-color .12s ease}.menu-toggle:hover{border-color:var(--accent)}.bottom-tab-bar{display:none}.main{flex:1;padding:32px 40px;max-width:1100px;min-width:0}.main h1{font-size:var(--text-5xl);font-weight:700;letter-spacing:-.01em;margin:0 0 8px}.main .lede{color:var(--ink-2);font-size:var(--text-xl);line-height:1.6;margin:0 0 28px;max-width:70ch}@media (min-width: 781px){.app-shell{height:100vh;overflow:hidden}.sidebar{overflow-y:auto}.main{overflow-y:auto;min-height:0}}@media (min-width: 781px) and (max-width: 1100px){.main{padding:24px 20px;max-width:none}}@media (max-width: 780px){.app-shell{flex-direction:column}.sidebar{width:100%;border-inline-end:none;border-bottom:1px solid var(--line);padding:12px 16px;position:sticky;top:0;z-index:30}.menu-toggle{display:inline-flex;align-items:center;justify-content:center}.sidebar-panel{display:none;position:absolute;inset-inline:0;top:100%;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow);padding:14px 16px 18px;margin-top:0}.sidebar-panel.open{display:flex}.sidebar .spacer{display:none}.main{padding:20px 16px}form.grid-form{grid-template-columns:1fr 1fr}.stat-row{grid-template-columns:repeat(2,1fr)}.app-shell.has-bottom-nav .sidebar-panel .primary-nav{display:none}.app-shell.has-bottom-nav .main{padding-bottom:80px}.app-shell.has-bottom-nav .bottom-tab-bar{display:flex;position:fixed;inset-inline:0;bottom:0;z-index:60;background:var(--surface);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -2px 10px #0e234614}.app-shell.has-bottom-nav .bottom-tab-bar .navlink{all:unset;box-sizing:border-box;cursor:pointer;flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:var(--radius-sm);font-size:var(--text-2xs);color:var(--ink-2);text-align:center}.app-shell.has-bottom-nav .bottom-tab-bar .navlink svg{width:22px;height:22px}.app-shell.has-bottom-nav .bottom-tab-bar .navlink.active{color:var(--accent-ink);font-weight:600}}@media (max-width: 480px){form.grid-form{grid-template-columns:1fr}.stat-row{grid-template-columns:1fr 1fr}.auth-card{padding:24px 20px}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:22px 24px;margin-bottom:20px;box-shadow:var(--shadow)}.card h2{font-size:var(--text-2xl);font-weight:700;letter-spacing:-.005em;margin:0 0 14px}.card h3{font-size:var(--text-md);font-weight:700;color:var(--ink);margin:20px 0 10px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.card-head h2{margin:0}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-bottom:24px}.stat-tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px 16px}.stat-tile .icon-badge{width:36px;height:36px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:14px}.stat-tile .icon-badge svg{width:18px;height:18px}.stat-tile .label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);font-weight:600;margin-bottom:6px}.stat-tile .value{font-family:var(--font-mono);font-size:var(--text-5xl);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.25}.stat-tile.compact .value{font-size:var(--text-xl);word-break:break-all}.selection-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:16px}.selection-summary>.stat-tile{all:unset;box-sizing:border-box;display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 14px;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.selection-summary>.stat-tile:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.selection-summary>.stat-tile.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}.selection-summary>.stat-tile .label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);font-weight:600;margin-bottom:6px}.selection-summary>.stat-tile .value{font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.25;color:var(--ink)}.selection-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:10px 14px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;color:var(--ink)}.selection-bar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.selection-plot{margin-bottom:16px;padding:14px 16px}.selection-plot .card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:10px}.selection-plot .card-head h2{margin:0;font-size:var(--text-md)}.selection-plot-legend{display:flex;flex-wrap:wrap;gap:8px 10px;font-size:var(--text-xs);color:var(--ink-2);font-weight:600}.selection-plot-legend>span{display:inline-flex;align-items:center;gap:5px}.selection-plot-swatch{width:8px;height:8px;border-radius:2px;flex:none}.selection-plot-swatch.top{background:var(--good)}.selection-plot-swatch.bottom{background:repeating-linear-gradient(45deg,var(--danger) 0 3px,color-mix(in srgb,var(--danger) 84%,var(--surface)) 3px 6px)}.selection-plot-swatch.mid{background:color-mix(in srgb,var(--ink-2) 62%,var(--surface))}.selection-plot-swatch.pool{background:transparent;border:2px solid var(--accent);box-sizing:border-box}.selection-plot-body{display:grid;grid-template-columns:minmax(12rem,1.25fr) minmax(0,.85fr) minmax(0,.85fr);gap:12px 16px;align-items:stretch}.selection-hist{margin-bottom:0;min-width:0;min-height:0;display:flex;flex-direction:column}.selection-hist-plot{position:relative;flex:1 1 auto;min-height:88px;padding-top:2px;display:flex;flex-direction:column}.selection-hist-bins{display:flex;align-items:flex-end;gap:1px;flex:1 1 auto;min-height:0;border-bottom:1px solid var(--line)}.selection-hist-bin{all:unset;box-sizing:border-box;flex:1 1 0;min-width:0;height:100%;display:flex;flex-direction:column;align-items:stretch;gap:2px;padding:0;cursor:pointer}.selection-hist-bin:disabled{cursor:default}.selection-hist-count{font-size:var(--text-xs);font-weight:700;color:var(--ink-2);line-height:1;flex:none;height:12px;text-align:center}.selection-hist-track{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;justify-content:flex-end}.selection-hist-col{display:block;width:100%;min-height:3px;background:color-mix(in srgb,var(--accent) 78%,var(--ink))}.selection-hist-bin:hover:not(:disabled),.selection-hist-bin:focus-visible{background:var(--surface-2)}.selection-hist-bin:hover:not(:disabled) .selection-hist-count,.selection-hist-bin.active .selection-hist-count{color:var(--ink)}.selection-hist-bin.active .selection-hist-col{box-shadow:inset 0 0 0 2px var(--accent-ink, var(--accent));background:var(--accent)}.selection-hist-axis{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:4px;font-size:var(--text-xs);color:var(--ink-2)}.selection-hist-axis-title{font-weight:600;letter-spacing:.02em}.selection-hist-readout{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-height:16px;margin:4px 0 0;font-size:var(--text-xs);color:var(--ink-2)}.selection-hist-readout-head{font-weight:700;color:var(--ink)}.selection-hist-active{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px;font-size:var(--text-sm);color:var(--ink-2)}.selection-plot-columns{display:contents}.selection-plot-col{min-width:0}.selection-plot-col-heading{all:unset;box-sizing:border-box;display:block;width:100%;cursor:pointer;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2);margin-bottom:4px;padding-bottom:4px;border-bottom:2px solid var(--line)}.selection-plot-col-heading.top{border-bottom-color:var(--good);color:var(--good)}.selection-plot-col-heading.bottom{border-bottom-color:var(--danger);color:var(--danger)}.selection-plot-col-heading:hover{color:var(--accent-ink)}.selection-plot-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.selection-plot-bar-row{all:unset;box-sizing:border-box;display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;cursor:pointer;padding:3px 4px;border-radius:var(--radius-sm)}.selection-plot-bar-row:hover,.selection-plot-bar-row:focus-visible{background:var(--surface-2)}.selection-plot-bar-meta{display:flex;justify-content:space-between;gap:8px;flex:0 0 9.75rem;font-size:var(--text-xs);font-weight:600;color:var(--ink)}.selection-plot-bar-track{flex:1 1 auto;min-width:2.5rem;height:6px;border-radius:var(--radius-pill);background:var(--surface-2);overflow:hidden}.selection-plot-bar-fill{display:block;height:100%;border-radius:var(--radius-pill);min-width:2px}.selection-plot-bar-fill.top{background:var(--good)}.selection-plot-bar-fill.bottom{background:repeating-linear-gradient(45deg,var(--danger) 0 7px,color-mix(in srgb,var(--danger) 86%,var(--surface)) 7px 14px)}.selection-plot-bar-fill.in-pool{box-shadow:inset 0 0 0 1px var(--accent)}@media (max-width: 840px){.selection-plot-body{grid-template-columns:1fr}.selection-plot-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}}table{width:100%;border-collapse:collapse;font-size:var(--text-base)}th,td{text-align:start;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);font-weight:600}html[dir=rtl] :is(th,dt,.nav-section-label,.section-label,.select-label,.stat-tile .label,.role-pill,.field label,.register-section-label,.selection-plot-col-heading,.trait-group-block>h3,.tutorial-step-label,.docs-sidebar-heading,.pedigree-list-gen h4){letter-spacing:normal;text-transform:none}td.num{text-align:end;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}th.num{text-align:end;font-variant-numeric:tabular-nums}th.col-center,td.col-center{text-align:center}th.col-center .sort-btn{justify-content:center;width:100%}td.col-tags{white-space:normal}.table-wrap .animal-status-tags{margin-top:0}td.wrap,th.wrap{white-space:normal;vertical-align:top}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-md)}.table-wrap input.num-input{width:6.5em}.table-wrap tr.muted td{color:var(--ink-3, var(--ink-2))}.table-wrap:has(.record-actions-menu button[aria-expanded=true]),.table-wrap:has(.animal-actions-trigger[aria-expanded=true]){overflow:visible}.table-wrap table{border:none}.table-wrap tr:last-child td{border-bottom:none}.table-wrap tbody tr{transition:background-color .1s ease}.table-wrap tbody tr:hover{background:var(--surface-2)}.table-wrap tbody tr.clickable-row{cursor:pointer}.table-wrap th{white-space:normal;line-height:1.3;vertical-align:bottom}.table-wrap th .sort-btn{white-space:normal;text-align:start;max-width:100%}.table-wrap th.num .sort-btn{text-align:end}.table-wrap.table-dense th,.table-wrap.table-dense td{padding:6px 8px}th.col-literal{text-transform:none;letter-spacing:0;font-family:var(--font-mono);unicode-bidi:isolate}th.col-choice,td.col-choice{width:3.4rem}th.col-rank,td.col-rank{width:4.75rem}th.col-index,td.col-index{width:6.25rem}.sort-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit}.sort-btn:hover{color:var(--ink)}.sort-btn.active{color:var(--accent-ink)}.sort-btn .sort-arrow{width:12px;height:12px}.table-search{font:inherit;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink);width:100%;max-width:280px;transition:border-color .12s ease,box-shadow .12s ease}.table-search:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.table-search:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.table-toolbar .toolbar-end{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.table-toolbar .checkbox-row{margin-bottom:0}.toolbar-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.toolbar-filters .table-search{flex:1 1 160px;max-width:220px}.toolbar-filters select{width:auto;max-width:11.5rem}.view-toggle{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;flex:none}.view-toggle-btn{all:unset;cursor:pointer;padding:6px 12px;font-size:var(--text-sm);font-weight:600;color:var(--ink-2);background:var(--surface);transition:background-color .12s ease,color .12s ease}.view-toggle-btn+.view-toggle-btn{border-inline-start:1px solid var(--line)}.view-toggle-btn:hover{background:var(--surface-2);color:var(--ink)}.view-toggle-btn.active{background:var(--accent-fill);color:var(--accent-fill-ink)}.record-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-bottom:16px}.record-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0;overflow:hidden;box-shadow:var(--shadow);transition:background-color .1s ease,border-color .1s ease}.record-card.clickable{cursor:pointer}.record-card.clickable:hover{background:var(--surface-2);border-color:var(--accent)}.record-card-photo{width:100%;aspect-ratio:1;border-radius:var(--radius-sm);background:var(--surface-2);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--ink-2);font-size:var(--text-6xl);font-weight:700}.record-card-photo img{width:100%;height:100%;object-fit:cover;display:block}.record-card-title{font-weight:700;font-size:var(--text-md)}.record-card-subtitle{font-size:var(--text-sm);color:var(--ink-2)}.record-card-meta{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.record-card-meta>span{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}.record-row-meta>span{white-space:nowrap}.record-card-actions{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding-top:var(--space-3)}.record-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;margin-bottom:16px}.record-list:has(.record-actions-menu button[aria-expanded=true]){overflow:visible}.record-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--line);transition:background-color .1s ease}.record-list .record-row:last-child{border-bottom:none}.record-row:hover{background:var(--surface-2)}.record-row.clickable{cursor:pointer}.record-row-photo{width:32px;height:32px;flex:none;border-radius:var(--radius-sm);background:var(--surface-2);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--ink-2);font-size:var(--text-sm);font-weight:700}.record-row-photo img{width:100%;height:100%;object-fit:cover;display:block}.record-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.record-row-title{font-weight:600;font-size:var(--text-base)}.record-row-meta{font-size:var(--text-sm);color:var(--ink-2);display:flex;flex-wrap:wrap;gap:8px}.record-row-meta .mono{font-size:var(--text-sm)}.record-row-actions{flex:none;display:flex;gap:6px;flex-wrap:wrap}.table-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:var(--text-sm)}.table-pager .pager-buttons{display:flex;align-items:center;gap:10px}.table-pager .pager-buttons .btn{padding:5px 12px;font-size:var(--text-base)}.pager-btn{padding:6px!important}[dir=rtl] .pager-btn svg{transform:scaleX(-1)}[dir=rtl] .catalog-breadcrumb .crumb-sep{transform:scaleX(-1)}[dir=rtl] .nav-chevron svg{transform:scaleX(-1)}.animal-link,.row-link{all:unset;cursor:pointer;color:var(--accent-ink);font-weight:600}.animal-link:hover,.row-link:hover{text-decoration:underline}.photo-preview{display:block;width:100%;max-width:160px;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-2)}.photo-large{display:block;width:100%;max-width:280px;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-2);box-shadow:var(--shadow)}.animal-identity{display:flex;align-items:flex-start;gap:16px}.animal-identity-photo{flex:none;display:flex;flex-direction:column;gap:6px;align-items:stretch}.animal-identity-photo img,.animal-identity-fallback{width:72px;height:72px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-2);object-fit:cover;display:flex;align-items:center;justify-content:center;font-size:var(--text-4xl);color:var(--ink-2);font-weight:700}.animal-identity-photo-btn{position:relative;font-size:var(--text-xs);line-height:1.2;color:var(--accent-ink);cursor:pointer;text-align:center;overflow:hidden}.animal-identity-photo-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;font-size:0}.animal-identity-fields{flex:1;min-width:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px 20px}.animal-identity-fields>div{display:flex;flex-direction:column;gap:2px;min-width:0}.animal-identity-fields dt{margin:0;font-size:var(--text-xs);font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.02em}.animal-identity-fields dd{margin:0;font-size:var(--text-base);color:var(--ink);line-height:1.35;overflow-wrap:break-word}.animal-identity-notes{grid-column:1 / -1}.register-animal-card .card-head{align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.register-animal-card .card-head h2{margin:0 0 4px}.register-animal-card .card-head .section-note{margin:0;max-width:36em}.register-mode-toggle{display:inline-flex;flex-wrap:wrap;gap:8px;flex:none;margin-inline-start:auto;align-items:center}button.register-mode-tag{position:relative;cursor:pointer;border:none;font:inherit;padding:5px 12px;gap:5px;transition:background-color .12s ease,color .12s ease,opacity .12s ease}button.register-mode-tag.pill.neutral.muted-tag{background:var(--surface-2);color:var(--ink-2);opacity:.55}button.register-mode-tag.pill.neutral.muted-tag:hover{opacity:.85;color:var(--ink)}button.register-mode-tag.pill.selected{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-ink);opacity:1}button.register-mode-tag:hover .hint-tooltip,button.register-mode-tag:focus-visible .hint-tooltip{opacity:1;visibility:visible}.register-animal-card .register-animal-fields{display:flex;flex-direction:column;gap:16px;min-width:0}.register-animal-card .register-animal-fields>.field{gap:8px}.register-animal-body{display:grid;grid-template-columns:148px minmax(0,1fr);gap:22px 24px;align-items:start}.register-animal-photo{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:8px;cursor:pointer;min-width:0}.register-animal-photo-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;font-size:0;border:0;padding:0;margin:0}.register-animal-photo-frame{position:relative;display:block;aspect-ratio:1;border-radius:var(--radius-md);border:1px dashed var(--line);background:var(--surface-2);overflow:hidden;transition:border-color .12s ease,background-color .12s ease}.register-animal-photo:hover .register-animal-photo-frame,.register-animal-photo:focus-within .register-animal-photo-frame{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--surface-2))}.register-animal-photo-frame img{width:100%;height:100%;object-fit:cover;display:block;border:none;border-radius:0}.register-animal-photo-empty{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ink-2);padding:12px}.register-animal-photo-empty-label{font-size:var(--text-xs);font-weight:600;color:var(--accent);text-align:center;line-height:1.3}.register-animal-photo-empty .pedigree-node rect,.register-animal-photo-empty .pedigree-node circle,.register-animal-photo-empty .pedigree-node polygon{stroke-width:1.8}.register-animal-photo-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;gap:6px;padding:10px;background:linear-gradient(180deg,transparent 45%,rgba(14,35,70,.62));color:#fff;font-size:var(--text-xs);font-weight:600;opacity:0;transition:opacity .12s ease}.register-animal-photo:hover .register-animal-photo-overlay,.register-animal-photo:focus-within .register-animal-photo-overlay{opacity:1}.register-animal-photo-caption{font-size:var(--text-xs);font-weight:600;color:var(--accent);text-align:center;text-transform:none;letter-spacing:normal}.register-choice-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px;align-items:start}.register-animal-card .choice-tile{justify-content:center;min-height:40px;padding:8px 10px}.register-animal-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px;align-items:start}.register-cg-create{display:flex;gap:8px;align-items:center;margin-top:8px}.register-cg-create input{flex:1;min-width:0;padding:6px 8px;font-size:var(--text-sm)}.register-pedigree-panel{display:flex;flex-direction:column;gap:14px;padding:14px 16px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md)}.register-section-label{margin:0;font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.register-inbreeding-note{font-size:var(--text-sm);margin:0}.register-pedigree-panel .banner{margin-bottom:0}.register-animal-pedigree{display:flex;flex-direction:column;gap:12px}.register-animal-pedigree-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px;align-items:start}.register-animal-pedigree-fields>.field:only-child{grid-column:1 / -1}.searchable-select,.searchable-select-control{position:relative}.searchable-select-input{padding-inline-end:34px}.searchable-select-toggle{all:unset;box-sizing:border-box;position:absolute;inset-inline-end:0;top:0;bottom:0;width:34px;display:flex;align-items:center;justify-content:center;color:var(--ink-2);cursor:pointer}.searchable-select-toggle:disabled{opacity:.45}.searchable-select-menu{position:absolute;z-index:8;inset-inline:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;max-height:220px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.searchable-select-option{padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-base);color:var(--ink)}.searchable-select-option.active,.searchable-select-option:hover{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.searchable-select-option.selected{font-weight:600;color:var(--accent-ink)}.searchable-select-empty{padding:10px;color:var(--ink-2);font-size:var(--text-sm)}.register-animal-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.register-animal-actions-end{display:flex;gap:10px;flex-wrap:wrap;margin-inline-start:auto}.register-draft-list{display:flex;flex-direction:column;gap:12px}.register-draft-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:16px 18px;background:var(--surface)}.register-draft-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.register-draft-head h3{margin:0;display:flex;align-items:center;gap:8px;font-size:var(--text-md);font-weight:700}.register-draft-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));color:var(--accent-ink);font-size:var(--text-xs);font-weight:700;flex:none}.register-draft-fields{display:flex;flex-direction:column;gap:14px}.register-excel-panel{display:flex;flex-direction:column;gap:16px}.register-excel-hero{display:flex;align-items:flex-start;gap:14px;padding:16px;background:var(--surface-2);border:1px dashed var(--line);border-radius:var(--radius-md)}.register-excel-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:none;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}.register-excel-title{margin:0 0 6px;font-size:var(--text-md);font-weight:600;color:var(--ink)}.register-excel-hero .field-hint{margin:0}.register-excel-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.register-excel-panel .btn{display:inline-flex;align-items:center;gap:6px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choice-tile{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);min-width:0;transition:border-color .12s ease,background-color .12s ease}.choice-tile.stacked{align-items:flex-start}.choice-grid.one-col{grid-template-columns:minmax(0,1fr)}.program-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.program-badges:empty{display:none}.choice-tile:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.choice-tile.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.choice-tile .pedigree-node{flex:none}.choice-tile.selected .pedigree-node.sex-m rect{fill:var(--accent);stroke:var(--accent)}.choice-tile.selected .pedigree-node.sex-f circle{fill:var(--accent-2);stroke:var(--accent-2)}.choice-tile-text{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:start}.choice-tile-name{font-size:var(--text-base);font-weight:600;color:var(--ink);text-transform:none;letter-spacing:normal}.choice-tile-desc{font-size:var(--text-xs);font-weight:400;color:var(--ink-2);line-height:1.4;text-transform:none;letter-spacing:normal}@media (max-width: 720px){.register-animal-body,.register-animal-meta,.register-choice-row,.register-animal-pedigree-fields{grid-template-columns:1fr}.register-animal-photo{max-width:180px}.register-animal-card .card-head{align-items:stretch}.register-mode-toggle{width:100%;margin-inline-start:0}.register-mode-tag{flex:1;justify-content:center}}.pending-signup-row{border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:10px}.pending-signup-row:last-child{margin-bottom:0}.catalog-species-block{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.catalog-species-block:first-of-type{border-top:none;padding-top:0;margin-top:0}.catalog-species-block h3{margin:0 0 8px;font-size:var(--text-xl)}.catalog-species-block ul{margin:0 0 10px;padding-inline-start:1.25rem}.task-section{margin-bottom:32px}.task-section:last-child{margin-bottom:0}.task-section h2{margin:0 0 12px;font-size:var(--text-2xl);font-weight:700}.mating-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:16px}.mating-summary>.stat-tile{box-sizing:border-box;display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 14px;transition:border-color .12s ease,box-shadow .12s ease}.mating-summary>button.stat-tile{all:unset;box-sizing:border-box;display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:12px 14px;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.mating-summary>button.stat-tile:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.mating-summary>button.stat-tile.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}.mating-summary>.stat-tile.display-only{cursor:default}.mating-summary>.stat-tile .label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);font-weight:600;margin-bottom:6px}.mating-summary>.stat-tile .value{font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.25;color:var(--ink)}.mating-id-cell{display:inline-flex;align-items:center;gap:2px}.mating-parent-ids,.mating-status-cell,.mating-yield-cell,.mating-batch-cell{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.mating-parent-ids a{overflow-wrap:anywhere}.mating-status-cell .muted{white-space:normal;max-width:32ch}.mating-yield-split{display:flex;flex-wrap:wrap;gap:0 8px}.mating-card-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.mating-card-parents{margin:0 0 6px}.mating-card-meta{margin:0 0 10px;font-size:var(--text-base)}.mating-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}.mating-card-actions-quiet{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mating-enroll-block{display:flex;flex-direction:column;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.mating-path-card h2{margin-bottom:6px}.mating-path-card .muted{margin:0 0 12px}.mating-phenotype-row{align-items:center;gap:12px}.mating-phenotype-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-inline-start:auto}.parent-pick-list{max-height:260px;overflow-y:auto;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.parent-pick-list .checkbox-row{margin-bottom:0}.parent-pick-list li+li{margin-top:8px}.matrix-section{margin:0 0 10px;font-size:var(--text-xl);font-weight:700}.matrix-scroll{overflow:auto;max-height:calc(100vh - 280px);margin-bottom:16px}.matrix-table{border-collapse:separate;border-spacing:0;width:100%}.matrix-table th,.matrix-table td{border-bottom:1px solid var(--line);border-inline-end:1px solid var(--line);padding:8px 10px;white-space:nowrap}.matrix-table thead th{position:sticky;top:0;z-index:3;background:var(--surface);text-align:center;vertical-align:bottom}.matrix-table th.matrix-row-head,.matrix-table td.matrix-row-head{position:sticky;inset-inline-start:0;z-index:2;background:var(--surface);text-align:start;vertical-align:top}.matrix-table thead th.matrix-corner{z-index:4}.matrix-row-head .pill{margin-inline-start:6px;vertical-align:middle}.matrix-col-head-score{display:block;font-size:var(--text-sm);color:var(--ink-2);font-weight:400;margin-top:2px}.matrix-vital{display:flex;flex-direction:column;gap:1px;margin-top:3px;font-size:var(--text-2xs);font-weight:500;color:var(--ink-2);font-variant-numeric:tabular-nums;line-height:1.25}.matrix-legend{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;margin:0 0 10px;padding:0;font-size:var(--text-xs);color:var(--ink-2)}.matrix-legend li{display:inline-flex;align-items:center;gap:6px}.matrix-legend svg{flex:none;color:var(--ink)}.matrix-vital-line{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.matrix-vital-line svg{flex:none}.matrix-row-head .matrix-vital{margin-top:4px}.matrix-cell-btn .matrix-vital{margin-top:2px;font-family:inherit;font-weight:500;color:inherit}.matrix-cell-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;min-width:4.5rem;border:1px solid transparent;background:transparent;color:var(--ink);padding:8px 6px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-md);cursor:pointer;text-align:center}.matrix-cell-btn:hover,.matrix-cell-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.matrix-cell-btn.top-pick{font-weight:700;background:var(--good-bg);color:var(--good);border-color:color-mix(in srgb,var(--good) 35%,transparent)}.matrix-cell-top-badge{display:inline-flex;color:currentColor}.matrix-row-active .matrix-row-head{box-shadow:inset 3px 0 0 var(--accent)}.matrix-panel-score{margin:0;font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:700}.catalog-species-block .nav-section-label{margin-bottom:4px}@media (max-width: 520px){.animal-identity{flex-direction:column;align-items:stretch}.animal-identity-photo{flex-direction:row;align-items:center;width:auto;gap:10px}}.pedigree-tree-figure{margin:0;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;gap:10px;min-height:0}.animal-detail-top{margin-bottom:20px}.animal-detail-top>.card{margin-bottom:0}.animal-plot-card{padding:16px 18px;display:flex;flex-direction:column;min-height:0;min-width:0;margin-bottom:20px}.animal-plot-card .card-head{justify-content:space-between;margin-bottom:8px;gap:12px;flex:none}.animal-plot-card .tabs{margin-bottom:0;flex:1 1 auto}.animal-plot-card .tabs .tab{padding:6px 12px;font-size:var(--text-sm)}.animal-plot-card .trait-flip{flex:1 1 auto;min-height:0}.animal-plot-panel{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;min-width:0}.animal-plot-card .animal-identity-fields{margin-bottom:10px}.animal-plot-card .pedigree-controls{flex:none}.animal-plot-card .pedigree-tree-figure,.animal-plot-card .mating-plot-figure{flex:1 1 auto;min-height:0}.animal-plot-card .pedigree-tree-figure.compact .pedigree-tree-canvas,.animal-plot-card .mating-plot-figure.compact .mating-plot-canvas{min-height:220px}.pedigree-tree-canvas{position:relative;flex:1 1 0;min-height:0;width:100%;overflow:auto}.pedigree-tree-stage-wrap{min-height:100%;min-width:100%;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.pedigree-tree-stage{position:relative;flex:0 0 auto}.pedigree-tree-canvas svg{display:block;width:100%;height:100%;color:var(--ink-2)}.pedigree-tree-canvas svg a{color:inherit;text-decoration:none}.pedigree-mid-stats{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:1px;padding:5px 9px;pointer-events:none;text-align:center;line-height:1.15;z-index:2;background:var(--surface-2);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:var(--radius-sm);box-shadow:var(--shadow)}.pedigree-mid-stats.solo{top:auto;bottom:10px;transform:translate(-50%)}.pedigree-mid-stats.placed.solo{bottom:auto;transform:translate(-50%,-50%)}.pedigree-mid-rank{font-size:var(--text-md);font-weight:700;color:var(--ink)}.pedigree-mid-f{font-size:var(--text-2xs);color:var(--ink-2)}.pedigree-tree-figure.compact{flex-direction:column;gap:4px}.pedigree-tree-figure figcaption{font-size:var(--text-md);color:var(--ink-2);margin-top:10px}.pedigree-modal{display:flex;flex-direction:column;gap:8px;min-height:min(70vh,640px)}.pedigree-modal .pedigree-controls{margin-bottom:4px}.pedigree-modal .pedigree-tree-figure{flex:1 1 auto;min-height:0}.pedigree-modal .pedigree-tree-canvas{min-height:460px}.mating-plot-modal{display:flex;flex-direction:column;min-height:min(70vh,640px)}.mating-plot-modal .mating-plot-figure{flex:1 1 auto;min-height:0}.mating-plot-modal .mating-plot-canvas{min-height:460px}.pedigree-node rect,.pedigree-node circle,.pedigree-node polygon{fill:var(--surface);stroke:var(--line);stroke-width:1.4;pointer-events:all;transition:fill .12s ease,stroke .12s ease}.pedigree-node text{fill:var(--ink);font-size:var(--text-2xs);font-family:var(--font-mono);direction:ltr}.pedigree-node.sex-m rect,.pedigree-node.sex-m circle,.pedigree-node.sex-m polygon{stroke:var(--accent)}.pedigree-node.sex-f rect,.pedigree-node.sex-f circle,.pedigree-node.sex-f polygon{stroke:var(--accent-2)}.pedigree-node.phantom rect,.pedigree-node.phantom circle,.pedigree-node.phantom polygon{stroke-dasharray:3 3;fill:var(--warn-bg)}.pedigree-node.phantom text{fill:var(--warn)}.pedigree-node.founder rect,.pedigree-node.founder circle,.pedigree-node.founder polygon{fill:var(--surface);stroke-dasharray:2 3}.pedigree-node.founder text{fill:var(--ink-2);font-style:italic}.pedigree-node.clickable{cursor:pointer}.pedigree-node.clickable:hover rect,.pedigree-node.clickable:hover circle,.pedigree-node.clickable:hover polygon{fill:var(--surface-2);stroke:var(--accent);stroke-width:2}.pedigree-node.self rect,.pedigree-node.self circle,.pedigree-node.self polygon{fill:color-mix(in srgb,var(--accent) 16%,var(--surface));stroke:var(--accent);stroke-width:2}.pedigree-node.self text{font-weight:700}.pedigree-more text{fill:var(--ink-2);font-size:var(--text-2xs);font-family:var(--font-mono)}a.pedigree-node rect.pedigree-hit{fill:transparent;stroke:none;pointer-events:all}.pedigree-legend{display:flex;flex-wrap:wrap;gap:6px 14px;justify-content:center;list-style:none;margin:0;padding:0;font-size:var(--text-xs);line-height:1.2;color:var(--ink-2);flex:none;opacity:0;visibility:hidden;max-height:0;overflow:hidden;transition:opacity .12s ease,visibility .12s ease,max-height .12s ease,padding-top .12s ease}.pedigree-tree-figure:hover .pedigree-legend,.pedigree-tree-figure:focus-within .pedigree-legend,.mating-plot-figure:hover .pedigree-legend,.mating-plot-figure:focus-within .pedigree-legend{opacity:1;visibility:visible;max-height:48px;padding-top:4px}.pedigree-legend li{display:inline-flex;flex-direction:row;align-items:center;gap:6px;white-space:nowrap}.pedigree-legend-swatch{display:block;width:12px;height:12px;flex-shrink:0;color:var(--ink-2)}.pedigree-legend-swatch rect,.pedigree-legend-swatch circle,.pedigree-legend-swatch polygon{stroke-width:.75}.pedigree-legend-swatch.self rect,.pedigree-legend-swatch.self circle,.pedigree-legend-swatch.self polygon{stroke-width:1}.pedigree-legend-swatch.founder rect,.pedigree-legend-swatch.founder circle,.pedigree-legend-swatch.founder polygon,.pedigree-legend-swatch.phantom rect,.pedigree-legend-swatch.phantom circle,.pedigree-legend-swatch.phantom polygon{stroke-dasharray:1.25 1.25}.pedigree-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}.pedigree-controls .field{display:flex;align-items:center;gap:8px;margin:0}.pedigree-controls .field label{font-size:var(--text-base);color:var(--ink-2);white-space:nowrap}.pedigree-controls select{width:auto}.pedigree-list-view{display:flex;flex-direction:column;gap:14px}.pedigree-list-gen h4{margin:0 0 8px;font-size:var(--text-sm);font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.03em}.pedigree-list-row{display:flex;flex-wrap:wrap;gap:8px}.pedigree-list-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);border:1px solid var(--line);font-size:var(--text-sm);color:var(--ink)}.pedigree-list-chip.sex-m{border-color:var(--accent)}.pedigree-list-chip.sex-f{border-color:var(--accent-2)}.pedigree-list-chip.phantom{border-style:dashed;background:var(--warn-bg);color:var(--warn)}.pedigree-list-chip:not(.clickable):not(.phantom){color:var(--ink-2);font-style:italic}.pedigree-list-chip.clickable{cursor:pointer}.pedigree-list-chip .animal-link{font-size:var(--text-sm)}.mating-plot-figure{margin:0;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;gap:10px;min-height:0}.mating-plot-canvas{position:relative;flex:1 1 0;min-height:0;width:100%;overflow:auto}.mating-plot-stage{min-height:100%;min-width:100%;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.mating-plot-empty-wrap{display:flex;flex-direction:column;gap:8px}.mating-plot-focal-idle{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:700;color:var(--ink)}.mating-plot-tree{--spine-x: 100px;--year-w: 80px;--connector: 30px;--mate-size: 40px;--child-slot: 40px;--line-w: 3px;--stem-h: 12px;--event-gap: 24px;position:relative;padding-top:50px;padding-bottom:12px;padding-right:12px;width:max-content;box-sizing:border-box}.mating-plot-figure.compact .mating-plot-tree{--spine-x: 76px;--year-w: 60px;--connector: 20px;--mate-size: 32px;--child-slot: 28px;--line-w: 2px;--stem-h: 10px;--event-gap: 16px;padding-top:42px}.mating-plot-spine{position:absolute;top:40px;bottom:0;left:var(--spine-x);width:var(--line-w);background:var(--ink-2);transform:translate(-50%);z-index:1}.mating-plot-figure.compact .mating-plot-spine{top:32px}.mating-plot-focal{position:absolute;top:0;left:var(--spine-x);transform:translate(-50%);z-index:10;line-height:0}.mating-plot-focal-id{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:8px;width:max-content;background:var(--ink);color:var(--surface);font-size:var(--text-xs);font-weight:600;line-height:1.2;padding:4px 7px;border-radius:var(--radius-sm);box-shadow:var(--shadow);white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:20;transition:opacity .12s ease,visibility .12s ease}.mating-plot-focal:hover .mating-plot-focal-id,.mating-plot-focal:focus-within .mating-plot-focal-id{opacity:1;visibility:visible}.mating-plot-figure:has(.mating-plot-focal:hover) .mating-plot-canvas,.mating-plot-figure:has(.mating-plot-focal:focus-within) .mating-plot-canvas{overflow:visible}.mating-plot-truncated{position:relative;width:var(--year-w);margin:0 0 6px;padding-right:12px;box-sizing:border-box;text-align:right;font-size:var(--text-2xs)}.mating-plot-event{position:relative;padding-left:var(--spine-x);margin-bottom:var(--event-gap);z-index:2}.mating-plot-event:last-child{margin-bottom:0}.mating-plot-year-container{position:absolute;left:0;top:8px;width:var(--year-w);text-align:right;padding-right:12px;box-sizing:border-box}.mating-plot-year{display:inline-block;font-size:var(--text-xs);font-weight:700;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:3px 7px;box-shadow:0 1px 2px #0e23460d}.mating-plot-mate-path{display:flex;align-items:center;height:var(--mate-size)}.mating-plot-connector-left,.mating-plot-connector-right{width:var(--connector);height:var(--line-w);background:var(--ink-2);flex:none}.mating-plot-connector-right{position:relative}.mating-plot-drop{position:absolute;right:0;top:0;width:var(--line-w);height:calc((var(--mate-size) - var(--line-w)) / 2 + var(--line-w));background:var(--ink-2);transform:translate(50%)}.mating-plot-mate{position:relative;display:flex;flex:none;line-height:0;width:var(--mate-size);height:var(--mate-size)}.mating-plot-mate svg{display:block}.mating-plot-progeny-list,.mating-plot-badge{margin-left:calc(var(--connector) * 2 + var(--mate-size) - var(--child-slot) / 2)}.mating-plot-progeny-list{display:flex;flex-wrap:nowrap;align-items:flex-start}.mating-plot-child-wrapper{position:relative;width:var(--child-slot);display:flex;flex-direction:column;align-items:center}.mating-plot-child-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;height:var(--line-w);background:var(--ink-2)}.mating-plot-child-wrapper:first-child:before{left:50%}.mating-plot-child-wrapper:last-child:before{right:50%}.mating-plot-child-wrapper:first-child:last-child:before{display:none}.mating-plot-child-wrapper:after{content:"";position:absolute;top:0;left:50%;width:var(--line-w);height:var(--stem-h);background:var(--ink-2);transform:translate(-50%)}.mating-plot-child{display:flex;align-items:center;justify-content:center;margin-top:var(--stem-h);z-index:2;line-height:0}.mating-plot-child svg{display:block}.mating-plot-death-mark{display:flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:22px;font-weight:700;line-height:1;color:var(--danger)}.mating-plot-death-mark.legend{width:12px;height:12px;font-size:12px}.mating-plot-figure.compact .mating-plot-death-mark:not(.legend){width:20px;height:20px;font-size:16px}.mating-plot-badge{display:inline-block;margin-top:8px;font-size:var(--text-xs);color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:3px 8px;white-space:nowrap}.mating-plot-badge.pending{color:var(--ink-2)}.mating-plot-badge.lost{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}.mating-plot-badge.cancelled{font-style:italic}.mating-plot-empty{margin:0}.mating-plot-figure.compact .mating-plot-canvas{min-height:200px}form.grid-form,div.grid-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;align-items:start}.grid-form>.btn{grid-column:1 / -1;justify-self:start;margin-top:4px}.mating-date-range{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mating-date-range input[type=date]{width:100%;min-width:0}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--ink-2)}.field input:not([type=checkbox]):not([type=radio]),.field select,.select-input{font:inherit;width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink);transition:border-color .12s ease,box-shadow .12s ease}.field input::placeholder{color:var(--ink-2);opacity:.65}.field input:not([type=checkbox]):not([type=radio]):hover,.field select:hover,.select-input:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.field input:focus,.field select:focus,.select-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.field input[readonly]{color:var(--ink-2);background:var(--surface);cursor:default}.field input:where(:not([type=checkbox]):not([type=radio])),.field select,.select-input,.inline-field-row input,.inline-field-row select{max-width:var(--field-text)}.field input[type=number],.field input[type=date],.field input[type=time],.field input[type=datetime-local],.field input[inputmode=decimal],.field input[inputmode=numeric],.inline-field-row input[type=number],.inline-field-row input[type=date],.inline-field-row input[inputmode=decimal],.inline-field-row input[inputmode=numeric],.trait-entry-card input[type=number]{max-width:var(--field-num)}.field input[maxlength="1"],.field input[maxlength="2"],.field input[maxlength="3"],.field input[maxlength="4"],.field input[maxlength="5"],.field input[maxlength="6"],.inline-field-row input[maxlength="1"],.inline-field-row input[maxlength="2"],.inline-field-row input[maxlength="3"],.inline-field-row input[maxlength="4"]{max-width:var(--field-code)}textarea{max-width:var(--field-prose)}.modal-card .field input:where(:not([type=checkbox]):not([type=radio])),.modal-card .field select,.modal-card .select-input{max-width:none}.modal-card .field input[type=number],.modal-card .field input[type=date],.modal-card .field input[type=time],.modal-card .field input[type=datetime-local],.modal-card .field input[inputmode=decimal],.modal-card .field input[inputmode=numeric]{max-width:var(--field-num)}.modal-card .field input[maxlength="1"],.modal-card .field input[maxlength="2"],.modal-card .field input[maxlength="3"],.modal-card .field input[maxlength="4"],.modal-card .field input[maxlength="5"],.modal-card .field input[maxlength="6"]{max-width:var(--field-code)}@media (max-width: 560px){.field input:where(:not([type=checkbox]):not([type=radio])),.field select,.select-input,.inline-field-row input,.inline-field-row select,textarea{max-width:none}}.field input:disabled,.field select:disabled{opacity:.55;cursor:not-allowed}.field input:autofill,.field input:-webkit-autofill,.field input:-webkit-autofill:hover,.field input:-webkit-autofill:focus,.field input:-webkit-autofill:active{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--surface-2) inset;box-shadow:0 0 0 1000px var(--surface-2) inset;caret-color:var(--ink);transition:background-color 9999s ease-in-out 0s,color 9999s ease-in-out 0s}.capability-picker{display:flex;flex-direction:column;gap:8px}.capability-option{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.capability-option:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.capability-option.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.capability-option input[type=checkbox]{margin-top:3px}.capability-option .capability-text{display:flex;flex-direction:column;gap:2px}.capability-option .capability-name{font-size:var(--text-base);font-weight:600;color:var(--ink);text-transform:none;letter-spacing:normal}.capability-option .capability-desc{font-size:var(--text-sm);font-weight:400;color:var(--ink-2);line-height:1.4;text-transform:none;letter-spacing:normal}.weight-row-remove{all:unset;cursor:pointer;flex:none;padding:8px 12px;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--ink-2);font-size:var(--text-lg);line-height:1;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.weight-row-remove:hover{background:var(--danger-bg);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.weight-row-remove:disabled{opacity:.35;cursor:not-allowed;background:none;border-color:transparent}.btn-add-row{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;text-align:center;padding:9px 14px;border:1px dashed var(--line);border-radius:var(--radius-sm);color:var(--ink-2);font-weight:600;font-size:var(--text-base);transition:border-color .12s ease,color .12s ease,background-color .12s ease}.btn-add-row svg{width:14px;height:14px;flex:none}.btn-add-row:hover{border-color:var(--accent);color:var(--accent-ink);background:var(--surface-2)}.btn-add-row:disabled{opacity:.5;cursor:not-allowed;border-color:var(--line);color:var(--ink-2);background:none}button.btn,label.btn,a.btn{all:unset;text-decoration:none;cursor:pointer;background:var(--accent-fill);color:var(--accent-fill-ink);font-weight:600;font-size:var(--text-base);padding:9px 18px;border-radius:var(--radius-sm);text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:filter .12s ease,transform .05s ease,background-color .12s ease,border-color .12s ease}button.btn svg,label.btn svg,a.btn svg{width:15px;height:15px;flex:none}button.btn.sm svg,label.btn.sm svg,a.btn.sm svg{width:13px;height:13px}button.btn:hover,label.btn:hover,a.btn:hover{filter:brightness(1.08)}button.btn:active,label.btn:active,a.btn:active{transform:translateY(1px)}button.btn:disabled,label.btn.disabled,a.btn:disabled{opacity:.5;cursor:not-allowed;filter:none;transform:none}button.btn.secondary,label.btn.secondary,a.btn.secondary{background:var(--surface-2);color:var(--ink);border:1px solid var(--line)}button.btn.secondary:hover,label.btn.secondary:hover,a.btn.secondary:hover{border-color:var(--accent);color:var(--accent-ink);filter:none}button.btn.danger,label.btn.danger,a.btn.danger{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger)}button.btn.danger:hover,label.btn.danger:hover,a.btn.danger:hover{filter:brightness(.95)}.warn-text{color:var(--warn)}button.btn.success,label.btn.success,a.btn.success{background:var(--good-bg);color:var(--good);border:1px solid color-mix(in srgb,var(--good) 35%,transparent)}button.btn.success:hover,label.btn.success:hover,a.btn.success:hover{border-color:var(--good);filter:none}button.btn.ghost,label.btn.ghost,a.btn.ghost{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--ink-2);font-weight:600;font-size:var(--text-base);padding:9px 14px;border-radius:var(--radius-sm);text-align:center;transition:background-color .12s ease,color .12s ease}button.btn.ghost:hover,label.btn.ghost:hover,a.btn.ghost:hover{background:var(--surface-2);color:var(--ink)}button.btn.ghost:disabled,label.btn.ghost.disabled,a.btn.ghost:disabled{opacity:.5;cursor:not-allowed}button.btn.sm,label.btn.sm,a.btn.sm{padding:5px 12px;font-size:var(--text-sm)}.pill{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-sm);padding:3px 9px;border-radius:var(--radius-pill);font-weight:600}.pill.proposed,.pill.neutral{background:var(--surface-2);color:var(--ink-2)}.pill.mated,.pill.good{background:var(--good-bg);color:var(--good)}.pill.abandoned,.pill.danger{background:var(--danger-bg);color:var(--danger)}.pill.warn{background:var(--warn-bg);color:var(--warn)}.pill-pair{display:inline-flex;flex-wrap:wrap;gap:6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14111a8c;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;overflow-y:auto}.modal-card{width:100%;margin:auto;cursor:default;max-height:88vh;overflow-y:auto}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.modal-head h2{margin:0}.add-trigger-row{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:16px}.add-trigger-row.spread{justify-content:space-between;align-items:center}.field.mt-sm{margin-top:var(--space-3)}.field.mt-md{margin-top:var(--space-4)}.section-note{margin-top:0;font-size:var(--text-sm)}.field-hint{margin-top:4px;font-size:var(--text-xs)}.grid-form.tight{margin-bottom:var(--space-2)}.confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.next-step-card{background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 10%,var(--surface)) 0%,var(--surface) 70%)}.next-step{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.next-step-icon{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:700;color:var(--accent-ink);line-height:1;flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.next-step-body{flex:1;min-width:220px}.next-step-body b{display:block;font-size:var(--text-lg);margin-bottom:4px}.next-step-body p{margin:0;color:var(--ink-2);font-size:var(--text-base);line-height:1.5}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.tabs .tab{all:unset;display:inline-flex;align-items:center;cursor:pointer;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-size:var(--text-base);font-weight:600;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.tabs .tab:hover{color:var(--ink);border-color:var(--accent)}.tabs .tab.active{background:var(--accent-fill);color:var(--accent-fill-ink);border-color:var(--accent-fill)}.banner{border-radius:var(--radius-md);padding:12px 16px;margin-bottom:16px;font-size:var(--text-base);line-height:1.5;border-inline-start-width:3px;border-inline-start-style:solid}.banner.warn{background:var(--warn-bg);color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);border-inline-start-color:var(--warn)}.banner.error{background:var(--danger-bg);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);border-inline-start-color:var(--danger)}.banner.good{background:var(--good-bg);color:var(--good);border:1px solid color-mix(in srgb,var(--good) 35%,transparent);border-inline-start-color:var(--good)}.banner.tip{background:var(--surface-2);color:var(--ink);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-inline-start-color:var(--accent)}.toast-host{position:fixed;top:16px;inset-inline-end:16px;z-index:200;display:flex;flex-direction:column;gap:8px;max-width:min(360px,calc(100vw - 32px))}.toast{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:0;box-shadow:var(--shadow)}.toast .lang-toggle{flex:none;padding:3px 8px}.table-empty-row{text-align:center;padding:24px 12px}.section-table{background:var(--surface)}.section-table th{vertical-align:middle}.section-table+.section-table{margin-top:var(--space-4)}.table-wrap td.col-end,.table-wrap th.col-end{text-align:end;white-space:nowrap}.table-wrap td.col-end .btn{vertical-align:middle}.table-wrap .cell-actions{display:inline-flex;gap:var(--space-2);align-items:center;justify-content:flex-end;flex-wrap:nowrap}.section-table .cell-stack{display:flex;flex-direction:column;gap:2px}.section-table .cell-stack .small{color:var(--ink-2)}.table-group-row>td{background:var(--surface-2);font-weight:600;padding-block:10px}.table-group-row .group-row-inner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);justify-content:space-between}.table-group-row .group-row-main{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.table-wrap tbody tr.table-group-row:hover>td{background:var(--surface-2)}@media (max-width: 900px){.table-wrap th.col-secondary,.table-wrap td.col-secondary{display:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.auth-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:20px}.auth-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:32px 28px;box-shadow:var(--shadow)}.auth-card h1{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.01em;margin:14px 0 4px}.auth-card .muted{margin:0;font-size:var(--text-base)}.auth-card .toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px}.auth-card .toolbar.with-brand{justify-content:space-between}.auth-card .toolbar .toolbar-actions{display:flex;align-items:center;gap:8px}.auth-card form{display:flex;flex-direction:column;gap:14px;margin-top:18px}.auth-card .form-actions{display:flex;gap:10px}.auth-card .form-actions .btn{flex:1}.auth-card .switch{margin-top:18px;font-size:var(--text-base);color:var(--ink-2);text-align:center}.auth-card .switch button{all:unset;cursor:pointer;color:var(--accent-ink);font-weight:600}.auth-card .switch button:hover{text-decoration:underline}.auth-card .banner{margin-top:16px}.auth-card.wide{max-width:440px}.auth-card-actions{margin-top:var(--space-4)}.muted{color:var(--ink-2)}.help-text{font-size:var(--text-sm);color:var(--ink-2);line-height:1.5;margin-top:6px}.skeleton{display:inline-block;min-width:3em;height:1em;border-radius:4px;background-color:color-mix(in srgb,var(--accent) 12%,var(--surface-2));background-image:repeating-linear-gradient(90deg,transparent 0,transparent 9px,color-mix(in srgb,var(--gold) 16%,transparent) 9px,color-mix(in srgb,var(--gold) 16%,transparent) 10px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,var(--surface-2)),color-mix(in srgb,var(--accent-2) 50%,var(--surface-2)) 35%,color-mix(in srgb,var(--gold) 55%,var(--surface)),color-mix(in srgb,var(--accent-2) 50%,var(--surface-2)) 65%,color-mix(in srgb,var(--accent) 18%,var(--surface-2)));background-size:20px 100%,220% 100%;background-position:0 0,200% 0;animation:skeleton-shimmer 1.6s ease-in-out infinite}.record-card-photo.skeleton{display:flex;min-width:0;height:auto;color:transparent}.record-row-photo.skeleton{display:flex;min-width:0;width:32px;height:32px;color:transparent}@keyframes skeleton-shimmer{0%{background-position:0 0,200% 0}to{background-position:20px 0,-200% 0}}.dna-loader{display:flex;align-items:center;justify-content:center;margin:var(--space-6) auto;overflow:hidden}.dna-loader-sm{width:14px;height:24px;margin:var(--space-2) auto}.dna-loader-md{width:28px;height:48px}.dna-loader-svg{width:100%;height:100%;display:block;overflow:hidden}.dna-strand-a{stroke:var(--accent)}.dna-strand-b{stroke:var(--accent-2);opacity:.75}.dna-rung{stroke:var(--gold);animation:dna-rung-pulse 1.2s ease-in-out infinite}@keyframes dna-rung-pulse{0%,to{opacity:.45}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background-image:none;background-color:color-mix(in srgb,var(--accent) 14%,var(--surface-2))}.dna-rung{animation:none}}.brand-mark{display:flex;align-items:center;gap:9px}.brand-mark img{height:26px;width:auto;display:block}.brand-mark .name{display:flex;flex-direction:column;font-weight:700;font-size:var(--text-md);color:var(--ink);line-height:1.2}.brand-mark .name .last-updated,.brand-mark .name .subtitle{font-weight:500;font-size:var(--text-xs);color:var(--ink-2);text-transform:none;letter-spacing:normal}.org-attribution{display:flex;align-items:center;gap:8px;padding-top:12px;margin-top:12px;border-top:2px solid var(--gold)}.org-attribution img{height:38px;width:auto;opacity:.9}.org-attribution .org-text{font-size:var(--text-xs);line-height:1.35;color:var(--ink-2)}.org-attribution .org-text b{display:block;color:var(--ink);font-weight:600;font-size:var(--text-xs)}.org-attribution .org-center-name{display:block;font-size:var(--text-2xs);color:var(--accent-ink);margin-top:2px}.auth-card .org-attribution{justify-content:center}.landing-screen{min-height:100vh;height:100vh;overflow:hidden;display:flex}.landing-marketing{position:relative;overflow:hidden;flex:1 1 50%;display:flex;flex-direction:column;align-items:center;padding:var(--space-7) var(--space-8);background:var(--hero-gradient);color:#fff}.landing-marketing:before,.landing-marketing:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.landing-marketing:before{inset-inline-end:-120px;top:-120px;width:340px;height:340px;background:radial-gradient(circle,rgba(244,184,51,.14),transparent 70%)}.landing-marketing:after{inset-inline-start:-100px;bottom:-140px;width:320px;height:320px;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 70%)}.landing-marketing-inner{position:relative;width:100%;max-width:520px;margin-block:auto;max-height:100%;overflow:auto}.landing-marketing .brand-mark,.landing-marketing .brand-mark .name{color:#fff}.landing-marketing .brand-mark .name .subtitle{color:#ffffffb8;max-width:34ch;line-height:1.35}.landing-tagline{font-size:var(--text-6xl);font-weight:800;line-height:1.18;letter-spacing:-.01em;margin:20px 0 12px;text-wrap:balance}.landing-subcopy{margin:0 0 28px;font-size:var(--text-xl);line-height:1.65;color:#ffffffc2;max-width:520px}.landing-features{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:16px}.landing-features li{display:flex;gap:14px;align-items:flex-start}.landing-features .icon{color:var(--gold);flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff1f;border-radius:var(--radius-sm)}.landing-features .icon svg{width:20px;height:20px}.landing-features b{display:block;font-size:var(--text-md);margin-bottom:2px}.landing-features p{margin:0;font-size:var(--text-base);color:#ffffffad;line-height:1.5}.landing-path{margin:0 0 24px;padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-md);background:#ffffff0f}.landing-path h2{font-size:var(--text-md);font-weight:700;margin:0 0 8px;color:var(--gold)}.landing-path p{margin:0;font-size:var(--text-base);line-height:1.7;color:#ffffffb8}.landing-marketing .org-attribution{position:relative;max-width:340px}.landing-marketing .org-attribution .org-text{color:#ffffff8c}.landing-marketing .org-attribution .org-text b{color:#fff}.landing-marketing .org-attribution .org-center-name{color:#ffffffb3}.landing-auth{flex:1 1 50%;display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--surface);overflow:auto}.landing-auth-top{display:flex;justify-content:flex-end;gap:8px;margin-bottom:28px}.landing-auth .auth-card{border:none;box-shadow:none;padding:0;background:transparent}@media (max-width: 900px){.landing-screen{flex-direction:column;height:auto;overflow:visible}.landing-marketing{order:2;padding:36px 24px;overflow:visible}.landing-marketing-inner{max-height:none;margin-block:0;overflow:visible}.landing-auth{order:1;padding:40px 20px 20px}}.welcome-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px}.welcome-card{max-width:440px}.page-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:8px}.animal-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.animal-card{display:flex;gap:12px;text-decoration:none;color:inherit}.animal-card:hover{border-color:var(--accent)}.animal-card-body{flex:1;min-width:0}.animal-id{font-size:var(--text-base);margin-bottom:4px}.animal-thumb{position:relative;border-radius:var(--radius-md);overflow:hidden;background:var(--surface-2);flex-shrink:0;display:flex;align-items:center;justify-content:center}.animal-thumb-sm{width:56px;height:56px}.animal-thumb-md{width:72px;height:72px}.animal-thumb-lg{width:120px;height:120px}.record-card-photo .animal-thumb,.record-row-photo .animal-thumb{width:100%;height:100%;border-radius:0}.record-row-photo .animal-thumb-sex-badge{display:none}.animal-thumb img{width:100%;height:100%;object-fit:cover;display:block}.animal-thumb-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.animal-thumb-fallback svg{display:block}.animal-thumb-sex-badge{position:absolute;bottom:2px;inset-inline-end:2px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:0;background:none;filter:drop-shadow(0 0 1px var(--surface))}.animal-thumb-sex-badge svg{display:block;overflow:visible}.animal-thumb-sm .animal-thumb-sex-badge{width:15px;height:15px}.animal-thumb-lg .animal-thumb-sex-badge{width:22px;height:22px}.animal-status-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.animal-status-tags.compact{gap:4px;margin-top:4px}.animal-status-tags.compact .pill{font-size:var(--text-2xs);padding:2px 7px}.animal-status-tags.compact .pill.icon-only{padding:4px;width:24px;height:24px;justify-content:center;gap:0}.animal-status-tags.compact .pill.icon-only svg{display:block}.animal-status-tags.grid{display:grid;grid-template-columns:repeat(2,max-content);gap:4px 6px}.pill.muted-tag{opacity:.55}.animal-status-tags .status-tag{position:relative;cursor:help;outline:none}.animal-status-tags .status-tag:hover,.animal-status-tags .status-tag:focus-visible{opacity:1}.animal-status-tags .status-tag:hover .hint-tooltip,.animal-status-tags .status-tag:focus-visible .hint-tooltip{opacity:1;visibility:visible}.animal-status-tags .status-tag .hint-tooltip{top:auto;bottom:calc(100% + 6px);z-index:30;display:flex;flex-direction:column;gap:2px;text-align:start}.hint-tooltip-title{font-weight:700;font-size:var(--text-sm)}.simple-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.list-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.list-row .spacer{flex:1}.task-row{padding:12px 14px}.inline-field-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inline-field-row input{flex:1;min-width:120px}.trait-row{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}.trait-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.trait-group-block{margin-bottom:20px}.trait-group-block:last-of-type{margin-bottom:0}.trait-group-block>h3{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}.trait-group-block .trait-row:last-child{border-bottom:none}.back-link{display:inline-block;margin-bottom:12px;color:var(--accent);text-decoration:none;font-size:var(--text-md)}.back-link:hover{text-decoration:underline}.quick-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.barcode-display{font-size:var(--text-2xl);letter-spacing:.05em;padding:8px 12px;background:var(--surface-2);border-radius:var(--radius-sm);display:inline-block}.btn.ghost{background:transparent;border:none;color:var(--ink-2)}.card-header-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}.card-header-row h2{margin:0}.record-flow-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.record-flow-card{margin-bottom:var(--space-4);max-width:28rem}.record-flow-trait-label{display:block;font-weight:600;font-size:var(--text-xl);margin-bottom:var(--space-2)}.record-flow-input{font-size:var(--text-4xl);padding:var(--space-3);text-align:center;font-variant-numeric:tabular-nums;font-weight:600}.record-flow-actions{display:flex;gap:10px;margin-top:var(--space-2);max-width:28rem}.record-flow-actions .btn{flex:0 1 auto;min-width:9rem;padding:12px 20px;font-size:var(--text-lg)}@media (max-width: 560px){.animal-card{flex-direction:column}.task-row{flex-direction:column;align-items:stretch}.task-row input,.task-row select{max-width:none;width:100%}.record-flow-actions{position:sticky;bottom:0;background:var(--bg);padding:12px 4px;margin:0 -4px;border-top:1px solid var(--line)}}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;pointer-events:none}.tutorial-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14111a8c;pointer-events:auto}.tutorial-spotlight{position:fixed;z-index:151;border-radius:var(--radius-sm);box-shadow:0 0 0 9999px #14111a8c;pointer-events:none;transition:top .2s ease,left .2s ease,width .2s ease,height .2s ease}.tutorial-popover{position:fixed;z-index:152;padding:20px;pointer-events:auto;box-shadow:0 8px 32px #14111a2e}.tutorial-step-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);margin:0 0 8px}.tutorial-title{font-size:var(--text-xl);margin:0 0 8px}.tutorial-body{font-size:var(--text-base);line-height:1.55;color:var(--ink-2);margin:0 0 16px}.tutorial-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.tutorial-nav-btns{display:flex;gap:8px;margin-inline-start:auto}.docs-layout{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:start;min-height:0}.docs-sidebar{position:sticky;top:16px;max-height:calc(100vh - 120px);overflow-y:auto;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.docs-sidebar-section+.docs-sidebar-section{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}.docs-sidebar-heading{margin:0 0 8px;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2)}.docs-sidebar-list{list-style:none;margin:0;padding:0}.docs-sidebar-link{display:block;padding:6px 10px;border-radius:var(--radius-sm);color:var(--ink-2);text-decoration:none;font-size:var(--text-base);line-height:1.4}.docs-sidebar-link:hover{background:var(--surface-2);color:var(--ink)}.docs-sidebar-link.active{background:var(--surface-2);color:var(--accent-ink);font-weight:600}.docs-content{min-width:0}.docs-article{padding:8px 4px 32px}.docs-prose{max-width:52rem;line-height:1.65;color:var(--ink)}.docs-prose h1{font-size:var(--text-6xl);margin:0 0 16px;line-height:1.25}.docs-prose h2{font-size:var(--text-4xl);margin:32px 0 12px;padding-bottom:6px;border-bottom:1px solid var(--line)}.docs-prose h3{font-size:var(--text-2xl);margin:24px 0 8px}.docs-prose p,.docs-prose ul,.docs-prose ol{margin:0 0 14px}.docs-prose ul,.docs-prose ol{padding-inline-start:1.4rem}.docs-prose li{margin-bottom:4px}.docs-prose a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:2px}.docs-prose a:hover{color:var(--accent)}.docs-prose blockquote{margin:16px 0;padding:12px 16px;border-inline-start:4px solid var(--accent);background:var(--surface-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--ink-2)}[dir=rtl] .docs-prose blockquote{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.docs-fallback-banner{margin-bottom:16px}.docs-prose blockquote p:last-child{margin-bottom:0}.docs-prose code{font-family:var(--font-mono);font-size:.88em;background:var(--surface-2);padding:2px 6px;border-radius:4px}.docs-prose pre{margin:16px 0;padding:14px 16px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-x:auto}.docs-prose pre code{padding:0;background:none;font-size:var(--text-base)}.docs-mermaid{margin:16px 0;padding:14px 16px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-x:auto;text-align:center}.docs-mermaid svg{max-width:100%}.docs-mermaid-loading{min-height:80px}.docs-mermaid-fallback{margin:16px 0;padding:14px 16px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-x:auto}.docs-mermaid-fallback code{padding:0;background:none;font-size:var(--text-base)}.docs-prose table{width:100%;border-collapse:collapse;margin:16px 0;font-size:var(--text-md)}.docs-prose th,.docs-prose td{border:1px solid var(--line);padding:8px 12px;text-align:start}.docs-prose th{background:var(--surface-2);font-weight:600}.docs-prose hr{border:none;border-top:1px solid var(--line);margin:28px 0}@media (max-width: 900px){.docs-layout{grid-template-columns:1fr}.docs-sidebar{position:static;max-height:none}}.trait-metric-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:16px 18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;min-width:0}.index-card{padding:14px 14px 12px;gap:8px}.trait-metric-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.trait-metric-card-title{display:flex;flex-direction:column;gap:2px;min-width:0}.trait-metric-card-title h3{margin:0;font-size:var(--text-md);font-weight:700;color:var(--ink);line-height:1.3}.trait-entry-title-row{display:flex;align-items:center;gap:4px;min-width:0}.trait-entry-title-row h3{min-width:0}.trait-info{position:relative;flex-shrink:0}.trait-info-trigger{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:999px;background:transparent;color:var(--ink-2);cursor:pointer}.trait-info-trigger:hover,.trait-info-trigger[aria-expanded=true]{background:var(--surface-2);color:var(--accent)}.trait-info-panel{position:absolute;z-index:24;top:calc(100% + 6px);inset-inline-start:0;width:min(260px,72vw);padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow);text-align:start}.trait-info-heading{margin:0 0 8px;font-size:var(--text-xs);font-weight:700;color:var(--ink)}.trait-info-panel dl{margin:0;display:flex;flex-direction:column;gap:8px}.trait-info-panel dt{margin:0 0 2px;font-size:var(--text-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2)}.trait-info-panel dd{margin:0;font-size:var(--text-sm);color:var(--ink);line-height:1.4}.trait-card-grid>.trait-entry-card:has(.trait-info-trigger[aria-expanded=true]),.trait-card-grid>.trait-flip:has(.trait-info-trigger[aria-expanded=true]){z-index:3}.trait-metric-card .trait-source-chip{flex-shrink:0;font-size:var(--text-2xs);padding:2px 8px}.trait-metric-value{margin:0;font-size:var(--text-4xl);font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.2}.trait-metric-value.compact{font-size:var(--text-xl)}.trait-metric-card-tools{display:flex;align-items:flex-start;gap:4px;flex-shrink:0}.trait-card-menu{position:relative}.trait-card-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:-4px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ink-2);cursor:pointer;opacity:0;transition:opacity .15s ease,background .12s ease,color .12s ease}.trait-metric-card:hover .trait-card-menu-trigger,.trait-metric-card:focus-within .trait-card-menu-trigger,.trait-card-menu-trigger:focus-visible,.trait-card-menu-trigger[aria-expanded=true]{opacity:1}.trait-card-menu-trigger:hover,.trait-card-menu-trigger[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.trait-card-menu-trigger:disabled{cursor:not-allowed}.trait-card-menu-list{min-width:148px;top:calc(100% + 4px)}.trait-card-cell:has(.trait-card-menu-trigger[aria-expanded=true]){z-index:2}@media (hover: none){.trait-card-menu-trigger{opacity:.55}}.dual-range{width:100%}.dual-range-track{position:relative;height:14px;margin:2px 0 4px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--ink) 8%,var(--surface-2))}.dual-range-breed{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--series-1) 28%,var(--surface-2))}.dual-range-breed.point{inset:auto;top:0;bottom:0;width:8px;min-width:8px;transform:translate(-50%)}.dual-range-farm{position:absolute;top:2px;bottom:2px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--series-2) 55%,transparent);min-width:4px}.dual-range-farm.point{transform:translate(-50%)}.dual-range-marker{position:absolute;top:50%;width:12px;height:12px;margin-left:-6px;margin-top:-6px;border-radius:50%;background:var(--accent);border:2px solid var(--surface);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent);z-index:2}.dual-range-marker.outside-farm{background:var(--ink);box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 35%,transparent)}.dual-range-labels{display:flex;justify-content:space-between;font-size:var(--text-2xs);line-height:1.2}.dual-range .dual-range-labels{display:block;position:relative;height:1.2em}.dual-range .dual-range-labels span{position:absolute;top:0;white-space:nowrap}.dual-range .dual-range-labels.farm{color:color-mix(in srgb,var(--series-2) 75%,var(--ink))}.dual-range .dual-range-labels.breed{color:color-mix(in srgb,var(--series-1) 70%,var(--ink-2))}.f-gauge{--f-hue: var(--good);display:inline-flex;flex-direction:column;align-items:center;line-height:1}.f-gauge.caution{--f-hue: var(--gold)}.f-gauge.high{--f-hue: var(--warn)}.f-gauge.unknown{--f-hue: var(--line)}.f-gauge.cell{width:64px}.f-gauge.md{width:140px}.f-gauge-svg{display:block;width:100%;height:auto;overflow:visible}.f-gauge-band{fill:none}.f-gauge-band.ok{stroke:var(--good)}.f-gauge-cap.ok{fill:var(--good)}.f-gauge-band.mid{stroke:var(--gold)}.f-gauge-band.high{stroke:var(--warn)}.f-gauge-cap.high{fill:var(--warn)}.f-gauge.unknown .f-gauge-band,.f-gauge.unknown .f-gauge-cap{opacity:.38}.f-gauge-needle{stroke:var(--ink)}.f-gauge-hub{fill:var(--ink)}.f-gauge.unknown .f-gauge-needle{display:none}.f-gauge.unknown .f-gauge-hub{fill:var(--ink-2)}.f-gauge-value{display:inline-flex;align-items:center;gap:3px;margin-top:-2px;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--ink)}.f-gauge.md .f-gauge-value{font-size:var(--text-xl);font-weight:700;margin-top:-6px}.f-gauge.unknown .f-gauge-value{color:var(--ink-2)}.f-gauge-caption{margin-top:4px;text-align:center}.dual-gauge{width:100%;max-width:200px;margin-inline:auto}.dual-gauge-stage{position:relative}.dual-gauge-svg{display:block;width:100%;height:auto;overflow:visible}.dual-gauge-value{position:absolute;inset-inline:0;top:58%;margin:0;text-align:center;font-size:var(--text-2xl);font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink);line-height:1;pointer-events:none}.dual-gauge-breed{stroke:color-mix(in srgb,var(--series-1) 32%,var(--surface-2))}.dual-gauge-farm{stroke:color-mix(in srgb,var(--series-2) 72%,transparent)}.dual-gauge-end{fill:var(--line)}.dual-gauge-marker{fill:var(--accent);stroke:var(--surface);stroke-width:2}.dual-gauge-marker.outside-farm{fill:var(--ink)}.dual-range-legend{display:flex;gap:10px;margin-top:4px;font-size:var(--text-2xs);color:var(--ink-2)}.dual-range-legend span{display:inline-flex;align-items:center;gap:4px}.dual-range-legend .legend-dot{width:7px;height:7px;border-radius:50%;flex:none}.dual-range-legend .legend-dot.breed{background:color-mix(in srgb,var(--series-1) 55%,var(--surface-2))}.dual-range-legend .legend-dot.farm{background:color-mix(in srgb,var(--series-2) 75%,transparent)}.dual-range-legend.center{justify-content:center;gap:16px}.linear-scale{width:100%}.linear-scale-extremes{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-xs);color:var(--ink-2);font-weight:600;margin-bottom:4px}.linear-scale-extreme{max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linear-scale-track{position:relative;height:22px;margin:2px 0 6px}.linear-scale-baseline{position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;background:var(--line)}.linear-scale-breed{position:absolute;top:4px;bottom:4px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--series-1) 28%,var(--surface-2));min-width:4px}.linear-scale-farm{position:absolute;top:7px;bottom:7px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--series-2) 55%,transparent);min-width:3px}.linear-scale-breed.point,.linear-scale-farm.point{transform:translate(-50%)}.linear-scale-tick{position:absolute;top:50%;width:2px;height:14px;margin-top:-7px;margin-left:-1px;background:var(--ink-2);border-radius:1px;z-index:1}.linear-scale-marker{position:absolute;top:50%;width:14px;height:14px;margin-left:-7px;margin-top:-7px;border-radius:50%;background:var(--accent);border:2px solid var(--surface);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent);z-index:2}.linear-scale-marker.outside-farm{background:var(--ink);box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 35%,transparent)}.trait-card-grid{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0 4px;align-items:stretch}.trait-group-block .trait-card-grid{margin-top:8px}.trait-card-grid>.trait-metric-card,.trait-card-grid>.trait-card-cell{flex:1 1 240px;min-width:min(100%,240px)}.trait-card-grid>.index-card{flex:0 1 260px;max-width:280px;min-width:min(100%,220px)}.trait-card-grid>.linear-trait-card,.trait-card-grid>.trait-card-cell:has(.linear-trait-card){flex-basis:100%}.trait-card-cell{display:flex;flex-direction:column;min-width:0;position:relative}.trait-flip{perspective:1000px}.trait-flip-inner{flex:1 1 auto;display:grid;grid-template-rows:minmax(0,1fr);transform-style:preserve-3d;transition:transform .55s cubic-bezier(.4,.12,.2,1);min-height:100%}.trait-flip.flipped .trait-flip-inner{transform:rotateY(180deg)}.trait-flip-face{grid-area:1 / 1;min-width:0;display:flex;flex-direction:column;min-height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden}.trait-flip-face>.trait-metric-card{flex:1 1 auto}.trait-flip-back{transform:rotateY(180deg)}.trait-flip-front{pointer-events:auto}.trait-flip.flipped .trait-flip-front,.trait-flip-back{pointer-events:none}.trait-flip.flipped .trait-flip-back{pointer-events:auto}.trait-flip-face{visibility:visible;transition:visibility 0s linear 0s}.trait-flip:not(.flipped) .trait-flip-back,.trait-flip.flipped .trait-flip-front{visibility:hidden;transition-delay:.55s}html[dir=rtl] .trait-flip.flipped .trait-flip-inner,html[dir=rtl] .trait-flip-back{transform:rotateY(-180deg)}@media (prefers-reduced-motion: reduce){.trait-flip-inner{transition:none}.trait-flip:not(.flipped) .trait-flip-back,.trait-flip.flipped .trait-flip-front{transition-delay:0s}}.trait-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;flex-wrap:wrap}.trait-entry-card{border-style:dashed}.trait-entry-card input[type=number]{width:100%;font-size:var(--text-2xl);font-weight:700;font-variant-numeric:tabular-nums}.trait-entry-card .btn{align-self:flex-start}.trait-entry-actions{display:flex;align-items:center;gap:8px;margin-top:auto}.trait-metric-card .small{font-size:var(--text-sm)}.trait-metric-card-footer{margin-top:2px}.calc-trait-breakdown{display:flex;flex-direction:column;gap:6px;margin-top:4px}.calc-trait-breakdown .simple-list{gap:4px}.calc-trait-breakdown .pill{vertical-align:middle}.audit-trail-caption{display:block;background:none;border:none;padding:0;margin-top:2px;font:inherit;color:inherit;text-align:start;cursor:pointer}.audit-trail-caption:hover{text-decoration:underline}.audit-trail-caption.compact{margin-top:0;font-size:var(--text-2xs);line-height:1.25;font-weight:500;color:var(--ink-2)}.audit-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.audit-history-list li{font-size:var(--text-sm)}.audit-diff-block{background:var(--surface-2);border-radius:var(--radius-sm);padding:10px 12px;font-size:var(--text-xs);white-space:pre-wrap;word-break:break-word;max-height:240px;overflow-y:auto;margin:4px 0 12px}.print-label-actions{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}.print-label-actions .muted{margin:0;flex-basis:100%}.print-label-inline{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.sample-label-preview-well{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px;background:var(--surface-2);border-radius:var(--radius);width:100%}.sample-label-preview-stack{display:flex;flex-direction:column;align-items:center;gap:16px}.sample-label-preview{margin:0;width:51mm;height:32mm;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.sample-label-preview img{display:block;width:51mm;height:32mm}.sample-label-preview-meta{margin:0}.sample-label-preview-footer{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:16px}.offline-banner{position:sticky;top:0;z-index:50;margin:0 0 12px;border-radius:0 0 8px 8px;text-align:center}.load-error{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.queue-farm-group{margin-block:12px}.queue-farm-head{margin:0 0 6px;font-size:.95rem}.queue-new-pill{margin-inline-start:8px;font-size:.7rem}.unlock-reason{max-width:320px;font-style:italic;color:var(--muted)}.admin-view-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.outbox-pill{display:inline-flex;align-items:center;gap:6px}.outbox-row{align-items:flex-start}.queue-pending-pill{margin-inline-start:8px;font-size:.7rem}.slot-strip{display:inline-flex;flex-wrap:wrap;gap:3px;max-width:16em}.slot-dot{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid transparent;vertical-align:middle}.slot-dot.on_time{background:var(--good)}.slot-dot.late{background:var(--warn)}.slot-dot.missed{background:var(--danger)}.slot-dot.due{background:var(--surface);border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.slot-dot.upcoming{background:var(--surface-2);border-color:var(--line)}.slot-legend{display:flex;flex-wrap:wrap;gap:4px 14px}.animal-actions-menu .menu-item-hint{display:block;font-size:var(--text-2xs);font-weight:400;color:var(--ink-2);white-space:normal;max-width:22em;margin-top:2px}.birth-baby-row{display:grid;grid-template-columns:1.5em minmax(0,1fr) minmax(0,1.4fr) auto;gap:8px;align-items:center;margin-bottom:6px}button:focus-visible,button.btn:focus-visible,label.btn:focus-visible,a.btn:focus-visible,.navlink:focus-visible,.sidebar-account-btn:focus-visible,.lang-toggle:focus-visible,.icon-btn:focus-visible,.menu-toggle:focus-visible,.btn-add-row:focus-visible,.animal-actions-trigger:focus-visible,.trait-card-menu-trigger:focus-visible,.sort-btn:focus-visible,[role=button]:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px!important}button.btn:not(.secondary):not(.ghost):focus-visible,label.btn:not(.secondary):not(.ghost):focus-visible,a.btn:not(.secondary):not(.ghost):focus-visible{outline-color:var(--ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 35%,transparent)}@media (max-width: 900px){.landing-screen{overflow-x:hidden;max-width:100%}.landing-marketing:before,.landing-marketing:after{display:none}.landing-marketing,.landing-auth{max-width:100%;min-width:0}}@media (max-width: 780px){.app-shell{overflow-x:hidden}.main{max-width:100%;min-width:0}.animal-identity-head{flex-wrap:wrap}.animal-id-heading{flex-wrap:wrap;overflow-wrap:anywhere;min-width:0}.animal-actions{flex:1 1 100%}.animal-actions .animal-actions-trigger{width:100%}}@media (pointer: coarse){button,button.btn,label.btn,a.btn,select,.lang-toggle,.menu-toggle,.sidebar-account-btn,.navlink,.icon-btn,.animal-actions-trigger,.trait-card-menu-trigger,.view-mode-toggle button,.table-pager button{min-height:44px}.icon-btn,.lang-toggle,.menu-toggle,.trait-card-menu-trigger{min-width:44px}.table-wrap th .sort-btn{min-height:44px;width:100%;justify-content:flex-start}.table-wrap th.num .sort-btn{justify-content:flex-end}input[type=checkbox]{width:22px;height:22px}.task-row .btn,.task-row a.btn{min-height:44px}.record-flow-actions .btn{min-height:52px;flex:1}td .row-link,.list-row .row-link,.simple-list .mono{display:inline-flex;align-items:center;min-height:32px}.selection-plot-bar-row{min-height:44px}.selection-hist-plot{min-height:120px}}body.modal-open{overflow:hidden}.modal-backdrop:focus{outline:none}.eval-check-card{margin:14px 0 0;padding:14px 16px}.eval-check-card h3{margin:0 0 8px;font-size:var(--text-md);font-weight:700}.eval-check-list{margin:0;padding-inline-start:18px;display:flex;flex-direction:column;gap:6px;font-size:var(--text-base)}.range-inputs{display:inline-flex;align-items:center;gap:6px}.range-inputs .num-input{width:5.5em}.task-others{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.task-others>summary{cursor:pointer;font-weight:600;padding:8px 0}.role-pill{min-height:32px;padding-inline:12px;cursor:pointer}@media (pointer: coarse){.role-pill{min-height:44px}}.link-button{all:unset;cursor:pointer;color:var(--accent-ink);text-decoration:underline;font:inherit}.link-button:disabled{opacity:.6;cursor:default}.required-mark{color:var(--danger);font-weight:700}.register-missing-hint{margin:0;align-self:center}@media (pointer: coarse){.link-button,.back-link,.view-mode-toggle button,.pedigree-view-toggle button,.tab{min-height:44px;display:inline-flex;align-items:center}.pedigree-tree a,.mating-plot-figure a,.pedigree-node{min-width:44px;min-height:44px}}a.btn,a.btn:hover{text-decoration:none}a.btn:hover{filter:brightness(1.08)}button.btn.ghost.danger,a.btn.ghost.danger,label.btn.ghost.danger{color:var(--danger)}button.btn.ghost.danger:hover,a.btn.ghost.danger:hover{background:var(--danger-bg);color:var(--danger)}td.col-actions>*,.list-row .btn{vertical-align:middle}.record-card-actions .pill,td.col-actions .pill{min-height:28px}.task-founder-card .card-header-row{align-items:flex-start;gap:var(--space-4)}.task-founder-card .card-header-row>div:last-child{text-align:end}.task-row{padding:var(--space-3) var(--space-3);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--line)}.task-founder-card .simple-list{gap:0}.task-founder-card .simple-list .task-row:first-child{border-top:1px solid var(--line);margin-top:var(--space-2)}.task-row>div:first-child{min-width:0}.task-row .btn{flex:none}.animal-thumb-fallback .pedigree-node rect,.animal-thumb-fallback .pedigree-node circle,.animal-thumb-fallback .pedigree-node polygon{fill:color-mix(in srgb,var(--accent) 12%,transparent);stroke:color-mix(in srgb,var(--accent) 45%,transparent);stroke-width:1.2}.animal-thumb:has(.animal-thumb-fallback) .animal-thumb-sex-badge{display:none}.animal-identity-photo-btn{font-size:var(--text-sm);color:var(--accent-ink);font-weight:600}.empty-state{border:1px dashed var(--line);border-radius:var(--radius-md);padding:var(--space-5) var(--space-4);color:var(--ink-2);font-size:var(--text-base);text-align:center;margin:0 0 var(--space-4)}.task-section>p.muted,.task-section>.muted:not(.small){margin:0 0 var(--space-4)}.table-wrap{position:relative;background:linear-gradient(to right,var(--surface) 30%,transparent),linear-gradient(to right,transparent,var(--surface) 70%) 100% 0,radial-gradient(farthest-side at 0 50%,var(--scroll-edge),transparent),radial-gradient(farthest-side at 100% 50%,var(--scroll-edge),transparent) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}.docs-prose table{display:block;overflow-x:auto;max-width:100%;width:max-content;min-width:100%}.docs-prose code{font-size:var(--text-sm)}.slot-dot,.selection-plot-swatch,.legend-dot{border-radius:var(--radius-mark)}.stat-tile.compact{padding:var(--space-3) var(--space-4)}.stat-tile.compact .label{font-size:var(--text-xs);letter-spacing:.06em}.stat-tile.compact .value{font-size:var(--text-3xl);word-break:normal}.animal-identity-status .animal-status-tags{gap:var(--space-2)}.animal-identity-status .status-tag{cursor:help}.pedigree-tree-figure.lone{min-height:0;flex:1 1 auto;justify-content:center}.pedigree-lone{margin:0;align-self:center;max-width:46ch}.record-card-actions .btn.ghost,.record-row-actions .btn.ghost,td.col-actions .btn.ghost{border:1px solid var(--line);padding:5px 12px}.record-card-actions .btn.ghost.danger,.record-row-actions .btn.ghost.danger,td.col-actions .btn.ghost.danger{border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.record-card-actions .btn.ghost:hover,.record-row-actions .btn.ghost:hover,td.col-actions .btn.ghost:hover{border-color:var(--accent)}@media (pointer: coarse){.view-toggle-btn{min-height:44px;padding-inline:14px}.table-pager button{min-height:44px}}.hint-tooltip{max-width:min(18rem,calc(100vw - 2 * var(--space-4)));overflow-wrap:anywhere}@media (max-width: 560px){.animal-status-tags .status-tag .hint-tooltip{inset-inline:auto;inset-inline-end:0}}p a:not(.btn):not(.navlink):not(.row-link),li a:not(.btn):not(.navlink):not(.row-link):not(.cycle-stage),.lede a:not(.btn),.help-text a:not(.btn),.empty-state a:not(.btn),.banner a:not(.btn){text-decoration:underline;text-underline-offset:2px}.mating-scope{display:flex;align-items:center;gap:8px;margin:0 0 12px}.mating-scope label{margin:0;white-space:nowrap}.mating-scope select{max-width:320px}.count-link{display:inline-block;min-width:2.2em;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent-ink);font-weight:700;text-align:center;text-decoration:none}.count-link:hover,.count-link:focus-visible{background:color-mix(in srgb,var(--accent) 22%,var(--surface))}td.col-gauge{width:72px}.mating-male-summary{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.mating-male-summary-body{flex:1;min-width:240px;display:flex;flex-direction:column;gap:10px}.mating-male-summary .tabs{margin:0}.pair-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap}.pair-title{margin:0 0 14px;text-align:start}.pair-plan-grid{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}.pair-plan-body{flex:1;min-width:260px;display:flex;flex-direction:column;gap:12px}.pair-plan-strategy{margin:0;max-width:70ch;line-height:1.5}.pair-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:20px}.pair-split>.card{margin-bottom:0}@media (max-width: 900px){.pair-split{grid-template-columns:minmax(0,1fr)}}.animal-panel{display:flex;flex-direction:column;gap:10px;min-width:0}.animal-panel>.section-label{margin:0}.animal-panel h3{margin:10px 0 2px}.animal-panel-head{display:flex;align-items:center;gap:12px}.animal-panel-title{display:flex;flex-direction:column;gap:2px;min-width:0}.animal-panel-title .animal-id-heading{font-size:var(--text-2xl);overflow-wrap:anywhere}.animal-panel-highlights{gap:8px 24px}.animal-panel .animal-identity-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:8px 14px}.animal-panel-indexes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px}.animal-panel-index-missing{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px dashed var(--line);border-radius:8px}.animal-panel-traits{width:100%;border-collapse:collapse;font-size:var(--text-base)}.animal-panel-traits th,.animal-panel-traits td{padding:4px 0;border-bottom:1px solid var(--line);text-align:start;font-weight:400}.animal-panel-traits td.num{text-align:end;white-space:nowrap;padding-inline-start:12px}.animal-panel-traits .animal-panel-traits-group th{padding-top:10px;font-size:var(--text-xs);font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.02em}.animal-panel-more summary{cursor:pointer;font-weight:600;margin:6px 0}.plan-doc h2{display:inline-flex;align-items:center;gap:8px}.plan-doc-frame{display:block;width:100%;height:75vh;min-height:480px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2)}@media (max-width: 900px){.plan-doc-frame{display:none}}
