/*
Theme Name: xemcv.com
Theme URI: https://dev.com.vn
Author: dev.com.vn
Author URI: https://dev.com.vn
Description: WordPress theme bám theo file HTML xemCV.com, dùng kèm xemCV.com Manager V9 và ACF Premium.
Version: 3.1.0
Text Domain: xemcv-com
*/
:root{--blue:#5a43ff;--blue-2:#244cff;--blue-dark:#111a3a;--teal:#0d6bff;--teal-2:#6b4dff;--text:#0f172a;--muted:#54657c;--line:#dbeafe;--soft:#f4f9ff;--card:#fff;--shadow:0 16px 40px rgba(28,78,150,.12);--radius:16px;--container:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:#fff;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}.container{width:min(var(--container),calc(100% - 48px));margin:0 auto}.site-header{height:72px;background:rgba(255,255,255,.96);border-bottom:1px solid #e6eefb;position:sticky;top:0;z-index:100;backdrop-filter:blur(10px)}.nav{height:72px;display:flex;align-items:center;justify-content:space-between;gap:32px}.logo{font-size:25px;font-weight:600;color:#08276b;letter-spacing:-.6px}.main-menu{display:flex;align-items:center;justify-content:center;gap:34px;flex:1;font-weight:500;color:#0d1830}.main-menu ul{margin:0;padding:0;list-style:none}.main-menu>ul{display:flex;gap:34px;align-items:center}.main-menu li{position:relative}.main-menu a{display:block;padding:8px 0;transition:.2s ease}.main-menu a:hover{color:var(--blue)}.main-menu .sub-menu{position:absolute;left:0;top:100%;min-width:220px;background:#fff;border:1px solid #dbeafe;border-radius:12px;box-shadow:var(--shadow);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease}.main-menu li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}.main-menu .sub-menu .sub-menu{left:100%;top:0}.main-menu .sub-menu a{padding:10px 12px;border-radius:8px}.main-menu .sub-menu a:hover{background:#edf5ff}.header-cta,.btn{border:0;cursor:pointer;font:inherit;font-weight:600;border-radius:9px;padding:13px 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s ease;white-space:nowrap;background:linear-gradient(135deg,#0f62ff,#0050dc);color:#fff;box-shadow:0 10px 22px rgba(11,94,232,.2)}.btn:hover,.header-cta:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(11,94,232,.22)}.hamburger{display:none;width:42px;height:42px;border:1px solid #d6e5ff;border-radius:10px;background:#fff;color:#0a2d63;font-size:21px}.site-main{min-height:60vh}.page-shell{padding:36px 0}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px}.content-card,.site-sidebar{background:#fff;border:1px solid #dce9fb;border-radius:16px;box-shadow:0 10px 22px rgba(35,91,160,.07);padding:24px}.entry-title{font-size:38px;line-height:1.15;letter-spacing:-1px;margin:0 0 14px;color:#062968}.entry-content{font-size:16px}.entry-content h2{font-size:26px;color:#062968}.post-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.post-card{background:#fff;border:1px solid #dce9fb;border-radius:14px;box-shadow:0 8px 20px rgba(35,91,160,.06);overflow:hidden}.post-card-thumb{aspect-ratio:4/3;background:#edf5ff}.post-card-thumb img{width:100%;height:100%;object-fit:cover}.post-card-body{padding:16px}.post-card h2,.post-card h3{font-size:18px;margin:0 0 8px}.post-card p{color:#3d4f65;margin:0 0 12px}.page-design-hero{border-radius:18px;padding:54px 32px;margin-bottom:28px;background:radial-gradient(circle at 14% 18%,rgba(30,118,255,.13),transparent 28%),linear-gradient(145deg,#f7fbff,#fff);border:1px solid #dbeafe;box-shadow:var(--shadow)}.page-design-hero h1{font-size:42px;line-height:1.12;margin:0 0 12px;letter-spacing:-1.4px}.page-design-hero p{font-size:18px;color:#24354d;max-width:720px}.design-blocks{display:grid;gap:22px}.design-block{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;background:#fff;border:1px solid #dce9fb;border-radius:16px;box-shadow:0 10px 22px rgba(35,91,160,.07);padding:22px}.design-block img{border-radius:14px}.site-footer{background:#061936;color:#dbe7ff;margin-top:24px;padding:44px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:40px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.12)}.footer-logo{color:#fff;font-size:31px;margin-bottom:8px;font-weight:600}.site-footer p{color:#b7c5dc;margin:0;max-width:310px}.site-footer h4{margin:0 0 13px;font-size:14px;color:#fff;font-weight:600;text-transform:uppercase}.site-footer a{display:block;color:#b7c5dc;margin:7px 0;font-size:14px}.site-footer a:hover{color:#fff}.socials{display:flex;gap:10px;margin-top:18px}.socials span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff;font-size:13px}.copyright{display:flex;justify-content:space-between;gap:20px;color:#8fa3c5;font-size:13px;padding-top:22px}.sidebar-widget{margin-bottom:18px}.sidebar-widget h3{font-size:18px;margin:0 0 10px;color:#062968}.sidebar-widget ul{margin:0;padding-left:18px}.sidebar-widget li{margin:6px 0}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:18px}.woocommerce ul.products li.product{width:auto!important;background:#fff;border:1px solid #dce9fb;border-radius:14px;box-shadow:0 10px 22px rgba(35,91,160,.07);padding:0!important;overflow:hidden}.woocommerce ul.products li.product a img{margin:0!important;aspect-ratio:4/3;object-fit:cover}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .button{margin-left:14px!important;margin-right:14px!important}.woocommerce ul.products li.product .button{margin-bottom:14px!important;background:var(--blue);color:#fff;border-radius:9px}
@media(max-width:1080px){.container{width:min(100% - 32px,var(--container))}.main-menu{gap:20px;font-size:14px}.content-layout,.design-block{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}.post-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{font-size:14px}.site-header,.nav{height:auto;min-height:64px}.nav{padding:10px 0}.logo{font-size:26px}.hamburger{display:grid;place-items:center}.main-menu{position:absolute;top:64px;left:16px;right:16px;background:#fff;border:1px solid #dbeafe;border-radius:14px;box-shadow:var(--shadow);padding:16px;display:none}.nav.open .main-menu{display:block}.main-menu>ul{display:grid;gap:4px}.main-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 0 14px;display:none}.main-menu li.open>.sub-menu,.main-menu li:hover>.sub-menu{display:block}.header-cta{display:none}.entry-title,.page-design-hero h1{font-size:30px}.page-design-hero{padding:32px 20px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:22px}.footer-grid>div:first-child{grid-column:1/-1}.copyright{flex-direction:column;align-items:flex-start}.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:12px}.post-list{grid-template-columns:repeat(2,1fr);gap:12px}.content-card,.site-sidebar{padding:16px}.site-sidebar{display:none}}

/* V4 fixes: Inter 400/500/600 only, WP menu selected from Appearance > Menus, better submenu/mobile spacing */
b,strong,.logo,.footer-logo,.entry-title,.site-footer h4,.sidebar-widget h3{font-weight:600}.main-menu{min-width:0}.main-menu>ul{flex-wrap:wrap}.main-menu .sub-menu{z-index:120}.main-menu .sub-menu li{width:100%}.main-menu .menu-item-has-children>a:after{content:"⌄";font-size:11px;margin-left:6px;color:#6b7a90}.main-menu .sub-menu .menu-item-has-children>a:after{content:"›";float:right}.hamburger{flex:0 0 42px}.nav{position:relative}.site-header .main-menu:empty{display:none}@media(max-width:760px){.main-menu{max-height:calc(100vh - 88px);overflow:auto}.main-menu>ul{display:grid!important;grid-template-columns:1fr}.main-menu a{padding:10px 8px}.main-menu .sub-menu{margin:2px 0 8px 10px;border-left:2px solid #dbeafe}.main-menu .sub-menu .sub-menu{margin-left:10px}.main-menu li:hover>.sub-menu{display:none}.main-menu li.open>.sub-menu{display:block}.main-menu .menu-item-has-children>a{display:flex;align-items:center;justify-content:space-between;gap:8px}}
.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin:0}.footer-address{display:block;color:#b7c5dc;margin:7px 0;font-size:14px}

.logo{min-height:44px;display:inline-flex;align-items:center}.logo img,.site-logo-img{display:block;max-height:46px;width:auto;object-fit:contain}.custom-logo-link img{max-height:46px;width:auto}.footer-logo img{max-height:54px;width:auto;object-fit:contain}@media(max-width:760px){.logo{min-height:40px}.logo img,.site-logo-img,.custom-logo-link img{max-height:38px}.footer-logo img{max-height:44px}}


/* legacy header/footer polish */
.logo{gap:10px}.ip-logo-fallback{display:inline-flex;align-items:center;gap:10px}.ip-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#058bff,#093ed2);position:relative;box-shadow:0 8px 22px rgba(15,98,255,.28);flex:0 0 auto}.ip-mark:before{content:"";position:absolute;inset:8px 10px 8px 15px;border:3px solid white;border-left:none;border-radius:0 8px 8px 0}.ip-brand-wrap{display:grid;gap:2px}.ip-brand{font-size:25px;font-weight:600;color:#08276b;line-height:1}.ip-brand span{color:#0f62ff}.ip-tag{font-size:10px;color:#5b6b86;font-weight:500;letter-spacing:0}.site-header{height:76px;background:rgba(255,255,255,.92);border-bottom:1px solid #d9e5fb}.nav{height:76px}.main-menu a:hover{color:#0f62ff}.main-menu .current-menu-item>a,.main-menu .current_page_item>a{color:#0f62ff}.header-cta{background:#0f62ff;border:1px solid #0f62ff;border-radius:8px;box-shadow:none}.site-footer{background:#061936}.site-footer .footer-logo{font-size:25px}.site-footer .ip-brand{color:#fff}.site-footer .ip-tag{color:#b7c5db}@media(max-width:760px){.site-header,.nav{min-height:64px}.nav{height:auto}.ip-mark{width:34px;height:34px;border-radius:10px}.ip-brand{font-size:20px}.ip-tag{display:none}}


/* xemCV.com logo/header polish */
.xcv-logo-fallback{display:inline-flex;align-items:center;gap:10px}.xcv-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#6b4dff,#2975ff);display:grid;place-items:center;color:#fff;font-size:20px;box-shadow:0 8px 18px rgba(74,62,255,.24);flex:0 0 auto}.xcv-brand{font-size:23px;letter-spacing:-.8px;color:#162144;font-weight:600}.xcv-brand span{color:#4e42f5}.site-footer .xcv-brand{color:#fff}.site-footer .xcv-brand span{color:#9ca3ff}.header-cta{background:linear-gradient(135deg,#5a43ff,#3159ff);border:0;box-shadow:0 10px 24px rgba(69,71,255,.22)}@media(max-width:760px){.xcv-brand{font-size:20px}.xcv-mark{width:32px;height:32px}}

/* xemCV Theme V3: Inter only 400/500/600, no heavy bold */
b,strong,h1,h2,h3,h4,h5,h6,.btn,.header-cta,.xcv-brand{font-weight:600!important}

/* V3.1.0: show content links clearly in posts/pages */
.entry-content a:not(.btn):not(.button),
.design-block a:not(.btn):not(.button),
.sidebar-widget a:not(.btn):not(.button){
    color:var(--blue);
    text-decoration:underline;
    text-underline-offset:3px;
    text-decoration-thickness:1px;
    font-weight:500;
}
.entry-content a:not(.btn):not(.button):hover,
.design-block a:not(.btn):not(.button):hover,
.sidebar-widget a:not(.btn):not(.button):hover{
    color:var(--teal);
    text-decoration-thickness:2px;
}
.entry-content a[href^="http"]:not(.btn):not(.button),
.design-block a[href^="http"]:not(.btn):not(.button){
    overflow-wrap:anywhere;
}
