
/*
Theme Name: Giao Án Mầm Non
Author: Custom
Description: WordPress theme thư viện giáo án mầm non - V2 responsive.
Version: 4.9.59
Text Domain: giaoan-mam-non
*/
:root{
 --red:#ef493d;--red2:#df3d32;--dark:#263238;--text:#202428;--muted:#8a949b;
 --line:#e1e5e8;--bg:#f3f5f6;--card:#fff;--blue:#168dcc;--green:#198f78;
 --container:1200px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.55}
a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}.container{width:min(var(--container),calc(100% - 28px));margin:auto}
.topbar{height:31px;background:#e9edf1;border-bottom:1px solid #d7dce0;font-size:12px}
.topbar .container{display:flex;justify-content:flex-end;align-items:center;height:100%}.toplinks{display:flex;height:100%}.toplinks a{padding:6px 12px;border-right:1px solid #cfd5d9}.toplinks a:last-child{border:0}
.brandbar{background:#fffdf7}.brand{height:78px;display:flex;align-items:center;gap:12px}.brand-logo{width:62px;height:62px;display:flex;align-items:center;justify-content:center;flex:0 0 62px}.brand-logo img{width:62px;height:62px;object-fit:contain;display:block}.site-title{font-size:28px;font-weight:700;letter-spacing:-.5px}.site-title .one{color:var(--red)}.site-title .two{color:#168d78}
.mainnav{position:sticky;top:0;z-index:1000;background:linear-gradient(90deg,#ff6b5e 0%,#f45145 48%,#ff7a59 100%);color:#fff;box-shadow:0 3px 12px rgba(72,52,38,.18);border-bottom:3px solid #ffd35a}.nav-inner{min-height:50px;display:flex;align-items:stretch}.home-link{width:72px;display:flex;align-items:center;justify-content:center;font-size:22px}.home-link:hover{background:var(--red2)}
.menu{display:flex;flex:1;justify-content:space-around;align-items:stretch;margin:0;padding:0;list-style:none}.menu>li{position:relative;display:flex;align-items:stretch}.menu>li>a{display:flex;align-items:center;padding:0 35px;color:#fff;white-space:nowrap}.menu>li.menu-item-has-children>a:after{content:"▾";font-size:11px;margin-left:8px}.menu>li:hover>a{background:var(--red2)}
.menu ul{display:none;position:absolute;z-index:50;top:53px;left:0;min-width:225px;background:#fff;color:#333;padding:4px 0;margin:0;list-style:none;border:1px solid #ddd;box-shadow:0 7px 20px rgba(0,0,0,.16)}.menu li:hover>ul{display:block}.menu ul li a{display:block;padding:10px 14px;border-bottom:1px solid #eee}.menu ul li:last-child a{border-bottom:0}.menu ul li a:hover{background:#f5f5f5;color:var(--red)}
.page-wrap{padding:15px 0 34px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 273px;gap:18px}.content-panel{background:#fff;border:1px solid #dcdfe2;padding:27px 25px;min-width:0}.sidebar{min-width:0}.sidebar-box{background:#fff}.sidebar-title{background:var(--red);color:#fff;padding:8px 12px;font-weight:700;font-size:15px}.sidebar-list{margin:0;padding:5px 11px 8px;list-style:none}.sidebar-list li{display:grid;grid-template-columns:26px 1fr;gap:7px;padding:9px 0;border-bottom:1px solid #eceeef}.file-icon{display:inline-flex;width:25px;height:31px;align-items:center;justify-content:center;vertical-align:middle;border-radius:2px;background:var(--blue);color:#fff;font-size:9px;font-weight:bold;position:relative;flex:0 0 auto}.file-icon.pdf{background:var(--red)}.file-icon.ppt,.file-icon.pptx{background:#e77c22}.file-icon:after{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 7px 7px 0;border-color:transparent #fff transparent transparent}.side-title{font-size:13px;line-height:1.4}.meta,.card-meta{color:#9aa2a8;font-size:11px}.meta{margin-top:5px}
.hero-search{border:1px solid var(--line);background:#fff;padding:15px;margin:-5px 0 22px}.hero-search h1{font-size:20px;margin:0 0 10px}.search-form{display:flex}.search-form input{flex:1;min-width:0;border:1px solid #ccc;padding:10px 12px;border-radius:3px 0 0 3px;font-size:14px}.search-form button{border:0;background:var(--red);color:#fff;padding:0 19px;border-radius:0 3px 3px 0;cursor:pointer}
.category-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}.category-pill{background:#fff;border:1px solid var(--line);padding:11px 8px;text-align:center;font-weight:700}.category-pill:hover{border-color:var(--red);color:var(--red)}
.section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px;border-bottom:1px solid #e3e3e3;padding-bottom:8px}.section-heading h2{font-size:16px;margin:0}.section-heading a{font-size:12px;color:var(--red)}
.document-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 26px;align-items:start}.document-grid>.doc-card{min-width:0;width:100%;overflow:hidden}.document-grid>.doc-card:only-child{grid-column:1/-1}.doc-card{min-width:0;text-align:center}.doc-thumb{height:171px;display:flex;justify-content:center;align-items:center;overflow:hidden}.doc-thumb a{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.doc-thumb img{width:130px;height:166px;object-fit:cover;border:1px solid #cfd3d5}.doc-placeholder{width:130px;height:166px;border:1px solid #d8dcdf;background:#f5f7f8;display:flex;align-items:center;justify-content:center;color:#8e979d;font-weight:bold}.doc-title{font-size:13px;line-height:1.35;margin-top:8px;text-align:left;min-height:35px;overflow:hidden}.doc-title .file-icon{margin-right:4px;transform:scale(.72);transform-origin:left center;margin-bottom:-9px}.doc-title a:hover{color:var(--red)}.doc-stats{display:flex;justify-content:flex-start;align-items:center;gap:11px;margin-top:8px;color:#858e94;font-size:11px;line-height:1.2;flex-wrap:nowrap}.doc-stats>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;min-width:0}.ganm-stat-icon{width:16px;height:16px;display:inline-block;vertical-align:-3px;flex:0 0 16px}.doc-stats b{font-size:12px;font-weight:600;color:#626b71}.doc-stats em{font-style:normal;color:#8c959b;font-size:10px}.single-meta .ganm-stat-icon{width:16px;height:16px;vertical-align:-3px}
.filter-bar{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:8px;margin-bottom:18px}.filter-bar select,.filter-bar input{border:1px solid #ccc;padding:9px;background:#fff;border-radius:3px}.filter-btn{border:0;background:var(--red);color:#fff;border-radius:3px;padding:0 15px}
.breadcrumb{font-size:12px;color:#888;margin-bottom:14px}.breadcrumb a:hover{color:var(--red)}.page-title{font-size:22px;margin:0 0 15px}.single-title{font-size:25px;line-height:1.3;margin:0 0 8px}.single-meta{font-size:12px;color:#888;margin-bottom:18px}.single-cover{text-align:center;margin-bottom:20px}.single-cover img{max-height:520px}.single-content{font-size:15px}.download-box{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px;border:1px solid #ddd;background:#fafafa;margin:24px 0}.btn{display:inline-block;background:var(--red);color:#fff;border:0;border-radius:3px;padding:10px 18px;cursor:pointer}.btn:hover{background:var(--red2)}
.form-box{max-width:600px;margin:auto}.form-row{margin-bottom:14px}.form-row label{display:block;font-weight:600;margin-bottom:5px}.form-row input,.form-row textarea,.form-row select{width:100%;padding:10px;border:1px solid #ccc;border-radius:3px;background:#fff}.form-row textarea{min-height:130px}.notice{padding:10px 12px;background:#fff7d7;border:1px solid #e9db9a;margin-bottom:15px}
.pagination{display:flex;justify-content:center;gap:5px;margin-top:26px}.pagination a,.pagination span{background:#fff;border:1px solid #ddd;padding:7px 11px}.pagination .current{background:var(--red);border-color:var(--red);color:#fff}

@media(max-width:1000px){.layout{grid-template-columns:1fr}.sidebar{order:2}.document-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px}.doc-thumb{height:165px}.filter-bar{grid-template-columns:1fr 1fr 1fr}.filter-btn{min-height:38px}.category-row{grid-template-columns:repeat(4,1fr)}}
@media(max-width:850px){.document-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Preschool footer */
.site-footer-pro{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff8dc 0%,#fffdf5 48%,#e8f8ff 100%);border-top:5px solid transparent;border-image:linear-gradient(90deg,#ffcf33,#ff6b6b,#62c7ee,#79cf62) 1;margin-top:42px;color:#38434a}
.site-footer-pro:before{content:"";position:absolute;left:-80px;bottom:38px;width:220px;height:220px;border-radius:50%;background:rgba(255,205,62,.16)}
.site-footer-pro:after{content:"";position:absolute;right:-90px;top:18px;width:250px;height:250px;border-radius:50%;background:rgba(70,190,226,.13)}
.footer-decor{position:absolute;font-size:22px;line-height:1;pointer-events:none;z-index:0}.footer-decor-one{left:9%;top:24px;color:#ffbd2e}.footer-decor-two{right:22%;bottom:35px;color:#ff6b91;font-size:16px}.footer-decor-three{right:8%;top:30px;color:#72c85c;font-size:20px}
.footer-pro-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr 1fr 1.15fr;gap:70px;padding:38px 0 30px}
.footer-pro-col{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.footer-pro-col h3{margin:0 0 14px;font-size:17px;line-height:1.35;color:#263238;font-weight:800;display:flex;align-items:center;gap:8px}.footer-title-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#ff6b5e;box-shadow:14px 0 0 #ffd34d,28px 0 0 #62c7ee;margin-right:28px}
.footer-pro-col>a,.footer-contact{display:block;margin:0 0 10px;font-size:14px;line-height:1.5;color:#4c5960;text-decoration:none;transition:color .18s ease,transform .18s ease}.footer-pro-col>a:hover,.footer-contact a:hover,.footer-bottom-links a:hover{color:#ef493d;text-decoration:none;transform:translateX(2px)}
.footer-brand-col p{max-width:390px;margin:2px 0 0;color:#65727a;font-size:14px}.footer-brand-logo{width:96px;height:76px;display:flex;align-items:center;justify-content:flex-start;margin-bottom:6px}.footer-brand-logo img{width:96px;height:76px;object-fit:contain;display:block}.footer-contact-col>a{display:flex;align-items:center;gap:9px}.footer-contact-icon{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #ffd1cc;color:#ef493d;font-size:13px;flex:0 0 28px;box-shadow:0 2px 6px rgba(0,0,0,.05)}
.footer-pro-bottom{position:relative;z-index:1;border-top:1px solid rgba(112,126,134,.2);padding:15px 0 18px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:12px;color:#718087}.footer-bottom-links{display:flex;gap:9px;align-items:center}.footer-bottom-links a{color:#65727a;text-decoration:none}

@media(max-width:980px){.footer-pro-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.footer-payments,.footer-social{grid-column:auto}.footer-pro-bottom{flex-direction:column;align-items:flex-start}}
@media(max-width:720px){.topbar{display:none}.brand{height:62px}.site-title{font-size:22px}.nav-inner{overflow-x:auto}.home-link{width:48px;flex:0 0 48px}.menu{justify-content:flex-start}.menu>li>a{padding:0 16px}.content-panel{padding:18px 12px}.document-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 15px}.doc-thumb{height:148px}.doc-thumb img,.doc-placeholder{width:112px;height:143px}.category-row{grid-template-columns:repeat(2,1fr)}.filter-bar{grid-template-columns:1fr 1fr}.filter-btn{min-height:38px}.download-box{align-items:flex-start;flex-direction:column}}
@media(max-width:430px){.document-grid{gap:22px 10px}.doc-title{font-size:12px}.doc-stats{gap:7px;font-size:10px}.doc-stats b{font-size:11px}.doc-stats em{font-size:9px}.ganm-stat-icon{width:15px;height:15px;flex-basis:15px}.category-row{gap:7px}.search-form button{padding:0 13px}}


/* V3: account, AJAX search, PDF preview, admin polish */
.muted{color:var(--muted)}.account-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}
.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:25px}.account-stats>div{border:1px solid var(--line);background:#fafafa;padding:14px;text-align:center}.account-stats strong{display:block;font-size:23px;color:var(--red)}.account-stats span{font-size:12px;color:#777}
.account-table-wrap{overflow:auto}.account-table{width:100%;border-collapse:collapse}.account-table th,.account-table td{padding:10px;border-bottom:1px solid #e7e7e7;text-align:left;white-space:nowrap}.account-table th{background:#f5f6f7;font-size:12px}.account-table td a{color:#176fa4}.status{font-size:11px;padding:4px 7px;border-radius:3px;background:#eee}.status-publish{background:#e1f4e9;color:#17764a}.status-pending{background:#fff2c9;color:#876400}.status-draft{background:#eee;color:#666}
.ajax-search-box{position:relative;margin-bottom:18px}.live-results{position:relative;z-index:10}.live-results .live-item{display:flex;gap:10px;padding:10px;border:1px solid #e2e2e2;border-top:0;background:#fff}.live-results .live-item:first-child{border-top:1px solid #e2e2e2}.live-item:hover{background:#f8f8f8}.live-item .file-icon{margin-top:1px}.live-item-title{font-size:13px}.live-item-meta{font-size:11px;color:#999}
.pdf-preview{width:100%;height:650px;border:1px solid #dfe3e5;background:#525659;margin:15px 0 22px}.pdf-preview iframe{width:100%;height:100%;border:0}
.ganm-download{font:inherit}


@media(max-width:980px){.footer-pro-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.footer-payments,.footer-social{grid-column:auto}.footer-pro-bottom{flex-direction:column;align-items:flex-start}}
@media(max-width:720px){.account-head{align-items:flex-start;flex-direction:column}.account-stats{grid-template-columns:1fr 1fr 1fr}.pdf-preview{height:500px}}

/* V4.1: normal WordPress posts on homepage + blog archive/detail */
.posts-home-section{margin-top:32px;padding-top:5px;border-top:2px solid #f0f1f2}.posts-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.post-home-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;border:1px solid var(--line);background:#fff;padding:10px;min-width:0}.post-home-thumb{height:118px;overflow:hidden;background:#f4f6f7;display:flex;align-items:center;justify-content:center}.post-home-thumb img{width:100%;height:100%;object-fit:cover}.post-home-placeholder{font-size:12px;font-weight:700;color:#9aa2a8;letter-spacing:.5px}.post-home-body{min-width:0}.post-home-date{font-size:11px;color:#9aa2a8;margin-bottom:3px}.post-home-body h3{font-size:15px;line-height:1.35;margin:0 0 5px}.post-home-body h3 a:hover,.post-list-body h2 a:hover{color:var(--red)}.post-home-body p{font-size:12px;color:#687177;margin:0 0 5px;line-height:1.45}.post-home-more{font-size:11px;color:var(--red);font-weight:700}.empty-posts{grid-column:1/-1;border:1px dashed #ccd2d6;padding:18px;text-align:center;color:#7d868b}
.posts-list{display:grid;gap:18px}.post-list-card{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.post-list-thumb{height:150px;background:#f4f6f7;display:flex;align-items:center;justify-content:center;overflow:hidden}.post-list-thumb img{width:100%;height:100%;object-fit:cover}.post-list-body h2{font-size:20px;line-height:1.35;margin:3px 0 7px}.post-list-body p{color:#667078;margin:0 0 8px}.post-featured-image{text-align:center;margin:10px 0 24px}.post-featured-image img{max-height:520px;object-fit:contain}.post-content{font-size:15px;line-height:1.75}.post-content p{margin:0 0 1em}.post-content h2,.post-content h3{line-height:1.35}.post-content ul,.post-content ol{padding-left:24px}.post-tags{margin:25px 0;padding:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}.post-tags a{display:inline-block;margin:0 4px;color:var(--red)}.posts-related{margin-top:25px}.related-post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.related-post{display:flex;gap:9px;align-items:center;border:1px solid var(--line);padding:7px;font-size:12px;line-height:1.35}.related-post img{width:55px;height:45px;object-fit:cover;flex:0 0 auto}
@media(max-width:900px){.posts-home-grid{grid-template-columns:1fr}.post-list-card{grid-template-columns:180px minmax(0,1fr)}}


@media(max-width:980px){.footer-pro-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.footer-payments,.footer-social{grid-column:auto}.footer-pro-bottom{flex-direction:column;align-items:flex-start}}
@media(max-width:720px){.post-home-card{grid-template-columns:112px minmax(0,1fr);padding:8px}.post-home-thumb{height:100px}.post-home-body h3{font-size:13px}.post-home-body p{font-size:11px}.post-list-card{grid-template-columns:1fr;gap:10px}.post-list-thumb{height:190px}.post-list-body h2{font-size:18px}.related-post-grid{grid-template-columns:1fr}}

/* V4.1.2: empty state */
.document-grid .empty-documents{grid-column:1/-1;padding:28px 12px;text-align:center;color:#7d868b;border:1px dashed #ccd2d6;background:#fafbfc}.document-grid .empty-documents strong{display:block;color:#4d555a;margin-bottom:4px}


/* V4.1.5: thống kê gọn như website mẫu - chỉ icon + số */
.doc-stats{display:flex;align-items:center;gap:10px;margin-top:8px;color:#8a949b;font-size:12px;line-height:1.2;flex-wrap:nowrap}
.doc-stats>span{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;min-width:0}
.doc-stats>span+span{border-left:1px solid #ddd;padding-left:10px}
.doc-stats b{font-size:12px;font-weight:400;color:#7f8990}
.doc-stats em{display:none}
.doc-stats .ganm-stat-icon{width:14px;height:14px;flex:0 0 14px;vertical-align:middle}
@media(max-width:430px){.doc-stats{gap:7px;font-size:11px}.doc-stats>span+span{padding-left:7px}.doc-stats b{font-size:11px}.doc-stats .ganm-stat-icon{width:13px;height:13px;flex-basis:13px}}


/* V4.1.6: homepage document pagination */
.pagination{clear:both;width:100%;display:flex;justify-content:center;align-items:center;gap:0;margin:30px 0 8px;padding-top:4px}.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:38px;padding:0 10px;border:1px solid #d8dde1;border-left:0;background:#fff;color:#222;text-decoration:none;font-size:14px}.pagination .page-numbers:first-child{border-left:1px solid #d8dde1;border-radius:6px 0 0 6px}.pagination .page-numbers:last-child{border-radius:0 6px 6px 0}.pagination .page-numbers.current{background:var(--red);border-color:var(--red);color:#fff}.pagination .page-numbers:hover:not(.current){background:#f7f8f9;color:var(--red)}

/* V4.1.8: countdown 15 giay truoc khi tai tai lieu */
.ganm-download{min-width:145px;text-align:center;transition:opacity .2s,background .2s}
.ganm-download:disabled{opacity:.75;cursor:wait}
.ganm-download strong{font-weight:700}


/* V4.2: document detail page */
.doc-detail-head{margin-bottom:14px}
.doc-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px 14px;color:#8b949a;font-size:12px;margin:7px 0 18px}
.doc-detail-meta .detail-stat{display:inline-flex;align-items:center;gap:4px}
.doc-detail-meta .ganm-stat-icon{width:15px;height:15px;flex:0 0 15px}
.doc-preview{background:#eef1f3;border:1px solid #d9dde0;padding:10px;margin:0 0 12px}
.doc-preview-frame{width:100%;height:620px;border:0;background:#fff;display:block}
.doc-preview-note{font-size:12px;color:#8b949a;text-align:center;margin:8px 0 20px}
.doc-download-wrap{display:flex;justify-content:center;margin:16px 0 22px}
.doc-download-wrap .ganm-download{min-width:180px;font-weight:700;text-align:center}
.doc-attachment{border-top:1px solid #e2e5e7;padding-top:15px;margin-top:15px}
.doc-attachment-title{font-weight:700;margin-bottom:8px}
.doc-attachment-file{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f7f8f9;border:1px solid #e0e3e5}
.doc-attachment-file .file-name{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.doc-text-title{font-size:17px;margin:24px 0 10px;padding-bottom:8px;border-bottom:1px solid #e4e6e8}
.doc-text-content{font-size:14px;line-height:1.7;color:#333}
.doc-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:12px}
.doc-related-card{display:block;min-width:0}
.doc-related-thumb{height:130px;background:#f5f6f7;border:1px solid #ddd;display:flex;align-items:center;justify-content:center;overflow:hidden}
.doc-related-thumb img{width:100%;height:100%;object-fit:cover}
.doc-related-thumb .file-icon{transform:scale(1.2)}
.doc-related-title{font-size:13px;line-height:1.4;margin-top:7px;height:37px;overflow:hidden}
.doc-related-card:hover .doc-related-title{color:var(--red)}
.doc-related-stats{margin-top:5px}
@media(max-width:900px){.doc-preview-frame{height:520px}.doc-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.doc-preview-frame{height:420px}.doc-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.doc-download-wrap .ganm-download{width:100%}.doc-detail-meta{gap:7px 10px}}


/* V4.4.0: chi tiet tai lieu - bo cuc day du */
.doc-detail-page{min-width:0}.doc-page-title{font-size:26px;line-height:1.35;margin:6px 0 18px}.doc-preview-shell{background:#f0f2f3;border:1px solid #d8dde0;padding:10px;margin-bottom:16px}.doc-preview{background:#fff;border:1px solid #d1d6d9;padding:0;margin:0;overflow:hidden}.doc-preview-frame{height:680px;background:#fff}.doc-cover{text-align:center;margin-bottom:18px}.doc-cover img{max-height:680px;width:auto;max-width:100%;object-fit:contain}.doc-info-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;padding:4px 0 14px;color:#7d878e;font-size:12px}.doc-info-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.doc-info-item b{font-weight:500;color:#4f5960}.file-type-item .file-icon{margin-right:1px}.doc-info-item .ganm-stat-icon{width:15px;height:15px;flex:0 0 15px}.doc-download-row{display:flex;justify-content:flex-end;margin:2px 0 16px}.doc-download-row .ganm-download{min-width:164px;background:#168c55;border-color:#168c55;color:#fff;font-size:17px;font-weight:700;padding:10px 20px;border-radius:5px}.doc-download-row .ganm-download:hover{background:#117a49}.doc-preview-note{font-size:13px;line-height:1.65;color:#333;margin:0 0 22px}.doc-preview-note strong{color:#f33}.doc-section-title{font-size:16px;font-weight:700;margin:0 0 10px}.doc-attachment{border:0;padding:0;margin:0 0 25px}.doc-attachment-file{display:flex;align-items:center;gap:8px;padding:9px 0;font-size:13px}.doc-attachment-file a{color:#176fa4;word-break:break-all}.doc-content-section{border-top:1px solid #e2e5e7;padding-top:18px}.doc-text-content{font-size:14px;line-height:1.75;color:#333}.doc-text-content img{max-width:100%;height:auto}.doc-related-section{border-top:1px solid #e2e5e7;margin-top:28px;padding-top:18px}.doc-related-section h2{font-size:18px;margin:0 0 12px}.doc-related-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.doc-related-thumb{height:145px}.doc-related-title{font-size:13px;font-weight:600}.doc-related-stats{font-size:11px}.doc-related-card .doc-stats{margin-top:6px}
@media(max-width:900px){.doc-preview-frame{height:560px}.doc-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.doc-page-title{font-size:21px}.doc-preview-frame{height:430px}.doc-download-row{justify-content:stretch}.doc-download-row .ganm-download{width:100%}.doc-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.doc-related-thumb{height:125px}.doc-info-row{gap:7px 10px}}

/* V4.4.0: file attachment is display-only; download only via Download button */
.doc-attachment-file .doc-attachment-name { cursor: default; text-decoration: none; color: inherit; }
.doc-attachment-file { cursor: default; }

/* V4.4.4: display a real filename and automatic Google Docs text content */
.doc-attachment-name{font-size:13px;font-weight:500;word-break:break-word;overflow-wrap:anywhere}
.doc-text-content p{margin:0 0 12px}.doc-text-content ul,.doc-text-content ol{margin:0 0 14px 22px}
.doc-text-content table{width:100%;border-collapse:collapse;margin:12px 0}.doc-text-content td,.doc-text-content th{border:1px solid #ddd;padding:6px}

/* V4.4.6: clean preview toolbar — view + zoom only */
.doc-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #d1d6d9;border-bottom:0;padding:7px 10px}
.doc-preview-mode{font-size:12px;font-weight:700;color:#69737a}
.doc-preview-zoom{display:flex;align-items:center;gap:0;border:1px solid #d6dade;border-radius:4px;overflow:hidden}
.doc-preview-zoom button{height:30px;min-width:34px;border:0;border-right:1px solid #d6dade;background:#fff;color:#3d474d;cursor:pointer;font-size:16px;line-height:1}
.doc-preview-zoom button:last-child{border-right:0}
.doc-preview-zoom .doc-zoom-value{min-width:54px;font-size:12px;font-weight:600}
.doc-preview-zoom button:hover{background:#f2f5f6}
.doc-preview-shell .doc-preview{border-top:0}
.related-post-sidebar-list{padding-top:2px}
.related-post-sidebar-item{grid-template-columns:58px 1fr!important;align-items:start!important;gap:9px!important}
.related-post-sidebar-thumb{width:58px;height:48px;background:#f2f4f5;border:1px solid #e0e4e6;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#9aa2a8;font-size:9px;font-weight:700}
.related-post-sidebar-thumb img{width:100%;height:100%;object-fit:cover}
.related-post-sidebar-date{font-size:10px;color:#9aa2a8;margin-top:3px}
@media(max-width:680px){.doc-preview-toolbar{padding:6px 8px}.doc-preview-zoom button{height:28px}.doc-preview-mode{font-size:11px}}

/* V4.4.6: custom PDF canvas viewer — no browser PDF toolbar */
.ganm-pdf-viewer{background:#eef1f3;border:1px solid #d1d6d9;min-height:680px;overflow:auto;padding:14px 12px;box-sizing:border-box}
.ganm-pdf-status{text-align:center;color:#69737a;font-size:13px;padding:30px 10px}
.ganm-pdf-pages{display:flex;flex-direction:column;align-items:center;gap:14px}
.ganm-pdf-page{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.16);line-height:0;max-width:100%}
.ganm-pdf-page canvas{display:block;max-width:100%;height:auto}
@media(max-width:900px){.ganm-pdf-viewer{min-height:560px}}
@media(max-width:680px){.ganm-pdf-viewer{min-height:430px;padding:8px}.ganm-pdf-pages{gap:9px}}


/* V4.4.7: preview-only protection. Pages are rendered to canvas; do not expose
   the rendered page as a draggable/savable image. This does not block screenshots. */
.ganm-pdf-viewer{user-select:none;-webkit-user-select:none}
.ganm-pdf-page,.ganm-pdf-page canvas{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:none}
.ganm-pdf-viewer{cursor:default}


/* V4.4.8: donation / coffee support card */
.doc-download-donation-row{display:grid;grid-template-columns:minmax(190px,1fr) minmax(300px,430px);gap:14px;align-items:stretch;margin:2px 0 16px}
.doc-download-action{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;border:1px solid #e0e5e8;background:#fbfcfc;border-radius:6px;padding:16px}
.doc-download-action .ganm-download{min-width:220px;background:#168c55;border-color:#168c55;color:#fff;font-size:17px;font-weight:700;padding:10px 20px;border-radius:5px}
.doc-download-action .ganm-download:hover{background:#117a49}
.doc-free-note{font-size:12px;color:#7b858b}
.doc-coffee-card{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid #efd8c8;background:#fff9f4;border-radius:8px;padding:10px 12px;cursor:pointer;color:#4a3025;font:inherit}
.doc-coffee-card:hover{box-shadow:0 3px 12px rgba(0,0,0,.08);transform:translateY(-1px)}
.doc-coffee-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.doc-coffee-copy strong{font-size:15px;color:#8a4b26}
.doc-coffee-copy small{font-size:11px;line-height:1.45;color:#7d716b}
.doc-coffee-card img{width:92px;height:92px;object-fit:contain;background:#fff;border:1px solid #eee;border-radius:5px;flex:0 0 92px}
.doc-coffee-modal[hidden]{display:none}
.doc-coffee-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px}
.doc-coffee-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62)}
.doc-coffee-dialog{position:relative;z-index:1;max-width:min(92vw,760px);max-height:92vh;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.28);overflow:auto}
.doc-coffee-dialog>img{display:block;width:100%;height:auto}
.doc-coffee-close{position:absolute;right:10px;top:8px;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.95);color:#333;font-size:26px;line-height:34px;cursor:pointer;z-index:2}
@media(max-width:680px){.doc-download-donation-row{grid-template-columns:1fr}.doc-coffee-card{min-height:112px}.doc-coffee-card img{width:82px;height:82px;flex-basis:82px}.doc-download-action .ganm-download{width:100%;min-width:0}.doc-coffee-modal{padding:8px}.doc-coffee-dialog{max-width:96vw;max-height:94vh}}


/* V4.9.4: fix sidebar "TÀI LIỆU HAY" link collapsing into a narrow column.
   The previous .sidebar-list li grid rule treated the single <a> as column 1
   (26px), which forced its title text to wrap one character per line. */
.sidebar-list > li:not(.related-post-sidebar-item){
  display:block;
}
.sidebar-list > li:not(.related-post-sidebar-item) > a{
  display:flex;
  align-items:flex-start;
  gap:7px;
  width:100%;
  min-width:0;
}
.sidebar-list > li:not(.related-post-sidebar-item) > a > .file-icon{
  flex:0 0 25px;
}
.sidebar-list > li:not(.related-post-sidebar-item) > a > span:not(.file-icon){
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
}

/* Sticky navigation offsets */
body.admin-bar .mainnav{top:32px}
@media(max-width:782px){body.admin-bar .mainnav{top:46px}.brand{height:70px}.brand-logo,.brand-logo img{width:54px;height:54px}.site-title{font-size:23px}.footer-pro-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand-col{grid-column:1/-1}.footer-brand-logo{width:86px;height:68px}.footer-brand-logo img{width:86px;height:68px}}
@media(max-width:560px){.footer-pro-grid{grid-template-columns:1fr;gap:26px;padding-top:32px}.footer-brand-col{grid-column:auto}.footer-pro-bottom{flex-direction:column;align-items:flex-start}.footer-decor-one{left:5%;top:18px}.footer-decor-two{right:15%;bottom:25px}.footer-decor-three{right:7%;top:22px}}


/* V4.9.20: like + share actions on document metadata */
.doc-social-actions{margin-left:auto;display:flex;align-items:center;gap:6px;flex:0 0 auto}
.doc-social-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px;padding:5px 10px;border:1px solid #dfe4e7;border-radius:6px;background:#fff;color:#58636a;font:inherit;font-size:12px;line-height:1;cursor:pointer;transition:all .18s ease;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.doc-social-btn:hover{border-color:#aeb8bd;background:#f8fafb;color:#26343b;transform:translateY(-1px)}
.doc-social-icon{font-size:17px;line-height:1;font-weight:400}
.doc-social-btn b{font-size:11px;font-weight:600;color:#89939a;min-width:10px}
.doc-like-btn.is-liked{border-color:#f0a7b2;background:#fff5f6;color:#d93d55}
.doc-like-btn.is-liked .doc-social-icon{font-size:18px}
.doc-like-btn.is-liked b{color:#d93d55}
.doc-share-btn:hover{border-color:#9fc7df;background:#f4faff;color:#176fa4}
@media(max-width:680px){.doc-social-actions{width:100%;margin-left:0;justify-content:flex-end;padding-top:4px;border-top:1px solid #eef1f2}.doc-social-btn{min-height:34px;padding:6px 12px}}


/* V4.9.21: polished social actions */
.doc-social-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex:0 0 auto}
.doc-social-btn{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:6px 12px;border:1px solid #e1e7eb;border-radius:9px;background:linear-gradient(180deg,#fff,#f8fafb);color:#52606a;font:inherit;font-size:12px;font-weight:600;line-height:1;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease;box-shadow:0 2px 7px rgba(24,42,52,.05)}
.doc-social-btn:hover{transform:translateY(-1px);border-color:#b8c8d1;box-shadow:0 5px 14px rgba(24,42,52,.10);color:#1e3a48}
.doc-social-icon{width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;font-size:17px;line-height:1}
.doc-social-btn b{min-width:16px;height:19px;padding:2px 5px;border-radius:10px;background:#eef2f4;color:#77838b;font-size:10px;font-weight:700;text-align:center}
.doc-like-btn.is-liked{border-color:#f1a5b3;background:linear-gradient(180deg,#fff7f8,#fff0f2);color:#d63350;box-shadow:0 3px 12px rgba(214,51,80,.10)}
.doc-like-btn.is-liked b{background:#ffe0e6;color:#d63350}.doc-like-btn.is-liked .doc-social-icon{animation:ganm-heart-pop .35s ease}
.doc-share-btn:hover{border-color:#9ecbe0;background:linear-gradient(180deg,#fff,#f0f9fd);color:#176fa4}.doc-share-btn b{background:#edf6fa;color:#4d8099}
.doc-social-btn.is-loading{opacity:.65;pointer-events:none}.doc-social-btn.is-loading .doc-social-icon{animation:ganm-spin .7s linear infinite}
.ganm-social-toast{position:fixed;left:50%;bottom:28px;z-index:99999;transform:translate(-50%,15px);opacity:0;pointer-events:none;padding:10px 16px;border-radius:999px;background:#26343b;color:#fff;font-size:13px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.18);transition:opacity .2s,transform .2s}.ganm-social-toast.show{opacity:1;transform:translate(-50%,0)}.ganm-social-toast.is-error{background:#b42335}
@keyframes ganm-heart-pop{0%{transform:scale(.7)}60%{transform:scale(1.25)}100%{transform:scale(1)}}@keyframes ganm-spin{to{transform:rotate(360deg)}}
@media(max-width:680px){.doc-social-actions{width:100%;margin-left:0;justify-content:flex-end;padding-top:7px;border-top:1px solid #eef1f2}.doc-social-btn{min-height:35px;padding:6px 11px}.doc-social-label{display:inline}.ganm-social-toast{bottom:18px;max-width:calc(100vw - 30px);white-space:nowrap}}

/* V4.9.22: cute preschool social icons in footer */
.footer-social-heading{margin-top:10px!important;margin-bottom:10px!important}
.footer-title-dot-social{background:#ff78a7;box-shadow:14px 0 0 #ffd45c,28px 0 0 #65d6ed!important}
.footer-social-cute{display:flex;align-items:center;gap:9px;margin-top:1px}
.footer-social-cute-btn{width:38px;height:38px;border-radius:13px;display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none!important;border:2px solid rgba(255,255,255,.95);box-shadow:0 4px 10px rgba(45,74,89,.10);transition:transform .18s ease,box-shadow .18s ease}
.footer-social-cute-btn svg{width:19px;height:19px;fill:#fff;display:block}
.footer-social-cute-btn.facebook{background:#5b8def}.footer-social-cute-btn.youtube{background:#ff6b70}.footer-social-cute-btn.tiktok{background:#35c7cf}
.footer-social-cute-btn:hover{transform:translateY(-3px) rotate(-2deg);box-shadow:0 8px 16px rgba(45,74,89,.16)}
.footer-social-cute-btn:nth-child(2):hover{transform:translateY(-3px) rotate(2deg)}
.footer-social-cute-btn:nth-child(3):hover{transform:translateY(-3px) rotate(-2deg)}
@media(max-width:560px){.footer-social-cute-btn{width:36px;height:36px;border-radius:12px}.footer-social-cute-btn svg{width:18px;height:18px}}


/* Video Dạy Giỏi */
.ganm-video-page{padding-bottom:42px}.ganm-video-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#fff8d9,#e9fbff 55%,#f6efff);border:1px solid #e4e7ec;border-radius:22px;padding:26px 28px;margin-bottom:22px;box-shadow:0 10px 28px rgba(37,99,235,.07)}
.ganm-video-kicker{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;letter-spacing:.06em;color:#1677b7;background:#fff;border-radius:999px;padding:7px 11px}.ganm-video-hero h1{margin:9px 0 5px;font-size:30px}.ganm-video-hero p{margin:0;color:#64748b}.ganm-video-facebook{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:11px 16px;border-radius:12px;background:#1877f2;color:#fff!important;font-weight:700;text-decoration:none;box-shadow:0 6px 14px rgba(24,119,242,.22)}
.ganm-video-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:20px}.ganm-video-player-card,.ganm-video-list-card{background:#fff;border:1px solid #e4e7ec;border-radius:18px;box-shadow:0 8px 24px rgba(15,23,42,.06);overflow:hidden}.ganm-video-player{aspect-ratio:16/9;background:#0f172a}.ganm-video-player iframe{width:100%;height:100%;display:block}.ganm-video-current{padding:15px 17px;display:flex;align-items:center;gap:12px}.ganm-video-current span{font-size:12px;font-weight:800;color:#0ea5a4;background:#e7fffb;padding:6px 9px;border-radius:999px}.ganm-video-current strong{font-size:16px;line-height:1.4}.ganm-video-list-head{padding:16px 17px;border-bottom:1px solid #eef0f3;display:flex;justify-content:space-between;align-items:center}.ganm-video-list-head span{font-size:12px;color:#64748b}.ganm-video-list{max-height:520px;overflow:auto}.ganm-video-item{width:100%;display:grid;grid-template-columns:108px minmax(0,1fr);gap:11px;align-items:center;text-align:left;background:#fff;border:0;border-bottom:1px solid #f0f2f5;padding:11px;cursor:pointer}.ganm-video-item:hover{background:#f8fcff}.ganm-video-item.is-active{background:#effaff}.ganm-video-thumb{aspect-ratio:16/9;border-radius:10px;background:linear-gradient(135deg,#dff7ff,#fff0c7);display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;overflow:hidden}.ganm-video-thumb span{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.92);color:#1877f2;box-shadow:0 4px 12px rgba(0,0,0,.12)}.ganm-video-item-title{font-size:14px;font-weight:650;line-height:1.4;color:#243447;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ganm-video-empty{text-align:center;padding:65px 20px;background:#fff;border:1px solid #e4e7ec;border-radius:20px}.ganm-video-empty-icon{font-size:52px}.ganm-video-empty h2{margin:10px 0 7px}.ganm-video-empty p{color:#64748b;margin-bottom:20px}
@media(max-width:900px){.ganm-video-layout{grid-template-columns:1fr}.ganm-video-list{max-height:420px}}@media(max-width:640px){.ganm-video-hero{display:block;padding:20px}.ganm-video-hero h1{font-size:25px}.ganm-video-facebook{margin-top:15px}.ganm-video-item{grid-template-columns:92px minmax(0,1fr)}}


/* ============================================================
 * V4.9.29 — Xem nhiều trong tháng: stacked cards
 * ============================================================ */
.monthly-popular{
  display:grid;
  grid-template-columns:168px minmax(0,1fr);
  gap:12px;
  margin:0 0 26px;
  min-width:0;
}
.monthly-popular-label{
  min-height:198px;
  padding:20px 15px;
  border-radius:12px;
  background:linear-gradient(145deg,#ffd94f 0%,#ffc83d 100%);
  color:#684900;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  box-shadow:0 5px 14px rgba(191,145,0,.15);
  position:relative;
  z-index:20;
}
.monthly-popular-label strong{font-size:19px;line-height:1.18}
.monthly-popular-label small{margin-top:8px;font-size:11px;color:#876300}
.monthly-popular-icon{
  width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:9px;background:#fff4b5;color:#efa800;font-size:21px;
  box-shadow:0 3px 8px rgba(156,113,0,.10);
}
.monthly-popular-main{position:relative;display:flex;align-items:stretch;min-width:0;overflow:visible}
.monthly-popular-viewport{
  min-width:0;overflow:hidden;scroll-behavior:smooth;flex:1;
  padding:3px 8px 5px 2px;
}
.monthly-popular-track{
  display:flex;align-items:stretch;height:100%;min-width:max-content;
  padding-right:18px;
}
.monthly-card{
  flex:0 0 178px;min-width:178px;min-height:198px;
  border:1px solid rgba(70,70,70,.08);border-radius:12px;
  overflow:hidden;position:relative;
  box-shadow:0 5px 13px rgba(0,0,0,.075);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
  margin-left:-32px;
}
.monthly-card:first-child{margin-left:0}
.monthly-card:hover{
  transform:translateY(-7px) rotate(0deg) scale(1.015);
  box-shadow:0 12px 24px rgba(0,0,0,.14);
  z-index:30!important;
  filter:saturate(1.03);
}
.monthly-card:nth-child(1){z-index:6;transform:rotate(-1.4deg)}
.monthly-card:nth-child(2){z-index:7;transform:rotate(1.0deg)}
.monthly-card:nth-child(3){z-index:8;transform:rotate(-.8deg)}
.monthly-card:nth-child(4){z-index:9;transform:rotate(1.2deg)}
.monthly-card:nth-child(5){z-index:10;transform:rotate(-1deg)}
.monthly-card:nth-child(6){z-index:11;transform:rotate(.7deg)}
.monthly-card-link{height:100%;display:flex;flex-direction:column;padding:14px 13px 11px;color:inherit}
.monthly-card-pink{background:#ffe7ee}
.monthly-card-blue{background:#e2f1ff}
.monthly-card-green{background:#e3f7ec}
.monthly-card-yellow{background:#fff3cc}
.monthly-card-purple{background:#eee8ff}
.monthly-card-orange{background:#ffeadb}
.monthly-card-date{display:flex;align-items:baseline;gap:6px;color:#88777d}
.monthly-card-date span{font-size:27px;font-weight:800;line-height:1}
.monthly-card-date small{font-size:9px;font-weight:800}
.monthly-card h3{
  margin:10px 0 8px;font-size:13px;line-height:1.42;font-weight:750;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
  min-height:55px;color:#374151;
}
.monthly-card-meta{display:flex;gap:5px;align-items:center;justify-content:space-between;margin-top:auto}
.monthly-card-cat{max-width:108px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;color:#777}
.monthly-card-views{font-size:10px;color:#888;white-space:nowrap}
.monthly-card-author{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:8px;border-top:1px solid rgba(80,80,80,.10);font-size:10px;color:#707070}
.monthly-card-author img{width:27px;height:27px;object-fit:contain;border-radius:50%;background:#fff;padding:2px;flex:0 0 27px}
.monthly-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:40;
  width:32px;height:32px;border:1px solid #ddd;border-radius:50%;
  background:#fff;box-shadow:0 3px 9px rgba(0,0,0,.14);
  color:#555;font-size:24px;line-height:27px;cursor:pointer;padding:0;
}
.monthly-arrow:hover:not(:disabled){background:#f7f7f7;transform:translateY(-50%) scale(1.06)}
.monthly-arrow:disabled{opacity:.35;cursor:default}
.monthly-prev{left:-13px}.monthly-next{right:-13px}

@media(max-width:900px){
  .monthly-card{flex-basis:168px;min-width:168px;margin-left:-26px}
}
@media(max-width:700px){
  .monthly-popular{grid-template-columns:1fr;gap:8px}
  .monthly-popular-label{min-height:0;padding:12px 14px;flex-direction:row;justify-content:flex-start;gap:9px;text-align:left}
  .monthly-popular-label strong{font-size:17px}
  .monthly-popular-label small{margin:0 0 0 auto}
  .monthly-popular-icon{width:32px;height:32px;margin:0;font-size:17px;flex:0 0 32px}
  .monthly-popular-viewport{padding:3px 2px 5px;overflow-x:auto}
  .monthly-card{flex-basis:154px;min-width:154px;min-height:184px;margin-left:0;transform:none!important}
  .monthly-card:hover{transform:translateY(-4px) scale(1.01)!important}
  .monthly-prev{left:2px}.monthly-next{right:2px}
  .monthly-arrow{width:28px;height:28px;font-size:21px;line-height:24px}
}


/* V4.9.36 - Khung xem trước cao theo dáng A4, vẫn cuộn riêng bên trong */
.doc-preview-shell{position:relative;max-width:900px;margin-left:auto;margin-right:auto}
.doc-preview{height:min(88vh,1080px);min-height:760px;overflow:hidden!important;background:#fff}
.doc-preview .ganm-pdf-viewer{height:100%!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable;padding:18px 14px;box-sizing:border-box}
.doc-preview .ganm-pdf-pages{min-height:100%;padding-bottom:16px}
@media(max-width:900px){.doc-preview-shell{max-width:760px}.doc-preview{height:min(86vh,940px);min-height:680px}}
@media(max-width:680px){.doc-preview-shell{max-width:100%}.doc-preview{height:76vh;min-height:560px}.doc-preview .ganm-pdf-viewer{padding:9px 7px}}

/* V4.9.36: multiple Blogger/WordPress files in one article */
.ganm-multi-files{margin:10px 0 22px;padding:16px;border:1px solid #e1e5e8;border-radius:12px;background:#fbfcfd}.ganm-multi-file-list{display:grid;gap:9px}.ganm-multi-file-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid #e5e8eb;border-radius:10px;background:#fff}.ganm-multi-file-name{display:flex;align-items:center;gap:9px;min-width:0}.ganm-multi-file-name>span{display:flex;flex-direction:column;min-width:0}.ganm-multi-file-name b{font-size:14px;color:#28323a;overflow-wrap:anywhere}.ganm-multi-file-name small{font-size:11px;color:#8a959d;margin-top:2px}.ganm-multi-file-actions{display:flex;gap:7px;flex:0 0 auto}.ganm-multi-file-actions .btn{padding:8px 12px;border-radius:7px;font-size:13px;white-space:nowrap}.ganm-preview-link{background:#f3f7ff;border:1px solid #bfd1f2;color:#2467b2}.ganm-multi-file-actions .ganm-download{min-width:0;background:#168c55;border-color:#168c55;color:#fff}@media(max-width:680px){.ganm-multi-file-item{align-items:flex-start;flex-direction:column}.ganm-multi-file-actions{width:100%}.ganm-multi-file-actions .btn{flex:1;text-align:center}}


/* V4.9.39: keep the original spacious one-file download + coffee layout.
   Only multi-file action buttons stay compact. */
.ganm-multi-file-actions .btn{padding:7px 10px;font-size:12px;border-radius:7px}
.ganm-multi-support{display:flex;justify-content:flex-end;margin-top:12px}
.doc-coffee-card-compact{width:min(100%,390px);padding:8px 10px}
.doc-coffee-card-compact img{width:66px;height:66px;flex-basis:66px}
@media(max-width:680px){.ganm-multi-support{justify-content:stretch}.doc-coffee-card-compact{width:100%}}


/* V4.9.40 — Màu nhận diện lứa tuổi/danh mục */
.ganm-age-nha-tre{--ganm-age:#38a9e8;--ganm-age-soft:#edf8ff;--ganm-age-text:#1477aa}
.ganm-age-mam{--ganm-age:#52b86d;--ganm-age-soft:#effaf1;--ganm-age-text:#287a3b}
.ganm-age-choi{--ganm-age:#f2ad32;--ganm-age-soft:#fff8e8;--ganm-age-text:#a56800}
.ganm-age-la{--ganm-age:#e978a8;--ganm-age-soft:#fff0f6;--ganm-age-text:#a43b68}
.ganm-age-sang-kien{--ganm-age:#8b73d6;--ganm-age-soft:#f4f0ff;--ganm-age-text:#5942a5}
.ganm-age-video{--ganm-age:#ef685f;--ganm-age-soft:#fff1ef;--ganm-age-text:#b43e37}
.ganm-age-chung{--ganm-age:#9aa5ad;--ganm-age-soft:#f6f8f9;--ganm-age-text:#68747c}

.doc-card[class*="ganm-age-"]{position:relative;border-radius:10px;padding:9px 9px 11px;border:1px solid color-mix(in srgb,var(--ganm-age) 28%,#e3e7ea);border-top:4px solid var(--ganm-age);background:linear-gradient(180deg,var(--ganm-age-soft) 0,rgba(255,255,255,.98) 48%);transition:transform .18s ease,box-shadow .18s ease}
.doc-card[class*="ganm-age-"]:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(35,45,55,.10)}
.doc-card[class*="ganm-age-"] .doc-title a:hover{color:var(--ganm-age-text)}
.post-list-card[class*="ganm-age-"]{border:1px solid #e3e7ea;border-left:5px solid var(--ganm-age);border-radius:10px;padding:12px;background:linear-gradient(90deg,var(--ganm-age-soft),#fff 32%)}
.post-list-card[class*="ganm-age-"] .post-home-more{color:var(--ganm-age-text)}
.monthly-card[class*="ganm-age-"]{background:linear-gradient(160deg,var(--ganm-age-soft),color-mix(in srgb,var(--ganm-age) 18%,white))!important;border-top:5px solid var(--ganm-age)}
.monthly-card[class*="ganm-age-"] .monthly-card-cat{color:var(--ganm-age-text)}
.ganm-single-age{margin:-8px 0 13px}
.ganm-age-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 11px;font-size:12px;line-height:1;font-weight:800;border:1px solid color-mix(in srgb,var(--ganm-age) 40%,white);background:var(--ganm-age-soft);color:var(--ganm-age-text)}
@media(max-width:720px){.doc-card[class*="ganm-age-"]{padding:7px 7px 9px}.post-list-card[class*="ganm-age-"]{border-left-width:4px}}


/* V4.9.43: trả thanh menu về kiểu cũ, giữ màu nhận diện ở card/bộ lọc. */
.mainnav{background:linear-gradient(90deg,#ff6b5e 0%,#f45145 48%,#ff7a59 100%);border-bottom-color:#ffd35a}
.menu>li{flex:initial;justify-content:initial}
.menu>li>a{width:auto;justify-content:flex-start;font-weight:400;transition:background .18s ease;padding-left:18px;padding-right:18px}
.menu>li:hover>a,.menu>li.current-menu-item>a,.menu>li.current-menu-ancestor>a{background:var(--red2);filter:none;box-shadow:none}

.latest-section-heading{margin-bottom:8px}

.latest-heading-actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.latest-filter-toggle{appearance:none;border:1px solid #dfe4e7;background:#fff;color:#46525a;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:0 2px 7px rgba(35,45,55,.06);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,color .16s ease}
.latest-filter-toggle:hover,.latest-filter-toggle.is-open{color:#ef493d;border-color:#f2aaa4;box-shadow:0 4px 12px rgba(239,73,61,.12);transform:translateY(-1px)}
.latest-filter-toggle span{display:inline-block;margin-left:3px;transition:transform .16s ease}.latest-filter-toggle.is-open span{transform:rotate(180deg)}
.latest-filter-bar[hidden]{display:none!important}
.latest-filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:8px 0 10px;border-bottom:1px solid #e8ecef}
.latest-filter-btn{appearance:none;border:1px solid #dfe4e7;background:#fff;color:#566168;border-radius:999px;padding:7px 14px;font-size:12px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease,border-color .16s ease}
.latest-filter-btn[class*="ganm-age-"]{border-color:color-mix(in srgb,var(--ganm-age) 46%,white);color:var(--ganm-age-text);background:var(--ganm-age-soft)}
.latest-filter-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(35,45,55,.08)}
.latest-filter-btn.is-active{background:#263238;color:#fff;border-color:#263238;box-shadow:0 4px 12px rgba(38,50,56,.16)}
.latest-filter-btn[class*="ganm-age-"].is-active{background:var(--ganm-age);border-color:var(--ganm-age);color:#fff}
.latest-filter-btn:disabled{cursor:wait;opacity:.65;transform:none}
.latest-filter-status{margin-left:auto;color:#879198;font-size:11px;min-width:44px;text-align:right}
#ganm-latest-grid{transition:opacity .18s ease}
#ganm-latest-grid.is-loading{opacity:.42;pointer-events:none}
@media(max-width:720px){
  .menu>li{flex:0 0 auto}.menu>li>a{width:auto}
  .latest-heading-actions{gap:6px}.latest-view-all{white-space:nowrap}.latest-filter-toggle{padding:6px 9px;font-size:11px}
  .latest-filter-bar{gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .latest-filter-btn{flex:0 0 auto;padding:7px 12px}
  .latest-filter-status{display:none}
}


/* V4.9.45: Mobile - vuốt ngang vẫn giữ thao tác chạm mở link + vuốt dọc trang */
@media(max-width:720px){
  .mainnav .nav-inner{
    display:block;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    touch-action:pan-x pan-y;
    scrollbar-width:none;
  }
  .mainnav .nav-inner::-webkit-scrollbar{display:none;width:0;height:0}
  .mainnav .menu{
    display:flex;
    width:max-content;
    min-width:100%;
    flex:0 0 max-content;
    justify-content:flex-start;
    flex-wrap:nowrap;
  }
  .mainnav .menu>li{flex:0 0 auto}
  .mainnav .menu>li>a{padding:0 20px;min-height:50px;white-space:nowrap;user-select:none;-webkit-user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:rgba(255,255,255,.18)}

  .latest-section-heading{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
  .latest-section-heading h2{flex:1 1 100%;white-space:nowrap;line-height:1.2}
  .latest-heading-actions{margin-left:0;width:100%;justify-content:flex-end;gap:7px}

  .latest-filter-bar{
    display:flex;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:contain;
    touch-action:pan-x pan-y;
    scrollbar-width:none;
    padding:8px 2px 11px;
  }
  .latest-filter-bar::-webkit-scrollbar{display:none;width:0;height:0}
  .latest-filter-btn{flex:0 0 auto;white-space:nowrap;user-select:none;-webkit-user-select:none;touch-action:manipulation}
}


/* V4.9.46 — Các vị trí quảng cáo/banner responsive */
.ganm-ad-slot{width:100%;max-width:100%;margin:18px auto;overflow:hidden;text-align:center;clear:both}
.ganm-ad-slot:empty{display:none!important;margin:0!important}
.ganm-ad-slot ins.adsbygoogle{display:block;max-width:100%}
.ganm-ad-home_top{margin-top:0;margin-bottom:18px}
.ganm-ad-grid-wide{grid-column:1 / -1;margin:10px 0 18px;min-height:0}
.ganm-home-bottom-ad-wrap{padding-top:8px;padding-bottom:10px}
.ganm-home-bottom-ad-wrap .ganm-ad-slot{margin:12px auto 20px}
.ganm-ad-single_top{margin:16px auto 20px}
.ganm-ad-single_bottom{margin:22px auto}
@media(max-width:720px){
  .ganm-ad-slot{margin:12px auto}
  .ganm-ad-home_top{margin-top:0;margin-bottom:12px}
  .ganm-ad-grid-wide{margin:7px 0 14px}
  .ganm-home-bottom-ad-wrap{padding-left:12px;padding-right:12px}
  .ganm-ad-slot iframe,.ganm-ad-slot img{max-width:100%;height:auto}
}


/* V4.9.48 — YouTube card nhỏ gọn + mở lightbox khi phát */
.ganm-youtube-card{margin:26px auto 28px;max-width:620px;text-align:left}
.ganm-youtube-card.is-portrait{width:min(100%,310px);max-width:310px}
.ganm-youtube-kicker{display:inline-flex;align-items:center;gap:7px;margin:0 0 9px;padding:6px 11px;border-radius:999px;background:#fff4ef;border:1px solid #ffd8cb;color:#d84b35;font-size:13px;font-weight:800;line-height:1}
.ganm-youtube-poster{position:relative;display:block;width:100%;padding:0;border:0;border-radius:16px;overflow:hidden;background:#101820;box-shadow:0 8px 24px rgba(15,23,42,.13);cursor:pointer;isolation:isolate}
.ganm-youtube-card.is-landscape .ganm-youtube-poster{aspect-ratio:16/9}
.ganm-youtube-card.is-portrait .ganm-youtube-poster{aspect-ratio:9/16}
.ganm-youtube-poster>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.01);transition:transform .3s ease,filter .3s ease}
.ganm-youtube-card.is-portrait .ganm-youtube-poster>img{object-position:center center}
.ganm-youtube-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 44%,rgba(0,0,0,.48) 100%);z-index:1}
.ganm-youtube-play{position:absolute;left:50%;top:50%;z-index:2;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.96);box-shadow:0 7px 24px rgba(0,0,0,.26);transition:transform .2s ease}
.ganm-youtube-play span{display:block;margin-left:5px;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:16px solid #ff4d43}
.ganm-youtube-watch{position:absolute;z-index:2;left:13px;bottom:12px;padding:6px 10px;border-radius:999px;background:rgba(13,25,36,.82);color:#fff;font-size:12px;font-weight:800;backdrop-filter:blur(5px)}
.ganm-youtube-poster:hover>img{transform:scale(1.035);filter:saturate(1.05)}
.ganm-youtube-poster:hover .ganm-youtube-play{transform:scale(1.06)}
body.ganm-video-modal-open{overflow:hidden}
.ganm-youtube-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:28px;background:rgba(13,20,28,.82);backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}
.ganm-youtube-modal.is-open{opacity:1;visibility:visible}
.ganm-youtube-modal-dialog{position:relative;width:min(94vw,1120px);max-height:94vh;display:flex;align-items:center;justify-content:center}
.ganm-youtube-modal-dialog.is-portrait{width:min(92vw,430px)}
.ganm-youtube-modal-player{position:relative;width:100%;overflow:hidden;border-radius:18px;background:#000;box-shadow:0 20px 60px rgba(0,0,0,.42)}
.ganm-youtube-modal-dialog.is-landscape .ganm-youtube-modal-player{aspect-ratio:16/9}
.ganm-youtube-modal-dialog.is-portrait .ganm-youtube-modal-player{aspect-ratio:9/16;max-height:88vh;width:auto;max-width:92vw}
.ganm-youtube-modal-player iframe{display:block;width:100%;height:100%;border:0;background:#000}
.ganm-youtube-modal-close{position:absolute;z-index:3;right:-14px;top:-14px;width:42px;height:42px;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#263238;font-size:28px;line-height:1;box-shadow:0 6px 22px rgba(0,0,0,.28);cursor:pointer}
.ganm-youtube-modal-close:hover{transform:scale(1.04)}
@media(max-width:600px){
  .ganm-youtube-card{margin:20px auto 23px;width:100%;max-width:100%}
  .ganm-youtube-card.is-portrait{width:min(78vw,290px);max-width:290px}
  .ganm-youtube-poster{border-radius:14px}
  .ganm-youtube-play{width:58px;height:58px;margin:-29px 0 0 -29px}
  .ganm-youtube-modal{padding:10px}
  .ganm-youtube-modal-dialog{width:96vw;max-height:96vh}
  .ganm-youtube-modal-dialog.is-portrait{width:min(94vw,430px)}
  .ganm-youtube-modal-dialog.is-portrait .ganm-youtube-modal-player{max-height:90vh;max-width:94vw}
  .ganm-youtube-modal-player{border-radius:14px}
  .ganm-youtube-modal-close{right:4px;top:4px;width:38px;height:38px;background:rgba(255,255,255,.94);font-size:25px}
}

/* ===== V4.9.49: Giáo Án VIP ===== */
.vip-page{background:#fffaf5}.vip-page>.container{padding-top:26px;padding-bottom:48px}.vip-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:28px;align-items:stretch;background:linear-gradient(135deg,#fff3e8,#fffdf9 54%,#f1fff7);border:1px solid #ffe0c7;border-radius:24px;padding:38px;margin-bottom:30px;box-shadow:0 14px 40px rgba(91,63,37,.08)}.vip-kicker,.vip-mini-label{display:inline-block;font-weight:800;letter-spacing:.06em;color:#ef5b4f;font-size:12px}.vip-hero h1{font-size:38px;line-height:1.12;margin:10px 0 14px;color:#1f2937}.vip-hero-copy>p{font-size:17px;line-height:1.7;color:#5d6470;max-width:760px}.vip-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.vip-primary-btn,.vip-secondary-btn,.vip-view-btn,.vip-download-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;border-radius:12px;font-weight:800;transition:.18s ease;cursor:pointer}.vip-primary-btn{background:linear-gradient(135deg,#ff6b5e,#f45145);color:#fff!important;padding:13px 20px;border:0;box-shadow:0 8px 18px rgba(244,81,69,.23)}.vip-primary-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(244,81,69,.3)}.vip-secondary-btn{background:#fff;color:#d94a40!important;border:1px solid #ffc7c1;padding:12px 18px}.vip-hero-card{background:#fff;border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:6px;border:1px solid #f3e4d6}.vip-hero-card strong{font-size:16px;color:#263238}.vip-hero-card span{color:#687078;line-height:1.5;font-size:14px}.vip-hero-card hr{width:100%;border:0;border-top:1px dashed #eadccd;margin:8px 0}.vip-hero-emoji{font-size:38px;margin-bottom:4px}.vip-section{margin:30px 0 46px}.vip-section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:18px}.vip-section-head h2,.vip-custom-info h2{font-size:28px;margin:5px 0}.vip-section-head p{max-width:430px;color:#6b7280;margin:0;text-align:right}.vip-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.vip-product-card{background:#fff;border:1px solid #eee5dd;border-radius:18px;overflow:hidden;box-shadow:0 7px 22px rgba(47,39,32,.06);transition:.18s}.vip-product-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(47,39,32,.1)}.vip-product-thumb{position:relative;display:block;aspect-ratio:4/3;background:#f6f3ef;overflow:hidden}.vip-product-thumb img{width:100%;height:100%;object-fit:cover;display:block}.vip-product-placeholder{height:100%;min-height:220px;display:flex;align-items:center;justify-content:center;font-size:70px;background:linear-gradient(135deg,#fff0e5,#f1fff6)}.vip-product-badge,.vip-detail-badge{position:absolute;left:12px;top:12px;background:rgba(31,41,55,.88);color:#fff;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.vip-product-body{padding:16px}.vip-product-body h3{font-size:16px;line-height:1.45;margin:0 0 9px}.vip-product-body h3 a{color:#20262e;text-decoration:none}.vip-product-meta{color:#6c737c;font-size:13px;margin-bottom:13px}.vip-product-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center}.vip-price{color:#ef4f43;font-size:20px}.vip-view-btn{padding:8px 11px;background:#fff3f1;color:#d94a40!important;font-size:13px}.vip-empty{grid-column:1/-1;text-align:center;padding:46px;border:1px dashed #e7d8ca;border-radius:18px;background:#fff}.vip-empty>div{font-size:48px}.vip-custom-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;background:#fff;border:1px solid #e7e1dc;border-radius:22px;padding:30px;box-shadow:0 10px 30px rgba(47,39,32,.06)}.vip-custom-info>p{color:#666f79;line-height:1.7}.vip-contact-cards{display:grid;gap:9px;margin-top:20px}.vip-contact-cards>div{display:flex;gap:10px;align-items:center;background:#fff8f3;border:1px solid #ffdfcb;border-radius:12px;padding:10px 12px}.vip-contact-cards span{font-size:20px}.vip-contact-cards p{display:flex;flex-direction:column;margin:0;min-width:0}.vip-contact-cards small{color:#7c8188}.vip-contact-cards strong{word-break:break-word}.vip-custom-form,.vip-checkout form{display:grid;gap:12px}.vip-custom-form label,.vip-checkout label{display:grid;gap:6px;font-weight:700;color:#39414a;font-size:14px}.vip-custom-form input,.vip-custom-form select,.vip-custom-form textarea,.vip-checkout input,.vip-checkout textarea{width:100%;box-sizing:border-box;border:1px solid #d9dde2;border-radius:10px;padding:11px 12px;background:#fff;font:inherit}.vip-custom-form input:focus,.vip-custom-form textarea:focus,.vip-checkout input:focus,.vip-checkout textarea:focus{outline:2px solid #ffd1cc;border-color:#f66}.vip-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vip-submit-btn{width:100%;font:inherit}.vip-custom-form>small,.vip-checkout form>small{display:block;text-align:center;color:#737981;line-height:1.5}.vip-order-panel{background:#fff;border:1px solid #dfe7df;border-radius:20px;padding:24px;margin:0 0 30px;box-shadow:0 10px 28px rgba(28,74,46,.07)}.vip-order-head{display:flex;gap:13px;align-items:flex-start}.vip-order-icon{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#dff7e7;color:#168447;font-size:22px;font-weight:900}.vip-order-head h2{margin:0 0 5px;font-size:23px}.vip-order-head p{margin:0;color:#687078}.vip-status{display:inline-flex;margin:18px 0 13px;padding:8px 12px;border-radius:999px;font-weight:800}.vip-status-pending{background:#fff3cd;color:#835d00}.vip-status-paid{background:#def7e8;color:#157347}.vip-status-inquiry{background:#e8f1ff;color:#245b9e}.vip-status-cancelled{background:#eee;color:#555}.vip-summary{display:grid;grid-template-columns:1fr auto;gap:14px;padding:14px 0;border-bottom:1px solid #ececec}.vip-summary div{display:flex;flex-direction:column;gap:4px}.vip-summary span{font-size:12px;color:#747b83}.vip-summary strong{font-size:16px}.vip-payment{display:grid;grid-template-columns:1fr 220px;gap:22px;margin-top:10px;background:#fffaf4;border:1px solid #ffe0bd;padding:18px;border-radius:15px}.vip-payment-info h3{margin-top:0}.vip-payment-info p{display:flex;justify-content:space-between;gap:16px;border-bottom:1px dashed #edd7c1;padding:7px 0;margin:0}.vip-payment-info p span{color:#767d85}.vip-code{color:#d34e43}.vip-payment-info small{display:block;line-height:1.55;margin-top:12px;color:#686f77}.vip-qr{text-align:center}.vip-qr img{width:190px;max-width:100%;border-radius:12px;background:#fff;padding:5px;border:1px solid #eee}.vip-qr small{display:block;margin-top:5px;color:#6f767d}.vip-download-btn{background:#168447;color:#fff!important;padding:13px 18px;margin-top:8px}.vip-download-count{display:block;margin-top:8px;color:#697078}.vip-alert{padding:15px;border-radius:12px;margin-bottom:20px}.vip-alert-error{background:#ffe8e8;color:#9b2525}.vip-breadcrumb{font-size:13px;color:#7b8086;margin-bottom:18px}.vip-breadcrumb a{color:#d94f45}.vip-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:34px;background:#fff;border:1px solid #eee3da;border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(47,39,32,.06)}.vip-detail-media{position:relative;border-radius:16px;overflow:hidden;background:#f4f1ed;min-height:360px}.vip-detail-media img{width:100%;height:100%;max-height:520px;object-fit:cover;display:block}.vip-detail-buy h1{font-size:30px;line-height:1.25;margin:7px 0 12px}.vip-detail-tags{display:flex;flex-wrap:wrap;gap:8px}.vip-detail-tags span{background:#f5f6f7;border-radius:999px;padding:6px 9px;font-size:13px}.vip-big-price{font-size:34px;font-weight:900;color:#ef4f43;margin:18px 0}.vip-benefits{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:8px;color:#4f5862}.vip-demo-btn,.vip-buy-jump{margin-right:8px;margin-bottom:8px}.vip-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px;align-items:start;margin-top:28px}.vip-description,.vip-checkout{background:#fff;border:1px solid #eee5dd;border-radius:18px;padding:24px}.vip-description h2,.vip-checkout h2{margin-top:0}.vip-description{line-height:1.75}.vip-description img{max-width:100%;height:auto}.vip-checkout{position:sticky;top:18px}.vip-checkout>p{color:#69717b;line-height:1.55}.vip-checkout-total{display:flex;justify-content:space-between;align-items:center;background:#fff5f2;border-radius:11px;padding:12px}.vip-checkout-total strong{font-size:20px;color:#ef4f43}.vip-custom-mini{display:flex;justify-content:space-between;gap:18px;align-items:center;background:linear-gradient(135deg,#eefbf3,#fff7ef);border:1px solid #dceee2;border-radius:16px;padding:18px 22px;margin-top:24px}.vip-custom-mini>div{display:flex;flex-direction:column;gap:4px}.vip-custom-mini span{color:#687078}.vip-detail-badge{z-index:2}
@media(max-width:900px){.vip-hero,.vip-custom-wrap,.vip-detail,.vip-detail-layout{grid-template-columns:1fr}.vip-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vip-detail-layout{gap:18px}.vip-checkout{position:static}.vip-section-head{align-items:start}.vip-payment{grid-template-columns:1fr 180px}}
@media(max-width:600px){.vip-page>.container{padding-top:14px}.vip-hero{padding:22px 18px;border-radius:18px;gap:18px}.vip-hero h1{font-size:29px}.vip-hero-copy>p{font-size:15px}.vip-hero-actions>a{flex:1 1 100%}.vip-section-head{display:block}.vip-section-head p{text-align:left;margin-top:7px}.vip-product-grid{grid-template-columns:1fr 1fr;gap:10px}.vip-product-card{border-radius:13px}.vip-product-thumb{aspect-ratio:1/1}.vip-product-placeholder{min-height:145px;font-size:48px}.vip-product-body{padding:11px}.vip-product-body h3{font-size:14px}.vip-product-bottom{display:block}.vip-price{font-size:17px;display:block;margin-bottom:7px}.vip-view-btn{width:100%;box-sizing:border-box}.vip-product-badge{font-size:10px;left:7px;top:7px}.vip-custom-wrap{padding:19px;border-radius:17px}.vip-form-grid{grid-template-columns:1fr}.vip-payment{grid-template-columns:1fr}.vip-qr{order:-1}.vip-qr img{width:210px}.vip-summary{grid-template-columns:1fr}.vip-detail{padding:14px;border-radius:17px;gap:19px}.vip-detail-media{min-height:260px}.vip-detail-buy h1{font-size:25px}.vip-big-price{font-size:29px}.vip-description,.vip-checkout{padding:18px}.vip-custom-mini{display:block}.vip-custom-mini a{width:100%;box-sizing:border-box;margin-top:13px}.vip-order-panel{padding:18px}.vip-order-head h2{font-size:20px}}


/* ===== V4.9.51: sửa VIP + lọc theo khối ===== */
@media(min-width:721px){
  .mainnav .nav-inner{overflow:visible}
  .mainnav .menu{justify-content:center;min-width:0}
  .mainnav .menu>li>a{padding-left:18px;padding-right:18px}
}
.vip-khoi-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 20px;padding:12px;background:#fff;border:1px solid #eee2d8;border-radius:14px}
.vip-khoi-filter-label{font-weight:800;color:#454b52;margin-right:2px}
.vip-khoi-filter a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid #e1e5e8;border-radius:999px;background:#fff;color:#4b5560;font-size:13px;font-weight:700;transition:.15s ease}
.vip-khoi-filter a:hover,.vip-khoi-filter a.is-active{background:#263238;color:#fff;border-color:#263238}
.vip-khoi-chip{display:inline-flex;align-items:center;margin:0 0 10px;padding:5px 9px;border-radius:999px;background:#eef7ff;color:#1677a8;font-size:12px;font-weight:800}
.vip-detail-khoi{display:inline-flex!important;background:#eef7ff!important;color:#1677a8!important;font-weight:800}
@media(max-width:600px){
  .vip-khoi-filter{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:10px;margin-bottom:15px}
  .vip-khoi-filter::-webkit-scrollbar{display:none}
  .vip-khoi-filter-label,.vip-khoi-filter a{flex:0 0 auto;white-space:nowrap}
}

/* ===== V4.9.51: VIP hủy đơn + Zalo/Email + QR & thanh toán tự động ===== */
.vip-direct-contact{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.vip-zalo-btn,.vip-email-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 16px;border-radius:999px;text-decoration:none;font-weight:700}.vip-zalo-btn{background:#eaf6ff;border:1px solid #9fd3ff;color:#0878c9}.vip-email-btn{background:#fff4e8;border:1px solid #ffc78e;color:#a65300}.vip-direct-contact-archive{margin-top:16px}.vip-payment-tabs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 14px}.vip-payment-tabs span{padding:7px 11px;border-radius:999px;background:#fff6e8;border:1px solid #ffd49c;font-size:13px}.vip-auto-note{margin:12px 0;padding:11px 13px;border-radius:12px;background:#edf9f0;border:1px solid #b9e3c1;color:#27683a}.vip-cancel-form{margin-top:14px}.vip-cancel-btn{appearance:none;border:1px solid #e4a4a4;background:#fff;color:#a62b2b;border-radius:10px;padding:9px 14px;font-weight:700;cursor:pointer}.vip-cancel-btn:hover{background:#fff0f0}.vip-waiting-check{margin-top:12px;font-size:13px;color:#667085}.vip-qr img{display:block;max-width:240px;width:100%;height:auto;border-radius:14px;background:#fff;padding:8px;border:1px solid #eee}
@media(max-width:640px){.vip-direct-contact>a{flex:1 1 140px}.vip-payment-tabs{align-items:flex-start}.vip-payment-tabs strong{flex-basis:100%}.vip-qr img{max-width:220px;margin:auto}}

/* V4.9.52 - VIP multi-file + limited preview */
.vip-preview-section{margin-top:28px;background:#fff;border:1px solid #eee0d6;border-radius:20px;padding:22px;box-shadow:0 8px 24px rgba(47,39,32,.05)}
.vip-preview-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.vip-preview-head h2{margin:3px 0 5px;font-size:23px}.vip-preview-head p{margin:0;color:#6c747c;line-height:1.55}.vip-preview-lock{flex:0 0 auto;background:#fff2e9;color:#a34b1f;border:1px solid #ffd2b5;padding:8px 11px;border-radius:999px;font-weight:800;font-size:12px}
.vip-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.vip-preview-card{min-width:0;border:1px solid #e6e8eb;border-radius:15px;overflow:hidden;background:#f7f8f9}.vip-preview-title{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:11px 13px;background:#fff;border-bottom:1px solid #eceef0}.vip-preview-title strong{font-size:14px}.vip-preview-title span{font-size:11px;color:#7b838b;background:#f1f3f5;border-radius:999px;padding:4px 7px}
.vip-preview-crop{position:relative;height:860px;overflow:hidden;background:#dfe3e6}.vip-preview-crop iframe{width:100%;height:1180px;border:0;display:block;pointer-events:none;background:#fff}.vip-preview-fade{position:absolute;left:0;right:0;bottom:0;height:150px;display:flex;align-items:flex-end;justify-content:center;padding:22px;background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,.96) 58%,#fff 100%);pointer-events:none}.vip-preview-fade span{background:#28323b;color:#fff;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;box-shadow:0 4px 14px rgba(0,0,0,.16)}
.vip-delivery-files{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.vip-delivery-files .vip-download-btn{margin-top:0}
@media(max-width:900px){.vip-preview-grid{grid-template-columns:1fr}.vip-preview-crop{height:760px}}
@media(max-width:600px){.vip-preview-section{padding:14px;border-radius:16px}.vip-preview-head{display:block}.vip-preview-lock{display:inline-flex;margin-top:10px}.vip-preview-crop{height:620px}.vip-preview-crop iframe{height:920px}.vip-delivery-files{display:grid}.vip-delivery-files .vip-download-btn{width:100%;box-sizing:border-box;text-align:center}}

/* V4.9.56 - reliable VIP order cancellation */
.vip-cancel-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.vip-cancel-btn{appearance:none;border:1px solid #e6a6a0;background:#fff;color:#b9342b;border-radius:10px;padding:10px 15px;font-weight:800;cursor:pointer}.vip-cancel-btn:hover{background:#fff1ef}.vip-cancel-btn:disabled{opacity:.6;cursor:wait}.vip-cancel-message{font-size:13px;color:#6b7280}

/* V4.9.56 - cancel order uses normal POST fallback */
.vip-cancel-form .vip-cancel-btn{min-width:92px}
