:root{--bg:#0f1115;--card:#171a21;--fg:#e6e8eb;--muted:#9aa0a6;--accent:#3b82f6;--accent-hover:#2563eb;--tag:#2a3340;--border:#222730;--success:#4ade80;--danger:#f87171}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--fg);min-height:100vh;font-family:-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.wrap{max-width:960px;margin:0 auto;padding:0 16px}.top{border-bottom:1px solid var(--border);z-index:100;backdrop-filter:blur(10px);background:#11141a;padding:16px 0;position:sticky;top:0}.top-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.brand{color:var(--fg);font-size:18px;font-weight:700}.brand:hover{color:var(--fg)}.nav{flex-wrap:wrap;gap:4px;display:flex}.nav-link{color:var(--muted);border-radius:8px;padding:6px 12px;font-size:14px;text-decoration:none;transition:all .15s}.nav-link:hover{color:var(--fg);background:var(--tag)}.nav-link.active{color:var(--accent);background:#3b82f61a}.hero{text-align:center;padding:48px 16px 32px}.hero h1{margin-bottom:12px;font-size:28px}.hero p{color:var(--muted);max-width:560px;margin:0 auto;font-size:15px}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:24px 0;display:grid}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;padding:20px;transition:border-color .15s,transform .15s;display:flex}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.card h3{font-size:16px}.card p{color:var(--muted);flex:1;font-size:14px}.card .icon{font-size:28px}.entry-card{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:36px 20px;display:flex}.entry-card .icon{font-size:40px}.entry-card h2{font-size:20px}.entry-card p{font-size:14px}.btn{background:var(--accent);color:#fff;cursor:pointer;text-align:center;border:none;border-radius:8px;padding:10px 16px;font-size:14px;text-decoration:none;transition:opacity .15s;display:inline-block}.btn:hover{opacity:.9;color:#fff}.btn-secondary{background:var(--tag);color:var(--fg)}.btn-secondary:hover{color:var(--fg);background:#36404e}.btn:disabled{opacity:.5;cursor:not-allowed}.tag{background:var(--tag);color:var(--muted);white-space:nowrap;border-radius:20px;padding:2px 10px;font-size:12px}.tag-ok{color:var(--success);background:#4ade8026}.section{margin:32px 0}.section-title{border-left:4px solid var(--accent);margin-bottom:16px;padding-left:12px;font-size:20px}.tool-layout{grid-template-columns:320px 1fr;gap:20px;margin:24px 0;display:grid}@media (width<=768px){.tool-layout{grid-template-columns:1fr}}.control-panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px}.control-group{margin-bottom:16px}.control-group label{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.control-group input[type=text],.control-group input[type=number],.control-group select,.control-group textarea{border:1px solid var(--border);width:100%;color:var(--fg);background:#0f1115;border-radius:8px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .15s}.control-group input:focus,.control-group select:focus,.control-group textarea:focus{border-color:var(--accent)}.control-group input[type=range]{width:100%}.preview-area{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:400px;padding:20px;display:flex}.preview-area canvas{border-radius:8px;max-width:100%}.preview-placeholder{color:var(--muted);text-align:center;font-size:14px}.footer{border-top:1px solid var(--border);color:var(--muted);margin-top:48px;padding:24px 0;font-size:13px}.footer p{max-width:960px;margin:0 auto 8px}.contact-box{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:12px;margin:32px 0;padding:24px}.contact-box h3{margin-bottom:12px}.contact-box img.qr{border:1px solid var(--border);border-radius:10px;width:160px;height:auto;margin:12px auto;display:block}.breadcrumb{color:var(--muted);margin:20px 0 0;font-size:14px}.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:var(--accent)}
