:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;height:100vh;margin:0;padding:0;overflow:hidden}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.app-root{height:100vh;display:flex;flex-direction:column;overflow:hidden}.site-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.05);flex-shrink:0}.mobile-menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.1);color:inherit;font-size:1.5rem;padding:.5rem .75rem;cursor:pointer;border-radius:6px;line-height:1}.mobile-menu-toggle:hover{background:#ffffff0d}.layout{display:flex;flex:1;overflow:hidden}.sidebar{width:280px;background:#ffffff05;border-right:1px solid rgba(255,255,255,.05);padding:1rem;color:inherit;overflow-y:auto;flex-shrink:0}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.nav-item{width:100%}.nav-button{width:100%;text-align:left;background:transparent;border:none;color:inherit;padding:.75rem 1rem;border-radius:6px;cursor:pointer;font-size:1rem}.nav-button:hover{background:#ffffff08}.nav-item.active .nav-button{background:linear-gradient(90deg,#646cff1f,#646cff0f);box-shadow:0 1px #0000004d inset;font-weight:600}.content{flex:1;padding:1.5rem;color:inherit;overflow-y:auto;overflow-x:hidden}.placeholder h2{margin-top:0}@media (max-width: 768px){.mobile-menu-toggle{display:block}.sidebar{position:fixed;top:0;left:-280px;height:100vh;z-index:1000;transition:left .3s ease;background:#242424;border-right:1px solid rgba(255,255,255,.1);box-shadow:2px 0 10px #00000080}.sidebar.mobile-open{left:0}.content{padding:1rem}.site-header{padding:.75rem 1rem}}@media (prefers-color-scheme: light){.sidebar{background:#fff}}.processor{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pane{background:#00000040;border:1px solid rgba(255,255,255,.03);padding:1rem;border-radius:8px;display:flex;flex-direction:column;min-height:260px}.pane h3{margin:0 0 .75rem;font-size:1.1rem}.input-area,.output-area{flex:1 1 auto;width:90%;resize:vertical;min-height:160px;background:#ffffff05;color:inherit;border:1px solid rgba(255,255,255,.03);border-radius:8px;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Roboto Mono,Courier New,monospace;font-size:.95rem}.controls{display:flex;gap:.75rem;margin-top:.85rem}.controls.right{margin-left:auto}.btn{padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.03);background:#0000004d;color:inherit;cursor:pointer}.btn.primary{background:linear-gradient(90deg,#3b82f6,#6366f1);color:#fff;border:none}.btn.danger{background:linear-gradient(90deg,#7f1d1d,#991b1b);color:#fff;border:none}.error{margin-top:.5rem;color:#ffb4b4;font-size:.95rem}@media (max-width: 920px){.processor{grid-template-columns:1fr}}.jwt-page h2{margin:0 0 .25rem}.jwt-page .muted{color:#aaa;margin-bottom:1rem}.jwt-container{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.jwt-input textarea{width:90%;min-height:160px;padding:.75rem;border-radius:8px;border:1px solid rgba(255,255,255,.03);background:#ffffff05;color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Roboto Mono,Courier New,monospace}.jwt-output .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.jwt-output section h4{margin:0 0 .5rem}@media (max-width: 920px){.jwt-container,.jwt-output .grid{grid-template-columns:1fr}}.jwt-page{padding:1rem 0}.jwt-page .max-w-6xl{margin:0 auto}.pane{background:#ffffff05;border-radius:8px;padding:1rem;border:1px solid rgba(255,255,255,.03)}.input-area{width:90%;min-height:120px;resize:vertical;padding:.75rem;border-radius:8px;border:1px solid rgba(255,255,255,.03);background:#ffffff05;color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Roboto Mono,Courier New,monospace}.jwt-container{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.jwt-page .error{background:#ff00000f;color:#ffb4b4;border:1px solid rgba(255,0,0,.08);padding:.75rem 1rem;border-radius:8px;margin-top:1rem}@media (max-width: 920px){.jwt-container{grid-template-columns:1fr}}.site-heading{font-size:1.5rem;font-weight:700;margin:0;color:inherit}@media (min-width: 768px){.site-heading{font-size:1.75rem}}
