/*
Theme Name: Qing
Theme URI: https://example.com/qing
Author: Qing Theme
Description: Elementor 与 WooCommerce 友好的清新响应式主题。
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: qing
*/
:root{--qing-bg:#fff;--qing-card:#fff;--qing-text:#24322d;--qing-muted:#718078;--qing-brand:#2f8f69;--qing-brand-dark:#247254;--qing-line:#e3ebe6;--qing-radius:16px;--qing-shadow:0 10px 35px rgba(35,66,52,.07)}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--qing-bg);color:var(--qing-text);font:16px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}a{color:var(--qing-brand);text-decoration:none}a:hover{color:var(--qing-brand-dark)}img{max-width:100%;height:auto}.qing-shell{width:min(1120px,calc(100% - 40px));margin-left:auto;margin-right:auto}.qing-content-narrow{max-width:900px}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);border-bottom:1px solid var(--qing-line);backdrop-filter:blur(12px)}.admin-bar .site-header{top:32px}.header-inner{min-height:72px;display:flex;align-items:center;gap:32px}.site-brand{margin-right:auto}.site-title{display:block;color:var(--qing-text);font-size:24px;font-weight:800;line-height:1.2}.site-description{margin:3px 0 0;color:var(--qing-muted);font-size:12px}.custom-logo{display:block;max-height:45px;width:auto}.nav-menu,.footer-menu{display:flex;gap:24px;align-items:center;margin:0;padding:0;list-style:none}.nav-menu a{color:var(--qing-text);font-weight:600}.nav-menu .current-menu-item>a,.nav-menu a:hover{color:var(--qing-brand)}.menu-toggle{display:none;border:0;background:var(--qing-brand);color:#fff;border-radius:9px;padding:8px 12px}.site-main{min-height:65vh;padding:48px 0}.hero{padding:42px;margin-bottom:34px;color:#fff;border-radius:22px;background:linear-gradient(135deg,#236e52,#65b78f);box-shadow:var(--qing-shadow)}.hero h1{margin:0 0 8px;font-size:clamp(30px,5vw,52px)}.hero p{margin:0;opacity:.88}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px}.posts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.post-card,.single-article,.page-article,.sidebar .widget,.comments-area{background:var(--qing-card);border:1px solid var(--qing-line);border-radius:var(--qing-radius);box-shadow:var(--qing-shadow)}.post-card{overflow:hidden}.post-thumbnail{display:block;aspect-ratio:16/9;overflow:hidden}.post-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.post-card:hover .post-thumbnail img{transform:scale(1.03)}.post-card-content{padding:23px}.entry-title{margin:5px 0 10px;font-size:23px;line-height:1.35}.entry-title a{color:var(--qing-text)}.entry-title a:hover{color:var(--qing-brand)}.entry-meta{color:var(--qing-muted);font-size:13px}.entry-summary{color:#52615a}.read-more{font-weight:700}.archive-header{margin-bottom:28px}.archive-title{margin:0;font-size:34px}.archive-description{color:var(--qing-muted)}.sidebar{display:flex;flex-direction:column;gap:20px}.sidebar .widget{padding:22px}.sidebar .widget-title{margin:0 0 14px;font-size:18px}.sidebar .widget ul{margin:0;padding-left:20px}
.single-article,.page-article{padding:clamp(24px,5vw,54px)}.single-article .entry-title,.page-article .entry-title{font-size:clamp(30px,5vw,46px)}.entry-content{margin-top:30px}.entry-content h2,.entry-content h3{line-height:1.35}.entry-content blockquote{margin-left:0;padding:10px 22px;border-left:4px solid var(--qing-brand);background:#f1f8f4}.entry-content pre{overflow:auto;padding:18px;border-radius:10px;background:#17211d;color:#e5f1eb}.post-tags{margin-top:30px}.post-navigation,.pagination{margin-top:28px}.nav-links{display:flex;justify-content:space-between;gap:16px}.page-numbers{display:inline-block;margin:2px;padding:7px 13px;background:#fff;border:1px solid var(--qing-line);border-radius:8px}.page-numbers.current{background:var(--qing-brand);color:#fff}.comments-area{margin-top:28px;padding:28px}.comment-list{padding-left:24px}.comment-form input,.comment-form textarea,.search-form input{width:100%;padding:12px;border:1px solid #cedbd4;border-radius:8px}.comment-form input[type=submit],.search-form button{width:auto;border:0;background:var(--qing-brand);color:#fff;padding:11px 18px;border-radius:8px;cursor:pointer}.empty-state{text-align:center;padding:60px;background:#fff;border-radius:var(--qing-radius)}
.site-footer{padding:0;background:#080808;color:#fff}.footer-inner{width:min(1440px,calc(100% - 64px));margin:0 auto}.qing-footer__main{display:grid;grid-template-columns:minmax(280px,2fr) repeat(3,minmax(140px,1fr));gap:clamp(35px,5vw,90px);padding:75px 0 65px}.qing-footer__brand{max-width:470px}.qing-footer__name{display:inline-block;margin-bottom:22px;color:#fff;font:500 clamp(28px,3vw,42px)/1.1 Georgia,serif;letter-spacing:-.02em}.qing-footer__brand p{max-width:390px;margin:0;color:#999;font-size:14px;line-height:1.8}.qing-footer__column>strong{display:block;margin:4px 0 22px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.site-footer ul,.site-footer .footer-menu{display:grid;align-items:start;gap:10px;margin:0;padding:0;list-style:none}.site-footer a{color:#aaa;transition:color .2s ease}.site-footer a:hover{color:#d39d4e}.site-footer .footer-menu a{color:#aaa;font-size:14px;font-weight:400}.qing-footer__column li{line-height:1.5}.qing-footer__social{justify-self:end}.qing-footer__social-links{display:flex;align-items:center;gap:11px}.qing-footer__social-links a{display:grid;place-items:center;width:40px;height:40px;border:1px solid #353535;border-radius:50%;color:#fff;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.qing-footer__social-links a:hover{border-color:#d39d4e;background:#d39d4e;color:#080808}.qing-footer__social-links svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.qing-footer__social-links svg .is-fill{fill:currentColor;stroke:none}.qing-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:25px 0;border-top:1px solid #282828;color:#777;font-size:12px}.qing-footer__bottom>div{display:flex;gap:25px}.qing-footer__bottom a{color:#777}.site-main>.qing-shell{width:min(1200px,calc(100% - 64px));padding-top:48px;padding-bottom:48px}.qing-woocommerce{padding-top:48px;padding-bottom:48px}body.elementor-page,body.qing-elementor-page{background:#fff}body.elementor-page .site-main,body.qing-elementor-page .site-main{padding:0;width:100%;max-width:none;overflow:visible}
/* Force both legacy Sections and modern Flexbox Containers to use the viewport width. */
body.qing-elementor-full-width .elementor{width:100%;max-width:none}body.qing-elementor-full-width .elementor-section.elementor-section-boxed>.elementor-container{width:100%;max-width:100%!important}body.qing-elementor-full-width .e-con.e-con-boxed{--container-max-width:100%!important;max-width:100%!important}body.qing-elementor-full-width .e-con.e-con-boxed>.e-con-inner{width:100%;max-width:100%!important}body.qing-elementor-full-width .elementor>.e-con{max-width:100%;width:100%}body.qing-elementor-full-width .elementor-widget-wrap{max-width:100%}
@media(max-width:850px){.admin-bar .site-header{top:46px}.layout{grid-template-columns:1fr}.posts-grid{grid-template-columns:1fr}.menu-toggle{display:block}.main-navigation{display:none;position:absolute;left:20px;right:20px;top:65px;padding:15px;background:#fff;border:1px solid var(--qing-line);border-radius:12px;box-shadow:var(--qing-shadow)}.main-navigation.is-open{display:block}.nav-menu{align-items:stretch;flex-direction:column;gap:5px}.nav-menu a{display:block;padding:8px}.footer-inner{width:min(100% - 40px,1440px)}.qing-footer__main{grid-template-columns:1fr 1fr;gap:45px 30px;padding:55px 0}.qing-footer__brand{grid-column:1/-1}.qing-footer__social{justify-self:start}.qing-footer__bottom{align-items:flex-start;flex-direction:column;gap:12px}.qing-footer__bottom>div{flex-wrap:wrap;gap:10px 20px}}
@media(max-width:520px){.qing-footer__main{grid-template-columns:1fr;gap:36px}.qing-footer__brand{grid-column:auto}.qing-footer__bottom>div{flex-direction:column}}

/* Elementor-first layout: the main canvas itself never constrains page width. */
.site-main{width:100%;max-width:none;min-height:65vh;padding:0;margin:0;overflow:visible}.qing-elementor-content{width:100%;max-width:none;margin:0;padding:0}.qing-header-shell{width:min(1770px,calc(100% - 40px));margin-left:auto;margin-right:auto}

/* Global canvas is always white; individual widgets may still set their own backgrounds. */
html,body,.site-main,.qing-elementor-content,.woocommerce-page .site-main,.post-type-archive-product .site-main,.tax-product_cat .site-main{background-color:#fff}

/* Footer uses the Customizer logo instead of repeating the site title. */
.qing-footer__logo{line-height:0}.qing-footer__logo-image{display:block;width:auto;max-width:min(240px,100%);height:auto;max-height:72px;object-fit:contain;object-position:left center}

/* The global .page-numbers button rule also matches the pagination <ul>.
   Reset only that outer list; individual page buttons keep their borders. */
.qing-journal-pagination ul.page-numbers{border:0;background:transparent;border-radius:0}
