/* Duino modern UI layer. Loaded after the Astra child theme. */
:root {
  --d-bg: #f6f8fb; --d-card: #ffffff; --d-ink: #0f172a; --d-body: #334155; --d-mute: #64748b;
  --d-line: #e2e8f0; --d-accent: #0e7490; --d-accent-2: #4f46e5; --d-accent-soft: #e0f2fe;
  --d-navy: #0b1220; --d-radius: 16px; --d-shadow: 0 1px 2px rgba(15,23,42,.05), 0 8px 24px -12px rgba(15,23,42,.18);
  --d-font: Inter, "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
}
html[data-duino-theme="dark"] {
  --d-bg: #0b1220; --d-card: #111a2e; --d-ink: #f1f5f9; --d-body: #cbd5e1; --d-mute: #94a3b8;
  --d-line: #1f2a44; --d-accent: #22d3ee; --d-accent-2: #818cf8; --d-accent-soft: #0c2a3a; --d-navy: #070b14;
  --d-shadow: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6);
}
html { scroll-behavior: smooth; }
body, button, input, select, textarea { font-family: var(--d-font) !important; }
body { background: var(--d-bg) !important; color: var(--d-body); -webkit-font-smoothing: antialiased; line-height: 1.7; }
h1,h2,h3,h4,h5,h6, .entry-title, .entry-title a { font-family: var(--d-font) !important; color: var(--d-ink); letter-spacing: -0.02em; font-weight: 700; }
a { color: var(--d-accent); text-decoration: none; }
a:hover { color: var(--d-accent-2); }
.entry-content a:not(.button):not(.wp-block-button__link) { text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--d-accent) 35%, transparent); text-underline-offset: 3px; }
:focus-visible { outline: 3px solid var(--d-accent-2); outline-offset: 2px; border-radius: 6px; }

/* ---------- Header ---------- */
#masthead { position: sticky; top: 0; z-index: 900; background: color-mix(in srgb, var(--d-card) 88%, transparent); backdrop-filter: saturate(180%) blur(14px); -webkit-backdrop-filter: saturate(180%) blur(14px); border-bottom: 1px solid var(--d-line); box-shadow: 0 1px 0 rgba(15,23,42,.02); }
#masthead .main-header-bar, #masthead .ast-primary-header-bar, #masthead .ast-below-header-bar, #masthead .ast-above-header-bar { background: transparent !important; border: 0 !important; min-height: 0; }
#masthead .site-primary-header-wrap { min-height: 0 !important; padding-top: 8px; padding-bottom: 8px; }
#masthead .custom-logo { height: 48px !important; width: auto !important; max-width: none; }
#masthead .ast-site-title-wrap { display: none; }
#masthead .ast-below-header-bar { border-top: 1px solid var(--d-line) !important; }
#masthead .main-header-menu > .menu-item > a, #masthead .ast-builder-menu .menu-item > .menu-link { color: var(--d-ink) !important; font-weight: 600; font-size: 14.5px; padding: 8px 14px !important; border-radius: 999px; line-height: 1.2 !important; height: auto !important; transition: background .15s, color .15s; }
#masthead .main-header-menu > .menu-item > a:hover, #masthead .main-header-menu > .current-menu-item > a, #masthead .ast-builder-menu .menu-item:hover > .menu-link { background: var(--d-accent-soft) !important; color: var(--d-accent) !important; }
#masthead .main-header-menu > .menu-item, #masthead .ast-builder-menu .menu-item { background: transparent !important; }
#masthead .sub-menu { border: 1px solid var(--d-line) !important; border-radius: 14px; box-shadow: var(--d-shadow); background: var(--d-card) !important; padding: 8px; overflow: hidden; }
#masthead .sub-menu .menu-link { color: var(--d-body) !important; border-radius: 8px; padding: 8px 12px !important; }
#masthead .sub-menu .menu-link:hover { background: var(--d-accent-soft) !important; color: var(--d-accent) !important; }
.ast-header-break-point #masthead .main-header-bar { background: transparent !important; }
.ast-header-break-point .ast-mobile-header-content, .ast-header-break-point .main-navigation ul { background: var(--d-card) !important; }
.ast-header-break-point .main-header-menu a { color: var(--d-ink) !important; }
.menu-toggle .ast-mobile-svg, .ast-button-wrap .menu-toggle { fill: var(--d-ink) !important; color: var(--d-ink) !important; }

/* ---------- Layout ---------- */
.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single, .ast-separate-container .comments-area, .ast-separate-container .ast-author-box { background: var(--d-card) !important; border-radius: var(--d-radius); box-shadow: var(--d-shadow); border: 1px solid var(--d-line); }
.ast-separate-container #primary { padding-top: 24px; }
.ast-separate-container .ast-article-single { padding: 2.2em 2.4em; }
.ast-archive-description, .ast-separate-container .ast-archive-description { background: transparent !important; box-shadow: none !important; border: 0 !important; padding: 0 0 8px; }
.ast-archive-description .ast-archive-title, .page-title { font-size: clamp(26px, 3vw, 38px); margin: 0 0 6px; }
.ast-breadcrumbs, .breadcrumbs, nav.breadcrumbs-nav, #breadcrumbs { font-size: 13px; color: var(--d-mute); }

