@charset "UTF-8";:root{--color-primary: #8200db;--color-primary-opac50: #9b3edd65;--color-primary-hover: #610eaf;--color-primary-bg: #ede9fe;--color-primary-bg-hover: #d6cff4;--color-secondary: #be185d;--color-secondary-bg: #fce7f3;--color-secondary-bg2: #f6cde4;--color-secondary-hover: #9d074a;--color-text: #1e1e1e;--color-text-secondary: #6b7280;--color-text-secondary-opac50: #6b728052;--color-bg: #f9fafb;--color-border: #e5e7eb;--color-border-opac25: #cfcfcf3b;--color-absolute: white;--color-gradient-start: #ec4899;--color-gradient-start-opac50: #ec489a85;--color-gradient-start-hover: #d41b74;--color-gradient-end: #8b5cf6;--color-gradient-end-hover: #4d08ee;--color-gradient-end-opac50: #8a5cf683;--font-base: "Inter", system-ui, sans-serif;--font-heading: "Poppins", sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--container-xs: 540px;--container-sm: 720px;--container-md: 960px;--container-lg: 1360px;--radius-sm: 4px;--radius-md: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 3px 6px rgba(0, 0, 0, .25);--transition: .2s ease-in-out;--color-success: #abffca;--color-success-text: #147638;--color-warning: #fbd74a;--color-warning-text: #866f10;--color-error-light: #ffd4d4;--color-error-hover: #ffb2b2;--color-error: #fb7e7e;--color-error-text: #da0b0b;--color-info: #72a6fb;--color-info-text: #103775;--color-warning-alert: rgb(255, 250, 197);--color-select-active: #8200db;--pink-bg: #fce7f3;--pink-text: #be185d;--orange-bg: #ffe3c2;--orange-text: #c2410c;--purple-bg: #ede9fe;--purple-text: #5b21b6;--blue-bg: #dbeafe;--blue-text: #1e40af;--yellow-bg: #fef3c7;--yellow-text: #847502;--gray-bg: #f3f4f6;--gray-text: #374151;--green-bg: #d1fae5;--green-text: #065f46;--turquoise-bg: #b7ffff;--turquoise-text: #0e8383}[data-theme=dark]{--color-primary: #a855f7;--color-primary-opac50: #a855f750;--color-primary-hover: #9333ea;--color-primary-bg: #3C2A72;--color-primary-bg-hover: #18054f;--color-secondary: #ec4899;--color-secondary-bg: #4a1e3a;--color-secondary-bg2: #5a2545;--color-secondary-hover: #f472b6;--color-text: #f2f2f2;--color-text-secondary: #b1b1b9;--color-text-secondary-opac50: #a1a1aa52;--color-bg: #0d0d0d;--color-border: #3f3f46;--color-absolute: #1f1f23;--color-gradient-start: #90436b;--color-gradient-start-opac50: #95215d85;--color-gradient-start-hover: #961e5a;--color-gradient-end: #60219b;--color-gradient-end-opac50: #5c219383;--color-gradient-end-hover: #4a0f82;--color-border-opac25: #e5e7eb3b;--color-success: #01752c;--color-success-text: #86efac;--color-warning: #fbbf24;--color-warning-text: #fde047;--color-error-light: #6b0505;--color-error-hover: #820101;--color-error: #f87171;--color-error-text: #fca5a5;--color-info: #60a5fa;--color-info-text: #93c5fd;--color-warning-alert: #7f5c04;--color-select-active: #ca7cff;--pink-bg: #4a1e3a;--pink-text: #f472b6;--orange-bg: #5a2a1a;--orange-text: #fb923c;--purple-bg: #3b1f5a;--purple-text: #a855f7;--blue-bg: #1e3a5f;--blue-text: #60a5fa;--yellow-bg: #5a4a1a;--yellow-text: #fbbf24;--gray-bg: #2a2a2f;--gray-text: #a1a1aa;--green-bg: #1a3a2a;--green-text: #4ade80;--turquoise-bg: #026363;--turquoise-text: #6ce7e7}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:62.5%}body{font-family:var(--font-base);background-color:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text);font-weight:600;line-height:1.2}p{margin-bottom:var(--space-md);color:var(--color-text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-primary-hover)}.container{width:100%;max-width:var(--container-lg);margin:0 auto;padding:0 var(--space-md)}@media(min-width:768px){.container{padding:0 var(--space-lg)}}@media(min-width:1280px){.container{padding:0 var(--space-xl)}}.text-center{text-align:center}.hidden{display:none}ul{list-style:none}.pet-section-card{background:var(--color-absolute);margin-top:20px;padding:30px;border-radius:14px;box-shadow:0 1px 4px #0000000d;border:1px solid var(--color-border-opac25)}.flex-center{display:flex;justify-content:center;align-items:center}input[type=date],input[type=time]{cursor:pointer;position:relative;isolation:isolate}input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;top:0;width:100%;height:100%;cursor:pointer;z-index:1;pointer-events:auto}input[type=date]::-webkit-inner-spin-button,input[type=date]::-webkit-outer-spin-button,input[type=time]::-webkit-inner-spin-button,input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=date]::-ms-clear,input[type=date]::-ms-reveal,input[type=time]::-ms-clear,input[type=time]::-ms-reveal{display:none}input:not([type=date]):not([type=time]),select,textarea{position:static;isolation:auto}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-internal-autofill-selected{-webkit-box-shadow:0 0 0 1000px var(--color-bg) inset!important;box-shadow:0 0 0 1000px var(--color-bg) inset!important;-webkit-text-fill-color:var(--color-text)!important;color:var(--color-text)!important;transition:background-color 5000s ease-in-out 0s}input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--color-absolute) inset!important;box-shadow:0 0 0 1000px var(--color-absolute) inset!important;-webkit-text-fill-color:var(--color-text)!important;color:var(--color-text)!important}.modal-content{position:relative}.modal-overlay{position:fixed;inset:0;background:#0000;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;z-index:999;transition:background .3s ease,backdrop-filter .3s ease,opacity .3s ease}.modal-overlay.open{background:#0006;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:1;pointer-events:all}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.modal-close-btn{position:absolute;top:1.2rem;right:1.2rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:50%;font-size:1.7rem;color:var(--color-text-secondary);cursor:pointer;transition:transform .25s ease,color .25s ease}.modal-close-btn:hover{color:var(--color-text);transform:rotate(90deg)}.login-container{border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:fadeIn .3s ease;display:flex;justify-content:center;align-items:center;width:100%;height:100%;font-family:var(--font-base);color:var(--color-text);background:var(--color-bg)}.login-card{background:var(--color-absolute);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:2.5rem 3rem;width:380px;text-align:center;transition:all var(--transition);border:1px solid var(--color-border-opac25)}.login-card h2{font-size:1.6rem;font-weight:600;margin-top:2.5rem;margin-bottom:.9rem;font-family:var(--font-heading);color:var(--color-text)}.subtitle{color:var(--color-text-secondary);font-size:1.05rem;margin-top:1.4rem;margin-bottom:1.8rem}.login-form{display:flex;flex-direction:column;gap:.7rem}.error{position:absolute;bottom:-25px;left:3px;color:var(--color-error);font-size:.9rem;opacity:0;transition:opacity .3s ease}.btn-login{background:linear-gradient(90deg,var(--color-gradient-start),var(--color-gradient-end));color:#fff;font-family:var(--font-heading);font-size:1.1rem;border:none;border-radius:6px;padding:1rem;margin-top:.7rem;cursor:pointer;transition:background var(--transition)}.btn-login:hover{background:linear-gradient(90deg,var(--color-secondary-hover),var(--color-primary-hover));opacity:.9}.separator{margin:.5rem 0;color:var(--color-text-secondary);font-size:1rem}.btn-google{display:flex;justify-content:center;align-items:center;font-size:1.1rem;gap:.6rem;padding:.9rem;border-radius:var(--radius-md);font-weight:500;border:1px solid var(--color-border);background:var(--color-absolute);color:var(--color-text);cursor:pointer;transition:all var(--transition)}.btn-google:hover{color:#fff;background:linear-gradient(90deg,var(--color-secondary-hover),var(--color-primary-hover));opacity:.9}.server{margin-bottom:.7rem}.forgot-password{width:100%;text-align:right;margin-top:-5px;margin-bottom:5px}.forgot-password a{color:var(--color-primary);font-size:inherit;text-decoration:none;font-weight:500;transition:color .2s ease}.forgot-password a:hover{text-decoration:underline;color:#9333ea}.login-card.loading{pointer-events:none;cursor:not-allowed;opacity:.7}.toggle-password{position:absolute;right:12px;top:50%;transform:translateY(-50%);cursor:pointer;font-size:1.4rem;color:var(--color-text-secondary);transition:color .2s ease;opacity:.6}.register-link{text-align:center;margin-top:1.3rem;margin-bottom:-3px}.register-link a{color:var(--color-primary);font-size:inherit;text-decoration:none;font-weight:500;transition:color .2s ease}.register-link a:hover{text-decoration:underline;color:var(-color-text)}.register-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%;font-family:var(--font-base);color:var(--color-text);background:var(--color-bg)}.register-card{background:var(--color-absolute);border-radius:12px;box-shadow:0 4px 25px #00000014;padding:2.5rem 3rem;width:380px;text-align:center;transition:all .3s ease;border:1px solid var(--color-border-opac25)}.register-icon span{display:inline-block;font-size:2.5rem;margin-bottom:.5rem;background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.heart-icon{color:#fff;border-radius:50%;padding:.6rem;background:linear-gradient(135deg,#ff55c0,#a855f7)}.register-card h2{font-size:1.6rem;font-weight:600;margin-bottom:.9rem;font-family:var(--font-heading);color:var(--color-text)}.register-card .subtitle{color:var(--color-text-secondary);font-size:1.05rem;margin-top:.8rem;margin-bottom:1.8rem}.register-form{display:flex;flex-direction:column;gap:.7rem}.input-group input:focus{border-color:var(--color-primary);background-color:var(--color-absolute);box-shadow:0 0 0 3px var(--color-primary-opac50)}.error{position:absolute;bottom:-31px;left:2px;color:var(--color-error);font-size:.9rem;text-align:left;opacity:0;transition:opacity .3s ease;pointer-events:none}.error.visible{opacity:1}.input-group:not(:has(.error)):after{content:"";display:block;min-height:0rem}.input-group:has(.error) .error{opacity:1}.btn-register{background:linear-gradient(90deg,var(--color-gradient-start),var(--color-gradient-end));font-family:var(--font-heading);color:#fff;font-size:1.1rem;font-weight:500;border:none;border-radius:6px;padding:1rem;margin-top:.7rem;cursor:pointer;transition:background var(--transition)}.btn-register:hover{background:linear-gradient(90deg,var(--color-secondary-hover),var(--color-primary-hover));opacity:.9}.login-link{color:var(--color-text-secondary);font-size:1.05rem;margin-top:1.3rem;margin-bottom:0}.login-link a{color:#a855f7;font-weight:500;text-decoration:none}.login-link a:hover{text-decoration:underline}.error.server{margin-top:.5rem;color:#e74c3c;font-weight:500}.success{margin-top:.5rem;color:#2ecc71;font-weight:500}.register-card.loading{opacity:.8;pointer-events:none;transform:scale(.99);transition:all .3s ease}.open-login-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-weight:100;padding:0;font-size:inherit}.open-login-btn:hover{color:var(--color-primary-hover);text-decoration:underline}.register-card.loading{pointer-events:none;cursor:not-allowed;opacity:.7}.toggle-password:hover{opacity:.9;color:var(-color-text)}.input-group input{padding-right:2.7rem}.register-page{display:flex;flex-direction:row;justify-content:center;min-height:100vh;transition:all .3s ease;margin:0;padding:0}.register-left{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));color:#fff;text-align:center;padding:var(--space-xl);padding-top:8rem;position:relative;overflow:hidden}.register-left .branding{max-width:420px;z-index:2;font-family:var(--font-base)}.register-left #pet-title{font-family:var(--font-heading);display:flex;color:#fff;font-size:2.6rem;margin-bottom:var(--space-sm);font-weight:700}.register-left .MdPets-icon{color:var(--color-text);margin-right:.5rem}.register-left p{color:#fff;font-size:1.05rem;line-height:1.5}.register-right{flex:1;display:flex;justify-content:center;align-items:space-between;background:var(--color-bg);transition:all var(--transition);overflow-y:auto;min-height:0}.register-right .register-container{align-items:center;height:auto;min-height:auto}@media(max-width:1023px){.register-page{position:relative;flex-direction:column}.register-left{padding:var(--space-lg);padding-top:8rem;position:absolute;width:100%;height:100%;pointer-events:none;justify-content:flex-start}.register-right{margin-bottom:4rem;flex:none;background:transparent;padding:0;padding-top:15rem;padding-bottom:2rem;width:100%;overflow-y:auto}.register-right .register-container{background:transparent;padding:var(--space-lg);width:90%;max-width:420px;margin:0 auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:flex-start;height:auto;min-height:auto}.register-left .branding{margin-bottom:var(--space-lg);align-self:center}#pet-title{justify-content:center;margin-top:0;font-size:2.3rem}#pet-subtitle{font-size:1.1rem}}.recover-container{background:var(--color-bg);font-family:var(--font-base);color:var(--color-text);display:flex;align-items:center;justify-content:center;height:100vh}.recover-card{min-height:230px;position:relative;width:400px;background:var(--color-absolute);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-md);padding:2.5rem 3rem;transition:all var(--transition);border:1px solid var(--color-border-opac25)}.recover-card .subtitle{color:var(--color-text-secondary);font-size:1.05rem;margin-top:1.4rem;margin-bottom:1.8rem}.recover-card h2{font-size:1.6rem;font-weight:600;margin-top:.9rem;margin-bottom:.9rem;font-family:var(--font-heading);color:var(--color-text)}.recover-form{display:flex;flex-direction:column;gap:.7rem}.input-group input{width:100%;padding:1.2rem .8rem 1.2rem 2.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:1.1rem;outline:none;transition:all var(--transition);font-family:inherit}.success{position:absolute;bottom:80px;left:50%;transform:translate(-50%);color:#16a34a;font-size:1rem;font-weight:500;opacity:0;transition:opacity .3s ease}.success.show{opacity:1}.error.server{position:absolute;bottom:110px;left:50%;transform:translate(-50%);color:#e74c3c;font-weight:500;font-size:.95rem}.btn-recover{margin-top:1rem;padding:1rem;width:100%;background:linear-gradient(90deg,var(--color-gradient-start),var(--color-gradient-end));border:none;color:#fff;border-radius:6px;font-family:var(--font-heading);font-size:1.1rem;cursor:pointer;transition:background var(--transition)}.btn-recover:hover{background:linear-gradient(90deg,var(--color-secondary-hover),var(--color-primary-hover));opacity:.9}.btn-recover:disabled{opacity:.6;cursor:not-allowed}.recover-card.loading{pointer-events:none;cursor:not-allowed;opacity:.7}.btn{border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-base)}.btn--sm{padding:.4rem .8rem;font-size:.85rem}.btn--md{padding:.6rem 1.2rem;font-size:1rem}.btn--lg{padding:.8rem 1.6rem;font-size:1.1rem}.btn--icon{padding:.5rem;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.btn--primary{background:linear-gradient(90deg,var(--color-gradient-start) 0%,var(--color-gradient-end) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn--primary:hover:not(:disabled){background:linear-gradient(90deg,var(--color-gradient-start-hover) 0%,var(--color-gradient-end-hover) 100%);box-shadow:var(--shadow-md)}.btn--secondary{background-color:transparent;color:var(--color-text);border:1.5px solid var(--color-text)}.btn--secondary:hover:not(:disabled){background-color:transparent}.btn--outline{background-color:var(--color-primary-bg);color:var(--color-text);border:1.5px solid var(--color-border)}.btn--outline:hover:not(:disabled){background-color:var(--color-primary-bg-hover)}.btn--danger{background-color:var(--color-error);color:#fff;border:1.5px solid var(--color-border)}.btn--danger:hover:not(:disabled){background-color:var(--color-error-text)}.btn--ghost{background-color:transparent;color:var(--color-text-secondary);border:none}.btn--ghost:hover:not(:disabled){background-color:var(--color-bg);color:var(--color-primary)}.btn:disabled{opacity:.6;cursor:not-allowed}.theme-toggle{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;transition:all var(--transition);outline:none}.theme-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-md)}.theme-toggle .theme-toggle-track{position:relative;width:40px;height:24px;background:var(--color-primary-bg);border-radius:12px;transition:background-color var(--transition);display:flex;align-items:center;padding:3px}.theme-toggle .theme-toggle-track.dark{background:var(--color-primary)}.theme-toggle .theme-toggle-thumb{position:absolute;width:19px;height:19px;background:var(--color-absolute);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-text);box-shadow:var(--shadow-sm);transition:transform var(--transition),background-color var(--transition);transform:translate(0)}.theme-toggle .theme-toggle-thumb svg{transition:color var(--transition)}.theme-toggle .theme-toggle-track.dark .theme-toggle-thumb{transform:translate(15px);color:var(--color-primary)}.theme-toggle:hover .theme-toggle-track{background:var(--color-primary-bg-hover)}.theme-toggle:hover .theme-toggle-track.dark{background:var(--color-primary-hover)}.language-selector{position:relative;display:flex;align-items:center}.language-selector__button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-primary-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);color:var(--color-text);font-size:14px;font-weight:500}.language-selector__button:hover{background:var(--color-primary-bg-hover);border-color:var(--color-primary)}.language-selector__button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.language-selector__button svg{color:var(--color-text-secondary)}.language-selector__current{font-weight:600;font-size:12px;color:var(--color-text)}.language-selector__dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:160px;z-index:1000;overflow:hidden;animation:fadeIn .2s ease-out}.language-selector__option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:transparent;border:none;cursor:pointer;transition:all var(--transition);color:var(--color-text);text-align:left;font-size:14px}.language-selector__option:hover{background:var(--color-primary-bg)}.language-selector__option.active{background:var(--color-primary-bg);font-weight:600}.language-selector__flag{font-size:18px;line-height:1}.language-selector__name{flex:1}.language-selector__check{color:var(--color-primary);font-weight:700}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .language-selector__button{background:var(--color-primary-bg);border-color:var(--color-border)}[data-theme=dark] .language-selector__button:hover{background:var(--color-primary-bg-hover)}[data-theme=dark] .language-selector__dropdown{background:var(--color-bg);border-color:var(--color-border)}[data-theme=dark] .language-selector__option:hover,[data-theme=dark] .language-selector__option.active{background:var(--color-primary-bg)}.sticky-header{position:sticky;top:0;z-index:50;min-width:100%;border-bottom:1px solid var(--color-border);background-color:var(--color-absolute);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sticky-header .container{margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:64px;position:relative}.sticky-header .logo{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer}.sticky-header .logo .logo-icon{display:flex;height:40px;width:40px;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(to bottom right,var(--color-gradient-start),var(--color-gradient-end))}.sticky-header .logo .logo-icon img{width:24px;height:24px;object-fit:contain;filter:brightness(0) invert(1)}.sticky-header .logo .logo-text{font-size:2rem;color:var(--color-text);font-family:var(--font-heading);font-weight:600}.sticky-header .logo .menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;border:none;background:transparent;cursor:pointer}.sticky-header .logo .menu-toggle span{display:block;width:24px;height:2px;background-color:var(--color-text);border-radius:2px;transition:all .3s ease}.sticky-header .logo .menu-toggle.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.sticky-header .logo .menu-toggle.open span:nth-child(2){opacity:0}.sticky-header .logo .menu-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.sticky-header nav{display:flex;align-items:center;gap:1.5rem}.sticky-header nav a{font-size:1.4rem;color:var(--color-text-secondary);transition:color var(--transition);text-decoration:none}.sticky-header nav a:hover{color:var(--color-text)}.sticky-header nav .link--dashboard{color:var(--color-primary)}.sticky-header nav .link--dashboard:hover{color:var(--color-primary-hover)}.sticky-header nav .btn-wrapper{display:flex;align-items:center;gap:var(--space-md);margin-left:var(--space-sm)}@media(max-width:930px){.sticky-header .logo{width:100%;justify-content:space-between}.sticky-header .logo .menu-toggle{display:flex}.sticky-header nav{position:absolute;top:64px;left:0;width:100%;flex-direction:column;align-items:center;background-color:var(--color-bg);border-top:1px solid var(--color-border);box-shadow:var(--shadow-md);padding:var(--space-md);display:none;opacity:0;transform:translateY(-10px);transition:all .3s ease}.sticky-header nav.open{display:flex;opacity:1;transform:translateY(0);border-bottom:1px solid var(--color-border)}.sticky-header nav a{width:100%;text-align:center;padding:var(--space-sm) 0}.sticky-header nav .btn-wrapper{margin-top:var(--space-md);justify-content:center}}.notification-dropdown{position:relative}.notification-dropdown__trigger{position:relative;background:none;border:none;cursor:pointer;padding:.5rem;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:color .2s}.notification-dropdown__trigger:hover{color:var(--color-primary)}.notification-dropdown__badge{position:absolute;top:4px;right:4px;width:8px;height:8px;background-color:var(--color-error);border-radius:50%;border:2px solid var(--color-absolute)}.notification-dropdown__menu{position:absolute;top:calc(100% + .5rem);right:0;width:380px;background:var(--color-absolute);border:1px solid var(--color-text-secondary);border-radius:12px;box-shadow:var(--shadow-lg);z-index:1000;overflow:hidden}.notification-dropdown__menu-header{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.notification-dropdown__menu-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text)}.notification-dropdown__menu-header span{font-size:.875rem;color:var(--color-text-secondary)}.notification-dropdown__menu-body{max-height:400px;overflow-y:auto}.notification-dropdown__menu-footer{padding:.75rem 1.25rem;border-top:1px solid var(--color-border);text-align:center}.notification-dropdown__menu-footer button{background:none;border:none;color:var(--color-primary);font-weight:600;cursor:pointer;font-size:.875rem;padding:.25rem .5rem;transition:opacity .2s}.notification-dropdown__menu-footer button:hover{opacity:.8}.notification-dropdown__item{padding:1rem 1.25rem;display:flex;gap:.75rem;align-items:flex-start;border-bottom:1px solid var(--color-border);transition:background-color .2s;cursor:pointer}.notification-dropdown__item:hover{background-color:var(--color-bg)}.notification-dropdown__item:last-child{border-bottom:none}.notification-dropdown__item-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-dropdown__item-icon--vaccine{background-color:#f3e8ff;color:#9333ea}.notification-dropdown__item-icon--food{background-color:#dcfce7;color:#16a34a}.notification-dropdown__item-icon--medicine{background-color:#dbeafe;color:#2563eb}.notification-dropdown__item-icon--vet{background-color:#fee2e2;color:#dc2626}.notification-dropdown__item-content{flex:1;min-width:0}.notification-dropdown__item-content h4{margin:0 0 .25rem;font-size:.875rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:.5rem}.notification-dropdown__item-content p{margin:0 0 .25rem;font-size:.8rem;color:var(--color-text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.notification-dropdown__item-content span{font-size:.75rem;color:var(--color-text-secondary)}.notification-dropdown__item-dot{width:6px;height:6px;background-color:var(--color-error);border-radius:50%;flex-shrink:0}.notification-dropdown__empty{padding:2rem 1.25rem;text-align:center;color:var(--color-text-secondary);font-size:.875rem}.card{background:#fff;color:#1a1a1a;display:flex;flex-direction:column;gap:1.5rem;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden}.card-header{display:grid;grid-template-rows:auto auto;gap:6px;padding:24px 24px 0;align-items:start}.card-header:has(.card-action){grid-template-columns:1fr auto}.card-title{font-size:1.5rem;font-weight:600;line-height:1}.home-features .card-description{font-size:1.2rem;color:var(--color-text-secondary)}.card-action{grid-column:2;grid-row:1/span 2;justify-self:end;align-self:start}.card-content{padding:0 24px}.card-content:last-child{padding-bottom:24px}.card-footer{display:flex;align-items:center;padding:0 24px 24px}.hero{padding-top:9rem}.hero .grid{display:grid;gap:3rem;align-items:center}@media(min-width:768px){.hero .grid{grid-template-columns:repeat(2,1fr);gap:4rem}}.hero .content{display:flex;flex-direction:column;gap:1.5rem}.hero .content .badge{display:inline-block;border-radius:999px;background:var(--pink-bg);padding:6px 16px;font-size:14px;color:var(--pink-text)}.hero .content h1{font-size:3.2rem;font-weight:700;color:var(--color-text);line-height:1.2}.hero .content p{font-size:1.4rem;color:var(--color-text-secondary);line-height:1.6}.hero .content .actions.actions{display:flex;flex-wrap:wrap;gap:1rem;border:none}.hero .content .stats{display:flex;gap:2rem;padding-top:1rem}.hero .content .stats .stat div:first-child{font-size:1.25rem;font-weight:600;color:var(--color-text)}.hero .content .stats .stat div:last-child{font-size:.875rem;color:var(--color-text-secondary)}.hero .visual{position:relative}.hero .visual .carousel-container{position:relative;aspect-ratio:1;border-radius:1.5rem;overflow:hidden;box-shadow:0 20px 40px #00000026}.hero .visual .image-wrapper{position:relative;width:100%;height:100%}.hero .visual .image-wrapper img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease-in-out}.hero .visual .image-wrapper img.active{opacity:1}.hero .visual .carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .3s ease;box-shadow:0 2px 8px #00000026}.hero .visual .carousel-btn:hover{background:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 4px 12px #0003}.hero .visual .carousel-btn:active{transform:translateY(-50%) scale(.95)}.hero .visual .carousel-btn--prev{left:12px}.hero .visual .carousel-btn--next{right:12px}.hero .visual .carousel-btn svg{color:var(--color-text)}.hero .visual .carousel-indicators{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.hero .visual .indicator{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff80;cursor:pointer;transition:all .3s ease;padding:0}.hero .visual .indicator:hover{background:#fffc;transform:scale(1.2)}.hero .visual .indicator.active{background:#fff;width:24px;border-radius:4px}.hero .visual .decor-circle{position:absolute;width:15rem;height:15rem;border-radius:50%;opacity:.4;filter:blur(20px);z-index:-1}.hero .visual .decor-circle.one{width:8rem;height:8rem;background:linear-gradient(to bottom right,#f472b6,#a855f7);bottom:-31px;right:-8px}.hero .visual .decor-circle.two{background:linear-gradient(to bottom right,#a855f7,#f472b6);top:-42px;left:-53px}.home-features{background:var(--color-absolute);padding:80px 0}.home-features .header{text-align:center;margin-bottom:3rem}.home-features .header .badge{display:inline-block;background:var(--purple-bg);color:var(--purple-text);padding:6px 14px;font-size:14px;font-weight:500;border-radius:30px;margin-bottom:1rem}.home-features .header h2{font-size:24px;color:var(--color-text);margin-bottom:1rem}.home-features .header p{font-size:1.4rem;color:#6b7280;max-width:700px;margin:0 auto}.home-features .grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.home-features .feature-card{border:none;background:var(--color-bg);border:1px solid var(--color-border-opac25);border-radius:16px;padding:10px}@media(min-width:768px){.home-features .feature-card{padding:20px}}.home-features .feature-card{transition:.3s ease;box-shadow:0 2px 6px #0000000d}.home-features .feature-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #0000001a}.home-features .feature-card .card-header{display:flex;flex-direction:column;padding:12px}@media(min-width:768px){.home-features .feature-card .card-header{padding:24px}}.home-features .icon-box{height:48px;width:48px;background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.home-features .icon-box svg{color:#fff;width:24px;height:24px}section{display:flex;flex-direction:column-reverse}@media(min-width:1024px){section{flex-direction:row}}section{margin:40px 0}.container--homeus{display:flex;flex-direction:column;gap:2rem}@media(min-width:768px){.container--homeus{flex-direction:row;justify-content:space-between;gap:4rem}}.image-container{display:flex;justify-content:center;margin-bottom:40px}.image-container img{width:100%;object-fit:cover;border-radius:var(--radius-md)}.content{margin:0 auto;font-size:14px}.badge{display:inline-block;border-radius:999px;padding:6px 16px;margin-bottom:20px;font-size:14px;color:#be185d;background:var(--color-secondary-bg)}.content-title{font-size:24px;color:var(--color-text);margin-bottom:2rem}.home__us-feats{padding-left:35px;margin:20px 0 40px}.home__us-feat{position:relative}.home__us-icon{position:absolute;top:2px;left:-32px}.section-2{width:100vw;padding:80px 0;margin-left:calc(-50vw + 50%);background:linear-gradient(135deg,var(--color-gradient-start) 0%,var(--color-gradient-end) 70%)}@media(min-width:1024px){.section-2{padding:50px 0}}@media(max-width:1023px){.section-container{max-width:768px}}.section-container{margin:0 auto;display:flex;flex-direction:column;gap:4rem;color:#f2f2f2}@media(min-width:1024px){.section-container{flex-direction:row;justify-content:space-between;align-items:center}}.content-2 h2,.content-2 p{color:#f2f2f2}.content-title-2{font-size:24px;margin-bottom:20px}.content-2 p{font-size:1.4rem}.image-container-2{display:none}@media(min-width:1024px){.image-container-2{display:flex;justify-content:center}}.image-container-2{width:100%;height:500px}.image-container-2 img{width:100%;height:100%;border-radius:var(--radius-md);object-fit:cover}.avatars{margin-top:25px;position:relative}.avatars-text{position:absolute;top:54px;left:2px;font-size:14px}.avatar{display:inline-block;width:40px;height:40px;border-radius:50%;border:1px solid white;background-color:var(--color-secondary-bg2);background-position:center;background-size:cover;background-repeat:no-repeat}.avatar--1{background-image:url(/assets/avatar1-CMuOxus5.png)}.avatar--2{position:relative;left:-10px;background-image:url(/assets/avatar2-CjPy_FIY.png)}.avatar--3{position:relative;left:-20px;background-image:url(/assets/avatar3-BN6laDtb.png)}.avatar--4{position:relative;left:-30px;background-image:url(/assets/avatar4-uRMlYcDu.png)}img{box-shadow:0 20px 40px #00000026}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2rem;padding-top:3rem;padding-bottom:3rem;background:var(--color-bg);color:var(--color-text)}@media(min-width:1024px){.footer{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:4rem}}.footer__left{max-width:320px}.footer__left .logo{display:flex;align-items:center;margin-bottom:1rem}.footer__left .logo-icon{display:flex;height:40px;width:40px;margin-right:10px;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(to bottom right,var(--color-gradient-start),var(--color-gradient-end))}.footer__left .logo-icon img{width:24px;height:24px;object-fit:contain;filter:brightness(0) invert(1)}.footer__left .logo-text{font-size:2rem;color:var(--color-text);font-family:var(--font-heading);font-weight:600}.footer__left p{font-size:1.1rem;color:var(--color-text-secondary);line-height:1.5;margin-bottom:1.25rem}.footer__social-icons{display:flex;gap:1rem;color:var(--color-text-secondary)}.footer__social-icon:hover{cursor:pointer;color:var(--color-secondary)}.footer_nav{display:flex;flex-direction:column;gap:2rem}@media(min-width:1024px){.footer_nav{flex-direction:row;gap:4rem}}.footer_nav_column .footer_nav_title{font-size:1.3rem;font-weight:600;color:var(--color-text-strong);margin-bottom:1rem;display:block}.footer_nav_column .footer__nav_links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.footer_nav_column .footer__nav_links li{font-size:1.1rem;color:var(--color-text-secondary);cursor:pointer;transition:color .2s ease}.footer_nav_column .footer__nav_links li:hover{color:var(--color-primary)}hr{width:100%;border:0;border-top:1px solid var(--color-border);margin:2rem 0 1.5rem}.footer p:last-of-type{font-size:14px;color:var(--color-text)}.footer-copyright{text-align:center}.dashboard{padding:1.5rem 1rem}@media(min-width:768px){.dashboard{padding:2rem 1.5rem}}.container--dashboard{max-width:1200px;margin:0 auto}.dashboard__pets-section{margin-top:5rem}.dashboard__pets-header{margin-bottom:1.5rem}.dashboard__pets-title{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text, #1e1e1e);position:relative;margin-bottom:1.5rem}@media(min-width:768px){.dashboard__pets-title{font-size:1.75rem}}.dashboard__pets-loading,.dashboard__pets-empty{text-align:center;padding:2rem;margin-top:5rem;color:var(--color-text-secondary, #6b7280);font-size:1.4rem}.dashboard__pets-grid{display:grid;grid-template-columns:1fr;gap:2.5rem}@media(min-width:768px){.dashboard__pets-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.dashboard__pets-grid{grid-template-columns:repeat(3,1fr)}}.dashboard__add-pet{margin-top:2rem;display:flex;justify-content:center}.dashboard__add-pet-btn{width:100%;max-width:500px;font-size:1.3rem;padding:1rem 2rem;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:600}.icon-plus{width:24px;height:24px}.dashboard-user-card{background:var(--color-absolute);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-md, 0 2px 6px rgba(0, 0, 0, .1));padding:1.5rem;margin-top:1rem;border:1px solid var(--color-border-opac25)}@media(min-width:768px){.dashboard-user-card{padding:2rem}}.dashboard-user-card__header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2rem}.dashboard-user-card__avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--color-gradient-start, #ec4899) 0%,var(--color-gradient-end, #8b5cf6) 100%);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}@media(min-width:768px){.dashboard-user-card__avatar{width:80px;height:80px}}.dashboard-user-card__title-section{flex:1}.dashboard-user-card__title{margin:0;font-size:1.25rem;font-weight:700;color:var(--color-text, #1e1e1e);margin-bottom:.25rem}@media(min-width:768px){.dashboard-user-card__title{font-size:1.5rem}}.dashboard-user-card__subtitle{margin:0;font-size:.875rem;color:var(--color-text-secondary, #6b7280)}@media(min-width:768px){.dashboard-user-card__subtitle{font-size:1rem}}.dashboard-user-card__info{display:flex;flex-direction:column;gap:1.5rem}@media(min-width:768px){.dashboard-user-card__info{flex-direction:row;gap:2rem}}.dashboard-user-card__info-item{display:flex;flex-direction:column;gap:.5rem;flex:1}.dashboard-user-card__label{font-size:.875rem;color:var(--color-text-secondary, #6b7280);font-weight:500}.dashboard-user-card__value{font-size:1rem;font-weight:600;color:var(--color-text, #1e1e1e)}@media(min-width:768px){.dashboard-user-card__value{font-size:1.125rem}}.dashboard-pet-card{background:var(--color-absolute);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-md, 0 2px 6px rgba(0, 0, 0, .1));padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;transition:box-shadow .2s ease-in-out;border:1px solid var(--color-border-opac25)}.dashboard-pet-card:hover{box-shadow:var(--shadow-lg)}@media(min-width:768px){.dashboard-pet-card{padding:2rem}}.dashboard-pet-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.dashboard-pet-card__title-section{flex:1}.dashboard-pet-card .dashboard-pet-card__name{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text);margin-bottom:.25rem;border:none}.dashboard-pet-card__species{margin:0;font-size:.875rem;color:var(--color-text-secondary, #6b7280)}.dashboard-pet-card__alert{width:32px;height:32px;border-radius:50%;background:var(--color-warning-alert);display:flex;align-items:center;justify-content:center;color:var(--color-error-text);flex-shrink:0;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.dashboard-pet-card__delete{width:32px;height:32px;border-radius:50%;background:var(--color-error-light);display:flex;align-items:center;justify-content:center;color:var(--color-error-text);flex-shrink:0;cursor:pointer}.dashboard-pet-card__delete:hover{background:var(--color-error-hover)}.dashboard-pet-card__info{display:flex;gap:1.5rem}.dashboard-pet-card__info-item{display:flex;flex-direction:column;gap:.25rem;flex:1}.dashboard-pet-card__label{font-size:.875rem;color:var(--color-text-secondary, #6b7280);font-weight:500}.dashboard-pet-card__value{font-size:1rem;font-weight:600;color:var(--color-text, #1e1e1e)}.dashboard-pet-card__health{display:flex;justify-content:space-between;gap:.5rem;padding-top:1rem;border-top:1px solid var(--color-border, #e5e7eb)}.dashboard-pet-card__health-header{display:flex;align-items:center;gap:.25rem}.dashboard-pet-card__health-label{font-size:.875rem;color:var(--color-text-secondary, #6b7280);font-weight:500}.dashboard-pet-card__health-badge{padding:.375rem .75rem;border-radius:9999px;background:var(--color-success);color:var(--color-success-text);font-size:.875rem;font-weight:600;align-self:flex-start}.dashboard-pet-card__health-badge--loading{background:var(--color-text-secondary, #6b7280);color:var(--color-absolute, #ffffff)}.dashboard-pet-card__health-badge--atencion-requerida{background:var(--color-error-light);color:var(--color-error-text)}.dashboard-pet-card__health-badge--revision-necesaria{background:var(--color-warning-alert);color:var(--color-warning-text)}.dashboard-pet-card--atencion-requerida{border-left:3px solid var(--color-error);background:linear-gradient(to right,rgba(239,68,68,.05),var(--color-absolute))}.dashboard-pet-card--revision-necesaria{border-left:3px solid var(--color-warning-alert);background:linear-gradient(to right,rgba(225,180,0,.05),var(--color-absolute))}.dashboard-pet-card__events{display:flex;flex-direction:column;gap:1.2rem;padding-top:1rem;border-top:1px solid var(--color-border, #e5e7eb)}.dashboard-pet-card__event{display:flex;align-items:center;gap:.75rem}.dashboard-pet-card__event-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.dashboard-pet-card__event-label{font-size:.875rem;color:var(--color-text-secondary, #6b7280);font-weight:500}.dashboard-pet-card__event-value{font-size:.875rem;font-weight:600;color:var(--color-text, #1e1e1e)}.dashboard-pet-card__summary{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;border-top:1px solid var(--color-border, #e5e7eb)}.dashboard-pet-card__summary-item{display:flex;align-items:center;gap:.5rem;flex:1}.dashboard-pet-card__summary-label-wrapper{display:flex;align-items:center;gap:.25rem;flex:1}.dashboard-pet-card__summary-label{font-size:.875rem;color:var(--color-text-secondary, #6b7280);font-weight:500}.dashboard-pet-card__info-icon{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.125rem;color:var(--color-text-secondary, #6b7280);border-radius:50%;transition:all .2s ease;flex-shrink:0}.dashboard-pet-card__info-icon:hover{background:var(--color-border-opac25, rgba(0, 0, 0, .05));color:var(--color-text, #1e1e1e)}.dashboard-pet-card__info-icon:focus{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px}.dashboard-pet-card__summary-count{font-size:.875rem;font-weight:700;color:var(--color-text, #1e1e1e)}.dashboard-pet-card__button{width:100%;margin-top:.5rem}.dashboard-pet-card__actions{display:flex;gap:.8rem;margin-top:2rem}.modal-text-overlay{position:fixed;inset:0;background:#0000;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;z-index:1000;transition:background .3s ease,backdrop-filter .3s ease,opacity .3s ease}.modal-text-overlay.open{background:#0006;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:1;pointer-events:all}.modal-text-container{background:var(--color-absolute);border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;border:1px solid var(--color-text-secondary);box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;transform:translateY(-10px);opacity:0;transition:transform .3s ease,opacity .3s ease}.modal-text-overlay.open .modal-text-container{transform:translateY(0);opacity:1}.modal-text-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border);position:relative}.modal-text-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text);flex:1;padding-right:1rem}.modal-text-close{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;color:#6b7280;transition:all .2s;position:absolute;top:1.5rem;right:1.5rem}.modal-text-close:hover{background-color:#f3f4f6;color:#111827}.modal-text-close:focus{outline:2px solid #3b82f6;outline-offset:2px}.modal-text-content{padding:1.5rem;flex:1;overflow-y:auto;color:var(--color-text-secondary);line-height:1.6}.modal-text-actions{display:flex;gap:.75rem;padding:1.5rem;border-top:1px solid var(--color-border);justify-content:flex-end}.pet-filters{background:var(--color-absolute);border:1px solid var(--color-border-opac25);border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.pet-filters__header{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem}.pet-filters__icon{color:var(--color-primary, #8b5cf6)}.pet-filters .pet-filters__title{padding:0;margin:0;font-size:1rem;font-weight:600;color:var(--color-text, #1e1e1e);border:none}.pet-filters__content{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.pet-filters__dropdowns{display:flex;gap:1rem;flex:1;flex-wrap:wrap}.pet-filters__dropdown-wrapper{position:relative;flex:1;min-width:150px}.pet-filters__label{display:block;font-size:.75rem;font-weight:500;color:var(--color-text-secondary, #6b7280);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.pet-filters__dropdown{position:relative}.pet-filters__dropdown-button{width:100%;padding:.625rem 1rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-absolute, #ffffff);color:var(--color-text, #1e1e1e);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between}.pet-filters__dropdown-button:hover{border-color:var(--color-primary, #8b5cf6)}.pet-filters__dropdown-button:focus{outline:none;border-color:var(--color-primary, #8b5cf6)}.pet-filters__dropdown-arrow{font-size:.75rem;color:var(--color-text-secondary, #6b7280);transition:transform .2s ease}.pet-filters__dropdown-menu{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--color-absolute, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:6px;box-shadow:0 4px 6px #0000001a;z-index:100;max-height:200px;overflow-y:auto}.pet-filters__dropdown-item{width:100%;padding:.75rem 1rem;border:none;background:var(--color-absolute, #ffffff);color:var(--color-text, #1e1e1e);font-size:.875rem;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color .2s ease}.pet-filters__dropdown-item:hover{background:var(--color-border-opac25, rgba(0, 0, 0, .05))}.pet-filters__dropdown-item:first-child{border-top-left-radius:6px;border-top-right-radius:6px}.pet-filters__dropdown-item:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}.pet-filters__dropdown-item--active{background:var(--color-border-opac25, rgba(139, 92, 246, .1));color:var(--color-select-active, #8b5cf6);font-weight:500}.pet-filters__clear-button{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;background:var(--color-absolute, #ffffff);color:var(--color-text-secondary, #6b7280);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.pet-filters__clear-button:hover{border-color:var(--color-error, #ef4444);color:var(--color-error, #ef4444);background:var(--color-border-opac25, rgba(239, 68, 68, .05))}.pet-filters__results{padding-top:1rem;font-size:.875rem;color:var(--color-text-secondary, #6b7280)}.loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem}.loader{position:relative;display:flex;align-items:center;justify-content:center}.loader--small{width:24px;height:24px}.loader--medium{width:40px;height:40px}.loader--large{width:60px;height:60px;margin-top:8rem}.loader__spinner{width:100%;height:100%;border:5px solid var(--color-primary-opac50);border-top-color:var(--color-primary);border-right-color:var(--color-primary);border-radius:50%;animation:spin .8s ease-in infinite}.loader__text{color:var(--color-text-secondary);font-size:1rem;margin:0;font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}.create-pet-container{min-height:100vh;padding:2rem 1rem}.modal-close-btn{top:17px}.create-pet-card{max-width:640px;width:100%;background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:2rem;box-shadow:var(--shadow-sm)}.card-header{display:flex;gap:1rem;margin-bottom:2rem;align-items:flex-start;padding:0;padding-top:2rem}.header-icon{width:48px;height:48px;min-width:48px;border-radius:50%;background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));display:flex;align-items:center;justify-content:center}.card-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.card-header p{margin:.25rem 0 0;font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.section{margin-bottom:2rem}.section h3{margin:0 0 1rem;font-size:.95rem;font-weight:500;color:var(--color-text);padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.field{margin-bottom:1.25rem}.field label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:600;color:var(--color-text)}.required{color:#ef4444}.field input,.field select,.field textarea{width:100%;padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;background:var(--color-bg);color:var(--color-text);outline:none;transition:all var(--transition);font-family:inherit}.field input::placeholder,.field textarea::placeholder{color:var(--color-text-secondary)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-primary);background:var(--color-absolute);box-shadow:0 0 0 3px var(--color-primary-opac50)}.field textarea{resize:vertical;min-height:70px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}.input-group{display:flex;gap:.5rem}.input-group input{flex:1}.icon-btn{padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.icon-btn:hover{background:#f9fafb}.hint{display:block;margin-top:.5rem;font-size:.75rem;color:#6b7280}.actions{display:flex;gap:.75rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.actions button{flex:1;padding:.625rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-cancel{background:#fff;color:#374151;border:1px solid #e5e7eb}.btn-cancel:hover{background:#f9fafb}@media(max-width:640px){.field-row{grid-template-columns:1fr}.create-pet-card{padding:1.5rem}}.error-text{font-size:1rem;color:#ef4444;margin-top:.25rem;display:block}.select-wrapper{position:relative;width:100%}.select-label{display:block;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:.5rem;letter-spacing:.5px}.select{position:relative}.select-button{width:100%;padding:.625rem 1rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-absolute);color:var(--color-text);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:border-color .2s ease}.select-button:hover:not(:disabled){border-color:var(--color-primary)}.select-button:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-opac50)}.select-button:disabled{opacity:.6;cursor:not-allowed}.select-arrow{font-size:.75rem;color:var(--color-text-secondary);transition:transform .2s ease}.select-arrow--open{transform:rotate(180deg)}.select-menu{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--color-absolute);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 4px 6px #0000001a;z-index:100;max-height:200px;overflow-y:auto}.select-item{width:100%;padding:.75rem 1rem;border:none;background:var(--color-absolute);color:var(--color-text);font-size:.875rem;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color .2s ease}.select-item:hover{background:var(--color-border-opac25)}.select-item:first-child{border-top-left-radius:6px;border-top-right-radius:6px}.select-item:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}.select-item--active{background:var(--color-border-opac25);color:var(--color-select-active);font-weight:500}.quick-access{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin:2rem 0}@media(max-width:768px){.quick-access{grid-template-columns:1fr}}.quick-access__card{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:16px;padding:1.5rem;display:flex;align-items:center;gap:1.25rem;cursor:pointer}.quick-access__card:hover{background-color:var(--color-primary-bg);border-color:var(--color-primary-opac50);box-shadow:var(--shadow-md)}.quick-access__card-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-md);color:#fff}.quick-access__card-icon--calendar{background:linear-gradient(135deg,var(--color-gradient-start) 0%,var(--color-gradient-end) 100%)}.quick-access__card-icon--notifications{background:linear-gradient(135deg,var(--color-gradient-end) 0%,var(--color-gradient-start) 100%)}.quick-access__card-content{flex:1}.quick-access__card-content h3{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 .25rem;border:none}.quick-access__card-content p{font-size:.9rem;color:var(--color-text-secondary);margin:0;line-height:1.4}.login-page{width:100vw;height:100vh;background:linear-gradient(135deg,var(--color-gradient-start-opac50),var(--color-gradient-end-opac50))}.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--color-primary-bg, #f8f9fa);padding:1rem}@media(min-width:768px){.not-found{padding:2rem 1rem}}.not-found__container{width:100%;text-align:center}@media(min-width:768px){.not-found__container{width:600px}}.not-found__content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.not-found__title{font-size:6rem;font-weight:800;line-height:1;background:linear-gradient(90deg,var(--color-gradient-start, #667eea) 0%,var(--color-gradient-end, #764ba2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}@media(min-width:768px){.not-found__title{font-size:8rem}}.not-found__subtitle{font-size:1.5rem;font-weight:700;color:var(--color-text, #333);margin:0}@media(min-width:768px){.not-found__subtitle{font-size:2rem}}.not-found__message{font-size:1rem;color:var(--color-text-secondary, #666);line-height:1.6;margin:0;width:100%}@media(min-width:768px){.not-found__message{font-size:1.1rem;width:400px}}.not-found__image{margin:1.5rem 0;display:flex;justify-content:center;align-items:center}.not-found__img{width:100%;height:auto;animation:float 4s ease-in-out infinite}@media(min-width:768px){.not-found__img{width:400px}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.not-found__actions{margin-top:1rem}.verify-email-container{background:var(--color-bg);font-family:var(--font-base);color:var(--color-text);display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.verify-email-card{width:100%;max-width:500px;background:var(--color-absolute);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-md);padding:3rem 2.5rem;border:1px solid var(--color-border-opac25)}.verify-email-icon{display:flex;justify-content:center;margin-bottom:1.5rem;color:var(--color-primary)}.verify-email-card h2{font-size:1.8rem;font-weight:600;margin-bottom:1rem;font-family:var(--font-heading);color:var(--color-text)}.verify-email-message{color:var(--color-text);font-size:1.1rem;margin-bottom:1rem;line-height:1.6}.verify-email-error{color:var(--color-error);font-size:1rem;margin-bottom:1rem;line-height:1.6}.verify-email-loading{color:var(--color-text-secondary);font-size:1.05rem;margin-bottom:2rem;line-height:1.6}.profile-pet-card{display:flex;flex-direction:column;align-items:center;max-width:1100px;padding:0 1rem;margin:40px auto;gap:2rem}@media(min-width:768px){.profile-pet-card{flex-direction:row;gap:2rem;padding:0 3rem}}@media(min-width:1130px){.profile-pet-card{padding:0}}.profile-pet-card .profile-avatar-wrapper{position:relative;width:110px;height:110px}.profile-pet-card .profile-avatar{width:110px;height:110px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#d94df7,#6e40ff);outline:2px solid var(--color-gradient-start-opac50)}.profile-pet-card .profile-avatar .avatar-initial{font-size:32px;color:#fff;font-weight:400}.profile-pet-card .profile-avatar .pet-profile-photo{width:100%;height:100%;object-fit:cover}.profile-pet-card .profile-avatar__edit-btn{position:absolute;bottom:1px;right:1px;width:28px;height:28px;border-radius:50%;background:var(--color-gradient-start);border:2px solid white;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:12px;padding:0;box-shadow:0 2px 4px #0003;z-index:10}.profile-pet-card .profile-avatar__edit-btn:hover:not(:disabled){background:var(--color-gradient-start-hover)}.profile-pet-card .profile-avatar__edit-btn:disabled{opacity:.6;cursor:not-allowed}.profile-pet-card .profile-avatar__edit-btn .spinner{animation:spin 1s linear infinite}.profile-pet-card .profile-pet-card__actions{display:flex;flex-direction:column;align-items:space-between;max-width:500px;gap:.75rem;margin-top:1.5rem}@media(min-width:768px){.profile-pet-card .profile-pet-card__actions{width:auto;margin-top:0}}.profile-pet-card .profile-info{display:flex;flex-direction:column;align-items:center}@media(min-width:768px){.profile-pet-card .profile-info{align-items:flex-start}}.profile-pet-card .profile-info h2{font-size:1.2rem;font-weight:600;color:var(--color-text, #1e1e1e);margin:0}.profile-pet-card .profile-info h2:first-letter{text-transform:capitalize}.profile-pet-card .profile-info p{margin:2px 0;font-size:1.1rem;color:var(--color-text-secondary, #6b7280)}.profile-pet-card .profile-info .profile-stats{display:flex;gap:1rem;margin-top:10px;font-size:14px}@media(min-width:420px){.profile-pet-card .profile-info .profile-stats{gap:4rem}}@media(min-width:768px){.profile-pet-card .profile-info .profile-stats{gap:5.5rem}}.profile-pet-card .profile-info .profile-stats strong{display:flex;font-size:1.1rem;font-weight:700;color:var(--color-text, #1e1e1e)}.profile-pet-card .profile-info .profile-stats .health-badge{background:var(--color-success);color:var(--color-success-text);padding:3px 10px;border-radius:var(--radius-md, 8px);font-size:10px;font-weight:600}.profile-pet-card .profile-info .profile-stats .health-badge--loading{background:var(--color-text-secondary, #6b7280);color:var(--color-absolute, #ffffff)}.profile-pet-card .profile-info .profile-stats .health-badge--atencion-requerida{background:var(--color-error-light);color:var(--color-error-text)}.profile-pet-card .profile-info .profile-stats .health-badge--revision-necesaria{background:var(--color-warning-alert);color:var(--color-warning-text)}.profile-pet-card .profile-documents{width:100%;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border, #e5e7eb)}.profile-pet-card .profile-documents__title{font-size:1.2rem;font-weight:600;color:var(--color-text, #1e1e1e);margin:0 0 .5rem}.profile-pet-card .profile-documents__info{font-size:.875rem;color:var(--color-text-secondary, #6b7280);margin:0 0 1.5rem}.profile-pet-card .profile-documents__upload{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media(min-width:768px){.profile-pet-card .profile-documents__upload{flex-direction:row;align-items:flex-end}}.profile-pet-card .profile-documents__select{flex:1;min-width:200px}@media(min-width:768px){.profile-pet-card .profile-documents__select{max-width:300px}}.profile-pet-card .profile-documents__list{margin-top:1.5rem}.profile-pet-card .profile-documents__loading{display:flex;align-items:center;gap:.75rem;padding:1.5rem;color:var(--color-text-secondary, #6b7280);font-size:.875rem}.profile-pet-card .profile-documents__loading .spinner{animation:spin 1s linear infinite}.profile-pet-card .profile-documents__empty{padding:2rem;text-align:center;color:var(--color-text-secondary, #6b7280);font-size:.875rem;background:var(--color-bg-secondary, #f9fafb);border-radius:var(--radius-md, 8px);border:1px dashed var(--color-border, #e5e7eb)}.profile-pet-card .profile-documents__items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.profile-pet-card .profile-documents__item{padding:1rem;background:var(--color-bg-secondary, #f9fafb);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-md, 8px);transition:all .2s ease}.profile-pet-card .profile-documents__item:hover{background:var(--color-bg-hover, #f3f4f6);border-color:var(--color-primary, #6e40ff)}.profile-pet-card .profile-documents__item-info{display:flex;align-items:flex-start;gap:.75rem}.profile-pet-card .profile-documents__item-info svg{color:var(--color-error, #ef4444);flex-shrink:0;margin-top:2px}.profile-pet-card .profile-documents__item-link{display:block;color:var(--color-primary, #6e40ff);text-decoration:none;font-weight:500;font-size:.9375rem;margin-bottom:.25rem;transition:color .2s ease}.profile-pet-card .profile-documents__item-link:hover{color:var(--color-primary-hover, #5a33cc);text-decoration:underline}.profile-pet-card .profile-documents__item-meta{display:block;font-size:.8125rem;color:var(--color-text-secondary, #6b7280)}.pet-info-subsection{color:var(--color-text-secondary)}.pet-info-subsection__header{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}@media(min-width:768px){.pet-info-subsection__header{flex-direction:row;justify-content:space-between;align-items:center}}.pet-info-subsection__header-actions{display:flex;flex-direction:column;gap:1rem}@media(min-width:768px){.pet-info-subsection__header-actions{flex-direction:row;gap:1rem}}.pet-info-subsection__header h3{margin:0 0 .5rem;font-size:1.5rem}.pet-info-subsection__header p{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.pet-info-subsection__title{display:flex;flex-direction:column;gap:.5rem}.pet-info-subsection__form-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.pet-info-subsection__form-section h4{margin:0 0 1.5rem;color:#333;font-size:1.2rem}.pet-info-subsection__form .required{color:#dc3545}.pet-info-subsection__form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media(max-width:768px){.pet-info-subsection__form-grid{grid-template-columns:1fr}}.pet-info-subsection__form-column{display:flex;flex-direction:column;gap:1.5rem}.pet-info-subsection__field{display:flex;flex-direction:column;gap:.5rem}.pet-info-subsection__field label{font-weight:600;color:var(--color-text);font-size:.9rem}.pet-info-subsection__field input,.pet-info-subsection__field textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:1rem;background:var(--color-bg);color:var(--color-text);transition:all var(--transition);font-family:inherit}.pet-info-subsection__field input::placeholder,.pet-info-subsection__field textarea::placeholder{color:var(--color-text-secondary)}.pet-info-subsection__field input:focus,.pet-info-subsection__field textarea:focus{outline:none;border-color:var(--color-primary);background:var(--color-absolute);box-shadow:0 0 0 3px var(--color-primary-opac50)}.pet-info-subsection__field input.input-error,.pet-info-subsection__field textarea.input-error{border-color:var(--color-error)}.pet-info-subsection__field textarea{resize:vertical;min-height:100px}.pet-info-subsection__field .error-message{color:#dc3545;font-size:.85rem;margin-top:-.25rem}.pet-info-subsection__field small{display:block;margin-top:.25rem}.pet-info-subsection .input-with-icon{position:relative}.pet-info-subsection .input-with-icon .input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#666;font-size:1rem;z-index:1;pointer-events:none}.pet-info-subsection .input-with-icon input,.pet-info-subsection .input-with-icon textarea{padding-left:2.5rem}.pet-info-subsection .input-with-icon input[type=date],.pet-info-subsection .input-with-icon input[type=time]{cursor:pointer}.pet-info-subsection .input-with-icon input[type=date]::-webkit-calendar-picker-indicator,.pet-info-subsection .input-with-icon input[type=time]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;width:100%;height:100%;cursor:pointer;z-index:2}.pet-info-subsection__form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.pet-info-subsection .server-error{background:#f8d7da;color:#721c24;padding:1rem;border-radius:8px;margin-bottom:1rem}.pet-info-subsection .server-error p{margin:0}.pet-info-subsection__info-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}@media(max-width:768px){.pet-info-subsection__info-grid{grid-template-columns:1fr}}.pet-info-subsection__info-grid .info-item{display:flex;flex-direction:column;gap:.5rem}.pet-info-subsection__info-grid .info-item label{font-weight:600;color:var(--color-text);font-size:.85rem}.pet-info-subsection__info-grid .info-item p{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.pet-info-subsection__info-grid .info-item a{color:#7b3bff;text-decoration:underline}.pet-info-subsection__info-grid .info-item a:hover{color:#6b2ee6}.pet-info-subsection__info-grid .info-item--full{grid-column:1/-1}.pet-information{width:95%;max-width:1100px;margin:20px auto}.pet-information .tabs{display:flex;border:1px solid var(--color-border-opac25);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-md, 0 2px 6px rgba(0, 0, 0, .1));background:var(--color-absolute)}.pet-information .tabs button{flex:1;padding:8px 0;background:var(--color-absolute);border:none;cursor:pointer;font-weight:500;color:var(--color-text-secondary);font-size:1.1rem;margin:3px}.pet-information .tabs button #menu-title{display:flex;justify-content:center;align-items:center;margin:0}.pet-information .tabs button #menu-title .icon-tabs{margin-right:4px}.pet-information .tabs button.active{background:linear-gradient(90deg,var(--color-gradient-start-opac50),var(--color-gradient-end-opac50));color:var(--color-text);border-radius:20px;margin:3px}.pet-information .tabs button.active #menu-title,.pet-information .tabs button.active .icon-tabs{color:#fff}.pet-information .icon{position:relative;top:2px;left:-4px}.nutrition-subsection__header{display:flex;flex-direction:column;gap:2rem}@media(min-width:768px){.nutrition-subsection__header{flex-direction:row;justify-content:space-between;align-items:center}}.nutrition-subsection__header h3{margin:0 0 .5rem;color:var(--color-text);font-size:1.5rem}.nutrition-subsection__header p{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.nutrition-subsection__title{display:flex;flex-direction:column;gap:.5rem}.nutrition-subsection__form-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.nutrition-subsection__form-section h4{margin:0 0 1.5rem;color:var(--color-text);font-size:1.2rem}.nutrition-subsection__form .required{color:var(--color-error)}.nutrition-subsection__form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media(max-width:768px){.nutrition-subsection__form-grid{grid-template-columns:1fr}}.nutrition-subsection__form-column{display:flex;flex-direction:column;gap:1.5rem}.nutrition-subsection__field{display:flex;flex-direction:column;gap:.5rem}.nutrition-subsection__field label{font-weight:600;color:var(--color-text);font-size:.9rem}.nutrition-subsection__field input,.nutrition-subsection__field textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:1rem;background:var(--color-bg);color:var(--color-text);transition:all var(--transition);font-family:inherit}.nutrition-subsection__field input::placeholder,.nutrition-subsection__field textarea::placeholder{color:var(--color-text-secondary)}.nutrition-subsection__field input:focus,.nutrition-subsection__field textarea:focus{outline:none;border-color:var(--color-primary);background:var(--color-absolute);box-shadow:0 0 0 3px var(--color-primary-opac50)}.nutrition-subsection__field input.input-error,.nutrition-subsection__field textarea.input-error{border-color:var(--color-error)}.nutrition-subsection__field textarea{resize:vertical;min-height:100px}.nutrition-subsection__field .error-message{color:var(--color-error);font-size:.85rem;margin-top:-.25rem}.nutrition-subsection .input-with-icon{position:relative}.nutrition-subsection .input-with-icon .input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);font-size:1rem;z-index:1;pointer-events:none}.nutrition-subsection .input-with-icon input,.nutrition-subsection .input-with-icon textarea{padding-left:2.5rem}.nutrition-subsection .input-with-icon input[type=date],.nutrition-subsection .input-with-icon input[type=time]{cursor:pointer}.nutrition-subsection .input-with-icon input[type=date]::-webkit-calendar-picker-indicator,.nutrition-subsection .input-with-icon input[type=time]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;width:100%;height:100%;cursor:pointer;z-index:2}.nutrition-subsection__form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.nutrition-subsection .server-error{background:var(--color-error-light);color:var(--color-error-text);padding:1rem;border-radius:var(--radius-md);margin-bottom:1rem}.nutrition-subsection .server-error p{margin:0}.nutrition-subsection__history-header{margin-bottom:2rem}.nutrition-subsection__history-header>div:first-child{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.nutrition-subsection__history-header>div:first-child .history-icon{color:var(--color-primary);font-size:1.5rem}.nutrition-subsection__history-header>div:first-child h3{margin:0;color:var(--color-text);font-size:1.5rem}.nutrition-subsection__history-header>p{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.nutrition-subsection__loading,.nutrition-subsection__empty{text-align:center;padding:3rem;color:var(--color-text-secondary);font-size:1.2rem}.nutrition-subsection__meals-list{display:flex;flex-direction:column;gap:1.5rem}.nutrition-subsection__day-group .day-group__header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.nutrition-subsection__day-group .day-group__header .day-group__title{font-size:1.2rem;font-weight:600;color:var(--color-text)}.nutrition-subsection__day-group .day-group__header .day-group__count{font-size:.9rem;background:var(--color-bg);padding:.25rem .75rem;border-radius:var(--radius-sm);color:var(--color-text-secondary)}.nutrition-subsection__day-group .day-group__meals{display:flex;flex-direction:column;gap:1rem}.nutrition-subsection__meal-card{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;position:relative}.nutrition-subsection__meal-card .meal-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.nutrition-subsection__meal-card .meal-card__title{display:flex;align-items:center;gap:.75rem}.nutrition-subsection__meal-card .meal-card__title .meal-icon{color:var(--color-primary);font-size:1.25rem}.nutrition-subsection__meal-card .meal-card__title h4{margin:0;color:var(--color-text);font-size:1.1rem}.nutrition-subsection__meal-card .meal-card__actions{display:flex;gap:.5rem}.nutrition-subsection__meal-card .meal-card__action-btn{background:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition);display:flex;align-items:center;justify-content:center}.nutrition-subsection__meal-card .meal-card__action-btn:hover{background:var(--color-bg);color:var(--color-primary)}.nutrition-subsection__meal-card .meal-card__action-btn--delete:hover{background:var(--color-error-light);color:var(--color-error-text)}.nutrition-subsection__meal-card .meal-card__details{display:flex;flex-direction:column;gap:1rem}.nutrition-subsection__meal-card .meal-card__detail-item{display:flex;gap:.75rem;align-items:flex-start}.nutrition-subsection__meal-card .meal-card__detail-item .detail-icon{color:var(--color-primary);margin-top:.25rem;flex-shrink:0}.nutrition-subsection__meal-card .meal-card__detail-item label{display:block;font-weight:600;color:var(--color-text-secondary);font-size:.85rem;margin-bottom:.25rem}.nutrition-subsection__meal-card .meal-card__detail-item p{margin:0;color:var(--color-text);font-size:1.1rem}.nutrition-subsection__meal-card .meal-card__detail-item:not(:has(.detail-icon)){flex-direction:column;gap:.25rem}.reminders-section__header{display:flex;flex-direction:column;gap:2rem}@media(min-width:768px){.reminders-section__header{flex-direction:row;justify-content:space-between;align-items:center}}.reminders-section__header h3{margin:0 0 .5rem;color:var(--color-text);font-size:1.5rem}.reminders-section__header p{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.reminders-section__add-btn{display:flex;align-items:center;gap:.5rem}.reminders-section__form-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.reminders-section__form-section h4{margin:0 0 1.5rem;color:var(--color-text);font-size:1.2rem}.reminders-section__form .required{color:var(--color-error)}.reminders-section__form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media(max-width:768px){.reminders-section__form-grid{grid-template-columns:1fr}}.reminders-section__form-column{display:flex;flex-direction:column;gap:1.5rem}.reminders-section__field{display:flex;flex-direction:column;gap:.5rem}.reminders-section__field label{font-weight:600;color:var(--color-text);font-size:.9rem}.reminders-section__field input,.reminders-section__field textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:1rem;background:var(--color-bg);color:var(--color-text);transition:all var(--transition);font-family:inherit}.reminders-section__field input::placeholder,.reminders-section__field textarea::placeholder{color:var(--color-text-secondary)}.reminders-section__field input:focus,.reminders-section__field textarea:focus{outline:none;border-color:var(--color-primary);background:var(--color-absolute);box-shadow:0 0 0 3px var(--color-primary-opac50)}.reminders-section__field input.input-error,.reminders-section__field textarea.input-error{border-color:var(--color-error)}.reminders-section__field textarea{resize:vertical;min-height:80px}.reminders-section__field .error-message{color:var(--color-error);font-size:.85rem;margin-top:-.25rem}.reminders-section__field .checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:400}.reminders-section__field .checkbox-label .checkbox-input{width:auto;cursor:pointer}.reminders-section .input-with-icon{position:relative}.reminders-section .input-with-icon .input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);font-size:1rem;z-index:1;pointer-events:none}.reminders-section .input-with-icon input{padding-left:2.5rem}.reminders-section .input-with-icon input[type=date],.reminders-section .input-with-icon input[type=time]{cursor:pointer}.reminders-section .input-with-icon input[type=date]::-webkit-calendar-picker-indicator,.reminders-section .input-with-icon input[type=time]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;width:100%;height:100%;cursor:pointer;z-index:2}.reminders-section__form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.reminders-section .server-error{background:var(--color-error-light);color:var(--color-error-text);padding:1rem;border-radius:var(--radius-md);margin-bottom:1rem}.reminders-section .server-error p{margin:0}.reminders-section__loading,.reminders-section__empty{text-align:center;padding:3rem;color:var(--color-text-secondary);font-size:1.2rem}.reminders-section__list{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.reminders-section__reminder-card{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;transition:all var(--transition)}.reminders-section__reminder-card:hover{box-shadow:var(--shadow-sm)}.reminders-section__reminder-card .reminder-card__content{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.reminders-section__reminder-card .reminder-card__main{display:flex;gap:1rem;flex:1}.reminders-section__reminder-card .reminder-card__toggle{flex-shrink:0}.reminders-section__reminder-card .toggle-switch{position:relative;display:inline-block;width:50px;height:26px}.reminders-section__reminder-card .toggle-switch input{opacity:0;width:0;height:0}.reminders-section__reminder-card .toggle-switch input:checked+.toggle-slider{background-color:var(--color-primary)}.reminders-section__reminder-card .toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.reminders-section__reminder-card .toggle-switch .toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border);transition:var(--transition);border-radius:26px}.reminders-section__reminder-card .toggle-switch .toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:var(--color-absolute);transition:var(--transition);border-radius:50%}.reminders-section__reminder-card .reminder-card__info{flex:1}.reminders-section__reminder-card .reminder-card__datetime{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary);font-size:.9rem;margin-bottom:.5rem}.reminders-section__reminder-card .reminder-card__datetime .datetime-icon{color:var(--color-primary);font-size:.9rem}.reminders-section__reminder-card .reminder-card__title{margin:0 0 .5rem;color:var(--color-text);font-size:1.1rem;font-weight:600}.reminders-section__reminder-card .reminder-card__description{margin:0 0 .75rem;color:var(--color-text-secondary);font-size:.9rem}.reminders-section__reminder-card .reminder-card__meta{display:flex;gap:.5rem;flex-wrap:wrap}.reminders-section__reminder-card .reminder-card__frequency{display:inline-block;padding:.25rem .75rem;background:var(--color-bg);color:var(--color-text-secondary);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.reminders-section__reminder-card .reminder-card__badge{display:inline-block;padding:.25rem .75rem;background:var(--color-primary-bg);color:var(--color-primary);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.reminders-section__reminder-card .reminder-card__actions{display:flex;gap:.5rem;flex-shrink:0}.reminders-section__reminder-card .reminder-card__action-btn{background:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition);display:flex;align-items:center;justify-content:center}.reminders-section__reminder-card .reminder-card__action-btn:hover{background:var(--color-bg);color:var(--color-primary)}.reminders-section__reminder-card .reminder-card__action-btn--delete:hover{background:var(--color-error-light);color:var(--color-error-text)}.pet-health-section{margin-top:3rem}.pet-health-section .subsections-tabs{display:flex;background:var(--color-absolute);border:1px solid var(--color-border-opac25);border-radius:14px;overflow:hidden;box-shadow:0 1px 4px #0000000a;margin-bottom:1.5rem}.pet-health-section .subsections-tabs button{flex:1;padding:8px 0;background-color:inherit;border:none;cursor:pointer;font-weight:500;color:var(--color-text);font-size:11px;transition:.25s ease}.pet-health-section .subsections-tabs button.active{background:var(--purple-bg);color:var(--purple-text);font-weight:600}.vaccination-subsection__vaccine-card{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;position:relative;transition:all var(--transition)}.vaccination-subsection__vaccine-card:hover{box-shadow:var(--shadow-sm)}.vaccination-subsection__vaccine-card .vaccine-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.vaccination-subsection__vaccine-card .vaccine-card__title{display:flex;align-items:center;gap:.75rem}.vaccination-subsection__vaccine-card .vaccine-card__title .vaccine-icon{color:var(--color-primary);font-size:1.25rem}.vaccination-subsection__vaccine-card .vaccine-card__title h4{margin:0;color:var(--color-text);font-size:1.1rem}.vaccination-subsection__vaccine-card .vaccine-card__actions{display:flex;gap:.5rem}.vaccination-subsection__vaccine-card .vaccine-card__action-btn{background:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition);display:flex;align-items:center;justify-content:center}.vaccination-subsection__vaccine-card .vaccine-card__action-btn:hover{background:var(--color-bg);color:var(--color-primary)}.vaccination-subsection__vaccine-card .vaccine-card__action-btn--delete:hover{background:var(--color-error-light);color:var(--color-error-text)}.vaccination-subsection__vaccine-card .vaccine-card__badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;margin-bottom:1rem}.vaccination-subsection__vaccine-card .vaccine-card__badge--expired{background:var(--color-error-light);color:var(--color-error-text)}.vaccination-subsection__vaccine-card .vaccine-card__details{display:flex;flex-direction:column;gap:1rem}.vaccination-subsection__vaccine-card .vaccine-card__detail-item{display:flex;gap:.75rem;align-items:flex-start}.vaccination-subsection__vaccine-card .vaccine-card__detail-item .detail-icon{color:var(--color-primary);margin-top:.25rem;flex-shrink:0}.vaccination-subsection__vaccine-card .vaccine-card__detail-item label{display:block;font-weight:600;color:var(--color-text-secondary);font-size:.85rem;margin-bottom:.25rem}.vaccination-subsection__vaccine-card .vaccine-card__detail-item p{margin:0;color:var(--color-text);font-size:1.1rem}.vaccination-subsection__vaccine-card .vaccine-card__detail-item:not(:has(.detail-icon)){flex-direction:column;gap:.25rem}.deworming-subsection__deworming-card{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;position:relative;transition:all var(--transition)}.deworming-subsection__deworming-card:hover{box-shadow:var(--shadow-sm)}.deworming-subsection__deworming-card .deworming-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.deworming-subsection__deworming-card .deworming-card__title{display:flex;align-items:center;gap:.75rem}.deworming-subsection__deworming-card .deworming-card__title .deworming-icon{color:var(--color-primary);font-size:1.25rem}.deworming-subsection__deworming-card .deworming-card__title h4{margin:0;color:var(--color-text);font-size:1.1rem}.deworming-subsection__deworming-card .deworming-card__actions{display:flex;gap:.5rem}.deworming-subsection__deworming-card .deworming-card__action-btn{background:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition);display:flex;align-items:center;justify-content:center}.deworming-subsection__deworming-card .deworming-card__action-btn:hover{background:var(--color-bg);color:var(--color-primary)}.deworming-subsection__deworming-card .deworming-card__action-btn--delete:hover{background:var(--color-error-light);color:var(--color-error-text)}.deworming-subsection__deworming-card .deworming-card__badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;margin-bottom:1rem}.deworming-subsection__deworming-card .deworming-card__badge--expired{background:var(--color-error-light);color:var(--color-error-text)}.deworming-subsection__deworming-card .deworming-card__details{display:flex;flex-direction:column;gap:1rem}.deworming-subsection__deworming-card .deworming-card__detail-item{display:flex;gap:.75rem;align-items:flex-start}.deworming-subsection__deworming-card .deworming-card__detail-item .detail-icon{color:var(--color-primary);margin-top:.25rem;flex-shrink:0}.deworming-subsection__deworming-card .deworming-card__detail-item label{display:block;font-weight:600;color:var(--color-text-secondary);font-size:.85rem;margin-bottom:.25rem}.deworming-subsection__deworming-card .deworming-card__detail-item p{margin:0;color:var(--color-text);font-size:1.1rem}.deworming-subsection__deworming-card .deworming-card__detail-item:not(:has(.detail-icon)){flex-direction:column;gap:.25rem}.vaccination-subsection__header,.deworming-subsection__header,.visit-subsection__header{display:flex;flex-direction:column;gap:2rem}@media(min-width:768px){.vaccination-subsection__header,.deworming-subsection__header,.visit-subsection__header{flex-direction:row;justify-content:space-between;align-items:center}}.vaccination-subsection__header h3,.deworming-subsection__header h3,.visit-subsection__header h3{margin:0 0 .5rem;color:var(--color-text);font-size:1.5rem}.vaccination-subsection__header p,.deworming-subsection__header p,.visit-subsection__header p{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.vaccination-subsection__add-btn,.deworming-subsection__add-btn,.visit-subsection__add-btn{display:flex;align-items:center;gap:.5rem}.vaccination-subsection__form-section,.deworming-subsection__form-section,.visit-subsection__form-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.vaccination-subsection__form-section h4,.deworming-subsection__form-section h4,.visit-subsection__form-section h4{margin:0 0 1.5rem;color:var(--color-text);font-size:1.2rem}.vaccination-subsection__form .required,.deworming-subsection__form .required,.visit-subsection__form .required{color:var(--color-error)}.vaccination-subsection__form-grid,.deworming-subsection__form-grid,.visit-subsection__form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media(max-width:768px){.vaccination-subsection__form-grid,.deworming-subsection__form-grid,.visit-subsection__form-grid{grid-template-columns:1fr}}.vaccination-subsection__form-column,.deworming-subsection__form-column,.visit-subsection__form-column{display:flex;flex-direction:column;gap:1.5rem}.vaccination-subsection__field,.deworming-subsection__field,.visit-subsection__field{display:flex;flex-direction:column;gap:.5rem}.vaccination-subsection__field label,.deworming-subsection__field label,.visit-subsection__field label{font-weight:600;color:var(--color-text);font-size:.9rem}.vaccination-subsection__field input,.vaccination-subsection__field textarea,.deworming-subsection__field input,.deworming-subsection__field textarea,.visit-subsection__field input,.visit-subsection__field textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:1rem;background:var(--color-bg);color:var(--color-text);transition:all var(--transition);font-family:inherit}.vaccination-subsection__field input::placeholder,.vaccination-subsection__field textarea::placeholder,.deworming-subsection__field input::placeholder,.deworming-subsection__field textarea::placeholder,.visit-subsection__field input::placeholder,.visit-subsection__field textarea::placeholder{color:var(--color-text-secondary)}.vaccination-subsection__field input:focus,.vaccination-subsection__field textarea:focus,.deworming-subsection__field input:focus,.deworming-subsection__field textarea:focus,.visit-subsection__field input:focus,.visit-subsection__field textarea:focus{outline:none;border-color:var(--color-primary);background:var(--color-absolute);box-shadow:0 0 0 3px var(--color-primary-opac50)}.vaccination-subsection__field input.input-error,.vaccination-subsection__field textarea.input-error,.deworming-subsection__field input.input-error,.deworming-subsection__field textarea.input-error,.visit-subsection__field input.input-error,.visit-subsection__field textarea.input-error{border-color:var(--color-error)}.vaccination-subsection__field textarea,.deworming-subsection__field textarea,.visit-subsection__field textarea{resize:vertical;min-height:100px}.vaccination-subsection__field .error-message,.deworming-subsection__field .error-message,.visit-subsection__field .error-message{color:var(--color-error);font-size:.85rem;margin-top:-.25rem}.vaccination-subsection .input-with-icon,.deworming-subsection .input-with-icon,.visit-subsection .input-with-icon{position:relative}.vaccination-subsection .input-with-icon .input-icon,.deworming-subsection .input-with-icon .input-icon,.visit-subsection .input-with-icon .input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);font-size:1rem;z-index:1;pointer-events:none}.vaccination-subsection .input-with-icon input,.vaccination-subsection .input-with-icon textarea,.deworming-subsection .input-with-icon input,.deworming-subsection .input-with-icon textarea,.visit-subsection .input-with-icon input,.visit-subsection .input-with-icon textarea{padding-left:2.5rem}.vaccination-subsection .input-with-icon input[type=date],.vaccination-subsection .input-with-icon input[type=time],.deworming-subsection .input-with-icon input[type=date],.deworming-subsection .input-with-icon input[type=time],.visit-subsection .input-with-icon input[type=date],.visit-subsection .input-with-icon input[type=time]{cursor:pointer}.vaccination-subsection .input-with-icon input[type=date]::-webkit-calendar-picker-indicator,.vaccination-subsection .input-with-icon input[type=time]::-webkit-calendar-picker-indicator,.deworming-subsection .input-with-icon input[type=date]::-webkit-calendar-picker-indicator,.deworming-subsection .input-with-icon input[type=time]::-webkit-calendar-picker-indicator,.visit-subsection .input-with-icon input[type=date]::-webkit-calendar-picker-indicator,.visit-subsection .input-with-icon input[type=time]::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:0;width:100%;height:100%;cursor:pointer;z-index:2}.vaccination-subsection__form-actions,.deworming-subsection__form-actions,.visit-subsection__form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.vaccination-subsection .server-error,.deworming-subsection .server-error,.visit-subsection .server-error{background:var(--color-error-light);color:var(--color-error-text);padding:1rem;border-radius:var(--radius-md);margin-bottom:1rem}.vaccination-subsection .server-error p,.deworming-subsection .server-error p,.visit-subsection .server-error p{margin:0}.vaccination-subsection__history-header,.deworming-subsection__history-header,.visit-subsection__history-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.vaccination-subsection__history-header h4,.deworming-subsection__history-header h4,.visit-subsection__history-header h4{margin:0;color:var(--color-text);font-size:1.2rem}.vaccination-subsection__empty,.deworming-subsection__empty,.visit-subsection__empty{text-align:center;padding:3rem;color:var(--color-text-secondary);font-size:1.1rem;background:var(--color-absolute);border-radius:var(--radius-md)}.vaccination-subsection__list,.deworming-subsection__list,.visit-subsection__list{display:flex;flex-direction:column;gap:1rem}.vaccination-subsection__item,.deworming-subsection__item,.visit-subsection__item{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;transition:all var(--transition)}.vaccination-subsection__item:hover,.deworming-subsection__item:hover,.visit-subsection__item:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.vaccination-subsection__item--expired,.deworming-subsection__item--expired,.visit-subsection__item--expired{border-left:4px solid var(--color-error)}.vaccination-subsection__item-header,.deworming-subsection__item-header,.visit-subsection__item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.vaccination-subsection__item-title,.deworming-subsection__item-title,.visit-subsection__item-title{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0}.vaccination-subsection__item-actions,.deworming-subsection__item-actions,.visit-subsection__item-actions{display:flex;gap:.5rem;flex-shrink:0}.vaccination-subsection__item-content,.deworming-subsection__item-content,.visit-subsection__item-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}@media(max-width:768px){.vaccination-subsection__item-content,.deworming-subsection__item-content,.visit-subsection__item-content{grid-template-columns:1fr}}.vaccination-subsection__item-detail,.deworming-subsection__item-detail,.visit-subsection__item-detail{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary);font-size:.9rem}.vaccination-subsection__item-detail svg,.deworming-subsection__item-detail svg,.visit-subsection__item-detail svg{color:var(--color-primary);flex-shrink:0}.vaccination-subsection__item-notes,.deworming-subsection__item-notes,.visit-subsection__item-notes{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.9rem;line-height:1.5}.vaccination-subsection__expired-badge,.deworming-subsection__expired-badge,.visit-subsection__expired-badge{display:inline-block;padding:.25rem .75rem;background:var(--color-error-light);color:var(--color-error-text);border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;margin-top:.5rem}.visit-subsection__visit-card{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;position:relative;transition:all var(--transition)}.visit-subsection__visit-card:hover{box-shadow:var(--shadow-sm)}.visit-subsection__visit-card .visit-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.visit-subsection__visit-card .visit-card__title{display:flex;align-items:center;gap:.75rem}.visit-subsection__visit-card .visit-card__title .visit-icon{color:var(--color-primary);font-size:1.25rem}.visit-subsection__visit-card .visit-card__title h4{margin:0;color:var(--color-text);font-size:1.1rem}.visit-subsection__visit-card .visit-card__actions{display:flex;gap:.5rem}.visit-subsection__visit-card .visit-card__action-btn{background:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition);display:flex;align-items:center;justify-content:center}.visit-subsection__visit-card .visit-card__action-btn:hover{background:var(--color-bg);color:var(--color-primary)}.visit-subsection__visit-card .visit-card__action-btn--delete:hover{background:var(--color-error-light);color:var(--color-error-text)}.visit-subsection__visit-card .visit-card__details{display:flex;flex-direction:column;gap:1rem}.visit-subsection__visit-card .visit-card__detail-item{display:flex;gap:.75rem;align-items:flex-start}.visit-subsection__visit-card .visit-card__detail-item .detail-icon{color:var(--color-primary);margin-top:.25rem;flex-shrink:0}.visit-subsection__visit-card .visit-card__detail-item label{display:block;font-weight:600;color:var(--color-text-secondary);font-size:.85rem;margin-bottom:.25rem}.visit-subsection__visit-card .visit-card__detail-item p{margin:0;color:var(--color-text);font-size:1.1rem}.visit-subsection__visit-card .visit-card__detail-item:not(:has(.detail-icon)){flex-direction:column;gap:.25rem}.details-page{width:100%;min-height:100vh;background:var(--color-bg);padding-bottom:40px}.details-page .header{margin-bottom:20px}.gallery-modal-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:999;animation:fadeIn .25s ease}.gallery-modal-card{background:var(--color-absolute);border:1px solid var(--color-border-opac25);border-radius:20px;padding:2.5rem 2rem;width:600px;max-width:95%;position:relative;box-shadow:0 15px 40px #00000038;animation:slideUp .25s ease;display:flex;flex-direction:column;gap:2rem}.gallery-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;font-size:1.6rem;color:#777;transition:.2s ease}.gallery-modal-close:hover{color:var(--color-text);transform:rotate(90deg)}.gallery-modal-title{text-align:center;font-size:1.8rem;font-weight:600;color:var(--color-text)}.gallery-modal-body{display:flex;flex-direction:column;gap:1.3rem;align-items:center}.gallery-modal-body input[type=file]{padding:10px;border-radius:10px;background:#f3f4f6;border:2px dashed #c7c7c7;width:100%;font-size:.95rem;cursor:pointer;transition:.2s ease}.gallery-modal-body input[type=file]:hover{border-color:#8b5cf6}.gallery-modal-body button{background:#8b5cf6;color:#fff;padding:.75rem 1.4rem;border-radius:10px;border:none;cursor:pointer;font-size:1rem;transition:.2s ease;width:100%;font-weight:500}.gallery-modal-body button:hover{background:#7c3aed}.gallery-modal-body button:disabled{background:#c4b5fd;cursor:not-allowed}.gallery-container{position:relative;display:flex;justify-content:center;align-items:center;min-height:460px}.gallery-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:5}.gallery-main-image{width:100%;max-height:55vh;border-radius:14px;object-fit:cover;box-shadow:0 4px 18px #0003}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffd9;border:none;padding:8px;border-radius:50%;cursor:pointer;transition:.2s ease;display:flex;align-items:center;justify-content:center}.gallery-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.1)}.gallery-arrow.left{left:-20px}.gallery-arrow.right{right:-20px}.gallery-indicators{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.gallery-indicator{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff80;cursor:pointer;transition:all .3s ease;padding:0}.gallery-indicator:hover{background:#fffc;transform:scale(1.2)}.gallery-indicator.active{background:#fff;width:24px;border-radius:4px}.button-delete-container{margin:0 auto}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:12px;width:100%;margin-top:1rem}.preview-remove{position:absolute;top:4px;right:4px;background:#0009;border:none;border-radius:50%;padding:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:.2s ease}.preview-remove:hover{background:#000c}.dropzone{border:2px dashed #cccccc;padding:2rem;border-radius:14px;text-align:center;cursor:pointer;transition:all .25s ease;position:relative;background:var(--color-bg)}.dropzone p{font-size:1.1rem;font-weight:600;color:var(--color-text)}.dropzone span{display:block;font-size:.9rem;color:var(--color-text-secondary);margin-top:4px}.dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.dropzone.dragging{border-color:#8b5cf6;background:#8b5cf614}.preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:12px;width:100%;margin-top:1.2rem}.preview-item{position:relative;border-radius:10px;overflow:hidden}.preview-item img{width:100%;height:90px;object-fit:cover;border-radius:10px}.preview-remove{position:absolute;top:4px;right:4px;background:#0000008c;border:none;border-radius:50%;padding:3px;cursor:pointer;color:#fff;transition:.2s ease}.preview-remove:hover{background:#000000d9}.document-modal-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:999;animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.document-modal-card{background:var(--color-absolute);border:1px solid var(--color-border-opac25);border-radius:20px;padding:2.5rem 2rem;width:600px;max-width:95%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 15px 40px #00000038;animation:slideUp .25s ease;display:flex;flex-direction:column;gap:1.5rem}.document-modal-card[data-mode=view]{width:900px;max-width:95%}.document-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;color:var(--color-text-secondary);transition:.2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;padding:0}.document-modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text)}.document-modal-title{text-align:center;font-size:1.8rem;font-weight:600;color:var(--color-text);margin:0}.document-modal-info{text-align:center;font-size:.875rem;color:var(--color-text-secondary);margin:0}.document-modal-category{width:100%}.document-dropzone{border:2px dashed var(--color-border);border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background:var(--color-bg-secondary);position:relative;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.document-dropzone.dragging{border-color:var(--color-primary);background:var(--color-primary-opac10)}.document-dropzone.has-file{border-color:var(--color-success);background:var(--color-success-opac10)}.document-dropzone p{margin:0;font-size:1.1rem;font-weight:500;color:var(--color-text)}.document-dropzone span{font-size:.875rem;color:var(--color-text-secondary)}.document-dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.document-dropzone-icon{color:var(--color-text-secondary);margin-bottom:.5rem}.document-preview{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem;background:var(--color-absolute);border:1px solid var(--color-border);border-radius:8px}.document-preview-icon{color:var(--color-error);flex-shrink:0}.document-preview-info{flex:1;text-align:left}.document-preview-name{margin:0 0 .25rem;font-size:1rem;font-weight:500;color:var(--color-text);word-break:break-word}.document-preview-size{margin:0;font-size:.875rem;color:var(--color-text-secondary)}.document-preview-remove{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);transition:.2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;padding:0;flex-shrink:0}.document-preview-remove:hover{background:var(--color-bg-secondary);color:var(--color-error)}.document-modal-submit{width:100%;margin-top:.5rem}.document-modal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--color-text-secondary)}.document-modal-empty-icon{color:var(--color-text-secondary);margin-bottom:1rem;opacity:.5}.document-modal-empty p{margin:0;font-size:1.1rem}.document-viewer-container{display:flex;flex-direction:column;gap:1.5rem;width:100%}.document-viewer-header{text-align:center}.document-viewer-title{margin:0 0 .5rem;font-size:1.2rem;font-weight:600;color:var(--color-text);word-break:break-word}.document-viewer-category{margin:0;font-size:.875rem;color:var(--color-text-secondary)}.document-viewer{position:relative;display:flex;justify-content:center;align-items:center;min-height:500px;background:var(--color-bg-secondary);border-radius:12px;overflow:hidden}.document-viewer-iframe{width:100%;height:70vh;min-height:500px;border:none;border-radius:8px;background:var(--color-absolute)}.document-viewer-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:1px solid var(--color-border);padding:12px;border-radius:50%;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;z-index:10;color:var(--color-text)}.document-viewer-arrow:hover{background:var(--color-absolute);transform:translateY(-50%) scale(1.1);box-shadow:0 4px 12px #00000026}.document-viewer-arrow.left{left:-20px}.document-viewer-arrow.right{right:-20px}.document-viewer-indicators{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.document-viewer-indicator{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff80;cursor:pointer;transition:all .3s ease;padding:0}.document-viewer-indicator:hover{background:#fffc;transform:scale(1.2)}.document-viewer-indicator.active{background:#fff;width:24px;border-radius:4px}.document-viewer-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--color-border)}.document-viewer-counter{margin:0;font-size:.875rem;color:var(--color-text-secondary)}.document-viewer-download{display:flex;align-items:center;gap:.5rem;color:var(--color-primary);text-decoration:none;font-size:.875rem;transition:color .2s ease}.document-viewer-download:hover{color:var(--color-primary-hover);text-decoration:underline}@media(max-width:768px){.document-modal-card{width:95%;padding:2rem 1.5rem}.document-dropzone{padding:2rem 1.5rem;min-height:180px}.document-viewer{min-height:400px}.document-viewer-iframe{min-height:400px;height:60vh}.document-viewer-arrow.left{left:8px}.document-viewer-arrow.right{right:8px}.document-viewer-card{width:90vw;max-width:95%}}.ai-vet-assistant__toggle{position:fixed;bottom:2rem;right:2rem;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));border:none;color:var(--color-absolute);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);z-index:998;transition:all var(--transition);padding:0}.ai-vet-assistant__toggle:hover{transform:scale(1.1);box-shadow:0 6px 20px #0000004d;background:linear-gradient(135deg,var(--color-gradient-start-hover),var(--color-gradient-end-hover))}.ai-vet-assistant__toggle-text{position:absolute;right:70px;white-space:nowrap;background:var(--color-absolute);color:var(--color-text);padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;box-shadow:var(--shadow-md);border:1px solid var(--color-border);opacity:0;pointer-events:none;transition:opacity var(--transition)}.ai-vet-assistant__toggle:hover .ai-vet-assistant__toggle-text{opacity:1}@media(max-width:768px){.ai-vet-assistant__toggle{bottom:1.5rem;right:1.5rem;width:56px;height:56px}.ai-vet-assistant__toggle-text{display:none}}.ai-vet-assistant__chat-box{position:fixed;bottom:2rem;right:2rem;width:400px;max-width:calc(100vw - 4rem);height:600px;max-height:calc(100vh - 4rem);background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:999;animation:slideUp .3s ease}@media(max-width:768px){.ai-vet-assistant__chat-box{bottom:1.5rem;right:1.5rem;width:calc(100vw - 3rem);height:calc(100vh - 3rem);max-height:calc(100vh - 3rem)}}.ai-vet-assistant__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));color:#fff;border-radius:var(--radius-md) var(--radius-md) 0 0}.ai-vet-assistant__header-info{flex:1}.ai-vet-assistant__header-info h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:#fff}.ai-vet-assistant__pet-name{margin:0;font-size:.75rem;opacity:.9;color:#fff}.ai-vet-assistant__documents-badge{font-size:.7rem;opacity:.85;font-weight:400}.ai-vet-assistant__documents-info{background:var(--color-border);padding:.75rem;border-radius:var(--radius-sm);margin:.75rem 0;font-size:.875rem;line-height:1.5;opacity:.95}.ai-vet-assistant__close{background:#fff3;border:none;border-radius:50%;width:25px;height:25px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-absolute);transition:background var(--transition);padding:0}.ai-vet-assistant__close:hover{background:#ffffff4d}.ai-vet-assistant__messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem;background:var(--color-bg)}.ai-vet-assistant__messages::-webkit-scrollbar{width:6px}.ai-vet-assistant__messages::-webkit-scrollbar-track{background:transparent}.ai-vet-assistant__messages::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.ai-vet-assistant__messages::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.ai-vet-assistant__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;color:var(--color-text-secondary);height:100%}.ai-vet-assistant__empty-icon{color:var(--color-primary);margin-bottom:1rem;opacity:.5}.ai-vet-assistant__empty p{margin:.5rem 0;font-size:.9375rem;line-height:1.5}.ai-vet-assistant__examples{font-size:.8125rem;color:var(--color-text-secondary);font-style:italic;margin-top:1rem}.ai-vet-assistant__message{display:flex;max-width:85%}.ai-vet-assistant__message--user{align-self:flex-end;margin-left:auto}.ai-vet-assistant__message--assistant{align-self:flex-start}.ai-vet-assistant__message-content{padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.9375rem;line-height:1.5;word-wrap:break-word}.ai-vet-assistant__message--user .ai-vet-assistant__message-content{background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));color:#fff;border-bottom-right-radius:4px}.ai-vet-assistant__message--assistant .ai-vet-assistant__message-content{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-bottom-left-radius:4px}.ai-vet-assistant__message--assistant .ai-vet-assistant__message-content *{color:var(--color-text-secondary)}.ai-vet-assistant__message-content .ai-vet-assistant__paragraph{margin:0 0 .75rem;line-height:1.6}.ai-vet-assistant__message-content .ai-vet-assistant__paragraph:last-child{margin-bottom:0}.ai-vet-assistant__message-content .ai-vet-assistant__heading{margin:1rem 0 .5rem;font-weight:600;line-height:1.4;color:inherit}.ai-vet-assistant__message-content .ai-vet-assistant__heading:first-child{margin-top:0}.ai-vet-assistant__message-content .ai-vet-assistant__heading--h1{font-size:1.25rem}.ai-vet-assistant__message-content .ai-vet-assistant__heading--h2{font-size:1.15rem}.ai-vet-assistant__message-content .ai-vet-assistant__heading--h3{font-size:1.05rem;color:var(--color-text-secondary)}.ai-vet-assistant__message-content .ai-vet-assistant__heading--h4,.ai-vet-assistant__message-content .ai-vet-assistant__heading--h5,.ai-vet-assistant__message-content .ai-vet-assistant__heading--h6{font-size:1rem}.ai-vet-assistant__message-content .ai-vet-assistant__bold{font-weight:600;color:inherit}.ai-vet-assistant__message-content .ai-vet-assistant__italic{font-style:italic;color:inherit}.ai-vet-assistant__message-content .ai-vet-assistant__list{margin:.5rem 0;padding-left:1.5rem;line-height:1.6}.ai-vet-assistant__message-content .ai-vet-assistant__list--ordered{list-style-type:decimal}.ai-vet-assistant__message-content .ai-vet-assistant__list--unordered{list-style-type:disc}.ai-vet-assistant__message-content .ai-vet-assistant__list-item{margin-bottom:.5rem;line-height:1.6}.ai-vet-assistant__message-content .ai-vet-assistant__list-item:last-child{margin-bottom:0}.ai-vet-assistant__message-content .ai-vet-assistant__code-inline{background:#0000001a;padding:.15rem .4rem;border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:.875rem}.ai-vet-assistant__message-content .ai-vet-assistant__pre{background:#0000000d;padding:.75rem;border-radius:var(--radius-sm);overflow-x:auto;margin:.75rem 0}.ai-vet-assistant__message-content .ai-vet-assistant__code-block{font-family:Courier New,monospace;font-size:.875rem;display:block;white-space:pre-wrap}.ai-vet-assistant__message-content .ai-vet-assistant__link{color:var(--color-primary);text-decoration:underline;transition:color var(--transition)}.ai-vet-assistant__message-content .ai-vet-assistant__link:hover{color:var(--color-primary-hover)}.ai-vet-assistant__message-content .ai-vet-assistant__hr{border:none;border-top:1px solid var(--color-border);margin:1rem 0}.ai-vet-assistant__message-content .ai-vet-assistant__blockquote{border-left:3px solid var(--color-primary);padding-left:1rem;margin:.75rem 0;font-style:italic;opacity:.9}.ai-vet-assistant__message-content .ai-vet-assistant__break{line-height:1.6}.ai-vet-assistant__loader{animation:spin 1s linear infinite;margin-right:.5rem;display:inline-block;vertical-align:middle}.ai-vet-assistant__input-container{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--color-border);background:var(--color-absolute);border-radius:0 0 var(--radius-md) var(--radius-md)}.ai-vet-assistant__input{flex:1;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9375rem;font-family:var(--font-base);background:var(--color-bg);color:var(--color-text);transition:border-color var(--transition)}.ai-vet-assistant__input:focus{outline:none;border-color:var(--color-primary)}.ai-vet-assistant__input:disabled{opacity:.6;cursor:not-allowed}.ai-vet-assistant__input::placeholder{color:var(--color-text-secondary)}.ai-vet-assistant__send{width:44px;height:44px;border-radius:var(--radius-md);border:none;background:linear-gradient(135deg,var(--color-gradient-start),var(--color-gradient-end));color:var(--color-absolute);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);padding:0;flex-shrink:0}.ai-vet-assistant__send:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--shadow-md)}.ai-vet-assistant__send:disabled{opacity:.6;cursor:not-allowed}.ai-vet-assistant__send-loader{animation:spin 1s linear infinite}.ai-vet-assistant__clear{width:100%;padding:.5rem;margin-top:.5rem;background:none;border:none;color:var(--color-text-secondary);font-size:.8125rem;cursor:pointer;transition:color var(--transition);text-align:center}.ai-vet-assistant__clear:hover{color:var(--color-error)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reset-container{font-family:var(--font-base);color:var(--color-text);display:flex;align-items:center;justify-content:center;height:100vh}.reset-card{min-height:230px;position:relative;width:400px;background:var(--color-absolute);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-md);padding:2.5rem 3rem;transition:all var(--transition);border:1px solid var(--color-border-opac25)}.reset-card .subtitle{color:var(--color-text-secondary);font-size:1.05rem;margin-top:1.4rem;margin-bottom:1.8rem}.reset-card h2{font-size:1.6rem;font-weight:600;margin-top:.9rem;margin-bottom:.9rem;font-family:var(--font-heading);color:var(--color-text)}.reset-form{display:flex;flex-direction:column;gap:.7rem}.input-group{position:relative;display:flex;flex-direction:column;margin-bottom:1.5rem}.input-group input{width:100%;padding:1.2rem 2.7rem 1.2rem 2.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg);color:var(--color-text);font-size:1.1rem;outline:none;transition:all var(--transition);font-family:inherit}.input-group input::placeholder{color:var(--color-text-secondary)}.input-group input:focus{border-color:var(--color-primary);background:var(--color-absolute);box-shadow:0 0 0 3px var(--color-primary-opac50)}.input-icon{font-size:1.2rem;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.error{position:absolute;bottom:-33px;left:3px;color:var(--color-error);font-size:.9rem;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease}.error.visible{opacity:1;visibility:visible}.success{color:#16a34a;font-size:1rem;font-weight:500;margin-top:.5rem;text-align:center}.error.server{color:#e74c3c;font-weight:500;font-size:.95rem;margin-top:.5rem;text-align:center}.btn-reset{margin-top:1rem;padding:1rem;width:100%;background:linear-gradient(90deg,var(--color-gradient-start),var(--color-gradient-end));border:none;color:#fff;border-radius:6px;font-family:var(--font-heading);font-size:1.1rem;cursor:pointer;transition:background var(--transition)}.btn-reset:hover{background:linear-gradient(90deg,var(--color-secondary-hover),var(--color-primary-hover));opacity:.9}.btn-reset:disabled{opacity:.6;cursor:not-allowed}.back-login{color:var(--color-text-secondary);font-size:1.03rem;margin-top:1rem}.back-login a{color:var(--color-primary);font-weight:500;text-decoration:none}.back-login a:hover{text-decoration:underline}.reset-card.loading{pointer-events:none;cursor:not-allowed;opacity:.7}.locked-icon{margin-right:8px;font-size:1rem;opacity:.9}.toggle-password{position:absolute;right:15px;top:50%;transform:translateY(-50%);cursor:pointer;font-size:1.5rem;color:var(--color-text-secondary);transition:color .2s ease;opacity:.6}.toggle-password:hover{opacity:.9;color:var(--color-text)}.page-wrapper{background:linear-gradient(135deg,var(--color-gradient-start-opac50),var(--color-gradient-end-opac50));height:100vh}.container--activity-logs h1{font-size:2rem;font-weight:600;margin-bottom:2rem;color:var(--color-text)}.activity-logs-controls{display:flex;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.filter-group,.sort-group{display:flex;flex-direction:column;gap:.5rem}.filter-label,.sort-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--color-text-secondary);font-weight:500}.filter-icon,.sort-icon{font-size:1.2rem}.sort-button{padding:.75rem 1rem;border:1px solid #ddd;border-radius:8px;background:#fff;font-size:1rem;cursor:pointer;transition:all .2s ease;text-align:left;min-width:200px}.sort-button:hover{border-color:var(--color-primary);background:#f9f9f9}.sort-button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.activity-logs-list{display:flex;flex-direction:column;gap:1rem}.activity-log-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--color-absolute);border:1px solid var(--color-border-opac25);border-radius:12px;box-shadow:0 2px 8px #00000014;transition:all .2s ease}.activity-log-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-1px)}.activity-log-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;flex-shrink:0}.activity-log-card--pink .activity-log-icon{background:var(--pink-bg);color:var(--pink-text)}.activity-log-card--orange .activity-log-icon{background:var(--orange-bg);color:var(--orange-text)}.activity-log-card--purple .activity-log-icon{background:var(--purple-bg);color:var(--purple-text)}.activity-log-card--blue .activity-log-icon{background:var(--blue-bg);color:var(--blue-text)}.activity-log-card--yellow .activity-log-icon{background:var(--yellow-bg);color:var(--yellow-text)}.activity-log-card--gray .activity-log-icon{background:var(--gray-bg);color:var(--gray-text)}.activity-log-card--green .activity-log-icon{background:var(--green-bg);color:var(--green-text)}.activity-log-card--turquoise .activity-log-icon{background:var(--turquoise-bg);color:var(--turquoise-text)}.activity-log-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.activity-log-card .activity-log-title{font-size:1.1rem;font-weight:600;margin:0;color:var(--color-text);border:none}.activity-log-description{font-size:.95rem;color:var(--color-text-secondary);margin:0}.activity-log-tag{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:500;margin-top:.5rem;width:fit-content}.activity-log-tag.activity-log-tag--pink{background:var(--pink-bg);color:var(--pink-text)}.activity-log-tag.activity-log-tag--green{background:var(--green-bg);color:var(--green-text)}.activity-log-tag.activity-log-tag--orange{background:var(--orange-bg);color:var(--orange-text)}.activity-log-tag.activity-log-tag--blue{background:var(--blue-bg);color:var(--blue-text)}.activity-log-tag.activity-log-tag--yellow{background:var(--yellow-bg);color:var(--yellow-text)}.activity-log-tag.activity-log-tag--purple{background:var(--purple-bg);color:var(--purple-text)}.activity-log-tag.activity-log-tag--gray{background:var(--gray-bg);color:var(--gray-text)}.activity-log-tag.activity-log-tag--turquoise{background:var(--turquoise-bg);color:var(--turquoise-text)}.activity-log-time{font-size:.9rem;color:var(--color-text-secondary);white-space:nowrap;flex-shrink:0}.empty-message{text-align:center;padding:3rem;color:var(--color-text-secondary);font-size:1.1rem}@media(max-width:768px){.activity-logs-controls{flex-direction:column}.activity-log-card{flex-direction:column;align-items:flex-start;gap:1rem}.activity-log-time{align-self:flex-end}}.check-email-container{background:var(--color-bg);font-family:var(--font-base);color:var(--color-text);display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.check-email-card{width:100%;max-width:500px;background:var(--color-absolute);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-md);padding:3rem 2.5rem;border:1px solid var(--color-border-opac25)}.check-email-icon{display:flex;justify-content:center;margin-bottom:1.5rem;color:var(--color-primary)}.check-email-card h2{font-size:1.8rem;font-weight:600;margin-bottom:1rem;font-family:var(--font-heading);color:var(--color-text)}.check-email-message{color:var(--color-text-secondary);font-size:1.1rem;margin-bottom:1rem;line-height:1.6}.check-email-message strong{color:var(--color-text);font-weight:600}.check-email-instruction{color:var(--color-text);font-size:1.05rem;margin-bottom:2rem;line-height:1.6;font-weight:500}.check-email-actions{display:flex;justify-content:center;margin-top:2rem}.check-email-link{display:inline-flex;align-items:center;color:var(--color-primary);text-decoration:none;font-size:1rem;font-weight:500;transition:all var(--transition)}.check-email-link:hover{color:var(--color-primary-hover);text-decoration:underline}.register-success-container{background:var(--color-bg);font-family:var(--font-base);color:var(--color-text);display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.register-success-card{width:100%;max-width:500px;background:var(--color-absolute);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-md);padding:3rem 2.5rem;border:1px solid var(--color-border-opac25)}.register-success-icon{display:flex;justify-content:center;margin-bottom:1.5rem;color:var(--color-primary)}.register-success-card h2{font-size:1.8rem;font-weight:600;margin-bottom:1rem;font-family:var(--font-heading);color:var(--color-text)}.register-success-message{color:var(--color-text-secondary);font-size:1.1rem;margin-bottom:1rem;line-height:1.6}.register-success-message strong{color:var(--color-text);font-weight:600}.register-success-instruction{color:var(--color-text);font-size:1.05rem;margin-bottom:2rem;line-height:1.6;font-weight:500}.register-success-actions{display:flex;justify-content:center;margin-top:2rem}.register-success-link{display:inline-flex;align-items:center;color:var(--color-primary);text-decoration:none;font-size:1rem;font-weight:500;transition:all var(--transition)}.register-success-link:hover{color:var(--color-primary-hover);text-decoration:underline}.notifications-view{padding:2rem 0;max-width:800px;margin:0 auto}.notifications-view__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.notifications-view__list{display:flex;flex-direction:column;gap:1rem}.notifications-view__empty{text-align:center;padding:3rem 1rem;color:var(--color-text-secondary)}.notifications-view__empty p{margin:0;font-size:1rem}.notifications-view__empty-description{font-size:.875rem;color:var(--color-text-secondary);margin-top:.5rem}.notifications-view__loader{display:flex;justify-content:center;align-items:center;padding:3rem 1rem}.notifications-view__card{background:var(--color-absolute);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;position:relative}.notifications-view__card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.notifications-view__card-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notifications-view__card-icon--vaccine{background-color:var(--color-primary-bg);color:var(--color-primary)}.notifications-view__card-icon--food{background-color:var(--color-success);color:var(--color-success-text)}.notifications-view__card-icon--medicine{background-color:var(--color-info);color:var(--color-info-text)}.notifications-view__card-icon--vet{background-color:var(--color-error-light);color:var(--color-error-text)}.notifications-view__card-content{flex:1}.notifications-view__card-content h3{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:.5rem;border:none}.notifications-view__card-content p{margin:0 0 .5rem;color:var(--color-text-secondary);font-size:.875rem;line-height:1.4}.notifications-view__card-content-footer{display:flex;gap:.5rem;font-size:.75rem;color:var(--color-text-secondary);font-weight:500}.calendar-view{min-height:100vh;background-color:var(--color-bg)}.calendar-view__header{background:var(--color-absolute);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:10}.calendar-view__header-content{max-width:1280px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;gap:1rem}.calendar-view__header-content h1{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0}.calendar-view__header-content p{font-size:.875rem;color:var(--color-text-secondary);margin:.25rem 0 0}.calendar-view__back-button{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;color:var(--color-text-secondary);transition:all var(--transition);border-radius:var(--radius-md)}.calendar-view__back-button:hover{color:var(--color-text);background-color:var(--color-bg)}.calendar-view__filters{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:4rem 0}@media(max-width:768px){.calendar-view__filters{grid-template-columns:1fr}}.calendar-view__grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}@media(max-width:1024px){.calendar-view__grid{grid-template-columns:1fr}}.calendar-view__calendar-card{background:var(--color-absolute);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:1.25rem}.calendar-view__calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.calendar-view__calendar-header h2{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0}.calendar-view__calendar-header button{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--color-text-secondary);border-radius:var(--radius-md);transition:all var(--transition)}.calendar-view__calendar-header button:hover{background-color:var(--color-bg);color:var(--color-text)}.calendar-view__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;margin-bottom:.5rem}.calendar-view__weekdays span{text-align:center;font-size:.875rem;color:var(--color-text-secondary);padding:.5rem 0}.calendar-view__days{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.calendar-view__day{height:80px;padding:.25rem;border-radius:8px;border:2px solid transparent;background:transparent;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center}.calendar-view__day:hover{border-color:var(--color-primary-bg);background-color:var(--color-bg)}.calendar-view__day--selected{border-color:var(--color-primary);background-color:var(--color-primary-bg)}.calendar-view__day--today{border-color:var(--color-text-secondary)}.calendar-view__day-number{font-size:.75rem;color:var(--color-text);margin-bottom:.25rem}.calendar-view__day-dots{display:flex;flex-wrap:wrap;gap:.125rem;justify-content:center}.calendar-view__day-count{font-size:.625rem;color:var(--color-text-secondary)}.calendar-view__day-dot{width:6px;height:6px;border-radius:50%}.calendar-view__day-dot--vaccine{background-color:var(--pink-text)}.calendar-view__day-dot--deworming{background-color:var(--purple-text)}.calendar-view__day-dot--vet_visit{background-color:var(--orange-text)}.calendar-view__day-dot--nutrition{background-color:var(--blue-text)}.calendar-view__events-panel{background:var(--color-absolute);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:1.25rem;position:sticky;top:6rem;max-height:calc(100vh - 8rem);overflow-y:auto}.calendar-view__events-panel h3{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;color:var(--color-text);margin:0 0 1rem;border:none}.calendar-view__events-list{display:flex;flex-direction:column;gap:.75rem}.calendar-view__event-card{padding:1rem;border-radius:var(--radius-md);border:1px solid;transition:all var(--transition)}.calendar-view__event-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.calendar-view__event-card--vaccine{background-color:var(--pink-bg);border-color:var(--pink-text);color:var(--pink-text)}.calendar-view__event-card--deworming{background-color:var(--purple-bg);border-color:var(--purple-text);color:var(--purple-text)}.calendar-view__event-card--vet_visit{background-color:var(--orange-bg);border-color:var(--orange-text);color:var(--orange-text)}.calendar-view__event-card--nutrition{background-color:var(--blue-bg);border-color:var(--blue-text);color:var(--blue-text)}.calendar-view__event-card-header{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.calendar-view__event-card-title{font-size:.875rem;font-weight:600;margin:0}.calendar-view__event-card-description{font-size:.75rem;opacity:.8;margin:0 0 .5rem}.calendar-view__event-card-footer{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;opacity:.9}.calendar-view__empty-state{text-align:center;padding:2rem 1rem}.calendar-view__empty-state svg{width:3rem;height:3rem;color:var(--color-border);margin:0 auto .75rem}.calendar-view__empty-state p{font-size:.875rem;color:var(--color-text-secondary);margin:0}.calendar-view__legend{background:var(--color-absolute);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:1.25rem;margin-top:1rem}.calendar-view__legend h3{font-size:1.125rem;font-weight:600;color:var(--color-text);margin:0 0 1rem;border:none}.calendar-view__legend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media(max-width:768px){.calendar-view__legend-grid{grid-template-columns:repeat(2,1fr)}}.calendar-view__legend-item{display:flex;align-items:center;gap:.5rem}.calendar-view__legend-item-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.calendar-view__legend-item-dot--vaccine{background-color:var(--pink-text)}.calendar-view__legend-item-dot--deworming{background-color:var(--purple-text)}.calendar-view__legend-item-dot--vet_visit{background-color:var(--orange-text)}.calendar-view__legend-item-dot--nutrition{background-color:var(--blue-text)}.calendar-view__legend-item span{font-size:.875rem;color:var(--color-text)}
