/* Approved ivory editorial direction. Public pages only; no admin overrides. */
:root {
  color-scheme: light;
  --ink: #f5f3ee; --ink-raised: #fdfcf9; --ink-soft: #eae6de;
  --paper: #222320; --paper-soft: #50524d; --muted: #686a63; --muted-dark: #72746d;
  --line: #d7d5ce; --line-soft: #e3e0d9; --acid: #b94c24; --acid-deep: #963917;
  --blue: #315d77; --danger: #b52d29; --warning: #895713; --max: 1440px; --radius: 5px;
  background: var(--ink); color: var(--paper);
}
body { background:var(--ink); color:var(--paper); -webkit-font-smoothing:antialiased; }
[hidden] { display:none!important; }
h1,h2,h3 { color:var(--paper); font-family:Georgia,'Noto Serif SC','Songti SC',SimSun,serif; font-weight:600; letter-spacing:-.035em; }
a,button,input,select,textarea { -webkit-tap-highlight-color:transparent; }
a,button { touch-action:manipulation; }
.site-shell { width:min(var(--max),calc(100% - 112px)); margin-inline:auto; }
.site-header { background:#f5f3eef5; border-bottom:1px solid var(--line); backdrop-filter:blur(12px); }
.site-nav { min-height:82px; gap:28px; }
.wordmark { display:inline-flex; align-items:center; gap:13px; margin-right:auto; }
.wordmark::before { content:''; display:block; width:30px; height:38px; background:var(--acid); mask:url('covers/leaf-mark.svg') center/contain no-repeat; }
.wordmark-en { font:800 30px/1 system-ui,sans-serif; letter-spacing:-.075em; text-transform:lowercase; }
.wordmark-cn { font-size:12px; font-weight:500; letter-spacing:.06em; color:var(--paper-soft); border-left:1px solid var(--line); padding-left:13px; }
.nav-links { gap:25px; color:var(--paper-soft); font-size:13px; }
.nav-links a { font-family:inherit; min-height:58px; position:relative; }
.nav-links a[aria-current=page] { color:var(--acid); border-color:var(--acid); font-weight:600; }
.nav-links a[data-nav-key=software],.nav-links a[data-nav-key=plugin],.nav-links a[data-nav-key=video] { display:none; }
.nav-tools { gap:16px; }
.nav-tool { font-size:12px; color:var(--paper-soft); }
.nav-tool--account { background:transparent; color:var(--paper); border:1px solid #979a91; border-radius:4px; padding:0 18px; min-height:38px; max-width:155px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nav-tool--account:hover { background:var(--ink-soft); }
.menu-button { color:var(--paper); background:transparent; border:1px solid var(--line); }
.mobile-nav { background:var(--ink); }
.button { border-radius:4px; font-size:13px; font-weight:550; letter-spacing:0; min-height:44px; padding:0 20px; }
.button--primary { color:#fff; background:var(--acid); border-color:var(--acid); }
.button--primary:hover { color:#fff; background:var(--acid-deep); border-color:var(--acid-deep); }
.button--quiet { background:transparent; color:var(--paper-soft); }
.button--quiet:hover { background:var(--ink-soft); color:var(--paper); }
.ivory-text-link { display:inline-flex; align-items:center; min-height:40px; font-size:13px; font-weight:550; gap:12px; }
.ivory-text-link:hover { color:var(--acid); }
.ivory-kicker { display:block; font-size:11px; line-height:1.5; letter-spacing:.12em; color:var(--muted); margin:0; }
.ivory-hero { display:grid; grid-template-columns:minmax(0,.77fr) minmax(0,1.5fr); gap:40px; padding-block:30px 26px; align-items:stretch; }
.ivory-copy { display:flex; flex-direction:column; padding-top:38px; }
.ivory-copy h1 { margin:28px 0 22px; font-size:clamp(33px,3.65vw,58px); line-height:1.36; letter-spacing:-.075em; }
.ivory-copy h1 span { white-space:nowrap; }
html[lang=en] .ivory-copy h1 { font-size:clamp(32px,3.8vw,54px); letter-spacing:-.05em; }
html[lang=en] .ivory-copy h1 span { white-space:normal; }
.ivory-lede { color:var(--paper-soft); font-size:14px; line-height:1.95; max-width:350px; margin:0; }
.ivory-actions { display:flex; align-items:center; gap:25px; margin:32px 0 38px; }
.ivory-actions .button { min-height:49px; padding-inline:24px; }
.ivory-signature { display:flex; justify-content:space-between; gap:15px; margin-top:auto; padding-bottom:9px; font:9px/1.5 monospace; letter-spacing:.08em; color:var(--muted); }
.ivory-feature { background:#1a1d20; color:#f5f3ee; border:1px solid #2b3034; border-radius:7px; overflow:hidden; margin:0; box-shadow:0 12px 32px #2323230d; }
.ivory-feature-image { display:block; position:relative; padding:16px 16px 0; overflow:hidden; }
.ivory-feature-image img { width:100%; height:auto; aspect-ratio:1.96; object-fit:cover; transition:filter .25s; }
.ivory-feature-image:hover img { filter:brightness(1.08); }
.ivory-feature-caption { display:block; font-size:9px; line-height:1.5; color:#b5bac0; padding-top:9px; }
.ivory-feature-bottom { padding:18px 23px 21px; display:flex; align-items:center; justify-content:space-between; gap:15px; }
.ivory-feature-label { font:9px/1.5 monospace; color:#aeb4ba; letter-spacing:.15em; }
.ivory-feature h2 { font:650 26px/1.25 system-ui,sans-serif; color:#faf9f5; margin:6px 0; letter-spacing:-.045em; }
.ivory-feature p { color:#c1c5c9; font-size:12px; margin:0; }
.ivory-download { display:flex; flex-direction:column; gap:9px; align-items:flex-end; }
.ivory-download>span { color:#bdc2c6; font:10px/1.4 monospace; }
.ivory-download .button { background:#c7582e; border-color:#c7582e; white-space:nowrap; }
.ivory-download .button:hover { background:#a6421f; }
.ivory-collection { scroll-margin-top:90px; }
.ivory-discovery { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:25px 0; border-top:1px solid var(--line); }
.ivory-discovery h2 { font-size:24px; margin:7px 0 0; }
.ivory-discovery .ivory-kicker { font-size:9px; }
.ivory-home-search { display:flex; width:min(480px,48%); background:var(--ink-raised); border:1px solid var(--line); border-radius:5px; overflow:hidden; }
.ivory-home-search:focus-within { border-color:var(--acid); box-shadow:0 0 0 2px #b94c2418; }
.ivory-home-search input { min-width:0; flex:1; width:100%; border:0; background:transparent; padding:14px 16px; color:var(--paper); font:inherit; font-size:13px; }
.ivory-home-search input:focus { outline:none; }
.ivory-home-search button { border:0; border-left:1px solid var(--line); padding:12px 20px; background:transparent; color:var(--acid); font:inherit; font-size:13px; white-space:nowrap; cursor:pointer; }
.ivory-home-search button:hover { background:var(--ink-soft); }
@media(max-width:760px) { .ivory-discovery { align-items:stretch; flex-direction:column; gap:17px; padding:24px 0; } .ivory-home-search { width:100%; } .ivory-discovery h2 { font-size:23px; } }
.ivory-category-bar { display:flex; justify-content:space-between; gap:16px; border-block:1px solid var(--line); overflow-x:auto; scrollbar-width:thin; }
.ivory-category-bar button { background:none; border:0; border-bottom:2px solid transparent; color:var(--paper-soft); padding:18px 12px 16px; min-height:56px; font-size:13px; flex-shrink:0; }
.ivory-category-bar button[aria-pressed=true] { color:var(--acid); border-color:var(--acid); font-weight:650; }
.ivory-category-bar button:hover { color:var(--acid); background:#ebe7df66; }
.ivory-category-bar button:focus-visible { outline-offset:-4px; }
.ivory-section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-block:23px 20px; }
.ivory-section-heading h2 { font-size:29px; margin:5px 0 0; }
.ivory-tools { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:23px; min-height:160px; padding-bottom:30px; }
.ivory-tool { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:start; gap:17px; min-width:0; padding-right:22px; border-right:1px solid var(--line); }
.ivory-tool:last-child { padding-right:0; border-right:0; }
.ivory-tool-image { background:#e6e3dc; border-radius:3px; overflow:hidden; }
.ivory-tool img { width:100%; height:146px; object-fit:contain; padding:5px; transition:transform .2s; }
.ivory-tool-image:hover img { transform:scale(1.04); }
.ivory-tool h3 { font-size:21px; margin:2px 0 8px; letter-spacing:-.025em; }
.ivory-tool p { font-size:12px; line-height:1.6; color:var(--muted); margin:0 0 10px; }
.ivory-tool-platform { display:block; color:var(--muted); font:9px/1.5 monospace; }
.ivory-tool .ivory-text-link { font-size:11px; margin-top:10px; }
.ivory-journal { display:grid; grid-template-columns:auto 1fr 135px; align-items:center; gap:35px; padding-block:23px; border-top:1px solid var(--line); }
.ivory-journal h2 { font-size:23px; margin:0; }
[data-ivory-journal] { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
[data-ivory-journal]>a { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-left:28px; border-left:1px solid var(--line); font-size:12px; line-height:1.7; }
[data-ivory-journal]>a:hover { color:var(--acid); }
[data-ivory-journal] time { display:block; color:var(--muted); font:10px/1.8 monospace; margin-top:3px; }
.ivory-journal>p { font-size:11px; line-height:1.8; color:var(--muted); margin:0; padding-left:20px; border-left:1px solid var(--line); }
.site-footer { background:transparent; border-top:1px solid var(--line); margin-top:0; padding:24px 0; }
.footer-row { align-items:center; gap:22px; }
.footer-row>div { display:flex; align-items:center; gap:24px; }
.footer-row strong { font:650 17px/1.4 system-ui,sans-serif; letter-spacing:-.03em; }
.footer-note,.ivory-footer-note { font-size:11px; color:var(--muted); margin:0; }
.footer-nav { font-size:11px; gap:20px; }
/* Carry the same materials through the existing public workflows. */
.page-head,.account-page-head { background:transparent; padding:46px 0 30px; border-bottom:1px solid var(--line); }
.page-head h1 { font-size:44px; line-height:1.2; margin-block:13px 16px; }
.eyebrow { color:var(--muted); font-size:10px; }
.section { padding-block:35px 50px; }
.listing-toolbar { padding:0 0 22px; background:none; border:0; border-bottom:1px solid var(--line); border-radius:0; gap:16px; }
.search-input { background:var(--ink-raised); border:1px solid var(--line); border-radius:4px; height:50px; }
.filter-row { gap:8px; }
.filter-row { display:flex; align-items:start; flex-wrap:wrap; }
.ivory-type-filters { display:flex; flex-wrap:wrap; gap:6px; }
.ivory-type-filters .filter-button { background:transparent; border-color:transparent; border-radius:0; min-height:40px; border-bottom:2px solid transparent; }
.ivory-type-filters .filter-button[aria-pressed=true] { color:var(--acid); border-bottom-color:var(--acid); background:transparent; }
.ivory-tag-filter { margin-left:auto; min-width:145px; max-width:100%; }
.ivory-tag-filter summary { padding:11px 13px; cursor:pointer; color:var(--paper-soft); font-size:12px; }
.ivory-tag-filter[open] { flex-basis:100%; }
.ivory-tag-options { display:flex; flex-wrap:wrap; gap:7px; padding:10px 0; }
.filter-button { background:transparent; color:var(--paper-soft); border:1px solid var(--line); border-radius:4px; padding:7px 12px; }
.filter-button[aria-pressed=true] { background:var(--paper); color:#fff; border-color:var(--paper); }
.filter-button:hover { border-color:var(--acid); }
.resource-grid { gap:24px; }
.resource-card { border:1px solid var(--line); background:var(--ink-raised); border-radius:5px; box-shadow:none; }
.resource-card:hover { transform:translateY(-3px); border-color:#9c9c93; box-shadow:0 10px 24px #25231f08; }
.resource-card h2 { font-size:24px; }
.resource-card p { font-size:13px; }
.product-media { background:#e9e6df!important; }
.product-media img { filter:none; }
.media-label { color:#565a54; }
.resource-card-body { padding:22px; }
.tag { color:var(--muted); background:var(--ink); border:1px solid var(--line-soft); border-radius:3px; }
.product-facts,.product-facts span { color:var(--paper-soft); border-color:var(--line); }
.page-main .detail-title { font-size:clamp(36px,4.2vw,58px); }
.detail-cover { box-shadow:none; border:1px solid var(--line); border-radius:5px; }
.image-credit { background:var(--ink-raised); color:var(--muted); }
.detail-kicker { color:var(--acid); background:transparent; border-color:var(--line); border-radius:3px; }
.detail-meta,.download-row,.related-link,.capability-grid article,.product-overview aside,.about-stamp,.band,.studio-note { background:var(--ink-raised); color:var(--paper); border-color:var(--line); border-radius:5px; }
.product-overview aside { border-left:2px solid var(--acid); }
.product-jump { background:#f5f3eef5; top:82px; color:var(--paper-soft); }
.product-gallery { background:#e9e6df; border-color:var(--line); border-radius:5px; }
.gallery-open span { background:var(--paper); color:#fff; border-radius:3px; }
.image-dialog { background:var(--ink); color:var(--paper); border-radius:5px; }
.image-dialog button { background:var(--ink-raised); color:var(--paper); }
.image-dialog::backdrop { background:#141618dc; }
.account-content .auth-panel { background:var(--ink-raised); border-radius:5px; box-shadow:none; }
.account-page .auth-panel::after { display:none; }
.account-page .auth-form input,#site-feedback-form input,#site-feedback-form textarea { background:var(--ink-raised); color:var(--paper); border:1px solid #b8bab1; border-radius:4px; }
#site-feedback-form input::placeholder,#site-feedback-form textarea::placeholder { color:var(--muted); }
.account-page .auth-tab[aria-selected=true] { color:var(--acid); border-color:var(--acid); }
.feedback-page .feedback-panel { background:var(--ink-raised); border-color:var(--line); border-radius:5px; box-shadow:none; }
.feedback-page .feedback-submit { background:var(--acid); color:#fff; border-color:var(--acid); }
.feedback-page .feedback-intro h1 { font-size:clamp(36px,3.5vw,52px); }
.feedback-page .feedback-layout { padding-top:40px; gap:64px; }
.feedback-page .feedback-panel { padding:32px; }
.toast { color:#fff; background:#252722; border-color:#484b43; }
@media(min-width:1600px) { .ivory-copy h1 { font-size:58px; } }
@media(max-width:1150px) {
  .site-shell { width:calc(100% - 64px); }
  .site-nav { gap:18px; } .nav-links { gap:18px; } .nav-tools { gap:12px; }
  .nav-tool[data-locale] { display:none; }
  .ivory-hero { gap:26px; grid-template-columns:.85fr 1.25fr; }
  .ivory-copy { padding-top:18px; } .ivory-copy h1 { font-size:clamp(31px,3.55vw,43px); }
  .ivory-actions { gap:18px; margin:25px 0 30px; }
  .ivory-feature-bottom { padding:16px; } .ivory-feature h2 { font-size:23px; }
  .ivory-tool { grid-template-columns:1fr; gap:12px; }
  .ivory-tool-copy { position:relative; } .ivory-tool img { height:150px; }
  .ivory-tool .ivory-text-link { margin-top:5px; }
  .ivory-journal { gap:22px; grid-template-columns:auto 1fr; } .ivory-journal>p { display:none; }
}
@media(max-width:850px) {
  .site-shell { width:calc(100% - 40px); }
  .site-nav { min-height:70px; } .nav-links { display:none; } .menu-button { display:inline-flex; }
  .nav-tool--search { display:inline-flex; } .wordmark-en { font-size:27px; } .wordmark::before { width:25px; height:30px; }
  .ivory-hero { grid-template-columns:1fr; gap:24px; padding-block:24px; }
  .ivory-copy { padding-top:0; } .ivory-copy h1 { font-size:clamp(33px,6vw,48px); margin-block:20px 16px; }
  .ivory-lede { max-width:100%; } .ivory-actions { margin:22px 0 0; } .ivory-signature { display:none; }
  .ivory-feature-image img { aspect-ratio:2.1; }
  .ivory-collection { scroll-margin-top:75px; }
  .ivory-category-bar { gap:8px; } .ivory-category-bar button { padding-inline:14px; font-size:12px; }
  .ivory-journal { grid-template-columns:1fr; gap:17px; } [data-ivory-journal]>a:first-child { border:0; padding-left:0; }
  .product-jump { top:70px; gap:20px; overflow-x:auto; white-space:nowrap; }
  .feedback-page .feedback-layout { grid-template-columns:1fr; gap:28px; }
  .footer-row { flex-direction:column; align-items:flex-start; }
}
@media(max-width:540px) {
  .site-shell { width:calc(100% - 36px); }
  .site-nav { gap:10px; } .nav-tools { gap:9px; } .wordmark { gap:9px; } .wordmark-cn { display:none; }
  .nav-tool--account { padding-inline:12px; max-width:95px; } .nav-tool--search { display:none; }
  .ivory-copy h1 { font-size:clamp(29px,8.4vw,43px); letter-spacing:-.055em; }
  .ivory-lede { font-size:13px; } .ivory-copy .ivory-kicker { font-size:10px; }
  .ivory-feature-image { padding:10px 10px 0; } .ivory-feature-image img { aspect-ratio:1.7; }
  .ivory-feature-caption { font-size:8px; } .ivory-feature h2 { font-size:21px; }
  .ivory-feature-bottom { padding:12px; gap:10px; } .ivory-feature-label { font-size:8px; }
  .ivory-feature p { font-size:10px; } .ivory-download .button { padding:0 12px; min-height:40px; font-size:11px; }
  .ivory-download>span { font-size:8px; } .ivory-section-heading { padding-block:22px 18px; }
  .ivory-section-heading h2 { font-size:27px; } .ivory-section-heading>a { font-size:11px; }
  .ivory-tools { grid-template-columns:1fr; gap:0; padding-bottom:16px; min-height:0; }
  .ivory-tool { grid-template-columns:1.15fr 1fr; gap:20px; border:0; border-bottom:1px solid var(--line-soft); padding:17px 0; }
  .ivory-tool:first-child { padding-top:0; } .ivory-tool:last-child { border:0; }
  .ivory-tool img { height:128px; } .ivory-tool h3 { font-size:22px; } .ivory-tool p { margin-bottom:5px; }
  [data-ivory-journal] { grid-template-columns:1fr; gap:0; }
  [data-ivory-journal]>a { border:0; border-bottom:1px solid var(--line-soft); padding:14px 0; }
  .footer-row>div { flex-wrap:wrap; gap:12px; } .footer-nav { flex-wrap:wrap; gap:20px; }
  .page-head h1 { font-size:35px; } .page-head { padding-block:30px 24px; }
  .section { padding-block:25px 35px; }
  .feedback-page .feedback-panel { padding:23px; } .feedback-page .feedback-intro h1 { font-size:35px; }
  .resource-card h2 { font-size:23px; }
}
/* Inner-page refinement: compact catalog and task-first product details. */
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card { display:grid; grid-template-columns:35% minmax(0,1fr); align-items:stretch; min-width:0; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card-cover { background:#e9e6df; display:flex; align-items:center; min-width:0; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card .cover-art { width:100%; aspect-ratio:1; padding:12px!important; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card .cover-art img { object-fit:contain; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card .media-label { display:none; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card h2 { font-size:24px; margin:10px 0; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card-body { padding:19px 21px; min-width:0; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .card-tags { display:none; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .product-facts { margin-top:12px; gap:5px; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .product-facts span { padding:0; border:0; font-size:10px; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .product-facts span+span::before { content:' · '; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card-footer { padding-top:12px; }
body:is([data-page=resources],[data-page=software],[data-page=plugins]) .source-line { display:none; }
.detail-hero { grid-template-columns:minmax(0,1fr) minmax(0,1.13fr); gap:50px; padding:15px 0 36px; }
.detail-summary { font-size:15px; line-height:1.85; }
.detail-title { margin-block:22px 18px; }
.detail-cover .product-media { aspect-ratio:1.25; padding:24px 20px; }
.ivory-download-panel { margin-top:24px; padding:20px 22px; border:1px solid var(--line); border-radius:5px; background:var(--ink-raised); }
.ivory-download-panel>strong { display:block; font-size:15px; margin-top:13px; }
.ivory-download-panel>p { color:var(--muted); font-size:12px; line-height:1.7; margin:7px 0 16px; }
.ivory-download-panel>small { display:block; color:var(--muted); font-size:11px; margin-top:10px; }
.ivory-download-panel .detail-actions { margin-top:0; gap:8px; }
.ivory-download-panel .button { padding-inline:14px; font-size:12px; }
.ivory-product-facts { display:flex; flex-wrap:wrap; gap:8px; font:11px/1.6 monospace; color:var(--paper-soft); }
.ivory-product-facts>span+span { border-left:1px solid var(--line); padding-left:8px; }
.ivory-source-link { display:inline-flex; margin-top:12px; min-height:30px; align-items:center; color:var(--muted); font-size:11px; text-decoration:underline; text-underline-offset:4px; }
.ivory-cover-zoom { display:block; position:relative; width:100%; padding:0; background:none; border:0; color:var(--paper); cursor:zoom-in; }
.ivory-cover-zoom>span { position:absolute; right:12px; bottom:12px; background:var(--ink-raised); border:1px solid var(--line); padding:7px 11px; font-size:11px; border-radius:3px; }
.ivory-download-section { padding:28px 0 38px; margin-bottom:32px; border-bottom:1px solid var(--line); }
.ivory-download-section .detail-section-grid { grid-template-columns:180px minmax(0,1fr); gap:35px; }
.ivory-download-section h2 { font-size:25px; }
.ivory-download-section .download-list { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.ivory-download-section .download-row { padding:17px; margin:0; grid-template-columns:1fr; gap:12px; align-content:start; }
.ivory-download-section .download-row .button { justify-self:start; }
.product-overview { gap:45px; padding-block:34px; }
.product-story section { scroll-margin-top:155px; }
.product-jump a { min-height:32px; display:inline-flex; align-items:center; }
.account-page .account-layout { max-width:960px; margin:auto; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; }
.account-page .account-aside-mark { margin-bottom:35px; }
.account-page .auth-panel-heading h2 { font-size:30px; }
.account-page .account-section { padding-block:35px 50px; }
.account-page .auth-form { max-width:none; }
.ivory-password-field { position:relative; }
.account-page .ivory-password-field input { padding-right:65px; }
.ivory-password-toggle { position:absolute; inset:1px 1px 1px auto; padding:0 14px; border:0; border-left:1px solid var(--line-soft); border-radius:0 3px 3px 0; color:var(--muted); background:var(--ink-raised); font-size:12px; }
.ivory-password-toggle:hover { color:var(--acid); }
@media(max-width:1050px) {
  body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card { grid-template-columns:30% minmax(0,1fr); }
  body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card-body { padding:16px; }
  body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card h2 { font-size:21px; }
  .detail-hero { gap:28px; }
  .ivory-download-section .detail-section-grid { grid-template-columns:1fr; gap:20px; }
}
@media(max-width:760px) {
  body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-grid { grid-template-columns:1fr; }
  body:is([data-page=resources],[data-page=software],[data-page=plugins]) .resource-card { grid-template-columns:32% minmax(0,1fr); }
  .detail-hero { grid-template-columns:1fr; gap:22px; }
  .detail-cover .product-media { aspect-ratio:1.6; }
  .ivory-download-panel { padding:18px; }
  .ivory-download-section .download-list { grid-template-columns:1fr; }
  .account-page .account-layout { display:flex; flex-direction:column; gap:28px; }
  .account-page .account-aside { width:100%; }
  .account-page .account-content .auth-panel { padding:26px 22px; }
  .product-overview { gap:24px; }
}
.ivory-active-filters { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:16px; font-size:12px; color:var(--muted); }
.ivory-active-filters[hidden] { display:none; }
.ivory-active-filters button { max-width:100%; overflow-wrap:anywhere; display:inline-flex; align-items:center; gap:12px; padding:7px 11px; border:1px solid #d9c9ba; background:#ede5db; color:#814522; border-radius:4px; cursor:pointer; font:inherit; }
.ivory-active-filters button:hover { background:#e6d7c7; }
.ivory-active-filters button:focus-visible { outline:2px solid #a64b26; outline-offset:3px; }
/* Final public-site pass: quieter reading layouts and consistent form states. */
body[data-page=articles] .resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
body[data-page=articles] .resource-card-cover .cover-art { aspect-ratio:2.5; }
body[data-page=articles] .resource-card-cover img { width:100%; height:100%; object-fit:contain; background:var(--ink-soft); }
body[data-page=articles] .resource-card h2 { font-size:27px; line-height:1.4; }
body[data-page=articles] .resource-card-body { padding:26px; }
body[data-page=articles] .card-tags { margin-bottom:20px; }
body[data-page=videos] .resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
body[data-detail-kind=article] .detail-hero { grid-template-columns:minmax(0,1.45fr) minmax(0,.7fr); align-items:center; }
body[data-detail-kind=article] .detail-title { font-size:clamp(30px,3.4vw,46px); line-height:1.35; }
body[data-detail-kind=article] .detail-cover .cover-art { aspect-ratio:1.6; }
body[data-detail-kind=article] .detail-cover img { object-fit:contain; background:var(--ink-soft); }
.mobile-nav button[data-locale] { text-align:left; padding:14px 0; color:var(--acid); border:0; border-top:1px solid var(--line); background:none; font:inherit; cursor:pointer; }
.ivory-reading-content { background:var(--ink-raised); border:1px solid var(--line); border-radius:5px; padding:38px; margin:10px 0 34px; }
.ivory-reading-content .detail-section-grid { grid-template-columns:155px minmax(0,1fr); gap:40px; }
.ivory-reading-content .detail-content { max-width:760px; font-size:17px; line-height:2; }
.ivory-reading-content .detail-content p+p { margin-top:24px; }
.about-copy { max-width:790px; }
.about-copy>p { line-height:1.95; }
.principles { gap:20px; }
.ivory-feedback-help { border-block:1px solid var(--line); margin-top:28px; }
.ivory-feedback-help summary { cursor:pointer; font-size:14px; padding:17px 0; color:var(--paper); }
.ivory-feedback-help .feedback-reasons { margin-top:0; border-top:0; }
.feedback-page .feedback-intro .feedback-aside { margin-top:23px; }
.feedback-page .feedback-status[data-kind=error] { background:#fff0e9; color:#872f16; border-color:#dab8a8; }
.feedback-page .feedback-status[data-kind=success] { background:#edf3e8; color:#355128; border-color:#b9ccb0; }
#feedback-count.is-over-limit { color:var(--danger); font-weight:700; }
.auth-notice--error { color:#992f20; }
.auth-notice--success { color:#36532d; }
.auth-form input:focus-visible,#site-feedback-form input:focus-visible,#site-feedback-form textarea:focus-visible { outline:2px solid var(--acid); outline-offset:3px; }
.ivory-recovery-search { width:min(520px,100%); margin:27px 0; }
.not-found-page { min-height:65vh; display:grid; align-items:center; }
.not-found-page .not-found { padding-block:55px; }
.not-found-page h1 { font-size:clamp(34px,5vw,60px); }
.site-footer a:hover { color:var(--acid); }
@media(max-width:850px) {
  body[data-detail-kind=article] .detail-hero { grid-template-columns:1fr; }
  body[data-detail-kind=article] .detail-cover { max-width:520px; }
  body[data-detail-kind=article] .detail-cover .cover-art { aspect-ratio:2.3; }
  .ivory-reading-content .detail-section-grid { grid-template-columns:1fr; gap:20px; }
}
@media(max-width:540px) {
  body[data-page=articles] .resource-grid,body[data-page=videos] .resource-grid { grid-template-columns:1fr; }
  body[data-page=articles] .resource-card h2 { font-size:24px; }
  body[data-page=articles] .resource-card-body { padding:22px; }
  .ivory-reading-content { padding:23px 20px; }
  .ivory-reading-content .detail-content { font-size:16px; line-height:1.9; }
  .feedback-page .feedback-layout { gap:28px; padding-top:24px; }
  .feedback-page .feedback-panel { padding:24px 20px; }
  .feedback-page .feedback-intro h1 { font-size:34px; }
  .about-stamp { min-height:190px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
