:root{--background:#0b1120;--surface:#111827;--surface-hover:#1a2438;--surface-light:#22304a;--border:rgba(148,163,184,0.14);--border-hover:rgba(148,163,184,0.28);--primary:#3b82f6;--primary-hover:#2563eb;--primary-soft:rgba(59,130,246,0.12);--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--text:#f8fafc;--text-secondary:#cbd5e1;--muted:#94a3b8;--disabled:#64748b;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.18);--shadow-md:0 6px 18px rgba(0,0,0,0.22);--shadow-lg:0 14px 36px rgba(0,0,0,0.3);--container:960px;--header-height:60px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--font-ui:"Inter",system-ui,sans-serif;--font-code:"JetBrains Mono","Fira Code",monospace;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:18px;--text-xl:22px;--text-2xl:32px;--text-3xl:40px;--transition-fast:150ms ease;--transition:220ms ease;--transition-slow:350ms ease;--focus-ring:0 0 0 3px rgba(59,130,246,0.2)}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-height:100vh;background:var(--background);color:var(--text);font-family:var(--font-ui);font-size:var(--text-md);line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--primary);color:#fff}.container{width:min(var(--container),calc(100% - 2rem));margin-inline:auto}.header{position:-webkit-sticky;position:sticky;top:0;z-index:1000;background:rgba(11,17,32,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.header-content{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);height:var(--header-height)}.logo{flex-shrink:0;font-size:1.25rem;font-weight:700;letter-spacing:-.03em;color:var(--text);-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;transition:color var(--transition)}.logo:hover{color:var(--primary)}.actions{gap:var(--space-3);flex-shrink:0}@media (max-width:768px){.container{width:min(100%,calc(100% - 1.25rem))}.header-content{height:auto;padding:14px 0;flex-wrap:wrap;gap:var(--space-4)}.logo{order:1}.actions{order:2;margin-left:auto}.search{order:3;max-width:none;width:100%}}.footer{margin-top:var(--space-12);border-top:1px solid var(--border);background:var(--surface)}.footer-content{max-width:var(--container-width);margin:0 auto;padding:var(--space-8) var(--space-4);display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);flex-wrap:wrap}.footer-brand{margin:0;color:var(--muted);font-size:var(--text-sm)}.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-5)}.footer-links a{color:var(--text-secondary);font-size:var(--text-sm);text-decoration:none;transition:color var(--transition),opacity var(--transition)}.footer-links a:hover{color:var(--primary)}@media (max-width:768px){.footer-content{text-align:center}.footer-content,.footer-links{justify-content:center}}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);color:var(--muted);font-size:var(--text-sm);font-weight:500}.breadcrumb a{color:var(--muted);transition:color var(--transition)}.breadcrumb a:hover{color:var(--text)}.breadcrumb span{color:var(--text-secondary)}.tool-header{margin-bottom:var(--space-8)}.tool-header h1{margin-bottom:var(--space-3);font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1.15;letter-spacing:-.04em;color:var(--text)}.tool-header p{max-width:720px;color:var(--text-secondary);font-size:var(--text-md);line-height:1.8}.result-card,.tool-card{position:relative;margin-bottom:var(--space-7);background:linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,.005));border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;overflow:hidden;transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.result-card:hover,.tool-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.result-card:before,.tool-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary),transparent);opacity:.65}@media (max-width:768px){.breadcrumb{flex-wrap:wrap;margin-bottom:var(--space-4)}.tool-header{margin-bottom:var(--space-6)}.tool-header h1{font-size:2rem}.tool-header p{font-size:var(--text-sm);line-height:1.7}.result-card,.tool-card{padding:20px;margin-bottom:var(--space-6)}}@media (max-width:480px){.tool-header h1{font-size:1.75rem}.result-card,.tool-card{padding:18px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition)}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-width:120px;height:40px;padding:0 var(--space-5);border:none;border-radius:var(--radius-md);background:var(--primary);color:#fff;font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition),transform var(--transition-fast),box-shadow var(--transition)}.btn:hover{background:var(--primary-hover);box-shadow:var(--shadow-md)}.btn:active{transform:scale(.98)}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.input,.select{width:100%;height:42px;padding:0 var(--space-4);background:var(--background);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font-size:var(--text-sm);transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}.input::placeholder{color:var(--muted)}.input:hover,.select:hover{border-color:var(--border-hover)}.input:focus,.select:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 13px) calc(50% - 2px);background-size:5px 5px;background-repeat:no-repeat;padding-right:42px}.checkbox{display:inline-flex;align-items:center;gap:var(--space-3);cursor:pointer;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}@media (max-width:768px){.card{padding:var(--space-5)}.btn{width:100%}}@media (max-width:480px){.card{padding:var(--space-4)}.input,.select{height:40px}}.form-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:end;margin-bottom:var(--space-6)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group:first-child{grid-column:span 4}.form-group:nth-child(2){grid-column:span 3}.form-options{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-6)}.form-group label{color:var(--muted);font-size:13px;font-weight:500;letter-spacing:.02em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.form-helper{margin-top:var(--space-2);color:var(--muted);font-size:12px;line-height:1.5}.form-error{margin-top:6px;color:var(--danger);font-size:12px;font-weight:500}@media (max-width:992px){.form-grid{grid-template-columns:repeat(2,1fr)}.form-group:first-child,.form-group:nth-child(2){grid-column:auto}}@media (max-width:768px){.form-grid{grid-template-columns:1fr;gap:var(--space-4)}.form-options{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.form-actions,.form-actions .btn{width:100%}}.tool-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border)}.tool-tab{padding:.75rem 1.25rem;background:transparent;color:var(--text-secondary);cursor:pointer;border:none;border-bottom:2px solid transparent;transition:all .2s ease}.tool-tab:hover{color:var(--text-primary)}.tool-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tool-tab-content{margin-top:1rem}.properties-table{display:flex;flex-direction:column}.property-row{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--border)}.property-row:last-child{border-bottom:none}.property-key{font-weight:600;color:var(--text-secondary)}.property-value{text-align:right;word-break:break-word;color:var(--text-primary)}.validation-result{display:flex;flex-direction:column;gap:.75rem}.validation-status{font-size:1rem;font-weight:600}.validation-status.success{color:#16a34a}.validation-status.error{color:#dc2626}.validation-error{padding:1rem;border-radius:var(--radius-md);background:var(--surface-secondary);white-space:pre-wrap;word-break:break-word}.textarea,.validation-error{border:1px solid var(--border)}.textarea{width:100%;min-height:180px;padding:.85rem 1rem;background:var(--surface);color:var(--text-primary);border-radius:var(--radius-md);resize:vertical;font:inherit;line-height:1.5;transition:border-color var(--transition),box-shadow var(--transition)}.textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.15)}.textarea::placeholder{color:var(--text-muted)}.textarea:disabled{opacity:.6;cursor:not-allowed}.editor-container{display:flex;flex-direction:column;gap:.5rem}.editor-label{font-weight:600}.editor,.editor-label{color:var(--text-primary)}.editor{width:100%;min-height:420px;resize:vertical;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);font-family:JetBrains Mono,Fira Code,monospace;font-size:.95rem;line-height:1.7;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.editor:focus{border-color:var(--primary);box-shadow:var(--shadow-sm)}.editor:disabled{opacity:.7;cursor:not-allowed}.stdin-container{display:flex;flex-direction:column;gap:.5rem}.stdin-label{font-weight:600}.stdin,.stdin-label{color:var(--text-primary)}.stdin{width:100%;min-height:120px;resize:vertical;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);font-family:JetBrains Mono,Fira Code,monospace;font-size:.95rem;line-height:1.6;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.stdin:focus{border-color:var(--primary);box-shadow:var(--shadow-sm)}.stdin:disabled{opacity:.7;cursor:not-allowed}.python-output{display:flex;flex-direction:column;gap:1rem}.python-output-title{font-size:1.1rem;font-weight:600}.python-console{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.python-console-header{padding:.75rem 1rem;background:var(--surface-secondary);border-bottom:1px solid var(--border);font-weight:600}.python-console-body{margin:0;padding:1rem;min-height:120px;overflow-x:auto;background:#0d1117;color:#d1d5db;font-family:JetBrains Mono,Fira Code,monospace;font-size:.9rem;white-space:pre-wrap;word-break:break-word}.python-console-body.error{color:#ef4444}.python-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:.75rem;gap:.75rem;border:1px solid var(--border);background:var(--surface)}.python-error,.python-meta{padding:1rem;border-radius:var(--radius-lg)}.python-error{white-space:pre-wrap;background:rgba(239,68,68,.1);color:#ef4444;border:1px solid rgba(239,68,68,.3)}.python-playground{display:flex;flex-direction:column;gap:1.5rem}.python-actions{display:flex;justify-content:flex-end;gap:1rem}@media (max-width:768px){.python-actions{flex-direction:column}.python-actions button{width:100%}}.search-bar{position:relative;width:100%;max-width:520px}.search-bar input{width:100%;height:42px;padding:0 4rem 0 2.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-primary);outline:none}.search-bar input:focus{border-color:var(--primary)}.search-icon{left:1rem}.search-icon,.shortcut{position:absolute;top:50%;transform:translateY(-50%)}.shortcut{right:.75rem;padding:2px 8px;border-radius:6px;background:var(--surface-secondary);font-size:.75rem}.search-results,.shortcut{border:1px solid var(--border)}.search-results{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:var(--surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);z-index:1000}.search-result{display:block;padding:.9rem 1rem;text-decoration:none;color:inherit;border-bottom:1px solid var(--border);transition:background var(--transition)}.search-result:last-child{border-bottom:none}.search-result:hover{background:var(--surface-hover)}.search-result strong{display:block;margin-bottom:.25rem}.search-empty,.search-result small{color:var(--text-secondary)}.search-empty{padding:1rem;text-align:center}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:1rem;gap:1rem;margin-top:1.5rem}.category-card{padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.featured-tools{margin-bottom:4rem}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:1rem;gap:1rem;margin-top:1.5rem}.tool-card{display:block;padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);text-decoration:none;transition:border-color var(--transition),transform var(--transition)}.tool-card:hover{border-color:var(--primary);transform:translateY(-2px)}.tool-card h3{margin-bottom:.75rem}.tool-card p{color:var(--text-secondary)}.hero{margin-bottom:4rem}.hero h1{font-size:2.5rem}.hero p{margin-top:1rem;color:var(--text-secondary);max-width:700px}.not-found{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.not-found-code{font-size:6rem;font-weight:700;color:var(--primary);line-height:1}.not-found h1{margin-top:1rem}.not-found p{margin-top:.75rem;max-width:500px;color:var(--text-secondary)}.not-found-actions{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap}.actions{gap:.75rem}.actions,.icon-btn{display:flex;align-items:center}.icon-btn{width:42px;height:42px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:transparent;color:var(--text-color);justify-content:center;cursor:pointer;transition:.2s ease}.icon-btn:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);transform:translateY(-1px)}.icon-btn svg{stroke-width:2}.app-layout{min-height:100vh;display:flex;flex-direction:column}.app-body{flex:1 1;display:flex}.app-main{flex:1 1;padding:2rem;overflow-y:auto}.left-sidebar{display:none;width:260px;padding:1.5rem;border-right:1px solid var(--border);overflow-y:auto}.sidebar-title{margin-bottom:1.5rem;font-size:1.35rem;font-weight:700}.sidebar-category+.sidebar-category{margin-top:.5rem}.sidebar-category-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 0;background:transparent;border:none;color:var(--text-primary);cursor:pointer;font-size:.95rem;font-weight:600}.sidebar-category-left{display:flex;align-items:center;gap:.65rem}.sidebar-tools{display:flex;flex-direction:column;margin-top:.35rem;margin-left:2rem}.sidebar-tool{padding:.45rem 0;color:var(--text-secondary);text-decoration:none;transition:color var(--transition),transform var(--transition)}.sidebar-tool:hover{color:var(--text-primary);transform:translateX(4px)}.right-sidebar{display:none;width:300px;padding:1.5rem;border-left:1px solid var(--border);overflow-y:auto}.sidebar-card{padding:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.sidebar-card+.sidebar-card{margin-top:1rem}.ad-placeholder{height:600px;display:flex;align-items:center;justify-content:center;border:2px dashed var(--border);border-radius:var(--radius);color:var(--text-secondary)}@media (min-width:1024px){.left-sidebar,.right-sidebar{display:block}}.sidebar-list{margin:0;padding:0;list-style:none}.sidebar-list li{padding:.6rem 0;color:var(--text-secondary);font-size:var(--text-sm);border-bottom:1px solid var(--border);cursor:default}.sidebar-list li:last-child{border-bottom:none}.sidebar-list li:hover{color:var(--text-primary)}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}