*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0a;--bg-card: #0d0d0d;--bg-input: #111;--bg-hover: #141414;--border: #1e1e1e;--border-focus: #333;--text-primary: #f0f0f0;--text-body: #c8c8c8;--text-secondary: #aaaaaa;--text-tertiary: #888888;--accent: #ff0066;--accent-hover: #e0005a;--accent-muted: #cc4466;--success: #00cc66;--warning: #ffaa00;--error: #ff4444;--mono: "Space Mono", monospace;--sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}html,body{background:var(--bg);color:var(--text-body);font-family:var(--sans);font-size:14px;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4{font-family:var(--mono);color:var(--text-primary);line-height:1.3}p{color:var(--text-body)}a{color:var(--accent-muted);text-decoration:underline;text-underline-offset:3px}.container{max-width:900px;margin:0 auto;padding:0 24px}.container-wide{max-width:1100px;margin:0 auto;padding:0 24px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:24px}.card-section{background:var(--bg-card);border:1px solid var(--border);border-radius:4px}.form-label{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);display:block;margin-bottom:8px}.form-hint{font-size:12px;color:var(--text-tertiary);margin-top:4px}.form-input{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:3px;padding:10px 12px;font-family:var(--sans);font-size:14px;color:var(--text-primary);outline:none;transition:border-color .15s}.form-input:focus{border-color:var(--border-focus)}.form-input::placeholder{color:var(--text-tertiary)}.form-textarea{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:3px;padding:10px 12px;font-family:var(--sans);font-size:13px;color:var(--text-primary);outline:none;transition:border-color .15s;resize:vertical;min-height:120px;line-height:1.6}.form-textarea:focus{border-color:var(--border-focus)}.form-textarea::placeholder{color:var(--text-tertiary)}.form-select{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:3px;padding:10px 12px;font-family:var(--sans);font-size:14px;color:var(--text-primary);outline:none;cursor:pointer;appearance:none}.form-select:focus{border-color:var(--border-focus)}.btn{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:12px 24px;border:none;border-radius:3px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:opacity .15s,background .15s;text-decoration:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{opacity:.88}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--border-focus);color:var(--text-primary)}.btn-ghost{background:transparent;color:var(--text-tertiary);border:1px solid transparent;padding:8px 16px}.btn-ghost:hover{color:var(--text-body);border-color:var(--border)}.btn-success{background:var(--success);color:#000}.btn-success:hover{opacity:.88}.step-indicator{display:flex;align-items:center;gap:0;margin-bottom:48px}.step-item{display:flex;align-items:center;gap:8px;flex:1}.step-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;font-weight:700;flex-shrink:0;border:1px solid var(--border);color:var(--text-tertiary);background:var(--bg-card);transition:all .2s}.step-num.active{background:var(--accent);border-color:var(--accent);color:#fff}.step-num.done{background:var(--success);border-color:var(--success);color:#000}.step-label{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);transition:color .2s}.step-label.active{color:var(--text-primary)}.step-connector{flex:1;height:1px;background:var(--border);margin:0 8px}.topic-card{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:16px;cursor:pointer;transition:border-color .15s,background .15s;position:relative}.topic-card:hover{border-color:#333;background:var(--bg-hover)}.topic-card.selected{border-color:var(--accent);background:#ff00660d}.topic-card-check{position:absolute;top:12px;right:12px;width:18px;height:18px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .15s}.topic-card.selected .topic-card-check{background:var(--accent);border-color:var(--accent);color:#fff}.category-badge{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:2px;display:inline-block}.progress-log{background:#050505;border:1px solid var(--border);border-radius:4px;padding:16px;font-family:var(--mono);font-size:11px;line-height:1.8;height:320px;overflow-y:auto;color:var(--text-secondary)}.progress-log .log-line{display:flex;gap:12px;align-items:flex-start}.progress-log .log-time{color:var(--text-tertiary);flex-shrink:0;min-width:60px}.progress-log .log-success{color:var(--success)}.progress-log .log-error{color:var(--error)}.progress-log .log-info{color:var(--text-secondary)}.progress-log .log-accent{color:var(--accent)}.seo-field-group{border:1px solid var(--border);border-radius:4px;overflow:hidden;margin-bottom:12px}.seo-field-header{background:#0f0f0f;padding:10px 14px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.seo-field-body{padding:12px 14px}.color-swatch{width:32px;height:32px;border-radius:3px;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .1s;flex-shrink:0}.color-swatch:hover{transform:scale(1.1)}.color-swatch.selected{border-color:var(--text-primary)}.divider{height:1px;background:var(--border);margin:32px 0}.tag{font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border:1px solid var(--border);border-radius:2px;color:var(--text-tertiary);display:inline-block}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#333;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.animate-pulse{animation:pulse 1.5s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.mono{font-family:var(--mono)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-error{color:var(--error)}.text-muted{color:var(--text-tertiary)}.text-secondary{color:var(--text-secondary)}.text-primary{color:var(--text-primary)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.gap-32{gap:32px}.w-full{width:100%}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}@media (max-width: 640px){.grid-2,.grid-3{grid-template-columns:1fr}}.mb-4{margin-bottom:4px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mb-32{margin-bottom:32px}.mb-48{margin-bottom:48px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}
