
:root{
  --bg:#080b12;--panel:#0d121c;--panel-2:#111824;--panel-3:#151d2a;
  --line:#202a39;--line-soft:#182130;--text:#f3f6fa;--muted:#8b97a8;--muted-2:#647184;
  --blue:#5b8cff;--blue-2:#8b7cff;--green:#38d39f;--purple:#a78bfa;--red:#fb7185;--orange:#f6ad55;--cyan:#4cc9f0;
  --radius:14px;--container:1240px;--mono:"IBM Plex Mono",monospace;--sans:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(180deg,rgba(91,140,255,.045),transparent 35%),radial-gradient(circle at 85% 8%,rgba(139,124,255,.055),transparent 25rem)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
/* navigation */
nav{height:72px;position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:28px;padding:0 max(24px,calc((100vw - var(--container))/2));background:rgba(8,11,18,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.07)}.nav-logo{display:inline-flex;align-items:center;gap:9px;font-weight:750;letter-spacing:-.04em;font-size:1.08rem;white-space:nowrap;text-decoration:none}.nav-logo .brand-word{color:var(--text)}.nav-logo .brand-word span{color:var(--blue)}.brand-logo{display:block;flex-shrink:0;border-radius:7px}.nav-links{display:flex;align-items:center;gap:4px}.nav-links a{color:var(--muted);font-size:.84rem;font-weight:550;padding:8px 11px;border-radius:8px;transition:.18s}.nav-links a:hover,.nav-links a.active{color:var(--text);background:rgba(255,255,255,.045)}.nav-links .nav-cta{margin-left:6px;color:#fff!important;background:var(--blue);box-shadow:0 5px 18px rgba(91,140,255,.18)}.nav-links .nav-cta:hover{background:#6b99ff}.nav-visits{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:94px;height:26px;padding:3px 5px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--panel);line-height:0}.nav-visits img{display:block;width:82px;height:auto;max-width:100%;object-fit:contain}.nav-visits:hover{border-color:var(--blue)}.nav-portfolio{color:#b9c8ff!important}.nav-meta{margin-left:auto;color:var(--muted-2);font:600 .64rem var(--mono);white-space:nowrap}.theme-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid #293446;background:#0e141f;color:#dce3ee;border-radius:9px;padding:7px 10px;font-size:.75rem;font-weight:650;cursor:pointer;white-space:nowrap}.theme-toggle:hover{border-color:#527de0}.theme-toggle svg{width:15px;height:15px}
/* common */
.page{display:none}.page.active{display:block}.home-hero,.features,.section,.updates,.author-section,.upcoming,.dir-hero,.controls,.legend,.table-wrap{width:min(var(--container),100%);margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.section-title{font-size:1.65rem;line-height:1.2;letter-spacing:-.04em;font-weight:700}.section-sub{color:var(--muted);font-size:.87rem;margin-top:7px;margin-bottom:22px}
/* hero */
.home-hero{padding-top:92px;padding-bottom:58px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.75fr);gap:76px;align-items:center;position:relative}.home-hero:before{content:"";position:absolute;left:24px;right:24px;top:28px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent)}.home-hero .eyebrow{display:inline-flex;align-items:center;width:max-content;gap:7px;color:#a9bbdf;background:#101827;border:1px solid #26344a;border-radius:999px;padding:5px 10px;font:600 .65rem var(--mono);letter-spacing:.03em;margin-bottom:19px}.home-hero h1{font-size:clamp(3.1rem,6vw,5.6rem);line-height:.98;letter-spacing:-.075em;max-width:760px;margin-bottom:22px}.home-hero h1 em{font-style:normal;color:#8fb0ff}.home-hero>p{max-width:680px;color:var(--muted);font-size:1rem;line-height:1.8;margin-bottom:26px}.hero-btns{display:flex;gap:10px;flex-wrap:wrap}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;padding:10px 15px;font-size:.84rem;font-weight:650;cursor:pointer;transition:.18s;border:1px solid transparent}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 8px 22px rgba(91,140,255,.15)}.btn-primary:hover{background:#709aff;transform:translateY(-1px)}.btn-secondary{background:#0e141f;border-color:#293446;color:#dce3ee}.btn-secondary:hover{background:#141c29;border-color:#3b4a61;transform:translateY(-1px)}
/* search */
.home-search{max-width:690px;margin:27px 0 0;position:relative;z-index:3;cursor:text}.home-search-box{display:flex;align-items:center;gap:9px;background:#0d131e;border:1px solid #2a3547;border-radius:11px;padding:5px 6px;box-shadow:0 18px 50px rgba(0,0,0,.18)}.home-search-box:focus-within{border-color:#527de0;box-shadow:0 0 0 3px rgba(91,140,255,.08)}.home-search-box svg{margin-left:10px;color:#6e7d91}.home-search-box input{border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;padding:10px 4px;font-size:.86rem}.search-shortcut{margin-left:auto;margin-right:4px;padding:3px 7px;border:1px solid #293446;border-radius:5px;color:#718096;font:600 .61rem var(--mono)}.last-ai-update{margin-top:9px;color:var(--muted-2);font:600 .61rem var(--mono);display:flex;align-items:center;gap:7px;flex-wrap:wrap}.last-ai-update strong{color:#8fe0bf;font-weight:600}.ai-check-line{margin-top:7px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted-2);font:600 .61rem var(--mono)}.ai-status{display:inline-flex;align-items:center;gap:5px;padding:2px 7px;border-radius:999px;border:1px solid #354155;background:#121a27;color:#a0aec0}.ai-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.ai-status.pass,.ai-status.no_additions{color:#38d39f;background:#0c211a;border-color:#1d4938}.ai-status.partial{color:#f6ad55;background:#241b10;border-color:#4c381e}.ai-status.fail{color:#fb7185;background:#251219;border-color:#5a2635}.ai-status.unknown{color:#f6ad55;background:#241b10;border-color:#4c381e}.ai-status-date{color:var(--muted-2);font-weight:400}.source-cell{font-size:.76rem;white-space:nowrap}.source-cell a{color:#8fb0ff;text-decoration:underline;text-underline-offset:2px}.source-cell a:hover{color:#b9c8ff}.visit-counter{display:block;width:max-content;max-width:100%;height:20px;object-fit:contain;object-position:left center}
/* hero terminal */
.demo-terminal{align-self:stretch;display:flex;align-items:center}.terminal-card{width:100%;background:#0c121c;border:1px solid #253143;border-radius:15px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.28)}.terminal-head{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid #1c2635;background:#101722}.terminal-dots{display:flex;gap:6px}.terminal-dots i{width:7px;height:7px;border-radius:50%;background:#48576a}.terminal-label{font:600 .59rem var(--mono);letter-spacing:.08em;color:#6f7c8e;text-transform:uppercase}.terminal-body{padding:22px;font:.73rem/1.9 var(--mono)}.term-line{color:#aeb9c8}.term-prompt{color:#6f9bff}.term-result{margin:5px 0 17px;padding:11px 12px;border:1px solid #21352f;background:#0c1715;border-radius:8px}.term-ok{color:#68d8ae}.term-muted{color:#718094}
/* stats */
.stats-bar{margin-top:27px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #222d3d;border-radius:11px;overflow:hidden;background:#0c111a}.stat{padding:14px 16px;border-right:1px solid #222d3d}.stat:last-child{border-right:0}.stat-num{font:700 1.1rem var(--mono)}.stat-label{font-size:.64rem;color:var(--muted-2);margin-top:2px}
/* feature strip */
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#202a39;border:1px solid #202a39;border-radius:13px;overflow:hidden;margin-bottom:92px}.feature-card{background:#0d121b;padding:23px 20px;transition:.18s}.feature-card:hover{background:#101824}.feature-icon{width:34px;height:34px;display:grid;place-items:center;border:1px solid #283447;border-radius:8px;background:#121a27;font-size:.95rem;margin-bottom:13px}.feature-card h3{font-size:.88rem;margin-bottom:4px}.feature-card p{font-size:.72rem;color:var(--muted);line-height:1.65}
/* sections */
.section{margin-bottom:92px}.cat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.cat-card{min-height:145px;border:1px solid #202a39;border-radius:11px;padding:17px;background:#0c1119;cursor:pointer;transition:.18s;position:relative;overflow:hidden}.cat-card:hover{transform:translateY(-2px);border-color:#35445a;background:#101721}.cat-card:after{content:"→";position:absolute;right:14px;bottom:13px;color:#4f5d70;font-size:.85rem}.cat-name{font-weight:650;font-size:.78rem;margin-bottom:9px}.cat-desc{font-size:.68rem;color:#778497;line-height:1.65}.updates{margin-bottom:92px}.update-card{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:19px 0;border-top:1px solid #202a39}.update-card:last-child{border-bottom:1px solid #202a39}.update-date{font:600 .62rem var(--mono);color:#657286;padding-top:3px}.update-content h4{font-size:.88rem;margin-bottom:4px}.update-content p{font-size:.73rem;color:var(--muted);line-height:1.65}.update-tag{display:inline-block;font:600 .57rem var(--mono);padding:3px 6px;border-radius:4px;margin-bottom:7px}.tag-new{color:#62d7ac;background:#0d211b}.tag-update{color:#83aaff;background:#111d33}.tag-fix{color:#f2b16a;background:#241a0f}
/* author */
.author-section{margin-bottom:88px}.author-card{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid #253143;border-radius:13px;background:#0d131d}.author-avatar{width:54px;height:54px;display:grid;place-items:center;border-radius:11px;background:#17233a;border:1px solid #30476c;color:#a8c0ff;font:700 1rem var(--mono);flex-shrink:0}.author-info h3{font-size:.9rem}.author-info p{font-size:.72rem;color:var(--muted);margin:2px 0 10px}.author-links{display:flex;gap:6px;flex-wrap:wrap}.author-link{font-size:.64rem;color:#8996a8;border:1px solid #253143;border-radius:7px;padding:5px 8px}.author-link:hover{color:#fff;border-color:#3a4b63;background:#111a27}
/* directory */
.dir-hero{padding-top:55px;padding-bottom:12px}.dir-hero h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;letter-spacing:-.06em;margin-bottom:9px}.dir-hero p{color:var(--muted);font-size:.83rem}.controls{display:flex;gap:8px;padding-top:17px;padding-bottom:12px}.search-wrap{flex:1;min-width:250px;position:relative}.search-wrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#657286;pointer-events:none}input[type=search],input[type=text],input[type=url],select,textarea{width:100%;background:#0c121c;color:var(--text);border:1px solid #273345;border-radius:9px;outline:0;padding:9px 11px;font-size:.78rem}input[type=search]{padding-left:36px}input:focus,select:focus,textarea:focus{border-color:#4e72bd;box-shadow:0 0 0 3px rgba(91,140,255,.07)}select{min-width:190px;cursor:pointer}.legend{display:flex;flex-wrap:wrap;gap:6px;padding-top:2px;padding-bottom:15px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 8px;font:600 .58rem var(--mono);white-space:nowrap}.badge-dot{width:5px;height:5px;border-radius:50%}.badge.oss{color:var(--green);background:#0c1c17;border:1px solid #183b30}.badge.home{color:var(--purple);background:#17132a;border:1px solid #33295a}.badge.paid{color:var(--red);background:#24131a;border:1px solid #4a2631}.badge.comm{color:var(--orange);background:#21180e;border:1px solid #49351d}.badge.ce{color:var(--cyan);background:#0d1d25;border:1px solid #1b4050}
/* table */
.table-wrap{padding-bottom:70px;overflow-x:auto}table{width:100%;min-width:820px;border-collapse:separate;border-spacing:0;font-size:.76rem}thead th{text-align:left;padding:12px 13px;background:#101721;color:#69778a;border-top:1px solid #253143;border-bottom:1px solid #253143;font:600 .59rem var(--mono);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;cursor:pointer}thead th:first-child{border-left:1px solid #253143;border-top-left-radius:9px}thead th:last-child{border-right:1px solid #253143;border-top-right-radius:9px}thead th:hover{color:#cbd5e1}thead th .sort-icon{opacity:.35;margin-left:3px}thead th.asc .sort-icon,thead th.desc .sort-icon{opacity:1;color:#7da2ff}tbody tr{background:#0b1119}tbody tr:hover{background:#101824}tbody tr.software-row{cursor:pointer}tbody tr.software-row:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}td{padding:13px;border-bottom:1px solid #1b2533;vertical-align:middle}td.name-cell{font-size:.77rem;font-weight:650}td.name-cell a{display:flex;align-items:center;gap:5px;color:#e4e9f0}td.name-cell a:hover{color:#86aaff}td.name-cell a svg{color:#607086;flex-shrink:0}td.notes-cell{max-width:300px;color:#7c8899;font-size:.69rem}td.date-cell{font:600 .59rem var(--mono);color:#657286;white-space:nowrap}.name-wrap{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.flag-btn{padding:3px 6px;border:1px solid #3d2830;border-radius:5px;background:#160f13;color:#d78395;font:600 .55rem var(--mono);cursor:pointer;opacity:.75;transition:.15s}.flag-btn:hover{opacity:1;background:#24131a;border-color:#61313e}.state-msg{text-align:center;padding:60px 20px;color:var(--muted);font-size:.8rem}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;color:#69778a;font-size:.65rem}.page-btns{display:flex;gap:4px}.page-btn{border:1px solid #253143;background:#0e141e;color:#8996a8;border-radius:7px;padding:5px 8px;font:600 .59rem var(--mono);cursor:pointer}.page-btn:hover,.page-btn.active{background:#315ab7;border-color:#4670d2;color:#fff}.page-btn:disabled{opacity:.25;cursor:default}
/* modals */
.modal-backdrop{display:none;position:fixed;inset:0;z-index:200;align-items:center;justify-content:center;padding:18px;background:rgba(3,6,10,.78);backdrop-filter:blur(9px)}.modal-backdrop.open{display:flex}.modal{position:relative;width:min(520px,100%);max-height:90vh;overflow:auto;background:#101722;border:1px solid #2b394d;border-radius:14px;padding:24px;box-shadow:0 35px 100px rgba(0,0,0,.5)}.modal h2{font-size:1.05rem;letter-spacing:-.025em;margin-bottom:5px}.modal p.modal-sub{font-size:.72rem;color:var(--muted);line-height:1.65;margin-bottom:18px}.modal-close{position:absolute;right:13px;top:11px;border:0;background:none;color:#6f7d90;font-size:1rem;cursor:pointer}.modal-close:hover{color:#fff}.form-group{margin-bottom:12px}.form-group label{display:block;margin-bottom:5px;color:#718096;font:600 .58rem var(--mono);text-transform:uppercase;letter-spacing:.05em}.form-group textarea{resize:vertical;min-height:78px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.submit-btn{width:100%;border:0;border-radius:9px;background:#4f78dd;color:#fff;padding:10px;font-size:.78rem;font-weight:650;cursor:pointer;margin-top:4px}.submit-btn:hover{background:#6088ea}.submit-btn:disabled{opacity:.5;cursor:default}.form-msg{text-align:center;min-height:1.2em;font-size:.7rem;margin-top:9px}.form-msg.success{color:var(--green)}.form-msg.error{color:var(--red)}
/* footer */
footer{border-top:1px solid #1b2533;background:#070a10;padding:24px max(24px,calc((100vw - var(--container))/2));display:flex;justify-content:space-between;align-items:center;gap:20px;color:#657286;font-size:.64rem}.disclaimer{max-width:700px;line-height:1.65}.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right}.footer-right a{color:#8997aa}.footer-right a:hover{color:#fff}
/* responsive */
@media(max-width:1000px){.home-hero{grid-template-columns:1fr;gap:35px;padding-top:65px}.demo-terminal{max-width:700px}.features{grid-template-columns:repeat(2,1fr)}.cat-grid{grid-template-columns:repeat(2,1fr)}.nav-meta{display:none}}
@media(max-width:650px){nav{padding:0 14px;gap:12px}.nav-links{margin-left:auto}.nav-links a:not(.nav-cta){display:none}.nav-links .nav-cta{margin-left:0}.home-hero,.features,.section,.updates,.author-section,.upcoming,.dir-hero,.controls,.legend,.table-wrap{padding-left:15px;padding-right:15px}.home-hero{padding-top:48px}.home-hero h1{font-size:2.8rem}.home-hero>p{font-size:.88rem}.stats-bar{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid #222d3d}.stat:last-child{border-bottom:0}.features{grid-template-columns:1fr;margin-bottom:65px}.cat-grid,.upcoming-grid{grid-template-columns:1fr}.section,.updates,.upcoming,.author-section{margin-bottom:65px}.update-card{grid-template-columns:1fr;gap:4px}.controls{flex-direction:column}.controls .btn-primary,select{width:100%}.form-row{grid-template-columns:1fr}td.notes-cell,td.date-cell{display:none}footer{align-items:flex-start;flex-direction:column}.footer-right{align-items:flex-start;text-align:left}.search-shortcut{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}


/* ── Readability & contrast pass (desktop-first) ── */
:root{
  --bg:#0b1020;
  --panel:#121a2a;
  --panel-2:#172238;
  --panel-3:#1c2940;
  --line:#2b3a54;
  --line-soft:#24324a;
  --text:#f7f9fc;
  --muted:#b4bfd0;
  --muted-2:#93a1b5;
  --blue:#6ea8ff;
  --blue-2:#9b8cff;
}
body{font-size:17px;line-height:1.72;background:var(--bg);color:var(--text)}
body:before{background:linear-gradient(180deg,rgba(83,145,255,.07),transparent 38%),radial-gradient(circle at 88% 5%,rgba(124,105,255,.08),transparent 28rem)}
.nav-logo{font-size:1.2rem}.nav-links a{font-size:.96rem;color:#b8c3d3}.nav-meta{font-size:.72rem;color:#9eabc0}
.home-hero .eyebrow{font-size:.75rem}.home-hero>p{font-size:1.08rem;color:#bdc7d6;line-height:1.85}.home-search-box{min-height:58px;background:#111a2a;border-color:#34445f}.home-search-box input{font-size:1rem;color:#f7f9fc}.last-ai-update{font-size:.72rem;color:#93a1b5}
.btn-primary,.btn-secondary{font-size:.95rem;padding:12px 17px}.section-title{font-size:1.9rem}.section-sub{font-size:1rem;color:#aeb9ca}
.feature-card h3{font-size:1rem}.feature-card p{font-size:.9rem;color:#aeb9ca}.cat-name{font-size:.95rem}.cat-desc{font-size:.84rem;color:#a5b1c2}.update-date{font-size:.72rem}.update-content h4{font-size:1rem}.update-content p{font-size:.9rem;color:#aeb9ca}
.upcoming-card h3{font-size:1.05rem}.upcoming-card p{font-size:.88rem;color:#aeb9ca}.author-info h3{font-size:1rem}.author-info p{font-size:.84rem;color:#aeb9ca}.author-link{font-size:.75rem}
.dir-hero p{font-size:1rem;color:#aeb9ca}.controls input,.controls select{font-size:1rem;min-height:46px}.legend{font-size:.88rem;color:#aeb9ca}
table{font-size:.95rem}thead th{font-size:.82rem;color:#b5c0d0;padding:15px 15px}tbody td{padding:15px;color:#e5eaf2}tbody tr:hover td{background:rgba(110,168,255,.055)}.badge{font-size:.78rem}.flag-btn{font-size:.72rem}
footer{font-size:.76rem;color:#8f9db2}
.modal{background:#121a2a;border-color:#34445f}.modal h2{font-size:1.5rem}.modal-sub,.form-group label{font-size:.9rem;color:#b5c0d0}.form-group input,.form-group select,.form-group textarea{font-size:1rem;background:#0e1727;color:#f7f9fc;border-color:#34445f}
@media(max-width:650px){body{font-size:16px}.home-hero>p{font-size:.96rem}.section-sub{font-size:.9rem}.feature-card p,.cat-desc,.upcoming-card p,.update-content p{font-size:.84rem}table{font-size:.9rem}}


/* ── Desktop readability + compact layout refinement ── */
@media (min-width:1001px){
  :root{--container:1360px}
  body{font-size:18px;line-height:1.65}
  nav{height:76px;gap:30px}
  .nav-logo{font-size:1.2rem}
  .nav-links{gap:6px}
  .nav-links a{font-size:1rem;padding:10px 13px}
  .nav-meta{font-size:.75rem}

  /* Keep the existing HTML, but use the grid intentionally so content does not
     get vertically stretched by the terminal card. */
  .home-hero{
    grid-template-columns:minmax(0,1fr) minmax(480px,.9fr);
    grid-template-rows:auto auto auto auto auto;
    column-gap:72px;
    row-gap:18px;
    align-items:start;
    padding-top:72px;
    padding-bottom:58px;
  }
  .home-hero .eyebrow{grid-column:1;grid-row:1;font-size:.82rem;padding:7px 12px;margin-bottom:0}
  .home-hero h1{grid-column:1;grid-row:2;font-size:clamp(3.6rem,5vw,5.4rem);line-height:.98;margin:0 0 2px;max-width:760px}
  .home-hero>p{grid-column:1;grid-row:3;font-size:1.12rem;line-height:1.75;max-width:720px;margin:0}
  .hero-btns{grid-column:1;grid-row:4;align-self:start;margin-top:4px}
  .hero-btns .btn-primary,.hero-btns .btn-secondary{font-size:1rem;padding:13px 18px}
  .home-search{grid-column:2;grid-row:1 / span 2;width:100%;max-width:none;margin:0;align-self:start}
  .home-search-box{min-height:64px;border-radius:13px;padding:7px 9px}
  .home-search-box input{font-size:1.08rem;padding:12px 5px}
  .home-search-box svg{width:20px;height:20px;margin-left:10px}
  .search-shortcut{font-size:.7rem;padding:4px 8px}
  .last-ai-update{font-size:.72rem;margin-top:10px}
  .demo-terminal{grid-column:2;grid-row:3 / span 2;align-self:start;width:100%;max-width:none}
  .terminal-card{border-radius:16px}
  .terminal-body{padding:25px;font-size:.86rem;line-height:1.9}
  .terminal-head{height:46px}
  .terminal-label{font-size:.68rem}
  .stats-bar{grid-column:1 / -1;grid-row:5;margin-top:8px}
  .stat{padding:17px 20px}
  .stat-num{font-size:1.25rem}
  .stat-label{font-size:.76rem}

  .features{margin-bottom:72px}
  .feature-card{padding:26px 24px}
  .feature-card h3{font-size:1.05rem;margin-bottom:7px}
  .feature-card p{font-size:.9rem;line-height:1.7}
  .section-title{font-size:2rem}
  .section-sub{font-size:1rem;margin-bottom:24px}
  .cat-card{min-height:150px;padding:20px}
  .cat-name{font-size:1rem;margin-bottom:10px}
  .cat-desc{font-size:.86rem;line-height:1.7}
  .update-content h4{font-size:1rem}
  .update-content p{font-size:.86rem}
  .upcoming-card{min-height:180px;padding:22px}
  .upcoming-card h3{font-size:1.08rem}
  .upcoming-card p{font-size:.86rem}

  /* Directory: larger text, tighter row height, stronger contrast. */
  .dir-hero{padding-top:50px;padding-bottom:10px}
  .dir-hero h1{font-size:clamp(2.5rem,4vw,3.6rem)}
  .dir-hero p{font-size:1rem}
  .controls{gap:10px;padding-top:18px;padding-bottom:13px}
  .controls input,.controls select,input[type=search],input[type=text],select,textarea{font-size:1rem;min-height:50px}
  .legend{gap:8px;padding-bottom:16px;font-size:.95rem}
  .badge{font-size:.72rem;padding:5px 10px}
  table{font-size:1rem;min-width:1000px}
  thead th{font-size:.7rem;padding:14px 16px}
  td{padding:17px 16px}
  td.name-cell{font-size:1rem}
  td.notes-cell{font-size:.88rem;line-height:1.55;color:#aeb9ca}
  td.date-cell{font-size:.72rem;color:#9aa8bc}
  .flag-btn{font-size:.68rem;padding:5px 8px}
  .pagination{font-size:.8rem}
  .page-btn{font-size:.7rem;padding:7px 10px}
  footer{font-size:.78rem}
}

/* Better readability on tablets too, without changing the mobile design. */
@media (min-width:651px) and (max-width:1000px){
  body{font-size:17px}
  .home-hero{gap:34px;padding-top:58px}
  .home-hero h1{font-size:3.6rem}
  .home-hero>p{font-size:1.05rem}
  table{font-size:.98rem}
  thead th{font-size:.72rem}
  td{padding:15px}
  td.name-cell{font-size:.98rem}
  td.notes-cell{font-size:.86rem}
}


.recent-empty{padding:18px 0;color:var(--muted);font-size:.9rem}
.tag-recent{color:#68e0b2;background:#0c2119;border:1px solid #20543f}
#recentSoftwareUpdates .update-card{grid-template-columns:110px minmax(0,1fr)}
#recentSoftwareUpdates .update-content h4 a{color:var(--text)}
#recentSoftwareUpdates .update-content h4 a:hover{color:#8fb0ff}
@media(max-width:650px){#recentSoftwareUpdates .update-card{grid-template-columns:1fr;gap:4px}}

/* Light theme */
body[data-theme="light"]{--bg:#f5f7fb;--panel:#fff;--panel-2:#f0f3f8;--panel-3:#e8edf5;--line:#d9e0eb;--line-soft:#e6ebf2;--text:#172033;--muted:#586579;--muted-2:#6e7b8f;--blue:#315fc7;--blue-2:#6b59cb;--green:#14835f;--purple:#7654bb;--red:#c43f58;--orange:#a96113;--cyan:#117b9a;color:var(--text);background:var(--bg)}
body[data-theme="light"]:before{background:linear-gradient(180deg,rgba(49,95,199,.05),transparent 35%),radial-gradient(circle at 85% 8%,rgba(107,89,203,.06),transparent 25rem)}
body[data-theme="light"] nav{background:rgba(255,255,255,.92);border-bottom-color:#dfe5ee}
body[data-theme="light"] .nav-links a:hover,body[data-theme="light"] .nav-links a.active{background:#eaf0fa;color:#172033}
body[data-theme="light"] .nav-links .nav-cta{color:#fff!important;background:var(--blue)}
body[data-theme="light"] .theme-toggle{background:#fff;border-color:#d4dce8;color:#29364b}body[data-theme="light"] .nav-visits{background:#fff;border-color:#e1e4f0}
body[data-theme="light"] .home-hero .eyebrow{color:#38517a;background:#edf3ff;border-color:#d4e0f8}
body[data-theme="light"] .home-search-box,body[data-theme="light"] .stats-bar,body[data-theme="light"] .feature-card,body[data-theme="light"] .cat-card,body[data-theme="light"] .author-card,body[data-theme="light"] .terminal-card,body[data-theme="light"] .modal{background:#fff;border-color:#dce3ed}
body[data-theme="light"] .home-search-box input,body[data-theme="light"] input[type=search],body[data-theme="light"] input[type=text],body[data-theme="light"] input[type=url],body[data-theme="light"] select,body[data-theme="light"] textarea{background:#fff!important;color:#172033!important;border-color:#d3dce8}
body[data-theme="light"] .search-shortcut,body[data-theme="light"] .btn-secondary,body[data-theme="light"] .author-link,body[data-theme="light"] .page-btn{background:#f7f9fc;border-color:#d7dfeb;color:#4c5a70}
body[data-theme="light"] .btn-primary,body[data-theme="light"] .submit-btn{background:#315fc7;color:#fff}
body[data-theme="light"] .terminal-head,body[data-theme="light"] thead th{background:#edf1f7;border-color:#d9e1ec;color:#526176}
body[data-theme="light"] .terminal-body,body[data-theme="light"] tbody tr{background:#fff;color:#253047}
 body[data-theme="light"] tbody tr.software-row:hover td{background:#f0f4fa}
body[data-theme="light"] .term-result{background:#edf8f3;border-color:#cbe8dc}
body[data-theme="light"] .term-ok{color:#14835f}body[data-theme="light"] .term-muted{color:#647287}body[data-theme="light"] .term-prompt{color:#315fc7}
body[data-theme="light"] .features{background:#dce3ed;border-color:#dce3ed}
body[data-theme="light"] .feature-card:hover,body[data-theme="light"] .cat-card:hover,body[data-theme="light"] tbody tr:hover{background:#f0f4fa}
body[data-theme="light"] .cat-desc,body[data-theme="light"] td.notes-cell,body[data-theme="light"] .section-sub,body[data-theme="light"] .home-hero>p,body[data-theme="light"] .feature-card p,body[data-theme="light"] .update-content p,body[data-theme="light"] .author-info p{color:#586579}
body[data-theme="light"] .update-card,body[data-theme="light"] td{border-color:#dce3ed}
body[data-theme="light"] footer{background:#edf1f7;border-color:#dce3ed;color:#56647a}
body[data-theme="light"] .badge.oss{color:#147351;background:#eaf8f1;border-color:#c6e8d7}
body[data-theme="light"] .badge.home{color:#6b46a8;background:#f3edff;border-color:#dfd1fb}
body[data-theme="light"] .badge.paid{color:#b32f4a;background:#fff0f2;border-color:#f4cbd2}
body[data-theme="light"] .badge.comm{color:#96520d;background:#fff5e8;border-color:#f1d7b4}
body[data-theme="light"] .badge.ce{color:#126c86;background:#e9f8fc;border-color:#c3e9f2}
body[data-theme="light"] .tag-new{color:#147351;background:#eaf8f1}body[data-theme="light"] .tag-update{color:#315fc7;background:#edf3ff}body[data-theme="light"] .tag-fix{color:#96520d;background:#fff5e8}
body[data-theme="light"] .flag-btn{background:#fff1f3;color:#b32f4a;border-color:#f0c8d0}body[data-theme="light"] .modal-backdrop{background:rgba(31,43,62,.35)}body[data-theme="light"] .modal-close{color:#647287}body[data-theme="light"] .author-avatar{background:#edf3ff;border-color:#d4e0f8;color:#315fc7}
@media(max-width:650px){.theme-toggle{padding:7px 8px;font-size:0}.theme-toggle svg{width:17px;height:17px}}


/* Responsive directory controls and source evidence links */
.controls{flex-wrap:wrap;align-items:center}
.controls .search-wrap{flex:1 1 260px;min-width:min(250px,100%)}
.controls select{flex:1 1 170px;min-width:160px;max-width:100%}
.source-cell{min-width:145px;white-space:normal;line-height:1.7}
@media(max-width:650px){.controls .search-wrap{flex-basis:100%;min-width:0}.controls select{flex:1 1 145px;min-width:0}.source-cell{min-width:130px}}


/* ── Clean, bright interface inspired by the supplied design reference ── */
/* Keep the bright visual system exclusive to light mode. */
body[data-theme="light"]{
  --bg:#f6f7fc;--panel:#ffffff;--panel-2:#f1f3fb;--panel-3:#e8ebf8;
  --line:#e3e6f1;--line-soft:#edf0f7;--text:#171a35;--muted:#59627b;--muted-2:#747d95;
  --blue:#6557e8;--blue-2:#8b5cf6;--green:#159b75;--purple:#7654db;--red:#d74766;--orange:#b86b17;--cyan:#167d9b;
}body[data-theme="light"]{background:var(--bg);color:var(--text)}body[data-theme="light"]:before{background:radial-gradient(ellipse at 15% 0%,rgba(129,115,255,.12),transparent 36rem),radial-gradient(ellipse at 90% 10%,rgba(91,154,255,.09),transparent 30rem)}body[data-theme="light"] nav{background:rgba(255,255,255,.9);border-bottom:1px solid #e8eaf4;box-shadow:0 5px 24px rgba(35,38,82,.035)}body[data-theme="light"] .nav-logo .brand-word{color:#202344}body[data-theme="light"] .nav-logo .brand-word span{color:#6557e8}body[data-theme="light"] .nav-links a{color:#646b83}body[data-theme="light"] .nav-links a:hover,body[data-theme="light"] .nav-links a.active{background:#f0efff;color:#4d42c9}body[data-theme="light"] .nav-links .nav-cta,body[data-theme="light"] .btn-primary,body[data-theme="light"] .submit-btn{background:linear-gradient(135deg,#6557e8,#8064f5);box-shadow:0 8px 20px rgba(101,87,232,.17)}body[data-theme="light"] .nav-links .nav-cta:hover,body[data-theme="light"] .btn-primary:hover,body[data-theme="light"] .submit-btn:hover{background:linear-gradient(135deg,#5548d5,#7054e8)}body[data-theme="light"] .theme-toggle,body[data-theme="light"] .btn-secondary{background:#fff;border-color:#e1e4f0;color:#414865}body[data-theme="light"] .theme-toggle:hover,body[data-theme="light"] .btn-secondary:hover{background:#f4f3ff;border-color:#c9c3ff;color:#4d42c9}body[data-theme="light"] .home-hero{padding-top:82px}body[data-theme="light"] .home-hero .eyebrow{color:#5c50c8;background:#f0efff;border-color:#dcd8ff}body[data-theme="light"] .home-hero h1{color:#1b1e3d}body[data-theme="light"] .home-hero h1 em{background:linear-gradient(100deg,#6557e8,#a05cf5);-webkit-background-clip:text;background-clip:text;color:transparent}body[data-theme="light"] .home-hero>p{color:#626b83}body[data-theme="light"] .home-search-box{background:#fff;border-color:#e2e5f1;box-shadow:0 14px 40px rgba(39,43,91,.07)}body[data-theme="light"] .home-search-box input{color:#252847}body[data-theme="light"] .last-ai-update,body[data-theme="light"] .ai-check-line{color:#68718a}body[data-theme="light"] .last-ai-update strong{color:#3f36b4}body[data-theme="light"] .ai-status{background:#f5f6fb;border-color:#e0e4f0;color:#68718a}body[data-theme="light"] .ai-status.pass,body[data-theme="light"] .ai-status.no_additions{color:#14805e;background:#e9f8f1;border-color:#bcebd6}body[data-theme="light"] .ai-status.partial{color:#9a5a0a;background:#fff5e5;border-color:#f3d9a7}body[data-theme="light"] .ai-status.fail{color:#b72e4b;background:#fff0f3;border-color:#f2c8d1}body[data-theme="light"] .stats-bar{background:#fff;border-color:#e4e7f2;box-shadow:0 12px 35px rgba(39,43,91,.045)}body[data-theme="light"] .stat{border-color:#e7e9f3}body[data-theme="light"] .stat-num{color:#282b4c}body[data-theme="light"] .stat-label{color:#717b94}body[data-theme="light"] .features{background:#e4e7f2;border-color:#e4e7f2;box-shadow:0 15px 40px rgba(39,43,91,.04)}body[data-theme="light"] .feature-card{background:#fff}body[data-theme="light"] .feature-card:hover{background:#fafaff}body[data-theme="light"] .feature-icon{background:#f0efff;border-color:#e0dcff;color:#6557e8}body[data-theme="light"] .feature-card h3,body[data-theme="light"] .cat-name,body[data-theme="light"] .section-title{color:#202344}body[data-theme="light"] .feature-card p,body[data-theme="light"] .cat-desc,body[data-theme="light"] .section-sub{color:#65708a}body[data-theme="light"] .cat-card{background:#fff;border-color:#e4e7f2;box-shadow:0 8px 25px rgba(39,43,91,.035)}body[data-theme="light"] .cat-card:hover{background:#fbfaff;border-color:#cfc9ff;box-shadow:0 12px 28px rgba(77,66,201,.08)}body[data-theme="light"] .update-card{border-color:#e4e7f2}body[data-theme="light"] .update-content h4{color:#262949}body[data-theme="light"] .update-content p{color:#65708a}body[data-theme="light"] .tag-new{color:#147351;background:#eaf8f1}body[data-theme="light"] .tag-update{color:#5143c7;background:#f0efff}body[data-theme="light"] .tag-fix{color:#96520d;background:#fff5e8}body[data-theme="light"] .author-card{background:#fff;border-color:#e4e7f2;box-shadow:0 10px 30px rgba(39,43,91,.04)}body[data-theme="light"] .author-avatar{background:#f0efff;border-color:#ddd8ff;color:#5548d5}body[data-theme="light"] .author-info h3{color:#202344}body[data-theme="light"] .author-info p{color:#65708a}body[data-theme="light"] .author-link{background:#fff;border-color:#e2e5f0;color:#59627b}body[data-theme="light"] .author-link:hover{background:#f2f0ff;border-color:#d3ccff;color:#5143c7}body[data-theme="light"] .terminal-card{background:#fff;border-color:#e0e4f0;box-shadow:0 24px 65px rgba(39,43,91,.12)}body[data-theme="light"] .terminal-head{background:#f4f5fb;border-color:#e4e7f2}body[data-theme="light"] .terminal-label{color:#68718a}body[data-theme="light"] .terminal-body{background:#fff;color:#303554}body[data-theme="light"] .term-line{color:#4b5470}body[data-theme="light"] .term-prompt{color:#6557e8}body[data-theme="light"] .term-result{background:#eefaf4;border-color:#c9eedb}body[data-theme="light"] .term-ok{color:#16835f}body[data-theme="light"] .term-muted{color:#65708a}body[data-theme="light"] .dir-hero h1{color:#202344}body[data-theme="light"] .dir-hero p{color:#65708a}body[data-theme="light"] .controls input,body[data-theme="light"] .controls select,body[data-theme="light"] input[type=search],body[data-theme="light"] input[type=text],body[data-theme="light"] input[type=url],body[data-theme="light"] select,body[data-theme="light"] textarea{background:#fff;color:#202344;border-color:#dfe3ef}body[data-theme="light"] .controls input:focus,body[data-theme="light"] .controls select:focus,body[data-theme="light"] input:focus,body[data-theme="light"] select:focus,body[data-theme="light"] textarea:focus{border-color:#9a8ff4;box-shadow:0 0 0 3px rgba(101,87,232,.1)}body[data-theme="light"] .legend .badge{box-shadow:none}body[data-theme="light"] .badge.oss{color:#147351;background:#eaf8f1;border-color:#c6e8d7}body[data-theme="light"] .badge.home{color:#6b46a8;background:#f3edff;border-color:#dfd1fb}body[data-theme="light"] .badge.paid{color:#b32f4a;background:#fff0f2;border-color:#f4cbd2}body[data-theme="light"] .badge.comm{color:#96520d;background:#fff5e8;border-color:#f1d7b4}body[data-theme="light"] .badge.ce{color:#126c86;background:#e9f8fc;border-color:#c3e9f2}body[data-theme="light"] table{color:#292d4b}body[data-theme="light"] thead th{background:#f2f3fa;color:#626b83;border-color:#e1e5f0}body[data-theme="light"] thead th:first-child,body[data-theme="light"] thead th:last-child{border-color:#e1e5f0}body[data-theme="light"] thead th:hover{color:#4d42c9}body[data-theme="light"] tbody tr{background:#fff}body[data-theme="light"] tbody tr:hover{background:#f8f8ff}body[data-theme="light"] tbody td{color:#3c4360;border-color:#eceef6}body[data-theme="light"] td.name-cell a{color:#272b4b}body[data-theme="light"] td.name-cell a:hover{color:#5548d5}body[data-theme="light"] td.notes-cell{color:#626b83}body[data-theme="light"] td.date-cell{color:#59627b}body[data-theme="light"] .source-cell a{color:#5143c7}body[data-theme="light"] .source-cell a:hover{color:#372ba8}body[data-theme="light"] .flag-btn{background:#fff1f3;color:#b32f4a;border-color:#f0c8d0}body[data-theme="light"] .flag-btn:hover{background:#ffe5ea;border-color:#e7a8b5}body[data-theme="light"] .pagination{color:#68718a}body[data-theme="light"] .page-btn{background:#fff;border-color:#dfe3ef;color:#58617a}body[data-theme="light"] .page-btn:hover,body[data-theme="light"] .page-btn.active{background:#6557e8;border-color:#6557e8;color:#fff}body[data-theme="light"] .state-msg{color:#65708a}body[data-theme="light"] .modal{background:#fff;border-color:#e0e4f0;box-shadow:0 30px 90px rgba(32,35,68,.18)}body[data-theme="light"] .modal h2{color:#202344}body[data-theme="light"] .modal p.modal-sub{color:#65708a}body[data-theme="light"] .form-group label{color:#59627b}body[data-theme="light"] .form-group input,body[data-theme="light"] .form-group select,body[data-theme="light"] .form-group textarea{background:#fff;color:#202344;border-color:#dfe3ef}body[data-theme="light"] .form-msg.success{color:#14805e}body[data-theme="light"] .form-msg.error{color:#b72e4b}body[data-theme="light"] footer{background:#fff;border-top-color:#e4e7f2;color:#68718a}body[data-theme="light"] .footer-right a{color:#5143c7}body[data-theme="light"] .footer-right a:hover{color:#372ba8}body[data-theme="light"] .recent-empty{color:#65708a}
@media(max-width:650px){body[data-theme="light"] .home-hero{padding-top:48px}body[data-theme="light"] .stats-bar{background:#fff}body[data-theme="light"] .terminal-card{box-shadow:0 16px 40px rgba(39,43,91,.1)}
}


/* Simplified single-column hero after removing the decorative demo panel */
@media (min-width:1001px){
  .home-hero{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;max-width:980px;column-gap:0;row-gap:18px}
  .home-hero .eyebrow,.home-hero h1,.home-hero>p,.hero-btns,.home-search,.stats-bar{grid-column:1;grid-row:auto}
  .home-search{width:100%;max-width:100%;margin:8px 0 0}
  .stats-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* ── Homepage refresh: focused search, subtle motion and cursor ── */
.home-hero{max-width:1120px;padding-top:56px;padding-bottom:76px;display:block}
.home-hero:before{left:24px;right:24px;top:30px;opacity:.45}
.hero-copy{max-width:900px;margin:0 auto;position:relative}
.home-hero .eyebrow{gap:9px;padding:7px 12px;margin-bottom:24px;color:#b7c6e7;background:rgba(18,29,48,.72);border-color:rgba(115,145,205,.25);letter-spacing:.09em}
.eyebrow-pulse{width:7px;height:7px;border-radius:50%;background:#47d6a1;box-shadow:0 0 0 4px rgba(71,214,161,.12),0 0 14px rgba(71,214,161,.65)}
.home-hero h1{max-width:850px;font-size:clamp(3.35rem,7.2vw,6.25rem);line-height:.99;letter-spacing:-.082em;margin-bottom:24px}
.home-hero h1 em{background:linear-gradient(100deg,#8fb0ff 10%,#b49cff 90%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-copy>p{max-width:680px;font-size:1.04rem;line-height:1.85;margin-bottom:30px;color:#a4afc0}
.home-search{max-width:790px;margin:0 0 24px;cursor:default}
.home-search-box{min-height:66px;padding:7px 8px;gap:12px;border-radius:14px;border-color:#34445d;background:rgba(13,19,30,.94);box-shadow:0 18px 55px rgba(0,0,0,.23),inset 0 1px rgba(255,255,255,.025);transition:border-color .2s,box-shadow .2s,transform .2s}
.home-search-box:focus-within{border-color:#718ff0;box-shadow:0 0 0 4px rgba(101,125,232,.13),0 22px 60px rgba(0,0,0,.25);transform:translateY(-1px)}
.home-search-box>svg{margin-left:12px;flex:none;color:#91a3c0}
.home-search-box input{min-width:0;flex:1;padding:12px 2px;font-size:.96rem;color:var(--text)}
.home-search-box input::placeholder{color:#78869b}
.search-shortcut{margin-left:0;margin-right:4px;padding:4px 8px;border-radius:6px;font-size:.7rem}
.search-submit{display:inline-flex;align-items:center;gap:10px;padding:11px 16px;border:0;border-radius:9px;background:linear-gradient(135deg,#5b8cff,#7969ed);color:#fff;font-size:.8rem;font-weight:700;cursor:pointer;box-shadow:0 6px 18px rgba(91,140,255,.2);transition:transform .18s,filter .18s}
.search-submit:hover{filter:brightness(1.1);transform:translateY(-1px)}
.search-submit span{font:600 .85rem var(--mono);opacity:.8}
.search-control{position:relative;z-index:6}.search-results{position:absolute;top:calc(100% - 1px);left:0;right:0;z-index:20;overflow:hidden;border:1px solid #34445d;border-top:0;border-radius:0 0 13px 13px;background:#101824;box-shadow:0 22px 45px rgba(0,0,0,.34)}
.search-results[hidden]{display:none}
.search-result{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 16px;border-top:1px solid rgba(255,255,255,.055);transition:background .15s}
.search-result:hover,.search-result:focus-visible,.search-result.active{outline:0;background:#18243a}
.search-result-name{font-size:.82rem;font-weight:650;color:#edf2fa}
.search-result-meta{font-size:.65rem;color:#8b9ab0}
.search-result-arrow{color:#8baaff;font-size:.85rem}
.search-empty{padding:16px;color:#9aa8bb;font-size:.78rem}
.search-helper{display:flex;gap:16px;flex-wrap:wrap;margin:9px 2px 0;color:#75839a;font:500 .59rem var(--mono)}
.quick-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:18px;color:#7f8da2;font-size:.69rem}
.quick-filters button{border:1px solid #2a374a;border-radius:999px;background:rgba(16,24,37,.75);color:#b3c0d4;padding:5px 10px;font-size:.67rem;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.quick-filters button:hover{background:#192742;border-color:#526da4;color:#fff}
.hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:23px}
.hero-actions .btn-primary{padding:12px 17px}
.hero-trust{display:inline-flex;align-items:center;gap:7px;color:#8290a4;font-size:.7rem}
.hero-trust span{color:#48d5a0;font-weight:800}
.home-search .last-ai-update{margin-top:19px}
.home-search .ai-check-line{margin-top:8px}
.meta-separator{color:#4c5b70}
.home-hero .stats-bar{max-width:460px;margin-top:28px;grid-template-columns:repeat(2,minmax(0,1fr));border-color:#29364a;background:rgba(12,17,26,.75)}
.home-hero .stat{padding:12px 15px;border-color:#29364a}
.home-hero .stat-num{font-size:1.08rem}
.home-hero .stat-label{font-size:.62rem}
body[data-theme="light"] .home-hero .eyebrow{background:rgba(242,241,255,.9);border-color:#dedaff;color:#5a50bf}
body[data-theme="light"] .hero-copy>p{color:#606a83}
body[data-theme="light"] .home-search-box{background:#fff;border-color:#d9dced;box-shadow:0 18px 48px rgba(51,53,100,.09)}
body[data-theme="light"] .home-search-box>svg{color:#7775a3}
body[data-theme="light"] .home-search-box input::placeholder{color:#9298ad}
body[data-theme="light"] .search-results{background:#fff;border-color:#dedff0;box-shadow:0 22px 45px rgba(44,45,91,.14)}
body[data-theme="light"] .search-result{border-color:#eff0f7}
body[data-theme="light"] .search-result:hover,body[data-theme="light"] .search-result:focus-visible,body[data-theme="light"] .search-result.active{background:#f4f3ff}
body[data-theme="light"] .search-result-name{color:#242747}
body[data-theme="light"] .search-result-meta,body[data-theme="light"] .search-empty{color:#69728a}
body[data-theme="light"] .search-helper{color:#858ba1}
body[data-theme="light"] .quick-filters{color:#737b94}
body[data-theme="light"] .quick-filters button{background:#fff;border-color:#e0e2f0;color:#555e79}
body[data-theme="light"] .quick-filters button:hover{background:#f1efff;border-color:#c9c3ff;color:#4e43c6}
body[data-theme="light"] .hero-trust{color:#747d95}
body[data-theme="light"] .home-hero .stats-bar{background:rgba(255,255,255,.85);border-color:#e3e5f0}
body[data-theme="light"] .home-hero .stat{border-color:#e7e9f3}
@media(max-width:650px){
 .home-hero{padding-top:38px;padding-bottom:54px}
 .home-hero:before{left:15px;right:15px}
 .home-hero .eyebrow{font-size:.57rem;margin-bottom:20px}
 .home-hero h1{font-size:clamp(2.75rem,13vw,4rem);margin-bottom:17px}
 .hero-copy>p{font-size:.88rem;line-height:1.75;margin-bottom:23px}
 .home-search-box{min-height:58px;gap:8px}
 .home-search-box>svg{width:17px;margin-left:7px}
 .home-search-box input{font-size:.82rem}
 .search-shortcut{display:none}
 .search-submit{padding:10px 11px;font-size:.72rem}
 .search-helper{gap:9px;font-size:.53rem}
 .quick-filters{gap:6px;margin-top:14px}
 .quick-filters button{font-size:.62rem;padding:5px 8px}
 .hero-actions{gap:12px;margin-top:19px}
 .hero-trust{font-size:.64rem}
 .home-hero .stats-bar{max-width:none;margin-top:23px}
}
@media(prefers-reduced-motion:no-preference){
 .home-hero .eyebrow{animation:heroFadeUp .55s ease both}
 .home-hero h1{animation:heroFadeUp .65s .06s ease both}
 .home-hero>p{animation:heroFadeUp .65s .12s ease both}
 .home-search{animation:heroFadeUp .7s .18s ease both}
 .hero-actions,.home-hero .stats-bar{animation:heroFadeUp .7s .24s ease both}
 .reveal-on-scroll{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
 .reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}
}
@keyframes heroFadeUp{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
/* Decorative cursor halo: native pointer remains available for accessibility. */
.cursor-halo{position:fixed;left:0;top:0;width:30px;height:30px;border:1px solid rgba(126,153,255,.62);border-radius:50%;pointer-events:none;z-index:999;opacity:0;transform:translate(-50%,-50%) scale(.75);transition:opacity .2s,transform .18s ease,border-color .18s;mix-blend-mode:screen}
.cursor-halo:after{content:"";position:absolute;inset:8px;border-radius:50%;background:rgba(133,157,255,.24);box-shadow:0 0 18px rgba(117,139,255,.24)}
.cursor-halo.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.cursor-halo.is-hover{transform:translate(-50%,-50%) scale(1.55);border-color:rgba(160,139,255,.9)}
body[data-theme="light"] .cursor-halo{border-color:rgba(101,87,232,.42);mix-blend-mode:multiply}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.cursor-halo{display:none!important}}


/* Ensure License Comparator is always visible in the homepage navigation. */
.nav-links #nav-licenses{
  display:inline-flex!important;
  align-items:center;
  flex:0 0 auto;
  white-space:nowrap;
  color:#b9c8ff;
  font-size:.9rem;
  font-weight:650;
}
.nav-links #nav-licenses:hover,
.nav-links #nav-licenses.active{
  color:#fff;
  background:rgba(91,140,255,.14);
}
@media(max-width:1000px){
  nav{gap:14px}
  .nav-links{min-width:0;flex-wrap:nowrap}
  .nav-links a{font-size:.88rem;padding:8px 9px}
}
/* Keep all primary navigation destinations visible on compact screens. */
@media(max-width:650px){
  nav{height:auto;min-height:62px;flex-wrap:wrap;gap:6px 10px;padding:8px 14px}
  .nav-logo{flex:0 0 auto}
  .nav-links{order:3;flex:1 0 100%;width:100%;margin:0;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none;padding:2px 0 3px}
  .nav-links::-webkit-scrollbar{display:none}
  .nav-links a:not(.nav-cta){display:inline-flex;flex:0 0 auto;white-space:nowrap;font-size:.82rem;padding:7px 9px}
  .nav-links .nav-cta{display:inline-flex;flex:0 0 auto;white-space:nowrap}
  .nav-visits{display:none}
  .theme-toggle{margin-left:auto}
}


/* Generated software pages: light theme support */
.theme-toggle{border:1px solid #293446;background:#0e141f;color:#dce3ee;border-radius:9px;padding:7px 10px;font-size:.75rem;cursor:pointer;white-space:nowrap}
body[data-theme="light"]{--bg:#f5f7fb;--panel:#fff;--panel-2:#f0f3f8;--panel-3:#e8edf5;--line:#d9e0eb;--line-soft:#e6ebf2;--text:#172033;--muted:#586579;--muted-2:#6e7b8f;--blue:#315fc7;--green:#14835f;--purple:#7654bb;--red:#c43f58;--orange:#a96113;--cyan:#117b9a;color:var(--text);background:var(--bg)}
body[data-theme="light"]:before{background:linear-gradient(180deg,rgba(49,95,199,.05),transparent 35%),radial-gradient(circle at 85% 8%,rgba(107,89,203,.06),transparent 25rem)}
body[data-theme="light"] nav{background:rgba(255,255,255,.94);border-bottom-color:#dfe5ee}
body[data-theme="light"] .nav-links a{color:#586579}
body[data-theme="light"] .nav-links a:hover,body[data-theme="light"] .nav-links a.active{background:#eaf0fa;color:#172033}
body[data-theme="light"] .theme-toggle{background:#fff;border-color:#d4dce8;color:#29364b}
body[data-theme="light"] .software-hero{background:linear-gradient(135deg,#fff,#f0f4fa);border-color:#dce3ed}
body[data-theme="light"] .software-hero .eyebrow,body[data-theme="light"] .breadcrumbs a{color:#315fc7}
body[data-theme="light"] .software-hero h1,body[data-theme="light"] .detail-card h2,body[data-theme="light"] .faq-item summary,body[data-theme="light"] .related-link strong{color:#172033}
body[data-theme="light"] .software-hero .lead,body[data-theme="light"] .detail-card p,body[data-theme="light"] .related-link span,body[data-theme="light"] .breadcrumbs,body[data-theme="light"] .directory-count{color:#586579}
body[data-theme="light"] .detail-card,body[data-theme="light"] .related-link{background:#fff;border-color:#dce3ed}
body[data-theme="light"] .category-pill{background:#edf3ff;color:#315fc7;border-color:#d4e0f8}
body[data-theme="light"] .status-pill{background:#eaf8f1;color:#147351;border-color:#c6e8d7}
body[data-theme="light"] .source-links a{background:#f7f9fc;color:#315fc7;border-color:#d7dfeb}
body[data-theme="light"] .faq-item{border-color:#dce3ed}
body[data-theme="light"] footer{background:#edf1f7;border-color:#dce3ed;color:#56647a}
body[data-theme="light"] footer a{color:#315fc7}
@media(max-width:650px){.theme-toggle{padding:7px 8px;font-size:0}}
.software-main{width:min(1080px,100%);margin:0 auto;padding:34px 24px 76px}.breadcrumbs{position:static;height:auto;background:none;border:0;backdrop-filter:none;padding:0;margin:0 0 26px;display:flex;gap:9px;flex-wrap:wrap;color:var(--muted-2);font-size:.82rem}.breadcrumbs a{color:#8fb0ff}.software-hero{padding:35px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#111a2a,#0c121c);margin-bottom:20px}.software-hero .eyebrow{font:600 .72rem var(--mono);letter-spacing:.1em;color:#8fb0ff}.software-hero h1{font-size:clamp(2.3rem,6vw,4.2rem);letter-spacing:-.055em;line-height:1.08;margin:12px 0}.software-hero .lead{font-size:1.05rem;color:var(--muted);max-width:850px}.detail-badges{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.category-pill,.status-pill{display:inline-block;padding:7px 11px;border:1px solid #33435b;border-radius:999px;font-size:.8rem;background:#121d2e}.status-pill{color:#a8e8ce;border-color:#28513f}.source-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.source-links a{padding:10px 13px;border:1px solid #354765;border-radius:9px;color:#a9c4ff;font-weight:600;font-size:.86rem}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.detail-card{border:1px solid var(--line);border-radius:14px;padding:24px;background:var(--panel);margin-bottom:14px;min-width:0}.detail-card h2{font-size:1.18rem;margin-bottom:9px;letter-spacing:-.02em}.detail-card p{color:var(--muted);font-size:.94rem;line-height:1.8;margin:7px 0}.detail-grid .detail-card{margin:0}.faq-item{border-top:1px solid var(--line);padding:12px 0}.faq-item summary{cursor:pointer;font-weight:650}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.related-link{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2)}.related-link:hover{border-color:#5475b4}.related-link span{font-size:.78rem;color:var(--muted)}.directory-count{color:var(--muted-2);font-size:.8rem;margin-top:18px}@media(max-width:700px){.software-main{padding:24px 15px 55px}.software-hero{padding:23px}.detail-grid{grid-template-columns:1fr}.related-grid{grid-template-columns:1fr}.detail-card{padding:19px}}
