@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Space+Grotesk:wght@400;500;600;700&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--base:#0f1117;--surface-50:#13151d;--surface-100:#181a24;--surface-200:#1e2130;--surface-300:#252838;--surface-alt:#0c0d13;--ink-primary:#e4e4e9;--ink-secondary:#a1a1b5;--ink-tertiary:#6b6b80;--ink-muted:#44445a;--edge:#ffffff0f;--edge-subtle:#ffffff08;--edge-strong:#ffffff1f;--edge-focus:#e8a63480;--amber:#e8a634;--amber-dim:#c88a20;--amber-glow:#e8a6341f;--amber-ghost:#e8a6340f;--electric:#5b9bf5;--electric-dim:#5b9bf526;--mint:#4ade80;--mint-dim:#4ade801f;--brick:#f07178;--brick-dim:#f071781f;--diff-add-bg:#4ade8014;--diff-add-border:#4ade8033;--diff-add-text:#6ee7a0;--diff-del-bg:#f0717814;--diff-del-border:#f0717833;--diff-del-text:#f5999e;--font-ui:"Space Grotesk", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--text-xs:.6875rem;--text-sm:.8125rem;--text-base:.9375rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.12s;--duration-normal:.2s}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-ui);background:var(--base);color:var(--ink-primary);min-height:100dvh;line-height:1.5}#root{flex-direction:column;min-height:100dvh;display:flex}::selection{background:var(--amber-glow);color:var(--amber)}:focus-visible{outline:2px solid var(--edge-focus);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--edge-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}textarea,pre,code{font-family:var(--font-mono)}textarea{resize:none}button{font-family:var(--font-ui);cursor:pointer;color:inherit;background:0 0;border:none}.app{flex-direction:column;min-height:100dvh;display:flex}.hero{border-bottom:1px solid var(--edge);background:var(--surface-50);padding:var(--sp-6) var(--sp-6)}.hero-inner{max-width:1400px;margin:0 auto}.hero h1{font-family:var(--font-ui);font-size:var(--text-xl);color:var(--ink-primary);margin-bottom:var(--sp-2);letter-spacing:-.02em;font-weight:700}.hero p{font-size:var(--text-sm);color:var(--ink-secondary);max-width:720px;line-height:1.7}.tool-description{margin-bottom:var(--sp-4)}.tool-description h2{font-family:var(--font-ui);font-size:var(--text-base);color:var(--ink-primary);margin-bottom:var(--sp-1);font-weight:600}.tool-description p{font-size:var(--text-sm);color:var(--ink-tertiary);line-height:1.6}.header{border-bottom:1px solid var(--edge);background:var(--base);z-index:10;position:sticky;top:0}.header-inner{max-width:1400px;padding:0 var(--sp-6);align-items:center;gap:var(--sp-8);height:56px;margin:0 auto;display:flex}.logo{align-items:center;gap:var(--sp-3);-webkit-user-select:none;user-select:none;flex-shrink:0;display:flex}.logo-icon{border-radius:var(--radius-sm);background:var(--amber-glow);border:1px solid #e8a63433;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;line-height:1;display:flex}.logo-text{font-family:var(--font-ui);font-weight:700;font-size:var(--text-base);letter-spacing:-.02em;color:var(--ink-primary)}.logo-text span{color:var(--amber)}.tool-rack-container{flex:1;min-width:0;display:flex;position:relative}.scroll-btn{z-index:2;background:var(--base);width:40px;color:var(--ink-secondary);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:20px;transition:color .2s,background .2s;display:flex;position:absolute;top:0;bottom:0}.scroll-btn:hover{color:var(--amber)}.scroll-btn-left{background:linear-gradient(to right, var(--base) 60%, transparent);justify-content:flex-start;padding-left:4px;left:0}.scroll-btn-right{background:linear-gradient(to left, var(--base) 60%, transparent);justify-content:flex-end;padding-right:4px;right:0}.tool-rack{gap:var(--sp-1);scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;width:100%;min-width:0;display:flex;position:relative;overflow-x:auto}.tool-rack::-webkit-scrollbar{display:none}.tool-tab{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);font-size:var(--text-sm);color:var(--ink-tertiary);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);white-space:nowrap;flex-shrink:0;height:36px;font-weight:500;display:inline-flex;position:relative}.tool-tab:hover{color:var(--ink-secondary);background:var(--surface-100)}.tool-tab.active{color:var(--amber);background:var(--amber-ghost)}.tool-tab .tab-icon{align-items:center;font-size:15px;line-height:1;display:flex}.tool-tab .tab-key{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-muted);background:var(--surface-100);border:1px solid var(--edge);margin-left:var(--sp-1);border-radius:4px;padding:1px 5px;line-height:1.4}.tool-tab.active .tab-key{background:var(--amber-ghost);color:var(--amber-dim);border-color:#e8a63426}.main{width:100%;min-width:0;max-width:1400px;padding:var(--sp-6);flex:1;margin:0 auto}.tool-panel{animation:fadeSlideIn var(--duration-normal) var(--ease-out)}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.editor-area{background:var(--surface-50);border:1px solid var(--edge);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.editor-header{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--edge);justify-content:space-between;align-items:center;min-height:40px;display:flex}.editor-title{font-size:var(--text-sm);color:var(--ink-secondary);letter-spacing:-.01em;align-items:center;gap:var(--sp-2);font-weight:600;display:flex}.editor-title .title-dot{background:var(--ink-muted);border-radius:50%;flex-shrink:0;width:6px;height:6px}.editor-title .title-dot.active{background:var(--mint);box-shadow:0 0 6px var(--mint-dim)}.editor-title .title-dot.error{background:var(--brick);box-shadow:0 0 6px var(--brick-dim)}.editor-actions{gap:var(--sp-2);align-items:center;display:flex}.editor-body{flex:1;position:relative}.editor-body textarea{width:100%;height:100%;min-height:420px;padding:var(--sp-4);color:var(--ink-primary);font-family:var(--font-mono);font-size:var(--text-sm);tab-size:2;background:0 0;border:none;outline:none;line-height:1.7}.editor-body textarea::placeholder{color:var(--ink-muted)}.editor-body pre{padding:var(--sp-4);min-height:420px;font-size:var(--text-sm);color:var(--ink-primary);white-space:pre;margin:0;line-height:1.7;overflow:auto}.btn{align-items:center;gap:var(--sp-2);font-size:var(--text-xs);padding:var(--sp-1) var(--sp-3);border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);height:28px;font-weight:500;display:inline-flex}.btn-ghost{color:var(--ink-tertiary);border:1px solid var(--edge);background:0 0}.btn-ghost:hover{color:var(--ink-secondary);background:var(--surface-100);border-color:var(--edge-strong)}.btn-primary{color:var(--base);background:var(--amber);border:1px solid var(--amber);font-weight:600}.btn-primary:hover{background:var(--amber-dim);border-color:var(--amber-dim)}.btn-success{color:var(--mint);background:var(--mint-dim);border:1px solid #4ade8033}.formatter-grid{gap:var(--sp-4);height:calc(100dvh - 56px - var(--sp-6) * 2);grid-template-columns:1fr 1fr;min-height:500px;display:grid}.formatter-grid .editor-area{min-width:0}.diff-grid,.diff-inputs{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.diff-inputs .editor-body textarea{min-height:200px}.diff-output{margin-top:var(--sp-4)}.diff-output .editor-body{min-height:280px}.diff-result{min-height:280px;padding:8px 0;overflow:auto}.diff-empty{min-height:280px}.diff-line{padding:0 var(--sp-4);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7;display:flex}.diff-line .line-num{color:var(--ink-muted);text-align:right;width:40px;padding-right:var(--sp-3);-webkit-user-select:none;user-select:none;flex-shrink:0}.diff-line .line-content{white-space:pre-wrap;word-break:break-all;flex:1}.diff-line.added{background:var(--diff-add-bg);border-left:2px solid var(--diff-add-border)}.diff-line.added .line-content{color:var(--diff-add-text)}.diff-line.removed{background:var(--diff-del-bg);border-left:2px solid var(--diff-del-border)}.diff-line.removed .line-content{color:var(--diff-del-text)}.diff-line.unchanged{border-left:2px solid #0000}.diff-line.unchanged .line-content{color:var(--ink-tertiary)}.diff-stats{gap:var(--sp-4);font-size:var(--text-xs);font-family:var(--font-mono);display:flex}.diff-stats .stat-add{color:var(--diff-add-text)}.diff-stats .stat-del{color:var(--diff-del-text)}.converter-grid{gap:var(--sp-4);height:calc(100dvh - 56px - var(--sp-6) * 2);grid-template-columns:1fr 1fr;min-height:500px;display:grid}.lang-toggle{background:var(--surface-100);border:1px solid var(--edge);border-radius:var(--radius-sm);display:flex;overflow:hidden}.lang-toggle button{padding:var(--sp-1) var(--sp-3);font-size:var(--text-xs);color:var(--ink-tertiary);transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);font-weight:500}.lang-toggle button:hover{color:var(--ink-secondary)}.lang-toggle button.active{background:var(--amber-ghost);color:var(--amber)}.lang-select{background:var(--surface-100);border:1px solid var(--edge);border-radius:var(--radius-sm);color:var(--ink-primary);font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer;outline:none;height:28px;padding:2px 8px}.lang-select:hover{border-color:var(--edge-strong)}.lang-select:focus-visible{border-color:var(--edge-focus)}.lang-select option{background:var(--surface-200);color:var(--ink-primary)}.token-key{color:#7aa2f7}.token-string{color:#9ece6a}.token-number{color:#ff9e64}.token-bool{color:#bb9af7}.token-null{color:var(--ink-muted);font-style:italic}.token-bracket{color:var(--ink-tertiary)}.token-comma{color:var(--ink-muted)}.code-keyword{color:#bb9af7}.code-type{color:#7aa2f7}.code-name{color:#7dcfff}.code-string{color:#9ece6a}.code-comment{color:var(--ink-muted);font-style:italic}.code-decorator{color:#ff9e64}.code-punct{color:var(--ink-tertiary)}.jwt-grid{gap:var(--sp-4);height:calc(100dvh - 56px - var(--sp-6) * 2);grid-template-columns:1fr 1fr;min-height:500px;display:grid}.jwt-sections{padding:var(--sp-4);gap:var(--sp-4);flex-direction:column;height:100%;display:flex;overflow:auto}.jwt-expiry{padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;font-family:var(--font-mono)}.jwt-expiry--valid{background:var(--mint-dim);color:var(--mint);border:1px solid #4ade8033}.jwt-expiry--expired{background:var(--brick-dim);color:var(--brick);border:1px solid #f0717833}.jwt-expiry--none{background:var(--surface-100);color:var(--ink-tertiary);border:1px solid var(--edge)}.jwt-section{background:var(--surface-100);border:1px solid var(--edge);border-radius:var(--radius-sm);overflow:hidden}.jwt-section-header{padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--edge);justify-content:space-between;align-items:center;display:flex}.jwt-section-label{font-size:var(--text-xs);color:var(--ink-tertiary);letter-spacing:.05em;font-weight:600}.jwt-grid .editor-body{min-height:0;overflow:hidden}.jwt-section pre{padding:var(--sp-3);font-size:var(--text-sm);white-space:pre;min-height:0;max-height:300px;margin:0;line-height:1.7;overflow:auto}.jwt-signature{word-break:break-all;color:var(--ink-tertiary);white-space:pre-wrap!important}.base64-grid{gap:var(--sp-4);height:calc(100dvh - 56px - var(--sp-6) * 2);grid-template-columns:1fr 1fr;min-height:500px;display:grid}.base64-format-badge{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--electric);background:var(--electric-dim);border:1px solid #5b9bf533;border-radius:4px;padding:1px 8px;font-weight:500}.base64-output{white-space:pre-wrap;word-break:break-all}.base64-image-preview{padding:var(--sp-4);justify-content:center;align-items:center;min-height:420px;display:flex;overflow:auto}.base64-image-preview img{border-radius:var(--radius-sm);border:1px solid var(--edge);max-width:100%;max-height:400px}.regex-bar{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--surface-50);border:1px solid var(--edge);border-radius:var(--radius-md);margin-bottom:var(--sp-4);display:flex}.regex-input-wrap{background:var(--surface-100);border:1px solid var(--edge);border-radius:var(--radius-sm);padding:0 var(--sp-2);flex:1;align-items:center;height:36px;display:flex}.regex-input-wrap:focus-within{border-color:var(--edge-focus)}.regex-input-wrap--success{border-color:#4ade8066}.regex-input-wrap--no-match,.regex-input-wrap--error{border-color:#f0717866}.regex-slash{color:var(--ink-muted);font-family:var(--font-mono);font-size:var(--text-base);-webkit-user-select:none;user-select:none}.regex-input{color:var(--amber);font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--sp-1) var(--sp-2);background:0 0;border:none;outline:none;flex:1}.regex-input::placeholder{color:var(--ink-muted)}.regex-flags{gap:var(--sp-1);display:flex}.regex-flag{width:28px;height:28px;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink-muted);border:1px solid var(--edge);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);background:0 0;justify-content:center;align-items:center;font-weight:500;display:flex}.regex-flag:hover{color:var(--ink-secondary);border-color:var(--edge-strong)}.regex-flag.active{color:var(--amber);background:var(--amber-ghost);border-color:#e8a63433}.regex-status-badge{font-size:var(--text-xs);font-family:var(--font-mono);white-space:nowrap;padding:var(--sp-1) var(--sp-3);border-radius:var(--radius-sm);font-weight:600}.regex-status-badge--success{color:var(--mint);background:var(--mint-dim);border:1px solid #4ade8033}.regex-status-badge--fail{color:var(--brick);background:var(--brick-dim);border:1px solid #f0717833}.regex-no-match .empty-icon{color:var(--brick);opacity:.7}.regex-no-match code{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--surface-100);border:1px solid var(--edge);color:var(--ink-secondary);border-radius:4px;padding:2px 6px}.regex-grid{gap:var(--sp-4);height:calc(100dvh - 56px - var(--sp-6) * 2 - 62px - var(--sp-4));grid-template-columns:1fr 1fr;min-height:400px;display:grid}.regex-output{flex-direction:column;height:100%;display:flex;overflow:auto}.regex-highlighted{padding:var(--sp-4);font-size:var(--text-sm);color:var(--ink-primary);white-space:pre-wrap;word-break:break-word;flex:1;min-height:0;margin:0;line-height:1.7;overflow:auto}mark.regex-match{color:var(--amber);background:#e8a63440;border-radius:2px;padding:1px 0}.regex-groups{border-top:1px solid var(--edge);padding:var(--sp-3) var(--sp-4);max-height:200px;overflow:auto}.regex-groups-title{font-size:var(--text-xs);color:var(--ink-tertiary);letter-spacing:.05em;margin-bottom:var(--sp-2);font-weight:600}.regex-group-item{gap:var(--sp-2);padding:var(--sp-1) 0;font-family:var(--font-mono);font-size:var(--text-xs);border-bottom:1px solid var(--edge-subtle);flex-wrap:wrap;display:flex}.regex-group-item:last-child{border-bottom:none}.regex-group-index{color:var(--ink-tertiary);font-weight:500}.regex-group-value{color:var(--amber)}.regex-group-capture{color:var(--electric)}.sql-grid{gap:var(--sp-4);height:calc(100dvh - 56px - var(--sp-6) * 2);grid-template-columns:1fr 1fr;min-height:500px;display:grid}.sql-keyword{color:#bb9af7}.sql-string{color:#9ece6a}.sql-number{color:#ff9e64}.sql-comment{color:var(--ink-muted);font-style:italic}.sql-function{color:#7aa2f7}.uuid-controls{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--surface-50);border:1px solid var(--edge);border-radius:var(--radius-md);margin-bottom:var(--sp-4);display:flex}.uuid-count-wrap{align-items:center;gap:var(--sp-2);display:flex}.uuid-count-label{font-size:var(--text-xs);color:var(--ink-tertiary);font-weight:500}.uuid-count-input{background:var(--surface-100);border:1px solid var(--edge);border-radius:var(--radius-sm);width:60px;color:var(--ink-primary);font-family:var(--font-mono);font-size:var(--text-xs);text-align:center;outline:none;height:28px;padding:2px 8px}.uuid-count-input:focus{border-color:var(--edge-focus)}.uuid-count-input::-webkit-outer-spin-button{appearance:none;margin:0}.uuid-count-input::-webkit-inner-spin-button{appearance:none;margin:0}.uuid-count-input[type=number]{-moz-appearance:textfield}.uuid-output{height:calc(100dvh - 56px - var(--sp-6) * 2 - 62px - var(--sp-4));min-height:400px}.uuid-version-badge{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--electric);background:var(--electric-dim);border:1px solid #5b9bf533;border-radius:4px;padding:1px 8px;font-weight:500}.uuid-list{padding:var(--sp-2) 0;height:100%;overflow:auto}.uuid-row{padding:var(--sp-1) var(--sp-4);align-items:center;gap:var(--sp-3);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7;display:flex}.uuid-row:hover{background:var(--surface-100)}.uuid-index{color:var(--ink-muted);text-align:right;width:30px;font-size:var(--text-xs);flex-shrink:0}.uuid-value{color:var(--ink-primary);flex:1}.uuid-copy-hint{font-size:var(--text-xs);color:var(--ink-muted);opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.uuid-row:hover .uuid-copy-hint{opacity:1}.log-grid{gap:var(--sp-4);height:calc(100dvh - 56px - var(--sp-6) * 2);grid-template-columns:1fr 1fr;min-height:500px;display:grid}.log-grid--with-sql{height:auto}.log-grid--with-sql .editor-body textarea,.log-grid--with-sql .editor-body pre{min-height:300px;max-height:50vh}.log-sql-badge{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--electric);background:var(--electric-dim);border:1px solid #5b9bf533;border-radius:4px;padding:1px 8px;font-weight:500}.log-sql-section{margin-top:var(--sp-4);gap:var(--sp-3);flex-direction:column;display:flex}.log-sql-section-header{justify-content:space-between;align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.log-sql-section-title{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--ink-secondary);letter-spacing:-.01em;font-weight:600}.log-sql-card{background:var(--surface-50);border:1px solid var(--edge);border-radius:var(--radius-md);overflow:hidden}.log-sql-card-header{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--edge);justify-content:space-between;align-items:center;display:flex}.log-sql-path{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--amber);font-weight:500}.log-sql-code{padding:var(--sp-4);font-size:var(--text-sm);color:var(--ink-primary);white-space:pre;max-height:300px;margin:0;line-height:1.7;overflow:auto}.error-banner{padding:var(--sp-3) var(--sp-4);background:var(--brick-dim);border-radius:var(--radius-sm);color:var(--diff-del-text);font-size:var(--text-sm);font-family:var(--font-mono);margin-bottom:var(--sp-4);animation:fadeSlideIn var(--duration-fast) var(--ease-out);border:1px solid #f0717833}.empty-state{height:100%;min-height:420px;color:var(--ink-muted);justify-content:center;align-items:center;gap:var(--sp-3);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex}.empty-state .empty-icon{opacity:.4;font-size:32px}.empty-state p{font-size:var(--text-sm)}.empty-state kbd{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--surface-100);border:1px solid var(--edge);color:var(--ink-tertiary);border-radius:4px;padding:2px 6px}.ad-unit{width:100%;min-height:90px}.ad-bottom{margin-top:var(--sp-6);padding:var(--sp-4) 0;border-top:1px solid var(--edge)}.footer{border-top:1px solid var(--edge);background:var(--surface-50);padding:var(--sp-8) var(--sp-6) var(--sp-6)}.footer-inner{gap:var(--sp-8);grid-template-columns:2fr 1fr;max-width:1400px;margin:0 auto;display:grid}.footer h3{font-size:var(--text-sm);color:var(--ink-secondary);margin-bottom:var(--sp-3);font-weight:600}.footer-about p{font-size:var(--text-sm);color:var(--ink-tertiary);max-width:540px;line-height:1.7}.footer-tools ul{gap:var(--sp-1) var(--sp-4);grid-template-columns:1fr 1fr;list-style:none;display:grid}.footer-tools button{font-size:var(--text-xs);color:var(--ink-tertiary);transition:color var(--duration-fast) var(--ease-out)}.footer-tools button:hover{color:var(--amber)}.footer-bottom{border-top:1px solid var(--edge);padding-top:var(--sp-4);font-size:var(--text-xs);color:var(--ink-muted);text-align:center;grid-column:1/-1}@media (width<=768px){.hero{padding:var(--sp-4) var(--sp-3)}.hero h1{font-size:var(--text-lg)}.footer{padding:var(--sp-6) var(--sp-3) var(--sp-4)}.footer-inner{gap:var(--sp-6);grid-template-columns:1fr}.header-inner{padding:0 var(--sp-3);gap:var(--sp-3);height:48px}.logo-text{display:none}.tool-rack{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1;min-width:0;overflow-x:auto}.tool-rack::-webkit-scrollbar{display:none}.tool-tab{padding:var(--sp-1) var(--sp-3);font-size:var(--text-xs);gap:var(--sp-1);height:32px}.tool-tab .tab-key{display:none}.tool-tab .tab-icon{font-size:13px}.main{padding:var(--sp-3)}.formatter-grid,.diff-inputs,.converter-grid,.jwt-grid,.base64-grid,.regex-grid,.sql-grid,.log-grid{gap:var(--sp-3);grid-template-columns:1fr}.formatter-grid,.converter-grid,.jwt-grid,.base64-grid,.regex-grid,.sql-grid,.log-grid{height:auto}.regex-bar{padding:var(--sp-2) var(--sp-3);flex-wrap:wrap}.regex-input-wrap{flex:100%}.base64-image-preview{min-height:180px}.uuid-controls{padding:var(--sp-2) var(--sp-3);flex-wrap:wrap}.uuid-output{height:auto;min-height:300px}.uuid-copy-hint{opacity:1}.editor-header{gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);flex-wrap:wrap}.editor-actions{flex-wrap:wrap}.editor-body textarea,.editor-body pre{min-height:180px}.diff-inputs .editor-body textarea{min-height:140px}.diff-output{margin-top:var(--sp-3)}.diff-output .editor-body,.diff-result,.diff-empty{min-height:180px}.diff-line{padding:0 var(--sp-3)}.diff-line .line-num{width:30px;padding-right:var(--sp-2)}.empty-state{min-height:180px}.error-banner{font-size:var(--text-xs);padding:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-3)}.copied-toast{bottom:var(--sp-4);font-size:var(--text-xs)}}.copied-toast{bottom:var(--sp-8);background:var(--surface-300);border:1px solid var(--edge-strong);color:var(--mint);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-md);font-size:var(--text-sm);z-index:100;animation:toastIn var(--duration-normal) var(--ease-out);pointer-events:none;font-weight:500;position:fixed;left:50%;transform:translate(-50%)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}
