/*
Theme Name: Panda Preschool Gấu Trúc
Theme URI: https://giaoducgautruc.com/
Author: Meowholic / Cody
Description: Panda Preschool v7.10 mobile layout foundation for iPhone and Android safe-area, touch targets, and stable screen geometry.
Version: 7.10.20
Requires at least: 6.0
Tested up to: 6.7
Text Domain: panda-preschool
*/

:root{--panda-green:#047857;--panda-dark:#064e3b;--panda-soft:#ecfdf5;--panda-border:#d1fae5;--panda-text:#0f172a;--panda-muted:#64748b;--panda-shadow:0 18px 50px rgba(16,185,129,.14)}
*{box-sizing:border-box}body{margin:0;font-family: "Montserrat", sans-serif;color:var(--panda-text);background:#fff}.panda-blog-header{border-bottom:1px solid var(--panda-border);background:#fff}.panda-blog-container{max-width:1120px;margin:0 auto;padding:0 20px}.panda-blog-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}.panda-blog-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--panda-dark);font-weight:900}.panda-blog-logo{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:16px;background:var(--panda-green);color:#fff;font-weight:900}.panda-blog-title{font-size:18px;line-height:1.2}.panda-blog-slogan{font-size:13px;color:var(--panda-muted);font-weight:700;margin-top:2px}.panda-blog-actions{display:flex;align-items:center;gap:10px}.panda-blog-actions a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:10px 16px;text-decoration:none;font-size:14px;font-weight:900}.panda-blog-actions .home{background:var(--panda-soft);color:var(--panda-green)}.panda-blog-actions .phone{background:var(--panda-green);color:#fff}.panda-blog-hero{background:linear-gradient(135deg,#ecfdf5,#fff,#eff6ff);padding:50px 0}.panda-blog-hero h1{margin:0;color:var(--panda-dark);font-size:42px;line-height:1.1}.panda-blog-hero p{max-width:720px;color:#475569;font-size:18px;line-height:1.7}.panda-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:44px 0}.panda-post-card{border:1px solid var(--panda-border);border-radius:28px;background:#fff;overflow:hidden;box-shadow:var(--panda-shadow)}.panda-post-card a{text-decoration:none;color:inherit}.panda-post-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#d1fae5,#fff);display:flex;align-items:center;justify-content:center;color:var(--panda-green);font-weight:900}.panda-post-thumb img{width:100%;height:100%;object-fit:cover;display:block}.panda-post-body{padding:22px}.panda-post-body h2{font-size:20px;line-height:1.3;color:var(--panda-dark);margin:0}.panda-post-body p{color:#475569;line-height:1.65}.panda-post-date{color:var(--panda-green);font-weight:900;font-size:13px;margin-bottom:9px}.panda-single{max-width:860px;margin:0 auto;padding:44px 20px}.panda-single h1{font-size:44px;line-height:1.12;color:var(--panda-dark);margin:0 0 14px}.panda-single-meta{color:var(--panda-green);font-weight:900;margin-bottom:22px}.panda-single-thumb{border-radius:28px;overflow:hidden;margin:24px 0;box-shadow:var(--panda-shadow)}.panda-single-thumb img{width:100%;height:auto;display:block}.panda-single-content{font-size:18px;line-height:1.85;color:#334155}.panda-single-content img{max-width:100%;height:auto;border-radius:18px}.panda-single-content a{color:var(--panda-green);font-weight:800}.panda-back-link{display:inline-flex;margin-top:30px;padding:12px 18px;border-radius:999px;background:var(--panda-soft);color:var(--panda-green);text-decoration:none;font-weight:900}.panda-blog-footer{border-top:1px solid var(--panda-border);background:var(--panda-dark);color:#d1fae5;margin-top:40px;padding:30px 0;text-align:center}.panda-empty{padding:50px 0;color:#475569;font-size:18px}@media(max-width:900px){.panda-post-grid{grid-template-columns:1fr 1fr}.panda-blog-hero h1,.panda-single h1{font-size:34px}.panda-blog-actions{display:none}}@media(max-width:640px){.panda-post-grid{grid-template-columns:1fr}.panda-blog-title{font-size:15px}.panda-blog-slogan{display:none}.panda-single h1{font-size:30px}.panda-blog-hero{padding:34px 0}}


/* v6.17.0 blog/archive header aligned with main website */
.panda-blog-header{
  margin:18px auto 0;
  width:min(1440px,calc(100% - 32px));
  overflow:hidden;
  border:1px solid #d1fae5;
  border-radius:30px;
  background:#fff;
  box-shadow:0 18px 44px rgba(15,23,42,.08);
}
.panda-blog-container{max-width:1320px;margin:0 auto;padding:0 28px}
.panda-blog-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:22px 0;
}
.panda-blog-brand{
  display:flex;
  min-width:0;
  align-items:center;
  gap:15px;
  color:#064e3b;
  text-decoration:none;
}
.panda-blog-logo{
  display:grid;
  flex:0 0 auto;
  width:64px;
  height:64px;
  place-items:center;
  border-radius:22px;
  background:#16865d;
  color:#fff;
  font-size:25px;
  font-weight:900;
}
.panda-blog-brand-copy{
  display:flex;
  min-width:0;
  flex-direction:column;
}
.panda-blog-title{
  color:#064e3b;
  font-size:clamp(20px,2vw,30px);
  font-weight:900;
  line-height:1.1;
}
.panda-blog-slogan{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:14px;
  font-weight:700;
  line-height:1.35;
}
.panda-blog-hotline{
  flex:0 0 auto;
  text-align:right;
}
.panda-blog-hotline-label{
  display:block;
  color:#047857;
  font-size:13px;
  font-weight:900;
}
.panda-blog-hotline-number{
  display:block;
  margin-top:3px;
  color:#052e2b;
  font-size:21px;
  font-weight:900;
  text-decoration:none;
}
.panda-blog-menu{
  display:grid;
  grid-template-columns:72px 1fr 1.35fr .75fr .65fr;
  background:linear-gradient(90deg,#39df3e 0%,#eef02c 100%);
}
.panda-blog-menu a{
  display:flex;
  min-height:78px;
  align-items:center;
  justify-content:center;
  padding:14px 18px;
  color:#064e3b;
  text-align:center;
  text-decoration:none;
  font-size:14px;
  font-weight:900;
  line-height:1.28;
}
.panda-blog-menu a:hover,.panda-blog-menu a.is-active{
  background:rgba(255,255,255,.24);
}
.panda-blog-menu-home{font-size:24px!important}
.panda-blog-menu-label small{
  display:block;
  font-size:12px;
  font-weight:800;
}
.panda-blog-menu-label strong{
  display:block;
  font-size:15px;
}
.panda-blog-hero{
  margin-top:28px;
  background:linear-gradient(135deg,#ecfdf5,#fff,#eff6ff);
  padding:52px 0;
}
.panda-blog-hero h1{margin:0;color:#052e2b;font-size:42px;line-height:1.1}
.panda-blog-hero p{max-width:760px;color:#475569;font-size:18px;line-height:1.7}
@media(max-width:980px){
  .panda-blog-hotline{display:none}
  .panda-blog-menu{grid-template-columns:64px 1fr 1.25fr .7fr .6fr}
  .panda-blog-menu a{padding:12px 10px;font-size:12px}
  .panda-blog-menu-label strong{font-size:13px}
}
@media(max-width:760px){
  .panda-blog-header{
    width:calc(100% - 20px);
    margin-top:10px;
    border-radius:24px;
  }
  .panda-blog-container{padding:0 16px}
  .panda-blog-nav{padding:15px 0}
  .panda-blog-logo{width:52px;height:52px;border-radius:18px;font-size:21px}
  .panda-blog-title{font-size:18px}
  .panda-blog-slogan{
    max-width:230px;
    white-space:normal;
    font-size:12px;
  }
  .panda-blog-menu{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x proximity;
  }
  .panda-blog-menu a{
    flex:0 0 auto;
    min-width:150px;
    min-height:68px;
    scroll-snap-align:start;
  }
  .panda-blog-menu-home{min-width:68px!important}
}



/* v6.17.1 blog header address + skip-link fix */
.panda-skip-link,a.panda-skip-link,body > a[href="#panda-main-content"],body > a[href="#main-content"],body > a[href="#content"]{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:none !important;
}

.panda-skip-link:focus,.panda-skip-link:focus-visible,body > a[href="#panda-main-content"]:focus,body > a[href="#main-content"]:focus,body > a[href="#content"]:focus{
  top:14px !important;
  left:14px !important;
  width:auto !important;
  height:auto !important;
  padding:12px 16px !important;
  margin:0 !important;
  overflow:visible !important;
  clip:auto !important;
  white-space:normal !important;
  border-radius:12px !important;
  background:#ffffff !important;
  color:#047857 !important;
  box-shadow:0 12px 30px rgba(15,23,42,.18) !important;
  opacity:1 !important;
  pointer-events:auto !important;
  z-index:999999 !important;
}

.panda-blog-header{
  width:min(1440px,calc(100% - 40px)) !important;
  margin:20px auto 0 !important;
}

.panda-blog-container{
  max-width:1360px !important;
  padding-left:24px !important;
  padding-right:24px !important;
}

.panda-blog-nav{
  display:grid !important;
  grid-template-columns:minmax(380px,1.1fr) minmax(420px,1fr) auto !important;
  align-items:center !important;
  gap:30px !important;
  padding:24px 0 !important;
}

.panda-blog-addresses{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
  color:#334155;
  font-size:13px;
  font-weight:800;
  line-height:1.35;
}

.panda-blog-address-row{
  display:flex;
  align-items:flex-start;
  gap:8px;
}

.panda-blog-address-icon{
  flex:0 0 auto;
  color:#047857;
  font-size:15px;
  line-height:1.2;
}

.panda-blog-address-row strong{
  color:#064e3b;
}

.panda-blog-title{
  white-space:nowrap;
}

.panda-blog-slogan{
  white-space:normal !important;
  max-width:430px;
}

@media(max-width:1180px){
  .panda-blog-nav{
    grid-template-columns:minmax(360px,1fr) minmax(340px,.9fr) !important;
  }
  .panda-blog-hotline{
    display:none !important;
  }
}

@media(max-width:900px){
  .panda-blog-header{
    width:calc(100% - 24px) !important;
    margin-top:12px !important;
  }
  .panda-blog-nav{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .panda-blog-addresses{
    padding-top:4px;
    border-top:1px solid #d1fae5;
    padding-bottom:2px;
  }
}

@media(max-width:760px){
  .panda-blog-header{
    width:calc(100% - 16px) !important;
    margin-top:8px !important;
  }
  .panda-blog-container{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  .panda-blog-addresses{
    font-size:12px;
  }
}
/* End v6.17.1 */
