/*
Theme Name: Shelltoelab Theme
Theme URI: 
Author: 
Description: Block theme generated by wp-theme-gen. Style only (palette, type, spacing, layout skeleton) derived from a reference design; contains no third-party text, images or logos.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 6.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: shelltoelab-com
Tags: full-site-editing, block-patterns, blog, custom-colors, wide-blocks
*/

/* 顶层区块（页头/首屏/主体/页脚）之间不要默认间距，留白由各区块自己的内边距控制 */
.wp-site-blocks > *, .editor-styles-wrapper .is-root-container > * { margin-block-start: 0 !important; }

/* ---- 页头 ---- */
.wtg-header { padding-top: var(--wp--preset--spacing--30); padding-bottom: var(--wp--preset--spacing--30); }
.wtg-header.is-sticky { position: sticky; top: 0; z-index: 100; }
.admin-bar .wtg-header.is-sticky { top: var(--wp-admin--admin-bar--height, 32px); }
.wtg-header.has-divider { border-bottom: 1px solid var(--wp--preset--color--border); }
.wtg-header.has-shadow { box-shadow: 0 2px 12px rgba(0,0,0,.06); }
.wtg-header__inner { min-height: 76px; gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--50); }
.wtg-header__inner.is-stacked { gap: var(--wp--preset--spacing--20); }
.wtg-header a { color: inherit; }
.wtg-header.is-full { padding-left: var(--wp--preset--spacing--50); padding-right: var(--wp--preset--spacing--50); }
.wtg-header.is-full .wtg-header__inner { max-width: none; }
.wtg-brand { gap: .6rem; align-items: center; }

/* ---- 首屏 ---- */
.wtg-hero { display: flex; flex-direction: column; justify-content: center; padding-top: var(--wp--preset--spacing--70); padding-bottom: var(--wp--preset--spacing--70); margin-block-start: 0; }
.wtg-hero__inner { gap: var(--wp--preset--spacing--40); width: 100%; }
.wtg-hero__title, .wtg-hero__title a { color: inherit !important; text-decoration: none; margin: 0; }
.wtg-hero__tagline { opacity: .9; max-width: 42rem; margin: 0; }
.wtg-hero .wp-block-button__link { background: var(--wp--preset--color--hero-button-bg); color: var(--wp--preset--color--hero-button-text); }

/* ---- 首屏：测到的大字样式 ---- */
.wtg-hero__title { font-family: var(--wp--preset--font-family--body); font-weight: 500; letter-spacing: 0em; text-transform: none; font-size: clamp(2.2rem, 6vw, 29.5px); line-height: 1.05; }

.wtg-hero.is-cover { background-image: radial-gradient(ellipse at 50% 35%, rgba(255,255,255,.09), transparent 62%), linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,.22) 100%); background-size: cover; background-position: center; }
.wtg-header.is-overlay { border-bottom: 0; box-shadow: none; }
/* 首页首屏已经有大号站名，页头只留导航（和参考站一样）；其他页面照常显示站名 */
.home .wtg-header.is-overlay .wtg-brand { display: none; }

/* ---- 顶部通栏 ---- */
.wtg-topbar { padding-top: .7rem; padding-bottom: .7rem; }
.wtg-topbar__text { margin: 0;  }
.wtg-topbar a { color: inherit; text-decoration: none; }
.wtg-topbar a:hover { text-decoration: underline; }

/* ---- 主体 ---- */
.wtg-main { padding-top: var(--wp--preset--spacing--60); padding-bottom: var(--wp--preset--spacing--70); margin-block-start: 0; }
.wtg-main.is-home { padding-top: var(--wp--preset--spacing--70); }
.wtg-section-title { margin-bottom: var(--wp--preset--spacing--50); }
.wtg-with-sidebar { gap: var(--wp--preset--spacing--60); }
.wtg-sidebar { background: var(--wp--preset--color--surface); padding: var(--wp--preset--spacing--40); border-radius: 0px; }
.wtg-sidebar ul { padding-left: 1.1em; }
.wtg-meta { gap: .4rem 1rem; color: var(--wp--preset--color--muted); font-size: var(--wp--preset--font-size--small); }
.wtg-content > * + * { margin-block-start: 1.2em; }

