body { margin: 0; font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; background-color: #f4f5f7; color: #1f2933; } .container { width: min(960px, 92%); margin: 0 auto; padding: 2rem 0; } .site-header { background-color: #0b3d91; color: #ffffff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .header-inner { display: flex; align-items: center; justify-content: space-between; } .site-title { font-size: 1.5rem; margin: 0; } .site-nav { display: flex; flex-wrap: wrap; gap: 0.75rem; } .site-nav a { color: #ffffff; text-decoration: none; font-weight: 500; } .site-nav a:hover, .site-nav a:focus { text-decoration: underline; } main.container { padding-top: 2rem; padding-bottom: 2rem; } .panel { background-color: #ffffff; border-radius: 12px; padding: 1.5rem; box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08); margin-bottom: 2rem; } .form-grid { display: grid; gap: 1rem; max-width: 480px; } .form-grid label { display: flex; flex-direction: column; gap: 0.5rem; font-weight: 600; color: #111827; } .form-grid input, .form-grid textarea, .form-grid select { padding: 0.6rem 0.75rem; border: 1px solid #cbd5e1; border-radius: 8px; font-size: 1rem; } .form-grid input:focus, .form-grid textarea:focus, .form-grid select:focus { outline: 2px solid #2563eb; outline-offset: 1px; } .btn { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.65rem 1.25rem; border-radius: 999px; border: none; cursor: pointer; font-weight: 600; background-color: #e2e8f0; color: #0f172a; transition: transform 0.15s ease, box-shadow 0.15s ease; } .btn:hover, .btn:focus { transform: translateY(-1px); box-shadow: 0 4px 10px rgba(15, 23, 42, 0.1); } .btn.primary { background-color: #2563eb; color: #ffffff; } .btn.primary:hover, .btn.primary:focus { background-color: #1d4ed8; } .result-output { background-color: #0f172a; color: #f8fafc; padding: 1rem; border-radius: 8px; font-family: "Fira Code", "Consolas", "Courier New", monospace; overflow-x: auto; margin-top: 1.5rem; } .monospace-input { width: 100%; font-family: "Fira Code", "Consolas", "Courier New", monospace; min-height: 120px; } .button-row { display: flex; gap: 0.75rem; flex-wrap: wrap; margin-top: 1rem; } .table-container { margin-top: 1.5rem; overflow-x: auto; } table { width: 100%; border-collapse: collapse; border-radius: 12px; overflow: hidden; background-color: #f8fafc; } thead { background-color: #0b3d91; color: #ffffff; } th, td { padding: 0.75rem 1rem; text-align: left; border-bottom: 1px solid #e2e8f0; } tbody tr:nth-child(even) { background-color: #eef2ff; } .empty-state { margin-top: 1.5rem; color: #64748b; font-style: italic; } .hidden { display: none; } .feedback { margin-top: 1rem; font-weight: 600; } .feedback.success { color: #047857; } .feedback.error { color: #b91c1c; } .site-footer { background-color: #0b3d91; color: #ffffff; margin-top: 3rem; } .footer-inner { display: flex; align-items: center; justify-content: center; padding: 1rem 0; font-size: 0.9rem; }