/*
Theme Name: Policy Skeleton
Theme URI: https://example.com/policy-skeleton
Author: OpenCode
Description: 极简纯文本骨架主题，适用于多种页面模板（Policy、Tutorials、Shop 等）
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: policy-skeleton
*/

/* 基本重置 */
:root {
  --isamaya-bg: #ffffff;
  --isamaya-text: #1a1a1a;
  --isamaya-muted: #555;
  --isamaya-border: #e5e5e5;
  --isamaya-section: #f7f7f7;
  --isamaya-primary: #111111;
  --isamaya-cta: #111111;
  --isamaya-cta-text: #fff;
  --isamaya-font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --isamaya-font-head: "Playfair Display", Georgia, serif;
  --isamaya-animation: 0.6s;
}
/* 基本重置 */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { font-family: var(--isamaya-font-body); color: var(--isamaya-text); line-height: 1.6; background: var(--isamaya-bg); }

/* 通用容器和标题样式 */
.max-width-1280 { max-width: 1280px; margin: 0 auto; padding: 0 1rem; }
.max-width-720 { max-width: 720px; margin: 0 auto; padding: 0 1rem; }
.page-title { text-align: center; padding: 2rem 0; font-family: var(--isamaya-font-head); }
.page-title h1 { margin: 0; font-size: 2rem; font-family: var(--isamaya-font-head); }
.page-desc { margin-top: 0.5rem; color: #555; }

/* Tutorial/Shop 通用网格容器（后续可专门子模板覆盖） */
.shop-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; padding: 1rem 0; }
.product-card { display: flex; flex-direction: column; border: 1px solid #eee; border-radius: 6px; overflow: hidden; background: #fff; }
.product-card .thumb { width: 100%; aspect-ratio: 4/3; background: #eee; }
.product-card .card-title { padding: 0.5rem 0.75rem; text-align: left; font-size: 1rem; color: #333; }
.product-card .card-meta { padding: 0 0.75rem 0.75rem; display: flex; justify-content: space-between; align-items: center; gap: 0.5rem; font-size: 0.875rem; color: #555; }
.product-card .price { font-weight: bold; }
.badge-soldout { position: absolute; top: 8px; left: 8px; background: #f44336; color: #fff; padding: 0.25rem 0.4rem; border-radius: 3px; font-size: 0.75rem; }
.card { position: relative; display: flex; flex-direction: column; }
.card-inner { display: flex; flex-direction: column; }
.add-to-cart { margin-top: auto; padding: 0.6rem; border: none; background: #333; color: #fff; cursor: pointer; border-radius: 0 0 6px 6px; }
.add-to-cart[disabled] { opacity: 0.6; cursor: not-allowed; }

/* 最近浏览区（横向滚动卡片条） */
.rv-track { display: flex; overflow-x: auto; gap: 1rem; padding: 0.5rem 0; }
.rv-card { min-width: 180px; border: 1px solid #eee; border-radius: 6px; background: #fff; padding: 0.5rem; }
.rv-card .thumb { height: 110px; background: #eee; border-radius: 4px; }
.rv-card .rv-title { font-size: 0.9rem; margin-top: 0.25rem; }

.footer-subscribe { text-align: center; padding: 2rem 0; background: var(--isamaya-section); }
.footer-subscribe h3 { margin: 0 0 0.5rem; }
.footer-subscribe p { margin: 0 0 1rem; color: #555; }
.footer-subscribe .subscribe-form { display: inline-block; }
.footer-subscribe input { padding: 0.6rem 0.8rem; width: 260px; border: 1px solid #ccc; border-radius: 4px; }
.footer-subscribe button { padding: 0.6rem 1rem; border-radius: 4px; border: none; background: #333; color: #fff; cursor: pointer; }

/* 页脚链接区 */
.footer-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; padding: 1.5rem 0; }
.footer-links h4 { margin: 0 0 0.5rem; font-size: 1rem; font-weight: 700; }
.footer-links ul { list-style: none; margin: 0; padding: 0; }
.footer-links a { color: #555; text-decoration: none; }

/* 页脚版权区 */
.footer-bottom { text-align: center; padding: 1rem 0; font-size: 0.9rem; color: #777; border-top: 1px solid #eee; }

/* 悬浮入口 */
.floating-entry { position: fixed; right: 20px; bottom: 20px; background: #111; color: #fff; padding: 0.75rem 1rem; border-radius: 999px; text-decoration: none; }

/* 响应式适配 */
@media (max-width: 1024px) {
  .shop-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 900px) {
  .shop-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .shop-grid { grid-template-columns: 1fr; }
  .rv-track { gap: 0.75rem; }
}

/* Interactive / motion enhancements */
.fade-in { opacity: 0; transform: translateY(20px); transition: opacity .6s ease-out, transform .6s ease-out; }
.is-visible { opacity: 1; transform: none; }
.nav-scrolled { box-shadow: 0 2px 8px rgba(0,0,0,.08); background: #fff; transition: box-shadow .2s ease, background-color .2s ease; }
.core-card:hover, .tutorial-card:hover, .curation-card:hover, .product-card:hover { transform: translateY(-6px); box-shadow: 0 6px 14px rgba(0,0,0,.08); transition: transform .25s ease, box-shadow .25s ease; }
.button, button { cursor: pointer; }
@media (prefers-reduced-motion: reduce) {
  .fade-in { transition: none; transform: none; }
  .is-visible { opacity: 1; }
}

 /* About Page Skeleton */
.about-page { padding: 2rem 0; }
.about-page .max-width-720 { max-width: 720px; margin: 0 auto; padding: 0 1rem; text-align:left; }
 /* Core Community Skeleton */
.core-community-page { padding: 2rem 0; }
.core-community-page .core-content { max-width: 720px; margin: 0 auto; padding: 0 1rem; text-align:left; }

/* Additional skeletons to mimic ISAMAYA sections */
.curations-page { padding: 2rem 0; }
.curations-page .grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.faq-page { padding: 2rem 0; }
.team-page { padding: 2rem 0; }
.timeline-page { padding: 2rem 0; }
