.directory-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.directory-switch>a{display:flex;align-items:center;gap:14px;padding:20px 22px;border:1px solid #dbe7f4;border-radius:16px;background:#fff;color:#17365d;text-decoration:none;font-weight:750;transition:border-color .16s ease,background .16s ease}
.directory-switch>a>i{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:12px;background:#eaf3fc;color:#246db3;font-size:1.3rem}
.directory-switch small{display:block;margin-top:3px;color:#64748b;font-size:.84rem;font-weight:500}
.directory-switch>a:hover,.directory-switch>a[aria-current="page"]{border-color:#246db3;background:#f2f7fd}
.directory-switch a:focus-visible,.software-actions a:focus-visible{outline:3px solid #246db3;outline-offset:4px}
.software-browser{margin-top:36px}
.software-intro{max-width:790px;color:#475569;line-height:1.75;margin:0 0 24px}
.software-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) minmax(0,1fr) auto;gap:12px;align-items:end;padding:20px;border:1px solid #dbe7f4;border-radius:16px;background:#f8fbff;margin-bottom:24px}
.software-filters label{display:block;margin-bottom:7px;color:#334155;font-size:.88rem;font-weight:650}
.software-filters input,.software-filters select{box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#1e293b;font:inherit;font-size:.9rem}
.software-filters input:focus,.software-filters select:focus{outline:3px solid #246db333;border-color:#246db3}
.software-filters button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;white-space:nowrap}
.software-filter-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;color:#475569;font-size:.9rem;overflow-wrap:anywhere}
.software-filter-summary>a{color:#246db3;font-weight:650}
.software-card{min-width:0;min-height:0;padding:22px;overflow-wrap:anywhere}
.software-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.software-icon{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;background:#eaf3fc;border-radius:11px;color:#246db3;font-size:1.15rem}
.software-card h3{font-size:1.2rem;margin-top:16px}
.software-platforms{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0 0 12px}
.software-platforms li{padding:4px 8px;border-radius:6px;background:#f1f5f9;color:#475569;font-size:.74rem;font-weight:600}
.software-license{display:flex;align-items:baseline;gap:6px;color:#24704b;font-size:.78rem;line-height:1.5;margin-bottom:12px}
.software-card .software-note{margin:0 0 18px;padding-left:10px;border-left:2px solid #dbe7f4;color:#64748b;font-size:.79rem;line-height:1.6}
.software-actions{display:flex;flex-direction:column;align-items:start;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid #edf2f7}
.software-actions>a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;line-height:1.5}
.software-download{font-size:.9rem;color:#246db3;font-weight:750}
.software-source{font-size:.77rem;color:#64748b}
.software-actions>a:hover{text-decoration:underline}
.software-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:30px 0 12px}
.software-pagination a,.software-pagination>span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;box-sizing:border-box;border:1px solid #dbe7f4;border-radius:10px;color:#17365d;text-decoration:none;background:#fff;font-weight:650}
.software-pagination a:hover,.software-pagination a[aria-current="page"]{background:#eaf3fc;border-color:#246db3;color:#17365d}
.software-pagination a:focus-visible{outline:3px solid #246db3;outline-offset:3px}
.software-pagination>span{border-color:transparent;background:transparent;min-width:20px;padding:8px 2px}
.software-page-position{text-align:center;color:#64748b;font-size:.84rem;margin:0 0 12px}
#software-title{scroll-margin-top:100px}
@media(max-width:900px){.software-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.software-query{grid-column:1/-1}.software-filters button{grid-column:1/-1}}
@media(max-width:600px){.directory-switch{gap:9px}.directory-switch>a{padding:14px 12px;gap:9px;font-size:.88rem}.directory-switch>a>i{width:30px;height:30px;flex-basis:30px;font-size:1rem}.directory-switch small{font-size:.75rem}.software-browser{margin-top:28px}.software-filters{padding:15px;gap:12px;grid-template-columns:1fr}.software-card{padding:19px}}
@media(prefers-reduced-motion:reduce){.directory-switch>a{transition:none}}
