.more-page{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.more-page .records-block{grid-template-columns:minmax(0,1fr)}.more-page__back{min-height:var(--tap);font-size:var(--text-sm);justify-self:start;align-items:center;margin:-8px 0 -12px;font-weight:700;display:inline-flex}.more-page__back:before{content:"‹";margin-right:6px;font-size:1.25em;line-height:1}.more-page__logout{justify-self:start}.more-page__leave{border-top:1px solid var(--line);margin:32px 0 0;padding-top:16px}.more-page__leave-link{min-height:44px;color:var(--lethal);align-items:center;display:inline-flex}.more-facts>div{grid-template-columns:6em minmax(0,1fr)}.more-facts dd{overflow-wrap:anywhere;min-width:0}.more__links{gap:8px;display:grid}.more__links .btn{text-align:center;justify-self:start;max-width:100%;padding-block:8px}.more-menu{gap:20px;display:grid}.more-menu__group{gap:6px;min-width:0;display:grid}.more-menu__title{color:var(--muted);font-size:var(--text-sm);margin:0;padding:0 4px;font-weight:700}.more-menu__list{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.more-menu__list>li+li{border-top:1px solid var(--line)}.more-menu__item{min-height:56px;color:var(--ink);align-items:center;gap:12px;padding:8px 12px 8px 16px;text-decoration:none;display:flex}.more-menu__item:hover{background:var(--surface-soft)}.more-menu__item:focus-visible{outline-offset:-3px}.more-menu__item[aria-current=page]{background:var(--primary-soft)}.more-menu__text{flex:1;min-width:0;display:grid}.more-menu__label{overflow-wrap:anywhere;font-weight:700}.more-menu__hint{color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.4}.more-menu__chevron{color:var(--muted);flex:none;font-size:1.5rem;line-height:1}.more-menu__item--danger .more-menu__label{color:var(--lethal)}.app__menu-btn{width:var(--tap);height:var(--tap);border-radius:var(--radius-pill);color:var(--ink);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;margin-left:auto;margin-right:-8px;padding:0;display:grid}.app__menu-btn:hover,.app__menu-btn[aria-expanded=true]{background:var(--primary-soft)}.drawer{z-index:50;position:fixed;inset:0}.drawer__backdrop{background:#0006;animation:.16s ease-out drawer-fade;position:absolute;inset:0}.drawer__panel{width:min(360px,88vw);padding:max(8px, env(safe-area-inset-top)) var(--gutter) max(24px, env(safe-area-inset-bottom));overscroll-behavior:contain;background:var(--paper);grid-template-columns:minmax(0,1fr);align-content:start;gap:16px;animation:.2s ease-out drawer-in;display:grid;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-8px 0 24px #0000002e}.drawer__head{min-height:var(--tap);justify-content:space-between;align-items:center;gap:8px;display:flex}.drawer__logout{justify-self:start}.drawer__title{font-size:var(--text-lg);margin:0}@keyframes drawer-in{0%{transform:translate(100%)}}@keyframes drawer-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.drawer__panel,.drawer__backdrop{animation:none}}.offline-queue{border-left:4px solid var(--yolk);border-radius:var(--radius-card);background:color-mix(in srgb, var(--yolk) 12%, var(--surface));gap:8px;margin-bottom:16px;padding:10px 14px;display:grid}.offline-queue__pending{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.offline-queue__count{align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.offline-queue__dot{background:var(--yolk);border-radius:50%;width:10px;height:10px}.offline-queue__message{color:var(--muted);font-size:var(--text-sm);margin:0}.offline-queue__batches{color:var(--muted);font-size:var(--text-sm);flex-basis:100%;margin:0;padding-left:18px}.offline-queue__failed{gap:8px;margin:0;padding:0;list-style:none;display:grid}.offline-queue__failed li{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:8px;display:flex}.offline-queue__failed p{color:var(--lethal);font-size:var(--text-sm);flex:14em;margin:0}.app__bar{z-index:10;padding:max(8px, env(safe-area-inset-top)) var(--gutter) 8px;background:var(--paper);border-bottom:1px solid var(--line);align-items:center;gap:12px;display:flex;position:sticky;top:0}.app__brand{font-family:var(--font-mono);color:var(--primary);font-weight:700;text-decoration:none}.app__team{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);color:var(--muted);flex:1;overflow:hidden}.app__main{max-width:760px;padding:16px var(--gutter) 96px;margin:0 auto}.app__offline{border-radius:var(--radius-card);background:color-mix(in srgb, var(--yolk) 12%, var(--surface));margin:0 0 12px;padding:6px 12px;font-size:.875rem}.app-loading{padding:30vh var(--gutter);text-align:center;color:var(--muted);justify-items:center;gap:12px;display:grid}.app-loading:before{content:"";background:var(--primary);width:8px;height:8px;box-shadow:-16px 0 0 var(--primary-soft), 16px 0 0 var(--primary-soft);border-radius:50%;animation:.9s ease-in-out infinite app-loading}@keyframes app-loading{0%,to{box-shadow:-16px 0 0 var(--primary), 16px 0 0 var(--primary-soft);background:var(--primary-soft)}50%{box-shadow:-16px 0 0 var(--primary-soft), 16px 0 0 var(--primary);background:var(--primary)}}.app__nav{z-index:10;padding-bottom:env(safe-area-inset-bottom);background:var(--paper);border-top:1px solid var(--line);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.app__nav-link{min-width:0;min-height:60px;color:var(--muted);font-size:var(--text-xs);-webkit-tap-highlight-color:transparent;align-content:center;justify-items:center;gap:2px;padding-block:6px 4px;font-weight:700;line-height:1.2;text-decoration:none;display:grid}.app__nav-link>span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.app__nav-icon{box-sizing:content-box;border-radius:var(--radius-pill);padding:3px 16px;font-size:22px;transition:background-color .15s}.app__nav-link .icon[data-icon]{color:inherit}.app__nav-link[aria-current=page]{color:var(--primary)}.app__nav-link[aria-current=page] .app__nav-icon{background:var(--primary-soft)}.app__team-select{border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);min-width:0;max-width:45vw;min-height:36px;color:var(--chip-ink);font:inherit;font-size:var(--text-md);padding:0 10px}.legal{max-width:760px;padding:24px var(--gutter) 64px;margin:0 auto;line-height:1.8}.legal__back{font-size:var(--text-sm);margin-bottom:16px}.legal__note{border-left:4px solid var(--primary);background:var(--primary-soft);margin:0 0 16px;padding:10px 14px}.legal__doc h1{font-size:var(--text-xl);line-height:1.4}.legal__doc h2{border-bottom:1px solid var(--line);font-size:var(--text-lg);margin-top:2em;padding-bottom:4px}.legal__doc h3{font-size:var(--text-md);margin-top:1.5em}.legal__doc ol,.legal__doc ul{padding-left:1.5em}.legal__doc blockquote{border-left:4px solid var(--line);color:var(--muted);margin:1em 0;padding:4px 14px}.legal__doc code{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.9em}.legal__doc a{overflow-wrap:anywhere}.legal__table{overflow-x:auto}.legal__table table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.legal__table th,.legal__table td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}.legal__table th{background:var(--surface-soft)}.legal__table td:first-child{min-width:8em}.legal-consent{color:var(--muted);font-size:var(--text-sm);margin:20px 0 0}.login{max-width:420px;padding:12vh var(--gutter) 48px;margin:0 auto}.login__icon{width:112px;height:112px;margin-bottom:12px;display:block}.login__title{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--primary);margin:0;font-size:2.5rem;font-weight:700}.login__lead{color:var(--muted);margin:4px 0 32px}.login__form{gap:16px;display:grid}.login__methods{gap:20px;display:grid}.login__google{width:100%}.login__sent{border-left:4px solid var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);margin:0;padding:12px 14px}.login__links{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.login__or{color:var(--muted);font-size:var(--text-sm);align-items:center;gap:12px;margin:0;display:flex}.login__or:before,.login__or:after{content:"";border-top:1px solid var(--line);flex:1}.login__panel{gap:16px;display:grid}.login__heading{margin:0;font-size:1.25rem}.login__note{margin:0}.login__back{justify-self:start}.login__dev{border-top:1px dashed var(--line);font-size:var(--text-sm);padding-top:12px}.login__dev summary{color:var(--muted);cursor:pointer}.login__dev .login__form{margin-top:12px}.password-input{align-items:center;display:flex;position:relative}.password-input input{padding-right:72px}.password-input__toggle{font-size:var(--text-sm);position:absolute;right:2px}.password-input__toggle[aria-pressed=true]{color:var(--primary)}.avatar{width:44px;height:44px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;flex:none;place-items:center;font-size:1.05rem;font-weight:700;line-height:1;display:inline-grid;overflow:hidden}.avatar[data-size=sm]{width:32px;height:32px;font-size:.85rem}.avatar[data-size=lg]{width:72px;height:72px;font-size:1.6rem}.avatar img{object-fit:cover;width:100%;height:100%}.tone[data-tone="0"]{color:#1f4e79;background:#dcebf8}.tone[data-tone="1"]{color:#7a4d00;background:#fdeccb}.tone[data-tone="2"]{color:#2f5a1f;background:#e3f2dc}.tone[data-tone="3"]{color:#7c2a44;background:#f7e0e6}.tone[data-tone="4"]{color:#4a3577;background:#e9e2f6}.tone[data-tone="5"]{color:#1d5a52;background:#d9f1ee}@media (prefers-color-scheme:dark){.tone[data-tone="0"]{color:#cfe3f7;background:#23384d}.tone[data-tone="1"]{color:#f5d58f;background:#3a3120}.tone[data-tone="2"]{color:#c9e6b8;background:#26361f}.tone[data-tone="3"]{color:#f2c3d0;background:#3d2530}.tone[data-tone="4"]{color:#d8cdf0;background:#2f2842}.tone[data-tone="5"]{color:#bfe8e1;background:#1f3a36}}.gene-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.gene-chips__normal{font-size:var(--text-sm);color:var(--muted)}.gene-chip{border-radius:var(--radius-pill);font-size:var(--text-sm);white-space:nowrap;border:1.5px solid var(--ink);align-items:baseline;gap:4px;padding:2px 8px;line-height:1.6;display:inline-flex}.gene-chip__suffix{font-family:var(--font-mono);letter-spacing:.02em;font-size:.85em}.gene-chip[data-state=visual]{background:var(--ink);color:var(--paper)}.gene-chip[data-state=super]{background:var(--ink);color:var(--paper);border-color:var(--paper);box-shadow:0 0 0 1.5px var(--ink);margin:1.5px}.gene-chip[data-state=het]{color:var(--ink);background:0 0}.gene-chip[data-state=pos_het]{color:var(--ink);border-style:dashed;border-color:var(--yolk-ink);background:0 0}.breeding{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.breeding__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.breeding-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.breeding-card{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);color:var(--ink);gap:4px;padding:12px 14px;text-decoration:none;display:grid}.breeding-card[data-ended]{opacity:.75}.breeding-card__title{font-weight:700}.breeding-card__meta{color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;display:flex}.breeding-tag{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--chip-ink);font-size:var(--text-xs);padding:1px 10px;font-weight:700}.egg-chips{flex-wrap:wrap;gap:4px;display:flex}.egg-chip{border-radius:var(--radius-pill);background:var(--surface-soft);color:var(--chip-ink);font-size:var(--text-xs);padding:1px 8px;font-weight:700}.egg-chip[data-status=fertile],.egg-chip[data-status=hatched]{background:var(--yolk-soft);color:var(--yolk-ink)}.egg-chip[data-status=bad],.egg-chip[data-status=infertile]{color:var(--muted)}.breeding-form{border-radius:var(--radius-card);background:var(--surface-soft);gap:10px;padding:12px;display:grid}.breeding-form select,.breeding-form input{min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.breeding-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.breeding-form__actions{gap:8px;display:flex}.breeding .btn{justify-self:start}.event-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.event-list li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.event-list__date{font-weight:700}.egg-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.egg{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.egg[data-status=bad],.egg[data-status=infertile]{opacity:.7}.egg__name{font-weight:700}.egg select{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-soft);color:var(--ink);font:inherit;padding:0 10px}.hatch-form{flex-basis:100%}.breeding .page-head__actions{flex-wrap:wrap;gap:8px;display:flex}.candidates__select{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.candidate-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.candidate{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);gap:6px;padding:12px 14px;display:grid}.candidate__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.candidate__name{font-size:var(--text-md);margin:0}.candidate__inbreeding{font-family:var(--font-mono);align-items:center;gap:6px;font-weight:700;display:inline-flex}.candidate__rows{font-size:var(--text-sm);gap:2px;margin:0;padding:0;list-style:none;display:grid}.candidate__rows li{justify-content:space-between;gap:8px;display:flex}.candidate__pct{font-family:var(--font-mono)}.breeding-heading{align-items:center;gap:8px;display:flex}.event-list__remove{margin-left:auto}.lay-estimate{margin:0}.breeding-form--inline{flex-wrap:wrap;align-items:end;display:flex}.breeding-form--inline>.field{flex:11.5em}.bulk-hatch__eggs{border:0;gap:6px;margin:0;padding:0;display:grid}.bulk-hatch__egg{min-height:var(--tap);align-items:center;gap:8px;display:flex}.breeding-form .bulk-hatch__egg input{width:20px;height:20px;min-height:auto}.breeding-confirm{border:1.5px solid var(--lethal);border-radius:var(--radius-card);flex-basis:100%;gap:10px;padding:14px;display:grid}.breeding-confirm p{margin:0}.breeding-actions{flex-wrap:wrap;gap:8px;display:flex}.breeding-rates{flex-wrap:wrap;align-items:center;gap:4px 16px;margin:0;padding:0;list-style:none;display:flex}.breeding-rates li{font-weight:700}.egg__hint{margin:0}.trend{gap:6px;margin:0;display:grid}.trend__title{font-size:var(--text-sm);font-weight:700}.trend__legend{font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;display:flex}.trend__key{border-radius:2px;width:10px;height:10px;display:inline-block}.trend__key--filled{background:var(--chart)}.trend__key--hollow{border:1.5px solid var(--chart);margin-left:6px}.trend__plot{position:relative}.trend__svg{width:100%;height:auto;display:block;overflow:visible}.trend__grid{stroke:var(--grid);stroke-width:1px}.trend__axis{fill:var(--muted);font-family:var(--font-mono);font-size:10px}.trend__line{fill:none;stroke:var(--chart);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.trend__dot{fill:var(--chart);stroke:var(--surface);stroke-width:2px;cursor:default}.trend__bar{fill:var(--chart)}.trend__bar--hollow{fill:var(--surface);stroke:var(--chart);stroke-width:1.5px}.trend__dot:focus-visible,.trend__bar:focus-visible{stroke:var(--focus);stroke-width:3px;outline:none}.trend__cross{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3;pointer-events:none}.trend__tip{border:1px solid var(--line);background:var(--surface);font-size:var(--text-xs);color:var(--muted);white-space:nowrap;pointer-events:none;border-radius:10px;margin:0;padding:4px 8px;display:grid;position:absolute;top:-6px;transform:translate(-50%)}.trend__tip strong{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink)}.trend__table summary{min-height:var(--tap);font-size:var(--text-xs);color:var(--muted);cursor:pointer;align-items:center;display:flex}.trend__table table{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin-top:6px}.trend__table th,.trend__table td{border-bottom:1px solid var(--line);text-align:left;padding:4px 6px}.trend__table td:last-child{font-family:var(--font-mono);text-align:right}.feed-mark{background:var(--yolk);width:.7em;height:.7em;box-shadow:0 0 0 2px color-mix(in srgb, var(--yolk) 35%, transparent);border-radius:50%;display:inline-block}.warn{font-size:var(--text-sm);color:var(--lethal);font-weight:700}.condition-chip{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--primary) 16%, transparent);font-size:var(--text-sm);padding:0 8px}.record-form{gap:18px;display:grid}.chips{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.chips legend{width:100%;margin-bottom:6px;padding:0}.chip{display:inline-flex;position:relative}.chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip span{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--chip-ink);align-items:center;padding:0 14px;font-size:.9rem;font-weight:700;display:inline-flex}.chip input:checked+span{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.chip input:disabled+span{opacity:.45;cursor:not-allowed}.chip input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.chips--segmented .chip{flex:1}.chips--segmented .chip span{border-radius:var(--radius-card);justify-content:center;width:100%}.editor{gap:14px;display:grid}.stepper{grid-template-columns:var(--tap) minmax(0, 6em) var(--tap);gap:8px;display:grid}.stepper .btn{font-size:var(--text-lg);padding:0}.stepper input{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-card);background:var(--surface);font-family:var(--font-mono);text-align:center}.hints{font-size:var(--text-sm);color:var(--muted);margin:0;padding-left:1.2em}.sticky-actions{bottom:calc(64px + env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--paper) 30%);padding:10px 0;display:grid;position:sticky}.flash{border-left:4px solid var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);margin:0;padding:10px 14px;font-weight:700}.animal-records{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:12px;display:grid}.records-block{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.records-block__title{border-bottom:2px solid var(--ink);font-size:var(--text-md);margin:0;padding-bottom:6px}summary.records-block__title{min-height:var(--tap);cursor:pointer;align-items:center;display:flex}.condition-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.condition-list li{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.condition-end{align-items:center;gap:4px;margin-left:auto;display:inline-flex}.condition-start{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}@media (width<=420px){.condition-start{grid-template-columns:minmax(0,1fr)}.condition-start .btn{justify-self:start}}.condition-past summary{font-size:var(--text-sm);color:var(--muted);cursor:pointer}.condition-past ul{font-size:var(--text-sm);margin:6px 0 0;padding-left:1.2em}.charts{gap:20px;display:grid}@media (width>=640px){.charts{grid-template-columns:repeat(2,minmax(0,1fr))}}.record-list{margin:0;padding:0;list-style:none;display:grid}.record-list li{border-bottom:1px solid var(--line);min-height:44px;font-size:var(--text-sm);grid-template-columns:4.5em 5.5em minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.record-list__date{font-family:var(--font-mono);color:var(--muted)}.record-list__type{font-weight:700}.record-list__desc{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.record-list__by,.day-group__by{color:var(--muted);font-size:var(--text-xs)}.record-list__by{margin-left:6px}.record-list__actions{gap:2px;display:inline-flex}.record-edit{order:2;grid-column:1/-1;gap:12px;padding:8px 0 14px;display:grid}.record-edit__actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=420px){.record-list li{grid-template-columns:4.5em minmax(0,1fr) auto}.record-list__desc{grid-area:2/1/auto/3;padding-bottom:6px}}.calendar{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.calendar__head{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.calendar__views{gap:6px;display:flex}.calendar__views .btn[aria-pressed=true]{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.calendar__nav{grid-template-columns:var(--tap) 1fr var(--tap);text-align:center;align-items:center;display:grid}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.month-grid__weekday{font-size:var(--text-xs);color:var(--muted);text-align:center}.month-grid__day{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;align-content:start;justify-items:center;gap:2px;min-height:58px;padding:4px 0;display:grid}.month-grid__day[data-out]{opacity:.45}.month-grid__day[data-today] .month-grid__num{color:var(--primary);font-weight:700}.month-grid__day[aria-pressed=true]{border:2px solid var(--primary)}.month-grid__num{font-family:var(--font-mono);font-size:var(--text-sm)}.month-grid__icons{flex-wrap:wrap;justify-content:center;gap:0 2px;max-width:100%;font-size:14px;line-height:1.3;display:flex}.month-grid__supps{flex-wrap:wrap;justify-content:center;gap:1px;max-width:100%;display:flex;overflow:hidden}.supp-chip{text-align:center;white-space:nowrap;border:1px solid;border-radius:4px;min-width:1.5em;max-width:100%;padding:0 2px;font-size:10px;font-weight:700;line-height:1.4;display:inline-block;overflow:hidden}.supp-chip[data-color="0"]{background:var(--primary-soft);color:var(--primary)}.supp-chip[data-color="1"]{background:var(--yolk-soft);color:var(--yolk-ink)}.supp-chip[data-color="2"]{background:var(--surface);color:var(--lethal)}.supp-chip[data-color="3"]{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.supp-chip[data-color="4"]{background:var(--surface-soft);color:var(--muted)}.supp-legend{border-radius:var(--radius);background:var(--surface-soft);font-size:var(--text-xs);flex-wrap:wrap;align-items:center;gap:4px 12px;padding:8px 12px;display:flex}.supp-legend__title{color:var(--muted);font-weight:700}.supp-legend ul{flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.supp-legend li{overflow-wrap:anywhere;align-items:center;gap:4px;min-width:0;display:inline-flex}.day-group__delete{margin-left:auto}.day-group__confirm{grid-column:1/-1}.month-grid__more{color:var(--muted);font-size:var(--text-xs);font-weight:700}.calendar__animal{align-items:center;gap:8px;display:flex}.calendar__animal select{contain:inline-size;min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;flex:1;padding:0 12px}.care-legend{border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);font-size:var(--text-xs);flex-wrap:wrap;gap:4px 12px;margin:0;padding:8px 12px;list-style:none;display:flex}.care-legend li{align-items:center;gap:3px;display:inline-flex}.calendar__day,.day-groups{gap:8px;display:grid}.day-group{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);gap:4px;padding:10px 12px;display:grid}.day-group__head{align-items:center;gap:8px;display:flex}.day-group__name{font-weight:700}.day-group__icons{gap:3px;margin-left:auto;font-size:15px;display:inline-flex}.day-group__list{font-size:var(--text-sm);gap:2px;margin:0;padding:0 0 0 40px;list-style:none;display:grid}.day-group__list li{grid-template-columns:1.3em minmax(0,1fr) auto;align-items:start;column-gap:6px;display:grid}.day-group__icon{width:1.3em;min-height:var(--tap);place-items:center;display:inline-grid}.day-group__main{min-width:0;min-height:var(--tap);overflow-wrap:anywhere;padding:11px 0 8px;line-height:1.5}.day-group__main>*+*{margin-left:6px}.day-group__main .supp-chip{vertical-align:1px}.day-group__main .supp-chip+.supp-chip{margin-left:3px}.day-group__type{color:var(--muted);font-weight:700}.week-list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.week-list__date{font-size:var(--text-sm);align-items:center;gap:8px;margin:0 0 6px;display:flex}.week-list__icons{gap:3px;font-size:15px;display:inline-flex}.week-list li[data-today] .week-list__date{color:var(--primary)}.pet__by{margin-left:2px}.already-fed{border-left:4px solid var(--yolk);border-radius:var(--radius-card);background:color-mix(in srgb, var(--yolk) 12%, var(--surface));font-size:var(--text-sm);gap:4px;margin:0;padding:10px 14px 10px 30px;display:grid}.record-form .already-fed{margin-bottom:12px}.care-chips,.species-filter,.routines,.pet__results{flex-wrap:wrap;gap:8px;display:flex}.care-chip,.filter-chip{display:inline-flex;position:relative}.care-chip input,.filter-chip input,.pet__check{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.care-chip span,.filter-chip span{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-soft);color:var(--chip-ink);align-items:center;gap:4px;padding:0 16px;font-weight:700;display:inline-flex}.filter-chip span{min-height:36px;font-size:var(--text-sm);padding:0 12px}.care-chip input:checked+span,.filter-chip input:checked+span{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.care-chip input:checked+span:before{content:"✓"}.care-chip input:focus-visible+span,.filter-chip input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.routine-chip{border:1.5px dashed var(--primary);border-radius:var(--radius-pill);min-height:36px;color:var(--chip-ink);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;align-items:center;padding:0 12px;font-weight:700;display:inline-flex}.home__search,.home__sort,.species-group__food select,.species-group__food input,.pet__count,.routine-save__form input{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.home__search{width:100%;min-width:0}.home__sort{max-width:11em}.species-group{gap:8px;display:grid}.species-group__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.species-group__title{font-size:var(--text-md);align-items:center;gap:8px;margin:0;display:flex}.species-group__count{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--chip-ink);font-size:var(--text-xs);padding:2px 10px}.species-group__food{color:var(--muted);align-items:center;gap:6px;display:flex}.species-group__food input{text-align:right;width:4.5em}.supp-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.supp-chips__label{color:var(--muted);font-size:var(--text-sm);font-weight:700}.pet-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.pet{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);border:2px solid #0000;transition:background-color .15s,border-color .15s}.pet[data-on]{border-color:var(--primary);background:var(--primary-soft)}.pet[data-warn]{border-left:6px solid var(--lethal)}.pet__row{align-items:center;gap:4px;padding:6px 6px 6px 10px;display:flex}.pet__pick{flex:1;align-items:center;gap:10px;min-width:0;min-height:52px;display:flex;position:relative}label.pet__pick:after{content:"";border:2px solid var(--surface);background:var(--line);border-radius:50%;width:18px;height:18px;position:absolute;top:2px;left:30px}.pet[data-on] label.pet__pick:after{content:"✓";background:var(--primary);color:var(--on-primary);place-items:center;font-size:11px;font-weight:700;line-height:1;display:grid}.pet__check:focus-visible~.avatar{outline:3px solid var(--focus);outline-offset:2px}.pet__text{gap:2px;min-width:0;display:grid}.pet__name{align-items:center;gap:6px;font-weight:700;display:flex}.pet__sub{color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;gap:4px 8px;display:flex}.due-tag{border-radius:var(--radius-pill);background:var(--yolk-soft);color:var(--yolk-ink);font-size:var(--text-xs);padding:1px 8px;font-weight:700}.pet__more,.pet__link{width:40px;height:40px;color:var(--chip-ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;font-size:1.3rem;font-weight:700;text-decoration:none;display:grid}.pet__more[aria-expanded=true]{background:var(--surface)}.pet__exception{flex-wrap:wrap;align-items:center;gap:8px;padding:0 10px 10px 64px;display:flex}.pet__count{width:7em}.pet__food{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);max-width:100%;color:var(--ink);font:inherit;padding:0 12px}.record-date{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.record-date__field{font-size:var(--text-sm);align-items:center;gap:8px;font-weight:700;display:inline-flex}.record-date__field input{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-md);padding:0 12px}.record-date .btn[aria-pressed=true]{background:var(--primary-soft)}.routine-save{justify-items:start;display:grid}.routine-save__form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.routine-save__form .field{flex-basis:100%}@media (prefers-reduced-motion:reduce){.pet{transition:none}}.record-photos__pick{cursor:pointer;justify-self:start}.record-photos__count{font-size:var(--text-sm);align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.record-thumbs{flex-wrap:wrap;gap:4px;display:flex}.record-thumbs a{background:var(--surface-soft);border-radius:10px;width:56px;height:56px;display:block;overflow:hidden}.record-thumbs img{object-fit:cover;width:100%;height:100%}.record-list .record-thumbs{order:1;grid-column:1/-1;padding-bottom:6px}.day-group__list .record-thumbs{grid-column:2/-1;padding-bottom:6px}.danger-zone{border:1.5px solid color-mix(in srgb, var(--lethal) 45%, var(--line));border-radius:var(--radius-card);gap:10px;padding:14px;display:grid}.danger-zone p{margin:0}.danger-zone .btn{justify-self:start}.danger-zone__form{gap:8px;display:grid}.danger-zone__form input{min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.notify,.notify__device,.notify__form{gap:10px;display:grid}.notify .btn{justify-self:start}.notify__on{color:var(--chip-ink);margin:0;font-weight:700}.notify__actions{flex-wrap:wrap;gap:8px;display:flex}.notify__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.notify__row--help>.help-btn{place-self:end start;margin-bottom:6px}.notify__heading{align-items:center;gap:8px;margin-bottom:-4px;display:flex}.notify__form select{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.notify__kinds{border:0;gap:4px;margin:0;padding:0;display:grid}.notify .toggle{min-height:var(--tap);align-items:center;gap:8px;font-weight:700;display:inline-flex}.notify .toggle input{width:20px;height:20px;accent-color:var(--primary)}.billing,.billing__donate,.billing__shop{gap:10px;display:grid}.billing p{margin:0}.billing .btn{justify-self:start}.billing__perks{font-size:var(--text-sm);gap:4px;margin:0;padding-left:1.2em;display:grid}.billing__plans{flex-wrap:wrap;gap:8px;display:flex}.calendar__hint{color:var(--muted);font-size:var(--text-sm);margin:0}.calendar__notice{border-left:4px solid var(--yolk);border-radius:var(--radius);background:color-mix(in srgb, var(--yolk) 12%, var(--surface));font-size:var(--text-sm);margin:0;padding:8px 12px;font-weight:700}.day-group__actions{grid-area:1/3;align-items:center;display:inline-flex}.day-group__actions .day-group__delete{margin-left:0;padding-inline:8px}@media (width<=420px){.day-group__list{padding-left:0}}.day-group__edit,.day-group__error{grid-column:1/-1}.week-list__record{color:var(--chip-ink);justify-self:start}.dash{grid-template-columns:minmax(0,1fr);gap:16px;padding-bottom:8px;display:grid}.dash__head{gap:0;display:grid}.dash__date{color:var(--muted);font-size:var(--text-sm);margin:0;font-weight:700}.dash__title{font-size:var(--text-xl);margin:0;font-weight:700;line-height:1.25}.dash__h2{font-size:var(--text-md);margin:0;font-weight:700}.dash-today{border-radius:var(--radius-card);background:linear-gradient(160deg, var(--primary-soft), var(--surface) 75%);box-shadow:var(--shadow-card);gap:12px;padding:16px;display:grid}.dash-today__empty{color:var(--muted);margin:0}.dash-today__marks{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.dash-today__marks li{border-radius:var(--radius-pill);background:var(--surface);min-height:36px;color:var(--chip-ink);font-size:var(--text-sm);align-items:center;gap:6px;padding:0 12px;font-weight:700;display:inline-flex}.dash-today__n{font-family:var(--font-mono)}.dash-today__actions{flex-wrap:wrap;gap:8px;display:flex}.dash-today__cta{flex:16rem;min-height:52px}.dash-block{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);gap:10px;padding:14px 16px;display:grid}.dash-block .muted{margin:0}.dash-block__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.dash-block__more{min-height:var(--tap);font-size:var(--text-sm);align-items:center;font-weight:700;display:inline-flex}.dash-todo{gap:0;margin:0;padding:0;list-style:none;display:grid}.dash-todo__item{border-top:1px solid var(--line);gap:8px;padding:12px 0;display:grid}.dash-todo__item:first-child{border-top:0;padding-top:0}.dash-todo__head{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.dash-todo__icon{font-size:1.1rem}.dash-todo__title{font-weight:700}.dash-todo__note{color:var(--muted);font-size:var(--text-sm)}.dash-todo__action{color:var(--primary);justify-self:start;padding-left:0;font-weight:700}.dash-faces{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.dash-face{border-radius:var(--radius-pill);background:var(--surface-soft);min-height:40px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);font-size:var(--text-sm);align-items:center;gap:6px;padding:2px 12px 2px 3px;font-weight:700;text-decoration:none;display:inline-flex}.dash-face[data-done]{color:var(--muted)}.dash-face[data-done] .dash-face__name:after{content:" ✓";color:var(--primary)}.dash-faces__more{color:var(--muted);font-size:var(--text-sm);align-self:center}.dash-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.dash-row{border-radius:var(--radius);background:var(--surface-soft);min-height:52px;color:var(--ink);align-items:center;gap:10px;padding:6px 8px 6px 10px;text-decoration:none;display:flex}.dash-row[data-warn]{border-left:4px solid var(--lethal)}.dash-row__icon{place-items:center;width:32px;font-size:1.2rem;display:grid}.dash-row__text{flex:1;min-width:0;display:grid}.dash-row__name{font-weight:700}.dash-row__sub{color:var(--muted);font-size:var(--text-sm)}.dash-row[data-warn] .dash-row__sub{color:var(--lethal);font-weight:700}.dash-row__go{color:var(--chip-ink);font-size:1.3rem;font-weight:700}.dash-species{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.dash-species li{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--chip-ink);font-size:var(--text-sm);align-items:baseline;gap:6px;padding:4px 12px;font-weight:700;display:inline-flex}.dash-species__n{font-family:var(--font-mono)}@media (width>=900px){.dash{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.dash__head,.dash>.flash,.dash>.form-error,.dash>.empty,.dash-today{grid-column:1/-1}}.weigh{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.weigh__filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.weigh-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.weigh-row{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;display:flex}.weigh-row[data-done]{background:var(--surface-soft)}.weigh-row__text{flex:10em;min-width:0;display:grid}.weigh-row__name{font-weight:700}.weigh-row__prev,.weigh-row__state{font-size:var(--text-sm);color:var(--muted)}.weigh-row__input{align-items:center;gap:6px;font-weight:700;display:inline-flex}.weigh-row__input input{width:6.5em;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-family:var(--font-mono);text-align:right;padding:0 12px}.weigh-row__diff{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--muted);font-weight:700}.weigh-row__diff[data-sign=up]{color:var(--primary)}.weigh-row__diff[data-sign=down]{color:var(--yolk-ink)}.weigh-row .btn{margin-left:auto}.weigh-row__state,.weigh-row__error{flex-basis:100%}.done-mark{color:var(--muted);font-size:var(--text-sm);font-weight:400}.care-chip .done-mark{color:inherit;opacity:.8;margin-left:4px}.care-chip[data-done] span{border-style:dashed}.sheet__measure-name .done-mark{display:block}.sheet__section-mark{margin-left:auto}.team-section{gap:10px;display:grid}.member-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.member{min-height:var(--tap);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;gap:8px;padding:4px 6px 4px 14px;display:flex}.member__name{overflow-wrap:anywhere;flex:8em;min-width:0;font-weight:700}.member__role{color:var(--muted);font-size:var(--text-sm)}.member select,.invite select,.invite__link input{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;min-height:40px;color:var(--ink);font:inherit;padding:0 10px}.invite,.invite__link{gap:8px;display:grid}.invite .btn,.team-section>.btn{justify-self:start}.invite__link p{margin:0}.invite__hint{font-size:var(--text-sm);margin:-4px 0 0}.member__finance{font-size:var(--text-sm);align-items:center;gap:4px;display:inline-flex}.team-section__finance{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.owner-transfer{border-top:1px solid var(--line);gap:8px;padding-top:8px;display:grid}.owner-transfer__title{font-size:var(--text-md);margin:0}.owner-transfer select{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;min-height:40px;color:var(--ink);font:inherit;padding:0 10px}.owner-transfer .btn,.owner-transfer .confirm{justify-self:start}.owner-transfer .confirm p{margin:0 0 8px}.owner-transfer .detail__actions{flex-wrap:wrap;gap:8px;display:flex}.team-notes{gap:8px;margin-bottom:16px;display:grid}.team-notes__title{font-size:var(--text-md,1rem);margin:0}.team-notes__list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.team-notes__item{border-left:4px solid var(--primary);border-radius:var(--radius-card);background:var(--surface);padding:8px 12px}.team-notes__body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.team-notes__meta{color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:4px 10px;margin:2px 0 0;display:flex}.team-notes__meta .btn{margin-left:auto}.team-notes__form{align-items:flex-end;gap:8px;display:flex}.team-notes__form textarea{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;color:var(--ink);font:inherit;resize:vertical;flex:1;padding:8px 10px}.member__perms{font-size:var(--text-sm);flex-basis:100%}.member__perms summary{min-height:32px;color:var(--muted);cursor:pointer}.member__perms-list{gap:4px;padding:4px 0 6px;display:grid}.animal-history>summary{cursor:pointer}.animal-history__intro{align-items:center;gap:6px;display:flex}.team-history{gap:12px;display:grid}.team-history .btn{justify-self:start}.team-history__filters{grid-template-columns:repeat(auto-fit,minmax(min(100%,11.5em),1fr));gap:8px;display:grid}.history-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.history-list__item{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);padding:8px 12px}.history-list__head{font-size:var(--text-sm);flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.history-list__action{font-weight:700}.history-list__changes{overflow-wrap:anywhere;margin:4px 0 0;padding-left:1.2em}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.photo-grid__item{aspect-ratio:1;background:var(--line);cursor:zoom-in;border:0;border-radius:10px;width:100%;padding:0;display:block;overflow:hidden}.photo-grid__item img{object-fit:cover;width:100%;height:100%;display:block}.photo-add{cursor:pointer;justify-self:start}.photo-add:focus-within{outline:3px solid var(--focus);outline-offset:2px}.photo-modal{z-index:50;padding:var(--gutter);background:#000000c7;place-items:center;display:grid;position:fixed;inset:0}.photo-modal__body{gap:12px;max-width:100%;max-height:100%;display:grid}.photo-modal__body img{object-fit:contain;border-radius:10px;max-width:100%;max-height:70vh}.photo-modal .btn{background:var(--surface)}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.page-title{font-size:var(--text-xl);letter-spacing:-.02em;word-break:auto-phrase;overflow-wrap:anywhere;margin:0;line-height:1.2}.page-head>.page-title{flex:none;max-width:100%}.page-head__actions>.btn--primary{order:-1}.filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:20px;display:grid}.filters .field--grow,.filters__more{grid-column:1/-1}.filters__summary{min-height:var(--tap);color:var(--chip-ink);cursor:pointer;align-items:center;gap:8px;font-weight:700;display:flex}.filters__count{border-radius:var(--radius-pill);background:var(--primary-soft);font-size:var(--text-xs);padding:2px 10px}.filters__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:4px;display:grid}@media (width>=640px){.filters{grid-template-columns:2fr repeat(4,minmax(0,1fr))}.filters__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.filters .field--grow{grid-column:auto}}.empty{color:var(--muted);justify-items:start;gap:12px;padding:24px 0;display:grid}.empty p{margin:0}.animal-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.animal-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.animal-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);color:inherit;gap:8px;padding:14px;text-decoration:none;display:grid}.animal-card:hover{border-color:var(--muted)}.animal-card[data-status=deceased],.animal-card[data-status=transferred]{opacity:.65}.animal-card__head{align-items:center;gap:10px;min-width:0;display:flex}.animal-card__tape{background:var(--primary-soft);border-radius:var(--radius-pill);justify-self:start;align-items:baseline;gap:8px;min-width:0;max-width:100%;padding:6px 12px 5px;display:flex}.animal-card__name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-lg);letter-spacing:.01em;font-weight:700;overflow:hidden}.animal-card__sex{color:var(--muted);font-weight:700}.animal-card__meta{font-size:var(--text-sm);color:var(--muted);flex-wrap:wrap;gap:4px 12px;display:flex}.animal-form{gap:20px;margin-top:16px;display:grid}.animal-form__grid{gap:12px;display:grid}@media (width>=640px){.animal-form__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.animal-form__actions{gap:8px;display:flex}.check{font-size:var(--text-sm);grid-column:1/-1;align-items:flex-start;gap:8px;display:flex}.check input{width:20px;height:20px;margin-top:2px}.gene-picker{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);gap:10px;margin:0;padding:14px;display:grid}.gene-picker legend{padding:0 4px}.gene-picker__rows{gap:8px;margin:0;padding:0;list-style:none;display:grid}.gene-picker__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gene-picker__row>*{flex:none}.gene-picker__row select,.gene-picker__pct{width:auto;min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-card);background:var(--paper);padding:6px 8px}.gene-picker__row>select{flex:7.5em}.gene-picker__row>.gene-picker__name{flex:5.5em}.gene-picker__name{font-weight:700;display:grid}.gene-picker__unverified{font-size:var(--text-xs);color:var(--yolk-ink);font-weight:400}.gene-picker__row>.gene-picker__pct{flex:0 0 4.5em}.gene-picker__pct{font-family:var(--font-mono);text-align:right}.gene-picker__errors{gap:4px;list-style:none;display:grid}.gene-search{gap:6px;display:grid}.gene-search__input{min-height:var(--tap)}.gene-search__list{overscroll-behavior:contain;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius);max-height:min(50vh,22rem);margin:0;padding:4px;list-style:none;display:grid;overflow-y:auto}.gene-search__option{min-height:var(--tap);border-radius:calc(var(--radius) - 4px);cursor:pointer;align-content:center;gap:2px;padding:8px 10px;display:grid}.gene-search__option[aria-selected=true]{background:var(--primary-soft);color:var(--chip-ink)}.gene-search__label{font-weight:700}.gene-search__detail{font-size:var(--text-xs);color:var(--muted)}.gene-search__empty{padding:8px 10px}.muted{color:var(--muted)}.detail{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.detail__species{font-size:var(--text-sm);color:var(--muted);margin:0}.detail__name{font-size:2rem;font-weight:700}.facts{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);gap:0;margin:8px 0 0;padding:2px 16px;display:grid}.facts>div{border-bottom:1px solid var(--line);grid-template-columns:6em 1fr;gap:12px;padding:11px 0;display:grid}.facts>div:last-child{border-bottom:0}.facts dt{font-size:var(--text-sm);color:var(--muted)}.facts dd{margin:0}.facts__list{flex-wrap:wrap;gap:4px 14px;display:flex}.detail__actions{flex-wrap:wrap;gap:8px;display:flex}.detail__actions--main{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.detail__actions--main .btn{border-radius:24px;min-height:48px}.confirm{border:1.5px solid var(--lethal);border-radius:var(--radius-card);gap:10px;padding:14px;display:grid}.confirm p{margin:0}.detail__head{align-items:center;gap:14px;display:flex}.detail__head>div{min-width:0}.filters .toggle{min-height:var(--tap);color:var(--chip-ink);cursor:pointer;grid-column:1/-1;align-items:center;gap:8px;font-weight:700;display:inline-flex}.filters .toggle input{width:20px;height:20px;accent-color:var(--primary)}.animal-group{gap:8px;margin-bottom:20px;display:grid}.animal-group__title{font-size:var(--text-md);align-items:center;gap:8px;margin:0;display:flex}.animal-group__count{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--chip-ink);font-size:var(--text-xs);padding:2px 10px}.view-toggle{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.view-toggle .btn{white-space:nowrap;padding-inline:14px}.view-toggle .btn[aria-pressed=true]{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.animal-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.animal-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}.gallery-card{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);color:var(--ink);gap:6px;padding:6px;text-decoration:none;display:grid}.gallery-card[data-status=deceased],.gallery-card[data-status=transferred]{opacity:.7}.gallery-card__photo{aspect-ratio:1;border-radius:calc(var(--radius-card) - 4px);place-items:center;font-size:2.4rem;font-weight:700;display:grid;overflow:hidden}.gallery-card__photo img{object-fit:cover;width:100%;height:100%}.gallery-card__name{justify-content:space-between;align-items:center;gap:6px;padding:0 4px 2px;font-weight:700;display:flex}.page-head__actions{flex-wrap:wrap;gap:8px;display:flex}.transfer{gap:10px;display:grid}.transfer .btn{justify-self:start}.transfer__code{gap:6px;display:grid}.transfer__value{border-radius:var(--radius);background:var(--surface-soft);font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.08em;text-align:center;-webkit-user-select:all;user-select:all;padding:12px;font-weight:700}.transfer__code p{margin:0}.transfer__actions{flex-wrap:wrap;gap:8px;display:flex}.transfer__qr{justify-self:center;line-height:0}.transfer__qr svg{width:min(200px,60vw);height:auto}.transfer-qr{z-index:100;color:#111;text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.transfer-qr__title{font-size:var(--text-lg);margin:0}.transfer-qr__code{line-height:0}.transfer-qr__code svg{width:min(88vw,60vh,480px);height:auto}.transfer-qr__value{font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.08em;overflow-wrap:anywhere;margin:0;font-weight:700}.transfer-qr__note{max-width:32em;margin:0}.transfer__issue{gap:8px;display:grid}.transfer__issue p{margin:0}.transfer__sale{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.receive,.receive__form,.receive__card{gap:10px;display:grid}.receive__form input,.receive__card select{min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.receive__form input{font-family:var(--font-mono);letter-spacing:.06em}.receive .btn{justify-self:start}.receive__name{font-size:var(--text-lg);align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.receive__card p{margin:0}.sale-section{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:12px;padding:12px 14px;display:grid}.sale-section__summary{min-height:var(--tap);cursor:pointer;align-items:center;font-weight:700;display:flex}.field--wide{grid-column:1/-1}.field--wide textarea{width:100%}.animal-card__sale{border-radius:var(--radius-pill);background:var(--yolk-soft);color:var(--yolk-ink);padding:0 8px;font-weight:700}.animal-card__sale[data-sale=sold]{background:var(--primary-soft);color:var(--chip-ink)}.animal-card__price{font-family:var(--font-mono);color:var(--ink);font-weight:700}.animal-list__pick{grid-template-columns:var(--tap) minmax(0, 1fr);align-items:center;display:grid}.animal-list__check{justify-self:center;width:22px;height:22px}.bulk-bar{right:var(--gutter);bottom:calc(61px + env(safe-area-inset-bottom) + 8px);left:var(--gutter);z-index:9;max-width:calc(760px - var(--gutter) * 2);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin-inline:auto;padding:8px 8px 8px 16px;display:flex;position:fixed;box-shadow:0 6px 20px -8px #0000004d}.bulk-bar[hidden]{display:none}.bulk-bar__count{font-variant-numeric:tabular-nums}.animal-list--selecting{padding-bottom:120px}.animal-list--selecting:has(.bulk-sheet){padding-bottom:60vh}.bulk-sheet{z-index:20;box-sizing:border-box;overscroll-behavior:contain;max-width:760px;max-height:60dvh;padding:0 var(--gutter) calc(16px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--surface);border-bottom:0;align-content:start;gap:10px;margin-inline:auto;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -8px 28px -10px #00000059}.bulk-sheet__top{z-index:1;border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:8px;padding:10px 0 8px;display:flex;position:sticky;top:0}.bulk-sheet__actions,.bulk-sheet__row{flex-wrap:wrap;align-items:end;gap:8px 12px;display:flex}.bulk-sheet__actions{align-items:center}.bulk-sheet__row .check{align-self:center}.bulk-sheet__row .field__hint{flex-basis:100%;margin:0}.bulk-sheet__message{font-size:var(--text-sm);margin:0;font-weight:700}.public-card{--card-bg:#eaf4fc;--card-accent:#2f6fae;background:var(--card-bg);justify-items:center;gap:12px;min-height:100dvh;padding:24px 16px;display:grid}.public-card[data-theme=sakura]{--card-bg:#fcebef;--card-accent:#b0456a}.public-card[data-theme=mint]{--card-bg:#e4f5ef;--card-accent:#2c7a63}.public-card[data-theme=night]{--card-bg:#1b2533;--card-accent:#7db4ea}.public-card__card{background:var(--surface);width:min(100%,420px);box-shadow:0 10px 30px color-mix(in srgb, var(--card-accent) 18%, transparent);border-radius:24px;overflow:hidden}.public-card[data-theme=night] .public-card__card{color:#e8f1fb;background:#243246}.public-card__photo{aspect-ratio:1;object-fit:cover;width:100%;display:block}.public-card__body{gap:10px;padding:16px 18px 20px;display:grid}.public-card__species{color:var(--card-accent);font-size:var(--text-sm);margin:0;font-weight:700}.public-card__name-row{align-items:center;gap:8px;display:flex}.public-card__name{font-size:var(--text-xl);margin:0}.public-card__facts{gap:4px;margin:0;display:grid}.public-card__facts div{grid-template-columns:5em 1fr;gap:8px;display:grid}.public-card__facts dt{color:var(--muted);font-size:var(--text-sm)}.public-card[data-theme=night] .public-card__facts dt{color:#a9bdd1}.public-card__facts dd{margin:0}.public-card__parents{border-top:1px solid var(--line);gap:8px;padding-top:8px;display:grid}.public-card__parent-name{font-size:var(--text-sm);margin:0 0 4px;font-weight:700}.public-card__footer{width:min(100%,420px);color:var(--card-accent);font-size:var(--text-xs);text-align:center;margin:4px 0 0;line-height:1.7}.public-card__footer a{color:inherit;white-space:nowrap;font-weight:700}.card-section{gap:10px;display:grid}.card-section .toggle{min-height:var(--tap);align-items:center;gap:8px;font-weight:700;display:inline-flex}.card-section .toggle input{width:20px;height:20px;accent-color:var(--primary)}.card-section__fields{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px;margin:0;padding:0;display:grid}.card-section__fields legend{margin-bottom:4px}.card-section__share{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.card-section__link{flex:200px;gap:6px;min-width:0;display:grid}.card-section__link input{min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-md);padding:0 10px}.card-section__link p{margin:0}.card-section__actions{flex-wrap:wrap;gap:6px;display:flex}.racks{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.rack{gap:8px;display:grid}.rack__name{font-size:var(--text-md);align-items:baseline;gap:8px;margin:0;display:flex}.rack__name .muted{font-size:var(--text-xs);font-weight:400}.rack__grid{border-radius:var(--radius-card);background:var(--line);gap:4px;padding:6px;display:grid}.rack__cell{background:var(--surface-soft);min-width:0;min-height:64px;color:var(--ink);font:inherit;cursor:pointer;border:0;border-radius:10px;place-items:center;gap:2px;padding:4px 2px;display:grid}.rack__cell[data-filled]{background:var(--surface)}.rack__cell[aria-pressed=true]{outline:3px solid var(--primary);outline-offset:-3px}.rack__label{max-width:100%;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.rack__empty{color:var(--muted);font-size:1.2rem}.rack__panel{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);gap:8px;padding:10px 12px;display:grid}.rack__panel-head{margin:0;font-weight:700}.rack__panel .btn{justify-self:start}.rack__panel select,.rack-form input{min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.rack-form{gap:10px;display:grid}.rack-form .btn{justify-self:start}.rack-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.tree{gap:12px;min-width:0;display:grid}.tree__back{font-size:var(--text-sm);justify-self:start}.tree__hint{font-size:var(--text-sm);color:var(--muted);margin:0}.tree__scroll{overscroll-behavior-x:contain;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper);max-width:100%;overflow-x:auto}.tree__svg{display:block}.tree__col-label{letter-spacing:.04em;fill:var(--muted);font-size:11px;font-weight:700}.tree__edges path{fill:none;stroke:var(--muted);stroke-width:1.25px}.tree-node__card{fill:var(--surface);stroke:var(--line);stroke-width:1.5px}.tree-node__tape{fill:color-mix(in srgb, var(--yolk) 22%, var(--surface))}.tree-node__name{fill:var(--ink);font-size:13px;font-weight:700}.tree-node__sex{fill:var(--muted);font-size:12px;font-weight:700}.tree-node__sex-mark{color:var(--muted);font-size:14px}.tree-node__gene{fill:var(--ink);font-size:11px}.tree-node[data-kind=focal] .tree-node__card{stroke:var(--primary);stroke-width:2.5px}.tree-node[data-placeholder=true] .tree-node__card,.tree-node[data-kind=empty] .tree-node__card{stroke:var(--muted);stroke-dasharray:5 4}.tree-node[data-kind=empty] .tree-node__card{fill:#0000}.tree-node__empty{fill:var(--muted);font-size:12px}.tree-node a:hover .tree-node__card{stroke:var(--muted)}.tree-node a:focus-visible{outline:none}.tree-node a:focus-visible .tree-node__card{stroke:var(--focus);stroke-width:3px}.predict{gap:16px;min-width:0;display:grid}.predict__species{max-width:20em}.predict__parents{gap:12px;display:grid}@media (width>=640px){.predict__parents{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.predict-parent{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);gap:12px;min-width:0;margin:0;padding:14px;display:grid}.predict-parent__legend{background:var(--primary-soft);padding:6px 12px 5px;font-weight:700}.predict-parent .gene-picker{border:0;padding:0}.predict__notes{border-left:4px solid var(--yolk);background:color-mix(in srgb, var(--yolk) 10%, transparent);font-size:var(--text-sm);gap:4px;margin:0;padding:8px 12px;list-style:none;display:grid}.predict__count{font-size:var(--text-sm);color:var(--muted);margin:0}.predict-table{border-collapse:collapse;table-layout:fixed;width:100%}.predict-table thead th{border-bottom:1.5px solid var(--ink);font-size:var(--text-sm);text-align:left;color:var(--muted);padding:0 0 6px;font-weight:700}.predict-table .predict-row__pct{text-align:right;width:5.5em}.predict-row>*{border-bottom:1px solid var(--line);vertical-align:top;padding:10px 0}.predict-row__main{text-align:left;font-weight:400}.predict-row__main>*+*{margin-top:6px}.predict-row__name{overflow-wrap:anywhere;font-weight:700;display:block}td.predict-row__pct{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700}.predict-row[data-lethal=true]>*{background:color-mix(in srgb, var(--lethal) 8%, transparent)}.predict-row[data-lethal=true]>:first-child{box-shadow:inset 4px 0 0 var(--lethal);padding-left:10px}.predict-row[data-lethal=true]>:last-child{padding-right:8px}.predict-row[data-lethal=true] .predict-row__name,.predict-row[data-lethal=true] td.predict-row__pct{color:var(--lethal)}.predict-flags{font-size:var(--text-sm);gap:4px;margin:0;padding:0;list-style:none;display:grid}.predict-flag{align-items:baseline;gap:6px;display:flex}.predict-flag__label{border-radius:var(--radius-pill);font-size:var(--text-xs);border:1.5px solid;flex:none;padding:0 6px;font-weight:700}.predict-flag[data-level=lethal] .predict-flag__label{border-color:var(--lethal);background:var(--lethal);color:var(--paper)}.predict-flag[data-level=health] .predict-flag__label,.predict-flag[data-level=caution] .predict-flag__label{border-color:var(--yolk-ink);color:var(--yolk-ink)}.predict-inbreeding{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);gap:4px;padding:12px 14px;display:grid}.predict-inbreeding__title{font-size:var(--text-sm);margin:0;font-weight:700}.predict-inbreeding__value{align-items:center;gap:10px;margin:0;display:flex}.predict-inbreeding__num{font-family:var(--font-mono);font-size:var(--text-xl);font-weight:700}.predict-inbreeding__note{font-size:var(--text-xs);color:var(--muted);margin:0}.badge{border-radius:var(--radius-pill);font-size:var(--text-sm);padding:1px 8px;font-weight:700}.badge--caution{background:var(--yolk);color:#1c2723}.tree__gens{align-items:center;gap:8px;display:flex}.tree__gens select{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.catalog{gap:20px;display:grid}.catalog-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.catalog-item{min-height:var(--tap);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:8px;padding:0 6px 0 14px;font-weight:700;display:flex}.catalog-item[data-custom]{background:var(--primary-soft)}.catalog-item__tag{color:var(--muted);font-size:var(--text-xs);padding:1px 10px}.catalog-add{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.catalog-add .field{grid-column:1/-1}.catalog-item__name{gap:2px;padding:6px 0;display:grid}.catalog-item__name .catalog-item__tag{padding:0;font-weight:400}.morph-add{gap:8px;display:grid}.morph-modes{border:0;gap:6px;margin:0;padding:0;display:grid}.morph-mode{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:center;gap:10px;padding:8px 12px;display:flex}.morph-mode:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.morph-mode input{width:18px;height:18px;accent-color:var(--primary)}.morph-mode span{color:var(--ink);display:grid}.morph-mode small{color:var(--muted);font-size:var(--text-xs)}.morph-add .btn{justify-self:start}.catalog-add input,.morph-add input:not([type=radio]){min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.expenses{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.expenses__total{font-family:var(--font-mono);font-size:var(--text-xl);text-align:center;margin:0;font-weight:700}.expenses__cats{flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.expenses__cats li,.expense__cat{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--chip-ink);font-size:var(--text-xs);padding:1px 10px;font-weight:700}.expense-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.expense{min-height:var(--tap);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);font-size:var(--text-sm);grid-template-columns:4.5em auto minmax(0,1fr) auto;grid-template-areas:"date cat amount del""note note note note";align-items:center;gap:8px;padding:4px 6px 4px 12px;display:grid}.expense__date{color:var(--muted);grid-area:date}.expense__cat{grid-area:cat;justify-self:start}.expense .btn{grid-area:del}.expense__note{overflow-wrap:anywhere;flex-wrap:wrap;grid-area:note;gap:4px 8px;min-width:0;display:flex}.expense__note:empty{display:none}.expense__animal{font-weight:700}.expense__amount{font-family:var(--font-mono);grid-area:amount;justify-self:end;font-weight:700}.expense__channel{color:var(--muted);font-size:var(--text-xs)}.expense__profit{font-size:var(--text-xs);color:var(--muted);text-align:right;font-weight:400;display:block}.expense-form{gap:10px;display:grid}.expense-form .btn{justify-self:start}.expense-form input,.expense-form select{min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.expense-form__row{grid-template-columns:repeat(auto-fit,minmax(min(100%,11.5em),1fr));gap:8px;display:grid}.expenses__year{gap:8px;display:grid}.expenses__year-total{font-family:var(--font-mono);margin:0;font-weight:700}.expense-bars{border-bottom:1px solid var(--grid);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:4px;height:120px;padding:8px 4px 0;display:grid}.expense-bars__col{grid-template-rows:1fr auto;justify-items:center;height:100%;display:grid}.expense-bars__bar{background:var(--chart);border-radius:4px 4px 0 0;align-self:end;width:60%;min-height:2px}.expense-bars__bar[data-empty]{background:var(--grid)}.expense-bars__label{color:var(--muted);font-size:var(--text-xs)}.expense-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.expense-table th,.expense-table td{border-bottom:1px solid var(--line);text-align:left;padding:4px 6px}.expense-table td{font-family:var(--font-mono);text-align:right}.expense-table thead th{color:var(--muted);text-align:right;font-weight:400}.balance{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.balance div{border-radius:var(--radius);background:var(--surface-soft);gap:2px;padding:8px 10px;display:grid}.balance dt{font-size:var(--text-xs);color:var(--muted)}.balance dd{font-family:var(--font-mono);overflow-wrap:anywhere;margin:0;font-weight:700}.expenses__balance{gap:10px;display:grid}.expenses__export{flex-wrap:wrap;gap:8px;display:flex}.requests{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.request-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.request{border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card);align-items:center;gap:10px;padding:8px 8px 8px 14px;display:flex}.request__text{overflow-wrap:anywhere;flex:1;gap:2px;min-width:0;display:grid}.request__name{font-weight:700}.request__vote{min-width:64px;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-soft);color:var(--chip-ink);font:inherit;cursor:pointer;flex:none;justify-content:center;align-items:center;gap:4px;font-weight:700;display:inline-flex}.request__vote[aria-pressed=true]{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.request-form{gap:10px;display:grid}.request-form p{margin:0}.request-form .btn{justify-self:start}.request-form input{min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}html:has(.sheet[open]){overscroll-behavior:none;overflow:hidden}.sheet{border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--surface);width:100%;max-width:100%;height:94dvh;max-height:94dvh;color:var(--ink);box-shadow:0 -8px 32px color-mix(in srgb, var(--ink) 18%, transparent);overscroll-behavior:contain;border:0;margin:0;padding:0;animation:.22s ease-out sheet-up;position:fixed;inset:auto 0 0;overflow:hidden}.sheet::backdrop{background:#0a192873}@keyframes sheet-up{0%{opacity:.6;transform:translateY(24px)}}@media (width>=720px){.sheet{border-radius:var(--radius-card);width:min(42rem,100vw - 48px);height:min(88dvh,60rem);margin:auto;animation-name:sheet-in;inset:0}}@keyframes sheet-in{0%{opacity:.6;transform:scale(.98)}}.sheet__panel{flex-direction:column;height:100%;min-height:0;display:flex}.sheet__head{border-bottom:1px solid var(--line);flex:none;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px;padding:14px 8px 8px;display:grid;position:relative}.sheet__head:before{content:"";border-radius:var(--radius-pill);background:var(--line);width:40px;height:4px;position:absolute;top:5px;left:50%;transform:translate(-50%)}@media (width>=720px){.sheet__head:before{display:none}}.sheet__title{font-size:var(--text-md);text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;overflow:hidden}.sheet__cancel{color:var(--chip-ink)}.sheet__save{padding:0 16px}.sheet__confirm{border-left:4px solid var(--yolk);border-radius:var(--radius-card);background:color-mix(in srgb, var(--yolk) 12%, var(--surface));gap:10px;margin:10px 12px 0;padding:12px 14px;display:grid}.sheet__confirm p{margin:0;font-weight:700}.sheet__confirm-actions{flex-wrap:wrap;gap:8px;display:flex}.sheet__body{min-height:0;padding:8px var(--gutter) 16px;overscroll-behavior:contain;flex:1;grid-template-columns:minmax(0,1fr);align-content:start;gap:4px;display:grid;position:relative;overflow-y:auto}.sheet__tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.sheet__routines{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sheet__tools-label{color:var(--muted);font-size:var(--text-sm);font-weight:700}.sheet__reset-all{margin-left:auto}.sheet__note{color:var(--chip-ink);font-size:var(--text-sm);margin:0;font-weight:700}.sheet__section{border-top:1px solid var(--line);gap:10px;padding:14px 0;display:grid}.sheet__section-head{min-height:var(--tap);justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet__section-title{font-size:var(--text-md);margin:0;font-weight:700}.sheet__reset{min-height:var(--tap);color:var(--muted);font:inherit;font-size:var(--text-sm);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 6px;text-decoration:underline}.sheet__switch{display:inline-flex;position:relative}.sheet__switch input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.sheet__switch .sheet__section-title{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-soft);color:var(--chip-ink);align-items:center;gap:6px;padding:0 16px;display:inline-flex}.sheet__switch .sheet__section-title:before{content:"";border:1.5px solid;border-radius:50%;width:1em;height:1em}.sheet__switch input:checked+.sheet__section-title,.sheet__switch .sheet__section-title[data-on]{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.sheet__switch input:checked+.sheet__section-title:before,.sheet__switch .sheet__section-title[data-on]:before{content:"✓";border-color:#0000;place-items:center;font-size:.85em;line-height:1;display:grid}.sheet__switch input:focus-visible+.sheet__section-title{outline:3px solid var(--focus);outline-offset:2px}.sheet__hint{font-size:var(--text-sm);margin:0}.sheet__chosen{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sheet__chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sheet__chip{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--chip-ink);font-size:var(--text-sm);align-items:center;gap:6px;padding:2px 2px 2px 4px;font-weight:700;display:inline-flex}.sheet__chip-x{width:32px;height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;font-size:1.1rem;display:grid}.sheet__pick-toggle{margin-left:auto}.sheet__picker{border-radius:var(--radius-card);background:var(--paper);gap:12px;padding:12px;display:grid}.sheet__filters{gap:8px;display:grid}.sheet__rack{max-width:none}.sheet__bulk{flex-wrap:wrap;gap:4px;display:flex}.sheet__bulk .btn{color:var(--chip-ink)}.sheet__picker .species-group__title{font-size:var(--text-sm)}.condition-picker{border:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0;display:grid}.condition-picker legend{grid-column:1/-1;margin-bottom:6px;padding:0}.condition-face{border:1.5px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft);cursor:pointer;align-content:center;justify-items:center;gap:2px;min-height:68px;padding:6px 0;display:grid;position:relative}.condition-face input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.condition-face__icon{filter:grayscale(.6);opacity:.75;font-size:1.7rem;line-height:1}.condition-face__label{color:var(--muted);letter-spacing:-.02em;white-space:nowrap;text-align:center;font-size:.6875rem;font-weight:700;line-height:1.2}.condition-face[data-on]{border-color:var(--primary);background:var(--primary-soft)}.condition-face:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.condition-face[data-on] .condition-face__icon{filter:none;opacity:1;transform:scale(1.1)}.condition-face:has(input:checked) .condition-face__icon{filter:none;opacity:1;transform:scale(1.1)}.condition-face[data-on] .condition-face__label{color:var(--chip-ink)}.condition-face:has(input:checked) .condition-face__label{color:var(--chip-ink)}.condition-face:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.sheet__feed{border-radius:var(--radius-card);background:var(--paper);gap:8px;padding:12px;display:grid}.sheet__feed-title{align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.sheet__exceptions{gap:2px;margin:0;padding:0;list-style:none;display:grid}.sheet__exception-row{min-height:var(--tap);align-items:center;gap:8px;display:flex}.sheet__exception-name{font-weight:700}.sheet__exception-sum{min-width:0;color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere;flex:1}.sheet__food-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.sheet__food-row--extra{grid-template-columns:minmax(0,1fr) auto auto}.sheet__food{width:100%;min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;padding:0 12px}.sheet__qty{align-items:center;gap:6px;display:inline-flex}.sheet__qty-label{color:var(--muted);font-size:var(--text-sm);font-weight:700}.sheet__qty input{width:3.6em;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-family:var(--font-mono);text-align:right;padding:0 10px}.sheet__supps{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:6px 10px;display:grid}.sheet__supps .supp-chips__label{align-items:center;min-height:36px;display:flex}.sheet__supp-list{flex-wrap:wrap;gap:6px;display:flex}.sheet__exception{gap:10px;padding:4px 0 12px;display:grid}.sheet__food-entry{gap:8px;display:grid}.sheet__food-entry--extra{border-top:1.5px dashed var(--line);padding-top:10px}.sheet__exception-error{margin:0}.sheet__add-food{color:var(--chip-ink);justify-self:start}.sheet__measures{gap:8px;margin:0;padding:0;list-style:none;display:grid}.sheet__measure{grid-template-columns:minmax(0,1fr) minmax(0,6.5em) minmax(0,6.5em);align-items:center;gap:6px;display:grid}.sheet__measure-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.sheet__measure-field{color:var(--muted);font-size:var(--text-sm);align-items:center;gap:4px;display:flex}.sheet__measure-field input{width:100%;min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-family:var(--font-mono);text-align:right;padding:0 10px}.sheet__memo{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);font:inherit;resize:vertical;padding:10px 12px}.sheet .routine-save{padding:4px 0 8px}.sheet__day{border-top:1px solid var(--line);gap:10px;padding:14px 0 4px;display:grid}.sheet__foot{padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);touch-action:none;flex:none;gap:8px;display:grid}.sheet__submit{min-height:52px}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}.editable-name{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.editable-name__value{overflow-wrap:anywhere}.editable-name__edit{min-height:32px;font-size:var(--text-sm)}.editable-name--editing{gap:8px;display:grid}.editable-name--editing input{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-width:0;min-height:40px;color:var(--ink);font:inherit;padding:0 10px}.editable-name--editing input:focus-visible{border-color:var(--focus)}.editable-name__actions{flex-wrap:wrap;gap:8px;display:flex}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:#eef6fc;--surface:#fff;--surface-soft:#f4f9fe;--ink:#1f3a52;--muted:#56718a;--line:#d6e6f3;--primary:#2f6fae;--primary-soft:#dcebf8;--on-primary:#fff;--chip-ink:#1f4e79;--yolk:#e0a526;--yolk-soft:#fff1c9;--yolk-ink:#8a5a00;--lethal:#c0392b;--focus:#1f5fbf;--chart:#2e78c2;--grid:#e3eef8;--font-body:"M PLUS Rounded 1c", system-ui, -apple-system, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;--font-mono:ui-monospace, "SFMono-Regular", "Cascadia Mono", "Consolas", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.625rem;--radius:12px;--radius-card:18px;--radius-pill:999px;--gutter:16px;--tap:44px;--shadow-card:0 1px 0 var(--line), 0 6px 16px -10px color-mix(in srgb, var(--primary) 30%, transparent)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#0f1a24;--surface:#172533;--surface-soft:#1c2d3d;--ink:#e3eef7;--muted:#9db4c8;--line:#2a3b4b;--primary:#7db4ea;--primary-soft:#23384d;--on-primary:#0b1a28;--chip-ink:#cfe3f7;--yolk:#e8b84a;--yolk-soft:#3a3120;--yolk-ink:#f0c867;--lethal:#ef6a57;--focus:#8ab4ff;--chart:#4a93db;--grid:#22323f;--shadow-card:0 1px 0 var(--line)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--text-md);overflow-wrap:anywhere;margin:0;line-height:1.6}th,td,.btn{overflow-wrap:break-word}a{color:var(--primary)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button,input,select,textarea{font:inherit;color:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}input,select,textarea{min-width:0;max-width:100%}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{appearance:none;min-height:var(--tap);text-align:left}:where(input[type=date],input[type=time],input[type=datetime-local],input[type=month]){border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:6px 10px}input::-webkit-date-and-time-value{text-align:left;min-width:0}.field{grid-template-columns:minmax(0,1fr);gap:4px;min-width:0;display:grid}.field__label{font-size:var(--text-sm);font-weight:700}.field__hint{font-size:var(--text-xs);color:var(--muted)}.field input,.field select,.field textarea{contain:inline-size;width:100%;min-width:0;min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:8px 12px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--focus)}.btn{min-height:var(--tap);border:1.5px solid var(--line);border-radius:calc(var(--tap) / 2);background:var(--surface);color:var(--chip-ink);text-align:center;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:6px 18px;font-weight:700;line-height:1.35;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn--primary{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.btn--danger{border-color:var(--lethal);color:var(--lethal)}.btn--quiet{color:var(--muted);border-color:#0000;padding:0 10px}.form-error{border-left:4px solid var(--lethal);background:color-mix(in srgb, var(--lethal) 10%, transparent);font-size:var(--text-sm);margin:0;padding:8px 12px}
