*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:#f7f3ea;color:#17352d;font-family:Arial,Helvetica,sans-serif}a,button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{opacity:.65;cursor:wait}a{color:inherit}.hero{min-height:100vh;display:grid;place-items:center;padding:32px}.auth-card,.card{width:min(760px,100%);background:white;border-radius:28px;padding:48px;box-shadow:0 20px 60px rgba(23,53,45,.1)}.auth-logo,.logo{font-size:34px;font-weight:800;letter-spacing:-1px}.auth-logo span,.logo span{color:#6c4ce8}h1{font-size:clamp(42px,8vw,72px);line-height:.98;margin:28px 0 20px;letter-spacing:-3px}p{font-size:19px;line-height:1.6;color:#5d6b65}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:14px;text-decoration:none;font-weight:700}.primary{background:#6c4ce8;color:white}.secondary{border:1px solid #d9ddd9;color:#17352d;background:white}.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.badge{background:#eef5f0;border-radius:999px;padding:9px 13px;font-size:14px;font-weight:700}.login-link{margin-top:28px;font-size:15px}.auth-footer a,.login-link a{color:#6c4ce8;font-weight:700}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(560px,100%);padding:36px}.auth-card.wide{width:min(680px,100%)}.back-link{display:inline-block;text-decoration:none;color:#68756f;margin-bottom:28px;font-weight:700}.auth-logo{font-size:28px}.auth-card h1{font-size:clamp(36px,7vw,54px);margin:24px 0 10px}.auth-subtitle{margin-top:0}.auth-form{display:grid;grid-gap:17px;gap:17px;margin-top:28px}.auth-form label{display:grid;grid-gap:7px;gap:7px;font-size:14px;font-weight:700}.auth-form input,.auth-form select,.auth-form textarea{width:100%;border:1px solid #d9ddd9;border-radius:12px;padding:13px 14px;background:#fff;color:#17352d;outline:none}.auth-form input:focus,.auth-form select:focus,.auth-form textarea:focus{border-color:#6c4ce8;box-shadow:0 0 0 3px rgba(108,76,232,.1)}.auth-form textarea{resize:vertical}.auth-submit{width:100%;margin-top:6px}.alert{margin-top:18px;padding:13px 15px;border-radius:12px;font-size:14px;line-height:1.5}.alert.error{background:#fff0f0;color:#9c2929}.alert.success{background:#edf9f0;color:#27683a}.auth-footer{text-align:center;font-size:15px;margin-top:24px}.dashboard-page{min-height:100vh}.dashboard-header{display:flex;justify-content:space-between;padding:22px clamp(20px,5vw,60px);background:white;border-bottom:1px solid #e6e8e4}.dashboard-header,.dashboard-nav{align-items:center}.dashboard-nav .active{background:#f0ecff;border-color:#d9d0ff;color:#5536c8}.dashboard-content{width:min(1100px,100%);margin:0 auto;padding:48px 24px 80px}.dashboard-welcome h1{font-size:clamp(36px,6vw,58px);margin:8px 0 10px;letter-spacing:-2px}.dashboard-welcome p{margin-top:0}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;color:#6c4ce8}.dashboard-actions{margin:28px 0 48px}.pets-section h2{font-size:28px}.pet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:18px;gap:18px}.pet-card{background:white;border-radius:20px;padding:16px;box-shadow:0 10px 30px rgba(23,53,45,.07);display:grid;grid-gap:14px;gap:14px}.pet-card img,.pet-placeholder{width:100%;aspect-ratio:1.3;object-fit:cover;border-radius:14px}.pet-placeholder{display:grid;place-items:center;background:#eef5f0;font-size:60px}.pet-card h3{margin:0 0 5px;font-size:22px}.pet-card p{margin:0 0 10px;font-size:15px}.status-pill{display:inline-block;padding:7px 10px;background:#edf7f0;color:#27683a;border-radius:999px;font-size:12px;font-weight:800}.empty-state{text-align:center;background:white;border-radius:24px;padding:48px 24px;box-shadow:0 10px 30px rgba(23,53,45,.06)}.empty-icon{font-size:48px}.empty-state h3{font-size:23px;margin:12px 0 8px}.empty-state p{max-width:500px;margin:0 auto 24px;font-size:16px}@media(max-width:600px){.auth-card,.card{padding:28px 22px;border-radius:22px}.hero{padding:16px}h1{letter-spacing:-2px}.btn{width:100%}.dashboard-header{padding:18px}.dashboard-header .btn{width:auto;padding:11px 15px}}#avistamiento>div{width:100%}#avistamiento>div label{display:block;margin-top:14px;margin-bottom:7px;font-size:14px;font-weight:700;line-height:1.3}#avistamiento>div input,#avistamiento>div textarea{display:block;width:100%;max-width:100%;border:1px solid #d9ddd9;border-radius:12px;padding:13px 14px;background:#fff;color:#17352d;outline:none;font:inherit;font-size:16px}#avistamiento>div textarea{min-height:110px;resize:vertical}#avistamiento>div input:focus,#avistamiento>div textarea:focus{border-color:#6c4ce8;box-shadow:0 0 0 3px rgba(108,76,232,.1)}.dashboard-nav{display:flex;gap:10px;flex-wrap:wrap}.dashboard-nav .btn{white-space:nowrap}.dashboard-actions{display:flex;gap:12px;flex-wrap:wrap}.btn.danger{background:#b93636;color:#fff}.lost-mode-wrap{margin-top:28px}.page-title{font-size:clamp(38px,6vw,58px);margin:8px 0 10px;letter-spacing:-2px}.lost-pet-list{display:grid;grid-gap:18px;gap:18px;margin-top:28px}.lost-pet-card{background:#fff;border-radius:24px;padding:18px;display:grid;grid-template-columns:150px 1fr;grid-gap:20px;gap:20px;box-shadow:0 10px 30px rgba(23,53,45,.07);align-items:center}.lost-pet-card .pet-placeholder,.lost-pet-card img{width:150px;height:150px;object-fit:cover;border-radius:18px}.lost-pet-card h2{margin:0 0 5px;font-size:28px}.lost-pet-card p{margin:0 0 12px;font-size:16px}.lost-pet-card .btn{margin-top:12px}.lost-pill{display:inline-block;padding:8px 11px;background:#fff0f0;color:#a52b2b;border-radius:999px;font-size:12px;font-weight:800}.lost-description{max-width:650px}.modal-backdrop{position:fixed;inset:0;background:rgba(10,20,17,.55);display:grid;place-items:center;padding:20px;z-index:100}.modal-card{position:relative;width:min(560px,100%);background:#fff;border-radius:24px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.modal-card h2{font-size:32px;margin:8px 0 12px}.modal-card label{display:grid;grid-gap:7px;gap:7px;margin-top:18px;font-size:14px;font-weight:700}.modal-card input,.modal-card textarea{width:100%;border:1px solid #d9ddd9;border-radius:12px;padding:13px 14px;font:inherit;resize:vertical}.modal-close{position:absolute;right:14px;top:10px;background:transparent;font-size:30px;color:#68756f}.modal-card .actions{margin-top:24px}.modal-card .actions .btn{flex:1 1}.alert.success{margin-bottom:18px}@media(max-width:600px){.dashboard-nav{width:100%}.dashboard-nav .btn{flex:1 1}.lost-pet-card{grid-template-columns:1fr}.lost-pet-card .pet-placeholder,.lost-pet-card img{width:100%;height:auto;aspect-ratio:1.3}.modal-card{padding:24px}.modal-card .actions{flex-direction:column}}.contact-box{margin-top:24px;padding:18px;border-radius:20px;background:#f7f4ff}.contact-toggle{width:100%}.contact-form{margin-top:18px;padding:22px;border-radius:18px;background:#fff;border:1px solid #e7e0f7}.contact-form h2{margin:0 0 8px;font-size:26px;color:#17352d}.contact-description{margin:0 0 22px;font-size:16px;line-height:1.55}.contact-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:17px;gap:17px}.contact-field{min-width:0;display:flex;flex-direction:column;gap:7px}.contact-field.full{grid-column:1/-1}.contact-field label{display:block;font-size:14px;font-weight:800;color:#17352d}.contact-field label span{font-weight:500;color:#71807a}.contact-field input,.contact-field textarea{width:100%;min-width:0;border:1px solid #d7d4dd;border-radius:12px;padding:13px 14px;background:#fff;color:#17352d;outline:none;font-family:inherit;font-size:16px}.contact-field input{height:50px}.contact-field textarea{min-height:125px;resize:vertical;line-height:1.5}.contact-field input::placeholder,.contact-field textarea::placeholder{color:#9aa39f}.contact-field input:focus,.contact-field textarea:focus{border-color:#6c4ce8;box-shadow:0 0 0 3px rgba(108,76,232,.12)}.contact-submit{grid-column:1/-1;width:100%;margin-top:2px}.contact-result{margin:14px 0 0;padding:13px 15px;border-radius:12px;font-size:15px;line-height:1.45}.contact-result.success{background:#edf9f0;color:#27683a}.contact-result.error{background:#fff0f0;color:#9c2929}@media (max-width:600px){.contact-fields{grid-template-columns:1fr}.contact-field.full,.contact-submit{grid-column:auto}.contact-form{padding:18px 15px}}.qr-card{margin-top:24px;background:#fff;border:1px solid #e7e2f4;border-radius:24px;padding:24px;display:grid;grid-template-columns:1fr 230px;grid-gap:28px;gap:28px;align-items:center;box-shadow:0 10px 30px rgba(23,53,45,.06)}.qr-copy h2{margin:4px 0 8px;font-size:28px}.qr-copy p{margin:0 0 14px;font-size:16px}.qr-copy small{display:block;margin-top:14px;color:#71807a;line-height:1.5}.qr-code-pill{display:inline-block;background:#f0ecff;color:#5536c8;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800;margin:4px 0 10px}.qr-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.qr-image-wrap{background:#f7f8f5;border-radius:20px;padding:16px;display:grid;place-items:center}.qr-image{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px}@media(max-width:700px){.qr-card{grid-template-columns:1fr;padding:20px}.qr-image-wrap{max-width:280px;margin:0 auto;width:100%}.qr-actions .btn{width:100%}}