:root { --primary: #ffffff; --primary-hover: #e2e8f0; --bg-main: #000000; --bg-card: #0a0a0a; --border: #1f1f1f; --text-main: #ffffff; --text-muted: #888888; --accent: #ffffff; --input-bg: #050505; } * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Times New Roman', 'Inter', system-ui, -apple-system, sans-serif; } body { background-color: var(--bg-main); color: var(--text-main); min-height: 100vh; display: flex; justify-content: center; align-items: center; overflow-x: hidden; } #app { width: 100%; max-width: 1200px; padding: 2rem; } .app-container { display: flex; flex-direction: column; gap: 3rem; } header { text-align: center; margin-bottom: 1rem; } h1 { font-size: 3.5rem; font-weight: 900; letter-spacing: -0.05em; color: var(--text-main); margin-bottom: 0.5rem; text-transform: uppercase; } p.subtitle { color: var(--text-muted); font-size: 1rem; letter-spacing: 0.05em; text-transform: uppercase; } .main-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2.5rem; } .card { background-color: var(--bg-card); border: 1px solid var(--border); border-radius: 0; padding: 2.5rem; display: flex; flex-direction: column; gap: 2rem; transition: border-color 0.3s ease; } .card:hover { border-color: #333; } .card-header { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--border); padding-bottom: 1rem; } .card-title { font-size: 0.875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--text-main); } textarea { width: 100%; height: 450px; background-color: var(--input-bg); border: 1px solid var(--border); border-radius: 0; padding: 1.5rem; color: var(--text-main); font-size: 1rem; line-height: 1.6; resize: none; outline: none; transition: border-color 0.3s ease; } textarea:focus { border-color: #555; } .preview-area { width: 100%; height: 450px; background-color: #FFFFFF !important; border: 1px solid var(--border); border-radius: 0; padding: 2.5rem; overflow-y: auto; color: #000000 !important; font-family: 'Times New Roman', Times, serif; } .preview-area * { color: #000000 !important; } .btn { padding: 1rem 2rem; border-radius: 0; border: 1px solid var(--text-main); font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; gap: 0.75rem; font-size: 0.75rem; } .btn-primary { background-color: var(--text-main); color: var(--bg-main); } .btn-primary:hover { background-color: transparent; color: var(--text-main); } .btn-primary:disabled { opacity: 0.3; cursor: not-allowed; } .btn-outline { background-color: transparent; color: var(--text-main); } .btn-outline:hover { background-color: var(--text-main); color: var(--bg-main); } .config-panel { margin-top: 0; display: flex; gap: 1rem; align-items: center; padding: 1rem; background: #050505; border: 1px solid var(--border); } .input-field { background: transparent; border: 1px solid var(--border); border-radius: 0; padding: 0.75rem 1rem; color: var(--text-main); flex-grow: 1; font-size: 0.75rem; outline: none; } .input-field:focus { border-color: #555; } .doc-type-toggle { display: flex; gap: 0.5rem; margin-top: 1rem; padding: 0.5rem; background: rgba(255, 255, 255, 0.03); border: 1px solid var(--border); } .toggle-btn { flex: 1; padding: 0.75rem; background: transparent; border: 1px solid transparent; color: var(--text-muted); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; cursor: pointer; transition: all 0.3s ease; } .toggle-btn.active { background: var(--text-main); color: var(--bg-main); } .toggle-btn:hover:not(.active) { background: rgba(255, 255, 255, 0.05); } /* Preview Styles */ .preview-h1 { font-size: 11pt; font-weight: 800; margin-bottom: 1.5rem; color: #000000; padding: 0.5rem 1rem; border-bottom: 2px solid #000000; } .preview-h2 { font-size: 11pt; font-weight: 700; margin-top: 2rem; margin-bottom: 1.25rem; color: var(--text-main); } .preview-h3 { font-size: 11pt; font-weight: 600; margin-top: 1.5rem; margin-bottom: 1rem; color: var(--text-main); } .preview-p { margin-bottom: 0.75rem; line-height: 1.4; color: #000000 !important; font-size: 11pt; } .preview-li { margin-bottom: 0.75rem; color: #000000 !important; line-height: 1.6; } /* Skeleton Loader */ .skeleton-container { display: flex; flex-direction: column; gap: 1.5rem; } .skeleton { background: linear-gradient(90deg, #0a0a0a 25%, #1a1a1a 50%, #0a0a0a 75%); background-size: 200% 100%; animation: loading 2s infinite; } .skeleton-h1 { height: 3rem; width: 70%; } .skeleton-h2 { height: 2rem; width: 50%; margin-top: 1rem; } .skeleton-p { height: 1.25rem; width: 100%; } @keyframes loading { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } @media (max-width: 900px) { .main-grid { grid-template-columns: 1fr; gap: 1.5rem; } h1 { font-size: 2.5rem; } }