:root{--bg: #f6f7f9;--surface: #ffffff;--text: #1b1f24;--muted: #5b6573;--border: #e6e8ec;--brand: #e23b3b;--brand-dark: #c52f2f;--accent: #2563eb;--ok: #16a34a;--radius: 14px;--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 4px 16px rgba(16, 24, 40, .06);--max: 1100px;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 20px}.site-header{position:sticky;top:0;z-index:20;background:#ffffffd9;backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--border)}.site-header .bar{display:flex;align-items:center;gap:18px;height:62px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.15rem;color:var(--text)}.brand:hover{text-decoration:none}.brand img{width:30px;height:30px}.nav{display:flex;gap:18px;margin-left:auto;align-items:center}.nav a{color:var(--muted);font-weight:600;font-size:.95rem}.nav a:hover{color:var(--text);text-decoration:none}.hero{text-align:center;padding:56px 0 28px}.hero h1{font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.1;margin:0 0 14px;letter-spacing:-.02em}.hero p{color:var(--muted);font-size:1.12rem;max-width:640px;margin:0 auto}.privacy-badge{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:8px 16px;border-radius:999px;background:#eafaf0;color:#15803d;font-weight:600;font-size:.92rem;border:1px solid #c8f0d6}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:26px}.feature{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.feature .ico{font-size:1.5rem}.feature h3{margin:8px 0 4px;font-size:1rem}.feature p{margin:0;color:var(--muted);font-size:.9rem}.cat-block{margin-bottom:26px}.cat-title{font-size:1.02rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:8px 0 12px}.section-title .count{color:var(--muted);font-weight:400;font-size:1rem}.how{margin:0;padding-left:22px}.how li{margin:6px 0}.faq{display:flex;flex-direction:column;gap:10px}.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;box-shadow:var(--shadow)}.faq-item summary{cursor:pointer;font-weight:600}.faq-item p{color:var(--muted);margin:10px 0 0}.section-title{font-size:1.25rem;margin:36px 0 16px}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.tool-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.tool-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #1018281a;border-color:#d7dbe2;text-decoration:none}.tool-card .ico{font-size:1.8rem}.tool-card h3{margin:10px 0 6px;font-size:1.08rem;color:var(--text)}.tool-card p{margin:0;color:var(--muted);font-size:.92rem}.tool-card.soon{opacity:.6;pointer-events:none}.tag-soon{display:inline-block;margin-left:8px;font-size:.7rem;font-weight:700;color:var(--muted);background:#eef0f3;padding:2px 7px;border-radius:6px;vertical-align:middle}.tool-head{display:flex;align-items:center;gap:14px;margin:28px 0 6px}.tool-head .ico{font-size:2.2rem}.tool-head h1{margin:0;font-size:1.8rem}.tool-sub{color:var(--muted);margin:0 0 24px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.dropzone{border:2px dashed #c3cad6;border-radius:var(--radius);padding:40px 20px;text-align:center;color:var(--muted);cursor:pointer;transition:all .15s ease;background:#fbfcfe}.dropzone:hover,.dropzone.drag{border-color:var(--accent);background:#f1f6ff;color:var(--text)}.dropzone strong{color:var(--text)}.filelist{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:8px}.filelist li{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:.92rem}.filelist .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filelist .size{color:var(--muted);margin-left:auto;white-space:nowrap}.filelist button.x{border:none;background:#f1f2f4;color:var(--muted);border-radius:6px;cursor:pointer;padding:4px 8px;font-weight:700}.filelist button.x:hover{background:#ffe3e3;color:var(--brand)}.filelist .reorder{display:flex;flex-direction:column}.filelist .reorder button{border:none;background:none;cursor:pointer;color:var(--muted);line-height:1;font-size:.8rem;padding:0 2px}.filelist .reorder button:hover{color:var(--text)}.field{margin-top:18px}.field label{display:block;font-weight:600;margin-bottom:6px;font-size:.95rem}.field input[type=text],.field input[type=number]{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:1rem;font-family:inherit}.field .sel,select.sel{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:1rem;font-family:inherit;background:#fff}.notice{margin:0 0 18px;padding:14px 16px;border-radius:10px;background:#fff8e6;border:1px solid #f3e3b3;color:#7a5b00;font-size:.92rem}.notice code{background:#00000010;padding:1px 5px;border-radius:4px}.hint{color:var(--muted);font-size:.85rem;margin-top:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand);color:#fff;border:none;border-radius:10px;padding:13px 22px;font-size:1rem;font-weight:700;cursor:pointer;font-family:inherit;transition:background .12s ease}.btn:hover:not(:disabled){background:var(--brand-dark)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-row{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.status{margin-top:14px;font-size:.95rem;min-height:1.2em}.status.err{color:var(--brand)}.status.ok{color:var(--ok);font-weight:600}.ad-slot{margin:24px auto;max-width:var(--max);min-height:90px;display:flex;align-items:center;justify-content:center;border:1px dashed #cfd4dc;border-radius:10px;background:#fbfcfe;color:#9aa3b2;font-size:.82rem;letter-spacing:.03em;text-transform:uppercase}.ad-slot ins{display:block;width:100%}.prose{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow)}.prose h1{margin-top:0}.prose h2{margin-top:28px}.prose p,.prose li{color:#2b333d}.site-footer{border-top:1px solid var(--border);margin-top:56px;padding:28px 0;color:var(--muted);font-size:.9rem}.site-footer .row{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.site-footer .row a{color:var(--muted);font-weight:600}.site-footer .spacer{margin-left:auto}@media(max-width:560px){.nav{gap:12px}.nav .hide-sm{display:none}}
