:root{--bg:#f6f8fc;--surface:#fff;--surface-2:#eaf0fa;--text:#172033;--muted:#586379;--border:#dbe3f0;--accent:#1d4ed8;--accent-hover:#1e40af;--accent-soft:#e6eeff;--on-accent:#fff;--highlight:#dc2626;--highlight-soft:#fee8e8;--ink:#172033;--dot:#d3dcec;--error:#b42318;--error-bg:#fef3f2;--radius:20px;--radius-sm:12px;--shadow:0 2px 0 #1d4ed80d, 0 4px 14px #1d4ed80f;--shadow-lg:0 6px 0 #1d4ed80f, 0 14px 32px #1d4ed81f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:16px/1.55 Nunito,ui-rounded,system-ui,-apple-system,Segoe UI,sans-serif}:root[data-theme=dark]{--bg:#0f1524;--surface:#172033;--surface-2:#1f2a40;--text:#eef2fa;--muted:#a3aec4;--border:#2a3650;--accent:#7aa2ff;--accent-hover:#9bb8ff;--accent-soft:#1c2a4d;--on-accent:#0f1524;--highlight:#ff6b6b;--highlight-soft:#3a1f29;--ink:#5a6b90;--dot:#222d45;--error:#ffa198;--error-bg:#3a1c1a;--shadow:0 2px 0 #00000040;--shadow-lg:0 6px 0 #00000040, 0 14px 32px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:radial-gradient(var(--dot) 1.2px, transparent 1.4px) 0 0 / 22px 22px, var(--bg);color:var(--text);margin:0;transition:background-color .2s,color .2s}h1,h2,p{margin:0}.card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--pop,var(--accent));padding:1.25rem}.form{gap:1rem;display:grid}.row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;display:grid}.field{gap:.375rem;display:grid}label{font-size:.9rem;font-weight:700}textarea,select{width:100%;font:inherit;color:inherit;background:var(--bg);border:2px solid var(--border);border-radius:var(--radius-sm);padding:.55rem .7rem;transition:border-color .15s}:is(textarea,select):hover{border-color:var(--accent)}textarea{resize:vertical}textarea[aria-invalid=true]{border-color:var(--error)}:is(a,button,input,textarea,select):focus-visible{outline:3px solid var(--accent);outline-offset:2px}.hint{color:var(--muted);font-size:.8rem}.hint-error{color:var(--error)}.btn{font:inherit;border:2px solid var(--ink);cursor:pointer;box-shadow:4px 4px 0 var(--btn-shadow,var(--ink));border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.4rem;font-weight:800;text-decoration:none;transition:background-color .15s,transform .1s,box-shadow .1s;display:inline-flex}.btn:hover:not(:disabled){box-shadow:5px 5px 0 var(--btn-shadow,var(--ink));transform:translate(-1px,-1px)}.btn:active:not(:disabled){box-shadow:0 0 0 var(--btn-shadow,var(--ink));transform:translate(4px,4px)}.btn-primary{--btn-shadow:var(--highlight);color:var(--on-accent);background:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-secondary{color:var(--text);background:var(--surface);border-color:var(--border);--btn-shadow:var(--accent)}.error{color:var(--error);background:var(--error-bg);border:1px solid var(--error);border-radius:var(--radius-sm);padding:.75rem 1rem}.search{color:var(--muted);background:var(--bg);border:2px solid var(--border);border-radius:999px;align-items:center;gap:.5rem;padding:0 .9rem;font-weight:400;transition:border-color .15s;display:flex}.search:focus-within{border-color:var(--accent)}.search input{min-width:0;font:inherit;color:var(--text);background:0 0;border:0;flex:1;padding:.5rem 0}.search input:focus-visible{outline:none}kbd{border:1px solid var(--border);border-radius:4px;padding:0 .4rem;font:.75rem/1.5 ui-monospace,monospace}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.shell{grid-template-columns:264px 1fr;min-height:100vh;display:grid}.brand{color:var(--text);align-items:center;gap:.5rem;font-size:1.15rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;border:2px solid var(--ink);width:2rem;height:2rem;box-shadow:3px 3px 0 var(--highlight);background:linear-gradient(135deg,#1d4ed8,#4f7dff);border-radius:10px;place-items:center;transition:transform .3s;display:grid;position:relative;transform:rotate(-6deg)}.brand-mark:after{content:"";background:var(--highlight);border:2px solid var(--surface);border-radius:50%;width:10px;height:10px;position:absolute;top:-5px;right:-5px}.brand:hover .brand-mark{transform:rotate(6deg)scale(1.08)}.icon-btn{width:2.25rem;height:2.25rem;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;transition:background-color .15s,transform .15s;display:inline-grid}.theme-toggle{color:var(--highlight);margin-left:auto}.theme-toggle:hover{transform:rotate(-15deg)}.icon-btn:hover{background:var(--surface-2)}.topbar,.backdrop,.sidebar-close{display:none}.sidebar{background:var(--surface);border-right:2px solid var(--ink);flex-direction:column;gap:1rem;height:100vh;padding:1.25rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-head{align-items:center;gap:.25rem;min-height:2.25rem;padding:0 .5rem;display:flex}.nav{gap:1rem;display:grid}.nav-group{gap:.125rem;display:grid}.nav-heading{color:var(--muted);padding:0 .75rem .25rem;font-size:.85rem;font-weight:700}.nav-link{color:var(--text);border-radius:999px;align-items:center;gap:.625rem;padding:.55rem .85rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .15s,transform .15s;display:flex}.nav-link:hover{background:var(--surface-2);transform:translate(2px)}.nav-link.active{color:var(--on-accent);background:var(--accent);box-shadow:3px 3px 0 var(--highlight);font-weight:800}.nav-empty{color:var(--muted);padding:0 .75rem;font-size:.875rem}.content{min-width:0}@media (width<=900px){.shell{grid-template-rows:auto 1fr;grid-template-columns:1fr}.topbar{z-index:10;background:var(--surface);border-bottom:2px solid var(--ink);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex;position:sticky;top:0}.sidebar-close{display:inline-grid}.sidebar{z-index:30;width:min(300px,85vw);box-shadow:var(--shadow-lg);visibility:hidden;transition:transform .2s,visibility .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebar[data-open=true]{visibility:visible;transform:none}.backdrop{z-index:20;opacity:0;pointer-events:none;background:#0006;transition:opacity .2s;display:block;position:fixed;inset:0}.backdrop[data-open=true]{opacity:1;pointer-events:auto}.sidebar kbd{display:none}}.page{max-width:1040px;margin:0 auto;padding:2.5rem 1.5rem 4rem}h1{font-size:clamp(1.6rem,4.5vw,2.25rem);font-weight:800;line-height:1.2}.lead{color:var(--muted);margin-top:.375rem}.kicker{color:var(--highlight);font-weight:800}.hero{gap:.25rem;margin-bottom:3rem;display:grid;position:relative}.hero h1{letter-spacing:-.02em;max-width:14ch;font-size:clamp(2.2rem,7vw,3.75rem);line-height:1.05}.hero .lead{margin-top:.75rem;font-size:1.1rem}.wave{transform-origin:70% 70%;animation:2.4s ease-in-out infinite wave;display:inline-block}@keyframes wave{0%,60%,to{transform:rotate(0)}10%,30%{transform:rotate(16deg)}20%,40%{transform:rotate(-8deg)}}.scribble{color:var(--accent);display:inline-block;position:relative}.scribble svg{width:104%;height:.32em;position:absolute;bottom:-.12em;left:-2%;overflow:visible}.scribble path{fill:none;stroke:var(--highlight);stroke-width:6px;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:260px;animation:.9s ease-out .3s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}.doodles{pointer-events:none;position:absolute;inset:-1rem 0 0 55%}.doodle{animation:6s ease-in-out infinite float;position:absolute}.doodle-ring{width:96px;stroke:var(--accent);top:0;right:18%}.doodle-star{width:70px;fill:var(--highlight);stroke:var(--ink);stroke-width:4px;stroke-linejoin:round;animation:14s linear infinite spin;top:42%;right:2%}.doodle-squiggle{width:130px;stroke:var(--highlight);animation-delay:-2s;bottom:18%;right:30%}.doodle-plus{width:30px;stroke:var(--accent);animation-delay:-4s;top:12%;right:0}.doodle-dots{width:48px;fill:var(--accent);opacity:.5;animation-delay:-1s;top:30%;right:44%}@keyframes float{50%{transform:translateY(-10px)rotate(4deg)}}@keyframes spin{to{transform:rotate(360deg)}}.search-lg{background:var(--surface);border-color:var(--ink);max-width:520px;box-shadow:4px 4px 0 var(--accent);margin-top:1.5rem;padding:0 1rem;position:relative}.search-lg:focus-within{border-color:var(--ink);box-shadow:4px 4px 0 var(--highlight)}.search-lg input{padding:.8rem 0}.tool-section+.tool-section{margin-top:2.5rem}.section-title{align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.25rem;font-weight:800;display:flex}.count{min-width:1.6rem;height:1.6rem;color:var(--on-accent);background:var(--highlight);border-radius:999px;place-items:center;padding:0 .4rem;font-size:.8rem;display:inline-grid;transform:rotate(-8deg)}.tool-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.tool-grid>li{--pop:var(--accent);--pop-soft:var(--accent-soft)}.tool-grid>li:nth-child(2n){--pop:var(--highlight);--pop-soft:var(--highlight-soft)}.tool-card{height:100%;color:var(--text);background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:6px 6px 0 var(--pop);align-items:flex-start;gap:.875rem;padding:1.25rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.tool-card:hover{box-shadow:9px 9px 0 var(--pop);transform:translate(-3px,-3px)rotate(-1deg)}.tool-card:active{box-shadow:2px 2px 0 var(--pop);transform:translate(4px,4px)}.tool-icon{width:3rem;height:3rem;color:var(--pop,var(--accent));background:var(--pop-soft,var(--accent-soft));border:2px solid var(--ink);border-radius:14px;flex:none;place-items:center;transition:transform .2s;display:grid;transform:rotate(-5deg)}.tool-card:hover .tool-icon{transform:rotate(6deg)scale(1.1)}.tool-card-body{flex:1;gap:.25rem;display:grid}.tool-card-title{font-size:1.05rem;font-weight:800}.tool-card-desc{color:var(--muted);font-size:.875rem}.tool-card-arrow{color:var(--pop);flex:none;align-self:center;transition:transform .15s}.tool-card:hover .tool-card-arrow{transform:translate(4px)}.empty-state{text-align:center;color:var(--muted);background:var(--surface);border:2px dashed var(--ink);border-radius:var(--radius);padding:2rem;font-weight:600}.back-link{color:var(--muted);align-items:center;gap:.375rem;margin-bottom:1.25rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:color .15s,transform .15s;display:inline-flex}.back-link:hover{color:var(--accent);transform:translate(-3px)}.tool-header{align-items:center;gap:1.25rem;margin-bottom:2.25rem;display:flex}.tool-header .tool-icon{width:3.5rem;height:3.5rem;color:var(--on-accent);background:var(--accent);box-shadow:4px 4px 0 var(--highlight)}.loading{color:var(--muted)}.not-found{text-align:center;justify-items:center;gap:.25rem;padding-top:5rem;display:grid}.not-found-code{color:var(--bg);-webkit-text-stroke:3px var(--accent);text-shadow:6px 6px 0 var(--highlight);margin-bottom:.5rem;font-size:clamp(5rem,22vw,9rem);font-weight:800;line-height:1;transform:rotate(-4deg)}.not-found .btn{margin-top:1.5rem}@media (width<=760px){.doodles{opacity:.6;height:140px;inset:-1.5rem 0 auto 62%}.doodle-dots,.doodle-squiggle{display:none}.doodle-ring{width:64px}.doodle-star{width:48px;top:60%}}@media (width<=600px){.page{padding:1.5rem 1rem 3rem}}
