/* Common styles shared across all pages */ * { box-sizing: border-box; } body { font-family: system-ui, -apple-system, sans-serif; line-height: 1.6; margin: 0; padding: 0; background-color: #f5f5f5; color: #333; } a { color: #0066cc; text-decoration: none; } a:hover { text-decoration: underline; } h1, h2, h3, h4, h5, h6 { margin-top: 0; color: #222; } p { margin: 0.5em 0; } small { color: #666; } strong { font-weight: 600; } /* Forms */ form { margin: 1em 0; } label { display: block; margin-bottom: 0.25em; font-weight: 500; } input[type="text"], input[type="email"], input[type="password"], input[type="number"], input[type="date"], input[type="datetime-local"], select, textarea { width: 100%; padding: 0.5em; margin-bottom: 1em; border: 1px solid #ccc; border-radius: 4px; font-size: 1em; } input:focus, select:focus, textarea:focus { outline: none; border-color: #0066cc; } textarea { min-height: 100px; resize: vertical; } button { padding: 0.5em 1em; border: none; border-radius: 4px; cursor: pointer; font-size: 1em; } button[type="submit"] { background-color: #0066cc; color: white; } button[type="submit"]:hover { background-color: #0055aa; } button[type="button"] { background-color: #666; color: white; } button[type="button"]:hover { background-color: #555; } /* Tables */ table { width: 100%; border-collapse: collapse; margin: 1em 0; background: white; } th, td { padding: 0.75em; text-align: left; border-bottom: 1px solid #ddd; } th { background-color: #f8f8f8; font-weight: 600; } tr:hover { background-color: #f9f9f9; } /* Lists */ ul { padding-left: 1.5em; } li { margin: 0.5em 0; } /* Messages */ .success { color: #28a745; background: #d4edda; padding: 0.75em; border-radius: 4px; margin-bottom: 1em; } .error { color: #dc3545; background: #f8d7da; padding: 0.75em; border-radius: 4px; margin-bottom: 1em; } /* Modal */ .modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; z-index: 1000; } .modal-content { background: white; padding: 2em; border-radius: 8px; max-width: 500px; width: 90%; max-height: 80vh; overflow-y: auto; }