@font-face{font-family:Barlow Condensed;src:url('assets/barlow-condensed-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--ink:#183f36;--dark:#113329;--paper:#f6f7ee;--sage:#c6d4bb;--hole:#9ba98f;--yellow:#f4d964;--muted:#4b6255;--line:#b3c2a9;font-family:Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scrollbar-color:#6b816e var(--paper)}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #aa5709;outline-offset:4px}::selection{background:var(--yellow);color:var(--dark)}input{caret-color:var(--ink)}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:20px;z-index:10;background:var(--yellow);padding:12px}.skip:focus{top:12px}
.masthead{height:88px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper)}.wordmark{display:flex;align-items:center;gap:12px;font-family:Barlow Condensed,sans-serif;font-size:30px;text-decoration:none}.wordmark svg{width:32px;height:32px;fill:none;stroke:var(--yellow);stroke-width:2}.masthead>a:last-child{font-size:14px;text-decoration:none}.masthead>a:last-child:hover{text-decoration:underline}
.workbench{padding:42px 5% 30px}.intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}h1{font-family:Barlow Condensed,sans-serif;font-size:clamp(46px,4.7vw,68px);font-weight:600;line-height:1;letter-spacing:-.025em;margin:0;text-wrap:balance}h1 em{font-style:normal;color:#547550}.intro p{font-size:16px;line-height:1.6;margin:0;max-width:48ch}form label{display:block;font-weight:650;font-size:15px;margin-bottom:10px}.input-row{display:flex;background:white;border:1px solid #7d917a;border-radius:8px;padding:6px;gap:10px}.input-row:focus-within{outline:2px solid #547550;outline-offset:2px}input{min-width:0;flex:1;background:transparent;border:0;padding:13px 15px;font-size:18px;color:var(--ink)}input::placeholder{color:#5d6d5f}input:focus-visible{outline:none}.find{border:0;border-radius:5px;background:var(--yellow);color:var(--dark);padding:13px 24px;font-weight:700;display:flex;align-items:center;gap:24px}.find:hover{background:#e5c846}.find svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.7}.under-input{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:37px}.under-input p{font-size:12px;color:var(--muted);margin:9px 0}.clear{background:none;border:none;padding:7px 0;text-decoration:underline;text-underline-offset:3px;color:var(--ink);white-space:nowrap;font-size:13px}.examples{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}.examples>span{margin-right:5px;color:var(--muted)}.examples button{border:1px solid var(--line);border-radius:5px;padding:7px 12px;color:var(--ink);background:transparent}.examples button:hover{background:#e1e9d8}
.collection{padding:0 3%}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 2% 16px}.toolbar h2{font-family:Barlow Condensed,sans-serif;font-size:28px;font-weight:600;margin:0}.filters{display:flex;gap:4px;flex-wrap:wrap}.filters button{min-height:42px;padding:8px 15px;border:0;border-radius:5px;color:var(--muted);background:transparent;font-size:14px;font-weight:600}.filters button:hover{background:#e1e9d8}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.filters span{display:inline-block;margin-left:6px;font-size:12px;color:var(--yellow)}
.board{position:relative;background-color:var(--sage);background-image:radial-gradient(circle,var(--hole) 1.5px,transparent 1.8px);background-size:22px 22px;padding:22px 30px 18px;border:8px solid #afbea3;border-radius:8px;box-shadow:inset 0 2px 6px #62745325,0 6px 12px #183f3610}.board-meta,.board-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px}.board-meta{margin-bottom:26px}.board-meta p{font-weight:650;margin:0;background:var(--sage);padding:4px 7px}.board-meta>span{background:var(--sage);padding:4px 7px}.tools{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:38px 23px;align-items:stretch}.tool{position:relative;display:flex;flex-direction:column;min-width:0;min-height:292px;padding:22px 18px 17px;background:var(--paper);border-radius:12px;box-shadow:2px 7px 10px #21372228;transform-origin:50% -11px;transition:box-shadow .3s ease,transform .3s ease}.tool:before{content:'';position:absolute;top:-19px;left:calc(50% - 5px);height:29px;width:10px;border:3px solid #748272;border-top-color:#e1e6db;border-radius:7px;box-shadow:2px 2px 3px #183f3630;z-index:1}.tool:after{content:'';position:absolute;width:9px;height:9px;background:#819078;top:7px;left:calc(50% - 4.5px);border-radius:50%}.tool:hover{transform:translateY(-3px);box-shadow:3px 11px 15px #21372235}.tool.recommended{background:#fff4bb;box-shadow:3px 12px 17px #21372240;animation:swing .8s cubic-bezier(.16,1,.3,1)}.tool-top{display:flex;align-items:center;justify-content:space-between;margin:6px 0 17px}.tool-icon{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.tool-group{font-size:12px;font-weight:700;color:var(--muted)}.tool h3{font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:27px;line-height:1.05;margin:0 0 7px}.category{font-size:12px;font-weight:650;color:var(--muted);margin:0 0 12px}.description{font-size:14px;line-height:1.55;margin:0 0 18px}.tool-bottom{margin-top:auto}.tool-link{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:12px;font-weight:700;text-decoration:none;padding-top:12px;border-top:1px solid #c9d2bf;min-height:36px}.tool-link:hover{text-decoration:underline}.tool-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}.reason{font-size:12px;font-weight:650;margin:0 0 12px;color:#4f481a}.status{font-size:12px;font-weight:700;color:#6b4514;margin:0 0 10px}.tool details{font-size:12px;line-height:1.5;margin:0 0 12px}.tool summary{cursor:pointer;color:var(--muted)}.tool details p{margin:7px 0 0}.board-foot{margin-top:30px;color:#40543d}.board-foot span{background:var(--sage);padding:4px 7px}#empty{background:var(--paper);padding:20px 24px;margin:0 0 36px;border-radius:8px}#empty h3{margin:0 0 6px;font-size:18px}#empty p{margin:0;font-size:14px;line-height:1.5}.availability{font-size:12px;line-height:1.7;margin:18px 2% 36px;max-width:110ch;color:var(--muted)}footer{background:var(--ink);color:#e0e9d9;padding:38px 5% 45px;display:grid;grid-template-columns:1.15fr 1fr;gap:9%}footer h2{font-family:Barlow Condensed,sans-serif;font-weight:600;font-size:30px;margin:0 0 15px}footer p{font-size:13px;line-height:1.8;max-width:70ch;margin:0 0 14px}footer a:hover{color:var(--yellow)}footer .repo{display:inline-block;margin-top:8px;font-weight:650;font-size:14px}
@keyframes swing{0%{transform:rotate(-4deg) translateY(-4px)}35%{transform:rotate(3deg) translateY(-4px)}65%{transform:rotate(-1deg) translateY(-4px)}100%{transform:rotate(0) translateY(0)}}
@media(min-width:1600px){main{max-width:1600px;margin:auto}}
@media(max-width:1150px){.tools{grid-template-columns:repeat(3,minmax(0,1fr))}.intro p{font-size:14px}.toolbar{align-items:flex-start}.tool{min-height:285px}}
@media(max-width:760px){.masthead{height:70px;padding:0 22px}.wordmark{font-size:26px;gap:8px}.wordmark svg{width:25px}.masthead>a:last-child{font-size:12px}.workbench{padding:30px 22px 17px}.intro{display:block;margin-bottom:23px}.intro p{margin-top:16px;font-size:14px}.input-row{flex-direction:column;padding:6px;gap:0}input{width:100%;font-size:16px;padding:14px 10px}.find{justify-content:center;padding:12px}.under-input{align-items:baseline}.under-input p{font-size:12px;max-width:32ch}.examples{font-size:12px;gap:7px}.examples>span{flex-basis:100%}.examples button{padding:8px 9px}.toolbar{display:block;padding:18px 10px 12px}.toolbar h2{font-size:28px;margin-bottom:12px}.filters{gap:3px}.filters button{padding:8px 11px;font-size:12px;min-height:40px}.board{padding:18px 23px;border-width:6px}.board-meta{margin-bottom:28px}.board-meta>span{display:none}.tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 20px}.tool{min-height:285px;padding:22px 17px 17px}.board-foot{align-items:flex-start;line-height:1.5}.board-foot span:last-child{text-align:right}.availability{margin:17px 10px 28px}footer{display:block;padding:32px 24px}footer>div+div{margin-top:30px}}
@media(max-width:480px){.tools{grid-template-columns:minmax(0,1fr)}.tool{min-height:245px;padding:23px 24px 20px}.tool-top{margin-bottom:13px}.tool h3{font-size:31px}.description{font-size:14px;max-width:32ch}.category{font-size:12px}.tool-group{font-size:12px}.tool-link{font-size:13px;padding-top:14px}.board-foot{display:block}.board-foot span{display:block;text-align:left!important;width:fit-content}.masthead>a:last-child{max-width:95px;line-height:1.4}.board-meta p{font-size:12px}.intro h1{font-size:49px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.tool:hover{transform:none}}

/* AI-generated workshop materials; all interface lettering stays in HTML. */
:root{--sage:#c9c9a6}
.board{isolation:isolate;border:0;border-radius:4px;padding:48px 46px 32px;background:#a5ad87 url('assets/pegboard-grain.webp') repeat;background-size:1008px 602px;box-shadow:0 12px 25px #34281526,inset 0 3px 12px #00000030}
.board:before{content:'';position:absolute;inset:0;pointer-events:none;border:17px solid #ad773d;border-image:url('assets/oak-frame.webp') 8 stretch;z-index:-1}
.board-photo{position:absolute;inset:0 0 auto;z-index:-2;pointer-events:none;overflow:hidden;border-radius:4px}
.board-photo img{display:block;width:100%;height:auto;mask-image:linear-gradient(#000 0%,#000 82%,transparent 100%)}
.board:after{content:'';position:absolute;inset:18px;pointer-events:none;z-index:-1;background:linear-gradient(115deg,#fff1c729 0%,transparent 46%,#3324080a 100%);opacity:.2;animation:daylight 4.5s ease-in-out 1}
.board-meta{margin-bottom:38px}.board-meta p,.board-meta>span,.board-foot span{background:#f5efdcef;color:#263f32;padding:6px 10px;box-shadow:1px 2px 3px #30261418}
.tools{gap:48px 25px}
.tool{background:#f8f5e9 url('assets/paper.webp') center/640px 427px;border-radius:3px 3px 7px 7px;box-shadow:1px 1px 0 #e4dcc7,5px 10px 12px #2927123d,inset 0 0 18px #ffffff42;transform:rotate(-.35deg)}
.tool:nth-child(3n){transform:rotate(.45deg)}.tool:nth-child(3n+2){transform:rotate(.15deg)}
.tool:before{top:-23px;left:calc(50% - 5px);height:34px;width:10px;border:3px solid #8a8b7b;border-left-color:#e4e6d9;border-right-color:#73796c;border-bottom-color:#b6b9a6;border-radius:8px;box-shadow:3px 3px 3px #222b2850;background:linear-gradient(90deg,#4c5648,#d9dbcc 40%,#5f695b)}
.tool:after{top:7px;width:12px;height:12px;left:calc(50% - 6px);background:#535c42;border:2px solid #c5b88e;box-shadow:0 0 0 3px #e6dabb,inset 1px 2px 3px #192816a0}
.tool:hover{transform:translateY(-3px) rotate(0)}
.tool.recommended{background:linear-gradient(#ffeb9b80,#ffeb9b80),url('assets/paper.webp') center/640px 427px;box-shadow:1px 1px 0 #d9c67f,5px 13px 15px #29271250}
.tool-group,.category,.tool summary{color:#405442}.board-foot{margin-top:38px}
.material-study{display:flex;align-items:center;gap:18px;margin:0 0 22px}.material-study img{width:180px;height:120px;object-fit:cover;border-radius:3px;box-shadow:3px 5px 12px #001c1740}.material-study figcaption{font-size:12px;line-height:1.6;color:#e0e9d9;max-width:23ch}
@keyframes daylight{0%,100%{opacity:.2}50%{opacity:.8}}
@media(max-width:760px){.board{padding:36px 29px 26px;background-size:756px 451px}.board:before{border-width:12px}.board:after{inset:12px}.board-photo img{width:100%;height:520px;object-fit:cover}.board-meta{margin-bottom:34px}.tools{gap:42px 20px}.material-study img{width:140px;height:94px}.material-study{gap:14px}}
@media(prefers-reduced-motion:reduce){.board:after{animation:none;opacity:.2}.tool,.tool:nth-child(n){transform:none}}
