@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&display=swap";
:root{--odin-brown-900:#4a1f0f;--odin-brown-700:#6b3219;--odin-terracotta-600:#a95325;--odin-caramel-500:#d98232;--odin-gold-400:#f2a653;--odin-cream-100:#fff2d5;--odin-ivory-50:#fff9ea;--odin-pink-400:#ee7587;--odin-wine-700:#7a2928;--odin-white:#fff;--odin-border:#e7cfa8;--font-ui:"Nunito", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--background:var(--odin-ivory-50);--foreground:var(--odin-brown-900);--card:var(--odin-white);--card-foreground:var(--odin-brown-900);--popover:var(--odin-white);--popover-foreground:var(--odin-brown-900);--primary:var(--odin-brown-900);--primary-foreground:var(--odin-white);--secondary:var(--odin-cream-100);--secondary-foreground:var(--odin-brown-900);--muted:var(--odin-cream-100);--muted-foreground:var(--odin-brown-700);--accent:#fff0dc;--accent-foreground:var(--odin-brown-900);--destructive:var(--odin-wine-700);--border:var(--odin-border);--input:var(--odin-border);--ring:var(--odin-caramel-500);--chart-1:var(--odin-terracotta-600);--chart-2:var(--odin-caramel-500);--chart-3:var(--odin-gold-400);--chart-4:var(--odin-pink-400);--chart-5:var(--odin-brown-700);--sidebar:var(--odin-cream-100);--sidebar-foreground:var(--odin-brown-900);--sidebar-primary:var(--odin-brown-900);--sidebar-primary-foreground:var(--odin-white);--sidebar-accent:#fff9ea;--sidebar-accent-foreground:var(--odin-brown-900);--sidebar-border:var(--odin-border);--sidebar-ring:var(--odin-caramel-500);--radius:1.25rem}html,body{background:var(--odin-ivory-50)}body{color:var(--odin-brown-900);font-family:var(--font-ui);line-height:1.55}button,input,textarea,select{font-family:var(--font-ui)}h1,h2,h3{color:var(--odin-brown-900);font-family:var(--font-ui)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--odin-ivory-50);outline-offset:2px;box-shadow:0 0 0 5px var(--odin-terracotta-600)}.hub-sidebar{background:var(--odin-cream-100);padding:12px}.brand{min-height:172px;color:var(--odin-brown-900);place-items:center;padding:16px 16px 12px;display:grid;position:relative}.brand>span{color:#0000;background:url(/logo-odin-pet-hub.png) 50%/contain no-repeat;border-radius:0;width:160px;height:144px;display:block;transform:none}.brand>span svg{display:none}.brand>div{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav-caption{color:var(--odin-brown-700);letter-spacing:.13em;padding:16px 26px 12px;font-size:.75rem;font-weight:800}.hub-sidebar [data-slot=sidebar-menu]{gap:8px;padding:0 15px}.hub-sidebar [data-slot=sidebar-menu-button]{min-height:44px;color:var(--odin-brown-900);border-radius:.875rem;font-weight:700}.hub-sidebar [data-slot=sidebar-menu-button]:hover{background:#ffffffb8}.hub-sidebar [data-slot=sidebar-menu-button][data-active=true]{background:var(--odin-brown-900);color:var(--odin-white);box-shadow:0 5px 14px #4a1f0f29}.hub-sidebar [data-slot=sidebar-menu-button][data-active=true] svg{color:var(--odin-gold-400)}.sidebar-note{border:1px solid var(--odin-border);background:#ffffffc7;border-radius:1.25rem;margin:32px 23px 20px;box-shadow:0 8px 22px #4a1f0f12}.sidebar-note svg{color:var(--odin-terracotta-600)}.sidebar-note strong,.account strong{color:var(--odin-brown-900);font-weight:800}.sidebar-note p,.account small{color:var(--odin-brown-700)}.account{border-color:var(--odin-border)}.account>span{background:var(--odin-gold-400);color:var(--odin-brown-900);font-weight:800}.topbar{border-color:var(--odin-border);min-height:76px;color:var(--odin-brown-700);background:#fff9eaeb;font-weight:700}.separator{color:var(--odin-caramel-500)}.private-tag{border:1px solid var(--odin-border);background:var(--odin-cream-100);color:var(--odin-brown-900);border-radius:999px;font-weight:800}main{padding-top:42px}.eyebrow,.pill-label{color:var(--odin-terracotta-600);font-weight:800}h1{letter-spacing:-.045em;font-size:clamp(2rem,2.6vw,2.5rem);font-weight:800}.page-heading p,.context-note,.form-note{color:var(--odin-brown-700)}.primary-button{background:var(--odin-brown-900);min-height:44px;color:var(--odin-white);border-radius:999px;font-weight:800;box-shadow:0 6px 16px #4a1f0f29}.primary-button:hover{background:var(--odin-brown-700);box-shadow:0 8px 20px #4a1f0f38}.stat,.panel,.pet-card,.document-card,.pet-mini{border-color:var(--odin-border);background:var(--odin-white);box-shadow:0 10px 30px #4a1f0f12}.stat{border-radius:1.25rem}.stat:hover{border-color:var(--odin-caramel-500);box-shadow:0 12px 32px #4a1f0f21}.stat-icon{background:var(--odin-cream-100);color:var(--odin-terracotta-600)}.stat:nth-child(2) .stat-icon{color:var(--odin-terracotta-600);background:#fff0dc}.stat:nth-child(3) .stat-icon{color:var(--odin-terracotta-600);background:#fff7df}.stat:nth-child(4) .stat-icon{color:var(--odin-wine-700);background:#fff0f1}.stat-value,.section-title h2,.pet-card-head h2,.pet-mini strong,.record-body strong,.document-card h3{color:var(--odin-brown-900);font-weight:800}.stat p,.pet-card-head p,.pet-mini div>span,.record-body span,.record-body small,.document-card p,.document-card small,.muted,.pet-facts dt,.detail-grid dt,.timeline-date,.timeline-item small,.mini-timeline small{color:var(--odin-brown-700)}.welcome-card{border-color:var(--odin-border);background:var(--odin-cream-100);border-radius:1.5rem;box-shadow:0 14px 34px #4a1f0f17}.welcome-copy h2{color:var(--odin-brown-900);letter-spacing:-.04em;font-size:clamp(1.875rem,2.5vw,2.25rem);font-weight:800}.welcome-copy p{color:var(--odin-brown-700)}.pet-photo{background:radial-gradient(circle at 52% 35%,#fffdf6 0,#fff2d5 52%,#f2a653 150%);overflow:hidden}.pet-photo>img{display:none}.pet-photo:before{z-index:0;content:"";background:url(/odin-mascote.png) bottom/contain no-repeat;position:absolute;inset:16px 12px 0}.pet-photo>span{z-index:1;color:var(--odin-brown-900);background:#ffffffeb;border-color:#4a1f0f1f;border-radius:999px;font-weight:700}.panel,.pet-card,.document-card{border-radius:1.25rem}.section-title>button,.text-button{color:var(--odin-brown-900);font-weight:800}.section-title>button:hover,.text-button:hover{color:var(--odin-terracotta-600)}.empty-icon{background:var(--odin-cream-100);color:var(--odin-terracotta-600)}.empty-inline>svg{color:var(--odin-terracotta-600)}.empty-inline h3,.blank [data-slot=empty-title]{color:var(--odin-brown-900);font-weight:800}.empty-inline p,.blank [data-slot=empty-description]{color:var(--odin-brown-700)}.picker,input,textarea,select,.record-dialog .picker{border-color:var(--odin-border);background:var(--odin-white);color:var(--odin-brown-900)}input::placeholder,textarea::placeholder{color:#9b6b50}.search-field,.search-field svg{color:var(--odin-brown-700)}.file-input{border-color:var(--odin-caramel-500);background:#fff8e8}.file-input small{color:var(--odin-brown-700)}.pet-avatar{border:1px solid var(--odin-border);background:var(--odin-cream-100);color:var(--odin-terracotta-600)}.pet-card-actions,.pet-notes,.record-row,.calendar-grid,.calendar-day,.calendar-blank{border-color:var(--odin-border)}.pet-notes,.icon-button{color:var(--odin-brown-700)}.icon-button:hover{background:var(--odin-cream-100);color:var(--odin-brown-900)}.danger:hover{color:var(--odin-wine-700);background:#fff0f0}.entry-icon{background:var(--odin-cream-100);color:var(--odin-terracotta-600)}.entry-icon.medication{color:var(--odin-terracotta-600);background:#fff0dc}.entry-icon.administration{color:#2f7650;background:#e8f4eb}.entry-icon.event{color:var(--odin-terracotta-600);background:#fff1df}.entry-icon.reminder{color:var(--odin-wine-700);background:#fff0f1}.status{border:1px solid var(--odin-border);background:var(--odin-cream-100);color:var(--odin-brown-900);font-weight:800}.status.amber{color:var(--odin-brown-700);background:#fff5df}.status.gray{color:var(--odin-brown-700);background:#f7f1ed;border-color:#d8c8bf}.notice{border-color:var(--odin-gold-400);color:var(--odin-brown-900);background:#fff7df}.notice p,.notice small{color:var(--odin-brown-700)}.folder-list button{border-color:var(--odin-border);background:var(--odin-white);color:var(--odin-brown-700);border-radius:999px;font-weight:700}.folder-list button:hover,.folder-list button.selected{border-color:var(--odin-brown-900);background:var(--odin-cream-100);color:var(--odin-brown-900)}.document-icon{background:var(--odin-cream-100);color:var(--odin-terracotta-600)}.document-actions .text-button{min-height:44px;font-size:.875rem}.timeline-item .document-actions,.linked-document .document-actions{margin-top:0}.linked-document{border-top:1px solid var(--odin-border);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 0;display:flex}.linked-document>span:first-child{min-width:160px;color:var(--odin-brown-900);overflow-wrap:anywhere;flex:1;font-weight:700}.calendar-day,.calendar-blank{background:var(--odin-white)}.calendar-blank{background:#fffaf0}.calendar-day>span,.calendar-week span{color:var(--odin-brown-700)}.calendar-day.today>span{background:var(--odin-brown-900);color:var(--odin-white)}.calendar-day.chosen{background:var(--odin-cream-100);box-shadow:inset 0 0 0 2px var(--odin-caramel-500)}.calendar-day small{color:var(--odin-brown-900);background:#fff0dc;font-weight:700}.export-panel{border-color:var(--odin-border);background:var(--odin-cream-100);border-radius:1.25rem}.export-panel svg{color:var(--odin-terracotta-600)}.export-panel strong{color:var(--odin-brown-900);font-weight:800}.export-panel small{color:var(--odin-brown-700)}.export-actions button{border-color:var(--odin-border);background:var(--odin-white);color:var(--odin-brown-900);font-weight:800}.timeline-dot,.mini-timeline>button>span{border-color:var(--odin-cream-100);background:var(--odin-terracotta-600)}.timeline-item:not(:last-child):before{background:var(--odin-border)}.page-footer{color:var(--odin-brown-700)}.recipe-candidates{gap:12px;margin-top:16px;display:grid}.recipe-candidate{border:1px solid var(--odin-border);background:#fffdfb;border-radius:10px;padding:16px}.recipe-candidate>strong{color:var(--odin-brown-900);margin-bottom:12px;display:block}.recipe-candidate dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 16px;margin-bottom:14px;display:grid}.recipe-candidate dt{color:var(--odin-brown-700);font-size:12px}.recipe-candidate dd{overflow-wrap:anywhere;margin:2px 0 0}.recipe-raw{margin-top:18px}.recipe-raw summary{cursor:pointer;color:var(--odin-brown-700)}.recipe-raw label{margin-top:12px;display:block}.recipe-raw textarea{width:100%;margin-top:6px}@media (max-width:800px){.brand{min-height:160px}.brand>span{width:148px;height:132px}.pet-photo:before{inset:12px 24px 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
