:root{--color-prussian-blue:#031d44;--color-deep-space-blue:#04395e;--color-muted-teal:#70a288;--color-tan:#dab785;--color-burned-peach:#d5896f;--color-bg:#f8f9fa;--color-surface:#fff;--color-surface-hover:#f1f3f5;--color-border:#e9ecef;--color-border-focus:var(--color-deep-space-blue);--color-text:#212529;--color-text-muted:#868e96;--color-primary:var(--color-deep-space-blue);--color-primary-hover:var(--color-prussian-blue);--color-primary-text:#fff;--color-danger:#e03131;--color-danger-hover:#c92a2a;--color-success:var(--color-muted-teal);--color-warning:var(--color-tan);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 10px 15px #0000001a;--transition-fast:.15s ease;--transition-normal:.25s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-md);color:var(--color-text);background-color:var(--color-bg);min-height:100vh;line-height:1.6}#root{flex-direction:column;min-height:100vh;display:flex}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit;font-size:inherit}input,select,textarea{font-family:inherit;font-size:inherit}h1,h2,h3,h4{line-height:1.3}.toast-viewport{bottom:var(--space-lg);right:var(--space-lg);gap:var(--space-sm);z-index:100;flex-direction:column;width:360px;max-width:100vw;margin:0;padding:0;list-style:none;display:flex;position:fixed}.toast-root{gap:var(--space-xs);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:relative}.toast-root[data-state=open]{animation:toastSlideIn var(--transition-normal)}.toast-root[data-state=closed]{animation:toastSlideOut var(--transition-fast)}.toast-success{border-left:4px solid var(--color-success)}.toast-error{border-left:4px solid var(--color-danger)}.toast-info{border-left:4px solid var(--color-primary)}.toast-title{font-weight:600;font-size:var(--font-size-md);color:var(--color-text)}.toast-description{font-size:var(--font-size-sm);color:var(--color-text-muted)}.toast-close{top:var(--space-sm);right:var(--space-sm);font-size:var(--font-size-lg);color:var(--color-text-muted);padding:0 var(--space-xs);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;line-height:1;position:absolute}.toast-close:hover{color:var(--color-text);background:var(--color-surface-hover)}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.layout{flex-direction:column;min-height:100vh;display:flex}.layout-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:10;position:sticky;top:0}.layout-header-content{max-width:960px;padding:var(--space-md) var(--space-lg);align-items:center;gap:var(--space-lg);margin:0 auto;display:flex}.layout-logo{font-size:var(--font-size-xl);color:var(--color-primary);font-weight:700;text-decoration:none}.layout-logo:hover{opacity:.9;text-decoration:none}.layout-nav{gap:var(--space-sm);flex:1;display:flex}.layout-nav-link{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-md);transition:color var(--transition-fast), background var(--transition-fast);font-weight:500;text-decoration:none}.layout-nav-link:hover{color:var(--color-text);background:var(--color-surface-hover);text-decoration:none}.layout-nav-link-active{color:var(--color-primary);background:#4263eb14}.layout-settings-link{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-text-muted);transition:color var(--transition-fast), background var(--transition-fast);justify-content:center;align-items:center;margin-left:auto;text-decoration:none;display:flex}.layout-settings-link:hover{color:var(--color-text);background:var(--color-surface-hover);text-decoration:none}.layout-settings-link.layout-nav-link-active{color:var(--color-primary);background:#4263eb14}.layout-main{width:100%;max-width:960px;padding:var(--space-xl) var(--space-lg);flex:1;margin:0 auto}.drop-zone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2xl) var(--space-xl);text-align:center;cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);background:var(--color-surface)}.drop-zone:hover{border-color:var(--color-border-focus);background:var(--color-surface-hover)}.drop-zone:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.drop-zone-dragging{border-color:var(--color-primary);background:#4263eb0a}.drop-zone-input{display:none}.drop-zone-content{align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.drop-zone-icon{color:var(--color-text-muted);margin-bottom:var(--space-sm)}.drop-zone-dragging .drop-zone-icon{color:var(--color-primary)}.drop-zone-text{font-size:var(--font-size-md);color:var(--color-text)}.drop-zone-hint{font-size:var(--font-size-sm);color:var(--color-text-muted)}.home-page{gap:var(--space-xl);flex-direction:column;display:flex}.home-page-hero{text-align:center;padding:var(--space-xl) 0}.home-page-title{font-size:var(--font-size-2xl);color:var(--color-text);margin-bottom:var(--space-sm);font-weight:700}.home-page-subtitle{font-size:var(--font-size-lg);color:var(--color-text-muted)}.home-page-actions{gap:var(--space-xl);flex-direction:column;width:100%;max-width:600px;margin:0 auto;display:flex}.home-page-card{gap:var(--space-md);flex-direction:column;display:flex}.home-page-card-title{font-size:var(--font-size-xl);font-weight:600}.home-page-card-description{color:var(--color-text-muted);font-size:var(--font-size-md)}.home-page-divider{align-items:center;gap:var(--space-md);display:flex}.home-page-divider:before,.home-page-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.home-page-divider-text{color:var(--color-text-muted);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.home-page-new-button{padding:var(--space-md) var(--space-lg);background:var(--color-primary);color:var(--color-primary-text);border-radius:var(--radius-md);font-size:var(--font-size-md);transition:background var(--transition-fast);gap:var(--space-md);justify-content:center;align-self:center;width:100%;font-weight:600;display:flex}.home-page-new-button:hover{background:var(--color-primary-hover)}.select-wrapper{gap:var(--space-xs);flex-direction:column;display:flex}.select-label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:500}.select-trigger{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-text);cursor:pointer;min-width:180px;height:40px;transition:border-color var(--transition-fast);display:inline-flex}.select-trigger:hover{border-color:var(--color-border-focus)}.select-trigger:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.select-trigger[data-placeholder]{color:var(--color-text-muted)}.select-trigger-error,.select-trigger-error:hover{border-color:var(--color-danger)}.select-trigger-error:focus-visible{outline-color:var(--color-danger)}.select-icon{color:var(--color-text-muted);align-items:center;display:flex}.select-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;min-width:var(--radix-select-trigger-width);overflow:hidden}.select-viewport{padding:var(--space-xs)}.select-item{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-md);color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;justify-content:space-between;align-items:center;display:flex}.select-item[data-highlighted]{background:var(--color-primary);color:var(--color-primary-text)}.select-item-indicator{align-items:center;display:flex}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{inset-inline-start:0;height:var(--rdp-nav-height);display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{inset-inline-end:0;height:var(--rdp-nav-height);justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.date-input-wrapper{align-items:center;display:flex;position:relative}.date-input-field{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-text);background:var(--color-surface);width:100%;height:40px;transition:border-color var(--transition-fast);padding-right:36px}.date-input-field:hover{border-color:var(--color-border-focus)}.date-input-field:focus{outline:2px solid var(--color-border-focus);outline-offset:-1px;border-color:var(--color-border-focus)}.date-input-field::placeholder{color:var(--color-text-muted)}.date-input-field-error,.date-input-field-error:hover{border-color:var(--color-danger)}.date-input-field-error:focus{outline-color:var(--color-danger);border-color:var(--color-danger)}.date-input-trigger{width:28px;height:28px;color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.date-input-trigger:hover{color:var(--color-text);background-color:var(--color-surface-hover)}.date-input-popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-md);z-index:200;animation:date-input-popover-in var(--transition-fast)}@keyframes date-input-popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.date-input-popover .rdp-root{--rdp-accent-color:var(--color-primary);--rdp-accent-background-color:var(--color-primary);--rdp-day_button-height:36px;--rdp-day_button-width:36px;font-family:var(--font-family);font-size:var(--font-size-sm)}.date-input-popover .rdp-selected .rdp-day_button{background-color:var(--color-primary);color:var(--color-primary-text);border-radius:var(--radius-md)}.date-input-popover .rdp-today:not(.rdp-selected) .rdp-day_button{color:var(--color-primary);font-weight:700}.animal-form{gap:var(--space-xl);flex-direction:column;display:flex}.animal-form-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.animal-form-section-title{font-size:var(--font-size-lg);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border);font-weight:600}.animal-form-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.form-section-title{font-weight:500}.form-section{background-color:var(--color-surface);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);border-color:var(--color-border);border-style:solid;border-width:1px}.form-section-header{border-width:1px;border-bottom-style:solid;border-color:var(--color-border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.text-field{gap:var(--space-xs);flex-direction:column;display:flex}.text-field-label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:500}.text-field-input{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-text);background:var(--color-surface);height:40px;transition:border-color var(--transition-fast)}.text-field-input:hover{border-color:var(--color-border-focus)}.text-field-input:focus{outline:2px solid var(--color-border-focus);outline-offset:-1px;border-color:var(--color-border-focus)}.text-field-input::placeholder{color:var(--color-text-muted)}.text-field-input-error,.text-field-input-error:hover{border-color:var(--color-danger)}.text-field-input-error:focus{outline-color:var(--color-danger);border-color:var(--color-danger)}.text-field-error-text{font-size:var(--font-size-sm);color:var(--color-danger);line-height:1.3}.icon-button{padding:var(--space-md) var(--space-lg);background:var(--color-primary);color:var(--color-primary-text);border-radius:var(--radius-md);font-size:var(--font-size-md);transition:background var(--transition-fast);gap:var(--space-md);border:none;align-self:flex-start;font-weight:500;display:flex}.icon-button-sm{padding:var(--space-sm) var(--space-md);background:var(--color-primary);color:var(--color-primary-text);border-radius:var(--radius-md);font-size:var(--font-size-md);transition:background var(--transition-fast);gap:var(--space-md);border:none;align-self:flex-start;font-weight:500;display:flex}.icon-button:hover,.icon-button-sm:hover{background:var(--color-primary-hover)}.modal-overlay{z-index:100;background:#0006;animation:.15s ease-out modal-overlay-show;position:fixed;inset:0}.modal-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-lg);z-index:101;width:90%;max-width:480px;max-height:85vh;animation:.15s ease-out modal-content-show;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.modal-content:focus{outline:none}.modal-title{font-size:var(--font-size-lg);margin-bottom:var(--space-lg);font-weight:600}@keyframes modal-overlay-show{0%{opacity:0}to{opacity:1}}@keyframes modal-content-show{0%{opacity:0;transform:translate(-50%,-48%)scale(.96)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.weight-chart{margin-top:var(--space-lg);padding-top:var(--space-lg)}.weight-chart-svg{width:100%;height:auto;display:block}.weight-chart-grid{stroke:var(--color-border);stroke-width:1px;stroke-dasharray:4 4}.weight-chart-line{stroke:var(--color-primary);stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round}.weight-chart-dot{fill:var(--color-burned-peach)}.weight-chart-label{fill:var(--color-text-muted);font-size:11px}.weight-chart-tick{stroke:var(--color-text-muted);stroke-width:1px}.weight-chart-tick-label{stroke:var(--color-text-muted);stroke-width:2px}.multiselect-wrapper{gap:var(--space-xs);flex-direction:column;display:flex;position:relative}.multiselect-label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:500}.multiselect-trigger{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-text);cursor:pointer;min-width:180px;height:40px;transition:border-color var(--transition-fast);text-align:left;display:inline-flex}.multiselect-trigger:hover{border-color:var(--color-border-focus)}.multiselect-trigger:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.multiselect-trigger-error,.multiselect-trigger-error:hover{border-color:var(--color-danger)}.multiselect-trigger-error:focus-visible{outline-color:var(--color-danger)}.multiselect-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.multiselect-placeholder{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.multiselect-icon{color:var(--color-text-muted);flex-shrink:0;align-items:center;display:flex}.multiselect-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;min-width:var(--radix-select-trigger-width,180px);margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow:hidden}.multiselect-viewport{padding:var(--space-xs)}.multiselect-item{width:100%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-md);color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;background:0 0;border:none;outline:none;justify-content:space-between;align-items:center;display:flex}.multiselect-item:hover{background:var(--color-primary);color:var(--color-primary-text)}.multiselect-item-indicator{align-items:center;display:flex}.event-form{gap:var(--space-md);flex-direction:column;display:flex}.event-form-row{gap:var(--space-sm);align-items:center;display:flex}.event-form-confirm{padding:var(--space-sm) var(--space-md);background:var(--color-success);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;width:100%;height:40px;transition:background var(--transition-fast);border:none;font-weight:500}.event-form-confirm:hover{opacity:.9}.event-form-error{font-size:var(--font-size-sm);color:var(--color-danger)}.event-form-input{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-text);background:var(--color-surface);width:160px;height:40px;transition:border-color var(--transition-fast)}.event-form-input:focus{outline:2px solid var(--color-border-focus);outline-offset:-1px;border-color:var(--color-border-focus)}.event-form-input-short{width:100px}.event-empty{color:var(--color-text-muted);font-size:var(--font-size-md);text-align:center;padding:var(--space-xl) 0}.event-table{border-collapse:collapse;width:100%}.event-table th{text-align:left;font-size:var(--font-size-sm);color:var(--color-text-muted);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);font-weight:500}.event-table th:last-child{width:48px}.event-table td{padding:var(--space-sm) var(--space-md);font-size:var(--font-size-md);border-bottom:1px solid var(--color-border)}.event-table tr:last-child td{border-bottom:none}.event-table-muted{color:var(--color-text-muted)}.event-delete-btn{color:var(--color-text-muted);padding:var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.event-delete-btn:hover{color:var(--color-danger);background:var(--color-surface-hover)}.event-timeline-list{gap:var(--space-md);flex-direction:column;display:flex}.event-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);transition:box-shadow var(--transition-fast);position:relative}.event-card:hover{box-shadow:0 1px 4px #0000000f}.event-card-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.event-card-date{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.event-card-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.4;display:inline-block}.event-card-badge--vaccination{color:#1e40af;background:#dbeafe}.event-card-badge--pest_control{color:#166534;background:#dcfce7}.event-card-badge--weighing{color:#9a3412;background:#ffedd5}.event-card-badge--appointment{color:#5b21b6;background:#ede9fe}.event-card-body{gap:var(--space-xs) var(--space-lg);font-size:var(--font-size-md);flex-wrap:wrap;display:flex}.event-card-field{gap:var(--space-xs);display:flex}.event-card-field-label{color:var(--color-text-muted);font-size:var(--font-size-sm)}.event-card-field-value{font-size:var(--font-size-sm)}.event-card-delete{top:var(--space-sm);right:var(--space-sm);color:var(--color-text-muted);padding:var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity var(--transition-fast), color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute}.event-card:hover .event-card-delete{opacity:1}.event-card-delete:hover{color:var(--color-danger);background:var(--color-surface-hover)}.event-type-picker{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.event-type-picker-btn{align-items:center;gap:var(--space-xs);padding:var(--space-lg) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-md);color:var(--color-text);transition:border-color var(--transition-fast), background var(--transition-fast);flex-direction:column;font-weight:500;display:flex}.event-type-picker-btn:hover{border-color:var(--color-primary);background:var(--color-surface-hover)}.animal-page{gap:var(--space-xl);flex-direction:column;display:flex}.animal-page-header{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.animal-page-header-left,.animal-page-header-right{align-items:center;gap:var(--space-md);display:flex}.animal-page-title{font-size:var(--font-size-2xl);font-weight:700}.animal-page-badge{padding:var(--space-xs) var(--space-md);color:var(--color-primary);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-transform:capitalize;background:#4263eb14;font-weight:500;display:inline-flex}.animal-page-validate-btn{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);white-space:nowrap;font-weight:500;display:inline-flex}.animal-page-validate-btn:hover{border-color:var(--color-border-focus);background:var(--color-surface-hover)}.animal-page-validate-btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.animal-page-actions{gap:var(--space-sm);display:flex}.animal-page-export-btn{padding:var(--space-sm) var(--space-md);background:var(--color-primary);color:var(--color-primary-text);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:background var(--transition-fast);border:none;font-weight:500}.animal-page-export-btn:hover{background:var(--color-primary-hover)}.settings-page{gap:var(--space-xl);flex-direction:column;display:flex}.settings-page-title{font-size:var(--font-size-2xl);font-weight:700}.settings-page-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.settings-page-section-title{font-size:var(--font-size-lg);margin-bottom:var(--space-xs);font-weight:600}.settings-page-section-description{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}.settings-page-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);padding:var(--space-md) 0}.settings-page-list{gap:var(--space-sm);margin-bottom:var(--space-md);flex-direction:column;display:flex}.settings-page-row{align-items:center;gap:var(--space-sm);display:flex}.settings-page-value-badge{min-width:32px;height:32px;padding:0 var(--space-sm);background:var(--color-surface-hover);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.settings-page-label-input{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-text);background:var(--color-surface);height:40px;transition:border-color var(--transition-fast);flex:1}.settings-page-label-input:hover{border-color:var(--color-border-focus)}.settings-page-label-input:focus{outline:2px solid var(--color-border-focus);outline-offset:-1px;border-color:var(--color-border-focus)}.settings-page-label-input::placeholder{color:var(--color-text-muted)}.settings-page-delete-btn{width:36px;height:36px;color:var(--color-text-muted);border-radius:var(--radius-md);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-page-delete-btn:hover:not(:disabled){color:var(--color-danger);background:var(--color-surface-hover)}.settings-page-delete-btn-disabled{opacity:.35;cursor:not-allowed}.settings-page-add-btn{align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--color-surface);color:var(--color-primary);border:1px dashed var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);font-weight:500;display:inline-flex}.settings-page-add-btn:hover{border-color:var(--color-primary);background:var(--color-surface-hover)}.settings-page-practice-input{flex:.8}
