:root {
  --bg:#faf9f5; --surface:#fffdf9; --ink:#354640; --muted:#64766d;
  --line:#e1e8e0; --accent:#b47e71; --focus:#476f62;
  --shadow:0 12px 28px rgba(84,111,94,.055);
  color-scheme:light;
}
:root[data-theme='dark'] {
  --bg:#222c2a; --surface:#2e3b36; --ink:#f1f0e9; --muted:#b9c7be;
  --line:#506059; --accent:#dfaa97; --focus:#c8ded2;
  --shadow:0 12px 28px rgba(0,0,0,.13);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.shell{max-width:1120px;margin:0 auto;padding:0 36px}
.skip{position:absolute;top:-80px;left:16px;background:var(--surface);padding:12px;z-index:10}
.skip:focus{top:10px}
.topbar{height:102px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{font:600 31px/1 Georgia,"Times New Roman",serif;letter-spacing:-1.4px}
.brand span,.heading h1 span{color:var(--accent)}
.theme-switch{display:grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:50%;width:42px;height:42px;cursor:pointer;font-size:21px}
main{padding:55px 0 88px}
.heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 0 32px}
.eyebrow{font-size:10px;font-weight:800;letter-spacing:2.2px;color:var(--muted)}
.heading h1{font-size:clamp(31px,4vw,43px);letter-spacing:-1.5px;line-height:1.24;margin:13px 0 8px;font-weight:750}
.heading p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}
.search-wrap{width:224px;height:43px;display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:0 12px;background:var(--surface);color:var(--muted)}
.search-wrap svg{width:17px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7}
.search-wrap input{background:transparent;border:0;color:var(--ink);outline:0;min-width:0;width:100%;font-size:12px}
.search-wrap kbd{font:11px monospace;padding:2px 5px;border:1px solid var(--line);border-radius:5px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tool-card{display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-height:177px;min-width:0;padding:21px 22px;border-radius:17px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .18s,border-color .18s,box-shadow .18s}
.tool-card:hover{transform:translateY(-3px);border-color:#9dbbab;box-shadow:0 16px 32px rgba(84,111,94,.11)}
.card-head{display:flex;align-items:flex-start;justify-content:space-between}
.icon-tile{width:45px;height:45px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}
.icon-tile svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.icon-symbol{font:700 22px Georgia,"Noto Serif SC",serif}
.card-arrow{font-size:21px;color:var(--muted);line-height:1}
.card-copy h2{font-size:18px;line-height:1.35;letter-spacing:-.25px;margin:0 0 7px;font-weight:750}
.card-copy p{font-size:12px;color:var(--muted);line-height:1.55;margin:0}
.tint-lidl{background:#f4f8fc}.tint-lidl .icon-tile{background:#0050aa;color:#fff000}
.tint-lilac{background:#f7f3f9}.tint-lilac .icon-tile{background:#eae5f1;color:#67567e}
.tint-peach{background:#fcf5ef}.tint-peach .icon-tile{background:#f1dcd3;color:#895a4a}
.tint-blue{background:#f2f7f9}.tint-blue .icon-tile{background:#e3edf3;color:#456a81}
.tint-sand{background:#fbf8f0}.tint-sand .icon-tile{background:#f3e9d3;color:#82693c}
.tint-terracotta{background:#fbf6f4}.tint-terracotta .icon-tile{background:#f3e5e0;color:#955d50}
:root[data-theme='dark'] .tool-card{background:var(--surface)}
:root[data-theme='dark'] .tint-lidl .icon-tile{background:#0050aa;color:#fff000}
:root[data-theme='dark'] .tint-lilac .icon-tile{background:#51465a;color:#eae5f1}
:root[data-theme='dark'] .tint-peach .icon-tile{background:#58443c;color:#f3d8cb}
:root[data-theme='dark'] .tint-blue .icon-tile{background:#3a4e5b;color:#d6e8f3}
:root[data-theme='dark'] .tint-sand .icon-tile{background:#5e513f;color:#f3e9d3}
:root[data-theme='dark'] .tint-terracotta .icon-tile{background:#5b4541;color:#f2e0db}
.empty{margin:22px 0;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:12px;text-align:center;color:var(--muted);font-size:13px}
footer{display:flex;justify-content:space-between;align-items:center;padding:23px 0 35px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
footer span:first-child{font:600 20px Georgia,serif;color:var(--ink)}
.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}
[hidden]{display:none!important}
@media(max-width:850px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:610px){
  .shell{padding:0 19px}
  .topbar{height:76px}
  .brand{font-size:28px}
  .theme-switch{height:40px;width:40px}
  main{padding:35px 0 56px}
  .heading{display:block;margin-bottom:24px}
  .heading h1{font-size:34px}
  .search-wrap{margin-top:25px;width:100%}
  .cards{grid-template-columns:1fr;gap:12px}
  .tool-card{min-height:151px;padding:18px 19px;gap:17px}
  .icon-tile{width:42px;height:42px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