/* Card grid for post lists */
body.home.blog #main, body.archive #main, body.search #main, body.blog #main { }
body.home .site-main, body.archive .site-main, body.search .site-main { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 24px; align-items: stretch; }
body.home .site-main > :not(article), body.archive .site-main > :not(article), body.search .site-main > :not(article) { grid-column: 1 / -1; }
body.home .site-main > article, body.archive .site-main > article, body.search .site-main > article { margin: 0 !important; padding: 0 !important; overflow: hidden; display: flex; flex-direction: column; transition: transform .18s ease, box-shadow .18s ease; }
body.home .site-main > article:hover, body.archive .site-main > article:hover, body.search .site-main > article:hover { transform: translateY(-4px); box-shadow: 0 2px 4px rgba(15,23,42,.06), 0 18px 36px -14px rgba(15,23,42,.28); }
.ast-archive-post .post-thumbnail, .ast-archive-post .ast-blog-featured-section { margin: 0 !important; padding: 0 !important; }
.ast-archive-post .post-thumbnail img { width: 100%; height: 190px; object-fit: cover; display: block; border-radius: 0 !important; transition: transform .35s ease; }
.ast-archive-post:hover .post-thumbnail img { transform: scale(1.04); }
.ast-archive-post .post-thumbnail { overflow: hidden; }
.ast-archive-post .entry-header { padding: 18px 20px 0 !important; margin: 0 !important; }
.ast-archive-post .entry-header .post-thumbnail { margin: -18px -20px 14px !important; }
.ast-archive-post .entry-title { font-size: 18px !important; line-height: 1.35; margin: 0 0 8px; }
.ast-archive-post .entry-title a { color: var(--d-ink); }
.ast-archive-post .entry-title a:hover { color: var(--d-accent); }
.ast-archive-post .entry-content { padding: 0 20px 6px; font-size: 14.5px; color: var(--d-mute); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ast-archive-post .entry-meta, .ast-archive-post .ast-blog-meta-container { padding: 0 20px; font-size: 12.5px; color: var(--d-mute); }
.ast-archive-post .entry-footer { padding: 12px 20px 18px; margin-top: auto; }
.ast-archive-post .read-more a, a.read-more { display: inline-block; font-weight: 600; font-size: 13.5px; color: var(--d-accent); }
.ast-archive-post .read-more a::after { content: " \2192"; }
.ast-pagination, .navigation.pagination { grid-column: 1 / -1; }
.page-numbers { border-radius: 10px !important; border: 1px solid var(--d-line) !important; background: var(--d-card) !important; color: var(--d-ink) !important; min-width: 40px; text-align: center; padding: 8px 12px !important; font-weight: 600; margin: 3px !important; }
.page-numbers.current, .page-numbers:hover { background: var(--d-accent) !important; border-color: var(--d-accent) !important; color: #fff !important; }
.ast-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; }

/* ---------- Sidebar widgets ---------- */
#secondary .widget, .widget-area .widget { background: var(--d-card); border: 1px solid var(--d-line); border-radius: var(--d-radius); padding: 20px; margin-bottom: 20px; box-shadow: var(--d-shadow); }
.ast-separate-container .widget-area, .ast-separate-container #secondary .sidebar-main { background: transparent !important; padding: 0 !important; }
.widget-title, .widget .wp-block-heading { font-size: 15px !important; text-transform: uppercase; letter-spacing: .06em; color: var(--d-mute) !important; margin: 0 0 12px !important; }
.widget ul { margin: 0; padding: 0; list-style: none; }
.widget li { padding: 7px 0; border-bottom: 1px dashed var(--d-line); font-size: 14.5px; }
.widget li:last-child { border-bottom: 0; }
.widget li a { color: var(--d-body); font-weight: 500; }
.widget li a:hover { color: var(--d-accent); }
.search-field, .widget input[type=search], input[type=search], .ast-search-menu-icon .search-field { border: 1px solid var(--d-line) !important; border-radius: 12px !important; background: var(--d-bg) !important; color: var(--d-ink) !important; padding: 12px 14px !important; }
button, .button, input[type=submit], .wp-block-button__link { border-radius: 12px; }
input[type=submit], .search-submit, button[type=submit] { background: var(--d-accent); color: #fff; border: 0; font-weight: 600; cursor: pointer; }

/* ---------- Single post ---------- */
.single .entry-title { font-size: clamp(28px, 3.6vw, 44px); line-height: 1.15; margin-bottom: 10px; }
.single .entry-meta { color: var(--d-mute); font-size: 14px; }
.single .entry-content { font-size: 17.5px; line-height: 1.8; color: var(--d-body); max-width: 780px; }
.single .entry-content img { border-radius: 14px; box-shadow: var(--d-shadow); height: auto; }
.single .entry-content h2 { margin-top: 2em; padding-bottom: .3em; border-bottom: 1px solid var(--d-line); }
.single .entry-content pre, .single .entry-content code { font-family: "JetBrains Mono", "Fira Code", Consolas, monospace !important; }
.single .entry-content pre { background: #0b1220 !important; color: #e2e8f0 !important; border-radius: 14px; padding: 18px 20px; overflow: auto; font-size: 14px; line-height: 1.6; border: 1px solid #1e293b; }
.single .entry-content :not(pre) > code { background: var(--d-accent-soft); color: var(--d-accent); padding: 2px 7px; border-radius: 6px; font-size: .9em; }
.single .entry-content blockquote { border-left: 4px solid var(--d-accent); background: var(--d-accent-soft); padding: 12px 18px; border-radius: 0 12px 12px 0; color: var(--d-ink); }
.single .entry-content table { border-collapse: collapse; width: 100%; font-size: 15px; display: block; overflow-x: auto; }
.single .entry-content th { background: var(--d-accent-soft); color: var(--d-ink); }
.single .entry-content th, .single .entry-content td { border: 1px solid var(--d-line); padding: 9px 12px; }
#ez-toc-container, .lwptoc, .lwptoc_i { background: var(--d-accent-soft) !important; border: 1px solid var(--d-line) !important; border-radius: 14px !important; }
.cat-links a, .tags-links a { display: inline-block; background: var(--d-accent-soft); color: var(--d-accent); padding: 2px 10px; border-radius: 999px; font-size: 12.5px; font-weight: 600; margin: 2px 2px 2px 0; text-decoration: none; }
.cat-links a:hover, .tags-links a:hover { background: var(--d-accent); color: #fff; }
.duino-meta { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: center; justify-content: space-between; padding: 10px 14px; margin: 0 0 22px; border: 1px solid var(--d-line); border-radius: 12px; background: var(--d-bg); font-size: 13.5px; color: var(--d-mute); }
.duino-meta__time::before { content: "\23F1\FE0E  "; }
.duino-meta__share { display: inline-flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.duino-meta__share a, .duino-meta__share button { border: 1px solid var(--d-line); background: var(--d-card); color: var(--d-ink); border-radius: 999px; padding: 3px 11px; font-size: 12.5px; font-weight: 600; cursor: pointer; text-decoration: none !important; }
.duino-meta__share a:hover, .duino-meta__share button:hover { border-color: var(--d-accent); color: var(--d-accent); }
.post-navigation .nav-links a { background: var(--d-card); border: 1px solid var(--d-line); border-radius: 12px; padding: 14px 18px; display: block; box-shadow: var(--d-shadow); }

/* ---------- Footer ---------- */
.site-footer, #colophon { background: var(--d-navy) !important; color: #cbd5e1 !important; border-top: 0 !important; margin-top: 40px; }
.site-footer .site-primary-footer-wrap { padding-top: 48px; padding-bottom: 28px; }
.site-footer .widget-title, .site-footer .widget h2, .site-footer .widget .wp-block-heading { color: #fff !important; font-size: 14px !important; text-transform: uppercase; letter-spacing: .08em; }
.site-footer .widget { background: transparent; border: 0; box-shadow: none; padding: 0; }
.site-footer .widget li { border-color: rgba(255,255,255,.08); padding: 6px 0; }
.site-footer a, .site-footer .widget li a { color: #cbd5e1 !important; font-weight: 400; }
.site-footer a:hover { color: #22d3ee !important; }
.site-below-footer-wrap, .ast-small-footer { background: #060a12 !important; border-top: 1px solid rgba(255,255,255,.06) !important; color: #94a3b8; }
.site-footer .site-footer-section .ast-builder-grid-row { column-gap: 40px; }

/* ---------- Tools, progress, search overlay ---------- */
.duino-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 99999; pointer-events: none; }
.duino-progress span { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #06b6d4, #6366f1); transition: width .1s linear; }
.duino-tools { position: fixed; right: 18px; bottom: 96px; z-index: 9990; display: flex; flex-direction: column; gap: 10px; }
.duino-btn { width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--d-line); background: var(--d-card); color: var(--d-ink); display: grid; place-items: center; cursor: pointer; box-shadow: var(--d-shadow); padding: 0; transition: transform .15s, color .15s; }
.duino-btn:hover { transform: translateY(-2px); color: var(--d-accent); }
.duino-top { opacity: 0; pointer-events: none; transform: translateY(8px); transition: opacity .2s, transform .2s; }
.duino-top.is-on { opacity: 1; pointer-events: auto; transform: none; }
.duino-search[hidden] { display: none; }
.duino-search { position: fixed; inset: 0; z-index: 100000; background: rgba(8,13,24,.62); backdrop-filter: blur(6px); display: flex; justify-content: center; align-items: flex-start; padding: 10vh 16px 0; }
.duino-search__panel { width: min(760px, 100%); background: var(--d-card); color: var(--d-body); border: 1px solid var(--d-line); border-radius: 20px; box-shadow: 0 30px 80px -20px rgba(0,0,0,.6); overflow: hidden; }
.duino-search__form { display: flex; gap: 8px; padding: 14px; border-bottom: 1px solid var(--d-line); flex-wrap: wrap; }
.duino-search__input { flex: 1 1 260px; font-size: 17px; padding: 12px 14px !important; }
.duino-search__cat { flex: 0 1 190px; border: 1px solid var(--d-line); border-radius: 12px; background: var(--d-bg); color: var(--d-ink); padding: 0 10px; }
.duino-search__go { padding: 0 20px; height: 46px; }
.duino-search__results { max-height: 50vh; overflow: auto; padding: 6px; }
.duino-search__item { display: block; padding: 11px 14px; border-radius: 12px; color: var(--d-ink); font-weight: 600; line-height: 1.35; }
.duino-search__item:hover, .duino-search__item:focus { background: var(--d-accent-soft); color: var(--d-accent); }
.duino-search__empty { padding: 18px; color: var(--d-mute); font-size: 14px; }
.duino-search__foot { display: flex; justify-content: space-between; padding: 10px 16px; border-top: 1px solid var(--d-line); font-size: 13px; color: var(--d-mute); background: var(--d-bg); }
.duino-search kbd { border: 1px solid var(--d-line); border-bottom-width: 2px; border-radius: 6px; padding: 0 6px; background: var(--d-card); font-size: 12px; }

/* cookie bar + chat bubble polish */
#cookie-law-info-bar { border-radius: 14px 14px 0 0 !important; font-family: var(--d-font) !important; }

@media (max-width: 921px) {
  .ast-separate-container .ast-article-single { padding: 1.4em; }
  .duino-hero__stats { gap: 20px; }
  body.home .site-main, body.archive .site-main, body.search .site-main { grid-template-columns: 1fr; }
  .duino-tools { bottom: 84px; right: 12px; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; scroll-behavior: auto !important; } }

.duino-pill { display: inline-flex; align-items: center; gap: 10px; padding: 9px 14px 9px 14px; min-width: 240px; border: 1px solid var(--d-line); background: var(--d-bg); color: var(--d-mute); border-radius: 999px; font-size: 14px; cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.duino-pill:hover { border-color: var(--d-accent); box-shadow: 0 0 0 4px var(--d-accent-soft); color: var(--d-ink); }
.duino-pill kbd { margin-left: auto; border: 1px solid var(--d-line); border-radius: 6px; padding: 0 6px; font-size: 12px; background: var(--d-card); }
@media (max-width: 921px) { .duino-pill { display: none; } }
.homepage-blog-page-top-heading-container { display: none; }

.ast-container > .duino-hero { width: 100%; margin: 28px 0 8px; }
body.home #secondary { margin-top: 28px; }
.duino-pill kbd { min-width: 22px; text-align: center; color: var(--d-mute); }

html[data-duino-theme="dark"] #masthead .custom-logo { background: #fff; border-radius: 10px; padding: 4px 8px; }
.site-footer .site-primary-footer-wrap, .site-footer .ast-builder-grid-row-container, .site-footer .site-footer-primary-section-1, .site-footer .ast-builder-footer-grid-columns, .site-footer .footer-widget-area { background: transparent !important; border: 0 !important; }
.site-footer .site-primary-footer-wrap, .site-footer .site-primary-footer-wrap[data-section] { background-color: var(--d-navy) !important; }
.site-footer .site-below-footer-wrap, .site-footer .site-below-footer-wrap[data-section] { background-color: #060a12 !important; border-top: 1px solid rgba(255,255,255,.06) !important; }
.site-footer, .site-footer .ast-container { color: #cbd5e1; }
.site-footer .site-primary-footer-wrap { border-top: 3px solid transparent !important; border-image: linear-gradient(90deg, #06b6d4, #6366f1) 1 !important; }
.duino-footer-hide { display: none !important; }

/* ---------- Editorial front page ---------- */
body.home:not(.paged) #primary { display: none !important; }
body.home:not(.paged) .site-content .ast-container { display: block !important; max-width: 1240px; }
.duino-front { padding: 36px 0 20px; }
.duino-front__head { margin-bottom: 26px; }
.duino-front__title { font-size: clamp(34px, 5vw, 60px); line-height: 1.04; letter-spacing: -0.035em; font-weight: 800; margin: 0 0 10px; color: var(--d-ink); }
.duino-front__sub { color: var(--d-mute); margin: 0; max-width: 560px; font-size: 16px; }
.duino-front__sub a { color: var(--d-ink); text-decoration: underline; text-underline-offset: 3px; }
.duino-feature { display: grid; grid-template-columns: 1.7fr 1fr; grid-template-rows: 1fr 1fr; gap: 20px; }
.duino-feature__main { grid-row: 1 / span 2; }
.duino-feature article { position: relative; border-radius: 14px; overflow: hidden; background: #111; min-height: 230px; }
.duino-feature__main { min-height: 480px; }
.duino-feature__link, .duino-feature__link img { display: block; width: 100%; height: 100%; }
.duino-feature__link { position: absolute; inset: 0; }
.duino-feature__link img { object-fit: cover; transition: transform .6s ease; }
.duino-feature article:hover img { transform: scale(1.04); }
.duino-feature article::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.78) 100%); pointer-events: none; }
.duino-feature__body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 26px 28px; color: #fff; }
.duino-feature__body h2 { font-size: clamp(24px, 2.6vw, 36px); line-height: 1.12; margin: 10px 0 8px; }
.duino-feature__body h3 { font-size: 20px; line-height: 1.2; margin: 8px 0 0; }
.duino-feature__body a { color: #fff !important; text-decoration: none; }
.duino-pill-cat { display: inline-block; background: rgba(255,255,255,.92); color: #0f172a !important; padding: 3px 10px; border-radius: 4px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; text-decoration: none !important; }
.duino-by { font-size: 13px; color: rgba(255,255,255,.8); }
.duino-section { display: flex; align-items: center; gap: 16px; margin: 44px 0 22px; }
.duino-section__title { font-size: 15px; text-transform: uppercase; letter-spacing: .14em; margin: 0; color: var(--d-ink); }
.duino-section__rule { flex: 1; height: 2px; background: var(--d-line); }
.duino-split { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 44px; align-items: start; }
.duino-row { display: grid; grid-template-columns: 280px 1fr; gap: 24px; padding: 0 0 26px; margin: 0 0 26px; border-bottom: 1px solid var(--d-line); }
.duino-row__img { display: block; border-radius: 12px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--d-line); }
.duino-row__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.duino-row:hover .duino-row__img img { transform: scale(1.05); }
.duino-row__body .duino-pill-cat { background: var(--d-accent-soft); border: 1px solid var(--d-line); color: var(--d-ink) !important; }
.duino-row__body h3 { font-size: 22px; line-height: 1.25; margin: 10px 0 8px; }
.duino-row__body h3 a { color: var(--d-ink); }
.duino-row__body h3 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.duino-row__body p { color: var(--d-mute); font-size: 15px; margin: 0 0 10px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.duino-row .duino-by { color: var(--d-mute); }
.duino-more { display: inline-block; border: 1px solid var(--d-ink); color: var(--d-ink) !important; padding: 10px 22px; border-radius: 999px; font-weight: 600; font-size: 14px; }
.duino-more:hover { background: var(--d-ink); color: var(--d-bg) !important; }
.duino-side__title { font-size: 13px; text-transform: uppercase; letter-spacing: .14em; margin: 0 0 14px; color: var(--d-ink); }
.duino-side > * + .duino-side__title { margin-top: 34px; }
.duino-trend { list-style: none; margin: 0; padding: 0; }
.duino-trend li { border-bottom: 1px solid var(--d-line); }
.duino-trend a { display: grid; grid-template-columns: 26px 1fr 64px; gap: 12px; align-items: center; padding: 14px 0; color: var(--d-ink); }
.duino-trend__n { font-weight: 800; font-size: 18px; color: var(--d-mute); }
.duino-trend__t { font-weight: 600; font-size: 15px; line-height: 1.3; }
.duino-trend a:hover .duino-trend__t { text-decoration: underline; }
.duino-trend__i img { width: 64px; height: 64px; object-fit: cover; border-radius: 8px; display: block; }
.duino-topics, .duino-quick { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.duino-topics a { display: inline-block; border: 1px solid var(--d-line); border-radius: 999px; padding: 5px 13px; font-size: 13.5px; color: var(--d-ink); font-weight: 500; }
.duino-topics a:hover { background: var(--d-ink); color: var(--d-bg); border-color: var(--d-ink); }
.duino-quick { flex-direction: column; gap: 0; }
.duino-quick li { border-bottom: 1px solid var(--d-line); }
.duino-quick a { display: block; padding: 10px 0; color: var(--d-ink); font-weight: 500; }
.duino-quick a::after { content: " \2192"; color: var(--d-mute); }
.duino-noimg { display: block; width: 100%; height: 100%; background: linear-gradient(135deg, #cbd5e1, #94a3b8); }
@media (max-width: 921px) {
  .duino-feature { grid-template-columns: 1fr; grid-template-rows: auto; }
  .duino-feature__main { grid-row: auto; min-height: 340px; }
  .duino-split { grid-template-columns: 1fr; }
  .duino-row { grid-template-columns: 120px 1fr; gap: 14px; }
  .duino-row__body p { display: none; }
  .duino-row__body h3 { font-size: 17px; }
}

/* Calm, flat look: lighter chrome, tighter type, one-row header */
:root { --d-bg: #ffffff; --d-card: #ffffff; --d-shadow: none; --d-radius: 12px; --d-accent-soft: #f1f5f9; --d-accent: #0f172a; --d-accent-2: #0e7490; }
html[data-duino-theme="dark"] { --d-bg: #0b0f17; --d-card: #0b0f17; --d-accent: #e2e8f0; --d-accent-soft: #151c2b; }
#ast-desktop-header { display: flex; align-items: center; justify-content: space-between; max-width: 1240px; margin: 0 auto; padding: 0 20px; gap: 24px; }
#ast-desktop-header .ast-main-header-wrap { flex: 0 0 auto; }
#ast-desktop-header .ast-below-header-wrap { flex: 1 1 auto; }
#ast-desktop-header .ast-container, #ast-desktop-header .ast-builder-grid-row { padding-left: 0 !important; padding-right: 0 !important; max-width: none; }
#masthead .ast-below-header-bar { border-top: 0 !important; }
#masthead .site-header-primary-section-right { display: none; }
#masthead .ast-below-header-bar .ast-builder-grid-row { justify-content: center; }
#ast-desktop-header > .duino-pill { flex: 0 0 auto; min-width: 0; padding: 8px 14px; background: var(--d-accent-soft); }
#ast-desktop-header > .duino-pill span { display: none; }
#masthead .main-header-menu > .menu-item > a { font-size: 14px; font-weight: 600; letter-spacing: -0.01em; }
#masthead .main-header-menu > .menu-item > a:hover, #masthead .main-header-menu > .current-menu-item > a { background: transparent !important; color: var(--d-ink) !important; box-shadow: inset 0 -2px 0 var(--d-ink); border-radius: 0; }
#masthead .custom-logo { height: 44px !important; }
.site-footer .site-primary-footer-wrap { border-image: none !important; border-top: 0 !important; }
body.archive .site-main, body.search .site-main, body.paged .site-main { grid-template-columns: 1fr; gap: 0; }
body.archive .site-main > article, body.search .site-main > article, body.paged .site-main > article { display: grid; grid-template-columns: 300px 1fr; gap: 0 24px; border: 0 !important; border-bottom: 1px solid var(--d-line) !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; padding: 0 0 24px !important; margin: 0 0 24px !important; }
body.archive .site-main > article:hover, body.search .site-main > article:hover, body.paged .site-main > article:hover { transform: none; box-shadow: none; }
body.archive .ast-archive-post .entry-header, body.search .ast-archive-post .entry-header, body.paged .ast-archive-post .entry-header { display: contents; }
body.archive .ast-archive-post .post-thumbnail, body.search .ast-archive-post .post-thumbnail, body.paged .ast-archive-post .post-thumbnail { grid-row: 1 / span 3; margin: 0 !important; border-radius: 12px; overflow: hidden; }
body.archive .ast-archive-post .post-thumbnail img, body.search .ast-archive-post .post-thumbnail img, body.paged .ast-archive-post .post-thumbnail img { height: 100%; min-height: 190px; border-radius: 12px !important; }
body.archive .ast-archive-post .entry-title, body.search .ast-archive-post .entry-title, body.paged .ast-archive-post .entry-title { grid-column: 2; font-size: 22px !important; padding: 0 !important; }
body.archive .ast-archive-post .entry-content, body.search .ast-archive-post .entry-content, body.paged .ast-archive-post .entry-content { grid-column: 2; padding: 0; }
@media (max-width: 921px) { body.archive .site-main > article, body.search .site-main > article, body.paged .site-main > article { grid-template-columns: 110px 1fr; gap: 0 14px; } body.archive .ast-archive-post .entry-title, body.search .ast-archive-post .entry-title, body.paged .ast-archive-post .entry-title { font-size: 16px !important; } body.archive .ast-archive-post .entry-content, body.search .ast-archive-post .entry-content, body.paged .ast-archive-post .entry-content { display: none; } #ast-desktop-header { display: none; } }
.duino-feature__body a.duino-pill-cat { color: #0f172a !important; background: rgba(255,255,255,.94); }
#masthead .main-header-menu { flex-wrap: nowrap !important; white-space: nowrap; }
#masthead .main-header-menu > .menu-item > a { padding: 8px 10px !important; font-size: 13.5px; }
#masthead .ast-below-header-bar .ast-builder-grid-row { justify-content: flex-start; }
#masthead .ast-below-header-bar .ast-builder-grid-row, #masthead .ast-below-header-bar .site-below-header-wrap { min-height: 0 !important; }
#masthead .main-navigation, #masthead .ast-builder-menu { width: auto; }

/* ---- v1.1 fixes: dropdowns, tools, listing pages ---- */
#masthead .sub-menu { width: max-content !important; min-width: 240px; max-width: min(420px, 92vw); overflow: visible !important; }
#masthead .sub-menu .menu-link, #masthead .sub-menu a { white-space: normal !important; line-height: 1.35 !important; }
#masthead .main-header-menu > .menu-item:nth-last-child(-n+4) > .sub-menu { left: auto !important; right: 0 !important; }
#ast-desktop-header { flex-wrap: nowrap; }
#ast-desktop-header .ast-below-header-wrap, #ast-desktop-header .ast-below-header, #ast-desktop-header .ast-below-header-bar { overflow: visible !important; }
#masthead .main-header-menu > .menu-item > a { padding: 8px 8px !important; font-size: 13px; }
.duino-hbtn { flex: 0 0 auto; width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--d-line); background: var(--d-accent-soft); color: var(--d-ink); display: grid; place-items: center; cursor: pointer; padding: 0; }
.duino-hbtn:hover { border-color: var(--d-ink); }
@media (min-width: 922px) { .duino-tools [data-duino-search], .duino-tools button[data-duino-theme] { display: none; } }
.duino-tools { bottom: 100px; }

/* Listing pages (search, category, tag, page 2+) */
body.search .site-main > article, body.archive .site-main > article, body.paged .site-main > article { display: block !important; padding: 0 !important; margin: 0 0 24px !important; }
body.search .ast-article-inner .post-content, body.archive .ast-article-inner .post-content, body.paged .ast-article-inner .post-content { display: grid; grid-template-columns: 300px 1fr; column-gap: 26px; align-content: start; padding: 0 !important; }
body.search .ast-blog-featured-section, body.archive .ast-blog-featured-section, body.paged .ast-blog-featured-section { grid-column: 1; grid-row: 1 / span 5; margin: 0 !important; border-radius: 12px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--d-line); }
body.search .ast-blog-featured-section .post-thumb-img-content, body.archive .ast-blog-featured-section .post-thumb-img-content, body.paged .ast-blog-featured-section .post-thumb-img-content, body.search .ast-blog-featured-section a, body.archive .ast-blog-featured-section a, body.paged .ast-blog-featured-section a { display: block; height: 100%; }
body.search .ast-blog-featured-section img, body.archive .ast-blog-featured-section img, body.paged .ast-blog-featured-section img { width: 100% !important; height: 100% !important; max-height: none; object-fit: cover; border-radius: 0 !important; margin: 0; }
body.search .ast-article-inner .post-content > :not(.ast-blog-featured-section), body.archive .ast-article-inner .post-content > :not(.ast-blog-featured-section), body.paged .ast-article-inner .post-content > :not(.ast-blog-featured-section) { grid-column: 2; }
body.search .ast-article-inner .entry-title, body.archive .ast-article-inner .entry-title, body.paged .ast-article-inner .entry-title { font-size: 22px !important; line-height: 1.25; margin: 0 0 8px !important; padding: 0 !important; }
body.search .ast-article-inner .entry-meta, body.archive .ast-article-inner .entry-meta, body.paged .ast-article-inner .entry-meta { order: -1; margin-bottom: 6px; }
body.search .ast-article-inner .ast-excerpt-container, body.archive .ast-article-inner .ast-excerpt-container, body.paged .ast-article-inner .ast-excerpt-container, body.search .ast-article-inner .entry-content, body.archive .ast-article-inner .entry-content, body.paged .ast-article-inner .entry-content { color: var(--d-mute); font-size: 15px; padding: 0 !important; }
body.search .site-main > article, body.archive .site-main > article, body.paged .site-main > article { border-bottom: 1px solid var(--d-line) !important; padding-bottom: 24px !important; }
body.search .ast-archive-description, body.archive .ast-archive-description { padding: 8px 0 18px !important; margin: 0 !important; }
body.search .ast-archive-description .ast-archive-title, body.search .page-title { font-size: clamp(26px, 3vw, 40px); font-weight: 800; letter-spacing: -0.03em; }
body.search .ast-separate-container .ast-article-post { background: transparent !important; box-shadow: none !important; border: 0 !important; }
.widget .wp-block-heading, #secondary h2.wp-block-heading { font-size: 13px !important; }
#secondary .widget_block h2:not(.widget-title), #secondary h2 a { font-size: 16px !important; }
@media (max-width: 921px) {
  body.search .ast-article-inner .post-content, body.archive .ast-article-inner .post-content, body.paged .ast-article-inner .post-content { grid-template-columns: 110px 1fr; column-gap: 14px; }
  body.search .ast-article-inner .entry-title, body.archive .ast-article-inner .entry-title, body.paged .ast-article-inner .entry-title { font-size: 16px !important; }
  body.search .ast-article-inner .ast-excerpt-container, body.archive .ast-article-inner .ast-excerpt-container, body.paged .ast-article-inner .ast-excerpt-container { display: none; }
  .duino-tools { flex-direction: row; bottom: 16px; left: 12px; right: auto; }
}
body.search .ast-separate-container .ast-article-post, body.archive .ast-separate-container .ast-article-post, body.paged .ast-separate-container .ast-article-post, body.search article.ast-article-post, body.archive article.ast-article-post { border: 0 !important; border-bottom: 1px solid var(--d-line) !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; padding: 0 0 24px !important; }
body.search .ast-article-inner, body.archive .ast-article-inner, body.paged .ast-article-inner { padding: 0 !important; }
.ast-article-inner .entry-meta .cat-links, .ast-article-inner .entry-meta .tags-links { font-size: 11px; text-transform: uppercase; letter-spacing: .06em; }
.ast-article-inner .entry-meta .cat-links a { background: var(--d-accent-soft); }
.ast-article-inner .entry-meta .cat-links a ~ a, .ast-article-inner .entry-meta .cat-links a ~ * { }
.ast-article-inner .post-content .read-more a.ast-button, .ast-article-inner .read-more a, a.ast-button.ast-read-more { background: transparent !important; color: var(--d-ink) !important; padding: 0 !important; border: 0 !important; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.ast-container .widget_block h2, #secondary .widget_block .wp-block-heading { font-size: 13px !important; color: var(--d-ink) !important; text-transform: uppercase; letter-spacing: .14em; font-weight: 800; }
#secondary .widget_block .wp-block-heading a { color: var(--d-ink) !important; }
body.search .ast-article-inner .post-content, body.archive .ast-article-inner .post-content, body.paged .ast-article-inner .post-content { grid-template-columns: 300px minmax(0, 1fr); }
body.search .site-main, body.archive .site-main, body.paged .site-main { min-width: 0; }
body.search #primary, body.archive #primary { min-width: 0; padding-right: 20px; }
.ast-article-inner .entry-meta .cat-links { font-size: 0; }
.ast-article-inner .entry-meta .cat-links a { font-size: 11px; }
.ast-article-inner .entry-meta .cat-links a:not(:first-of-type) { display: none; }
body.search .ast-article-inner .post-content, body.archive .ast-article-inner .post-content, body.paged .ast-article-inner .post-content { padding-right: 28px !important; box-sizing: border-box; }
body.search .ast-article-post, body.archive .ast-article-post, body.paged .ast-article-post { margin-right: 0 !important; }
/* header fit: nav shrinks, search + dark toggle always visible */
#ast-desktop-header .ast-below-header-wrap { flex: 1 1 0; min-width: 0; }
#ast-desktop-header .ast-main-header-wrap { flex: 0 0 auto; }
#ast-desktop-header { gap: 14px; }
#masthead .main-header-menu > .menu-item > a { padding: 8px 7px !important; font-size: 13px; }
#masthead .main-header-menu > .menu-item a[href*="advance-search"] { display: none !important; }
#masthead .custom-logo { height: 40px !important; }
#ast-desktop-header > .duino-pill { margin-left: auto; }
@media (max-width: 1260px) { #masthead .main-header-menu > .menu-item a[href*="online-courses"], #masthead .main-header-menu > .menu-item a[href*="contact"] { display: none !important; } }
@media (min-width: 922px) and (max-width: 1500px) { #masthead .main-header-menu > .menu-item a[href*="online-courses"] { display: none !important; } }
#ast-desktop-header > .duino-pill { margin-left: 8px; }

/* ---- dark mode completeness ---- */
html[data-duino-theme="dark"] body, html[data-duino-theme="dark"] .site-content, html[data-duino-theme="dark"] #content, html[data-duino-theme="dark"] .ast-separate-container { background-color: var(--d-bg) !important; color: var(--d-body); }
html[data-duino-theme="dark"] .ast-article-post, html[data-duino-theme="dark"] .ast-article-inner, html[data-duino-theme="dark"] .ast-article-inner .post-content, html[data-duino-theme="dark"] .ast-separate-container .ast-article-post, html[data-duino-theme="dark"] .ast-separate-container .ast-article-single, html[data-duino-theme="dark"] .entry-content, html[data-duino-theme="dark"] .ast-excerpt-container, html[data-duino-theme="dark"] .ast-archive-description { background: transparent !important; }
html[data-duino-theme="dark"] .ast-separate-container .ast-article-single, html[data-duino-theme="dark"] .ast-separate-container .comments-area { background: var(--d-card) !important; }
html[data-duino-theme="dark"] h1, html[data-duino-theme="dark"] h2, html[data-duino-theme="dark"] h3, html[data-duino-theme="dark"] h4, html[data-duino-theme="dark"] .entry-title, html[data-duino-theme="dark"] .entry-title a, html[data-duino-theme="dark"] .page-title, html[data-duino-theme="dark"] .ast-archive-title, html[data-duino-theme="dark"] .widget-title, html[data-duino-theme="dark"] .wp-block-heading, html[data-duino-theme="dark"] .wp-block-heading a { color: var(--d-ink) !important; }
html[data-duino-theme="dark"] .widget, html[data-duino-theme="dark"] #secondary .widget { background: var(--d-card) !important; color: var(--d-body); }
html[data-duino-theme="dark"] .widget li a, html[data-duino-theme="dark"] .widget a { color: var(--d-body); }
html[data-duino-theme="dark"] .ast-article-inner .read-more a, html[data-duino-theme="dark"] a.ast-read-more { color: var(--d-ink) !important; }
html[data-duino-theme="dark"] .ast-article-inner .entry-meta, html[data-duino-theme="dark"] .ast-article-inner .entry-meta a { color: var(--d-mute); }
html[data-duino-theme="dark"] .ast-article-inner .entry-meta .cat-links a { background: var(--d-accent-soft); color: var(--d-ink); }
html[data-duino-theme="dark"] .ast-blog-featured-section, html[data-duino-theme="dark"] .post-thumb-img-content { background: transparent !important; }
html[data-duino-theme="dark"] .search-field, html[data-duino-theme="dark"] input[type=search], html[data-duino-theme="dark"] select, html[data-duino-theme="dark"] textarea, html[data-duino-theme="dark"] input[type=text], html[data-duino-theme="dark"] input[type=email] { background: var(--d-accent-soft) !important; color: var(--d-ink) !important; border-color: var(--d-line) !important; }
html[data-duino-theme="dark"] .page-numbers { background: var(--d-card) !important; color: var(--d-ink) !important; }
html[data-duino-theme="dark"] .single .entry-content, html[data-duino-theme="dark"] .single .entry-content p, html[data-duino-theme="dark"] .single .entry-content li { color: var(--d-body); }
html[data-duino-theme="dark"] .breadcrumbs a, html[data-duino-theme="dark"] .ast-breadcrumbs a { color: var(--d-mute); }
html[data-duino-theme="dark"] #ez-toc-container, html[data-duino-theme="dark"] .lwptoc, html[data-duino-theme="dark"] .lwptoc_i { background: var(--d-accent-soft) !important; }
html[data-duino-theme="dark"] #ez-toc-container a, html[data-duino-theme="dark"] .lwptoc a { color: var(--d-body) !important; }
html[data-duino-theme="dark"] .single .entry-content table th { background: var(--d-accent-soft); color: var(--d-ink); }
html[data-duino-theme="dark"] .single .entry-content td, html[data-duino-theme="dark"] .single .entry-content th { border-color: var(--d-line); }
html[data-duino-theme="dark"] .single .entry-content img { box-shadow: none; }
html[data-duino-theme="dark"] .duino-more { color: var(--d-ink) !important; border-color: var(--d-line); }
html[data-duino-theme="dark"] #secondary .widget-title, html[data-duino-theme="dark"] #secondary h1, html[data-duino-theme="dark"] #secondary h2, html[data-duino-theme="dark"] #secondary h3, html[data-duino-theme="dark"] .widget .widget-title, html[data-duino-theme="dark"] aside .widget-title, html[data-duino-theme="dark"] .widget-area .widget-title { color: var(--d-ink) !important; }
html[data-duino-theme="dark"] .smart-summary-box, html[data-duino-theme="dark"] .entry-content [style*="background: #f"], html[data-duino-theme="dark"] .entry-content [style*="background:#f"], html[data-duino-theme="dark"] .entry-content [style*="background-color:#f"], html[data-duino-theme="dark"] .entry-content [style*="background-color: #f"], html[data-duino-theme="dark"] .entry-content [style*="background: white"], html[data-duino-theme="dark"] .entry-content [style*="background:#fff"] { background: var(--d-accent-soft) !important; color: var(--d-body) !important; border-color: var(--d-line) !important; }
html[data-duino-theme="dark"] .smart-summary-box *, html[data-duino-theme="dark"] .entry-content [style*="background"] h2, html[data-duino-theme="dark"] .entry-content [style*="background"] h3 { color: var(--d-ink) !important; }
html[data-duino-theme="dark"] .smart-summary-box p, html[data-duino-theme="dark"] .smart-summary-box li { color: var(--d-body) !important; }
html[data-duino-theme="dark"] .entry-content strong, html[data-duino-theme="dark"] .single .entry-content b, html[data-duino-theme="dark"] .cat-links, html[data-duino-theme="dark"] .tags-links, html[data-duino-theme="dark"] .entry-meta .cat-links, html[data-duino-theme="dark"] .ast-terms-link { color: var(--d-ink); }
html[data-duino-theme="dark"] a { color: #67e8f9; }
html[data-duino-theme="dark"] #masthead a, html[data-duino-theme="dark"] .site-footer a, html[data-duino-theme="dark"] .duino-feature a, html[data-duino-theme="dark"] .duino-more { color: inherit; }
html[data-duino-theme="dark"] .duino-row__body h3 a, html[data-duino-theme="dark"] .duino-trend a, html[data-duino-theme="dark"] .duino-topics a, html[data-duino-theme="dark"] .duino-quick a { color: var(--d-ink) !important; }
html[data-duino-theme="dark"] #secondary .widget li a, html[data-duino-theme="dark"] #secondary .widget a, html[data-duino-theme="dark"] #secondary .menu-link, html[data-duino-theme="dark"] #secondary li { color: var(--d-body) !important; }
html[data-duino-theme="dark"] .entry-meta, html[data-duino-theme="dark"] .entry-meta *:not(a), html[data-duino-theme="dark"] .single .entry-meta .cat-links, html[data-duino-theme="dark"] .single .entry-meta .tags-links, html[data-duino-theme="dark"] .ast-terms-link, html[data-duino-theme="dark"] #ez-toc-container .ez-toc-title, html[data-duino-theme="dark"] .lwptoc_title, html[data-duino-theme="dark"] .toc_title, html[data-duino-theme="dark"] [class*="toc"] [class*="title"] { color: var(--d-body) !important; }
html[data-duino-theme="dark"] .single .entry-content > * { color: var(--d-body); }
html[data-duino-theme="dark"] #secondary .ast-widget-icon, html[data-duino-theme="dark"] .ast-menu-toggle, html[data-duino-theme="dark"] .search-submit svg { fill: var(--d-body); color: var(--d-body); }

/* ---- footer ---- */
.duino-fband { background: #0b1220; color: #cbd5e1; margin-top: 56px; border-top: 1px solid rgba(255,255,255,.08); }
.duino-fband__in { max-width: 1240px; margin: 0 auto; padding: 52px 20px 8px; display: grid; grid-template-columns: 1.4fr 1.2fr 1fr; gap: 48px; }
.duino-fband__brand strong { display: block; color: #fff; font-size: 22px; letter-spacing: -0.02em; margin-bottom: 10px; }
.duino-fband__brand p { color: #94a3b8; max-width: 380px; margin: 0 0 18px; }
.duino-fband__search { display: flex; gap: 8px; max-width: 380px; }
.duino-fband__search input { flex: 1; min-width: 0; background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.14) !important; color: #fff !important; border-radius: 10px !important; padding: 10px 14px !important; }
.duino-fband__search button { background: #fff; color: #0b1220; border: 0; border-radius: 10px; padding: 0 18px; font-weight: 700; cursor: pointer; }
.duino-fband h4 { color: #fff; font-size: 13px; text-transform: uppercase; letter-spacing: .14em; margin: 0 0 14px; }
.duino-fband ul { list-style: none; margin: 0; padding: 0; }
.duino-fband__col:nth-child(2) ul { display: flex; flex-wrap: wrap; gap: 8px; }
.duino-fband__col:nth-child(2) a { display: inline-block; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; padding: 4px 12px; font-size: 13px; }
.duino-fband__col:nth-child(3) li { padding: 5px 0; }
.duino-fband a { color: #cbd5e1 !important; }
.duino-fband a:hover { color: #67e8f9 !important; border-color: #67e8f9; }
.site-footer { margin-top: 0 !important; }
.site-footer .site-primary-footer-wrap { padding-top: 28px; }
.site-footer .widget, html[data-duino-theme="dark"] .site-footer .widget, html[data-duino-theme="dark"] .site-footer .widget-area .widget { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; }
.site-footer .site-primary-footer-wrap, .site-footer .site-primary-footer-wrap[data-section] { background-color: #0b1220 !important; }
.site-footer .site-below-footer-wrap, .site-footer .site-below-footer-wrap[data-section] { background-color: #070c17 !important; }
.site-footer .widget-title, .site-footer h2 { color: #fff !important; }
@media (max-width: 921px) { .duino-fband__in { grid-template-columns: 1fr; gap: 28px; } }
