/* Yorudana: shared night-gallery system. Kept separate from layout rules. */
body { color: var(--text); }
.side-rail, .mobile-header, .mobile-nav { color: var(--text); background: #0b1325; }
.brand-name { color: var(--text); }
.brand { padding-inline: 20px; }
.brand-mark { border-radius: 7px; }
.primary-nav { margin-top: 12px; padding: 0 12px; gap: 5px; }
.nav-item { min-height: 60px; padding-inline: 15px; gap: 16px; border-radius: 9px; color: #c5d1eb; }
.nav-item > .icon, .search-form > .icon, .mobile-search-link .icon { filter: invert(1); }
.nav-item:hover { background: #1a2945; color: #fff; }
.nav-item.is-active { color: #fff; background: #243e6b; border: 1px solid #436799; }
.rail-feature { margin: 34px 20px 0; border-top: 1px solid var(--line); padding-top: 20px; display: grid; gap: 9px; }
.rail-feature span, .eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .17em; color: var(--pink); }
.rail-feature strong { font-size: 14px; }
.rail-feature small { font-size: 11px; color: var(--muted); }
.rail-mark { height: 100px; opacity: .35; }
.rail-mark::before { background: #658ac5; box-shadow: 0 20px 0 #ff5e98; height: 8px; }
.discovery-hero { display: grid; grid-template-columns: 1fr 1fr; min-height: 620px; max-height: 850px; border-bottom: 1px solid var(--line); background: #101c34; }
.discovery-hero-copy { display: flex; flex-direction: column; justify-content: center; align-items: start; padding: 50px clamp(26px, 4vw, 72px); }
.discovery-hero-copy h1 { margin: 24px 0; font-size: clamp(42px, 4.7vw, 78px); line-height: 1.25; letter-spacing: -.065em; font-weight: 900; }
.discovery-hero-copy > p:not(.eyebrow) { font-size: clamp(14px, 1.2vw, 18px); line-height: 2; color: #bdcbe7; margin: 0 0 32px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.primary-action, .secondary-action { min-height: 50px; padding: 13px 20px; border-radius: 7px; display: inline-flex; justify-content: center; align-items: center; gap: 8px; font-weight: 800; font-size: 14px; }
.primary-action { color: #fff; background: #d62969; border: 1px solid #f95c97; }
.primary-action .icon { filter: invert(1); width: 18px; height: 18px; }
.secondary-action { color: #e2ecff; background: transparent; border: 1px solid #617294; }
.primary-action:hover { background: #b61b56; }
.secondary-action:hover { background: #24395e; }
.hero-collection { display: flex; width: 100%; max-width: 400px; justify-content: space-between; padding-top: 25px; margin-top: 34px; border-top: 1px solid var(--line); font-size: 13px; color: #b7c9e8; }
.discovery-hero-image { position: relative; min-width: 0; min-height: 0; overflow: hidden; }
.discovery-hero-image img { width: 100%; height: 100%; object-fit: cover; object-position: center 35%; }
.discovery-hero-image > span { position: absolute; bottom: 28px; left: 28px; color: #fff; background: #0b1425e8; border-left: 3px solid var(--pink); padding: 12px 18px; font-size: 12px; letter-spacing: .18em; }
.discovery-hero-image small { display: block; font-size: 11px; letter-spacing: .03em; margin-top: 5px; }
.discovery-choices { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line); }
.discovery-choices a { padding: 30px clamp(22px, 3vw, 48px); display: grid; gap: 8px; border-right: 1px solid var(--line); background: #15233c; transition: background 160ms ease; }
.discovery-choices a:hover { background: #213557; }
.discovery-choices span { color: #a6c4ff; font-size: 10px; letter-spacing: .16em; }
.discovery-choices strong { font-size: clamp(17px, 1.8vw, 25px); }
.discovery-choices small { color: #b8c5df; }
.featured-stories { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; padding: 44px 32px; }
.featured-stories > a { min-width: 0; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); overflow: hidden; }
.featured-stories img { width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; transition: filter 180ms ease; }
.featured-stories a:hover img { filter: brightness(1.1); }
.featured-stories a > div { padding: 20px; }
.featured-stories span { color: var(--pink); font-size: 10px; letter-spacing: .1em; }
.featured-stories h2 { font-size: clamp(17px, 1.6vw, 25px); margin: 9px 0; line-height: 1.5; }
.featured-stories p { font-size: 12px; color: var(--muted); margin: 0; }
.gallery-heading { display: flex; align-items: end; justify-content: space-between; gap: 15px; padding: 22px 32px; scroll-margin-top: 20px; }
.gallery-heading h2 { font-size: clamp(23px, 2.7vw, 38px); margin: 7px 0; }
.gallery-heading > a { color: #b8d1ff; font-size: 13px; white-space: nowrap; }
.media-tabs, .page-header, .search-header, .tag-directory, .tag-empty, .tag-ticker, .prompt-header, .prompt-library, .prompt-guide, .post-product-choice, .prose, .site-footer, .article-share, .product-shelf-section > header, .product-samples, .search-paths { color: var(--text); background: var(--paper); }
.media-tab { color: var(--muted); }
.media-tab:hover { color: #fff; background: #24395e; }
.media-tab.is-active { color: #fff; background: #2b4c7d; }
.visual-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; padding: 24px 32px 40px; }
.visual-card, .tag-stat-link, .knowledge-card, .directory-groups section, .search-paths > div > a, .prompt-copy, .prompt-store-preview, .post-info { color: var(--text); background: var(--surface); border-color: var(--line); }
.visual-card { border-radius: 9px; }
.visual-card[data-kind="post"] .visual-trigger { aspect-ratio: 4/5; }
.visual-card[data-kind="post"] .card-copy { min-height: 112px; }
.card-copy h3 { font-size: 14px; line-height: 1.55; }
.card-copy p, .post-info p, .post-info time { color: var(--muted); }
.product-card { border-color: #3e537a; }
.product-card .visual-trigger, .product-grid .visual-trigger, .product-hero-media, .product-detail-media { background: #162139; }
.commercial-module { box-shadow: none; border-color: #a7527a; }
.commercial-module .selection-reason { color: #e3edff; background: #233b5c; }
.pr-label { color: var(--pink); background: #1d2540; border-top: 2px solid #b65484; font-size: 11px; }
.card-price strong, .observed-price { color: #ff91ba !important; }
.card-price em, .price-panel em { color: #10213d; background: #adccff; }
.store-action { background: #b8215a; color: #fff; font-size: 13px; }
.store-action:hover { background: #951746; }
.product-hero, .product-detail { background: #111e36; }
.product-hero-copy, .product-detail-copy { color: var(--text); }
.product-hero-copy h2 { font-size: clamp(26px,3vw,42px); line-height:1.4; }
.work-finder { padding:40px clamp(22px,4vw,60px); background:#15233c; }
.work-finder h1 { font-size:clamp(32px,4vw,54px); margin:8px 0; }
.work-finder > p:not(.eyebrow) { color:var(--muted); }
.work-finder nav { display:flex; flex-wrap:wrap; gap:10px; margin-top:25px; }
.work-finder nav a { padding:12px 26px; background:#294368; color:#e0ebff; border:1px solid #4d6b97; border-radius:6px; font-weight:800; }
.work-finder nav a:hover { background:#365787; }
[id^="works-"] { scroll-margin-top:20px; }
.product-hero-reason, .product-detail-reason { color: #d6e4ff; background: #273b5b; }
.product-source-tags a, .product-source-tags span, .tag-row a { color: #c5d8ff; background: #1c3152; border-color: #345076; }
.product-grid { background: var(--paper); padding: 26px 32px; }
.product-shelf-section > header h2 { font-size: clamp(23px, 2.5vw, 36px); }
.tag-stat-link:hover, .search-paths > div > a:hover { background: #273d61; }
.tag-stat-link strong, .directory-groups a { color: #dce7ff; }
.search-form { background: #15243e; color: #fff; border-color: #56759f; }
.search-form input { color: #fff; background: transparent; }
.search-form input::placeholder { color: #9cafd0; }
.prompt-code, .prompt-guide > section { color: #dbe6ff; background: #132039; border-color: var(--line); }
.prompt-code code { color: #dbe6ff; }
.knowledge-body, .knowledge-products, .knowledge-layout { background: #111c32; color: #e1e9fb; }
.knowledge-body p, .knowledge-body li, .knowledge-card p, .knowledge-card time, .knowledge-sources > p, .knowledge-steps li p { color: #b8c7e3; }
.knowledge-body > section, .knowledge-related, .knowledge-h3-hub, .knowledge-grid, .knowledge-products > header, .knowledge-steps li, .knowledge-faq details, .knowledge-example { background: #14213a; color: #e1e9fb; border-color: #304767; }
.knowledge-card h2, .knowledge-body h2, .knowledge-body h3, .knowledge-faq summary, .knowledge-products > header h2 { color: #e9efff; }
.knowledge-sources, .knowledge-inline-ad { background: #1b2945; border-color: #435579; color: #e6eeff; }
.knowledge-inline-ad h3, .knowledge-inline-ad-copy h3, .knowledge-sources a strong { color: #e6eeff; }
.knowledge-inline-ad-copy p, .knowledge-sources a span { color: #b9c6df; }
.knowledge-example textarea, .knowledge-research textarea { background: #0e192d; color: #e4eeff; }
.knowledge-examples button, .product-explorer-controls button { color: #e0ebff; background: #21365a; border-color: #49658f; }
.product-explorer-controls button.is-active { background: #b8215a; color: #fff; }
.breadcrumbs { color: #b9ccee; background: #182940; }
.reset-history-group, .reset-history-group > summary, .reset-history-item { color: #dce6fa; background: #14233b; border-color: #355073; }
.reset-history-copy p { color: #b8c7e3; }
.article-share { border-color: var(--line); }
.article-share button, .article-share a { color: #dbe7ff; background: #223754; border-color: #496084; }
.post-layout { grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr); background: #101b30; }
.post-info { padding: 46px clamp(25px,4vw,70px); }
.post-info h1 { font-size: clamp(26px,3vw,44px); line-height: 1.5; }
.post-stage { background: #0a1121; }
.original-portrait { margin: 0; }
.original-portrait img { width: 100%; max-height: 880px; height: auto; object-fit: contain; }
.original-portrait figcaption { padding: 12px 20px; font-size: 10px; letter-spacing: .2em; color: var(--muted); }
.post-intents { display: grid; gap: 12px; margin: 25px 0 36px; }
.post-making { padding: clamp(26px,5vw,70px); background: #111f37; scroll-margin-top: 20px; }
.post-making > header { max-width: 760px; margin-bottom: 32px; }
.post-making h2 { font-size: clamp(26px,3vw,40px); }
.post-making p { color: #b8c9e6; line-height: 1.9; }
.making-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 38px; }
.making-notes section { padding: 10px 0 25px; border-bottom: 1px solid var(--line); }
.making-notes span { color: var(--pink); font-size: 12px; }
.making-notes h3 { margin: 8px 0; font-size: 18px; }
.making-prompt { min-width: 0; background: #0b162a; padding: 26px; border: 1px solid #3a537c; border-radius: 10px; align-self: start; }
.making-prompt pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; line-height: 1.85; max-height: 440px; overflow-y: auto; color: #c0d3f1; }
.making-prompt button { width: 100%; border: 1px solid #f06b9b; background: #b8215a; color: white; border-radius: 5px; min-height: 48px; cursor: pointer; font-weight: 800; }
.making-prompt > p { font-size: 11px; }
.making-next { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 36px; }
.making-next a { display: block; padding: 22px; background: #253a5d; border: 1px solid #4a648e; font-weight: 800; border-radius: 7px; }
#works { scroll-margin-top: 20px; }
.post-primary-product, .post-alternative-products > div > section { background: #16263e; border-color: #3e5273; }
.choice-reason { color: #cfdef9; }
.site-footer { border-top: 1px solid var(--line); color: #aebcda; }
.site-footer a { color: #d3e2ff; }
.prompt-store-preview .visual-card, .post-info .product-card { color: var(--text); }
.knowledge-card:hover, .knowledge-card:focus-visible { background: #213658; color: var(--text); }
.knowledge-inline-ad .knowledge-inline-ad-note,
.reset-history-copy .reset-history-note { color: #bac9e5; }
.reset-history-legend [data-kind="banked"],
.reset-history-item[data-kind="banked"] .reset-history-date span,
.reset-history-legend [data-kind="notice"],
.reset-history-item[data-kind="notice"] .reset-history-date span { color: #17233b; }
.site-footer-discovery a { background: #192a47; color: #c3d5f7; border-color: #314b70; }
@media (max-width:1100px) {
  .discovery-hero { min-height: 550px; }
  .discovery-hero-copy h1 { font-size: 44px; }
  .hero-actions { display:grid; }
  .visual-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .featured-stories { padding:30px 22px; gap:14px; }
}
@media (max-width:760px) {
  .discovery-hero { display: grid; grid-template-columns: 1fr; max-height: none; }
  .discovery-hero-image { grid-row: 1; height: 450px; }
  .discovery-hero-image img { object-position: center 30%; }
  .discovery-hero-image > span { left: 20px; bottom: 20px; }
  .discovery-hero-copy { padding: 30px 24px; }
  .discovery-hero-copy h1 { font-size: 44px; margin: 10px 0 20px; }
  .hero-actions { display:flex; }
  .hero-collection { margin-top:24px; padding-top:20px; }
  .discovery-choices { grid-template-columns:1fr; }
  .discovery-choices a { padding:23px; border-bottom:1px solid var(--line); }
  .featured-stories { grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; padding:25px 12px; }
  .featured-stories a > div { padding:12px 9px; }
  .featured-stories h2 { font-size:13px; }
  .featured-stories p { font-size:10px; }
  .featured-stories span { font-size:8px; letter-spacing:0; }
  .gallery-heading { padding:20px 18px; }
  .visual-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding:18px 12px 28px; gap:12px; }
  .commercial-module { grid-column:1/-1; }
  .product-grid { padding:18px 12px; }
  .product-shelf-section > header { flex-direction:column; align-items:stretch; gap:10px; }
  .product-shelf-section > header > a { align-self:flex-end; white-space:nowrap; }
  .post-layout, .making-grid, .making-next { grid-template-columns:1fr; }
  .post-info { padding:25px 22px; }
  .post-info h1 { font-size:26px; }
  .post-making { padding:30px 20px; }
  .making-prompt { padding:20px; }
  .post-stage { position:static; }
  .original-portrait img { max-height:none; }
  .mobile-nav .nav-item { flex-direction:column; padding:8px 2px; border-radius:0; min-height:65px; gap:5px; font-size:10px; line-height:1.2; }
  .mobile-nav .nav-item .icon { width:21px; height:21px; flex-shrink:0; }
  .prompt-tile, .tag-prompt-links .prompt-tile { display:flex; flex-direction:column; min-height:0; background:var(--surface); border:1px solid var(--line); }
  .prompt-tile img { height:140px; min-height:0; object-fit:cover; }
  .prompt-tile > span { position:static; flex:1; padding:12px; border-left:3px solid var(--pink); background:var(--surface); }
  .prompt-tile strong, .tag-prompt-links .prompt-tile strong { font-size:16px; line-height:1.5; text-shadow:none; overflow-wrap:anywhere; }
  .mobile-nav { background:#0b1325; padding-bottom:env(safe-area-inset-bottom); }
  .mobile-header { border-bottom:1px solid var(--line); }
  .site-footer { padding-bottom:110px; }
  .search-paths > div > a { color:#e0eaff; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { transition:none !important; animation:none !important; }
}

/* Portrait-to-work selection: no visual resemblance is inferred from tags. */
.uniform-entry, .uniform-picker { padding:40px clamp(18px,4vw,60px); }
.uniform-entry { background:linear-gradient(135deg,#192945,#12233c); }
.uniform-entry h3 { font-size:clamp(22px,3vw,34px); margin:0 0 12px; }
.uniform-entry > .visual-grid { padding:24px 0; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:760px; }
.uniform-picker { background:linear-gradient(155deg,#192440,#101b30 65%); scroll-margin-top:75px; }
.uniform-picker h2 { font-size:clamp(24px,3vw,38px); line-height:1.4; margin:12px 0; }
.uniform-picker header { max-width:780px; }
.uniform-note { color:#b9c8e0; font-size:13px; line-height:1.8; }
.uniform-picker .affiliate-disclosure { color:#d2e1f8; }
.uniform-controls { display:flex; flex-wrap:wrap; gap:16px; align-items:end; padding:22px 0; }
.uniform-controls label { display:grid; gap:8px; font-weight:700; font-size:14px; }
.uniform-controls select, .uniform-controls button { min-height:46px; border:1px solid #788da9; border-radius:8px; background:#182b48; color:#fff; padding:10px 14px; font:inherit; }
.uniform-controls .uniform-sample-toggle { display:flex; align-items:center; min-height:46px; }
.uniform-controls input { width:22px; height:22px; accent-color:#ff5886; }
.uniform-controls button { cursor:pointer; }
.uniform-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.uniform-option { min-width:0; display:flex; flex-direction:column; border:1px solid #3b506c; border-radius:12px; overflow:hidden; background:#14243b; }
.uniform-option .visual-card { flex:1; border:none; border-radius:0; }
.uniform-option .card-copy { flex:1; }
.uniform-facts { padding:16px; border-bottom:1px solid #3b506c; }
.uniform-facts span { display:inline-block; font-weight:700; color:#fff; background:#364c74; border-radius:20px; padding:5px 12px; }
.uniform-facts p { margin:10px 0 0; font-size:13px; color:#d2e1f8; }
.uniform-detail { display:block; padding:16px; color:#fff; font-weight:700; border-top:1px solid #3b506c; line-height:1.6; }
.uniform-detail:hover { background:#2c4265; }
.uniform-result { font-weight:700; }
.uniform-empty { padding:24px; border:1px solid #9cafc8; border-radius:8px; }
.uniform-more { display:flex; gap:18px; flex-wrap:wrap; padding:26px 18px; }
.uniform-more a { color:#e5efff; text-decoration:underline; text-underline-offset:5px; line-height:1.8; }
.uniform-portraits { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:900px; }
.uniform-controls[hidden], .uniform-option[hidden], .uniform-empty[hidden] { display:none; }
.uniform-picker :focus-visible, .uniform-entry :focus-visible { outline:3px solid #ffcb66; outline-offset:4px; }
@media(max-width:700px) {
  .uniform-entry, .uniform-picker { padding:28px 16px; }
  .uniform-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .uniform-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .uniform-controls label, .uniform-controls select { min-width:0; max-width:100%; }
  .uniform-controls .uniform-sample-toggle { grid-column:1/-1; }
  .uniform-controls button { grid-column:1/-1; }
}
