*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-bg: #ffffff;--color-surface: #f8fafc;--color-border: #e2e8f0;--color-text: #1e293b;--color-muted: #64748b;--color-heading: #0f172a;--radius: 8px;--radius-lg: 12px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2.5rem}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.6}h1,h2,h3,h4{color:var(--color-heading);line-height:1.2}h1{font-size:2rem;margin-bottom:var(--spacing-md)}h2{font-size:1.5rem;margin-bottom:var(--spacing-sm)}h3{font-size:1.125rem}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}p{margin-bottom:var(--spacing-md)}.container{max-width:960px;margin:0 auto;padding:0 var(--spacing-lg)}.site-header{background:var(--color-heading);padding:var(--spacing-md) 0;position:sticky;top:0;z-index:100}.header-inner{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.logo{color:#fff;font-size:1.25rem;font-weight:800;text-decoration:none}.logo:hover{text-decoration:none;color:#93c5fd}.cat-nav{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.cat-link{display:flex;align-items:center;gap:var(--spacing-xs);padding:6px 12px;border-radius:999px;font-size:.8125rem;font-weight:600;color:#ffffffb3;text-decoration:none;transition:all .15s}.cat-link:hover{background:#ffffff1a;color:#fff;text-decoration:none}.cat-link.active{background:var(--color-primary);color:#fff}.cat-icon{font-size:.875rem}.main-content{padding:var(--spacing-xl) var(--spacing-lg)}.tool-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);scroll-margin-top:80px}.tool-card h2{color:var(--color-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border)}.tool-form{margin-bottom:var(--spacing-lg)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}@media(max-width:600px){.form-row{grid-template-columns:1fr}}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;font-weight:600;margin-bottom:var(--spacing-xs);font-size:.875rem;color:var(--color-heading)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}.tool-result{background:#fff;border:2px solid var(--color-primary);border-radius:var(--radius);padding:var(--spacing-lg);margin-top:var(--spacing-md)}.tool-result h3{margin-top:0;color:var(--color-primary);margin-bottom:var(--spacing-md)}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}@media(max-width:600px){.result-grid{grid-template-columns:1fr}}.result-item{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border)}.result-label{font-size:.75rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em}.result-value{font-size:1.25rem;font-weight:700;color:var(--color-heading)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;border-radius:var(--radius);font-weight:600;font-size:.9375rem;cursor:pointer;border:none;transition:all .15s;font-family:inherit;min-height:44px}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover);text-decoration:none}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:#fff;border-color:var(--color-primary)}.ad-zone{text-align:center;margin:var(--spacing-xl) 0;min-height:90px;overflow:hidden}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--spacing-lg);margin:var(--spacing-xl) 0}.category-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-decoration:none;color:inherit;transition:all .2s;display:block}.category-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #2563eb1a;text-decoration:none;transform:translateY(-2px)}.category-card h3{color:var(--color-heading);margin-bottom:var(--spacing-sm)}.category-card p{color:var(--color-muted);font-size:.875rem;margin:0}.category-icon{font-size:2rem;margin-bottom:var(--spacing-md)}.tool-list{list-style:none;padding:0;margin-top:var(--spacing-md)}.tool-list li{font-size:.8125rem;color:var(--color-muted);padding:2px 0}.tool-list li:before{content:"→ ";color:var(--color-primary)}.site-footer{background:var(--color-heading);color:#ffffffb3;padding:var(--spacing-xl) 0 var(--spacing-lg);margin-top:var(--spacing-xl)}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);margin-bottom:var(--spacing-lg)}@media(max-width:600px){.footer-grid{grid-template-columns:1fr}}.footer-grid h4{color:#fff;margin-bottom:var(--spacing-sm);font-size:.9375rem}.footer-grid a{display:block;color:#fff9;font-size:.875rem;padding:2px 0;text-decoration:none}.footer-grid a:hover{color:#fff}.footer-about{font-size:.875rem;margin-bottom:var(--spacing-sm)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--spacing-md);text-align:center;font-size:.8125rem;color:#fff6}.qr-output{text-align:center;padding:var(--spacing-lg)}.qr-output canvas,.qr-output img{max-width:256px;margin:0 auto}.color-preview{width:100%;height:80px;border-radius:var(--radius);border:1px solid var(--color-border);margin-bottom:var(--spacing-md)}.generated-output{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md);font-family:monospace;font-size:.875rem;word-break:break-all;margin-top:var(--spacing-md);position:relative}.copy-btn{position:absolute;top:8px;right:8px;padding:4px 12px;font-size:.75rem}
