:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17211b;--muted:#657069;--paper:#f6f7f2;--card:#fff;--line:#dfe4dc;--accent:#5b5bd6;--accent-dark:#4141ad;--mint:#d9f4df;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}.container{margin-inline:auto}.container,.site-header{width:min(1120px,100% - 40px)}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:72px;margin:auto;display:flex}.brand{letter-spacing:-.03em;font-size:1.15rem;font-weight:800;text-decoration:none}.site-header nav{gap:24px;display:flex}.site-header nav a{color:var(--muted);font-size:.9rem;text-decoration:none}.site-header nav a.router-link-active,.site-header nav a:hover{color:var(--ink)}.site-footer{color:#8a938d;text-align:center;padding:56px 20px 32px;font-size:.8rem}.hero{padding:88px 0 56px}.eyebrow{color:var(--accent);letter-spacing:.16em;margin:0 0 14px;font-size:.72rem;font-weight:800}.hero h1{letter-spacing:-.075em;max-width:720px;margin:0;font-size:clamp(3.5rem,9vw,7.5rem);line-height:.88}.hero h1 span{color:var(--accent)}.hero-copy{color:var(--muted);margin:28px 0;font-size:1.1rem}.search-box{background:var(--card);border:1px solid var(--line);border-radius:16px;align-items:center;gap:12px;max-width:620px;height:58px;padding:0 18px;display:flex;box-shadow:0 10px 35px #17211b0d}.search-box span{color:var(--accent);font-size:1.7rem}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.catalog{padding-bottom:32px}.category-row{flex-wrap:wrap;gap:9px;margin-bottom:28px;display:flex}.chip{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:999px;padding:8px 14px}.chip.active{background:var(--ink);border-color:var(--ink);color:#fff}.tool-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.tool-card{background:var(--card);border:1px solid var(--line);border-radius:20px;flex-direction:column;min-height:280px;padding:24px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.tool-card:hover{border-color:#c7ccc5;transform:translateY(-4px);box-shadow:0 18px 48px #17211b14}.tool-card-top{justify-content:space-between;align-items:flex-start;display:flex}.detail-icon,.tool-icon{-o-object-fit:cover;object-fit:cover;background:var(--mint)}.tool-icon{border-radius:13px;width:48px;height:48px}.fallback{color:#317343;place-items:center;font-weight:900;display:grid}.featured,.pill{color:var(--accent-dark);background:#ededff;border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:700}.category{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin:24px 0 7px;font-size:.72rem;font-weight:800}.tool-card h2{margin:0;font-size:1.35rem}.description{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.card-link{margin-top:auto;font-size:.82rem;font-weight:750}.state{color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:18px;padding:60px 20px}.error-state{color:#a23c3c}.detail-page{min-height:calc(100vh - 180px);padding-top:64px}.back-link{color:var(--muted);font-size:.9rem;text-decoration:none}.detail-card{background:var(--card);border:1px solid var(--line);border-radius:28px;margin-top:28px;padding:clamp(28px,6vw,64px)}.detail-heading{align-items:center;gap:22px;display:flex}.detail-icon{border-radius:20px;flex:none;width:76px;height:76px}.detail-heading h1{letter-spacing:-.06em;margin:8px 0 0;font-size:clamp(2.2rem,7vw,4.5rem)}.detail-description{max-width:700px;color:var(--muted);margin:36px 0;font-size:1.08rem;line-height:1.8}.primary-button,.secondary-button{border:0;border-radius:12px;justify-content:center;padding:12px 18px;font-weight:750;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:var(--accent)}.primary-button:hover{background:var(--accent-dark)}.primary-button:disabled{opacity:.55;cursor:wait}.secondary-button{color:var(--ink);background:#eef0eb}.admin-page{padding-top:56px}.admin-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.admin-heading h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.4rem,6vw,4rem)}.admin-heading>p{max-width:460px;color:var(--muted);font-size:.9rem}.admin-form,.admin-list{background:var(--card);border:1px solid var(--line);border-radius:20px;margin-top:30px;padding:28px}.admin-form h2,.admin-list h2{margin:0 0 22px}.form-grid{grid-template-columns:repeat(2,1fr);gap:17px;display:grid}.form-grid label{color:var(--muted);gap:7px;font-size:.8rem;font-weight:650;display:grid}.form-grid input,.form-grid textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fbfcf9;border-radius:10px;outline:0;padding:11px 12px}.form-grid input:focus,.form-grid textarea:focus{border-color:var(--accent)}.form-grid .check-label{flex-direction:row;align-items:center;display:flex}.check-label input{width:auto}.full-field{grid-column:1/-1}.form-actions{align-items:center;gap:10px;margin-top:20px;display:flex}.form-message{color:var(--accent-dark);font-size:.85rem}.admin-items{display:grid}.admin-item{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:16px 0;display:flex}.admin-item:first-child{border-top:0}.admin-item span,.admin-item strong{display:block}.admin-item span{color:var(--muted);margin-top:4px;font-size:.78rem}.row-actions{gap:12px;display:flex}.text-button{color:var(--accent);background:0 0;border:0}.text-button.danger{color:#b43c3c}@media (width<=800px){.tool-grid{grid-template-columns:repeat(2,1fr)}.hero{padding-top:64px}.admin-heading{display:block}}@media (width<=560px){.container,.site-header{width:min(100% - 28px,1120px)}.site-header{height:62px}.site-header nav{gap:14px}.hero h1{font-size:3.25rem}.form-grid,.tool-grid{grid-template-columns:1fr}.tool-card{min-height:250px}.detail-heading{align-items:flex-start}.detail-icon{width:60px;height:60px}.admin-form,.admin-list{padding:20px}.admin-item{align-items:flex-start}}
