:root{--bg:#0b0d12;--panel:#12151cd9;--panel-2:#171b24d9;--border:#2c3241;--border-glow:#6d6dff55;--text:#e7e9ee;--text-dim:#9aa2b1;--accent:#6d6dff;--accent-2:#38d9c9;--danger:#ff5d6c;--radius:16px}*{box-sizing:border-box}body,html{padding:0;margin:0;background:radial-gradient(1200px 600px at 20% -10%,#1a1f2e 0,var(--bg) 55%);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;min-height:100vh;overflow-x:hidden}a{color:inherit}button{font-family:inherit;cursor:pointer}.container{z-index:1;max-width:1200px;margin:0 auto;padding:32px 20px 80px;animation:fade-up .6s ease both}.card,.container{position:relative}.card{background:linear-gradient(180deg,var(--panel) 0,var(--panel-2) 100%);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:0 12px 40px -18px rgba(0,0,0,.6);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.card:hover{transform:translateY(-2px);border-color:var(--border-glow);box-shadow:0 20px 48px -18px rgba(109,109,255,.25)}.btn{background:linear-gradient(135deg,var(--accent) 0,#8f6dff 100%);color:#fff;border:none;border-radius:10px;padding:12px 20px;font-size:15px;font-weight:600;box-shadow:0 6px 20px -8px rgba(109,109,255,.6);transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}.btn:hover:not(:disabled){opacity:.95;transform:translateY(-1px);box-shadow:0 10px 26px -8px rgba(109,109,255,.75)}.btn:active:not(:disabled){transform:scale(.98)}.btn.secondary{background:var(--panel-2);border:1px solid var(--border);color:var(--text);box-shadow:none}.btn.secondary:hover:not(:disabled){border-color:var(--border-glow);box-shadow:0 6px 18px -10px rgba(109,109,255,.4)}.btn.danger{background:transparent;border:1px solid var(--danger);color:var(--danger);box-shadow:none}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}input,textarea{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:12px 14px;font-size:15px;width:100%;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(109,109,255,.18)}.pill{display:inline-flex;align-items:center;gap:6px;background:var(--panel-2);border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:13px;color:var(--text-dim)}.dot{width:8px;height:8px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 8px 1px var(--accent-2);animation:pulse-dot 2s ease-in-out infinite}.gradient-text{background:linear-gradient(120deg,var(--accent) 0,var(--accent-2) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.scrollbar-thin::-webkit-scrollbar{width:8px}.scrollbar-thin::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.45}}.diff-input-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media (max-width:640px){.diff-input-grid{grid-template-columns:1fr}}.diff-split-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media (max-width:640px){.diff-split-grid{grid-template-columns:1fr}}.diff-view{border:1px solid var(--border);border-radius:10px;background:var(--panel-2);font-family:monospace;font-size:13px;line-height:1.6}.diff-line{display:grid;grid-template-columns:40px 18px minmax(0,1fr);padding:0 8px}.diff-line__text{white-space:pre-wrap;overflow-wrap:anywhere;display:block}.diff-line--blank{opacity:.35}.diff-line__no{color:var(--text-dim);text-align:right;padding-right:8px;opacity:.6}.diff-line__marker,.diff-line__no{-webkit-user-select:none;-moz-user-select:none;user-select:none}.diff-line__marker{text-align:center;font-weight:700}.diff-line--add{background:rgba(56,217,201,.12)}.diff-line--add .diff-line__marker{color:var(--accent-2)}.diff-line--remove{background:rgba(255,93,108,.12)}.diff-line--remove .diff-line__marker{color:var(--danger)}.diff-word{border-radius:3px;padding:0 2px;color:inherit}.diff-word--add{background:rgba(56,217,201,.4)}.diff-word--remove{background:rgba(255,93,108,.4)}@media (prefers-reduced-motion:reduce){.container,.dot{animation:none}}