:root{--color-bg: #080808;--color-bg-subtle: #0A0A0A;--color-bg-ink: #050506;--color-surface: #0A0A0A;--color-surface-hover: #0f0f0f;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .15);--color-text: #EDEDEF;--color-text-muted: #A1A1AA;--color-text-subtle: #71717A;--color-text-subtle-invert: #A1A1AA;--color-text-invert: #EDEDEF;--color-brand: #2563eb;--color-brand-hover: #1d4ed8;--color-brand-subtle: rgba(37, 99, 235, .12);--color-brand-gradient: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #3b82f6;--color-local-badge: #10b981;--color-network-badge: #3b82f6;--color-hero-bg: radial-gradient(ellipse at top, rgba(37, 99, 235, .12) 0%, transparent 60%), radial-gradient(ellipse at bottom right, rgba(99, 102, 241, .08) 0%, transparent 50%);--color-card-shadow: 0 1px 3px 0 rgb(0 0 0 / .4), inset 0 1px 0 0 rgb(255 255 255 / .03);--color-card-shadow-hover: 0 10px 25px -3px rgb(0 0 0 / .6), 0 4px 6px -4px rgb(0 0 0 / .4), inset 0 1px 0 0 rgb(255 255 255 / .05);--color-header-bg: rgba(8, 8, 8, .8);--color-search-bg: rgba(10, 10, 10, .6);--color-output-bg: #0f0f0f;--color-hover-overlay: rgba(255, 255, 255, .05);--color-shine: rgba(255, 255, 255, .04);--font-family-sans: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-line-height-tight: 1.2;--font-line-height-base: 1.6;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-none: 0;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.25rem;--radius-full: 9999px;--shadow-none: none;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .4);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .5), 0 2px 4px -2px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .6), 0 4px 6px -4px rgb(0 0 0 / .4);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .7), 0 8px 10px -6px rgb(0 0 0 / .5)}:root[data-theme=light]{--color-bg: #ffffff;--color-bg-subtle: #f9f9fb;--color-bg-ink: #f3f4f6;--color-surface: #f9f9fb;--color-surface-hover: #f3f4f6;--color-border: rgba(0, 0, 0, .08);--color-border-strong: rgba(0, 0, 0, .15);--color-text: #18181b;--color-text-muted: #52525b;--color-text-subtle: #71717a;--color-text-subtle-invert: #52525b;--color-text-invert: #18181b;--color-brand: #2563eb;--color-brand-hover: #1d4ed8;--color-brand-subtle: rgba(37, 99, 235, .08);--color-brand-gradient: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--color-success: #059669;--color-warning: #d97706;--color-danger: #dc2626;--color-info: #2563eb;--color-local-badge: #059669;--color-network-badge: #2563eb;--color-hero-bg: radial-gradient(ellipse at top, rgba(37, 99, 235, .08) 0%, transparent 60%), radial-gradient(ellipse at bottom right, rgba(99, 102, 241, .05) 0%, transparent 50%);--color-card-shadow: 0 1px 3px 0 rgb(0 0 0 / .06), 0 1px 2px -1px rgb(0 0 0 / .04);--color-card-shadow-hover: 0 10px 25px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .06);--color-header-bg: rgba(255, 255, 255, .8);--color-search-bg: rgba(255, 255, 255, .6);--color-output-bg: #f3f4f6;--color-hover-overlay: rgba(0, 0, 0, .04);--color-shine: rgba(0, 0, 0, .04);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .08), 0 2px 4px -2px rgb(0 0 0 / .04);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .05);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .12), 0 8px 10px -6px rgb(0 0 0 / .08)}@media (prefers-color-scheme: light){:root:not([data-theme=dark]){--color-bg: #ffffff;--color-bg-subtle: #f9f9fb;--color-bg-ink: #f3f4f6;--color-surface: #f9f9fb;--color-surface-hover: #f3f4f6;--color-border: rgba(0, 0, 0, .08);--color-border-strong: rgba(0, 0, 0, .15);--color-text: #18181b;--color-text-muted: #52525b;--color-text-subtle: #71717a;--color-text-subtle-invert: #52525b;--color-text-invert: #18181b;--color-brand: #2563eb;--color-brand-hover: #1d4ed8;--color-brand-subtle: rgba(37, 99, 235, .08);--color-brand-gradient: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--color-success: #059669;--color-warning: #d97706;--color-danger: #dc2626;--color-info: #2563eb;--color-local-badge: #059669;--color-network-badge: #2563eb;--color-hero-bg: radial-gradient(ellipse at top, rgba(37, 99, 235, .08) 0%, transparent 60%), radial-gradient(ellipse at bottom right, rgba(99, 102, 241, .05) 0%, transparent 50%);--color-card-shadow: 0 1px 3px 0 rgb(0 0 0 / .06), 0 1px 2px -1px rgb(0 0 0 / .04);--color-card-shadow-hover: 0 10px 25px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .06);--color-header-bg: rgba(255, 255, 255, .8);--color-search-bg: rgba(255, 255, 255, .6);--color-output-bg: #f3f4f6;--color-hover-overlay: rgba(0, 0, 0, .04);--color-shine: rgba(0, 0, 0, .04);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .08), 0 2px 4px -2px rgb(0 0 0 / .04);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .05);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .12), 0 8px 10px -6px rgb(0 0 0 / .08)}}html{font-family:var(--font-family-sans);color:var(--color-text);background:var(--color-bg);line-height:var(--font-line-height-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}a{color:var(--color-brand);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.tool{display:flex;flex-direction:column;gap:var(--space-3)}.tool-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.tool-input,.tool-output{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-family-mono);font-size:var(--font-size-base);background:var(--color-surface);color:var(--color-text);resize:vertical;transition:border-color .2s,box-shadow .2s}.tool-output{background:var(--color-output-bg);color:var(--color-text-muted)}.tool-input:focus,.tool-output:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #2563eb2e}.tool-actions{display:flex;gap:var(--space-2)}.tool-btn{padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s}.tool-btn:hover:not(:disabled){background:var(--color-brand-subtle);border-color:var(--color-brand);color:var(--color-brand);box-shadow:0 0 0 1px #2563eb33}.tool-btn:disabled{opacity:.5;cursor:not-allowed}.tool-error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.tool-number,.tool-input-text{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-family-mono)}.tool-number{width:6rem}.tool-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:var(--space-3)}.tool-stat{text-align:center;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle)}.tool-stat-value{display:block;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-brand)}.tool-stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.tool-color-preview{width:100%;height:4rem;border-radius:var(--radius-md);border:1px solid var(--color-border)}.tool-rgb{display:flex;gap:var(--space-2)}.tool-rgb input{width:5rem;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text)}.tool-output-text{font-family:var(--font-family-mono);color:var(--color-text-muted);margin:0}.ft-header[data-astro-cid-hpnw4vwy]{border-bottom:1px solid var(--color-border);background:var(--color-header-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);position:sticky;top:0;z-index:50}.ft-header-inner[data-astro-cid-hpnw4vwy]{max-width:75rem;margin:0 auto;padding:var(--space-3) var(--space-4);display:flex;align-items:center;gap:var(--space-4)}.ft-brand[data-astro-cid-hpnw4vwy]{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);text-decoration:none;flex-shrink:0;letter-spacing:-.02em}.ft-brand[data-astro-cid-hpnw4vwy]:hover{text-decoration:none}.ft-brand-name[data-astro-cid-hpnw4vwy]{background:var(--color-brand-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--color-brand)}.ft-search[data-astro-cid-hpnw4vwy]{flex:1;max-width:32rem}.ft-search-input[data-astro-cid-hpnw4vwy]{width:100%;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);color:var(--color-text);background:var(--color-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2371717A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat .75rem center;transition:all .2s}.ft-search-input[data-astro-cid-hpnw4vwy]::placeholder{color:var(--color-text-subtle)}.ft-search-input[data-astro-cid-hpnw4vwy]:focus{outline:none;border-color:var(--color-brand);background-color:var(--color-surface);box-shadow:0 0 0 3px #2563eb2e}.ft-nav[data-astro-cid-hpnw4vwy]{display:flex;gap:var(--space-1);flex-shrink:0}.ft-nav-link[data-astro-cid-hpnw4vwy]{color:var(--color-text-muted);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:all .2s}.ft-nav-link[data-astro-cid-hpnw4vwy]:hover{color:var(--color-text);background:var(--color-hover-overlay);text-decoration:none}.ft-theme-toggle[data-astro-cid-hpnw4vwy]{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:all .2s;flex-shrink:0}.ft-theme-toggle[data-astro-cid-hpnw4vwy]:hover{color:var(--color-text);background:var(--color-hover-overlay);border-color:var(--color-border-strong)}[data-theme=dark] .ft-theme-icon-dark[data-astro-cid-hpnw4vwy],[data-theme=light] .ft-theme-icon-light[data-astro-cid-hpnw4vwy]{display:none}@media (max-width: 48rem){.ft-nav[data-astro-cid-hpnw4vwy]{display:none}.ft-search[data-astro-cid-hpnw4vwy]{max-width:none}}.ft-footer[data-astro-cid-k2f5zb5c]{background:var(--color-bg-ink);color:var(--color-text-muted);margin-top:var(--space-24);border-top:1px solid var(--color-border)}.ft-footer-inner[data-astro-cid-k2f5zb5c]{max-width:75rem;margin:0 auto;padding:var(--space-12) var(--space-4) var(--space-8);display:grid;grid-template-columns:1fr 2fr;gap:var(--space-8)}.ft-footer-logo[data-astro-cid-k2f5zb5c]{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);text-decoration:none;margin-bottom:var(--space-2);letter-spacing:-.02em}.ft-footer-logo-text[data-astro-cid-k2f5zb5c]{background:var(--color-brand-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--color-brand)}.ft-footer-tagline[data-astro-cid-k2f5zb5c]{color:var(--color-text-subtle-invert);font-size:var(--font-size-sm);margin:0}.ft-footer-links[data-astro-cid-k2f5zb5c]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.ft-footer-col[data-astro-cid-k2f5zb5c] h2[data-astro-cid-k2f5zb5c]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3);color:var(--color-text)}.ft-footer-col[data-astro-cid-k2f5zb5c] a[data-astro-cid-k2f5zb5c]{display:block;color:var(--color-text-subtle-invert);text-decoration:none;font-size:var(--font-size-sm);margin-bottom:var(--space-2);transition:color .2s}.ft-footer-col[data-astro-cid-k2f5zb5c] a[data-astro-cid-k2f5zb5c]:hover{color:var(--color-brand);text-decoration:none}.ft-footer-bottom[data-astro-cid-k2f5zb5c]{border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-4);text-align:center}.ft-footer-bottom[data-astro-cid-k2f5zb5c] p[data-astro-cid-k2f5zb5c]{color:var(--color-text-subtle-invert);font-size:var(--font-size-sm);margin:0}@media (max-width: 48rem){.ft-footer-inner[data-astro-cid-k2f5zb5c]{grid-template-columns:1fr;gap:var(--space-6)}.ft-footer-links[data-astro-cid-k2f5zb5c]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 30rem){.ft-footer-links[data-astro-cid-k2f5zb5c]{grid-template-columns:1fr 1fr}}.ft-skip-link[data-astro-cid-jvyhto63]{position:absolute;top:-100px;left:0;background:var(--color-surface);color:var(--color-text);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);z-index:1000;transition:top .2s}.ft-skip-link[data-astro-cid-jvyhto63]:focus{top:0}.ft-main[data-astro-cid-jvyhto63]{max-width:75rem;margin:0 auto;padding:var(--space-6) var(--space-4)}.ft-breadcrumb[data-astro-cid-jvyhto63]{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.ft-breadcrumb[data-astro-cid-jvyhto63] a[data-astro-cid-jvyhto63]{color:var(--color-text-muted)}.ft-breadcrumb[data-astro-cid-jvyhto63] a[data-astro-cid-jvyhto63]:hover{color:var(--color-brand)}
