:root{color-scheme:light;--lab-bg:#f7f5ef;--lab-panel:#fff;--lab-text:#22251f;--lab-muted:#676a60;--lab-border:#dedfd5;--lab-accent:#d74b35;--lab-shadow:0 12px 32px #28311a0c}
html{scroll-behavior:smooth;scroll-padding-top:24px}.lab-home{background:#f7f5ef;color:var(--lab-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif}.home-hero{max-width:1320px;margin:auto;padding:24px 40px 58px;min-height:0;grid-template-columns:1.1fr 1fr;gap:48px 70px;align-items:center}.home-nav{grid-column:1/-1;border-bottom:1px solid var(--lab-border);padding-bottom:22px}.home-nav .brand{font-size:21px;letter-spacing:-.7px}.home-nav .brand:before{content:'✳';display:inline-block;color:#d74b35;font-size:30px;vertical-align:middle;margin-right:10px}.home-nav a{color:#555c50}.language-toggle{background:#eeeee6;border:0;border-radius:30px}.lang-btn{border-radius:24px;min-height:36px}.lang-btn.active,.lang-btn:hover{background:#fff;color:#22251f}.hero-copy{max-width:none;margin:0}.eyebrow{color:#69745c;font-size:11px;letter-spacing:1.7px;font-weight:750}.hero-copy h1{font-size:clamp(40px,4.5vw,66px);line-height:1.13;letter-spacing:-2.5px;max-width:650px;margin:22px 0;white-space:pre-line}.hero-summary{font-size:16px;line-height:1.9;max-width:490px;color:#676a60}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px;margin-top:25px}.primary-action{background:#2d3829;color:white;border-radius:30px;padding:14px 24px;box-shadow:none;font-size:14px}.primary-action:hover{background:#43523d}.hero-actions>span{font-size:12px;color:#73776d}.hero-art{position:relative;transform:rotate(2deg);background:#ece8dc;padding:12px;border-radius:24px;box-shadow:0 16px 40px #2b342415}.hero-art img{display:block;width:100%;height:300px;object-fit:cover;border-radius:16px}.art-note{position:absolute;bottom:28px;left:30px;font-size:11px;font-weight:800;letter-spacing:1.5px;line-height:1.5;color:#34362f}.art-number{position:absolute;right:-18px;top:-22px;font-size:76px;color:#d74b35;line-height:1}.tools-wrap{max-width:1320px;margin:0 auto;padding:38px 40px 64px;border-top:1px solid var(--lab-border)}.section-head{display:block;margin-bottom:24px}.section-head h2{font-size:30px;letter-spacing:-.8px;margin:8px 0 24px}.filters{gap:8px;justify-content:flex-start;flex-wrap:wrap}.filter-btn{border:1px solid #dfe1d6;border-radius:24px;background:transparent;color:#62675c;padding:9px 16px;min-height:40px;font-size:13px}.filter-btn.active,.filter-btn:hover{background:#2d3829;border-color:#2d3829;color:white}.tool-search{margin:20px 0 30px;gap:12px}.tool-search-field{background:#fff;border:1px solid #dedfd5;border-radius:14px;max-width:none;min-height:54px}.tool-search-field:focus-within{border-color:#748768;box-shadow:0 0 0 3px #74876820}.tool-search input{color:#22251f;font-size:14px}.tool-search-icon{color:#727c69}.tool-search-clear{color:#38442f;background:#e8ecdf;border-radius:10px}.tool-search-status{color:#676a60}.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.tool-card{position:relative;background:#fff;border:1px solid #e4e5dd;border-radius:20px;overflow:hidden;box-shadow:none;transition:transform .2s,box-shadow .2s}.tool-card:hover{transform:translateY(-4px);border-color:#c9d0bf;box-shadow:0 12px 26px #2b34240e}.tool-card>a{padding:0 22px 23px;display:flex;flex-direction:column;height:100%;min-height:0;box-sizing:border-box;gap:0}.card-cover{margin:0 -22px 20px;background:#eeece3;overflow:hidden;aspect-ratio:1.8}.card-cover img{display:block;width:100%;height:100%;object-fit:cover}.tool-top{margin:0 0 12px;justify-content:flex-start;gap:8px}.tool-icon{display:none}.tool-category{background:#f0f2e9;color:#5e6d50;border:0;font-size:10px;letter-spacing:.7px;padding:5px 9px;border-radius:6px}.tool-card h2{font-size:18px;line-height:1.5;color:#282d24;margin:0 0 9px;letter-spacing:-.3px}.tool-card p{font-size:13px;line-height:1.75;color:#777b70;margin:0 0 22px;flex:1}.open-link{color:#475b37;font-size:12px;margin-top:auto}.card-arrow{position:absolute;right:22px;bottom:20px;font-size:22px;color:#687c58}.home-footer{border-top:1px solid #dedfd5;color:#777b70;background:transparent;max-width:1240px;margin:auto}.home-footer a{color:#435a35}.tool-search-empty{background:#fff;border-color:#dedfd5;color:#303b27}a:focus-visible,button:focus-visible{outline:3px solid #a75035;outline-offset:4px}[hidden]{display:none!important}@media(max-width:900px){.home-hero{gap:35px;padding:22px 24px 40px}.hero-copy h1{font-size:42px}.hero-art img{height:260px}.tools-wrap{padding:30px 24px 45px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.home-hero{display:flex;flex-direction:column;align-items:stretch;padding:18px 20px 32px;gap:30px}.home-nav{gap:8px;padding-bottom:18px}.home-nav .brand{font-size:17px}.nav-links{display:none}.lang-btn{font-size:11px;padding:0 8px;min-height:32px}.hero-copy h1{font-size:42px;letter-spacing:-1.8px;margin:16px 0}.hero-summary{font-size:14px;line-height:1.8}.hero-art{margin:0 8px}.hero-art img{height:200px}.art-number{font-size:58px}.tools-wrap{padding:28px 20px 40px}.section-head h2{font-size:26px}.filters{gap:7px}.filter-btn{font-size:12px;padding:8px 13px}.tool-grid{grid-template-columns:1fr;gap:20px}.card-cover{aspect-ratio:1.9}.tool-search{flex-wrap:wrap}.tool-search-field{width:100%;flex-basis:100%}.home-footer{padding:24px 20px}.tool-card h2{font-size:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tool-card{transition:none}}
.art-note{background:#f7f5efe8;padding:8px 12px;border-radius:8px;bottom:24px;left:24px}.hero-actions .primary-action{min-height:0}.tool-search input{min-height:0}
/* Keep interaction states readable on the light homepage. */
.lab-home ::selection{background:#cde2bd;color:#172412}
.lab-home .filter-btn{color:#424b3c;background:#fff;border-color:#d5dacd}
.lab-home .filter-btn:hover{color:#25351e;background:#edf2e6;border-color:#a2b493}
.lab-home .filter-btn.active{color:#203119;background:#dce9cf;border-color:#7d9869;box-shadow:inset 0 0 0 1px #7d9869}
.lab-home .filter-btn .lang-text{color:inherit}
.lab-home .lang-btn{color:#47503f}
.lab-home .lang-btn:hover{background:#e5ecd9;color:#25351e}
.lab-home .lang-btn.active{background:#dce9cf;color:#203119;box-shadow:inset 0 0 0 1px #7d9869}
.lab-home .tool-card p{color:#62685b}
.lab-home .primary-action,.lab-home .primary-action:hover{color:#fff}
/* Compact tool directory. Explicit backgrounds override legacy dark hover styles. */
.lab-home{background:#f8fafb;color:#17212c}
.lab-home .home-hero{display:block;max-width:1320px;padding:24px 32px 28px}
.lab-home .home-nav{margin-bottom:30px;padding-bottom:18px}
.lab-home .hero-copy{max-width:760px}
.lab-home .hero-copy h1{font-size:34px;line-height:1.35;letter-spacing:-1px;margin:12px 0}
.lab-home .hero-summary{max-width:760px;font-size:14px;line-height:1.8;margin:0;color:#526171}
.lab-home .hero-art,.lab-home .hero-actions,.lab-home .card-cover{display:none}
.lab-home .tools-wrap{border-top:0;padding:0 32px 48px}
.lab-home .section-head>.eyebrow,.lab-home .section-head>div:first-child{display:none}
.lab-home .section-head{margin:0 0 16px}
.lab-home .filters{gap:8px}
.lab-home .filter-btn{background:#fff;color:#435365;border:1px solid #dbe2e8;border-radius:8px;padding:8px 14px;min-height:36px}
.lab-home .filter-btn:hover{background:#edf3f8;color:#213b55;border-color:#b5c8d9}
.lab-home .filter-btn.active{background:#e4eef8;color:#154777;border-color:#9cbada;box-shadow:none}
.lab-home .lang-btn.active{background:#e4eef8;color:#154777;box-shadow:none}
.lab-home .tool-search{margin:0 0 24px}
.lab-home .tool-search-field{border-radius:10px;border-color:#dbe2e8;min-height:48px}
.lab-home .tool-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.lab-home .tool-card,.lab-home .tool-card:hover,.lab-home .tool-card:focus-within,.lab-home .tool-card:active{background:#fff;color:#17212c;border:1px solid #dfe6ec;box-shadow:none;border-radius:12px;transform:none;min-height:0}
.lab-home .tool-card:hover,.lab-home .tool-card:focus-within{background:#f0f6fc;border-color:#8aafcf}
.lab-home .tool-card>a{padding:18px;min-height:175px;background:transparent;color:inherit}
.lab-home .tool-top{margin-bottom:10px}
.lab-home .tool-category{background:#edf2f6;color:#516476;border-radius:5px;padding:4px 7px;font-size:10px}
.lab-home .tool-card h2{color:#182838;font-size:16px;line-height:1.5;margin:0 0 8px}
.lab-home .tool-card p{color:#536375;font-size:12px;line-height:1.7;margin-bottom:18px}
.lab-home .open-link,.lab-home .card-arrow{color:#235c8c}
.lab-home .card-arrow{right:18px;bottom:15px;font-size:19px}
.lab-home .eyebrow{color:#526b80}
.lab-home ::selection{background:#cde1f5;color:#102f4a}
.lab-home .home-footer{border-color:#dfe6ec;color:#536375}
@media(max-width:1000px){.lab-home .tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.lab-home .tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-home .home-hero{padding:20px}.lab-home .tools-wrap{padding:0 20px 32px}.lab-home .hero-copy h1{font-size:28px}.lab-home .home-nav{margin-bottom:22px}}
@media(max-width:480px){.lab-home .tool-grid{grid-template-columns:1fr}.lab-home .tool-card>a{min-height:145px}.lab-home .hero-copy h1{font-size:26px}.lab-home .hero-summary{font-size:13px}.lab-home .filters{gap:6px}.lab-home .filter-btn{font-size:12px;padding:7px 10px}}
/* Editorial navigation inspired by the user's reference. */
.lab-home{background:#f3f0e8;color:#191919}
.lab-home .home-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:0 40px;padding:26px 32px 30px}
.lab-home .home-nav{grid-column:1/-1;background:#ed5a50;border:2px solid #191919;border-radius:5px;box-shadow:5px 5px 0 #191919;padding:16px 20px;margin-bottom:38px}
.lab-home .home-nav .brand{font-size:25px;color:#fff;letter-spacing:-.5px}
.lab-home .home-nav .brand:before{color:#191919;background:#ffe372;border:2px solid #191919;border-radius:4px;font-size:24px;width:32px;text-align:center;margin-right:12px}
.lab-home .home-nav a{color:#fff}.lab-home .language-toggle{background:#fff4;border-radius:5px;padding:3px}
.lab-home .lang-btn{border-radius:3px;color:#fff}.lab-home .lang-btn.active{background:#ffe372;color:#191919;box-shadow:none}.lab-home .lang-btn:hover{background:#fff;color:#191919}
.lab-home .hero-copy .eyebrow{display:none}.lab-home .hero-copy h1{font-size:34px;font-weight:850;margin:0 0 10px;color:#191919}
.lab-home .hero-summary{color:#494944;font-size:14px}
.lab-home .tool-search{margin:0;align-self:center;flex-wrap:wrap;gap:8px}.lab-home .tool-search-field{border:2px solid #191919;border-radius:5px;background:white;box-shadow:4px 4px 0 #191919;min-height:58px}.lab-home .tool-search input{color:#191919}.lab-home .tool-search-field:focus-within{border-color:#6234d8;box-shadow:4px 4px 0 #6234d8}.lab-home .tool-search-status{flex-basis:100%;color:#494944}.lab-home .tool-search-clear{background:#6234d8;color:#fff;border:2px solid #191919;border-radius:4px}
.lab-home .tools-wrap{display:grid;grid-template-columns:210px minmax(0,1fr);gap:30px;padding:28px 32px 60px;border-top:1px solid #a7a39a}
.directory-sidebar{background:#fff;border:2px solid #191919;border-radius:5px;box-shadow:5px 5px 0 #191919;align-self:start;position:sticky;top:22px;overflow:hidden}
.directory-sidebar h2{font-size:19px;margin:0;padding:18px 16px;background:#ffe372;border-bottom:2px solid #191919;color:#191919}
.lab-home .directory-sidebar .filters{display:flex;flex-direction:column;gap:5px;padding:12px;align-items:stretch}
.lab-home .filter-btn{border:2px solid transparent;border-radius:3px;text-align:left;background:#fff;color:#191919;font-size:13px;font-weight:750;min-height:43px;padding:10px}
.lab-home .filter-btn:hover{background:#f0e9ff;border-color:#c7b1f0;color:#191919}
.lab-home .filter-btn.active{background:#6234d8;border-color:#191919;color:#fff;box-shadow:3px 3px 0 #191919}
.lab-home .section-head>div:first-child{display:block}.lab-home .section-head .eyebrow{display:none}.lab-home .section-head h2{font-size:23px;margin:0 0 20px;color:#191919}
.lab-home .tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lab-home .tool-card,.lab-home .tool-card:hover,.lab-home .tool-card:focus-within,.lab-home .tool-card:active{border:2px solid #191919;border-radius:5px;background:#fff;color:#191919;box-shadow:3px 3px 0 #191919;transform:none}
.lab-home .tool-card:hover,.lab-home .tool-card:focus-within{background:#fff9dd;box-shadow:5px 5px 0 #191919}
.lab-home .tool-card:nth-child(1){background:#ffe372}.lab-home .tool-card:nth-child(2){background:#e4d8fb}.lab-home .tool-card:nth-child(3){background:#f9dcd6}
.lab-home .tool-card>a{padding:17px;min-height:195px}.lab-home .tool-card h2{color:#191919;font-weight:800;font-size:16px}.lab-home .tool-card p{color:#474741;font-size:12px;line-height:1.8}
.lab-home .tool-category{background:#1919190a;color:#383833;border-radius:3px}.lab-home .open-link{color:#43219c;border-top:1px solid #19191930;padding-top:12px;width:100%;font-weight:750}.lab-home .card-arrow{color:#191919;bottom:18px}
.lab-home .home-footer{border-color:#a7a39a;color:#494944}.lab-home ::selection{background:#ffe372;color:#191919}.lab-home a:focus-visible,.lab-home button:focus-visible{outline:3px solid #6234d8;outline-offset:4px}
@media(max-width:1050px){.lab-home .tools-wrap{grid-template-columns:185px minmax(0,1fr);gap:22px}.lab-home .tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.lab-home .home-hero{display:block;padding:18px 20px 26px}.lab-home .home-nav{margin-bottom:28px;padding:12px}.lab-home .home-nav .brand{font-size:18px}.lab-home .home-nav .brand:before{width:25px;font-size:20px;margin-right:7px}.lab-home .hero-copy h1{font-size:27px}.lab-home .tool-search{margin-top:22px}.lab-home .tools-wrap{display:block;padding:22px 20px 40px}.directory-sidebar{position:static;margin-bottom:26px;box-shadow:3px 3px 0 #191919}.directory-sidebar h2{font-size:16px;padding:10px 12px}.lab-home .directory-sidebar .filters{flex-direction:row;flex-wrap:wrap;gap:6px;padding:10px}.lab-home .filter-btn{min-height:36px;padding:7px 10px;font-size:12px}.lab-home .tool-grid{gap:14px}.lab-home .tool-card>a{min-height:180px;padding:15px}}
@media(max-width:480px){.lab-home .tool-grid{grid-template-columns:1fr}.lab-home .tool-card>a{min-height:160px}.lab-home .home-nav{gap:5px}.lab-home .lang-btn{font-size:10px;padding:0 6px}}
.lab-home .home-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:24px 32px}.lab-home .home-footer p{margin:0}.lab-home .footer-links{display:flex;gap:22px;align-items:center}.lab-home .footer-links a{color:#39352f;font-size:13px;font-weight:700;text-decoration:none}.lab-home .footer-links a:hover{color:#6234d8;text-decoration:underline}@media(max-width:600px){.lab-home .home-footer{padding:24px 20px;align-items:flex-start;flex-direction:column}}
