@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow+Condensed:wght@300;400;600;700;900&family=JetBrains+Mono:wght@400;700&display=swap";:root{--red:#d92b2b;--red-dark:#b52020;--black:#0a0a0a;--white:#f2efe8;--gray:#1a1a1a;--mid:#2e2e2e;--accent:#e8d44d;--sidebar-w:72px;--sidebar-expanded:240px;--font-display:"Bebas Neue", sans-serif;--font-body:"Barlow Condensed", sans-serif;--font-mono:"JetBrains Mono", monospace}html,body,#app{min-height:100%}body{background:var(--black);color:var(--white);font-family:var(--font-body);overflow:hidden auto}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--black)}::-webkit-scrollbar-thumb{background:var(--red)}.section{padding:100px 60px;position:relative}.section-header{align-items:flex-end;gap:24px;margin-bottom:60px;display:flex}.section-num{font-family:var(--font-display);color:var(--red);opacity:.3;font-size:80px;line-height:1}.section-title{font-family:var(--font-display);letter-spacing:4px;color:var(--white);text-transform:uppercase;font-size:48px}.section-line{background:linear-gradient(90deg, var(--red), transparent);flex:1;height:2px}.hamburger[data-v-8f5cdb93]{cursor:pointer}.hamburger input[data-v-8f5cdb93]{display:none}.hamburger svg[data-v-8f5cdb93]{height:3em;transition:transform .6s cubic-bezier(.4,0,.2,1)}.line[data-v-8f5cdb93]{fill:none;stroke:#a8afb9;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px;transition:stroke-dasharray .6s cubic-bezier(.4,0,.2,1),stroke-dashoffset .6s cubic-bezier(.4,0,.2,1)}.line-top-bottom[data-v-8f5cdb93]{stroke:#71717b;stroke-dasharray:12 63}.hamburger input:checked+svg[data-v-8f5cdb93]{transform:rotate(-45deg)}.hamburger input:checked+svg .line-top-bottom[data-v-8f5cdb93]{stroke-dasharray:20 300;stroke-dashoffset:-32.42px}.minimal-sidebar[data-v-e250f2b5]{left:0;top:var(--nav-h);height:calc(100vh - var(--nav-h));width:240px;transform:translateX(calc(-100% + var(--sidebar-rail)));z-index:1200;background:#fffffffa;border-right:1px solid #0f0f0f0f;align-items:flex-start;padding:1.25rem;transition:transform .26s cubic-bezier(.77,0,.18,1);display:flex;position:fixed;box-shadow:4px 0 24px #0f0f0f0a}.minimal-sidebar.open[data-v-e250f2b5]{transform:translate(0)}.sidebar-nav[data-v-e250f2b5]{flex-direction:column;gap:.75rem;width:100%;display:flex}.peek-toggle[data-v-e250f2b5]{justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:absolute;top:8px;right:0}.nav-item[data-v-e250f2b5]{font-family:var(--mono);width:fit-content;color:var(--ink);border-left:2px solid #0000;align-self:flex-start;padding:8px 6px;font-size:14px;display:inline-block}.nav-item.router-link-active[data-v-e250f2b5]{border-left-color:var(--ink)}.sidebar-backdrop[data-v-e250f2b5]{bottom:0;left:0;right:0;top:var(--nav-h);z-index:1100;background:#00000040;position:fixed}@media (width<=640px){.minimal-sidebar[data-v-e250f2b5],.sidebar-backdrop[data-v-e250f2b5]{display:none}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--ink:#0f0f0f;--ink-light:#6b6b6b;--ink-faint:#c4c4c4;--paper:#fafaf8;--paper-warm:#f3f1ec;--accent:#0f0f0f;--line:1px solid #e0deda;--serif:"Instrument Serif", Georgia, serif;--mono:"DM Mono", "Courier New", monospace;--sans:"Noto Sans SC", sans-serif;--nav-h:56px;--sidebar-rail:56px;--content-max:72rem;--page-gutter:clamp(1rem, 5vw, 3rem)}html{font-size:16px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-weight:300}a{color:inherit;text-decoration:none}.app{flex-direction:column;min-height:100vh;display:flex}.nav{z-index:100;padding:0 var(--page-gutter);min-height:var(--nav-h);background:var(--paper);border-bottom:var(--line);align-items:center;gap:clamp(1rem,3vw,2rem);display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{font-family:var(--mono);letter-spacing:.1em;align-items:center;gap:1px;font-size:13px;font-weight:500;display:flex}.logo-bracket{color:var(--ink-faint)}.logo-text{color:var(--ink)}.nav-links{flex:1;gap:2rem;min-width:0;display:flex}.nav-link{font-family:var(--mono);color:var(--ink-light);letter-spacing:.05em;border-bottom:1px solid #0000;padding-bottom:2px;font-size:12px;transition:color .2s}.nav-link:hover,.nav-link.router-link-active{color:var(--ink);border-bottom-color:var(--ink)}.nav-meta{font-family:var(--mono);color:var(--ink-faint);font-size:11px}.nav-account{min-width:0;font-family:var(--mono);align-items:center;gap:.6rem;font-size:11px;display:flex}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:9rem;color:var(--ink-light);overflow:hidden}.account-link,.logout-button{border:1px solid var(--ink-faint);color:var(--ink);cursor:pointer;font:inherit;background:0 0;padding:.35rem .5rem}.account-link:hover,.logout-button:hover{border-color:var(--ink)}.main{padding-left:var(--sidebar-rail);padding-top:var(--nav-h);flex:1;min-width:0}.footer{border-top:var(--line);margin-left:var(--sidebar-rail);padding:clamp(1.5rem, 4vw, 2rem) var(--page-gutter);justify-content:center;display:flex}.footer-line{display:none}.footer-content{font-family:var(--mono);color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:1rem;font-size:11px;display:flex}.footer-sep{color:var(--ink-faint)}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}@media (width<=640px){.nav{align-items:center;gap:clamp(.75rem,3vw,1rem);padding-inline:.75rem}.nav-links{gap:clamp(.5rem,3vw,1rem)}.nav-link{white-space:nowrap;font-size:clamp(10px,3vw,12px)}.nav-meta,.account-name{display:none}.nav-logo{flex-shrink:0}.main{padding-left:0}.footer{margin-left:0}}.home[data-v-d49a860c]{width:100%}.hero[data-v-d49a860c]{padding:clamp(4.5rem, 9vw, 7rem) var(--page-gutter) clamp(3rem, 7vw, 5rem);border-bottom:var(--line);position:relative;overflow-x:hidden}.hero-inner[data-v-d49a860c]{z-index:1;max-width:min(52rem,100%);position:relative}.hero-grid-bg[data-v-d49a860c]{opacity:.12;background-image:linear-gradient(var(--ink-faint) 1px, transparent 1px), linear-gradient(90deg, var(--ink-faint) 1px, transparent 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80% at 80%,#000 0%,#0000 70%);mask-image:radial-gradient(80% 80% at 80%,#000 0%,#0000 70%)}.hero-label[data-v-d49a860c]{align-items:center;gap:.75rem;margin-bottom:2.5rem;display:flex}.label-line[data-v-d49a860c]{background:var(--ink-light);width:32px;height:1px;display:block}.label-text[data-v-d49a860c]{color:var(--ink-light);font-family:var(--mono);letter-spacing:.1em;font-size:11px}.hero-title[data-v-d49a860c]{color:var(--ink);font-family:var(--serif);letter-spacing:-.01em;margin-bottom:1.5rem;font-size:clamp(2.5rem,7vw,5.5rem);font-weight:400;line-height:1.1}.hero-sub[data-v-d49a860c]{max-width:min(32rem,100%);color:var(--ink-light);margin-bottom:2.5rem;font-size:clamp(.9375rem,1.8vw,1rem);line-height:1.7}.hero-actions[data-v-d49a860c]{flex-wrap:wrap;align-items:center;gap:2rem;display:flex}.btn-primary[data-v-d49a860c]{background:var(--ink);color:var(--paper);font-family:var(--mono);letter-spacing:.05em;padding:10px 24px;font-size:12px;transition:opacity .2s;display:inline-block}.btn-primary[data-v-d49a860c]:hover{opacity:.8}.hero-stat[data-v-d49a860c]{color:var(--ink-faint);font-family:var(--mono);font-size:11px}@media (width<=768px){.hero-actions[data-v-d49a860c]{flex-direction:column;align-items:flex-start;gap:1rem}}.section-rule[data-v-d49a860c]{min-height:48px;padding:0 var(--page-gutter);border-bottom:var(--line);align-items:center;gap:1rem;display:flex}.section-rule[data-v-d49a860c]:before{content:"";opacity:.4;background:var(--ink-faint);flex:1;height:1px}.rule-label[data-v-d49a860c]{color:var(--ink-faint);font-family:var(--mono);letter-spacing:.15em;font-size:10px}.tools-section[data-v-d49a860c]{padding:clamp(1.5rem, 5vw, 3rem) var(--page-gutter)}.tools-grid[data-v-d49a860c]{width:min(100%, var(--content-max));background:var(--ink-faint);border:1px solid var(--ink-faint);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1px;margin:0 auto 2.5rem;display:grid}.tool-card[data-v-d49a860c]{background:var(--paper);flex-direction:column;gap:.5rem;min-height:clamp(12.5rem,20vw,15rem);padding:clamp(1.25rem,3vw,2rem);transition:background .2s;display:flex}.tool-card[data-v-d49a860c]:hover{background:var(--paper-warm)}.tool-card-top[data-v-d49a860c]{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.tool-icon[data-v-d49a860c]{border:var(--line);width:42px;height:42px;color:var(--ink-light);font-family:var(--mono);object-fit:cover;place-items:center;font-size:14px;font-weight:500;display:grid}.tool-tag[data-v-d49a860c]{border:1px solid var(--ink-faint);color:var(--ink-faint);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;font-size:9px}.tool-name[data-v-d49a860c]{color:var(--ink);font-family:var(--serif);font-size:1.25rem;font-weight:400}.tool-desc[data-v-d49a860c]{color:var(--ink-light);flex:1;font-size:13px;line-height:1.6}.tool-footer[data-v-d49a860c]{border-top:1px solid #0000;justify-content:flex-end;align-items:center;padding-top:.5rem;transition:border-color .2s;display:flex}.tool-card:hover .tool-footer[data-v-d49a860c]{border-color:var(--ink-faint)}.tool-arrow[data-v-d49a860c]{color:var(--ink-light);font-family:var(--mono);font-size:14px;transition:transform .2s}.tool-card:hover .tool-arrow[data-v-d49a860c]{transform:translate(4px)}.tools-more[data-v-d49a860c]{width:min(100%, var(--content-max));text-align:center;margin-inline:auto}.btn-ghost[data-v-d49a860c]{border-bottom:1px solid var(--ink-faint);color:var(--ink-light);font-family:var(--mono);letter-spacing:.05em;padding:8px 0;font-size:12px;transition:color .2s,border-color .2s;display:inline-block}.btn-ghost[data-v-d49a860c]:hover{border-color:var(--ink);color:var(--ink)}@media (width<=560px){.tools-grid[data-v-d49a860c]{grid-template-columns:1fr}.tool-card[data-v-d49a860c]{min-height:160px}.tool-card-top[data-v-d49a860c]{align-items:flex-start;gap:.75rem}}.features[data-v-d49a860c]{padding:clamp(1.5rem, 5vw, 3rem) var(--page-gutter);border-top:var(--line)}.features-inner[data-v-d49a860c]{width:min(100%, var(--content-max));grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:clamp(1.5rem,4vw,3rem);margin-inline:auto;display:grid}.feature[data-v-d49a860c]{align-items:flex-start;gap:1.5rem;display:flex}.feature-num[data-v-d49a860c]{color:var(--ink-faint);font-family:var(--mono);flex-shrink:0;padding-top:3px;font-size:11px}.feature-title[data-v-d49a860c]{margin-bottom:.4rem;font-size:14px;font-weight:400}.feature-text[data-v-d49a860c]{color:var(--ink-light);font-size:13px;line-height:1.6}@media (width<=768px){.feature[data-v-d49a860c]{gap:1rem}}@media (width<=560px){.features-inner[data-v-d49a860c]{grid-template-columns:1fr;gap:1.5rem}.feature[data-v-d49a860c]{gap:.875rem}}.group[data-v-d5bb2a31]{align-items:center;width:min(100%,260px);line-height:28px;display:flex;position:relative}.input[data-v-d5bb2a31]{color:#0d0c22;width:100%;height:40px;line-height:28px;font-family:var(--mono);background-color:#f3f3f4;border:2px solid #0000;border-radius:8px;outline:none;padding:0 1rem 0 2.5rem;font-size:12px;transition:all .3s}.input[data-v-d5bb2a31]::placeholder{color:#9e9ea7}.input[data-v-d5bb2a31]:focus,.input[data-v-d5bb2a31]:hover{background-color:#f9f6f1;border-color:#babcb9;outline:none;box-shadow:0 0 0 4px #f9f6f1}.icon[data-v-d5bb2a31]{fill:#9e9ea7;width:1rem;height:1rem;position:absolute;left:1rem}.tools-page[data-v-b402d0bc]{width:100%}.page-header[data-v-b402d0bc]{border-bottom:var(--line);padding:clamp(2rem, 5vw, 3rem) var(--page-gutter) 0}.page-header-content[data-v-b402d0bc]{width:min(100%, var(--content-max));margin-inline:auto}.page-header-top[data-v-b402d0bc]{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:2rem;display:flex}.page-title[data-v-b402d0bc]{font-family:var(--serif);font-size:clamp(2rem,6vw,2.5rem);font-weight:400}.page-count[data-v-b402d0bc]{font-family:var(--mono);color:var(--ink-faint);font-size:11px}.filter-bar[data-v-b402d0bc]{flex-wrap:wrap;align-items:center;gap:.25rem 0;display:flex}.filter-btn[data-v-b402d0bc]{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-light);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px clamp(.75rem,2vw,1rem);font-size:11px;transition:all .15s}.filter-btn[data-v-b402d0bc]:hover{color:var(--ink)}.filter-btn.active[data-v-b402d0bc]{color:var(--ink);border-bottom-color:var(--ink)}.search-wrap[data-v-b402d0bc]{margin-left:auto;padding-bottom:8px}.search-wrap[data-v-b402d0bc] .group{width:min(100%,260px)}.list-wrap[data-v-b402d0bc]{width:100%}.list-item[data-v-b402d0bc]{border-bottom:var(--line);transition:background .15s;display:block}.list-item-content[data-v-b402d0bc]{width:min(100%, calc(var(--content-max) + var(--page-gutter) + var(--page-gutter)));min-height:5.25rem;padding:1.25rem var(--page-gutter);align-items:center;gap:1.5rem;margin-inline:auto;display:flex}.list-item[data-v-b402d0bc]:hover{background:var(--paper-warm)}.list-num[data-v-b402d0bc]{font-family:var(--mono);color:var(--ink-faint);flex-shrink:0;width:24px;font-size:11px}.list-icon[data-v-b402d0bc]{font-family:var(--mono);color:var(--ink-light);object-fit:cover;text-align:center;flex-shrink:0;width:28px;height:28px;font-size:13px}.list-body[data-v-b402d0bc]{flex:1;min-width:0}.list-name[data-v-b402d0bc]{margin-bottom:2px;font-size:14px;font-weight:400}.list-desc[data-v-b402d0bc]{color:var(--ink-light);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.list-cat[data-v-b402d0bc]{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.08em;white-space:nowrap;flex-shrink:0;font-size:10px}.list-arrow[data-v-b402d0bc]{font-family:var(--mono);color:var(--ink-faint);font-size:14px;transition:transform .2s,color .2s}.list-item:hover .list-arrow[data-v-b402d0bc]{color:var(--ink);transform:translate(4px)}.list-empty[data-v-b402d0bc]{font-family:var(--mono);color:var(--ink-faint);text-align:center;padding:4rem clamp(1rem,5vw,3rem);font-size:13px}@media (width<=768px){.filter-bar[data-v-b402d0bc]{align-items:stretch}.search-wrap[data-v-b402d0bc]{width:100%;margin-left:0;padding-bottom:0}.search-wrap[data-v-b402d0bc] .group{width:100%}}@media (width<=640px){.list-item-content[data-v-b402d0bc]{min-height:0;padding:1rem var(--page-gutter);grid-template-columns:24px 28px minmax(0,1fr) auto;grid-template-areas:"num icon body arrow"". .cat arrow";align-items:start;gap:.25rem .75rem;display:grid}.list-num[data-v-b402d0bc]{grid-area:num}.list-icon[data-v-b402d0bc]{grid-area:icon}.list-body[data-v-b402d0bc]{grid-area:body}.list-cat[data-v-b402d0bc]{grid-area:cat}.list-arrow[data-v-b402d0bc]{grid-area:arrow;align-self:center}.list-desc[data-v-b402d0bc]{white-space:normal;text-overflow:clip;line-height:1.5;overflow:visible}}@media (width<=420px){.filter-btn[data-v-b402d0bc]{padding-left:12px;padding-right:12px}.page-count[data-v-b402d0bc]{width:100%}.list-item-content[data-v-b402d0bc]{gap:.25rem .625rem}.list-name[data-v-b402d0bc]{font-size:13px}.list-desc[data-v-b402d0bc]{font-size:11px}.list-cat[data-v-b402d0bc]{font-size:9px}}@media (width>=641px) and (width<=960px){.filter-bar[data-v-b402d0bc]{row-gap:.5rem}.search-wrap[data-v-b402d0bc]{order:2;width:100%;margin-left:0;padding-bottom:0}.search-wrap[data-v-b402d0bc] .group{width:min(100%,320px)}.list-item-content[data-v-b402d0bc]{gap:1rem}.list-desc[data-v-b402d0bc]{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}.about-page[data-v-be7abffc]{width:100%}.about-header[data-v-be7abffc]{border-bottom:var(--line);width:100%;padding:clamp(2rem,6vw,4rem) clamp(1rem,5vw,3rem) clamp(2rem,5vw,3rem)}.about-title[data-v-be7abffc]{font-family:var(--serif);margin-bottom:1rem;font-size:clamp(2rem,6vw,2.5rem);font-weight:400}.about-lead[data-v-be7abffc]{color:var(--ink-light);max-width:min(480px,100%);font-size:clamp(.9375rem,1.8vw,1rem);line-height:1.7}.about-body[data-v-be7abffc]{grid-template-columns:minmax(0,1fr) minmax(220px,240px);gap:0;display:grid}.about-main[data-v-be7abffc]{border-right:var(--line);padding:clamp(1.5rem,5vw,3rem)}.about-section[data-v-be7abffc]{margin-bottom:3rem}.about-section[data-v-be7abffc]:last-child{margin-bottom:0}.section-heading[data-v-be7abffc]{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-faint);text-transform:uppercase;border-bottom:var(--line);margin-bottom:1.5rem;padding-bottom:.75rem;font-size:11px}.principles[data-v-be7abffc]{flex-direction:column;gap:1.5rem;display:flex}.principle[data-v-be7abffc]{align-items:flex-start;gap:1rem;display:flex}.principle-mark[data-v-be7abffc]{font-family:var(--mono);color:var(--ink-faint);flex-shrink:0;padding-top:2px}.principle-title[data-v-be7abffc]{margin-bottom:4px;font-size:14px;font-weight:400}.principle-text[data-v-be7abffc]{color:var(--ink-light);font-size:13px;line-height:1.65}.tech-list[data-v-be7abffc]{flex-direction:column;display:flex}.tech-item[data-v-be7abffc]{border-bottom:var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.tech-name[data-v-be7abffc]{font-family:var(--mono);font-size:13px}.tech-desc[data-v-be7abffc]{color:var(--ink-faint);text-align:right;font-size:12px}.about-text[data-v-be7abffc]{color:var(--ink-light);margin-bottom:1rem;font-size:13px;line-height:1.65}.contact-links[data-v-be7abffc]{gap:1.5rem;display:flex}.contact-link[data-v-be7abffc]{font-family:var(--mono);color:var(--ink-light);border-bottom:1px solid var(--ink-faint);padding-bottom:2px;font-size:12px;transition:color .15s,border-color .15s}.contact-link[data-v-be7abffc]:hover{color:var(--ink);border-color:var(--ink)}.about-aside[data-v-be7abffc]{padding:clamp(1.5rem,5vw,3rem) clamp(1rem,4vw,2rem)}.stat-block[data-v-be7abffc]{background:var(--ink-faint);border:1px solid var(--ink-faint);grid-template-columns:1fr 1fr;gap:1px;margin-bottom:2rem;display:grid}.stat-item[data-v-be7abffc]{background:var(--paper);flex-direction:column;gap:4px;padding:1.25rem;display:flex}.stat-num[data-v-be7abffc]{font-family:var(--mono);font-size:1.75rem;font-weight:300;line-height:1}.stat-label[data-v-be7abffc]{color:var(--ink-faint);font-size:11px;line-height:1.4}.aside-note[data-v-be7abffc]{color:var(--ink-faint);border-left:2px solid var(--ink-faint);padding-left:.75rem;font-size:12px;line-height:1.6}@media (width<=768px){.about-body[data-v-be7abffc]{grid-template-columns:1fr}.about-main[data-v-be7abffc]{border-right:none}.about-aside[data-v-be7abffc]{border-top:var(--line)}}@media (width<=480px){.principle[data-v-be7abffc]{gap:.75rem}.tech-item[data-v-be7abffc]{flex-direction:column;align-items:flex-start}.tech-desc[data-v-be7abffc]{text-align:left}.contact-links[data-v-be7abffc]{flex-direction:column;align-items:flex-start;gap:.75rem}}.auth-page[data-v-4c6e97f0]{width:min(100%,70rem);min-height:calc(100vh - var(--nav-h) - 5rem);padding:clamp(3rem, 10vh, 7rem) var(--page-gutter);grid-template-columns:minmax(0,1.1fr) minmax(20rem,.9fr);align-items:center;gap:clamp(3rem,10vw,9rem);margin:0 auto;display:grid}.auth-copy[data-v-4c6e97f0]{max-width:32rem}.auth-eyebrow[data-v-4c6e97f0],.card-kicker[data-v-4c6e97f0],.field span[data-v-4c6e97f0],.guest-link[data-v-4c6e97f0],.auth-submit[data-v-4c6e97f0],.mode-switch[data-v-4c6e97f0]{font-family:var(--mono);letter-spacing:.08em;font-size:.7rem}.auth-eyebrow[data-v-4c6e97f0],.card-kicker[data-v-4c6e97f0]{color:var(--ink-light)}.auth-copy h1[data-v-4c6e97f0]{font-family:var(--serif);margin:.8rem 0 1.5rem;font-size:clamp(3rem,7vw,5.5rem);font-weight:400;line-height:.9}.auth-intro[data-v-4c6e97f0]{max-width:26rem;color:var(--ink-light);font-size:.98rem;line-height:1.8}.guest-link[data-v-4c6e97f0]{border-bottom:1px solid var(--ink);gap:.75rem;margin-top:2rem;padding-bottom:.45rem;display:inline-flex}.guest-link span[data-v-4c6e97f0]{font-size:1rem;transition:transform .2s}.guest-link:hover span[data-v-4c6e97f0]{transform:translate(.25rem)}.auth-card[data-v-4c6e97f0]{border:1px solid var(--ink-faint);background:var(--paper-warm);padding:clamp(1.5rem,4vw,2.5rem)}.auth-card h2[data-v-4c6e97f0]{font-family:var(--serif);margin:.75rem 0 1.75rem;font-size:2.4rem;font-weight:400}.field[data-v-4c6e97f0]{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.field span[data-v-4c6e97f0]{color:var(--ink-light)}.field input[data-v-4c6e97f0]{border:0;border-bottom:1px solid var(--ink-faint);width:100%;color:var(--ink);font-family:var(--sans);background:0 0;outline:none;padding:.75rem 0;font-size:1rem}.field input[data-v-4c6e97f0]:focus{border-bottom-color:var(--ink)}.auth-error[data-v-4c6e97f0]{color:#a82828;font-family:var(--mono);margin-top:1rem;font-size:.72rem;line-height:1.6}.auth-submit[data-v-4c6e97f0]{border:1px solid var(--ink);background:var(--ink);width:100%;color:var(--paper);cursor:pointer;margin-top:1.75rem;padding:.9rem 1rem}.auth-submit[data-v-4c6e97f0]:hover:not(:disabled){color:var(--ink);background:0 0}.auth-submit[data-v-4c6e97f0]:disabled,.mode-switch[data-v-4c6e97f0]:disabled{cursor:default;opacity:.45}.mode-switch[data-v-4c6e97f0]{width:100%;color:var(--ink-light);cursor:pointer;background:0 0;border:0;margin-top:1rem;display:block}.mode-switch[data-v-4c6e97f0]:hover:not(:disabled){color:var(--ink)}@media (width<=720px){.auth-page[data-v-4c6e97f0]{grid-template-columns:1fr;gap:2.5rem;padding-block:3rem}.auth-copy h1[data-v-4c6e97f0]{font-size:clamp(3rem,18vw,4.5rem)}}.modal-mask[data-v-01fa0d4c]{z-index:20;background:#0a0a0a73;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-card[data-v-01fa0d4c]{background:var(--paper);border:1px solid var(--ink-faint);width:min(460px,100%);padding:1.25rem 1.5rem}.modal-title[data-v-01fa0d4c]{font-family:var(--serif);margin-bottom:.75rem;font-size:18px;font-weight:400}.modal-body[data-v-01fa0d4c]{flex-direction:column;gap:.75rem;display:flex}.modal-label[data-v-01fa0d4c]{color:var(--ink-light);font-family:var(--mono);flex-direction:column;gap:.4rem;font-size:11px;display:flex}.modal-input[data-v-01fa0d4c]{border:1px solid var(--ink-faint);color:var(--ink);font-family:var(--mono);background:0 0;outline:none;padding:7px 12px;font-size:13px}.modal-input[data-v-01fa0d4c]:focus{border-color:var(--ink-light)}.modal-actions[data-v-01fa0d4c]{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.action-button[data-v-01fa0d4c]{background:var(--ink);color:var(--paper);cursor:pointer;font-family:var(--mono);letter-spacing:.05em;border:none;padding:7px 16px;font-size:11px}.action-button[data-v-01fa0d4c]:disabled{cursor:default;opacity:.3}.action-button--secondary[data-v-01fa0d4c]{border:1px solid var(--ink-faint);color:var(--ink-light);background:0 0}.message[data-v-01fa0d4c]{color:var(--ink-light);font-family:var(--mono);font-size:11px}@media (width<=640px){.modal-actions .action-button[data-v-01fa0d4c]{width:100%}}.food-panel[data-v-3d629561]{flex-direction:column;gap:.5rem;display:flex}.panel-label[data-v-3d629561]{color:var(--ink-light);font-family:var(--mono);margin-bottom:4px;font-size:11px}.count[data-v-3d629561]{color:var(--ink-faint)}.actions[data-v-3d629561]{gap:.75rem;display:flex}.action-button[data-v-3d629561]{background:var(--ink);color:var(--paper);cursor:pointer;font-family:var(--mono);letter-spacing:.05em;border:none;padding:7px 16px;font-size:11px;transition:opacity .15s}.action-button[data-v-3d629561]:hover{opacity:.8}.action-button[data-v-3d629561]:disabled{cursor:default;opacity:.3}.action-button--secondary[data-v-3d629561]{border:1px solid var(--ink-faint);color:var(--ink-light);background:0 0}.action-button--secondary[data-v-3d629561]:hover{border-color:var(--ink-light);color:var(--ink);opacity:1}.panel-output[data-v-3d629561]{background:var(--paper-warm);border:1px solid var(--ink-faint);height:min(50vh,420px);min-height:320px;color:var(--ink);padding:1rem;overflow:auto}.food-list[data-v-3d629561]{flex-direction:column;gap:.75rem;display:flex}.food-item[data-v-3d629561]{border-bottom:1px solid var(--ink-faint);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.food-item-main[data-v-3d629561]{min-width:0}.food-name[data-v-3d629561]{font-size:14px}.food-meta[data-v-3d629561]{color:var(--ink-light);font-family:var(--mono);margin-top:4px;font-size:11px}.empty-state[data-v-3d629561],.message[data-v-3d629561]{color:var(--ink-light);font-family:var(--mono);font-size:11px}.empty-state[data-v-3d629561]{color:var(--ink-faint);padding:.75rem 0;font-size:12px}@media (width<=640px){.panel-output[data-v-3d629561]{height:auto;min-height:220px}.actions[data-v-3d629561]{flex-direction:column}.action-button[data-v-3d629561]{width:100%}}@media (width>=641px) and (width<=768px){.panel-output[data-v-3d629561]{height:clamp(240px,35vh,300px);min-height:240px}}.food-panel[data-v-8e1261f8]{flex-direction:column;gap:.5rem;display:flex}.panel-label[data-v-8e1261f8]{color:var(--ink-light);font-family:var(--mono);margin-bottom:4px;font-size:11px}.panel-output[data-v-8e1261f8]{background:var(--paper-warm);border:1px solid var(--ink-faint);height:min(50vh,420px);min-height:320px;color:var(--ink);font-family:var(--mono);padding:1rem;font-size:12px;line-height:1.6;overflow:auto}.food-title[data-v-8e1261f8]{font-family:var(--serif);font-size:clamp(1.4rem,5vw,1.8rem);font-weight:400}.food-meta[data-v-8e1261f8]{color:var(--ink-light)}.action-button[data-v-8e1261f8]{background:var(--ink);color:var(--paper);cursor:pointer;font-family:var(--mono);letter-spacing:.05em;border:none;align-self:flex-start;padding:7px 16px;font-size:11px;transition:opacity .15s}.action-button[data-v-8e1261f8]:hover{opacity:.8}.action-button[data-v-8e1261f8]:disabled{cursor:default;opacity:.3}.message[data-v-8e1261f8]{color:var(--ink-light);font-family:var(--mono);font-size:11px}@media (width<=640px){.panel-output[data-v-8e1261f8]{height:auto;min-height:220px}}@media (width>=641px) and (width<=768px){.panel-output[data-v-8e1261f8]{height:clamp(240px,35vh,300px);min-height:240px}}.tool-header[data-v-78913475]{padding:clamp(1.5rem, 4vw, 2.5rem) var(--page-gutter);border-bottom:var(--line)}.tool-header-content[data-v-78913475]{width:min(100%, var(--content-max));margin-inline:auto}.back-link[data-v-78913475]{color:var(--ink-light);font-family:var(--mono);margin-bottom:1.5rem;font-size:11px;transition:color .15s;display:inline-block}.back-link[data-v-78913475]:hover{color:var(--ink)}.tool-meta[data-v-78913475]{align-items:flex-start;gap:clamp(1rem,3vw,1.5rem);display:flex}.tool-icon[data-v-78913475]{border:var(--line);width:48px;height:48px;color:var(--ink-light);font-family:var(--mono);object-fit:cover;flex-shrink:0;place-items:center;font-size:24px;display:grid}.tool-category[data-v-78913475]{color:var(--ink-faint);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:10px}.tool-title[data-v-78913475]{font-family:var(--serif);margin-bottom:.4rem;font-size:clamp(1.75rem,5vw,2rem);font-weight:400}.tool-description[data-v-78913475]{max-width:42rem;color:var(--ink-light);font-size:13px;line-height:1.6}@media (width<=640px){.tool-meta[data-v-78913475]{gap:1rem}}@media (width<=420px){.tool-meta[data-v-78913475]{flex-direction:column}}.tool-page[data-v-8776fa6e]{width:100%}.tool-content[data-v-8776fa6e]{width:min(100%, var(--content-max));padding:clamp(1.5rem, 5vw, 3rem) var(--page-gutter);margin-inline:auto}.food-layout[data-v-8776fa6e]{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,4vw,2.5rem);display:grid}@media (width<=768px){.food-layout[data-v-8776fa6e]{grid-template-columns:1fr}}.btn-31[data-v-1c0b3710],.btn-31[data-v-1c0b3710] *,.btn-31[data-v-1c0b3710] :after,.btn-31[data-v-1c0b3710] :before,.btn-31[data-v-1c0b3710]:after,.btn-31[data-v-1c0b3710]:before{box-sizing:border-box;border:0 solid}.btn-31[data-v-1c0b3710]{-webkit-tap-highlight-color:transparent;-webkit-appearance:button;color:#fff;cursor:pointer;background-color:#000;background-image:none;margin:0;padding:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:100%;font-weight:900;line-height:1.5;-webkit-mask-image:-webkit-radial-gradient(#000,#fff)}.btn-31[data-v-1c0b3710]:disabled{cursor:default}.btn-31[data-v-1c0b3710]:-moz-focusring{outline:auto}.btn-31 svg[data-v-1c0b3710]{vertical-align:middle;display:block}.btn-31 [hidden][data-v-1c0b3710]{display:none}.btn-31[data-v-1c0b3710]{text-transform:uppercase;border-width:1px;justify-content:center;align-items:center;width:120px;height:120px;padding:0;display:flex;position:relative;overflow:hidden}.btn-image[data-v-1c0b3710]{object-fit:cover;width:100%;height:100%;display:block}.btn-31[data-v-1c0b3710]:before{--progress:100%;-webkit-clip-path:polygon(100% 0, var(--progress) var(--progress), 0 100%, 100% 100%);clip-path:polygon(100% 0, var(--progress) var(--progress), 0 100%, 100% 100%);content:"";transition:clip-path .2s;position:absolute;inset:0}.btn-31[data-v-1c0b3710]:hover:before{--progress:0%}.btn-31 .text-container[data-v-1c0b3710]{display:block;position:relative;overflow:hidden}.btn-31 .text[data-v-1c0b3710]{mix-blend-mode:difference;font-weight:900;display:block;position:relative}.btn-31:hover .text[data-v-1c0b3710]{animation:.3s forwards move-up-alternate-1c0b3710}@keyframes move-up-alternate-1c0b3710{0%{transform:translateY(0)}50%{transform:translateY(80%)}51%{transform:translateY(-80%)}to{transform:translateY(0)}}.tool-page[data-v-38c9e108]{width:100%}.soundboard-content[data-v-38c9e108]{width:min(100%, var(--content-max));min-height:clamp(260px,35vh,380px);padding:clamp(1.5rem, 5vw, 3rem) var(--page-gutter);text-align:center;place-content:center;place-items:center;margin-inline:auto;display:grid}.playback-error[data-v-38c9e108]{color:var(--ink-light);font-family:var(--mono);margin-top:1rem;font-size:12px}
