:root{--pet-bg:#f4f6f8;--pet-card:#fff;--pet-text:#172033;--pet-muted:#667085;--pet-border:#e2e8f0}

*{box-sizing:border-box}
.pet-portal-page{margin:0;background:var(--pet-bg);color:var(--pet-text);min-height:100vh}
.pet-portal-page a{color:inherit}
.pet-shell{width:min(1240px,calc(100% - 32px));margin:0 auto}
.pet-search-hero{padding:38px 0 30px;background:linear-gradient(135deg,var(--secondary),#244b65);color:#fff}
.pet-search-hero h1,.pet-subhead h1{margin:0 0 8px;font-size:clamp(30px,5vw,52px);line-height:1.1}
.pet-search-hero p,.pet-subhead p{max-width:780px;margin:0;color:#dbe8ef;font-size:17px}
.pet-entry-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;margin:22px 0}
.pet-entry-grid a{display:grid;place-items:center;gap:8px;min-height:108px;padding:14px 8px;border:1px solid var(--pet-border);border-radius:15px;background:#fff;text-align:center;text-decoration:none;box-shadow:0 5px 16px rgba(16,24,40,.04)}
.pet-entry-grid a:hover{border-color:var(--primary);transform:translateY(-2px)}
.pet-entry-grid span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--primary) 18%,white);font-size:25px}
.pet-entry-grid strong{font-size:14px}
.pet-section{padding:24px 0}
.pet-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}
.pet-section-head h2{margin:0;font-size:27px}
.pet-section-head>a{color:#315d78;font-weight:700;text-decoration:none}
.pet-listing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pet-listing-card{overflow:hidden;border:1px solid var(--pet-border);border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(16,24,40,.05)}
.pet-card-image{position:relative;display:block;aspect-ratio:16/9;background:#edf2f6}
.pet-card-image img{width:100%;height:100%;object-fit:cover}
.pet-status{position:absolute;top:10px;left:10px;padding:6px 10px;border-radius:999px;background:#157f5b;color:#fff;font-size:12px;font-weight:800}
.pet-status.expired{background:#b42318}
.pet-listing-card>div{padding:15px}
.pet-listing-card small,.pet-service-grid small,.pet-service-info small{color:#b54708;font-weight:800}
.pet-listing-card h3{min-height:48px;margin:7px 0 4px;font-size:18px;line-height:1.32}
.pet-listing-card h3 a{text-decoration:none}
.pet-listing-card p{margin:0;color:var(--pet-muted);font-size:14px}
.pet-listing-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--pet-border)}
.pet-listing-card footer strong{color:#d92d20;font-size:18px}
.pet-listing-card footer a{color:#175cd3;font-weight:750;text-decoration:none}
.pet-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pet-service-grid article{display:flex;gap:14px;padding:18px;border:1px solid var(--pet-border);border-radius:16px;background:#fff}
.pet-service-logo{display:grid;place-items:center;flex:0 0 auto;width:62px;height:62px;overflow:hidden;border-radius:14px;background:#f2f4f7;font-size:28px}
.pet-service-logo img{width:100%;height:100%;object-fit:contain;background:#fff}
.pet-service-grid h3{margin:5px 0;font-size:18px}
.pet-service-grid p{margin:0 0 8px;color:var(--pet-muted);font-size:13px}
.pet-service-grid a{color:#175cd3;font-weight:700;text-decoration:none}
.pet-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pet-guide-grid article{display:grid;grid-template-columns:130px 1fr;overflow:hidden;border:1px solid var(--pet-border);border-radius:16px;background:#fff}
.pet-guide-grid img{width:100%;height:100%;min-height:150px;object-fit:cover}
.pet-guide-grid div{padding:16px}
.pet-guide-grid h3{margin:0 0 8px}
.pet-guide-grid h3 a{text-decoration:none}
.pet-guide-grid p{margin:0;color:var(--pet-muted);font-size:14px;line-height:1.55}
.pet-subhead{padding:38px 0 28px;background:linear-gradient(135deg,var(--secondary),#244b65);color:#fff}
.pet-service-tabs{display:flex;gap:9px;overflow-x:auto;padding:20px 0 12px}
.pet-service-tabs a{white-space:nowrap;padding:10px 14px;border:1px solid var(--pet-border);border-radius:999px;background:#fff;text-decoration:none}
.pet-service-tabs a[aria-current=page]{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 16%,white);font-weight:800}
.pet-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:12px 0 60px}
.pet-service-list article{display:flex;gap:18px;padding:22px;border:1px solid var(--pet-border);border-radius:18px;background:#fff}
.pet-service-info{min-width:0}
.pet-service-info h2{margin:5px 0 11px;font-size:21px}
.pet-service-info p{margin:6px 0;color:#475467;overflow-wrap:anywhere}
.pet-service-info>div{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}
.pet-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:9px;background:var(--primary);color:#152535!important;font-weight:800;text-decoration:none}
.pet-action.secondary{background:#eef2f6}
.pet-empty{grid-column:1/-1;padding:35px;border:1px dashed #aeb8c5;border-radius:14px;background:#fff;text-align:center;color:var(--pet-muted)}
.pet-guide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:28px 0 60px}
.pet-guide-list article{display:grid;grid-template-columns:210px 1fr;overflow:hidden;border:1px solid var(--pet-border);border-radius:18px;background:#fff}
.pet-guide-list img{width:100%;height:100%;min-height:230px;object-fit:cover}
.pet-guide-list article>div{padding:22px}
.pet-guide-list h2{margin:0 0 10px;font-size:23px}
.pet-guide-list p{color:#475467;line-height:1.65}
.pet-guide-detail{padding:30px 0 70px}
.pet-back{display:inline-block;margin-bottom:18px;color:#175cd3!important;font-weight:700;text-decoration:none}
.pet-guide-detail article{overflow:hidden;max-width:940px;margin:0 auto;border:1px solid var(--pet-border);border-radius:20px;background:#fff}
.pet-guide-hero{display:block;width:100%;max-height:470px;object-fit:cover}
.pet-guide-copy{padding:clamp(22px,5vw,52px)}
.pet-guide-copy h1{margin:0 0 14px;font-size:clamp(31px,5vw,52px);line-height:1.15}
.pet-guide-summary{color:#475467;font-size:20px;line-height:1.6}
.pet-guide-copy small{color:var(--pet-muted)}
.pet-guide-body{margin-top:26px;color:#344054;font-size:17px;line-height:1.9;white-space:normal}
.pet-guide-notice{margin-top:30px;padding:16px;border-left:4px solid var(--primary);background:#fff7ed;color:#7a2e0e}
.pet-guides-preview{padding-bottom:60px}

@media(max-width:1050px){.pet-entry-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.pet-listing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.pet-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:780px){
.pet-listing-grid,.pet-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.pet-service-list,.pet-guide-list{grid-template-columns:1fr}
.pet-guide-list article{grid-template-columns:170px 1fr}
}

@media(max-width:540px){.pet-shell{width:min(100% - 22px,1240px)}
.pet-search-hero,.pet-subhead{padding:28px 0 22px}
.pet-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.pet-entry-grid a{min-height:96px}
.pet-listing-grid,.pet-service-grid,.pet-guide-grid{grid-template-columns:1fr}
.pet-section-head{align-items:flex-start}
.pet-section-head h2{font-size:23px}
.pet-service-list article{padding:17px}
.pet-guide-list article,.pet-guide-grid article{grid-template-columns:1fr}
.pet-guide-list img,.pet-guide-grid img{height:190px;min-height:0}
.pet-guide-copy{padding:22px}
.pet-guide-summary{font-size:18px}
}

.market-card.is-expired{opacity:.78}
.pet-expired-alert{margin:0 0 18px;padding:15px 18px;border:1px solid #fda29b;border-radius:12px;background:#fef3f2;color:#b42318}
.pet-source-line{display:grid;gap:4px;margin:16px 0}
.pet-source-line small{color:#667085}
.pet-khmer24-source{padding:10px 12px;border-radius:9px;background:#fff4e8;color:#9a3412;font-weight:800}
.market-detail-actions .secondary{background:#eef2f6;color:#344054}

.pet-source-link{display:inline-flex;width:max-content;color:#667085!important;font-size:14px;font-weight:650;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.pet-source-link:hover{color:#344054!important}
.pet-detail-recommendations{margin-top:28px;padding-top:12px;border-top:1px solid var(--pet-border)}
.pet-detail-recommendations .pet-section{padding-bottom:14px}
.pet-detail-recommendations .pet-listing-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:980px){.pet-detail-recommendations .pet-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:540px){.pet-detail-recommendations .pet-listing-grid{grid-template-columns:1fr}
}

.pet-card-image.is-missing{aspect-ratio:auto;min-height:102px;background:#f8fafc}
.pet-image-missing{display:grid;place-items:center;align-content:center;gap:5px;width:100%;min-height:102px;color:#667085}
.pet-image-missing b{font-size:28px;filter:grayscale(1);opacity:.55}
.pet-image-missing small{font-weight:700}
.pet-card-summary{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-height:1.55;min-height:4.65em}
.pet-card-facts{display:grid;grid-template-columns:1fr;gap:8px;margin:12px 0 15px}
.pet-card-facts div{min-width:0;padding:8px 9px;border-radius:8px;background:#f7f9fb}
.pet-card-facts dt{color:#667085;font-size:11px}
.pet-card-facts dd{overflow:hidden;margin:3px 0 0;color:#344054;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.market-card h3 a{color:inherit;text-decoration:none}
.market-card.is-expired{opacity:.62;filter:saturate(.7)}
.market-card.is-expired:hover{opacity:.78}
.market-gallery.is-missing{max-width:520px}
.market-gallery-missing{display:grid;place-items:center;align-content:center;gap:8px;min-height:180px;background:#f8fafc;color:#667085}
.market-gallery-missing span{font-size:44px;filter:grayscale(1);opacity:.5}
.market-gallery-missing small{font-weight:700}
.market-inquiry-card{padding:24px;border:1px solid var(--market-border);border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(16,24,40,.06)}
.market-inquiry-card h2{margin:0 0 8px}
.market-inquiry-card>p{margin:0 0 18px;color:#667085}
.market-inquiry-form{display:grid;gap:14px}
.market-inquiry-form label{display:grid;gap:7px;color:#344054;font-weight:700}
.market-inquiry-form select,.market-inquiry-form textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:11px 13px;background:#fff;color:#172033;font:inherit}
.market-inquiry-form textarea{resize:vertical;line-height:1.6}
.market-inquiry-form .market-button{justify-self:start;border:0;cursor:pointer}
.market-inquiry-status{color:#157f5b;font-weight:700}
.market-button.is-disabled{background:#e5e7eb;color:#667085;cursor:not-allowed}
.market-seller-card .market-detail-actions .market-button{width:100%;text-align:center}
.market-contact-phone strong{overflow-wrap:anywhere}

@media(max-width:560px){.pet-card-facts{grid-template-columns:1fr}
.market-inquiry-card{padding:18px}
.market-gallery.is-missing{max-width:none}
.market-gallery-missing{min-height:130px}
}

.market-detail-actions .market-button.is-telegram{background:#229ed9;color:#fff}
.pet-source-line a{color:inherit;text-decoration:underline;text-decoration-color:#cbd5e1;text-underline-offset:3px}

.pet-province-coverage{margin:12px 0 22px;padding:20px;border:1px solid var(--pet-border);border-radius:18px;background:#fff}
.pet-province-coverage .pet-section-head{margin-bottom:14px}
.pet-province-coverage .pet-section-head p{margin:6px 0 0;color:var(--pet-muted);font-size:14px;line-height:1.55}
.pet-province-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.pet-province-grid>a,.pet-province-grid>div{display:flex;flex-direction:column;gap:4px;min-height:70px;padding:12px;border:1px solid var(--pet-border);border-radius:11px;background:#f8fafc;text-decoration:none}
.pet-province-grid>a:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,white)}
.pet-province-grid strong{font-size:14px}
.pet-province-grid span{color:#157f5b;font-size:12px}
.pet-province-grid .is-pending{background:#f9fafb}
.pet-province-grid .is-pending strong,.pet-province-grid .is-pending span{color:#98a2b3}

@media(max-width:1050px){.pet-province-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media(max-width:780px){.pet-province-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:540px){.pet-province-coverage{padding:14px}
.pet-province-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

.pet-portal-page img.is-fallback{object-fit:contain!important;background:#fff7ed!important;padding:12px}


