@charset "UTF-8";:root{--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--page-max-width: 70rem;--page-gutter: 1rem;--touch-target: 2.75rem}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 2rem;--space-8: 2.5rem;--space-9: 3rem;--space-10: 4rem;--space-section: var(--space-6);--space-card: var(--space-4);--space-stack: var(--space-3)}@media(min-width:768px){:root{--space-section: var(--space-8);--space-card: var(--space-5)}}:root{--tool-editor-viewport-height: min(18rem, 58vh)}@media(min-width:768px){:root{--tool-editor-viewport-height: min(22rem, 70vh)}}:root{--radius-small: .55rem;--radius-medium: .9rem;--radius-large: 1.25rem;--radius-pill: 999px}:root{--font-family-base: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-mono: Consolas, "Courier New", monospace;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.25rem;--font-size-2xl: clamp(1.375rem, 1.15rem + 1.4vw, 1.9rem);--font-size-3xl: clamp(1.75rem, 1.45rem + 1.8vw, 2.15rem);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.55}:root{--shadow-small: 0 4px 14px rgb(15 23 42 / .05);--shadow-medium: 0 8px 24px rgb(15 23 42 / .06);--shadow-large: 0 14px 32px rgb(15 23 42 / .1)}:root{--motion-fast: .12s;--motion-base: .18s;--motion-slow: .28s;--ease-standard: cubic-bezier(.2, .8, .2, 1);--ease-emphasized: cubic-bezier(.2, .9, .3, 1);--transition-color: color var(--motion-base) var(--ease-standard), background-color var(--motion-base) var(--ease-standard), border-color var(--motion-base) var(--ease-standard);--transition-elevate: transform var(--motion-base) var(--ease-emphasized), box-shadow var(--motion-base) var(--ease-standard), border-color var(--motion-base) var(--ease-standard);--transition-focus: border-color var(--motion-base) var(--ease-standard), box-shadow var(--motion-base) var(--ease-standard)}:root{--z-base: 1;--z-sticky: 10;--z-dropdown: 30;--z-search-panel: 40;--z-overlay: 50;--z-toast: 60}:root{--radius-sm: var(--radius-small);--radius-md: var(--radius-medium);--radius-lg: var(--radius-large);--shadow-sm: var(--shadow-small);--shadow-md: var(--shadow-medium);--shadow-lg: var(--shadow-large)}:root{color-scheme:light;--color-primary: #4f46e5;--color-primary-hover: #4338ca;--color-primary-soft: #eef2ff;--color-on-primary: #ffffff;--color-secondary: #06b6d4;--color-secondary-soft: #ecfeff;--background: #f8fafc;--surface: #ffffff;--card: #ffffff;--card-hover: #ffffff;--hover-background: #f1f5f9;--surface-muted: #f1f5f9;--border: #e2e8f0;--border-strong: #cbd5e1;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--badge-background: #f1f5f9;--badge-text: #475569;--badge-accent-background: #eef2ff;--badge-accent-text: #4338ca;--button-background: var(--color-primary);--button-hover: var(--color-primary-hover);--button-text: var(--color-on-primary);--focus-ring: rgb(79 70 229 / .28);--shadow-small: 0 4px 14px rgb(15 23 42 / .05);--shadow-medium: 0 8px 24px rgb(15 23 42 / .06);--shadow-large: 0 14px 32px rgb(15 23 42 / .1);--color-success: #15803d;--color-success-soft: #e6f5eb;--color-warning: #b45309;--color-warning-soft: #f8ecd8;--color-danger: #dc2626;--color-danger-soft: #f8e8e6;--color-info: var(--color-primary);--color-info-soft: var(--color-primary-soft);--jwt-header: #dc2626;--jwt-header-soft: #f8e8e6;--jwt-payload: #15803d;--jwt-payload-soft: #e6f5eb;--jwt-signature: #2563eb;--jwt-signature-soft: #dbeafe;--jwt-separator: #64748b;--bg: var(--background);--text: var(--text-primary);--text-soft: var(--text-secondary);--primary: var(--color-primary);--primary-hover: var(--color-primary-hover);--primary-soft: var(--color-primary-soft);--on-primary: var(--color-on-primary);--secondary: var(--color-secondary);--secondary-soft: var(--color-secondary-soft);--hover-bg: var(--hover-background);--shadow: var(--shadow-medium);--shadow-hover: var(--shadow-large);--sage: var(--color-primary);--sage-deep: var(--color-primary-hover);--sage-forest: var(--color-primary-hover);--sage-soft: var(--color-primary-soft);--terracotta: var(--color-primary);--success: var(--color-success);--success-soft: var(--color-success-soft);--on-success: var(--color-success);--warning: var(--color-warning);--warning-soft: var(--color-warning-soft);--on-warning: var(--color-warning);--danger: var(--color-danger);--danger-soft: var(--color-danger-soft);--on-danger: var(--color-danger);--info: var(--color-info);--info-soft: var(--color-info-soft);--on-info: var(--color-primary-hover);--overlay-scrim: color-mix(in srgb, var(--text-primary) 42%, transparent)}body.dark{color-scheme:dark;--color-primary: #6366f1;--color-primary-hover: #4f46e5;--color-primary-soft: #1e3a8a;--color-on-primary: #ffffff;--color-secondary: #22d3ee;--color-secondary-soft: rgb(34 211 238 / .12);--background: #020617;--surface: #0f172a;--card: #1e293b;--card-hover: #1e293b;--hover-background: #1e293b;--surface-muted: #1e293b;--border: #334155;--border-strong: #475569;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--badge-background: #1e293b;--badge-text: #f1f5f9;--badge-accent-background: rgb(99 102 241 / .28);--badge-accent-text: #e0e7ff;--button-background: var(--color-primary);--button-hover: var(--color-primary-hover);--button-text: var(--color-on-primary);--focus-ring: rgb(99 102 241 / .4);--shadow-small: 0 6px 16px rgb(2 6 23 / .4);--shadow-medium: 0 16px 40px rgb(2 6 23 / .55);--shadow-large: 0 20px 44px rgb(2 6 23 / .65);--color-success: #4ade80;--color-success-soft: rgb(74 222 128 / .14);--color-warning: #fbbf24;--color-warning-soft: rgb(251 191 36 / .14);--color-danger: #f87171;--color-danger-soft: rgb(248 113 113 / .14);--color-info: var(--color-primary);--color-info-soft: var(--color-primary-soft);--jwt-header: #f87171;--jwt-header-soft: rgb(248 113 113 / .16);--jwt-payload: #4ade80;--jwt-payload-soft: rgb(74 222 128 / .16);--jwt-signature: #60a5fa;--jwt-signature-soft: rgb(96 165 250 / .16);--jwt-separator: #94a3b8;--bg: var(--background);--text: var(--text-primary);--text-soft: var(--text-secondary);--primary: var(--color-primary);--primary-hover: var(--color-primary-hover);--primary-soft: var(--color-primary-soft);--on-primary: var(--color-on-primary);--secondary: var(--color-secondary);--secondary-soft: var(--color-secondary-soft);--hover-bg: var(--hover-background);--shadow: var(--shadow-medium);--shadow-hover: var(--shadow-large);--sage: var(--color-primary);--sage-deep: var(--color-primary-hover);--sage-forest: var(--color-primary);--sage-soft: var(--color-primary-soft);--terracotta: var(--color-primary);--success: var(--color-success);--success-soft: var(--color-success-soft);--on-success: #4ade80;--warning: var(--color-warning);--warning-soft: var(--color-warning-soft);--on-warning: #fbbf24;--danger: var(--color-danger);--danger-soft: var(--color-danger-soft);--on-danger: #f87171;--info: var(--color-info);--info-soft: var(--color-info-soft);--on-info: #e0e7ff;--overlay-scrim: color-mix(in srgb, var(--background) 62%, transparent)}*,*:before,*:after{box-sizing:border-box}html,body{min-height:100%}html{scroll-padding-top:5.5rem}body{margin:0;max-width:100%}@media(min-width:768px){html{scroll-padding-top:6.5rem}}@media(min-width:1024px){html{scroll-padding-top:5.5rem}}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}img,svg,video,canvas{display:block;max-width:100%;height:auto}pre,code{max-width:100%}body{font-family:var(--font-family-base);font-size:var(--font-size-md);line-height:var(--line-height-normal);background:var(--background);color:var(--text-primary);transition:background-color var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard)}h1,h2,h3,h4,p{margin-top:0}h1{font-size:var(--font-size-3xl);line-height:var(--line-height-tight);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-2xl);line-height:var(--line-height-tight);font-weight:var(--font-weight-bold)}h3{font-size:var(--font-size-xl);line-height:var(--line-height-snug);font-weight:var(--font-weight-semibold)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
