:root{--bg: #fafafa;--surface: #ffffff;--text: #111827;--text-muted: #6b7280;--border: #e5e7eb;--accent: #2563eb;--accent-hover: #1d4ed8;--danger: #dc2626;--warning: #d97706;--success: #059669;--radius: 10px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-header{padding:24px 20px;border-bottom:1px solid var(--border);background:var(--surface)}.site-header .wrap{max-width:1040px;margin:0 auto;display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.site-header h1{font-size:22px;font-weight:600;margin:0}.site-header .tagline{color:var(--text-muted);font-size:14px}.site-header .privacy-badge{margin-left:auto;background:#ecfdf5;color:var(--success);border:1px solid #a7f3d0;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500}.site-main{max-width:1040px;margin:0 auto;padding:32px 20px 64px}.site-footer{max-width:1040px;margin:0 auto;padding:24px 20px 48px;color:var(--text-muted);font-size:13px;text-align:center}button,.btn{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;padding:8px 16px;border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s,transform .05s}button:hover:not(:disabled),.btn:hover:not(:disabled){border-color:#d1d5db;background:#f9fafb}button:active:not(:disabled),.btn:active:not(:disabled){transform:translateY(1px)}button.primary,.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button.primary:hover:not(:disabled),.btn.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=number],input[type=text],select{font:inherit;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text)}input[type=number]:focus,input[type=text]:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}
