:root{--text:#3f3f46;--text-h:#18181b;--text-muted:#71717a;--bg:#fafafa;--surface:#fff;--border:#e4e4e7;--accent:#16a34a;--accent-contrast:#fff;--danger:#dc2626;--danger-bg:#fef2f2;--warning:#d97706;--warning-bg:#fffbeb;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font:15px/1.5 system-ui,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#d4d4d8;--text-h:#f4f4f5;--text-muted:#a1a1aa;--bg:#18181b;--surface:#232326;--border:#3f3f46;--accent:#22c55e;--accent-contrast:#052e11;--danger-bg:#2a1414;--warning-bg:#2a2010}}*{box-sizing:border-box}body{margin:0}h1{color:var(--text-h);margin:0;font-size:22px}h2{color:var(--text-h);margin:24px 0 8px;font-size:17px}a{color:var(--accent)}button,.button{font:inherit;background:var(--accent);color:var(--accent-contrast);cursor:pointer;border:none;border-radius:6px;padding:8px 14px;text-decoration:none;display:inline-block}button:disabled{opacity:.6;cursor:default}.button-secondary{color:var(--text-h);border:1px solid var(--border);background:0 0}.inline-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;display:flex}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.form-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:16px 20px}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:24px;padding:12px 20px;display:flex}.app-brand{align-items:center;line-height:0;display:flex}.app-brand img{width:auto;height:36px}.app-nav{flex:1;gap:16px;display:flex}.app-nav a{color:var(--text-muted);border-bottom:2px solid #0000;padding:4px 0;text-decoration:none}.app-nav a.active{color:var(--text-h);border-bottom-color:var(--accent)}.app-user{color:var(--text-muted);align-items:center;gap:12px;font-size:13px;display:flex}.app-user button{color:var(--text-muted);border:1px solid var(--border);background:0 0}.app-user-link{color:var(--text-muted);text-decoration:none}.app-user-link:hover{color:var(--text-h);text-decoration:underline}.app-content{flex:1;width:100%;max-width:960px;margin:0 auto;padding:24px 20px 48px}.page-loading{text-align:center;color:var(--text-muted);padding:40px}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:14px;width:320px;padding:32px;display:flex}.login-logo{border-radius:20px;align-self:center;width:96px;height:auto;margin-bottom:8px;box-shadow:0 8px 20px -8px #00000059}.splash-screen{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.splash-logo{border-radius:28px;width:140px;height:auto;animation:.6s cubic-bezier(.34,1.56,.64,1) both splash-in,1.6s ease-in-out .6s infinite splash-pulse;box-shadow:0 16px 40px -12px #0006}@keyframes splash-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes splash-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.app-fade-in{animation:.35s both fade-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.splash-logo,.app-fade-in{animation:none}}.form,.login-form{flex-direction:column;gap:14px;display:flex}.form{max-width:480px}.form-inline{flex-flow:wrap;align-items:flex-end;gap:10px;max-width:none;padding:10px 0}.form-inline label{flex:1;max-width:320px}.users-actions-cell{flex-wrap:wrap;gap:8px;display:flex}label{color:var(--text-muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.checkbox-label{flex-direction:row;align-items:center;gap:8px}.checkbox-label input[type=checkbox]{width:auto}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:6px;padding:8px 10px}.form-error{color:var(--danger);margin:0;font-size:13px}.hint{color:var(--text-muted);margin:0 0 16px;font-size:13px}.margin-positive{color:var(--success,#1d5214);font-weight:600}.margin-negative{color:var(--danger);font-weight:600}.sub-tabs{border-bottom:1px solid var(--border);gap:20px;margin-bottom:20px;display:flex}.sub-tab{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 2px}.sub-tab.active{color:var(--text-h);border-bottom-color:var(--accent);font-weight:600}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.page-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.page-description{color:var(--text-muted);margin:-8px 0 16px;font-size:13px}.form-success{color:var(--success,#1d5214);margin:0;font-size:13px}.intervention-layout{grid-template-columns:1fr 340px;align-items:start;gap:20px;display:grid}.intervention-table-scroll{border:1px solid var(--border);border-radius:8px;max-height:60vh;overflow-y:auto}.intervention-table-scroll .data-table{border:none}.intervention-table-scroll thead th{background:var(--surface);position:sticky;top:0}.intervention-form{max-width:none;position:sticky;top:16px}.intervention-selection-count{color:var(--text-muted);margin:-6px 0 4px;font-size:13px}@media (width<=900px){.intervention-layout{grid-template-columns:1fr}}.data-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:8px;width:100%;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px;font-size:14px}.data-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.data-table tbody tr:last-child td{border-bottom:none}.row-overdue td{background:var(--danger-bg)}.badge{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge-overdue{background:var(--danger-bg);color:var(--danger)}.badge-upcoming{background:var(--warning-bg);color:var(--warning)}.badge-neutral{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent)}.detail-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;align-items:flex-start;gap:20px;padding:16px 20px;display:flex}.animal-photo{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:140px;height:140px}.photo-picker{align-items:center;gap:16px;margin-bottom:8px;display:flex}.photo-picker-preview{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:100px;height:100px}.photo-picker-placeholder{text-align:center;width:100px;height:100px;color:var(--text-muted);border:1px dashed var(--border);border-radius:8px;justify-content:center;align-items:center;font-size:12px;display:flex}.detail-card dl{flex:1;grid-template-columns:auto 1fr;gap:4px 16px;min-width:240px;margin:0;display:grid}.detail-card dt{color:var(--text-muted);font-size:13px}.detail-card dd{color:var(--text-h);margin:0}.stat-total{margin-bottom:12px;font-size:15px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:16px 0 28px;display:grid}.stat-tile{background:var(--surface);border:1px solid var(--border);color:inherit;border-radius:10px;flex-direction:column;gap:4px;padding:16px 18px;text-decoration:none;display:flex}.stat-value{color:var(--text-h);font-size:28px;font-weight:700}.stat-label{color:var(--text-muted);font-size:13px}.stat-tile-overdue .stat-value{color:var(--danger)}.stat-tile-upcoming .stat-value{color:var(--warning)}.filter-label{flex-direction:row;align-items:center;gap:8px;margin-bottom:16px;display:inline-flex}.audit-day-group{margin-bottom:24px}.audit-day-heading{color:var(--text-muted);text-transform:capitalize;border-bottom:1px solid var(--border);margin:0 0 8px;padding-bottom:6px;font-size:13px;font-weight:600}.audit-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.audit-entry{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.audit-entry-summary{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;display:flex}.audit-entry-entity{color:var(--text-muted);min-width:90px;font-size:12px;font-weight:600}.audit-entry-text{color:var(--text-h);flex:1;font-size:14px}.audit-entry-meta{color:var(--text-muted);white-space:nowrap;font-size:12px}.audit-entry-detail{padding:0 14px 14px}.audit-entry-detail .data-table{font-size:13px}.role-picker{flex-direction:column;gap:16px;display:flex}.role-options{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.role-option{border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.role-option input[type=radio]{align-self:flex-start;width:auto}.role-option-selected{border-color:var(--accent);background:var(--surface)}.role-option-label{color:var(--text-h);font-weight:600}.role-option-description{color:var(--text-muted);font-size:12px}.role-features{border:1px solid var(--border);border-radius:8px;padding:12px 16px}.role-features-title{color:var(--text-h);margin:0 0 8px;font-size:13px;font-weight:600}.role-feature-row{align-items:center;gap:8px;padding:3px 0;font-size:13px;display:flex}.role-feature-row input[type=checkbox]{width:auto}.role-feature-disabled{color:var(--text-muted);text-decoration:line-through}
