@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Lato:wght@400;700&family=Poppins:wght@400;600;700&display=swap);:root{--ff-title:'Baloo 2',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--ff-sub:'Quicksand',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--ff-body:'Nunito',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--color-1:#85A402;--color-2:#ffffff;--color-3:#000000;--color-4:#D1B397;--color-5:#F0E206;--color-1-15:rgba(133, 164, 2, 0.15);--color-1-30:rgba(133, 164, 2, 0.3);--color-1-70:rgba(133, 164, 2, 0.7);--color-2-30:rgba(255, 255, 255, 0.30);--color-3-70:rgba(0, 0, 0, 0.7);--color-3-45:rgba(0, 0, 0, 0.45);--color-3-15:rgba(0, 0, 0, 0.15);--color-4-35:rgba(209, 179, 151, 0.35);--color-5-30:rgba(240, 226, 6, 0.30);--color-5-45:rgba(240, 226, 6, 0.45);--color-5-50:rgba(240, 226, 6, 0.50);--color-btn-1:#F0E206;--color-btn-2:#F3CB06;--color-black:#000000;--color-white:#ffffff;--color-yellow:#F0E206;--color-red:rgba(255, 0, 0);--color-alert-success:#22c55e;--color-alert-error:#ef4444;--color-alert-warning:#facc15;--color-alert-info:#3b82f6}*{margin:0;padding:0;box-sizing:border-box}main{flex:1}body{font-family:var(--ff-body);font-size:16px;line-height:1.6}h1,h2{font-family:var(--ff-title);font-weight:800;letter-spacing:.2px}h3,h4{font-family:var(--ff-sub);font-weight:600}.meta,small{font-family:var(--ff-body);font-weight:400;opacity:.85}.login-body{min-height:100vh;background:linear-gradient(135deg,var(--color-1-15) 0,var(--color-1-30) 100%);display:flex;justify-content:center;align-items:center}.login-section{max-width:400px;margin:6rem auto;text-align:center;font-family:Poppins,sans-serif}.login-section h2{font-size:1.6rem;color:var(--color-black);margin-bottom:1rem}.login-section form{display:flex;flex-direction:column;gap:.9rem;margin-top:1rem}.login-section input[type=password],.login-section input[type=text]{padding:.8rem;border:1px solid var(--color-3);border-radius:8px;font-size:1rem;transition:border-color .3s ease}.login-section input:focus{border-color:var(--color-black);outline:0}.login-section button{display:inline-block;padding:14px 32px;border-radius:50px;font-family:var(--ff-title);font-weight:600;font-size:1rem;color:var(--color-black);background:linear-gradient(135deg,var(--color-btn-1),var(--color-btn-1));text-decoration:none;box-shadow:0 4px 20px var(--color-3-45);transition:all .3s ease}.login-section button:hover{transform:translateY(-3px);box-shadow:0 6px 25px var(--color-3-70);background:linear-gradient(135deg,var(--color-btn-2),var(--color-btn-2))}.dashboard-body{background:linear-gradient(135deg,var(--color-1-15) 0,var(--color-1-30) 100%);color:var(--color-black);min-height:100vh;display:flex;flex-direction:column}.menu-toggle{position:fixed;top:15px;left:15px;background:var(--color-5);border:none;border-radius:10px;padding:8px;cursor:pointer;z-index:1100;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px)}.menu-toggle i{width:24px;height:24px;stroke:var(--color-black)}.sidebar{position:fixed;top:0;left:-100%;width:240px;height:100vh;background:var(--color-5-30);backdrop-filter:blur(10px);border-right:1px solid var(--color-5);display:flex;flex-direction:column;justify-content:space-between;padding:20px;transition:left .3s ease;z-index:1000}.sidebar.active{left:0}.sidebar-logo h2{text-align:right;font-weight:600;color:var(--color-black);margin-bottom:30px}.sidebar-nav a{display:flex;align-items:center;gap:10px;color:var(--color-black);text-decoration:none;padding:10px;border-radius:10px;transition:.3s}.sidebar-nav a.active,.sidebar-nav a:hover{background:var(--color-2);color:var(--color-black)}.sidebar-nav a.logout{color:var(--color-red);margin-top:30px}.main-content{flex:1;padding:70px 20px 20px 20px;overflow-y:auto}.header h1{font-size:1.8rem;color:var(--color-black)}.header p{color:var(--color-3-70);font-weight:300}.dashboard-cards{display:flex;flex-direction:column;gap:20px;margin:30px 0}.card{background:linear-gradient(135deg,var(--color-5) 0,var(--color-5) 100%);border-radius:20px;padding:20px;text-align:center;box-shadow:0 4px 20px var(--color-3-70);transition:.3s}.card:hover{transform:translateY(-3px);background:var(--color-5)}.card i{stroke:var(--color-3);margin-bottom:10px}.card h3{font-size:1rem;font-weight:500}.card p{font-size:1.4rem;font-weight:600;color:var(--color-3)}.alert-inline{display:flex;align-items:center;gap:10px;border-radius:12px;padding:12px 18px;font-size:.9rem;font-weight:500;margin-bottom:20px;background:var(--color-3-70);box-shadow:0 4px 12px var(--color-3-45);animation:fadeIn .4s ease}.alert-inline i{width:20px;height:20px;flex-shrink:0}.alert-success{border-left:4px solid var(--color-alert-success);color:var(--color-alert-success)}.alert-error{border-left:4px solid var(--color-alert-error);color:var(--color-alert-error)}.alert-warning{border-left:4px solid var(--color-alert-warning);color:var(--color-alert-warning)}.alert-info{border-left:4px solid var(--color-alert-info);color:var(--color-alert-info)}.perros-body{background:linear-gradient(135deg,var(--color-1-15) 0,var(--color-1-30) 100%);color:var(--primary-text-color);min-height:100vh;display:flex;flex-direction:column}.btn-agregar-dashboard{display:inline-flex;align-items:center;gap:.6rem;background:linear-gradient(135deg,var(--color-3-45),var(--color-3-45));color:var(--color-white)!important;font-weight:700;padding:.9rem 1.6rem;border-radius:14px;text-decoration:none;box-shadow:0 8px 20px var(--color-2);transition:all .3s ease;margin-bottom:1.5rem;width:100%;justify-content:center}.btn-agregar-dashboard i{color:var(--color-white)!important;width:20px;height:20px;stroke-width:2.2}.btn-agregar-dashboard:hover{background:linear-gradient(135deg,var(--color-3-70),var(--color-3-70));transform:translateY(-3px);box-shadow:0 10px 25px var(--color-2)}.tabla-section{background:var(--color-5-50);border-radius:10px;padding:2rem;box-shadow:0 8px 25px var(--color-3-70);overflow-x:auto;padding-bottom:3rem}.tabla-oscura{width:100%;border-collapse:separate;border-spacing:0 15px;color:var(--color-black);text-align:left}.tabla-oscura th{background:var(--color-1-70);color:var(--color-black);padding:1.2rem 1.5rem;font-weight:600;text-transform:uppercase;font-size:.85rem;border-bottom:2px solid var(--color-3-70);padding:.9rem .8rem;font-size:.9rem}.tabla-oscura td{background:var(--color-1-30);padding:1.1rem 1.5rem;vertical-align:middle;padding:.9rem .8rem;font-size:.9rem}.tabla-oscura tbody tr{transition:all .3s ease;overflow:hidden}.tabla-oscura tbody tr:hover{background:var(--color-1-70);transform:scale(1.005)}.tabla-oscura td.col-acciones{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:12px;padding-bottom:12px;overflow:visible}.miniatura{width:80px;height:80px;border-radius:12px;object-fit:cover;border:2px solid var(--color-3-70);box-shadow:0 0 8px var(--color-3-70)}.sin-imagen{color:var(--color-black);font-style:italic;font-size:.9rem}.col-acciones{display:flex;justify-content:center;gap:.8rem}.btn-editar,.btn-eliminar{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;transition:all .3s ease}.btn-editar{background:var(--color-alert-success);color:var(--color-white)}.btn-editar:hover{background:var(--color-alert-success);transform:scale(1.1)}.btn-eliminar{background:var(--color-alert-error);color:var(--color-white)}.btn-eliminar:hover{background:var(--color-alert-error);transform:scale(1.1)}.formulario-body{background:linear-gradient(135deg,var(--color-1-15) 0,var(--color-1-30) 100%);color:var(--color-black);min-height:100vh;display:flex;flex-direction:column}.mc-container{max-width:980px;margin:24px auto;padding:0 16px}.mc-card{background:linear-gradient(135deg,var(--color-3-45),var(--color-3-45));backdrop-filter:blur(6px);border-radius:16px;box-shadow:0 10px 24px var(--color-3-70)}.mc-header{padding:18px 22px;border-bottom:1px solid var(--color-3-45);display:flex;align-items:center;justify-content:space-between}.mc-title{font-size:20px;font-weight:600}.mc-breadcrumb{font-size:13px;opacity:.75}.mc-body{padding:22px}.grid-2{display:grid;grid-template-columns:1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:.9rem;margin-top:1rem}.form-group label{font-weight:600;color:var(--color-black)}.form-group input,.form-group select,.form-group textarea{padding:.8rem;border:1px solid var(--color-3);border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-group input[type=file]{width:100%;padding:12px 15px;border:1px solid var(--color-3);border-radius:6px;background:var(--color-2);font-size:1rem;cursor:pointer}.hint{font-size:12px;opacity:.75}.actions{display:flex;gap:12px;margin-top:12px}.btn{padding:10px 16px;border:0;border-radius:12px;cursor:pointer;font-weight:600}.btn-primary{background:linear-gradient(90deg,var(--color-5),var(--color-5));color:var(--color-black)}.btn-secondary{background:var(--color-white);color:var(--color-black)}.img-preview{width:100%;height:100%;object-fit:cover;border-radius:12px;border:1px solid var(--color-3-70)}@media (min-width:1024px){.grid-2{grid-template-columns:repeat(2,1fr)}}.logout-body{min-height:100vh;display:flex;justify-content:center;align-items:center;text-align:center;background:linear-gradient(135deg,var(--color-1-15) 0,var(--color-1-30) 100%);color:var(--color-white);font-family:var(--ff-body)}.logout-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem 1.5rem;border-radius:16px;background:var(--color-3-70);backdrop-filter:blur(10px);box-shadow:0 8px 25px var(--color-3-45);max-width:420px;width:90%}.logout-icon{font-size:64px;margin-bottom:10px;color:var(--color-2)}.logout-container h2{font-family:var(--ff-title);font-weight:700;color:var(--color-white);font-size:1.4rem}.logout-container p{font-size:1rem;color:var(--color-white);opacity:.9;line-height:1.6}.btn-logout{display:inline-block;padding:14px 32px;border-radius:50px;font-family:var(--ff-title);font-weight:600;font-size:1rem;color:var(--color-black);background:linear-gradient(135deg,var(--color-btn-1),var(--color-btn-1));text-decoration:none;box-shadow:0 4px 20px var(--color-3-45);transition:all .3s ease}.btn-logout:hover{transform:translateY(-3px);box-shadow:0 6px 25px var(--color-3-70);background:linear-gradient(135deg,var(--color-btn-2),var(--color-btn-2))}@media (max-width:480px){.logout-container{padding:1.5rem;max-width:90%}}.auth-body{min-height:100vh;background:linear-gradient(135deg,var(--color-1-15) 0,var(--color-1-30) 100%);display:flex;justify-content:center;align-items:center;padding:20px}.auth-main{width:100%;display:flex;justify-content:center;align-items:center}.auth-card{width:100%;max-width:420px;background:var(--color-2-30);backdrop-filter:blur(12px);border:1px solid var(--color-5-30);border-radius:16px;padding:2rem;box-shadow:0 8px 25px var(--color-3-45);animation:fadeIn .4s ease;text-align:center}.auth-card h1{font-family:var(--ff-title);font-size:1.6rem;color:var(--color-black);margin-bottom:1rem}.auth-text{font-size:1rem;color:var(--color-black);opacity:.85;margin-bottom:1.5rem;line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-field label{font-family:var(--ff-sub);font-size:1rem;font-weight:600;color:var(--color-black);margin-bottom:.4rem;display:block;text-align:left}.auth-field input{width:100%;padding:.85rem;border:1px solid var(--color-3);border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:var(--color-2)}.auth-field input:focus{border-color:var(--color-black);outline:0}.auth-btn-primary{display:inline-block;padding:14px 32px;border-radius:50px;font-family:var(--ff-title);font-weight:600;font-size:1rem;color:var(--color-black);background:linear-gradient(135deg,var(--color-btn-1),var(--color-btn-1));box-shadow:0 4px 20px var(--color-3-45);transition:all .3s ease;border:none;cursor:pointer}.auth-btn-primary:hover{transform:translateY(-3px);box-shadow:0 6px 25px var(--color-3-70);background:linear-gradient(135deg,var(--color-btn-2),var(--color-btn-2))}.auth-links{margin-top:1.3rem;text-align:center}.auth-links a{font-family:var(--ff-sub);font-size:.95rem;color:var(--color-black);text-decoration:underline;opacity:.8}.auth-links a:hover{opacity:1}.alert-error,.alert-success{width:100%;margin:0 auto 1rem auto;font-size:.95rem;padding:.85rem 1rem;border-radius:10px;background:var(--color-2);border-left-width:5px}.alert-success{border-left-color:var(--color-alert-success);color:var(--color-alert-success)}.alert-error{border-left-color:var(--color-alert-error);color:var(--color-alert-error)}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}