/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-font-weight:initial}}}@layer theme{:root,:host{--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:"Geist Mono", ui-monospace, SFMono-Regular, monospace;--color-gray-500:oklch(55.1% .027 264.364);--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-bold:700;--default-font-family:"Geist", ui-sans-serif, system-ui, -apple-system, sans-serif;--default-mono-font-family:"Geist Mono", ui-monospace, SFMono-Regular, monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklch, var(--ring) 50%, transparent)}}::selection{background-color:var(--selection);color:var(--selection-foreground)}html{overscroll-behavior-y:none;scrollbar-gutter:stable;overflow-y:scroll}body{background-color:var(--background);min-height:100vh;color:var(--foreground);font-family:var(--font-sans);font-feature-settings:"rlig" 1, "calt" 1;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.flex-1{flex:1}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.border{border-style:var(--tw-border-style);border-width:1px}.py-20{padding-block:calc(var(--spacing) * 20)}.text-center{text-align:center}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-gray-500{color:var(--color-gray-500)}@media (width>=48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{--radius:.625rem;--background:oklch(100% 0 0);--header-glass-bg:#fff9;--foreground:oklch(14.1% .005 285.823);--card:oklch(100% 0 0);--card-foreground:oklch(14.1% .005 285.823);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.1% .005 285.823);--primary:oklch(21% .006 285.885);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(96.7% .001 286.375);--secondary-foreground:oklch(21% .006 285.885);--muted:oklch(96.7% .001 286.375);--muted-foreground:oklch(55.2% .016 285.938);--accent:oklch(96.7% .001 286.375);--accent-foreground:oklch(21% .006 285.885);--destructive:oklch(57.7% .245 27.325);--border:oklch(92% .004 286.32);--input:oklch(92% .004 286.32);--ring:oklch(70.5% .015 286.067);--selection:oklch(14.5% 0 0);--selection-foreground:oklch(100% 0 0)}.dark{--background:oklch(14.1% .005 285.823);--header-glass-bg:#14141699;--foreground:oklch(98.5% 0 0);--card:oklch(21% .006 285.885);--card-foreground:oklch(98.5% 0 0);--primary:oklch(92% .004 286.32);--primary-foreground:oklch(21% .006 285.885);--secondary:oklch(27.4% .006 286.033);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(27.4% .006 286.033);--muted-foreground:oklch(70.5% .015 286.067);--accent:oklch(27.4% .006 286.033);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.2% .016 285.938);--selection:oklch(92.2% 0 0);--selection-foreground:oklch(20.5% 0 0)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.global-loader-fade-enter-active,.global-loader-fade-leave-active{transition:opacity .22s}.global-loader-fade-enter-from,.global-loader-fade-leave-to{opacity:0}.global-loading-overlay{z-index:120;background:radial-gradient(circle at 50% 30%, var(--accent) 0%, transparent 52%), var(--background);place-items:center;padding:1rem;display:grid;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.global-loading-overlay{background:radial-gradient(circle at 50% 30%, color-mix(in oklch, var(--accent), transparent 22%) 0%, transparent 52%), color-mix(in oklch, var(--background) 78%, transparent)}}.global-loading-overlay{-webkit-backdrop-filter:blur(10px)saturate(1.05)}.global-loading-panel{border:1px solid var(--border);width:min(22rem,100vw - 2rem)}@supports (color:color-mix(in lab, red, red)){.global-loading-panel{border:1px solid color-mix(in oklch, var(--border), var(--foreground) 8%)}}.global-loading-panel{border-radius:calc(var(--radius) + 6px);text-align:center;background:linear-gradient(165deg, var(--card), var(--card));padding:1.1rem 1rem 1rem}@supports (color:color-mix(in lab, red, red)){.global-loading-panel{background:linear-gradient(165deg, color-mix(in oklch, var(--card), var(--accent) 8%), color-mix(in oklch, var(--card), transparent 6%))}}.global-loading-panel{box-shadow:0 24px 56px -36px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.global-loading-panel{box-shadow:0 24px 56px -36px color-mix(in oklch, var(--foreground) 34%, transparent)}}.global-loading-icon{color:var(--primary);margin:0 auto .625rem;animation:.95s linear infinite global-loader-spin;display:block}.global-loading-title{color:var(--foreground);margin:0;font-size:.84rem;font-weight:700}.global-loading-text{color:var(--muted-foreground);margin:.28rem 0 0;font-size:.74rem;line-height:1.5}.tool-page-fallback{border:1px dashed var(--border);min-height:13rem}@supports (color:color-mix(in lab, red, red)){.tool-page-fallback{border:1px dashed color-mix(in oklch, var(--border), var(--foreground) 12%)}}.tool-page-fallback{border-radius:calc(var(--radius) - 1px);background:linear-gradient(90deg, var(--muted) 25%, var(--accent) 45%, var(--muted) 65%) 0 0 / 220% 100%}@supports (color:color-mix(in lab, red, red)){.tool-page-fallback{background:linear-gradient(90deg, color-mix(in oklch, var(--muted), transparent 10%) 25%, color-mix(in oklch, var(--accent), transparent 10%) 45%, color-mix(in oklch, var(--muted), transparent 10%) 65%) 0 0 / 220% 100%}}.tool-page-fallback{animation:1.1s linear infinite tool-fallback-shimmer}@keyframes global-loader-spin{to{transform:rotate(360deg)}}@keyframes tool-fallback-shimmer{0%{background-position:0 0}to{background-position:220% 0}}@media (prefers-reduced-motion:reduce){.global-loading-icon,.tool-page-fallback{animation:none}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.container-fixed{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (width>=768px){.container-fixed{padding-left:1.5rem;padding-right:1.5rem}}@media (width>=1024px){.container-fixed{padding-left:2rem;padding-right:2rem}}.site-header{z-index:50;border-bottom:1px solid var(--border);background-color:var(--header-glass-bg);-webkit-backdrop-filter:blur(8px);width:100%;position:sticky;top:0}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}@supports (background-color:color-mix(in oklch, black, white)){.site-header{background-color:color-mix(in oklch, var(--background) 60%, transparent)}}.site-header-bar{align-items:center;gap:.5rem;min-height:3.5rem;padding-top:.625rem;padding-bottom:.625rem;display:flex}.site-brand-block{flex-direction:column;justify-content:center;gap:.125rem;min-width:0;display:flex}.site-brand{color:var(--foreground);letter-spacing:-.02em;font-size:1.0625rem;font-weight:700;text-decoration:none}.site-tagline{color:var(--muted-foreground);font-size:.75rem;line-height:1.4}.header-actions{align-self:flex-start;align-items:center;gap:.25rem;margin-left:auto;display:flex}.header-icon-button{border:1px solid var(--border);border-radius:calc(var(--radius) - 4px);background:var(--card);width:2.25rem;padding:0}@supports (color:color-mix(in lab, red, red)){.header-icon-button{background:color-mix(in oklch, var(--card) 88%, transparent)}}.header-icon-button:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.header-icon-button:hover{border-color:color-mix(in oklch, var(--foreground) 16%, var(--border))}}.header-icon{opacity:1;width:16px;height:16px}.home-intro{margin-bottom:1rem}.home-intro p{max-width:42rem;color:var(--muted-foreground);font-size:.875rem;line-height:1.6}.site-main-layout,.site-content{min-width:0}.category-sidebar{z-index:54;overscroll-behavior:contain;opacity:0;pointer-events:none;width:min(16rem,100vw - 1.8rem);max-height:calc(100vh - 6.4rem);transition:opacity .18s,transform .18s;position:fixed;top:5.35rem;left:max(.75rem,50vw - 640px + .25rem);overflow-y:auto;transform:translate(-1rem)scale(.98)}.category-sidebar.is-visible{opacity:1;pointer-events:auto;transform:translate(0)scale(1)}.category-sidebar-backdrop{z-index:53;background:var(--foreground);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.category-sidebar-backdrop{background:color-mix(in oklch, var(--foreground) 16%, transparent)}}.category-sidebar-backdrop{-webkit-backdrop-filter:blur(6px)}.category-sidebar-toggle{z-index:55;border:1px solid var(--foreground);justify-content:center;align-items:center;width:2.9rem;height:2.9rem;padding:0;display:inline-flex;position:fixed;top:5.35rem;left:max(.75rem,50vw - 640px - 2.9rem)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle{border:1px solid color-mix(in oklch, var(--foreground) 8%, var(--border))}}.category-sidebar-toggle{background:var(--card);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle{background:color-mix(in oklch, var(--card) 82%, transparent)}}.category-sidebar-toggle{-webkit-backdrop-filter:blur(14px);color:var(--foreground);box-shadow:0 16px 34px -24px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle{box-shadow:0 16px 34px -24px color-mix(in oklch, var(--foreground) 35%, transparent)}}.category-sidebar-toggle{cursor:pointer;transition:transform .15s,border-color .15s,background-color .15s,box-shadow .15s,left .18s,top .22s cubic-bezier(.22,1,.36,1)}.category-sidebar-toggle.is-home-top{top:5.35rem}.category-sidebar-toggle:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle:hover{border-color:color-mix(in oklch, var(--foreground) 18%, var(--border))}}.category-sidebar-toggle:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle:hover{background:color-mix(in oklch, var(--accent), var(--card) 60%)}}.category-sidebar-toggle:hover{box-shadow:0 20px 40px -24px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle:hover{box-shadow:0 20px 40px -24px color-mix(in oklch, var(--foreground) 40%, transparent)}}.category-sidebar-toggle:hover{transform:translateY(-1px)}.category-sidebar-toggle:active{transform:scale(.97)}.category-sidebar-toggle[aria-expanded=true]{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle[aria-expanded=true]{border-color:color-mix(in oklch, var(--foreground) 18%, var(--border))}}.category-sidebar-toggle[aria-expanded=true]{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle[aria-expanded=true]{background:color-mix(in oklch, var(--accent), var(--card) 58%)}}.category-sidebar-toggle[aria-expanded=true]{box-shadow:0 20px 40px -24px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-toggle[aria-expanded=true]{box-shadow:0 20px 40px -24px color-mix(in oklch, var(--foreground) 40%, transparent)}}.floating-page-back-button{top:5.35rem}.category-sidebar-toggle-label{white-space:nowrap;font-size:.76rem;font-weight:600}.category-sidebar-card{border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);background:linear-gradient(180deg, var(--card), var(--card)), var(--card);flex-direction:column;gap:.875rem;padding:.875rem;display:flex}@supports (color:color-mix(in lab, red, red)){.category-sidebar-card{background:linear-gradient(180deg, color-mix(in oklch, var(--card) 74%, transparent), color-mix(in oklch, var(--card) 60%, color-mix(in oklch, var(--foreground) 3%, transparent))), color-mix(in oklch, var(--card) 72%, transparent)}}.category-sidebar-card{-webkit-backdrop-filter:blur(18px)saturate(1.15);box-shadow:0 18px 42px -28px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-card{box-shadow:0 18px 42px -28px color-mix(in oklch, var(--foreground) 24%, transparent)}}.category-sidebar-head{flex-direction:column;gap:.2rem;display:flex}.category-sidebar-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--foreground);font-size:.72rem;font-weight:700}.category-sidebar-note{color:var(--muted-foreground);font-size:.75rem;line-height:1.5}.category-sidebar-nav{gap:.5rem;display:grid}.category-sidebar-link{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background:var(--background);justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.7rem .8rem;display:flex}@supports (color:color-mix(in lab, red, red)){.category-sidebar-link{background:color-mix(in oklch, var(--background), var(--card) 42%)}}.category-sidebar-link{color:var(--foreground);text-align:left;cursor:pointer;transition:border-color .15s,background-color .15s,transform .15s}.category-sidebar-link:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-link:hover{border-color:color-mix(in oklch, var(--foreground) 14%, var(--border))}}.category-sidebar-link:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-link:hover{background:color-mix(in oklch, var(--accent), var(--card) 50%)}}.category-sidebar-link:hover{transform:translate(1px)}.category-sidebar-link.is-active{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-link.is-active{border-color:color-mix(in oklch, var(--foreground) 18%, var(--border))}}.category-sidebar-link.is-active{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.category-sidebar-link.is-active{background:color-mix(in oklch, var(--accent), var(--card) 35%)}}.category-sidebar-link-main{align-items:center;gap:.625rem;min-width:0;font-size:.82rem;font-weight:600;display:inline-flex}.category-sidebar-icon{flex:none;width:15px;height:15px}.category-sidebar-count{background:var(--foreground);border-radius:999px;flex:none;min-width:1.8rem;padding:.18rem .45rem}@supports (color:color-mix(in lab, red, red)){.category-sidebar-count{background:color-mix(in oklch, var(--foreground) 8%, transparent)}}.category-sidebar-count{color:var(--muted-foreground);font-size:.7rem;font-family:var(--font-mono);text-align:center}.tool-categories{flex-direction:column;display:flex}.tool-category-group{flex-direction:column;scroll-margin-top:5.5rem;display:flex}.tool-category-row{border:1px solid var(--border);background:0 0;border-radius:0;grid-template-columns:repeat(2,1fr);display:grid;overflow:hidden}.tool-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);background:0 0;grid-template-columns:repeat(2,1fr);display:grid;overflow:hidden}.tool-category-row{border-bottom:0}@media (width>=640px){.tool-category-row,.tool-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){.category-sidebar.is-desktop{transform-origin:0 0;filter:blur(8px);transition:opacity .2s,transform .34s cubic-bezier(.22,1,.36,1),filter .34s;transform:translate(-1.75rem)translateY(.35rem)scale(.94)}.category-sidebar.is-desktop.is-visible{filter:blur();transform:translate(0)translateY(0)scale(1)}.category-sidebar-toggle.is-desktop{transition:transform .18s,border-color .15s,background-color .15s,box-shadow .15s,left .18s,top .22s cubic-bezier(.22,1,.36,1)}.tool-category-row,.tool-grid{grid-template-columns:repeat(4,1fr)}}@media (width<=1023px){.category-sidebar{width:auto;max-height:min(70vh,32rem);inset:auto .9rem 5rem;transform:translateY(1rem)scale(.98)}.category-sidebar.is-visible{transform:translateY(0)scale(1)}.category-sidebar-toggle{top:auto;bottom:1rem;left:.9rem}}@media (width<=639px){.category-sidebar-toggle-label{display:none}}.tool-category-card{cursor:default;background:var(--card);min-height:1.8rem;padding:.1rem .2rem}@supports (color:color-mix(in lab, red, red)){.tool-category-card{background:color-mix(in oklch, var(--card), var(--foreground) 3%)}}.tool-category-card{border-right:1px solid var(--border)}.tool-category-card:hover{background:var(--card)}@supports (color:color-mix(in lab, red, red)){.tool-category-card:hover{background:color-mix(in oklch, var(--card), var(--foreground) 3%)}}.tool-category-row .tool-category-card{text-align:center;flex-direction:row;justify-content:center;align-items:center;gap:.375rem;display:flex}.tool-category-icon{opacity:1;flex:none;width:14px;height:14px}.tool-category-name{color:var(--foreground);font-size:.875rem;font-weight:600;line-height:1.2}.tool-category-fill{background-color:var(--card);background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);grid-column:span 1;min-height:1.8rem}@supports (color:color-mix(in lab, red, red)){.tool-category-fill{background-image:linear-gradient(to right, color-mix(in oklch, var(--border) 45%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklch, var(--border) 45%, transparent) 1px, transparent 1px)}}.tool-category-fill{background-position:0 0;background-size:.625rem .625rem}@media (width>=640px){.tool-category-fill{grid-column:span 2}}@media (width>=1024px){.tool-category-fill{grid-column:span 3}}.tool-card{flex-direction:column;justify-content:center;align-items:center;gap:.375rem;display:flex}.tool-card:not(.tool-category-card){cursor:pointer;background:var(--card);text-align:center;-webkit-user-select:none;user-select:none;padding:1.5rem .75rem;transition:background-color .12s}.tool-grid .tool-card{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.tool-card:hover{background-color:var(--accent)}.tool-card-icon{font-family:var(--font-mono);color:var(--foreground);letter-spacing:.02em;font-size:1rem;font-weight:700;line-height:1}.tool-card-name{color:var(--muted-foreground);font-size:.75rem;line-height:1.3}.page-header{margin-bottom:1.5rem}.page-header h1{letter-spacing:-.02em;margin-bottom:.25rem;font-size:1.5rem;font-weight:700}.page-header p{color:var(--muted-foreground);font-size:.875rem;line-height:1.5}.site-main{min-height:calc(100vh - 10rem);padding-top:1.5rem;padding-bottom:2rem}@media (width>=768px){.site-main{padding-top:2rem;padding-bottom:2.5rem}}@media (width<=640px){.site-header-bar{align-items:flex-start}.site-tagline{font-size:.6875rem}.header-actions{align-self:center}}.tool-page-shell{padding-top:.125rem}.field-label{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.375rem;display:flex}.field-label-text{color:var(--foreground);font-size:.8125rem;font-weight:500}.field-label-hint{color:var(--muted-foreground);text-align:right;flex:none;font-size:.6875rem;line-height:1.4}.form-input{width:100%;height:2.25rem;font-size:.8125rem;font-family:var(--font-sans);color:var(--foreground);background:var(--background);border:1px solid var(--input);border-radius:calc(var(--radius) - 4px);padding:0 .75rem;transition:border-color .15s;display:block}.form-input:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--ring);outline:none}@supports (color:color-mix(in lab, red, red)){.form-input:focus{box-shadow:0 0 0 2px color-mix(in oklch, var(--ring) 20%, transparent)}}.form-input::placeholder{color:var(--muted-foreground);opacity:.5}textarea.form-input{resize:vertical;height:auto;min-height:6rem;font-family:var(--font-mono);padding:.5rem .75rem;line-height:1.5}textarea.form-input-lg{min-height:10rem}textarea.form-input-xl{min-height:14rem}textarea.form-input-sm{min-height:4rem}select.form-input{cursor:pointer;appearance:none;color:var(--foreground);background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){select.form-input{background-color:color-mix(in oklch, var(--card), var(--background) 25%)}}select.form-input{background-image:linear-gradient(45deg, transparent 50%, var(--muted-foreground) 50%), linear-gradient(135deg, var(--muted-foreground) 50%, transparent 50%), linear-gradient(to left, var(--accent), var(--accent))}@supports (color:color-mix(in lab, red, red)){select.form-input{background-image:linear-gradient(45deg, transparent 50%, color-mix(in oklch, var(--muted-foreground), var(--foreground) 12%) 50%), linear-gradient(135deg, color-mix(in oklch, var(--muted-foreground), var(--foreground) 12%) 50%, transparent 50%), linear-gradient(to left, color-mix(in oklch, var(--accent), transparent 8%), color-mix(in oklch, var(--accent), transparent 80%))}}select.form-input{border-color:var(--input);background-position:calc(100% - 1.05rem) 52%,calc(100% - .75rem) 52%,100% 0;background-repeat:no-repeat;background-size:.5rem .5rem,.5rem .5rem,2.8rem 100%}@supports (color:color-mix(in lab, red, red)){select.form-input{border-color:color-mix(in oklch, var(--input), var(--foreground) 10%)}}select.form-input{box-shadow:inset 0 1px 0 var(--background), 0 1px 2px var(--foreground)}@supports (color:color-mix(in lab, red, red)){select.form-input{box-shadow:inset 0 1px 0 color-mix(in oklch, var(--background), transparent 10%), 0 1px 2px color-mix(in oklch, var(--foreground) 4%, transparent)}}select.form-input{padding-right:3rem;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s}select.form-input:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){select.form-input:hover{border-color:color-mix(in oklch, var(--foreground) 16%, var(--input))}}select.form-input:hover{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){select.form-input:hover{background-color:color-mix(in oklch, var(--card), var(--accent) 22%)}}select.form-input:focus{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){select.form-input:focus{background-color:color-mix(in oklch, var(--card), var(--accent) 18%)}}select.form-input option,select.form-input optgroup{background:var(--card);color:var(--foreground)}.btn{border-radius:calc(var(--radius) - 4px);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.375rem;height:2.25rem;padding:0 1rem;font-size:.8125rem;font-weight:500;transition:all .12s;display:inline-flex}.btn-primary{background:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--secondary);color:var(--secondary-foreground)}.btn-secondary:hover{background:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.btn-secondary:hover{background:color-mix(in oklch, var(--secondary), var(--foreground) 10%)}}.btn-ghost{color:var(--foreground);background:0 0}.btn-ghost:hover{background:var(--accent)}.btn-outline{color:var(--foreground);border-color:var(--border);background:0 0}.btn-outline:hover{background:var(--accent);border-color:var(--foreground)}.btn-block{width:100%;display:flex}.btn-sm{height:2rem;padding:0 .625rem;font-size:.75rem}.btn-group{gap:.5rem;display:flex}.tag{border:1px solid var(--border);cursor:pointer;color:var(--muted-foreground);background:0 0;border-radius:9999px;align-items:center;padding:.125rem .625rem;font-size:.75rem;font-weight:500;transition:all .12s;display:inline-flex}.tag:hover{border-color:var(--foreground);color:var(--foreground)}.tag.active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.tag-row{flex-wrap:wrap;gap:.375rem;display:flex}.security-risk-banner{border:1px solid var(--destructive);align-items:flex-start;gap:.75rem;padding:.85rem .95rem;display:flex}@supports (color:color-mix(in lab, red, red)){.security-risk-banner{border:1px solid color-mix(in oklch, var(--destructive), var(--border) 30%)}}.security-risk-banner{border-radius:calc(var(--radius) - 2px);background:linear-gradient(135deg, var(--destructive), var(--card))}@supports (color:color-mix(in lab, red, red)){.security-risk-banner{background:linear-gradient(135deg, color-mix(in oklch, var(--destructive) 18%, transparent), color-mix(in oklch, var(--card), var(--destructive) 6%))}}.security-risk-banner{box-shadow:0 12px 28px -22px var(--destructive)}@supports (color:color-mix(in lab, red, red)){.security-risk-banner{box-shadow:0 12px 28px -22px color-mix(in oklch, var(--destructive) 50%, transparent)}}.security-risk-icon{color:var(--destructive);flex:none;margin-top:.1rem}@supports (color:color-mix(in lab, red, red)){.security-risk-icon{color:color-mix(in oklch, var(--destructive), var(--foreground) 12%)}}.security-risk-content{min-width:0}.security-risk-title{color:var(--destructive);margin:0;font-size:.8rem;font-weight:700}@supports (color:color-mix(in lab, red, red)){.security-risk-title{color:color-mix(in oklch, var(--destructive), var(--foreground) 15%)}}.security-risk-title{letter-spacing:.01em}.security-risk-text{color:var(--foreground);margin:.25rem 0 0;font-size:.775rem;line-height:1.55}@supports (color:color-mix(in lab, red, red)){.security-risk-text{color:color-mix(in oklch, var(--foreground), var(--destructive) 24%)}}@media (width<=640px){.security-risk-banner{gap:.625rem;padding:.75rem .8rem}.security-risk-title{font-size:.765rem}.security-risk-text{font-size:.74rem;line-height:1.5}}.result-box{background:var(--card);position:relative}@supports (color:color-mix(in lab, red, red)){.result-box{background:color-mix(in oklch, var(--card), var(--foreground) 5%)}}.result-box{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);font-family:var(--font-mono);word-break:break-all;white-space:pre-wrap;max-height:20rem;padding:.75rem 2.25rem .75rem 1rem;font-size:.8125rem;line-height:1.6;overflow-y:auto}.info-box{background:var(--card)}@supports (color:color-mix(in lab, red, red)){.info-box{background:color-mix(in oklch, var(--card), var(--foreground) 5%)}}.info-box{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);font-family:var(--font-mono);word-break:break-all;white-space:pre-wrap;padding:.75rem 1rem;font-size:.8125rem;line-height:1.6;overflow-y:auto}.result-box-lg{max-height:26rem}.color-preview{border:1px solid var(--border);border-radius:.5rem;width:100%;height:4rem}.key-focus{cursor:text;border:2px dashed var(--border);justify-content:center;align-items:center;min-height:100px;display:flex}.key-view{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.key-item{border:1px solid var(--border);background:var(--card);border-radius:.5rem;padding:.75rem}@supports (color:color-mix(in lab, red, red)){.key-item{background:color-mix(in oklch, var(--card), var(--background) 30%)}}.key-item{color:var(--foreground)}.ki-label{color:var(--muted-foreground);font-size:.75rem}.ki-value{word-break:break-all;margin-top:.25rem;font-weight:600}.diff-view{background:var(--card);min-height:3rem}@supports (color:color-mix(in lab, red, red)){.diff-view{background:color-mix(in oklch, var(--card), var(--background) 30%)}}.diff-view{border:1px solid var(--border);border-radius:.25rem;max-height:20rem;padding:0;overflow:auto}.diff-compare{min-width:0}.diff-status{color:var(--muted-foreground);padding:.75rem 1rem 0;font-size:.75rem}.diff-head{background:var(--border);border-top-left-radius:.25rem;border-top-right-radius:.25rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid;overflow:hidden}.diff-head-cell{background:var(--muted);color:var(--muted-foreground);padding:.625rem .875rem;font-size:.75rem;font-weight:600}.diff-body{background:var(--border);gap:1px;display:grid}.diff-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;display:grid}.diff-cell{background:var(--card);min-height:2.5rem;color:var(--foreground);white-space:pre-wrap;word-break:break-word;grid-template-columns:3rem minmax(0,1fr);align-items:start;gap:.75rem;padding:.55rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.75rem;line-height:1.65;display:grid}.diff-cell-rem{background:#ef444414}.diff-cell-add{background:#22c55e14}.diff-cell-empty{background:var(--card)}@supports (color:color-mix(in lab, red, red)){.diff-cell-empty{background:color-mix(in oklch, var(--card), var(--background) 50%)}}.diff-cell-num{color:var(--muted-foreground);text-align:right;-webkit-user-select:none;user-select:none}.diff-cell-content{min-width:0}.diff-inline-fragment{border-radius:.2rem;padding:.05rem .08rem}.diff-inline-add{background:#22c55e2e}.diff-inline-rem{background:#ef44442e;text-decoration:line-through}.diff-empty{color:var(--muted-foreground);font-style:italic}.diff-missing{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.diff-missing{color:color-mix(in oklch, var(--muted-foreground), transparent 30%)}}.site-footer{border-top:1px solid var(--border);background:linear-gradient(to bottom, var(--card), transparent 60%), var(--background);margin-top:auto;padding:2rem 0 2.25rem}@supports (color:color-mix(in lab, red, red)){.site-footer{background:linear-gradient(to bottom, color-mix(in oklch, var(--card) 88%, transparent), transparent 60%), var(--background)}}.site-footer-inner{flex-direction:column;align-items:center;gap:.625rem;display:flex}.site-footer-copy{letter-spacing:.02em;color:var(--muted-foreground);margin:0;font-size:.75rem}.site-footer-copy span{color:var(--foreground);font-weight:600}.site-footer-open-source{text-align:center;color:var(--muted-foreground);margin:0;font-size:.78rem;line-height:1.65}.site-footer-note{color:var(--muted-foreground);margin:0;font-size:.75rem}.site-footer-note-link{color:var(--foreground);text-underline-offset:.14em;font-weight:500;text-decoration:underline}.site-footer-note-link:hover{text-decoration:underline}.site-footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.site-footer-link{border:1px solid var(--border);justify-content:center;align-items:center;min-height:1.875rem;padding:.375rem .75rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.site-footer-link{border:1px solid color-mix(in oklch, var(--border) 82%, var(--foreground) 18%)}}.site-footer-link{color:var(--muted-foreground);background:var(--card);border-radius:999px;font-size:.75rem;font-weight:500}@supports (color:color-mix(in lab, red, red)){.site-footer-link{background:color-mix(in oklch, var(--card) 92%, transparent)}}.site-footer-link{transition:border-color .15s,color .15s,background-color .15s}.site-footer-link:hover{opacity:1;color:var(--foreground);border-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.site-footer-link:hover{border-color:color-mix(in oklch, var(--foreground) 26%, var(--border))}}.site-footer-link:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.site-footer-link:hover{background:color-mix(in oklch, var(--accent) 60%, var(--card))}}@media (width<=640px){.site-footer-inner{gap:.75rem}.site-footer-links,.site-footer-link{width:100%}}.search-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:oklch(0% none none/.5);justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.search-dialog{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:32rem;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.search-input{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--foreground);font-size:.875rem;font-family:var(--font-sans);background:0 0;padding:.75rem 1rem}.search-input:focus{outline:none}.search-input::placeholder{color:var(--muted-foreground)}.search-results{max-height:18rem;padding:.5rem;overflow-y:auto}.search-item{border-radius:calc(var(--radius) - 6px);cursor:pointer;align-items:center;gap:.75rem;padding:.5rem .75rem;transition:background-color .1s;display:flex}.search-item:hover{background:var(--accent)}.sr-icon{font-family:var(--font-mono);text-align:center;width:2rem;color:var(--muted-foreground);font-size:.75rem;font-weight:700}.sr-name{flex:1;font-size:.8125rem;font-weight:500}.sr-cat{color:var(--muted-foreground);font-size:.6875rem}a{color:var(--foreground);text-decoration:none}a:hover{opacity:.8}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.text-center{text-align:center}.flex{display:flex}.items-center{align-items:center}.gap-2{gap:.5rem}.flex-1{flex:1}.text-sm{font-size:.8125rem}.underline{text-decoration:underline}.opacity-60{opacity:.6}.color-picker-input{appearance:none;border:1px solid var(--border);border-radius:calc(var(--radius) - 4px);cursor:pointer;background:0 0;width:2.5rem;height:2.25rem;padding:2px}.color-picker-input::-webkit-color-swatch-wrapper{padding:0}.color-picker-input::-webkit-color-swatch{border:none;border-radius:2px}.check-row{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.check-label{align-items:center;gap:.25rem;display:flex}.check-label input[type=checkbox]{accent-color:var(--foreground);cursor:pointer;width:.875rem;height:.875rem}input[type=datetime-local]{width:100%;height:2.25rem;font-size:.8125rem;font-family:var(--font-sans);color:var(--foreground);background:var(--background);border:1px solid var(--input);border-radius:calc(var(--radius) - 4px);padding:0 .75rem;transition:border-color .15s;display:block}input[type=datetime-local]:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--ring);outline:none}@supports (color:color-mix(in lab, red, red)){input[type=datetime-local]:focus{box-shadow:0 0 0 2px color-mix(in oklch, var(--ring) 20%, transparent)}}.result-box{min-height:2.5rem;padding-right:2.5rem!important}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}
