:root{--color-bg: #ffffff;--color-bg-secondary: #f8f9fa;--color-text: #1a1a2e;--color-text-secondary: #6c757d;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-border: #e5e7eb;--color-accent: #f59e0b;--max-width: 1200px;--radius: 8px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Hiragino Kaku Gothic ProN,Noto Sans JP,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.7;-webkit-font-smoothing:antialiased}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--max-width);margin:0 auto;padding:0 1rem}.site-header{border-bottom:1px solid var(--color-border);padding:1rem 0;background:var(--color-bg);position:sticky;top:0;z-index:100}.site-header .container{display:flex;align-items:center;justify-content:space-between}.site-logo{font-size:1.25rem;font-weight:700;color:var(--color-text)}.site-logo:hover{text-decoration:none}.site-nav{display:flex;gap:1.5rem;list-style:none}.site-nav a{color:var(--color-text-secondary);font-size:.9rem}.site-nav a:hover{color:var(--color-primary);text-decoration:none}.site-footer{border-top:1px solid var(--color-border);padding:2rem 0;margin-top:3rem;text-align:center;color:var(--color-text-secondary);font-size:.85rem}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.tool-card{border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem;transition:box-shadow .2s,transform .2s;background:var(--color-bg)}.tool-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.tool-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.tool-card-logo{width:40px;height:40px;border-radius:8px;object-fit:cover;background:var(--color-bg-secondary)}.tool-card-name{font-size:1.05rem;font-weight:600}.tool-card-tagline{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tool-card-meta{display:flex;gap:.5rem;flex-wrap:wrap}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.badge-primary{background:#eff6ff;color:var(--color-primary);border-color:#bfdbfe}.badge-votes{background:#fef3c7;color:#92400e;border-color:#fde68a}.section{padding:2.5rem 0}.section-title{font-size:1.5rem;font-weight:700;margin-bottom:1.25rem}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.category-link{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);transition:background .15s}.category-link:hover{background:var(--color-bg-secondary);text-decoration:none}.category-count{font-size:.8rem;color:var(--color-text-secondary)}.compare-table{width:100%;border-collapse:collapse;margin:1.5rem 0}.compare-table th,.compare-table td{padding:.75rem 1rem;border:1px solid var(--color-border);text-align:left}.compare-table th{background:var(--color-bg-secondary);font-weight:600}.compare-header{display:flex;align-items:center;gap:.75rem}.compare-logo{width:48px;height:48px;border-radius:10px;object-fit:cover}.tool-hero{display:flex;align-items:flex-start;gap:1.5rem;padding:2rem 0}.tool-hero-logo{width:80px;height:80px;border-radius:16px;object-fit:cover;background:var(--color-bg-secondary)}.tool-hero-info h1{font-size:1.75rem;margin-bottom:.25rem}.tool-hero-tagline{color:var(--color-text-secondary);font-size:1.05rem;margin-bottom:.75rem}.btn{display:inline-block;padding:.5rem 1.25rem;border-radius:var(--radius);font-size:.9rem;font-weight:500;cursor:pointer;border:none;transition:background .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover);text-decoration:none;color:#fff}.breadcrumb{display:flex;gap:.5rem;font-size:.85rem;color:var(--color-text-secondary);padding:1rem 0 0}.breadcrumb a,.breadcrumb span{color:var(--color-text-secondary)}@media(max-width:768px){.tool-hero{flex-direction:column}.site-nav{gap:1rem}}
