
        .aict-roadmap-page{max-width:1100px;margin:2rem auto;padding:0 16px 4rem;color:#0f172a;}
        .aict-roadmap-page *,.aict-roadmap-page *::before,.aict-roadmap-page *::after{box-sizing:border-box;}
        .aict-roadmap-hero{text-align:center;padding:2rem 0 2.5rem;}
        .aict-roadmap-tag{display:inline-block;padding:4px 12px;background:#eef2ff;color:#4338ca;border-radius:99px;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.75rem;}
        .aict-roadmap-hero h1{font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800;margin:0 0 .5rem;color:#0f172a;}
        .aict-roadmap-lede{color:#475569;max-width:600px;margin:0 auto 1.5rem;font-size:1.05rem;}
        .aict-roadmap-counts{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin:1.5rem auto 0;}
        .aict-roadmap-count{text-align:center;}
        .aict-roadmap-count strong{display:block;font-size:1.75rem;font-weight:800;color:#4338ca;line-height:1;}
        .aict-roadmap-count span{display:block;color:#64748b;font-size:.875rem;margin-top:.25rem;text-transform:uppercase;letter-spacing:.05em;}

        .aict-roadmap-filters{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0 1.5rem;padding:1rem 1.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;}
        .aict-roadmap-filter-group{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;}
        .aict-roadmap-filter-label{font-size:.75rem;font-weight:700;color:#64748b;letter-spacing:.05em;text-transform:uppercase;min-width:60px;}
        .aict-roadmap-chip{display:inline-flex;align-items:center;padding:.4rem .85rem;background:#fff;color:#475569;border:1.5px solid #e2e8f0;border-radius:99px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit;}
        .aict-roadmap-chip:hover{background:#f1f5f9;color:#0f172a;}
        .aict-roadmap-chip.is-active{background:#4338ca;color:#fff;border-color:#4338ca;}

        .aict-roadmap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin:0 0 2.5rem;}
        .aict-roadmap-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;transition:transform .15s,box-shadow .15s;}
        .aict-roadmap-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(15,23,42,.08);}
        .aict-roadmap-card-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem;}
        .aict-roadmap-card h3{margin:.25rem 0 .5rem;font-size:1.0625rem;line-height:1.35;color:#0f172a;}
        .aict-roadmap-card h3 a{color:inherit;text-decoration:none;}
        .aict-roadmap-card h3 a:hover{color:#4338ca;}
        .aict-roadmap-card-excerpt{margin:0 0 1rem;color:#475569;font-size:.9375rem;line-height:1.5;flex-grow:1;}
        .aict-roadmap-card-foot{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;}
        .aict-roadmap-card-foot .aict-roadmap-vote-btn{margin-right:auto;}
        .aict-roadmap-card-comments{display:inline-flex;align-items:center;gap:.35rem;color:#64748b;font-size:.8125rem;font-weight:600;}
        .aict-roadmap-card-eta{color:#4338ca;font-size:.75rem;font-weight:700;background:#eef2ff;padding:3px 10px;border-radius:99px;}

        .aict-roadmap-status{display:inline-block;padding:3px 10px;border-radius:99px;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;}
        .aict-roadmap-status-planned{background:#fef3c7;color:#854d0e;}
        .aict-roadmap-status-in-progress{background:#dbeafe;color:#1e40af;}
        .aict-roadmap-status-shipped{background:#dcfce7;color:#14532d;}
        .aict-roadmap-status-declined{background:#f1f5f9;color:#475569;}
        .aict-roadmap-cat{font-size:.75rem;color:#64748b;font-weight:600;}

        .aict-roadmap-vote-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;background:#fff;color:#475569;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:700;cursor:pointer;transition:all .15s;font-family:inherit;}
        .aict-roadmap-vote-btn:hover{background:#fef2f2;color:#b91c1c;border-color:#fecaca;}
        .aict-roadmap-vote-btn.is-voted{background:#fef2f2;color:#b91c1c;border-color:#b91c1c;}
        .aict-roadmap-vote-btn[disabled]{opacity:.5;cursor:wait;}

        .aict-roadmap-sub-btn{padding:.5rem 1rem;background:#fff;color:#4338ca;border:1.5px solid #4338ca;border-radius:8px;font-size:.875rem;font-weight:700;cursor:pointer;font-family:inherit;}
        .aict-roadmap-sub-btn:hover{background:#eef2ff;}
        .aict-roadmap-sub-btn.is-subscribed{background:#4338ca;color:#fff;}

        /* [v4.16.80fh — wcag-2-2-aa-audit-fixes] #94a3b8 → #475569 (slate-600 7.6:1) for AA contrast */
        .aict-roadmap-empty{text-align:center;color:#475569;padding:2rem 0;font-size:.95rem;}

        .aict-roadmap-submit-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:1.75rem;margin-top:2rem;}
        .aict-roadmap-submit-section h2{margin:0 0 1rem;font-size:1.375rem;color:#0f172a;}
        .aict-roadmap-row{margin-bottom:.85rem;}
        .aict-roadmap-row label{display:block;font-size:.8125rem;font-weight:700;color:#475569;margin-bottom:.35rem;}
        .aict-roadmap-row input[type=text],.aict-roadmap-row select,.aict-roadmap-row textarea{width:100%;padding:.55rem .8rem;font-size:.9375rem;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;color:#0f172a;font-family:inherit;}
        .aict-roadmap-row input:focus,.aict-roadmap-row select:focus,.aict-roadmap-row textarea:focus{outline:none;border-color:#4338ca;box-shadow:0 0 0 3px rgba(67,56,202,.12);}
        .aict-roadmap-row textarea{resize:vertical;min-height:90px;}
        .aict-roadmap-row-actions{display:flex;align-items:center;gap:1rem;}
        .aict-roadmap-submit-status{font-size:.875rem;color:#475569;}
        .aict-roadmap-submit-status.is-ok{color:#14532d;}
        .aict-roadmap-submit-status.is-err{color:#dc2626;}
        /* [2026-09-09] These three used to be written by the JS as ELEMENT
           styles (statusEl.style.color), which no stylesheet rule can override
           without !important, so the submit confirmation was #14532d on the
           card's dark #1e293b -- 1.61:1 -- and the error #dc2626 at 3.03:1.
           Moving them to classes is what makes the dark half below possible at
           all. Light values are unchanged. */

        .aict-roadmap-btn{-webkit-text-fill-color:currentColor;display:inline-block;padding:.55rem 1.2rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:700;cursor:pointer;text-decoration:none;font-family:inherit;background:#fff;color:#4338ca;border:1.5px solid #4338ca;}
        /* -webkit-text-fill-color must accompany color here: an ancestor
           (.aict-roadmap-signup-gate) sets BOTH, and fill inherits and beats
           a descendant's plain `color`. The button therefore painted #334155
           on #4338ca at 1.31:1 while computed `color` still read #fff — which
           is why a contrast probe reading only `color` saw nothing wrong and
           axe-core was right. [2026-08-29] */
        .aict-roadmap-btn-primary{background:#4338ca;color:#fff;-webkit-text-fill-color:#fff;border-color:#4338ca;}
        .aict-roadmap-btn-primary:hover{background:#3730a3;border-color:#3730a3;}
        .aict-roadmap-signup-gate{padding:1rem 0;color:#475569;font-size:.95rem;}
        .aict-roadmap-signup-gate .aict-roadmap-btn{margin-right:.5rem;}

        .aict-roadmap-back{margin:0 0 1rem;}
        .aict-roadmap-back a{color:#4338ca;text-decoration:none;font-weight:600;font-size:.875rem;}
        .aict-roadmap-back a:hover{text-decoration:underline;}
        .aict-roadmap-detail-header h1{font-size:clamp(1.5rem,4vw,2rem);font-weight:800;color:#0f172a;margin:.5rem 0 1.25rem;}
        .aict-roadmap-meta-line{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;}
        .aict-roadmap-eta{color:#4338ca;font-size:.8125rem;font-weight:700;background:#eef2ff;padding:3px 10px;border-radius:99px;}
        .aict-roadmap-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:1.25rem 0 1.5rem;}
        .aict-roadmap-body{font-size:1rem;line-height:1.65;color:#1e293b;margin-bottom:2rem;}
        .aict-roadmap-comments{padding-top:1.5rem;border-top:1px solid #e2e8f0;}
        .aict-roadmap-comments h2{font-size:1.125rem;color:#0f172a;margin:0 0 1rem;}
        .aict-roadmap-comment-form textarea{width:100%;padding:.65rem .85rem;font-size:.9375rem;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;color:#0f172a;font-family:inherit;resize:vertical;}
        .aict-roadmap-comment-form textarea:focus{outline:none;border-color:#4338ca;box-shadow:0 0 0 3px rgba(67,56,202,.12);}
        .aict-roadmap-comment-actions{display:flex;align-items:center;gap:1rem;margin-top:.5rem;}
        .aict-roadmap-comment-status{font-size:.875rem;color:#475569;}
        .aict-roadmap-comment-list{list-style:none;padding:0;margin:1.5rem 0 0;}
        .aict-roadmap-comment{padding:.85rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:.65rem;}
        .aict-roadmap-comment-reply{margin-left:2rem;}
        .aict-roadmap-comment-head{display:flex;align-items:center;gap:.65rem;margin-bottom:.35rem;}
        .aict-roadmap-comment-head strong{color:#0f172a;font-size:.875rem;}
        /* [v4.16.80fh — wcag-2-2-aa-audit-fixes] timestamp #94a3b8 on white .75rem failed AA. */
        .aict-roadmap-comment-time{color:#475569;font-size:.75rem;}
        .aict-roadmap-comment p{margin:0;color:#1e293b;font-size:.9375rem;line-height:1.5;word-wrap:break-word;}

        /* [v4.16.80hm +z-canonical-migration 2026-05-09 Q3-batch-62.5] was z-index:9999 → var(--aict-z-modal-backdrop) */
        .aict-roadmap-modal-backdrop{display:none;position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:var(--aict-z-modal-backdrop);align-items:center;justify-content:center;padding:16px;}
        .aict-roadmap-modal-backdrop.is-open{display:flex;}
        .aict-roadmap-modal{background:#fff;border-radius:14px;padding:2rem;max-width:420px;width:100%;text-align:center;}
        .aict-roadmap-modal h3{margin:0 0 .5rem;font-size:1.25rem;color:#0f172a;}
        .aict-roadmap-modal p{color:#475569;margin:0 0 1.25rem;}
        .aict-roadmap-modal .aict-roadmap-modal-close{background:transparent;color:#64748b;border:none;font-size:.875rem;text-decoration:underline;cursor:pointer;margin-top:.5rem;}

        .aict-roadmap-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

        @media (max-width:560px){
            .aict-roadmap-grid{grid-template-columns:1fr;}
            .aict-roadmap-counts{gap:1rem;}
            .aict-roadmap-count strong{font-size:1.375rem;}
        }

        [data-theme="dark"] .aict-roadmap-page,[data-theme="dark"] .aict-roadmap-page h1,[data-theme="dark"] .aict-roadmap-page h2,[data-theme="dark"] .aict-roadmap-page h3{color:#e2e8f0;}
        [data-theme="dark"] .aict-roadmap-card,[data-theme="dark"] .aict-roadmap-submit-section{background:#1e293b;border-color:#334155;}
        [data-theme="dark"] .aict-roadmap-card-excerpt,[data-theme="dark"] .aict-roadmap-lede{color:#cbd5e1;}
        [data-theme="dark"] .aict-roadmap-filters{background:#1e293b;border-color:#334155;}
        [data-theme="dark"] .aict-roadmap-chip{background:#0f172a;color:#cbd5e1;border-color:#334155;}
        [data-theme="dark"] .aict-roadmap-chip.is-active{background:#4f46e5;border-color:#5c5fe6;}
        /* [2026-09-04] Five inks the block above never covered. It darkened the
           cards, the filter bar and the chips and left the light-mode greys and
           indigo on them. Measured on prod in the chosen-dark state, 390 and 1366:
             .aict-roadmap-count strong  #4338ca on #0f0f1a  2.41:1 (large text,
                                          so the bar is 3.0 — it fails that too)
             .aict-roadmap-cat           #64748b on #1e293b  3.07:1
             .aict-roadmap-filter-label  #64748b on #1e293b  3.07:1
             .aict-roadmap-count span    #64748b on #0f0f1a  4.00:1
             .aict-roadmap-chip.is-active inherited #cbd5e1 on its own #4f46e5
                                          background   4.23:1 — the chip was given
                                          a surface and no ink of its own.
           No prefers-color-scheme twin on purpose: this block is stamped-only,
           the page stays light for an un-stamped dark-OS visitor, and the guard
           measures that state clean. Adding a twin would create the light-island
           this file does not currently have. */
        [data-theme="dark"] .aict-roadmap-count strong{color:#a5b4fc;}
        [data-theme="dark"] .aict-roadmap-count span{color:#94a3b8;}
        [data-theme="dark"] .aict-roadmap-filter-label{color:#94a3b8;}
        [data-theme="dark"] .aict-roadmap-cat{color:#94a3b8;}
        [data-theme="dark"] .aict-roadmap-chip.is-active{color:#ffffff;}
        [data-theme="dark"] .aict-roadmap-comment{background:#0f172a;border-color:#334155;}
        [data-theme="dark"] .aict-roadmap-row input,[data-theme="dark"] .aict-roadmap-row select,[data-theme="dark"] .aict-roadmap-row textarea,[data-theme="dark"] .aict-roadmap-comment-form textarea{background:#0f172a;color:#e2e8f0;border-color:#334155;}
        /* [2026-09-09] The inputs above were themed for dark; their LABELS were
           not, so .aict-roadmap-row label kept the #475569 it is declared with
           and sat on the submit section's #1e293b at 1.93:1. Measured: 12
           findings on /roadmap/, visible only to a signed-in visitor, because
           the submit form is the part of that page a logged-out visitor never
           sees.

           This exact pair — dark inputs, forgotten labels — is already
           diagnosed and fixed in aict-contact-form.css, whose comment reads
           "The inputs are fine already (#e2e8f0 on #1e293b) — only the labels
           were left behind." Same shape, second file. */
        [data-theme="dark"] .aict-roadmap-row label{color:#cbd5e1;}
        /* [2026-09-10 hover] Two link hovers hard-code indigo-700 with no dark
           twin (:2138 and :2299), so hovering a card title or a trending item on
           the dark card read #4338ca on #1e293b: 1.85:1.

           STAMP ONLY, and I know that because I measured the alternative. Adding
           an @media half took /roadmap/ from 24 failures to 12 -- the twelve
           that remained were MY new light ink landing on the still-white card in
           osdark-noprefs, at 1.49:1, where the stamp is light and nothing
           darkens these cards. Dropping the media half took the same page to
           zero. Fourth time this week the two dark signals did not share a
           surface. */
        [data-theme="dark"] .aict-roadmap-card h3 a:hover,
        [data-theme="dark"] .aict-roadmap-trending-item a:hover{color:#c7d2fe;}
        [data-theme="dark"] .aict-roadmap-submit-status{color:#cbd5e1;}
        [data-theme="dark"] .aict-roadmap-submit-status.is-ok{color:#86efac;}
        [data-theme="dark"] .aict-roadmap-submit-status.is-err{color:#fca5a5;}
        /* #521 themed the form's labels and stopped there. The fourth
           .aict-roadmap-row holds the status span, which is not a label and not
           a <p>, so neither that rule nor the [class*="aict"] p blanket reached
           it: #475569 on #1e293b, 1.93:1 -- the same number, one row down.
           And every commenter's NAME was #0f172a on the #1e293b comment card,
           1.22:1: the byline disappeared while the comment stayed readable. */
        [data-theme="dark"] .aict-roadmap-comment-head strong{color:#f1f5f9;}

        /* [v4.16.80fo +roadmap-v2-discovery-following-related 2026-05-04] */
        .aict-roadmap-tabs{display:flex;gap:.25rem;border-bottom:2px solid #e2e8f0;margin:0 0 1.25rem;}
        .aict-roadmap-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;color:#475569;text-decoration:none;font-weight:600;font-size:.9375rem;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s;}
        .aict-roadmap-tab:hover{color:#0f172a;}
        .aict-roadmap-tab.is-active{color:#4338ca;border-bottom-color:#4338ca;}
        .aict-roadmap-tab.is-disabled{color:#64748b;cursor:not-allowed;}
        .aict-roadmap-tab-count{background:#eef2ff;color:#4338ca;font-size:.7rem;font-weight:700;padding:1px 8px;border-radius:99px;}

        .aict-roadmap-trending{background:linear-gradient(135deg,#fff7ed,#fef3c7);border:1px solid #fde68a;border-radius:12px;padding:1rem 1.25rem;margin:0 0 1rem;}
        .aict-roadmap-trending-h{display:flex;align-items:center;gap:.5rem;margin:0 0 .65rem;font-size:1rem;color:#854d0e;font-weight:700;}
        .aict-roadmap-trending-flame{font-size:1.15rem;}
        .aict-roadmap-trending-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem;}
        .aict-roadmap-trending-item{display:flex;align-items:center;gap:.65rem;font-size:.9375rem;}
        .aict-roadmap-trending-rank{color:#a16207;font-weight:700;font-size:.75rem;min-width:1.75rem;}
        .aict-roadmap-trending-item a{color:#0f172a;text-decoration:none;font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
        .aict-roadmap-trending-item a:hover{color:#4338ca;}
        .aict-roadmap-trending-votes{color:#854d0e;font-size:.75rem;font-weight:700;background:#fef3c7;padding:2px 8px;border-radius:99px;border:1px solid #fde68a;}

        .aict-roadmap-search-row{display:flex;align-items:center;gap:.75rem;position:relative;margin:0 0 .85rem;}
        .aict-roadmap-search{flex:1;padding:.55rem .9rem;font-size:.9375rem;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;color:#0f172a;font-family:inherit;}
        .aict-roadmap-search:focus{outline:none;border-color:#4338ca;box-shadow:0 0 0 3px rgba(67,56,202,.12);}
        .aict-roadmap-search-results{position:absolute;top:calc(100% + 4px);left:0;right:88px;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;box-shadow:0 12px 32px rgba(15,23,42,.12);z-index:50;list-style:none;padding:.35rem;margin:0;max-height:340px;overflow-y:auto;}
        .aict-roadmap-search-results li a{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;border-radius:6px;text-decoration:none;color:inherit;}
        .aict-roadmap-search-results li a:hover{background:#f1f5f9;}
        .aict-roadmap-search-results .aict-rm-sr-title{flex:1;color:#0f172a;font-weight:600;font-size:.9375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
        .aict-roadmap-search-results .aict-rm-sr-votes{color:#475569;font-size:.75rem;font-weight:700;}
        .aict-roadmap-search-results .aict-roadmap-search-empty{padding:.65rem;color:#64748b;font-size:.875rem;text-align:center;}
        .aict-roadmap-view-toggle{display:flex;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;overflow:hidden;}
        .aict-roadmap-view-btn{background:transparent;border:none;padding:.5rem .8rem;color:#64748b;cursor:pointer;font-size:.95rem;line-height:1;font-family:inherit;}
        .aict-roadmap-view-btn:hover{color:#4338ca;}
        .aict-roadmap-view-btn.is-active{background:#4338ca;color:#fff;}
        /* [2026-09-13] These had no dark variant, so #64748b was used on the
           dark panel: 3.75:1 for the toggle, 3.07:1 for the comment count.
           :not(.is-active) keeps the active button's white on indigo, which
           already passes - an override there is what broke it in testing. */
        [data-theme="dark"] .aict-roadmap-view-btn:not(.is-active),
        html:not([data-theme="light"]) .aict-roadmap-view-btn:not(.is-active){color:#94a3b8;}
        [data-theme="dark"] .aict-roadmap-card-comments,
        html:not([data-theme="light"]) .aict-roadmap-card-comments{color:#94a3b8;}

        .aict-roadmap-sort-select{padding:.4rem .65rem;font-size:.8125rem;font-weight:600;color:#0f172a;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;cursor:pointer;font-family:inherit;}
        .aict-roadmap-sort-select:focus{outline:none;border-color:#4338ca;box-shadow:0 0 0 3px rgba(67,56,202,.12);}
        .aict-roadmap-chip-admin{background:#fef2f2;color:#b91c1c;border-color:#fecaca;}
        .aict-roadmap-chip-admin.is-active{background:#dc2626;color:#fff;border-color:#dc2626;}

        /* Compact view — title + votes + status only, denser packing. */
        .aict-roadmap-grid--compact{grid-template-columns:1fr;gap:.5rem;}
        .aict-roadmap-grid--compact .aict-roadmap-card{padding:.65rem 1rem;flex-direction:row;align-items:center;gap:1rem;}
        .aict-roadmap-grid--compact .aict-roadmap-card:hover{transform:none;}
        .aict-roadmap-grid--compact .aict-roadmap-card-head{margin:0;flex:0 0 auto;}
        .aict-roadmap-grid--compact .aict-roadmap-card h3{margin:0;flex:1;font-size:.9375rem;}
        .aict-roadmap-grid--compact .aict-roadmap-card-excerpt{display:none;}
        .aict-roadmap-grid--compact .aict-roadmap-card-foot{margin:0;flex:0 0 auto;}
        .aict-roadmap-grid--compact .aict-roadmap-card-comments,
        .aict-roadmap-grid--compact .aict-roadmap-card-eta{display:none;}

        /* Related items section — detail page. */
        .aict-roadmap-related{margin:2.5rem 0 1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0;}
        .aict-roadmap-related h2{margin:0 0 1rem;font-size:1.125rem;color:#0f172a;}
        .aict-roadmap-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem;}
        .aict-roadmap-related-card{display:flex;flex-direction:column;gap:.4rem;padding:.85rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s;}
        .aict-roadmap-related-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(15,23,42,.06);}
        .aict-roadmap-related-card-title{color:#0f172a;font-weight:600;font-size:.9375rem;line-height:1.35;}
        .aict-roadmap-related-card-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#64748b;}
        .aict-roadmap-related-card-votes{color:#b91c1c;font-weight:700;}

        @media (max-width:560px){
            .aict-roadmap-search-row{flex-wrap:wrap;}
            .aict-roadmap-search-results{right:0;}
            .aict-roadmap-tab{padding:.55rem .75rem;font-size:.875rem;}
        }

        [data-theme="dark"] .aict-roadmap-tabs{border-color:#334155;}
        [data-theme="dark"] .aict-roadmap-tab{color:#cbd5e1;}
        [data-theme="dark"] .aict-roadmap-tab.is-active{color:#a5b4fc;border-color:#5c5fe6;}
        [data-theme="dark"] .aict-roadmap-tab-count{background:#312e81;color:#c7d2fe;}
        [data-theme="dark"] .aict-roadmap-trending{background:linear-gradient(135deg,#451a03,#422006);border-color:#78350f;}
        [data-theme="dark"] .aict-roadmap-trending-h,
        [data-theme="dark"] .aict-roadmap-trending-rank,
        [data-theme="dark"] .aict-roadmap-trending-votes{color:#fcd34d;}
        [data-theme="dark"] .aict-roadmap-trending-item a{color:#e2e8f0;}
        [data-theme="dark"] .aict-roadmap-trending-votes{background:#422006;border-color:#78350f;}
        [data-theme="dark"] .aict-roadmap-search,
        [data-theme="dark"] .aict-roadmap-search-results,
        [data-theme="dark"] .aict-roadmap-view-toggle,
        [data-theme="dark"] .aict-roadmap-sort-select{background:#0f172a;color:#e2e8f0;border-color:#334155;}
        [data-theme="dark"] .aict-roadmap-search-results li a:hover{background:#1e293b;}
        [data-theme="dark"] .aict-roadmap-related-card{background:#1e293b;border-color:#334155;}
        [data-theme="dark"] .aict-roadmap-related-card-title{color:#e2e8f0;}
        