.tui-terminal { font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace; background: var(--terminal-bg); border: 2px solid var(--terminal-border); border-radius: 0; overflow: hidden; position: relative; display: flex; flex-direction: column; width: 100%; margin: 0 auto; height: calc(100vh - var(--navbar-height)); max-height: calc(100vh - var(--navbar-height)); animation: tuiFadeIn 0.4s ease-out; } .tui-terminal:focus-within .tui-border-glow { opacity: 1; } @keyframes tuiFadeIn { from { opacity: 0; transform: scale(0.98); } to { opacity: 1; transform: scale(1); } } /* Hyprland-style animated border glow */ .tui-border-glow { position: absolute; inset: -2px; border-radius: 0; background: linear-gradient( 45deg, var(--terminal-primary), var(--terminal-accent), var(--terminal-primary), var(--terminal-accent) ); background-size: 400% 400%; animation: borderGlow 8s ease infinite; opacity: 0.5; z-index: -1; filter: blur(4px); transition: opacity 0.3s ease; } @keyframes borderGlow { 0%, 100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } } .tui-content { display: flex; flex-direction: column; height: 100%; background: var(--terminal-bg); position: relative; z-index: 1; } /* Responsive */ @media (max-width: 768px) { .tui-terminal { width: 100%; height: calc(100vh - var(--navbar-height)); max-height: calc(100vh - var(--navbar-height)); } }