/* CGMIR: compact Windows 7 inspired front-end theme.
   Loaded after site.css and before homepage-specific home.css. */
:root {
  color-scheme: light;
  --bg: #e9eff5; --panel: #ffffff; --panel2: #f4f7fa;
  --line: #c0ceda; --line2: #aebfce; --text: #263646;
  --muted: #66798a; --dim: #80909e;
  --gold: #2670a4; --gold2: #215f8d; --gold3: #5d93bc;
  --success: #32794f; --danger: #b33232; --radius: 4px;
  --shadow: 0 2px 5px rgba(43, 70, 93, .12);
}
html { background: var(--bg); scroll-behavior: auto; scroll-padding-top: 68px; }
body { padding-top: 56px; min-width: 320px; background: linear-gradient(#dbe8f4 0, #eef3f8 240px, #e9eff5 520px); color: var(--text); font: 12px/1.6 'Segoe UI', 'Microsoft YaHei', Tahoma, sans-serif; overflow-x: hidden; overflow-x: clip; }
button, input, select, textarea { font-family: inherit; }
a, button, input, select, textarea { -webkit-tap-highlight-color: rgba(58, 129, 181, .16); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #438ec4; outline-offset: 2px; }
button:disabled { cursor: not-allowed; }
button, .btn, .resource-card, .card-art img { transition: background-color .15s, border-color .15s, color .15s; }
.container { width: min(1440px, calc(100% - 32px)); margin-left: auto; margin-right: auto; }
.ambient { display: none; }
.page { min-height: calc(100vh - 260px); }

/* Fixed shared navigation; body reserves the same 56px to avoid covering content. */
.site-header { position: fixed; top: 0; left: 0; right: 0; height: 56px; background: linear-gradient(#f6fbff, #dfebf6 48%, #d0e1ef 49%, #e1edf7); border-bottom: 1px solid #9fb8cd; box-shadow: 0 1px 3px #7b9bb72b; backdrop-filter: none; -webkit-backdrop-filter: none; }
.header-inner { gap: 20px; }
.brand { gap: 7px; }
.brand-icon { width: 30px; height: 30px; border: 1px solid #6e9aba; border-radius: 4px; background: linear-gradient(#eef9ff, #a4c9e4); color: #326c98; box-shadow: inset 0 1px #fff; font-size: 23px; }
.brand-text { color: #2e536f; font-size: 19px; font-weight: 700; letter-spacing: .015em; text-shadow: 0 1px #fff; }
.brand-text > span { color: #2776ad; }
.brand-text small { margin-top: 3px; color: #58758b; font-size: 9px; letter-spacing: .15em; font-weight: 400; }
.desktop-nav { gap: 6px; }
.desktop-nav a { padding: 5px 9px; font-size: 12px; font-weight: 400; color: #344f65; border: 1px solid transparent; border-radius: 3px; }
.desktop-nav a:hover, .desktop-nav a.active { color: #174f79; border-color: #9dbbd3; background: linear-gradient(#f9fcff, #cce4f7); box-shadow: inset 0 1px #fff; }
.header-actions { gap: 8px; margin-left: 0; }
.header-account { gap: 8px; }
.header-account .user-label { color: #305a7a; font-size: 12px; max-width: 100px; }
.icon-btn { width: 29px; height: 29px; border-radius: 3px; color: #426881; }
.icon-btn:hover { background: #cfe3f2; color: #194b6e; }
.icon-btn svg { width: 17px; height: 17px; }
.mobile-nav { top: 56px; background: #eef6fc; border-bottom-color: #a5bfd3; box-shadow: 0 3px 6px #496a8421; }
.mobile-nav a { color: #325671; border-radius: 3px; }
.mobile-nav a:hover { background: #dcebf7; color: #154f7b; }

/* Controls */
.btn { border-radius: 3px; padding: 7px 13px; font-size: 12px; font-weight: 400; line-height: 1.4; gap: 6px; box-shadow: inset 0 1px #ffffffd9; }
.btn:hover { transform: none; }
.btn-primary { color: #17476a; background: linear-gradient(#f9fdff 0, #e2f2fd 48%, #c8e5f8 49%, #dceffc 100%); border: 1px solid #80a9c7; box-shadow: inset 0 1px #fff, 0 1px 1px #365e7c12; }
.btn-primary:hover { color: #103f64; background: linear-gradient(#f1fbff, #badff7); border-color: #548db8; box-shadow: inset 0 1px #fff; }
.btn-primary:active { background: #c0dff2; box-shadow: inset 0 1px 3px #56748b35; }
.btn-outline, .btn-ghost { color: #365a73; background: linear-gradient(#fff, #e9eff4); border-color: #acbdcb; }
.btn-outline:hover, .btn-ghost:hover { color: #174f77; border-color: #80a6c3; background: #e7f3fc; }
.btn-text { color: #2b648e; background: none; box-shadow: none; padding: 6px 2px; }
.btn-text:hover { color: #124c77; text-decoration: underline; }
.btn:disabled, input:disabled, select:disabled, textarea:disabled { color: #7b8791; background: #eef1f3; border-color: #c6cfd6; opacity: .75; box-shadow: none; }
.searchbar { background: #fff; border-color: #a9bccb; border-radius: 4px; padding: 4px 4px 4px 10px; gap: 6px; box-shadow: inset 0 1px 2px #526e8314; }
.searchbar:focus-within { border-color: #4b91c5; box-shadow: 0 0 0 2px #4a9cd61a; }
.searchbar svg { color: #6b879b; width: 17px; height: 17px; }
.searchbar input { color: #293d4d; font-size: 12px; padding: 6px; }
.searchbar input::placeholder { color: #8493a0; }
.searchbar .btn { padding: 7px 14px; }
.hot-words { font-size: 11px; margin-top: 8px; gap: 7px; color: #708394; }
.hot-words a { color: #3b6687; background: #f3f8fc; border-color: #c4d5e3; border-radius: 3px; padding: 1px 7px; }
.hot-words a:hover { color: #174d77; background: #e6f2fc; border-color: #85acc9; }
.field, .textarea { border: 1px solid #b2c1cd; border-radius: 3px; color: #293c4c; background: #fff; padding: 8px 10px; font-size: 12px; box-shadow: inset 0 1px 2px #334d6110; }
.field:focus, .textarea:focus { border-color: #5c9ccd; box-shadow: 0 0 0 2px #4899d31a; }
.field::placeholder, .textarea::placeholder { color: #8996a1; }
.form-row { margin-bottom: 13px; }
.form-row label { color: #465f73; font-size: 12px; font-weight: 400; margin-bottom: 4px; }
.form-hint { color: #71818d; font-size: 11px; }
.form-error { color: #b33333; font-size: 12px; }
.select { color: #2b465c; background-color: #fff; border: 1px solid #aebfcc; border-radius: 3px; padding: 6px 28px 6px 9px; min-width: 110px; font-size: 12px; background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="%2353748e" stroke-width="2"%3E%3Cpath d="m6 9 6 6 6-6"/%3E%3C/svg%3E'); background-position: right 8px center; }
.select option { background: #fff; color: #293e4f; }
.select:focus { border-color: #5794c3; }

/* Content panels and resource cards */
.section { padding: 24px 0; }
.section-tight { padding-top: 20px; padding-bottom: 12px; }
.section-head { gap: 12px; margin-bottom: 14px; }
.eyebrow { color: #5e829d; font-size: 10px; letter-spacing: .08em; font-weight: 400; }
.eyebrow:before { width: 14px; background: #82a5bf; }
.section-title { font-size: 20px; font-weight: 600; letter-spacing: 0; margin: 3px 0 4px; color: #2e526d; }
.section-sub { color: #708190; font-size: 12px; }
.section-link { color: #2d6c99; font-size: 12px; font-weight: 400; }
.resource-grid { gap: 14px; }
.resource-card { background: #fff; border: 1px solid #bdcbd7; border-radius: 4px; box-shadow: 0 1px 2px #435e7710; }
.resource-card:hover { transform: none; border-color: #689bc1; box-shadow: 0 1px 4px #4380ae24; }
.card-art { height: 170px; background: #dae4ee; }
.card-art:after { height: 36px; background: linear-gradient(transparent, #1d354224); }
.card-art img, .resource-card:hover .card-art img { transform: none; }
.card-art .category-pill { left: 8px; top: 8px; }
.category-pill { padding: 2px 6px; border-radius: 3px; color: #315d7a; border: 1px solid #9eb9ce; background: #eff7fdea; backdrop-filter: none; font-size: 10px; font-weight: 400; }
.card-body { padding: 10px 11px; color: #2d4050; }
.card-body h3 { font-size: 13px; line-height: 1.5; font-weight: 600; margin-bottom: 5px; color: #2b4c66; }
.resource-card:hover h3 { color: #135f95; }
.card-desc { height: 34px; color: #758391; font-size: 11px; line-height: 1.55; margin-bottom: 8px; }
.card-meta { color: #768898; font-size: 10px; gap: 10px; padding-top: 6px; border-color: #e2e9ef; }
.card-meta .card-arrow { color: #497ca4; font-size: 14px; }
.tag-row { gap: 6px; }
.tag { padding: 2px 7px; border-radius: 3px; background: #f0f6fa; border-color: #c7d7e3; color: #617f94; }
.tag:hover { color: #255e88; border-color: #8ab0cd; }
.empty { padding: 36px 20px; border: 1px dashed #b3c6d6; background: #f8fbfe; border-radius: 4px; }
.empty-icon { color: #80a9c6; font-size: 30px; }
.empty h3 { color: #4a6478; font-size: 15px; font-weight: 400; margin: 8px 0 4px; }
.empty p { color: #7a8b98; font-size: 12px; margin-bottom: 12px; }
.loading { color: #6e879a; font-size: 12px; min-height: 150px; }
.loading:before { width: 15px; height: 15px; border-color: #c1d6e5; border-top-color: #4c91c2; }
.announcement { color: #476984; background: #f4f9fd; border-bottom: 1px solid #c0d3e2; padding: 6px 16px; font-size: 11px; }

/* Catalog */
.page-top { padding: 24px 0 20px; background: linear-gradient(#f4f9fd, #e4eef7); border-bottom: 1px solid #c0d0df; }
.breadcrumb { color: #7c90a0; font-size: 11px; margin-bottom: 8px; }
.breadcrumb a { color: #477897; }
.breadcrumb a:hover { color: #205c89; text-decoration: underline; }
.page-top h1 { color: #305572; font-size: 26px; line-height: 1.35; margin-bottom: 6px; font-weight: 600; }
.page-top p { color: #728696; font-size: 12px; }
.catalog-layout { grid-template-columns: 200px minmax(0, 1fr); gap: 18px; padding: 20px 0 38px; }
.catalog-main { min-width: 0; }
.filters { top: 72px; padding: 14px; background: #f8fbfe; border: 1px solid #b8ccdc; border-radius: 4px; }
.filter-title { font-size: 13px; font-weight: 600; color: #345b77; margin-bottom: 10px; }
.filter-title button { color: #778e9f; }
.filter-title button:hover { color: #24648f; }
.filter-group { border-color: #d8e3ec; margin-top: 14px; padding-top: 13px; }
.filter-group h3 { color: #506e84; font-weight: 600; margin-bottom: 7px; }
.filter-list { gap: 3px; }
.filter-list a, .filter-list button { padding: 6px 8px; border-radius: 3px; color: #668195; }
.filter-list a:hover, .filter-list a.active, .filter-list button:hover, .filter-list button.active { color: #20577f; background: #dfedf8; }
.filter-count { color: #8b9ca9; }
.catalog-search { background: #fff; border-color: #acbfcd; border-radius: 4px; padding: 6px 9px; margin-bottom: 12px; }
.catalog-search:focus-within { border-color: #5796c4; }
.catalog-search input { color: #2f4657; font-size: 12px; }
.catalog-search input::placeholder { color: #8899a6; }
.catalog-search svg { color: #6d8aa0; }
.catalog-search button { color: #2f719f; font-size: 12px; }
.catalog-toolbar { margin-bottom: 13px; gap: 10px; }
.catalog-toolbar p { color: #748795; font-size: 11px; }
.catalog-toolbar strong { color: #2a6b98; }
.pagination { gap: 5px; margin-top: 23px; }
.pagination button { min-width: 29px; height: 28px; border-radius: 3px; border-color: #b1c5d5; background: linear-gradient(#fff, #e7eff6); color: #52748d; font-size: 12px; }
.pagination button.active, .pagination button:hover { background: linear-gradient(#e6f6ff, #c4e1f4); border-color: #75a1c1; color: #1d577f; }
.pagination > span { color: #7a8e9e; }

/* Resource detail */
.detail-wrap { padding: 24px 0 40px; }
.detail-crumb { margin-bottom: 15px; overflow-wrap: anywhere; }
.detail-grid { gap: 24px; }
.detail-preview { background: #fff; border: 1px solid #b8cbdc; border-radius: 4px; }
.detail-image { background: #d9e5ef; }
.detail-preview-foot { color: #7b8f9e; padding: 8px 12px; font-size: 11px; }
.detail-info { min-width: 0; }
.detail-info h1 { font-size: 25px; font-weight: 600; color: #2d526e; margin: 10px 0; overflow-wrap: anywhere; }
.detail-lead { color: #6d8395; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.detail-meta { border-color: #cad9e5; gap: 10px; padding: 15px 0; margin: 16px 0; }
.detail-meta div { color: #7d91a0; font-size: 11px; }
.detail-meta b { color: #3d607a; font-size: 12px; font-weight: 400; }
.detail-actions { gap: 8px; margin-top: 18px; }
.detail-actions .btn { padding: 9px 19px; }
.detail-section { background: #fff; border: 1px solid #c0d0dd; border-radius: 4px; padding: 18px; margin-top: 22px; }
.detail-section h2 { font-size: 16px; color: #3c6380; font-weight: 600; margin-bottom: 11px; }
.detail-section p, .detail-section ul { color: #657e91; font-size: 12px; overflow-wrap: anywhere; }

/* Authentication, member pages, contact and guides */
.auth-wrap { max-width: 830px; min-height: 450px; margin: 35px auto 45px; background: #fff; border: 1px solid #b8ccdb; border-radius: 5px; box-shadow: 0 2px 8px #446b8912; }
.auth-promo { padding: 30px; background: linear-gradient(135deg, #d2e5f4, #eff7fc); }
.auth-promo h2 { color: #3c7197; font-size: 29px; font-weight: 400; margin-top: 23px; }
.auth-promo p { color: #6c8ba2; font-size: 12px; }
.auth-promo .brand-icon { width: 40px; height: 40px; font-size: 28px; }
.auth-promo blockquote { color: #66869f; background: #ffffff70; border-color: #79a8cb; padding: 11px 13px; font-size: 11px; }
.auth-panel { padding: 31px; }
.auth-panel h1 { font-size: 23px; color: #365c77; font-weight: 600; }
.auth-panel > p { color: #80919e; font-size: 12px; margin-bottom: 21px; }
.auth-submit { padding: 9px; }
.auth-switch { color: #7b8d9b; font-size: 11px; margin-top: 17px; }
.auth-switch a { color: #2d709f; font-weight: 400; }
.auth-switch .link-button { border: 0; background: none; color: #2d709f; padding: 0; font-size: 11px; text-decoration: underline; }
.auth-switch .link-button:hover, .auth-switch a:hover { color: #155b8b; }
.auth-switch .link-button:disabled { color: #8a9ca9; text-decoration: none; cursor: default; }
.verify-code { text-align: center; letter-spacing: .3em; font-size: 17px; font-variant-numeric: tabular-nums; }
.member-layout { grid-template-columns: 190px minmax(0, 1fr); padding: 25px 0 45px; gap: 18px; }
.member-nav { background: #f7fbfe; border: 1px solid #bdcfdc; border-radius: 4px; padding: 13px; }
.member-head { padding: 4px 6px 13px; border-color: #d3e0ea; margin-bottom: 8px; }
.member-avatar { width: 36px; height: 36px; border: 1px solid #a3c1d7; background: linear-gradient(#eaf7ff, #c0daed); color: #487d9f; border-radius: 4px; font-size: 21px; margin-bottom: 8px; }
.member-head b { color: #3c617b; font-size: 13px; font-weight: 600; }
.member-head span { color: #8195a4; }
.member-nav a, .member-nav button { color: #688499; border-radius: 3px; padding: 7px 8px; font-size: 12px; }
.member-nav a.active, .member-nav a:hover, .member-nav button:hover { color: #1e5c87; background: #deedf8; }
.member-main { min-width: 0; min-height: 310px; padding: 20px; background: #fff; border: 1px solid #bdcfdc; border-radius: 4px; }
.member-main h1 { font-size: 20px; color: #395f7a; font-weight: 600; }
.member-main > p { color: #8093a1; font-size: 12px; }
.mini-stats { gap: 10px; margin: 18px 0; }
.mini-stat { border: 1px solid #c4d6e3; border-radius: 4px; padding: 12px; background: linear-gradient(#fcfeff, #edf5fb); }
.mini-stat strong { color: #3b759f; font-size: 22px; font-weight: 400; }
.mini-stat span { color: #7b92a4; }
.quick-grid { gap: 10px; }
.quick-tile { border: 1px solid #bad0e1; border-radius: 4px; background: #f5fafe; padding: 14px; color: #4c7592; font-size: 12px; font-weight: 400; }
.quick-tile:hover { border-color: #7da9cb; background: #edf7fe; }
.quick-tile span { color: #6195bb; font-size: 22px; margin-bottom: 5px; }
.admin-list { gap: 8px; }
.admin-list-row { border: 1px solid #d0dfe9; border-radius: 3px; background: #f9fcfe; padding: 10px; font-size: 12px; }
.admin-list-row:hover { border-color: #9dbed6; background: #f0f8fe; }
.admin-list-row b { color: #436b88; overflow-wrap: anywhere; }
.admin-list-row span { color: #879aa8; }
.simple-page { padding: 29px 0 45px; max-width: 900px; }
.simple-page h1 { font-size: 26px; color: #365e7c; }
.simple-page h2 { font-size: 17px; font-weight: 600; color: #476f8b; margin: 20px 0 9px; }
.simple-page p, .simple-page li { color: #718798; font-size: 12px; line-height: 1.85; overflow-wrap: anywhere; }
.simple-page .panel { background: #fff; border: 1px solid #c3d3df; border-radius: 4px; padding: 20px; margin: 17px 0; }
.simple-page .panel a { color: #2b709f; }
.simple-page .panel a:hover { text-decoration: underline; }
.admin-form-grid { gap: 0 14px; }

/* Shared feedback */
.toast-stack { right: 16px; bottom: 16px; gap: 7px; max-width: calc(100% - 32px); }
.toast { color: #3c617b; background: #f3faff; border: 1px solid #abc9df; border-radius: 4px; padding: 10px 13px; box-shadow: 0 2px 8px #42648120; }
.toast.error { background: #fff2f1; color: #a8433c; border-color: #d6aaa5; }
.toast.success { background: #eef8f0; color: #3e7952; border-color: #a6cbb1; }
.modal-backdrop { background: #39587570; backdrop-filter: none; }
.modal { color: #35546b; background: #fbfdff; border: 1px solid #8cacbf; border-radius: 5px; padding: 25px; box-shadow: 0 5px 20px #1b354538; }
.modal-close { color: #658297; right: 11px; top: 5px; }
.modal-close:hover { color: #a64c43; }
.modal h2 { color: #365e7c; font-size: 19px; font-weight: 600; }
.modal p { color: #6c8395; font-size: 12px; }
.modal strong[style] { color: #245f88 !important; }

/* Compact footer */
.footer { margin-top: 24px; background: #dde7f0; border-top: 1px solid #b7cadb; color: #6f8698; }
.footer-main { grid-template-columns: 2.2fr 1fr 1fr 1.5fr; padding: 23px 0 18px; gap: 28px; }
.footer-intro p { margin: 11px 0 7px; max-width: 320px; }
.footer p { color: #768c9d; font-size: 11px; line-height: 1.7; }
.footer-note { color: #6f8ba1; font-size: 10px; }
.footer h4 { margin: 1px 0 9px; color: #4e6e88; font-size: 12px; font-weight: 600; }
.footer-main > div > a:not(.brand) { color: #6b889f; font-size: 11px; margin-bottom: 5px; }
.footer-main > div > a:hover { color: #2a668f; }
.footer .footer-admin { color: #2b6d9a !important; }
.footer-bottom { padding: 11px 0; gap: 16px; border-top: 1px solid #c3d2df; color: #8396a4; font-size: 10px; }
.foot-contact { overflow-wrap: anywhere; }

/* Responsive overrides follow all legacy breakpoints in site.css. */
@media (max-width: 1140px) {
  .header-inner { gap: 12px; }
  .desktop-nav { gap: 2px; }
  .desktop-nav a { padding: 5px 7px; font-size: 11px; }
  .header-actions { gap: 5px; }
  .header-account { gap: 6px; }
  .header-account .btn { padding: 6px 10px; font-size: 11px; }
  .brand-text { font-size: 18px; }
  .footer-main { gap: 20px; }
}
@media (max-width: 1000px) and (min-width: 881px) {
  .header-inner { gap: 8px; }
  .desktop-nav a { padding-left: 5px; padding-right: 5px; }
  .header-search { display: none; }
  .header-account .user-label { display: none; }
}
@media (max-width: 880px) {
  .site-header { height: 56px; }
  .desktop-nav, .header-search { display: none; }
  .header-actions { margin-left: auto; }
  .menu-toggle { display: grid; }
  .mobile-nav { top: 56px; padding: 8px 16px 11px; background: #edf6fc; border-bottom-color: #a7c0d3; }
  .mobile-nav.open { gap: 2px 10px; }
  .mobile-nav a { color: #3c6482; padding: 7px 9px; font-size: 12px; }
  .catalog-layout { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .filters { position: static; padding: 12px; }
  .filter-group { margin-top: 10px; padding-top: 10px; }
  .filter-list { gap: 3px; }
  .footer-main { grid-template-columns: 2fr 1fr 1fr; }
  .footer-main > div:last-child { grid-column: 1 / -1; }
}
@media (max-width: 650px) {
  .container { width: calc(100% - 24px); }
  .site-header { height: 56px; }
  .header-inner { gap: 8px; }
  .brand-text { font-size: 18px; }
  .brand-icon { width: 28px; height: 28px; font-size: 21px; }
  .header-account .btn { padding: 6px 8px; font-size: 11px; }
  .header-account .user-label { display: none; }
  .section { padding: 19px 0; }
  .section-title { font-size: 18px; }
  .section-head { margin-bottom: 12px; }
  .resource-grid, .catalog-main .resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .card-art { height: 130px; }
  .card-body { padding: 8px; }
  .card-body h3 { font-size: 12px; }
  .card-desc { font-size: 10px; height: 31px; }
  .card-meta { gap: 7px; font-size: 10px; }
  .page-top { padding: 20px 0 16px; }
  .page-top h1 { font-size: 23px; }
  .catalog-layout { padding-top: 15px; padding-bottom: 28px; }
  .detail-wrap { padding-top: 18px; }
  .detail-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .detail-info h1 { font-size: 22px; }
  .detail-section { padding: 15px; }
  .auth-wrap { margin: 22px auto 32px; min-height: 0; }
  .auth-promo { display: none; }
  .auth-panel { padding: 24px 21px; }
  .member-layout { display: block; padding-top: 18px; }
  .member-nav { margin-bottom: 12px; }
  .member-main { padding: 16px; }
  .mini-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .simple-page { padding: 22px 0 32px; }
  .simple-page .panel { padding: 16px; }
  .footer-main { grid-template-columns: 1fr 1fr; padding: 20px 0 13px; gap: 18px; }
  .footer-intro, .footer-main > div:last-child { grid-column: 1 / -1; }
  .footer-bottom { display: block; padding: 10px 0; }
  .footer-bottom span { display: block; margin-bottom: 3px; }
  .modal { padding: 22px; }
}
@media (max-width: 390px) {
  .header-account { gap: 5px; }
  .brand { gap: 5px; }
  .brand-text { font-size: 16px; }
  .header-actions { gap: 4px; }
  .header-account .btn { padding: 6px 7px; }
  .resource-grid, .catalog-main .resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .card-art { height: 110px; }
  .card-body { padding: 7px; }
  .card-body h3 { font-size: 11px; }
  .card-meta { gap: 6px; font-size: 9px; }
  .card-art .category-pill { left: 5px; top: 5px; padding: 1px 4px; font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { scroll-behavior: auto !important; transition: none !important; }
  .toast { animation: none; }
}


:root {
    --primary: #d4a020 !important;
    --primary-light: #f8d268 !important;
    --primary-dark: #9c7410 !important;
}
.site-header {
    border-bottom-color: #d4a020 !important;
}
.btn-primary {
    background-color: #d4a020 !important;
    border-color: #b88c18 !important;
    color:#fff !important;
}
.btn-primary:hover {
    background-color: #e2b436 !important;
}