/* ---- 卡片 ---- */
.wtg-query .wp-block-post-template.is-layout-grid { gap: 12px; }
.wtg-card { height: 100%; background: var(--wp--preset--color--card-bg); border-radius: 0px; overflow: hidden; display: flex; flex-direction: column; transition: transform .2s ease, box-shadow .2s ease; }
.wtg-card.has-shadow { box-shadow: var(--wp--preset--shadow--card); }
.wtg-card.has-border { border: 1px solid var(--wp--preset--color--border); }
.wtg-card:hover { transform: translateY(-3px); }
.wtg-card .wp-block-post-featured-image { margin: 0; border-radius: 0; }
.wtg-card .wp-block-post-featured-image img { border-radius: 0; }
.wtg-card__body { padding: var(--wp--preset--spacing--40); display: flex; flex-direction: column; gap: .6rem; flex: 1; }
.wtg-card__body > * { margin: 0; }
.wtg-card__cat a { text-decoration: none; }
.wtg-card__cat { font-size: var(--wp--preset--font-size--small); text-transform: uppercase; letter-spacing: .06em; }
.wtg-card .wp-block-post-date { margin-top: auto; }
.wtg-list-item .wp-block-post-title { margin-bottom: .3rem; }

/* ---- 页脚 ---- */
.wtg-footer { padding-top: var(--wp--preset--spacing--70); padding-bottom: var(--wp--preset--spacing--50); margin-block-start: 0; }
.wtg-footer a { color: inherit; text-decoration: none; }
.wtg-footer a:hover { text-decoration: underline; }
.wtg-footer ul { list-style: none; padding: 0; }
.wtg-footer li { margin: .35rem 0; }
.wtg-footer__title { color: inherit; font-size: var(--wp--preset--font-size--medium); }
.wtg-footer .wp-block-separator { opacity: .2; border-color: currentColor; }
.wtg-footer__copy { font-size: var(--wp--preset--font-size--small); opacity: .8; }

/* ---- 表单 ---- */
input[type=text], input[type=email], input[type=search], input[type=url], textarea, select {
  border: 1px solid var(--wp--preset--color--border); border-radius: 0px; padding: .6em .8em; font: inherit; background: var(--wp--preset--color--base); color: inherit;
}
.wp-block-search__button { white-space: nowrap; border-radius: 0px; }

@media (max-width: 781px) {
  .wtg-header__inner { min-height: 0; }
  .wtg-with-sidebar { gap: var(--wp--preset--spacing--50); }
}

/* ---- 广告位 ---- */
.wtg-ad { box-sizing: border-box; width: min(100%, var(--ad-w)); min-height: var(--ad-h); margin: 28px auto; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.wtg-ad.is-empty { flex-direction: column; gap: 4px; border: 1px dashed var(--wp--preset--color--border, #d4d4d4); background: color-mix(in srgb, var(--wp--preset--color--border, #d4d4d4) 18%, transparent); color: var(--wp--preset--color--muted, #777); border-radius: 6px; }
.wtg-ad__label { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.wtg-ad__size { font-size: 12px; opacity: .8; }
.wtg-ad__size--m { display: none; }
.wtg-ad--sidebar_top { margin-top: 0; }
.wtg-ad--sidebar_bottom { position: sticky; top: 96px; }
.wtg-query > .wtg-ad, .wp-block-query > .wtg-ad { margin: 32px auto; }
@media (max-width: 781px) {
  .wtg-ad { width: min(100%, var(--ad-mw)); min-height: var(--ad-mh); margin: 20px auto; }
  .wtg-ad__size--d { display: none; }
  .wtg-ad__size--m { display: inline; }
  .wtg-ad--desktop-only { display: none !important; }
  .wtg-ad:not(.is-empty) { width: 100%; min-height: 0; }
}
.wtg-ad:not(.is-empty) { display: block; text-align: center; }
