:root{--bg:#fff;--bg-secondary:#f5f5f5;--border:#e5e5e5;--border-focus:#2563eb;--text:#111;--text-muted:#555;--text-subtle:#888;--accent:#2563eb;--accent-hover:#1d4ed8;--success:#16a34a;--success-bg:#f0fdf4;--warning:#ca8a04;--warning-bg:#fefce8;--error:#dc2626;--error-bg:#fef2f2;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 12px #0000001f;--radius-sm:4px;--radius:6px;--radius-md:8px;--max-width:1100px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}body{color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.shell{width:min(calc(100% - 32px), var(--max-width));margin:0 auto}.nav{border-bottom:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;height:56px;display:flex}.brand{letter-spacing:-.01em;font-size:15px;font-weight:600}.nav-links{gap:24px;display:flex}.nav-link{color:var(--text-muted);font-size:14px}.nav-link:hover{color:var(--text)}.page{padding:40px 0 80px}h1{letter-spacing:-.02em;font-size:24px;font-weight:700;line-height:1.3}h2{letter-spacing:-.01em;font-size:18px;font-weight:600}h3{font-size:15px;font-weight:600}.muted{color:var(--text-muted)}.subtle{color:var(--text-subtle);font-size:13px}.home-header{margin-bottom:32px;padding:32px 0 24px}.home-title{letter-spacing:-.02em;margin-bottom:6px;font-size:24px;font-weight:700}.home-desc{color:var(--text-muted);font-size:14px}.section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);margin-bottom:16px;font-size:12px;font-weight:600}.category-list{flex-direction:column;gap:48px;display:flex}.category-section{flex-direction:column;gap:16px;display:flex}.category-header{padding-bottom:12px}.category-name{margin-bottom:4px;font-size:18px;font-weight:600}.category-desc{color:var(--text-muted);font-size:14px}.tool-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.tool-card{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;transition:background .1s;display:block}.tool-card:hover{background:#f5f8ff}.tool-card:hover .tool-card-name{color:var(--accent)}.tool-card-name{margin-bottom:4px;font-size:14px;font-weight:600}.tool-card-desc{color:var(--text-muted);font-size:13px;line-height:1.4}.button{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 16px;font-size:14px;font-weight:500;transition:background .1s,border-color .1s;display:inline-flex}.button-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.button-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button-secondary{background:var(--bg);color:var(--text);border-color:var(--border)}.button-secondary:hover{border-color:#aaa}.tool-page{padding:32px 0 80px}.tool-header{border-bottom:1px solid var(--border);margin-bottom:32px;padding-bottom:24px}.tool-title{margin-bottom:6px;font-size:22px;font-weight:700}.tool-desc{color:var(--text-muted);font-size:14px}.tool-body{flex-direction:column;gap:24px;max-width:640px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field-label{color:var(--text-muted);font-size:13px;font-weight:500}.input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);height:40px;color:var(--text);outline:none;width:100%;padding:0 12px;font-size:14px;transition:border-color .1s}.input:focus{border-color:var(--border-focus)}.tool-actions{gap:8px;display:flex}.status-list{border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.status-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;font-size:14px;display:flex}.status-item:last-child{border-bottom:none}.status-key{color:var(--text-muted)}.badge{border-radius:var(--radius-sm);align-items:center;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.badge-success{color:var(--success);background:var(--success-bg)}.badge-warning{color:var(--warning);background:var(--warning-bg)}.badge-error{color:var(--error);background:var(--error-bg)}.footer{border-top:1px solid var(--border);color:var(--text-subtle);margin-top:80px;padding-top:24px;font-size:13px}@media (max-width:860px){.tool-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.tool-grid{grid-template-columns:repeat(2,1fr)}.nav-links{gap:16px}}
