/* 星の小石 / gallery v1.2.2. Presentation only; Core owns state and interactions. */
body.hks-gallery-site {
  --hks-cream: #fff;
  --hks-paper: #fbfaf6;
  --hks-ink: #181816;
  --hks-muted: #625f57;
  --hks-label: #625f57;
  --hks-line: #d9d6cb;
  --hks-coral: #a58b42;
  --hks-coral-deep: #40351b;
  --hks-aqua: #adc5c2;
  --hks-mint: #edf2ed;
  --hks-mint-deep: #637c6d;
  --hks-lavender: #e4dfea;
  --hks-focus: #665314;
  --hks-shadow: none;
  --hks-radius: 0px;
  --hks-gallery-serif: "Hiragino Mincho ProN", "Yu Mincho", "Songti SC", serif;
  --hks-gallery-sans: "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --hks-gallery-art: url("https://hoshinokoishi.com/wp-content/uploads/2026/09/hks-art-almond-aquamarine.jpg");
  --hks-px-night: #403b2e; --hks-px-deep: #403b2e; --hks-px-slate: #696457;
  --hks-px-ink: #181816; --hks-px-cream: #fbfaf6; --hks-px-gold: #867134;
  --hks-px-mint: #d7e4db; --hks-px-aqua: #adc5c2; --hks-px-lavender: #d6cfdc; --hks-px-coral: #aa6470;
  --hks-star-night: #403b2e; --hks-star-deep: #403b2e; --hks-star-ink: #181816;
  --hks-star-paper: #fff; --hks-star-moon: #fbfaf6; --hks-star-mint: #d7e4db;
  --hks-star-aqua: #adc5c2; --hks-star-lavender: #d6cfdc; --hks-star-coral: #aa6470;
  --hks-c-night: #403b2e; --hks-c-deep: #403b2e; --hks-c-ink: #181816; --hks-c-slate: #696457;
  --hks-c-cream: #fbfaf6; --hks-c-gold: #867134; --hks-c-mint: #d7e4db;
  --hks-c-aqua: #adc5c2; --hks-c-lavender: #d6cfdc; --hks-c-coral: #aa6470;
  --hks-dust-night: #403b2e; --hks-dust-ink: #181816; --hks-dust-paper: #fbfaf6;
  --hks-dust-aqua: #adc5c2; --hks-dust-gold: #867134; --hks-dust-coral: #aa6470; --hks-dust-lilac: #d6cfdc;
  --hks-palm-night: #403b2e; --hks-palm-ink: #181816; --hks-palm-paper: #fbfaf6;
  --hks-palm-mint: #d7e4db; --hks-palm-gold: #867134; --hks-palm-rose: #aa6470; --hks-palm-line: #d9d6cb;
  --hks-events-night: #403b2e; --hks-events-deep: #403b2e; --hks-events-ink: #181816;
  --hks-events-paper: #fbfaf6; --hks-events-aqua: #adc5c2; --hks-events-lilac: #d6cfdc;
  --hks-events-coral: #aa6470; --hks-events-mint: #d7e4db;
  color: var(--hks-ink); background: #fff; font-family: var(--hks-gallery-sans);
}
body.hks-gallery-site :is(#page, .site-content) { background: #fff; }
body.hks-gallery-site :is(button, input, select, textarea) { font-family: var(--hks-gallery-sans); }
body.hks-gallery-site :is(h1, h2, h3, h4, h5, h6, .entry-title) {
  color: var(--hks-ink); font-family: var(--hks-gallery-serif); font-weight: 400; letter-spacing: .035em; line-height: 1.6;
}
body.hks-gallery-site a { color: #514a38; }
body.hks-gallery-site .site-header { border-bottom: 1px solid var(--hks-line); background: rgba(255,255,255,.98); backdrop-filter: none; }
body.hks-gallery-site .site-title a { position: relative; gap: 20px; font-family: var(--hks-gallery-serif); font-size: 1.45rem; font-weight: 400; letter-spacing: .16em; }
body.hks-gallery-site .site-title a::before { width: 26px; height: 26px; flex-basis: 26px; margin: 0 6px; border: 1px solid var(--hks-ink); border-radius: 0; background: none; box-shadow: none; transform: rotate(45deg); }
body.hks-gallery-site .site-title a::after { content: ""; position: absolute; left: 15px; bottom: -10px; width: 8px; height: 8px; background: #d8ac00; transform: rotate(45deg); }
body.hks-gallery-site .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link { color: var(--hks-muted); font-size: .78rem; font-weight: 400; min-height: 44px; display: flex; align-items: center; }
body.hks-gallery-site .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link::after { height: 1px; border-radius: 0; bottom: 0; }
body.hks-gallery-site .hks-astra-menu-action .menu-link { border-radius: 0; background: transparent; }
body.hks-gallery-site .hks-astra-menu-action .menu-link:hover { transform: none; box-shadow: none; }
body.hks-gallery-site .hks-astra-cart-count { background: #40351b; font-weight: 500; }
body.hks-gallery-site:not(.home) .site-content > .ast-container { padding: 64px 0 88px; }
body.hks-gallery-site:not(.home) .ast-article-single { padding: 0; border: 0; border-radius: 0; box-shadow: none; background: #fff; }
body.hks-gallery-site:not(.home) .entry-header { margin: 0 0 36px; padding: 0 0 24px; border-bottom: 1px solid var(--hks-line); }
body.hks-gallery-site:not(.home) .entry-title { font-size: clamp(1.9rem, 3vw, 2.75rem); line-height: 1.5; }
body.hks-gallery-site .entry-content > :is(p, h2, h3, ul, ol, blockquote) { max-width: 760px; }
body.hks-gallery-site .entry-content > p { line-height: 2; color: var(--hks-muted); }
body.hks-gallery-site .entry-content > h2 { margin-top: 2em; font-size: 1.55rem; }
body.hks-gallery-site .entry-content > blockquote { border-left: 1px solid #b5a36c; padding: 18px 28px; background: var(--hks-paper); }

/* Shared reading rooms. Specificity deliberately exceeds Core's single-class skin. */
body.hks-gallery-site :is(.hks-personality-lab, .hks-star-studio, .hks-collection-lab, .hks-stardust, .hks-palm, .hks-events-archive, .hks-panel, .hks-fortune, .hks-tarot) {
  color: var(--hks-ink); background: #fff; border: 0; border-radius: 0; box-shadow: none; image-rendering: auto;
  max-width: 100%; margin: 0 auto 40px; padding: 0;
}
body.hks-gallery-site .entry-content :is([class^="hks-"], [class*=" hks-"]) { font-family: var(--hks-gallery-sans); }
body.hks-gallery-site .entry-content :is(h2, h3, h4, h5, h6) { font-family: var(--hks-gallery-serif); font-weight: 400; }
body.hks-gallery-site .entry-content :is(.hks-pixel-hero, .hks-star-hero, .hks-collection-hero, .hks-stardust-hero, .hks-palm-hero, .hks-events-hero) {
  position: relative; display: grid; grid-template-columns: minmax(0,1fr); align-items: center; gap: 0;
  min-height: 285px; margin: 0 0 30px; padding: 30px 44% 45px 0;
  border: 0; border-bottom: 1px solid var(--hks-line); color: var(--hks-ink); background: #fff;
}
body.hks-gallery-site :is(.hks-pixel-hero, .hks-star-hero, .hks-collection-hero, .hks-stardust-hero, .hks-palm-hero, .hks-events-hero)::after {
  content: ""; position: absolute; right: 0; top: 0; bottom: 30px; width: 37%;
  background: var(--hks-gallery-art) center / cover no-repeat;
}
body.hks-gallery-site.page-id-15 { --hks-gallery-art: url("https://hoshinokoishi.com/wp-content/uploads/2026/09/hks-art-water-lilies.jpg"); }
body.hks-gallery-site:is(.page-id-28, .page-id-29) { --hks-gallery-art: url("https://hoshinokoishi.com/wp-content/uploads/2026/09/hks-art-sunflower-citrine.jpg"); }
body.hks-gallery-site.page-id-31 { --hks-gallery-art: url("https://hoshinokoishi.com/wp-content/uploads/2026/09/hks-art-open-window.jpg"); }
body.hks-gallery-site :is(.hks-pixel-hero, .hks-star-hero, .hks-collection-hero, .hks-stardust-hero, .hks-palm-hero, .hks-events-hero) h2 { color: var(--hks-ink); font-size: clamp(1.4rem, 2.2vw, 2rem); line-height: 1.65; margin: 0 0 16px; }
body.hks-gallery-site :is(.hks-pixel-hero, .hks-star-hero, .hks-collection-hero, .hks-stardust-hero, .hks-palm-hero, .hks-events-hero) p { color: var(--hks-muted); font-size: .9rem; line-height: 1.9; }
/* Only decorative sprites / internal phase captions are retired. Names and state stay in DOM. */
body.hks-gallery-site :is(.hks-pixel-kicker, .hks-star-kicker, .hks-collection-kicker, .hks-stardust-kicker, .hks-palm-kicker, .hks-events-kicker, .hks-alchemist, .hks-profession-avatar, .hks-star-hero__sigil, .hks-collection-hero__cabinet, .hks-stardust-bottle, .hks-palm-seal, .hks-events-hero__seal) { display: none; }
body.hks-gallery-site .hks-hero-avatar { position: absolute; left: 0; bottom: 20px; display: block; width: auto; }
body.hks-gallery-site .hks-hero-avatar figcaption { color: var(--hks-muted); font: 400 .72rem/1.5 var(--hks-gallery-sans); text-align: left; }
body.hks-gallery-site .hks-profession-visual { grid-template-columns: minmax(0,1fr); }
body.hks-gallery-site .hks-profession-copy > small { display: none; }
body.hks-gallery-site :is(.hks-lab-stage, .hks-star-stage, .hks-collection-stage, .hks-stardust-stage, .hks-palm-stage, .hks-events-stage) {
  background: #fff; color: var(--hks-ink); border: 0; padding: 26px 0 0; min-height: 280px;
}
body.hks-gallery-site :is(.hks-lab-footnote, .hks-star-footnote, .hks-collection-footnote, .hks-stardust-footnote, .hks-palm-footnote, .hks-events-footnote) { color: var(--hks-muted); border-top: 1px solid var(--hks-line); margin-top: 28px; padding: 22px 0 0; line-height: 1.9; }
body.hks-gallery-site .hks-lab-tabs { display: flex; gap: 0; border-bottom: 1px solid var(--hks-line); margin: 0; overflow-x: auto; }
body.hks-gallery-site .hks-lab-tab { flex: 1 0 auto; background: #fff; color: var(--hks-muted); border: 0; border-bottom: 2px solid transparent; border-radius: 0; padding: 14px 20px; font-weight: 400; min-height: 52px; box-shadow: none; }
body.hks-gallery-site .hks-lab-tab[aria-selected="true"] { color: var(--hks-ink); border-bottom-color: #867134; background: var(--hks-paper); transform: none; }
body.hks-gallery-site .hks-pixel-heading { border-bottom: 1px solid var(--hks-line); padding-bottom: 20px; }
body.hks-gallery-site .hks-pixel-heading h3 { font-size: 1.55rem; }
body.hks-gallery-site :is(.hks-pixel-heading p, .hks-pixel-panel p) { color: var(--hks-muted); }
body.hks-gallery-site .hks-pixel-chip { color: #625a42; background: #f1efe8; padding: 8px 12px; font-weight: 400; }
body.hks-gallery-site .hks-panel-grid { gap: 24px; }

/* Panels and sheets: thin edges, no game-like extrusions or pastel card stacks. */
body.hks-gallery-site :is(.hks-pixel-panel, .hks-profile-record, .hks-blood-profile-card, .hks-profession-panel,
  .hks-ai-privacy, .hks-ai-letter, .hks-ai-edit-form, .hks-star-card, .hks-star-choice-group,
  .hks-star-share__status, .hks-collection-summary div, .hks-specimen-card, .hks-stardust-start,
  .hks-stardust-weekly, .hks-stardust-summary, .hks-stardust-list, .hks-stardust-privacy,
  .hks-palm-purpose, .hks-palm-local, .hks-palm-form, .hks-palm-result, .hks-palm-privacy,
  .hks-events-card, .hks-events-terms, .hks-events-entry, .hks-events-letter, .hks-events-fulfillment,
  .hks-lucky-card, .hks-recommendations, .hks-product-card, .hks-reading-item, .hks-catalog-projection) {
  color: var(--hks-ink); background: var(--hks-paper); border: 1px solid var(--hks-line); border-radius: 0; box-shadow: none;
}
body.hks-gallery-site .hks-pixel-panel { padding: 26px; }
body.hks-gallery-site :is(.hks-profile-record, .hks-blood-profile-card, .hks-profession-panel)[data-registered="true"],
body.hks-gallery-site .hks-blood-profile-card[data-blood-type="unknown"] { background: var(--hks-paper); border-color: var(--hks-line); box-shadow: none; }
body.hks-gallery-site .hks-profile-record-status { background: #f0eee6; color: var(--hks-muted); padding: 12px 16px; font-weight: 400; }
body.hks-gallery-site .hks-profile-record-status :is(strong, span:last-child) { color: var(--hks-muted); }
body.hks-gallery-site .hks-record-light { background: #637c6d; box-shadow: none; border-radius: 50%; }
body.hks-gallery-site .hks-zodiac-totem { background: transparent; color: #867134; border: 1px solid var(--hks-line); box-shadow: none; font-weight: 400; }
body.hks-gallery-site .hks-blood-emblem { background: #99656a; filter: none; }
body.hks-gallery-site .hks-blood-disclaimer { color: var(--hks-muted) !important; font-size: .75rem; line-height: 1.7 !important; }
body.hks-gallery-site :is(.hks-profession-focus li, .hks-star-pills li, .hks-specimen-badges span, .hks-catalog-projection__summary span, .hks-catalog-projection__tags li) { color: #514d42; background: #edeae1; border: 0; border-radius: 0; font-weight: 400; }
body.hks-gallery-site :is(.hks-trait-spectrum-item, .hks-luck-cell, .hks-luck-formula-note, .hks-ai-stone-message, .hks-palm-result article, .hks-palm-summary) { background: #f4f2eb; border: 0; border-left: 2px solid #c1b587; }
body.hks-gallery-site .hks-trait-spectrum-track { background: #d9d6cb; }
body.hks-gallery-site .hks-trait-spectrum-marker { background: #867134; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #867134; }
body.hks-gallery-site :is(.hks-progress-track, .hks-stardust-progress__track) { background: #e7e4dc; border: 0; height: 6px; padding: 0; }
body.hks-gallery-site :is(.hks-progress-track span, .hks-stardust-progress__track span, .hks-meter i) { background: #8b997e; }
body.hks-gallery-site :is(.hks-luck-overall, .hks-stardust-stat, .hks-equipment-orbit, .hks-natal-summary) { color: var(--hks-ink); background: #f2f0e9; border: 1px solid var(--hks-line); }
body.hks-gallery-site :is(.hks-luck-overall strong, .hks-luck-overall span, .hks-stardust-stat strong, .hks-equipment-orbit h3) { color: #665931; font-weight: 400; }
body.hks-gallery-site :is(.hks-luck-overall small, .hks-stardust-stat span, .hks-orbit-dimensions span, .hks-orbit-dimensions strong) { color: var(--hks-muted); }
body.hks-gallery-site .hks-natal-summary strong { color: #665931; }
body.hks-gallery-site .hks-luck-radar svg { background: #fff; border: 1px solid var(--hks-line); }
body.hks-gallery-site :is(.hks-luck-radar-ring, .hks-luck-radar-axis) { stroke: #d9d6cb; stroke-width: 1; }
body.hks-gallery-site .hks-luck-radar-shape { fill: rgba(118,145,137,.17); stroke: #617e76; stroke-width: 3; stroke-linejoin: round; }
body.hks-gallery-site .hks-luck-radar-point { fill: #fff; stroke: #617e76; stroke-width: 2; }
body.hks-gallery-site :is(.hks-luck-radar-label, .hks-luck-radar-value) { font-family: var(--hks-gallery-sans); font-weight: 400; }
body.hks-gallery-site .hks-stone-item { border: 1px solid var(--hks-line); background: #fff; }
body.hks-gallery-site .hks-stone-effect { background: #f3f2eb; border-left: 1px solid #b9b194; }
body.hks-gallery-site :is(.hks-specimen-card[data-owned="true"], .hks-specimen-card[data-equipped="true"]) { border-color: #867134; box-shadow: none; }
body.hks-gallery-site .hks-specimen-visual { background: #f3f1e9; }
body.hks-gallery-site .hks-collection-label { color: var(--hks-muted); font-weight: 400; letter-spacing: .04em; }
body.hks-gallery-site .hks-collection-filter { border-radius: 0; }
body.hks-gallery-site :is(.hks-orbit-center img, .hks-specimen-visual img) { image-rendering: auto; }
body.hks-gallery-site .hks-orbit-center { background: none; }
body.hks-gallery-site :is(.hks-collection-filters, .hks-star-share, .hks-delete-zone, .hks-collection-privacy, .hks-events-awards) { border-color: var(--hks-line); border-width: 1px; border-style: solid none none; }
body.hks-gallery-site :is(.hks-contribution-table, .hks-planet-table, .hks-history-table) :is(th, td) { border-bottom: 1px solid var(--hks-line); }

/* Native controls, including selected/disabled/error states. */
body.hks-gallery-site :is(.hks-button, .hks-pixel-button, .hks-star-button, .hks-collection-button, .hks-collection-icon-button, .hks-stardust-button, .hks-palm-button, .hks-events-button) {
  display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 22px;
  color: #fff !important; background: #40351b; border: 1px solid #40351b; border-radius: 0; box-shadow: none;
  font-weight: 400; line-height: 1.6; transform: none; transition: background-color .15s ease;
}
body.hks-gallery-site :is(.hks-button, .hks-pixel-button, .hks-star-button, .hks-collection-button, .hks-collection-icon-button, .hks-stardust-button, .hks-palm-button, .hks-events-button):hover:not(:disabled) { background: #5a4c2d; box-shadow: none; transform: none; filter: none; }
body.hks-gallery-site :is(.hks-button--secondary, .hks-pixel-button--quiet, .hks-star-button--quiet, .hks-collection-button--quiet, .hks-collection-icon-button, .hks-events-button--paper) { color: #514a38 !important; background: #fff; border-color: var(--hks-line); }
body.hks-gallery-site :is(.hks-button--secondary, .hks-pixel-button--quiet, .hks-star-button--quiet, .hks-collection-button--quiet, .hks-collection-icon-button, .hks-events-button--paper):hover:not(:disabled) { background: #f0ede3; }
body.hks-gallery-site :is(.hks-pixel-button--coral, .hks-star-button--coral, .hks-collection-button--danger, .hks-stardust-button--danger, .hks-palm-button--danger) { color: #842f42 !important; background: #fff5f5; border-color: #bd8991; }
body.hks-gallery-site :is(.hks-pixel-button--coral, .hks-star-button--coral, .hks-collection-button--danger, .hks-stardust-button--danger, .hks-palm-button--danger):hover:not(:disabled) { background: #f6e2e5; }
body.hks-gallery-site .entry-content :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]), select, textarea) { color: var(--hks-ink); background-color: #fff; border: 1px solid #bbb6a7; border-radius: 0; box-shadow: none; font-weight: 400; font-size: 16px; min-height: 48px; }
body.hks-gallery-site .entry-content select:not([multiple]) { appearance: auto; }
body.hks-gallery-site .entry-content :is(input[type=checkbox], input[type=radio]) { accent-color: #665931; }
body.hks-gallery-site :is(.hks-question, .hks-star-choice-group) { border: 1px solid var(--hks-line); }
body.hks-gallery-site :is(.hks-answer-scale label, .hks-star-choices span, .hks-star-visibility span, .hks-collection-filter) { color: #514a38; background: #f4f2ec; border: 1px solid transparent; min-height: 44px; font-weight: 400; }
body.hks-gallery-site :is(.hks-answer-scale label:has(input:checked), .hks-star-choices input:checked + span, .hks-star-visibility input:checked + span, .hks-collection-filter[aria-pressed="true"]) { color: #40351b; background: #ebe6d6; border: 1px solid #867134; box-shadow: none; }
body.hks-gallery-site :is(.hks-palm-consent, .hks-stardust-consent) { background: #f3f1e9; border: 1px solid var(--hks-line); }
body.hks-gallery-site :is(.hks-notice, .hks-lab-message, .hks-star-message, .hks-collection-message, .hks-stardust-message, .hks-palm-message, .hks-events-notice, .hks-star-public-note) { color: #435448; background: #edf2ed; border-radius: 0; border-left: 2px solid #637c6d; box-shadow: none; }
body.hks-gallery-site :is(.hks-notice--error, .hks-lab-message[data-kind="error"], .hks-star-message[data-kind="error"], .hks-collection-message[data-kind="error"], .hks-stardust-message[data-kind="error"], .hks-palm-message[data-kind="error"], .hks-events-notice[data-kind="error"]) { color: #842f42; background: #fff2f3; border-left-color: #aa6470; }

/* Tarot stays an interactive reading, not a pixel mini-game. */
body.hks-gallery-site .hks-tarot { padding: 30px 0; }
body.hks-gallery-site .hks-tarot .hks-eyebrow { color: var(--hks-muted); }
body.hks-gallery-site :is(.hks-pixel-card, .hks-tarot-card) { color: var(--hks-ink); background: #fbfaf6; border: 1px solid #c1b587; border-radius: 0; padding: 28px; min-height: 280px; }
body.hks-gallery-site :is(.hks-pixel-card, .hks-tarot-card) :is(small, p) { color: var(--hks-muted); }
body.hks-gallery-site .hks-pixel-card h4 { color: #665931; }
body.hks-gallery-site .hks-tarot-card::before { border-radius: 0; border-color: #ded8c6; }
body.hks-gallery-site .hks-tarot-deck { position: relative; width: 72px; height: 104px; background: #f6f3e9; border: 1px solid #aa9967; }
body.hks-gallery-site .hks-tarot-deck::before { content: "✧"; position: absolute; inset: 7px; display: grid; place-items: center; border: 1px solid #d1c6a6; color: #867134; font: 400 40px/1 var(--hks-gallery-serif); }
body.hks-gallery-site .hks-tarot-card .hks-card-symbol { color: #867134; }
body.hks-gallery-site .hks-tarot-desk + .hks-pixel-actions .hks-pixel-button--coral { color: #fff !important; background: #40351b; border-color: #40351b; }
body.hks-gallery-site .hks-tarot-desk + .hks-pixel-actions .hks-pixel-button--coral:hover:not(:disabled) { background: #5a4c2d; }
body.hks-gallery-site .hks-tarot-desk + .hks-pixel-actions .hks-pixel-button:not(.hks-pixel-button--coral) { color: #514a38 !important; background: #fff; border-color: var(--hks-line); }
body.hks-gallery-site .hks-ai-letter::before { border-color: var(--hks-line); border-width: 1px; }
body.hks-gallery-site :is(.hks-ai-letter-mark, .hks-ai-pending) { color: #665931; background: #eee9d9; font-weight: 400; }
body.hks-gallery-site .hks-ai-letter-section { border-top: 1px solid var(--hks-line); }

/* User-selected profile themes remain distinct, with gallery paper and frame finishes. */
body.hks-gallery-site .hks-star-card::before { content: none; }
body.hks-gallery-site .hks-star-card { border-color: #c1b587; outline: none; }
body.hks-gallery-site .hks-star-card--bg-night-observatory { background: #e8e9ee; color: var(--hks-ink); }
body.hks-gallery-site .hks-star-card--bg-aqua-grid { background: #eaf1ef; }
body.hks-gallery-site .hks-star-card--bg-lavender-dawn { background: #f1edf3; }
body.hks-gallery-site .hks-star-card--bg-mint-cloud { background: #edf2ec; }
body.hks-gallery-site .hks-star-card--bg-coral-twilight { background: #f5e9e5; }
body.hks-gallery-site .hks-star-card--bg-moon-paper { background: #f5f1e5; }
body.hks-gallery-site .hks-star-card--frame-crystal-orbit { border-color: #94b7b2; }
body.hks-gallery-site .hks-star-card--frame-moon-lace { border: 3px double #b6a6c5; }
body.hks-gallery-site .hks-star-card--frame-aqua-ribbon { border-left: 4px solid #7fa7ab; }
body.hks-gallery-site .hks-star-card--frame-star-window { outline: 1px solid #c1b587; outline-offset: -8px; }
body.hks-gallery-site .hks-star-card--frame-mint-spark { border-left: 4px solid #8fa98f; }
body.hks-gallery-site .hks-star-card--frame-coral-charm { border-left: 4px solid #bc8f8a; }
body.hks-gallery-site :is(.hks-star-card__identity, .hks-star-card__section) { border-bottom: 1px solid var(--hks-line); }
body.hks-gallery-site .hks-star-avatar { border: 1px solid #b7b09a; background: #fff; }
body.hks-gallery-site .hks-star-avatar::after { content: none; }
body.hks-gallery-site .hks-star-preview { top: 132px; }
body.hks-gallery-site .hks-events-card__rail { color: #665931; background: #f1eee3; border-right: 1px solid var(--hks-line); }
body.hks-gallery-site .hks-events-card__rail small { color: var(--hks-muted); }
body.hks-gallery-site .hks-events-card__heading { border-bottom: 1px solid var(--hks-line); }
body.hks-gallery-site .hks-events-card__mark { border: 1px solid #bd8991; transform: none; }
body.hks-gallery-site .hks-events-status { border-width: 1px; font-weight: 400; }
body.hks-gallery-site :is(.hks-events-period, .hks-events-entry) { background: #f2f0e9; }
body.hks-gallery-site .hks-events-letter::before { border-left-color: #ece5d3; border-right-color: #ece5d3; }
body.hks-gallery-site .hks-events-terms > div { border-top: 1px solid var(--hks-line); }
body.hks-gallery-site .hks-star-error { border: 1px solid #bd8991; background: #fff2f3; }
body.hks-gallery-site .hks-empty-icon { border-radius: 0; background: #f5f3ec; color: #867134; }
body.hks-gallery-site :is(.hks-dashboard-nav a, .hks-dashboard-nav span) { background: #fbfaf6; border-radius: 0; font-weight: 400; }
body.hks-gallery-site .hks-dashboard-nav a { border: 1px solid var(--hks-line); }
body.hks-gallery-site :is(.hks-score-orb, .hks-score-grid, .hks-week-chart) { border-radius: 0; border: 1px solid var(--hks-line); background: #fbfaf6; }
body.hks-gallery-site .hks-lucky-dot { border-width: 2px; box-shadow: none; }

/* WooCommerce classic + block surfaces, including empty and login views. */
body.hks-gallery-site .woocommerce :is(ul.products li.product, div.product, form.login, form.register, .woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content, table.shop_table) { border-radius: 0; box-shadow: none; background: #fff; border-color: var(--hks-line); }
body.hks-gallery-site .woocommerce ul.products li.product { border: 0; padding: 0 0 28px; }
body.hks-gallery-site .woocommerce ul.products li.product img { border-radius: 0; }
body.hks-gallery-site .woocommerce :is(a.button, button.button, input.button, #respond input#submit),
body.hks-gallery-site :is(.wc-block-components-button, .wp-block-button__link) { background: #40351b; border: 1px solid #40351b; border-radius: 0; color: #fff; min-height: 48px; padding: 14px 24px; font-weight: 400; box-shadow: none; }
body.hks-gallery-site .woocommerce :is(a.button, button.button, input.button):hover { background: #5a4c2d; color: #fff; }
body.hks-gallery-site .woocommerce :is(.woocommerce-info, .woocommerce-message), body.hks-gallery-site .wc-block-components-notice-banner.is-info { color: #514a38; background: #f5f3ec; border-color: var(--hks-line); border-radius: 0; box-shadow: none; }
body.hks-gallery-site .woocommerce-error { color: #842f42; background: #fff2f3; border-color: #aa6470; }
body.hks-gallery-site :is(.woocommerce-info, .woocommerce-message) { color: #514a38; background: #f5f3ec; border-color: var(--hks-line); border-radius: 0; box-shadow: none; }
body.hks-gallery-site :is(.woocommerce-info, .woocommerce-message)::before { color: #867134; }
body.hks-gallery-site .woocommerce .woocommerce-MyAccount-navigation ul { margin: 0; border-top: 1px solid var(--hks-line); }
body.hks-gallery-site .woocommerce .woocommerce-MyAccount-navigation li { background: #fff; border-bottom: 1px solid var(--hks-line); }
body.hks-gallery-site .woocommerce .woocommerce-MyAccount-navigation li a { padding: 14px 18px; min-height: 48px; font-weight: 400; }
body.hks-gallery-site .woocommerce .woocommerce-MyAccount-navigation li.is-active { background: #f3f0e6; }
body.hks-gallery-site .wc-block-cart__empty-cart__title::before { display: none; }
body.hks-gallery-site .wc-block-cart__empty-cart__title { padding-top: 30px; font-size: 1.6rem; }
body.hks-gallery-site :is(.wc-block-components-text-input input, .wc-block-components-combobox-control input, .wc-block-components-totals-wrapper) { border-radius: 0 !important; border-color: var(--hks-line); }
body.hks-gallery-site .woocommerce span.onsale { border-radius: 0; background: #665931; font-weight: 400; }

body.hks-gallery-site :is(.site-footer, .site-primary-footer-wrap, .site-below-footer-wrap) { color: var(--hks-muted); background: #fbfaf6 !important; border-top-color: var(--hks-line) !important; }
body.hks-gallery-site .site-footer { border-top: 1px solid var(--hks-line); }
body.hks-gallery-site .hks-astra-footer-brand { color: var(--hks-ink) !important; font-family: var(--hks-gallery-serif); font-size: 1.35rem; font-weight: 400; }
body.hks-gallery-site .hks-astra-footer-mark { width: 26px; height: 26px; margin: 5px 10px 5px 5px; border: 1px solid #181816; border-radius: 0; color: transparent; background: none; box-shadow: none; transform: rotate(45deg); }
body.hks-gallery-site :is(.hks-astra-footer-copy, .hks-astra-footer-links a, .site-primary-footer-wrap a, .ast-footer-copyright) { color: var(--hks-muted); font-size: .8rem; }
body.hks-gallery-site .hks-astra-footer-title { color: #514a38; font-weight: 400; }
body.hks-gallery-site :is(.hks-astra-footer-links a, .site-footer .menu-link) { display: inline-flex; align-items: center; min-height: 44px; }
body.hks-gallery-site .hks-astra-footer-links { gap: 0; }

@media (min-width: 922px) and (max-width: 1100px) {
  body.hks-gallery-site .ast-builder-menu-1 .main-header-menu { gap: 12px; }
}
@media (max-width: 921px) {
  body.hks-gallery-site .site-primary-header-wrap.ast-container { width: calc(100% - 40px); }
  body.hks-gallery-site .ast-button-wrap .menu-toggle.main-header-menu-toggle { border: 1px solid var(--hks-line); border-radius: 0 !important; color: var(--hks-ink) !important; background: transparent !important; }
  body.hks-gallery-site .ast-button-wrap .ast-mobile-svg { fill: var(--hks-ink) !important; }
  body.hks-gallery-site :is(.ast-mobile-header-content, .main-header-menu) { background: #fff; border-color: var(--hks-line); border-radius: 0; box-shadow: none; }
  body.hks-gallery-site .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item > .menu-link { color: var(--hks-muted); font-weight: 400; min-height: 48px; background: #fff; }
  body.hks-gallery-site:not(.home) .site-content > .ast-container { width: calc(100% - 40px); padding: 36px 0 56px; }
  body.hks-gallery-site :is(.hks-astra-footer-grid, .ast-footer-copyright p) { width: calc(100% - 40px); }
}
@media (max-width: 680px) {
  body.hks-gallery-site:not(.home) .entry-header { margin-bottom: 24px; padding-bottom: 20px; }
  body.hks-gallery-site .entry-content :is(.hks-pixel-hero, .hks-star-hero, .hks-collection-hero, .hks-stardust-hero, .hks-palm-hero, .hks-events-hero) { display: flex; flex-direction: column; align-items: stretch; min-height: 0; padding: 0 0 24px; margin-bottom: 20px; }
  body.hks-gallery-site :is(.hks-pixel-hero, .hks-star-hero, .hks-collection-hero, .hks-stardust-hero, .hks-palm-hero, .hks-events-hero)::after { position: relative; inset: auto; order: 2; width: 100%; aspect-ratio: 3 / 2; margin-top: 24px; background-size: contain; }
  body.hks-gallery-site .hks-hero-avatar { position: static; order: 3; margin-top: 10px; }
  body.hks-gallery-site .hks-hero-avatar figcaption { font-size: .72rem; }
  body.hks-gallery-site .hks-lab-tab { flex: 1 1 0; min-width: 0; padding: 12px 3px; font-size: .74rem; white-space: nowrap; }
  body.hks-gallery-site .hks-pixel-panel { padding: 18px; }
  body.hks-gallery-site .hks-panel-grid { gap: 18px; }
  body.hks-gallery-site .hks-collection-summary { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body.hks-gallery-site .hks-collection-summary div { padding: 10px; }
  body.hks-gallery-site .hks-star-card { padding: 22px 18px; }
  body.hks-gallery-site :is(.hks-button, .hks-pixel-button, .hks-star-button, .hks-collection-button, .hks-stardust-button, .hks-palm-button, .hks-events-button) { max-width: 100%; padding-inline: 16px; }
  body.hks-gallery-site .hks-star-preview { position: static; }
  body.hks-gallery-site .hks-tarot-desk { grid-template-columns: 72px minmax(0,1fr); }
  body.hks-gallery-site .hks-answer-scale label { min-height: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  body.hks-gallery-site *, body.hks-gallery-site *::before, body.hks-gallery-site *::after { scroll-behavior: auto !important; }
}
