/* ML Kennel Pro — site. Usa a fonte do tema; cor de destaque em --mlkp-accent (Configurações). */
.mlkp{--mlkp-accent:#155e6f;--mlkp-ink:#16202a;--mlkp-mut:#5b6773;--mlkp-line:#e3e8ec;--mlkp-soft:#f5f7f8;--mlkp-m:#1d4e89;--mlkp-f:#9b2c5a;--mlkp-r:16px;color:var(--mlkp-ink);line-height:1.55}
.mlkp *,.mlkp *::before,.mlkp *::after{box-sizing:border-box}
.mlkp img{max-width:100%;height:auto}
.mlkp-empty{padding:28px;border:1px dashed var(--mlkp-line);border-radius:var(--mlkp-r);text-align:center;color:var(--mlkp-mut)}

/* Grade de cartões */
.mlkp-grid{display:grid;gap:24px;margin:0 0 32px}
.mlkp-grid-auto{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.mlkp-cols-1{grid-template-columns:1fr}
.mlkp-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mlkp-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mlkp-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mlkp-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.mlkp-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.mlkp .mlkp-card{display:flex;flex-direction:column;margin:0;border:1px solid var(--mlkp-line);border-radius:var(--mlkp-r);background:#fff;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}
.mlkp .mlkp-card:hover{box-shadow:0 14px 34px rgba(16,24,40,.1);transform:translateY(-2px)}
.mlkp-card-media{position:relative;display:block;aspect-ratio:4/5;background:var(--mlkp-soft);overflow:hidden}
.mlkp .mlkp-card-img,.mlkp-card-media>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.mlkp .mlkp-card:hover .mlkp-card-img{transform:scale(1.03)}
.mlkp-photo-empty,.mlkp .mlkp-photo-empty{display:grid;place-items:center;width:100%;height:100%;background:var(--mlkp-soft)}
.mlkp .mlkp-photo-empty img{width:34%;height:auto;opacity:.28;filter:grayscale(1)}
.mlkp .mlkp-photo-brand img{width:52%;max-height:60%;object-fit:contain;opacity:.92;filter:none}
.mlkp-profile-img.mlkp-photo-empty{aspect-ratio:4/5;height:auto;border-radius:var(--mlkp-r)}
.mlkp-card-badges{position:absolute;left:12px;right:12px;top:12px;display:flex;flex-wrap:wrap;gap:6px}
.mlkp-card-body{display:flex;flex-direction:column;gap:4px;padding:16px 18px 18px;flex:1 1 auto}
.mlkp-titles{margin:0;color:var(--mlkp-accent);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.mlkp .mlkp-card-title{margin:0;font-size:19px;line-height:1.25}
.mlkp .mlkp-card-title a{color:inherit;text-decoration:none}
.mlkp .mlkp-card-title a:hover{color:var(--mlkp-accent)}
.mlkp-card-official,.mlkp-card-meta{margin:0;color:var(--mlkp-mut);font-size:13px}
.mlkp-card-exams{margin:2px 0 0;font-size:12px;font-weight:700;color:var(--mlkp-ink)}
.mlkp-card-price{margin:6px 0 0;font-size:17px;font-weight:800;color:var(--mlkp-accent)}
.mlkp .mlkp-card-link{align-self:flex-start;margin-top:auto;padding-top:12px;color:var(--mlkp-accent);font-size:13px;font-weight:700;text-decoration:none;letter-spacing:.02em}
.mlkp .mlkp-card-link::after{content:" →"}

/* Selos */
.mlkp-badges{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 18px}
.mlkp-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--mlkp-ink);font-size:11px;font-weight:700;letter-spacing:.02em;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.mlkp-badges .mlkp-badge{background:var(--mlkp-soft);box-shadow:none}
.mlkp-badge-m{background:#e8f1fb!important;color:var(--mlkp-m)}
.mlkp-badge-f{background:#fbeaf1!important;color:var(--mlkp-f)}
.mlkp-badge-disponivel{background:#e7f6ec!important;color:#0e7a37}
.mlkp-badge-reservado{background:#fff4dc!important;color:#a15c07}
.mlkp-badge-vendido{background:#eef0f2!important;color:#5b6773}
.mlkp-badge-stud{background:var(--mlkp-accent)!important;color:#fff}
.mlkp-badge-litter{background:var(--mlkp-soft)}

/* Ficha do cão */
.mlkp-profile{margin:0 0 40px}
.mlkp-profile-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:start;margin-bottom:36px}
.mlkp-profile-img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--mlkp-r)}
.mlkp-main-photo a{display:block;border-radius:var(--mlkp-r);overflow:hidden;background:var(--mlkp-soft);cursor:zoom-in}
.mlkp-main-photo img{transition:transform .5s ease}
.mlkp-main-photo a:hover img{transform:scale(1.02)}
.mlkp-profile-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.mlkp .mlkp-pedigree-btn{display:inline-flex;text-decoration:none;align-items:center;gap:8px;min-height:48px;padding:0 24px;border:1.5px solid var(--mlkp-accent);border-radius:999px;background:transparent;color:var(--mlkp-accent);font:inherit;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}
.mlkp .mlkp-pedigree-btn::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Crect x='3' y='3' width='6' height='5' rx='1'/%3E%3Crect x='15' y='3' width='6' height='5' rx='1'/%3E%3Crect x='9' y='16' width='6' height='5' rx='1'/%3E%3Cpath d='M6 8v3h12V8M12 11v5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Crect x='3' y='3' width='6' height='5' rx='1'/%3E%3Crect x='15' y='3' width='6' height='5' rx='1'/%3E%3Crect x='9' y='16' width='6' height='5' rx='1'/%3E%3Cpath d='M6 8v3h12V8M12 11v5'/%3E%3C/svg%3E") center/contain no-repeat}
.mlkp .mlkp-pedigree-btn:hover,.mlkp .mlkp-pedigree-btn:focus-visible{background:var(--mlkp-accent);color:#fff;outline:0}

/* Pedigree: seção visível sem JS; com JS vira pop-up (<dialog>) */
.mlkp-pedigree-part+.mlkp-pedigree-part{margin-top:28px}
.mlkp-pedigree-part h4{margin:0 0 12px;color:var(--mlkp-mut);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.mlkp-pedigree-docs{display:grid;gap:16px;max-width:880px}
.mlkp-pedigree-docs a{display:block;border:1px solid var(--mlkp-line);border-radius:12px;overflow:hidden;cursor:zoom-in}
.mlkp-pedigree-docs img{display:block;width:100%;height:auto}
.mlkp-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mlkp-dialog{width:min(1120px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);padding:0;border:0;border-radius:var(--mlkp-r);background:#fff;color:var(--mlkp-ink);box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:auto;overscroll-behavior:contain}
.mlkp-dialog::backdrop{background:rgba(10,14,18,.72)}
.mlkp-dialog[open]{animation:mlkp-pop .2s ease}
@keyframes mlkp-pop{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.mlkp-dialog .mlkp-pedigree-panel{margin:0}
.mlkp-dialog .mlkp-pedigree-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--mlkp-line);background:#fff}
.mlkp .mlkp-dialog .mlkp-pedigree-head h3{display:block;margin:0;padding:0;border:0;font-size:20px;line-height:1.25}
.mlkp-dialog .mlkp-pedigree-body{padding:24px}
.mlkp-dialog .mlkp-pedigree-docs{margin:0 auto}
.mlkp-dialog-close{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--mlkp-soft);color:var(--mlkp-ink);font-size:24px;line-height:1;cursor:pointer}
.mlkp-dialog-close:hover,.mlkp-dialog-close:focus-visible{background:var(--mlkp-line);outline:2px solid var(--mlkp-accent);outline-offset:2px}
html.mlkp-dlg-lock{overflow:hidden}

/* Álbum de fotos (embaixo da ficha) */
.mlkp-album{margin-top:8px}
.mlkp-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.mlkp-photo-grid a{display:block;border-radius:12px;overflow:hidden;background:var(--mlkp-soft)}
.mlkp-photo-grid img{display:block;width:100%;aspect-ratio:1;object-fit:cover;cursor:zoom-in;transition:transform .4s ease,opacity .2s ease}
.mlkp-photo-grid a:hover img{transform:scale(1.03)}
.mlkp .mlkp-profile-name{margin:4px 0 2px;font-size:clamp(26px,3.4vw,38px);line-height:1.15}
.mlkp-profile-call{margin:0;color:var(--mlkp-mut)}
.mlkp-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0 0 20px;border-top:1px solid var(--mlkp-line)}
.mlkp-facts div{padding:12px 12px 12px 0;border-bottom:1px solid var(--mlkp-line)}
.mlkp-facts dt{margin:0;color:var(--mlkp-mut);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.mlkp-facts dd{margin:2px 0 0;font-weight:600;overflow-wrap:anywhere}
.mlkp-facts a{color:var(--mlkp-accent)}
.mlkp-price{margin:0 0 16px;font-size:26px;font-weight:800;color:var(--mlkp-accent)}
.mlkp .mlkp-contact{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;background:#1f9d55;color:#fff;font-weight:700;text-decoration:none;transition:filter .15s ease}
.mlkp .mlkp-contact::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm5.3 14.2c-.2.6-1.3 1.2-1.8 1.2-.5.1-1 .2-3.3-.7-2.8-1.1-4.6-4-4.7-4.2-.1-.2-1.1-1.5-1.1-2.9s.7-2 1-2.3c.2-.3.5-.3.7-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.2.1.4 0 .5l-.4.6-.4.4c-.1.2-.3.3-.1.6.2.3.8 1.3 1.7 2.1 1.2 1 2.1 1.4 2.4 1.5.3.1.5.1.6-.1l.9-1.1c.2-.3.4-.2.7-.1l1.9.9c.3.1.5.2.5.3.1.2.1.7-.1 1.1z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm5.3 14.2c-.2.6-1.3 1.2-1.8 1.2-.5.1-1 .2-3.3-.7-2.8-1.1-4.6-4-4.7-4.2-.1-.2-1.1-1.5-1.1-2.9s.7-2 1-2.3c.2-.3.5-.3.7-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.2.1.4 0 .5l-.4.6-.4.4c-.1.2-.3.3-.1.6.2.3.8 1.3 1.7 2.1 1.2 1 2.1 1.4 2.4 1.5.3.1.5.1.6-.1l.9-1.1c.2-.3.4-.2.7-.1l1.9.9c.3.1.5.2.5.3.1.2.1.7-.1 1.1z'/%3E%3C/svg%3E") center/contain no-repeat}
.mlkp .mlkp-contact:hover{filter:brightness(1.07);color:#fff}
.mlkp-section{margin:0 0 36px}
.mlkp .mlkp-section h3{margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--mlkp-accent);font-size:20px;display:inline-block}
.mlkp-description{max-width:820px}
.mlkp-results{margin:0;padding-left:18px}
.mlkp-results li{margin:0 0 6px}
.mlkp-video iframe{width:100%;aspect-ratio:16/9;height:auto;border-radius:var(--mlkp-r)}
.mlkp-coi{margin:12px 0 0;color:var(--mlkp-mut);font-size:13px}

/* Galeria */
.mlkp-gallery-main{display:block;border-radius:var(--mlkp-r);overflow:hidden;background:var(--mlkp-soft)}
.mlkp-gallery-main img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;cursor:zoom-in}
.mlkp-gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px}
.mlkp-gallery-thumbs a{display:block;border-radius:10px;overflow:hidden}
.mlkp-gallery-thumbs img{display:block;width:100%;aspect-ratio:1;object-fit:cover;cursor:zoom-in;transition:opacity .2s ease}
.mlkp-gallery-thumbs a:hover img{opacity:.8}

/* Tabela de exames */
.mlkp .mlkp-table-wrap{overflow-x:auto;border:1px solid var(--mlkp-line);border-radius:var(--mlkp-r)}
.mlkp .mlkp-table{width:100%;margin:0;border-collapse:collapse;font-size:14px}
.mlkp .mlkp-table th{padding:12px 14px;background:var(--mlkp-soft);color:var(--mlkp-mut);font-size:11px;font-weight:700;letter-spacing:.06em;text-align:left;text-transform:uppercase;border:0}
.mlkp .mlkp-table td{padding:12px 14px;border:0;border-top:1px solid var(--mlkp-line)}

/* Árvore de pedigree (site e painel) */
.mlkp-tree-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px}
.mlkp-tree{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(170px,300px);gap:14px;min-width:min-content}
.mlkp-tree-g5{grid-auto-columns:minmax(150px,1fr)}
.mlkp-tree-col{display:flex;flex-direction:column;justify-content:space-around;gap:8px}
.mlkp-tree-cell{position:relative;display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:58px;padding:8px 12px 8px 14px;border:1px solid #e3e8ec;border-left:4px solid #1d4e89;border-radius:10px;background:#fff;font-size:13px;line-height:1.3}
.mlkp-tree-f{border-left-color:#9b2c5a}
.mlkp-tree-g5 .mlkp-tree-cell,.mlkp-tree-g4 .mlkp-tree-col:last-child .mlkp-tree-cell{min-height:44px;padding-top:5px;padding-bottom:5px;font-size:12px}
.mlkp-tree-cell.is-empty{border-style:dashed;border-left-style:solid;background:#fafbfc}
.mlkp-tree-titles{color:var(--mlkp-accent,#155e6f);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.mlkp-tree-name{color:#16202a;font-weight:700;text-decoration:none;overflow-wrap:anywhere}
a.mlkp-tree-name:hover{color:var(--mlkp-accent,#155e6f);text-decoration:underline}
.mlkp-tree-reg{color:#5b6773;font-size:11px}
.mlkp-tree-unknown{color:#a0aab4}
.mlkp-tree-add{align-self:flex-start;padding:4px 10px;border:1px dashed #9fb3bd;border-radius:999px;background:#fff;color:#155e6f;font-size:12px;font-weight:700;cursor:pointer}
.mlkp-tree-add:hover{border-style:solid;border-color:#155e6f;background:#eaf5f7}
.mlkp-tree-unlink{position:absolute;top:4px;right:4px;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:transparent;color:#a0aab4;font-size:15px;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s ease}
.mlkp-tree-cell:hover .mlkp-tree-unlink,.mlkp-tree-unlink:focus{opacity:1}
.mlkp-tree-unlink:hover{background:#fef3f2;color:#b42318}
.mlkp-pedigree-title{margin:0 0 14px}

/* Ninhadas */
.mlkp-litters{display:grid;gap:28px;margin:0 0 32px}
.mlkp-litter{padding:24px;border:1px solid var(--mlkp-line);border-radius:var(--mlkp-r);background:#fff}
.mlkp-litter-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}
.mlkp .mlkp-litter-head h3{margin:0;font-size:22px}
.mlkp .mlkp-litter-head a{color:inherit;text-decoration:none}
.mlkp-litter-parents{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.mlkp-litter-parent{display:grid;grid-template-columns:96px minmax(0,1fr);grid-auto-rows:min-content;column-gap:14px;align-items:center;padding:12px;border-radius:14px;background:var(--mlkp-soft);border-left:4px solid var(--mlkp-m)}
.mlkp-litter-f{border-left-color:var(--mlkp-f)}
.mlkp-litter-photo{grid-row:1 / span 4;display:block;width:96px;height:96px;border-radius:12px;overflow:hidden}
.mlkp .mlkp-litter-img,.mlkp-litter-photo img{display:block;width:100%;height:100%;object-fit:cover}
.mlkp-litter-role{color:var(--mlkp-mut);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.mlkp .mlkp-litter-name{color:var(--mlkp-ink);font-weight:700;text-decoration:none}
.mlkp-litter-facts{margin:16px 0 0;color:var(--mlkp-mut);font-size:14px}
.mlkp .mlkp-litter-sub{margin:22px 0 12px;font-size:16px}
.mlkp-litter .mlkp-grid{margin-bottom:0}
.mlkp-litter .mlkp-contact{margin-top:20px}

/* Lightbox */
.mlkp-lb{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;background:rgba(10,14,18,.92);opacity:0;transition:opacity .2s ease}
.mlkp-lb.is-open{opacity:1}
.mlkp-lb img{max-width:92vw;max-height:86vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);user-select:none}
.mlkp-lb button{position:absolute;display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:26px;line-height:1;cursor:pointer;transition:background .15s ease}
.mlkp-lb button:hover,.mlkp-lb button:focus-visible{background:rgba(255,255,255,.26);outline:0}
.mlkp-lb button[hidden]{display:none}
.mlkp-lb-close{top:18px;right:18px}
.mlkp-lb-prev{left:18px;top:50%;transform:translateY(-50%)}
.mlkp-lb-next{right:18px;top:50%;transform:translateY(-50%)}
.mlkp-lb-count{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:#fff;font-size:13px;letter-spacing:.06em;opacity:.8}
html.mlkp-lb-lock{overflow:hidden}

/* Responsivo */
@media (max-width:1024px){
	.mlkp-cols-4,.mlkp-cols-5,.mlkp-cols-6{grid-template-columns:repeat(3,minmax(0,1fr))}
	.mlkp-profile-top{gap:28px}
}
@media (max-width:782px){
	.mlkp-cols-3,.mlkp-cols-4,.mlkp-cols-5,.mlkp-cols-6,.mlkp-grid-auto{grid-template-columns:repeat(2,minmax(0,1fr))}
	.mlkp-grid{gap:16px}
	.mlkp .mlkp-card-body{padding:12px 12px 14px}
	.mlkp .mlkp-card-title{font-size:16px}
	.mlkp-profile-top{grid-template-columns:1fr}
	.mlkp-litter-parents{grid-template-columns:1fr}
	.mlkp-litter{padding:18px}
	.mlkp .mlkp-table thead{display:none}
	.mlkp .mlkp-table,.mlkp .mlkp-table tbody,.mlkp .mlkp-table tr,.mlkp .mlkp-table td{display:block;width:100%}
	.mlkp .mlkp-table tr{padding:8px 0;border-top:1px solid var(--mlkp-line)}
	.mlkp .mlkp-table tr:first-child{border-top:0}
	.mlkp .mlkp-table td{padding:4px 14px;border:0}
	.mlkp .mlkp-table td[data-label]::before{content:attr(data-label) ": ";color:var(--mlkp-mut);font-size:12px}
	.mlkp-lb-prev,.mlkp-lb-next{top:auto;bottom:12px;transform:none}
	.mlkp-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
	.mlkp-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px)}
	.mlkp-dialog .mlkp-pedigree-head{padding:14px 16px}
	.mlkp-dialog .mlkp-pedigree-body{padding:16px}
	.mlkp-profile-actions>*{flex:1 1 100%;justify-content:center}
}
@media (max-width:480px){
	.mlkp-cols-2,.mlkp-cols-3,.mlkp-cols-4,.mlkp-cols-5,.mlkp-cols-6{grid-template-columns:1fr}
	.mlkp-facts{grid-template-columns:1fr}
	.mlkp-gallery-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){.mlkp *{transition:none!important}.mlkp-dialog[open]{animation:none}}
