:root { color: #17211c; background: #f5f5ef; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-synthesis: none; text-rendering: optimizeLegibility; } * { box-sizing: border-box; } body { margin: 0; min-width: 940px; min-height: 100vh; background: linear-gradient(135deg, rgba(41, 94, 82, 0.12), transparent 36%), linear-gradient(315deg, rgba(190, 78, 61, 0.1), transparent 34%), #f5f5ef; } button, textarea { font: inherit; } button { align-items: center; border: 0; border-radius: 8px; cursor: pointer; display: inline-flex; font-weight: 700; gap: 8px; justify-content: center; min-height: 42px; padding: 0 16px; transition: transform 140ms ease, box-shadow 140ms ease, background 140ms ease; } button:hover:not(:disabled) { transform: translateY(-1px); } button:disabled { cursor: not-allowed; opacity: 0.5; } .shell { display: flex; flex-direction: column; gap: 18px; margin: 0 auto; max-width: 1420px; min-height: 100vh; padding: 28px; } .hero { align-items: flex-end; display: flex; gap: 24px; justify-content: space-between; padding: 10px 2px 4px; } .eyebrow { align-items: center; color: #2d6f62; display: flex; font-size: 0.85rem; font-weight: 800; gap: 7px; letter-spacing: 0; margin: 0 0 10px; text-transform: uppercase; } h1, h2, p { margin: 0; } h1 { color: #13201b; font-size: 2.8rem; letter-spacing: 0; line-height: 1.02; } h2 { font-size: 1rem; letter-spacing: 0; } .subline { color: #53635d; font-size: 1.04rem; line-height: 1.5; margin-top: 12px; max-width: 720px; } .heroActions, .buttonRow { display: flex; gap: 10px; } .primary { background: #1f5d53; color: #ffffff; box-shadow: 0 10px 24px rgba(31, 93, 83, 0.18); } .secondary { background: #ffffff; color: #1f332d; box-shadow: inset 0 0 0 1px #d9ded5; } .iconButton { background: #eef2ec; color: #26372f; min-width: 42px; padding: 0; } .stats { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); } .stats div { background: rgba(255, 255, 255, 0.78); border: 1px solid #dde3da; border-radius: 8px; padding: 14px 16px; } .stats span { color: #9b3f31; display: block; font-size: 1.35rem; font-weight: 850; line-height: 1; } .stats p, .panelHeader p, .replacement p { color: #64726d; font-size: 0.86rem; line-height: 1.4; margin-top: 5px; } .workspace { display: grid; flex: 1; gap: 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); min-height: 430px; } .panel, .replacementPanel { background: rgba(255, 255, 255, 0.86); border: 1px solid #dbe2d8; border-radius: 8px; box-shadow: 0 20px 54px rgba(54, 67, 61, 0.1); } .panel { display: flex; flex-direction: column; min-height: 0; overflow: hidden; } .panelHeader { align-items: center; border-bottom: 1px solid #e2e6de; display: flex; gap: 16px; justify-content: space-between; padding: 16px; } .panelHeader.compact { border-bottom: 0; padding-bottom: 10px; } textarea { background: #101815; border: 0; color: #e7eee8; flex: 1; line-height: 1.55; min-height: 360px; outline: none; padding: 18px; resize: none; white-space: pre; } textarea::selection { background: #be4e3d; color: #ffffff; } .replacementPanel { padding-bottom: 16px; } .replacementGrid { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0 16px; } .replacement { align-items: flex-start; background: #f7f8f4; border: 1px solid #e1e6dd; border-radius: 8px; display: flex; gap: 12px; justify-content: space-between; min-height: 88px; padding: 13px; } .replacement strong { color: #26372f; display: block; font-size: 0.86rem; line-height: 1.35; overflow-wrap: anywhere; } .replacement span { background: #e6efe8; border-radius: 999px; color: #23594f; flex: 0 0 auto; font-size: 0.75rem; font-weight: 800; max-width: 42%; padding: 6px 9px; text-align: right; } .empty { color: #66736d; padding: 0 16px 4px; } @media (max-width: 1050px) { body { min-width: 0; } .shell { padding: 18px; } .hero, .workspace { grid-template-columns: 1fr; } .hero { align-items: stretch; flex-direction: column; } .heroActions { flex-wrap: wrap; } h1 { font-size: 2.25rem; } .replacementGrid, .stats { grid-template-columns: 1fr; } }